- Transformer ra mắt năm 2017, khởi đầu từ dịch máy rồi mở rộng sang gần như mọi lĩnh vực, và đã trở thành kiến thức AI cốt lõi mà kỹ sư hiện đại cần biết
- Hướng dẫn này được xây dựng theo từng bước từ mạng nơ-ron đến attention, chỉ đi đủ mức cần thiết để kỹ sư hiểu Transformer
- Tài liệu cung cấp cả ví dụ mã Python có thể chạy trực tiếp và tài liệu tham khảo, giúp người đọc không chỉ dừng ở việc đọc mà còn có thể tự tay kiểm chứng và học tập
- Nội dung chính được chia thành các phần về mạng nơ-ron, RNN, NLP và attention, Transformer, cùng phụ lục nền tảng Python·toán học; đồng thời đã bổ sung mục PyTorch và Multi-Agents dựa trên LLM
- Điều kiện sử dụng cho mục đích giáo dục·phi thương mại khá cởi mở, nhưng khi liên hệ thì yêu cầu ít nhất 2 địa chỉ SNS để xác minh, nên có hạn chế với liên hệ ẩn danh
Lộ trình học để hiểu Transformer
- The Engineer’s Guide To Deep Learning là một cẩm nang ngắn gọn, cung cấp lộ trình tối thiểu cần thiết để kỹ sư hiểu Transformer
- AI hiện nay được xem là thời kỳ hoàng kim thứ ba
- Hai thời kỳ hoàng kim trước là thập niên 1950~1960 và thập niên 1980
- Khi đó, kỳ vọng đã vượt quá năng lực kỹ thuật và dẫn đến thất vọng
- Thời kỳ hoàng kim AI hiện tại, bắt đầu từ giữa thập niên 2010, được mô tả là một xu hướng liên tục vượt qua kỳ vọng
- Transformer là bước đột phá được giới thiệu vào năm 2017
- Ban đầu được phát triển như một mô hình dịch máy
- Sau đó ảnh hưởng của nó mở rộng ra gần như mọi lĩnh vực
- Tài liệu cũng cung cấp ví dụ mã Python có thể thực thi để hỗ trợ học tập
- Ngoài ra còn giới thiệu thêm tài liệu tham khảo để mỗi độc giả có thể chọn nguồn phù hợp với mình
Cấu trúc tài liệu và cập nhật
- Hướng dẫn được thiết kế để xây nền tảng cần thiết theo đúng trình tự, thay vì lao ngay vào Transformer
- Part 1: Neural Networks — các khái niệm cơ bản về mạng nơ-ron
- Part 2: Recurrent Neural Networks (RNNs) — RNN, LSTM, GRU
- Part 3: Natural Language Processing (NLP) and Attention Mechanisms — các nguyên lý cốt lõi của NLP, bao gồm dịch máy và attention
- Part 4: Transformer — mô hình Transformer
- Appendix: Basic Knowledge — kiến thức Python và toán học tối thiểu cần có để hiểu Transformer
- Lịch sử thay đổi tiếp tục được cập nhật kể từ khi phiên bản đầu tiên được công bố vào ngày 21 tháng 5 năm 2024
- 23 tháng 7 năm 2024: thêm phiên bản PyTorch cho Parts 1·2
- 16 tháng 9 năm 2024: thêm mục Multi-Agents dựa trên LLM
- Trong tương lai, tài liệu có thể còn đề cập đến nhiều công nghệ dựa trên Transformer hiện đang được phát triển, cũng như một bước đột phá lớn khác trong tương lai gần
Điều kiện sử dụng và cách liên hệ
- Điều kiện sử dụng trong FAQ bản quyền khá cởi mở, chủ yếu cho mục đích giáo dục·phi thương mại
- Giáo viên và sinh viên thuộc các cơ sở giáo dục có thể tự do sử dụng tài liệu và hình ảnh cho mục đích học tập
- Trong các buổi gặp mặt và bài giảng phi thương mại, có thể sử dụng tài liệu và hình ảnh nếu ghi rõ liên kết trang web và bản quyền
- Phần giải thích về revenue share và full buyout trong mục sử dụng thương mại chỉ là lời đùa, và tác giả cho biết không có ý định thiết lập quan hệ thương mại
- Trong email liên hệ, cần cung cấp ít nhất 2 địa chỉ SNS như LinkedIn, Twitter để phục vụ xác minh
- Sau sự cố XZ backdoor, tác giả không nhận liên hệ từ các cá nhân ẩn danh
1 bình luận
Ý kiến trên Hacker News
Transformers from Scratch: https://e2eml.school/transformers.html
Loạt nhập môn của Andrej Karpathy cũng rất hay: https://karpathy.ai/zero-to-hero.html
Let's build GPT: from scratch, in code, spelled out: https://www.youtube.com/watch?v=kCc8FmEb1nY
GPT with Andrej Karpathy: Part 1: https://medium.com/@kdwa2404/gpt-with-andrej-karpathy-part-1...
“But what is a GPT? Visual intro to transformers | Chapter 5, Deep Learning” của 3Blue1Brown: https://www.youtube.com/watch?v=wjZofJX0v4M
“Attention in transformers, visually explained | Chapter 6, Deep Learning”: https://www.youtube.com/watch?v=eMlx5fFNoYc
Toàn bộ playlist về mạng nơ-ron của 3Blue1Brown: https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_6700...
Với một tutorial Keras thì mức này khá đắt
Kế hoạch của tôi là hiểu các lời giải đoạt giải năm ngoái rồi chọn một bài toán con nhỏ hơn để thử: https://scrollprize.org/
Ví dụ, phần khai triển gradient của LSTM không phải để giúp bạn hiện thực nó trong framework ưa thích, mà là để hỗ trợ việc hiểu
Mục đích của việc cho thấy lời giải bằng nhiều framework cũng là để nối cách các công thức trông như thế nào với cách chúng có thể xuất hiện trong code
Đặc biệt, phần thú vị trong kiến trúc Transformer là cơ chế attention có tính bất biến theo hoán vị. Điều này càng đúng nếu người ta không dùng positional embedding để triệt tiêu thuộc tính độc đáo đó; ngoài ra còn có thể mask tùy ý tới từng nút cụ thể của đồ thị hay từng cạnh riêng lẻ, nên có độ linh hoạt lớn để đưa tri thức miền vào kiến trúc
Trong nhiều trường hợp positional embedding vẫn có thể cần thiết, nhưng có thể thiết kế thông minh hơn thay vì giữ quan điểm quá hạn hẹp rằng đầu vào của lớp attention chỉ là một chuỗi 1 chiều đơn giản
Theo cách tôi hiểu thì ML engineer là người xây mô hình bằng các framework như PyTorch, AI engineer là người xây ứng dụng trên các giải pháp AI như prompt engineering hoặc API của OpenAI/Claude, còn MLOps là những người hỗ trợ triển khai và serving mô hình; tôi không chắc cách phân biệt đó có đúng không
Trên thực tế, các vai trò trên có thể bao trùm mọi thứ, từ “làm nghiên cứu tiên tiến” cho tới “đã từng mở một file CSV một lần”
Nếu muốn tạo ra tác động, chỉ cần làm thật giỏi phần đó. Đây cũng là kỹ năng dùng được trong các lĩnh vực như tích hợp hệ thống hay phân tích nghiệp vụ, còn thuật toán và hiện nay cả các mô hình đã huấn luyện thì có thể được những người làm nghiên cứu mang tới
Khá chua chát khi thấy mạng xã hội được chấp nhận như công cụ xác minh danh tính và độ tin cậy ngay cả giữa các kỹ sư. Khi một số chính phủ bắt đầu yêu cầu username mạng xã hội trong xét duyệt visa/nhập cư thì đã đủ tệ rồi, giờ đến mức muốn gửi cho một kỹ sư một email cũng cần social proof sao
Kẻ tấn công XZ hẳn đã có thể đăng nhập bằng GitHub vào vô số dịch vụ. Tôi cũng cho rằng tác giả bài gốc nhiều khả năng đã tải thứ gì đó từ PyPI, nơi từng có khả năng bị xâm phạm do rò rỉ token bị bỏ mặc hơn một năm
Ngoài ra, vì làm trong lĩnh vực machine learning nên họ cũng có khả năng tải những framework Python khổng lồ khó kiểm toán từ GitHub, conda và PyPI, và người trong lĩnh vực này còn tải cả các mô hình không đáng tin cậy để thử nghiệm
Thế mà vấn đề lại là email văn bản thuần có thể đọc bằng mail client dòng lệnh với MIME và các phần mở rộng khác đã bị tắt sao