訂閱
糾錯(cuò)
加入自媒體

如何在神經(jīng)網(wǎng)絡(luò)中初始化權(quán)重和偏差?

介紹

人工神經(jīng)網(wǎng)絡(luò)是受人類神經(jīng)元工作啟發(fā)的計(jì)算系統(tǒng)。它是深度學(xué)習(xí)的支柱,在幾乎所有領(lǐng)域取得了更大的里程碑,從而帶來了我們解決問題的進(jìn)化。因此,每個(gè)有抱負(fù)的數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)工程師都必須對(duì)這些神經(jīng)網(wǎng)絡(luò)有很好的了解。在本文中,我們將討論有關(guān)人工神經(jīng)網(wǎng)絡(luò) (ANN) 的最重要問題,這有助于讓你清楚地了解這些技術(shù),以及數(shù)據(jù)科學(xué)訪談,其中涵蓋了從非;A(chǔ)的層面到復(fù)雜概念。

1、感知器是什么意思?

感知器也稱為人工神經(jīng)元,是一種神經(jīng)網(wǎng)絡(luò)單元,它執(zhí)行某些計(jì)算以檢測(cè)特征。它是一個(gè)單層神經(jīng)網(wǎng)絡(luò),用作線性分類器,同時(shí)處理一組輸入數(shù)據(jù)。由于感知器使用已經(jīng)標(biāo)記的分類數(shù)據(jù)點(diǎn),因此它是一種監(jiān)督學(xué)習(xí)算法。該算法用于使神經(jīng)元一次一個(gè)地學(xué)習(xí)和處理訓(xùn)練集中的元素。

2、感知器有哪些不同類型?

有兩種類型的感知器:

1. 單層感知器

單層感知器只能學(xué)習(xí)線性可分離的模式。

2. 多層感知器

多層感知器,也稱為具有兩層或多層的前饋神經(jīng)網(wǎng)絡(luò),具有更高的處理能力。

3、損失函數(shù)有什么用?

損失函數(shù)用作準(zhǔn)確性的度量,以識(shí)別我們的神經(jīng)網(wǎng)絡(luò)是否在訓(xùn)練數(shù)據(jù)的幫助下準(zhǔn)確地學(xué)習(xí)了模式。這是通過將訓(xùn)練數(shù)據(jù)與測(cè)試數(shù)據(jù)進(jìn)行比較來完成的。因此,損失函數(shù)被認(rèn)為是衡量神經(jīng)網(wǎng)絡(luò)性能的主要指標(biāo)。在深度學(xué)習(xí)中,性能良好的神經(jīng)網(wǎng)絡(luò)在訓(xùn)練發(fā)生時(shí)始終具有較低的損失函數(shù)值。

4、激活函數(shù)在神經(jīng)網(wǎng)絡(luò)中的作用是什么?

在神經(jīng)網(wǎng)絡(luò)中使用激活函數(shù)的原因如下:激活函數(shù)背后的思想是將非線性引入神經(jīng)網(wǎng)絡(luò),使其能夠?qū)W習(xí)更復(fù)雜的函數(shù)。沒有激活函數(shù),神經(jīng)網(wǎng)絡(luò)表現(xiàn)為線性分類器,學(xué)習(xí)輸入數(shù)據(jù)的線性組合函數(shù)。激活函數(shù)將輸入轉(zhuǎn)換為輸出。激活函數(shù)負(fù)責(zé)決定一個(gè)神經(jīng)元是否應(yīng)該被激活,即是否被激發(fā)。為了做出決定,它首先計(jì)算加權(quán)和,并進(jìn)一步添加偏差。因此,激活函數(shù)的基本目的是將非線性引入神經(jīng)元的輸出。

5、列出神經(jīng)網(wǎng)絡(luò)中使用的一些流行的激活函數(shù)的名稱。

構(gòu)建深度學(xué)習(xí)模型時(shí)使用的一些流行的激活函數(shù)如下:

