Bài báo · arXiv 2104.09864
RoFormer: Mô hình Transformer cải tiến với Rotary Position Embedding
RoFormer: Enhanced Transformer with Rotary Position Embedding
Xuất bản cs.CLcs.AIcs.LG arXivPDF
Tóm tắt trong ba dòng
- 🎯 Các vector vị trí tiêu chuẩn hoặc là vector tuyệt đối dạng cộng, hoặc là các chỉnh sửa tương đối làm mất khả năng tương thích với linear self-attention.
- 🔧 RoPE nhân các vector query và key với các ma trận quay đường chéo khối trực giao để tích vô hướng của chúng chỉ phụ thuộc vào khoảng cách tương đối giữa các token.
- 📈 Đạt 27.5 BLEU trên WMT 2014 En-De, hội tụ nhanh hơn trong quá trình tiền huấn luyện, và vượt trội hơn WoBERT trên CAIL2019-SCM 1.5% độ chính xác ở độ dài chuỗi 1024.
Tóm tắt
Mã hóa vị trí gần đây đã cho thấy tính hiệu quả trong kiến trúc transformer. Nó mang lại sự giám sát giá trị cho việc mô hình hóa phụ thuộc giữa các phần tử ở các vị trí khác nhau trong chuỗi. Trong bài báo này, trước tiên chúng tôi nghiên cứu các phương pháp khác nhau nhằm tích hợp thông tin vị trí vào quá trình học của các mô hình ngôn ngữ dựa trên transformer. Sau đó, chúng tôi đề xuất một phương pháp mới mang tên Rotary Position Embedding (RoPE) để tận dụng hiệu quả thông tin vị trí. Cụ thể, RoPE mã hóa vị trí tuyệt đối bằng một ma trận quay, đồng thời tích hợp sự phụ thuộc vị trí tương đối một cách tường minh vào công thức self-attention. Đáng chú ý, RoPE sở hữu các đặc tính quý giá, bao gồm tính linh hoạt về độ dài chuỗi, sự suy giảm phụ thuộc giữa các token khi khoảng cách tương đối tăng lên, và khả năng trang bị mã hóa vị trí tương đối cho linear self-attention. Cuối cùng, chúng tôi đánh giá mô hình transformer cải tiến với rotary position embedding, còn gọi là RoFormer, trên nhiều tập dữ liệu chuẩn phân loại văn bản dài. Các thử nghiệm cho thấy mô hình luôn vượt trội hơn các phương pháp thay thế. Hơn nữa, chúng tôi cung cấp phân tích lý thuyết để giải thích một số kết quả thực nghiệm. RoFormer hiện đã được tích hợp vào Huggingface: \url{https://huggingface.co/docs/transformers/model_doc/roformer}.
Tóm tắt gốc (tiếng Anh)
Position encoding recently has shown effective in the transformer architecture. It enables valuable supervision for dependency modeling between elements at different positions of the sequence. In this paper, we first investigate various methods to integrate positional information into the learning process of transformer-based language models. Then, we propose a novel method named Rotary Position Embedding(RoPE) to effectively leverage the positional information. Specifically, the proposed RoPE encodes the absolute position with a rotation matrix and meanwhile incorporates the explicit relative position dependency in self-attention formulation. Notably, RoPE enables valuable properties, including the flexibility of sequence length, decaying inter-token dependency with increasing relative distances, and the capability of equipping the linear self-attention with relative position encoding. Finally, we evaluate the enhanced transformer with rotary position embedding, also called RoFormer, on various long text classification benchmark datasets. Our experiments show that it consistently overcomes its alternatives. Furthermore, we provide a theoretical analysis to explain some experimental results. RoFormer is already integrated into Huggingface: \url{https://huggingface.co/docs/transformers/model_doc/roformer}.
Hướng dẫn đọc
Vấn đề và động lực
Cơ chế self-attention trong Transformer vốn có tính bất biến với hoán vị (permutation-invariant), đòi hỏi phải có thông tin vị trí rõ ràng. Các phương pháp trước đây nhìn chung chia thành hai nhóm: nhúng vị trí tuyệt đối được cộng trực tiếp vào biểu diễn từ (các vector học được hoặc vector dạng sin cố định) và nhúng vị trí tương đối được tích hợp vào ma trận attention (ví dụ: Shaw et al., Transformer-XL, T5, DeBERTa). Tuy nhiên, các phương pháp tương đối hiện tại phần lớn dựa vào các phép phân rã cộng làm thay đổi logit attention trung gian, khiến chúng không tương thích với các cơ chế linear self-attention dựa trên kernel vốn đòi hỏi biểu diễn có thể phân tích nhân tử. Hơn nữa, các mô hình thường gặp khó khăn trong việc mở rộng quy mô một cách liền mạch trên các độ dài chuỗi biến thiên.
Các ý tưởng cốt lõi
- Khoảng cách tương đối qua phép quay vector: Thay vì cộng các vector vị trí, RoPE áp dụng ma trận quay phụ thuộc vào vị trí lên các query và key sau biến đổi afin. Tích vô hướng giữa query đã quay tại chỉ số và key đã quay tại chỉ số tự nhiên chỉ phụ thuộc vào khoảng cách tương đối .
- Tính trực giao và bảo toàn chuẩn: Do toán tử quay là trực giao, nó bảo toàn chuẩn Euclidean của query và key, giúp ổn định các trạng thái ẩn.
- Sự suy giảm theo khoảng cách dài (Long-term Decay): Tuân theo tỷ lệ tần số dạng sin, tương tác giữa các token tự nhiên suy giảm khi khoảng cách tương đối tăng lên, phù hợp với trực giác ngôn ngữ rằng các token ở xa có mức độ phụ thuộc yếu hơn.
- Tương thích với Linear Attention: Vì thông tin vị trí được áp dụng trực tiếp lên các vector token trước khi tính tích vô hướng, RoPE có thể kết hợp với linear attention dựa trên kernel (chẳng hạn như Performer).
Phương pháp (với các phương trình chính)
Mục tiêu là tìm các hàm và sao cho tích vô hướng của chúng chỉ phụ thuộc vào các embedding và khoảng cách tương đối:
Trong không gian con 2D, coi các vector thực như các số phức mang lại nghiệm:
Với chiều không gian nhúng chẵn , không gian được chia thành không gian con 2D với các tần số . Phép biến đổi tổng quát áp dụng ma trận quay đường chéo khối :
Điểm attention thu được giữa các vị trí và thỏa mãn:
Để tính toán hiệu quả mà không cần phép nhân ma trận thưa, RoPE được triển khai thông qua các phép toán theo từng phần tử (element-wise):
Kết quả (với các số liệu quan trọng nhất)
- Dịch máy: Trên tập WMT 2014 Anh-Đức, RoFormer đạt 27.5 BLEU, vượt trội hơn mô hình cơ sở Transformer-base (27.3 BLEU).
- Độ hội tụ tiền huấn luyện: Khi huấn luyện BERT-base với RoPE trên BookCorpus và Wikipedia, RoFormer hội tụ nhanh hơn và đạt loss masked language modeling (MLM) thấp hơn so với BERT thông thường.
- Fine-tuning trên GLUE: RoFormer tiền huấn luyện cải thiện đáng kể điểm số hạ nguồn trên MRPC (89.5 so với 88.9 F1), STS-B (87.0 so với 85.8 Spearman) và QQP (86.4 so với 71.2 F1), dù nó đạt kết quả thấp hơn BERT trên SST-2 (90.7 so với 93.5), QNLI (88.0 so với 90.5) và MNLI-m/mm (80.2/79.8 so với 84.6/83.4).
- Linear Attention (Performer): Trên tập dữ liệu Enwik8, việc thêm RoPE vào Performer cấp ký tự 12 lớp đã giúp đẩy nhanh đáng kể tốc độ hội tụ và giảm loss huấn luyện.
- Khớp ngữ nghĩa văn bản dài: Trên CAIL2019-SCM, RoFormer-512 đạt 68.29% độ chính xác kiểm tra (so với 67.77% của BERT-512 và 68.10% của WoBERT-512). Khi mở rộng lên RoFormer-1024, độ chính xác kiểm tra tăng lên 69.79% (cải thiện tuyệt đối 1.5% so với WoBERT-512).
Hạn chế và các câu hỏi mở
- Bài báo lưu ý việc thiếu lời giải thích lý thuyết cho lý do tại sao công thức quay 2D lại hội tụ nhanh hơn trong quá trình tiền huấn luyện so với các phương án dạng cộng.
- Mặc dù đặc tính suy giảm khoảng cách dài đã được chứng minh về mặt toán học, lý do tại sao RoFormer tổng quát hóa tốt hơn rõ rệt so với các mô hình cùng loại trên các chuỗi dài vẫn là một câu hỏi mở.
- Việc đánh giá RoFormer qua quá trình tiền huấn luyện quy mô lớn đòi hỏi lượng tài nguyên GPU tính toán đáng kể, để lại các đặc tính mở rộng quy mô rộng hơn cho các nghiên cứu tương lai.
Thuật ngữ chính
- Rotary Position Embedding (RoPE)
- Một cơ chế mã hóa vị trí đưa thông tin vị trí vào bằng cách nhân các biểu diễn query và key với các ma trận quay đường chéo khối trực giao.
- RoFormer
- Kiến trúc Transformer được trang bị Rotary Position Embedding thay vì các mã hóa vị trí tuyệt đối hoặc tương đối dạng cộng thông thường.
- Long-term Decay
- Đặc tính toán học trong đó tích vô hướng của query và key giảm dần khi khoảng cách vị trí tương đối tăng lên.
- Linear Attention
- Các cơ chế attention tính toán ánh xạ đặc trưng kernel để thay đổi thứ tự nhân ma trận và đạt độ phức tạp tính toán tuyến tính .
- PerFormer
- Kiến trúc Transformer sử dụng linear attention được thử nghiệm trong bài báo để chứng minh rằng RoPE trang bị mượt mà thông tin vị trí tương đối cho linear attention.
- CAIL2019-SCM
- Bộ tiêu chuẩn so khớp vụ án tương tự Chinese AI and Law 2019, bao gồm các bộ ba vụ án pháp lý dùng để đánh giá khả năng mô hình hóa văn bản dài vượt quá 512 token.
- WoBERT
- Một mô hình BERT tiếng Trung cấp độ từ được dùng làm mô hình đối chứng so sánh và nền tảng tiền huấn luyện cho RoFormer trên các ngữ liệu tiếng Trung.
Câu hỏi thường gặp
RoPE khác với positional embedding dạng sin tiêu chuẩn như thế nào?
Embedding dạng sin được cộng vào các vector token đầu vào trước các phép chiếu tuyến tính, trong khi RoPE được áp dụng dưới dạng phép nhân quay trực tiếp lên các vector chiếu query và key bên trong lớp attention.
Tại sao RoPE tương thích với linear self-attention trong khi các phương pháp mã hóa tương đối khác thì không?
Các mã hóa tương đối hiện có thay đổi logit attention từng cặp bên trong các phép toán softmax, phá vỡ khả năng phân tích nhân tử cần thiết cho linear attention. RoPE quay riêng lẻ từng vector query và key mà không làm thay đổi chuẩn của chúng, cho phép các kernel của linear attention hoạt động bình thường.
Áp dụng RoPE có yêu cầu phép nhân ma trận dày đặc với $R^d_{\Theta, m}$ không?
Không. Vì là ma trận đường chéo khối thưa gồm các khối , nó được triển khai tính toán dưới dạng phép nhân theo từng phần tử và tái kết hợp từng cặp bằng cách sử dụng các vector cosine và sine.
RoFormer hoạt động như thế nào khi mở rộng sang các ngữ cảnh dài hơn?
Trên tập chuẩn CAIL2019-SCM, việc mở rộng độ dài ngữ cảnh từ 512 lên 1024 giúp tăng độ chính xác kiểm tra của RoFormer từ 68.29% lên 69.79%, cho thấy khả năng tổng quát hóa độ dài mạnh mẽ.
Phần giải thích trên trang này do AI viết dựa trên bài báo và có thể có sai sót. Hãy đọc bài báo gốc để biết chi tiết.