Hiểu chức năng mất GAN


17

Tôi đang đấu tranh để hiểu chức năng mất GAN như được cung cấp trong Tìm hiểu về Mạng đối thủ sáng tạo (một bài đăng trên blog được viết bởi Daniel Seita).

Trong mất mát entropy chéo tiêu chuẩn, chúng ta có một đầu ra đã được chạy qua hàm sigmoid và kết quả là phân loại nhị phân.

Bang Sieta

Do đó, với [mỗi] điểm dữ liệu x1 và nhãn của nó, chúng ta có được hàm mất sau ...

H((x1,y1),D)=y1logD(x1)(1y1)log(1D(x1))

Đây chỉ là nhật ký của kỳ vọng, điều này có ý nghĩa, nhưng làm thế nào có thể, trong hàm mất GAN, chúng ta xử lý dữ liệu từ phân phối thực và dữ liệu từ mô hình thế hệ trong cùng một lần lặp?

Câu trả lời:


6

Trọng tâm của câu hỏi này

"Làm thế nào ... chúng ta có thể xử lý dữ liệu từ phân phối thực và dữ liệu từ mô hình thế hệ trong cùng một lần lặp?

Phân tích Ấn phẩm nền tảng

Trong trang được tham khảo, Hiểu về Mạng lưới đối thủ sáng tạo (2017) , ứng cử viên tiến sĩ Daniel Sieta đã tham khảo chính xác Mạng lưới đối thủ tạo, Goodfellow, Pouget-Abadie, Mirza, Xu, Warde-Farley, Ozair, Courville, và Bengio, tháng 6 năm 2014 . Đó là những điều trừu tượng, "Chúng tôi đề xuất một khung mới để ước tính các mô hình thế hệ thông qua một quá trình đối nghịch, trong đó chúng tôi đồng thời đào tạo hai mô hình ..." Bài báo gốc này định nghĩa hai mô hình được định nghĩa là MLP (đa giác quan).

  • Mô hình tạo, G
  • Mô hình phân biệt đối xử, D

Hai mô hình này được kiểm soát theo cách mà một mô hình cung cấp một hình thức phản hồi tiêu cực đối với mô hình kia, do đó, thuật ngữ đối nghịch.

  • G được đào tạo để nắm bắt phân phối dữ liệu của một tập hợp các ví dụ đủ tốt để đánh lừa D.
  • D được đào tạo để khám phá xem liệu đầu vào của nó là giả của G hay tập hợp các ví dụ cho hệ thống GAN.

(Tập hợp các ví dụ cho hệ thống GAN đôi khi được gọi là các mẫu thực, nhưng chúng có thể không thật hơn các mẫu được tạo. Cả hai đều là các mảng số trong một máy tính, một bộ có nguồn gốc bên trong và bộ kia có nguồn gốc bên ngoài nguồn gốc. Cho dù những cái bên ngoài là từ một camera chỉ vào một số cảnh vật lý không liên quan đến hoạt động của GAN.)

Về mặt xác suất, đánh lừa D đồng nghĩa với việc tối đa hóa xác suất D sẽ tạo ra càng nhiều dương tính giả và phủ định sai khi phân loại đúng, mỗi loại 50%. Trong khoa học thông tin, điều này có nghĩa là giới hạn thông tin D có của G tiến tới 0 khi t tiến đến vô cùng. Đó là một quá trình tối đa hóa entropy của G theo quan điểm của D, do đó, thuật ngữ entropy chéo.

Làm thế nào hội tụ được hoàn thành

Bởi vì hàm mất được sao chép từ văn bản năm 2017 của Sieta trong câu hỏi là của D, được thiết kế để giảm thiểu entropy chéo (hoặc tương quan) giữa hai phân phối khi áp dụng cho toàn bộ điểm cho trạng thái đào tạo nhất định.

H((x1,y1),D)=1D(x1)

Có một hàm mất riêng cho G, được thiết kế để tối đa hóa entropy chéo. Lưu ý rằng có HAI cấp độ chi tiết đào tạo trong hệ thống.

  • Đó là trò chơi di chuyển trong một trò chơi hai người chơi
  • Đó là các mẫu đào tạo

Chúng tạo ra phép lặp lồng nhau với lần lặp bên ngoài như sau.

  • Đào tạo tiền thu được bằng cách sử dụng hàm mất của G.
  • Các mẫu đầu vào giả được tạo từ G ở trạng thái đào tạo hiện tại.
  • Đào tạo tiền thu được bằng cách sử dụng hàm mất của D.
  • Lặp lại nếu entropy chéo chưa đủ tối đa, D vẫn có thể phân biệt đối xử.

Khi D cuối cùng thua trò chơi, chúng tôi đã đạt được mục tiêu của mình.

  • G phục hồi phân phối dữ liệu đào tạo
  • D đã được giảm đến mức không hiệu quả ("xác suất 1/2 ở mọi nơi")

Tại sao đào tạo đồng thời là cần thiết

Nếu hai mô hình không được đào tạo theo cách thức qua lại để mô phỏng đồng thời, sự hội tụ trong mặt phẳng đối nghịch (phép lặp bên ngoài) sẽ không xảy ra trên giải pháp duy nhất được nêu trong bài báo năm 2014.

Thêm thông tin

Ngoài câu hỏi, mục quan tâm tiếp theo trong bài báo của Sieta là, "Thiết kế kém của chức năng mất của máy phát", có thể dẫn đến các giá trị độ dốc không đủ để dẫn hướng xuống và tạo ra cái mà đôi khi được gọi là bão hòa. Độ bão hòa chỉ đơn giản là giảm tín hiệu phản hồi dẫn hướng giảm dần trong quá trình truyền ngược trở lại nhiễu hỗn loạn phát sinh từ làm tròn điểm nổi. Thuật ngữ này xuất phát từ lý thuyết tín hiệu.

Tôi đề nghị nghiên cứu bài báo năm 2014 của Goodfellow et alia (các nhà nghiên cứu dày dạn) để tìm hiểu về công nghệ GAN thay vì trang 2017.


3

Hãy cùng bắt đầu lại từ đầu. GAN là những mô hình có thể học cách tạo dữ liệu tương tự với dữ liệu mà chúng tôi cung cấp cho họ.

Khi đào tạo một mô hình tổng quát khác với GAN, hàm mất mát dễ gặp nhất có lẽ là Lỗi bình phương trung bình (MSE).

Vui lòng cho phép tôi đưa ra một ví dụ ( Trickot L 2017 ):

Bây giờ giả sử bạn muốn tạo ra mèo; bạn có thể đưa ra ví dụ mô hình của bạn về những con mèo cụ thể trong ảnh. Sự lựa chọn của bạn về chức năng mất có nghĩa là mô hình của bạn phải sao chép chính xác từng con mèo để tránh bị trừng phạt.

Nhưng đó không nhất thiết là những gì chúng ta muốn! Bạn chỉ muốn mô hình của mình tạo ra mèo, bất kỳ con mèo nào cũng sẽ làm miễn là nó là một con mèo hợp lý. Vì vậy, bạn cần thay đổi chức năng mất của bạn.

Tuy nhiên, chức năng nào có thể bỏ qua các pixel cụ thể và tập trung vào việc phát hiện mèo trong ảnh?

Đó là một mạng lưới thần kinh. Đây là vai trò của người phân biệt đối xử trong GAN. Công việc của người phân biệt đối xử là đánh giá mức độ hợp lý của một hình ảnh.

Bài viết mà bạn trích dẫn, Tìm hiểu về Mạng đối thủ sáng tạo (Daniel S 2017) liệt kê hai thông tin chi tiết chính.

Cái nhìn sâu sắc chính 1: chức năng mất của người phân biệt đối xử là chức năng mất entropy chéo.

Thông tin chi tiết chính 2: hiểu cách bão hòa độ dốc có thể hoặc không ảnh hưởng xấu đến việc đào tạo. Độ bão hòa độ dốc là một vấn đề chung khi độ dốc quá nhỏ (tức là bằng không) để thực hiện bất kỳ việc học nào.

Để trả lời câu hỏi của bạn, chúng tôi cần giải thích thêm về cái nhìn sâu sắc thứ hai.

Trong bối cảnh của GAN, độ bão hòa độ dốc có thể xảy ra do thiết kế kém của chức năng mất của máy phát, do đó, cái nhìn sâu sắc chính này ... dựa trên sự hiểu biết về sự đánh đổi giữa các chức năng mất khác nhau cho máy phát.

Thiết kế được thực hiện trong bài viết giải quyết vấn đề chức năng mất bằng cách có một chức năng rất cụ thể (để phân biệt giữa hai lớp). Cách tốt nhất để làm điều này là bằng cách sử dụng entropy chéo (Insight 1). Như bài viết trên blog nói:

Entropy chéo là một hàm mất mát lớn vì nó được thiết kế một phần để tăng tốc độ học tập và tránh độ bão hòa gradient chỉ khi phân loại chính xác.

Như đã làm rõ trong các bình luận của bài viết trên blog:

Kỳ vọng [trong hàm entropy chéo] xuất phát từ các khoản tiền. Nếu bạn xem định nghĩa về kỳ vọng cho một biến ngẫu nhiên rời rạc, bạn sẽ thấy rằng bạn cần tổng hợp các giá trị có thể khác nhau của biến ngẫu nhiên, cân nhắc từng biến số theo xác suất của chúng. Ở đây, xác suất chỉ là 1/2 cho mỗi và chúng ta có thể coi chúng là đến từ trình tạo hoặc phân biệt đối xử.


Câu hỏi không hỏi cái gì dễ sử dụng nhất làm chức năng mất cho ANN. Các chi tiết cụ thể của toán học không rõ ràng với @tryingtolearn và trích dẫn học sinh tốt nghiệp mà không cung cấp bất kỳ sự làm rõ nào không làm rõ.
FauChristian

1

Bạn có thể coi sự kết hợp của zđầu vào và xđầu vào như một mẫu duy nhất và bạn đánh giá mức độ phân biệt đối xử của từng đối tượng trong số này.

Đây là lý do tại sao bài đăng sau này tách riêng lẻ ythành một - E(p~data)E(z)về cơ bản, bạn có ( ycác) kỳ vọng khác nhau cho mỗi đầu vào phân biệt đối xử và bạn cần đo cả hai cùng một lúc để đánh giá mức độ hiệu quả của phân biệt đối xử.

Đó là lý do tại sao hàm mất mát được hình thành dưới dạng kết hợp cả phân loại dương của đầu vào thực và phân loại âm của đầu vào âm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.