我有一個圖像集,包含300個圖像對,即原始圖像和蒙版圖像。典型的蒙版圖像如下所示。每張圖片的大小爲800 * 800。我試圖爲這個圖像集訓練完全卷積神經網絡模型來執行語義分割。我試圖從原始圖像中生成小塊(256 * 256)來構造訓練集。是否有任何針對此修補程序採樣過程推薦的策略?當然,隨機抽樣是一個簡單的方法。在此,標有黃色前景類別的區域通常佔整個圖像區域整個圖像區域的25%。它傾向於反映不平衡的數據集。用於訓練完全卷積神經網絡的子補丁生成機制
回答
如果訓練完全卷積架構,假設800x800
輸入和25x25
輸出(經過五2x2
池層,25=800/2^5
)。嘗試直接構建25x25
輸出並直接在它們上訓練。您可以在「正面」標籤的損失函數中添加更高的權重,以使它們與「負面」標籤平衡。
我絕對不建議採樣,因爲這將是一個昂貴的過程,並不是真正的完全卷積。
嗨MZhm,你是什麼意思直接在25 * 25輸出培訓?如果我們不使用抽樣過程,那麼我們只有300個圖像對,是一個訓練深度學習模型的數據集太小了嗎?此外,對於基於FCN的語義分割,輸出應該與輸入大小相同。 – user288609
對於向上採樣回原始圖像大小,我建議您閱讀關於'tf.nn.conv2d_transpose'。對於抽樣來說,在完整圖像上進行訓練是沒有好處的。 (請記住,輸出不是單個預測,它是上面示例中的25x25預測的空間網格) – MZHm
至於300是否足夠的問題......只有一種方法可以檢查 - 訓練和測試它 – MZHm
- 1. 運行訓練卷積神經網絡
- 2. FCN中的補丁明智訓練和完全卷積訓練
- 3. 訓練卷積神經網絡識別車號牌
- 4. 爲卷積神經網絡選擇訓練圖像
- 5. 爲什麼要對卷積神經網絡進行預訓練
- 6. 訓練神經網絡
- 7. 卷積神經網絡
- 8. 完全卷積網絡訓練圖像大小
- 9. Pybrain前饋神經網絡訓練錯誤完全卡住
- 10. 使用Xbox Kinect在Keras中捕獲圖像訓練卷積神經網絡(CNN)
- 11. 訓練字母圖像到全批培訓的神經網絡
- 12. 神經網絡訓練中的MSE
- 13. 嘈雜的神經網絡訓練集
- 14. OCR的訓練前饋神經網絡
- 15. 如何訓練OCR神經網絡?
- 16. 神經網絡訓練方法
- 17. 在Ruby中訓練神經網絡
- 18. 人工神經網絡PSO訓練
- 19. 神經網絡訓練連續值
- 20. float16 VS FLOAT32卷積神經網絡
- 21. 用於神經網絡訓練的數據集
- 22. 查找用於訓練神經網絡的天氣數據
- 23. 用於神經網絡訓練實驗的隊列管理器
- 24. 如何訓練神經網絡以基於訓練集的手部運動生成運動?
- 25. 我在哪裏可以找到關於卷積神經網絡的練習?
- 26. 用於卷積神經網絡的字嵌入
- 27. 用於實現卷積神經網絡的Keras
- 28. 用於時間相關特徵的卷積神經網絡
- 29. 適用於卷積神經網絡的哪種數據
- 30. 使用卷積神經網絡產生音頻
爲什麼要打補丁?爲什麼不用整個圖像和丟失的樣本像素? – Shai
只有300個圖像對,代表訓練FCN的數據集太小。 – user288609