1. 程式人生 > >深度學習常用資料集介紹

深度學習常用資料集介紹

各領域公開資料集下載

 

1.Mnist 手寫字型資料集

官方資料集下載

MNIST資料集簡介轉載戳這裡

MNIST(Mixed National Institute of Standards and Technology database)是一個計算機視覺資料集,它包含70000張手寫數字的灰度圖片,其中每一張圖片包含 28 X 28 個畫素點。可以用一個數字陣列來表示這張圖片:

每一張圖片都有對應的標籤,也就是圖片對應的數字,例如上面這張圖片的標籤就是 1


資料集被分成兩部分:60000 行的訓練資料集(mnist.train)和10000行的測試資料集(mnist.test)。

其中:60000 行的訓練集分拆為 55000 行的訓練集和 5000 行的驗證集。


60000行的訓練資料集是一個形狀為 [60000, 784] 的張量,第一個維度數字用來索引圖片,第二個維度數字用來索引每張圖片中的畫素點。在此張量裡的每一個元素,都表示某張圖片裡的某個畫素的強度值,值介於 0 和 1 之間。


60000 行的訓練資料集標籤是介於 0 到 9 的數字,用來描述給定圖片裡表示的數字。稱為 "one-hot vectors"。 一個 one-hot 向量除了某一位的數字是 1 以外其餘各維度數字都是 0。所以在此教程中,數字 n 將表示成一個只有在第 n 維度(從 0 開始)數字為 1 的 10 維向量。比如,標籤 0 將表示成 ( [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] )。因此,其標籤是一個 [60000, 10] 的數字矩陣。


Tensorflow裡面可以用如下程式碼匯入MNIST資料集:

from  tensorflow.examples.tutorials.mnist   import   input_data
mnist  =  input_data.read_data_sets ( "MNIST_data/",  one_hot=True )


成功獲取MNIST資料集後,發現本地已經下載了4個壓縮檔案:

#訓練集的壓縮檔案, 9912422  bytes

Extracting MNIST_data / train-images-idx3-ubyte.gz

#訓練集標籤的壓縮檔案,28881 bytes
Extracting MNIST_data / train-labels-idx1-ubyte.gz

#測試集的壓縮檔案,1648877 bytes
Extracting MNIST_data / t10k-images-idx3-ubyte.gz

#測試集的壓縮檔案,4542 bytes
Extracting MNIST_data / t10k-labels-idx1-ubyte.gz


我們可以在終端列印資料集的張量情況:

#訓練集的張量

print ( mnist.train.images.shape )      

#訓練集標籤的張量
print ( mnist.train.labels.shape )  

#驗證集的張量
print ( mnist.validation.images.shape )  

#驗證集標籤的張量
print ( mnist.validation.labels.shape )  

#測試集的張量
print ( mnist.test.images.shape )  

#測試集標籤的張量
print ( mnist.test.labels.shape )  


張量列印結果如下:

( 55000, 784 )
( 55000, 10 )
( 5000, 784 )
( 5000, 10 )
( 10000, 784 )
( 10000, 10 )


我們發現:

1、MNIST資料集包含 55000 行訓練集、5000 行驗證集和10000 行測試集

2、每一張圖片展開成一個 28 X 28 = 784 維的向量,展開的順序可以隨意的,只要保證每張圖片的展開順序一致即可

3、每一張圖片的標籤被初始化成 一個 10 維的“one-hot”向量
 

Mnist 資料集解析可以參考資料集解析

手寫資料集詳解

2.ImageNet資料集

官方資料集下載

與Imagenet資料集對應的有一個享譽全球的“ImageNet國際計算機視覺挑戰賽(ILSVRC)”,以往一般是google、MSRA等大公司奪得冠軍,今年(2016)ILSVRC2016中國團隊包攬全部專案的冠軍。
Imagenet資料集是一個非常優秀的資料集,但是標註難免會有錯誤,幾乎每年都會對錯誤的資料進行修正或是刪除,建議下載最新資料集並關注資料集更新。

相關介紹

IMAGENET Large Scale Visual Recognition Challenge(ILSVRC)


從2010年開始,每年舉辦的ILSVRC影象分類和目標檢測大賽。


    Imagenet資料集是目前深度學習影象領域應用得非常多的一個領域,關於影象分類、定位、檢測等研究工作大多基於此資料集展開。


    Imagenet資料集文件詳細,有專門的團隊維護,使用非常方便,在計算機視覺領域研究論文中應用非常廣,幾乎成為了目前深度學習影象領域演算法效能檢驗的“標準”資料集。


    Imagenet資料集有1400多萬幅圖片,涵蓋2萬多個類別;


    其中有超過百萬的圖片有明確的類別標註和影象中物體位置的標註。


具體資訊如下:


    Total number of non-empty synsets: 21841


    Total number of images: 14,197,122


    Number of images with bounding boxannotations: 1,034,908


    Number of synsets with SIFT features: 1000


    Number of images with SIFT features: 1.2million


Imagenet資料集是一個非常優秀的資料集,但是標註難免會有錯誤,幾乎每年都會對錯誤的資料進行修正或是刪除,建議下載最新資料集並關注資料集更新。

ImageNet Large-Scale Visual Recognition Challenge(ILSVRC)是Pascal Visual Object Challenge的子部分。ImageNet是一個數據庫,有超過22000個種類,超過1500萬張圖片。

