33
Query-Driven Context Aware Recommendation 著者:Negar Hariri, etc(DePaul University) RecSys2013読み会 @Quasi_quant2010 2013/11/16

Query driven context aware recommendation

Embed Size (px)

DESCRIPTION

RecSys2013読み会 トピックモデル topic model lda

Citation preview

Page 1: Query driven context aware recommendation

Query-Driven Context Aware Recommendation

著者:Negar Hariri, etc(DePaul University)RecSys2013読み会

@Quasi_quant20102013/11/16

Page 2: Query driven context aware recommendation

目次 概要

– ユーザープロファイル、アイテムプロファイル、コンテキスト トピックモデル復習(個人的な勉強.間違いがあれば指摘をお願い致します) アイディア

– Context Awareとは– 明示的情報や暗示的情報をLDAにより統合

LDA(提案モデル) 実験、設定 まとめ

Page 3: Query driven context aware recommendation

     概要

Page 4: Query driven context aware recommendation

概要 言語コーパスに関するモデル

– トピック混合比率 + トピック別単語分布 購買に関するトピックモデル

– トピック混合比率 + トピック別アイテム分布 提案モデル

– トピック混合比率 + トピック別アイテム分布+ トピック別特徴量(=コンテキスト)分布

– 明示的情報であるアイテムだけではデータスパース性に対応出来ない為、

アイテムの背景にあるコンテキストをモデルに導入

Page 5: Query driven context aware recommendation

結果概要①:Web記事推薦 記事のコンテキストに要約文を使っており、通常のLDAと比較

すると独立でないコンテキスト情報が性能を低下させている

ユーザーベースのクラスタリングよりも性能が悪い

注)縦軸の定義は後程

要約文としてのコンテキストが通常LDAより記事推薦の潜在因子になってはいますが・・・

ディリクレスムージングより性能が優っているのがせめてもの救い

Page 6: Query driven context aware recommendation

結果概要②:音楽推薦● 通常LDAと比較して、コンテキストが暗示的情報として機能● 明示的情報(発現因子)だけでなく、暗示的情報(潜在因子)を考慮し

て構造をモデル化する事が重要 → Deep Learning?

スケールは①と同じ

音楽推薦の方がWeb記事推薦よりコンテキストが推薦の潜在因子を適格にモデル化出来ている。恐らく、コンテキストが通常LDAと独立した情報だからかと

ユーザーベースのクラスタリングよりも性能が良い

Page 7: Query driven context aware recommendation

ここでちょっと

トピックモデルについて復習

個人的に・・・

Page 8: Query driven context aware recommendation

トピックモデルに基づく言語モデル

参照:Topicに基づく統計的言語モデルの最前線、山本・持橋

Page 9: Query driven context aware recommendation

多項混合モデル(Unigram-Mixture)

Φ

単語wトピック

トピック混合比率

θ文書(N)

コーパス(D)θ:トピック混合比率,[T*1]ベクトルφ:多項分布パラメータ,[N*T]行列

参照:トピックモデル概論、杉山

1文書1トピック1コーパスTトピック

1トピックの単語生成--確率φtは固定Φ=(φ1,...,φT)

Page 10: Query driven context aware recommendation

ポリヤ混合モデル(Dirichlet-Mixture)

Φ

単語w

トピックトピック

混合比率θ

文書(N)

θ:トピック混合比率,[T*1]ベクトルβ:多項分布ハイパーパラメータ,[N*T]行列

コーパス(D)

β参照:トピックモデル概論、杉山

1トピックの単語生成--確率φtは摂動Φ=(φ1,...,φT)

1文書1トピック1コーパスTトピック

単語生成確率を事前分布からサンプリングし期待値を取る

Page 11: Query driven context aware recommendation

確率的潜在意味解析

Φ

単語wトピック

トピック混合比率

θ

文書(N)

θ:トピック混合比率,[D*T]行列φ:多項分布パラメータ,[N*T]行列

コーパス(D)

参照:トピックモデル概論、杉山

1文書Tトピック

Tトピックの単語生成--確率φtは固定Φ=(φ1,...,φT)

Page 12: Query driven context aware recommendation

潜在的ディリクレ割り当て

Φ

単語w

トピックトピック

混合比率θ

文書(N)

α:トピック混合比率ハイパーパラメータ,[D*T]行列φ:多項分布パラメータ,[N*T]行列

コーパス(D)

α

参照:トピックモデル概論、杉山

トピックtの単語生成確率φtは固定、Φ=(φ1,...,φT)

トピック混合率を事前分布からサンプリングし期待値を取る

Page 13: Query driven context aware recommendation

拡張潜在的ディリクレ割り当て

Φ

単語wトピック

トピック混合比率

θ

文書(N)

α:トピック混合比率ハイパーパラメータ,[D*T]行列β:多項分布ハイパーパラメータ,[N*T]行列

コーパス(D)

α

β

トピック(T)参照トピックモデル概論、杉山

トピック混合率を事前分布からサンプリングし期待値を取る

単語生成確率を事前分布からサンプリングし期待値を取る

トピックtの単語生成確率φtは摂動、Φ=(φ1,...,φT)

Page 14: Query driven context aware recommendation

  アイディア– Context Awareとは– 明示的情報や暗示的情報をLDAにより統合

IBISに遊びに行ってました、Deep Learning祭りでした。RBM等で知られる積モデルの方が混合モデルより性能が良いとかを考えると、如何に暗示的情報をモデルに組み込むかが重要みたいです。(持橋先生のお話を忖度しますと・・・、積モデルがミソ!!)ちなみに、RBMではhigh level feature・low level featureを階層としてモデルしており、特徴量の重要性も考慮しているみたいです

