AI 101

Mô hình Máy học Tạo và Phân biệt

mm

Một số mô hình máy học thuộc về một trong hai loại “tạo” hoặc “phân biệt”. Vậy sự khác biệt giữa hai loại mô hình này là gì? Điều gì có nghĩa là một mô hình là phân biệt hoặc tạo?

Câu trả lời ngắn gọn là các mô hình tạo bao gồm phân phối của tập dữ liệu, trả về một xác suất cho một ví dụ cụ thể. Các mô hình tạo thường được sử dụng để dự đoán điều gì xảy ra tiếp theo trong một chuỗi. Trong khi đó, các mô hình phân biệt được sử dụng cho việc phân loại hoặc hồi quy và chúng trả về một dự đoán dựa trên xác suất có điều kiện. Hãy khám phá sự khác biệt giữa các mô hình tạo và phân biệt để hiểu rõ hơn về sự khác biệt giữa hai loại mô hình này và khi nào nên sử dụng từng loại.

Mô hình Tạo và Phân biệt

Có nhiều cách để phân loại một mô hình máy học. Một mô hình có thể được phân loại thuộc các loại khác nhau như: mô hình tạo, mô hình phân biệt, mô hình tham số, mô hình không tham số, mô hình dựa trên cây, mô hình không dựa trên cây.

Bài viết này sẽ tập trung vào sự khác biệt giữa mô hình tạo và mô hình phân biệt. Chúng ta sẽ bắt đầu bằng cách định nghĩa cả mô hình tạo và mô hình phân biệt, và sau đó chúng ta sẽ khám phá một số ví dụ về từng loại mô hình.

Mô hình Tạo

Mô hình tạo là những mô hình tập trung vào phân phối của các lớp trong tập dữ liệu. Các thuật toán máy học thường mô hình hóa phân phối của các điểm dữ liệu. Mô hình tạo dựa trên việc tìm xác suất chung. Tạo ra các điểm mà một đầu vào cụ thể và một nhãn mong muốn tồn tại đồng thời.

Mô hình tạo thường được sử dụng để ước tính xác suất và khả năng, mô hình hóa các điểm dữ liệu và phân biệt giữa các lớp dựa trên các xác suất này. Vì mô hình học một phân phối xác suất cho tập dữ liệu, nó có thể tham khảo phân phối này để tạo ra các ví dụ dữ liệu mới. Mô hình tạo thường dựa trên định lý Bayes để tìm xác suất chung, tìm p(x,y). Về cơ bản, mô hình tạo mô hình hóa cách dữ liệu được tạo ra, trả lời câu hỏi:

“Xác suất của lớp này hoặc lớp khác tạo ra điểm dữ liệu này là bao nhiêu?”

Ví dụ về mô hình máy học tạo bao gồm Phân tích Discriminant tuyến tính (LDA), Mô hình Markov ẩn và mạng Bayes như Naive Bayes.

Mô hình Phân biệt

Trong khi mô hình tạo học về phân phối của tập dữ liệu, mô hình phân biệt học về ranh giới giữa các lớp trong tập dữ liệu. Với mô hình phân biệt, mục tiêu là xác định ranh giới quyết định giữa các lớp để áp dụng các nhãn lớp đáng tin cậy cho các ví dụ dữ liệu. Mô hình phân biệt tách các lớp trong tập dữ liệu bằng cách sử dụng xác suất có điều kiện, không đưa ra bất kỳ giả định nào về các điểm dữ liệu riêng lẻ.

Mô hình phân biệt nhằm trả lời câu hỏi:

“Ví dụ này nằm ở phía nào của ranh giới quyết định?”

Ví dụ về mô hình phân biệt trong máy học bao gồm máy hỗ trợ vector, hồi quy logistic, cây quyết định và rừng ngẫu nhiên.

Sự khác biệt giữa Mô hình Tạo và Phân biệt

Dưới đây là một bản tóm tắt nhanh về các sự khác biệt chính giữa mô hình tạo và mô hình phân biệt.

Mô hình Tạo:

  • Mô hình tạo nhằm bắt lấy phân phối thực sự của các lớp trong tập dữ liệu.
  • Mô hình tạo dự đoán phân phối xác suất chung – p(x,y) – sử dụng định lý Bayes.
  • Mô hình tạo tính toán tốn kém hơn so với mô hình phân biệt.
  • Mô hình tạo hữu ích cho các nhiệm vụ máy học không giám sát.
  • Mô hình tạo bị ảnh hưởng bởi sự hiện diện của các điểm ngoại lệ hơn so với mô hình phân biệt.

Mô hình Phân biệt:

  • Mô hình phân biệt mô hình hóa ranh giới quyết định cho các lớp trong tập dữ liệu.
  • Mô hình phân biệt học xác suất có điều kiện – p(y|x).
  • Mô hình phân biệt tính toán rẻ hơn so với mô hình tạo.
  • Mô hình phân biệt hữu ích cho các nhiệm vụ máy học có giám sát.
  • Mô hình phân biệt có lợi thế là mạnh mẽ hơn đối với các điểm ngoại lệ, không giống như mô hình tạo.
  • Mô hình phân biệt mạnh mẽ hơn đối với các điểm ngoại lệ so với mô hình tạo.

Chúng ta sẽ khám phá một số ví dụ khác về mô hình tạo và mô hình phân biệt.

Ví dụ về Mô hình Tạo

Phân tích Discriminant tuyến tính (LDA)

Mô hình LDA hoạt động bằng cách ước tính phương sai và trung bình của dữ liệu cho từng lớp trong tập dữ liệu. Sau khi trung bình và phương sai cho từng lớp đã được tính toán, dự đoán có thể được thực hiện bằng cách ước tính xác suất rằng một tập hợp đầu vào cụ thể thuộc về một lớp cụ thể.

