オリエンテーション:この連載の地図と「データが許すこと」から考える理由
統計検定3級から、データ分析で意思決定を変えられる実務者になるまでの全体地図。手法ではなく「手元のデータが何を可能にするか」から考える理由と、連載で使う架空企業SOLNAを紹介します。
by Shin
なぜ多くの分析プロジェクトは「MMMをやろう」「upliftをやろう」と手法名から入り、そして動かないまま終わるのか。 答えは単純で、手元のデータがその手法を成立させる条件を満たしていないからです。順序が逆になっています。 この連載は、その逆転を直します。「持っているデータが何を可能にするか(アフォーダンス)」から手法を仕分ける思考の足場を作り、最終的には因果推論・効果検証の書籍を地図の中で読めるところまで連れて行きます。第0回はその地図そのものを渡す回です。
連載名は「データが許す範囲で考える ― マーケのための分析リテラシー」。教科書の代替ではなく、教科書に到達するための足場(橋)と判断レイヤーを提供します。
到達目標
この回を読み終えると、次のことができるようになります。
- 連載全体の地図を俯瞰し、各回が何を積み上げていくのかを位置づけられる
- 「手法先行」でプロジェクトが事故る構造を、自分の言葉で説明できる
- 自分の案件を「やりたいこと」ではなく「データのアフォーダンス」から眺める準備ができる
- 成熟度のステップ(記述 → 予測 → 因果 → 自動化)の上で、いま自分がどの段階にいるかを言える
前提
第0回なので前提知識は必要ありません。統計検定3級相当(平均・分散・割合、簡単なグラフの読み、確率の初歩、相関の概念)があれば十分です。むしろ「数式は得意でない」「文系出身で本格的な数学は社会人から」という人でも入れるように設計しています。区間推定・検定の実務的な解釈や、相関と因果を手法で詰めることは、これからこの連載でやることなので、いま分からなくて問題ありません。
なぜ「手法先行」で事故るのか
具体例から入ります。MMM(マーケティングミックスモデル)、uplift modeling、geo実験。この3つは華やかで、勉強会やブログでもよく見かけます。だから「うちでもやろう」となりやすい。
ところが、この3つはいずれも集計統計に依拠する手法で、サンプル数・分散・検出力に支配されます。成果イベントが少ない高単価B2B(たとえば1件数十万〜数百万のリードジェン)では、これらは工夫の問題ではなく原理的に成立しません。週次で十分なコンバージョンが貯まらないMMMは、もっともらしい数字を返してきますが、その数字は単にノイズを拾っているだけ、ということが起こります。
手法名から入ると、この罠が見えません。「自社に存在しないデータ量・データ構造を前提とした手法を選び、原理的に動かないものに工数を投じる」——これがいちばん典型的な事故です。
この連載を通して、繰り返し丁寧に解く誤解が2つあります。「相関 ≠ 因果」と「予測 ≠ 因果」です。手法先行の事故の多くは、この2つの混同に根を持っています。いまは「そういう区別があるらしい」とだけ覚えておけば大丈夫です。
アフォーダンス先行という発想 ― データが許す手法から仕分ける
アフォーダンスとは、対象(ここではデータ)が可能にする行為の集合のことです。「何がしたいか」ではなく「持っているデータが何を可能にするか」から発想を始めます。
なぜこちらが正しい順序なのか。理由は2つあります。
第一に、データから入ると、取引件数が少なく高単価のB2Bでは自然に「1件1件の質を上げる手法」に着地します。手法名から入ると、B2CやECのプレイブック(大量データ前提の手法)を誤って輸入してしまう。データから入れば、その誤輸入が最初から起きません。
第二に、新しいデータ源や新チャネルが増えるたびに、使える手法が積み上がっていきます。つまりアフォーダンス先行は単なる消極策(「できないことを諦める」)ではなく、能力を段階的に獲得していく前向きな順序になっています。
仕分けのとき、業態名(ECか/SaaSか/仲介か)では分類しません。手法の成立可否を決めるのは業態名ではなく、その下にある構造だからです。連載ではこれを6つの軸に集約して使います。第0回では名前だけ予告しておきます。
- 量(単位時間あたり成果イベントは何件出るか)
- 単価×サイクル(即時・自己完結か、長期・営業介在か)
- 識別性(匿名・集計のみか、ユーザー単位で個体を結合できるか)
- 反復性(一回限りか、継続・再購入があるか)
- 比較可能な単位(比較できる地域・店舗・市場が複数あるか)
- マッチング性(ユーザーとアイテムの照合があるか)
この6軸でデータを眺める準備ができれば、第0回の目的の半分は達成です。詳しい使い方は次回以降で実演します。
成熟度のステップ: 記述 → 予測 → 因果 → 自動化
手法は下から上へと昇ります。下の段が上の段の土台になる、という構造です。
記述(何が起きたか)
↓
予測(次に何が起きるか)
↓
因果(なぜ・打てば効くか)
↓
自動化(自動で打つ)この連載も、おおむねこのステップの順に進みます。第2回が記述、第3回が予測、第4〜6回が因果、第7回が時系列・ベイズ・MMMという上段の素養、第8回でそれらを施策と自動化に接続します。
ステップを一段上がらせる力が最も大きいのは、ランダム化(A/Bテストや、配信を止めて残しておく対照群=holdout)です。どんな業態でも、ランダム化できる面を作った瞬間に、観測ベースの手法が因果手法へ格上げされます。だから連載の後半では「新チャネルの導入」を、配信量を増やすことではなく「実験できる面を獲得すること」として扱います。ここは今ピンと来なくて構いません。第6回・第8回で改めて腑に落ちるはずです。
この連載の読み方(補助コラムの位置づけ・各回の型)
この連載は学習補助コラムであって、教科書ではありません。各回がやることは3つに固定されています。概念の地図を描く、架空企業SOLNAのデータで実演する、対応する書籍へ送り出す。深掘りは書籍に任せ、連載は「順序・つながり・判断」を与える役に徹します。
各回は次のテンプレートで構成します。型が決まっていると、読む側も「いまどのパートか」を見失いません。
- 到達目標 ― この回でフレームの何が自走できるようになるか
- 前提 ― 前回までで身についている想定
- 本文 ― 概念 → SOLNAでの worked example → コードの最小構成 → つまずきポイント
- 対応書籍と読みどころ
- フレームとの接続 ― この回が6軸・成熟度のステップ・接合率・意思決定接続のどこに当たるか
- 章末チェックリスト ― 自己診断用
登場する架空企業 SOLNA の紹介
コードと実演は、毎回この架空企業のデータで行います。回をまたいでテーブル名・カラム名を一貫させるためです。
SOLNAはD2Cスキンケアブランド。EC中心の定期購入(サブスク)モデルで、一部は百貨店カウンターと催事(ポップアップ)でも接点があります。チャネルはMeta / Google / LINE / YouTube広告、オーガニック、メール・LINEのCRM配信。基盤は自社EC(Shopify想定)+ GA4 BigQuery Export + 各広告媒体 + CRM/MA + レビュー/問い合わせテキストで、dbtでMart層まで構築済みという設定です。
なぜこの設定にするのか。SOLNAは「取引件数が多く、反復購入・会員識別・複数地域・配信面あり」という、ほぼ全部入りの構造を持っています。だから記述から評価指標、因果、因果ML、MMMまで、同一企業のデータで一通り実演できます。そして最終回(第8回)では、対照として取引件数が少なく高単価のB2B(オフィス仲介型)を並べ、「同じ手法が成立しない側」を見せます。同じ問いを2つの構造に当てると、なぜ答えが変わるのかが立体的に分かります。
データ地図(主なテーブル)は次のとおりです。結合キーは会員を表す customer_id と、行動を表す ga_client_id の2本です。
| テーブル | 粒度 | 主なカラム |
|---|---|---|
customers | 顧客 | customer_id, first_order_at, acquisition_channel, region, membership_tier, ltv_to_date, churned_flag |
orders | 注文 | order_id, customer_id, order_at, order_type, amount, product_id, last_touch_channel |
subscriptions | 定期契約 | subscription_id, customer_id, started_at, status, plan, n_cycles |
sessions | セッション | session_id, ga_client_id, customer_id, session_start, channel, gclid, fbclid, product_views |
ad_spend | 日×channel×region | date_day, channel, campaign, region, spend, impressions, clicks |
messages | CRM配信 | message_id, customer_id, channel, sent_at, holdout_flag, opened, clicked, converted |
reviews | レビュー | review_id, customer_id, product_id, posted_at, rating, text |
store_visits | 店舗/催事来訪 | visit_id, customer_id, region, store_type, visit_at |
まだ手法の話はしません。第0回は「どんな形の事業か」を記述で眺めるだけです。下のクエリ1本で、SOLNAの全体像(月次の新規顧客・注文・売上・広告費)をつかみます。
-- SOLNA の全体像を1枚で掴む: 月次の規模感を記述で眺める
-- まだ因果も予測もしない。「事業の形」を見るだけ。
with monthly_orders as (
select
date_trunc(date(order_at), month) as month,
countif(order_type = 'first') as first_orders,
countif(order_type = 'subscription') as sub_orders,
count(*) as all_orders,
sum(amount) as revenue
from `solna.orders`
group by 1
),
monthly_spend as (
select date_trunc(date_day, month) as month, sum(spend) as ad_spend
from `solna.ad_spend`
group by 1
)
select
o.month,
o.first_orders,
o.sub_orders,
o.all_orders,
o.revenue,
s.ad_spend,
safe_divide(s.ad_spend, o.first_orders) as cac_naive -- 素朴なCAC。真のCACは第2回で直す
from monthly_orders o
left join monthly_spend s using (month)
order by o.month最後の cac_naive には、わざと「素朴な」と名前を付けてあります。広告費を新規注文数で割っただけのこの数字には落とし穴があり、そこを直すのが第2回の仕事です。第0回では「全体の規模感をつかむ」ところまでで十分です。
到達点の本棚 ― 最終的に読めるようになる書籍マップ
この連載のゴールは2つあります。1つは診断フレームを自分で回せること。もう1つは、下に挙げる書籍を読んだとき、それぞれを地図の中に位置づけられることです。連載は各書への「橋」を架けるのが役割なので、ここで全体像を先に見せておきます。
| 書籍 | 主な配置回 | 役割 |
|---|---|---|
| 効果検証入門(ホクソエム) | 4・5 | 因果の土台・準実験デザイン |
| 評価指標入門(ホクソエム) | 3 | 予測モデルの評価 |
| 施策デザインのための機械学習入門(ホクソエム) | 6・8 | uplift・介入設計 |
| 森下『機械学習を解釈する技術』 | 3・8 | 解釈 / SHAP |
| Molak『Pythonライブラリによる因果推論・因果探索』 | 5・6 | 実装・DoWhy/EconML・探索 |
| 金本『因果推論』 | 4〜7 | 基礎〜ML〜時系列(連載を通して参照する理論の軸) |
| 久保『データ解析のための統計モデリング入門』(緑本) | 3・7 | GLM → 階層ベイズ |
| 松浦『StanとRでベイズ統計モデリング』(アヒル本) | 7 | ベイズ実装 |
| 馬場(ベイズ / 時系列) | 7 | ベイズ・状態空間の橋 |
理論の軸は金本『因果推論』で、第4〜7回を支えます。手を動かす側の土台はホクソエムの3冊(効果検証入門・評価指標入門・施策デザインのための機械学習入門)が担い、ベイズと時系列は第7回で緑本・アヒル本・馬場へ繋ぎます。
スタートライン診断(3級チェック)
現在地を確かめる簡単なセルフチェックです。できる側に偏っていれば第1回は復習として軽く流せます。まだできない側が多くても問題ありません。その溝を埋めるのが前半の仕事です。
できる(あれば十分なスタートライン)
- 平均・分散・割合の意味が分かり、簡単なグラフが読める
- 確率の初歩(同様に確からしい、独立など)が分かる
- 相関という言葉の概念を説明できる
まだできなくてよい(これから連載で身につける)
- 信頼区間や検定が「何を言っていて、何を言っていないか」を説明できる
- 回帰の係数を「意味」として読める
- 相関と因果の違いを、なんとなくではなく手法で詰められる
- 予測と因果が別物である理由を説明できる
フレームとの接続
この回は診断フレームの最上流に当たります。具体的には、フレームの目的と設計思想(なぜアフォーダンス先行か、なぜ業態名で分類しないか)、そして成熟度のステップ(記述 → 予測 → 因果 → 自動化)の全体像を渡しました。6軸・接合率・手法カタログ・意思決定接続といった個別の道具は、次回以降で1つずつ手に取っていきます。
自社で成立するかを判断したい人へ
この連載(lab)が担うのは「どう実装するか(HOW)」です。一方で「自社のデータで、その手法が本当に成立するか(WHAT / WHY)」という判断は、対になる記述・予測編〔/insights/real-outcome-and-prediction〕で扱っています。実装に入る前に、まずこちらで判断の軸を持っておくと迷いません。
本連載の実演に使うSOLNAは取引件数が多く反復購入のある複数地域のD2Cで、後半で扱う手法の多くが「成立する側」の例になります。ところが同じ手法でも、取引件数が少ない・高単価・営業介在のB2Bでは成立条件がしばしば逆になります(たとえば比較できる地域が作れずDiDが組めない、成果ラベルが少なく平均効果すら不安定、など)。記述・予測編は、まさにその取引件数が少ないB2Bの匿名事例で「成立しない側/代わりに何をするか」を示しています。両方を並べて読むと、手法の成否を決めているのが業態名ではなく構造であることが立体的に分かります。
章末チェックリスト
- 「手法先行」で事故る構造(持っていないデータを前提にしてしまう)を説明できる
- アフォーダンス先行が、消極策ではなく能力を積み上げる順序である理由を言える
- 成熟度のステップ4つを順に挙げ、次の段階へ進ませるのがランダム化だと言える
- SOLNAの構造(取引件数が多く、反復購入・会員識別・複数地域・配信面あり)を一言で説明できる
- 連載のゴール(フレームを回せる/書籍を地図に位置づけられる)を自分の言葉で言える
- 次回までに、自分の案件を6軸のうち「量」と「単価×サイクル」だけでも眺めてみた