본문 바로가기

PM의 일/데이터

PM의 데이터분석

  데이터…….통계.…GA…….SQL…?!!!! 데이터 분석을 떠올리면 머리가 뒤죽박죽이 된다. 왜인지는 잘 모르지만 데이터가 중요하다는 이야기가 맴돌고, 뭔지는 모르지만 어디선가 주워들은 파이썬과 SQL만 떠오르기 때문이다.

 

  뒤죽박죽이 된 머리를 정리하기 위해, 실제 프로덕트가 운영되면서 쌓이는 데이터란 무엇인지, 어디부터 어디까지 어떻게 데이터가 흐르는 것인지, 데이터 관련해서 사람들이 뭘 하고 있는지, 도대체 실무에서 쓰는 통계 분석은 뭐고 그놈의 GA SQL은 뭔지!부터 정리해보았다.  

 

(다만, 이 질문에서는 기획자의 데이터 설계 역할(어떤 데이터를 어떻게 수집할 지 범위를 정의하고, 어떻게 사용할 지 운영 정책을 세우는 일 등)은 제외했다. 넷플릭스나 왓챠의 추천 알고리즘처럼 데이터 자체가 프로덕트(data as a product)가 되는 케이스나, 백엔드 기획자의 DB 설계 등은 비즈니스 의사 결정과 프로덕트 개선을 위한 PM의 데이터 분석과는 (물론 연결은 되겠지만..) 결이 다르다고 생각했기 때문이다. 그리고 사실 이것까지 고려하자니 너무 헷갈렸다.)

 

 

표가 너무 못생겼어

 

<데이터 수집 및 처리>

 

* 데이터: 프로덕트를 사용하는 유저들의 흔적

* 로그(log): IT에서 발생되는 모든 행위와 이벤트 정보를 시간에 따라 남기는 데이터

 - 서비스 로그: 결제(transaction) 결과를 기록하는 로그 ex) 가입완료, 예약완료, 결제 완료, 결제 취소 등의 정보

 - 행동 로그: 프로덕트 이용시 사용자들이 취하는 행동(action)을 기록한 로그 ex) 버튼 클릭, 검색, 배너 스와이프 등의 정보  

*(개발 제외) 로그 데이터 활용 영역

마케팅

o   마케팅 채널별 ROI 진단 및 비용 최적화

o   배너/프로모션/이벤트 효과 측정

o   유저 Segmentation, Targeting

기획/디자인

o   시나리오/기능/디자인에 대한 성과 측정 및 개선 (A/B 테스트)

o   유저 Journey 경로 분석 및 이탈 구간 개선 (UX/UI 최적화)

o   유저 Persona 구축 (with 리서치) 및 신규 기능 Ideation

기타 영역

o   영업 및 CS 관련 대응

o   사업 및 투자 성과 진단

* 데이터베이스(DB): 여러 사람들이 공유하고 사용할 목적으로 통합 관리되는 데이터들의 모임

*데이터 엔지니어: 소프트웨어 개발 및 인프라, 데이처 수집 및 처리, 시스템 환경(Spark, Hadoop) 설치 및 관리, 테이블 동기화/자동화 작업 등의 업무, 경우에 따라 웹//서버 개발

*데이터 분석가: 로그 설계 및 지표 정의, 데이터 탐색 분석/모델링 업무, SQL 언어를 통해 데이터를 추출, R/Python/사용툴을 사용해 데이터 분석, 대용량 데이터 분석, 태블로 등을 이용해 대시보드를 구축 등(기획자랑 역할이 겹치는 것 같다.)

 

<데이터 분석>

 

* 지표 정의 및 트래킹: 비즈니스와 관련한 주요 지표를 개발/산출하고 대시보드 및 리포트를 통해 트래킹

- 지표(metric): 현재 진행중인 사업/프로젝트의 성과나 상태를 측정해서 수량화/수치화 . 서비스 운영 과정에서 생성되는 다양한 log 의미 있고, 분석 가능한 형태로 요악한 .  

- 후행 지표: 결과로 보여지는 지표 ex) 3kg가 늘었다.

- 선행 지표: 원인이 되는 지표 ex) 근육량이 늘었다.

* 탐색적 데이터 분석

- 그룹별 평균, 합 등 현황 확인

- 분포 확인

* 통계 분석

- 가설 검정:

- A/B 테스트: 동일집단에게 임의로 A,B 두 버전을 나누어서 보여주고, 더 효과적인 것을 판단하기 위한 테스트  

- multivariate test

   - 독립/종속 모두 범주형 -> 카이제곱 검증

   - 독립 범주형, 종속변수 연속형 -> 분산분석   

- Funnel 분석: 단계별 전환 및 이탈율 측정  

