人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1

(1)人工神經(jīng)網(wǎng)絡(luò)的魯棒性和應(yīng)用:

人工神經(jīng)網(wǎng)絡(luò)(ANN)對(duì)訓(xùn)練數(shù)據(jù)中的錯(cuò)誤具有魯棒性,并且已經(jīng)成功應(yīng)用于學(xué)習(xí)各種函數(shù),包括解釋視覺(jué)場(chǎng)景、語(yǔ)音識(shí)別和學(xué)習(xí)機(jī)器人控制策略等問(wèn)題。

(2)生物神經(jīng)網(wǎng)絡(luò)與人工神經(jīng)網(wǎng)絡(luò)的靈感來(lái)源:

人工神經(jīng)網(wǎng)絡(luò)的研究部分受到大腦中復(fù)雜交織的神經(jīng)元網(wǎng)絡(luò)的啟發(fā)。人腦包含大約10^11到10^12個(gè)神經(jīng)元,每個(gè)神經(jīng)元平均連接到10^4到10^5個(gè)其他神經(jīng)元。因此,人腦平均需要大約10^-1秒的時(shí)間來(lái)做出復(fù)雜的決策。

(3)人工神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu):

人工神經(jīng)網(wǎng)絡(luò)通常由大量簡(jiǎn)單單元組成,這些單元密集地相互連接。每個(gè)單元接收多個(gè)實(shí)值輸入并產(chǎn)生單個(gè)實(shí)值輸出。盡管如此,人工神經(jīng)網(wǎng)絡(luò)并不完全模仿生物神經(jīng)系統(tǒng)的復(fù)雜性。

(4)生物神經(jīng)元與人工神經(jīng)元的差異:

生物神經(jīng)元的主要組成部分包括軸突、樹(shù)突和突觸。

人工神經(jīng)元?jiǎng)t通過(guò)權(quán)重來(lái)模擬這些生物組成部分的功能。

生物神經(jīng)元

人工神經(jīng)元

主要成分:軸突、樹(shù)突、突觸

主要成分:軸突、樹(shù)突、突觸

來(lái)自其他神經(jīng)元的信息以電脈沖的形式進(jìn)入樹(shù)突,通過(guò)稱(chēng)為突觸的連接點(diǎn)接收。信息從樹(shù)突流向細(xì)胞進(jìn)行處理。輸出信號(hào)(脈沖的序列)隨后沿著軸突傳送到其他神經(jīng)元的突觸。

神經(jīng)元的排列和連接組成網(wǎng)絡(luò),共有三層。第一層稱(chēng)為輸入層,是唯一暴露于外部信號(hào)的層。輸入層將信號(hào)傳遞給下一層的神經(jīng)元,該層稱(chēng)為隱藏層。隱藏層從接收的信號(hào)中提取相關(guān)特征或模式。這些被認(rèn)為重要的特征或模式隨后被轉(zhuǎn)發(fā)到輸出層,輸出層是網(wǎng)絡(luò)的最后一層。

突觸能夠增強(qiáng)或減弱連接的強(qiáng)度。這是信息存儲(chǔ)的地方。

人工信號(hào)可以通過(guò)權(quán)重進(jìn)行改變,類(lèi)似于突觸中發(fā)生的物理變化。

約有10^11個(gè)神經(jīng)元。

當(dāng)前技術(shù)下有10^2到10^4個(gè)神經(jīng)元。

(5)人腦與計(jì)算機(jī)處理信息的差異:

人腦(生物神經(jīng)網(wǎng)絡(luò))

計(jì)算機(jī)(人工神經(jīng)網(wǎng)絡(luò))

人腦是異步工作的

計(jì)算機(jī)(ANN)是同步工作的

生物神經(jīng)元計(jì)算速度較慢(每次計(jì)算幾毫秒)

人工神經(jīng)元計(jì)算速度較快(每次計(jì)算少于1納秒)

大腦以分布式方式表示信息,因?yàn)樯窠?jīng)元是不可靠的,可能隨時(shí)會(huì)死(失效)

在計(jì)算機(jī)程序中,每一位必須按預(yù)期功能工作,否則程序會(huì)崩潰

我們的大腦會(huì)隨著時(shí)間的推移改變連接性,以表示新的信息和對(duì)我們施加的要求

計(jì)算機(jī)中的電子組件連接性不會(huì)改變,除非替換組件

生物神經(jīng)網(wǎng)絡(luò)具有復(fù)雜的拓?fù)浣Y(jié)構(gòu)

