sklearn.linear_model.LassoCV

Posted happypeak

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sklearn.linear_model.LassoCV相关的知识,希望对你有一定的参考价值。

class sklearn.linear_model.LassoCV(eps=0.001n_alphas=100alphas=Nonefit_intercept=Truenormalize=Falseprecompute=‘auto‘max_iter=1000tol=0.0001copy_X=Truecv=Noneverbose=Falsen_jobs=Nonepositive=Falserandom_state=Noneselection=‘cyclic‘)

沿着正则化路径迭代拟合的Lasso模型。

最佳模型由交叉验证得到。

目标函数

(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1

参数(Parameters)

  • eps:float, optional

  路径长度。eps=1e-3即alpha_min alpha_max 1e-3。

  • n_alphas:int, optional

  正则化路径中alpha的个数。

  • alphas:numpy array, optional

  alpha组成的list。如果为None,自动选择alpha。

  • fit_intercept:boolean, default True

  是否计算截距。如果为False,对数据进行去中心化处理。

  • normalize:boolean, optional, default False

  当fit_intercept=False时,该参数忽略。如果为normalize=True,使用回归模型之前先对回归数据X进行去均值和除以l2范数的处理。如果要对数据X进行标准化,令normalize=False,并在调用fit方法之前,使用sklearn.preprocessing.StandardScaler进行标准化

  • precompute:True | False | ‘auto’ | array-like

  是否使用事先计算好的Gram矩阵来加速模型计算。如果precompute=‘auto‘,让程序自动决定。Gram矩阵可以作为参数被传递。对于稀疏数据,通常令precompute=True,保留稀疏性。

  • max_iter:int, optional

  最大迭代次数。

  • tol:float, optional

  优化容忍度:如果更新大于tol,继续优化,直到小于tol。

  • copy_X:boolean, optional, default True

  如果copy_X=True,复制X;如果copy_X=False,覆盖上次运行的X。

  • cv:int, cross-validation generator or an iterable, optional

  确定交叉验证划分策略。

    • None:使用默认的5折
    • integer:折数
    • CV splitter
    • (train, test)划分数组
  • verbose:bool or integer

  输出的详细程度。

  • n_jobs:int or None, optional (default=None)

  交叉验证时使用的CPU个数。

  如果positive=True,强制将系数设为正数。

  • random_state:int, RandomState instance or None, optional, default None

  伪随机数发生器种子,随机选择特征来更新模型。如果为int,random_state即为随机数发生器使用的种子;如果为RandomState实例,random_state即为随机数发生器;如果为None,随机数发生器为np.random使用的随机数发生器实例。该参数仅当selection=‘random’时使用。

  • selection:str, default ‘cyclic’

  如果为‘random’,每次迭代都会更新随机系数,而不是按顺序遍历每个特征。该参数值可以使得算法更快收敛,尤其当tol>1e-4时。

属性(Attributes)

  • alpha_:float

  交叉验证选择的惩罚项个数。

  • coef_:array, shape (n_features,) | (n_targets, n_features)

  系数向量。目标函数中的w。

  • intercept_:float | array, shape (n_targets,)

  决策函数的依赖项。

  • mse_path_:array, shape (n_alphas, n_folds)

  每一个alpha、每一折交叉验证的测试集均方误差。

  • alphas_:numpy array, shape (n_alphas,)

  alpha网格。

  • dual_gap_:ndarray, shape ()

  最佳alpha(alpha_)优化结束时的dual gap。

  • n_iter_:int 

  坐标下降法求解达到容忍度时的迭代次数。

注意

为避免不必要的内存占用,X应为numpy数组。

方法(Methods)

  • fit(self, X, y):使用坐标下降法拟合模型。
  • get_params(self[, deep]):获得Lasso模型的参数。
  • path(X, y[, eps, n_alphas, alphas, …]):使用坐标下降法计算Lasso path。
  • predict(self, X):模型预测。
  • score(self, X, y[, sample_weight]):返回预测误差。
  • set_params(self, **params):设置估计器的参数。

 

以上是关于sklearn.linear_model.LassoCV的主要内容,如果未能解决你的问题,请参考以下文章