2017-12-11 17 views
0

私は分類子をテストしたいデータがあります。 このデータには多くの属性があり、ターゲットクラスはバイナリtrue/falseです。 また、データは1-32と呼ばれる32のソースから得られることがわかります。 この情報はarffファイルにあります。名目値に基づくWeka-cross検証

だから私はarffファイルがあります:私は、例えば、クロスバリデーション4倍を選択することができる分類器の下にWEKAエクスプローラで

@attribute <MANY ATTRIBUTES> 
@attribute <MANY ATTRIBUTES> 
@attribute class {True,False} 
@attribute source {1,2,3,4,5,6,7,8,9,...,30,31,32} 

を。 しかしwekaはそのインスタンスをランダムに4個のビンに並べます。私が望むのは、wekaが列車として24のソースを使用し、テストとして8を使用するということです。 したがって、各ソースは完全にテストまたは列車のいずれかにありますが、両方ではありません。

オンボードの方法で何とかできますか?

+0

https://stackoverflow.com/questions/47683638/preserve-order-for-cross-validation-in-weka/47688033#47688033 – zbicyclist

+0

istは保存順序のみをサポートしているため(私の場合は)「ソース」ごとに同じ量のインスタンスがあれば(おそらく)役立ちます。それはそうではありません。 – user1270045

答えて

0

4倍のクロスバリデーションを使用せず、列車として24、テストとして8を使用する場合は、ファイルを2(1つは24、もう1つは8)に分割できます。前処理に24ファイルをロードします。 [クラシファイア]タブで、相互検証の代わりに、[提供されたテストセット]の横にあるラジオボタンをクリックし、8つのファイルのファイル名を指定します。

+0

私は、セットを複製し、各サブセットを削除する可能性を認識しています。これはスクリプトを介して行うこともできますが、繰り返し実行するとうまくスケーリングするものではありません。クロスオーバーの全体的なポイントは、それを複数回実行することで、結果は自動的に平均化されます。 – user1270045

関連する問題