"Tạo sinh" có nghĩa là gì trong tên "Mạng đối kháng tạo sinh"? "Tạo sinh" mô tả một lớp mô hình thống kê tương phản với mô hình phân biệt.
Không chính thức:
- Mô hình Tạo sinh có thể tạo các thực thể dữ liệu mới.
- Mô hình phân biệt phân biệt giữa các loại thực thể dữ liệu.
Mô hình tạo sinh có thể tạo ra những bức ảnh mới về động vật trông giống như động vật thực, trong khi mô hình phân biệt có thể phân biệt chó với mèo. GAN chỉ là một loại mô hình tạo sinh.
Nói một cách chính thức hơn, với một tập hợp các thực thể dữ liệu X và một tập hợp các nhãn Y:
- Mô hình Tạo sinh ghi lại xác suất chung p(X, Y) hoặc chỉ là p(X) nếu không có nhãn.
- Mô hình phân biệt thu thập xác suất có điều kiện p(Y | X).
Mô hình tạo sinh bao gồm cả việc phân phối dữ liệu và cho bạn biết khả năng xảy ra của một ví dụ nhất định. Ví dụ: các mô hình dự đoán từ tiếp theo trong một trình tự thường là mô hình tạo sinh (thường đơn giản hơn nhiều so với GAN) vì chúng có thể gán xác suất cho một trình tự từ.
Mô hình phân biệt bỏ qua câu hỏi liệu một thực thể nhất định có khả thi hay không và chỉ cho bạn biết khả năng áp dụng nhãn cho thực thể đó.
Xin lưu ý rằng đây là định nghĩa rất chung. Có nhiều loại mô hình tạo sinh. GAN chỉ là một loại mô hình tạo sinh.
Mô hình hoá xác suất
Cả hai loại mô hình đều không phải trả về một số đại diện cho xác suất. Bạn có thể lập mô hình phân phối dữ liệu bằng cách bắt chước quá trình phân phối đó.
Ví dụ: một thuật toán phân loại phân biệt như cây quyết định có thể gắn nhãn cho một thực thể mà không gán xác suất cho nhãn đó. Một bộ phân loại như vậy vẫn sẽ là một mô hình vì việc phân phối tất cả nhãn được dự đoán sẽ mô hình hoá việc phân phối thực tế của nhãn trong dữ liệu.
Tương tự, mô hình tạo sinh có thể mô hình hoá một phân phối bằng cách tạo dữ liệu "giả" thuyết phục trông giống như được lấy từ phân phối đó.
Mô hình tạo sinh rất khó
Mô hình tạo sinh giải quyết một nhiệm vụ khó khăn hơn so với các mô hình phân biệt tương tự. Mô hình tạo sinh phải lập mô hình nhiều hơn.
Mô hình tạo sinh cho hình ảnh có thể ghi lại các mối tương quan như "những thứ trông giống như thuyền có thể sẽ xuất hiện gần những thứ trông giống như nước" và "mắt khó có thể xuất hiện trên trán". Đây là những bản phân phối rất phức tạp.
Ngược lại, mô hình phân biệt có thể tìm hiểu sự khác biệt giữa "tàu thuyền" hoặc "không phải tàu thuyền" chỉ bằng cách tìm một vài mẫu rõ ràng. Mô hình này có thể bỏ qua nhiều mối tương quan mà mô hình tạo sinh phải nắm bắt đúng.
Mô hình phân biệt cố gắng vẽ ranh giới trong không gian dữ liệu, trong khi mô hình tạo sinh cố gắng mô hình hoá cách dữ liệu được đặt trong không gian. Ví dụ: sơ đồ sau đây cho thấy các mô hình phân biệt và tạo sinh của chữ số viết tay:
Hình 1: Mô hình phân biệt và tạo sinh của chữ số viết tay.
Mô hình phân biệt cố gắng phân biệt giữa chữ số 0 và 1 viết tay bằng cách vẽ một đường trong không gian dữ liệu. Nếu nhận được đúng đường thẳng, mô hình này có thể phân biệt 0 với 1 mà không cần phải mô hình hoá chính xác vị trí các thực thể được đặt trong không gian dữ liệu ở một bên của đường thẳng.
Ngược lại, mô hình tạo sinh cố gắng tạo ra các số 1 và 0 thuyết phục bằng cách tạo các chữ số gần với các chữ số thực trong không gian dữ liệu. Mô hình này phải mô hình hoá quá trình phân phối trong không gian dữ liệu.
GAN cung cấp một cách hiệu quả để huấn luyện các mô hình phong phú như vậy sao cho giống với một phân phối thực tế. Để hiểu cách hoạt động của các mạng này, chúng ta cần hiểu cấu trúc cơ bản của GAN.
Kiểm tra sự hiểu biết của bạn: Mô hình tạo sinh so với mô hình phân biệt
- Tung ba xúc xắc 6 mặt.
- Nhân số lăn với một hằng số w.
- Lặp lại 100 lần và lấy trung bình của tất cả kết quả.