唯物是真 @Scaled_Wurm

プログラミング(主にPython2.7)とか機械学習とか

論文感想: "TopicSpam: a Topic-Model based approach for spam detection" (ACL 2013 short)

概要

spam detectionとなっているけれど、以前紹介した以下の論文と同様に、偽のレビューの検出を行っている

データセットも上の論文と一緒

先行研究ではSVMなどでのテキスト分類で解かれていたが、この論文ではトピックモデル(LDAベース)を使っている
このトピックモデルでは単語は、バックグラウンドトピックホテル特有のトピック「本当のレビュー」のトピック「偽のレビュー」のトピックのいずれかから生成されたと考える

レビュー中の単語が「本当のレビュー」のトピック「偽のレビュー」のトピックどちらに属しているかの割合でレビューの真偽を判定

以下に論文中の生成モデルとグラフィカルモデルの図を示す
\(i\)はデータのラベル情報になっていて、\(i=1\)が偽のレビューのトレーニングデータ、\(i=2\)が本当のレビューのトレーニングデータ、\(i=3,4\)がテストデータを表している

f:id:sucrose:20130821014045p:plain
f:id:sucrose:20130821014029p:plain

"TopicSpam: a Topic-Model based approach for spam detection"

感想

95%弱のaccuracyが出ているらしい、すごい!

ただし、あまりトピックモデルを使うモチベーションがわからなかった
教師あり学習だと確率的な理解がしにくいとかどの特徴量が効いたのかわかりづらい的な事が書いてあるけど、この論文の手法でもラベル情報を使っているし、トピックモデルを使っても大きくは変わらない気がする

しかもデータセットが20のホテルのレビューから生成されているんだけど、ホテル特有のトピックの数を20に設定しているのは有利な設定のような……

トピックモデルに詳しくないので、推論とか生成のストーリーとかを追うのが精一杯で、あっているのかどうかチンプンカンプン