1
我在我自己的數據集上微調caffenet。 我已經在flickr樣式數據集上成功完成了它, ,所以我修改了solver和train_val prototxt文件以指向我的數據集,並使用新的輸出維度(= 100個類)。數據層預取隊列空然後丟失0
我的數據集的大小是1.88M訓練圖像,和.48M圖像進行測試。
當我開始訓練,它停下來顯示
... blocking_queue.cpp:50] Data layer prefetch queue empty
了一會兒,然後進行如下:
... solver.cpp:414] Test net output #0: accuracy = 0.0002
... solver.cpp:414] Test net output #1: loss = 5.6139 (* 1 = 5.6139 loss)
... solver.cpp:242] Iteration 0, loss = 7.23329
... solver.cpp:258] Train net output #0: loss = 7.23329 (* 1 = 7.23329 loss)
... solver.cpp:571] Iteration 0, lr = 0.001
... solver.cpp:242] Iteration 20, loss = 0
... solver.cpp:258] Train net output #0: loss = 0 (* 1 = 0 loss)
... solver.cpp:571] Iteration 20, lr = 0.001
... solver.cpp:242] Iteration 40, loss = 0
... solver.cpp:258] Train net output #0: loss = 0 (* 1 = 0 loss)
... solver.cpp:571] Iteration 40, lr = 0.001
等。顯然,根本沒有計算損失。奇怪的是,第0次迭代的初始損失看起來不錯。
顯然,數據未正確加載。我正在使用文本文件列出文件路徑及其標籤。
我正在使用softmax損失。
我試過把初始學習速率降低到1/10,但沒有變化。
**編輯:我試過最初的學習率1/1000。最初它似乎工作。經過約300次迭代後,其損失再次迅速下降,準確度達到100%,表明有可能再次出現問題。症狀出現在caffenet和VGG。
有什麼想法可能會出錯?