30명이면 된다고? 회의에서 당당하게, 설문조사를 알아보자.

이전편
랜덤포레스트가 뭐길래? 회의에서 당당하게, 수식없이 알아보자
라쏘? 로지스틱? 회의에서 당당하게, 수식없이 기초개념부터
인공신경망? 딥러닝? 회의에서 당당하게, 수식없이 알아보자

마케터나 기획자로서 많이 접하는 것이 설문조사 일 것이다. 빅데이터 시대에 무슨 설문조사냐 라고 하겠지만 빅데이터 시대에도 여전히 고객 대상 설문조사, 샘플링은 필요하다. 마케팅 KPI로 많이 활용되는 NPS(Net Promoter Score,순 추천 고객 지수)는 물론이고, 데이터가 존재하지 않을 때 방향성을 잡기 위한 용도로, A/B 테스트에도 설문조사의 모집단과 표본추출의 개념이 포함되어 있다.

«데이터과학 입문» 에서는 빅데이터 시대의 모집단과 표본에 대해서 아래와 같이 서술하고 있다.
1) 얼마나 많은 양의 데이터가 필요한지는 실제로 여러분의 목표가 무엇인가에 달려있다. 일반적인 분석 또는 추론 목표를 달성하기 위해 모든 데이터를 항상 저장할 필요는 없다.
2) 페이스북, 구글, 또는 트위터의 모든 데이터에 접근한다고 하더라도 우리가 그 데이터로부터 발견한 어떠한 추론도 해당 사용자 집단 또는 어떤 특정한 날의 사용자들 이위의 다른 사람들에 대한 결론으로 확대하지는 말아야 한다.

N=all 이 빅데이터의 특징이라고 하지만, 용도에 따라 샘플링이 효율/효과적일 수 있고 현재 가지고 있는 빅데이터도 전체를 대표하는 것이 아닌 샘플링된 데이터일 수 있다는 의미일 것이다.

이번 시간에는 고등학교 수학시간에 배웠던 것 같은
1) 중심극한정리
2) 정규분포
3) 표본오차와 구간추정
등 가장 기본적인 설문조사의 개념에 대해서 알아보는 시간을 가져보자.

여론조사 등 일상생활에서도 많이 접하는 기본개념이니 상식 측면에서 접근해보는 것도 좋을 것 같다.

먼저 설문조사에 대해서 알아보자
다들 익숙하듯이 설문조사는 우리가 알고자 하는 대상의 현황을 파악하기 위해서, 그 대상의 일부분에 설문을 해서 그 현황을 추측하는 과정이다.

예를 들어 우리 브랜드의 추천 의향을 1~5점으로 묻는 조사를 한다고 하자.

여기서 우리가 알고자 하는 대상인 고객 전체 집단을 모母집단population 이라고 한다. 이 모집단(고객 전체)이 생각하는 추천 의향의 평균점수가 우리가 알고자 하는 모母수parameter 라고 할 수 있다. 한자에 포함된 어미 母가 의미하는 바를 잘 생각해보면 되겠다.
모든 고객에 대해서 만족도를 조사한다면 가장 좋겠지만, 당연히 비용과 무응답 등 현실적인 이유로 인해 그 중 일부분에게만 조사를 할 수 밖에 없다. 이렇게 전체 모집단에서 조사를 위해 일부분만 추출한 집단을 표본(샘플sample) 이라고 하고, 표본을 추출하는 과정을 샘플링sampling 이라고 한다. 표본들에게 조사를 하여 추천점수의 평균값을 구하면 예측치estimate를 얻을 수 있겠다.

한 마디로, 설문조사 과정은 모집단에서 표본을 추출하여 예측치를 통해 모수를 추정하는 과정이라고 생각하면 되겠다.

보통 설문조사 업체와 미팅을 하다보면, 유의미한 표본 숫자가 30명 이상이라는 이야기를 많이 하곤 한다. 왜 30명이면 될까?

중심극한정리 라는 현상 때문이다.
중심극한정리란,

모집단의 분포에 관계없이,
'표본의 평균'의 본포는
표본의 크기가 충분히 크면
정규분포에 가까워진다

