1. 程式人生 > >deep learning實踐經驗總結

deep learning實踐經驗總結

src article 發現 alt text eas 機器 實踐 imagenet


近期拿caffe來做圖片分類。遇到不少問題,同一時候也吸取不少教訓和獲得不少經驗。


先看樣例再總結經驗。


這是一個2類分類器。分的是條紋衣服和純色衣服。

先看幾張圖片。


條紋衣服:

技術分享 技術分享技術分享


純色衣服:

技術分享技術分享技術分享


肉眼也非常easy辨認出來。

訓練出來的模型眼下的準確率是0.75。


為了可視化特征抽取。我把某一層的特征圖和權重圖也畫出來了,這層是當中一個全連接層。


條紋衣服的特征圖:

技術分享 技術分享 技術分享



純色衣服的特征圖:

技術分享 技術分享

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluZ2VybGFubGFu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" > 技術分享



看條紋衣服的特征圖比較有意思,把“條紋”特征給抽取出來了。

或許這就是神經網絡奇妙的地方,在沒有人的幹擾的情況下,居然能學習出來“條紋”特征。



當中一個channel的權重圖:

技術分享


這個就看不出來什麽了。以前有一個數據集,訓練的是裙子的模型。當我看到權重圖是一個裙子輪廓的圖。




好了。說了這麽多。總結一下經驗吧。


1 數據集要保證質量。以前玩過一字領和polo領的分類,剛開始效果非常差,後來發現有一些“錯誤”的標簽。於是把那些樣本給去掉。效果好了非常多。

2 learning rate要調整。

有一次訓練了非常久。準確率差點兒不變,於是我降低了lr,發現好了非常多。

3 均值化圖片。實踐證明,均值化後再訓練收斂速度更快。準確率更高。



對於深度學習的困惑:感覺準確率是個大問題啊,事實上這也是全部機器學習算法的通病。

對於別人研究提供的數據集,比方imagenet,cifa10,lenet,效果非常好。

可是自己收集的數據集,效果就不是非常理想了。

也就是說,算法不是萬能的,僅僅是對於某些數據集有效。


我們能做的。是什麽?

1 對於哪些數據集。深度學習比較適合?

2 對於效果差的數據集。怎樣能提高準確率?


以前腦海裏閃過一個念頭。是由上面提到的權重圖想到的。

當時看到權重圖是一個裙子輪廓的圖,心裏就想。

這是神經網絡自己主動調整出來的權重圖,

假設人為加上幹預,是否能實現優化呢?






本文作者:linger

本文鏈接:http://blog.csdn.net/lingerlanlan/article/details/31773811















deep learning實踐經驗總結