Sigmoid 函數(shù)

雙曲正切函數(shù)

整流線性單元 (RELU) 函數(shù)

Leaky  RELU 函數(shù)

最大輸出函數(shù)

指數(shù)線性單元 (ELU) 函數(shù)

6、成本函數(shù)是什么意思?

在構(gòu)建深度學(xué)習(xí)模型時(shí),我們的整個(gè)目標(biāo)是最小化成本函數(shù)。成本函數(shù)解釋了神經(jīng)網(wǎng)絡(luò)對(duì)其給定訓(xùn)練數(shù)據(jù)和預(yù)期輸出的表現(xiàn)如何。它可能取決于神經(jīng)網(wǎng)絡(luò)參數(shù),例如權(quán)重和偏差?偟膩碚f,它提供了神經(jīng)網(wǎng)絡(luò)的性能。

7、反向傳播是什么意思?

反向傳播算法用于訓(xùn)練多層感知器。它將錯(cuò)誤信息從網(wǎng)絡(luò)末端傳播到網(wǎng)絡(luò)內(nèi)部的所有權(quán)重。它允許有效計(jì)算梯度或?qū)?shù)。反向傳播可以分為以下幾個(gè)步驟:它可以通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)訓(xùn)練數(shù)據(jù)的傳播以生成輸出。它使用目標(biāo)值和輸出值通過考慮輸出激活來計(jì)算誤差導(dǎo)數(shù)。它可以反向傳播以計(jì)算關(guān)于前一層輸出激活的誤差的導(dǎo)數(shù),并繼續(xù)計(jì)算所有隱藏層。它使用先前計(jì)算的輸出導(dǎo)數(shù)和所有隱藏層來計(jì)算關(guān)于權(quán)重的誤差導(dǎo)數(shù)。它更新權(quán)重并重復(fù)直到成本函數(shù)最小化。

8、如何在神經(jīng)網(wǎng)絡(luò)中初始化權(quán)重和偏差?

神經(jīng)網(wǎng)絡(luò)初始化意味著初始化參數(shù)的值,即權(quán)重和偏差。偏差可以初始化為零,但我們不能用零初始化權(quán)重。權(quán)重初始化是神經(jīng)網(wǎng)絡(luò)中的關(guān)鍵因素之一,因?yàn)殄e(cuò)誤的權(quán)重初始化會(huì)阻止神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)模式。相反,良好的權(quán)重初始化有助于更快地收斂到全局最小值。根據(jù)經(jīng)驗(yàn),初始化權(quán)重的規(guī)則是接近于零但不能太小。

9、為什么權(quán)重的零初始化,不是一個(gè)好的初始化技巧?

如果我們將神經(jīng)網(wǎng)絡(luò)中的權(quán)重集初始化為零,那么每一層的所有神經(jīng)元將在反向傳播期間開始產(chǎn)生相同的輸出和相同的梯度。結(jié)果,神經(jīng)網(wǎng)絡(luò)根本無法學(xué)習(xí)任何東西,因?yàn)椴煌窠?jīng)元之間沒有不對(duì)稱的來源。因此,我們?cè)诔跏蓟窠?jīng)網(wǎng)絡(luò)中的權(quán)重時(shí)添加隨機(jī)性。

10、解釋梯度下降及其類型。

梯度下降是一種優(yōu)化算法,旨在最小化成本函數(shù)或最小化誤差。它的主要目標(biāo)是根據(jù)函數(shù)的凸性找到函數(shù)的局部或全局最小值。這決定了模型應(yīng)該朝哪個(gè)方向減少誤差。

梯度下降的三種類型:

小批量梯度下降

隨機(jī)梯度下降

批量梯度下降

11、解釋梯度下降算法中使用的不同步驟。

