scikit-learn中岭回归的系数路径

用户名

从pandas DataFrame开始,d_train(774行):

在此处输入图片说明

想法是按照此处的示例研究脊系数路径。

在该示例中,以下是变量类型:

X, y, w = make_regression(n_samples=10, n_features=10, coef=True,
                          random_state=1, bias=3.5)
print X.shape, type(X), y.shape, type(y), w.shape, type(w)

>> (10, 10) <type 'numpy.ndarray'> (10,) <type 'numpy.ndarray'> (10,) <type'numpy.ndarray'>

为了避免在这个stackoverflow讨论中提到的问题,我将所有内容都转换为numpy数组:

predictors = ['p1', 'p2', 'p3', 'p4']
target = ['target_bins']
X = d_train[predictors].as_matrix()
### X = np.transpose(d_train[predictors].as_matrix())
y = d_train['target_bins'].as_matrix()
w = numpy.full((774,), 3, dtype=float)
print X.shape, type(X), y.shape, type(y), w.shape, type(w)
>> (774, 4) <type 'numpy.ndarray'> y_shape: (774,) <type 'numpy.ndarray'>     w_shape: (774,) <type 'numpy.ndarray'>

然后,我只运行了(a)示例中的确切代码,(b)将参数添加fit_intercept = True, normalize = True到ridge调用(我的数据未缩放)以获得相同的错误消息:

my_ridge = Ridge()
coefs = []
errors = []
alphas = np.logspace(-6, 6, 200)

for a in alphas:
    my_ridge.set_params(alpha=a, fit_intercept = True, normalize = True)
    my_ridge.fit(X, y)
    coefs.append(my_ridge.coef_)
    errors.append(mean_squared_error(my_ridge.coef_, w))
>> ValueError: Found input variables with inconsistent numbers of samples: [4, 774]

正如代码的注释部分指出的那样,我也尝试了“相同”代码,但使用了转置的X矩阵。在创建之前,我还尝试缩放数据X matrix得到了相同的错误消息。

最后,我使用“ RidgeClassifier”做了同​​样的事情,并且得到了不同的错误消息。

>> Found input variables with inconsistent numbers of samples: [1, 774]

问题:我不知道这是怎么回事-您能帮忙吗?

在Canopy 1.7.4.3348(64位)上使用python 2.7和scikit-learn 18.01-3和pandas 0.19.2-2

谢谢你。

桑迪潘·戴(Sandipan Dey)

您需要具有与w要素数量一样多的权重(因为您学习了每个要素的权重),但是在代码中,权重向量的维数为774(这是训练数据集中的行数),这就是为什么这没用。将代码修改为以下代码(改为具有4个权重),一切将正常进行:

w = np.full((4,), 3, dtype=float) # number of features = 4, namely p1, p2, p3, p4
print X.shape, type(X), y.shape, type(y), w.shape, type(w)
#(774L, 4L) <type 'numpy.ndarray'> (774L,) <type 'numpy.ndarray'> (4L,) <type 'numpy.ndarray'>

现在,您可以从运行代码的其余部分http://scikit-learn.org/stable/auto_examples/linear_model/plot_ridge_coeffs.html#sphx-glr-auto-examples-linear-model-plot-ridge-coeffs-pyalpha通过grid-search了解权重和误差如何随正则化参数变化,并获得下图

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

scikit-学习岭回归UnboundLocalError

来自分类Dev

如何在scikit-learn的岭回归中设置学习率?

来自分类Dev

在Scikit Learn中控制Logistic回归的阈值

来自分类Dev

岭回归:Scikit学习与直接计算不匹配,alpha> 0

来自分类Dev

scikit-learn线性回归模型执行中的问题

来自分类Dev

线性回归的模拟scikit-learn python

来自分类Dev

scikit-learn进行回归模型评估

来自分类Dev

OLS回归:Scikit与Statsmodels?

来自分类Dev

Scikit学习:Logistic回归模型系数:澄清度

来自分类Dev

Scikit Learn中的交叉验证

来自分类Dev

Scikit Learn中的距离指标

来自分类Dev

SciKit中的多类逻辑回归学习

来自分类Dev

Scikit-learn:混淆X0系数和截距

来自分类Dev

如何在Python scikit-learn中从随机森林中的每棵树输出回归预测?

来自分类Dev

如何使用scikit-learn在Python中打印简单线性回归的截距和斜率?

来自分类Dev

TypeError:在Scikit-learn中拟合逻辑回归模型时,类型提升无效

来自分类Dev

使用ElasticNetCV的Scikit-Learn多元回归失败

来自分类Dev

多元线性回归scikit-learn和statsmodel

来自分类Dev

如何使用scikit-learn执行多元线性回归?

来自分类Dev

Scikit-learn-多项逻辑回归时输入形状错误

来自分类Dev

用于SVR回归的Scikit Learn软件包的问题

来自分类Dev

Scikit-learn:我的线性回归不是直线,而是凌乱的

来自分类Dev

Scikit-Learn与Keras(Tensorflow)进行多项逻辑回归

来自分类Dev

如何使用scikit-learn执行多元线性回归?

来自分类Dev

scikit-learn - 以概率为目标变量的多项逻辑回归

来自分类Dev

使用 Scikit-Learn 使用分类数据制作回归模型

来自分类Dev

Scikit了解Logistic回归的困惑

来自分类Dev

脸上的Python scikit回归PCA

来自分类Dev

scikit中的RBM预测

Related 相关文章

  1. 1

    scikit-学习岭回归UnboundLocalError

  2. 2

    如何在scikit-learn的岭回归中设置学习率?

  3. 3

    在Scikit Learn中控制Logistic回归的阈值

  4. 4

    岭回归:Scikit学习与直接计算不匹配,alpha> 0

  5. 5

    scikit-learn线性回归模型执行中的问题

  6. 6

    线性回归的模拟scikit-learn python

  7. 7

    scikit-learn进行回归模型评估

  8. 8

    OLS回归:Scikit与Statsmodels?

  9. 9

    Scikit学习:Logistic回归模型系数:澄清度

  10. 10

    Scikit Learn中的交叉验证

  11. 11

    Scikit Learn中的距离指标

  12. 12

    SciKit中的多类逻辑回归学习

  13. 13

    Scikit-learn:混淆X0系数和截距

  14. 14

    如何在Python scikit-learn中从随机森林中的每棵树输出回归预测?

  15. 15

    如何使用scikit-learn在Python中打印简单线性回归的截距和斜率?

  16. 16

    TypeError:在Scikit-learn中拟合逻辑回归模型时,类型提升无效

  17. 17

    使用ElasticNetCV的Scikit-Learn多元回归失败

  18. 18

    多元线性回归scikit-learn和statsmodel

  19. 19

    如何使用scikit-learn执行多元线性回归?

  20. 20

    Scikit-learn-多项逻辑回归时输入形状错误

  21. 21

    用于SVR回归的Scikit Learn软件包的问题

  22. 22

    Scikit-learn:我的线性回归不是直线,而是凌乱的

  23. 23

    Scikit-Learn与Keras(Tensorflow)进行多项逻辑回归

  24. 24

    如何使用scikit-learn执行多元线性回归?

  25. 25

    scikit-learn - 以概率为目标变量的多项逻辑回归

  26. 26

    使用 Scikit-Learn 使用分类数据制作回归模型

  27. 27

    Scikit了解Logistic回归的困惑

  28. 28

    脸上的Python scikit回归PCA

  29. 29

    scikit中的RBM预测

热门标签

归档