- "Understanding Machine Learning" do Shai Shalev-Shwartz và Shai Ben-David đồng tác giả, được Cambridge University Press xuất bản năm 2014
- Cuốn sách trình bày nền tảng lý thuyết và các thuật toán của machine learning.
- Với sự cho phép của Cambridge University Press, bản PDF của bản thảo đã được đăng tải và chỉ có thể tải về cho mục đích cá nhân
- Không dùng để phát hành
1 bình luận
Các ý kiến trên Hacker News
Nếu muốn hiểu machine learning một cách dễ dàng, tôi khuyên đọc The StatQuest Illustrated Guide to Machine Learning của Josh Starmer: https://www.goodreads.com/book/show/75622146-the-statquest-i...
Tôi chưa từng thấy giáo viên nào giải thích các khái niệm phức tạp rõ ràng và súc tích như Starmer; sách có hình thức gần như sách thiếu nhi nên rất dễ đọc và dễ hiểu.
Gần đây ông ấy cũng ra một cuốn về mạng nơ-ron, cũng hay tương tự; rất đáng khuyên đọc, vì ngay cả khi bạn đã là chuyên gia, bạn vẫn có thể học được những cách hay để dạy và truyền đạt các khái niệm phức tạp trong machine learning.
Tôi đã dùng rất nhiều làm tài liệu bổ trợ khi học thống kê ở đại học.
Tuy nhiên, khó khuyên dùng nó như một cách để học machine learning vượt quá mức bề mặt, và nó cũng có cảm giác hơi cũ.
Tôi chưa đọc, nhưng cuốn về mạng nơ-ron có thể bù đắp phần này.
Tôi cũng tự hỏi liệu với nền tảng kỹ sư phần mềm web/phát triển, việc đào sâu nghiêm túc các sách được khuyên ở đây có thể được xem là hợp lý để bước vào các vai trò machine learning/AI hay không.
Công việc của tôi là dùng machine learning trong phân tích kinh tế lượng, và hầu hết các nhà kinh tế học không nắm machine learning theo trực giác.
Nếu muốn hiểu nền tảng của machine learning, Probability for computer scientists của Stanford là một tài liệu tuyệt vời: https://www.youtube.com/watch?v=2MuDZIAzBMY&list=PLoROMvodv4...
Cách khóa học này trình bày lý thuyết xác suất và nền tảng lý thuyết của machine learning hay hơn bất kỳ bài giảng nào tôi từng xem; tuy vậy, về cơ bản nó gần với một khóa xác suất có đề cập nền tảng machine learning.
Khóa của Andrew Ng cũng mang tính huyền thoại, nhưng đòi hỏi một mức độ quen thuộc nhất định với toán tuyến tính.
Cũng có thể tải PDF ghi chú bài giảng CS109: https://chrispiech.github.io/probabilityForComputerScientist...
Nếu muốn hiểu về mặt lý thuyết các chủ đề machine learning, Learning From Data của Caltech cũng rất hay: https://work.caltech.edu/telecourse
Khóa Caltech này cũng có sách: https://www.amazon.com/Learning-Data-Yaser-S-Abu-Mostafa/dp/...
Nếu muốn hiểu cách xây dựng mạng nơ-ron từ đầu, Neural Networks: Zero to Hero rất tốt: https://www.youtube.com/watch?v=VMj-3S1tku0&list=PLAqhIrjkxb...
https://bloomberg.github.io/foml/#home Cá nhân tôi thích khóa học này nhất.
Nếu mục tiêu là học AI tạo sinh hiện đại, tôi khuyên dùng https://udlbook.github.io/udlbook/ thay thế.
Vài năm trước tôi đã đọc một phần, theo trí nhớ thì sách rất nặng về lý thuyết và có nhiều lý thuyết học thống kê; phần bàn về tối thiểu hóa rủi ro có cấu trúc của Vapnik thì cá nhân tôi cho là sai
Sách nghiêng mạnh về lý thuyết và gần như không có ứng dụng thực tế; hơn nữa đây là sách năm 2014, tức là trong lĩnh vực AI đã như từ thời xa xưa, nên phần ứng dụng bây giờ có khả năng đã hoàn toàn lỗi thời
Tôi không nghĩ ngày nay có nhiều người muốn đọc cuốn này
Theo tôi biết, các lý thuyết toán học như lý thuyết học thống kê không giúp ích mấy cho việc phát minh ra transformer, và cũng không hữu ích trong việc giải thích vì sao mạng nơ-ron không overfit dù có VC dimension lớn
Tựa đề “từ lý thuyết đến machine learning” cho thấy rõ vấn đề của cách tiếp cận đặt lý thuyết lên trước này
Những người quan tâm đến toán học nhưng không quan tâm đến kỹ thuật phần mềm đã bước vào machine learning và tạo ra các lý thuyết học trừu tượng như lý thuyết học thống kê, nhưng chúng khá xa rời những gì thực sự làm được
Ngược lại, các kỹ sư phớt lờ những lý thuyết đó, tự tay làm bẩn tay với việc triển khai mạng nơ-ron thực tế và cố cải thiện hiệu năng; kết quả là xuất hiện những thứ như mạng nơ-ron tích chập rồi sau đó là transformer
Tôi nhớ trong lời tựa sách của mình, Vapnik từng phàn nàn theo kiểu xem xu hướng bỏ qua các lý thuyết toán học đẹp đẽ và chỉ tập trung vào thực hành như một dạng cực đoan
Nhưng giờ đã rõ rằng các lý thuyết đó quá yếu để giải thích độ phức tạp của những cách tiếp cận thực sự hoạt động tốt, và theo tôi machine learning đã lộ rõ là một nhánh của kỹ thuật, chứ không phải toán học hay khoa học máy tính lý thuyết
Tựa đề cuốn sách này chứa đựng một hy vọng sai lầm rằng người ta sẽ học các lý thuyết học trừu tượng trước, được truyền cảm hứng rồi chẳng mấy chốc sẽ tạo ra thuật toán mới
Lý thuyết học thống kê nhiều lắm cũng chỉ mô hình hóa được học có giám sát, chưa nói đến học tăng cường hay học tự giám sát
Nó thậm chí không giải thích được vì sao mạng nơ-ron chống overfit tốt; còn các lý thuyết viển vông như lý thuyết học tính toán/thuật toán, suy luận quy nạp Solomonoff hay độ phức tạp Kolmogorov thì còn xa rời thực tế hơn
Tôi hiểu rằng một số khía cạnh là đáng kinh ngạc, và khi kích thước cũng như độ đa dạng của dataset phù hợp thì scaling laws thường đúng
Nhưng theo kinh nghiệm huấn luyện từ đầu trên dataset thực tế, thay vì fine-tune mô hình pretrained, nếu dữ liệu không đủ nhiều thì mạng nơ-ron chắc chắn có thể overfit
Trực giác của tôi là các lý thuyết hiện có chưa từng được chứng minh là đúng trong một số điều kiện nhất định, chẳng hạn một số đặc tính dataset cụ thể; nhưng ngày nay dường như người ta ngầm giả định dataset là khổng lồ và bỏ qua các điều kiện kèm theo như vậy
Với các bài toán ngách ở công ty ngoài FAANG, hoặc trong thực tế không thể dùng các dataset công khai nhưng phi thương mại, đây vẫn là vấn đề thực tế
Không phải bài toán nào cũng được giải bằng foundation model hay frontier model
Nếu có bài báo liên quan thì mong được chỉ giúp; tôi vẫn đang học
Nó giống vật lý: để hiểu những thứ như cơ học lượng tử thì cần lý thuyết toán học. Nếu không, mọi thứ có thể chẳng có nghĩa gì
Tôi tự hỏi việc một kỹ sư phần mềm không làm nghiên cứu hiểu sâu các khái niệm machine learning có thực dụng không
Tôi không có kế hoạch đi theo hướng nghiên cứu, nên đang cố ước lượng nên tập trung học gì cho sự nghiệp
Đại khái là trong doanh nghiệp có vẻ có nhu cầu triển khai AI/ML, nhưng ngoài một phần debugging ra, liệu có đáng để phát triển mô hình từ đầu không?
Tôi cũng tự hỏi liệu trong kinh doanh thông thường, đa số trường hợp chỉ cần tinh chỉnh một chút các mô hình có sẵn cho use case cụ thể là đủ hay không
Đây là cuốn nhập môn tôi thích nhất về lý thuyết machine learning, đặc biệt là lý thuyết học thống kê, và dễ tiếp cận hơn nhiều so với các sách khác
Sách từ năm 2014, giờ còn thật sự liên quan không?
Sách đã 10 năm tuổi rồi, không lỗi thời sao?
Các cập nhật về bài toán bias/variance cũng không lớn nếu xem bài gốc Geman 1992: https://www.dam.brown.edu/people/documents/bias-variance.pdf
Thời đó họ xử lý các dataset nhỏ hoặc dataset vô hạn, còn double descent chỉ hoạt động đúng khi mẫu hình trong test set đủ giống mẫu hình trong training set
Cần cẩn trọng với một số quan điểm cũ, nhưng các khái niệm nền tảng thì vẫn như vậy
Ngay cả trong fine-tuning hay học tăng cường, vấn đề dataset nhỏ/dataset vô hạn, nơi lớp khái niệm của dữ liệu học có thể mới, vẫn được bài báo năm 1992 áp dụng; nếu giả định nó bị vô hiệu hóa một cách phổ quát thì sẽ tự vấp chân
Phần lớn các khái niệm nền tảng đến từ giữa thế kỷ 20
Sự sẵn có của dữ liệu quy mô lớn và các khám phá mới đã thay đổi các giả định và công cụ nhiều hơn là vô hiệu hóa các nghiên cứu trước đó
Lướt qua bài báo đó sẽ thấy khi ấy họ đơn giản loại trừ lượng dữ liệu và tính toán khổng lồ mà chúng ta có ngày nay vì xem là phi thực tế
Tốt nhất là tìm cuốn sách hợp với mình để học các khái niệm và tích lũy tri thức ngầm
Nhiều nỗ lực đang cố tích hợp cả phương pháp ký hiệu và các phương pháp khác
Xây dựng cả chiều rộng lẫn chiều sâu sẽ giúp tiết kiệm thời gian và tìm cơ hội, và tôi cho rằng kiến thức nền tảng là then chốt cho việc đó
Các nền tảng của machine learning như học/kiểm chứng, variance/bias vẫn như cũ, và các thuật toán cổ điển vẫn có chỗ đứng
Những tiến bộ mới hơn có thể thiếu có lẽ chỉ cỡ các forest kiểu XGBoost
Chỉ cần ba cuốn này là từ cực kỳ cơ bản đến các chủ đề nâng cao, đúng nghĩa không cần gì khác
Nếu chỉ tò mò về machine learning thì khả năng thông tin sai là rất thấp
Nhưng khác với, chẳng hạn, một cuốn sách hóa học 11 năm tuổi, nó không còn gắn sát với những vấn đề thú vị nhất mà các kỹ sư hiện nay đang vật lộn
Vì vậy tôi nghĩ nó không phải lựa chọn hữu ích nhất để chuẩn bị phỏng vấn hay bước vào ngành
Vì sách chủ yếu tập trung vào lý thuyết toán học trừu tượng có giá trị đáng ngờ, chứ không phải deep learning hiện đại
Có cuốn sách nào khác được khuyến nghị không?
Một giáo trình nhập môn miễn phí và dễ tiếp cận do các nhà nghiên cứu nổi tiếng viết, bao quát rộng các nội dung kinh điển và có nhiều phần “Lab” kèm mã nguồn
Có cả chương về deep learning, nhưng không đề cập các phát triển gần đây, nên phần đó cần tham khảo thêm tài liệu khác
Phần giải thích chắc chắn và cũng ít mang cảm giác cũ kỹ hơn AIMA