サーモンとインターネット広告とマルコフ転換モデル | インターネット広告代理店で働くデータサイエンティストのブログ

みなさんこんにちは。今回は安井(@housecat442)が担当させていただきます。

最近軽めの記事を書くことが多かったので今回は手法解説を書かせていただきます。前回さりげなくマルコフ転換モデルやりますと言ってしまっていたので、マルコフ転換モデルについて解説いたします。


恐らく多くの人が途中で離脱すると考えられるので、要点だけ先にw

マルコフ転換モデルをインタネット広告で使うと、
データが手に入らないような事象のインターネット広告への効果が解る。
という事だけ覚えておいてほしいです。



さて、大半の方が「マルコフ転換モデルってなんぞや?広告になんか関係あるの?」という感じだと思うのでGMMの時と同様に、インターネット広告との関係性とこの分析手法の何が嬉しいのかを説明してからマルコフ転換モデル自体をイメージで説明しようかと思います。

アジェンダ的なもの
1. マルコフ転換モデルが出来る事。
2. マルコフ転換モデルを使ってインターネット広告で出来る事。
3. マルコフ転換モデルの説明。







1. マルコフ転換モデルが出来る事。

マルコフ転換モデルとはレジームスイッチングモデルの一種です。(何ぞやって感じですね)

レジームスイッチングモデルとは、外部的な要因によって見ようとしている関係性の構造が変化してしまっている事を考慮したモデルの事です。

うん、やっぱり意味が不明な気がするのでちょっと具体例を使いましょう。





仮にサーモンの養殖をしているとしましょう。

養殖でより高い利益を出すためには、餌の投入量(生簀に入れる量)とサーモンの体重の増加の関係性を知ることがとても重要になります。

餌にはコストがかかりますが、それによって体重が増えれば生産量が増えることになるので売り上げが上がります。




何かしらの統計解析によってサーモン一匹当たり1kgの餌投入量を増加させるとサーモンの体重が500g増加するという結果が出たとします。つまり、投入した餌の50%が体重になるわけです。(この値をfeed conversion rateと言ったりします)

もしサーモンの体重を来月までに+3kgしたいとすれば、上の結果を参照して一匹当たり6kgの餌を追加で投入すれば良いという事になります。

しかし、この結果に従って餌を一匹当たり6kg投入したものの体重はわずかに1kgしか増えませんでした。いったいなぜでしょうか?



そもそもデータ分析で生命という複雑なものの動きを予測する事が無理だったのでしょうか?

答えはもちろんノーで、本当の理由は餌の投入量と体重の変化の関係性に状況変化が起こっているからです。





実はサーモンは水温によって大きく食欲が左右されてしまう魚で、水温が低い時に幾ら大量にえさを投入しても餌の殆どは無視されて海底にむなしく沈んでしまいます。




水温が低い時期の餌の増加量と体重の増加量の関係性を測ってみると、先程の結果とは大きく異なり関係性がかなり薄くなっていることが解るはずです。


さて、ちょっとまとめると今こんな事態に直面しています。
1. 餌の投入量と体重の増加の関係性を知りたかった。
2. その関係性自体が水温という要素によって変化するものだった。


こういった時に使われる分析方法がレジームスイッチングモデルというものです。

一般的に使われるものに閾値モデル(Threshold model)というものと、平滑推移モデル(Smooth transition model)、そしてマルコフ転換モデル(Markov Switching Model)というものがあります。



閾値モデルは上の例で行くと、

気温が一定以下の時にはfeed conversion rateが10%で、一定以上の時には50%になる

という関係性を見つけ出す時に使われます。




平滑推移モデルは

feed conversion rate が (10 + 0.5 * 水温) という式で計算できる

という事を示したいときに使われます。(水温が10度だったら15%で、20度だったら20%といった感じです。数字は適当です。)




さて、閾値モデルと平滑推移モデルの二つのモデルは

気温が魚の食欲に関係しているという事が解っており、かつ餌と体重のデータに加えて気温のデータも取得できている

という状況にしか使うことが出来ません。




この問題をある程度解決してくれるものがマルコフ転換モデルで、

気温がfeed conversion rate に効いているのは解っているのだけど、データとしては持っていない
(=上の二つのモデルは使えない)

という状況の時に

気温が高かったときにはfeed conversion rate が50%で、低かったときには10%

という事を教えてくれます。





2. マルコフ転換モデルを使ってインターネット広告で出来る事。


何かが知りたい関係性に影響を与えているのが解っているのだけれども、データとしては持っていない。

