LinearRegression(),赔率y

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LinearRegression(),赔率y相关的知识,希望对你有一定的参考价值。

我具有以下knn模型的train_size和精度:

train_sizes = [100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600]
accuracies = [0.702, 0.791, 0.811, 0.866, 0.905, 0.927, 0.939, 0.952, 0.963]

我想用x计算赔率(y)= y /(1-y):

# First we traspose the features
X = np.array(train_sizes)[:,np.newaxis]
y = np.array(accuracies)[:,np.newaxis]

#Transform Y, using odds(y)=y/(1-y)
odds_y=y/(1-y)
regression_model = LinearRegression()
regression_model.fit(X, odds_y)
Accuracy_oddsy = regression_model.predict([[60000],[120000],[1000000]])
print('Accuracy for n = 60000, 120000, and 1000000 are:', Accuracy_oddsy)

但是我的精确度计算似乎已过时,因为它们已经超过了1。您能帮助我如何使用odds(y)更改代码以预测准确性吗?谢谢!

答案

您需要将odds_y转换回y

Accuracy_oddsy/(1+Accuracy_oddsy)

输出:

array([[0.98329271],
       [0.99111439],
       [0.99887043]])

以上是关于LinearRegression(),赔率y的主要内容,如果未能解决你的问题,请参考以下文章

tensorflow - linearregression

Simple_LinearRegression_Test

python sklearn.linear_model.LinearRegression.score

sklearn的LinearRegression源码理解

sklearn的LinearRegression源码理解

如何在 LinearRegression 上使用 accuracy_score?