【R】神经网络相关的R包
2016-06-29 15:40
483 查看
本科毕业设计涉及用机器学习的方法训练预测模型,线性回归、SVM、RF等方法表现均不理想,于是需要用简单的神经网络方法做对比实验。在对NN的优化没有深入理解的情况下,直接调用了R包提供的接口,在此略作记录,供以后反思改进。
主要用到了nnet、neuralnet、h2o这几个包,具体的建模、预测、优化的方法在手册中均能查到。nnet、neuralnet提供的都是单隐藏层的简单神经网络,h2o提供了DNN的方法。
数据需要按照模型的格式要求进行预处理再输入,例如某些包要求label信息映射到[0,1]。多看手册以及原始论文了解优化方法,切记!
主要用到了nnet、neuralnet、h2o这几个包,具体的建模、预测、优化的方法在手册中均能查到。nnet、neuralnet提供的都是单隐藏层的简单神经网络,h2o提供了DNN的方法。
library(nnet) data<-read.csv("tomcat_done_1.csv",header=T) total_size <-363 test_size <- 90 train=sample(1:dim(data)[1],total_size-test_size) train_set<- data[train,] test<-data[-train,1:35] test_effort<- data[-train,36] count <-0 m<-nnet(Effort~.,train_set,size=9,decay=0.015,maxit=10,linout=T,trace=F,MaxNWts=8000) preds <- predict(m,test)
library(neuralnet) data<-read.csv("tomcat_done_2.csv",header=T) total_size <-363 test_size <- 90 train=sample(1:dim(data)[1],total_size-test_size) train_set<- data[train,] test<-data[-train,1:35] test_effort<- data[-train,36] count <-0 m<-neuralnet(Effort~CountDeclClass+CountDeclClassMethod+CountDeclClassVariable +CountDeclFunction+CountDeclInstanceMethod+CountDeclInstanceVariable +CountDeclMethod+CountDeclMethodDefault+CountDeclMethodPrivate +CountDeclMethodProtected+CountDeclMethodPublic+CountLine +CountLineBlank+CountLineCode+CountLineCodeDecl+CountLineCodeExe +CountLineComment+CountSemicolon+CountStmt+CountStmtDecl+CountStmtExe +SumCyclomatic+SumCyclomaticModified+SumCyclomaticStrict+SumEssential +MaxCyclomatic+MaxCyclomaticModified+MaxCyclomaticStrict+MaxEssential +MaxNesting+AvgCyclomatic+AvgCyclomaticModified+AvgCyclomaticStrict +AvgEssential+RatioCommentToCode,data = train_set,hidden = 2) preds <- compute(m,test)
数据需要按照模型的格式要求进行预处理再输入,例如某些包要求label信息映射到[0,1]。多看手册以及原始论文了解优化方法,切记!
相关文章推荐
- Android 采用HttpClient提交数据到服务器
- iOS实时获取网络状态之RealReachability
- Android-NoHttp问答记录
- Azure虚拟网络P2S连接错误,0x800b0109
- 通过从网络请求得到的数据
- HttpClientProxyUtil HTTPClient请求工具类源码
- sar监听网络流量
- android 加载网络数据(3)
- HttpProxyUtil HTTP请求工具类源码
- android 加载网络数据(2)图片
- network interface card 网络接口卡
- 互联网开发2-HTTPS通信原理
- Swift网络封装库Moya中文手册之RxSwift
- libevent学习笔记 - 0 Preliminaries
- java网络编程:RandomAccessFile, URLConnection和多线程机制实现了Http下载
- 获取网络图片,并保存到本地
- 传智播客网络营销课程大升级,改变从“薪”开始
- 经典的BPN带动量的误差反向传播神经网络类代码示例
- java网络编程: UDP 广播与多播的实现
- node.js http