sklearn.linear_model.ridge_regression

sklearn.linear_model.ridge_regression(X,y,alpha,*,sample_weight = None,Solver ='auto',max_iter = None,tol = 0.001,verbose = 0,random_state = None,return_n_iter = False,return_intercept = False,check_input = True )

[源码]

用正规方程法求解岭方程。

用户指南中阅读更多内容。

参数 说明
X {ndarray, sparse matrix, LinearOperator} of shape (n_samples, n_features)
用于训练的数据
y ndarray of shape (n_samples,) or (n_samples, n_targets)
目标值
alpha float or array-like of shape (n_targets,)
正则强度;必须为正浮点数。正则化改善了问题的状况,并减少了估计的方差。值越大表示正则化更强。在其他线性模型中,Alpha对应于1 / (2C),例如LogisticRegressionsklearn.svm.LinearSVC。如果传递数组,则认为惩罚是特定于目标的。因此,它们必须在数量上对应。
sample_weight float or array-like of shape (n_samples,), default=None
每个样本的独立权重。如果给定一个浮点值,则每个样本的权量都相同。如果sample_weight不为None且solver ='auto',则solver将被设置为'cholesky'。

0.17版中的新功能。
solver {‘auto’, ‘svd’, ‘cholesky’, ‘lsqr’, ‘sparse_cg’, ‘sag’, ‘saga’}, default=’auto’
用于计算例程的求解器:

- ‘auto’根据数据类型自动选择求解器。
- ‘svd’使用X的奇异值分解来计算Ridge系数。奇异矩阵比“ Cholesky”更稳定。
- 'cholesky'使用标准的scipy.linalg.solve函数通过点(XT,X)的Cholesky分解获得封闭的解
- 'sparse_cg'使用scipy.sparse.linalg.cg中的共轭梯度求解器。作为一种迭代算法,此求解器比' cholesky '更适合用于大规模数据(设置tolmax_iter的可能性)。
- ‘lsqr’使用专用的正则化最小二乘例程scipy.sparse.linalg.lsqr。它是最快的,并且使用了迭代过程。
- ‘sag’使用随机平均梯度下降,“ saga”使用其改进的无偏版本SAGA。两种方法都使用迭代过程,并且当n_samples和n_features都很大时,通常比其他求解器更快。注意,只有在比例大致相同的特征上才能保证“ sag”和“ saga”快速收敛。您可以使用sklearn.preprocessing中的缩放器对数据进行预处理。

最后五个求解器均支持密集和稀疏数据。但是,当fit_intercept为True 时,仅'sag'和'sparse_cg'支持稀疏输入。

*版本0.17中的新功能:*随机平均梯度下降求解器。

0.19版中的新功能: SAGA求解器。
max_iter int, default=None
共轭梯度求解器的最大迭代次数。对于“ sparse_cg”和“ lsqr”求解器,默认值由scipy.sparse.linalg决定。对于“ sag”和“ saga”求解器,默认值为1000。
tol float, default=1e-3
解决方案的准确率。
verbose int, default=0
详细程度。设置verbose> 0将显示其他信息,具体取决于所使用的求解器。
random_state int, RandomState instance, default=None
solver=='sag'或'saga'打乱数据时使用。有关详细信息,请参见词汇表
return_n_iter bool, default=False
如果为True,则该方法还返回n_iter,由求解器执行的实际迭代次数。

0.17版中的新功能。
return_intercept bool, default=False
如果为True且X是稀疏的,则该方法还会返回截距,并且求解器会自动更改为'sag'。这只是用于将截距与稀疏数据拟合的临时解决方案。对于密集数据,请在回归之前使用sklearn.linear_model._preprocess_data。

0.17版中的新功能。
check_input bool, default=True
如果为False,将不检查输入数组X和y。

0.21版中的新功能。
返回值 说明
coef ndarray of shape (n_features,) or (n_targets, n_features)
权重向量。
n_iter int, optional
求解器执行的实际迭代次数。仅在return_n_iter为True时返回。
intercept float or ndarray of shape (n_targets,)
模型的截距。仅当return_intercept 为True且X为稀疏数组时返回。

这个函数不会计算截距。