Connect with us

AI 101

Generative vs. Discriminative Machine Learning Models

mm

Một số mô hình học máy thuộc về danh mục mô hình “generative” hoặc “discriminative”. Vậy sự khác biệt giữa hai loại mô hình này là gì? Ý nghĩa của việc một mô hình là discriminative hoặc generative là gì? Câu trả lời ngắn gọn là các mô hình generative là những mô hình 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ụ nhất định. Các mô hình generative 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 discriminative được sử dụng cho 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 cùng khám phá sự khác biệt giữa mô hình generative và discriminative chi tiết hơn, để chúng ta thực sự hiểu điều gì phân tách hai loại mô hình và khi nào nên sử dụng từng loại.

Generative vs. Discriminative Models

Có nhiều cách khác nhau để phân loại một mô hình học máy. Một mô hình có thể được phân loại thuộc về các danh mục khác nhau như: mô hình generative, mô hình discriminative, mô hình tham số, mô hình phi 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 generative và discriminative. Chúng ta sẽ bắt đầu bằng cách định nghĩa cả mô hình generative và discriminative, sau đó khám phá một số ví dụ về từng loại mô hình.

Generative Models

Generative models 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 học máy thường mô hình hóa phân phối của các điểm dữ liệu. Các mô hình generative dựa vào việc tìm xác suất đồng thời. Tạo ra các điểm mà tại đó một đặc trưng đầu vào nhất định và một nhãn/đầu ra mong muốn tồn tại đồng thời. Các mô hình generative 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. Bởi 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 chiếu phân phối xác suất này để tạo ra các thể hiện dữ liệu mới. Các mô hình generative thường dựa vào định lý Bayes để tìm xác suất đồng thời, tìm p(x,y). Về cơ bản, các mô hình generative mô hình hóa cách dữ liệu được tạo ra, trả lời câu hỏi sau: “Khả năng mà lớp này hay lớp khác tạo ra điểm/thể hiện dữ liệu này là bao nhiêu?” Ví dụ về các mô hình học máy generative bao gồm Phân tích Biệt thức Tuyến tính (LDA), mô hình Markov ẩn và mạng Bayes như Naive Bayes.

Discriminative Models

Trong khi các mô hình generative học về phân phối của tập dữ liệu, discriminative models học về ranh giới giữa các lớp trong một tập dữ liệu. Với các mô hình discriminative, 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 thể hiện dữ liệu. Các mô hình discriminative tách biệt 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ẻ. Các mô hình discriminative nhằm trả lời câu hỏi sau: “Thể hiện này được tìm thấy ở phía nào của ranh giới quyết định?” Ví dụ về các mô hình discriminative trong học máy bao gồm máy vector hỗ trợ, hồi quy logistic, cây quyết định và rừng ngẫu nhiên.

Differences Between Generative and Discriminative

Dưới đây là tóm tắt nhanh về những khác biệt chính giữa mô hình generative và discriminative. Generative models:

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

Discriminative models:

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

Bây giờ chúng ta sẽ khám phá ngắn gọn một số ví dụ khác nhau về mô hình học máy generative và discriminative.

Examples of Generative Models

Linear Discriminant Analysis (LDA) Mô hình LDA hoạt động bằng cách ước tính phương sai và giá trị trung bình của dữ liệu cho từng lớp trong tập dữ liệu. Sau khi giá trị trung bình và phương sai cho mọi lớp đã được tính toán, có thể đưa ra dự đoán bằng cách ước tính xác suất mà một tập hợp đầu vào nhất định thuộc về một lớp nhất định. Hidden Markov Models Chuỗi Markov có thể được coi là các đồ thị với xác suất cho biết khả năng chúng ta di chuyển từ một điểm trong chuỗi, một “trạng thái”, sang một trạng thái khác. Chuỗi Markov được sử dụng để xác định xác suất di chuyển từ trạng thái j sang trạng thái i, có thể được ký hiệu là p(i,j). Đây chính là xác suất đồng thời đượ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. Các đầu vào dữ liệu được đưa 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. Bayesian Networks Mạng Bayes là một loại mô hình đồ thị xác suất. Chúng biểu diễn 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 chu trình. Trong một mạng Bayes, mỗi cạnh của đồ thị đại diện cho một sự 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. Tính độc lập có điều kiện cho các mối quan hệ duy nhất trong đồ thị có thể được sử dụng để xác định phân phối đồng thời của các biến và tính xác suất đồng thời. Nói cách khác, một 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 đồng thời cụ thể. Một khi một mạng Bayes đã được tạo và xác định đúng cách, 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 đã 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 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 đặc trưng là độc lập với nhau.

Examples of Discriminative Models

Support Vector Machines Máy vector hỗ trợ 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 phân tách tốt nhất các lớp khác nhau trong tập dữ liệu. Thuật toán SVM vẽ các đường thẳng hoặc siêu phẳng phân tách các điểm, tương ứng cho không gian 2 chiều và không gian 3D. SVM cố gắng tìm đường thẳng/siêu phẳng phân tách các lớp tốt nhất bằng cách cố gắng tối đa hóa lề, hoặc khoảng cách từ đường thẳng/siêu phẳng đến 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 phân tách tuyến tính bằng cách sử dụng “kernel trick” để xác định các ranh giới quyết định phi tuyến. Logistic Regression 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 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 để “ép” xác suất về phía 0 hoặc 1, đúng hoặc sai. Các xác suất lớn hơn 0,50 được giả định là lớp 1, trong khi các 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 bài toán phân loại nhị phân. Tuy nhiên, hồi quy logistic có thể được áp dụng cho các bài toán đa lớp bằng cách sử dụng phương pháp một đối một với tất cả, tạo ra một mô hình phân loại nhị phân cho mỗi lớp và xác định xác suất một ví dụ là một lớp mục tiêu hay một lớp khác trong tập dữ liệu. Decision Tree Một cây quyết định hoạt động bằng cách chia nhỏ một tập dữ liệu thành các phần ngày càng nhỏ hơn, và một khi các tập hợp con không thể được chia nhỏ thêm 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ề điểm dữ liệu được đưa ra 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 phân loại, và các phân tách trong cây dựa trên các biến/đặc trưng cụ thể. Random Forests Một mô hình rừng ngẫu nhiên về cơ bản chỉ là một tập hợp các cây quyết định trong đó các dự đoán của các cây riêng lẻ được tính trung bình để đi đến quyết định cuối cùng. Thuật toán rừng ngẫu nhiên chọn ngẫu nhiên các quan sát và đặc trưng, 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 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 and programmer with specialties in Machine Learning and Deep Learning topics. Daniel hopes to help others use the power of AI for social good.