Action prediction and identification from mining temporal user behaviors
概要
時系列っぽいようなユーザの行動データから,ユーザがあるアクションを起こすかどうかを判定する.
だいたいやってる事は掴めたが,俺の英語力が低すぎるせいで理解できない部分が多かった.
手法
予測したいアクションを,positive userを過去にを行ったことがあるユーザとし,その集合をとする.ついでにランダムにサンプリングしたユーザ集合をとし,[U=U_{patt}\cup U_{rand}]とする.にpositive userが入っても構わない.
ユーザの振る舞い(behavior)はエンティティの集合で現されるとする.各エンティティはユーザが訪れたwebページだったり,入力されたクエリだったりする.
について,各アクションにはタイムスタンプ(以下日付とする)が付与されているとする(ここでbehaviorではなくactionが言及される理由がわからない).日付の集合をとし,はそれぞれユーザの振る舞いの開始と終了の日付,をユーザがアクションが起こった(?)日付とする.
ついでに,次のようなを定義する.
何をやってるかというと,-Lから-pまでの期間の日付を取ってくる操作を考える.であれば,が起こった日付を除外する(これでは駄目なのだろうか).なら-L+1から-pまで,言ってみればアクションが起こる前までの任意の期間の日付を取ってくる.図にするとこんな感じ.
判別
判別は2段階に分かれる.
1段階目では,「アクションを起こしそうなユーザ」を特定する.具体的にはならを,ならを返すようなモデルを学習する.モデルを作るときはユーザの履歴を遡る度合いに応じて判別式を作る.図にするとこんな感じで,つまりはこれの度合いを変えてやればアクション直前のユーザの行動から,アクションから遠く離れた初期状態でのユーザの行動までを別々にモデルを作ってアンサンブルする.
2段階目ではアクションを起こしそうなユーザから"user who has finished the action"を特定する.しかし,ここの部分が何を言っているのか全く理解できなかった.論文に書いてある数式は
で正例負例を定め,また,,となっている.
で,これらから
で判別すると言ってる.はアンサンブル時のパラメータなのでまだわかるが,がAを起こした日付の前後でうんちゃらしてactionを起こすかどうかが判別できる理由がわからない.
ここで読むのを諦めた.誰かに教えてもらいたい.