多項式カーネルによるSVM
この演習では、章の前半で作成した放射状に分離可能なデータセットに対して、2次(次数2)の多項式カーネルを用いたSVMを構築します。次に、学習データとテストデータの正解率を計算し、組み込みの plot() 関数を使ってモデルのプロットを作成します。学習用とテスト用のデータセットはそれぞれデータフレーム trainset と testset にあり、e1071 ライブラリはあらかじめ読み込まれています。
この演習はコースの一部です
Rで学ぶSupport Vector Machines
演習の手順
- 学習データに対して、次数2の多項式カーネルを用いたSVMモデルを構築します。
- 与えられた学習/テスト分割について、学習とテストの正解率を計算します。
- 学習データに対するモデルのプロットを作成します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
svm_model<-
svm(y ~ ., data = trainset, type = "C-classification",
kernel = ___, degree = ___)
#measure training and test accuracy
pred_train <- predict(svm_model, ___)
mean(pred_train == ___$y)
pred_test <- predict(svm_model, ___)
mean(pred_test == ___$y)
#plot
plot(___, trainset)