는 이론이다.

어렵다.

'모집단의 분포'라는 말 부터 살펴보자. 예를 들어 우리에게 1천 명의 고객이 있고, 이 중 300명은 1점, 100명은 2점, 100명은 3점, 300명은 4점, 200명은 5점의 추천 의향을 가진다고 해 보자. 고객들의 추천 의향 (모집단)의 분포는 아래와 같을 것이고, 실제로 우리가 알고자 하는 평균값(모수)은 3.0이다.

분포라는 말에 어려움을 느끼지 말자, 그냥 정말 모집단이 우리가 원하는 값을 기준으로 어떻게 '분포'되어 있는지를 나타내는 말이다.
왼쪽 그림은 히스토그램이라고 하는 가로축은 점수, 세로축은 사람수를 나타내는 그림이다.
오른쪽 그림은 이를 조금 변형한 것으로, 세로축을 비율로 바꾸어서(세로축이 0.X로 되어있음을 확인하자) 아래의 넓이가 확률을 나타낼 수 있도록 하는 것이다.
예를들어 1천명의 고객 중 한명을 선택해서 그 사람의 추천의향 점수가 4점인 확률은 30% 라고 할 수 있는 것이다. (4.5-3.5) * 0.3

'표본의 평균'이란 위에서 살펴보았듯이 표본을 추출해서 점수의 평균을 내는 '예측치'를 가리킨다.

그렇다면 '표본 평균의 분포'란 무엇일까?

우리는 표본을 추출해서 예측치를 통해서 모수 3.0 을 예측하고자 한다. 여기서 상상력을 조금 발휘하여, 어벤져스의 닥터 스트레인지처럼 아래와 같은 1400만 605가지의 미래의 경우를 볼 수 있다고 해보자. 우리가 10명의 표본을 추출해서 조사를 했더니

1) 평균점수가 3.2점이 나왔다.
2) 평균점수가 4.0점이 나왔다.
3) 평균점수가 2.5점이 나왔다.
….
1400만605) 평균점수가 4.1점이 나왔다.

이렇게 시도할 때마다 전부 다른 표본평균을 얻을 것이 당연하다. 이 1400만 개의 표본평균(예측치)을 가로축 표본평균, 세로축을 개수/비율 로 해서 그래프에 그려보면 아래와 같은 모양을 가질 것이다.

위의 모양이 '표본 평균'의 분포 인 것이다.

헷갈릴 수 있으니 다시 한번 설명해 보겠다.

모집단 → 표본 → 표본의 평균

을 구하는 것이 설문조사의 흐름이다. 여기서 표본의 분포는 우리가 추출을 제대로 했다면 모집단의 분포를 비슷하게 따라갈 것이라고 기대할 수 있다. 반면에 표본을 뽑아서 표본의 평균을 구하는 것은 주사위를 던지는 것과 같이 다른 숫자가 나올 수도 있었는데 이번 조사에서만 어떤 숫자가 나온 것이다. 따라서 표본평균이 가질 수 있는 값과 그 비율을 나타낸 것이 표본평균의 분포라고 할 수 있다. 이 표본평균의 정확한 분포를 구하려면 수많은 표본을 뽑아서 평균을 구한 후 그 값의 빈도를 세서 그림을 그려야 할 것이다.

표본평균의 분포가 정규분포에 가까워진다는 말은, 우리가 조사를 하는 표본 고객의 수를 늘리면 늘릴수록 저 분포의 모양이 정규분포에 가까워진다는 말이다.

그렇다면 근원적인 질문, 표본평균의 분포를 알아야 할 이유는 무엇일까?

위의 닥터 스트레인지 경우를 생각해보면 된다. 우리가 한번 설문조사를 실시해서 얻은 결과는 저 수많은 가능한 결과들 중에 하나일 뿐이다. 그렇다면 지금 계산한 이 평균값이 저 수많은 결과들 중 어디에 위치하고 있는지 (이 결과가 나올 확률이 얼마인지) 를 알아야 실제값이 얼마인지를 찾을 수가 있는 것이다.

