不用看数学公式!图解谷歌神经机器翻译核心部分:注意力机制( 六 )

通过评分函数来获取每个编码器隐藏状态的分数(标量)。在这个例子中,评分函数是解码器和编码器隐藏状态之间的点积。

不用看数学公式!图解谷歌神经机器翻译核心部分:注意力机制

decoder_hidden = [10, 5, 10]encoder_hidden score---------------------[0, 1, 1] 15 (= 10×0 + 5×1 + 10×1, the dot product) [5, 0, 1] 60 [1, 1, 0] 15 [0, 5, 1] 35

在上面的例子中,编码器隐藏状态[5,0,1]的注意力分数为60,很高。这意味着要翻译的下一个词将受到这个编码器隐藏状态的严重影响。

第三步:通过softmax层运行所有得分

我们将得分放到softmax函数层,使softmax得分(标量)之和为1。这些得分代表注意力的分布。

encoder_hidden score score^-----------------------------[0, 1, 1] 15 0 [5, 0, 1] 60 1 [1, 1, 0] 15 0 [0, 5, 1] 35 0

推荐阅读