[Product 시리즈 1] 프로덕트 분석가가 인과추론을 공부하면 좋은 이유

 

나에게 온 한 통의 문자

얼마 전 VIBE에서 이런 문자가 왔습니다. 문자 내용을 확인해보니 파티룸 기능(노래 들으면서 클럽하우스처럼 얘기하는 기능)이 추가되면서 기존 이탈 유저를 복귀시키기 위해 메시지를 보낸 것 같네요.
그런데 문득 이런 생각이 들었습니다. VIBE 분석가는 지금 파티룸 기능이 얼마나 성과가 있었는지, 문자 발송의 성과가 어땠는지 분석해달라는 요청을 받지 않았을까?

프로덕트 분석의 고충

저는 VIBE 및 네이버에 연고가 없어 정확히 어떤 프로세스로 일하는지 알 수 없지만 보편적인 기능 중심 조직에서 분석가는 다음과 같이 일을 받습니다.

기획자 및 PM이 새로운 기능 기획 -> 개발팀에 전달 -> 개발팀이 개발하고 배포 -> 마케팅팀에서 마케팅 계획 수립 및 실행 -> 분석가님, 저희 이렇게 했는데 성과 분석해주세요!

솔직히 위 프로세스로 만들어진 데이터로 엄밀하게 파티룸 기능의 추가가 어느정도 성과가 있는지, SMS 마케팅 성과가 어느정도인지 측정하는 것은 불가능 합니다.
그런데 이런 일을 무조건 안 됩니다! 하면 회사에서 분석가는 할 일이 없어집니다… 먹고 살려면 “이런 이런 제약은 있지만 이 정도로 효과가 추정된다” 는 결론을 얘기해야하겠죠.

그럼 왜 성과 측정이 불가능하다 했는지, 그리고 대안적 해결책은 무엇이 있을지 알아보겠습니다.

성과 측정이 안 되는 이유

새로운 기능이 추가되면서 유저 유입이 늘고 해당 기능 사용량이 증가하면 이 기능은 성공적인 걸까요?
위 문자 사례처럼 새로운 기능이 추가되면 그 기능을 이곳 저곳에서 홍보하게 되는데, 새로운 기능 때문이 아니라 홍보를 평소보다 많이해서 유입이 증가한 건 아니었을까요? 새로운 기능이 전혀 없는데 새로운 기능 출시될 때와 같은 마케팅비용으로 홍보해도 같은 효과가 있지는 않았을까요?
또한, 홍보를 안 해도 어차피 대부분의 유저가 그 추가된 기능을 쓸 수 있지 않았을까요? 성과 측정하겠다고 홍보 안 할 수도 없고 참…
태클 걸기 위한 억지 흠집 내기가 아니라 진짜 우리 모두가 생각하고 있어야 할 성과 측정이 어려운 이유가 바로 이런 “~했다면” 입니다.

최고의 해결책

그렇다면 이런 성과를 정확히 측정하려면 어떻게 했어야 할까요?
최고의 해결책은 모두 들어보셨을 A/B 테스트입니다. 문자만 예를 들어보면 일부 유저에게는 신규 기능에 대한 설명이 들어간 메시지를, 일부 유저에게는 신규 기능에 대한 설명 없이 “이용자님 보고싶어요~” 식의 메시지를 보내고, 일부 유저에게는 메시지를 보내지 않는거죠. 이렇게 하면 단순 리마인드식 문자에 비해 신규 기능 출시를 알리는 문자의 성과를, 문자를 보내지 않았을 때에 비해 문자를 보냈을 때의 성과를 정확히 측정할 수 있겠죠.
어렵지 않은 내용이지만 대부분의 회사는 위에서 설명한 부서 별로 각자 할 일 하고 분석가가 결과물을 분석하는 구조를 따르기에 이런 방식으로 일이 진행되지 않습니다.
이는 조직문화, 조직구조에 내재된 문제점이라 해결하기 어렵죠. 남의 조직이 일할 타이밍에 분석가가 참가해 분석 편이성에 맞게 업무를 바꾸기란 쉽지 않습니다. 이렇게 (사업, 개발, 디자인 등) 기능에 따라 조직이 나뉘어진 조직구조를 기능조직이라 합니다. 반면, 일정한 목적을 가지고 다양한 조직원이 모여 일하는 조직구조를 목적조직이라 합니다. 그리고 목적조직으로 일하는 회사는 대부분 각 조직마다 분석가가 포함되어 출시 전부터 과정, 사후까지 개입합니다.
사실 A/B 테스트 자체는 내용이 간단하여 툴만 갖춰진다면 굉장히 직관적이고 정확한 결론을 아주 쉽게 내릴 수 있습니다. 개인적으로 분석가가 기능조직보다 목적조직에서 일을 더 잘 할 수 밖에 없다고 생각하는데요, 그 이유는 어느 시점에 분석가에게 일이 주어지냐의 차이인 것 같습니다.

