A/B 테스트

A/B 테스트의 대해서 포스팅합니다.

무척 많이 쓰는 용어지만 잘 모르는 분들이 많습니다.

특히 A/B 테스트는 어설프게 알면 크게 당하기 쉽습니다. 만만해 보여도 개념을 잘못 잡으면 큰 착각을 하게됩니다.

개념

A/B 테스트는 A와 B가 유의미한 차이가 있는지 검정한다는 뜻입니다.

통계학에서 다루는 개념이며 실험입니다.

A와 B의 의미는 대조군을 A, 실험군을 B라고 의미없이 붙이는 것에서 나온 것입니다.

대조군은 원래 상태에 있는 것을 말하고

실험군은 원래 상타에서 뭔가를 바꾼 것을 말합니다.

알기 쉬운 예

콩발의 첨가물 테스트라는 아날로그식 예를 들어보겠습니다.

이 예제 테스트의 목적은

콩밭에 새로운 첨가물을 주고 이 첨가물이 전에 쓰던것 보다 더 콩의 수확량을 늘리는지 확인하려고 합니다.

다음과 같이합니다.

  1. 콩밭 1000제곱비터가 2개 있고 하나를 A 하나를 B라고 이름 붙입니다.
  2. A와 B에 동일한 종자의 콩을 심습니다. 다른 것 심으면 실험은 망합니다.
  3. A에는 원래 쓰던 첨가물을 쓰고 B에는 새로 개발한 첨가물을 씁니다.
  4. 동일한 조건으로 콩을 키웁니다. 물도 똑같이 주고, 햇빛도 똑같이 쬐게하고, 땅도 동일하게 다져줍니다.
  5. 콩을 수확합니다.
  6. A와 B에서 각각의 콩들을 무작위로 동일한 양을 꺼내서 무개를 잽니다. 무작위로 꺼내는 것이 싫으면 가능하다면 다 꺼내서 재도 되지만 그렇게 하는 경우는 없습니다.
  7. A와 B의 콩무게가 유의미한 차이가 있는지 확인합니다. 이걸 가설검정이라고 합니다.
  8. B의 콩무게가 더 무겁다면 B에 사용한 비료를 다음에 씁니다.

통제된 상태라는 것의 의미

여기서 중요한 것은

A와 B 모두 통제된 상태여야 합니다. 이 뜻은 A와 B가 콩을 기르는 동안 한쪽은 티가 많이 오고 한쪽은 그늘이 져서 햋볕이 잘 들어오지 않거나 하는 불평등한 상황이 되면 안된다는 것이고 첨가물을 다르게 준 것 외에는 조건이 동등해야 하는 것을 말합니다.

A와 B의 개체수가 동일해야 함

A와 B의 콩줄기의 숫자가 동일해야 합니다. 하지만 그러기는 매우 어려우니 대충 콩밭의 사이즈라도 동일해야 합니다. 한쪽이 크거나 하면 그것으로 인해서 콩의 수확양이나 성장 조건이 달라질 수 있기 때문입니다.

콩밭의 사이즈는 통상 한쪽이 다른 한쪽의 2%가 넘지 않게 합니다.

실험이 끝나면 가설검정을 해야 함

사실 B 콩밭에 첨가물을 다른 것을 준 이유는 콩 수확량이 증가할 것이라는 기대 때문입니다.

통계학에서는 귀무가설과 대립가설이라는 것을 정의하고 그것으 실험의 결과를 판단합니다.

여기에서 귀무가설은 A의 콩무메가 B의 콩무게와 차이가 없다.

대립가설은 B의 콩무게가 A의 콩무게와 차이가 있다.

이렇게 합니다.

여기서 실험결과가 귀무가설에 맞는지 대립가설에 맞는지를 확인하는 것을 가설검정이라고 합니다.

가설검정 공식

가설검정을 확인할 때는 공식이 있습니다.

무작정 A와 B에서 무작위로 콩을 골라서 무개를 재서 한쪽이 더 많은지 똑같은지 비교 하는 것은 안됩니다.

그렇게 하면 대부분의 경우 미세하게나마 한쪽의 콩무게가 더 무겁습니다.

쓸모없는 실험입니다.

상식적으로 생각해도 그게 정말 오류가 많을 수 있다는 것을 알 수 있습니다.

그래서 통계적으로 그 차이가 유의미한지 아닌지를 보는 연구된 방법을 쓰는데 그 방법은 매우 다양하고 많습니다.

그래서 각 상황에 맞게 어떤 통계적 검정 방법을 사용해야 하는지와 지켜야 할 것을 알아야 하는데 그걸 공부하는 학문이 통계학입니다.

위의의 콩무게와 같은 것은 스튜던트의 T테스트라는 테스트 공식으로 확인합니다.

스튜던트의 T테스트는 한쪽 집단의 평균과 다른 한쪽의 평균이 유의미한 차이가 있는지 의미없는 차이만 있는지 확인하는 유명한 방법입니다.

스튜던트의 T테스트는 엄청나게 유명한 테스트 방법입니다.

공식은 검색해서 찾아 보면 잘 나오므로 복잡하게 여기에서 설명하지 않겠습니다.

엑셀, Python, R을 비롯한 많은 통계 소프트웨어에 이런 가설검정법은 대부분 내장되어 있습니다.

Author: euriion

답글 남기기