我正在postgres db 中基于大约 20+ GB 的基于文本的分类数据训练 tensorflow keras 顺序模型,我需要为模型提供类权重。这是我在做什么。
class_weights = sklearn.utils.class_weight.compute_class_weight('balanced', classes, y)
model.fit(x, y, epochs=100, batch_size=32, class_weight=class_weights, validation_split=0.2, callbacks=[early_stopping])
Run Code Online (Sandbox Code Playgroud)
由于我无法将整个内容加载到内存中,我想我可以在 keras 模型中使用fit_generator方法。
但是,如何计算此数据的类权重?sklearn没有为此提供任何特殊功能,它是正确的工具吗?
我想在多个随机样本上做这件事,但有没有更好的方法可以使用整个数据?
python machine-learning scikit-learn data-science tensorflow