Các nhà nghiên cứu tiếp tục tìm ra những kỹ thuật GAN được cải tiến và những cách sử dụng mới cho GAN. Dưới đây là ví dụ về các biến thể GAN để bạn biết các khả năng.
GAN lũy tiến
Trong GAN lũy tiến, các lớp đầu tiên của trình tạo sẽ tạo ra hình ảnh có độ phân giải rất thấp, còn các lớp tiếp theo sẽ thêm thông tin chi tiết. Kỹ thuật này cho phép GAN huấn luyện nhanh hơn so với các GAN không tiến trình tương đương và tạo ra hình ảnh có độ phân giải cao hơn.
Để biết thêm thông tin, hãy xem Karras et al, 2017.
GAN có điều kiện
GAN có điều kiện huấn luyện một tập dữ liệu có gắn nhãn và cho phép bạn chỉ định nhãn cho từng phiên bản được tạo. Ví dụ: một GAN MNIST vô điều kiện sẽ tạo ra các chữ số ngẫu nhiên, trong khi một GAN MNIST có điều kiện sẽ cho phép bạn chỉ định chữ số nào GAN sẽ tạo ra.
Thay vì lập mô hình xác suất chung P(X, Y), GAN có điều kiện lập mô hình xác suất có điều kiện P(X | Y).
Để biết thêm thông tin về GAN có điều kiện, vui lòng xem Mirza et al, 2014.Dịch hình ảnh sang hình ảnh
Các GAN dịch hình ảnh sang hình ảnh sẽ lấy hình ảnh làm dữ liệu đầu vào và liên kết hình ảnh đó với hình ảnh đầu ra đã được tạo có các thuộc tính khác nhau. Ví dụ: chúng ta có thể chụp ảnh mặt nạ với một blob màu có hình dạng một chiếc ô tô và GAN có thể điền vào hình dạng này bằng các chi tiết ô tô có thật.
Tương tự như vậy, bạn có thể đào tạo một GAN dùng hình ảnh để chụp bản phác thảo của các túi xách và biến các túi đó thành hình ảnh thực tế về túi xách.
Trong những trường hợp này, tổn thất là một tổ hợp được tính trọng số của mức mất mát dựa trên phân biệt thông thường và mức độ mất dữ liệu pixel gây ảnh hưởng đến trình tạo vì tách khỏi hình ảnh nguồn.
Để biết thêm thông tin, hãy xem Isola et al, 2016.
Chu kỳ GAN
Chu kỳ GAN học cách biến đổi hình ảnh từ một tập hợp thành các hình ảnh có thể thuộc về một nhóm khác. Ví dụ:cycleGAN đã tạo hình ảnh bên phải bên dưới khi đưa hình ảnh bên trái làm dữ liệu đầu vào. Công cụ này đã chụp một con ngựa, rồi biến nó thành hình ảnh một con ngựa vằn.
Dữ liệu huấn luyện chocycleGAN chỉ đơn giản là hai bộ hình ảnh (trong trường hợp này là bộ hình ảnh ngựa và bộ hình ảnh ngựa vằn). Hệ thống không yêu cầu nhãn hoặc tương ứng theo cặp giữa các hình ảnh.
Để biết thêm thông tin, hãy xem Zhu và cộng sự, 2017, minh hoạ việc sử dụngcycleGAN để thực hiện việc dịch hình ảnh sang hình ảnh mà không cần dữ liệu ghép nối.
Tổng hợp văn bản sang hình ảnh
Các GAN chuyển văn bản sang hình ảnh lấy văn bản làm dữ liệu đầu vào và tạo ra những hình ảnh có thể hợp lý và mô tả bằng văn bản. Ví dụ: hình ảnh hoa bên dưới được tạo ra bằng cách cung cấp mô tả văn bản cho một GAN.
"Hoa này có cánh hoa màu vàng và sắc cam." |
Lưu ý rằng trong hệ thống này, GAN chỉ có thể tạo hình ảnh từ một tập hợp nhỏ các lớp.
Để biết thêm thông tin, hãy xem Zhang và cộng sự, 2016.
Độ phân giải cao
GAN siêu phân giải làm tăng độ phân giải của hình ảnh, thêm chi tiết khi cần thiết để điền vào các vùng bị mờ. Ví dụ: hình ảnh ở giữa bị mờ bên dưới là phiên bản giảm tần số lấy mẫu của hình ảnh gốc ở bên trái. Do hình ảnh bị mờ, GAN đã tạo ra hình ảnh sắc nét hơn ở bên phải:
Gốc | Làm mờ | Đã khôi phục bằng GAN |
Hình ảnh do GAN tạo ra trông rất giống với hình ảnh gốc, nhưng nếu xem xét kỹ băng tần, bạn sẽ thấy GAN không tái tạo mẫu hình ngôi sao từ bản gốc. Thay vào đó, mẫu này tạo thành mẫu có thể hợp lệ để thay thế mẫu bị xoá bằng hoạt động lấy mẫu giảm tần số lấy mẫu.
Để biết thêm thông tin, hãy xem Ledig et al, 2017.
Vẽ lên mặt
GAN đã được sử dụng cho tác vụ vẽ hình ảnh ngữ nghĩa. Trong nhiệm vụ vẽ tranh, các phần hình ảnh sẽ bị bôi đen và hệ thống sẽ cố gắng lấp đầy các phần bị thiếu.
Yeh và cộng sự, 2017 đã sử dụng GAN để có hiệu quả tốt hơn các kỹ thuật khác để vẽ hình ảnh khuôn mặt:
Đầu vào | Đầu ra GAN |
Chuyển văn bản sang lời nói
Không phải GAN nào cũng tạo ra hình ảnh. Ví dụ: các nhà nghiên cứu cũng đã sử dụng GAN để tạo ra lời nói tổng hợp từ tính năng nhập văn bản. Để biết thêm thông tin, hãy xem Yang và cộng sự, 2017.