神經網路的梯度消失本質上可不可以通過無限制地提高運算精度來避免?

時間 2021-05-11 16:33:09

1樓:chenli

不能,因為神經網路的優化問題並不是乙個凸優化問題;梯度消失對深度學習的影響並不是因為精度截斷導致收斂不到最優解,而是因為梯度消失會使得神經網路中前面的層的引數沒法充分的學習,最終只能收斂到乙個比較差的區域性最優。

2樓:王康康

竟然還有人說可以的。。。。

梯度消失的本質是損失函式本身已經進入了平坦區域,這個區域如果嚴格意義上就是平的,那你的精度越高,梯度越接近於0。

3樓:毛飛飛

我認為可以,引數就是一組高維向量,我們只要知道它的變化方向就可以有效地更新,而不是大小(大小可以使用adam優化器的歸一化調節)。正確的方向就是損失減小最陡的方向,沿著這個方向就可以損失下降,與大小並沒有關係。

為什麼梯度消失會影響網路學習呢,因為影響了方向的判斷。梯度的值小於精度的時候會變成0,即使略大於精度,也會因為四捨五入丟掉正確的方向資訊,引數無法感知方向就難以學習。

所以理論上,我認為只要最小梯度是精度的一千倍以上就可以有效更新。

4樓:Liyuan Liu

我比較傾向給回答加一些條件/前提

比如說對於RNN, 這個問題沒法用高精度解決. 對於RNN 來講, long term 的gradient vanishing 會同時體現為 short term 的gradient dominating. 在這種情況下,即使加大精度,也沒法避免short term 的gradient dominates 了long term 的gradient.

依然沒法capture long term 的dependency.

5樓:Captain Jack

作為碼畜,說說我的理解:

一般認知上,梯度消失就不是指梯度降低到0,而是梯度小到讓網路難以收斂,或者收斂太慢了。

無限制的提高運算精度可以避免梯度消失的前提是:這是乙個凸優化。

然而,NN不是凸的。

我對於為什麼梯度太小沒法訓練的理解是:

梯度小的問題不是本身值小,而是本身的梯度方向失去了參考意義,太容易被訓練中的噪音影響了:1.0的梯度,可能0.

1是噪音部分。0.0001的梯度,可能0.

0001全是噪音。

網路的訓練是反向的,然而,底層特徵又很重要。梯度小了,造成底層特徵不怎麼動,上層動來動去,都是無用功。

整個網路的權值,尤其是底層的權值,全是布朗運動,或者接近布朗運動,收斂就慢了。

6樓:Zhanxing Zhu

梯度消失的本質是由於反向傳播計算梯度,導致網路各層的梯度的尺度相差非常大,乙個直接的後果就是無法選取合適的learning rate來進行梯度下降。 這和你無限制提供運算精度沒啥本質關係。

本質是各層引數的尺度相差很大,這也是batch normalization主要幹的事情,它通過normalization使得各層梯度尺度相差並不是那麼大,使得learning rate的選取非常容易,容許大的learning rate,所以帶bn的網路優化很快,當然為啥generalization好,兩個原因:優化做的好 +引入了新的雜訊項,有正則化效果。

7樓:卡夫卡的神隱

梯度消失沒法很好地解決梯度消失並不是說w的梯度消失了梯度可以很大只是long-range的那一部分梯度消失了這種情況只能用更好的初始化方式或者更好的框架 . 回到題主的問題,如果有無限精度, 訓練無限長時間 + 使用Adam 理論上是可以解決梯度消失的問題的,因為隨著訓練時間加長,short-range的梯度會慢慢減小到0 (如果收斂的話),long-range的梯度可以慢慢發揮作用。

8樓:[已重置]

首先,答案是,不行,這事和精度基本沒啥關係,是系統本身的穩定性問題。奈米醬說的對,如果是反過來問,降低精度會如何,這倒是有意思的,其實也還是考察系統的初值穩定性,看輸入端量化雜訊對輸出的影響。

