我一直在努力获得反向传播的一些熟练,并且已经运行了标准的数学公式来做到这一点。我实施了一个似乎可以正常工作的解决方案(并通过了有关飞行颜色的相关测试)。反向传播公式似乎无法实现
但是...实际的解决方案(在MATLAB中实现,并使用向量化)在两个重要方面与公式不一致。
的计算公式如下:
三角二层=(θ-二层转)×Δ-三层点X gprime( - 现在并不重要)
工作代码如下所示:
% d3 is delta3, d2 is delta2, Theta2 is minus the bias column
% dimensions: d3--[5000x10], d2--[5000x25], Theta2--[10x25]
d3 = (a3 - y2);
d2 = (d3 * Theta2) .* gPrime(z2);
我无法调和一下我用数学公式来实现,基于两点:
- 工作代码反转表达式第一部分中的术语;
- 工作代码不转置theta- layer2,但公式确实。
这怎么可能?单个矩阵的尺寸似乎不允许任何其他工作组合。
乔希
它可能只取决于设置,两个实现如何定义矩阵。注意你不能做'Theta2'。 * d2'具有给定的尺寸。 – David
哦,我注意到了。这就是促使我首先发布这个问题的原因。 –