? ? ? ?Fashion_MNIST數(shù)據(jù)集詳細介紹,請參考《Fashion-MNIST》喊衫。很多機器學習框架中都已經集成了這個數(shù)據(jù)集,包括TensorFlow族购。這樣,我們可以通過兩行代碼來引用這個數(shù)據(jù)集寝杖,集中精力研究神經網絡模型的開發(fā)瑟幕,而不需要把時間浪費在收集數(shù)據(jù)和為數(shù)據(jù)打標上。
? ? ? 用Visual Code 的Debugging(F5)功能只盹,可以看到test_images被組織成了一個三維數(shù)組(10000,28,28)殖卑,可以理解為10000張28x28像素的圖像坊萝;Test_labels是一個一維數(shù)組孵稽,對應每張圖片的標簽肛冶。
Fashion_MNIST數(shù)據(jù)集的標簽與對應的物體睦袖,如下所示:
借助matplotlib的繪圖功能馅笙,可以把數(shù)據(jù)可視化出來;例如董习,把第8號數(shù)據(jù)展示出來
cmap是matplotlib的colormap招刹,grey表示灰度圖。
創(chuàng)建一個具有輸入層為28x28個神經元,隱藏層為128個神經元,輸出層為10個神經元的模型疯暑,隱藏層的激活函數(shù)為relu妇拯,輸出層的激活函數(shù)為softmax.
激活函數(shù)選擇參考《AI常用激活函數(shù)分析4洗鸵,Relu函數(shù)與Leaky Relu函數(shù)》
Loss函數(shù)選擇參考《Usage of loss functions》
運行程序后甘凭,可以見到Loss值一直很高,原因是由于激活函數(shù)定義域與值域对蒲,神經網絡對【0~1】的數(shù)值比較敏感贡翘,所以,我們需要把圖像的灰度值從【0~255】歸一化(Normalization)到【0~1】
下節(jié)將介紹《基于Keras CNN與Fashion_MNIST數(shù)據(jù)集開發(fā)一個深度學習程序》
參考閱讀《深度學習圖像識別技術》