먹고 살기 위한 해결책

A/B 테스트가 가능하다면 좋겠지만 A/B 테스트를 위한 환경이 구축되지 않았을 수도 있고, A/B 테스트를 하기에 부적절한 업종일 수도 있습니다.
이런 상황에서 프로덕트 분석을 해야한다면 엄밀함이 떨어질 수는 있지만 요약통계량의 변화를 제공하여 “전후로 이런 변화가 있었고 이 정도의 효과가 있는 것 같다” 라는 내용을 알려주는 게 가장 현실적인 방법이 될 것 같습니다. VIBE 사례를 들자면 파티룸 기능 전후로 DAU, 평균 앱 사용시간, 소셜 커뮤니케이션 활동 변화 등의 요약통계량에 어떤 변화가 있었는지 알려주는 것이죠. 전사 혹은 해당 팀이 목표로 하는 지표가 별도로 있다면 그걸 보는 것도 좋겠네요.
아마 대부분의 회사에서 이런 분석이 진행되지 않을까 싶네요.

좀 더 잘 먹고 잘 살기 위한 해결책

그렇다면 요약 통계량 제공보다 조금 더 정확한 효과 추정 방법은 없을까요? 있습니다. 바로 이 글의 주제인 인과추론입니다.
위 VIBE 사례에서는 수신거부 등의 이슈로 홍보 메시지를 받지 못한 유저와 홍보 메시지를 받은 유저 그룹을 나누고 각 그룹에서 이탈 전 비슷한 성향을 보였던 유저들을 매칭하여 (매칭 안 된 유저는 분석 대상에서 제외) 홍보 메시지의 효과를 추정할 수 있을 것 같습니다. 추가 기능 사용으로의 유인효과도 비슷하게 할 수 있겠네요. 이 글은 기법에 대해 설명하는 글은 아니기 때문에 이 정도로만 적겠습니다.

참고로 A/B 테스트와 인과추론을 구분지었지만 엄밀하게 하자면 A/B 테스트는 개별 인과추론 중 인과적 근거의 신뢰성이 가장 높은 방법론입니다. 학계에서는 RCT(Randomized Controlled Trial)이라는 이름으로 주로 사용됩니다. 결국 해결책 중 좋은 건 다 인과추론이었다는 얘기죠.
그래서 인과추론이 뭔가요?

인과추론은 개입의 효과 측정

분석하는 분들이 “인과”라는 말을 듣는 상황은 주로 “상관관계는 인과관계가 아니다.”라는 말을 들을 때 같습니다. 이런 말을 들으면 인과관계는 뭔가 대단히 과학적이고 정확하며 엄밀한 무언가 같습니다. 하지만 적어도 회사에서 사용하기에 인과라는 단어는 “우리가 변화를 주려고 하는데 반응할까?”에 가깝습니다.

회사에서 변화를 주는 이유

