아마 Python으로 머신러닝을 공부하시는 분들은 scikit-learn을 많이들 사용하실텐데요. 보통 결정나무를 제외하면 대부분 전처리를 꼭 하게 됩니다. 하다못해 Scaler라도 적용을 하겠죠. 이 때 이런 과정 - Scaler와 모델의 fit 과정이라도 한 번에 진행하면 편할 수도 있습니다. 여러 방법이 있겠지만, 그 중 하나는 pipeline입니다.
일단, 이번에는 wine 데이터를 사용해 보도록 하겠습니다. 이 데이터는 그렇게 중요하지 않구요. 그냥, pipeline 예제만 보일려고 하는 것입니다. 간단하게 red / white 와인을 분류해보려는 시도이지요^^
간단하게 특성 X과 라벨 y을 잡았구요~
pipeline을 StandardScaler를 통과하고 DecisionTreeClassifier를 통과하라고 했습니다. 혹시 아실지 모르겠는데, StandardScaler는 DecisionTree에 별 영향이 없습니다. 그냥 어쩌다 보니 이렇게 되었는데 , pipeline을 보이기 위해서일 뿐입니다.^^
pipe를 pipeline으로 잡았고, 확인해보면 이런 step으로 진행한다는 것을 보여줍니다.
각 과정을 따로 확인할 수도 있구요~
직접 호출할 수도 있습니다.
이미 pipeline이 구성된 상태에서 set_params를 이용해서 설정을 바꿔줄 수 있습니다. 이때, 각과정의 이름과 그 과정의 속성 사이에는 언더바를 두 개 '__' 연달아 넣어서 지정하면 됩니다.
fit 시키는 것은 아주 간편하죠.~~
'Theory > MachineLearning' 카테고리의 다른 글
머신러닝을 이용한 Human Activity Recognition 실습 (12) | 2019.10.29 |
---|---|
Scikit Learn을 이용한 라벨인코딩 - LabelEncode (6) | 2019.09.30 |
Scikit Learn (sklearn) SGDRegressor 사용할 떄 Loss 그래프 확인하는 방법 (10) | 2019.09.23 |
결정트리를 이용한 타이타닉 생존자 예측 (26) | 2018.07.02 |
연습삼아 해보는 비트코인(bitcoin) 시세 예측하기 - 그런데 비트코인이랑 목요일이 뭔 관계가 있나??? (34) | 2018.01.08 |
주가 예측? 나도 해보자~ Forecast 수행에 적합한 Prophet (20) | 2017.08.03 |