*통계 지식  

- 평균은 평균

- 분산: 평균치 주위에 값들이 흩어진 정도(관찰값-평균 차이 제곱의 평균), 표본 분산은 모분산 n으로 나눔, 표준편차(=표본 평균의 표준오차)는 여기에 루트 씌운 것.  

- 기술통계: 특정 변수(자료)의 특성을 정리하고 요약해줌

- T검증: 두 집단에 대한 평균차가 유의한지 검증 

- 분산분석(ANOVA): 3개 이상 집단 평균차가 유의한지 검증(다변량-독립변수 1개 이상, 종속변수 2개 이상일 때). 기본적으로는 집단간/집단내 변동(분산) 차가 유의한지 검증하는 것.

- 교차분석/카이제곱(Chi-square): 독립/종속 변수 명목/서열 척도일 때. 관측빈도와 기대빈도 변동(분산)이 유의한지 검증

- 회귀분석: y=f(x) 함수에서 XY 사이의 함수 관계를 규명하는 방법. , X라는 독립변수와 Y라는 종속변수가 유의한 인과관계인지 분석

 

그 외 여러가지 통계분석(실무에서 어떤 통계분석을 하는지 정말 궁금하다) 

 

<분석 툴>

*Google Analytics: 웹사이트 방문자의 데이터를 수집해서 분석함으로써 온라인 비즈니스의 성과를 측정하고 개선하는 데 사용하는 웹로그분석 도구(추적 코드를 통해 데이터 수집 가능)

*파이어베이스: 백엔드 플랫폼이라는데 DB 기능도 있어서, 데이터 수정, 추가, 분석 가능

* SQL(Structured Query Language): 데이터베이스와 소통하는 언어. 주로 쿼리를 날려서 데이터를 추출할 때 사용한다.   

* 파이썬(Python): 할 수 있는 범위가 너무 넓다. 파이썬 자체는 프로그래밍 언어다. 그래도 데이터 분석 관련해서 생각해보면, 크롤링으로 원하는 방식대로 데이터를 쌓거나, 데이터 처리하고 데이터 대시보드나 워닝 시스템 등 자동화 정도인듯

 

그 외 시각화 툴 

 

출처:

https://www.slideshare.net/leoyang991/ss-90038927?utm_source=medium

https://www.youtube.com/watch?v=mGq5qV7YwZc&feature=youtu.be

https://woowabros.github.io/woowabros/2017/07/30/logdata.html

https://germweapon.tistory.com/346

https://wikidocs.net/16560

https://brunch.co.kr/@dan-kim/9

https://analyticsmarketing.co.kr/digital-analytics/google-analytics-basics/2252/

 

 

PM에게 데이터 분석은 , 언제 필요할까?

 

  서론이 너무 길었지만, 데이터의 끝에는 결국 비즈니스프로덕트가 있다는 것을 알 수 있다. , 데이터나 데이터 분석이 그 자체로 쓸모 있는 것이 아니라, 데이터를 통해 다음에 어떤 행동을 취하여야 하는지 결정하고, 프로덕트를 지속적으로 개선하고 성장시킬 수 있을 때 의미가 있는 것이다. 이는 PM에게 데이터 분석이 필요한 이유이다.

 

  그래서 여러 자료를 종합해서 생각해본 결과, PM이 데이터를 분석한다는 의미는,

1) 비즈니스와 프로덕트에 대한 이해를 바탕으로 데이터를 트래킹하며 문제가 발생하는 지점을 알아채고

2) 어떤 지표, 특히 어떠한 선행 지표가 유의미한지 정의하여

3) 가설을 설정하고 실제 그 가설이 맞는지 검증하는 과정이다.

4) 무엇보다도 PM의 데이터 분석은, 분석 그 자체에서 멈추는 것이 아니라, 앞으로 어떤 조치를 취할 지 알려주고, 실제로 행동까지 이어지도록 한다.

 

  그런 점에서 PM에게 데이터 분석에서 가장 중요한 단계는 질문을 던지고, 지표(metric)를 설정하는 일 같다. 정교한 수준의 데이터 처리나 분석은 다른 누군가 부탁해서 맡길 수 있지만, PM만큼 프로덕트와 비즈니스를 깊이 이해하는 사람은 없고, 따라서 PM만큼 제대로 된 질문과 가설을 제시할 수 있는 사람은 없기 때문이다. 그렇기에 지표와 가설을 설정하여 프로덕트의 문제를 제대로 정의해야 할 때가 PM이 데이터 분석이 필요한 때이다.      

 

  동시에 데이터 분석은 PM의 강력한 설득 도구로서 팀을 하나의 목표에 집중시킬 수 있기에 중요하다. 리디 PM 인터뷰에서 언급된 데이터 기반 의사결정은 PM의 한이 서린 말이라는 점이 기억난다. PM의 주 역할이 소통과 설득임을 떠올렸을 때, 데이터는 PM의 의사결정이 주관이 아닌 객관적 결정임을 주장할 수 있는 효과적인 수단이 될 수 있다.   

 

 

