当前位置:天才代写 > tutorial > 其他教程 > R语言中最强的神经网络包RSNNS

R语言中最强的神经网络包RSNNS

2017-12-04 08:00 星期一 所属: 其他教程 浏览:1270

R语言中已经有很多用于神经网络的package。譬喻nnet、AMORE以及neuralnet,nnet提供了最常见的前馈反向流传神经网络算法。AMORE包则更进一步提供了更为富厚的节制参数,并可以增加多个埋没层。neuralnet包的改造在于提供了弹性反向流传算法和更多的激活函数形式。但以上各包均环绕着BP网络,并未涉及到神经网络中的其它拓扑布局和网络模子。而新出炉的RSNNS包则在这方面有了极大的扩充。

Stuttgart Neural Network Simulator(SNNS)是德国斯图加特大学开拓的优秀神经网络仿真软件,为海外的神经网络研究者所遍及回收。其手册内容极为富厚,同时支持友好的 Linux 平台。而RSNNS则是毗连R和SNNS的东西,在R中即可直接挪用SNNS的函数呼吁。


#载入措施和数据

library(RSNNS)
data(iris)
#将数据顺序打乱

iris = iris[sample(1:nrow(iris),length(1:nrow(iris))),1:ncol(iris)]
#界说网络输入

irisValues= iris[,1:4]
#界说网络输出,并将数据举办名目转换

irisTargets = decodeClassLabels(iris[,5])
#从中分别出练习样本和检讨样本

iris = splitForTrainingAndTest(irisValues, irisTargets, ratio=0.15)
#数据尺度化

iris = normTrainingAndTestSet(iris)
#操作mlp呼吁执行前馈反向流传神经网络算法

model = mlp(iris$inputsTrain, iris$targetsTrain, size=5, learnFunc=”Quickprop”, learnFuncParams=c(0.1, 2.0, 0.0001, 0.1),maxit=100, inputsTest=iris$inputsTest, targetsTest=iris$targetsTest)
#操作上面成立的模子举办预测

predictions = predict(model,iris$inputsTest)
#生成夹杂矩阵,调查预测精度

confusionMatrix(iris$targetsTest,predictions)
功效如下:

predictions
targets 1 2 3
1 7 0 0
2 0 5 0
3 0 1 10

本例中mlp意指多层感知器,RSNNS包中其它重要的网络形式还包罗: dlvq(动态进修向量化网络), rbf(径向基函数网络), elman(elman神经网络), jordan(jordan神经网络), som(自组织映射神经网络), art1(适应性共振神经网络)等等

参考资料:
http://www.ra.cs.uni-tuebingen.de/SNNS/
http://cran.csdb.cn/web/packages/RSNNS/RSNNS.pdf
 

    关键字:

天才代写-代写联系方式