渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

Lightweight MMM:NumPyroで実装されたベイジアンMMMフレームワーク


以前「Ads carryover & shape effects付きのMedia Mix Modeling」という記事で取り上げたベイジアンMMMのtechnical report (Jin et al., 2017)ですが、当時RStanで実装されていたものが4年の時を経て時代の趨勢に沿う形でPythonベースのOSSとしてリリースされています。


それがLightweight MMM (LMMM)です。ベイジアンモデリング部分はNumPyroによるMCMCサンプラーで実装されており、さらにはモダンなMMMフレームワークにおいて標準的とされる予算配分の最適化ルーチンも実装されています。全体的な使い勝手としては、まだ開発途上の部分もあるので時々痒いところに手が届かない感があるものの、概ねRStanで実装したものと似たような感じに仕上がっているという印象です。


ということで、LMMMがどんな感じで動くかを簡単に紹介してみようと思います。基本的にはGitHub上のdemoに沿った話題に留まりますが、復習も兼ねてベイジアンMMMの仕組みについても簡単に触れていくつもりです。

Disclosure of conflicts of interest

LMMMの開発チームとid:TJO同じ企業に所属しています。また、Colaboratory (Colab)はその所属企業のプロダクトです。

続きを読む

VARモデル補遺(備忘録)

もう9年も前のことですが、沖本本をベースとした計量時系列分析のシリーズ記事を書いていたことがあります。その中で、密かに今でも自分が読み返すことがあるのがVAR(ベクトル自己回帰)モデル関連の記事です。


なのですが、仕事なり趣味なりでVARモデルを触っていると「あれ、これってどうなってたんだっけ」という事項が幾つか出てきて、しかも上記の自分のブログの過去記事を当たっても出てこないケースがちらほらあるんですね。


ということで、今回の記事ではネタ切れで新しく書くことが思い付かないのでVARモデル周りで「最近になって調べて行き当たったこと」を備忘録的に補遺として書き留めておくことにします。とはいえ微妙に技術的な話題を含むので、いつもながらですが誤りなどありましたらコメントなどでご指摘くださると助かります。

続きを読む

新型コロナウイルス感染症の「真の」感染拡大状況を検索トレンドから何となく推測してみた

新型コロナウイルス感染症(COVID-19)のパンデミックに収まる気配が全く見られず、この記事を書いている2022年8月9日時点でも日本はオミクロン系統BA.5変異株を主体とする第七波に見舞われている有様です。東京でも毎日のように2万〜3万人という新規陽性者数が報告され続けていて、各種報道でも「検査体制の飽和(破綻)」が叫ばれるような事態となっています。


で、検査体制が飽和していて「真の陽性者数」が分からないとなると、実際にはどれくらいコロナの感染拡大が深刻化を正確に見積もるのも難しいということになります。そこでオープンデータからある程度真の陽性者数を見積もることが出来ないかなと考えていたら、灯台下暗しということで身近にありました。Googleトレンドの検索トレンドデータです。これである程度特徴的な検索ワードのトレンドを見ることで、実際の感染拡大状況がどれほどのものか見積もれるのではないかと思ったのでした。


ということで、このブログでは珍しいことですが検索トレンドデータに対して簡単な「定性的な分析」を行うことで、コロナの感染拡大状況の推定をしてみようと思います。いつもながらですが、分析に関しておかしな点・不備な点などありましたら何なりとご指摘くださると幸いです。

続きを読む