R语言建立神经网络过程


# 神经网络模型构建

# 设置工作空间
# 把“数据及程序”文件夹拷贝到F盘下,再用setwd设置工作空间
setwd("F:/数据及程序/chapter6/示例程序")
# 读取数据
trainData <- read.csv("./data/trainData.csv")

# 将class列转换为factor类型,例,transform(数据集,要进行的操作)

trainData <- transform(trainData, class = as.factor(class))
# 神经网络模型构建
library(nnet) # 加载nnet包
# 利用nnet建立神经网络,设定神经网络的输入节点数为 3,输出节点数为1,中间隐藏节点数为 10,权值的衰减参数为 0.05
nnet.model <- nnet(class ~ ele_ind + loss_ind + alarm_ind, trainData, 
                   size = 10, decay = 0.05)
summary(nnet.model)
# 建立混淆矩阵
confusion <- table(trainData$class, predict(nnet.model, trainData, 

                                            type = "class"))

>confusion
   
       0      1
  0
  202   3
  1  10    25

accuracy <- sum(diag(confusion)) * 100 / sum(confusion)
> accuracy
[1] 94.58333

# 保存输出结果
output_nnet.trainData <- cbind(trainData, predict(nnet.model, trainData, 

                                                  type = "class"))

#把预测结果与原先数据合并,并预测结果那一列命名为output

colnames(output_nnet.trainData) <- c(colnames(trainData), "OUTPUT")

write.csv(output_nnet.trainData, "./tmp/output_nnet.trainData.csv", 
          row.names = FALSE)



# 保存神经网络模型
save(nnet.model, file = "./tmp/nnet.model.RData")

。。。。。。。。。。。。。。。完。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

其他transform()函数的小例子

transform(airquality, Ozone = -Ozone)
transform(airquality, new = -Ozone, Temp = (Temp-32)/1.8)

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值