用于初始化和使用梯度下降算法的五個(gè)主要步驟如下:初始化神經(jīng)網(wǎng)絡(luò)的偏差和權(quán)重。將輸入數(shù)據(jù)通過網(wǎng)絡(luò),即輸入層。計(jì)算預(yù)期值和預(yù)測(cè)值之間的差異或誤差。調(diào)整值,即神經(jīng)元中的權(quán)重更新以最小化損失函數(shù)。我們重復(fù)相同的步驟,即多次迭代以確定有效工作的最佳權(quán)重。

12、解釋術(shù)語“數(shù)據(jù)規(guī)范化”。

數(shù)據(jù)標(biāo)準(zhǔn)化是必不可少的預(yù)處理步驟,用于將初始值重新縮放到特定范圍。它可以確保反向傳播期間更好的收斂。通常,數(shù)據(jù)歸一化將每個(gè)數(shù)據(jù)點(diǎn)歸結(jié)為減去均值并除以其標(biāo)準(zhǔn)差。由于我們對(duì)每一層的輸入進(jìn)行了標(biāo)準(zhǔn)化,因此該技術(shù)提高了神經(jīng)網(wǎng)絡(luò)的性能和穩(wěn)定性。

13、神經(jīng)網(wǎng)絡(luò)中的前向傳播和后向傳播有什么區(qū)別?

前向傳播:輸入被送入網(wǎng)絡(luò)。在每一層中,有一個(gè)特定的激活函數(shù),在層之間,有代表神經(jīng)元連接強(qiáng)度的權(quán)重。輸入貫穿網(wǎng)絡(luò)的各個(gè)層,最終生成輸出。反向傳播:誤差函數(shù)衡量網(wǎng)絡(luò)輸出的準(zhǔn)確程度。為了提高輸出,必須優(yōu)化權(quán)重。反向傳播算法用于確定如何調(diào)整各個(gè)權(quán)重。在梯度下降法期間調(diào)整權(quán)重。

14、 詳細(xì)解釋不同類型的梯度下降。

隨機(jī)梯度下降:在隨機(jī)梯度下降中,使用的批量大小為 1。結(jié)果,我們得到了 n 個(gè)批次。因此,每次訓(xùn)練樣本后都會(huì)更新神經(jīng)網(wǎng)絡(luò)的權(quán)重。

小批量梯度下降:在小批量梯度下降中,批量大小必須介于 1 和訓(xùn)練數(shù)據(jù)集的大小之間。結(jié)果,我們得到了 k 個(gè)批次。因此,每次小批量迭代后都會(huì)更新神經(jīng)網(wǎng)絡(luò)的權(quán)重。

批梯度下降:在批梯度下降中,批大小等于訓(xùn)練數(shù)據(jù)集的大小。因此,神經(jīng)網(wǎng)絡(luò)的權(quán)重在每個(gè)時(shí)期之后被更新。

15、 玻爾茲曼機(jī)是什么意思?

最基本的深度學(xué)習(xí)模型之一是玻爾茲曼機(jī),它類似于多層感知器的簡(jiǎn)化版本。該模型具有一個(gè)可見的輸入層和一個(gè)隱藏層——只是一個(gè)兩層神經(jīng)網(wǎng)絡(luò),可以隨機(jī)決定是否應(yīng)該激活神經(jīng)元。在玻爾茲曼機(jī)中,節(jié)點(diǎn)是跨層連接的,但沒有同一層的兩個(gè)節(jié)點(diǎn)連接。

16、學(xué)習(xí)率如何影響神經(jīng)網(wǎng)絡(luò)的訓(xùn)練?

