创建流水线
隨著實驗的增加,操作的復雜程度也在提高。我們可能需要切分數據集,對特征進行二值化 處理,以特征或數據集中的個體為基礎規范化數據,除此之外還可能需要其他各種操作。
當操作變得越來越復雜的時候,我們很難追蹤到數據和代碼的運行情況,如果數據處理順序錯了,可能也不容易得到我們想要的結果。這時候,引入流水線來規范就很有必要了。
from sklearn.pipeline import Pipeline流水線大致分為兩步:
(1)用MinMaxScaler將特征取值范圍規范到0~1。
(2)指定KNeighborsClassifier分類器。
每一步都用元組(‘名稱’,步驟)來表示。現在來創建流水線。
scaling_pipeline = Pipeline([('scale', MinMaxScaler()),('predict', KNeighborsClassifier())])流水線的核心是元素為元組的列表。第一個元組規范特征取值范圍,第二個元組實現預測功能。我們把第一步叫作規范特征取值(scale),第二步叫作預測(predict),也可以用其他名字。 元組的第二部分是實際的轉換器對象或估計器對象。
下面運行,就可以出結果了。
scores = cross_val_score(scaling_pipeline, X_broken, y, scoring='accuracy') print("The pipeline scored an average accuracy for is {0:.1f}%". format(np.mean(transformed_scores) * 100))總結
- 上一篇: 标准预处理
- 下一篇: 用亲和性分析方法推荐电影