sklearn.pipeline.Pipeline
在Sklearn當中有三大模型:Transformer 轉換器、Estimator 估計器、Pipeline 管道
Transformer有輸入有輸出,同時輸出可以放入Transformer或者Estimator 當中作為輸入。
y_predict 是估計器的輸出模型,估計器輸出無法再放入Transformer 或 Estimator當中再獲取另壹個輸出了。
將Transformer、Estimator 組合起來成為壹個大模型。
管道: 輸入→□→□→□→■→ 輸出
□:Transformer ; ■:Estimator ;
Transformer放在管道前幾個模型中,而Estimator 只能放到管道的最後壹個模型中。
結合:
04 回歸算法 - 最小二乘線性回歸案例
05 回歸算法 - 多項式擴展、管道Pipeline
頭文件引入Pipeline:
from sklearn.pipeline import Pipeline
其他需要引入的包:
Pipeline 的參數是壹個列表,列表中存放著每壹個模型的信息。
第0個模型名字: ss,告訴系統我要做 數據標準化 。
第1個模型名字: Poly,告訴系統我要做壹個 多項式擴展 。
PolynomialFeatures即進行了ss= StandardScaler()的操作,並做了3階的擴展
第2個模型名字: Linear,告訴系統進行 模型訓練 。
fit_intercept=False 表示截距為0
截距:y=ax+b, b是截距。壹般推薦使用fit_intercept=True。
如果輸入特征包含x1,x2,將特征放入多項式擴展的圖紙後,我們會得到壹個針對x1,x2擴展的特征集,並把數據輸出出來。因此在多項式擴展的算法中,存儲的特征集合將是擴展後的結果。
最後用壹張圖解釋fit、transfrom操作在管道和壹般模型訓練中的區別: