0

私は特定のドメインのデータセットを持っています(例えばsports-1クラス)。私がしたいのは、Webページを分類器/クラスタラーに与えたときです。そのインスタンス(Webページ)がスポーツに関係しているかどうかにかかわらず、結果を取得したいのです。マシンは、データセットに1つのクラスのインスタンスしか含まれていない場合にどのようなアプローチを使用するのか学習しますか?

wekaの分類器のほとんどは、LibSVM(ラッパー)を除く単一クラスのデータセットを扱うことができません。私はLibSVMでいくつかのテストを行いましたが、無関係なデータセットのテスト中に問題が発生しました。たとえインスタンスが空であっても、それらをすべて正しく分類できます。助言がありますか?
ここでコサイン類似度を使用するとどうなりますか?

答えて

3

あなたはこのスレッドunary class text classification in weka?とこの投稿を見ましたか?https://list.scms.waikato.ac.nz/mailman/htdig/wekalist/2007-October/011631.html

「スポーツ」以外の別のデータセットに対して分類子を実行すると、誤って分類された結果(誤検出など)が発生することを意味しているとします。 "これはスポーツです"。

あなたのデータセットには1つのクラスしか含まれていませんか?データセットに空のインスタンスが含まれていないことを確認しましたか? (嘲笑しないで、これは以前私に起こった)。

前述のスレッドのコメントには、SVMチューニングに関するPDFにリンクされています。http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf - SVMは他の一般的な分類子よりも少し難しいと思います。

代わりに、問題をバイナリ分類に切り替えることはできませんか?良い結果を得ることははるかに簡単で、ほとんどの問題については、そのクラスに含まれていないものの例がたくさんあります。スポーツのウェブサイトVS面白い画像、ウェブサイト、ウェブサイトのプログラミング、等...

PS:あなたが外れ値検出のための他のアルゴリズムを使用することができます。http://en.wikipedia.org/wiki/Outlier_detection

+0

はい、私はそのスレッドを見てきました「それは私が開始されただって:)とあなたが言及した他のすべてのリソースも見てきました。はい、あなたの前提は正しいです。私のデータセットは1つのクラスのみを含んでいます(私はwekaを使用していて、パス - > 1クラス内に1つのフォルダしか含みません)。私は訓練データセットを再チェックし、空のインスタンスはない(嘲笑する必要はない:D)。私はSVMガンマとnuパラメータをチューニングしましたが、信頼できるモデルを得ることはできませんでした。私はここではバイナリ分類を行うことはできません。なぜなら、私はWebクローリング研究でこれをやっていて、あなたが得たWebページはあらかじめわかっていないからです。 Contrast .. – KillBill

+0

ここでコサインの類似性を使うのはどうですか?トレーニングデータに最も頻繁に出てくる言葉を使ってセントロイドを構築することができます。そして、一度新しいインスタンスが供給されると、類似性スコアに基づいて、適切かどうかを判断できます。 – KillBill

+0

はい。それは良い解決策のように思えます。測定にかかわらず動作するはずです(コサイン、ユークリッドなど)。 – rei

関連する問題