在選擇學(xué)習(xí)率來訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí),我們必須非常謹(jǐn)慎地選擇值,原因如下:如果學(xué)習(xí)率設(shè)置得太低,模型的訓(xùn)練將繼續(xù)非常緩慢,因?yàn)槲覀儗?duì)權(quán)重的變化很小,因?yàn)槲覀兊牟介L(zhǎng)由梯度下降方程控制。在達(dá)到最小損失點(diǎn)之前需要多次迭代。如果學(xué)習(xí)率設(shè)置得太高,由于步長(zhǎng)值較大,權(quán)重變化很大,這會(huì)導(dǎo)致?lián)p失函數(shù)出現(xiàn)不良的發(fā)散行為。它可能無法收斂(模型可以給出很好的輸出)甚至發(fā)散(數(shù)據(jù)太混亂,網(wǎng)絡(luò)無法訓(xùn)練)。

17、超參數(shù)是什么意思?

一旦數(shù)據(jù)格式正確,我們通常會(huì)在神經(jīng)網(wǎng)絡(luò)中使用超參數(shù)。超參數(shù)是一種參數(shù),其值在學(xué)習(xí)過程開始之前是固定的。它決定了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方式以及網(wǎng)絡(luò)的結(jié)構(gòu),其中包括:隱藏單元數(shù)學(xué)習(xí)率epoch 數(shù)等。

18、為什么ReLU是最常用的Activation Function?

ReLU(整流線性單元)是神經(jīng)網(wǎng)絡(luò)中最常用的激活函數(shù),原因如下:

1. 無梯度消失: RELU 激活函數(shù)的導(dǎo)數(shù)要么是 0,要么是 1,所以它可能不在 [0,1] 的范圍內(nèi)。因此,幾個(gè)導(dǎo)數(shù)的乘積也將是 0 或 1,由于此屬性,反向傳播過程中不會(huì)出現(xiàn)梯度消失問題。

2. 更快的訓(xùn)練:具有 RELU 的網(wǎng)絡(luò)往往表現(xiàn)出更好的收斂性能。因此,我們的運(yùn)行時(shí)間要短得多。

3. 稀疏性:對(duì)于所有負(fù)輸入,RELU 生成的輸出為 0。這意味著網(wǎng)絡(luò)中較少的神經(jīng)元被激發(fā)。所以我們?cè)谏窠?jīng)網(wǎng)絡(luò)中有稀疏而有效的激活。

19、解釋梯度消失和爆炸的問題。

這些是訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的主要問題。反向傳播時(shí),在n個(gè)隱藏層的網(wǎng)絡(luò)中,n個(gè)導(dǎo)數(shù)將被相乘。如果導(dǎo)數(shù)很大,例如,如果使用類似ReLU的激活函數(shù),那么當(dāng)我們向下傳播模型直到最終爆炸時(shí),梯度的值將呈指數(shù)增長(zhǎng),這就是爆炸梯度的問題。

相反,如果導(dǎo)數(shù)很小,例如,如果使用 Sigmoid 激活函數(shù),那么隨著我們?cè)谀P椭袀鞑,梯度將呈指?shù)下降,直到最終消失,這就是消失梯度問題。

20、優(yōu)化器是什么意思?

優(yōu)化器是用于調(diào)整神經(jīng)網(wǎng)絡(luò)的權(quán)重、偏差、學(xué)習(xí)率等參數(shù)以最小化損失函數(shù)的算法或方法。這些用于通過最小化函數(shù)來解決優(yōu)化問題。深度學(xué)習(xí)中最常用的優(yōu)化器如下:梯度下降隨機(jī)梯度下降 (SGD)小批量隨機(jī)梯度下降 (MB-SGD)有動(dòng)量的SGDNesterov 加速梯度 (NAG)自適應(yīng)梯度(AdaGrad)AdaDeltaRMSpropAdam

21、為什么深度神經(jīng)網(wǎng)絡(luò)比淺神經(jīng)網(wǎng)絡(luò)更受歡迎?

