Transformer và cơ chế Attention
1. Tổng quan
Định nghĩa: Transformer là kiến trúc học sâu tính toán song song quan hệ giữa mọi token trong chuỗi đầu vào chỉ bằng phép toán Attention (chú ý) mà không cần cấu trúc hồi quy (RNN) hay tích chập (CNN); kể từ khi được đề xuất trong bài báo "Attention Is All You Need" của Google năm 2017, nó đã trở thành cấu trúc tiêu chuẩn trên thực tế của các mô hình AI quy mô lớn hiện đại, bao trùm xử lý ngôn ngữ tự nhiên, thị giác và giọng nói.
Bối cảnh ra đời của Transformer nằm ở hai giới hạn cấu trúc của mạng nơ-ron hồi quy (RNN·LSTM) trước đây. Thứ nhất là không thể song song hóa do xử lý tuần tự. Để tính trạng thái ẩn tại thời điểm t, RNN cần trạng thái tại t-1 trước, nên buộc phải tính tuần tự tỷ lệ với độ dài chuỗi; điều này không tận dụng được năng lực tính toán song song quy mô lớn của GPU, gây nút thắt cổ chai cho việc huấn luyện dữ liệu lớn. Thứ hai là mất phụ thuộc xa (long-range dependency). Để thông tin ở đầu câu truyền được đến cuối câu, nó phải chảy qua nhiều thời điểm trong trạng thái ẩn, và trong quá trình đó hiện tượng tiêu biến gradient xảy ra khiến quan hệ giữa các từ ở xa nhau trở nên mờ nhạt.
Transformer giải quyết đồng thời hai vấn đề này bằng một nguyên lý duy nhất là attention. Vì attention cho phép mỗi token nhìn vào toàn bộ token của chuỗi cùng lúc và tính trực tiếp mức độ liên quan (trọng số), phụ thuộc tuần tự biến mất nên có thể xử lý song song hoàn toàn, và dù hai token cách nhau bao xa, độ dài đường truyền vẫn là hằng số (O(1)) nên quan hệ xa được phản ánh không mất mát. Nhờ tính song song và khả năng mở rộng này, Transformer đã hiện thực hóa quy luật quy mô (scaling law), trong đó hiệu năng tăng một cách có thể dự đoán khi tăng dữ liệu và tham số, và trở thành nền tảng chung của các mô hình ngôn ngữ siêu lớn (LLM) như GPT·BERT·T5. Trong bài làm, nên trình bày Transformer không chỉ là một mạng nơ-ron đơn thuần mà là sự chuyển đổi mô hình (paradigm shift) đạt được đồng thời ba giá trị "tính song song·phụ thuộc xa·khả năng mở rộng".
2. Kiến trúc tổng thể của Transformer
Dạng cơ bản của Transformer là cấu trúc encoder-decoder, xếp chồng N lớp (bài báo gốc là 6) encoder (bộ mã hóa) để hiểu đầu vào và N lớp decoder (bộ giải mã) để tạo đầu ra. Sơ đồ khái niệm dưới đây thể hiện khung tổng thể: token đầu vào đi qua embedding·mã hóa vị trí, qua các chồng encoder·decoder và được chuyển thành phân phối xác suất cuối cùng.
flowchart TB
IN["Token đầu vào (nguồn)"] --> EMB1["Embedding token + Mã hóa vị trí"]
EMB1 --> ENC["Chồng encoder (N lớp)"]
subgraph ENC_DETAIL["Một lớp encoder"]
SA["Self-attention đa đầu"] --> AN1["Kết nối dư + Chuẩn hóa (LayerNorm)"]
AN1 --> FF1["Truyền thẳng (FFN)"] --> AN2["Kết nối dư + Chuẩn hóa"]
end
ENC --> MEM["Biểu diễn ngữ cảnh (Key/Value)"]
OUT["Token đầu ra (đích, dịch phải)"] --> EMB2["Embedding token + Mã hóa vị trí"]
EMB2 --> DEC["Chồng decoder (N lớp)"]
MEM --> DEC
DEC --> LIN["Biến đổi tuyến tính + Softmax"]
LIN --> PROB["Phân phối xác suất token tiếp theo"]
Ở bước embedding và mã hóa vị trí, mỗi token được chuyển thành vectơ số thực có số chiều cố định (ví dụ: 512 chiều). Tuy nhiên, attention là phép toán trên tập hợp (set) nên tự nó không biết thông tin thứ tự của token, vì vậy phải cộng thêm vào vectơ thông tin "ở vị trí thứ mấy". Bài báo gốc dùng mã hóa vị trí hình sin, mã hóa vị trí bằng các hàm sin·cos với tần số khác nhau; sau đó xuất hiện embedding vị trí có thể học, cùng RoPE (mã hóa vị trí xoay)·ALiBi phản ánh vị trí tương đối, được dùng rộng rãi trong xử lý ngữ cảnh dài. Nếu không có thông tin vị trí thì không phân biệt được "con chó cắn người" với "người cắn con chó", nên mã hóa vị trí là bắt buộc với ngôn ngữ nơi thứ tự quyết định ý nghĩa.
Encoder lấy self-attention và mạng nơ-ron truyền thẳng làm hai trục, và áp dụng kết nối dư (residual connection) cùng chuẩn hóa lớp (LayerNorm) cho mỗi lớp con. Kết nối dư cộng nguyên đầu vào vào đầu ra để gradient được truyền đến các lớp sâu mà không bị tiêu biến, còn chuẩn hóa lớp ổn định phân phối đầu vào của từng lớp giúp việc huấn luyện diễn ra trơn tru. Nếu không có hai cơ chế này, Transformer sâu xếp chồng hàng chục lớp trên thực tế không thể huấn luyện được.
3. Nguyên lý của cơ chế Attention
Trái tim của Transformer là attention, và phép toán cốt lõi của nó là Scaled Dot-Product Attention. Sơ đồ dưới đây biểu diễn dưới dạng quy trình việc một token tạo ra truy vấn (Query), đo độ tương đồng với khóa (Key) của mọi token khác, rồi dùng trọng số đó để tính tổng có trọng số của giá trị (Value).
flowchart LR
X["Vectơ đầu vào"] --> Q["Tạo Query (Wq)"]
X --> K["Tạo Key (Wk)"]
X --> V["Tạo Value (Wv)"]
Q --> SCORE["Tích vô hướng Q·K (điểm tương đồng)"]
K --> SCORE
SCORE --> SCALE["Co giãn (chia cho căn dk)"]
SCALE --> SM["Softmax (chuẩn hóa trọng số)"]
SM --> WSUM["Tổng có trọng số của Value"]
V --> WSUM
WSUM --> OUTV["Vectơ đầu ra phản ánh ngữ cảnh"]
A. Trực giác về Query·Key·Value
Attention dễ hiểu hơn khi so sánh với truy xuất thông tin (retrieval). Query nghĩa là "thông tin tôi đang tìm", Key là "chỉ mục của thông tin mà mỗi token có thể cung cấp", còn Value là "nội dung thực sự được chứa". Lấy tích vô hướng giữa Query của một token với Key của mọi token khác sẽ được điểm liên quan; điểm này được chuẩn hóa bằng softmax thành trọng số 0~1, rồi tính tổng có trọng số của các Value. Kết quả là vectơ đầu ra của mỗi token chứa nhiều thông tin của các token có liên quan lớn với nó. Ví dụ, trong câu "Con vật đó không băng qua đường. Vì nó quá mệt", Query của "nó (it)" có độ tương đồng cao với Key của "con vật", tự giải quyết được việc "nó" chỉ cái gì từ ngữ cảnh.
B. Co giãn và softmax
Lý do không đưa thẳng điểm tích vô hướng vào softmax mà chia cho căn bậc hai của số chiều khóa (√dk) nằm ở sự ổn định số học. Khi số chiều lớn, phương sai của tích vô hướng tăng, khiến softmax dồn cực đoan vào một token cụ thể, và trong vùng đó gradient gần bằng 0 làm việc huấn luyện đình trệ. Chia cho √dk làm phân phối điểm trở nên thoai thoải, cho phép phân bổ sự chú ý đồng đều cho nhiều token và gradient cũng ổn định. Việc chỉ một hằng số co giãn nhỏ như vậy lại quyết định sự hội tụ của học sâu cho thấy sự tinh xảo trong thiết kế Transformer.
C. Attention đa đầu (Multi-Head Attention)
Attention đơn chỉ nắm bắt được một loại quan hệ, trong khi attention đa đầu chia Q·K·V thành nhiều (bài báo gốc là 8) không gian con có số chiều thấp, thực hiện attention song song rồi nối các kết quả lại. Mỗi đầu được phân hóa để học quan hệ theo các góc nhìn khác nhau như quan hệ ngữ pháp, giải quyết đại từ chỉ định, tương đồng ngữ nghĩa. Có thể ví điều này như nhiều chuyên gia cùng lúc diễn giải một câu theo các góc nhìn khác nhau (cú pháp·ngữ nghĩa·quan hệ đồng xuất hiện) rồi tổng hợp lại, giúp nâng cao đáng kể năng lực biểu diễn. Bảng dưới đây là tài liệu bổ trợ tổng hợp cách dùng của ba loại attention.
| Phân loại | Vị trí | Nguồn Query | Nguồn Key/Value | Vai trò |
|---|---|---|---|---|
| Self-attention encoder | Encoder | Đầu vào | Đầu vào | Nắm bắt quan hệ tương hỗ trong ngữ cảnh nguồn |
| Self-attention có mặt nạ | Decoder | Đầu ra (phần đã sinh) | Đầu ra | Chặn token tương lai, sinh tự hồi quy |
| Attention encoder-decoder | Decoder | Đầu ra | Biểu diễn encoder | Căn chỉnh nguồn và đích (tương ứng dịch) |
D. Mặt nạ và sinh tự hồi quy
Self-attention của decoder áp dụng mặt nạ (masking) để mỗi vị trí không nhìn thấy các token phía sau (tương lai) nó. Vì tại thời điểm sinh, các từ phía sau chưa tồn tại, nên nếu trong lúc huấn luyện tham chiếu trước tương lai thì chẳng khác gì gian lận và sẽ không khớp với suy luận thực tế. Phương thức này đặt điểm của các vị trí bị che thành âm vô cùng để sau softmax trọng số bằng 0, nhờ đó decoder hoạt động theo phương thức tự hồi quy (autoregressive), sinh từng token một từ trái sang phải. Dòng GPT chỉ lấy cấu trúc decoder này và chuyên biệt hóa cho dự đoán từ tiếp theo, còn dòng BERT chỉ lấy encoder và chuyên biệt hóa cho hiểu ngữ cảnh hai chiều.
4. So sánh các loại và ví dụ áp dụng trong ngành
Transformer phân hóa thành ba dòng tùy theo mục đích sử dụng, và sự khác biệt bắt nguồn từ việc lấy khối nào và ràng buộc attention ra sao. Chỉ encoder (BERT·RoBERTa) tận dụng toàn bộ ngữ cảnh hai chiều, mạnh ở các tác vụ coi trọng "hiểu" như phân loại·nhận dạng thực thể có tên·embedding tìm kiếm. Chỉ decoder (GPT·LLaMA) chuyên biệt hóa cho sinh bằng cách dự đoán token tiếp theo với attention có mặt nạ, là nền tảng của hội thoại·tóm tắt·sinh mã. Encoder-decoder (T5·BART) phù hợp với dịch·tóm tắt, tức là hiểu đầu vào rồi chuyển sang dạng khác. Việc lựa chọn ba dòng này phân tách theo tính chất tác vụ: "chỉ cần hiểu đầu vào, cần sinh mới, hay cần chuyển đổi".
Các ví dụ áp dụng trong ngành rất rộng. Trong dịch máy, sau khi áp dụng Transformer, điểm BLEU tăng đáng kể so với phương pháp dựa trên RNN trước đây, và ngày nay phần lớn dịch vụ dịch thương mại dựa trên Transformer. Trong lĩnh vực thị giác, ViT (Vision Transformer) chia ảnh thành các mảnh (patch) và xử lý như token đã thể hiện hiệu năng vượt CNN trên dữ liệu quy mô lớn, được ứng dụng trong đọc ảnh y tế·nhận dạng cho xe tự lái. Trong khoa học sự sống, AlphaFold2 học chuỗi protein như ngôn ngữ đã đạt bước tiến lớn trong bài toán khó dự đoán cấu trúc, còn trong giọng nói, Whisper đã tích hợp nhận dạng giọng nói đa ngôn ngữ. Như vậy, lý do căn bản cho sự lan rộng của Transformer là nó là mô hình chuỗi đa dụng không phụ thuộc vào cấu trúc của một miền cụ thể.
Bảng dưới đây so sánh khác biệt về nguyên lý giữa RNN·CNN và Transformer.
| Hạng mục | RNN/LSTM | CNN | Transformer |
|---|---|---|---|
| Phương thức xử lý | Tuần tự | Song song cục bộ | Song song toàn cục |
| Phụ thuộc xa | Yếu (tiêu biến) | Hạn chế (trường tiếp nhận) | Mạnh (đường truyền O(1)) |
| Song song hóa | Không thể (phụ thuộc thời điểm) | Có thể | Hoàn toàn có thể |
| Độ phức tạp tính toán | O(n) | O(n·k) | O(n²·d) |
| Giới hạn tiêu biểu | Tiêu biến gradient | Thiếu ngữ cảnh toàn cục | Chi phí bình phương độ dài chuỗi |
5. Chuyên sâu: xu hướng mới nhất và nghiên cứu tối ưu hiệu quả
Điểm yếu lớn nhất của Transformer là self-attention có chi phí tính toán·bộ nhớ O(n²) theo độ dài chuỗi n. Vì tính quan hệ của mọi cặp token, ngữ cảnh càng dài thì chi phí càng tăng vọt theo bình phương, trở thành nút thắt khi xử lý văn bản hay hội thoại dài. Các nghiên cứu nhằm giảm nhẹ vấn đề này đang rất sôi động. Attention thưa (Sparse Attention) không tính mọi cặp mà chỉ tính một số mẫu (cửa sổ cục bộ + token toàn cục), hạ chi phí xuống gần tuyến tính (Longformer·BigBird), còn attention tuyến tính xấp xỉ softmax để đạt độ phức tạp O(n). Từ góc độ tối ưu hệ thống, FlashAttention tối thiểu hóa truy cập bộ nhớ GPU đã cải thiện đáng kể tốc độ và hiệu quả bộ nhớ mà không mất độ chính xác, giúp huấn luyện ngữ cảnh dài trở nên thực tế.
Ở giai đoạn suy luận, KV cache tái sử dụng Key·Value đã tính là kỹ thuật cốt lõi giảm tính toán lặp lại của sinh tự hồi quy, và việc quản lý bộ nhớ của cache này (như PagedAttention) quyết định hiệu quả phục vụ quy mô lớn. Ngoài ra, khi các kỹ thuật cải tiến mã hóa vị trí theo dạng tương đối·xoay (RoPE) và mở rộng cửa sổ ngữ cảnh phát triển, độ dài ngữ cảnh ban đầu chỉ ở mức vài trăm token đã tăng lên tới hàng trăm nghìn token. Về mặt kiến trúc, cấu trúc hỗn hợp chuyên gia (MoE) chỉ kích hoạt các mạng con chuyên gia cần thiết để kiềm chế lượng tính toán đang nổi lên như phương pháp mở rộng hiệu quả cho mô hình siêu lớn. Tuy nhiên, các kỹ thuật tối ưu này thường đi kèm sự thỏa hiệp giữa độ chính xác và chi phí, nên phải lựa chọn phù hợp với độ dài ngữ cảnh·yêu cầu độ trễ·ngân sách của tác vụ.
6. Lưu ý và hàm ý
Từ góc nhìn của Kỹ sư chuyên nghiệp (Professional Engineer), việc áp dụng và lan tỏa Transformer cần xem xét tổng hợp các điểm sau.
- Đánh đổi giữa chi phí tính toán·bộ nhớ và quy mô: Hiệu năng tỷ lệ với quy mô tham số·dữ liệu·tính toán, nhưng chi phí O(n²) và gánh nặng tài nguyên GPU cũng tăng theo. Cần định lượng yêu cầu độ dài ngữ cảnh, mục tiêu độ trễ·thông lượng, ngân sách hạ tầng để kết hợp có chọn lọc các chiến lược tối ưu như attention thưa·tuyến tính, KV cache, lượng tử hóa·chưng cất.
- Chất lượng dữ liệu và thiên lệch·ảo giác: Thiên lệch·lỗi tiềm ẩn trong dữ liệu tiền huấn luyện quy mô lớn được mô hình học nguyên vẹn, và sinh tự hồi quy dẫn đến ảo giác — bịa ra nội dung sai sự thật một cách có vẻ hợp lý. Cần củng cố độ tin cậy bằng làm sạch dữ liệu·trả lời dựa trên căn cứ thông qua RAG·kiểm chứng đầu ra·căn chỉnh bằng phản hồi của con người (RLHF/DPO).
- Chiến lược áp dụng và phương thức phát triển: Phần lớn tổ chức, thay vì huấn luyện mô hình siêu lớn từ đầu, sẽ thực tế hơn khi fine-tuning·PEFT (LoRA) các mô hình tiền huấn luyện công khai hoặc tận dụng qua RAG·prompt. Điểm khởi đầu là chọn dòng encoder·decoder·encoder-decoder tùy theo tác vụ thuộc loại hiểu hay sinh.
- Bảo mật·quyền riêng tư·quản trị: Dữ liệu huấn luyện·suy luận có thể chứa thông tin cá nhân·bí mật, và tồn tại các mối đe dọa mới như prompt injection·đánh cắp mô hình. Cần xây dựng quản trị theo góc nhìn độ tin cậy AI·khả năng giải thích (XAI) cùng với tối thiểu hóa dữ liệu·kiểm soát truy cập·lọc đầu vào/đầu ra.
- Triển vọng và công nghệ liên kết: Transformer đang mở rộng sang đa phương thức (tích hợp văn bản·hình ảnh·giọng nói)·agent·tinh gọn trên thiết bị (on-device), và kết hợp với các nghiên cứu MoE·ngữ cảnh dài·attention hiệu quả để tiến hóa sự cân bằng giữa hiệu năng và chi phí. Mặt khác, các cấu trúc thay thế như mô hình không gian trạng thái (SSM, như Mamba) cũng đang xuất hiện, nên cần theo dõi khả năng đa dạng hóa kiến trúc vượt ra ngoài sự độc tôn của Transformer.
Tóm tắt một câu: Transformer là kiến trúc tính toán song song quan hệ trên toàn bộ chuỗi chỉ bằng self-attention dựa trên Query·Key·Value mà không cần hồi quy·tích chập, qua đó đồng thời đạt được phụ thuộc xa và khả năng mở rộng; nhờ attention đa đầu·mã hóa vị trí·cấu trúc encoder/decoder, nó đã trở thành nền tảng chung của LLM hiện đại và AI đa phương thức, và tối ưu hóa chi phí O(n²) cùng bảo đảm độ tin cậy·quản trị là nhiệm vụ cốt lõi trong thực tiễn.