그렇다면 정규분포는 무엇이고, 정규분포에 가까워지는 것이 왜 좋은지를 살펴보자.

정규분포

정규분포란 우리가 많이 들어본 유명한 수학자 가우스Gauss가 정립한 분포로, 인간과 자연 현상의 많은 부분이 이 분포를 따른다고 해서 정규Normal 분포Distribution 이라고 한다. 가우스의 이름을 따서 가우스Gaussian 분포라고도 한다.

여기저기서 많이 본 종bell 모양의 분포 바로 그것이다. 쉽게 예를 들어 키나 몸무게 등의 분포가 정규분포를 따른다고 생각하면 된다.

Fig. 1: 가로축은 평균을 중심으로 하는 값, 세로축은 확률이라고 생각하면 된다. 가로축 범위 내에 값이 나올 확률은 그 값 사이 그래프 아래의 넓이를 구하면 된다.

정규분포의 특징은
1) 평균을 중심으로 대칭 구조를 가지고 있다는 것
2) 평균과 분산으로 분포의 모양을 그릴 수(알 수) 있다는 것
3) 2)번으로 인해 평균과 분산만 알면 확률을 구할 수 있다는 것
4) 표준정규분포라는 평균0, 분산1 인 정규분포로 (상수를 곱하고 더해서) 치환할 수 있다는 것
5) 정규분포끼리 더해도 정규분포가 된다는 것
등 많은 성질들이 연구되어 있다.

하지만 가장 중요한 성질 중 하나는 다른 분포들로부터 나온 표본평균이 중심극한정리에 의해 정규분포로 수렴한다는 사실일 것이다.


그렇다면 중심극한정리가 말하는, 표본평균의 분포가 정규분포에 가까워진다는 말의 의미는 무엇일까?

실제로는 모집단의 분포에 따라서 표본평균의 분포의 모양이 결정될 것이다.
1) 하지만 기본적으로 우리는 모집단의 분포에 대해서 잘 모른다.
2) 모집단에서 닥터스트레인지처럼 수많은 조사 시도를 통해서 수많은 표본평균들을 구해보아야 분포를 알 수 있다.
는 문제가 있다.

하지만 정규분포에 가까워진다는 보장이 있으면, 표본평균의 '평균'과 '분산'만 구하면 (이는 설문조사를 통해서 구할 수 있다), 닥터스트레인지처럼 수많은 시도를 하지 않고도 현재 한번만 구해본 표본평균이 정규분포 상 어떤 위치에 있는지를 가늠할 수 있게 되고, 예측치의 정확도를 구할 수 있게 되는 것이다. 또 다른 분포에서 추출된 평균이나 비율의 비교 등도 같은 분포를 가정할 수 있게 되어 쉽게 분석이 가능하다.

이 중심극한정리가 있기 때문에 우리가 설문조사를 실시할 수 있게 되는 것이고, 선거의 여론조사도 가능하게 되는 것이고, 많은 과학연구에서 실험 결과를 통계로 해석할 수 있게 된다. 연역으로만 이루어지던 사회/과학 연구를 귀납적 실험관찰로 가능하게 만들어준 '자연과 수학논리와의 만남'이지 않을까?

30이면 된다?

그럼 표본의 크기가 얼마나 되면 정규분포를 가정해도 좋을까? 보통 30개 정도 이상의 표본을 추출해서 평균을 구하면, 정규분포에 가까워진다는 경험적인 결과들이 있어서 보통 30개를 강조한다. 물론 책마다 50개 100개를 이야기하기도 하는 가이드라인일 뿐이다.

Fig. 2: 표본의 수를 늘려가면서 구해본 표본평균의 분포. 30이상이면 정규분포에 어느정도 가까워진다.

하지만 여기서 주의해야 할 점들이 있다.

위의 예처럼 단순히 고객들의 '추천의향 점수의 평균'만을 원하는 것이라면 30명 이상이면 충분할 수도 있다. 하지만 아래의 경우들을 생각해보자

