发布于 2018-10-13 14:19:05
在反向传播中,您所做的是对一个函数的自动/算法微分的后向模式,该函数具有非常多的输入N,并且只有一个输出。这里的“输入”主要是指神经网络节点的实数参数,也可能是网络的输入变量。
在向后模式中,计算所有输入的导数,一次通过操作链。这需要花费大约3项功能评估,再加上向后执行操作链和存储和访问中间结果的组织开销。
在相同情况下的前向模式(用于“梯度检查”)中,如果您向前推进AD导数或计算被分割的差异,则需要单独计算每个导数。其总成本是关于2*N函数的评估。
由于N很大,2*N比3大得多。
https://stackoverflow.com/questions/52779783
复制相似问题