所謂梯度消失,就是輸出端的反饋訊號消失,反過來說就是在梯度消失的位置,微小的引數改變可能會導致輸出的巨大改變,這其實是個初值敏感性的表現,就是系統存在強烈的不穩定性,無論如何,哪怕你通過精緻的微調真的完成了訓練,這種不穩定的系統特徵也不是我們需要的,可靠性就是個疑問。我們要做的是將系統弄到更穩定的結構上去,這就是很多網路結構設計(比如 ResNet,BN)和初始化手段的初衷(不管設計者是否意識到了這一點)。

9樓:李韶華

梯度消失有人觀測到嗎?反正我沒有。我試了vgg,alexnet等早期不帶residual connection和bn的網路,底層(最接近輸入的幾層)梯度的幅度仍然相當大,跟高層的梯度沒有數量級的差別。

所以我一直納悶,梯度消失這個傳言是怎麼來的?

10樓:

題主考慮的問題,等價於給引數空間劃分網格,低運算精度表示大網格,高運算精度表示小網格,然後題主問,如果大網格下, A 和 B 因為「梯度消失「,導致不可達,那麼把網格切分細一點,A 和 B 是否可達。

不可達就是跳轉概率 P(B|A) 太低,題主認為 P(B | A) 在大網格下非常低,切分細以後,路徑多了就更容易進入,但是概率是守恆的,你切的網格再多,概率全部加起來仍然要等於一,可以粗略認為,細分網格以後,跳轉概率在 B 這個色塊上是幾乎沒有變化的,區分只是色塊內部。

如果大色塊都進不去,找到色塊內部的解更加不可能。

這個問題倒過來問反而有可能更加有意義,如果在無限光滑連續極限下,A,B 兩點可達,比如在float64下,從初始化點 A 訓練了到達點 B ,然後做 int 量化以後,A 和 B 是否在一定誤差範圍仍然是否也可達的?

11樓:Jack Stark

不可以。題主的意思是可以用無限小的小數來表示梯度,這樣就不算梯度消失了對嗎?

提高運算精度對避免梯度消失是沒用的。模型的訓練或者說學習是通過梯度更新引數來完成的。梯度消失本質上是模型前面的層沒法得到足夠大的梯度來更新引數,也就是說「學不動」了。

很小很小的梯度也算梯度消失的。

人的思想到底可不可以無限高 無限遠?

我比較贊同康德的實踐與理論二分,人類在理論認識層面上,受知性範疇的限制而只能停留在現象無法達到物自體,但是在實踐中,實踐理性擺脫因果範疇為自己先驗立法,使意志自律地行動,使人可以成為物自體。 GKilm 人的思想的水平歸根結底還是取決於認識的水平。而對於認識的起源 發展和範圍,前人也做了深刻的思考與...

果農可不可以通過在果樹的藤或莖的皮上注射甜蜜素 糖精等藥物增加水果的甜度呢,現實中存在嗎?

德老闆 可能就問這種問題的愚者 chun huo 太多導致了菜賤傷農 不多真的多看看書 真嘯風 答案就是準確的農業學科的發展人才梯隊的建立從田間管理到種子改良從基因技術到最後運輸全都是科學 在中國說謊的成本太低太低了! 百香果 目前現實中你說的不可能。果農一般打的化學藥劑都在果樹開花階段噴,比如甘肅...

理論上可不可以把西部環境改造的濕潤些?

sheep高 理論上是可行的,根據地理學家對於氣候的分析,中國雲南西雙版納雨林的存在就是屬於另類的。根據西雙版納雨林的位置以及氣候的分析,那一片應該是屬於缺水地區才對,但是因為雨林一直存在於那裡,所以不缺水,自己形成了乙個良性迴圈。如果有能力的話,把西部改造成這樣應該也是可行的。 徐譽洋 中國中西部...