더북(TheBook)

03 | 표본 추출

현대의 데이터는 기하급수적으로 증가하고 있다. 예를 들어, 구글에서 사용자들이 검색하는 질의를 분석하는 경우를 생각해보자. 특정 알고리즘이 검색을 개선하는지를 알아보기 위해 사용자들이 입력한 모든 질의를 분석하는 것은 아무리 분산 컴퓨팅 능력이 받쳐준다 할지라도 낭비에 가깝다. 그보다는 특정 기간에 있었던 질의만 분석한다거나, 특정 조건을 만족하는 질의만 분석하는 것이 효율적일 것이다. 이처럼 전체 데이터(모집단Population) 중 일부를 표본(샘플)Sample으로 추출하는 작업은 데이터 분석에서 필수다.

표본 추출(샘플링)Sampling은 훈련 데이터Training Data와 테스트 데이터Test Data의 분리에서도 중요하다. 전체 데이터 중 80%를 훈련 데이터, 20%를 테스트 데이터로 분리한 뒤 데이터에 대한 모델링은 훈련 데이터로만 수행하고, 모델의 성능은 테스트 데이터로 평가하면 모델의 성능을 가장 적절히 평가할 수 있다. 데이터를 분리하지 않고 전체 데이터를 모델링과 모델 평가에 사용하게 되면 데이터에 내재하는 실제적 특징Signal 외에 데이터에 우연히 포함된 노이즈Noise까지 반영한 모델을 만들게 될 위험이 있다. 이를 과적합[3]이라고 하며, 과적합된 모델은 예측력이 떨어지므로 반드시 경계해야 할 대상이다.

이 절에서는 전체 데이터로부터 표본을 추출하는 방법으로 단순 임의 추출, 층화 임의 추출, 계통 추출에 대해 알아본다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.