Growth Marketing/GM4

[TIL-260422] 멋쟁이사자처럼 그로스마케팅 4기 - 데이터분석 개론 day30 | 머신러닝 기초 - 선형회귀분석모델

pamsyra 2026. 4. 23. 13:58
▼오늘 배운 사항들
1. 데이터 분석 모델링
- 광고,캠페인 최적화
2. 머신러닝
- 선형회귀분석모델

 

Part 1. 데이터 분석 모델링

[마케터에게 머신러닝이 필요한 이유]

  1. 머신러닝은 방대한 데이터를 패턴화해줌
  2. 보통 10줄 이내의 코드로 진행됨
  3. 마케터 + 머신러닝 = 그로스마케터
  4. 마케터의 직관 + 데이터 분석 능력 + 머신러닝 모델 = 가설을 빠르게 검증하고, 최적의 전략을 실행하는 그로스 마케터

[광고캠페인 최적화]

  • 정해진 예산 안에서 원하는 결과를 최대화 or 같은 결과를 더 적은 비용으로 달성하는 활동
  • 각 단계에서 왜 이탈하는지 머신러닝으로 확인 가능
  • 데이터 기반 의사결정 사이클
① 가설 수립
   "Google이 Instagram보다 전환율이 높을 것이다"
        ↓
② 데이터 수집 & 분석
   채널별 CTR, CVR, CPA 계산
        ↓
③ 모델링 & 예측
   회귀분석으로 광고비 → 전환수 예측
        ↓
④ 실행 & 검증
   예산 재배분, A/B 테스트 실행
        ↓
   다시 ①로 →→→

 

[마케팅 핵심지표 재정리]

  • 지표 하나만 보는 것이 아니라, 항상 퍼널 전체를 봐야함
  • CTR이 높아도 CVR이 낮으면 결국 손해이기 때문
지표 무엇을 보는가 무엇을 보는가낮으면 의심되는 문제 계산식
CTR 광고 소재 매력도 이미지·카피가 타겟과 안 맞음 CTR = 클릭수 ÷ 노출수 × 100 (%)
CVR 랜딩페이지·상품 설득력 가격, UX, 신뢰도 문제 CVR = 전환수 ÷ 클릭수 × 100 (%)
CPA 획득 비용 효율 타겟팅·채널 선택 문제 CPA = 광고비 ÷ 전환수 (원)
ROAS 전체 광고 투자 효율 상품 마진·전략 문제 ROAS = 매출 ÷ 광고비 × 100 (%)

 

[머신러닝이란?]

머신러닝 = 데이터에서 패턴을 찾아 예측하는 기술

예시 1 : 예측 문제 "다음 달 광고비를 500만 원 쓰면 전환수가 얼마나 될까?" → 과거 데이터(광고비, 전환수)를 학습한 모델이 예측

예시 2 : 분류 문제 "이 고객이 이탈할 가능성이 높은가?" → 과거 이탈 고객의 패턴을 학습해 신규 고객에게 적용

예시 3 : 군집 문제 "우리 고객을 비슷한 그룹으로 나누면 어떻게 될까?" → 구매 패턴이 비슷한 고객들을 자동으로 묶어줌

 

[머신러닝 모델 종류]

- 전부 과거데이터를 기반으로 앞으로 어떻게 될 것인지 추측하는 것

  • 예측모델(회귀) : 광고비 투자 대비 전환이 궁금할 때
  • 군집 분석 : 세그먼트 타겟팅하고 싶어서 우리 고객 그룹으로 나눌 때
  • 시계열 분석 : 다음달 매출 추이 예측하고 싶을 때
  • A/B 테스트 : 랜딩페이지 어떤게 더 좋은지 골라야 할 때

[머신러닝 분석 흐름]

 

① 문제 정의
   "어떤 채널이 ROAS가 가장 높을까?"

② 데이터 수집
   채널, 광고비, 클릭수, 전환수, 매출 데이터 수집

③ 데이터 전처리
   결측값 처리, 이상치 제거, 스케일링

④ 특징 엔지니어링 (Feature Engineering)
   CTR, CVR, CPA, ROAS 등 새로운 변수 생성

⑤ 모델 학습
   선형 회귀, K-Means 등 알고리즘 적용

⑥ 모델 평가
   R², MAE 등으로 모델 성능 확인

⑦ 의사결정 & 실행
   예산 재배분, 캠페인 전략 수정

 


[머신러닝 기본 개념]