Mô hình Markov ẩn

Mô hình Markov có thể được coi là các đồ thị với xác suất chỉ ra khả năng chúng ta sẽ di chuyển từ một điểm trong chuỗi, một “trạng thái”, đến một trạng thái khác. Mô hình Markov được sử dụng để xác định xác suất di chuyển từ trạng thái j đến trạng thái i, có thể được biểu thị là p(i,j). Đây chỉ là xác suất chung được đề cập ở trên. Mô hình Markov ẩn là nơi một chuỗi Markov vô hình, không quan sát được được sử dụng. Dữ liệu đầu vào được cung cấp cho mô hình và xác suất cho trạng thái hiện tại và trạng thái ngay trước đó được sử dụng để tính toán kết quả có khả năng nhất.

Mạng Bayes

Mạng Bayes là một loại mô hình đồ họa xác suất. Chúng đại diện cho các phụ thuộc có điều kiện giữa các biến, được biểu diễn bằng một đồ thị có hướng không tuần hoàn. Trong mạng Bayes, mỗi cạnh của đồ thị đại diện cho một phụ thuộc có điều kiện, và mỗi nút tương ứng với một biến duy nhất. Sự độc lập có điều kiện của các mối quan hệ duy nhất trong đồ thị có thể được sử dụng để xác định phân phối chung của các biến và tính toán xác suất chung. Nói cách khác, mạng Bayes nắm bắt một tập hợp con của các mối quan hệ độc lập trong một phân phối xác suất chung cụ thể.

Khi một mạng Bayes đã được tạo và định nghĩa đúng, với các biến ngẫu nhiên, mối quan hệ có điều kiện và phân phối xác suất được biết, nó có thể được sử dụng để ước tính xác suất của các sự kiện hoặc kết quả.

Một trong những loại mạng Bayes được sử dụng phổ biến nhất là mô hình Naive Bayes. Mô hình Naive Bayes xử lý thách thức của việc tính toán xác suất cho các tập dữ liệu có nhiều tham số / biến bằng cách coi tất cả các tính năng là độc lập với nhau.

Ví dụ về Mô hình Phân biệt

Máy hỗ trợ vector

Máy hỗ trợ vector hoạt động bằng cách vẽ một ranh giới quyết định giữa các điểm dữ liệu, tìm ranh giới quyết định tốt nhất để tách các lớp trong tập dữ liệu. Thuật toán SVM vẽ các dòng hoặc siêu phẳng để tách các điểm, đối với không gian 2 chiều và không gian 3 chiều tương ứng. SVM cố gắng tìm dòng / siêu phẳng tốt nhất để tách các lớp bằng cách cố gắng tối đa hóa khoảng cách, hoặc khoảng cách giữa dòng / siêu phẳng và các điểm gần nhất. Mô hình SVM cũng có thể được sử dụng trên các tập dữ liệu không tách rời tuyến tính bằng cách sử dụng “mánh lới nhân” để tìm ra các ranh giới quyết định không tuyến tính.

Hồi quy logistic

Hồi quy logistic là một thuật toán sử dụng hàm logit (log-odds) để xác định xác suất của một đầu vào thuộc về một trong hai trạng thái. Một hàm sigmoid được sử dụng để “nén” xác suất về 0 hoặc 1, đúng hoặc sai. Xác suất lớn hơn 0,50 được giả định là lớp 1, trong khi xác suất 0,49 hoặc thấp hơn được giả định là 0. Vì lý do này, hồi quy logistic thường được sử dụng trong các vấn đề phân loại nhị phân. Tuy nhiên, hồi quy logistic có thể được áp dụng cho các vấn đề đa lớp bằng cách sử dụng phương pháp một so với tất cả, tạo ra một mô hình phân loại nhị phân cho từng lớp và xác định xác suất rằng một ví dụ là lớp mục tiêu hoặc một lớp khác trong tập dữ liệu.

Cây quyết định

Mô hình cây quyết định hoạt động bằng cách chia một tập dữ liệu thành các phần nhỏ hơn và nhỏ hơn, và khi các tập con không thể chia nhỏ hơn nữa, kết quả là một cây với các nút và lá. Các nút trong cây quyết định là nơi các quyết định về các điểm dữ liệu được thực hiện bằng cách sử dụng các tiêu chí lọc khác nhau. Các lá trong cây quyết định là các điểm dữ liệu đã được phân loại. Thuật toán cây quyết định có thể xử lý cả dữ liệu số và dữ liệu danh mục, và các phân chia trong cây dựa trên các biến / tính năng cụ thể.

Rừng ngẫu nhiên

Mô hình rừng ngẫu nhiên cơ bản chỉ là một tập hợp các cây quyết định nơi dự đoán của các cây riêng lẻ được tính trung bình để đưa ra một quyết định cuối cùng. Thuật toán rừng ngẫu nhiên chọn các quan sát và tính năng một cách ngẫu nhiên, xây dựng các cây riêng lẻ dựa trên các lựa chọn này.

Bài viết hướng dẫn này sẽ khám phá cách tạo một Biểu đồ hộp trong Matplotlib. Biểu đồ hộp được sử dụng để trực quan hóa các thống kê tóm tắt của một tập dữ liệu, hiển thị các thuộc tính của phân phối như phạm vi và phân phối của dữ liệu.

Blogger và lập trình viên với chuyên môn về Machine Learning Deep Learning topics. Daniel hy vọng giúp đỡ người khác sử dụng sức mạnh của AI cho lợi ích xã hội.