【问题标题】:Is there a way to use a custom learning function for Artificial Neural Networks in R?有没有办法在 R 中为人工神经网络使用自定义学习功能?
【发布时间】:2014-04-04 00:16:24
【问题描述】:

有没有办法(仅使用 R 编程语言)使用自定义学习函数(而不是反向传播)来实现 ANN 算法?我测试过的所有 R 包(nnet、neuralnet、AMORE)似乎都有学习函数来训练权重的选项,但它们似乎都没有包含插入自定义函数的可选性(例如,爬山作为示例)。

我更喜欢使用 R 而不是另一种语言,所以如果有人知道任何可以提供帮助的软件包,请告诉我。

谢谢!

【问题讨论】:

  • 请注意nnet 不使用反向传播;它使用准牛顿算法(基本上是 BFGS)来优化权重。

标签: r algorithm machine-learning hill-climbing


【解决方案1】:

观察:

Hill Climbing 是一种优化算法,适用于邻居Backpropogation 是一种训练算法。通常,ANN 包使用训练方法根据两个输出之间的误差调整权重:- 它不会基于邻居优化(或替换权重)。这就是为什么您只能找到用于训练权重的学习函数选项,而找不到用于通过爬山等方式进行训练的选项。这是设计使然

解决方案:

通过任何语言的输入向量、输出向量、节点单元矩阵的方式使用自定义数学来获得Hill Climbing ANN或所以并迭代权重。

如果不相信从头开始实施,请查看 MATLAB 中的 simple hill climbing。确信这将在 R 中重写

【讨论】:

    猜你喜欢
    • 2023-04-09
    • 2022-07-20
    • 1970-01-01
    • 2018-04-10
    • 2021-03-15
    • 2016-05-25
    • 1970-01-01
    • 2010-10-03
    • 2015-02-24
    相关资源
    最近更新 更多