人工神經(jīng)網(wǎng)絡(luò)通常采用樹(shù)形結(jié)構(gòu)

研究人員仍在探索大腦是如何學(xué)習(xí)的

人工神經(jīng)網(wǎng)絡(luò)使用梯度下降法進(jìn)行學(xué)習(xí)

(6)人工神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì):

ANN可以處理由多個(gè)屬性-值對(duì)表示的實(shí)例。

ANN用于目標(biāo)函數(shù)輸出可能是離散值、實(shí)值或多個(gè)實(shí)值或離散值向量的問(wèn)題。

ANN學(xué)習(xí)方法對(duì)訓(xùn)練數(shù)據(jù)中的噪聲非常魯棒。訓(xùn)練示例可能包含錯(cuò)誤,但這不會(huì)影響最終輸出。

通常在需要快速評(píng)估學(xué)習(xí)目標(biāo)函數(shù)的情況下使用ANN。

ANN可以承受長(zhǎng)時(shí)間的訓(xùn)練,這取決于網(wǎng)絡(luò)中的權(quán)重?cái)?shù)量、考慮的訓(xùn)練示例數(shù)量以及各種學(xué)習(xí)算法參數(shù)的設(shè)置。

(7)McCulloch-Pitts神經(jīng)元模型:

這是由Warren McCulloch和Walter Pitts在1943年提出的人工神經(jīng)元的早期模型,也稱(chēng)為線性閾值門(mén)。這些神經(jīng)元通過(guò)直接加權(quán)路徑連接。連接路徑可以是興奮性的和抑制性的。

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖1

這部分指的是從節(jié)點(diǎn)x1到x2,一直到xn的連接權(quán)重是興奮性的(exhibitory),用符號(hào)‘w’來(lái)表示。興奮性連接意味著當(dāng)這些節(jié)點(diǎn)被激活時(shí),它們會(huì)增強(qiáng)下一個(gè)節(jié)點(diǎn)的激活狀態(tài)。節(jié)點(diǎn)Xn+1到Xn+2,一直到Xn+m的連接權(quán)重是抑制性的(inhibitory),用符號(hào)‘-p’來(lái)表示。抑制性連接意味著當(dāng)這些節(jié)點(diǎn)被激活時(shí),它們會(huì)減少下一個(gè)節(jié)點(diǎn)的激活狀態(tài)。

McCulloch-Pitts神經(jīng)元模型和單層神經(jīng)網(wǎng)絡(luò)(感知器)。

1.McCulloch-Pitts神經(jīng)元模型

這個(gè)模型是最早的人工神經(jīng)元模型之一,由Warren McCulloch和Walter Pitts在1943年提出。

該模型的激活函數(shù)定義如下:

? 當(dāng)神經(jīng)元Y的總凈輸入信號(hào)(yin)大于或等于閾值(Θ)時(shí),激活函數(shù)f(yin)的輸出為1。

? 當(dāng)神經(jīng)元Y的總凈輸入信號(hào)(yin)小于閾值(Θ)時(shí),激活函數(shù)f(yin)的輸出為0。

總凈輸入信號(hào)(yin)是所有輸入信號(hào)(xi)與其對(duì)應(yīng)權(quán)重(wi)的乘積之和。

f(yin) = 1 if yin >= Θ    輸入yin = Σxiwi

    0 if yin < Θ

McCulloch-Pitts神經(jīng)元會(huì)在接收到k個(gè)或更多興奮性輸入且沒(méi)有抑制性輸入時(shí)被激活,其中k是某個(gè)閾值,w是輸入權(quán)重。

Kw >= Θ > (K-1)w

3. 單層神經(jīng)網(wǎng)絡(luò)(感知器)

輸入是多維的,可以是一個(gè)向量,例如:x = (I1,I2,...,In)。

輸入節(jié)點(diǎn)(或單元)通常完全連接到下一層的一個(gè)節(jié)點(diǎn)(或多個(gè)節(jié)點(diǎn))。

下一層的節(jié)點(diǎn)會(huì)計(jì)算所有輸入的加權(quán)和,即:SummedInput = ∑iwiIi。

輸出節(jié)點(diǎn)有一個(gè)“閾值”t。如果加權(quán)和大于或等于閾值t,則輸出y為1(“激活”或“激發(fā)”);如果加權(quán)和小于閾值t,則輸出y為0(不激活)。

用數(shù)學(xué)表達(dá)式表示為:

? 如果∑iwiIi ≥ t,則y = 1。

