開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux, Tensorflow
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
OpenCV
問題(Question):
目前做了一些實驗,放了VOC2007的Data set下去做學習
只訓練了分類問題,並把圖片類別調整只剩為單一類別
去做softmax的分類學習
network為 5層conv 與 3層fc
再來接到softmax_with_loss
最佳化使用GradientDescentOptimizer
learning rate = 0.005
而初始weigth and biases 的參數為random_normal
其設定參數stddev=0.1
實驗一 只考慮兩張圖(故意訓練到overfitting)
做了兩個部分的weight and biases value的init不同
會導致一個loss很高下不去,另一個則是會loss會降到很接近零
stddev=0.1 stddev=0.01
這種情況期其實想不通,麻煩各位大大指點
實驗二
10張圖 batch size 10的情況下(想訓練到overfitting)
拿了兩張圖片可以訓練到loss很小的參數來用
但是會撞到調整到某一次迭代後loss會變成超大
然後在下一次輸出的值就變成nan
但經由調整參數後又可以降到loss很小(並且可以對訓練資料預測正確)
實驗三
拿了整個VOC2007的訓練資料集做訓練
batch size一樣為10 訓練參數一樣 image就是整個訓練資料集
其解果同實驗二也會有一樣的情形
net的參數需要重新調整
想詢問的點是在於
這樣做實驗是否有問題?
如果image、batch size的數量不同,
初始參數也要跟著調整這樣真的合理嗎?
餵入的資料(Input):
VOC2007訓練資料結果
預期的正確結果(Expected Output):
預測voc2007圖片正確的分類
錯誤結果(Wrong Output):
學習無效 or 輸出結果突然變成nan
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):