class sklearn.linear_model.
Lasso
(alpha=1.0, fit_intercept=True, normalize=False, precompute=False, copy_X=True, max_iter=1000, tol=0.0001, warm_start=False, positive=False, random_state=None, selection='cyclic')
目標函數
(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1
參數(Parameters)
- alpha:float, optional
正則項參數。常數。默認值1.0。alpha=0時轉化為最小二乘估計,由線性回歸模型求解。使用Lasso模型時,通常令alpha≠0。
- fit_intercept:boolean, optional, 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 | array-like, default=False
是否使用事先計算好的Gram矩陣來加速模型計算。如果precompute='auto',讓程序自動決定。Gram矩陣可以作為參數被傳遞。對於稀疏數據,通常令precompute=True,保留稀疏性。
- copy_X:boolean, optional, default True
如果copy_X=True,復制X;如果copy_X=False,覆蓋上次運行的X。
- max_iter:int, optional
最大迭代次數。
- tol:float, optional
優化容忍度:如果更新大於tol,繼續優化,直到小於tol。
- warm_start:bool, optional
如果warm_start=True,使用上次的解作為初始化;如果warm_start=False,清除之前的解。
- positive:bool, optional
如果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)
- coef_:array, shape (n_features,) | (n_targets, n_features)
系數向量。目標函數中的w。
sparse_coef_:
scipy.sparse matrix, shape (n_features, 1) | (n_targets, n_features)
求解的coef_的稀疏表示。
- intercept_:float | array, shape (n_targets,)
決策函數的依賴項。
- n_iter_:int | array-like, shape (n_targets,)
坐標下降法求解達到容忍度時的迭代次數。
注意
- 模型擬合算法是坐標下降法
- 為避免不必要的內存占用,X應為numpy數組。
方法(Methods)
fit
(self, X, y[, check_input]):使用坐標下降法擬合模型。
get_params
(self[, deep]):獲得Lasso模型的參數。
path
(X, y[, l1_ratio, eps, n_alphas, …]):使用坐標下降法計算elastic net path。
predict
(self, X):模型預測。
score
(self, X, y[, sample_weight]):返回預測誤差。
set_params
(self, \*\*params):設置估計器的參數。