Chức năng mất cho bộ tự động


19

Tôi đang thử nghiệm một bộ tạo tự động bit, và với tenorflow tôi đã tạo ra một mô hình cố gắng xây dựng lại bộ dữ liệu MNIST.

Mạng của tôi rất đơn giản: X, e1, e2, d1, Y, trong đó e1 và e2 là các lớp mã hóa, d2 và Y là các lớp giải mã (và Y là đầu ra được xây dựng lại).

X có 784 đơn vị, e1 có 100, e2 có 50, d1 có 100 lần nữa và Y 784 lại.

Tôi đang sử dụng sigmoids làm các hàm kích hoạt cho các lớp e1, e2, d1 và Y. Các đầu vào nằm trong [0,1] và do đó nên là đầu ra.

Chà, tôi đã thử sử dụng entropy chéo làm hàm mất, nhưng đầu ra luôn là một đốm màu và tôi nhận thấy rằng các trọng số từ X đến e1 sẽ luôn hội tụ đến một ma trận có giá trị bằng không.

Mặt khác, sử dụng các lỗi bình phương trung bình làm hàm mất mát, sẽ tạo ra một kết quả tốt và bây giờ tôi có thể xây dựng lại các đầu vào.

Tại sao lại như vậy? Tôi nghĩ rằng tôi có thể diễn giải các giá trị là xác suất, và do đó sử dụng entropy chéo, nhưng rõ ràng tôi đang làm gì đó sai.


1
Bạn đã đề cập đến việc sử dụng sigmoid cho các chức năng kích hoạt trong các lớp đầu tiên. Những triển lãm "bão hòa", như được giải thích đầy đủ hơn trong Ghi chú CS231n . Bạn đã thử một chức năng kích hoạt khác như ReLUs chưa?
Jerry

Tôi không thể nhớ lại ngay bây giờ nếu tôi đã thử khác, nhưng cảm ơn vì đã chia sẻ!
AkiRoss

Câu trả lời:


17

Tôi nghĩ rằng câu trả lời tốt nhất cho điều này là chức năng mất entropy chéo chỉ không phù hợp với nhiệm vụ cụ thể này.

Khi thực hiện phương pháp này, về cơ bản, bạn đang nói rằng dữ liệu MNIST thực sự là nhị phân và cường độ pixel của bạn đại diện cho xác suất mỗi pixel được 'bật'. Nhưng chúng tôi biết đây không phải là trường hợp thực tế. Sự không chính xác của giả định ngầm này sau đó gây ra cho chúng tôi các vấn đề.

Chúng ta cũng có thể xem xét hàm chi phí và xem tại sao nó có thể không phù hợp. Giả sử giá trị pixel mục tiêu của chúng tôi là 0,8. Nếu chúng ta vẽ tổn thất MSE và mất entropy chéo (bình thường hóa điều này sao cho mức tối thiểu bằng 0), chúng tôi nhận được:-[(Mục tiêu)đăng nhập(sự dự đoán)+(1-Mục tiêu)đăng nhập(1-sự dự đoán)]

entropy chéo so với mất mse

Chúng ta có thể thấy rằng sự mất mát entropy chéo là không đối xứng. Tại sao chúng ta muốn điều này? Có thực sự tệ hơn khi dự đoán 0,9 cho 0,8 pixel này so với dự đoán 0,7? Tôi sẽ nói nó có thể tốt hơn, nếu có bất cứ điều gì.

Chúng tôi có thể có thể đi vào chi tiết hơn và tìm hiểu tại sao điều này dẫn đến các đốm màu cụ thể mà bạn đang nhìn thấy. Tôi muốn đoán rằng đó là vì cường độ điểm ảnh trung bình trên 0,5 trong khu vực bạn đang nhìn thấy đốm sáng. Nhưng nói chung đây là một trường hợp giả định mô hình ngầm mà bạn đã làm không phù hợp với dữ liệu.

Mong rằng sẽ giúp!


3
wo chức năng mất nào là phù hợp nếu đầu vào nổi giữa 0 và 1?
Jemshit Iskenderov

Mất Entropy chéo nhị phân
torayeff
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.