Ridge(alpha=1.0, fit_intercept=True, normalize=False, copy_X=True, max_iter=None, tol=1e-3, solver=”auto”, random_state=None)
sklearn.linear_model.ridge模块中的函数,是Ridge类,线性最小二乘L2正则化。该模型求解了线性最小二乘函数和L2正则化的回归模型。也称为岭回归或者Tikhonov 正则化。该估计其内置了对多变量回归的支持,多变量回归的例子是y是一个二维数组[n_samples,n_target]。
在用户指导手册中查阅更多。
名称 | 说明 |
---|---|
auto | 根据数据类型自动选择求解器 |
svd | 利用X的奇异值分解来计算脊系数。对于奇异矩阵比“cholesky”更稳定。 |
cholesky | 使用标准scipy.linalg.solve去得到一个闭合解 |
sparse_cg | 使用在scipy.sparse.linalg.cg中发现的共轭梯度求解器。作为一种迭代算法,这个求解器比“cholesky”更适合于大规模数据(可以设置tol和max_iter)。 |
lsqr | 使用专用正规化最小二乘的常规scipy.sparse.linalg.lsqr。它是最快的,但可能不能用旧的scipy版本。它还使用了一个迭代过程。 |
sag | saga使用随机平均梯度下降改进的,没有偏差的版本,名字为SAGA。这两种方法都使用可迭代的过程,当n_samples和n_feature都很大时,它们通常比其他解决程序更快。 请注意,“sag”和“saga”快速收敛只在具有大致相同规模的特性上得到保证。您可以通过sklearn.preprocessing对数据进行预处理。 |
最后的五个解决方案都支持密集和稀疏数据。然而,当fit_intercept是真的时,只有“sag”和“saga”支持稀疏输入。
在版本0.17更新的地方:Stochastic Average Gradient descent solver.
在版本0.19更新的地方:SAGA solver.
最新版本是0.17
RidgeClassifier, RidgeCV, sklearn.kernel_ridge.KernelRidge
# 导入Ridge包
from sklearn.linear_model import Ridge
# 导入numpy
import numpy as np
# 定义样本数,特征数
n_samples, n_features = 10, 5
# 设置随机种子
np.random.seed(0)
# 初始化x
y = np.random.randn(n_samples)
# 初始化y
X = np.random.randn(n_samples, n_features)
# 实例化Ridge对象
clf = Ridge(alpha=1.0)
# 训练Ridge对象
clf.fit(X, y)
运算结果:
Ridge(alpha=1.0, copy_X=True, fit_intercept=True, max_iter=None,
normalize=False, random_state=None, solver='auto', tol=0.001)