- Scikit Learn 教程
- Scikit Learn - 首頁
- Scikit Learn - 簡介
- Scikit Learn - 建模過程
- Scikit Learn - 資料表示
- Scikit Learn - 估計器API
- Scikit Learn - 約定
- Scikit Learn - 線性模型
- Scikit Learn - 擴充套件線性模型
- 隨機梯度下降
- Scikit Learn - 支援向量機
- Scikit Learn - 異常檢測
- Scikit Learn - K近鄰演算法
- Scikit Learn - KNN學習
- 樸素貝葉斯分類
- Scikit Learn - 決策樹
- 隨機決策樹
- Scikit Learn - 整合方法
- Scikit Learn - 聚類方法
- 聚類效能評估
- 使用PCA進行降維
- Scikit Learn 有用資源
- Scikit Learn - 快速指南
- Scikit Learn - 有用資源
- Scikit Learn - 討論
Scikit Learn - 多工LASSO
它允許聯合擬合多個迴歸問題,強制所有迴歸問題(也稱為任務)選擇的特徵相同。Sklearn 提供了一個名為MultiTaskLasso的線性模型,該模型使用混合 L1、L2 範數進行正則化訓練,可以聯合估計多個迴歸問題的稀疏係數。其中響應 y 是形狀為 (n_samples, n_tasks) 的二維陣列。
MultiTaskLasso 的引數和屬性與Lasso類似。唯一的區別在於 alpha 引數。在 Lasso 中,alpha 引數是一個乘以 L1 範數的常數,而在多工 Lasso 中,它是一個乘以 L1/L2 項的常數。
並且,與 Lasso 相反,MultiTaskLasso 沒有precompute屬性。
實現示例
下面的 Python 指令碼使用MultiTaskLasso線性模型,該模型進一步使用座標下降作為演算法來擬合係數。
from sklearn import linear_model MTLReg = linear_model.MultiTaskLasso(alpha=0.5) MTLReg.fit([[0,0], [1, 1], [2, 2]], [[0, 0],[1,1],[2,2]])
輸出
MultiTaskLasso(alpha = 0.5, copy_X = True, fit_intercept = True, max_iter = 1000, normalize = False, random_state = None, selection = 'cyclic', tol = 0.0001, warm_start = False)
示例
現在,一旦擬合,模型就可以預測新的值,如下所示:
MTLReg.predict([[0,1]])
輸出
array([[0.53033009, 0.53033009]])
示例
對於上面的示例,我們可以使用以下 Python 指令碼來獲取權重向量:
MTLReg.coef_
輸出
array([[0.46966991, 0. ], [0.46966991, 0. ]])
示例
類似地,我們可以使用以下 Python 指令碼來獲取截距值:
MTLReg.intercept_
輸出
array([0.53033009, 0.53033009])
示例
我們可以使用以下 Python 指令碼來獲取達到指定容差的總迭代次數:
MTLReg.n_iter_
輸出
2
我們可以更改引數的值以從模型中獲得所需的輸出。
廣告