注:参考于《深度学习入门 | 基于Python的理论与实现》

一、Affine层

神经网络中矩阵的乘积运算中对应维度的元素个数要保持一致,XW 的乘积必须使对应维度的元素个数一致。

神经网络的正向传播中进行的矩阵的乘积运算在几何学领域被称为“仿射变换”A。因此,这里将进行仿射变换的处理实现为“Affine层”。

按矩阵的各个元素进行计算时,步骤和以标量为对象的计算图相同。

 

以矩阵为对象的反向传播, 按矩阵的各个元素进行计算时,步骤和以标量为对象的计算图相同

 

考虑N 个数据一起进行正向传播的情况,也就是批版本的Affi ne层。

 反向传播时,要注意矩阵的形状

二、Softmax-with-loss层

Softmax-with-loss层就是Softmax函数和交叉熵误差
Softmax层的反向传播得到了 (y1 t1, y2 t2, y3 t3)这样“漂亮”的结果。由于(y1, y2, y3)是Softmax层的 输出,(t1, t2, t3)是监督数据,所以(y1 t1, y2 t2, y3 t3)是Softmax层的输
出和教师标签的差分。神经网络的反向传播会把这个差分表示的误差传递给前面的层

 

Logo

更多推荐