机器学习的不平衡训练数据(CNN / RNN)

时间:2017-04-22 14:30:22

标签: machine-learning tensorflow conv-neural-network recurrent-neural-network

我发现在对不平衡训练数据训练一些CNN和RNN时,我的训练收敛速度相对较快,准确度大于较大级别的百分比(例如,如果有80%是例子,它可能总是输出是)。我发现可以解释的是,这个解决方案是一个局部最优解决方案,网络在训练时无法逃脱。这种解释是否正确,因此这种情况主要发生在这些情况中? 我该怎么做呢?合成更多训练数据以使设置更均匀?还有什么? 非常感谢!

2 个答案:

答案 0 :(得分:1)

是的,你是对的。不平衡的训练数据会影响准确性。一些解决不平衡类问题的解决方案如下:

1)更多数据收集:在某些情况下这并不容易。例如,与非欺诈案件相比,欺诈案件数量非常少。

2)欠采样:从多数类中删除数据。您可以随机删除它或提供信息(从分发中获取帮助以确定要删除的部分/补丁)

3)过度采样:复制属于少数群体的观察结果。

答案 1 :(得分:1)

您的问题与TF无关,这是机器学习中的标准问题。只需在谷歌中输入“处理机器学习中的不平衡数据”并阅读几页。

以下是一些方法:

  • 获取更多数据
  • 使用其他指标(f1)
  • 欠/过采样/加权