Llama也中招,混合精度下位置编码竟有大坑,百川智能给出修复妄想
位置编码技术是中招置编一种可能让神经收集建模句子中 Token 位信托息的技术 。在 Transformer 大行其道的混合时期,由于 Attention 妄想无奈建模每一个 token 的精度位信托息,位置编码(Position embedding) 成为 Transformer 颇为紧张的下位想一个组件。钻研职员也提出了林林总总的码竟位置编码妄想来让收集建模位信托息 ,Rope 以及 Alibi 是坑百当初最被普遍接管的两种位置编码妄想 。
可是川智出修最近来自百川智能的钻研发现,Rope 以及 alibi 位置编码的复妄主流实如今低精度(特意是 bfloat16) 下存在位置编码碰撞的 bug, 这可能会影响模子的磨炼以及推理。而且当初大部份主流开源模子的中招置编实现都存在该下场,连 llama 民间代码也中招了。混合
还患上从位置编码算法提及
为了弄清晰这个下场,精度患上先从位置编码的下位想算法道理提及 ,在 Transformer 妄想中,码竟所有 Attention Block 的坑百输入都市先经由位置编码,再输入收集妨碍后续处置。川智出修隧道的 Attention 妄想是无奈精确感知到每一个 token 的位信托息的 ,而对于语言的良多使命来说,语句的挨次对于语义信息的影响黑白常大的,为了建模 token 之间的位置关连 ,Transfomer 原始论文中引入地位编码来建模位信托息 。
为了让模子更好地建模句子的位信托息 ,钻研职员提出了多种位置编码妄想 ,meta 开源的 llama [4] 模子接管了 Rope [5] 妄想,使患上 Rope 成为在开源社区被普遍接管的一种位置编码妄想 。而 Alibi 编码因其精采的外推性也被普遍运用。
清晰低精度下的位置编码碰撞以前,先往返忆一下相关算法道理 。
Sinusoidal 位置编码
这是 Transformer 原始论文中提出的位置编码措施