Tiếp nối bài viết về định nghĩa của machine learning, ở bài viết này mình sẽ nói về các loại thuật toán trong machine learning.
Về cơ bản thì machine learning có 4 loại thuật toán bao gồm:
- Học có giám sát (Supervised learning)
- Học không giám sát (Unsupervised learning)
- Học bán giám sát (Semi-supervised learning)
- Học củng cố (reinforcement learning)

Học tập có giám sát (Supervised learning)

Đầu tiên chúng mình sẽ tìm hiểu về thuật toán học có giám sát. Đây được coi là thuật toán phổ biến nhất trong kỹ thuật machine learning. Trong học có giám sát, trước khi huấn luyện model bạn cần có một tập dữ liệu đã được gán nhãn (label) hay nói cách khác là bạn cần bộ dữ liệu đã biết đầu ra chính xác của chúng trông như thế nào. Quá trình huấn luyện model sẽ diễn ra liên tục hoặc nối tiếp cho đến khi mô hình đạt được mức độ chính xác mong muốn trên dữ liệu đào tạo.
Nói một cách đơn giản, thì mình lại lấy câu chuyện bạn giải đề toán làm ví dụ. Nếu cô giáo muốn sử dụng phương pháp học có giám sát (supervised learning) để giúp bạn hiểu bài và đạt điểm cao trong kỳ thi thì cô giáo bạn cần chuẩn bị sẵn bộ đề thi (tương đương với bộ dữ liệu) đã có sẵn lời giải và đáp án (tương đương với việc gán nhãn) để bạn có thể giải đề thi toán như những gì cô giáo bạn mong đợi (điều này phản ánh trên lời giải và đáp án mà cô giáo bạn đã chuẩn bị sẵn).
Các chức năng học tập có giám sát được phân loại thành hai bài toán là hồi quy (regression) và phân loại (classification)
- Một bài toán hồi quy (Regression Algorithms): sẽ cố gắng ánh xạ các biến đầu vào thành một hàm liên tục nào đó. Đơn giản thì một bài toán sử dụng thuật toán hồi quy thường sẽ để dự đoán một kết quả trong một khoảng nào đó. 
Ví dụ như dự đoán giá nhà dựa trên các thông tin được cho trước, dự đoán số tuổi dựa trên cơ sở hình ảnh đã cho, v.v
- Một bài toán phân loại (classification algorithms) sẽ cố gắng dự đoán kết quả một cách chính xác hơn. Thuật toán này thường được sử dụng để dự đoán các bài toán liên quan đến phân loại ví dụ như phân loại các loại tài liệu khác nhau, dự đoán khối u là ác tình hay lành tính dựa trên cơ sở dữ liệu đã được học, v.v.

Học tập không giám sát (Unsupervised learning)

Trái với phương pháp học tập có giám sát, học tập không giám sát sẽ không được cung cấp “lời giải” cho bài toán. Do đó, việc học tập không giám sát cho phép chúng ta tiếp cận các vấn đề với rất ít hoặc không biết kết quả đầu ra sẽ như thế nào. Tuy nhiên chúng ta có thể lấy cấu trúc từ dữ liệu mà chúng ta không nhất thiết phải biết tác động của các biến. Hay nói cách khác model sẽ tự hoạt động để khám phá các mẫu và thông tin chưa được phát hiện trước đó
Học không giám sát sẽ có hai phương pháp nhỏ để lấy cấu trúc từ dữ liệu đó là:
- Phân cụm (clustering): bằng cách phân cụm dữ liệu dựa trên mối quan hệ giữa các biến trong dữ liệu, model có thể suy ra cấu trúc của dữ liệu. Model sẽ phân tích bài toán trên toàn bộ dữ liệu X thành các nhóm nhỏ dựa trên sự liên kết và đồng dạng giữa các dữ liệu trong mỗi nhóm. 
Ví dụ nếu dì ghẻ yêu cầu model phân loại một đấu thóc với một đấu gạo trong khi model chưa từng được biết đến thóc và gạo từ trước đó, nó sẽ tự đưa ra phán đoán và dựa trên đặc điểm nhận dạng là gạo màu trắng và thóc thì màu vàng để phân loại thóc ra thóc và gạo ra gạo.
- Phương pháp thứ hai là kết hợp (Association): Các quy tắc association cho phép thiết lập các liên kết giữa các đối tượng dữ liệu bên trong cơ sở dữ liệu lớn. Nói một cách dễ hiểu là thì phương pháp này sẽ khám phá ra một quy luật dựa trên nhiều dữ liệu cho trước. Ví dụ như việc những người mua nhà mới có nhiều khả năng mua đồ nội thất mới. Một ví dụ điển hình nữa là việc mua hàng qua các trang thương mại điện tử như shopee và lazada. Các sàn này sẽ có dữ liệu lịch sử mua hàng, lịch sử tìm kiếm mặt hàng muốn mua, v.v của khách hàng, dựa trên các dữ liệu này thuật toán sẽ tính toán và đoán xu hướng mua hàng của bạn rồi hiển thị các sản phẩm mà nó cho là phù hợp trên newfeed để kích cầu mua sắm của bạn.
Học tập tự giám sát (self-supervised learning)
Học tập tự giám sát là một phương tiện để huấn luyện máy tính thực hiện các nhiệm vụ mà không cần con người cung cấp dữ liệu được gắn nhãn (tức là hình ảnh của một con chó sẽ được gán nhãn là “con chó” để model có thể hiểu). Nó là một tập hợp con của việc học không giám sát trong đó kết quả đầu ra hoặc mục tiêu được tạo ra bằng cách model tự gắn nhãn, phân loại và phân tích thông tin, sau đó đưa ra kết luận dựa trên các kết nối và tương quan. Học tập tự giám sát cũng có thể là một hình thức học tập có giám sát tự chủ vì nó không yêu cầu đầu vào của con người dưới dạng ghi nhãn dữ liệu. Dù là một nhánh của học không giám sát (unsupervised learning) nhưng học tự giám sát không tập trung vào phân cụm và phân nhóm.
Phần này khá là hay và cực kỳ thú vị. Do mục đích bài viết này là nêu những kiến thức cơ bản nên mình sẽ dịch, chắt lọc và dành riêng một bài viết hoặc 1 series về phương pháp này. Nếu muốn tìm hiểu sâu hơn các bạn có thể đọc bài "Self-supervised learning: The dark matter of intelligence" được released bởi Meta (mình đính kèm link ngay bên dưới này), bài viết siêu chi tiết và dễ hiểu.

