微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何正确调整超参数以最小化误差

如何解决如何正确调整超参数以最小化误差

真的已经研究了一个多星期了,使用了 youtube 喜欢的预测数据集。我不得不将所有非文本特征和非相关特征删除到目标剩余的 3 个特征,并且数据集只是 (26061,12) 数据集。 但是使用线性回归发现我的 MSE 和 MAE 都太大了(大约 15,000)。还使用了梯度提升仍然相同,并且还发现它不适用于 n_estimators 大于 5 的数据集。还尝试使用电源变压器转换 X_train 和 X_test 以确保良好的高斯分布,但仍然无法正常工作。 我无法弄清楚什么是真正的错误。 这是我的 colab 笔记本的链接 https://colab.research.google.com/drive/1dJZuG0n63842DEwHMR7TzLBmssnOKsj4?usp=sharing 链接到数据集 https://www.kaggle.com/jinxzed/youtube-likes-prediction-av-hacklive

解决方法

您的特征的比例非常不同(“视图”在数值上比其他变量大得多)。这使得“视图”特征对最终输出的影响比其他变量更大。

我建议在将数据输入任何模型之前先对特征进行标准化。您可以使用 sklearn 的 StandardScaler:

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

此外,较大的 MSE 并不一定意味着您的模型不好,因为 MSE 的大小还取决于标签 y 的大小。例如,对于 true_label 和 predict_label 之间相同的 10% 差异,

true_label = 1000,predict_label = 1100 -> Squared Error = 10000

会导致比

更大的平方误差
true_label = 1,predict_label = 1.1 -> Squared Error = 0.01

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。