Longformer
Khám phá kiến trúc Longformer để xử lý hiệu quả các chuỗi dữ liệu dài. Tìm hiểu cách sparse attention vượt qua giới hạn bộ nhớ cho NLP và Computer Vision.
Longformer là một loại kiến trúc Deep Learning chuyên biệt được thiết kế để xử lý các chuỗi dữ liệu dài một cách hiệu quả, vượt qua các giới hạn của các model truyền thống. Ban đầu được giới thiệu để giải quyết các ràng buộc của Transformers tiêu chuẩn, vốn thường gặp khó khăn với các chuỗi dài hơn 512 token do giới hạn bộ nhớ, Longformer áp dụng một attention mechanism được sửa đổi. Bằng cách giảm độ phức tạp tính toán từ bậc hai xuống tuyến tính, kiến trúc này cho phép các hệ thống AI phân tích toàn bộ tài liệu, bản ghi dài hoặc các chuỗi di truyền phức tạp trong một lần chạy duy nhất mà không bị cắt bớt dữ liệu đầu vào.
Vấn đề thắt nút cổ chai của cơ chế chú ý (Attention Bottleneck)#
Để hiểu được tầm quan trọng của Longformer, việc nhìn nhận các giới hạn của những phiên bản tiền nhiệm như BERT và các model GPT-3 đời đầu là điều thiết yếu. Các transformer tiêu chuẩn sử dụng thao tác "self-attention" trong đó mỗi token (từ hoặc một phần của từ) tương tác với mọi token khác trong chuỗi. Điều này tạo ra chi phí tính toán bậc hai; việc gấp đôi độ dài chuỗi sẽ làm tăng gấp bốn lần bộ nhớ yêu cầu trên GPU. Do đó, hầu hết các model tiêu chuẩn đều áp đặt giới hạn nghiêm ngặt đối với kích thước đầu vào, thường buộc các data scientist phải chia nhỏ tài liệu thành các phân đoạn nhỏ hơn và bị ngắt kết nối, dẫn đến việc mất bối cảnh.
Longformer giải quyết vấn đề này bằng cách giới thiệu Sparse Attention (Cơ chế chú ý thưa). Thay vì kết nối đầy đủ tất cả với tất cả, nó sử dụng sự kết hợp giữa chú ý cục bộ theo cửa sổ và chú ý toàn cục:
- Sliding Window Attention: Mỗi token chỉ tương tác với các token lân cận gần nhất của nó. Điều này nắm bắt bối cảnh cục bộ và cấu trúc cú pháp, tương tự như cách một Convolutional Neural Network (CNN) xử lý hình ảnh.
- Dilated Sliding Window: Để tăng receptive field mà không làm tăng lượng tính toán, cửa sổ có thể kết hợp các khoảng trống, cho phép model nhìn "xa" hơn vào trong văn bản.
- Global Attention: Các token được chọn trước cụ thể (như token phân loại
[CLS]) tương tác với tất cả các token khác trong chuỗi và tất cả các token tương tác với chúng. Điều này đảm bảo model duy trì được sự hiểu biết cấp độ cao về toàn bộ đầu vào cho các tác vụ như text summarization.
Các ứng dụng trong thực tế#
Khả năng xử lý hàng nghìn token đồng thời mở ra những khả năng mới cho Natural Language Processing (NLP) và hơn thế nữa.
Phân tích tài liệu pháp lý và y tế#
Trong các ngành như pháp lý và y tế, tài liệu hiếm khi ngắn gọn. Một hợp đồng pháp lý hoặc tiền sử bệnh của bệnh nhân có thể kéo dài hàng chục trang. Các Large Language Models (LLMs) truyền thống sẽ yêu cầu các tài liệu này phải được phân mảnh, có khả năng bỏ lỡ các phần phụ thuộc quan trọng giữa một điều khoản ở trang 1 và một định nghĩa ở trang 30. Longformer cho phép thực hiện Named Entity Recognition (NER) và phân loại trên toàn bộ tài liệu cùng một lúc, đảm bảo rằng bối cảnh tổng thể ảnh hưởng đến việc giải thích các thuật ngữ cụ thể.
Trả lời câu hỏi (QA) với văn bản dài#
Các hệ thống Question Answering tiêu chuẩn thường gặp khó khăn khi câu trả lời cho một câu hỏi đòi hỏi phải tổng hợp thông tin được phân bổ trên một bài viết dài. Bằng cách giữ toàn bộ văn bản trong bộ nhớ, các model dựa trên Longformer có thể thực hiện suy luận đa bước, kết nối các sự kiện được tìm thấy ở các đoạn văn khác nhau để tạo ra câu trả lời toàn diện. Điều này rất quan trọng đối với các hệ thống hỗ trợ kỹ thuật tự động và các công cụ nghiên cứu học thuật.
Phân biệt các thuật ngữ chính#
- Longformer so với Transformer: Transformer tiêu chuẩn sử dụng attention $N^2$ đầy đủ, giúp nó chính xác nhưng tốn kém về mặt tính toán đối với các đầu vào dài. Longformer sử dụng attention $N$ thưa, đánh đổi một lượng không đáng kể năng lực lý thuyết để đổi lấy hiệu suất tăng mạnh, cho phép đầu vào từ 4.096 token trở lên.
- Longformer so với Transformer-XL: Mặc dù cả hai đều xử lý các chuỗi dài, Transformer-XL lại dựa vào cơ chế tái hồi (lưu trữ các trạng thái trước đó) để ghi nhớ các phân đoạn trong quá khứ. Longformer xử lý chuỗi dài một cách nguyên bản trong một lần, giúp đơn giản hóa việc huấn luyện song song trên các nền tảng như Ultralytics Platform.
- Longformer so với BigBird: Đây là những kiến trúc rất giống nhau được phát triển vào khoảng thời gian tương tự. Cả hai đều sử dụng cơ chế attention thưa để đạt được tỷ lệ tuyến tính. BigBird giới thiệu một thành phần attention ngẫu nhiên cụ thể bổ sung cho các cửa sổ trượt.
Các khái niệm triển khai#
Mặc dù Longformer là một kiến trúc hơn là một chức năng cụ thể, việc hiểu cách chuẩn bị dữ liệu cho các model bối cảnh dài là rất quan trọng. Trong các framework hiện đại như PyTorch, điều này thường bao gồm việc quản lý các embeddings vượt quá giới hạn tiêu chuẩn.
Ví dụ sau đây minh họa việc tạo một tensor đầu vào giả lập cho một kịch bản bối cảnh dài, tương phản nó với kích thước điển hình được sử dụng trong các model phát hiện tiêu chuẩn như YOLO26.
import torch
# Standard BERT-like models typically cap at 512 tokens
standard_input = torch.randint(0, 30000, (1, 512))
# Longformer architectures can handle significantly larger inputs (e.g., 4096)
# This allows the model to "see" the entire sequence at once.
long_context_input = torch.randint(0, 30000, (1, 4096))
print(f"Standard Input Shape: {standard_input.shape}")
print(f"Long Context Input Shape: {long_context_input.shape}")
# In computer vision, a similar concept applies when processing high-res images
# without downsampling, preserving fine-grained details.Sự liên quan đến Thị giác máy tính (Computer Vision)#
Mặc dù ban đầu được thiết kế cho văn bản, các nguyên tắc đằng sau Longformer đã ảnh hưởng đến Computer Vision. Khái niệm giới hạn attention trong một vùng lân cận cục bộ tương tự như các thao tác cục bộ trong các tác vụ thị giác. Vision Transformers (ViT) cũng gặp phải các vấn đề về tỷ lệ tương tự với hình ảnh độ phân giải cao vì số lượng điểm ảnh (hoặc bản vá) có thể rất lớn. Các kỹ thuật bắt nguồn từ attention thưa của Longformer được sử dụng để cải thiện hiệu quả image classification và object detection, giúp các model như YOLO26 duy trì tốc độ cao khi xử lý dữ liệu trực quan chi tiết.
Để đọc thêm về các chi tiết cụ thể của kiến trúc, original Longformer paper của AllenAI cung cấp các điểm chuẩn sâu và các lý do lý thuyết. Ngoài ra, việc huấn luyện hiệu quả các model lớn như vậy thường được hưởng lợi từ các kỹ thuật như mixed precision và các optimization algorithms tiên tiến.






