- 最小角回归
- sklearn.linear_model.Lars
- sklearn.linear_model.LassoLars
最小角回归
sklearn.linear_model.Lars
class sklearn.linear_model.Lars(*, fit_intercept=True, verbose=False, normalize=True,
precompute='auto', n_nonzero_coefs=500, eps=2.220446049250313e-16, copy_X=True,
fit_path=True, jitter=None, random_state=None)
参数:
fit_intercept:bool, default=True
是否计算此模型的截距。如果设置为false,则在计算中将不使用任何截距(即数据将被居中)。
verbose:bool or int, default=False
设置详细量
normalize:bool, default=True
当fit_intercept设置为False时,忽略此参数。如果为真,则回归前,通过减去平均值并除以l2范数,
对回归数X进行归一化。
precompute:bool, ‘auto’ or array-like , default=’auto’
是否使用预计算的程序矩阵加快计算速度。
n_nonzero_coefs:int, default=500
非零系数的目标数。
eps:float, optional
Cholesky对角因子计算中的机器精度正则化。
copy_X:bool, default=True
如果True,X将被复制,否则,它可能会被覆盖。
fit_path:bool, default=True
如果为True,则完整路径存储在coef_path_u属性中。如果计算大问题或多个目标的解决方案,
将fit_path设置为False将导致加速,特别是使用小alpha时。
jitter:float, default=None
将均匀噪声参数的上界添加到y值,以满足模型一次计算一次的假设。可能有助于稳定。
random_state:int, RandomState instance or None (default)
确定抖动的随机数生成。
属性:
alphas_:array-like of shape (n_alphas + 1,) | list of n_targets such arrays
每次迭代的协方差最大值(绝对值)。
active_:list, length = n_alphas | list of n_targets such lists
路径末端活动变量的索引。
coef_path_:array-like of shape (n_features, n_alphas + 1) | list of n_targets such arrays
系数沿路径的变化值。
coef_:array-like of shape (n_features,) or (n_targets, n_features)
参数向量(公式中的w)。
intercept_:float or array-like of shape (n_targets,)
决策函数中的独立项。
n_iter_:array-like or int
迭代次数。
另见:
lars_path, LarsCV
sklearn.decomposition.sparse_encode
>>> from sklearn import linear_model
>>> reg = linear_model.Lars(n_nonzero_coefs=1)
>>> reg.fit([[-1, 1], [0, 0], [1, 1]], [-1.1111, 0, -1.1111])
Lars(n_nonzero_coefs=1)
>>> print(reg.coef_)
[ 0. -1.11...]
方法:
__init__(self, *, fit_intercept=True, verbose=False, normalize=True,
precompute='auto', n_nonzero_coefs=500, eps=2.220446049250313e-16, copy_X=True,
fit_path=True, jitter=None, random_state=None)
初始化自身。
fit(self, X, y, Xy=None)
使用X,y作为训练数据拟合模型。
参数:
X:array-like of shape (n_samples, n_features)
训练数据
Y:array-like of shape (n_samples,) or (n_samples, n_targets)
目标值
返回:
self:object
返回self的实例。
get_params(self, deep=True)
获取此估计器的参数。
参数:
deep:bool, default=True
如果为True,则返回此估计器的参数以及包含的子对象(即估计器)。
返回:
params:mapping of string to any
映射到其值的参数名。
predict(self, X)
参数:
X:array_like or sparse matrix, shape (n_samples, n_features)
返回:
C:array, shape (n_samples,)
返回预测值
score(self, X, y, sample_weight=None)
返回预测的决定系数R^2。
系数R^2定义为(1-u/v),其中u是残差平方和((y_true-y_pred)**2).sum(),
v是平方和的总和((y_true-y_true.mean())**2).sum()。最好的分数是1.0,
它可以是负的(因为模型可以任意恶化)。一个常数模型总是预测y的期望值,而不考虑输入特性,
则得到R^2分数为0.0。
参数:
X:array-like of shape (n_samples, n_features)
测试样本。
y:array-like of shape (n_samples,) or (n_samples, n_outputs)
X的真值。
sample_weight:array-like of shape (n_samples,), default=None
样本权重。
返回:
scorefloat
得分
set_params(self, **params)
设置此估计器的参数。
参数:
**params:dict
估计参数
返回:
Self:object
估计实例
代码
sklearn.linear_model.LassoLars
class sklearn.linear_model.LassoLars(alpha=1.0, *, fit_intercept=True, verbose=False,
normalize=True, precompute='auto', max_iter=500, eps=2.220446049250313e-16, copy_X=True,
fit_path=True, positive=False, jitter=None, random_state=None)
参数:
alpha:float, default=1.0
乘以惩罚项的常数。默认为1.0。alpha=0相当于一个普通的最小二乘法,通过线性回归求解。
fit_intercept:bool, default=True
是否计算此模型的截距。如果设置为false,则计算中将不使用截距(即数据应居中)。
verbose:bool or int, default=False
设置详细量
normalize:bool, default=True
当fit_intercept设置为False时,忽略此参数。如果为真,则回归前,通过减去平均值并除以l2范数,
对回归数X进行归一化。
precompute:bool, ‘auto’ or array-like, default=’auto’
是否使用预计算的程序矩阵加快计算速度。
max_iter:int, default=500
要执行的最大迭代次数。
eps:float, optional
Cholesky对角因子计算中的机器精度正则化。
copy_X:bool, default=True
如果True,X将被复制,否则,它可能会被覆盖。
fit_path:bool, default=True
如果为True,则完整路径存储在coef_path_u属性中。如果计算大问题或多个目标的解决方案,
将fit_path设置为False将导致加速,特别是使用小alpha时。
positive:bool, default=False
限制系数大于等于0。
jitter:float, default=None
将均匀噪声参数的上界添加到y值,以满足模型一次计算一次的假设。可能有助于稳定。
random_state:int, RandomState instance or None (default)
确定抖动的随机数生成。
属性:
alphas_:array-like of shape (n_alphas + 1,) | list of n_targets such arrays
每次迭代的协方差最大值(绝对值)。
active_:list, length = n_alphas | list of n_targets such lists
路径末端活动变量的索引。
coef_path_:array-like of shape (n_features, n_alphas + 1) | list of n_targets such arrays
系数沿路径的变化值。
coef_:array-like of shape (n_features,) or (n_targets, n_features)
参数向量(公式中的w)。
intercept_:float or array-like of shape (n_targets,)
决策函数中的独立项。
n_iter_:array-like or int
迭代次数。
另见:
lars_path
lasso_path
Lasso
LassoCV
LassoLarsCV
LassoLarsIC
sklearn.decomposition.sparse_encode
例子:
>>> from sklearn import linear_model
>>> reg = linear_model.LassoLars(alpha=0.01)
>>> reg.fit([[-1, 1], [0, 0], [1, 1]], [-1, 0, -1])
LassoLars(alpha=0.01)
>>> print(reg.coef_)
[ 0. -0.963257...]
方法:
__init__(self, *, fit_intercept=True, verbose=False, normalize=True,
precompute='auto', n_nonzero_coefs=500, eps=2.220446049250313e-16, copy_X=True,
fit_path=True, jitter=None, random_state=None)
初始化自身。
fit(self, X, y, Xy=None)
使用X,y作为训练数据拟合模型。
参数:
X:array-like of shape (n_samples, n_features)
训练数据
Y:array-like of shape (n_samples,) or (n_samples, n_targets)
目标值
返回:
self:object
返回self的实例。
get_params(self, deep=True)
获取此估计器的参数。
参数:
deep:bool, default=True
如果为True,则返回此估计器的参数以及包含的子对象(即估计器)。
返回:
params:mapping of string to any
映射到其值的参数名。
predict(self, X)
参数:
X:array_like or sparse matrix, shape (n_samples, n_features)
返回:
C:array, shape (n_samples,)
返回预测值
score(self, X, y, sample_weight=None)
返回预测的决定系数R^2。
系数R^2定义为(1-u/v),其中u是残差平方和((y_true-y_pred)**2).sum(),
v是平方和的总和((y_true-y_true.mean())**2).sum()。最好的分数是1.0,
它可以是负的(因为模型可以任意恶化)。一个常数模型总是预测y的期望值,
而不考虑输入特性,则得到R^2分数为0.0。
参数:
X:array-like of shape (n_samples, n_features)
测试样本。
y:array-like of shape (n_samples,) or (n_samples, n_outputs)
X的真值。
sample_weight:array-like of shape (n_samples,), default=None
样本权重。
返回:
scorefloat
得分
set_params(self, **params)
设置此估计器的参数。
参数:
**params:dict
估计参数
返回:
Self:object
估计实例