Julie의 Tech 블로그

Data Sampling에 관하여 - (1) Bias & Random Selection 본문

Tech/ML, DL

Data Sampling에 관하여 - (1) Bias & Random Selection

Julie's tech 2022. 3. 28. 23:48
728x90

우리는 데이터 샘플링을 필요로할 때가 많다.

모델을 처음 빌드할 때에 불균형 데이터일 경우 긍정 정답지이건 부정 정답지이건 어느 쪽이든 샘플링을 하게 된다.

또 모델 두 개를 빌드해두고 어느 모델이 더 우수한지 A/B테스트를 할 때에도 실험군, 대조군에 대해 샘플링하게 된다.

데이터 샘플링은 쉽게 말해 모집단(Population)에서 샘플군(Sample)을 추출해내는 방식이다. 샘플 데이터는 모집단의 부분집합인 것이다.

모집단은 우리가 알 수 없는 특정 분포를 따른다. 우리는 이 모집단에 대한 정보를 알기 위해 샘플 데이터를 통해 모집단을 추정한다.

전통 통계학은 모집단의 분포에 대해 추론하기 위해 몇 가지 가정을 세워 결론을 도출하는 방식의 접근을 취한다.

하지만 최근에는 모집단의 분포에 대해 추론하기보단 샘플링하는 방식에 대해 좀 더 연구 초점이 맞춰져있다.

모집단 그 자체가 어떠한 특성을 갖고 있는지는 중요하기보단 오히려 그 과정에서 모집단과 동일한 분포를 따르는 샘플군을 추출하는데에 집중한다. 즉 모집단을 대표할 수 있는 샘플군을 추출하는 기법을 연구해왔다.

몇몇 샘플본은 추출 과정을 이론적인 수식으로 설명할 수 있다.

가장 대표적인 모델은 동전 던지기이다. 1/2 확률로 동전의 앞면 / 뒷면이 나올 것임을 아는 이항(Binomial) 분포이다.

반대로 모델링할 수 없는 샘플링 방식은 랜덤 샘플링이라 불리며, 이 역시 크게 두 가지로 나뉜다 :

비복원추출 (Simple random sampling without replacement), 복원추출 (Simple random sampling with replacement)

샘플링을 할 때에는 가장 먼저 고민해야할 것이 'bias' 여부이다.

모집단에서 샘플링을 할 때 모집단의 분포를 잘 대변하는지, 데이터가 정확한지 등 'representativeness' 를 따진다.

편중, 즉 bias는 error와는 다르다. 에러는 랜덤하게 발생하고 또 bias로 부터 발생한 에러도 포함하고 있다.

우리가 'bias'로 진단하는 결과는 그 결과를 뱉는 과정에서 무언가 중요한 정보가 누락되었거나 과정 자체가 잘못되었음을 암시한다.

Bias 중에서도 관측치가 선택된(select) 과정에서 발생한 bias를 'selection bias'라고 한다. 예를 들어 어떠한 데이터에서 여러 가지 모델링을 하며 유의미한 결과를 발견했을 때, 그 결과가 과연 대중적인 데이터인지 아웃라이어인지 따져볼 수 있다.

이러한 편중을 방지하기 위해 모델에서는 타겟 셔플링 혹은 hold-out set을 따로 두기도 한다.

Selection bias에 따른 결과 중 하나로 'Regression to mean'이라는 현상을 예로 들 수 있다. 직역하면 평균으로의 회귀라는 뜻으로, 일례로 스포츠에서도 가장 최고의 성적을 낸 선수가 오히려 이듬해 성적이 뒤떨어지는 것과 유사하다. 가장 최고의 성적은 소위 '운' 과 그 자체의 '실력'이 결합되어 나타났기 때문이다. 이듬해에 '운' 요소가 제외되면 순전한 '실력'만으론 최고의 결과를 내기 어렵게 된다. 따라서 성과가 평균으로 점차 회귀하는 모습을 보이게 된다.

이번 글은 간단하게 샘플링과 편중에 대해 알아보았다.

다음 글에서는 샘플링시 편중이 발생하지 않도록 어떠한 기법들을 시도하는지 알아볼 것이다.

반응형