首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何计算神经网络中的回路?

如何计算神经网络中的回路?
EN

Stack Overflow用户
提问于 2015-06-25 04:28:10
回答 2查看 656关注 0票数 0

如果神经网络中的两个节点相互指向,如何防止网络陷入无限循环?

EN

回答 2

Stack Overflow用户

发布于 2015-06-25 04:52:57

你所设想的方法论是:

代码语言:javascript
复制
calculate a node's new output
for each node that takes that node as input:
    calculate that node's new output

如果在节点之间的连接中有任何循环,这确实会导致无限循环。

节点更新应该“同时”进行,如下所示:

代码语言:javascript
复制
for each node in nodes
  read inputs
  calculate and store new output as node->new_output
for each node in nodes
  node->output = node->new_output
票数 1
EN

Stack Overflow用户

发布于 2015-06-25 05:31:46

正如我在评论中提到的,有几个因素可能会影响神经网络训练所需的时间(可能是无限长)。如果使用诸如反向传播之类的算法,该算法由一系列矩阵运算、取导数和调整神经元权重组成,则在误称中使用“循环”的概念,前馈也是如此。一旦在测试集上达到期望的误差,通常就可以训练网络。由于backprop是一种非凸优化方法,因此很可能在神经元的特定设置中,例如让它们引用先前的神经元,而不是二分的,训练可能永远不会完成,因为永远不会达到期望的误差水平,并且算法可能停留在局部最小值。

其他一些神经网络模型,如具有固有递归结构的RNN,在某些领域表现得相当好,但训练它们并不像简单地执行反向传播那样简单,因此“无限循环”方面也不太容易在这里应用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31036378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档