首页 > 解决方案 > 在使用 Ridge Regressor 进行线性回归之后 - 使用了哪个求解器?

问题描述

Scikit-learn 线性回归类“Ridge 回归”具有参数“solver”来定义应该使用哪个求解器。

如果它设置为“自动”,我可以在事后找出实际使用的求解器吗?

根据Ridge继承的 _RidgeBase 父类,该solver字段应设置为实际使用的求解器[GitHub],因此我希望该值是之后的值。但如果我之后打印求解器,它仍然返回“自动”

regressor = Ridge(alpha = 0.1, fit_intercept = False, normalize = False)
regressor.fit(x_train, y_train)
y_pred = regressor.predict(x_test)
print(regressor.solver)

标签: pythonscikit-learnregressionlinear-regression

解决方案


不幸的是,通过查看他们的源代码,用于您的模型的求解器似乎没有存储在任何属性中供您访问。

但是,这是他们的来源,希望对您有所帮助。

if solver == 'auto':
    if return_intercept:
        # only sag supports fitting intercept directly
        solver = "sag"
    elif not sparse.issparse(X):
        solver = "cholesky"
    else:
        solver = "sparse_cg"

推荐阅读