Mạng đối nghịch tạo sinh

Mạng đối nghịch tạo sinh (hay còn gọi là  mạng đối nghịch phát sinh, tiếng Anh: generative adversarial network hay viết tắt GAN) là một lớp của khung (framework) học máy do Ian Goodfellow và cộng sự thiết kế vào năm 2014. GAN chứa hai mạng thần kinh (mạng phân biệt và mạng tạo sinh) cạnh tranh lẫn nhau trong một trò chơi (ở dạng một trò chơi có tổng bằng không, trong đó bên thắng sẽ chiếm phần của bên thua, hay nói cách khác là bên thua sẽ bị mất phần cho bên thắng).

Cho một tập huấn luyện, kỹ thuật này học cách tạo ra dữ liệu mới với cùng chỉ số thống kê như tập huấn luyện. Ví dụ, một mạng đối nghịch tạo sinh (GAN) huấn luyện các bức ảnh để có thể tạo ra các ảnh mới mà ít nhất nhìn từ bề ngoài là chân thực đối với những người quan sát, chứa nhiều đặc tính thực tế. Mặc dù ban đầu được đề xuất dưới dạng một hình thức mô hình tạo sinh (mô hình phát sinh) cho phương pháp học không có giám sát, GAN cũng được chứng minh là hữu ích cho học nửa giám sát, học có giám sát đầy đủ, và học tăng cường.

Ý tưởng cơ bản của GAN dựa trên sự huấn luyện "gián tiếp" thông qua bộ phân biệt (discriminator), mà bản thân nó cũng đang được cập nhật động. Về cơ bản, điều này có nghĩa là bộ tạo sinh (generator) không được đào tạo để giảm thiểu khoảng cách đến một hình ảnh cụ thể, hơn là để đánh lừa bộ phân biệt. Do đó, điều này cho phép mô hình học theo cách không bị giám sát.

Các mạng GAN tương tự bắt chước trong sinh học tiến hóa, với một sự chạy đua tiến hóa ở cả hai bộ, bộ phân biệt và bộ tạo sinh.

Phương pháp 

Mô hình tạo sinh (mô hình sinh mẫu) tạo các ứng viên (dữ liệu ứng viên) trong khi mô hình phân biệt (discriminative model) sẽ đánh giá chúng. Sự cạnh tranh giữa 2 mô hình này sẽ vận hành theo cách phân phối dữ liệu. Thông thường, mạng tạo sinh sẽ học cách ánh xạ từ biến tiềm ẩn đến một phân phối dữ liệu cần quan tâm, trong khi mạng phân biệt sẽ phân biệt các ứng viên do bộ tạo tạo ra so với phân phối dữ liệu thực. Mục đích huấn luyện của mạng tạo sinh là tăng tỷ lệ lỗi của mạng phân biệt (tức là "đánh lừa" mạng phân biệt bằng cách tạo ra các ứng viên mới mà bộ phân biệt nghĩ rằng chưa được tổng hợp (là một phần của phân phối dữ liệu thực)).

Một tập dữ liệu biết trước đóng vai trò là dữ liệu huấn luyện ban đầu cho bộ phân biệt. Việc huấn luyện này bao gồm việc trình bày nó với các mẫu từ tập dữ liệu huấn luyện, cho đến khi đạt được độ chính xác chấp nhận được. Bộ tạo sinh huấn luyện dựa trên việc nó có thành công trong việc đánh lừa bộ phân biệt hay không. Thông thường, bộ tạo sinh được cung cấp dữ liệu với đầu vào ngẫu nhiên được lấy mẫu từ biến tiềm ẩn được xác định trước (ví dụ: một Phân phối chuẩn nhiều chiều). Sau đó, các ứng viên được tổng hợp bởi bộ tạo sinh được thẩm định (đánh giá) bởi bộ phân biệt. Các thủ tục truyền ngược độc lập được áp dụng cho cả hai mạng để bộ tạo tạo ra hình ảnh tốt hơn, trong khi bộ phân biệt trở nên thành thạo hơn trong việc gắn cờ các hình ảnh tổng hợp. Bộ tạo là một điển hình của một mạng thần kinh giải mã (deconvolution), và bộ phân biệt là một mạng thần kinh tích chập.

Nhược điểm 
Mặc dù trên lý thuyết, mạng GAN có thể tìm được điểm cân bằng khi cả bộ tạo sinh và bộ phân biệt của nó đạt kết quả tối ưu, điều này chỉ có thể đạt được nếu cả hai có thể tiếp cận toàn bộ các "chiến lược". Trong thực tiễn, số "chiến lược" mà mỗi bộ phận có thể sử dụng bị giới hạn bởi tham số mạng thần kinh của hai mô hình. Chính vì vậy, mạng GAN thường gặp vấn đề khi mạng thần kinh của một trong hai bộ quá yếu so với đối phương.

Model collapse 
Các mạng GAN thường phải chịu đựng một "sụp đổ chế độ" (mode collapse, không phải model collapse) khi chúng không thể tổng quát hóa đúng cách và thiếu toàn bộ các chế độ từ dữ liệu đầu vào. Ví dụ, một mạng GAN huấn luyện trên tập dữ liệu MNIST chứa nhiều hình ảnh của các chữ số, song chỉ tạo ra mỗi hình ảnh của số 0.

Điều này thưởng xảy ra khi mô hình phân biệt quá yếu, dẫn tới việc mạng tạo sinh có thể "spam" cùng một chiến lược (tạo ảnh số 0) mà mô hình phân biệt không tìm được phương án nào để "chống đỡ". Ngoài ra, còn một số nguyên nhân khác được đề xuất như việc lựa chọn hàm mất mát chưa hợp lý. Có nhiều giải pháp được đề xuất, xong vẫn chưa có lời giải thích đáng.

Vanishing gradient 
Mạng GAN cũng gặp vấn đề gradient dần biến mất, giống trong các mạng thần kinh quá nhiều lớp. Điều này xảy ra khi mô hình tạo sinh quá yếu, dẫn tới việc nó có cố tạo ảnh đến đâu đi chăng nữa cũng không thể "qua mặt" mô hình phân biệt, khiến sự thay đổi tham số của mô hình trở nên vô dụng. Lúc này, gradient của nó sẽ tiến dần đến 0.

Giải pháp thường thấy cho vấn đề này là sử dụng mạng Wasserstein GAN, thay thể khoảng cách Jensen-Shannon thường dùng trong mạng GAN truyền thống với khoảng cách Wasserstein, do hàm này khả vi ở hầu như mọi điểm.

Tham khảo

Liên kết ngoài 

 
 A Style-Based Generator Architecture for Generative Adversarial Networks
 This Person Does Not Exist photorealistic images of people who do not exist, generated by StyleGAN
 "Generative Adversarial Networks: A Survey and Taxonomy", recent review by Zhengwei Wang, Qi She, Tomas E. Ward

Khoa học máy tính
Trí tuệ nhân tạo
Học máy
Mạng thần kinh nhân tạo
Khoa học nhận thức
Học không có giám sát