1) 남녀간의 평균을 구해서 비교해 보고 싶다.
남녀 비율이 동일하다고 하면 남자 15명, 여자 15명만이 추출되기 때문에, 전체 평균에서는 정규분포를 가정할 수 있지만 남녀 각각의 그룹에서는 정규분포를 가정하기 힘들게 된다.
2) 1~5점을 준 사람들의 비율을 보고싶다.
모두 동일한 비율로 점수를 응답했다고 해도 점수별 인원은 6명 밖에 안된다. 극단적으로 1점,2점은 응답표본이 전혀 없을 수도 있게 된다.

즉, 하위 범주로 쪼개서 해석을 하고 싶어하는 경우 전체에서 30개의 표본만 추출해서는 예측이 잘못될 가능성이 높아진다.

또한 중요한 점은, 모든 샘플들은 무작위random로 추출되어야 한다는 것이다. 무작위라는 것은 모집단에서 각 고객들이 추출될 확률이 같아야 하고, 매번 추출하는 행위자체가 서로 영향을 주지 않는 독립이어야 한다는 것이다. 당연히 표본은 모집단을 대표해야 하므로 무작위로 추출되어야 가장 대표성을 지니게 된다. 중심극한정리가 주는 메시지는 '30명이면 무조건 된다' 라는 뜻이 아니라, '많은 표본보다 제대로 뽑힌 30명이 낫다'라는 것임을 잊지 말아야 한다. 1)

실제로는 무한정 많은 표본을 얻을 수도 없고, 완전한 무작위 추출을 하는 것도 힘들기 때문에 여러가지 방법을 사용하고, 아래서 살펴볼 표본오차를 정해놓고 표본 수를 결정하기도 한다.

Fig. 1: 마케팅 조사 실무 노트 1 p118

그렇다면 정규분포를 통해서 어떻게 예측치를 추정할 수 있는지 살펴보도록 하자. (예시는 n=100을 예시로 들었다)

중심극한정리에 의해서 표본의 평균은, 모수(평균)을 중심으로 하는 정규분포를 (거의) 따른다고 했다. 하지만 우리가 관찰할 수 있는 것은 그 수많은 경우 중 단 하나의 표본 평균의 값.

이 표본 평균의 값으로 추정치를 정하는 것도 하나의 방법이겠지만(점추정이라고 한다), 우리가 조사를 할 때마다 표본평균이 달라질 것이 당연하다. 특히 그룹 간 차이를 확인하고자 할 때는 심각한 문제가 될 것이다. 이러한 표본평균들의 차이를 표본오차라고 하는데, 이런 표본오차를 반영하여 우리가 모르는 평균(모수)를 추정하는 것이 합당할 것이다.

그래서 신뢰구간이라는 범위를 통해서 구간 추정을 하게 된다. 우리가 95%의 신뢰 구간이라는 것을 구하고자 할 때, 이 구간이 구하고자 하는 평균(모수)을 포함할 기대가 95%가 되는 범위( 하한 < 평균 < 상한 )로 정의하면 좋을 것 같다.


이를 구하기 위해서 먼저 우리가 한번 조사를 해서 얻은 표본평균이 3.1와 3.3 사이에 있을 확률은 무엇일지 알아보도록 하자. 분포를 알고 있으면 쉽게 찾을 수 있다. 정규분포 가정 하에서 3.1와 3.3 사이의 그래프 아래 넓이를 구하면 된다. 실제와는 다르게 우리는 모집단이 평균 3.0을 중심으로 분포한다고 알고 있으니 그림에서 색칠한 넓이를 구하면 된다.


컴퓨터를 이용해서 계산해 보면 23% 정도가 나온다. 조사 4번 중 한번은 3.1과 3.3 사이에서 표본평균이 나올 것이다.


반대로 생각해서, 확률을 정해놓고 범위를 찾아보자. 우리가 조사를 시행했을 때 표본평균의 값이 95%의 확률로 이 안에는 들어가 있을 것이라고 할 수 있는(100번 조사를 시행했을 때 95번 정도는 이 범위 사이의 값이 나올 수 있는) 범위 는 어떻게 될까?