? 否則(如果∑iwiIi < t),則y = 0。

這些概念是人工神經(jīng)網(wǎng)絡(luò)的基礎(chǔ),它們幫助我們理解神經(jīng)元如何處理信息并做出決策。McCulloch-Pitts模型和感知器都是線性分類(lèi)器,意味著它們只能處理線性可分的數(shù)據(jù)集。對(duì)于更復(fù)雜的非線性問(wèn)題,需要使用多層神經(jīng)網(wǎng)絡(luò)。

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖2

圖 3布爾函數(shù)和感知器

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖3

圖 4單層感知器

在神經(jīng)網(wǎng)絡(luò)中,響應(yīng)單元接收的輸入數(shù)據(jù)是由前一個(gè)單元(關(guān)聯(lián)器單元)處理后的結(jié)果,這個(gè)結(jié)果通常是一個(gè)二進(jìn)制形式的向量。

輸入層由多個(gè)輸入神經(jīng)元組成,每個(gè)神經(jīng)元對(duì)應(yīng)一個(gè)輸入變量(如x1,x2,...,xi,...,xn)。此外,通常還會(huì)加入一個(gè)常數(shù)偏置神經(jīng)元,其值固定為1,這是為了在計(jì)算中引入偏置項(xiàng),以便網(wǎng)絡(luò)能夠?qū)W習(xí)到數(shù)據(jù)中的偏差。

在神經(jīng)網(wǎng)絡(luò)中,輸入神經(jīng)元與輸出神經(jīng)元之間通過(guò)一系列的權(quán)重連接。這些權(quán)重決定了輸入信號(hào)對(duì)輸出信號(hào)的影響程度,是神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)過(guò)程中需要調(diào)整的參數(shù)。通過(guò)改變這些權(quán)重,網(wǎng)絡(luò)可以學(xué)習(xí)到如何從輸入數(shù)據(jù)中提取特征并做出預(yù)測(cè)。

(8)Artificial Neural Networks算法

下面是對(duì)這個(gè)算法步驟的解釋?zhuān)?/p>

第1步:

初始化權(quán)重和偏置:在開(kāi)始訓(xùn)練之前,需要設(shè)置網(wǎng)絡(luò)中每個(gè)連接的權(quán)重(wi)和每個(gè)神經(jīng)元的偏置(b)。同時(shí),需要設(shè)定一個(gè)學(xué)習(xí)率α,這是一個(gè)介于0和1之間的數(shù)值,用于控制權(quán)重更新的步長(zhǎng)。

第2步:

循環(huán)直到滿足停止條件:算法會(huì)持續(xù)迭代,直到達(dá)到某個(gè)停止條件,比如達(dá)到最大迭代次數(shù)或者網(wǎng)絡(luò)輸出的錯(cuò)誤率低于某個(gè)閾值。

第3步:

對(duì)每對(duì)訓(xùn)練數(shù)據(jù)執(zhí)行以下步驟:對(duì)于每對(duì)輸入和目標(biāo)輸出(通常稱(chēng)為訓(xùn)練樣本或訓(xùn)練對(duì)),執(zhí)行以下步驟。

第4步:

設(shè)置輸入單元的激活值:將輸入數(shù)據(jù)賦值給輸入單元,這里用Xi表示第i個(gè)輸入單元的激活值,Sj表示輸入數(shù)據(jù)。

Xi =Sj for 1 to n

第5步:

計(jì)算輸出單元的響應(yīng):計(jì)算輸出單元的凈輸入值(yin),這是通過(guò)將輸入單元的激活值與對(duì)應(yīng)的權(quán)重相乘后求和,再加上偏置b得到的。然后使用激活函數(shù)來(lái)確定輸出單元的輸出值y。

y=f(yin) = 1 if yin > Θ

0 if -Θ<= yin <= Θ

1 if yin < -Θ

第6步:

更新權(quán)重和偏置:如果輸出單元的實(shí)際輸出y與目標(biāo)輸出t不一致,并且輸入單元的激活值xi不為零,則根據(jù)誤差和學(xué)習(xí)率更新權(quán)重和偏置。如果一致,則保持權(quán)重和偏置不變。

if t ≠ y并且xi非零

wi(new) = wi(old) + αtxi

b(new) = b(old) + αt

else

wi(new) = wi(old)

b(new) = b(old)

第7步:

測(cè)試停止條件:檢查是否滿足停止條件,如果滿足,則停止訓(xùn)練;如果不滿足,則返回步驟3繼續(xù)訓(xùn)練。

