機械学習(ニューラルネットワーク編)
ニューラルネットワークモデルで解析
3層パーセプトロンの構築していきます
パッケージの読み込みます
library(e1071)
library(kernlab)
library(nnet)
データセットにirisを取り込みます
data(iris)
データを教師データと解析用に分割します
n<-seq(1,nrow(iris),by=2)
iris.train<-iris[n,]
iris.test<-iris[-n,]
ニューラルネットワークモデルを構築します
weights: 27nn.model<-nnet(Species~.,data=iris.train,size=3,maxit=400)
weights: 27
initial value 87.608992
iter 10 value 30.366258
iter 20 value 10.375070
iter 30 value 0.033544
final value 0.000087
converged
解析用データを解析します
nn.pred<-predict(nn.model,iris.test,type="class")
解析結果を確認する
(nn.tab<-table(iris.test$Species,nn.pred) )
nn.pred
setosa versicolor virginica
setosa 25 0 0
versicolor 0 24 1
virginica 0 3 22
予測精度の確認します
sum(diag(nn.tab))/sum(nn.tab)
[1] 0.9466667
予測精度95.7%でまずまずの結果。
この記事が気に入ったらサポートをしてみませんか?