When Precision Meets Position: BFloat16 Breaks Down RoPE in Long-Context Training

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Wang, Haonan, Liu, Qian, Du, Chao, Zhu, Tongyao, Du, Cunxiao, Kawaguchi, Kenji, Pang, Tianyu
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866915035199045632
author Wang, Haonan
Liu, Qian
Du, Chao
Zhu, Tongyao
Du, Cunxiao
Kawaguchi, Kenji
Pang, Tianyu
author_facet Wang, Haonan
Liu, Qian
Du, Chao
Zhu, Tongyao
Du, Cunxiao
Kawaguchi, Kenji
Pang, Tianyu
contents Extending context window sizes allows large language models (LLMs) to process longer sequences and handle more complex tasks. Rotary Positional Embedding (RoPE) has become the de facto standard due to its relative positional encoding properties that benefit long-context training. However, we observe that using RoPE with BFloat16 format results in numerical issues, causing it to deviate from its intended relative positional encoding, especially in long-context scenarios. This issue arises from BFloat16's limited precision and accumulates as context length increases, with the first token contributing significantly to this problem. To address this, we develop AnchorAttention, a plug-and-play attention method that alleviates numerical issues caused by BFloat16, improves long-context capabilities, and speeds up training. AnchorAttention reduces unnecessary attention computations, maintains semantic coherence, and boosts computational efficiency by treating the first token as a shared anchor with a consistent position ID, making it visible to all documents within the training context. Experiments on three types of LLMs demonstrate that AnchorAttention significantly improves long-context performance and reduces training time by over 50\% compared to standard full attention mechanisms, while preserving the original LLM's capabilities on general tasks. Our code is available at https://github.com/haonan3/AnchorContext.
format Preprint
id arxiv_https___arxiv_org_abs_2411_13476
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle When Precision Meets Position: BFloat16 Breaks Down RoPE in Long-Context Training
Wang, Haonan
Liu, Qian
Du, Chao
Zhu, Tongyao
Du, Cunxiao
Kawaguchi, Kenji
Pang, Tianyu
Computation and Language
Extending context window sizes allows large language models (LLMs) to process longer sequences and handle more complex tasks. Rotary Positional Embedding (RoPE) has become the de facto standard due to its relative positional encoding properties that benefit long-context training. However, we observe that using RoPE with BFloat16 format results in numerical issues, causing it to deviate from its intended relative positional encoding, especially in long-context scenarios. This issue arises from BFloat16's limited precision and accumulates as context length increases, with the first token contributing significantly to this problem. To address this, we develop AnchorAttention, a plug-and-play attention method that alleviates numerical issues caused by BFloat16, improves long-context capabilities, and speeds up training. AnchorAttention reduces unnecessary attention computations, maintains semantic coherence, and boosts computational efficiency by treating the first token as a shared anchor with a consistent position ID, making it visible to all documents within the training context. Experiments on three types of LLMs demonstrate that AnchorAttention significantly improves long-context performance and reduces training time by over 50\% compared to standard full attention mechanisms, while preserving the original LLM's capabilities on general tasks. Our code is available at https://github.com/haonan3/AnchorContext.
title When Precision Meets Position: BFloat16 Breaks Down RoPE in Long-Context Training
topic Computation and Language
url https://arxiv.org/abs/2411.13476