机器学习新手“避坑”

开发1年前 (2023)发布 漱石
1,685 0

一、在需要的地方没有使用数据归一化

归一化后,所有特征的值都在相同的范围内,通常为 [0,1] 或 [-1,1]。但是在非归一化特征的情况下,一个特征值的可能范围可能不同于另一个特征值的可能范围。只有在需要的地方使用数据归一化将产生更好、更准确的预测。

二、认为特征越多越好

模型的特征越多,过拟合的风险越大。即使在完全随机的数据中,模型也能够找到一些特征(信号),尽管有时较弱,有时较强

三、在需要外推的情况下,使用基于树的模型

基于树的模型无法外推,这些模型的预测值永远不会大于训练数据中的最大值,而且在训练中也永远不会输出比最小值更小的预测值。

四、在不需要的地方使用数据归一化

之前谈到了数据归一化的必要性,但情况并非总是如此,基于树的模型不需要数据归一化。神经网络可能也不需要明确的归一化,因为有些网络内部已经包含归一化层。

五、在训练集和验证集 / 测试集之间泄漏信息

在拆分到训练集 / 测试集后,具有训练数据的部分将包含来自测试的一些信息。这将导致更高的验证分数,但当应用于实际的数据模型时,性能会更差。正确的方法是首先将训练集 / 测试集分开,然后才应用特征生成功能。通常,分别处理训练集和测试集是一种很好的特征工程模式。

© 版权声明

相关文章