- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
您好,我正在尝试使用 scilearn 拟合一小组数据。
import numpy as np
from sklearn import linear_model, model_selection
X = np.array([[86.5999984741211, 9.10000038146973, 14.3000001907349,1],
[66.9000015258789, 17.3999996185303, 11.5,1],
[66.3000030517578, 20 , 10.6999998092651,1],
[78.6999969482422, 15.3999996185303, 12.1000003814697,1],
[76.1999969482422, 18.2000007629395, 12.5,1],
[84.4000015258789, 9.89999961853027, 12.1000003814697,1],
[79.1999969482422, 8.5 , 10.1000003814697,1],
[77.5 , 10.1999998092651, 11.3999996185303,1],
[74.4000015258789, 17.7999992370605, 10.6000003814697,1],
[870.9000015258789, 13.5 , 13,1],
[80.0999984741211, 8 , 9.10000038146973,1],
[80.0999984741211, 10.3000001907349, 9,1],
[79.6999969482422, 13.1000003814697, 9.5,1],
[76.1999969482422, 13.6000003814697, 11.5,1],
[75.5999984741211, 12.1999998092651, 10.8000001907349,1],
[81.3000030517578, 13.1000003814697, 9.89999961853027,1],
[64.5999984741211, 20.3999996185303, 10.6000003814697,1],
[68.3000030517578, 26.3999996185303, 14.8999996185303,1],
[80 , 10.6999998092651, 10.8999996185303,1],
[78.4000015258789, 9.69999980926514, 12,1],
[78.8000030517578, 10.6999998092651, 10.6000003814697,1],
[76.8000030517578, 15.3999996185303, 13,1],
[82.4000015258789, 11.6000003814697, 9.89999961853027,1],
[73.9000015258789, 16.1000003814697, 10.8999996185303,1],
[64.3000030517578, 24.7000007629395, 14.6999998092651,1],
[81 , 14.8999996185303, 10.8000001907349,1],
[70 , 14.3999996185303, 11.1000003814697,1],
[76.6999969482422, 11.1999998092651, 8.39999961853027,1],
[81.8000030517578, 10.3000001907349, 9.39999961853027,1],
[82.1999969482422, 9.89999961853027, 9.19999980926514,1],
[76.6999969482422, 10.8999996185303, 9.60000038146973,1],
[75.0999984741211, 17.3999996185303, 13.8000001907349,1],
[78.8000030517578, 9.80000019073486, 12.3999996185303,1],
[74.8000030517578, 16.3999996185303, 12.6999998092651,1],
[75.6999969482422, 13 , 11.3999996185303,1],
[74.5999984741211, 19.8999996185303, 11.1000003814697,1],
[81.5 , 11.8000001907349, 11.3000001907349,1],
[74.6999969482422, 13.1999998092651, 9.60000038146973,1],
[72 , 11.1999998092651, 10.8000001907349,1],
[68.3000030517578, 18.7000007629395, 12.3000001907349,1],
[77.0999984741211, 14.1999998092651, 9.39999961853027,1],
[67.0999984741211, 19.6000003814697, 11.1999998092651,1],
[72.0999984741211, 17.3999996185303, 11.8000001907349,1],
[85.0999984741211, 10.6999998092651, 10,1],
[75.1999969482422, 9.69999980926514, 10.3000001907349,1],
[80.8000030517578, 10 , 11,1],
[83.8000030517578, 12.1000003814697, 11.6999998092651,1],
[78.5999984741211, 12.6000003814697, 10.3999996185303,1],
[66 , 22.2000007629395, 9.39999961853027,1],
[83 , 13.3000001907349, 10.8000001907349,1],
[73.0999984741211, 26.3999996185303, 22.1000003814697,1]])
y = np.array([761,
780,
593,
715,
1078,
567,
456,
686,
1206,
723,
261,
326,
282,
960,
489,
496,
463,
1062,
805,
998,
126,
792,
327,
744,
434,
178,
679,
82,
339,
138,
627,
930,
875,
1074,
504,
635,
503,
418,
402,
1023,
208,
766,
762,
301,
372,
114,
515,
264,
208,
286,
2922])
model = linear_model.SGDRegressor(max_iter=0x7FFFFFFF, tol=1e-12, learning_rate="constant", eta0=.1, shuffle=False)
"""model = linear_model.Lasso(max_iter=0x7FFFFFF,tol=1e-12)"""
model.fit(X,y)
print(model.coef_)
print (model.score(X,y))
"""
for i in range(0,len(X)):
print (np.dot(X[i],model.coef_))"""
Ridge/Lasso/ElasticNet 在一定程度上符合(~0.7 分),但即使我设置了超高迭代和超低 tol 值,SGDRegressor 甚至无法接近这些值。
调整 max_iter 或 tol 对结果没有任何影响,我不断获得巨大的系数。
最佳答案
在应用梯度下降技术之前,您需要确保对特征进行缩放。查看您的 X,这应该可以解决问题。
from sklearn.preprocessing import StandardScaler
X_scaled = StandardScaler().fit_transform(X)
关于python - Scikit - SGDRegressor 不适合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50551428/
我的 SGDRegressor 的模型拟合在大约 20'000 个训练记录后不会增加或减少其在验证集(测试)上的性能。即使我尝试将 penalty、early_stopping (True/False
我尝试为 x 的线性函数回归做一个简单的测试用例,但是 SGDRegressor 给了我一个错误的结果 import numpy as np from sklearn.linear_model imp
对于机器学习任务,我需要处理相当大的数据集。结果,我无法在我的算法中一次拟合整个数据集。我正在寻找一种方法来在数据集上部分训练我的算法,简单地提供新 block 是行不通的,因为我的算法将只是 ret
我目前正在尝试使用 scikits learn 中的 SGDRegressor 来解决大型数据集 X ~= (10^6,10^4) 上的多变量目标问题。因此,我使用以下代码部分生成设计矩阵 (X),其
您好,我正在尝试使用 scilearn 拟合一小组数据。 import numpy as np from sklearn import linear_model, model_selection X
我是 scikit-learn 的新手,但它满足了我的期望。现在,令人抓狂的是,唯一剩下的问题是我找不到如何打印(或者更好的是,写入一个小文本文件)它估计的所有系数,它选择的所有特征。有什么方法可以做
据我了解,scikit-learn 中的 LinearRegression 类和 SGDRegressor 类都执行线性回归。但是,只有 SGDRegressor 使用梯度下降作为优化算法。 那么Li
我正在尝试了解如何正确使用 scikit-learn 的 SGDRegressor 模型。为了适应数据集,我需要调用一个function fit(X,y),其中x 是一个形状为 (n_samples,
我正在租赁数据集上使用 scikit-learn 的 SGDRegressor 算法实现梯度下降,以根据面积预测租金,但得到奇怪的系数和截距,因此对租金的预测很奇怪。租赁数据集:rentals.csv
我正在 Kaggle 中解决一个标签为正数的知识问题。我尝试在 scikit-learn 中使用 SGDRegressor 来训练和测试模型。然而,学习模型的一些预测是否定的。 因此,我想知道是否有一
我是一名优秀的程序员,十分优秀!