R에서 신경망 시각화
목차
R의 신경망 시각화 패키지
neuralnet 함수는 표준으로 plot() 함수에 의해 계산 그래프를 시각화할 수 있다. neuralnet 함수와 같은 기능이 없는 다른 신경망 패키지를 사용했을 때의 계산 그래프의 시각화 방법을 아래에 메모.
- plot.nn 함수
- plotnet 함수
아래 준비
샘플 데이터는 iris를 사용
학습기 만들기
d=iris d$Species <- as.factor(d$Species) #train_test_split set.seed(0) sample <- sample.int(n = nrow(d), size = floor(0.80*nrow(d)), replace = F) train <- d[sample, ] test <- d[-sample, ] summary(train) #nnet library(nnet) nn1=nnet(Species~., size=5, data=train) pred_nn1 <- predict(nn1, test,type="class") table(test$Species,pred_nn1)
nnet 시각화
둘 다 색으로 음수를, 굵기로 숫자의 크고 작은 것을 나타냅니다.
plot.nn 함수
source("http://hosho.ees.hokudai.ac.jp/~kubo/log/2007/img07/plot.nn.txt") plot.nn(nn1)
plot.nnet 함수
install.packages("NeuralNetTools") library(NeuralNetTools) plotnet(nn1)
그건 그렇고, neuralnet 함수에서
library(caret) tmp <- dummyVars(~.,data=train) dummy <- as.data.frame(predict(tmp, train)) library("neuralnet") f = Species.setosa + Species.versicolor + Species. virginica~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width nn2 <- neuralnet(formula = f, data = dummy) plot(nn2)
변수가 많아지는 경우는 가로 방향의 plotnet 함수에 의한 가시화 쪽이 보기 쉽네요. plotnet 함수는, nnet 뿐만 아니라 RSNNS나 caret로 작성한 신경망도 가시화할 수 있어 적응 범위가 넓기 때문에 사용하기 쉽습니다.
토론
코멘트 목록
아직 코멘트가 없습니다.