Mất KL với một đơn vị Gaussian


10

Tôi đã triển khai VAE và tôi nhận thấy hai cách triển khai trực tuyến khác nhau về phân kỳ gaussian đơn biến đơn giản. Phân kỳ ban đầu theo ở đây là Nếu chúng tôi giả sử trước là đơn vị gaussian tức là và , điều này đơn giản hóa thành Và đây là lúc sự nhầm lẫn của tôi dừng lại. Mặc dù tôi đã tìm thấy một vài repos github tối nghĩa với cách thực hiện ở trên, nhưng điều tôi thường thấy hơn được sử dụng là:

KLloss=log(σ2σ1)+σ12+(μ1μ2)22σ2212
μ2=0σ2=1
KLloss=log(σ1)+σ12+μ12212
KLloss=12(2log(σ1)σ12μ12+1)

=12(log(σ1)σ1μ12+1)
Ví dụ: trong hướng dẫn bộ mã hóa tự động Keras chính thức . Câu hỏi của tôi là sau đó, tôi còn thiếu gì giữa hai điều này? Sự khác biệt chính là giảm hệ số 2 trên thuật ngữ nhật ký và không bình phương phương sai. Phân tích tôi đã sử dụng sau này với thành công, cho những gì giá trị của nó. Cảm ơn trước sự giúp đỡ nào!

Câu trả lời:


7

Lưu ý rằng bằng cách thay thế bằng trong phương trình cuối cùng bạn khôi phục lại trước đó (tức là ). Dẫn đến tôi nghĩ rằng trong trường hợp đầu tiên, bộ mã hóa được sử dụng để dự đoán phương sai, trong khi trong lần thứ hai, nó được sử dụng để dự đoán độ lệch chuẩn.σ1σ12log(σ1)σ12log(σ1)σ12

Cả hai công thức là tương đương và mục tiêu là không thay đổi.


Tôi không nghĩ rằng đó có thể là trường hợp tương đương. Có, cả hai đều được giảm thiểu khi cho zero và unit . Tuy nhiên, trong phương trình ban đầu (có phương sai), hình phạt cho việc di chuyển khỏi sự thống nhất lớn hơn nhiều so với phương trình thứ hai (dựa trên độ lệch chuẩn). Hình phạt cho các biến thể trong là giống nhau cho cả hai và lỗi tái cấu trúc là như nhau, do đó, việc sử dụng phiên bản thứ hai sẽ thay đổi đáng kể tầm quan trọng tương đối của các lần khởi hành của từ sự thống nhất. Tôi đang thiếu gì? μσσμσ
TheBamf

0

Tôi tin rằng câu trả lời là đơn giản hơn. Trong VAE, mọi người thường sử dụng phân phối chuẩn nhiều biến số, có ma trận hiệp phương sai thay vì phương sai . Điều đó có vẻ khó hiểu trong một đoạn mã nhưng có dạng mong muốn.Σσ2

Tại đây, bạn có thể tìm thấy đạo hàm của phân kỳ KL cho các phân phối bình thường đa biến: Xuất phát tổn thất phân kỳ KL cho VAEs

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.