LibSVM (Java/Python) を使用してデータ セットに対して 10 分割の交差検証を実行する例はどこにありますか?
3468 次
2 に答える
5
Javaの場合;
libsvm が提供する svm_cross_validation() メソッドを使用できます。
double[] target = new double[svmProblem.l];
svm.svm_cross_validation(svmProblem, svmParameter, 10, target );
svm_problem および svm_parameter インスタンス (サンプルの svmProblem および svmParameter) を作成しておく必要があります。関数の 3 番目のパラメーターはフォールド数で、ターゲットはデータ セットの各サンプルの予測ラベル値の配列です。したがって、ターゲット配列の長さは、入力データの長さと同じである必要があります。
于 2011-03-14T18:52:39.687 に答える
0
あなたの質問に何か欠けているものがない限り、パッケージのサブディレクトリにあるsvmutil.py
スクリプトはn-fold cross validation モードを提供します:python
libsvm
-v n: n-fold cross validation mode
サブディレクトリ内のsvm_train.java
ファイルにjava
も、次のようなオプションがあります。
+"-v n : n-fold cross validation mode\n"
サンプル コードについては、これら 2 つのファイルを参照してください。
于 2011-03-12T12:46:59.690 に答える