之前在幾篇博客中說到了權重共享,但都覺得不夠全面,這里做個專題,以后有新的理解都在此更新。
1. 減少運算只是錦上添花
之前說到權重共享可以減少運算,是的,但這樣說好像是可有可無,只是運算量大小的問題,其實不是可有可無的。
2. 權重共享的本質是特征提取
之前說到權重就是模板,我們按照一定的模板來與樣本進行比對,看看有沒有與模板一致的外在表現(特征)
3. 權重共享使得模型泛化
普通的神經網絡輸入是固定的,而權重共享可以使得輸入不固定。
比如很多張圖像,每張圖像上有個人臉,但是人臉在圖像的不同位置,或者圖像的大小也不相同,此時權重共享可以全圖掃描,搜索人臉,進而把特征提取出來。
再如RNN做語義分析,兩句話:我去年去了北京;去年我和父母去了北京,這其實意思差不多,但文字位置不同,句子長度也不同。
權重共享使得模型能夠處理一個連續序列的特征,而不管輸入的序列總長度是多少。
當這個連續序列在樣本的不同位置時,依然能夠識別,而不是學習每個位置的規則,這不僅抓住了不同特征之間的連續性,也減少了學習規則
所以權重共享是必須的。