10 cuốn sách nên đọc khi tham gia lĩnh vực Data Science - Machine Learning

Data Science – Machine Learning là một trong những ngành nghề “hot” trong cách mạng công nghiệp 4.0. Nhu cầu tuyển dụng của ngành nghề này luôn sôi động và hấp dẫn. Nếu bạn đang theo đuổi ngành này, bạn hãy tham khảo 10 cuốn sách sau cập nhật kiến thức mới nhé.

Data Structure and Algorithms (Cấu trúc dữ liệu và giải thuật)

1. Automate the Boring Stuff with Python (Al Sweigart)

Đây là 1 cuốn sách rất phù hợp với người mới bắt đầu học Python, rất đơn giản, dễ học.

Các bạn sẽ được làm quen với những kiến thức cơ bản như các dạng functions/methods (các dạng phương trình/phương pháp), variables (các biến số) và flow control (điều khiển lưu lượng/tốc độ truyền dữ liệu), cũng như làm việc với các dạng văn bản như .csv, .excel, .pdf và .json.

2. Problem Solving with Algorithms and Data Structures using Python (Brad Miller and David Ranum)

Cuốn này thì tập trung nhiều vào phần thuật toán (algorithms) hơn ví dụ như Recursion (thuật toán đệ quy), Sorting and Searching (phân loại và tìm kiếm), Trees and Tree Algorithms (thuật toán dạng cây), Graphs and Graph Algorithms (thuật toán về đồ thị).

Mình thấy phần này cũng khá quan trọng vì bản thân data science cũng là một quá trình tìm hiểu và giải quyết vấn đề (problem solving) ví dụ như bài toán tối ưu hoá (optimization), tìm hiểu sự liên quan giữa các biến để đưa ra dự đoán tương lai… Giải thuật theo mình sẽ giúp nâng cao khả năng lập luận và suy nghĩ logic.

Statistics (Toán thống kê)

3. An Introduction to Statistical Learning with Applications in R (James et al)

Không phải là một cuốn sách hoàn toàn chuyên sâu về xác suất thống kê, cuốn sách giới thiệu về cái gọi là statistical learning methods, là tập hợp các phương thức để mô hình hoá và tìm hiểu về những bộ dữ liệu phức tạp.

Cuốn sách giới thiệu về các phương thức liên quan trực tiếp đến các mô hình Machine Learning như Regression (hồi quy tuyến tính), Classification (phân loại), Decision Tree (cây quyết định), Support Vector Machines (thuật toán tìm kiếm một mặt phẳng đa chiều để phân loại 2 nhóm dữ liệu*) cũng như một ít về unsupervised learning như Clustering (tạm dịch: chia nhóm dữ liệu) có sử dụng các ứng dụng viết bằng ngôn ngữ R.

4. Think Stats (O’Reilly– Downey)

Think Stats giới thiệu Xác suất và Thống kê sử dụng ngôn ngữ Python.

Các kiến thức xác suất thống kê cơ bản như Descriptive statistics (thống kê mô tả dữ liệu), Cumulative distribution functions (phương trình biểu diễn sự phân bố), Probability (xác suất), Hypothesis testing (phương pháp kiểm tra giả thuyết), Correlation (hệ số tương quan) được giải thích và áp dụng luôn vào các bộ dữ liệu (datasets). Cuối mỗi chương thì đều có phần câu hỏi ôn lại (revisited) và thuật ngữ chuyên ngành (glossary).

(*O’Reilly là nhà xuất bản sách về công nghệ thông tin cực kỳ nổi tiếng, nhất là bìa sách của họ lúc nào cũng có hình một con vật ký hoạ đen trắng.)

Machine Learning and Data Science (Máy học và khoa học dữ liệu)

5. Machine Learning for Dummies (IBM Limited Edition – Hurwitz and Kirsch)

Gọi là “for dummies” một cách bông đùa, thực chất cuốn này là dành cho những bạn có biết về machine learning hoặc data science. Cuốn sách chủ yếu hướng đến đối tượng quản lý hay quản lý dự án, và đang có nhu cầu áp dụng ML trong kinh doanh cũng như muốn xây dựng một đội ngũ data scientist.

