23、深入理解Transformer架构:从编码器到训练模型

深入理解Transformer架构:从编码器到训练模型

1. 编码器架构概述

编码器架构由一个Keras层或模块(称为编码器层)重复N次构成。编码器层包含多头注意力机制和前馈网络,并进行归一化处理,以解决深度神经网络中的梯度消失问题。编码器的输入包括输入句子嵌入和位置编码,位置编码用于定义句子中单词的相对位置。

2. 掩码函数

在处理填充序列时,网络可能会将额外的填充标记(零)视为有效输入,因此需要编写掩码函数来屏蔽这些额外的填充。
- 填充掩码 :用于屏蔽填充标记。

def create_padding_mask(x):
    mask = tf.cast(tf.math.equal(x, 0), tf.float32)
    # (batch_size, 1, 1, sequence length)
    return mask[:, tf.newaxis, tf.newaxis, :]

示例:

x=tf.constant([[2974,   50, 2764, 2975,    0,    0,
                0,    0,    0,    0]])
create_padding_mask(x)

输出:

<tf.Tensor: shape=(1, 1, 1, 10), dtype=float32, 
numpy=arra
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值