📈

그래디언트 부스팅 모델을 이용하여 광고 예산 도출하기

Subtitle
Tag
데이터

들어가며

매출 향상을 위해 효과적인 마케팅 전략을 수립하는 것은 끊임없는 고민거리 입니다.
그 중에서도 각각의 특정 목적이나 미디어에 따라 적절한 예산을 할당하는 것은 매출에 직접적인 영향을 미치기 때문에, 데이터를 기반으로 한 의사 결정이 매우 중요합니다.
매드업에서는 이러한 문제 해결하기 위해, 3rd party 데이터를 활용해 광고 예산 분배에 따른 매출액을 예측하는 모델을 개발했습니다.

그렇다면 어떻게 최적의 예산을 도출할 수 있을까요 ?

최적의 예산을 도출하기 위해서는 먼저 마케팅 데이터의 특징을 이해해야 합니다. 모델에서 다루는 데이터는 과거의 광고 캠페인이나 프로모션에 투자된 예산과 그로부터 얻은 매출을 기록하고 있습니다. 이를 통해 우리는 지난 해에 광고에 투자한 비용과 매출을 추적하여 미래의 예산 배분을 더욱 효율적으로 구성할 수 있습니다. 또한, 광고는 다양한 유형과 채널을 통해 전개되는데요, 각 광고 유형과 채널은 서로 다른 비용과 다른 매출을 가져올 수 있습니다. 더불어 광고가 전개된 시기나 특정 이벤트와의 연관성도 중요합니다.
이러한 데이터 특징들을 종합적으로 고려해보았을 때, 저희는 CatBoost와 XGBoost 모델을 통해 이 문제에 효과적인 해결책을 제시하였습니다. 이들 모델은 각각의 프로모션 유형과 예산, 그리고 과거 매출 데이터를 종합적으로 고려하여 매출에 미치는 영향을 분석합니다. 이를 토대로 다음 달의 매출을 예측하고, 예산을 조정함으로써 미래의 성과를 더욱 향상시키는 전략을 수립할 수 있습니다.

Step 1. 데이터 특성 파악하기

목적 : 예측 모델 개발을 위한 각 Feature 별 상관관계 파악
데이터 개요 : 2023년 2월 15일 ~ 2024년 04월 15일 까지 (1.2년)
1.
주요 변수 추가
날짜를 기준으로 ‘요일’, ‘주중/주말’ 등 예측 변수에 영항을 줄 가능성이 있는 변수를 추가하였습니다.
2.
상관관계 분석
광고 비용와 Paid 매출 및 구매 간의 관계:
광고 비용은 paid 매출과 구매와 강한 양의 상관 관계를 보입니다. 이는 광고에 투자할수록 paid 매출과 구매가 증가할 가능성이 높다는 것을 시사합니다.
광고 비용와 앱 설치 수 간의 관계:
광고 비용과 앱 설치 수 간에는 강한 양의 상관 관계가 있습니다. 이는 전반적인 광고 비용이 증가할수록 앱 설치 도 함께 증가할 가능성이 있다는 것을 시사합니다.
광고 비용와 조회수 간의 관계:
광고 비용과 조회수 간에는 상관 관계가 매우 약합니다. 이는 광고 비용과 조회수는 거의 관련이 없는 것으로 간주될 수 있습니다.

Step 2. 데이터 시각화 분석하기

다음으로 시계열 데이터의 자기상관 함수(ACF)와 부분자기상관 함수(PACF)를 통해 현재 값과 과거 값 사이의 관계를 확인할 수 있습니다. 이 함수들은 시차(lags)만큼 이동시킨 자기자신과의 관련도를 보여준다고 이해하시면 되는데요.
아래 이미지와 같이 ACF에서 지속적으로 양수 또는 음수 값을 보이는 경우, 데이터가 자기상관을 갖는 경향이 있다는 것을 알 수 있습니다. 이는 데이터가 이전 값과 일관된 패턴을 가지고 있다는 것을 의미하고 있습니다.
[A 캠페인] ACF 시각화
PACF를 통해서는 갑자기 감소하는 구간이 나타나는 경우, 데이터의 시차에 따른 부분 자기상관을 고려할 수 있는데요, 이는 특정 시점 이전의 데이터와 현재 데이터 간의 관계를 고려할 때 뚜렷한 변화가 있다는 것을 알 수 있습니다.
[A 캠페인] PACF 시각화

