# 安装包
if (!requireNamespace("data.table", quietly = TRUE)) {
install.packages("data.table")
}if (!requireNamespace("jsonlite", quietly = TRUE)) {
install.packages("jsonlite")
}if (!requireNamespace("NeuralNetTools", quietly = TRUE)) {
install.packages("NeuralNetTools")
}if (!requireNamespace("nnet", quietly = TRUE)) {
install.packages("nnet")
}
# 加载包
library(data.table)
library(jsonlite)
library(NeuralNetTools)
library(nnet)
神经网络
注记
Hiplot 网站
本页面为 Hiplot Neural Network
插件的源码版本教程,您也可以使用 Hiplot 网站实现无代码绘图,更多信息请查看以下链接:
环境配置
系统: Cross-platform (Linux/MacOS/Windows)
编程语言: R
依赖包:
data.table
;jsonlite
;NeuralNetTools
;nnet
数据准备
# 加载数据
<- data.table::fread(jsonlite::read_json("https://hiplot.cn/ui/basic/neural-network/data.json")$exampleData$textarea[[1]])
data <- as.data.frame(data)
data
# 查看数据
head(data)
Y1 Y2 X1 X2 X3
1 0.7646258 0.5494452 -0.89691455 -1.8923489 0.6408445
2 0.2383994 0.4605024 0.18484918 1.2928042 -1.6013778
3 0.3800247 0.2527468 1.58784533 -0.6182543 -0.7778154
4 0.3545279 0.6319730 -1.13037567 1.0409383 -1.6473925
5 0.3667356 0.4684437 -0.08025176 1.1758795 0.1542662
6 0.5509560 0.4439474 0.13242028 -1.5018321 -1.1756313
可视化
# 神经网络
<- nnet(Y1 ~ X1 + X2 + X3, data = neuraldat, size = 10,
mod maxint = 100, decay = 0)
# weights: 51
initial value 59.384328
iter 10 value 1.094352
iter 20 value 0.092098
iter 30 value 0.051379
iter 40 value 0.029072
iter 50 value 0.017002
iter 60 value 0.013721
iter 70 value 0.011593
iter 80 value 0.009377
iter 90 value 0.007497
iter 100 value 0.005069
final value 0.005069
stopped after 100 iterations
# plot
par(mar = numeric(4))
plotnet(mod)
