SlideShare a Scribd company logo
Infer.NETを使った確率モデリングの実例

     tsubosaka (m.tsubosaka(atmark)gmail.com
                 2011/6/12 #tokyowebmining
注意
       この資料は個人的な知識によるもので、私の所属する
        組織及び会社とは一切関係ありません




    2
概要
       本日の発表ではクリックモデルを例に、確率モデルの有
        用性と確率モデルを表現するためのツールである
        Infer.NETを使った事例に関して紹介します
           Infer.NETについてはwk77さんが前の発表で話してくれてるは
            ずなので詳しくは説明しません




    3
例:クリックモデリング
       どの広告をどれくらいの
        確率でクリックするか?




    4
例:クリックモデリング
       どの広告をどれくらいの
        確率でクリックするか?
       単純な方法
           100回表示して3回クリック
            されたので0.03




    5
例:クリックモデリング
       どの広告をどれくらいの
        確率でクリックするか?
       単純な方法
           100回表示して3回クリック
            されたので0.03
       問題点
           表示位置などのバイアスを無
            視している
           表示されたことのない広
            告のクリック確率(CTR)が
            出せない




    6
バイアスについて(positional-bias)
       ユーザはページの上の方を中心にみる
           掲載順位の低い広告のCTRは過小評価される




    7
バイアスについて(other bias)
       時間帯やブラウザなどが違うと、CTRも違う




    8
新規の広告について
       一回も表示したことのない広告のCTRは不明
       十分な回数表示しないとCTRの推定が不正確
           例えば1000回中10回クリックされた場合、95%信頼区間は
            [0.4%-1.6%]
           また先ほど述べたように、ブラウザや時間によってCTRが違う
            ので、本来は二項分布に従うという仮定は成り立たない
       表示位置やデモグラフィック情報を使って、実績のない
        広告に対しても大体のCTRを推定できないか?




    9
モデリングの必要性
    表示回数とクリック回数だけではなく、表示位置やデモ
     グラフィック情報などに関する知見を加味してCTRをモデ
     ル化したい
        掲載位置の上の方がクリックされやすい
        ブラウザによってCTRが異なる etc...
    このように問題に対する知見を取り入れたいという要求
     は多くの場面で出てくる
        例えば文章分類であれば、本文だけではなく著者情報やタグ
         情報などを加味したいなど
    問題を個々の要素に分解して、それらの関係性を表現し
     た確率モデルを用いることにより、知見を取り入れること
     ができる

    10
モデリングの例 (Cascade model)
    ������番目の広告を閲覧したかどうかという事象を������������ (1のとき
     閲覧された、0のときは閲覧されなかったことを表す)と書
     き、������番目の広告をクリックしたかどうかという事象を������������ (値
     の意味は������������ と同様)と書く
    上から順番にみていくことのモデル
        ������ ������������ = 1 ������������−1 = 0 = 0 (一つ上の広告を見てないなら、i番
         目の広告も見ない)
        ������ ������������ = 1 ������������−1 = 1, ������������−1 = 1 − ������������−1 (とりあえず、クリックした
         ら閲覧は中断とみなす)
    閲覧とクリックの関係のモデル
        ������ ������������ = 1 ������������ = 0 = 0(見てない広告はクリックしない)
        ������ ������������ = 1 ������������ = 1 = ������������������ (ここで������������ はある検索時に������番目に表示
         された広告を表し、������������ は広告������のクリックしやすさを表す)

    11
グラフィカルモデル
    wk77さんが話してくれてるはず
    確率変数をノードに、変数間の関係を矢印で表現したグ
     ラフ
        変数間の関係をより明確に表すことができる


          ������1     ������2    ������3




          ������1     ������2    ������3


    12
モデルの複雑化
    より複雑な閲覧モデルを考えることができる




                  http://research.microsoft.com/en-
                  us/um/cambridge/projects/infern
                  et/docs/Click%20through%20model
                  %20sample.aspx より




    13
グラフィカルモデルも
    当然複雑化する




               http://research.microsoft.com/en-
               us/um/cambridge/projects/infern
               et/docs/Click%20through%20model
               %20sample.aspx より




    14
パラメータの推定式も
    当然複雑化する。。。



                  Click chain model in web search,
                  WWW 2009より




    15
Infer.NET
   Microsoftによるグラフィカルモデルにより表現できるような確
    率モデルの推定のためのフレームワーク
        http://research.microsoft.com/en-
         us/um/cambridge/projects/infernet/
        詳しくはwk77さんが(ry
        C#のコードでモデルを表現する
        推論の部分はフレームワーク側でやってくれるので、人間はモデ
         ルの作成と評価を行うだけでよくなる
        Microsoft以外の商用利用は今のところ不可
        今回の発表ではMicrosoftの研究者らによるInfer.NETを使った広
         告のクリックモデリングに関する文献について紹介する


        16
実際にInfer.NETを使っている論文
    Z. Zhu, W. Chen, T. Minka, C. Zhu and Z. Chen: A novel
     click model and its application to online advertising,
     WSDM 2010
        一番最初に例としてあげた、広告のクリックされる確率を表す
         ためのモデルを作成
        モデルの推論をInfer.NETを用いて行った
        以降この論文について紹介を行います
        ちなみに、このようなネット広告に機械学習や情報検索の技
         術を応用する取り組みは近年盛んになっている
        参考: Introduction to Computational Advertising
         http://www.stanford.edu/class/msande239/


    17
既存研究
    位置バイアスとその他のバイアス(時間帯、 ブラウザ)を分け
     て考えている
    位置バイアス
        ユーザが上から下へ見ていくという知見をうまくモデル化
        An experimental comparison of click position-bias models, WSDM
         2008
        Click chain model in web search, WWW 2009
    その他のバイアス
        各要因の重みをロジスティック回帰、プロビット回帰などで推定
        Predicting clicks: estimating the click-through rate for new ads,
         WWW 2007
        Web-scale Bayesian click-through rate prediction for sponsored
         search advertising in Microsoft’s Bing search engine, ICML 2010


    18
紹介論文の成果
    General Click Model (GCM)というモデルを提案
    GCMはOuter modelとInner modelの二つによって構成さ
     れる
    Outer model
        ユーザが上から順に見ていくことを表したモデル
    Inner model
        Outer modelの状態遷移確率を時間帯やブラウザなどのデモ
         グラフィック情報により説明するモデル




    19
Outer model
    ユーザの閲覧時のフローを以下のように仮定する




    20
Outer model
    フローとしては既存のCCM(Click chain model)などとほ
     ぼ同じであるが、遷移の条件に������������ , ������������ , ������������ という確率変数
     が入っている
        CCMなどでは例えば������������ の部分が確率������でYesを選ぶというよう
         になっていて、ユーザに依存しない形になっている




    21
Inner model
    Outer modelで出てきた状態遷移を決定する������������ , ������������ , ������������ は
     ユーザと表示している広告の情報によって決まる
        例えばIEを使っている20時にHadoopで検索してきたユーザが
         上から2番目のbusinessカテゴリの広告をクリックしたあとに閲
         覧を続けるというのは
         ������2 = ������������������ + ������20:00 + ������������������������������������������ + ������2 + ������������������������������������������������������ + ������������������
        の正負によって決定される
    よりformalに書くと以下のようになる




    22
パラメータの推定
    パラメータの推定はExpectation Propagationアルゴリズ
     ムを用いる
    これはInfer.NETのいくつか選べる推定アルゴリズムのな
     かに入っている(他には Variational message passing,
     Gibbs Samplingが選べる)




    23
実験
    実験に利用したデータ
        Jul 29-31までの3日間のデータのうち、12691個のクエリに対
         する4530044個のセッションと16268349個のインプレッション
         が入った広告配信ログデータを利用
    デモグラフィック情報
        ユーザのIP, 国籍, user agent, 時間帯, 広告ID, 広告カテゴリ,
         マッチしたキーワードなど21種類の情報を利用
    実行環境
        Visual C# 2008
        メモリ 47.8GB, CPU AMD 2.40GHz 8コア
        訓練には約10時間かかった


    24
実験結果(1)
    予測CTRと実際のCTRに関する決定係数を算出
        正確には予測CTRの大きさでソートして、上から1000個づつ
         のブロックに分割して、そのなかでの平均予測CTRと平均実
         CTRに関して計算
         Cascade   CCM     DBN     GCM
         0.956     0.939   0.958   0.993




    25
実験結果(2)
    GCMが位置のバイアス情報を一番うまく捉えられている




    26
実験結果(3)
    時間によるバイアスもGCMはうまく捉えられている




    27
まとめ
    Infer.NETを使った、広告の表示位置および複数のバイ
     アスを考慮したクリックモデルを紹介した
        このような問題に応じたモデルの作成は文章分類、評判抽出
         ネットワーク分析、レコメンデーションなど多岐に渡る分野で
         適応されている
        モデル作成のツールは他にもBugs, Factorieなどがあり、今後
         はこのようなツールを用いることにより機械学習などの専門家
         以外でも、モデルを作成できるようになるのではないかと考え
         られる




    28

More Related Content

TokyowebminingInferNet

  • 1. Infer.NETを使った確率モデリングの実例 tsubosaka (m.tsubosaka(atmark)gmail.com 2011/6/12 #tokyowebmining
  • 2. 注意  この資料は個人的な知識によるもので、私の所属する 組織及び会社とは一切関係ありません 2
  • 3. 概要  本日の発表ではクリックモデルを例に、確率モデルの有 用性と確率モデルを表現するためのツールである Infer.NETを使った事例に関して紹介します  Infer.NETについてはwk77さんが前の発表で話してくれてるは ずなので詳しくは説明しません 3
  • 4. 例:クリックモデリング  どの広告をどれくらいの 確率でクリックするか? 4
  • 5. 例:クリックモデリング  どの広告をどれくらいの 確率でクリックするか?  単純な方法  100回表示して3回クリック されたので0.03 5
  • 6. 例:クリックモデリング  どの広告をどれくらいの 確率でクリックするか?  単純な方法  100回表示して3回クリック されたので0.03  問題点  表示位置などのバイアスを無 視している  表示されたことのない広 告のクリック確率(CTR)が 出せない 6
  • 7. バイアスについて(positional-bias)  ユーザはページの上の方を中心にみる  掲載順位の低い広告のCTRは過小評価される 7
  • 8. バイアスについて(other bias)  時間帯やブラウザなどが違うと、CTRも違う 8
  • 9. 新規の広告について  一回も表示したことのない広告のCTRは不明  十分な回数表示しないとCTRの推定が不正確  例えば1000回中10回クリックされた場合、95%信頼区間は [0.4%-1.6%]  また先ほど述べたように、ブラウザや時間によってCTRが違う ので、本来は二項分布に従うという仮定は成り立たない  表示位置やデモグラフィック情報を使って、実績のない 広告に対しても大体のCTRを推定できないか? 9
  • 10. モデリングの必要性  表示回数とクリック回数だけではなく、表示位置やデモ グラフィック情報などに関する知見を加味してCTRをモデ ル化したい  掲載位置の上の方がクリックされやすい  ブラウザによってCTRが異なる etc...  このように問題に対する知見を取り入れたいという要求 は多くの場面で出てくる  例えば文章分類であれば、本文だけではなく著者情報やタグ 情報などを加味したいなど  問題を個々の要素に分解して、それらの関係性を表現し た確率モデルを用いることにより、知見を取り入れること ができる 10
  • 11. モデリングの例 (Cascade model)  ������番目の広告を閲覧したかどうかという事象を������������ (1のとき 閲覧された、0のときは閲覧されなかったことを表す)と書 き、������番目の広告をクリックしたかどうかという事象を������������ (値 の意味は������������ と同様)と書く  上から順番にみていくことのモデル  ������ ������������ = 1 ������������−1 = 0 = 0 (一つ上の広告を見てないなら、i番 目の広告も見ない)  ������ ������������ = 1 ������������−1 = 1, ������������−1 = 1 − ������������−1 (とりあえず、クリックした ら閲覧は中断とみなす)  閲覧とクリックの関係のモデル  ������ ������������ = 1 ������������ = 0 = 0(見てない広告はクリックしない)  ������ ������������ = 1 ������������ = 1 = ������������������ (ここで������������ はある検索時に������番目に表示 された広告を表し、������������ は広告������のクリックしやすさを表す) 11
  • 12. グラフィカルモデル  wk77さんが話してくれてるはず  確率変数をノードに、変数間の関係を矢印で表現したグ ラフ  変数間の関係をより明確に表すことができる ������1 ������2 ������3 ������1 ������2 ������3 12
  • 13. モデルの複雑化  より複雑な閲覧モデルを考えることができる http://research.microsoft.com/en- us/um/cambridge/projects/infern et/docs/Click%20through%20model %20sample.aspx より 13
  • 14. グラフィカルモデルも  当然複雑化する http://research.microsoft.com/en- us/um/cambridge/projects/infern et/docs/Click%20through%20model %20sample.aspx より 14
  • 15. パラメータの推定式も  当然複雑化する。。。 Click chain model in web search, WWW 2009より 15
  • 16. Infer.NET  Microsoftによるグラフィカルモデルにより表現できるような確 率モデルの推定のためのフレームワーク  http://research.microsoft.com/en- us/um/cambridge/projects/infernet/  詳しくはwk77さんが(ry  C#のコードでモデルを表現する  推論の部分はフレームワーク側でやってくれるので、人間はモデ ルの作成と評価を行うだけでよくなる  Microsoft以外の商用利用は今のところ不可  今回の発表ではMicrosoftの研究者らによるInfer.NETを使った広 告のクリックモデリングに関する文献について紹介する 16
  • 17. 実際にInfer.NETを使っている論文  Z. Zhu, W. Chen, T. Minka, C. Zhu and Z. Chen: A novel click model and its application to online advertising, WSDM 2010  一番最初に例としてあげた、広告のクリックされる確率を表す ためのモデルを作成  モデルの推論をInfer.NETを用いて行った  以降この論文について紹介を行います  ちなみに、このようなネット広告に機械学習や情報検索の技 術を応用する取り組みは近年盛んになっている  参考: Introduction to Computational Advertising http://www.stanford.edu/class/msande239/ 17
  • 18. 既存研究  位置バイアスとその他のバイアス(時間帯、 ブラウザ)を分け て考えている  位置バイアス  ユーザが上から下へ見ていくという知見をうまくモデル化  An experimental comparison of click position-bias models, WSDM 2008  Click chain model in web search, WWW 2009  その他のバイアス  各要因の重みをロジスティック回帰、プロビット回帰などで推定  Predicting clicks: estimating the click-through rate for new ads, WWW 2007  Web-scale Bayesian click-through rate prediction for sponsored search advertising in Microsoft’s Bing search engine, ICML 2010 18
  • 19. 紹介論文の成果  General Click Model (GCM)というモデルを提案  GCMはOuter modelとInner modelの二つによって構成さ れる  Outer model  ユーザが上から順に見ていくことを表したモデル  Inner model  Outer modelの状態遷移確率を時間帯やブラウザなどのデモ グラフィック情報により説明するモデル 19
  • 20. Outer model  ユーザの閲覧時のフローを以下のように仮定する 20
  • 21. Outer model  フローとしては既存のCCM(Click chain model)などとほ ぼ同じであるが、遷移の条件に������������ , ������������ , ������������ という確率変数 が入っている  CCMなどでは例えば������������ の部分が確率������でYesを選ぶというよう になっていて、ユーザに依存しない形になっている 21
  • 22. Inner model  Outer modelで出てきた状態遷移を決定する������������ , ������������ , ������������ は ユーザと表示している広告の情報によって決まる  例えばIEを使っている20時にHadoopで検索してきたユーザが 上から2番目のbusinessカテゴリの広告をクリックしたあとに閲 覧を続けるというのは ������2 = ������������������ + ������20:00 + ������������������������������������������ + ������2 + ������������������������������������������������������ + ������������������  の正負によって決定される  よりformalに書くと以下のようになる 22
  • 23. パラメータの推定  パラメータの推定はExpectation Propagationアルゴリズ ムを用いる  これはInfer.NETのいくつか選べる推定アルゴリズムのな かに入っている(他には Variational message passing, Gibbs Samplingが選べる) 23
  • 24. 実験  実験に利用したデータ  Jul 29-31までの3日間のデータのうち、12691個のクエリに対 する4530044個のセッションと16268349個のインプレッション が入った広告配信ログデータを利用  デモグラフィック情報  ユーザのIP, 国籍, user agent, 時間帯, 広告ID, 広告カテゴリ, マッチしたキーワードなど21種類の情報を利用  実行環境  Visual C# 2008  メモリ 47.8GB, CPU AMD 2.40GHz 8コア  訓練には約10時間かかった 24
  • 25. 実験結果(1)  予測CTRと実際のCTRに関する決定係数を算出  正確には予測CTRの大きさでソートして、上から1000個づつ のブロックに分割して、そのなかでの平均予測CTRと平均実 CTRに関して計算 Cascade CCM DBN GCM 0.956 0.939 0.958 0.993 25
  • 26. 実験結果(2)  GCMが位置のバイアス情報を一番うまく捉えられている 26
  • 27. 実験結果(3)  時間によるバイアスもGCMはうまく捉えられている 27
  • 28. まとめ  Infer.NETを使った、広告の表示位置および複数のバイ アスを考慮したクリックモデルを紹介した  このような問題に応じたモデルの作成は文章分類、評判抽出 ネットワーク分析、レコメンデーションなど多岐に渡る分野で 適応されている  モデル作成のツールは他にもBugs, Factorieなどがあり、今後 はこのようなツールを用いることにより機械学習などの専門家 以外でも、モデルを作成できるようになるのではないかと考え られる 28