返回不合理高数字的均方误差

2024-09-22 16:38:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图预测IMDb上每部电影的利润。在

我的数据帧和功能如下:

   Actor1  Actor2  Actor3  Actor4   Day  Director  Genre1  Genre2  Genre3  \
0       0       0       0       0  19.0         0       0       0       0   
1       1       1       1       1   6.0         1       1       1       1   
2       2       2       2       2  20.0         2       0       2       2   
3       3       3       3       3   9.0         3       2       0      -1   
4       4       4       4       4   9.0         4       3       3       3   

   Language  Month  Production  Rated  Runtime  Writer    Year    BoxOffice  

0         1      0           0      0    118.0       0  2007.0   37500000.0  

1         2      1           1      0    151.0       1  2006.0  132300000.0  

2         1      1           2      1    130.0       2  2006.0   53100000.0  

3         1      2           1      0    117.0       3  2007.0  210500000.0  

4         4      3           3      2    117.0       4  2006.0  244052771.0 

我要预测的(目标)是票房。在

我正在跟踪sklearn的文档(http://scikit-learn.org/stable/modules/generated/sklearn.metrics.mean_squared_error.html#sklearn.metrics.mean_squared_error

^{pr2}$

而输出总是这样的:11385650623660550(11385650623660500.00美元)

而票房的平均值是: 107989121个

等等

我尝试了多种不同的方法,交叉验证以及其他模型(keras),感觉我什么都试过了。在

返回的总和非常高,这让我怀疑问题不在模型或数据中,而是我遗漏的其他东西。在


Tags: 数据模型功能电影errorsklearnmeanmetrics
3条回答

你能检查一下你的模型的准确性吗?我想这是很低的,所以你得到了很高的均方根错误。因为预测票房和实际票房之间的模型精度差很高,而且平方差变得更大。在

rgr.score(X_test,Y_test

我认为,你的问题与均方误差无关,而是模型本身。在

对于您的分类功能,我建议您尝试另一种编码方法,如OneHotEncoder。LabelEncoder不是线性回归的好选择。在

(更多信息:http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html

https://hackernoon.com/what-is-one-hot-encoding-why-and-when-do-you-have-to-use-it-e3c6186d008f

在训练你的模型之前,先看看你的数字特征与你的目标变量之间的关系,也许其中有些是不相关的,对于分类特征,你可以尝试不同的方法来分析它们与目标变量的关系(比如boxplots)

线性回归需要连续变量,因此您可能也需要尝试其他算法。在应用它们之前,确保你有足够的背景知识。在

尝试标准化输出(或Y)变量,并将它们置于0和1之间。在

相关问题 更多 >