机器学习 - 在训练数据中引入偏见

时间:2015-12-05 01:09:21

标签: matlab machine-learning neural-network

我有用于培训的数据。当我将它输入我的神经网络时,我对该数据的误差为3%。

我知道这些数据有过多的代表性 - 例如,第5类大约有其他类的例子的十分之一。

我的任务指出,我可以通过偏置训练数据来提高检测率 - 也就是说,通过删除或复制某些数据。然而,在我看来,神经网络应该能够自动解释这一点,我所做的任何修改都只会大大降低网络的准确性。

我特别困惑,因为我应该判断网络是否有所改进,这是通过对原始训练分区进行测试。在我看来,使用训练分区的修改版本来训练将始终在原始训练分区上给你更差的检测率,但是分配似乎表明不是。

由于这是家庭作业,我会感谢提示,而不是直接的答案。

1 个答案:

答案 0 :(得分:1)

  

在我看来,使用训练分区的修改版本来训练将始终在原始训练分区上给你更差的检测率,但是分配似乎另有说明。

简而言之,事实并非如此。训练集可以帮助您最大限度地降低经验风险(在试验集上的错误)。另一方面,您正在尝试最小化泛化风险(测试集上的错误),此处 - 添加一些额外的偏差(以多种形式)可能实际上有帮助,因为它可以防止您过度拟合。特别是,当处理类别的高度不平衡时,经验风险最小化可能导致完全忽略少数(特别是在基于SGD的方法中,单一更新可能不足以摆脱较大类别的较强吸引子),因此偏向(以某种方式)可能会改善整体分类。