분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
Data Leakage 에 대해 질문을 드립니다.
과거 대회 코드를 제공해주셔서 감사합니다. 많은 도움이 되고 있습니다.
과거 코드를 보다가 생긴 질문입니다. 아래 코드의 경우 마지막 코드에서
n만큼 shift 하여 뒤의 값을 버리고, 버린 만큼을 앞에 0을 채워서 최종 값을 만들었는데,
만약 n만큼 shift 하여 뒤의 값을 버리고 버린 만큼을 뒤에 0으로 만들면 Data Leakage 로 생각하여
코딩한 결과로 보여집니다.
질문은 혹시 이렇게 논리적인 값의 순서 변경도 Data Leakage 로 보시는 기준인가 문의드립니다.
보통 Data Leakage 에 대한 해석을 모델 성능의 일반화를 해치는 요인으로 보아
Target Leakage, Data Contamination 정도를 염두한다면 아래 코드와 같이 값을 선택하거나, 순서 재배열이 아닌
값 생성시 입력되는 값이 만들어 질 수 없는 값이거나, 검증 또는 테스트 데이타를 사용했느냐의 시각으로 봐야하지 않나 싶습니다.
# anomaly score median filter 정의
def moving_median(x, n= 10):
a = []
for i in range(n):
a.append(np.concatenate([x[i:].copy(), np.zeros([i])]))
median_ANOMALY_SCORE = np.stack(a)
median_ANOMALY_SCORE.sort(0)
# data leakage를 방지하기 위해 n만큼 shift해서 반환
return np.concatenate([np.zeros([n]), median_ANOMALY_SCORE[n//2][:-n]])
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved