在大多数的神经网络教科书中,神经网络一般都会使用 y = WX+B 或者 y = XW+B 的形式。但是在 tensorflow 或者 theano 中,神经网络的实现都是采用了 y = XW+B 的形式。这是为什么呢?我花了很多的时间去查找资料,最后发现一点,可能是 y = XW+B 计算导数比 y = WX+B 容易。

从理论上讲,XW+B 和 WX+B 在神经网络中是等价的(其实就是一个矩阵的转置)。然而,当我们计算两者的导数的时候却差别很大。我们通过具体的数学推导来感受一下吧。

比如:y = XW

10012344_gUJT.png

比如:y = WX

10012353_985C.png

原文

matrix cookbook

转载于:https://my.oschina.net/u/3579120/blog/1533442

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