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):設置估計器的參數。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM