【发布时间】:2018-05-13 23:40:38
【问题描述】:
我正在研究一个使用 Sigmoid 激活函数的 XOR 神经网络。
我有一个可用的 python 代码,但我需要将其中一行转换为 MATLAB 可以理解的代码。我查看了有关 NumPy 的文档,我知道它有自己的数组运算符。我只是无法为dH 组合一个等效的 MATLAB。这部分在一个显式的 for 循环中。
dZ = E * sigmoid_(Z) # delta Z
dH = dZ.dot(Wz.T) * sigmoid_(H) # delta H
解释也有助于我进一步理解。如果需要我的完整代码,请不要犹豫,但我知道不需要。
【问题讨论】:
-
dZ 是正常乘积,dZ.dot(Wz.T) 是矩阵乘积乘以向量。
-
mathesaurus.sourceforge.net/matlab-python-xref.pdf 在这里您可以找到 numpy 命令和翻译后的 matlab 命令
-
如果您为所有输入变量提供形状(例如
E.shape、Wz.shape),将会有所帮助。我假设它们都是 numpy 数组。 -
@MaxKrappmann 谢谢。我已经浏览了 mathesaurus 资源和其他几个资源。当涉及到
dot()时,它们的等价性是相同的,但它没有解释它前面的变量如何将其从数组点积更改为矩阵乘以数组。我感谢你提供的信息。它们的大小不同。 -
E = (4 1) dH = (4 3)
标签: python matlab numpy neural-network xor