빅데이터 전문가 되기
[scikit-learn] pipeline 본문
👀 pipeline 이란?
: 최종 추정기가 포함된 변환 파이프라인.
변환 목록과 최종 추정기를 순차적으로 적용합니다. 파이프라인의 중간 단계는 '변환'이여야 합니다.
파이프라인의 목적은 서로 다른 매개 변수를 설정하면서 함께 교차 검증할 수 있는 여러 단계를 조합하는 것입니다.
pipeline(steps, *, memory = None, verbose = False)
👉 속성
- named_steps : 이름으로 단계에 액세스
- classes_ : 클래스 레이블
- n_features_in_ : fit 첫 번째 단계 방법 중에 표시되는 기능의 수
- feature_names_in_ : 첫 번째 단계 방법 중에 표시되는 기능의 이름
예시로 어떻게 pipeline을 어떻게 사용하는지 확인해보겠습니다.
from sklearn.svm import SVC
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.pipeline import Pipeline
X, y = make_classification(random_state=0)
X_train, X_test, y_train, y_test = train_test_split( X, y, random_state=0 )
pipe = Pipeline([('scaler', StandardScaler()), ('svc', SVC())])
# 파이프라인은 다른 추정기처럼 사용할 수 있음.
# test set이 train set에 누출되는 것을 방지
pipe.fit(X_train, y_train)
pipe.score(X_test, y_test)
> 0.88
'Python > skcikit-learn' 카테고리의 다른 글
[skcikit-learn] Cross Validation(교차 검증) (0) | 2023.04.28 |
---|---|
[scikit-learn] Linear Models (0) | 2023.04.28 |
Comments