sklearn中的pipeline實際應用

2022-01-09 22:03:11 字數 724 閱讀 6698

前面提到,應用sklearn中的pipeline機制的高效性;本文重點討論pipeline與網格搜尋在機器學習實踐中的結合運用:一般地,sklearn中經常用到網格搜尋尋找應用模型的超引數;實際上,在訓練資料被送入模型之前,對資料的預處理中也會有超引數的介入,比如給資料集新增多項式特徵時所指定的指數大小;

而且,一般都是將資料預處理完成後再傳入估計器進行擬合,此時利用網格搜尋只會單獨調整估計器的超引數;如若利用pipeline結合預處理步驟和模型估計器則可以同時尋找最佳的超引數配對。

例項如下:

上圖中,利用管道結合了3個處理步驟,並使用網格搜尋機制針對其中兩個步驟的超引數進行調優,乙個是預處理階段的polynomialfeatures,另乙個是模型ridge

一般地,選用不同的模型會涉及到不同的預處理步驟,如採用隨機森林進行分類訓練時可以不對資料作預處理操作,而應用支援向量機時則需要對資料進行標準化;

下圖中,利用管道結合預處理中的標準化步驟和分類模型,當模型採用隨機森林時,預處理步驟置空,並利用網格搜尋尋找隨機森林的超引數;當模型採用支援向量機時,啟用預處理步驟,並利用網格搜尋尋找支援向量機的超引數。

通過此種結合應用,選定最適合的分類模型。

sklearn 中的 Pipeline 機制

管道機制在機器學習 演算法中得以應用的根源在於,引數集在新資料集 比如測試集 上的重複使用。管道機制實現了對全部步驟的流式化封裝和管理 streaming workflows with pipelines 注意 管道機制更像是程式設計技巧的創新,而非演算法的創新。接下來我們以乙個具體的例子來演示sk...

sklearn 中的 Pipeline 機制

from sklearn.pipeline import pipelinefrom pandas as pd from sklearn.cross validation import train test split from sklearn.preprocessing import labelen...

sklearn中的Lasso函式

lasso alpha 1.0,fit intercept true,normalize false,precompute false,copy x true,max iter 1000,tol 1e 4,warm start false,positive false,random state no...