深層学習

今のAIはディープラーニングだとかいうより、マーケティングオートメーションを総称してAIと呼んでいる感じがする。だからAIの中身がロジスティック回帰だったとしても別にいいのだろうし、データの収集、解析、アクションまで一貫して実施するものをAIと呼んでいるのだ。きっと。

だからAI界隈のmemeとして個人的に一番好きな「それAIって言ってますけどただのロジスティック回帰ですよね?」みたいなことはもはやどうでもいいのだろうと思う。

 

そもそも行動ログ分析系にAIがあまり役に立たない理由はいくつかある。

・生データの投入ができない

・隠れ層内のニューロンが持つ「意味」が判別できない

・重要なのは要因分析

 

生データの投入ができない

画像データとは異なり(とはいえ画像データもピクセル数や色素数を調整する必要があるという点で本当にそのまま入れられるわけではないが)、行動ログデータの解析には必ずといっていいほどデータの整形と変数の作成が必要になる。生データをそのまま突っ込んで特徴抽出を通じて特徴量を自動的に作成することを深層学習の利点だとすれば、人間が自身で作成した恣意的な変数群から潜在変数を抽出するのでは深層学習の精度にも限界がある。

 

隠れ層の意味

そうやって投入した生データから生成された隠れ層は、画像データの場合には目視でどんな意味を持つ特徴量なのか名前をつけることができる。さしづめ因子分析で生成された潜在変数に名前をつけるようなものだ。因子分析は線形写像だからいいかもしれないが、深層学習に放り込んだ行動ログの潜在変数は非線形関数を通しているので隠れ層とのウェイト(因子分析で言うところの因子負荷量)のバランスから名前をつけることはできない。無理に名前をつけたところで、隠れ層を2層も進めば全く解釈できなくなる。無論画像のように目視での判定はできない。

 

時系列の生データから季節性とイベント変化ぐらい考慮して予測するならFacebookProphetでも使えば簡単にできると思うけど、じゃあサーバログを直接取ってきて人間のIDとかsession_idまで入った生ログを突っ込んでECの購買予測ができるのかという話になる。AIにはどれが人間を指すIDかすら理解できないだろう。

 

これはもともと社会科学系のAI批判の文脈で解析のブラックボックス性だとか呼ばれるものだけれど、たとえば落合陽一先生の仰るような「人間に理解できない構造で記述された、事象と事象が直に変換されるシステム」と考えれば必ずしも我々にその意味合いが理解できないのは問題とはされない。だが正直なところそれは現状ではまだ深層学習を買いかぶりすぎだと思う。最初あの本を読んだ時「この人はもしかしてディープラーニングをやったことがないんじゃないか?」とすら感じた。

そんな感じで社会科学に求められる関係の記述はAIの文脈では求められていないので、大人しく統計モデリングでやっていただきたい。

 

重要なのは要因分析

AIで行動予測をしました、という事例はいくらでもある。私も論文や学会発表でいくつかやってきた。しかしもう今後はあまりやらない気がする。というのも、当時は深層学習で行動ログを扱うこと自体が新鮮であり解析例が求められていたが、今では誰でもやれることなのだ。

 

そして先にブラックボックスの話をしたが、たとえば同じスマホゲーからの離脱でも、その離脱の異質性がどこまで考慮できるかというのは重要な問題になる。遊び方が複雑すぎてやめてしまう層、遊び方はわかったけどレベル上げが面倒でやめてしまう層、一通り遊んで飽きたからやめる層などの離脱時間を計測してプロットしたら分布には峰が複数できる。チュートリアルの改善で解決できるものもあれば、レベル上げの経過に従って与えられるrewardの調整で解決できるものもあるはずで、それらを深層学習で同質的に「離脱」と判定し離脱阻止のためのアクションを実施するというのは正直どうかと思う。

 

離脱時間の分布から離脱者を複数の性質に分けた上で、生存時間分析でも使って行動ログから個別に離脱要因を明らかにする方がいい。どうせそのあとのアクション(施策)は自分たちで考えて設定しなければならないのだ。どの層には何が有効か、要因から考えた方が早い。