플로라도의 data workout

Concept Drift vs Covariate Shift 본문

기초 노트/MachineLearning

Concept Drift vs Covariate Shift

플로라도 2024. 9. 1. 22:23

1. Concept Drift

정의 : 시간이 지남에 따라 타겟 변수인 출력값이 변하고, 그에 대한 분포가 변하는 현상, 즉 모델이 학습한 관계가 더 이상 미래 데이터에 적용되지 않는 경우

 

예시 : 예측하려는 고객의 행동 패턴이나, 주식 시장의 트렌드가 시간이 지나면서 달라지는 경우. 예를 들어, 한 시점에서는 고객이 A라는 상품을 선호했지만 시간이 지나면서 B라는 상품을 더 선호하게 되어 모델이 학습한 관계가 더 이상 유효하지 않게 되는 경우가 concept drift에 해당

 

문제 : 기존의 데이터로 학습한 모델은 잘못된 예측이나 의사결정을 할 수 있다.

 

 

2. Covariate Shift

정의 : 입력 데이터의 분포가 변하지만, 타겟 변수인 출력값의 분포는 변하지 않는 현상.

 

예시 : 모델이 학습한 데이터는 특정 시간대의 고객 데이터를 기반으로 한 것이었지만, 미래에는 다른 시간대의 데이터가 입력되게 되어 특성 분포가 바뀌는 경우

 

문제 : 모델이 학습한 입력 데이터의 분포와, 실제 테스트 데이터의 입력 분포가 다르면 예측 성능이 저하될 수 있음

 

 

학습 데이터의 분포가 위와 같고

 

테스트 데이터의 분포가 위와 같으면, 모델은 당연히도 잘 작동하지 않는다. 학습 데이터는 실제 사진으로 구성되어 있지만, 테스트셋은 만화 그림으로 되어 있다. 새로운 도메인에 대해 어떻게 적용할지에 대한 고려가 되어있지 않은 경우다.

수학적으로 $p(x)$는 변화하는데, $p(y|x)$ 는 그대로 있는 경우를 의미한다.

 

 

이러한 문제를 해결하기 위해서 활발하게 연구되고 있는 분야가 $Domain Adatation$ 이다.

 

 


Reference) 
Dive into Deep Learning

https://ko.d2l.ai/chapter_deep-learning-basics/environment.html  

EECV 2020 Tutorial

https://europe.naverlabs.com/eccv-2020-domain-adaptation-tutorial/