data robot 교육을 들으며, Target Leakage 개념을 알게 되었다. 요약하면
- 모델을 사용하여 예측하려는 시점에 실제로 값을 사용할 수 없는 컬럼 은 모델에 누출을 유발할 수 있다.
- 데이터 로봇은 Stacked Pred를 통해 앙상블 시 Target leakage를 방지할 수 있게 함
이 내용이었다. Tarkge Leakage 개념에 대해서 가장 잘 이해됐던 것이 바로 이 예시이다.
날짜 | 오늘 온도 | 내일의 습도 | 내일 온도 (예측값) | |
2023-03-03 | 13'C | 48% | 13'C | |
2023-03-04 | 12'C | 20% | 14'C | |
2023-03-05 | 16'C | 61% | 12'C |
겉보기엔 아무 이상 없어 보이는 데이터지만, 내일의 온도를 예측하기 위한 컬럼으로 오늘온도와 내일의 습도가 사용되는데,
예측하는 시점 (오늘) 에서 내일의 습도는 알 수 없다. 따라서 이 컬럼은 실제로는 예측에 사용할 수 없는 것이며 Target Leakage 가 발생한 것이다. Train을 할때는 내일의 습도를 알 수 있기 때문에 매우 높은 정확도가 나오겠지만 실제 예측에서는 사용할 수 없게 되는 것이다.
따라서 모델링 시 너무 높은 정확도가 나올 때나, feature를 선정할 때 반드시 고려해야한다.
아래는 한 분이 데이터 누수의 개념부터 검증까지 진행한 글인데, 자세하고 도움이 많이되어 같이 첨부하였습니다.
https://m.blog.naver.com/hongjg3229/221811766581
'통계 > 머신러닝 MachineLearning' 카테고리의 다른 글
[ML] 주성분 분석 PCA와 차원의 저주 (1) | 2023.11.20 |
---|---|
[ML] ChatGPT로 알아보는 LightGBM (0) | 2023.05.12 |
[ML] 지도학습, 비지도학습, 강화학습 (1) | 2022.11.28 |
[ML] 회귀 모델 성능 평가 지표 개념과 파이썬 코드 (MAE,MSE,RMSE,R2,MAPE,MPE) (0) | 2022.10.13 |
댓글