(b站上有一系列课,从数据处理到模型构建和训练使用)
什么是batch?
为什么一个batch内的句子要一样长?
不同batch的长度可以不一样,但是同一个batch内长度一样!
可以使用预训练的embedding矩阵
如果使用相同的预训练embedding矩阵,同样的词在不同的模型中应该对应相同的初始向量。(没有微调embedding矩阵的情况下)使用相同的词汇表即可。
mask的地方换成很大的负数,使其在softmax里面变成0
一般有2类mask
1. 屏蔽后面信息的mask(Look-ahead Mask / Causal Mask)
这种mask用于防止模型在训练过程中看到未来的词汇。通常在自回归模型(如语言模型)中使用,在生成某个词时,只允许模型看到它之前的词。
2. 屏蔽padding的mask(Padding Mask)
这种mask用于在处理不定长序列时屏蔽填充的部分。填充通常是为了将所有序列扩展到相同长度,以便可以批处理。我们不希望模型在处理这些填充值时产生误导。