gpt4 book ai didi

python - keras flow_from_directory 超过或欠采样一个类

转载 作者:太空狗 更新时间:2023-10-29 18:02:05 24 4
gpt4 key购买 nike

我正在尝试使用 Keras 解决二元分类问题,使用 ImageDataGenerator.flow_from_directory 方法生成批处理。但是,我的类非常不平衡,比如一个类比另一个多 8 倍或 9 倍,导致模型在为每个示例预测相同的输出类时卡住。有没有一种方法可以将 flow_from_directory 设置为在每个时期从我的小类过采样或从我的大类欠采样?目前,我刚刚在小类为每个图像创建了多个副本,但我希望有更多的灵 active 。

最佳答案

使用当前版本的 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 RNNs) - 其中批处理大小应该具有固定大小)。

关于python - keras flow_from_directory 超过或欠采样一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41815354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com