Joint Modeling of a Matrix with Associated Text via Latent Binary
Features XianXing Zhang and Lawrence Carin
NIPS 2012 すずかけ論文読み会#5 2013/08/03 紹介者 : matsuda
13/08/03 1
問題
• 議員の投票行動をモデル化したい
0 1 1 1 1 0 1 0 1 0 1 1 1 1 0 1 0 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 1 1 1 0 1 0 1 1 1 0 1 1 0 1 0 1 0 1 1 1 1 0 1 0 1
議員P人
法案N個 各法案(テキスト)
投票だけなら,協調フィルタリングでモデル化可能. テキストが利用可能な場合,どのように用いるか? 13/08/03 2
1:賛成 0:反対
モデル
• FTM(Focused Topic Model) + BMF(Binary Matrix FactorizaRon)のJoint Model – FTM
• IBP(Indian Buffet Process) + (H)DP(Dirichlet Process) – IBP : 無限に「素性」が出てくるようなPrior – DP : 無限に「クラス」が出てくるようなPrior
– BMF : X = LHRT ( L, Rの要素は {0,1} )となる分解 • この L, R のPrior にも IBP を用いる • 低ランクの仮定をおく
– テキストをFTMで,voRngの行列をBMFでモデル化 • 事後分布は一気にサンプリングすることで推定 • “どのように繋げるか“がポイント
13/08/03 3
解読しようよグラフィカルモデル
・・・・・・!? 図はSupplementより引用.ハイパーパラメータは省略されています.
13/08/03 4
このへんLDAっぽい これが投票のデータ({0,1}P×N) Nは法案の数かな
Pは議員の人数ぽい このへんが繋ぎ目になりそう
とりあえず眺めてみる これが単語っぽい
プレートのKなんとかは,隠れ変数のクラス数っぽい, IBPがどうとか言っていたので可変なんだろう. 13/08/03 5
Indian Buffet Process(IBP)
• 無限隠れ素性モデルのPrior – [Griffiths and Ghahramani, 2005]
• Chinese Restaurant Processは無限隠れクラスのPrior構成法
– 要するに・・・ • Binary Matrixに対するPrior • Beta-‐Bernoulli過程の行列に対する拡張(自信なし)
13/08/03 6
Indian Buffet ProcessとCRP
• Chinese Restaurant Process
• Indian Buffet Process
テーブルは「クラス」
お皿は「素性」
from hep://mlg.eng.cam.ac.uk/zoubin/talks/turin09.pdf (IBPとその応用についていろいろ書いてあるスライド,おすすめ)
13/08/03 7
Focused Topic Model(1/2) • Nonparametric Topic Modelのひとつ[Williamson+ 2010](HDPの拡張) – HDPは,コーパス全体のTopic出現率と,個々のドキュメント内でのTopicの割合に高い相関がでてしまう • ドキュメント一つ一つの「専門性」が高い場合は不適切,ということのよう(あくまで自分の理解)
• 野球の話題に触れているドキュメントは「コーパス全体の中の割合としては」少ないが,その数少ないドキュメントでは,ほとんど野球にしか触れていない
– IBPを導入することで,スパースにする • ドキュメント内の主要な部分に “Focus” する効果が生まれる
13/08/03 8
Focused Topic Model(2/2)
• IBP + DP ドキュメント j でトピック t が用いられるか否か( {0,1} )を SRck Breakingでモデル
document, word の生成はほぼ LDA と同じ ( b ● λ : ベクトル要素ごとの積) λは全ドキュメントで共有 ( HDPの 基底に相当)
このへん
ふつうのHDPはλをそのまま用いるが,FTMにおいては0/1ベクトルbjを用いてフィルタリングしているのがポイント ※bjtがゼロのところは消える
13/08/03 9
Binary Matrix FactorizaRon
• X ∈ RP×N な行列Xの分解 X = LHRT – L ∈ {0,1}P×KL, H ∈ RKL×KR, R ∈ {0,1}N×KR
– KL, KR : 行列のランク(無限大のこともある)
X H
L R
N(人数)
P(
吠各吼吸呉吟数)
KL
P
KR
N
= L, R はIBPでモデル(KL, KRは可変)
このへん 13/08/03 10
Binary Matrix FactorizaRon with low rank assumpRon(1/2)
• 観測されるvoRng行列Yは隠れた真の値にノイズが乗ったもの(を,0/1に離散化した)と仮定 – イメージとしては,「どれくらい賛成か」という度合い
• 分解された行列Hに低ランク性を仮定(Kc:小)
Hを,ランク1の行列Kc個の足しあわせで表す(sk : 重み)
Kc, skをどのように求めるか・・・・? このへん 13/08/03 11
Binary Matrix FactorizaRon with low rank assumpRon(2/2)
• xは以下のような正規分布でモデル化 – probit model
– l, r は {0,1}のベクトルであることに注意 • uk, vkのうち,l,rで値が立っているとこだけFilterするイメージ
• sk, Kcは mulRplicaRve gamma process(MGP)でモデル
– ランクを深くすると,skは速やかに減少(Theorem1) – AdapRve Samplerというサンプリング法+閾値で求める
13/08/03 12
BMFとFTMのJoint Model • FTMのbベクトルと,BMFのrベクトル
– b:FTMにおいて,ある文書中であるトピックが扱われるかどうかの0/1ベクトル
– r : BMFにおいて,行列を分解した結果得られたある実数ベクトルvを,filterするような0/1ベクトル • v : Hから1ランク分とってきたようなイメージ
• 単純に b = r とおく • Inferenceは省略・・・
– ちょっとややこしすぎます • v,u : Hを構成する実数値ベクトル • sk : ランク1行列の重み(スカラー) • τ, δ : MGPのパラメータ • r : 0/1ベクトル
– ハイパーパラメータ • αl , αr : IBPのbeta分布, αc : MGPのgamma分布 • γ : FTMのgamma分布, η : FTMのDirichlet分布, κ : MGPのthreshold
b = r
13/08/03 13
実験に用いているデータ
• アメリカ合衆国下院議会のroll-‐callデータ – 106th – 111th (1999年-‐2010年) – 誰がどの法案に賛成したか分かる(記名投票) – 定数435, 法案数は書いてなかった・・・(1000くらい?)
• (参考)アメリカはほぼ完全な二大政党制 – 2013年現在,共和党 232, 民主党 200, 欠員3 – 党議拘束みたいなのはほぼ無いらしい
• 日本だと状況がかなり違いそう
13/08/03 14
行列穴埋め実験
縦軸:正解率,横軸:rank
Binary Matrix FactorizaRon (with low-‐rank assumpRon)の効果を確かめる (この実験においては,テキストは一切用いていない)
PMF : ProbabilisRc Matrix FactorizaRon [Salakhutdinov+, NIPS’07] PMF + MGP : PMFのrankをMGPで推定 BMF : Binary Matrix FactorizaRon [Meeds+, NIPS’06] (・・・フルランク?) Proposed : BMFのrankをMGPで推定
13/08/03 15 BMFは表現力が低いが,MGPを導入するとPMFとcompeRRveになる
新法案に対する予測
モデルを学習したあと,テキストだけが与えられたときに, その法案が採択されるかを予測 • IPTM : Ideal Point Topic Model[Gerrish and Blei, ICML’11] • FATM : 因子分析+Topic Model + Markov Process[Wang+, NIPS’10]
横軸:トピック数(本来は自動で推論できるが,比較のため外から決定) 縦軸:正解率(どう評価すべきか悩ましい)
13/08/03 16
IPTMについては hep://www.ism.ac.jp/~daichi/lectures/ISM-‐2012-‐TopicModels_day2_4_supervised.pdf の後半部分に,NTT石黒さんによる解説があります
トピックの分析
賛成が90%以上の法案 • 子供を守る • 環境問題 • テロリストへ屈しない
賛成が60%以下の法案 • 議会会期の問題? • 減税に関する問題 • すでにある法案の修正
13/08/03 17
誰もが賛成するようなトピック
意見がわかれるようなトピック
まとめ/感想
• 行列とテキストのJoint Modelを提案 – feature側にIBP Priorをおいてbinary shared featureを学習
• FTMのbと,BMFのrを結びつける latent な feature – 分解の結果得られたlatent real matrixに低ランク性を仮定
• 問題設定は面白い – が,問題の特徴を生かしきれていない気も・・・
• 政党など,同じvoteをしやすい会派(アメリカではあまり問題にならない?,Hの低ランク性でいちおう考慮はしている)
• 時間(社会の状況)によって,賛否が異なる • どこまで問題specificにするかは難しいところ
– 性能評価も難しい • 採択/非採択の2クラス予測で,90~94%はどれほどのものか
• ここまで複雑にする必要があるのか疑問 – 基本的には,コンテンツ推薦システムと同様の問題設定 – content – collabolaRve filteringのハイブリッドなら,他にもいろいろある – やり過ぎ感がある一方,キャプチャーしきれていない要素もありそうで,何ともいえない読後感
13/08/03 18
13/08/03 19
αr αl
αc γ η
y : xを0/1に離散化 x : probit(s,u,l,v,r)
IBP IBP
MGP Dir gamma
θ ~ Dir(λ ● r) Mult Mult
Focused Topic Model
Binary Matrix FactorizaRon with low rank assumpRon
Mult
行列モデルとトピックモデルでシェアされる変数
行列分解モデル
トピックモデル
ドキュメント数 ユーザー数