Step 3. 예측 모델 구축하기

본 분석에서는 CatBoost XGBoost 라는 머신러닝 모델을 사용했습니다. 이 두 모델은 그래디언트 부스팅 알고리즘을 기반으로 하며, 트리 기반 앙상블 학습 방법을 사용합니다. 그래디언트 부스팅 이란, 이전에 만들어진 트리의 오차를 보완하는 새로운 트리를 순차적으로 추가하여 모델을 개선하는 방법이며, 트리 기반 앙상블 학습 방법 이란, 여러 결정 트리를 조합하여 더 강력한 모델을 만드는 방법입니다.
CatBoost 범주형 데이터를 다루는 데 특히 강점을 가지고 있으며, 자체적인 정규화와 파라미터 튜닝 기능을 제공하여 모델의 안정성과 성능을 향상시킬 수 있습니다. 반면 XGBoost 뛰어난 예측 성능과 확장성을 제공하며, 이상치 처리 기능을 통해 과적합을 방지하고 일반화 성능을 향상시킬 수 있습니다. 2가지의 모델을 사용한 이유는 마케팅 데이터의 특성 상 매출이 0원이거나 미운영인 경우가 존재하여, 프로모션별 데이터가 서로 다른 특징을 가지고 있기 때문에 각 데이터 특성에 맞는 모델을 선택하였습니다.
3-1. 데이터 전처리
1.
EDA를 통해 데이터의 특성 파악 및 ADF&ACF 검정, 로그 변환 등의 전처리를 수행합니다.
ADF&ACF 검정 : 단위근 존재 여부를 통해 시계열 데이터가 *정상성 데이터인지 확인합니다.
정상성 : 데이터가 시간과 관계 없이 일정한 성질을 가지는 것
ADF Statistic : -5.027550831 / p-value : 0.0001832426
ㄴ p-value < 0.05 이므로 귀무가설을 채택 (즉, 해당 데이터는 비정상 시계열 임을 알 수 있습니다.)
로그 변환 : 로그 변환 적용을 통해 분산 안정화 및 이상치에 대한 강건성 확보하였습니다.
[A 캠페인] 로그변환 전, 분산이 불안정함
[A 캠페인] 로그변환 후, 정규분포에 가까워짐
3-2. 변수 중요도 검사 및 파생 변수 추출
변수 중요도를 평가하여 모델에 가장 영향력 있는 변수를 식별하고, 적절한 파생 변수를 추출합니다.
이때 사용되는 지표는 아래와 같습니다.
비즈니스 content : 통합 매출(종속 변수), 앱 설치, 구매, 지출 금액, 통합 구매
미디어 & 마케팅 : 빅 프로모션 운영 여부, 네이버 키워드 검색량
외부 요인 : 계절성, 성수기 여부, 휴일 여부
시간 정보 : paid 매출에 대한 Lagging과 Rolling, 차분 등 과거 시계열 정보(4주/7주/12주)
Lagging: 데이터를 N칸 뒤로 밀어 N기간 이전 데이터를 가공한 독립변수
Rolling: N기간 동안의 통계량을 예측 변수로 활용하여 잡음의 영향을 줄이고 단기 트렌드 반영
차분: 연이은 관측값들의 차이를 계산함으로서 추세 감소
3-3. 모델 최적화
Cross-validation 및 hyper-parameter tuning을 통해 모델을 최적화하고, 예측 성능을 향상시킵니다.
3-4. 프로모션 별 데이터 분리 및 모델 학습:
프로모션 기준으로 Paid 성과 데이터를 분리하여 각각의 데이터 셋으로 구성합니다.
학습 데이터를 기반으로 다음 달의 매출을 예측하기 위해 프로모션 별 모델을 학습시킵니다.
3-5. 예측 수행
5월의 광고비 예산을 기반으로 프로모션 별 광고비 비율을 조정하고, 이를 사용하여 각 매출액을 예측합니다. 결과적으로 조정된 비율을 통해 월별 최적의 ROAS가 나오는 비중을 도출합니다.

