8 điểm bởi GN⁺ 2024-07-17 | 1 bình luận | Chia sẻ qua WhatsApp
  • 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
  • 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

 
GN⁺ 2024-07-17
Ý kiến trên Hacker News
  • Có khá nhiều tài liệu tốt hơn. The Annotated Transformer / Attention is All You Need: http://nlp.seas.harvard.edu/annotated-transformer/
    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...
    • Bổ sung thêm là các trang ở trên đều miễn phí. Còn trang được đăng ở đây thì ghi rằng “mua quyền sử dụng thương mại đầy đủ cho toàn bộ nội dung và kho GitHub là €10,000,000”, đồng thời còn yêu cầu 20% tiền bản quyền cho việc sử dụng thương mại
      Với một tutorial Keras thì mức này khá đắt
    • Hơi lạc đề một chút, nhưng tôi muốn thử tham gia Vesuvius Challenge; tuy nhiên tôi không có nền tảng machine learning, chỉ là một web developer thông thường. Tôi đang tự hỏi liệu Zero to Hero của Karpathy và cuốn Understanding Deep Learning có đủ để xây dựng nền tảng machine learning thực hành hay chưa, hay còn cần học thêm gì nữa
      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/
    • Bộ slide của Lucas Beyer cũng khá ổn: https://docs.google.com/presentation/d/1ZXFIhYczos679r70Yu8v...
  • Có cảm giác tutorial về Transformer đã trở thành tutorial Monad kiểu mới
  • Tài liệu này đi theo hướng lướt rất cô đọng từ perceptron tới Transformer
    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
  • Điều gây khó chịu nhất ở tài liệu về Transformer là gần như tất cả đều chỉ tập trung vào xử lý ngôn ngữ tự nhiên
    Đặ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
  • Muốn hỏi các chuyên gia machine learning/AI. Nếu ai đó muốn chuyển sang mảng ML/AI từ CRUD/backend API thì có tài liệu nhập môn nào đáng xem không? Lĩnh vực này có nhiều nhánh nên tôi không biết nên bắt đầu từ đâu
    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
    • Không có định nghĩa chính thức nào cho các thuật ngữ này cả. Quy tắc liên tưởng duy nhất cần có là: chức danh nghe hợp lý → có thể mang bất kỳ ý nghĩa nào mà công ty muốn
      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”
    • 85% thời gian của một dự án machine learning sẽ dành cho chất lượng dữ liệu và một chút feature engineering theo đặc thù miề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
    • Có lẽ gọi “AI engineer” là một application engineer chuyên tích hợp machine learning vào phần mềm sẽ đúng hơn
    • Kaggle là một điểm khởi đầu tốt
  • Ngoài vài đoạn giới thiệu thì không có nội dung gì. Nội dung thực tế chỉ hiện 404 not found
    • Link trong phần thân bài bị hỏng. Link trong menu hamburger thì hoạt động bình thường
    • Menu bên trái trên desktop hoạt động. Có vẻ chỉ link ở trang đầu là bị hỏng
  • Có đoạn ghi “khi gửi email, vui lòng cung cấp ít nhất hai địa chỉ SNS như LinkedIn, Twitter để xác minh… tôi không còn nhận liên hệ từ các cá nhân ẩn danh nữa”
    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
    • Câu “tôi không còn nhận liên hệ từ các cá nhân ẩn danh nữa” làm tôi nhớ đến trò đùa về một người xuất hiện ở trung tâm tuyển dụng của bộ tư lệnh không quân. Khi bị hỏi “bằng lái phi công đâu? kinh nghiệm đâu? bằng cấp đâu?” thì người đó đáp: “Không có. Tôi chỉ đến để nói trước là đừng trông chờ gì ở tôi!”
    • Nếu mở rộng phần đã bị rút gọn thì nội dung là “tôi không còn nhận liên hệ từ các cá nhân ẩn danh nữa vì vụ backdoor XZ
      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
  • Đây là tài liệu rất tốt để xây nền tảng từ cơ bản một cách ngắn gọn