(9)Perceptron的限制

1.由于硬極限傳遞函數(shù),感知器的輸出值只能采用兩個(gè)值(0 或 1)中的一個(gè)。

2.Perceptron 只能對(duì)線性可分的向量集進(jìn)行分類(lèi)。如果可以繪制一條直線或平面來(lái)將輸入向量分成正確的類(lèi)別,則輸入向量是線性可分的。如果向量不是線性可分的,則學(xué)習(xí)將永遠(yuǎn)不會(huì)達(dá)到所有向量都正確分類(lèi)的點(diǎn)。布爾函數(shù) XOR 不是線性可分的(它的正實(shí)例和負(fù)實(shí)例不能用線或超平面分隔)。因此,單層感知器永遠(yuǎn)無(wú)法計(jì)算 XOR 函數(shù)。這是一個(gè)很大的缺點(diǎn),曾經(jīng)導(dǎo)致神經(jīng)網(wǎng)絡(luò)領(lǐng)域停滯不前。但這已經(jīng)通過(guò)多層解決了。

(10)什么是多層網(wǎng)絡(luò)

多層神經(jīng)網(wǎng)絡(luò):多層感知器(MLP)或多層神經(jīng)網(wǎng)絡(luò)包含一個(gè)或多個(gè)隱藏層(除了一個(gè)輸入層和一個(gè)輸出層)。雖然單層感知器只能學(xué)習(xí)線性函數(shù),但多層感知器也可以學(xué)習(xí)非線性函數(shù)。該神經(jīng)元將 x1,x2,....,x3(和+1偏置項(xiàng))作為輸入,并輸出f(總輸入量+偏置),其中f(.)稱(chēng)為激活函數(shù)。Bias 的主要功能是為每個(gè)節(jié)點(diǎn)提供一個(gè)可訓(xùn)練的常量值(除了節(jié)點(diǎn)接收的正常輸入之外)。每個(gè)激活函數(shù)(或非線性)都采用一個(gè)數(shù)字并對(duì)其執(zhí)行某個(gè)固定的數(shù)學(xué)運(yùn)算。在實(shí)踐中可能會(huì)遇到幾種激活函數(shù):

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖4

首先,它提到了一個(gè)神經(jīng)元接收輸入x1,x2,…,x3(以及一個(gè)+1的偏置項(xiàng)),然后輸出f(summed inputs+bias),其中f是激活函數(shù)。這里的“偏置”(bias)的主要作用是為每個(gè)節(jié)點(diǎn)提供一個(gè)可訓(xùn)練的常數(shù)值,這個(gè)值是除了節(jié)點(diǎn)接收的正常輸入之外的。

幾種在實(shí)踐中可能遇到的激活函數(shù):

1.Sigmoid函數(shù):它接受一個(gè)實(shí)數(shù)值作為輸入,并將輸出壓縮到0和1之間。Sigmoid函數(shù)的數(shù)學(xué)表達(dá)式是:

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖5

這個(gè)函數(shù)在二分類(lèi)問(wèn)題中常用作輸出層的激活函數(shù)。

2.tanh函數(shù):它也接受一個(gè)實(shí)數(shù)值作為輸入,并將輸出壓縮到-1和1之間。tanh函數(shù)的數(shù)學(xué)表達(dá)式是:

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖6

這個(gè)函數(shù)的形狀類(lèi)似于Sigmoid,但是輸出值的范圍是-1到1,這使得它在某些情況下比Sigmoid函數(shù)更受歡迎。

3.ReLU函數(shù):ReLU代表修正線性單元。它接受一個(gè)實(shí)數(shù)值作為輸入,并將所有負(fù)值替換為0。ReLU函數(shù)的數(shù)學(xué)表達(dá)式是:

  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡(jiǎn)稱(chēng)ANNs)-1的圖7

這個(gè)函數(shù)在隱藏層中非常流行,因?yàn)樗軌蚣铀偕窠?jīng)網(wǎng)絡(luò)的訓(xùn)練,并且減輕梯度消失問(wèn)題。

這些激活函數(shù)都是非線性的,它們使得神經(jīng)網(wǎng)絡(luò)能夠?qū)W習(xí)和執(zhí)行復(fù)雜的任務(wù)。在構(gòu)建神經(jīng)網(wǎng)絡(luò)時(shí),選擇正確的激活函數(shù)對(duì)于網(wǎng)絡(luò)的性能至關(guān)重要。


登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺(tái)客服

TOP

1
1