회사는 현상태를 유지하려 하지 않습니다. “올해 10억을 벌었는데 내년에 저희는 8억만 벌어도 만족합니다!” 혹은 “올해 10만 MAU를 달성 했는데 내년에 저희는 8만 MAU 정도면 만족합니다!” 하는 오너가 있을까요? 사실 외부환경의 변화로 현상태를 유지하는 것도 굉장한 노력(변화)의 결과물이라고 해야겠죠. 결국 회사와 임직원은 모두 성장을 하려하기 때문에 현상태를 유지만 하려하지 않습니다 (만약 하던대로만 하고 적당히 벌 생각이면 기존 방식을 자동화하고 대규모 해고하는 게 더 좋은 전략이 아닐까 싶네요).
그렇기 때문에 회사는 계속해서 제품, 유저, 전략, 사내문화 등에 변화를 추구합니다. 이는 과거 상태에 의도적인 개입을 하는 거죠. 쿠팡의 로켓배송, 오바마 캠프의 후원페이지 변경 모두 의도적으로 개입을 해서 변화를 주려는 시도입니다. 분석가는 그것을 측정하는 거죠. 참고로 위 두 사례 모두 A/B 테스트입니다.1
결국 우리는 인과추론을 배우지만 회사에서는 개입의 효과를 측정하고 좋은 개입이면 이후에도 사용, 안 좋은 개입이면 이전 상태를 사용하는 방식으로 의사결정에 도움을 주는 것이죠. 최근 많은 스타트업에서 실험, 데이터에 기반한 의사결정을 강조하고 있는데 이 기조는 점차 강화될 것 같습니다. 그리고 이런 환경에서 데이터분석가의 역할은 개입의 효과 측정(+측정을 위한 설계)이 될 것입니다.
따라서 지금은 주로 요약통계량을 알려주는 분석을 하더라도 미래에 대비하여 인과분석을 공부해두면 쓸모가 있을 겁니다.

아직은 어려운 인과추론을 통한 의사결정 지원

인과추론에 대한 필요성을 호소하는 글이었지만 현업에서 A/B 테스트를 제외한 인과추론 분석이 의사결정을 지원하는 방법론으로 자리매김하기는 아직 갈 길이 멀다고 생각됩니다. 원인은 다음과 같습니다.

회사는 분석가만 있지 않다

“저희가 무슨무슨 기법에 통제그룹과 실험그룹을 어떻게 하려고 했는데 어려워서 유저를 이러저러한 기준으로 매칭해서 인과추론을 해보니까 유의성 0.0n으로 효과가 나타났습니다”라고 하면 분석가가 아닌 분들은 어렵게 느껴지겠죠. 그만큼 이 결론을 설득시키기까지 충분한 합의와 의사소통이 필요합니다.

회사는 잘하는 분석가만 있지 않다

A/B 테스트를 제외한 인과추론 기법들은 제대로 훈련된 사람들만 제대로 사용할 수 있습니다. 아무렇게나 넣어도 결과가 나오긴 하지만 관계가 양의 관계나 음의 관계냐가 분석가마다 다르다면, 프로덕트 담당자 이전에 분석가끼리도 신뢰하기 어렵다는 생각이 들겠죠.

인과추론은 한 번에 완벽하지 않다

학계에서는 제대로 훈련된 사람들도 각자 결론이 다르게 나와 해당 주제에 대한 기존 분석들을 분석하는 메타분석을 추가로 하기도 합니다. 그만큼 의사결정을 위한 인과분석은 쉽지 않고 한 번에 신뢰할만한 결론을 내기도 어렵습니다.

회사는 멈춰 있지 않다

뉴딜정책을 우리는 성공한 정책으로 배우고 한국판 뉴딜 정책 얘기도 하지만, 아직도 뉴딜정책은 성공적이었다는 시각과 오히려 경제위기를 키웠다는 시각이 나뉘어져 있습니다.2 1차 뉴딜정책이 1933년에 실행되었으니 이거 맞는지 틀리는지 분석 결과 기다리면서 아무것도 안하다가는 나라가 망하겠죠.
회사는 매일, 매주, 매월, 매년 새로운 의사결정을 내리고 새로운 실행을 합니다. 회사상황에 맞게 적정수준의 인과추론 포맷을 만들고 회사 의사결정 사이클에 맞춰 빠르게 분석 결과를 내도록 인과분석이 성숙해져야 탁상공론이 아닌 인과분석이 자리 잡을 수 있을 거 같습니다.

추가로 하고 싶은 얘기들

