人工神經(jīng)網(wǎng)絡(luò)算法(基礎(chǔ)精講).ppt
《人工神經(jīng)網(wǎng)絡(luò)算法(基礎(chǔ)精講).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《人工神經(jīng)網(wǎng)絡(luò)算法(基礎(chǔ)精講).ppt(67頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
人工神經(jīng)網(wǎng)絡(luò),二〇一五年十二月,目 錄,2,一、人工神經(jīng)網(wǎng)絡(luò)的 基本概念,3,一、人工神經(jīng)網(wǎng)絡(luò)的 基本概念,4,人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,即ANN)可以概括的定義為: 由大量具有適應(yīng)性的處理元素(神經(jīng)元)組成的廣泛并行互聯(lián)網(wǎng)絡(luò),它的組織能夠模擬生物神經(jīng)系統(tǒng)對(duì)真實(shí)世界物體所作出的交互反應(yīng),是模擬人工智能的一條重要途徑。人工神經(jīng)網(wǎng)絡(luò)與人腦相似性主要表現(xiàn)在: ①神經(jīng)網(wǎng)絡(luò)獲取的知識(shí)是從外界環(huán)境學(xué)習(xí)得來的; ②各神經(jīng)元的連接權(quán),即突觸權(quán)值,用于儲(chǔ)存獲取的知識(shí)。 神經(jīng)元是神經(jīng)網(wǎng)絡(luò)的基本處理單元,它是神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)基礎(chǔ)。神經(jīng)元是以生物的神經(jīng)系統(tǒng)的神經(jīng)細(xì)胞為基礎(chǔ)的生物模型。在人們對(duì)生物神經(jīng)系統(tǒng)進(jìn)行研究,以探討人工智能的機(jī)制時(shí),把神經(jīng)元數(shù)學(xué)化,從而產(chǎn)生了神經(jīng)元數(shù)學(xué)模型。因此,要了解人工神經(jīng)模型就必須先了解生物神經(jīng)元模型。,1.1人工神經(jīng)網(wǎng)絡(luò)發(fā)展簡(jiǎn)史,5,最早的研究可以追溯到20世紀(jì)40年代。1943年,心理學(xué)家McCulloch和數(shù)學(xué)家Pitts合作提出了形式神經(jīng)元的數(shù)學(xué)模型。這一模型一般被簡(jiǎn)稱M-P神經(jīng)網(wǎng)絡(luò)模型,至今仍在應(yīng)用,可以說,人工神經(jīng)網(wǎng)絡(luò)的研究時(shí)代,就由此開始了。 1949年,心理學(xué)家Hebb提出神經(jīng)系統(tǒng)的學(xué)習(xí)規(guī)則,為神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法奠定了基礎(chǔ)?,F(xiàn)在,這個(gè)規(guī)則被稱為Hebb規(guī)則,許多人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)還遵循這一規(guī)則。 1957年,F(xiàn).Rosenblatt提出“感知器”(Perceptron)模型,第一次把神經(jīng)網(wǎng)絡(luò)的研究從純理論的探討付諸工程實(shí)踐,掀起了人工神經(jīng)網(wǎng)絡(luò)研究的第一次高潮。,1.1人工神經(jīng)網(wǎng)絡(luò)發(fā)展簡(jiǎn)史,6,20世紀(jì)60年代以后,數(shù)字計(jì)算機(jī)的發(fā)展達(dá)到全盛時(shí)期,人們誤以為數(shù)字計(jì)算機(jī)可以解決人工智能、專家系統(tǒng)、模式識(shí)別問題,而放松了對(duì)“感知器”的研究。于是,從20世紀(jì)60年代末期起,人工神經(jīng)網(wǎng)絡(luò)的研究進(jìn)入了低潮。 1982年,美國(guó)加州工學(xué)院物理學(xué)家Hopfield提出了離散的神經(jīng)網(wǎng)絡(luò)模型,標(biāo)志著神經(jīng)網(wǎng)絡(luò)的研究又進(jìn)入了一個(gè)新高潮。1984年,Hopfield又提出連續(xù)神經(jīng)網(wǎng)絡(luò)模型,開拓了計(jì)算機(jī)應(yīng)用神經(jīng)網(wǎng)絡(luò)的新途徑。 1986年,Rumelhart和Meclelland提出多層網(wǎng)絡(luò)的誤差反傳(back propagation)學(xué)習(xí)算法,簡(jiǎn)稱BP算法。BP算法是目前最為重要、應(yīng)用最廣的人工神經(jīng)網(wǎng)絡(luò)算法之一。,1.2生物神經(jīng)元結(jié)構(gòu),7,生物神經(jīng)元結(jié)構(gòu) (1)細(xì)胞體: 細(xì)胞核、細(xì)胞質(zhì)和細(xì)胞膜。 (2)樹突:胞體短而多分枝的突起。相當(dāng)于神經(jīng)元的輸入端。 (3)軸突:胞體上最長(zhǎng)枝的突起,也稱神經(jīng)纖維。端部有很多神經(jīng)末稍傳出神經(jīng)沖動(dòng)。,1.2生物神經(jīng)元結(jié)構(gòu),,(4)突觸:神經(jīng)元間的連接接口,每個(gè)神經(jīng)元約有1萬(wàn)~10萬(wàn)個(gè)突觸。神經(jīng)元通過其軸突的神經(jīng)末稍,經(jīng)突觸與另一神經(jīng)元的樹突聯(lián)接,實(shí)現(xiàn)信息的傳遞。由于突觸的信息傳遞特性是可變的,形成了神經(jīng)元間聯(lián)接的柔性,稱為結(jié)構(gòu)的可塑性。,突觸結(jié)構(gòu)示意圖,1.3生物神經(jīng)元的信息處理機(jī)理,9,神經(jīng)元的興奮與抑制 當(dāng)傳入神經(jīng)元沖動(dòng),經(jīng)整和使細(xì)胞膜電位升高,超過動(dòng)作電位的閾值時(shí),為興奮狀態(tài),產(chǎn)生神經(jīng)沖動(dòng),由軸突經(jīng)神經(jīng)末稍傳出。當(dāng)傳入神經(jīng)元的沖動(dòng),經(jīng)整和,使細(xì)胞膜電位降低,低于閾值時(shí),為抑制狀態(tài),不產(chǎn)生神經(jīng)沖動(dòng)。,生物神經(jīng)元的特點(diǎn),,,,生物神經(jīng)元的特點(diǎn):,1.4生物神經(jīng)元的特點(diǎn),1.5人工神經(jīng)元模型,11,,神經(jīng)元模型 從神經(jīng)元的特性和功能可以知道,神經(jīng)元相當(dāng)于一個(gè)多輸入單輸出的信息處理單元,而且,它對(duì)信息的處理是非線性的,人工神經(jīng)元的模型如圖所示:,神經(jīng)元的n個(gè)輸入,對(duì)應(yīng)的連接權(quán)值,net=,閾值,輸出,激活函數(shù),12,上面的神經(jīng)元模型可以用一個(gè)數(shù)學(xué)表達(dá)式進(jìn)行抽象與概括,從而得到神經(jīng)元的數(shù)學(xué)模型:,1.5人工神經(jīng)元模型,神經(jīng)元的網(wǎng)絡(luò)輸入記為net,即 net=,13,有時(shí)為了方便起見,常把-?也看成是恒等于1的輸入X0 的權(quán)值,這時(shí)上面的數(shù)學(xué)模型可以寫成:,1.5人工神經(jīng)元模型,其中, W0=-? ; x0=1,14,神經(jīng)元的模型具有以下特點(diǎn): ①神經(jīng)元是一個(gè)多輸入、單輸出單元。 ②它具有非線性的輸入、輸出特性。 ③它具有可塑性,反應(yīng)在新突觸的產(chǎn)生和現(xiàn)有的神經(jīng)突觸的調(diào)整上,其塑性變化的部分主要是權(quán)值w的變化,這相當(dāng)于生物神經(jīng)元的突出部分的變化,對(duì)于激發(fā)狀態(tài),w取正直,對(duì)于抑制狀態(tài),w取負(fù)值。 ④神經(jīng)元的輸出和響應(yīng)是個(gè)輸入值的綜合作用的結(jié)果。 ⑤興奮和抑制狀態(tài),當(dāng)細(xì)胞膜電位升高超過閾值時(shí),細(xì)胞進(jìn)入興奮狀態(tài),產(chǎn)生神經(jīng)沖動(dòng);當(dāng)膜電位低于閾值時(shí),細(xì)胞進(jìn)入抑制狀態(tài)。,1.5人工神經(jīng)元模型,1.6激活函數(shù),15,神經(jīng)元的描述有多種,其區(qū)別在于采用了不同的激活函數(shù),不同的激活函數(shù)決定神經(jīng)元的不同輸出特性,常用的激活函數(shù)有如下幾種類型:,16,1.閾值型激活函數(shù) 閾值型激活函數(shù)是最簡(jiǎn)單的,前面提到的M-P模型就屬于這一類。其輸出狀態(tài)取二值(1、0或+1、-1),分別代表神經(jīng)元的興奮和抑制。,1.6激活函數(shù),當(dāng)f(x)取0或1時(shí),,17,,當(dāng)f(x)取1或-1時(shí),f(x)為下圖所示的sgn(符號(hào))函數(shù) sgn(x)=,1.6激活函數(shù),18,1.6激活函數(shù),2.S型激活函數(shù) 神經(jīng)元的狀態(tài)與輸入級(jí)之間的關(guān)系是在(0,1)內(nèi)連續(xù)取值的單調(diào)可微函數(shù),稱為S型函數(shù)。,雙極性S型函數(shù):,單極性S型函數(shù):,19,3.分段線性激活函數(shù) 分段線性激活函數(shù)的定義為:,1.6激活函數(shù),20,4.概率型激活函數(shù) 概率型激活函數(shù)的神經(jīng)元模型輸入和輸出的關(guān)系是不確定的,需要一種隨機(jī)函數(shù)來描述輸出狀態(tài)為1或?yàn)?的概率,設(shè)神經(jīng)元輸出(狀態(tài))為1的概率為:,1.6激活函數(shù),(其中,T為溫度函數(shù)),21,激活函數(shù)的基本作用表現(xiàn)在:,1.6激活函數(shù),控制輸入對(duì)輸出 的激活作用,將可能無限域的輸入變換成指定的有限范圍內(nèi)的輸出,對(duì)輸入、輸出進(jìn)行函數(shù)轉(zhuǎn)換,22,神經(jīng)網(wǎng)絡(luò)是由許多神經(jīng)元互相在一起所組成的神經(jīng)結(jié)構(gòu)。把神經(jīng)元之間相互作用關(guān)系進(jìn)行數(shù)學(xué)模型化就可以得到人工神經(jīng)網(wǎng)絡(luò)模型。 神經(jīng)元和神經(jīng)網(wǎng)絡(luò)的關(guān)系是元素與整體的關(guān)系。 人工神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元常稱為節(jié)點(diǎn)或處理單元,每個(gè)節(jié)點(diǎn)均具有相同的結(jié)構(gòu),其動(dòng)作在時(shí)間和空間上均同步。,1.7人工神經(jīng)網(wǎng)絡(luò)模型,人工神經(jīng)網(wǎng)絡(luò)模型,23,人工神經(jīng)網(wǎng)絡(luò)的基本屬性,1.7人工神經(jīng)網(wǎng)絡(luò)模型,24,神經(jīng)網(wǎng)絡(luò)模型 神經(jīng)元的連接方式不同,網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)也不同,人工神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)是決定人工神經(jīng)網(wǎng)絡(luò)特征的第二要素,根據(jù)神經(jīng)元之間連接的拓?fù)浣Y(jié)構(gòu)不同,可將人工神經(jīng)網(wǎng)絡(luò)分成兩類,即分層網(wǎng)絡(luò)和相互連接型網(wǎng)絡(luò)。,1.7人工神經(jīng)網(wǎng)絡(luò)模型,25,分層網(wǎng)絡(luò) 分層網(wǎng)絡(luò)將一個(gè)神經(jīng)網(wǎng)絡(luò)中的所有神經(jīng)元按功能分為若干層,一般有輸入層、中間層(隱藏層)和輸出層。 分層網(wǎng)絡(luò)按照信息的傳遞方向可分為前向式網(wǎng)絡(luò)(如圖a)和反饋網(wǎng)絡(luò)(如圖b、c)。,1.7人工神經(jīng)網(wǎng)絡(luò)模型,26,相互連接型網(wǎng)絡(luò) 相互連接型網(wǎng)絡(luò)是指網(wǎng)絡(luò)中任意單元之間都是可以相互雙向連接的。,1.7人工神經(jīng)網(wǎng)絡(luò)模型,上述的分類方法是對(duì)目前常見的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的概括和抽象,實(shí)際應(yīng)用的神經(jīng)網(wǎng)絡(luò)可能同時(shí)兼有其中的一種或幾種形式。,27,二、人工神經(jīng)網(wǎng)絡(luò)的 學(xué)習(xí)方法,28,2.1學(xué)習(xí)機(jī)理,學(xué)習(xí)機(jī)理 人工神經(jīng)網(wǎng)絡(luò)信息處理可以用數(shù)學(xué)過程來說明,這個(gè)過程可以分為兩個(gè)階段:執(zhí)行階段和學(xué)習(xí)階段。 學(xué)習(xí)是智能的基本特征之一,人工神經(jīng)網(wǎng)絡(luò)最具有吸引力的特點(diǎn)是它能從環(huán)境中學(xué)習(xí)的能力,并通過改變權(quán)值達(dá)到預(yù)期的目的。神經(jīng)網(wǎng)絡(luò)通過施加于它的權(quán)值和閾值調(diào)節(jié)的交互過程來學(xué)習(xí)它的環(huán)境,人工神經(jīng)網(wǎng)絡(luò)具有近似于與人類的學(xué)習(xí)能力,是其關(guān)鍵的方面之一。,29,2.2學(xué)習(xí)方法,學(xué)習(xí)方法 按照廣泛采用的分類方法,可以將神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法歸為三類:,,無導(dǎo)師學(xué)習(xí),,灌輸式學(xué)習(xí),,有導(dǎo)師學(xué)習(xí),,30,2.2學(xué)習(xí)方法,①有導(dǎo)師學(xué)習(xí) 有導(dǎo)師學(xué)習(xí)又稱為有監(jiān)督學(xué)習(xí),在學(xué)習(xí)時(shí)需要給出導(dǎo)師信號(hào)或稱為期望輸出。神經(jīng)網(wǎng)絡(luò)對(duì)外部環(huán)境是未知的,但可以將導(dǎo)師看做對(duì)外部環(huán)境的了解,由輸入-輸出樣本集合來表示。導(dǎo)師信號(hào)或期望響應(yīng)代表了神經(jīng)網(wǎng)絡(luò)執(zhí)行情況的最佳效果,即對(duì)于網(wǎng)絡(luò)輸入調(diào)整權(quán)值,使得網(wǎng)絡(luò)輸出逼近導(dǎo)師信號(hào)或期望輸出。,31,2.2學(xué)習(xí)方法,②無導(dǎo)師學(xué)習(xí) 無導(dǎo)師學(xué)習(xí)也稱無監(jiān)督學(xué)習(xí)。在學(xué)習(xí)過程中,需要不斷地給網(wǎng)絡(luò)提供動(dòng)態(tài)輸入信息(學(xué)習(xí)樣本),而不提供理想的輸出,網(wǎng)絡(luò)根據(jù)特有的學(xué)習(xí)規(guī)則,在輸入信息流中發(fā)現(xiàn)任何可能存在的模式和規(guī)律,同時(shí)能根據(jù)網(wǎng)絡(luò)的功能和輸入調(diào)整權(quán)值。,③灌輸式學(xué)習(xí) 灌輸式學(xué)習(xí)是指將網(wǎng)絡(luò)設(shè)計(jì)成記憶特別的例子,以后當(dāng)給定有關(guān)該例子的輸入信息時(shí),例子便被回憶起來。灌輸式學(xué)習(xí)中網(wǎng)絡(luò)的權(quán)值不是通過訓(xùn)練逐漸形成的,而是通過某種設(shè)計(jì)方法得到的。權(quán)值一旦設(shè)計(jì)好,即一次性“灌輸給神經(jīng)網(wǎng)絡(luò)不再變動(dòng),因此網(wǎng)絡(luò)對(duì)權(quán)值的”“學(xué)習(xí)”是“死記硬背”式的,而不是訓(xùn)練式的。,2.3學(xué)習(xí)規(guī)則,學(xué)習(xí)規(guī)則 在神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)中,各神經(jīng)元的連接權(quán)值需按一定的規(guī)則調(diào)整,這種權(quán)值調(diào)整規(guī)則稱為學(xué)習(xí)規(guī)則。下面介紹幾種常見的學(xué)習(xí)規(guī)則。,33,2.3學(xué)習(xí)規(guī)則,1.Hebb學(xué)習(xí)規(guī)則 當(dāng)神經(jīng)元i與神經(jīng)元j同時(shí)處于興奮狀態(tài)時(shí),在神經(jīng)網(wǎng)絡(luò)中表現(xiàn)為連接權(quán)增加 。根據(jù)該假設(shè)定義權(quán)值調(diào)整的方法,稱為Hebb學(xué)習(xí)規(guī)則。Hebb學(xué)習(xí)規(guī)則的數(shù)學(xué)描述: 假設(shè)oi(n)和oj(n)是神經(jīng)元i和j在時(shí)刻n的狀態(tài)反應(yīng),Wij(n)表示時(shí)刻n時(shí),連接神經(jīng)元i和神經(jīng)元j的權(quán)值,△Wij(n)表示從時(shí)刻n到時(shí)刻n+1時(shí)連接神經(jīng)元i和神經(jīng)元j權(quán)值的改變量,則,其中,η是正常數(shù),它決定了在學(xué)習(xí)過程中從一個(gè)步驟到另一個(gè)步驟的學(xué)習(xí)速率,稱為學(xué)習(xí)效率,34,2.3學(xué)習(xí)規(guī)則,2.Delta(δ)學(xué)習(xí)規(guī)則 Delta學(xué)習(xí)規(guī)則是最常用的學(xué)習(xí)規(guī)則,其要點(diǎn)是通過改變神經(jīng)元之間的連接權(quán)來減小系統(tǒng)實(shí)際輸出與理想輸出的誤差。假設(shè)n時(shí)刻輸出誤差準(zhǔn)則函數(shù)如下:,其中, Ok=f(netk)為實(shí)際輸出;yk代表理想輸出;W是網(wǎng)絡(luò)的所有權(quán)值組成權(quán)矩陣W=(wij);K為輸出個(gè)數(shù)。 使用梯度下降法調(diào)整權(quán)值W,使誤差準(zhǔn)則函數(shù)最小,得到W的修正Delta規(guī)則為:,注:Delta學(xué)習(xí)規(guī)則只適用于線性可分函數(shù),無法用于多層網(wǎng)絡(luò),35,2.3學(xué)習(xí)規(guī)則,3.LMS學(xué)習(xí)規(guī)則 LMS學(xué)習(xí)規(guī)則又稱為最小均方差規(guī)則,其學(xué)習(xí)規(guī)則為:,注:LMS學(xué)習(xí)規(guī)則可以看成是Delta學(xué)習(xí)規(guī)則的一個(gè)特殊情況。,該學(xué)習(xí)規(guī)則具有學(xué)習(xí)速度快和精度高的特點(diǎn),權(quán)值可以初始化為任何值。,36,2.3學(xué)習(xí)規(guī)則,4.勝者為王學(xué)習(xí)規(guī)則 勝者為王(Winner-Take-All)學(xué)習(xí)規(guī)則是一種競(jìng)爭(zhēng)學(xué)習(xí)規(guī)則,用于無導(dǎo)師學(xué)習(xí)。一般將網(wǎng)絡(luò)的某一層確定為競(jìng)爭(zhēng)層,對(duì)于一個(gè)特定的輸入X,競(jìng)爭(zhēng)層的K個(gè)神經(jīng)元均有輸出響應(yīng),其中響應(yīng)值最大的神經(jīng)元j*為競(jìng)爭(zhēng)中獲勝的神經(jīng)元,即,只有獲勝的神經(jīng)元才有權(quán)調(diào)整其權(quán)向量Wj,調(diào)整量為:,其中,η為學(xué)習(xí)參數(shù)(0<η≤1),37,2.3學(xué)習(xí)規(guī)則,5.Kohonen學(xué)習(xí)規(guī)則 該規(guī)則只用于無導(dǎo)師指導(dǎo)下訓(xùn)練的網(wǎng)絡(luò)。在學(xué)習(xí)過程中,處理單元競(jìng)爭(zhēng)學(xué)習(xí)時(shí),具有高輸出的單元為勝利者,它有能力阻止它的競(jìng)爭(zhēng)者并激活相鄰的單元,只有勝利者才能有輸出,也只有勝利者與其相鄰單元可以調(diào)節(jié)權(quán)重。 在訓(xùn)練周期內(nèi),相鄰單元的規(guī)模是可變的。一般的方法是從定義較大的相鄰單元開始,在訓(xùn)練過程中不斷減少相鄰的范圍。勝利單元可定義為與輸入模式最為接近的單元。Kohonen網(wǎng)絡(luò)可以模擬輸入的分配,38,2.3學(xué)習(xí)規(guī)則,5.概率式學(xué)習(xí) 從統(tǒng)計(jì)學(xué)、分子熱力學(xué)和概率論中關(guān)于系統(tǒng)穩(wěn)態(tài)能量的標(biāo)準(zhǔn)出發(fā),進(jìn)行神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的方式稱為概率是學(xué)習(xí)。神經(jīng)網(wǎng)絡(luò)處于某一狀態(tài)的概率主要取決于在此狀態(tài)下的能量,能量越低,概率越大。概率式學(xué)習(xí)的典型代表是玻爾茲曼(Boltzmann)機(jī)學(xué)習(xí)規(guī)則。這是基于模擬退火的統(tǒng)計(jì)優(yōu)化算法。,39,三、前向式神經(jīng)網(wǎng)絡(luò)與算法,3.1感知器及算法,感知器 感知器是具有單層計(jì)算單元的神經(jīng)網(wǎng)絡(luò),由線性元件和閾值元件組成。感知器的結(jié)構(gòu)如下圖所示,其中X=( x1,x2 ,…,xn )為n個(gè)輸入,有m個(gè)輸出,即O=( o1 ,o2,.,om),W= (wij)n×m為連接權(quán)矩陣。,(wij)n×m為連接權(quán)矩陣,感知器結(jié)構(gòu),3.1感知器及算法,感知器的數(shù)學(xué)模型,3.1感知器及算法,感知器學(xué)習(xí)是有導(dǎo)師學(xué)習(xí)。感知器的訓(xùn)練算法來源于Hebb學(xué)習(xí)規(guī)則,其基本思想是:逐步地將樣本集中的樣本輸入到網(wǎng)絡(luò)中,根據(jù)輸出結(jié)果和理想輸出之間的差別來調(diào)整網(wǎng)絡(luò)中的權(quán)矩陣。,設(shè)網(wǎng)絡(luò)的輸入向量為X=( x1,x2 ,…,xn ), W=(wji)為網(wǎng)絡(luò)的連接權(quán)矩陣,網(wǎng)絡(luò)的訓(xùn)練樣本集為{(X,Y)丨X為輸入向量,Y為X對(duì)應(yīng)的輸出} 下面介紹多輸出感知器學(xué)習(xí)算法,3.1感知器及算法,多輸出感知器學(xué)習(xí)算法步驟如下: Step1 設(shè)置連接權(quán)W的初值。對(duì)權(quán)系數(shù)W=(wji)的各個(gè)元素置一個(gè)較小的隨機(jī)值。 Step2 輸入樣本X=( x1,x2 ,…,xn ),以及它的期望輸出 Y=( y1,y2 ,…,yn )。 Step3 計(jì)算感知器的實(shí)際輸出值,Step4 根據(jù)實(shí)際輸出求誤差,3.1感知器及算法,Step5 用誤差ej去調(diào)整權(quán)值,其中, Wji(n)是第n次調(diào)整連接權(quán)值;η稱為學(xué)習(xí)效率, 且0<η≤1,用于調(diào)整權(quán)值的調(diào)整速度。通常,η的取值不能太大,如果η的取值太大,則會(huì)影響Wji(n)的穩(wěn)定,η的取值太小則會(huì)使Wji(n)得收斂速度太慢。當(dāng)實(shí)際輸出和期望值y相同時(shí),有 Wji(n+1)=Wji(n)。,Step6 轉(zhuǎn)到step2,一直執(zhí)行到一切樣本均穩(wěn)定為止。,45,3.1感知器及算法,注1:上述算法涉及循環(huán)控制問題,常用的方法有: (1)循環(huán)次數(shù)控制法。對(duì)樣本集進(jìn)執(zhí)行規(guī)定次數(shù)的迭代。 (2)分階段迭代次數(shù)控制法。設(shè)定一個(gè)基本的迭代次數(shù)N,每當(dāng)訓(xùn)練完成N次迭代后,就給出一個(gè)中間結(jié)果。 (3)精度控制法。給定一個(gè)精度控制參數(shù),精度度量可選擇: ①實(shí)際輸出向量與理想輸出向量的對(duì)應(yīng)分量的差的絕對(duì)值之和; ②實(shí)際輸出向量與理想輸出向量的歐氏距離之和; ③“死循環(huán)”:網(wǎng)絡(luò)無法表示樣本所代表的問題。 (4)綜合控制法。將上述三種方法結(jié)合起來使用。,46,3.1感知器及算法,注2:由于感知器的激活函數(shù)采用的是閾值函數(shù),輸出矢量只能取0或1,所以只能用它來解決簡(jiǎn)單的分類問題,它不是對(duì)所有的問題都適用。,注3:當(dāng)輸入矢量中有一個(gè)數(shù)比其他數(shù)都大或小很多時(shí),可能導(dǎo)致收斂速度較慢。,47,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP神經(jīng)網(wǎng)絡(luò) BP神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network),即誤差后向傳播神經(jīng)網(wǎng)絡(luò),是一種按誤差逆向傳播算法訓(xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的網(wǎng)絡(luò)模型之一。,BP網(wǎng)絡(luò)能學(xué)習(xí)和儲(chǔ)存大量輸入-輸出模式的映射關(guān)系,而無需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程。它的學(xué)習(xí)規(guī)則是使用最速下降法,通過后向傳播來不斷調(diào)整網(wǎng)絡(luò)權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)中出了有輸入層、輸出層外,還至少有一層隱藏層,每一層的神經(jīng)元輸出均傳送到下一層,而每層內(nèi)神經(jīng)元之間無連接。,48,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP神經(jīng)元的結(jié)構(gòu)模型與感知器模型類似,如下圖:,注:與感知器模型不同的是,BP網(wǎng)絡(luò)的激活函數(shù)f(·)要求是可微的,所以不能用二值函數(shù),常用S型的對(duì)數(shù)、正切函數(shù)或線性函數(shù)。,49,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP算法 BP算法由數(shù)據(jù)流的正向傳播和誤差信號(hào)的反向傳播兩個(gè)過程構(gòu)成。,1)正向傳播 設(shè)BP網(wǎng)絡(luò)的輸入層有n個(gè)節(jié)點(diǎn),隱藏層有q個(gè)節(jié)點(diǎn),輸出層有m個(gè)節(jié)點(diǎn),輸入層與隱藏層之間的權(quán)值為vki ,隱藏層與輸出層的權(quán)值為wjk,隱藏層的激活函數(shù)為f1(·),輸出層的激活函數(shù)為 f2(·),則隱藏層節(jié)點(diǎn)的輸出為,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,輸出層節(jié)點(diǎn)的輸出為:,至此,BP網(wǎng)絡(luò)完成了n維空間向量對(duì)m維空間的近似映射。,51,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,2)反向傳播 BP算法的實(shí)質(zhì)是求取誤差函數(shù)的最小值問題,這種算法采用的是非線性規(guī)劃中的最速下降法,按誤差函數(shù)的負(fù)梯度方向修改權(quán)值。,設(shè)訓(xùn)練樣本總數(shù)為P,用X1,X2,.,Xp來表示。第P個(gè)樣本輸入所得到實(shí)際輸出和理想輸出分別記為 采用理想輸出和實(shí)際輸出值差的平方和為誤差函數(shù),于是得到第P個(gè)樣本的誤差:,52,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,則P個(gè)樣本的總誤差為:,網(wǎng)絡(luò)誤差是各層權(quán)值的函數(shù),按照最速下降法,可得,輸出層各神經(jīng)元的權(quán)值和第n次輸出層權(quán)值的迭代公式分別為:,53,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,隱藏層各神經(jīng)元的權(quán)值和第n次隱藏層權(quán)值的迭代公式分別為:,求解的過程,,54,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP網(wǎng)絡(luò)學(xué)習(xí)算法的具體步驟如下: Step1 從訓(xùn)練樣本集中取某一樣本,把它的輸入信息輸入到網(wǎng)絡(luò)中。 Step2 由網(wǎng)絡(luò)正向計(jì)算出各層節(jié)點(diǎn)的輸出。 Step3 計(jì)算網(wǎng)絡(luò)的實(shí)際輸出和期望輸出的誤差。 Step4 從輸出層開始反向計(jì)算到第一個(gè)隱藏層,按一定的原則向減少誤差方向調(diào)整整個(gè)網(wǎng)絡(luò)的各個(gè)連接權(quán)值。 Step5 對(duì)訓(xùn)練樣本集中的每一個(gè)樣本重復(fù)上述步驟,直到對(duì)整個(gè)網(wǎng)絡(luò)訓(xùn)練樣本集的誤差達(dá)到要求為止。,55,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,設(shè)三層BP網(wǎng)絡(luò),則其算法可描述為:,A 初始化連接權(quán)值vki 和wjk; B 初始化精度控制系數(shù)?; C E= ?+1; E while E> ? do E.1 E=0 E.2 對(duì)S中的每一個(gè)樣本(Xp,Yp) E.2.1 計(jì)算出Xp,對(duì)應(yīng)的實(shí)際輸出op; E.2.2 計(jì)算出Ep; E.2.3 E=E+ Ep; E.2.4 根據(jù) 調(diào)整輸出層的權(quán)值wjk(n); E.2.4 根據(jù) 調(diào)整輸出層的權(quán)值vki(n); E.3 E=E/2.0,56,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP網(wǎng)絡(luò)的優(yōu)點(diǎn):,1) 非線性映射能力:BP神經(jīng)網(wǎng)絡(luò)實(shí)質(zhì)上實(shí)現(xiàn)了一個(gè)從輸入到輸出的映射功能,數(shù)學(xué)理論證明三層的神經(jīng)網(wǎng)絡(luò)就能夠以任意精度逼近任何非線性連續(xù)函數(shù)。 2) 自學(xué)習(xí)和自適應(yīng)能力:BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時(shí),能夠通過學(xué)習(xí)自動(dòng)提取輸出、輸出數(shù)據(jù)間的“合理規(guī)則”,并自適應(yīng)的將學(xué)習(xí)內(nèi)容記憶于網(wǎng)絡(luò)的權(quán)值中。 3) 泛化能力:所謂泛化能力是指在設(shè)計(jì)模式分類器時(shí),即要考慮網(wǎng)絡(luò)在保證對(duì)所需分類對(duì)象進(jìn)行正確分類,還要關(guān)心網(wǎng)絡(luò)在經(jīng)過訓(xùn)練后,能否對(duì)未見過的模式或有噪聲污染的模式,進(jìn)行正確的分類。 4) 容錯(cuò)能力:BP神經(jīng)網(wǎng)絡(luò)在其局部的或者部分的神經(jīng)元受到破壞后對(duì)全局的訓(xùn)練結(jié)果不會(huì)造成很大的影響,也就是說即使系統(tǒng)在受到局部損傷時(shí)還是可以正常工作的。,57,3.2 BP神經(jīng)網(wǎng)絡(luò)算法,BP網(wǎng)絡(luò)的缺點(diǎn):,1) 局部極小化問題: BP神經(jīng)網(wǎng)絡(luò)為一種局部搜索的優(yōu)化方法,它要解決的是一個(gè)復(fù)雜非線性化問題,這樣會(huì)使算法陷入局部極值,權(quán)值收斂到局部極小點(diǎn) 2) BP 神經(jīng)網(wǎng)絡(luò)算法的收斂速度慢:由于BP神經(jīng)網(wǎng)絡(luò)算法本質(zhì)上為梯度下降法,它所要優(yōu)化的目標(biāo)函數(shù)是非常復(fù)雜的,這使得BP算法低效; 3) BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)選擇不一:BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的選擇至今尚無一種統(tǒng)一而完整的理論指導(dǎo),一般只能由經(jīng)驗(yàn)選定。 4) BP神經(jīng)網(wǎng)絡(luò)樣本依賴性問題:網(wǎng)絡(luò)模型的逼近和推廣能力與學(xué)習(xí)樣本的典型性密切相關(guān),而從問題中選取典型樣本實(shí)例組成訓(xùn)練集是一個(gè)很困難的問題。,四、BP神經(jīng)網(wǎng)絡(luò)的應(yīng)用舉例 ( matlab實(shí)現(xiàn)),58,59,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,例一:,輸入向量 P = [0 1 2 3 4 5 6 7 8 9 10]; 期望輸出 T = [0 1 2 3 4 3 2 1 2 3 4];,創(chuàng)建兩層的BP網(wǎng)絡(luò),net = newff ( [0 10], [5 1], {'tansig', 'purelin'} ); Y = sim(net,P); plot(P,T,P,Y,'o'),輸出結(jié)果為: Y = -2.3431 -2.7532 -2.4510 -1.2784 -0.8590 -0.2981 0.2495 0.4811 1.0375 1.2268 1.4232,60,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,誤差很大!未訓(xùn)練,非線性映射能力差。,61,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,P = [0 1 2 3 4 5 6 7 8 9 10]; T = [0 1 2 3 4 3 2 1 2 3 4]; net = newff([0 10],[5 1],{'tansig' 'purelin'}); net.trainparam.show=50; %每次循環(huán)50次 net.trainParam.epochs = 500; %最大循環(huán)500次 net.trainparam.goal=0.01; %期望目標(biāo)誤差最小值 net = train(net,P,T); %對(duì)網(wǎng)絡(luò)進(jìn)行反復(fù)訓(xùn)練 Y = sim(net,P) plot(P,T,P,Y,'o'),修改程序:,62,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,輸出結(jié)果為: Y = 0.0005 1.0026 1.9947 3.0134 3.9429 3.1211 1.8482 1.1755 1.8568 3.1150 3.9595,63,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,例二:,下表為某藥品的銷售情況,現(xiàn)構(gòu)建一個(gè)如下的三層BP神經(jīng)網(wǎng)絡(luò)對(duì)藥品的銷售進(jìn)行預(yù)測(cè):輸入層有三個(gè)結(jié)點(diǎn),隱含層結(jié)點(diǎn)數(shù)為5,隱含層的激活函數(shù)為tansig;輸出層結(jié)點(diǎn)數(shù)為1個(gè),輸出層的激活函數(shù)為logsig,并利用此網(wǎng)絡(luò)對(duì)藥品的銷售量進(jìn)行預(yù)測(cè),預(yù)測(cè)方法采用滾動(dòng)預(yù)測(cè)方式,即用前三個(gè)月的銷售量來預(yù)測(cè)第四個(gè)月的銷售量,如用1、2、3月的銷售量為輸入預(yù)測(cè)第4個(gè)月的銷售量,用2、3、4月的銷售量為輸入預(yù)測(cè)第5個(gè)月的銷售量.如此反復(fù)直至滿足預(yù)測(cè)精度要求為止。,64,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,P= [ 0.5152 0.8173 1.0000 ; 0.8173 1.0000 0.7308 ; 1.0000 0.7308 0.1390 ; 0.7308 0.1390 0.1087 ; 0.1390 0.1087 0.3520 ; 0.1087 0.3520 0.0000;]'; T=[0.7308 0.1390 0.1087 0.3520 0.0000 0.3761]; %以第四個(gè)月的銷售量歸一化處理后作為目標(biāo)向量 net=newff([0 1;0 1;0 1],[5,1],{'tansig','logsig'},'traingd'); net.trainParam.epochs=15000; net.trainParam.goal=0.01; net=train(net,P,T); Y = sim(net,P) plot(P,T,P,Y,'o'),%以每三個(gè)月的銷售量經(jīng)歸一化處理后作為輸入Pmax=2600,Pmin=1478 , P=(P0-Pmin)/( Pmax-Pmin),65,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,66,四、神經(jīng)網(wǎng)絡(luò)的應(yīng)用( matlab實(shí)現(xiàn)),,,Thank you!,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 人工 神經(jīng)網(wǎng)絡(luò) 算法 基礎(chǔ)
鏈接地址:http://www.szxfmmzy.com/p-1792435.html