Meta Robyn入門:Rで始めるオープンソースMMM分析
Meta(旧Facebook)が開発したRobynは、世界で最も広く使われているオープンソースのMMMツールの1つです。本記事では、Robynのインストールから実際のモデル構築、予算最適化まで、Rコードとともにステップバイステップで解説します。
Robynとは?
Robynは、2021年にMetaがオープンソースとして公開したR言語ベースのMMMパッケージです。Meta社内で蓄積されたMMMの知見が凝縮されており、特に自動化と再現性を重視した設計が特徴です。
Robynの主要な特徴
| 特徴 | 詳細 |
|---|---|
| 統計手法 | Ridge回帰(L2正則化) |
| アプローチ | 頻度主義(ベイズではない) |
| 最適化エンジン | Nevergrad(Metaの進化最適化ライブラリ) |
| ハイパーパラメータ | 自動チューニング(Adstock、飽和曲線など) |
| 予算最適化 | 組み込み機能として提供 |
| 可視化 | パレートフロント、分解チャート等の自動生成 |
| 言語 | R(Python版は非公式) |
| ライセンス | MIT License |
Robynのアーキテクチャ概要
入力データ(売上 + メディア支出 + コントロール変数)
│
▼
┌──────────────┐
│ Adstock変換 │ ← Geometric or Weibull減衰
└──────┬───────┘
▼
┌──────────────┐
│ 飽和曲線変換 │ ← Hill関数
└──────┬───────┘
▼
┌──────────────┐
│ Ridge回帰 │ ← L2正則化
└──────┬───────┘
▼
┌──────────────┐
│ Nevergrad │ ← 多目的最適化(NRMSE × 分解距離)
│ 最適化 │ 数千のモデル候補を自動探索
└──────┬───────┘
▼
┌──────────────┐
│ パレート選択 │ ← 最適モデル群の自動選定
└──────┬───────┘
▼
結果出力(チャート + CSV + モデルオブジェクト)
環境構築
Step 1:R と RStudioのインストール
- R(バージョン4.0以上推奨)をCRANからインストール
- RStudio(推奨IDE)をインストール
Step 2:Robynのインストール
RStudioのコンソールで以下を実行します。
# CRANからインストール(安定版)
install.packages("Robyn")
# または、GitHubから最新版をインストール
# install.packages("remotes")
# remotes::install_github("facebookexperimental/Robyn/R")
# 依存パッケージの確認
library(Robyn)
# Nevergradのインストール(Python環境が必要)
# RobynはreticulateパッケージでPythonのNevergradを呼び出す
# install.packages("reticulate")
reticulate::install_python(version = "3.9")
reticulate::py_install("nevergrad", pip = TRUE)
注意: RobynはPythonのNevergradライブラリを内部で使用するため、PythonとNevergradのインストールも必要です。reticulateパッケージを介してR-Python連携が行われます。