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