1. 입력과 정답

  • X와 y : 입력과 정답 ( 대문자 X와 소문자 y)
    - X는 우리가 머신에게 주는 정보 | y는 모델이 맞춰야 하는 정답
    - X는 여러개일 수 있지만, y는 보통 1개
  • 지도학습 = "X를 알고 있을 때, y가 얼마일지 예측하는 것" 정답있음
  • 비지도학습 = 정답없이 패턴만 찾는 것
문제 X (입력 정보)  y (예측 대상)
전환수 예측 광고비, CTR 전환수
이탈 예측 최근 방문일, 구매횟수 이탈 여부 (0 또는 1)
매출 예측 광고비, 채널, 요일 매출 금액

 

 

2. 학습과 예측

  • 머신러닝 작동 단계 :
    ① fit : 과거 데이터를 보여주면서 X와 y 사이의 패턴을 찾으라고 시키는 것 (과거데이터로 패턴화)
    ② predict : 학습 끝난 모델에게 새로운 X 주면서 y 묻는 것 (새로운 데이터에 대한 예측)
  • 예시 : 학생이 시험족보 열심히 공부한 뒤 새로운 문제를 플어서 답을 내는 것 
    model.fit(X, y)                  # 공부 — 과거 데이터에서 패턴 학습
    model.predict(X_new)     # 시험 — 새로운 데이터에 대해 예측

3. sklearn

  • scikit-learn 사이킷런 : 파이썬에서 가장 많이 쓰이는 머신러닝 라이브러리
# sklearn 없이 선형 회귀를 구현하려면?
# → 행렬 연산, 편미분, 경사하강법 수십 줄 코드 필요

# sklearn을 쓰면?
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X, y)   # 끝!
----------------------
# R² 성능 지표 계산
from sklearn.metrics import r2_score

# MAE 성능 지표 계산
from sklearn.metrics import mean_absolute_error

 

4. 모델 성능 지표 : R²와 MAE 

  • 모델 생성 후, 모델의 예측 정밀도를 숫자로 확인하기
     R² (결정계수, R-squared)  = 모델이 데이터를 얼마나 잘 설명하는가
        -  0 ~ 1 사이의 값 (1에 가까울수록 좋음)
        -  1이면 과적합, 위험

     MAE (평균 절대 오차, Mean Absolute Error) = 예측값과 실제값의 평균 차이
        -   단위는 y와 동일 (낮을수록 좋음=적을수록 차이가 덜나는거니까)
        -    ex) MAE = 15 이고 y가 전환수(건)라면 → "예측이 실제와 평균 15건 차이난다"

5. 특징(Feature)과 특징 엔지니어링

  • 특징(Feature) : 모델에게 주는 입력 변수 = X
  • 특징 엔지니어링 : 어떤 특징을 모델에 넣느냐에 따라 성능이 크게 달라지므로 좋은 특징을 만들고 선택하는 과정
  • 특징 입력시, 이중대괄호 필수
# 특징이 1개일 때 (단순 회귀)
X = df[['광고비']]          # 광고비만 보고 전환수 예측

# 특징이 2개일 때 (다중 회귀)
X = df[['광고비', 'CTR']]   # 광고비 + CTR 둘 다 보고 예측 → 보통 더 정확해짐
더보기

※ 총 요약

# [데이터]
df (DataFrame) = 엑셀 시트처럼 생긴 표 형태 데이터

# [입력과 정답]
X = 모델에게 주는 정보 (광고비, CTR 등)  ← 이중 괄호 [[ ]] 사용
y = 모델이 맞춰야 할 정답 (전환수)        ← 단일 괄호 [ ] 사용

# [모델]
model = LinearRegression()   # 모델 생성
model.fit(X, y)              # 학습
model.predict(X_new)         # 예측

# [성능 평가]
r2_score(y, y_pred)              # R² — 설명력 (0~1, 높을수록 좋음)
mean_absolute_error(y, y_pred)   # MAE — 평균 오차 (낮을수록 좋음)
  • 단순히 평균내서 곱하는 것과 머신러닝의 차이는 무엇인지?
    1. 안써본 광고비 예측
    2. 여러가지 변수 고려 가능
    3. 예측 신뢰도도 수치로 표현 가능

[머신러닝 실습]

 

더보기

완전 경제학과 내용이네

갑자기 지난 몇 년이 헛되진 않았나 싶다가도 아 헛되게 공부를 안했구나 싶기도하고 아무튼 ..

인간의 뇌를 모방한다는 머신러닝

막상 모델 돌리는건 코드 1줄이라 맥락과 구조를 이해하는 게 중요한 것 같다