研究の行き詰まり

 どうなっているのかよくわからない事になりつつある。Blei版LDA実装(以下B-LDA)とMochihashi版LDA実装(以下M-LDA)で、かなり違う結果が出てくる。B-LDAの方はトピック数を変えてもテストスコアがほとんど変わらない。M-LDAは25トピックが最高性能となんだか期待どおりっぽい結果を出してくれる。ただし、絶対性能ではBlei版の方が性能が圧倒的に良い。
 理屈がよくわからないので、とりあえず自分で単純なUniGramのモデルを実装してみた(N<3の場合には単純Good-Turing Discount)ところ、M-LDAの最高性能より少し悪い、という程度の性能になった。という事は、B-LDAにはかなり負けている。
 B-LDAはなんでこんなに性能がいいんだろう。どうやら収束判定の閾値が違うと結果が違うようで、Mochihashi版も収束条件を変えると性能が変わるみたい。ちょっと学習条件を変えると、自作UniGramよりは良い結果がでてくるようになった。ただ、学習にかかる時間も数倍になるみたいだけど…。今は収束条件をかなり厳しくして学習をやり直させているが、どうやらこの分だと「トピック数を増やしても性能には大差ない」という結論になりそうだ。
 というわけで、今日は性能に少し影響があることを確かめるために評価用のシステムを作りなおす予定。