Trong triển khai ResNet của Tensorflow , tôi thấy họ sử dụng trình khởi tạo tỷ lệ phương sai, tôi cũng thấy trình khởi tạo xavier là phổ biến. Tôi không có quá nhiều kinh nghiệm về điều này, cái nào tốt hơn trong thực tế?
Trong triển khai ResNet của Tensorflow , tôi thấy họ sử dụng trình khởi tạo tỷ lệ phương sai, tôi cũng thấy trình khởi tạo xavier là phổ biến. Tôi không có quá nhiều kinh nghiệm về điều này, cái nào tốt hơn trong thực tế?
Câu trả lời:
Khởi tạo Xavier , ban đầu được đề xuất bởi Xavier Glorot và Yoshua Bengio trong "Tìm hiểu sự khó khăn của việc đào tạo mạng nơ ron thần kinh sâu" , là kỹ thuật khởi tạo trọng số cố gắng làm cho phương sai của đầu ra của một lớp bằng với phương sai của đầu vào của nó . Ý tưởng này hóa ra rất hữu ích trong thực tế. Đương nhiên, việc khởi tạo này phụ thuộc vào chức năng kích hoạt lớp. Và trong bài báo của họ, Glorot và Bengio đã xem xét chức năng kích hoạt sigmoid logistic , là lựa chọn mặc định tại thời điểm đó.
Sau đó, kích hoạt sigmoid đã bị ReLu vượt qua, bởi vì nó cho phép giải quyết vấn đề độ dốc biến mất / nổ. Do đó, đã xuất hiện một kỹ thuật khởi tạo mới, áp dụng cùng một ý tưởng (cân bằng phương sai của kích hoạt) cho chức năng kích hoạt mới này. Nó được đề xuất bởi Kaiming He at al trong "Delving Deep to Rectifier: Vượt qua hiệu suất cấp độ con người trên phân loại ImageNet" , và bây giờ nó thường được gọi là khởi tạo He .
Trong tenorflow, khởi tạo He được thực hiện theo variance_scaling_initializer()
chức năng (trên thực tế, đó là một trình khởi tạo tổng quát hơn, nhưng theo mặc định thực hiện khởi tạo He), trong khi trình khởi tạo Xavier là hợp lý xavier_initializer()
.
Tóm lại, sự khác biệt chính cho các học viên máy học là như sau:
tanh()
chức năng kích hoạt, tôi nên sử dụng chức năng khởi tạo nào.
Chia tỷ lệ phương sai chỉ là một khái quát của Xavier: http://tflearn.org/initializes/ . Cả hai đều hoạt động theo nguyên tắc tỷ lệ của độ dốc phải giống nhau trong tất cả các lớp. Xavier có thể an toàn hơn để sử dụng vì nó chịu được thử nghiệm thời gian thử nghiệm; cố gắng chọn các tham số của riêng bạn để nhân rộng phương sai có thể ức chế đào tạo hoặc khiến mạng của bạn không kiếm được tiền.