Machine Learning hiện đang là một nhánh của Khoa học máy tính được nhiều bạn trẻ quan tâm. Nhằm giúp bạn bắt đầu học Machine Learning cơ bản một cách dễ dàng hơn, dưới đây là lộ trình học cùng với những nguồn tài liệu tham khảo uy tín nhất về Machine Learning.
Mục lục
1. Lộ trình học Machine Learning cơ bản dành cho người mới bắt đầu
Là một nhánh nhỏ của ngành Khoa học máy tính, thế nên để học về Machine Learning, người học cần nắm được một số kiến thức về Toán học, Lập trình và bắt đầu với một số thư viện như NumPy và TensorFlow.
1.1. Kiến thức toán học căn bản: Đại số tuyến tính và Xác suất thống kê
Những trọng tâm về đại số tuyến tính mà bạn cần có bao gồm: những kiến thức về vectơ, ma trận, chuyển vị ma trận, các phép toán với ma trận, ma trận đơn vị, ma trận nghịch đảo, norm vector, tensor, đạo hàm (đặc biệt là chain rule và production rule). Bên cạnh đó bạn cũng cần ôn lại một số kiến thức về Xác suất thống kê trước khi bắt đầu học Machine Learning cơ bản như: lý thuyết xác suất, xác suất sử dụng không gian mẫu, xác suất có điều kiện – xác suất độc lập, biến ngẫu nhiên và phân phối xác suất.
1.2. Kỹ năng lập trình
Vì tính đơn giản và chặt chẽ của mình mà Python được sử dụng nhiều nhất trong Machine Learning. Ngoài ra, JavaScript cũng là ngôn ngữ lập trình phổ biến. Python dễ viết, dễ đọc và vì là một ngôn ngữ thông dịch nên dòng lệnh được thực thi ngay lập tức. Tuy nhiên trong quá trình thông dịch có nhiều bugs và source code dễ dàng bị dịch ngược là một số điểm trừ của Python.
JavaScript có tính ổn định hơn và là một trong những ngôn ngữ lập trình phổ biến nhất hiện nay. Machine Learning cơ bản chưa đòi hỏi quá nhiều kiến thức lập trình phức tạp, nhưng bạn vẫn nên cố gắng thành thạo ít nhất một ngôn ngữ lập trình phổ biến.
1.3. Xây dựng model cơ bản với các thư viện Numpy và TensorFlow
NumPy (NumPy.org): Là một thư viện để xử lý và tính toán các ma trận, được dùng cùng với SciPy và Matplotlib để thay thế cho Matlab. NumPy được viết bằng 2 ngôn ngữ lập trình phổ biến là Python và C, đặc biệt là các hàm liên quan tới phần Đại số tuyến tính. Ngoài NumPy thì Google Colaboratory là một lựa chọn đơn giản hơn, phù hợp với những người mới đang bắt đầu tìm hiểu về Machine Learning cơ bản.
TensorFlow: Là một thư viện mã nguồn mở được phát triển bởi Google. Nó được sử dụng để training/ inference các mô hình Machine Learning. Đây là công cụ vô cùng hữu ích với những nhà phát triển học máy.
2. Những nguồn kiến thức Machine Learning cơ bản
Hiện nay bạn có thể dễ dàng tìm các bộ tài liệu, giáo trình về Machine Learning trên mạng. Những nguồn kiến thức Machine Learning cơ bản có rất nhiều tại các blog, YouTube và cả Github.
2.1. Blog Machine Learning cơ bản
Có rất nhiều blog về Machine Learning hệ thống hóa kiến thức, chia sẻ kinh nghiệm của các chuyên gia trong lĩnh vực này. Bạn có thể tìm đến blog, forum và nhóm kín trên Facebook có tên Machine Learning cơ bản của anh Vũ Hữu Tiệp quản trị. Anh Vũ Hữu Tiệp là Tiến sĩ ngành Machine Learning and Computer Vision tại Pennsylvania State University, hiện tại đang là chuyên gia Deep learning tại Silicon Valley.
Trên YouTube cũng có rất nhiều kênh giúp bạn củng cố kiến thức về Machine Learning như Two Minute Papers (gồm các video ngắn về AI/ Machine Learning), Hvass Laboratories (một kênh chuyên tổng hợp các bài hướng dẫn về TensorFlow), Deep Learning dot AI (chia sẻ về Deep Learning của Andrew Y. Ng tại Stanford University),…
2.2. Các repos trên Github
Github là thư viện mã nguồn mở khổng lồ và đồng thời cũng là một ngân hàng tài liệu và blogs tuyệt vời. Github là nơi tập hợp tất cả các chuyên gia trong ngành Khoa học máy tính. Bạn chỉ cần gõ từ khóa “Machine Learning” hay bất cứ chủ đề nào mình quan tâm, và tìm các repos được đánh giá cao nhất để đọc.
Để bắt đầu học về Machine Learning, bạn cần có kiến thức đại số tuyến tính và xác suất thống kê cơ bản cùng với kinh nghiệm lập trình Python. Những kiến thức này bạn đều có thể tìm được trên các blog, các forum về Machine Learning cơ bản một cách dễ dàng. Tham gia các nhóm thảo luận về Machine Learning sẽ giúp bạn tự học thuận lợi hơn.