そういう状況で使えるのがマルコフ転換モデルです。

これを前提で考えればインターネット広告の分野においても様々な状況で使えることが容易に想像できます。

ネット広告代理店としてはオフライン広告のデータが中々入手できないという難点があるのでその様な状況を打開する一手として使っていますし、競合の入札情報などもデータとして手に入らない為にマルコフ転換モデルが活用できる余地があります。

またデバイスに対する信頼度みたいなものもがネット広告に対するリアクションの変化に影響すると仮定するのであれば、長期的なデータをマルコフ転換モデルで分析する事によってスマホに対する信頼度がどの様に変化してきているかといった興味深い事も見ることが出来るでしょう。





3. マルコフ転換モデルの説明(イメージ)。


さて、やっと本題です。

ここのパートはマルコフ転換モデルを使うすべてのアナリストに共通する「このモデルをどうやったら納得して理解してもらえるんだ・・・?」という絶望感をある程度緩和しようという試みです。
正当性は割と放棄されていますし、誤解を招くような説明であるとも思います。もし、もっと上手く説明できる方がいたらお願いします。。。

マルコフ転換は早い話、データ持ってないけどその効果がわかっちゃうよというまるで怪しい占い師みたいな手法です。これをそのまま提案に使えば帰れと言われてしまいます。また、分析手法自体も初歩的な統計学よりも多少高度な事をしているので説明の難易度は高いといえるでしょう。


さて、y と xというj時系列データを持っているとします。(本当はインターネット広告のネタを使って説明したいところですが、あんまりネタを明かしすぎると怒られるのでここは抽象的に書かせて頂きます。)

y=ax という関係を仮定して回帰分析を行うと以下の様になります。(先程の例で行くとxが餌の量でyが体重で、aがfeed conversion rateになります)


aが推定されるわけなのですが、実際のところは下の図のように赤と青のレジームに解れています。




a①は水温が低く、餌を投入してもあまり体重が増加しない時のfeed conversion rateで、a②は水温が高く餌を投入すれば順調に体重が増加するときのものになっています。
データの時系列性を無視してクロスセクションでとらえると、「持っているデータは水温が高い時と低い時の両方が混ざり合っている物」として捉えることが可能です。(かっこいい言い方をすると、持っているデータが混合分布を持っていると考えるとかになるんですかね)

しかし、水温が低い時にも偶然体重が増えるときがありますし、水温が高くても体重があまり増えない時もあります。
よっぽど大きな変化が無い限りは、それらの結果がまじりあっているエリアが生じることになります。(図で赤の点と青の点がまじりあっている部分)

そして、実際のデータに色はついていないので、どのデータがどっちの状況から発生したものかが解りません。


ここに時系列の考え方を持ち込みます。

aの時系列データがあると考えましょう。

もし水温が低いけれども偶然良い感じのa = feed conversion rateが出たとすればその次の日のaは恐らく元の水準に戻るでしょう。


逆にもし高い水準のaが続いているのであれば、水温が低いけど偶然その結果が続くという可能性はかなり低い為にその期間で状況(水温)が変化していると考える事が可能です。

この様に状況の変化が単発でなくある程度持続すると考えるのであれば、時系列の情報から赤と青が入り混じった部分の判別を掛けることが出来ます。(この辺はフィルター化確率を全時点で計算するのと同じな気がしています)


つまり、
「持っているデータは二種類の物が混じっている物で、aの値を見ることでそれを分けることが出来ると考え、曖昧な部分は時系列の情報で見分けることが出来る。」
というのがマルコフ転換モデルのイメージです。




まとめ

1. マルコフ転換モデルはレジームスイッチングモデルの一つ。
2. レジームスイッチングモデルは見たい関係性が何らかの要因で変化してしまう時に、その変化すらも加味したモデルを作る為に使う。
3. マルコフ転換モデルはその中でも特に「何らかの要因のデータが手に入らない時」に使う。
4. 分析ロジックのイメージとしては、データが二つの状態からもたらされていると考えて、回帰のパラメーターの大きさと時系列の情報を使ってどちらの状態からデータが生成されているかを考える。
5.インターネット広告ではネット外でのマーケティング活動や、競合の動きといったデータが手に入らない為に必要で、使えるととっても嬉しい。



一見魔法の杖の様に見える分析ですが、詳細に考えればマルコフ転換が使えない局面も多く存在している為、万能な解決方法であるとは言えません。
しかし、それでもインターネット広告代理店として直面する問題に対する解決の一端を担う事の出来る手法だと認識しています。