1. 코호트 분석 (cohort analysis)

1-1. 코호트 정의

분석을 시작하는 시간 기준으로 동일한 특징을 지닌 집단

  • 사람, 회사, 제품, 물리 현상 등의 개체로 집단을 구성한다.
  • 코호트에서 각 개인은 스스로 어떤 집단에 속했는지 인지할 수 있다. ex) 1학년

1-2. 코호트 분석 정의

개체를 여러 집단으로 나누고 시간에 따른 집단별 행동 변화의 차이를 비교하는 방법

"집단 특성 ↔️ 장기간 트렌드" 사이의 상관관계를 파악하기 위한 분석 방법이며, 이를 통해 그 원인을 밝히 위한 가설을 세울 수 있다.

ex) 신규 고객 중 광고를 통해 유입된 고객과 지인 추천으로 접속한 고객은 다른 구매 패턴을 보일 수 있다.

코호트 분석을 통해

  • 새로운 사용자 집단을 모니터링한다.
  • 새로운 사용자 집단과 기존 사용자 집단의 패턴을 비교한다.

※ 주의

  • 코호트 분석 결과에 인과관계적 의미를 부여하면 안된다.
  • 코호트 분석 결과를 "테스트할 가설"을 만드는 데 활용해야 한다.


2. 코호트 분석 구성요소

2-1. 코호트 그룹화 (cohort grouping)

  • 시작 날짜를 기준으로 하는 경우가 많다.
    ex) 첫 구매 날짜, 구독 날짜, 학교 입학 날짜 등
  • 선천적 특징
    ex) 생일, 국적, 회사의 설립 연도 등
  • 후천적 특징
    ex) 거주 도시, 혼인 여부 등

특징은 계속 변화할 수 있기 때문에 시작 날짜에 기준을 두어 개체 그룹 구분을 명확히 함이 좋다.

✅ 코호트 vs 세그먼트 차이

  • 코호트: 동일한 시작 날짜와 동일한 기간의 개체 그룹
  • 세그먼트: 시작 날짜와 상관없이 특정 시기에 동일한 특성을 공유하는 개체 그룹

2-2. 시계열 데이터 (time series data)

1) 데이터 예시

구매 이력, 로그인 이력, 인터랙션 이력, 여러 행동 이력 등

2) 가져야 할 특성

  • 개체의 전체 일생을 포함해야 생존자 편향* 이 발생하지 않는다.
  • 분석하려는 개체의 행동 이력을 관찰할 수 있는 충분한 양의 데이터가 필요하다.
    ex) 한 달에 한 번 구매한다면 여러 달의 시계열 데이터가 필요하고, 일 년에 한 번 구매한다면 수 년의 시계열 데이터가 필요하다.

*생존자 편향 (survivorship bias)
이탈한 고객은 데이터셋에 남지 않아 새로운 집단과 비교 시 편향된 결과가 나올 수 있다.

3) 정규화 필요

  • 최근 고객은 기존 고객보다 더 짧은 기간의 데이터를 갖는다.
    ➡️ 일, 월 등의 단위보다 시작 날짜부터 현재까지 특정 시간 단위로 지정된 "구간 개수"를 사용해 정규화한다.

2-3. 집계 지표 (aggregate metric)

  • 집계 지표로 고객의 지속적인 서비스 사용 또는 제품 구매 등 조직의 현황을 나타내주는 지표를 사용한다.
  • 코호트별 sum, count, avg 함수를 주로 사용한다.
  • 결과값은 시계열 형태이며, 이를 통해 시간에 따른 행동 변화를 이해한다.


3. 코호트 분석 유형

3-1. 리텐션

고객의 활동 시작 날짜부터 행동 데이터가 저장된 시간 구간의 개수

  • 반복적인 고객 행동이 관찰될 때 유용하다.
    ex) 온라인 게임 플레이, 제품 사용, 구독 서비스 갱신 등
  • 제품이 얼마나 고객의 재방문을 유도하는지, 앞으로 얼마나 많은 고객이 더 방문할지 등을 분석할 수 있다.

3-2. 생존자

특정 이벤트에 대한 행동 횟수와 관계없이, 데이터셋의 특정 시간 구간에서 이탈하지 않고 남아 있는 개체의 비율

  • 긍정적 의미의 생존: 활동을 그만두거나 사망하지 않고 남아 있는 것
  • 부정적 의미의 생존: 요구사항을 만족하지 못한 상태로 남아 있는 것

3-3. 리턴십

일정한 시간 구간에서 특정 행동의 최소 임계값 이상(주로 1회 이상) 발생 여부

  • 소매업처럼 간헐적으로 발생하고 예측 불가능한 상황을 분석할 때 유용하다.
  • 일정한 시간 윈도우 내에서 집단별 반복 구매 패턴 비교에 유용하다.

3-4. 누적 계산

이벤트 발생 시간과 관계없이, 하나 이상의 시간 윈도우에서 발생한 이벤트 수 또는 전체 이벤트 발생 수

  • 주로 고객 생애 가치(LTV) 계산에 활용된다.

이어서, SQL을 활용해 리텐션 분석을 실습해보자.
⬇️ 다음 글 [[SQL 코호트 분석] 2. 리텐션 분석 실습 (1)](https://velog.io/@aelle/SQL-%EC%BD%94%ED%98%B8%ED%8A%B8-%EB%B6%84%EC%84%9D-2.-%EB%A6%AC%ED%85%90%EC%85%98-%EB%B6%84%EC%84%9D-%EC%8B%A4%EC%8A%B5) ---

💡 질문과 피드백 사항은 댓글에 편하게 남겨주시기 바랍니다.
❤️ 도움이 되셨다면 공감 부탁드립니다.

profile
Data Analyst / Engineer

0개의 댓글