Meta MMM Robyn Walkthrough 02 - 로빈 데이터 로드

Meta MMM Robyn Walkthrough 02 - 로빈 데이터 로드

로빈을 돌려보기 위한 환경을 만드는 것은 지난 글에서 끝냈습니다. 이번에는 로빈에 데모 데이터를 넣는 부분까지 진행해보겠습니다. 어려운 내용이 아니고 분량이 짧으나 이미지가 많아서 참고하기 쉬울 것입니다.

Robyn 깃헙에서 demo.R 파일 복사해서 저장

로빈을 가볍게라도 한번 돌려볼 수 있도록 Meta가 튜토리얼을 만들어 놓았습니다. 이 내용이 demo.R 파일에 들어있습니다. 그래서 우리는 이 파일의 내용을 복사해서 파일로 만들어놓고, 한 줄 씩 실행해보면서 경험을 쌓아볼 수 있습니다. 내용을 복사할 파일은 아래 링크에 있습니다.

github copy raw file
copy raw file로 코드를 복사

코드를 복사한 후, R Studio 좌측 상단에 있는 새로운 파일을 만드는 아이콘을 클릭해 'R Script' 파일을 하나 만듭니다.

create R script in R Studio

이렇게 하면 화면에 빈 영역이 하나 생기고요, 복사한 코드를 여기에 붙여넣고 적당한 이름으로 저장합니다. 결과적으로 아래와 같은 상태가 됩니다.

R Studio with code editor
R 스크립트 안에 우리가 실행할 내용들이 들어있음

이제 필요한 스크립트도 저장을 했으니 이제 로빈을 실행시켜 보죠.

Robyn - Step 0 to Step 1

복사한 스크립트를 보면 아래 표시해놓은 부분 처럼 Step 들이 있습니다. 로빈을 실행하고 결과를 뽑아보기까지 중요한 단계들을 구분해놓았다고 보면 됩니다. 이번 글에선 Step 0 부터 Step 1 까지 해볼거에요.

Step 0: 환경 설정

로빈 라이브러리를 불러오는 것, R Studio가 멀티 코어를 사용할 수 있게 하는 것, 그리고 최종 결과를 저장할 수 있도록 하는 것을 설정하는 단계입니다.

복사한 R 스크립트를 보면 # 기호로 시작하는 녹색 글자들이 많이 있죠? 이 부분은 주석(comment) 이라고 부르고, 컴퓨터가 실행하지 않는 내용입니다. 결국 이것을 읽는 사람이 참고할 설명문이죠. 우리가 컴퓨터에 입력해야 할 실제 코드는 녹색이 아닌 부분입니다. 아래 이미지를 볼까요?

R Studio code execution
녹색이 아닌 한 라인을 복사한 뒤, 아래쪽 콘솔에 붙여넣고 엔터를 누르면 코드가 실행됨

녹색이 아닌 library(Robyn) 을 복사해서 아래쪽 콘솔 창에 붙여넣고 엔터를 누릅니다. 이렇게 되면 library(Robyn) 이란 명령을 컴퓨터가 수행합니다. 이것의 결과로 로빈 라이브러리가 불러와지는 것이죠. 이제부터 불러온 라이브러리를 활용할 수 있게 됩니다.

Step 0에 있는 아래 코드들을 복사해서 실행해주세요.

library(Robyn)
Sys.setenv(R_FUTURE_FORK_ENABLE = "true")
options(future.fork.enable = TRUE)
create_files <- TRUE

Step 1: 데이터 로드

여기서부터는 빠르게 가보죠. 로빈 패키지에는 테스트용 데이터가 들어있습니다. 이것을 로드하겠습니다. dt_simulated_weekly 라는 데이터입니다.

data("dt_simulated_weekly")

데이터가 로드되면 아래 그림처럼 해보세요. 이 데이터가 어떻게 생겼는지를 눈으로 확인할 수 있습니다. 로드된 데이터에서 스프레드시트 아이콘을 클릭하면 데이터를 조회할 수 있습니다.

View() in R

summary()로 데이터를 요약할 수도 있습니다.

summary(dt_simulated_weekly)

이렇게 하면 콘솔 상에 데이터를 요약한 정보가 표시됩니다. 데이터 특징이 이렇게 표시되죠. 어떤 컬럼들이 있는지, 날짜는 언제부터 언제까지인지, 타입이 다른 데이터는 무엇인지 등 하이레벨로 데이터를 파악할 수 있습니다.

summary() in R

다음으론 역시 Meta가 만든 예측 모델인 Prophet에 포함된 전세계 공휴일 데이터를 로드합니다.

data("dt_prophet_holidays")

MMM의 장점 중 하나가 이거죠. 마케팅 캠페인 데이터가 아닌 외생변수 데이터까지도 같이 활용할 수 있다는 점. 예를 들어 공휴일에 따른 시즈널리티가 최종 수익에 어느정도로 영향을 주었을지에 대해서도 모델이 판단할 수 있도록 이것을 데이터로 넣어줄 수 있습니다.

마지막으로 모델의 아웃풋이 어디에 저장되어야 할지 세팅하는 부분도 있습니다. 아래처럼 입력하면, 최종 결과 데이터는 맥북의 데스크탑 디렉토리에 저장됩니다.

robyn_directory <- "~/Desktop"

마치며 - 다음 단계

데이터 로드가 끝났으니 이제 본격적으로 로빈 모델을 세팅해야 합니다. 이어지는 글에서 자세하게 다룹니다.