华为开源预训练语言模型「哪吒」:编码、掩码升级,提升多项中文 NLP 任务性能( 六 )

\n

三头六臂 NEZHA(哪吒) \n

尽管这一预训练模型 NEZHA 的名称听起来有些匪夷所思 , 但它的开发者们将其视为「无所不能 , 可以解决不同任务」的寓意 。 在这个模型中 , 除了之前提到的重现、多卡多机并行训练之外 , 主要有两项改进 , 即:函数式相对位置编码与全词覆盖的实现 。

\n

一、函数式相对位置编码

\n

位置编码有函数式和参数式两种 , 函数式通过定义函数直接计算就可以了 。 参数式中位置编码涉及两个概念 , 一个是距离;二是维度 。 其中 , Word Embedding 一般有几百维 , 每一维各有一个值 , 一个位置编码的值正是通过位置和维度两个参数来确定 。

\n

NEZHA 预训练模型则采用了函数式相对位置编码 , 其输出与注意力得分的计算涉及到他们相对位置的正弦函数 , 这一灵感正是来源于 Transformer 的绝对位置编码 , 而相对位置编码则解决了在 Transformer 中 , 每个词之间因为互不知道相隔的距离引发的一系列资源占用问题 。

\n

位置编码模型

推荐阅读