Data Leakage

In ML, Data Leakage - 2

머신러닝 전처리 자주하는 안 좋은 습관들 모음 참고 자료: https://scikit-learn.org/stable/common_pitfalls.html Sample 데이터 먼저 가상의 데이터를 하나 생성합니다. from sklearn.datasets import make_regression from sklearn.model_selection import train_test_split random_state = 42 X, y = make_regression(random_state = random_state, n_features = 1, noise = 1) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.4, random_state = random_state) Inconsistent preprocessing 모델을 학습시킬 때 이러한 데이터 변환을 사용하는 경우 테스트 데이터든 프로덕션 시스템의 데이터든 후속 데이터셋에도 사용해야 합니다.

In ML, Data Leakage - 1

Data Leakage 모형 평가를 하기 전에 전체 데이터셋을 가공 및 변환함. 이를 평가에 반영하면 새로운 데이터를 예측할 때 부정확한 결과를 도출 할 수 있음. 이를 방지 하기 위해서는 training 데이터만 데이터 전처리를 수행하는 것이 바람직함. Data Leakage를 피하기 위해서는 scikit-learn modeling pipeline을 설계해햐 함. 데이터 준비 가상의 데이터를 준비한다. 데이터는 모두 수치형 데이터로 준비했다. from sklearn.datasets import make_classification X, y = make_classification(n_samples = 1000, n_features = 20, n_informative = 15, n_redundant = 5, random_state = 7) # summarize the dataset print(X.