Data Leakage

Pipelines


파이프라인은 전처리 단계와 모델을 순서대로 묶어 fit과 predict를 한 단위로 실행하는 객체다.

pipeline.fit전처리 상태를 저장한 뒤 변환한 학습 자료로 모델을 학습한다.
pipeline.predict저장한 전처리 상태를 적용한 뒤 저장한 모델로 예측한다.
ColumnTransformer열 종류마다 다른 변환을 적용한 뒤 하나의 행렬로 합친다.

pipeline.fit은 전처리 상태와 모델 매개변수를 차례로 저장한다

단계를 옮기면 흐름에서 지나온 상자와 그 단계에서 저장되는 상태가 바뀐다.

pipeline.fit의 상태 저장 순서학습 자료, 전처리 상태, 변환된 자료, 모델 매개변수가 차례로 연결되는 흐름 학습 자료원래 특성 전처리 fit평균 · 표준편차범주 목록상태 저장 뒤 transform 변환된 자료같은 열 구조 모델 fit매개변수
초록 점선 상자는 전처리가 fit에서 저장하는 상태, 초록 실선 상자는 모델이 저장하는 상태다. 흐린 상자는 아직 지나지 않은 단계다.

pipeline.predict는 저장된 상태를 바꾸지 않고 적용한다

단계를 옮기면 새 자료가 지나는 상자와 출력이 바뀌고, 저장된 전처리 상태와 모델 매개변수는 그대로다.

pipeline.predict와 잠긴 상태새 자료가 저장된 전처리 상태와 저장된 모델 매개변수를 차례로 통과하는 흐름 새 자료원래 특성 저장된 전처리μ_train · σ_train학습 범주 목록transform만 적용 · 상태를 다시 계산하지 않음 저장된 모델예측값 출력
초록 점선의 전처리 상태는 predict 동안 다시 계산되지 않는다.

ColumnTransformer는 열 종류별 변환을 하나의 행렬로 합친다

경로를 바꾸면 연결되는 변환과 모델로 전달되는 출력이 바뀐다.

ColumnTransformer의 분기와 병합원자료의 수치형 열과 범주형 열이 별도 전처리를 거쳐 하나의 행렬로 합쳐지는 구조 원자료열 종류 구분 수치형 경로결측값 대체척도 조정 범주형 경로결측값 대체부호화 병합하나의특성 행렬
위는 수치형 경로, 아래는 범주형 경로다. 흐리지 않은 경로가 연결된 변환이고, 오른쪽 초록 상자가 병합한 특성 행렬이다.