1

LibSVM (Java/Python) を使用してデータ セットに対して 10 分割の交差検証を実行する例はどこにありますか?

4

2 に答える 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 モードを提供します:pythonlibsvm

-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 に答える