Giả sử bạn có một lớp đầu vào với n nơ-ron và lớp ẩn đầu tiên có nơ-ron, với điển hình là . Sau đó, bạn tính toán hoạt động của nơron thứ trong lớp ẩn bằng cáchm < n a j j
f tanh sigmoid , trong đó là một hàm kích hoạt như hoặc .
Để huấn luyện mạng, bạn tính toán việc xây dựng lại đầu vào, ký hiệu là và giảm thiểu lỗi giữa và . Bây giờ, phần tử thứ trong thường được tính là:z x i z
Tôi tự hỏi tại sao được xây dựng lại thường được tính toán với cùng một chức năng kích hoạt thay vì sử dụng hàm nghịch đảo, và tại sao tách biệt và lại hữu ích thay vì sử dụng các trọng số và độ lệch gắn? Tôi có vẻ trực quan hơn nhiều khi tính toán được xây dựng lại với hàm kích hoạt nghịch đảo , ví dụ: , như sau:w ′ b ′ f - 1 arctanh
Lưu ý rằng ở đây các trọng số được gắn được sử dụng, nghĩa là, và các độ lệch của lớp ẩn được sử dụng, thay vì đưa ra một nhóm sai lệch bổ sung cho lớp đầu vào.
Và một câu hỏi rất liên quan: Để trực quan hóa các tính năng, thay vì tính toán việc xây dựng lại, người ta thường sẽ tạo ra một ma trận danh tính với kích thước của lớp ẩn. Sau đó, người ta sẽ sử dụng mỗi cột của ma trận làm đầu vào cho chức năng kích hoạt lại, điều này tạo ra một đầu ra trong các nơ ron đầu vào. Đối với chức năng kích hoạt lại, tốt hơn là sử dụng cùng chức năng kích hoạt (tương ứng với ) hoặc chức năng nghịch đảo (tương ứng với )?