ILSVRC使用1000個類,每個類中有1000個圖片。這1000個類一一對應於WorldNet的1000個同義子集。這1000個同義子集互相不重疊,對於同義子集,不是的祖先。這樣的子集稱為低層子集。這1000個子集是ImageNet層次結構的一部分。可以認為這個子集包含了1000個低層子集和他們所有的祖先。共有860個這樣的祖先,被稱為高層子集。在層次結構中,所有的低層特徵稱為葉節點,高層子集稱為中間節點。儘管在ImageNet中低層子集會有子類,但ILSVRC2012並不考慮這些子類,ILSVRC2012的層次結構可以看作是對完整ImageNet結構的剪裁。ILSVRC競賽中,所有的標記都是針對低層子集,參賽者必須預測這1000個低層子集標記之一,不考慮預測高層子集的結果,而且也沒有高層子集的訓練圖片。

在ILSVRC中,子集資訊可參見ILSVRC2012_devkit_t12中的data/meta.mat檔案中的矩陣。

矩陣中的每一個行對應於一個子集,每一項中包含如下域值:

ILSVRC2012_ID是為每一子集分配的一個整數ID值,所有低層子集的ID值都在1到1000之間,所有高層子集的ID值都大於1000。所有的子集都是一句其ID值進行排序。提交預測結果時,ILSVRC2012_ID也作為相應子集的標記。

WNID是子集在WordNet中的ID。用於在ImageNet或WorldNet中唯一標記一個子集。包含訓練圖片的tar檔案就是用WNID命名的。同樣每一個訓練圖片也是用WNID命名的。

num_children是子集在剪裁後的結構中子孫的數目。對於低層子集其值為0,對於高層子集的值不為0。

children是子孫子集的ILSVRC2012_ID的向量。

wordnet_height是完整的ImageNet/WorldNet層次結構中到葉節點的最長路徑的值。(完整的ImageNet/WorldNet層次結構中葉節點的wordnet_height值為0)

注意caffe使用的label和ILSVRC2012_devkit是不一致的。ILSVRC2012_ID是ILSVRC2012_devkit的提供的編號。而caffe中圖片的label是以圖片所屬子集的名字的ASC II的順序排列,並依次從0到999編號。本文提供的所有程式都是依據caffe的編號編寫的。在caffe目錄下的data/ilsvrc12/synset_words.txt檔案檢視子集/編號的對應
 

3. CIFAR-10 dataset

官網

該資料集共有60000張彩色影象,這些影象是32*32,分為10個類,每類6000張圖。這裡面有50000張用於訓練,構成了5個訓練批,每一批10000張圖;另外10000用於測試,單獨構成一批。測試批的資料裡,取自10類中的每一類,每一類隨機取1000張。抽剩下的就隨機排列組成了訓練批。注意一個訓練批中的各類影象並不一定數量相同,總的來看訓練批,每一類都有5000張圖。

4. CelebA資料集

官網下載

CelebA資料集詳細介紹及其屬性提取原始碼

CelebA是CelebFaces Attribute的縮寫,意即名人人臉屬性資料集,其包含10,177個名人身份的202,599張人臉圖片,每張圖片都做好了特徵標記,包含人臉bbox標註框、5個人臉特徵點座標以及40個屬性標記,CelebA由香港中文大學開放提供,廣泛用於人臉相關的計算機視覺訓練任務,可用於人臉屬性標識訓練、人臉檢測訓練以及landmark標記等

資料集下載官網:

http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html

官網還給了百度雲盤的連結:

https://pan.baidu.com/s/1eSNpdRG?errno=0&errmsg=Auth%20Login%20Sucess&&bduss=&ssnerror=0&traceid=#list/path=%2F&parentPath=%2F

 

以下是官網給的介紹的翻譯:

CelebFaces Attributes Dataset(CelebA)是一個大型人臉屬性資料集,擁有超過200K名人影象,每個影象都有40個屬性註釋。此資料集中的影象覆蓋了大的姿勢變化和背景雜亂。CelebA具有大量的多樣性,大量的數量和豐富的註釋,包括

    10,177個身份,

    202,599個臉部影象

    5個地標位置,每個影象40個二進位制屬性註釋。

該資料集可用作以下計算機視覺任務的訓練和測試集:

面部屬性識別,面部檢測和地標(或面部部分)定位。
 

人臉特徵檢測

SVHN資料集

官網:http://ufldl.stanford.edu/housenumbers/

SVHN資料來源於 Google 街景檢視中房屋資訊,它是一個真實世界的影象資料集,用於開發機器學習和物件識別演算法,對資料預處理和格式化的要求最低。它跟MNIST相似,但是包含更多數量級的標籤資料(超過60萬個數字影象),並且來源更加多樣,用來識別自然場景影象中的數字。

有兩種格式:

    1.帶有字元級邊界框的原始影象。
    2.類似MNIST的32×32影象以單個字元為中心(許多影象確實包含側面的一些干擾物)。

 本文使用的 SVHN 資料集格式:

-- test_32x32.mat  

-- train_32x32.mat

 

LSUN資料集

官網下載

LSun場景分類的10個場景類別。LSUN 是一個場景理解影象資料集,主要包含了臥室、固房、客廳、教室等場景影象。
20物件類別:連結列表。每個類別的影象以LMDB格式儲存,然後資料庫被壓縮。下載和解壓縮ZIP檔案後,請參考LSun實用程式碼來視覺化和匯出影象。還提供了每個zip檔案的MD5和,以便驗證下載。