除了輸入和輸出層之外,神經(jīng)網(wǎng)絡(luò)還包含隱藏層。淺層神經(jīng)網(wǎng)絡(luò)的輸入層和輸出層之間只有一個(gè)隱藏層,而深層神經(jīng)網(wǎng)絡(luò)則使用多個(gè)層。要逼近任何函數(shù),淺層和深層網(wǎng)絡(luò)都足夠好且有能力,但是當(dāng)淺層神經(jīng)網(wǎng)絡(luò)擬合函數(shù)時(shí),它需要學(xué)習(xí)大量參數(shù)。相反,深度網(wǎng)絡(luò)可以在參數(shù)數(shù)量有限的情況下更好地?cái)M合函數(shù),因?yàn)樗鼈儼鄠(gè)隱藏層。因此,對(duì)于相同的準(zhǔn)確度水平,深度的網(wǎng)絡(luò)在計(jì)算和要學(xué)習(xí)的參數(shù)數(shù)量方面可以更加強(qiáng)大和高效。關(guān)于深度網(wǎng)絡(luò)的另一件重要事情是它們可以創(chuàng)建深度表示,并且在每一層,網(wǎng)絡(luò)都會(huì)學(xué)習(xí)新的、更抽象的輸入表示。因此,由于其能夠處理任何類型的數(shù)據(jù)建模的能力,現(xiàn)代神經(jīng)網(wǎng)絡(luò)已成為首選。

22、過度擬合是每個(gè)機(jī)器學(xué)習(xí)從業(yè)者面臨的最常見問題之一。解釋一些避免神經(jīng)網(wǎng)絡(luò)過度擬合的方法。

Dropout:這是一種防止神經(jīng)網(wǎng)絡(luò)過度擬合的正則化技術(shù)。它在訓(xùn)練過程中從神經(jīng)網(wǎng)絡(luò)中隨機(jī)丟棄神經(jīng)元,相當(dāng)于訓(xùn)練不同的神經(jīng)網(wǎng)絡(luò)。不同的網(wǎng)絡(luò)會(huì)以不同的方式過度擬合,因此 dropout 正則化技術(shù)的效果將是減少過度擬合,以便我們的模型有利于預(yù)測(cè)分析。

提前停止:這種正則化技術(shù)更新模型,使其在每次迭代時(shí)更好地?cái)M合訓(xùn)練數(shù)據(jù)。經(jīng)過一定次數(shù)的迭代后,新的迭代會(huì)改進(jìn)模型。然而,在那之后,模型開始過度擬合訓(xùn)練數(shù)據(jù)。提前停止是指在該點(diǎn)之前停止訓(xùn)練過程。

23、神經(jīng)網(wǎng)絡(luò)中Epoch、Batch和Iteration的區(qū)別是什么?

Epoch、迭代和批處理是用于處理梯度下降的數(shù)據(jù)集和算法的不同類型。所有這三種方法,即 epoch、迭代和批量大小,基本上都是根據(jù)數(shù)據(jù)集的大小處理梯度下降的方法。

Epoch:它代表對(duì)整個(gè)訓(xùn)練數(shù)據(jù)集(放入訓(xùn)練模型的所有內(nèi)容)的一次迭代。

Batch:這是指由于計(jì)算量大的問題,我們無法一次將整個(gè)數(shù)據(jù)集傳遞到神經(jīng)網(wǎng)絡(luò)中,因此我們將數(shù)據(jù)集分成幾批。

迭代: 讓我們有 10,000 張圖像作為我們的訓(xùn)練數(shù)據(jù)集,我們選擇批量大小為 200。那么一個(gè) epoch 應(yīng)該運(yùn)行(10000/200)次迭代,即 50 次迭代。

24、假設(shè)我們有一個(gè)感知器,其權(quán)重對(duì)應(yīng)于三個(gè)輸入具有以下值:

W1 = 2;w2 =?4;w3 = 1單元的激活由階躍函數(shù)給出:φ(v) = 1 如果 v≥0否則為 0為以下每個(gè)輸入模式計(jì)算給定感知器的輸出值 y:解決方案:要計(jì)算每個(gè)給定模式的輸出值 y,我們必須遵循以下兩個(gè)步驟:a) 計(jì)算加權(quán)和:v = Σ i (w  i  x  i  )= w  i  ·x  i  +w  i  ·x  i  +w  i  ·x ib) 將激活函數(shù)應(yīng)用于 v。

每個(gè)輸入模式的計(jì)算是:

P  1 : v = 2·1?4·0+1·0=2, (2>0), y=φ(2)=1

P  2 : v = 2·0?4·1+1·1=?3, (?3<0), y=φ(?3)=0

P  3 : v = 2·1?4·0+1·1=3, (3>0), y=φ(3)=1

P  4 : v = 2·1?4·1+1·1=?1, (?1<0), y=φ(?1)=0

25、考慮一個(gè)前饋神經(jīng)網(wǎng)絡(luò),它具有2個(gè)輸入(label -1和label** -2),并具有全連接層,而我們有2個(gè)隱藏層:

隱藏層 1:標(biāo)記為 3 和 4 的節(jié)點(diǎn)

隱藏層 2:標(biāo)記為 5 和 6 的節(jié)點(diǎn)節(jié)點(diǎn) i 和 j 之間連接的權(quán)重由 w ij表示,例如 w24是節(jié)點(diǎn) 2 和 4 之間連接的權(quán)重。以下列表包含給定網(wǎng)絡(luò)中使用的所有權(quán)重值:w 13=-2, w 35 =1, w 23 = 3, w 45= -1, w  14 = 4, w 36 = -1, w 24 = -1, w 46=1節(jié)點(diǎn) 3、4、5 和 6 中的每一個(gè)都使用以下激活函數(shù):φ(v) = 1 如果 v≥0 否則 0其中 v 表示節(jié)點(diǎn)的加權(quán)和。每個(gè)輸入節(jié)點(diǎn)(1 和 2)只能接收二進(jìn)制值(0 或 1)。計(jì)算網(wǎng)絡(luò)的輸出(y  5和y 6),輸入模式由(node-1 和node-2 分別為0, 0)給出。

解決方案

要找到網(wǎng)絡(luò)的輸出,需要計(jì)算隱藏節(jié)點(diǎn) 3 和 4 的加權(quán)和:v3 =w13 x1 +w23 x2,v4 =w14 x1 +w24 x2然后使用激活函數(shù) φ 找到隱藏節(jié)點(diǎn)的輸出:y 3 =φ(v3 ),y4 =φ(v4 )。使用隱藏節(jié)點(diǎn) y3和 y4的輸出作為輸出層(節(jié)點(diǎn) 5 和 6)的輸入值,并找到輸出節(jié)點(diǎn) 5 和 6 的加權(quán)和:v5 =w35 y3 +w45 y4,v6 =w36y3 +w46 y4。最后,找到節(jié)點(diǎn)5和6的輸出(也使用φ):y5=φ(v5),y6=φ(v6)。輸出模式將為 (y5 , y6 )。對(duì)給定的輸入執(zhí)行此計(jì)算 – 輸入模式 (0, 0)v3 =?2·0+3·0=0, y3 =φ(0)=1v4 = 4·0?1·0 = 0,y4 =φ(0)= 1v5 =1·1?1·1=0, y5 =φ(0)=1v6 =?1·1+1·1=0, y6 =φ(0)=1因此,對(duì)于給定的輸入模式,網(wǎng)絡(luò)的輸出是 (1, 1)。

尾注

謝謝閱讀!希望你喜歡這些問題,并能夠測(cè)試你對(duì)人工神經(jīng)網(wǎng)絡(luò)的了解。

聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評(píng)論

暫無評(píng)論

    掃碼關(guān)注公眾號(hào)
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯(cuò)
    x
    *文字標(biāo)題:
    *糾錯(cuò)內(nèi)容:
    聯(lián)系郵箱:
    *驗(yàn) 證 碼:

    粵公網(wǎng)安備 44030502002758號(hào)