ML *_*00b 2 python machine-learning scikit-learn
我正在研究基于IMDB数据的回归模型,以预测IMDB值.在我的线性回归上,我无法获得准确度分数.
我的代码行:
metrics.accuracy_score(test_y, linear_predicted_rating)
Run Code Online (Sandbox Code Playgroud)
错误:
ValueError: continuous is not supported
Run Code Online (Sandbox Code Playgroud)
如果我要更改该行以获得r2分数,
metrics.r2_score(test_y,linear_predicted_rating)
Run Code Online (Sandbox Code Playgroud)
我能够没有任何错误地获得r2.任何线索我为什么看到这个?
谢谢.
编辑:我发现的一件事test_y是熊猫数据框架,而是linear_predicted_ratingnumpy数组格式.
metrics.accuracy_score用于衡量分类准确性,它不能用于衡量回归模型的准确性,因为看到回归的准确性没有意义 - 预测很少能够等于预期值.如果预测值与预期值相差1%,则准确度将为零,尽管这些预测值很高
以下是回归的一些指标:http://scikit-learn.org/stable/modules/classes.html#regression-metrics
您可以使用以下score(X, y, sample_weight=None)功能LinearRegression通过相应地更改逻辑来获得预测的准确性。
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor.fit(x_train,y_train)
accuracy = regressor.score(x_test,y_test)
print(accuracy*100,'%')
Run Code Online (Sandbox Code Playgroud)
输出(我的模型的A / C)
86.23572%
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12319 次 |
| 最近记录: |