Polynomial Semantic Indexing -- 大規模データからのスケーラブルな距離学習

午後はNIPS 2009 読み会

  • Bing Bai, Jason Weston, David Grangier, Ronan Collobert, Kunihiko Sadamasa, Yanjun Qi and Corinna Cortes, Mehryar Mohri, "Polynomial Semantic Indexing"

という論文について紹介してみた。

これはtsubosaka さんの日記にすばらしくまとまっているので、内容をあえて繰り返さず(クリアに書かれているので読む価値はあると思う)、感想を述べると、文書と文書の類似度を測る尺度としてこの polynomial semantic indexing はけっこう有用なのではないかな、と思った。@unnonounoさんと@tsubosakaさんも Twitter でつぶやいていたが、これは大規模なデータから低ランク近似して距離尺度を求める手法なんではないかと思う。近似方法を工夫することによって、既存のベクトル空間モデルの一般化になっており、なおかつ大量の教師ありデータ(クリックスルーログ、etc)からランキングを学習できる、言い換えると素性の重みを学習できる(この部分が距離学習になる)のが巧妙なところ。

以前書いた

の記事とも関係する(自分で書いたことを忘れていた)のだが、既存の距離学習手法は、大規模データにスケールしなかったり、大量の素性を扱えなかったり(せいぜい数百の素性しか使えないとか……自然言語処理の文脈ではありえない)するのだが、そこを工夫してスケーラブルかつ単純な距離学習の手法を提案したところが、この論文の貢献なんだろう。

この研究の価値を減じるものではないのだが、あえて苦言を呈してみると、一応クエリのサイズを小さくした評価もしているのだが、一般的には(英語の)クエリは2単語弱なんで、5-20というのは長すぎる。でも、クエリ側の素性として、bag-of-words の素性しか使えない(使わない)とすると、それ以外に用いることのできる素性がないので仕方ないし、クエリ(クリック)のログがないと適当に短い単語選んでも意味がないというのも分かる(「この文書が選ばれやすい」というような事前知識も入れられない)。単語の素性しか使わなかったのが、この論文の強みでもあり弱みでもあると思うのだが、企業の中の人じゃないとこれ以上はやりにくい。共著者に Google の人が3人いるので、内部ではたぶんやっているのだろう、とは tsubosaka さんの言。確かに、何回か「クリックスルーログを使えばいい」と書いてあるし、アルゴリズムはスケーラブルに作ってあるし、たぶんやっているんだろうなぁ。