質問

Naive Bayesを使用してテキスト分類機械学習問題を実行しています。それぞれの言葉に特徴を持たせています。実装することができ、精度も良くなりました。

単語のタプルを特徴量として使用することは可能ですか?

たとえば、政治とスポーツという 2 つのクラスがあるとします。どちらにも政府という言葉が出てくるかもしれません。ただし、政治ではタプル (政府、民主主義) を持つことができますが、クラス スポーツではタプル (政府、スポーツマン) を持つことができます。したがって、政治に関する新しいテキスト記事が入ってきた場合、タプル (政府、民主主義) の確率はタプル (政府、スポーツマン) よりも高くなります。

私がこれを尋ねているのは、単一の単語も特徴として考慮しているため、これを行うと単純ベイズ問題の独立性の仮定に違反するためです。

また、機能に重みを追加することも考えています。たとえば、3 タプルの特徴は 4 タプルの特徴よりも重みが低くなります。

理論的には、これら 2 つのアプローチは単純ベイズ分類器の独立性の仮定を変更しないのでしょうか?また、私はまだ上記のアプローチを始めていませんが、これにより精度は向上しますか?精度は向上しないかもしれませんが、同じ精度を得るために必要なトレーニング データの量は少なくなると思います。

役に立ちましたか?

解決

バイグラムを追加しなくても、実際のドキュメントはすでに独立性の仮定に違反しています。文書にオバマ氏の名前が記載されていることを条件に、大統領が登場する可能性ははるかに高い。それにもかかわらず、ナイーブ ベイズは、たとえそれが与える確率推定が絶望的に​​外れていたとしても、依然として分類においてまともな仕事をします。したがって、分類器にさらに複雑な機能を追加して、精度が向上するかどうかを確認することをお勧めします。

より少ないデータで同じ精度が得られる場合、それは基本的に、同じ量のデータでより高い精度が得られることと同じです。

一方、よりシンプルで一般的な機能を使用すると、データ量が減るにつれてうまく機能します。少なすぎるデータに多すぎるパラメータを適合させようとすると、過度に過剰適合する傾向があります。

しかし、肝心なのは実際に試してみることです。

他のヒント

いいえ、理論的な観点から、あなたは独立の仮定を変えていません。単に変更された(または新しい)サンプルスペースを作成しています。一般に、サンプルスペースのイベントとしてより高いNグラムの使用を開始すると、データスパースが問題になります。タプルを使用すると同じ問題につながると思います。おそらく、より多くのトレーニングデータが必要になるでしょう。また、使用するスムージングのタイプについてもう少し考えなければならないでしょう。単純なラプラスの滑らかは理想的ではないかもしれません。

最も重要なポイントは、これだと思います。使用している分類子が何であれ、機能はドメイン(および時にはデータセット)に大きく依存しています。たとえば、映画のレビューに基づいてテキストの感情を分類している場合、ユニグラムのみを使用すると直感に反するように見えるかもしれませんが、形容詞のみを使用するよりも優れたパフォーマンスがあります。一方、Twitterデータセットの場合、UnigramsとBigRamsの組み合わせが良いことがわかったが、より高いNグラムは有用ではなかった。そのようなレポートに基づいて(参照PangとLee、 意見採掘と感情分析)、より長いタプルを使用すると同様の結果が示されると思います。結局のところ、単語のタプルは単に高次元空間のポイントであるからです。基本的なアルゴリズムは同じように動作します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top