機械学習(サポートベクターマシン編)
パッケージの読み込みます
library(e1071)
library(kernlab)
データirisの読み込み、データを教師データと評価データの2つに分割します
data(iris)
n<-seq(1,nrow(iris),by=2)
iris.train<-iris[n,]
iris.test<-iris[-n,]
set.seed(1)
サポートベクターマシーンの構成します
svm.model<-svm(Species~.,type="C-classification",data=iris.train)
サポートベクターマシーンのモデル確認します
svm.model
Call:
svm(formula = Species ~ ., data = iris.train, type = "C-classification")
Parameters:
SVM-Type: C-classification
SVM-Kernel: radial
cost: 1
gamma: 0.25
Number of Support Vectors: 36
サポートベクターマシーンのモデルで評価データを予測します
svm.pred<-predict(svm.model,iris.test,type="class")
結果の確認します
head(svm.pred)
2 4 6 8 10 12
setosa setosa setosa setosa setosa setosa
Levels: setosa versicolor virginica
予測結果を表示します
(svm.tab<-table(iris.test$Species,svm.pred))
svm.pred
setosa versicolor virginica
setosa 25 0 0
versicolor 0 25 0
virginica 0 3 22
予測精度の確認します
sum(diag(svm.tab))/sum(svm.tab)
[1] 0.96
この記事が気に入ったらサポートをしてみませんか?