输入过多 = 过拟合?

数据挖掘 神经网络 分类 特征工程 过拟合 特征构造
2021-10-16 03:45:47

第一个问题:我可以混合不同类型的输入类型,例如身高和年龄(当然我的输入是标准化的)?一般来说,我们可以在神经网络中混合不同类型的输入吗?

第二个问题:太多不同的输入会导致过度拟合吗?

我正在使用 120 个输入神经元和 20,000 个训练数据,并且以 53% 的准确率过度拟合(差)...

谢谢你。

2个回答

是的,当特征的尺度相似时,您可以混合任何不同类型的输入,这是通过对特征向量进行归一化来实现的。

当您说“输入过多”时,我假设您的意思是太多功能

如果您指的是输入数据的大小(训练示例的数量),那么输入数据的大小与过度拟合没有直接关系。过拟合取决于模型的复杂性。当模型试图适应输入数据的噪声并因此变得过于具体以至于不能很好地推广到新的训练数据时,就会发生这种情况。

任何“足够”复杂的模型(例如,包含许多隐藏层、每层中的大量神经元、其权重未正则化的模型)都可以轻松收敛,从而对训练数据造成很小的损失(除非它收敛到不同的次优局部最小值),但会在测试数据上给出较差的准确性。但总的来说,相反,缺乏足够的数据往往会导致过度拟合,因为模型试图基于非常少的样本进行学习,这些样本的多样性较低。这就像向孩子展示仅包含白色和橙色乒乓球的球样本,并要求他/她识别蓝色球。

太多的特征会导致过度拟合,因为它会增加模型的复杂性。特征和与预测完全无关的特征更有可能出现冗余。

例如。如果您要预测网球的质量,则选择作为球颜色的特征无关紧要,但网络将从训练示例中学习,并且有可能由于人们喜欢玩黄色球,所以他们玩得更频繁和他们在一起,那些球不会持续很长时间。

根据我目前的经验,将太多特征作为 NN 的输入会降低性能 这是我从维度和特征减少的中等诅咒中摘录的一段话

维数灾难的发生是因为样本密度随着维数的增加呈指数下降

很好,现在我们知道拥有太多特征对我们的模型性能不利(或特征与样本的比率显着增加)我们可以做些什么来解决它?

现在我能想到3种方法

  1. 特征选择

  2. 特征提取

  3. 集成学习这些功能的不同子系列(yummmyyy :))