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) ,例如LogisticRegression 或sklearn.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 '更适合用于大规模数据(设置 tol 和max_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为稀疏数组时返回。 |
注
这个函数不会计算截距。