본문 바로가기
Growth/통계

실무로 통하는 인과추론 with 파이썬

by Diligejy 2024. 3. 9.

 

 

 

 

p.38

아쉽게도 머신러닝은 만병통치약이 아닙니다. 까다롭게 정해진 범주 내에서 엄청난 성능을 발휘할 수 있지만, 데이터가 모델에 적합된 것에서 조금만 달라져도 제대로 작동하지 않을 수 있습니다. [Prediction Machines]에서 소개하는 또 다른 예를 보시죠.

 

대부분의 산업에서 낮은 가격은 낮은 매출과 연관이 있습니다. 예를 들어, 호텔 업계에서 비성수기에는 숙박 요금이 낮고, 수요가 가장 많고 호텔이 만실인 성수기에는 요금이 높습니다. 해당 데이터를 바탕으로 모델링하면, 머신러닝 모델은 가격을 올리면 더 많은 객실이 판매될 것이라는 순진한 예측을 할 수 있습니다.

 

이렇게 머신러닝은 변수 간의 연관관계를 이용해서 변수들을 다른 변수에서 예측합니다. 예측에 사용하는 변수를 변경하지 않는 한 머신러닝은 매우 잘 작동합니다. 하지만 개입이 동반되는 대부분의 의사결정에서, 예측 모델로 목적을 달성하기란 매우 어렵습니다.

 

대부분의 데이터 과학자가 머신러닝은 잘 알지만 인과추론에는 익숙하지 않기 떄문에, 당면한 문제에 부합하지 않은 수많은 머신러닝 모델이 활용되곤 합니다. 기업의 주요 목표 중 하나는 제품의 매출이나 사용량의 증대입니다. 하지만 단순히 매출만 예측하는 머신러닝 모델은 이러한 목적에 문제가 되지는 않더라도 쓸모없는 경우가 더 많습니다. 심지어 높은 매출은 높은 요금과 연관이 있다는 앞 예시처럼 의미 없는 결론을 내릴 수도 있습니다. 하지만 염두에 둔 목표가 예측과 전혀 관련 없는데도 예측 머신러닝 모델을 구현하는 회사들이 많다는 걸 안다면 놀랄 것입니다.

 

p.42

중요한 부분은, 동일한 회사(실험 대상)에서 할인이 진행되는 상황과 그렇지 않은 상황을 동시에 관측할 수 있어야만 가격할인이 판매량에 미치는 실제 효과를 확신할 수 있다는 점입니다. 이러한 두 가지 반사실(counterfactual) 상황을 비교함으로써 가격할인 효과를 파악할 수 있지만, 앞서 설명했듯이 인과추론의 근본적인 문제는 동일 대상의 두 상황을 동시에 관측할 수 없다는 점입니다. 대신 다른 방법을 찾아야 합니다.  

 

p.47

 

p.49

SUTVA는 'stable unit of treatment value assumption'의 약어입니다. 이 가정은 한 실험 대상의 처치가 다른 대상의 결과에 영향을 미치면 안 됨을 의미합니다. 이 책에서 SUTVA를 상호 간섭 없음(파급 효과 없음)의 의미로 활용하고 있지만, 엄밀하게 본다면 앞의 두 가지 가정(일치성과 상호 간섭 없음)을 모두 합한 것이 SUTVA입니다. - 옮긴이

 

p.49

인과추론의 근본적인 문제를 다시 한번 강조하겠습니다. 요약하면, 잠재적 결과 중 하나만 관측할 수 있으므로 개별 처치효과를 알 수 없습니다.

 

p.53

인과추론을 바라보는 한 가지 관점은 결측값이 있는 데이터(missing data) 문제로 보는 것입니다. 관심 있는 인과효과를 추론하려면 누락된 잠재적 결과를 대체(impute)해야 합니다. 

 

p.56

회사 규모, 위치, 경영 방식, 할인 시기 등 기타 여러 가지 요소도 다릅니다. 그래서 가격할인으로 판매량이 얼마나 증가하는지 결정하려면, 할인한 회사와 하지 않는 회사가 평균적으로 비슷해야 합니다. 즉, 실험군과 대조군은 교환 가능해야 합니다.

 

p.60-61

 

 

p.61

 

 

p.63

 

 

p.64

인과적 식별은 편향을 제거하고 실험군과 대조군을 비교할 수 있게 만드는 현명한 방법을 찾아내서 눈에 보이는 모든 차이를 처치에 따른 효과로 돌리도록 하는 과정입니다. 여기서 식별은 데이터 생성 과정을 알거나 기꺼이 가정할 수 있는 경우에만 가능하다는 점이 중요합니다. 즉, 일반적으로 처치가 어떻게 배정되었는지를 알 수 있을 때 식별이 가능합니다. 앞서 데이터만으로는 인과적 질문에 답할 수 없다고 말한 이유가 바로 여기에 있습니다. 물론 데이터 자체도 인과효과 추정에 매우 중요하지만, 데이터(특히 처치)가 어떻게 이루어졌는지에 관한 설명도 중요합니다. 도메인 지식을 활용하거나 개입을 해서 처치에 영향을 미치고 그에 따라 결과가 어떻게 변하는지를 관측함으로써 인과추론에 한 발짝 더 나아갈 수 있습니다.

 