머신러닝 모델을 해석하는 게 인과추론이 아니다

빅데이터, 머신러닝 공모전에서 흔히 볼 수 있는 포맷을 생각해보면 다음 순서로 이뤄집니다.

데이터 및 대회 목표 소개 → EDA → 모델 및 변수 선택 → 모델 해석 → 결과 도출

여기서 심각한 문제가 있는 부분은 모델 해석 → 결과 도출 과정입니다. 어쩌면 기승전결이라는 클리셰 때문에 생긴 이 부자연스러운 흐름에서 대부분의 참가자들은 Feature Importance, PDP, LIME, SHAP로 모델 해석해 봤는데 A 변수가 증가할 때 Y가 증가하는 것을 확인했으니 회사의 A를 늘려야 한다고 주장합니다. 모델은 개입 없이 주어진 데이터로 예측했을 때 높은 예측력을 가지게끔 만들어졌고, 위에서 언급한 해석 방법론 모두 실제 세상이 어떠한지가 아니라 모델이 어떤 상황에서 어떻게 예측하느냐에 대한 해석 방법론입니다. 즉, 개입과 무관한 내용이기 때문에 A를 늘려야 한다 줄여야 한다 같은 결론으로 이어지는 건 잘못된거죠.
많이 사용되는 SHAP 모델의 연구자 역시 예측 모델의 interpret을 통해 인과적 인사이트를 얻으려는 것을 조심하라는 글을 남겼습니다.3 저자의 배경과 제목만으로 전달하려는 바가 느껴지지 않나요?
우리는 예측을 위한 방법과 인과적 주장을 만들어나가기 위한 방법이 많이 다르다는 것을 인지해야 합니다. 어쩌면 두 접근법은 심리학에서 시스템1, 시스템2라고 부르는 것만큼 존재의 목적과 작동방식이 다른 것 같습니다.
물론 인과분석을 통해 밝힌 변수를 예측분석에 사용해 안정성을 높이거나 예측분석을 통해 상관성이 높게 나온 변수를 추가 실험을 통해 인과분석의 힌트로 사용하는 등의 상호보완적 성격도 가지고 있습니다. 좀 더 나아가면 최근 인과분석 방법론 중에는 머신러닝을 통해 반사실을 추론하고 사실과 비교하며 인과효과를 측정하기도 하기 때문에 아예 접점이 없다고 할 수는 없습니다. 이 역시 우리는 본능적으로(시스템1) 공이 날라오면 피하지만, 강조되고 반복되는 훈련(시스템2)을 받은 골키퍼들은 이걸 본능적으로(시스템1) 막아내는 것처럼 시스템1과 시스템2의 관계처럼 보이네요.

인과추론의 데이터과학 구독과 좋아요… 알림설정

인과추론에 대한 공부는 꾸준히 해왔고 이 내용을 담은 글을 전부터 쓰고 싶었지만 스스로도 정리하기 힘들어 미뤄두고 있었습니다. 최근 인과추론의 데이터과학 유튜브 채널과 해당 채널의 박지용 교수님이 진행하신 Korea Summer Session on Causal Inference 2021의 내용이 한단계 점프업 하는데 큰 도움이 되었습니다.
덕분에 한 번 쓰고 싶었던 내용의 글을 쓸 수 있었고 본문에 사용된 몇몇 예시나 내용은 이 과정 중 들은 내용을 사용하였음을 밝힙니다. 더 전문가의 컨텐츠를 보고 싶으신 분들은 유튜브 인과추론의 데이터과학 구독 좋아요를 부탁드립니다.

  1. https://news.coupang.com/archives/53 - 쿠팡 로켓배송 A/B 테스트
    https://mirakle.mk.co.kr/view.php?year=2017&no=347786 - 오바마 캠프의 A/B 테스트 

  2. https://www.mk.co.kr/opinion/contributors/view/2020/11/1215872/ - 본 기사의 정치적 의견과 무관하게 뉴딜정책에 대한 논란이 있다는 내용을 가져왔습니다. 

  3. https://towardsdatascience.com/be-careful-when-interpreting-predictive-models-in-search-of-causal-insights-e68626e664b6