Page 15: Query driven context aware recommendation

提案手法の動機 ある商材にはターゲットとなるユーザー層がいる  → ユーザー情報

•例:性別・年齢など   → アイテム情報

例:商品名・値段など 本当にこの情報でモデル化を行ってよいのか?

→ 潜在的な購買層も組み入れたい

   どうやってモデル化する?

Page 16: Query driven context aware recommendation

アイディア:Context Awareユーザー・アイテム・コンテキストを使って

アイテムのランキングをしよう! アイテムというキー

– {X Japan : {Yoshiki:{カッコイイ:100}{工藤静香:50}}{Toshi:{声高い:1}{宗教:10}}}

– {Luna Sea : {Hyde:{カッコイイ:100}{大石恵:50}}{Ken:{タバコ:1}{ひげ:10}}}

X Japanというアイテムを表現する素性としてYoshiki・Toshiを考える

重なっている! ⇒ 似ているに違いない

⇒ Context Aware

Page 17: Query driven context aware recommendation

アイディア:明示的情報や暗示的情報例えば、音楽CDを購入する際、消費者は、まず、好みのアーティストを探す → 明示的情報:X Japan、Luna Seaなど次に、好みのアーティストと関連する楽曲を探す → 暗示的情報:カッコイイなど{X Japan :{Yoshiki:{カッコイイ:100}{工藤静香:50}}

{Toshi:{声高い:1}{宗教:10}}}{Luna Sea:{Hyde:{カッコイイ:100}{大石恵:50}}

           {Ken:{タバコ:1}{ひげ:10}}}

X Japan

Luna Sea

明示的情報

暗示的情報{Yoshiki:{カッコイイ:100}{工藤静香:50}}{Toshi:{声高い:1}{宗教:10}}}

{Hyde:{カッコイイ:100}{大石恵:50}}{Ken:{タバコ:1}{ひげ:10}}}

Page 18: Query driven context aware recommendation

アイディア:LDAにより統合

α θ トピックアイテム

Φ

μ

特徴量

β

γ

T

T

ユーザー数N アイテム数M

特徴量数W

仮定● ユーザーはM個の潜在購買トピックを持つ● コンテキスト(特徴量)はアイテム空間の基底

を使って表現可能、特徴量空間⊆アイテム空間

Page 19: Query driven context aware recommendation

LDA:アルゴリズム

Page 20: Query driven context aware recommendation

計算したい量:P(アイテム|コンテキスト,ユーザー)

ユーザー・コンテキスト情報が与えられた時、購買されるアイテム数は?

p(s|q,p ; θ,μ,Φ) ∝ p(q|s,p ; θ,μ,Φ) * p(s|p ; θ,μ)                    s:アイテム                    p:ユーザー                    q:コンテキスト情報

Page 21: Query driven context aware recommendation

計算アルゴリズム①

(∵特徴量はiid)

トピック別特徴量分布*トピック比率

トピック別アイテム分布*トピック別特徴量分布

Page 22: Query driven context aware recommendation

計算アルゴリズム②

以上より

Page 23: Query driven context aware recommendation

    実験・設定

Page 24: Query driven context aware recommendation

データ紹介①:Web記事http://www.citeulike.org/faq/data.adp

●1ユーザーが4回以上ポストをし、4回以上閲覧された記事

●article recommendation. we use words in the documents as features

● The words in each article abstract were used as the article features

Page 25: Query driven context aware recommendation

データ紹介②:音楽(Playlist)●http://labrosa.ee.columbia.edu/projects/m

usicsim/aotm.html● music recommendation. popular tags are

retrieved from social Web sites for all the songs and are used as songs features● we used frequent tags for each song as

its features

Page 26: Query driven context aware recommendation

ベースライン①Filtering

→ 特徴量が含まれているか否かで二つの集合を作り、含まれている集合からランダムに推薦

②User-Base kNN③LDA④Bayesian Smooting

→ ディリクレスムージング

Page 27: Query driven context aware recommendation

設定パラメータ

Page 28: Query driven context aware recommendation

評価方法●we look at how well they recover the held-out songs in the test data. For each removed song, its rank in the overall recommendation list is recorded. The results for the cross validation were evaluated by computing the Hit Ratio

● the Hit Ratio, which computes the probability that the removed song is recommended as part of the top N recommendations

Page 29: Query driven context aware recommendation

評価方法●RN(p) ; the top N recommendations for

a given playlist, p → 正解ラベル● If the removed target song, sp, is part

of RN(p), it is hit → 予測ラベル●For any given rank N, the hit ratio h(N)→|p∊testset : sp∊ RN(p)| / |testset|

Page 30: Query driven context aware recommendation

      結果

Page 31: Query driven context aware recommendation

結果:音楽推薦● 通常LDAと比較して、コンテキストが暗示的情報として機能● 明示的情報(発現因子)だけでなく、暗示的情報(潜在因子)を考慮し

て構造をモデル化する事が重要 → Deep Learning?

音楽推薦の方がWeb記事推薦よりコンテキストが推薦の潜在因子を適格にモデル化出来ている。恐らく、コンテキストが通常LDAと独立した情報だからかと

ユーザーベースのクラスタリングよりも性能が良い

Page 32: Query driven context aware recommendation

      まとめ

Page 33: Query driven context aware recommendation

考察①直観的な明示的情報だけでなく、暗示的情報

の活用が予測を向上させる②離散データのモデル構築の観点では、

発現因子・潜在因子を考慮した構造化が重要③IBISで持橋先生が主張されていましたが、離散的な現実データを再現するには、混合モデルは不適切で、独立因子による積モデルが有望④積モデルのパラメータ推定方法も課題(MCMC?)