首页 理论教育 递归神经网络的前向计算方法

递归神经网络的前向计算方法

时间:2023-06-21 理论教育 版权反馈
【摘要】:在图5-12中,我们使用递归神经网络处理一棵树,最终得到的向量就是对整棵树的表示。举个例子,我们使用递归神经网络将“两个外语学院的学生”映射为一个向量,如图5-13所示。式(5-1)就是递归神经网络的前向计算方法。图5-12递归神经网络表示为树形结构图5-13递归神经网络表示的不同含义句子的树形结构需要特别注意的是,递归神经网络的权重W和偏置项b在所有的节点都是共享的。

递归神经网络的前向计算方法

递归神经网络的输入是两个(也可以是多个)子节点,输出就是将这两个子节点编码后产生的父节点,父节点的维度和每个子节点是相同的,如图5-11所示。

图5-11 全连接神经网络

c1和c2分别是表示两个子节点的向量,p是表示父节点的向量。子节点和父节点组成一个全连接神经网络,也就是子节点的每个神经元都和父节点的每个神经元两两相连。我们用矩阵表示这些连接上的权重,它的维度是d×2d,其中,d表示每个节点的维度。父节点的计算公式可以写成

在上式中,tanh是激活函数(当然也可以用其他的激活函数),b是偏置项,它也是一个维度为d的向量。如果读过前面的章节,相信大家已经非常熟悉这些计算了,在此不做过多的解释。

然后,我们把产生的父节点的向量和其他子节点的向量再次作为网络的输入,再次产生它们的父节点。如此递归下去,直至整棵树处理完毕。最终,我们将得到根节点的向量,我们可以认为它是对整棵树的表示,这样我们就实现了把树映射为一个向量。在图5-12中,我们使用递归神经网络处理一棵树,最终得到的向量就是对整棵树的表示。

举个例子,我们使用递归神经网络将“两个外语学院的学生”映射为一个向量,如图5-13所示。(www.zuozong.com)

最后得到的向量p3就是对整个句子“两个外语学院的学生”的表示。由于整个结构是递归的,不仅是根节点,事实上每个节点都是以其为根的子树的表示。比如,在图5-13(a)所示的这棵树中,向量p2是短语“外语学院的学生”的表示,而向量p1是短语“外语学院的”的表示。

式(5-1)就是递归神经网络的前向计算方法。它和全连接神经网络的计算没有什么区别,只是在输入的过程中需要根据输入的树结构依次输入每个子节点。

图5-12 递归神经网络表示为树形结构

图5-13 递归神经网络表示的不同含义句子的树形结构

需要特别注意的是,递归神经网络的权重W和偏置项b在所有的节点都是共享的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈

相关推荐