Caffe訓練AlexNet網絡模型——問題三

caffe 進行本身的imageNet訓練分類:loss一直是87.3365,accuracy一直是0

解決方法: http://blog.csdn.net/jkfdqjjy/article/details/52268565?locationNum=14

知道了緣由,解決時就能對症下藥。整體上看,softmax輸入的feature由兩部分計算獲得:一部分是輸入數據,另部分是各層權重參數。markdown

一、觀察數據中是否有異常樣本或異常label致使數據讀取異常
二、調小初始化權重,以便使softmax輸入的feature儘量變小
三、下降學習率,這樣就能減少權重參數的波動範圍,從而減少權重變大的可能性。這條也是網上出現較多的方法。
四、若是有BN(batch normalization)層,finetune時最好不要凍結BN的參數,不然數據分佈不一致時很容易使輸出值變的很大。
 
具體作法可參照如下三點:

http://blog.csdn.net/hyqsong/article/details/51933255網絡


1.標籤的問題:
圖像分類的標籤label必定要從0開始,針對N分類問題,標籤需設置爲0,1,2,3,4,...,N-1。學習

2.分類層的num_output和標籤的值域不符合:spa

因爲Alexnet網絡是進行1000類的分類任務,而我須要進行五分類,因此就要把train_val.prototxt文件裏的最後一層的全鏈接層‘fc8’的InnerProduct的分類層數num_output: 1000,改成5,這個設成本身label的類別總數就能夠。 .net

3.多是學習率過高 
另外若是是最初的迭代的loss很小,而後忽然變成87.3365?若是是這樣,能夠嘗試一下調低學習率,我開始學習率是0.1,後來調成了0.001,反正就是調小,能夠多試幾回。orm

相關文章
相關標籤/搜索