人工智能铐伴,深度學(xué)習(xí)撮奏,機(jī)器學(xué)習(xí)—無(wú)論你在做什么俏讹,如果你對(duì)它不是很了解的話—去學(xué)習(xí)它。否則的話不用三年你就跟不上時(shí)代的潮流了畜吊。
——馬克.庫(kù)班
機(jī)器人圈(jiqirenchanye)
馬克.庫(kù)班的這個(gè)觀點(diǎn)可能聽(tīng)起來(lái)很極端——但是它所傳達(dá)的信息是完全正確的泽疆! 我們正處于一場(chǎng)革命的旋渦之中——一場(chǎng)由大數(shù)據(jù)和計(jì)算能力引起的革命。
只需要一分鐘玲献,我們來(lái)想象一下殉疼,在20世紀(jì)初,如果一個(gè)人不了解電力捌年,他/她會(huì)覺(jué)得如何瓢娜?你會(huì)習(xí)慣于以某種特定的方式來(lái)做事情,日復(fù)一日礼预,年復(fù)一年眠砾,而你周圍的一切事情都在發(fā)生變化,一件需要很多人才能完成的事情僅依靠一個(gè)人和電力就可以輕松搞定托酸,而我們今天正以機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的方式在經(jīng)歷一場(chǎng)相似的旅程褒颈。
所以,如果你還沒(méi)有探索或理解深度學(xué)習(xí)的神奇力量——那你應(yīng)該從今天就開(kāi)始進(jìn)入這一領(lǐng)域励堡。
誰(shuí)應(yīng)該讀這篇文章谷丸?
如果你是一個(gè)想學(xué)習(xí)或理解深度學(xué)習(xí)的人,這篇文章是為你量身定做的应结。在本文中刨疼,我將介紹深度學(xué)習(xí)中常用的各種術(shù)語(yǔ)。
如果你想知道我為什么要寫這篇文章——我之所以在寫鹅龄,是因?yàn)槲蚁M汩_(kāi)始你的深度學(xué)習(xí)之旅币狠,而不會(huì)遇到麻煩或是被嚇倒。當(dāng)我第一次開(kāi)始閱讀關(guān)于深度學(xué)習(xí)資料的時(shí)候砾层,有幾個(gè)我聽(tīng)說(shuō)過(guò)的術(shù)語(yǔ)漩绵,但是當(dāng)我試圖理解它的時(shí)候,它卻是令人感到很迷惑的肛炮。而當(dāng)我們開(kāi)始閱讀任何有關(guān)深度學(xué)習(xí)的應(yīng)用程序時(shí)止吐,總會(huì)有很多個(gè)單詞重復(fù)出現(xiàn)宝踪。
在本文中,我為你創(chuàng)建了一個(gè)類似于深度學(xué)習(xí)的字典碍扔,你可以在需要使用最常用術(shù)語(yǔ)的基本定義時(shí)進(jìn)行參考瘩燥。我希望在你閱讀這篇文章之后,你就不會(huì)再受到這些術(shù)語(yǔ)的困擾了不同。
與主題相關(guān)的術(shù)語(yǔ)
為了幫助你了解各種術(shù)語(yǔ)厉膀,我已經(jīng)將它們分成3組。如果你正在尋找特定術(shù)語(yǔ)二拐,你可以跳到該部分服鹅。如果你是這個(gè)領(lǐng)域的新手,那我建議你按照我寫的順序來(lái)通讀它們百新。
1.神經(jīng)網(wǎng)絡(luò)基礎(chǔ)(Basics of Neural Networks)
——常用激活函數(shù)(Common Activation Functions)
2.卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks)
3.循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks)
神經(jīng)網(wǎng)絡(luò)基礎(chǔ)
1)****神經(jīng)元(Neuron)****——就像形成我們大腦基本元素的神經(jīng)元一樣企软,神經(jīng)元形成神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)。想象一下饭望,當(dāng)我們得到新信息時(shí)我們?cè)撛趺醋稣躺凇.?dāng)我們獲取信息時(shí),我們一般會(huì)處理它铅辞,然后生成一個(gè)輸出厌漂。類似地,在神經(jīng)網(wǎng)絡(luò)的情況下斟珊,神經(jīng)元接收輸入苇倡,處理它并產(chǎn)生輸出,而這個(gè)輸出被發(fā)送到其他神經(jīng)元用于進(jìn)一步處理倍宾,或者作為最終輸出進(jìn)行輸出雏节。
2)****權(quán)重(Weights)****——當(dāng)輸入進(jìn)入神經(jīng)元時(shí),它會(huì)乘以一個(gè)權(quán)重高职。例如钩乍,如果一個(gè)神經(jīng)元有兩個(gè)輸入,則每個(gè)輸入將具有分配給它的一個(gè)關(guān)聯(lián)權(quán)重怔锌。我們隨機(jī)初始化權(quán)重寥粹,并在模型訓(xùn)練過(guò)程中更新這些權(quán)重。訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)對(duì)其輸入賦予較高的權(quán)重埃元,這是它認(rèn)為與不那么重要的輸入相比更為重要的輸入涝涤。為零的權(quán)重則表示特定的特征是微不足道的。
讓我們假設(shè)輸入為a岛杀,并且與其相關(guān)聯(lián)的權(quán)重為W1阔拳,那么在通過(guò)節(jié)點(diǎn)之后,輸入變?yōu)閍 * W1
3)****偏差(Bias)****——除了權(quán)重之外类嗤,另一個(gè)被應(yīng)用于輸入的線性分量被稱為偏差糊肠。它被加到權(quán)重與輸入相乘的結(jié)果中辨宠。基本上添加偏差的目的是來(lái)改變權(quán)重與輸入相乘所得結(jié)果的范圍的货裹。添加偏差后嗤形,結(jié)果將看起來(lái)像a* W1 +偏差。這是輸入變換的最終線性分量弧圆。
4)****激活函數(shù)(Activation Function)——一旦將線性分量應(yīng)用于輸入赋兵,將會(huì)需要應(yīng)用一個(gè)非線性函數(shù)。這通過(guò)將激活函數(shù)應(yīng)用于線性組合來(lái)完成搔预。激活函數(shù)將輸入信號(hào)轉(zhuǎn)換為輸出信號(hào)霹期。應(yīng)用激活函數(shù)后的輸出看起來(lái)像f(a * W1 + b),其中f()就是激活函數(shù)斯撮。
在下圖中经伙,我們將“n”個(gè)輸入給定為X1到Xn而與其相應(yīng)的權(quán)重為Wk1到Wkn扶叉。我們有一個(gè)給定值為bk的偏差勿锅。權(quán)重首先乘以與其對(duì)應(yīng)的輸入,然后與偏差加在一起枣氧。而這個(gè)值叫做u溢十。
U =ΣW* X+ b
激活函數(shù)被應(yīng)用于u,即 f(u)达吞,并且我們會(huì)從神經(jīng)元接收最終輸出张弛,如yk = f(u)。
常用的激活函數(shù)
最常用的激活函數(shù)就是Sigmoid酪劫,ReLU和softmax
a)****Sigmoid——最常用的激活函數(shù)之一是Sigmoid吞鸭,它被定義為:
Sigmoid變換產(chǎn)生一個(gè)值為0到1之間更平滑的范圍。我們可能需要觀察在輸入值略有變化時(shí)輸出值中發(fā)生的變化覆糟。光滑的曲線使我們能夠做到這一點(diǎn)刻剥,因此優(yōu)于階躍函數(shù)。
b)****ReLU(整流線性單位)——與Sigmoid函數(shù)不同的是滩字,最近的網(wǎng)絡(luò)更喜歡使用ReLu激活函數(shù)來(lái)處理隱藏層造虏。該函數(shù)定義為:
當(dāng)X>0時(shí),函數(shù)的輸出值為X麦箍;當(dāng)X<=0時(shí)漓藕,輸出值為0。函數(shù)圖如下圖所示:
使用ReLU函數(shù)的最主要的好處是對(duì)于大于0的所有輸入來(lái)說(shuō)挟裂,它都有一個(gè)不變的導(dǎo)數(shù)值享钞。常數(shù)導(dǎo)數(shù)值有助于網(wǎng)絡(luò)訓(xùn)練進(jìn)行得更快。
c)Softmax——Softmax激活函數(shù)通常用于輸出層诀蓉,用于分類問(wèn)題栗竖。它與sigmoid函數(shù)是很類似的寝姿,唯一的區(qū)別就是輸出被歸一化為總和為1。Sigmoid函數(shù)將發(fā)揮作用以防我們有一個(gè)二進(jìn)制輸出划滋,但是如果我們有一個(gè)多類分類問(wèn)題饵筑,softmax函數(shù)使為每個(gè)類分配值這種操作變得相當(dāng)簡(jiǎn)單,而這可以將其解釋為概率处坪。
以這種方式來(lái)操作的話根资,我們很容易看到——假設(shè)你正在嘗試識(shí)別一個(gè)可能看起來(lái)像8的6。該函數(shù)將為每個(gè)數(shù)字分配值如下同窘。我們可以很容易地看出玄帕,最高概率被分配給6,而下一個(gè)最高概率分配給8想邦,依此類推……
5)神經(jīng)網(wǎng)絡(luò)(Neural Network)——神經(jīng)網(wǎng)絡(luò)構(gòu)成了深度學(xué)習(xí)的支柱裤纹。神經(jīng)網(wǎng)絡(luò)的目標(biāo)是找到一個(gè)未知函數(shù)的近似值。它由相互聯(lián)系的神經(jīng)元形成丧没。這些神經(jīng)元具有權(quán)重和在網(wǎng)絡(luò)訓(xùn)練期間根據(jù)錯(cuò)誤來(lái)進(jìn)行更新的偏差鹰椒。激活函數(shù)將非線性變換置于線性組合,而這個(gè)線性組合稍后會(huì)生成輸出呕童。激活的神經(jīng)元的組合會(huì)給出輸出值漆际。
一個(gè)很好的神經(jīng)網(wǎng)絡(luò)定義——
“神經(jīng)網(wǎng)絡(luò)由許多相互關(guān)聯(lián)的概念化的人造神經(jīng)元組成,它們之間傳遞相互數(shù)據(jù)夺饲,并且具有根據(jù)網(wǎng)絡(luò)”經(jīng)驗(yàn)“調(diào)整的相關(guān)權(quán)重奸汇。神經(jīng)元具有激活閾值,如果通過(guò)其相關(guān)權(quán)重的組合和傳遞給他們的數(shù)據(jù)滿足這個(gè)閾值的話往声,其將被解雇;發(fā)射神經(jīng)元的組合導(dǎo)致“學(xué)習(xí)”擂找。
6)輸入/輸出/隱藏層(Input / Output / Hidden Layer)——正如它們名字所代表的那樣,輸入層是接收輸入那一層浩销,本質(zhì)上是網(wǎng)絡(luò)的第一層贯涎。而輸出層是生成輸出的那一層,也可以說(shuō)是網(wǎng)絡(luò)的最終層撼嗓。處理層是網(wǎng)絡(luò)中的隱藏層柬采。這些隱藏層是對(duì)傳入數(shù)據(jù)執(zhí)行特定任務(wù)并將其生成的輸出傳遞到下一層的那些層。輸入和輸出層是我們可見(jiàn)的且警,而中間層則是隱藏的粉捻。
來(lái)源:cs231n
7)MLP(多層感知器)——單個(gè)神經(jīng)元將無(wú)法執(zhí)行高度復(fù)雜的任務(wù)。因此斑芜,我們使用堆棧的神經(jīng)元來(lái)生成我們所需要的輸出肩刃。在最簡(jiǎn)單的網(wǎng)絡(luò)中,我們將有一個(gè)輸入層、一個(gè)隱藏層和一個(gè)輸出層盈包。每個(gè)層都有多個(gè)神經(jīng)元沸呐,并且每個(gè)層中的所有神經(jīng)元都連接到下一層的所有神經(jīng)元。這些網(wǎng)絡(luò)也可以被稱為完全連接的網(wǎng)絡(luò)呢燥。
8)正向傳播(Forward Propagation)——正向傳播是指輸入通過(guò)隱藏層到輸出層的運(yùn)動(dòng)崭添。在正向傳播中,信息沿著一個(gè)單一方向前進(jìn)叛氨。輸入層將輸入提供給隱藏層呼渣,然后生成輸出。這過(guò)程中是沒(méi)有反向運(yùn)動(dòng)的寞埠。
9)成本函數(shù)(Cost Function)——當(dāng)我們建立一個(gè)網(wǎng)絡(luò)時(shí)屁置,網(wǎng)絡(luò)試圖將輸出預(yù)測(cè)得盡可能靠近實(shí)際值。我們使用成本/損失函數(shù)來(lái)衡量網(wǎng)絡(luò)的準(zhǔn)確性仁连。而成本或損失函數(shù)會(huì)在發(fā)生錯(cuò)誤時(shí)嘗試懲罰網(wǎng)絡(luò)蓝角。
我們?cè)谶\(yùn)行網(wǎng)絡(luò)時(shí)的目標(biāo)是提高我們的預(yù)測(cè)精度并減少誤差,從而最大限度地降低成本饭冬。最優(yōu)化的輸出是那些成本或損失函數(shù)值最小的輸出使鹅。
如果我將成本函數(shù)定義為均方誤差,則可以寫為:
C= 1/m ∑(y–a)^2伍伤,
其中m是訓(xùn)練輸入的數(shù)量并徘,a是預(yù)測(cè)值遣钳,y是該特定示例的實(shí)際值扰魂。
學(xué)習(xí)過(guò)程圍繞最小化成本來(lái)進(jìn)行。
10)梯度下降(Gradient Descent)——梯度下降是一種最小化成本的優(yōu)化算法蕴茴。要直觀地想一想劝评,在爬山的時(shí)候,你應(yīng)該會(huì)采取小步驟倦淀,一步一步走下來(lái)蒋畜,而不是一下子跳下來(lái)。因此撞叽,我們所做的就是姻成,如果我們從一個(gè)點(diǎn)x開(kāi)始,我們向下移動(dòng)一點(diǎn)愿棋,即Δh科展,并將我們的位置更新為x-Δh,并且我們繼續(xù)保持一致糠雨,直到達(dá)到底部才睹。考慮最低成本點(diǎn)。
圖:https://www.youtube.com/watch?v=5u4G23_OohI
在數(shù)學(xué)上琅攘,為了找到函數(shù)的局部最小值垮庐,我們通常采取與函數(shù)梯度的負(fù)數(shù)成比例的步長(zhǎng)。
你可以通過(guò)這篇文章來(lái)詳細(xì)了解梯度下降坞琴。
11)學(xué)習(xí)率(Learning Rate)——學(xué)習(xí)率被定義為每次迭代中成本函數(shù)中最小化的量哨查。簡(jiǎn)單來(lái)說(shuō),我們下降到成本函數(shù)的最小值的速率是學(xué)習(xí)率剧辐。我們應(yīng)該非常仔細(xì)地選擇學(xué)習(xí)率解恰,因?yàn)樗粦?yīng)該是非常大的,以至于最佳解決方案被錯(cuò)過(guò)浙于,也不應(yīng)該非常低护盈,以至于網(wǎng)絡(luò)需要融合。
http://cs231n.github.io/neural-networks-3/
12)反向傳播(Backpropagation)——當(dāng)我們定義神經(jīng)網(wǎng)絡(luò)時(shí)羞酗,我們?yōu)槲覀兊墓?jié)點(diǎn)分配隨機(jī)權(quán)重和偏差值腐宋。一旦我們收到單次迭代的輸出,我們就可以計(jì)算出網(wǎng)絡(luò)的錯(cuò)誤檀轨。然后將該錯(cuò)誤與成本函數(shù)的梯度一起反饋給網(wǎng)絡(luò)以更新網(wǎng)絡(luò)的權(quán)重胸竞。 最后更新這些權(quán)重,以便減少后續(xù)迭代中的錯(cuò)誤参萄。使用成本函數(shù)的梯度的權(quán)重的更新被稱為反向傳播卫枝。
在反向傳播中,網(wǎng)絡(luò)的運(yùn)動(dòng)是向后的讹挎,錯(cuò)誤隨著梯度從外層通過(guò)隱藏層流回校赤,權(quán)重被更新。
13)批次(Batches)——在訓(xùn)練神經(jīng)網(wǎng)絡(luò)的同時(shí)筒溃,不用一次發(fā)送整個(gè)輸入马篮,我們將輸入分成幾個(gè)隨機(jī)大小相等的塊。與整個(gè)數(shù)據(jù)集一次性饋送到網(wǎng)絡(luò)時(shí)建立的模型相比怜奖,批量訓(xùn)練數(shù)據(jù)使得模型更加廣義化浑测。
14)周期(Epochs)——周期被定義為向前和向后傳播中所有批次的單次訓(xùn)練迭代。這意味著1個(gè)周期是整個(gè)輸入數(shù)據(jù)的單次向前和向后傳遞歪玲。
你可以選擇你用來(lái)訓(xùn)練網(wǎng)絡(luò)的周期數(shù)量迁央,更多的周期將顯示出更高的網(wǎng)絡(luò)準(zhǔn)確性,然而滥崩,網(wǎng)絡(luò)融合也需要更長(zhǎng)的時(shí)間岖圈。另外,你必須注意夭委,如果周期數(shù)太高幅狮,網(wǎng)絡(luò)可能會(huì)過(guò)度擬合募强。
15)丟棄(Dropout)——Dropout是一種正則化技術(shù),可防止網(wǎng)絡(luò)過(guò)度擬合套崇摄。顧名思義擎值,在訓(xùn)練期間,隱藏層中的一定數(shù)量的神經(jīng)元被隨機(jī)地丟棄逐抑。這意味著訓(xùn)練發(fā)生在神經(jīng)網(wǎng)絡(luò)的不同組合的神經(jīng)網(wǎng)絡(luò)的幾個(gè)架構(gòu)上鸠儿。你可以將Dropout視為一種綜合技術(shù),然后將多個(gè)網(wǎng)絡(luò)的輸出用于產(chǎn)生最終輸出厕氨。
來(lái)源:Original paper
16)批量歸一化(Batch Normalization)——作為一個(gè)概念进每,批量歸一化可以被認(rèn)為是我們?cè)诤恿髦性O(shè)定為特定檢查點(diǎn)的水壩。這樣做是為了確保數(shù)據(jù)的分發(fā)與希望獲得的下一層相同命斧。當(dāng)我們訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)田晚,權(quán)重在梯度下降的每個(gè)步驟之后都會(huì)改變,這會(huì)改變數(shù)據(jù)的形狀如何發(fā)送到下一層国葬。
但是下一層預(yù)期分布類似于之前所看到的分布贤徒。 所以我們?cè)趯?shù)據(jù)發(fā)送到下一層之前明確規(guī)范化數(shù)據(jù)。
卷積神經(jīng)網(wǎng)絡(luò)
17)濾波器(Filters)——CNN中的濾波器與加權(quán)矩陣一樣汇四,它與輸入圖像的一部分相乘以產(chǎn)生一個(gè)回旋輸出接奈。我們假設(shè)有一個(gè)大小為28 * 28的圖像,我們隨機(jī)分配一個(gè)大小為3 * 3的濾波器通孽,然后與圖像不同的3 * 3部分相乘序宦,形成所謂的卷積輸出。濾波器尺寸通常小于原始圖像尺寸背苦。在成本最小化的反向傳播期間互捌,濾波器值被更新為重量值。
參考一下下圖糠惫,這里filter是一個(gè)3 * 3矩陣:
與圖像的每個(gè)3 * 3部分相乘以形成卷積特征疫剃。
18)卷積神經(jīng)網(wǎng)絡(luò)(CNN)——卷積神經(jīng)網(wǎng)絡(luò)基本上應(yīng)用于圖像數(shù)據(jù)。假設(shè)我們有一個(gè)輸入的大信鸱怼(28 * 28 * 3),如果我們使用正常的神經(jīng)網(wǎng)絡(luò)牲阁,將有2352(28 * 28 * 3)參數(shù)固阁。并且隨著圖像的大小增加參數(shù)的數(shù)量變得非常大。我們“卷積”圖像以減少參數(shù)數(shù)量(如上面濾波器定義所示)城菊。當(dāng)我們將濾波器滑動(dòng)到輸入體積的寬度和高度時(shí)备燃,將產(chǎn)生一個(gè)二維激活圖,給出該濾波器在每個(gè)位置的輸出凌唬。我們將沿深度尺寸堆疊這些激活圖并齐,并產(chǎn)生輸出量。
你可以看到下面的圖,以獲得更清晰的印象况褪。
19)池化(Pooling)——通常在卷積層之間定期引入池層撕贞。這基本上是為了減少一些參數(shù),并防止過(guò)度擬合测垛。最常見(jiàn)的池化類型是使用MAX操作的濾波器尺寸(2,2)的池層捏膨。它會(huì)做的是,它將占用原始圖像的每個(gè)4 * 4矩陣的最大值食侮。
來(lái)源:cs231n
你還可以使用其他操作(如平均池)進(jìn)行池化号涯,但是最大池?cái)?shù)量在實(shí)踐中表現(xiàn)更好。
20)填充(Padding)——填充是指在圖像之間添加額外的零層锯七,以使輸出圖像的大小與輸入相同链快。這被稱為相同的填充。
在應(yīng)用濾波器之后眉尸,在相同填充的情況下久又,卷積層具有等于實(shí)際圖像的大小。
有效填充是指將圖像保持為具有實(shí)際或“有效”的圖像的所有像素效五。在這種情況下地消,在應(yīng)用濾波器之后,輸出的長(zhǎng)度和寬度的大小在每個(gè)卷積層處不斷減小畏妖。
21)數(shù)據(jù)增強(qiáng)(Data Augmentation)——數(shù)據(jù)增強(qiáng)是指從給定數(shù)據(jù)導(dǎo)出的新數(shù)據(jù)的添加脉执,這可能被證明對(duì)預(yù)測(cè)有益。例如戒劫,如果你使光線變亮半夷,可能更容易在較暗的圖像中看到貓,或者例如迅细,數(shù)字識(shí)別中的9可能會(huì)稍微傾斜或旋轉(zhuǎn)巫橄。在這種情況下,旋轉(zhuǎn)將解決問(wèn)題并提高我們的模型的準(zhǔn)確性茵典。通過(guò)旋轉(zhuǎn)或增亮湘换,我們正在提高數(shù)據(jù)的質(zhì)量。這被稱為數(shù)據(jù)增強(qiáng)统阿。
循環(huán)神經(jīng)網(wǎng)絡(luò)
22)循環(huán)神經(jīng)元(Recurrent Neuron)——循環(huán)神經(jīng)元是在T時(shí)間內(nèi)將神經(jīng)元的輸出發(fā)送回給它彩倚。如果你看圖,輸出將返回輸入t次扶平。展開(kāi)的神經(jīng)元看起來(lái)像連接在一起的t個(gè)不同的神經(jīng)元帆离。這個(gè)神經(jīng)元的基本優(yōu)點(diǎn)是它給出了更廣義的輸出。
23)循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)——循環(huán)神經(jīng)網(wǎng)絡(luò)特別用于順序數(shù)據(jù)结澄,其中先前的輸出用于預(yù)測(cè)下一個(gè)輸出哥谷。在這種情況下岸夯,網(wǎng)絡(luò)中有循環(huán)。隱藏神經(jīng)元內(nèi)的循環(huán)使他們能夠存儲(chǔ)有關(guān)前一個(gè)單詞的信息一段時(shí)間们妥,以便能夠預(yù)測(cè)輸出猜扮。隱藏層的輸出在t時(shí)間戳內(nèi)再次發(fā)送到隱藏層。展開(kāi)的神經(jīng)元看起來(lái)像上圖王悍。只有在完成所有的時(shí)間戳后破镰,循環(huán)神經(jīng)元的輸出才能進(jìn)入下一層。發(fā)送的輸出更廣泛压储,以前的信息保留的時(shí)間也較長(zhǎng)鲜漩。
然后根據(jù)展開(kāi)的網(wǎng)絡(luò)將錯(cuò)誤反向傳播以更新權(quán)重。這被稱為通過(guò)時(shí)間的反向傳播(BPTT)集惋。
24)消失梯度問(wèn)題(Vanishing Gradient Problem)——激活函數(shù)的梯度非常小的情況下會(huì)出現(xiàn)消失梯度問(wèn)題孕似。在權(quán)重乘以這些低梯度時(shí)的反向傳播過(guò)程中,它們往往變得非常小刮刑,并且隨著網(wǎng)絡(luò)進(jìn)一步深入而“消失”喉祭。這使得神經(jīng)網(wǎng)絡(luò)忘記了長(zhǎng)距離依賴。這對(duì)循環(huán)神經(jīng)網(wǎng)絡(luò)來(lái)說(shuō)是一個(gè)問(wèn)題雷绢,長(zhǎng)期依賴對(duì)于網(wǎng)絡(luò)來(lái)說(shuō)是非常重要的泛烙。
這可以通過(guò)使用不具有小梯度的激活函數(shù)ReLu來(lái)解決。
25)激增梯度問(wèn)題(Exploding Gradient Problem)——這與消失的梯度問(wèn)題完全相反翘紊,激活函數(shù)的梯度過(guò)大蔽氨。在反向傳播期間,它使特定節(jié)點(diǎn)的權(quán)重相對(duì)于其他節(jié)點(diǎn)的權(quán)重非常高帆疟,這使得它們不重要鹉究。這可以通過(guò)剪切梯度來(lái)輕松解決,使其不超過(guò)一定值踪宠。