바로 위에서는 우리가 실제 모수를 알고 있기 때문에 바로 계산이 되지만, 실제 상황에서 모수는 미지의 것이다. 미지의 것이기 때문에 표본을 이용해서 추정하려고 하는 것이다.

이 때 중심극한정리와 정규분포의 힘이 여기서 나온다. 표본평균이 정규분포를 따른다는 것을 가정하게 되면, 성질을 잘 알고 있는 정규분포에서 95%의 확률이 생기는 값의 범위를 바로 찾을 수가 있다.

정규분포는 평균을 중심으로 대칭이기 때문에, 어떤 알려진 값 X가 있고(분산의 약 1.96배), 평균 - X 와 평균 + X 사이에 표본평균 나올 확률이 95%가 된다.

Fig. 1: 평균을 중심으로 X만큼 떨어진 값이 나올 확률이 95%이다

이 예시에서는 X가 0.3 (1.96*분산1.55), 즉 2.7과 3.3 사이에서 표본평균이 나올 확률이 95%이다. 우리가 한번 조사했을때 표본평균이 2.7~3.3 사이로 나올 확률이 95%라는 것이다.

평균-X < 표본평균 < 평균+X

일 확률이 95% 가 되고,
관점을 바꿔서 정리하면

표본평균-X < 평균 < 표본평균+X

이 된다.

실제로 우리가 한번 조사해서 얻은 표본평균이 3.2이면, 표본평균에 3.2를 대입해서 (3.2-X ~ 3.2+X) 의 구간을 얻을 수가 있다. 우리가 한번 구한 표본평균에서 양쪽으로 X만큼 떨어져 있는 범위가 평균을 포함할 기대가 95%가 되는 것이다. 이것을 위에서 정한 신뢰구간으로 정하면 될 것 같고, 이번 조사에서 구한 표본평균과의 차이 X 를 표본오차라고 정하면 될 것이다.

주의해야 할 점은, 평균(모수)이 저 범위 사이 값을 가질 '확률'이 95%인 것이 아니라 우리가 이번 조사결과로 추정한 신뢰구간이 모수를 포함할 '기대'가 95%라는 의미라는 것이다. 두 가지가 비슷한 말 같아 보이지만 위에서 표본평균의 확률에서 부터 신뢰구간을 만들었다는 것을 기억하자. 모수는 미지이긴 하지만 정해진 값이기 때문에 확률로 설명할 수 없고, 표본을 추출해서 표본평균을 구할 때마다 신뢰구간은 변하는 범위이다. 모수가 정해진 값이기 때문에 이 범위 안에 있거나 없거나 이지 확률을 따질 수는 없는 것이다. 데이터 때문에 바뀌는 것은 표본평균과 신뢰구간이다.

그래서 95%의 확률이라고 하지 않고 95%의 '신뢰Confidence' 구간이라고 한다.


다시한번 설명하면 100개의 설문조사를 했을 때 생기는 서로 다른 신뢰구간들 중 95개의 설문조사에서 이 신뢰구간이 실제 평균(모수)을 포함한다는 의미라고 생각할 수 있고, 우리가 1년에 한번씩 다른 100번 조사를 했을 때, 5번 정도는 신뢰구간 안에 모수가 속하지 않는 틀린 예측을 할 수도 있다는 의미이다.


실제 시뮬레이션을 해보면 위의 그림에서(가로축:시도, 세로축:신뢰구간) 100개 중 파란색(4개) 만 실제값 3.0을 포함하지 않는 것을 확인할 수 있다. (96% 맞으니까, 95%이상의 신뢰도에 맞는 말이다. 시뮬레이션을 100회가 아닌 더 많이 하면 95%에 수렴할 것이다)

여론조사에서 많이 본 95% 신뢰도에서 오차 +- 5%p 라는 말이나, 95%신뢰도에서 33~43% 라고 하는 말들은 이런식으로 구한 예측값(표본평균)이 38%이고, 신뢰구간의 범위인 X값이 5%p 라는 의미이다. 보통 두 그룹의 비율을 비교할 때 오차범위 내(內)라고 하는 것은 각 그룹의 신뢰구간이 겹친다는 말이고, 미지의 평균이 이 겹치는 구간안에 있을 수도 있기 때문에 표본평균이 다르다고 해도 실제 모수는 다르다고 할 수 없다는 의미가 된다.

