gpt4 book ai didi

python - 线性模型的系数太大/太低

转载 作者:太空宇宙 更新时间:2023-11-03 14:12:53 26 4
gpt4 key购买 nike

在对一袋词实现线性回归模型时,python 返回了非常大/非常低的值。 train_data_features 包含训练数据中的所有单词。训练数据包含大约 400 条评论,每条评论少于 500 个字符,排名在 0 到 5 之间。之后,我为每个文档创建了一个词袋。在尝试对所有词袋的矩阵进行线性回归时,

from sklearn import linear_model 
clf = linear_model.LinearRegression()
clf.fit(train_data_features, train['dim_hate'])

coef = clf.coef_
words = vectorizer.get_feature_names()

for i in range(len(words)):
print(str(words[i]) + " " + str(coef[i]))

结果好像很奇怪(只是4000中3的例子)。它显示了为单词创建的回归函数的因素。

btw -0.297473967075
land 54662731702.0
landesrekord -483965045.253

我很困惑,因为目标变量在 0 和 5 之间,但因子却如此不同。他们中的大多数都有非常高/低的数字,我只期待像 btw 中的一个这样的值。

你知道为什么结果是这样吗?

最佳答案

可能是您的模型对数据过度拟合,因为它试图与输出完全匹配。您的担心和怀疑是对的,因为这意味着您的模型可能过度拟合您的数据,并且不会很好地泛化到新数据。您可以尝试以下两种方法之一:

  • 运行 LinearRegression(normalize=True) 并查看它是否对系数有帮助。但这只是一个临时解决方案。
  • 使用Ridge regression反而。它基本上是在进行线性回归,除了会因系数过大而受到惩罚。

关于python - 线性模型的系数太大/太低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35832713/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com