0

ksvm(私のデータセットには1400の観測値を持つ21のカテゴリ変数と数値変数があります)を使用するときに、シグマの最良の値をどのように見つけることができるのか疑問に思っていました:ここに私のコードがあります:

rbf <- rbfdot(sigma = 0.05)
model <- ksvm(target~.,data = train,prob.model = TRUE,kernel = rbf)
p <- predict(model,test,type="probabilities")
4

2 に答える 2

1

役立つかもしれないことに同意しkpar="automatic"ますが、これは教師なしヒューリスティックを適用するだけであり、分類精度のためにパラメーターを必ずしも最適化するとは限りません。後者を行う唯一の方法は、クロス検証と組み合わせてグリッド検索を適用するラッパーを作成することです。自分で書きたくない場合は、mlr パッケージ (関数tuneParams()) を使用して作成できます。e1071 パッケージ (LIBSVM へのインターフェースを含む) もtune()、同じ種類の機能を提供します。

乾杯、UBod

于 2014-02-24T15:40:04.293 に答える
0

ksvm は最適なシグマ値を見つけます。私は書くことで働いています

svm ベクトルのトレーニング

ksvm_model<- ksvm(x=train,y=y,scaled=TRUE,type="nu-svr",kernel="rbfdot", kpar="automatic", prob.model=TRUE,class.weights=NULL,cache=100,cross=5);
#summary(ksvm_model);
# train and test the model over the test data 
next_y<-predict(ksvm_model,test_mat,type="response");

"kpar="automatic"" がそれを行います。

これをチェックしてください。

于 2013-03-27T18:40:33.723 に答える