Key Concepts
- Large Language Models (LLMs): Mô hình ngôn ngữ lớn, kiến trúc nền tảng cho các công cụ AI như Chat GPT.
- Transformer: Mô hình được Google Brain giới thiệu năm 2017 trong bài báo "Attention is All You Need," là nền tảng cho nhiều LLMs hiện nay.
- Embedding: Quá trình mã hóa văn bản thành các vector số.
- Encoder: Thành phần của Transformer có nhiệm vụ làm giàu thông tin của các embedding vector.
- Decoder: Thành phần của Transformer có nhiệm vụ tạo ra chuỗi đầu ra, kết hợp ngữ cảnh từ encoder.
- Predicting Head: Thành phần của Transformer có nhiệm vụ chuyển đổi các vector đầu ra của decoder thành một vector xác suất cho các token tiếp theo.
- Token: Đơn vị ngôn ngữ nhỏ nhất sau khi phân chia đoạn text đầu vào.
- Self-Attention: Cơ chế giúp Transformer nắm bắt sự tương tác giữa các token trong cùng một đoạn text.
- Multi-Head Attention: Cơ chế sử dụng nhiều self-attention layer (heads) chạy song song để học nhiều kiểu tương tác khác nhau giữa các token.
- Positional Embedding: Mã hóa vị trí của các token trong đoạn text.
- Query, Key, Value: Ba loại vector được sử dụng trong self-attention để tính toán mức độ liên quan giữa các token.
- Residual Connection: Kết nối tắt giúp giải quyết vấn đề vanishing gradient trong quá trình huấn luyện mạng sâu.
- Layer Normalization: Chuẩn hóa đầu vào của mỗi layer để ổn định và tăng tốc quá trình huấn luyện.
- Cross-Attention: Cho phép sự tương tác giữa các encoder và decoder, giúp mô hình tập trung vào những thành phần thích hợp của chuỗi đầu vào khi sinh ra từng token đầu ra.
- Attention Mask: Ngăn decoder truy cập những token nằm ở tương lai, đảm bảo tính nhân quả.
- Auto-regressive: Tự hồi quy, decoder chỉ được phép dựa vào những token đã được sinh ra từ trước đó chứ không được phép nhìn trước các token trong tương lai.
Kiến trúc tổng quát của Transformer
Transformer bao gồm bốn thành phần chính:
- Embedding: Mã hóa đoạn text đầu vào thành các embedding vector, mỗi vector tương ứng với một token.
- Encoder: Tiếp nhận chuỗi các embedding vector và làm giàu thêm thông tin của chúng.
- Decoder: Tạo ra chuỗi đầu ra dựa trên thông tin từ encoder.
- Predicting Head: Chuyển đổi các vector đầu ra của decoder thành một vector xác suất cho các token tiếp theo.
Embedding
Embedding bao gồm hai thành phần con:
- Token Embedding: Biểu diễn mỗi token dưới dạng một vector có độ dài 512, mã hóa ý nghĩa của token.
- Positional Embedding: Mã hóa vị trí của các token trong đoạn text, cũng có độ dài 512.
Hai vector này được cộng lại với nhau để tạo ra một vector duy nhất chứa cả thông tin về ý nghĩa và vị trí của token.
Encoder
Encoder là một chuỗi các khối mã hóa (encoder blocks) kết nối liên tiếp nhau. Mỗi khối mã hóa có cấu trúc giống hệt nhau và linh hồn của các khối này là cơ chế self attention.
Self-Attention
Self-attention giúp nắm bắt sự tương tác của các token trong cùng một đoạn text.
- Query Vector: Đại diện cho câu hỏi mà một token đặt ra cho các token khác. Được tạo ra bằng cách nhân embedding vector của token với ma trận truy vấn (WQ).
- Key Vector: Đại diện cho câu trả lời mà một token đưa ra cho các token khác. Được tạo ra bằng cách nhân embedding vector của token với ma trận khóa (WK).
- Value Vector: Thể hiện mức độ cụ thể mà một token sẽ ảnh hưởng đến các token khác xung quanh nó. Được tạo ra bằng cách nhân embedding vector của token với ma trận giá trị (WV).
Mức độ phù hợp giữa câu hỏi và câu trả lời được đánh giá bằng phép tính tích vô hướng giữa query vector và key vector. Sau đó, kết quả được chuẩn hóa bằng cách chia cho căn bậc hai của độ dài embedding vector và áp dụng hàm softmax.
Cuối cùng, value vector được nhân với output của hàm softmax để tạo ra context vector, thể hiện sự thay đổi mà tất cả các token gây ra đối với token đang xét.
Multi-Head Attention
Multi-head attention sử dụng nhiều self-attention layer (heads) chạy song song để học nhiều kiểu tương tác khác nhau giữa các token.
Ví dụ, trong câu "Việt đặt cuốn sách lên bàn vì nó quá nặng để cầm lâu," mỗi head có thể tập trung vào một loại quan hệ khác nhau:
- H1: Liên kết giữa đại từ và danh từ ("cuốn sách" và "nó").
- H2: Quan hệ ngữ pháp cục bộ (giữa "đặt" và "bàn").
- H3: Quan hệ nhân quả (giữa "nặng" và "đặt").
Để đảm bảo độ phức tạp tính toán không phụ thuộc vào số head, kích thước của các query vector, key vector và value vector bên trong mỗi head được giảm đi.
Encoder Block
Mỗi encoder block bao gồm:
- Multi-head attention.
- Layer normalization.
- Feed forward network.
- Layer normalization.
- Hai residual connection.
Feed Forward Network: Hai phép biến đổi tuyến tính (fully connected layers) được kẹp giữa bởi một phép biến đổi phi tuyến (ReLU). Bổ sung thêm các biến đổi phi tuyến và tinh chỉnh lại biểu diễn của từng token.
Residual Connection: Giải quyết vấn đề vanishing gradient, giúp mô hình học tốt hơn khi có nhiều layer.
Layer Normalization: Ổn định và tăng tốc quá trình huấn luyện bằng cách chuẩn hóa đầu vào của mỗi layer.
Decoder
Decoder có nhiệm vụ tạo ra chuỗi đầu ra theo kiểu tự hồi quy (auto-regressive), đồng thời liên tục kết hợp ngữ cảnh từ encoder.
Decoder Block
Mỗi decoder block bao gồm:
- Self-attention layer (với attention mask).
- Cross-attention layer.
- Feed forward layer.
- Ba layer normalization.
- Ba residual connection.
Cross-Attention Layer: Cho phép sự tương tác giữa các encoder và decoder, giúp mô hình tập trung vào những thành phần thích hợp của chuỗi đầu vào khi sinh ra từng token đầu ra. Query vector đến từ chuỗi đích, trong khi key vector và value vector đến từ chuỗi nguồn.
Attention Mask: Ngăn decoder truy cập những token nằm ở tương lai, đảm bảo tính nhân quả.
Predicting Head
Prediction head là một fully connected layer nhận output của decoder làm input và đưa ra dự đoán về xác suất của token kế tiếp.
Quá trình hoạt động tổng thể
- Đoạn text đầu vào được tách thành các token.
- Mỗi token được mã hóa thành embedding vector.
- Các embedding vector được đưa qua encoder để làm giàu thông tin.
- Decoder tạo ra chuỗi đầu ra dựa trên thông tin từ encoder.
- Prediction head dự đoán token tiếp theo.
- Quá trình lặp lại cho đến khi mô hình sinh ra token kết thúc chuỗi (EOS).
Các khóa học online về AI, Data Science, Machine Learning
- Python và AI cơ bản: Dành cho người trái ngành, chưa có kinh nghiệm về lập trình.
- Data và Machine Learning nâng cao: Dành cho người có kinh nghiệm về lập trình, cung cấp kiến thức về data science và machine learning.
- Deep Learning for Computer Vision cơ bản: Dành cho người có kiến thức cơ bản về machine learning, tìm hiểu về deep learning và CNN.
- Deep Learning for Computer Vision nâng cao: Dành cho người đã hoàn thành khóa cơ bản, tìm hiểu về object detection, image segmentation, GAN, và Docker.
- Toán dành cho AI: Bổ trợ kiến thức toán (xác suất, thống kê, đại số tuyến tính, giải tích) cho người muốn theo đuổi AI, data science, machine learning.
Kết luận
Video cung cấp một cái nhìn sâu sắc và chi tiết về kiến trúc Transformer, một kiến trúc nền tảng cho nhiều mô hình ngôn ngữ lớn hiện nay. Video giải thích rõ ràng vai trò và chức năng của từng thành phần trong Transformer, từ embedding đến encoder, decoder và predicting head. Ngoài ra, video cũng giới thiệu về các khóa học online về AI, data science và machine learning.
AI summaries can miss context or contain errors. Check important details against the original video.