p.64-65

한 대형 온라인 소매업체에서 유료 멤버십 프로그램을 시행했습니다. 회원이 추가 요금을지불해서 멤버십 프로그램에 참여하면 더 높은 할인율, 빠른 배송, 반품 수수료 면제, 다양한 고객 서비스 등을 누릴 수 있었습니다. 이 회사는 해당 프로그램의 효과를 파악하고자 무작위로 표본을 추출한 뒤, 일부 고객에게만 이 프로그램을 공개했습니다. 해당 고객들은 멤버십 프로그램 참여 여부를 직접 선택할 수 있었습니다. 얼마 후 확인해보니 멤버십 프로그램에 참여한 고객이 대조군보다훨씬 더 높은 수익성을 나타냈습니다. 해당 고객들은 회사에서 제품을 구매했을 뿐만 아니라 고객 서비스 시간도 줄었습니다. 그렇다면 멤버십 프로그램은 매출 증가와 고객 서비스 시간 단축이라는 두 마리 토끼를 잡는 데 큰 성공을 거뒀다고 할 수 있을까요?

 

그렇지 않습니다. 멤버십 프로그램 자격은 무작위로 선정했지만, 선정된 그룹의 고객 스스로 참여 여부를 선택할 수 있었습니다. 즉, 멤버십 프로그램 자격을 무작위로 배정하면 프로그램에 참여할 수 있는 사람과 그렇지 않은 사람이 비슷해집니다. 그러나 대상자 중 일부만이 프로그램에 참여했으므로 이 선택은 무작위로 이루어지지 않았습니다. 구매율이 높은 고객들만 참여를 선택했고, 그렇지 않은 고객들은 참여하지 않았을 수 있습니다. 즉, 프로그램 참여 자격은 무작위로 선정했지만, 프로그램 참여는 무작위로 선정되지 않았습니다. 따라서 프로그램에 참여한 고객과 참여하지 않은 고객은 비교할 수 없습니다.

 

대상 고객 중 실제로 프로그램에 참여하기로 선택한 고객은 이미 해당 회사에 많은 금액을 지출했으므로 더 높은 할인율을 제공하는 멤버십 프로그램의 수수료를 지불할 가치가 있다고 판단해서 참여했을 수 있습니다. 이를 식으로 나타내면 E[Revenues_0 | OptIn = 1] > E[Revenues_0 | OptIn = 0]이므로, 멤버십 프로그램에 참여한 고객에게서 멤버십과 관계없이 더 많은 매출이 발생했음을 의미합니다.

 

p.71

인과추론을 학습할 때 시뮬레이션 데이터를 사용하면 유용합니다. 그 이유는 

 

첫째, 인과추론에는 데이터가 어떻게 생성되었는지에 관한 설명을 덧붙여야 하기 때문입니다. 시뮬레이션을 사용하면 처치가 어떻게 배정되었는지를 확실하게 이야기할 수 있습니다.

 

둘째, 인과추론에서 무엇이 벌어지는지 더 잘 설명해주도록 선택적으로 보여줄 수 있는 반사실 수치를 포함하기 때문입니다. 하지만 데이터가 너무 인위적으로 보이지 않도록 실제 데이터를 가져와서 사례에 맞게 변형하고는 합니다.

 

p.76-77

 

 

p.85

중요한 점은 신뢰구간이 겹친다고 해서 그룹 간의 차이가 통계적으로 유의하지 않다고 단정할 수 없다는 점입니다. 반대로, 신뢰구간이 겹치지 않았다면 통계적으로 유의한 차이가 있음을 의미합니다. 즉, 겹치지 않는 신뢰구간은 통계적 유의성에 대한 보수적인 증거로 해석될 수 있습니다.

 

요약하자면 신뢰구간은 추정값에 대해 불확실성을 나타내는 방법입니다. 표본 크기가 작을수록 표준오차가 커지고, 그 결과 신뢰구간도 넓어집니다. 신뢰구간은 계산하기 매우 쉬우므로 신뢰구간을 제시하지 않는다면 불순한 의도나 지식 부족을 의미할 수 있습니다. 어떤 경우든 문제가 있다고 볼 수 있죠. 마지막으로, 불확실성 지표가 없는 측정값에 대해서는 항상 의심할 필요가 있습니다.

 

p.86-87

 

 

p.87

 

 

'Growth > 통계' 카테고리의 다른 글

데이터 과학자의 가설사고  (0) 2024.02.17
Michael Crawley - Introduction to Statistics using R  (1) 2024.02.10
파이썬 비즈니스 통계분석  (0) 2024.02.04
데이터 스마트  (0) 2024.02.04
메이저리그 야구 통계학  (1) 2024.01.10

댓글