Step 4. 결과

4-1. 평가 지표
MAE (Mean Squared Error)
MSE는 예측값과 실제값 사이의 오차의 제곱의 평균을 나타냅니다.
작을수록 모델의 예측이 더 정확하다고 해석할 수 있습니다.
MSE (Mean Squared Error)
실제값에서 예측값을 뺀 값의 제곱의 평균을 나타냅니다.
작을수록 모델의 예측이 더 정확하다고 해석할 수 있으며, MAE보다 큰 오차에 더 큰 패널티를 주는 특성이 있습니다.
MAPE (Mean Absolution Percentage Error)
예측값과 실제값 사이의 백분율로 나타낸 절대적인 오차의 평균을 나타냅니다.
역시 작을수록 모델의 예측이 더 정확하다고 해석할 수 있으며, 오차를 백분율로 나타내기 때문에 예측값의 스케일에 따라 해석이 달라질 수 있습니다.
4-2. 예측 결과
2024년 3월 15일까지의 데이터를 바탕으로, 예산 n억원을 기준으로 5월의 캠페인별 매출을 예측하였습니다.
예측 정확도를 측정하기 위해 전체 기간 중 20%의 데이터를 평가에 사용했습니다.
이때 사용된 평가 지표인 MAE, MSE, MAPE는 모델의 성능을 평가하는데 사용되며, 값이 0에 가까울수록 모델의 성능이 높다고 판단할 수 있습니다.
최적의 ROAS (= 통합 매출액 / 통합 광고액) 선택 기준은 조정된 비율을 통해 예측된 결과 중 월별 가장 높은 ROAS가 나오는 것으로 선택했습니다.
예측 결과는 A 캠페인 : B 캠페인 = 75% : 25% (예상 ROAS 2098%)
1.
A 캠페인 예측 결과
MAE=0.099, MSE=0.016, MAPE=0.005
ㄴ 모든 지표의 값이 0.1 이하로 나타났으며, 이는 모델의 성능이 상당히 우수하다고 볼 수 있습니다.
2.
B 캠페인 예측 결과
MAE=0.067, MSE=0.007, MAPE=0.003
ㄴ 역시 모든 지표의 값이 0.1 이하로 나타났으며, 이 모델 또한 예측 성능이 우수하다고 볼 수 있습니다.

Step 5. 특성 중요도 importance features

특성 중요도란, 각 특성(feature)이 모델 예측에 얼마나 중요한 역할을 하는 지를 나타냅니다. 이 중요도를 통해 어떤 특성이 모델 예측(매출)에 큰 영향을 미치는지를 파악할 수 있습니다.
1.
A 캠페인의 특성 중요도 (CatBoost)
통합 구매 > 지출 금액 > 앱 설치 수 > 프로모션 여부 순으로 모델의 예측에 높은 영향력을 기록하였습니다.
1.
B 캠페인의 특성 중요도 (XGBoost)
네이버 키워드 검색량 > 통합 구매 > 과거 매출액 > 시간대 순으로 모델의 예측에 높은 영향력을 기록하였습니다.

마무리

예산에 따른 매출을 예측하는 것은 효과적인 마케팅 전략을 수립하는 데에 중요한 역할을 합니다. 이때 CatBoost와 XGBoost와 같은 머신러닝 모델을 활용하여 이러한 예측을 수행할 수 있으며, 이를 토대로 프로모션 예산을 효율적으로 책정할 수 있습니다. 이러한 제안을 통해 기업은 광고 예산을 더욱 효과적으로 활용하여 매출을 극대화할 수 있을 것으로 기대됩니다.
디지털 마케팅 전략, 퍼포먼스 마케팅 제안, CRM 등 그로스 컨설팅, 솔루션 제안 등 도움이 필요하시면 Data/Tech 기반으로 서비스 및 브랜드들 성장에 특화되어 있는 디지털 마케팅 에이전시 매드업에 문의해주세요