2012-04-09 6 views
1

WekaのNaiveBayes分類を使用して新しく訓練された分類子で分類したいラベルのないデータセットがあります。したがって、実際にwekaのClassifyモードで、Supplied Testオプションを指定すると、ラベルが付けられて評価され、正確さが与えられた場合にのみテストセットが受け入れられます。 しかし、train.csvやtrain.arffファイルを使用してtrain.csファイルを作成し、それに目に見えない未ラベルのtest.csvファイルまたはtest.arffファイルを与えて分類し、トレーニングファイルのクラスに応じてラベルを付けることをお勧めします。しかし、私はそれが与えるwwekaするテストファイルとして標識されていないファイルを提供する場合:Wekaの新しく訓練されたNaiveBayesクラシファイアで非ラベルデータセットを分類する方法

ERROR: Train and Test set not compatible

私の列車とテストファイルのサンプル形式は以下の通りです:

 
Train.csv file: 
article story .......hockey class 
1  0  ...... 0  politics 
0  0  .......1  sports 
. 
. 
. 
. 
.       sports 

とのtest.CSVファイル:

 
article story .......hockey class 
0  1  ...... 0  
1  0  .......1  
. 
. 
. 
. 
. 

どのようにしてWeikのラベルの付いていないデータセットをNaiveBayesクラシファイアを使って分類しますか?

+0

答えがあなたのアイデアを明確にするのに役立ちましたら、回答の横にある「チェック」マークを右クリックしてください。ありがとう。 –

答えて

0

テストセットがラベルされていても、Wekaは最初の段階でそれを見ません。これは、トレーニングデータを使用して開発した分類子を使用して、提供したテストセットに分類子を適用します。次に、分類器は各インスタンスクラスを予測し、Wekaは正しいか不正な分類を追跡します。あなたがここでやっていることは、まさにあなたが達成しようとしていることです。このエラーは、テストセットから「クラス」ラベルを削除したと考えられるため、トレーニングセットとテストセットが互換性がないことを示しています。心配しないでください。それをそのままにしておくと、Wekaから得られる正確さは、クラシファイアの実際のパフォーマンスです。希望が役立ちます。

+1

あなたはクラスラベルについては正しいですが、残りは間違っています。 Wekaは予測されたクラスのみを持っているが実際のものは持っていないときに、どのようにパフォーマンスを計算できますか? – Sentry

1

あなたはクラスラベルがありません。 Wekaはトレーニングとテストが同じ順序で全く同じ属性を持つように設定する必要があります。

あなたは、あなたのテストのクラスが、性能を予測するもので、実際のクラスラベルを比較することによって計算される

を設定知っている:今、2つのケースがあります。トレーニングセットのように、テストセットにクラスラベルを指定する必要があります。

あなたは、あなたのテストのクラスがパフォーマンスを計算するには

を設定するかわからない、ウェカは、実際のクラスと予測クラスを比較する必要があります。実際のクラスがない場合は、パフォーマンスを計算することはできません。あなたはクラスを予測することしかできません。 予測がほしいだけの場合は、テストインスタンスの値が欠落したclassラベルを追加する必要があります。あなたは空のそれをすべて残し傾ける

0

は、あなたが

  • 記事の物語(WEKAのための「手掛かり」のいくつかの種類として)少なくとも1つのクラスのフィールド上の各クラスラベルを設定する必要があります..... ..hockeyクラス
  • 0 1 0 ......政治
  • 1 0 ....... 1スポーツ
  • 1 1 ....... 1?
  • 1 1 ....... 1?

2つの最初の行はwekaに予測クラスの例を提供します。次に、訓練されたモデルを使用してクラスなしのインスタンス(?)を予測することができます

関連する問題