简体   繁体   English

有没有办法为R中的人工神经网络使用自定义学习功能?

[英]Is there a way to use a custom learning function for Artificial Neural Networks in R?

Is there a way (using just the R programming language) to implement an ANN algorithm with using a custom learning function (instead of backpropagation)? 有没有办法(仅使用R编程语言)通过使用自定义学习功能(而不是反向传播)来实现ANN算法? All of the R packages I have tested (nnet, neuralnet, AMORE) seem to have options for learning functions to train the weights, but none of them seem to include the optionality to plug in a custom function (say, hill climbing as an example). 我测试过的所有R包(nnet,neuralnet,AMORE)似乎都具有用于学习训练重量的功能的选项,但是它们似乎都没有插入自定义功能的可选项(例如,爬山为例) )。

I'd prefer to use R over another language, so if anybody knows of any package that can help, let me know. 与使用其他语言相比,我更喜欢使用R,因此,如果有人知道任何可以提供帮助的软件包,请告诉我。

Thanks! 谢谢!

OBSERVATION: 观察:

Hill Climbing is an optimization algorithm which works on neighbours and Backpropogation is a training algorithm . 爬山是一种适用于邻居优化算法反向传播是一种训练算法 Typically ANN packages use training methods to adjust weights based on error between two outputs:- it does not optimize (or replace weights) based on neighbors . 通常,ANN包使用训练方法基于两个输出之间的误差来调整权重:- 它不会基于邻居优化(或替换权重) That's why you'll only find options for learning functions to train the weights but none for training via hill climbing or so . 这就是为什么您只会找到用于学习功能以训练举重的选项,而没有找到通过爬山等进行训练的选项的原因。 This is by design 这是设计使然

SOLUTION: 解:

Use custom mathematics by means of input vectors, output vectors, matrix of node cells, in any language to have Hill Climbing ANN or so and iterate weights. 通过任何语言的输入向量,输出向量,节点单元矩阵来使用自定义数学 ,以具有Hill Climbing ANN左右的特性并迭代权重。

If not convinced for scratch implementation have a look at simple hill climbing in MATLAB. 如果不能说服您从头开始实施,请查看MATLAB中的简单爬坡 Am sure this will be re-writable in R 确保可以在R中将其重写

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM