本文簡要介紹python語言中 sklearn.linear_model.MultiTaskElasticNetCV
的用法。
用法:
class sklearn.linear_model.MultiTaskElasticNetCV(*, l1_ratio=0.5, eps=0.001, n_alphas=100, alphas=None, fit_intercept=True, normalize='deprecated', max_iter=1000, tol=0.0001, cv=None, copy_X=True, verbose=0, n_jobs=None, random_state=None, selection='cyclic')
具有內置交叉驗證的多任務 L1/L2 ElasticNet。
請參閱交叉驗證估計器的詞匯表條目。
MultiTaskElasticNet 的優化目標是:
(1 / (2 * n_samples)) * ||Y - XW||^Fro_2 + alpha * l1_ratio * ||W||_21 + 0.5 * alpha * (1 - l1_ratio) * ||W||_Fro^2
其中:
||W||_21 = \sum_i \sqrt{\sum_j w_{ij}^2}
即每行的範數之和。
在用戶指南中閱讀更多信息。
- l1_ratio:浮點數或浮點數列表,默認=0.5
ElasticNet 混合參數,0 < l1_ratio <= 1。對於 l1_ratio = 1,懲罰是 L1/L2 懲罰。當 l1_ratio = 0 時,它是 L2 懲罰。對於
0 < l1_ratio < 1
,懲罰是 L1/L2 和 L2 的組合。該參數可以是一個列表,在這種情況下,通過交叉驗證來測試不同的值,並使用給出最佳預測分數的值。請注意,l1_ratio 值列表的一個不錯選擇通常是放置更多接近 1 的值(即 Lasso)和不太接近 0(即 Ridge),如[.1, .5, .7, .9, .95, .99, 1]
中。- eps:浮點數,默認=1e-3
路徑的長度。
eps=1e-3
表示alpha_min / alpha_max = 1e-3
。- n_alphas:整數,默認=100
正則化路徑上的 alpha 數量。
- alphas:類似數組,默認=無
計算模型的 alpha 列表。如果未提供,則自動設置。
- fit_intercept:布爾,默認=真
是否計算此模型的截距。如果設置為 false,則不會在計算中使用截距(即數據應居中)。
- normalize:布爾,默認=假
當
fit_intercept
設置為 False 時忽略此參數。如果為 True,則回歸量 X 將在回歸前通過減去均值並除以 l2 範數進行歸一化。如果您希望標準化,請在使用normalize=False
對估計器調用fit
之前使用StandardScaler
。- max_iter:整數,默認=1000
最大迭代次數。
- tol:浮點數,默認=1e-4
優化的容差:如果更新小於
tol
,則優化代碼檢查對偶間隙的最優性並繼續直到它小於tol
。- cv:int,交叉驗證生成器或可迭代,默認=無
確定交叉驗證拆分策略。 cv 的可能輸入是:
- 無,使用默認的 5 折交叉驗證,
- int,指定折疊次數。
- CV分配器,
- 一個可迭代的 yield (train, test) 拆分為索引數組。
對於 int/None 輸入,使用
KFold
。有關可在此處使用的各種交叉驗證策略,請參閱用戶指南。
- copy_X:布爾,默認=真
如果
True
,X 將被複製;否則,它可能會被覆蓋。- verbose:bool 或 int,默認 = 0
詳細程度。
- n_jobs:整數,默認=無
交叉驗證期間要使用的 CPU 數量。請注意,這僅在給定 l1_ratio 的多個值時使用。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有處理器。有關詳細信息,請參閱詞匯表。- random_state:int,RandomState 實例,默認=無
選擇要更新的隨機特征的偽隨機數生成器的種子。當
selection
== ‘random’ 時使用。傳遞 int 以獲得跨多個函數調用的可重現輸出。請參閱詞匯表。- selection:{‘cyclic’, ‘random’},默認='循環'
如果設置為‘random’,則每次迭代都會更新隨機係數,而不是默認情況下按順序循環特征。這(設置為‘random’)通常會導致收斂速度顯著加快,尤其是當 tol 高於 1e-4 時。
- intercept_:ndarray 形狀 (n_targets,)
決策函數中的獨立項。
- coef_:ndarray 形狀(n_targets,n_features)
參數向量(成本函數公式中的 W)。請注意,
coef_
存儲了W
、W.T
的轉置。- alpha_:浮點數
交叉驗證選擇的懲罰量。
- mse_path_:ndarray 形狀 (n_alphas, n_folds) 或 (n_l1_ratio, n_alphas, n_folds)
每次折疊測試集的均方誤差,不同的 alpha。
- alphas_:ndarray 形狀 (n_alphas,) 或 (n_l1_ratio, n_alphas)
對於每個 l1_ratio,用於擬合的 alpha 網格。
- l1_ratio_:浮點數
通過交叉驗證獲得的最佳 l1_ratio。
- n_iter_:int
坐標下降求解器運行的迭代次數,以達到最佳 alpha 的指定容差。
- dual_gap_:浮點數
最優 alpha 優化結束時的對偶間隙。
- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。
參數:
屬性:
注意:
用於擬合模型的算法是坐標下降。
為避免不必要的內存重複,fit 方法的 X 和 y 參數應直接作為 Fortran-contiguous numpy 數組傳遞。
例子:
>>> from sklearn import linear_model >>> clf = linear_model.MultiTaskElasticNetCV(cv=3) >>> clf.fit([[0,0], [1, 1], [2, 2]], ... [[0, 0], [1, 1], [2, 2]]) MultiTaskElasticNetCV(cv=3) >>> print(clf.coef_) [[0.52875032 0.46958558] [0.52875032 0.46958558]] >>> print(clf.intercept_) [0.00166409 0.00166409]
相關用法
- Python sklearn MultiTaskElasticNetCV.path用法及代碼示例
- Python sklearn MultiTaskElasticNet.path用法及代碼示例
- Python sklearn MultiTaskElasticNet用法及代碼示例
- Python sklearn MultiTaskLasso用法及代碼示例
- Python sklearn MultiTaskLassoCV用法及代碼示例
- Python sklearn MultiTaskLasso.path用法及代碼示例
- Python sklearn MultiTaskLassoCV.path用法及代碼示例
- Python sklearn MultiOutputClassifier用法及代碼示例
- Python sklearn MultiLabelBinarizer用法及代碼示例
- Python sklearn MultiOutputRegressor用法及代碼示例
- Python sklearn MultinomialNB用法及代碼示例
- Python sklearn MDS用法及代碼示例
- Python sklearn MLPClassifier用法及代碼示例
- Python sklearn MinMaxScaler用法及代碼示例
- Python sklearn MiniBatchSparsePCA用法及代碼示例
- Python sklearn MiniBatchKMeans用法及代碼示例
- Python sklearn MLPRegressor用法及代碼示例
- Python sklearn Matern用法及代碼示例
- Python sklearn MaxAbsScaler用法及代碼示例
- Python sklearn MiniBatchDictionaryLearning用法及代碼示例
- Python sklearn MeanShift用法及代碼示例
- Python sklearn MinCovDet用法及代碼示例
- Python sklearn MissingIndicator用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.MultiTaskElasticNetCV。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。