PM 데이터 분석을 얼마나 알아야 할까? 데이터 분석에는 무슨 도구를 쓸까?

 

  상황에 따라 다르다 😊 (it depends~) 내가 설정한 지표에 따라 다뤄야 할 데이터의 범위와 통계 분석 수준, 툴이 결정된다. 그래서 단계별로 PM이라면 어느 정도까지 데이터를 다뤄야 하는지 예를 통해 좀 더 구체적으로 생각해 보았다.   

1단계) 본인의 프로덕트를 제대로 이해하고 있다면, 어떤 지점에서 문제일 지 어렴풋한 질문과 문제 의식이 떠오른다. 실제 GA 등의 자체 툴에서 AARRR 등의 데이터 추이를 보며 문제점을 파악할 수도 있다.

 

==> 따라서 기업에서 채택한 데이터 분석 툴(GA ..)을 다룰 수 있는 능력과, 프로덕트가 속한 산업의 중요한 지표와 수치에 대한 지식이 필요하다.

예를 들어, OTT 산업에서 일주일간 총 시청 시간이 중요한 지표이고, 산업 평균 3시간이라는 지식이 있으면, 지표가 3시간 밑으로 떨어질 때 문제가 있음을 인지할 수 있다.   

 

2단계) 정확히 어떤 지표가 문제인지 발굴하고 정의해야 한다. 주로 결과만 보여주는 후행지표 보다는 후행지표로 이는 선행지표를 찾는 일이 중요하다. 자체 툴만으로 선행 지표를 발굴하기에 한계가 있다면, DB에 쌓인 로그 데이터(raw data)를 들여다볼 수도 있다.

 

==> 분석 툴에서 보여주는 지표 그 자체보다 좀 더 쪼개서 무엇이 진짜 중요한 요인인지 생각해보는 능력이 필요하다.

예를 들어, 일주일간 평균 시청 시간이 30분 줄었다는 것을 발견했으면, 성별에 따라 다른지, 어느 요일에 가장 많이 줄었는지, 어떤 장르의 시청 시간이 줄었는지 등을 확인해볼 수 있다.       

 

==> 툴에서 원하는 선행 지표를 찾지 못한다면, 개발자 혹은 (존재한다면) 데이터 팀에 요청해서 DB에서 로그 데이터를 추출한다. SQL을 할 줄 안다면 스스로 데이터를 불러와서 살펴본다.

 

==> 원하는 데이터가 DB에도 존재하지 않다면, 데이터 팀 혹은 엔지니어와 적극적으로 대화해서 원하는 데이터를 수집할 수 있도록 할 수도 있을 것 같다. 때문에 데이터 관련 지식이 있으면, 어떤 목적으로 어떤 데이터를 원하는 것인지 원활한 소통이 가능할 것 같다. 혹은 파이썬으로 직접 크롤링해서 데이터를 수집하는 일도 가능하기는 하지 않을까...

 

 

3단계) 중요하다고 생각한 지표가 실제로 유의한지 가설을 세우고, A/B test 혹은 퍼널 분석 등을 실시하여 가설을 검증한다.

==> 각 기업에서 사용하는 A/B 테스팅 툴을 사용할 수 있어야 한다(엑셀, GA, Adobe Target, Optimizely, javascript 코드 삽입 등의 방법이 있다고 한다). 표집, 실험 설계, 통계 등의 지식도 필요하다.  

예를 들어, 인기를 휩쓸었던 SF 장르 드라마 시리즈가 최근에 끝나서 그 드라마를 보던 사람들의 시청 시간이 확 줄어든 것이라면, 그 사람들이 빠져나가지 않도록 가설을 세울 수 있을 것 같다. “드라마 시청 후 비슷한 장르의 드라마를 추천해주면 시청 시간이 유지될 것이다혹은 드라마 시청 후 출연 배우의 드라마를 추천해주면 시청 시간이 유지될 것이다등등을 세울 수 있지 않을까

 

4단계) 검증 결과 유의하다면, 그 다음 ACTION을 설정한다. 

 

영상 추천이 시청 시간에 유의한 영향을 미친다면, 추천 서비스를 구축한다!

'PM의 일 > 데이터' 카테고리의 다른 글

A/B 테스트의 모든 것 by. 핵클  (0) 2021.12.05
A/B 테스트와 p-value  (0) 2020.10.05