Cuốn sách viết cực kỳ đơn giản, không có phần giải thích bằng toán, chủ yếu viết bằng ngôn ngữ dễ hiểu, có thêm các icon đánh dấu mục nào quan trọng và cần nhớ.

Nên đọc nhanh cuốn này trước khi đi phỏng vấn để cho vào đầu các keyword/buzzword quan trọng! :grinning:

6. Understanding Machine Learning (Shai Shalev-Shwartz and Shai Ben-David)

Cuốn sách chủ yếu giới thiệu về ML và các thuật toán liên quan, từ quan điểm toán học và lý thuyết cho đến ứng dụng những lý thuyết này vào thực tế.

Các kiến thức được trình bày bao gồm sự phức tạp về mặt điện toán của yếu tố “học” trong machine learning (computational complexity of learning), các mô hình thuật toán quan trọng như stochastic gradient descent, neural network và structured output learning… Cuốn sách đòi hỏi người đọc nên có các kiến thức cơ bản về xác suất thống kê cũng như đại số tuyến tính (linear algebra).

7. A Programmer’s Guide to Data Mining (Zacharski)

Cuốn Guide to Data Mining thú vị ở điểm là không chỉ mang đến kiến thức về khoa học dữ liệu bằng nhiều hình ảnh giải thích dí dỏm mà còn cho phép người đọc ở mỗi chương thực hành áp dụng những kiến thức đã học để xử lí dữ liệu cho trước và tập code (Python), hay nói các khác là phương pháp học qua việc áp dụng thực hành (learn-by-doing approach).

Các thuật toán giới thiệu trong cuốn sách chủ yếu phục vụ xây dựng Recommendation System (Hệ thống gợi í), ví dụ như thuật toán classification (phân loại), Naïve Bayes cũng như clustering (chia nhóm).

8. A Brief Introduction to Neural Networks (Kriesel)

Cuốn này không được chính thức phát hành (bởi một công ty phát hành sách) mà được công bố và cho phép tải về miễn phí trên trang web của tác giả.

Mặc dù gọi là giới thiệu ngắn gọn (brief introduction) nhưng cuốn sách cực kỳ tập trung đi sâu vào giải thuật toán machine learning nâng cao và neural network (mạng nơ-ron nhân tạo) từ lịch sử ra đời, neural network dưới góc độ sinh học, cho đến neural network nhân tạo, cũng như các thành phần cấu tạo nên neural network trong lĩnh vực machine learning (perceptron, backpropagation).

9. Deep Learning (An MIT Press Book – Goodfellow et al)

Bạn nào quan tâm và đào sâu hơn đến lĩnh vực deep learning và trí tuệ nhân tạo (AI) có thể tìm hiểu thêm cuốn này. Từ các mô hình toán học, các khái niệm trong machine learning, cho đến các giải thuật trong deep learning cũng như cách tiếp cận vấn đề trong giới nghiên cứu đều được tóm tắt, giải thích và trao đổi tại đây.

10. Machine Learning Yearning (Andrew Ng)

Mặc dù vẫn còn là bản chưa hoàn chỉnh nhưng mình vẫn thấy muốn đưa vào danh sách vì nói đến Machine Learning ai cũng nên biết đến Andrew Ng. Ông là người có rất nhiều đóng góp về học thuật, nghiên cứu cũng như vận động trong lĩnh vực trí tuệ nhân tạo và machine learning (đồng sáng lập Google Brain, Coursera, Deeplearning.ai, và Chief Scientist tại Baidu).

Cuốn sách mang đến một cái nhìn chiến lược về mặt kỹ thuật (technical strategy) làm thể nào để dự án machine learning được thực hiện một các hiệu quả và chính xác, ví dụ như tối ưu hoá các metrics (độ tin cậy, thời gian chạy máy, tỉ lệ lỗi), hay những vấn đề xung quanh mô hình như overfitting (mô hình quá khớp), bias (định kiến chủ quan), variance (phương sai)…

Nguồn: Bài viết được tổng hợp và dịch bởi Hạnh Hoàng, một thành viên của group Data Science in Brief

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?