我想用Keras做一個二進制分類問題,使用ImageDataGenerator.flow_from_directory
方法來生成批次。然而,我的類非常不平衡,就像一個類比另一個類大約多8倍或9倍,導致模型卡住,預測每個示例的相同輸出類。有沒有辦法將flow_from_directory
設置爲從我的小班過度抽樣或在每個時間段從我的大班中抽樣?現在,我剛剛在我的小班裏爲每張圖片創建了多個副本,但我希望有更多的靈活性。keras flow_from_directory過度或不足樣本
5
A
回答
6
使用當前版本的Keras - 僅使用Keras內置方法無法平衡數據集。 flow_from_directory
只是建立一個所有文件及其類的列表,對其進行混洗(如果需要),然後對其進行迭代。
但是你可以做不同的技巧 - 通過書面方式自己發生器,它將使python
內的平衡:
def balanced_flow_from_directory(flow_from_directory, options):
for x, y in flow_from_directory:
yield custom_balance(x, y, options)
這裏custom_balance
應該是給定的一批(x, y)
的功能是平衡它,並返回平衡批次(x', y')
。對於大多數應用程序,批次大小不必相同 - 但有一些奇怪的用例(例如stateful RNN) - 批量大小應該具有固定大小)。
0
您也可以計算每個類文件的數量和規範class_weights
files_per_class = []
for folder in os.listdir(input_foldr):
if not os.path.isfile(folder):
files_per_class.append(len(os.listdir(input_foldr + '/' + folder)))
total_files = sum(files_per_class)
class_weights = {}
for i in xrange(len(files_per_class)):
class_weights[i] = 1 - (float(files_per_class[i])/total_files)
print (class_weights)
...
...
...
model.fit_generator(... ,class_weight=class_weights)
+0
請添加示例代碼和更多解釋 –
+0
請編輯您的答案並添加此代碼 –
相關問題
- 1. Keras ImageDataGenerator方法flow_from_directory
- 2. Keras flow_from_directory類索引
- 3. Keras用於語義分割,flow_from_directory()錯誤
- 4. Keras:在`flow_from_directory`中使用`crossentropy`損失
- 5. keras ImageDataGenerator flow_from_directory生成的數據
- 6. Keras谷歌cloudml樣本:IndexError
- 7. Keras:獲取圖像和標籤的陣列從flow_from_directory
- 8. Keras:使用flow_from_directory將訓練數據擬合圖像增強
- 9. 是否可以自動從Keras的flow_from_directory中推斷出class_weight?
- 10. 什麼是過度抓取或抓取不足?
- 11. Octave - 內存不足或Octave索引類型的維度過大
- 12. Keras flow_from_directory函數返回錯誤:[WinError 3]系統找不到指定的路徑
- 13. Keras精度不會改變
- 14. 加密強度不足
- 15. libswresample:swr_convert()沒有產生足夠的樣本
- 16. VGG16 Keras微調:精度不高
- 17. Keras Convolution3D子採樣錯誤
- 18. Orchard CMS找不到腳本或樣式
- 19. Keras輸出度量解釋
- 20. Keras CNN維度問題
- 21. Keras:精度保持爲零
- 22. Keras LSTM輸入維度
- 23. 的參數數量不足的過程或函數cdc.fn_cdc_get_all_changes_
- 24. Simple.Data.UnresolvableObjectException - 未找到匹配過程或權限不足
- 25. 不平衡數據:欠採樣或過採樣?
- 26. Keras圖像沒有子文件夾
- 27. MXNet或Keras中是否有度量學習?
- 28. 總結或平均亞梯度?,最小批量SGD keras
- 29. 如何在tensorflow中實現類似keras的子樣本?
- 30. 如何爲Keras網絡提供樣本矩陣進行調試?
感謝這似乎是約我需要什麼 – George
有人可以創建基於此完全工作腳本,來闡述?我需要一個更具體的例子custom_balance等。 – mikal94305