신뢰구간에서 X에 해당되는 부분은 표본의 수와 신뢰도에 의해서 변한다. (신뢰도 계수 * 표본분산/sqrt(표본수)) 당연히 신뢰도가 높아지면 구간의 길이가 길어질 것이고, 반대로 신뢰도가 낮아지면 구간의 길이가 짧아질 것이다. 표본의 수도 늘어나면 X가 줄어들어 정밀도가 좀 더 좋아지고, 표본의 수가 적으면 X가 늘어나서 구간의 길이가 길어지고 정밀도가 낮아지는 결과를 낸다. 따라서 표본의 수를 결정할 때 신뢰도를 미리 정해놓고, 허용되는 X 값을 역산 해서 표본의 수를 정하기도 한다.

지금까지 정말 간단한 설문조사에 대해서 알아보았다. 설문조사 뿐 아니라 많은 실험 등이 중심극한정리 덕분에 정규분포를 가정하고 그 바탕에서 복잡한 가설검정이나 추정치들을 구할 수 있게 된다. 학창시절에 배웠던 경험을 떠올리면서, 현대의 많은 과학기술과 지금의 인공지능 기술의 밑바탕이 된 기본적인 이론에 대해서 잠시 생각해 보는 시간이 되었으면 좋겠다.

이번에는 여론조사 예에서 그룹간 비교에 대해서 신뢰구간 간의 비교로 아주 간단히 살펴보았는데, 기회가 되면 A/B 테스트와 관련지어 생각해 보는 시간을 갖는 것도 좋을 것 같다.

  • 빅데이터 시대라도 샘플링은 중요하다.
  • 샘플링의 무작위성이 중요하다
  • 중심극한정리 덕분에 정규분포를 기반으로 추정을 할 수 있다.
    • 표본을 통해 얻은 표본평균은 미지의 실제평균(모수)를 중심으로 하는 정규분포를 따른다
    • 95% 신뢰구간을 통해서 우리가 추정한 구간이 95%정도는 평균을 포함할 것으로 생각할 수 있다.
  • 표본의 수는 그룹을 나누는 것까지 생각해서 가장 알고 싶은 문항을 중심으로 결정하자

Convergence of RV and Testing
All of Statistics, Larry Wasserman, Springer, 2004
Doing Data Science (데이터과학 입문), 레이철 슈트, 캐시 오닐, 윤영민 外역, 한빛미디어, 2014
통계학도감, 쿠리하라 신이치 김선숙 역, 성안당, 2017
마케팅 조사 실무 노트 1, 하지철, 이담북스, 2010
수식으로 구하는 신뢰구간
What is the rationale behind the magic number 30 in statistics
고등학교 수학의 정석!

이번 편을 위해 작성한 코드들(python) : 펼치기

More

2020/06/18 20:34
2020/06/07 23:03
2020/06/04 00:30
2020/05/28 19:29
2020/05/12 18:03
2020/05/07 18:27
2020/05/01 01:54
2020/04/29 19:52
2020/04/20 20:12
2020/04/17 00:23
2020/04/15 16:21
2020/04/11 10:41
2020/04/08 15:49
2020/04/01 18:43
2020/04/01 09:55
2020/03/21 22:43
2020/03/20 20:53
2020/03/15 20:11
2020/03/07 16:35
2020/03/07 13:46
2020/03/02 01:09
2020/02/29 13:52
2020/02/29 13:52
2020/02/29 13:52
2020/02/29 13:52
2020/02/29 13:52
2020/02/29 13:49
2020/02/16 18:11
2020/02/06 21:58
1)
Neyman에 따르면 샘플링의 정확성을 극적으로 향상시키는 방법은 샘플의 크기를 늘리는 것이 아니라 무작위로 샘플을 추출하는 것이다.wikipedia
Enter your comment:
M B J D V