#Synthetic Control Methodとは
Synthetic Control Methodって何?
皆さんはSynthetic Control Methodという手法をご存知でしょうか?最近じわじわと日本でも話題になっている手法ですが、まだまだ日本語の文献、資料が少ないのでまずは概略だけでもざっくりとまとめさせていただきます。
Synthetic:人工的な、人為的な、合成された
というような意味の単語でして、Synthetic Control Methodとはざっくりいうと、「ある刺激が発生したAに対し、その刺激が発生しなかった場合の事象を人工的に合成して作成(Bとする)し、AとBを比較することで、その刺激による影響を測る」というもので、平たく言うとシミュレーションの一種であり、ABテストのペアの作り方の一つと捉えていただけると良いかと思います。
とはいえ、これだけではさっぱりかと思いますので、有名なSCMを用いた論文にカリフォルニア州におけるタバコ規制の影響を測ったものがあります。
英語になりますが下記で読めます。
Synthetic Control Methods for Comparative Case Studies: Estimating the Effect of California’s Tobacco Control Program (https://web.stanford.edu/group/hainmuellerlab/cgi-bin/wordpress/wp-content/uploads/2014/05/ccs.pdf)
タバコの論文の概要
これもざっくりまとめますと、カリフォルニア州だけタバコの規制が1988年に厳しくなったんですね。その影響で売上がどの程度減少したのか?といのをSCMを用いて推定している論文です。この事例では、SCMを用いることで、カリフォルニア州以外の州に重み付けをこない、それらを足し合わせることで仮想カリフォルニア州の売上を推定します。(他の州の売上を加重平均して、仮想カリフォルニア州の売上を作っています。)この論文の34ページが実際のカリフォルニア州と仮想カリフォルニア州の売上の推移のトレンドであり、87年にタバコの規制が施行されています。その結果、実際のカリフォルニア州では売上が減少し、他の州を合成して作成している仮想カリフォルニア州はその規制は施行されていないため(仮想カリフォルニア州は規制が行われなかった場合のカリフォルニア州となります)、売上に差が発生しています。この差分がタバコの規制によって減少したタバコの売上となります。
SCMの肝
このアプローチの肝は間違いなく「どれだけ高精度で仮想カリフォルニア州を作ることができたのか?」ということになります。刺激(タバコの例でいうと規制の施行)の前の期間(pre-period)において、うまく仮想カリフォルニア州を作れていなければ、刺激後の期間(post-period)において差分を測定しても、意味をなしません。そのため、pre-periodにおいて、MAPEやRMSEで実際のカリフォルニア州と仮想カリフォルニア州のズレが小さいことを確認することがSCMを用いる上で重要です
SCMを行うために
うまく仮想カリフォルニア州を作ることができれば結果の解釈は非常にわかりやすい分析であり、いろいろな事象に適応できるアプローチです。例えば、マーケティングの効果測定等でも(TVCMの効果を図りたいなど)十分行える上、従来の回帰分析を用いたMMM(マーケティング・ミックス・モデル)は多くの場合モデル作成者のさじ加減の影響が大きかったことを考えると今後は「SCMでMMMを」という流れが生まれるかもしれません。
その上で、SCMを行うためにはいくつか条件があります。
-
test(介入が行われた対象、カリフォルニア州)とcontrol(介入がない対象、カリフォルニア州以外の州)が必要
SCMではControl群を加重平均することで、介入のない場合の仮想testを作成し、実際に介入が起こったtestと比較します。そのため、介入が行われていないサンプルを作成する必要があります。 -
Control群を多めに
上記まで読んでいただくとおわかりかと思いますが、Control群の加重平均でうまく実際のtestを再現できないと、SCMはworkしません。そのため、ある程度多くのControl群を確保することが必要です。
例えば「TVCMであれば、北海道だけTVCMをうち、46都府県には打たない」「会員10000人へのDMであれば、1000人にはDMをうち、9000人には送らない」など、事前にしっかりと施策設計した上でないとこのアプローチはうまくworkしません。 -
時系列データである程度過去までデータを取得できること
pre-periodで仮想testを作成するので、分析に耐えうる程度に過去データが必要になります。(週次データなら52週くらいは季節性を考えてもあったほうが良いかも) -
差分が発生する程度の刺激であること
これはSCMに限らないのですが、「微妙にDMの文言を変えた」というような小さな刺激では、SCM(に限らず、統計的アプローチでは)その施策の結果を測定することは難しいです、ほぼ影響がないため、むしろ「差があるとは言えない」という結果になりがちです。(もちろんtabulationベースでポジティブ・ネガティブを評価することは可能ですが、というかそれしかできないというか。。。)
### おしまい
私の初めての記事で読みにくかったと思いますが、ここまでお読みいただきありがとうございました。
今後もぽつりぽつりと更新していきたいと思います。SCMのR packageについてや、generalized synthetic control methodについて、はたまたMAPEやRMSE、ツリーモデルに関して、などテーマは決めていませんがよければまたお読みいただけると幸いです。