利用R实现简单的BP神经网络

BP神经网络学习

参考此篇视频数据挖掘:理论与算法


利用R来进行模拟参考以下这两篇文章使用R学习一个简单的神经网络使用neuralant包拟合一个神经网络

1.设置R的工作空间;读取原始数据

> setwd("C:/Users/ywb/Desktop/BP神经网络/")
> concrete<-read.csv("Concrete_Data.csv",header =  T,fileEncoding = "UTF-8",sep=",")

1.1先用线性模型进行拟合,并用测试数据集进行测试

> index<-sample(1:nrow(concrete),round(0.75*nrow(concrete)))
> train<-concrete[index,]
> test<-concrete[-index,]
> lm.fit<-glm(strength~.,data=train)
> summary(lm.fit)

结果如下所示:
线性模型检验

使用测试数据集测试如下:

> pr.lm<-predict(lm.fit,test)
> MSE.LM<-sum((pr.lm-test$strength)^2)/nrow(test)
> print(MSE.LM)
[1] 126.2464

使用均值方差MSE.LM来测试模型的拟合度。

2.将数据标准化(归一化处理)
在进行归一化处理之前,首先要确定数据是否有缺失值

> apply(concrete,2,function(x) sum(is.na(x)))

其中,”2”表示对列进行检验。如果数据没有缺失值,则每个属性下的值都为0,如下图所示:

  • 28
    点赞
  • 248
    收藏
    觉得还不错? 一键收藏
  • 19
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值