서두르세요! "데이스쿨 40% 할인" 12월 2일까지!
분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
스마트 공장 제품 품질 상태 분류 AI 온라인 해커톤
Data Leakage 관련 문의
테스트 데이터 판별 과정에서 테스트 데이터를 전처리 할때, 모델 학습 과정에서 학습 데이터에서 했던 전처리 과정을 테스트 데이터에도 동일하게 하면 Data Leakage에 해당 되는지 문의 드립니다.
예를들면 훈련 데이터의 A라는 컬럼의 어떠한 특성을 이용해서 A_x 라는 컬럼을 생성 후 모델 학습
테스트 데이터 판별시 테스트 데이터셋의 A 컬럼을 위와 동일한 전처리후 A_x 라는 컬럼 을 생성후 모델에 예측
이러한 경우 Data Leakage에 해당하는지 문의 드립니다.
train과 test의 전처리를 완전히 동일하게 가져가야 한다는 말씀이시죠 ? 그렇지 않은 경우 실격이 되는건가요 ?
추가로 검증을 요구할 수 있습니다.
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
안녕하세요 SignAI님,
전처리는 Train / Test 모두 동일하게 적용되어야 합니다. 동일하게 적용하지 않는다면 코드 검증 과정에서 추가로 검증을 요구할 수 있습니다.
또한 전처리 과정에서 Test 데이터셋의 통계정보가 활용된다면 Data Leakage에 해당합니다.
예를 들어, Train 데이터의 A 변수로부터 A_x의 파생 변수를 생성하고 Test 데이터도 동일한 코드로 A 변수로 A_x의 파생 변수를 생성하는 과정에서
Train 데이터에서는 A_x 파생 변수를 생성할 때 Train 데이터의 A 변수 값들의 평균 (등의 통계 정보)을 활용하고, Test 데이터에서도 A_x 파생 변수를 생성할 때 Test 데이터의 A 변수 값들의 평균 (등의 통계 정보)을 활용한다면 Data Leakage에 해당합니다.
이러한 경우, Train / Test 모두 A_x 파생 변수를 생성할 때 Train 데이터의 통계 정보만 활용해야 합니다.
감사합니다.