Học tập bán giám sát (Semi-supervised learning)

Phương pháp này thì như tên gọi của nó đã diễn tả bản chất rồi. Đối với học bán giám sát, model sẽ được huấn luyện với cả bộ dữ liệu đã được gán nhãn và cả bộ dữ liệu không được gán nhãn. Thông thường sẽ là một lượng nhỏ dữ liệu được gắn nhãn và một lượng lớn dữ liệu không được gắn nhãn. Các hệ thống sử dụng phương pháp này có thể cải thiện đáng kể độ chính xác của việc học (learning accuracy). Phương pháp này được chọn khi dữ liệu được gắn nhãn chưa đủ để giúp model có thể học hỏi tốt và đạt yêu cầu từ đó. 

Học củng cố (reinforcement learning)

Học củng cố hoạt động bằng cách lập trình một thuật toán với một mục tiêu riêng biệt và một bộ quy tắc được chỉ định để hoàn thành mục tiêu đó. Các nhà khoa học dữ liệu cũng lập trình thuật toán để tìm kiếm phần thưởng tích cực (positive rewards) - mà nó nhận được khi thực hiện một hành động có lợi cho mục tiêu cuối cùng - và tránh các hình phạt - mà nó nhận được khi thực hiện một hành động khiến nó không đạt được mục tiêu cuối cùng. Phương pháp này cho phép máy móc và tác nhân phần mềm tự động xác định hành vi lý tưởng trong bối cảnh cụ thể để tối đa hóa hiệu suất của nó. 
Phương pháp này thường được sử dụng trong các lĩnh vực như:
- Robot: Robot có thể học cách thực hiện các nhiệm vụ và yêu cầu của con người
- Trò chơi video: Học tăng cường đã được sử dụng để dạy bot chơi một số trò chơi điện tử.
- Quản lý nguồn lực: Với nguồn lực hữu hạn và một mục tiêu đã xác định, học tập củng cố có thể giúp doanh nghiệp lập kế hoạch phân bổ nguồn lực.
Mục tiêu của chuỗi bài viết về Machine learning là để cung cấp cho các bạn những kiến thức cơ bản và dễ hiểu nhất về machine learning nên sẽ có những phần mình không viết sâu, ví dụ như bài viết này. Nếu các bạn muốn tìm hiểu thêm có thể contact riêng cho mình để nhận các tài liệu về machine learning mà mình đã thu thập và học tập ạ. Ở bài viết tới mình sẽ viết về Cost function - cách để đo độ chính xác của hàm giả thuyết.
Disclaim: Mình không học chuyên về trí tuệ nhân tạo (AI), máy học (ML) hay có bất kỳ chứng chỉ gì liên quan đến AI, ML và khoa học máy tính (CS). Những kiến thức mình chia sẻ là những gì mình tự tìm hiểu từ những nguồn tài liệu khác nhau (trong đó có khóa học Machine learning trên coursera của thầy Andrew Ng) và được chắt lọc, viết lại dưới góc nhìn của một người non-technical với mục đích giúp những bạn trái ngành có thể hiểu về ML như mình. Bởi vì mình tự tìm hiểu nên sẽ có những sai sót trong bài viết, hy vọng sẽ được các bạn có kinh nghiệm về ngành này sẽ chỉ ra để mình được chỉnh sửa và học hỏi thêm. Cám ơn mọi người rất nhiều.
Tài liệu tham khảo:
Burns, E. (2021, March 30). machine learning. SearchEnterpriseAI. https://www.techtarget.com/searchenterpriseai/definition/machine-learning-ML 
Team, E. (2020, May 06). What Is the Definition of Machine Learning? Expert.Ai. https://www.expert.ai/blog/machine-learning-definition/ 
Vu, T. (2016b, December 26). Bài 1: Giới thiệu về Machine Learning. Tiep Vu’s Blog. https://machinelearningcoban.com/2016/12/26/introduce/ 
Yann LeCun & Ishan Misra (March 04, 2021). Self-supervised learning: The dark matter of intelligence. Meta. https://ai.facebook.com/blog/self-supervised-learning-the-dark-matter-of-intelligence/