데이터 누수

1 개요편집

leakage. 학습에 도리어 방해가 되는 데이터가 추가된 경우 누수가 일어났다 이야기한다.

일반적으로 다음의 2가지 상태를 말한다.

1.1 타겟누수편집

예측 시점에서 사용할 수 없는 데이터가 데이터 셋에 포함된 경우. 예를 들어 강수확률을 예측할 건데, 그 날의 습도가 포함된 경우. 그 날의 습도는 비가 내린 후의 영향을 받기에 사건 뒤에 오는, 너무나 정답과 강렬하게 엮이는 변수이다. 검증데이터에 이러한 것들이 반영되어 있다면 점수는 높게 나오겠지만, 실제 데이터를 이용한 예측 정도는 상당히 낮아지고 만다.

상관도 분석을 통해 너무 높은 상관도를 가진 변수를 제거하는 것으로 이를 방지할 수 있지 않을까? 혹은 예측과 관련된 변수(예를들면 성공률)들이 데이터에 포함된 경우에 오염이 일어난다. 집값을 예상할 때 그 지역의 평균 집값이 들어간다든가... 그런 오염.

1.2 훈련-검증 오염편집

결측값 등을 채울 때 전체 데이터를 이용해 결측값을 채운 후 이들을 훈련데이터와 검증데이터로 나누면 검증데이터의 영향이 훈련데이터에 남아 오염된다. 이렇게 되면 검증데이터의 검증점수는 높게 나오겠지만, 실제 데이터에 대한 점수는 낮을 위험이 있다.

이는 훈련데이터와 검증데이터를 나누는 것을 첫번째 과정으로 두는 방식으로 예방할 수 있다.