2017-07-26 118 views
1

我已經看到,https://www.quora.com/If-one-initializes-a-set-of-weights-in-a-Neural-Network-to-zero-is-it-true-that-in-future-iterations-they-will-not-be-updated-by-gradient-descent-and-backpropagation 說,零值權重將保持爲零的所有迭代。訓練期間神經網絡的零值權重是否保持爲零?

然後我將一些權重初始化爲零,但是在訓練後它們不再是零。

我使用keras和initilizer來使權重爲零。優化器是sgd或adam。

有人可以解釋嗎?非常感謝!

回答

0

不,這是不正確的。權重的實際值並不重要,重要的是成本函數偏重於權重。如果該導數爲零,則梯度下降算法無法更新此權重。這是一個已知的ReLUs問題,可能會導致死亡的神經元。這就是爲什麼其他非線性經常是首選的,例如Leaky ReLUs或ELU。

+0

謝謝你的回答。其實我想創建一個不完整的連接層,我可以自己定義神經元之間的連接。這就是爲什麼我啓動一些權重爲零。不幸的是,零初始化不起作用。你可能有想法嗎? – Bin