-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
神經(jīng)網(wǎng)絡(luò)分類原理(神經(jīng)網(wǎng)絡(luò)分類原理圖)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于神經(jīng)網(wǎng)絡(luò)分類原理的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、機(jī)器學(xué)習(xí)之人工神經(jīng)網(wǎng)絡(luò)算法
機(jī)器學(xué)習(xí)中有一個(gè)重要的算法,那就是人工神經(jīng)網(wǎng)絡(luò)算法,聽到這個(gè)名稱相信大家能夠想到人體中的神經(jīng)。其實(shí)這種算法和人工神經(jīng)有一點(diǎn)點(diǎn)相似。當(dāng)然,這種算法能夠解決很多的問題,因此在機(jī)器學(xué)習(xí)中有著很高的地位。下面我們就給大家介紹一下關(guān)于人工神經(jīng)網(wǎng)絡(luò)算法的知識(shí)。
1.神經(jīng)網(wǎng)絡(luò)的來源
我們聽到神經(jīng)網(wǎng)絡(luò)的時(shí)候也時(shí)候近一段時(shí)間,其實(shí)神經(jīng)網(wǎng)絡(luò)出現(xiàn)有了一段時(shí)間了。神經(jīng)網(wǎng)絡(luò)的誕生起源于對(duì)大腦工作機(jī)理的研究。早期生物界學(xué)者們使用神經(jīng)網(wǎng)絡(luò)來模擬大腦。機(jī)器學(xué)習(xí)的學(xué)者們使用神經(jīng)網(wǎng)絡(luò)進(jìn)行機(jī)器學(xué)習(xí)的實(shí)驗(yàn),發(fā)現(xiàn)在視覺與語音的識(shí)別上效果都相當(dāng)好。在BP算法誕生以后,神經(jīng)網(wǎng)絡(luò)的發(fā)展進(jìn)入了一個(gè)熱潮。
2.神經(jīng)網(wǎng)絡(luò)的原理
那么神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)機(jī)理是什么?簡(jiǎn)單來說,就是分解與整合。一個(gè)復(fù)雜的圖像變成了大量的細(xì)節(jié)進(jìn)入神經(jīng)元,神經(jīng)元處理以后再進(jìn)行整合,最后得出了看到的是正確的結(jié)論。這就是大腦視覺識(shí)別的機(jī)理,也是神經(jīng)網(wǎng)絡(luò)工作的機(jī)理。所以可以看出神經(jīng)網(wǎng)絡(luò)有很明顯的優(yōu)點(diǎn)。
3.神經(jīng)網(wǎng)絡(luò)的邏輯架構(gòu)
讓我們看一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)的邏輯架構(gòu)。在這個(gè)網(wǎng)絡(luò)中,分成輸入層,隱藏層,和輸出層。輸入層負(fù)責(zé)接收信號(hào),隱藏層負(fù)責(zé)對(duì)數(shù)據(jù)的分解與處理,最后的結(jié)果被整合到輸出層。每層中的一個(gè)圓代表一個(gè)處理單元,可以認(rèn)為是模擬了一個(gè)神經(jīng)元,若干個(gè)處理單元組成了一個(gè)層,若干個(gè)層再組成了一個(gè)網(wǎng)絡(luò),也就是”神經(jīng)網(wǎng)絡(luò)”。在神經(jīng)網(wǎng)絡(luò)中,每個(gè)處理單元事實(shí)上就是一個(gè)邏輯回歸模型,邏輯回歸模型接收上層的輸入,把模型的預(yù)測(cè)結(jié)果作為輸出傳輸?shù)较乱粋€(gè)層次。通過這樣的過程,神經(jīng)網(wǎng)絡(luò)可以完成非常復(fù)雜的非線性分類。
4.神經(jīng)網(wǎng)絡(luò)的應(yīng)用。
圖像識(shí)別領(lǐng)域是神經(jīng)網(wǎng)絡(luò)中的一個(gè)著名應(yīng)用,這個(gè)程序是一個(gè)基于多個(gè)隱層構(gòu)建的神經(jīng)網(wǎng)絡(luò)。通過這個(gè)程序可以識(shí)別多種手寫數(shù)字,并且達(dá)到很高的識(shí)別精度與擁有較好的魯棒性。可以看出,隨著層次的不斷深入,越深的層次處理的細(xì)節(jié)越低。但是進(jìn)入90年代,神經(jīng)網(wǎng)絡(luò)的發(fā)展進(jìn)入了一個(gè)瓶頸期。其主要原因是盡管有BP算法的加速,神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程仍然很困難。因此90年代后期支持向量機(jī)算法取代了神經(jīng)網(wǎng)絡(luò)的地位。
在這篇文章中我們大家介紹了關(guān)于神經(jīng)網(wǎng)絡(luò)的相關(guān)知識(shí),具體的內(nèi)容就是神經(jīng)網(wǎng)絡(luò)的起源、神經(jīng)網(wǎng)絡(luò)的原理、神經(jīng)網(wǎng)絡(luò)的邏輯架構(gòu)和神經(jīng)網(wǎng)絡(luò)的應(yīng)用,相信大家看到這里對(duì)神經(jīng)網(wǎng)絡(luò)知識(shí)有了一定的了解,希望這篇文章能夠幫助到大家。
二、神經(jīng)網(wǎng)絡(luò)淺談
人工智能技術(shù)是當(dāng)前炙手可熱的話題,而基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)技術(shù)更是熱點(diǎn)中的熱點(diǎn)。去年谷歌的Alpha Go 以4:1大比分的優(yōu)勢(shì)戰(zhàn)勝韓國的李世石九段,展現(xiàn)了深度學(xué)習(xí)的強(qiáng)大威力,后續(xù)強(qiáng)化版的Alpha Master和無師自通的Alpha Zero更是在表現(xiàn)上完全碾壓前者。不論你怎么看,以深度學(xué)習(xí)為代表的人工智能技術(shù)正在塑造未來。
下圖為英偉達(dá)(NVIDIA)公司近年來的股價(jià)情況, 該公司的主要產(chǎn)品是“圖形處理器”(GPU),而GPU被證明能大大加快神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度,是深度學(xué)習(xí)必不可少的計(jì)算組件。英偉達(dá)公司近年來股價(jià)的飛漲足以證明當(dāng)前深度學(xué)習(xí)的井噴之勢(shì)。
好,話不多說,下面簡(jiǎn)要介紹神經(jīng)網(wǎng)絡(luò)的基本原理、發(fā)展脈絡(luò)和優(yōu)勢(shì)。
神經(jīng)網(wǎng)絡(luò)是一種人類由于受到生物神經(jīng)細(xì)胞結(jié)構(gòu)啟發(fā)而研究出的一種算法體系,是機(jī)器學(xué)習(xí)算法大類中的一種。首先讓我們來看人腦神經(jīng)元細(xì)胞:
一個(gè)神經(jīng)元通常具有多個(gè)樹突 ,主要用來接受傳入信息,而軸突只有一條,軸突尾端有許多軸突末梢,可以給其他多個(gè)神經(jīng)元傳遞信息。軸突末梢跟其他神經(jīng)元的樹突產(chǎn)生連接,從而傳遞信號(hào)。
下圖是一個(gè)經(jīng)典的神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN):
乍一看跟傳統(tǒng)互聯(lián)網(wǎng)的拓?fù)鋱D有點(diǎn)類似,這也是稱其為網(wǎng)絡(luò)的原因,不同的是節(jié)點(diǎn)之間通過有向線段連接,并且節(jié)點(diǎn)被分成三層。我們稱圖中的圓圈為神經(jīng)元,左邊三個(gè)神經(jīng)元組成的一列為輸入層,中間神經(jīng)元列為隱藏層,右邊神經(jīng)元列為輸出層,神經(jīng)元之間的箭頭為權(quán)重。
神經(jīng)元是計(jì)算單元,相當(dāng)于神經(jīng)元細(xì)胞的細(xì)胞核,利用輸入的數(shù)據(jù)進(jìn)行計(jì)算,然后輸出,一般由一個(gè)線性計(jì)算部分和一個(gè)非線性計(jì)算部分組成;輸入層和輸出層實(shí)現(xiàn)數(shù)據(jù)的輸入輸出,相當(dāng)于細(xì)胞的樹突和軸突末梢;隱藏層指既不是輸入也不是輸出的神經(jīng)元層,一個(gè)神經(jīng)網(wǎng)絡(luò)可以有很多個(gè)隱藏層。
神經(jīng)網(wǎng)絡(luò)的關(guān)鍵不是圓圈代表的神經(jīng)元,而是每條連接線對(duì)應(yīng)的權(quán)重。每條連接線對(duì)應(yīng)一個(gè)權(quán)重,也就是一個(gè)參數(shù)。權(quán)重具體的值需要通過神經(jīng)網(wǎng)絡(luò)的訓(xùn)練才能獲得。我們實(shí)際生活中的學(xué)習(xí)體現(xiàn)在大腦中就是一系列神經(jīng)網(wǎng)絡(luò)回路的建立與強(qiáng)化,多次重復(fù)的學(xué)習(xí)能讓回路變得更加粗壯,使得信號(hào)的傳遞速度加快,最后對(duì)外表現(xiàn)為“深刻”的記憶。人工神經(jīng)網(wǎng)絡(luò)的訓(xùn)練也借鑒于此,如果某種映射關(guān)系出現(xiàn)很多次,那么在訓(xùn)練過程中就相應(yīng)調(diào)高其權(quán)重。
1943年,心理學(xué)家McCulloch和數(shù)學(xué)家Pitts參考了生物神經(jīng)元的結(jié)構(gòu),發(fā)表了抽象的神經(jīng)元模型MP:
符號(hào)化后的模型如下:
Sum函數(shù)計(jì)算各權(quán)重與輸入乘積的線性組合,是神經(jīng)元中的線性計(jì)算部分,而sgn是取符號(hào)函數(shù),當(dāng)輸入大于0時(shí),輸出1,反之輸出0,是神經(jīng)元中的非線性部分。向量化后的公式為z=sgn(w^T a)(w^T=(w_1,w_2,w_3),a=〖(a_1,a_2,a_3)〗^T)。
但是,MP模型中,權(quán)重的值都是預(yù)先設(shè)置的,因此不能學(xué)習(xí)。該模型雖然簡(jiǎn)單,并且作用有限,但已經(jīng)建立了神經(jīng)網(wǎng)絡(luò)大廈的地基
1958年,計(jì)算科學(xué)家Rosenblatt提出了由兩層神經(jīng)元組成(一個(gè)輸入層,一個(gè)輸出層)的神經(jīng)網(wǎng)絡(luò)。他給它起了一個(gè)名字–“感知器”(Perceptron)
感知器是當(dāng)時(shí)首個(gè)可以學(xué)習(xí)的人工神經(jīng)網(wǎng)絡(luò)。Rosenblatt現(xiàn)場(chǎng)演示了其學(xué)習(xí)識(shí)別簡(jiǎn)單圖像的過程,在當(dāng)時(shí)引起了轟動(dòng),掀起了第一波神經(jīng)網(wǎng)絡(luò)的研究熱潮。
但感知器只能做簡(jiǎn)單的線性分類任務(wù)。1969年,人工智能領(lǐng)域的巨擘Minsky指出這點(diǎn),并同時(shí)指出感知器對(duì)XOR(異或,即兩個(gè)輸入相同時(shí)輸出0,不同時(shí)輸出1)這樣的簡(jiǎn)單邏輯都無法解決。所以,明斯基認(rèn)為神經(jīng)網(wǎng)絡(luò)是沒有價(jià)值的。
隨后,神經(jīng)網(wǎng)絡(luò)的研究進(jìn)入低谷,又稱 AI Winter 。
Minsky說過單層神經(jīng)網(wǎng)絡(luò)無法解決異或問題,但是當(dāng)增加一個(gè)計(jì)算層以后,兩層神經(jīng)網(wǎng)絡(luò)不僅可以解決異或問題,而且具有非常好的非線性分類效果。
下圖為兩層神經(jīng)網(wǎng)絡(luò)(輸入層一般不算在內(nèi)):
上圖中,輸出層的輸入是上一層的輸出。
向量化后的公式為:
注意:
每個(gè)神經(jīng)元節(jié)點(diǎn)默認(rèn)都有偏置變量b,加上偏置變量后的計(jì)算公式為:
同時(shí),兩層神經(jīng)網(wǎng)絡(luò)不再使用sgn函數(shù)作為激勵(lì)函數(shù),而采用平滑的sigmoid函數(shù):
σ(z)=1/(1+e^(-z) )
其圖像如下:
理論證明: 兩層及以上的神經(jīng)網(wǎng)絡(luò)可以無限逼近真實(shí)的對(duì)應(yīng)函數(shù),從而模擬數(shù)據(jù)之間的真實(shí)關(guān)系 ,這是神經(jīng)網(wǎng)絡(luò)強(qiáng)大預(yù)測(cè)能力的根本。但兩層神經(jīng)網(wǎng)絡(luò)的計(jì)算量太大,當(dāng)時(shí)的計(jì)算機(jī)的計(jì)算能力完全跟不上,直到1986年,Rumelhar和Hinton等人提出了反向傳播(Backpropagation,BP)算法,解決了兩層神經(jīng)網(wǎng)絡(luò)所需要的復(fù)雜計(jì)算量問題,帶動(dòng)了業(yè)界使用兩層神經(jīng)網(wǎng)絡(luò)研究的熱潮。
但好景不長(zhǎng),算法的改進(jìn)僅使得神經(jīng)網(wǎng)絡(luò)風(fēng)光了幾年,然而計(jì)算能力不夠,局部最優(yōu)解,調(diào)參等一系列問題一直困擾研究人員。90年代中期,由Vapnik等人發(fā)明的SVM(Support Vector Machines,支持向量機(jī))算法誕生,很快就在若干個(gè)方面體現(xiàn)出了對(duì)比神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì):無需調(diào)參;高效;全局最優(yōu)解。
由于以上原因,SVM迅速打敗了神經(jīng)網(wǎng)絡(luò)算法成為主流。神經(jīng)網(wǎng)絡(luò)的研究再一次進(jìn)入低谷, AI Winter again 。
多層神經(jīng)網(wǎng)絡(luò)一般指兩層或兩層以上的神經(jīng)網(wǎng)絡(luò)(不包括輸入層),更多情況下指兩層以上的神經(jīng)網(wǎng)絡(luò)。
2006年,Hinton提出使用 預(yù)訓(xùn)練 ”(pre-training)和“微調(diào)”(fine-tuning)技術(shù)能優(yōu)化神經(jīng)網(wǎng)絡(luò)訓(xùn)練,大幅度減少訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)的時(shí)間
并且,他給多層神經(jīng)網(wǎng)絡(luò)相關(guān)的學(xué)習(xí)方法賦予了一個(gè)新名詞–“ 深度學(xué)習(xí) ”,以此為起點(diǎn),“深度學(xué)習(xí)”紀(jì)元開始了:)
“深度學(xué)習(xí)”一方面指神經(jīng)網(wǎng)絡(luò)的比較“深”,也就是層數(shù)較多;另一方面也可以指神經(jīng)網(wǎng)絡(luò)能學(xué)到很多深層次的東西。研究發(fā)現(xiàn),在權(quán)重參數(shù)不變的情況下,增加神經(jīng)網(wǎng)絡(luò)的層數(shù),能增強(qiáng)神經(jīng)網(wǎng)絡(luò)的表達(dá)能力。
但深度學(xué)習(xí)究竟有多強(qiáng)大呢?沒人知道。2012年,Hinton與他的學(xué)生在ImageNet競(jìng)賽中,用多層的卷積神經(jīng)網(wǎng)絡(luò)成功地對(duì)包含一千類別的一百萬張圖片進(jìn)行了訓(xùn)練,取得了分類錯(cuò)誤率15%的好成績(jī),這個(gè)成績(jī)比第二名高了近11個(gè)百分點(diǎn),充分證明了多層神經(jīng)網(wǎng)絡(luò)識(shí)別效果的優(yōu)越性。
同時(shí),科研人員發(fā)現(xiàn)GPU的大規(guī)模并行矩陣運(yùn)算模式完美地契合神經(jīng)網(wǎng)絡(luò)訓(xùn)練的需要,在同等情況下,GPU的速度要比CPU快50-200倍,這使得神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間大大減少,最終再一次掀起了神經(jīng)網(wǎng)絡(luò)研究的熱潮,并且一直持續(xù)到現(xiàn)在。
2016年基于深度學(xué)習(xí)的Alpha Go在圍棋比賽中以4:1的大比分優(yōu)勢(shì)戰(zhàn)勝了李世石,深度學(xué)習(xí)的威力再一次震驚了世界。
神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史曲折蕩漾,既有被捧上神壇的高潮,也有無人問津的低谷,中間經(jīng)歷了數(shù)次大起大落,我們姑且稱之為“三起三落”吧,其背后則是算法的改進(jìn)和計(jì)算能力的持續(xù)發(fā)展。
下圖展示了神經(jīng)網(wǎng)絡(luò)自發(fā)明以來的發(fā)展情況及一些重大時(shí)間節(jié)點(diǎn)。
當(dāng)然,對(duì)于神經(jīng)網(wǎng)絡(luò)我們也要保持清醒的頭腦。由上圖,每次神經(jīng)網(wǎng)絡(luò)研究的興盛期持續(xù)10年左右,從最近2012年算起,或許10年后的2022年,神經(jīng)網(wǎng)絡(luò)的發(fā)展將再次遇到瓶頸。
神經(jīng)網(wǎng)絡(luò)作為機(jī)器學(xué)習(xí)的一種,其模型訓(xùn)練的目的,就是使得參數(shù)盡可能的與真實(shí)的模型逼近。理論證明,兩層及以上的神經(jīng)網(wǎng)絡(luò)可以無限逼近真實(shí)的映射函數(shù)。因此,給定足夠的訓(xùn)練數(shù)據(jù)和訓(xùn)練時(shí)間,總能通過神經(jīng)網(wǎng)絡(luò)找到無限逼近真實(shí)關(guān)系的模型。
具體做法:首先給所有權(quán)重參數(shù)賦上隨機(jī)值,然后使用這些隨機(jī)生成的參數(shù)值,來預(yù)測(cè)訓(xùn)練數(shù)據(jù)中的樣本。假設(shè)樣本的預(yù)測(cè)目標(biāo)為yp ,真實(shí)目標(biāo)為y,定義值loss,計(jì)算公式如下:
loss = (yp -y) ^2
這個(gè)值稱之為 損失 (loss),我們的目標(biāo)就是使對(duì)所有訓(xùn)練數(shù)據(jù)的損失和盡可能的小,這就轉(zhuǎn)化為求loss函數(shù)極值的問題。
一個(gè)常用方法是高等數(shù)學(xué)中的求導(dǎo),但由于參數(shù)不止一個(gè),求導(dǎo)后計(jì)算導(dǎo)數(shù)等于0的運(yùn)算量很大,所以常用梯度下降算法來解決這樣的優(yōu)化問題。梯度是一個(gè)向量,由函數(shù)的各自變量的偏導(dǎo)數(shù)組成。
比如對(duì)二元函數(shù) f =(x,y),則梯度∇f=(∂f/∂x,∂f/∂y)。梯度的方向是函數(shù)值上升最快的方向。梯度下降算法每次計(jì)算參數(shù)在當(dāng)前的梯度,然后讓參數(shù)向著梯度的反方向前進(jìn)一段距離,不斷重復(fù),直到梯度接近零時(shí)截止。一般這個(gè)時(shí)候,所有的參數(shù)恰好達(dá)到使損失函數(shù)達(dá)到一個(gè)最低值的狀態(tài)。下圖為梯度下降的大致運(yùn)行過程:
在神經(jīng)網(wǎng)絡(luò)模型中,由于結(jié)構(gòu)復(fù)雜,每次計(jì)算梯度的代價(jià)很大。因此還需要使用 反向傳播 (Back Propagation)算法。反向傳播算法利用了神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)進(jìn)行計(jì)算,不一次計(jì)算所有參數(shù)的梯度,而是從后往前。首先計(jì)算輸出層的梯度,然后是第二個(gè)參數(shù)矩陣的梯度,接著是中間層的梯度,再然后是第一個(gè)參數(shù)矩陣的梯度,最后是輸入層的梯度。計(jì)算結(jié)束以后,所要的兩個(gè)參數(shù)矩陣的梯度就都有了。當(dāng)然,梯度下降只是其中一個(gè)優(yōu)化算法,其他的還有牛頓法、RMSprop等。
確定loss函數(shù)的最小值后,我們就確定了整個(gè)神經(jīng)網(wǎng)絡(luò)的權(quán)重,完成神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。
在神經(jīng)網(wǎng)絡(luò)中一樣的參數(shù)數(shù)量,可以用更深的層次去表達(dá)。
由上圖,不算上偏置參數(shù)的話,共有三層神經(jīng)元,33個(gè)權(quán)重參數(shù)。
由下圖,保持權(quán)重參數(shù)不變,但增加了兩層神經(jīng)元。
在多層神經(jīng)網(wǎng)絡(luò)中,每一層的輸入是前一層的輸出,相當(dāng)于在前一層的基礎(chǔ)上學(xué)習(xí),更深層次的神經(jīng)網(wǎng)絡(luò)意味著更深入的表示特征,以及更強(qiáng)的函數(shù)模擬能力。更深入的表示特征可以這樣理解,隨著網(wǎng)絡(luò)的層數(shù)增加,每一層對(duì)于前一層次的抽象表示更深入。
如上圖,第一個(gè)隱藏層學(xué)習(xí)到“邊緣”的特征,第二個(gè)隱藏層學(xué)習(xí)到“邊緣”組成的“形狀”的特征,第三個(gè)隱藏層學(xué)習(xí)到由“形狀”組成的“圖案”的特征,最后的隱藏層學(xué)習(xí)到由“圖案”組成的“目標(biāo)”的特征。通過抽取更抽象的特征來對(duì)事物進(jìn)行區(qū)分,從而獲得更好的區(qū)分與分類能力。
前面提到, 明斯基認(rèn)為Rosenblatt提出的感知器模型不能處理最簡(jiǎn)單的“異或”(XOR)非線性問題,所以神經(jīng)網(wǎng)絡(luò)的研究沒有前途,但當(dāng)增加一層神經(jīng)元后,異或問題得到了很好地解決,原因何在?原來從輸入層到隱藏層,數(shù)據(jù)發(fā)生了空間變換,坐標(biāo)系發(fā)生了改變,因?yàn)榫仃囘\(yùn)算本質(zhì)上就是一種空間變換。
如下圖,紅色和藍(lán)色的分界線是最終的分類結(jié)果,可以看到,該分界線是一條非常平滑的曲線。
但是,改變坐標(biāo)系后,分界線卻表現(xiàn)為直線,如下圖:
同時(shí),非線性激勵(lì)函數(shù)的引入使得神經(jīng)網(wǎng)絡(luò)對(duì)非線性問題的表達(dá)能力大大加強(qiáng)。
對(duì)于傳統(tǒng)的樸素貝葉斯、決策樹、支持向量機(jī)SVM等分類器,提取特征是一個(gè)非常重要的前置工作。在正式訓(xùn)練之前,需要花費(fèi)大量的時(shí)間在數(shù)據(jù)的清洗上,這樣分類器才能清楚地知道數(shù)據(jù)的維度,要不然基于概率和空間距離的線性分類器是沒辦法進(jìn)行工作的。然而在神經(jīng)網(wǎng)絡(luò)中,由于巨量的線性分類器的堆疊(并行和串行)以及卷積神經(jīng)網(wǎng)絡(luò)的使用,它對(duì)噪聲的忍耐能力、對(duì)多通道數(shù)據(jù)上投射出來的不同特征偏向的敏感程度會(huì)自動(dòng)重視或忽略,這樣我們?cè)谔幚淼臅r(shí)候,就不需要使用太多的技巧用于數(shù)據(jù)的清洗了。有趣的是,業(yè)內(nèi)大佬常感嘆,“你可能知道SVM等機(jī)器學(xué)習(xí)的所有細(xì)節(jié),但是效果并不好,而神經(jīng)網(wǎng)絡(luò)更像是一個(gè)黑盒,很難知道它究竟在做什么,但工作效果卻很好”。
人類對(duì)機(jī)器學(xué)習(xí)的環(huán)節(jié)干預(yù)越少,就意味著距離人工智能的方向越近。神經(jīng)網(wǎng)絡(luò)的這個(gè)特性非常有吸引力。
1) 谷歌的TensorFlow開發(fā)了一個(gè)非常有意思的神經(jīng)網(wǎng)絡(luò) 入門教程 ,用戶可以非常方便地在網(wǎng)頁上更改神經(jīng)網(wǎng)絡(luò)的參數(shù),并且能看到實(shí)時(shí)的學(xué)習(xí)效率和結(jié)果,非常適合初學(xué)者掌握神經(jīng)網(wǎng)絡(luò)的基本概念及神經(jīng)網(wǎng)絡(luò)的原理。網(wǎng)頁截圖如下:
2) 深度學(xué)習(xí)領(lǐng)域大佬吳恩達(dá)不久前發(fā)布的《 神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí) 》MOOC,現(xiàn)在可以在網(wǎng)易云課堂上免費(fèi)觀看了,并且還有中文字幕。
3) 《神經(jīng)網(wǎng)絡(luò)于深度學(xué)習(xí)》(Michael Nielsen著)、《白話深度學(xué)習(xí)與TensorFlow》也是不錯(cuò)的入門書籍。
三、BP神經(jīng)網(wǎng)絡(luò)原理
人工神經(jīng)網(wǎng)絡(luò)有很多模型,但是日前應(yīng)用最廣、基本思想最直觀、最容易被理解的是多層前饋神經(jīng)網(wǎng)絡(luò)及誤差逆?zhèn)鞑W(xué)習(xí)算法(Error Back-Prooaeation),簡(jiǎn)稱為BP網(wǎng)絡(luò)。
在1986年以Rumelhart和McCelland為首的科學(xué)家出版的《Parallel Distributed Processing》一書中,完整地提出了誤差逆?zhèn)鞑W(xué)習(xí)算法,并被廣泛接受。多層感知網(wǎng)絡(luò)是一種具有三層或三層以上的階層型神經(jīng)網(wǎng)絡(luò)。典型的多層感知網(wǎng)絡(luò)是三層、前饋的階層網(wǎng)絡(luò)(圖4.1),即:輸入層、隱含層(也稱中間層)、輸出層,具體如下:
圖4.1 三層BP網(wǎng)絡(luò)結(jié)構(gòu)
(1)輸入層
輸入層是網(wǎng)絡(luò)與外部交互的接口。一般輸入層只是輸入矢量的存儲(chǔ)層,它并不對(duì)輸入矢量作任何加工和處理。輸入層的神經(jīng)元數(shù)目可以根據(jù)需要求解的問題和數(shù)據(jù)表示的方式來確定。一般而言,如果輸入矢量為圖像,則輸入層的神經(jīng)元數(shù)目可以為圖像的像素?cái)?shù),也可以是經(jīng)過處理后的圖像特征數(shù)。
(2)隱含層
1989年,Robert Hecht Nielsno證明了對(duì)于任何在閉區(qū)間內(nèi)的一個(gè)連續(xù)函數(shù)都可以用一個(gè)隱層的BP網(wǎng)絡(luò)來逼近,因而一個(gè)三層的BP網(wǎng)絡(luò)可以完成任意的n維到m維的映射。增加隱含層數(shù)雖然可以更進(jìn)一步的降低誤差、提高精度,但是也使網(wǎng)絡(luò)復(fù)雜化,從而增加了網(wǎng)絡(luò)權(quán)值的訓(xùn)練時(shí)間。誤差精度的提高也可以通過增加隱含層中的神經(jīng)元數(shù)目來實(shí)現(xiàn),其訓(xùn)練效果也比增加隱含層數(shù)更容易觀察和調(diào)整,所以一般情況應(yīng)優(yōu)先考慮增加隱含層的神經(jīng)元個(gè)數(shù),再根據(jù)具體情況選擇合適的隱含層數(shù)。
(3)輸出層
輸出層輸出網(wǎng)絡(luò)訓(xùn)練的結(jié)果矢量,輸出矢量的維數(shù)應(yīng)根據(jù)具體的應(yīng)用要求來設(shè)計(jì),在設(shè)計(jì)時(shí),應(yīng)盡可能減少系統(tǒng)的規(guī)模,使系統(tǒng)的復(fù)雜性減少。如果網(wǎng)絡(luò)用作識(shí)別器,則識(shí)別的類別神經(jīng)元接近1,而其它神經(jīng)元輸出接近0。
以上三層網(wǎng)絡(luò)的相鄰層之間的各神經(jīng)元實(shí)現(xiàn)全連接,即下一層的每一個(gè)神經(jīng)元與上一層的每個(gè)神經(jīng)元都實(shí)現(xiàn)全連接,而且每層各神經(jīng)元之間無連接,連接強(qiáng)度構(gòu)成網(wǎng)絡(luò)的權(quán)值矩陣W。
BP網(wǎng)絡(luò)是以一種有教師示教的方式進(jìn)行學(xué)習(xí)的。首先由教師對(duì)每一種輸入模式設(shè)定一個(gè)期望輸出值。然后對(duì)網(wǎng)絡(luò)輸入實(shí)際的學(xué)習(xí)記憶模式,并由輸入層經(jīng)中間層向輸出層傳播(稱為“模式順傳播”)。實(shí)際輸出與期望輸出的差即是誤差。按照誤差平方最小這一規(guī)則,由輸出層往中間層逐層修正連接權(quán)值,此過程稱為“誤差逆?zhèn)鞑ァ保愓?005)。所以誤差逆?zhèn)鞑ド窠?jīng)網(wǎng)絡(luò)也簡(jiǎn)稱BP(Back Propagation)網(wǎng)。隨著“模式順傳播”和“誤差逆?zhèn)鞑ァ边^程的交替反復(fù)進(jìn)行。網(wǎng)絡(luò)的實(shí)際輸出逐漸向各自所對(duì)應(yīng)的期望輸出逼近,網(wǎng)絡(luò)對(duì)輸入模式的響應(yīng)的正確率也不斷上升。通過此學(xué)習(xí)過程,確定下各層間的連接權(quán)值后。典型三層BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)及程序運(yùn)行過程如下(標(biāo)志淵,2006):
(1)首先,對(duì)各符號(hào)的形式及意義進(jìn)行說明:
網(wǎng)絡(luò)輸入向量Pk=(a1,a2,...,an);
網(wǎng)絡(luò)目標(biāo)向量Tk=(y1,y2,...,yn);
中間層單元輸入向量Sk=(s1,s2,...,sp),輸出向量Bk=(b1,b2,...,bp);
輸出層單元輸入向量Lk=(l1,l2,...,lq),輸出向量Ck=(c1,c2,...,cq);
輸入層至中間層的連接權(quán)wij,i=1,2,...,n,j=1,2,...p;
中間層至輸出層的連接權(quán)vjt,j=1,2,...,p,t=1,2,...,p;
中間層各單元的輸出閾值θj,j=1,2,...,p;
輸出層各單元的輸出閾值γj,j=1,2,...,p;
參數(shù)k=1,2,...,m。
(2)初始化。給每個(gè)連接權(quán)值wij、vjt、閾值θj與γj賦予區(qū)間(-1,1)內(nèi)的隨機(jī)值。
(3)隨機(jī)選取一組輸入和目標(biāo)樣本
(4)用輸入樣本
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
bj=f(sj) j=1,2,...,p (4.5)
(5)利用中間層的輸出bj、連接權(quán)vjt和閾值γt計(jì)算輸出層各單元的輸出Lt,然后通過傳遞函數(shù)計(jì)算輸出層各單元的響應(yīng)Ct。
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
Ct=f(Lt) t=1,2,...,q (4.7)
(6)利用網(wǎng)絡(luò)目標(biāo)向量
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
(7)利用連接權(quán)vjt、輸出層的一般化誤差dt和中間層的輸出bj計(jì)算中間層各單元的一般化誤差
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
(8)利用輸出層各單元的一般化誤差
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
(9)利用中間層各單元的一般化誤差
基坑降水工程的環(huán)境效應(yīng)與評(píng)價(jià)方法
(10)隨機(jī)選取下一個(gè)學(xué)習(xí)樣本向量提供給網(wǎng)絡(luò),返回到步驟(3),直到m個(gè)訓(xùn)練樣本訓(xùn)練完畢。
(11)重新從m個(gè)學(xué)習(xí)樣本中隨機(jī)選取一組輸入和目標(biāo)樣本,返回步驟(3),直到網(wǎng)路全局誤差E小于預(yù)先設(shè)定的一個(gè)極小值,即網(wǎng)絡(luò)收斂。如果學(xué)習(xí)次數(shù)大于預(yù)先設(shè)定的值,網(wǎng)絡(luò)就無法收斂。
(12)學(xué)習(xí)結(jié)束。
可以看出,在以上學(xué)習(xí)步驟中,(8)、(9)步為網(wǎng)絡(luò)誤差的“逆?zhèn)鞑ミ^程”,(10)、(11)步則用于完成訓(xùn)練和收斂過程。
通常,經(jīng)過訓(xùn)練的網(wǎng)絡(luò)還應(yīng)該進(jìn)行性能測(cè)試。測(cè)試的方法就是選擇測(cè)試樣本向量,將其提供給網(wǎng)絡(luò),檢驗(yàn)網(wǎng)絡(luò)對(duì)其分類的正確性。測(cè)試樣本向量中應(yīng)該包含今后網(wǎng)絡(luò)應(yīng)用過程中可能遇到的主要典型模式(宋大奇,2006)。這些樣本可以直接測(cè)取得到,也可以通過仿真得到,在樣本數(shù)據(jù)較少或者較難得到時(shí),也可以通過對(duì)學(xué)習(xí)樣本加上適當(dāng)?shù)脑肼暬虬凑找欢ㄒ?guī)則插值得到。為了更好地驗(yàn)證網(wǎng)絡(luò)的泛化能力,一個(gè)良好的測(cè)試樣本集中不應(yīng)該包含和學(xué)習(xí)樣本完全相同的模式(董軍,2007)。
四、遺傳神經(jīng)網(wǎng)絡(luò)識(shí)別原理
4.3.1 遺傳BP簡(jiǎn)介
遺傳識(shí)別是遺傳算法+神經(jīng)網(wǎng)絡(luò)的一種新興的尋優(yōu)技術(shù),適合于復(fù)雜的、疊加的非線性系統(tǒng)的辨識(shí)描述。神經(jīng)網(wǎng)絡(luò)算法是當(dāng)前較為成熟的識(shí)別分類方法,但網(wǎng)絡(luò)權(quán)值的訓(xùn)練一直存在著缺陷。為此結(jié)合具體應(yīng)用,在對(duì)遺傳算法進(jìn)行改進(jìn)的基礎(chǔ)上,本文采用了一種基于遺傳學(xué)習(xí)權(quán)值的神經(jīng)網(wǎng)絡(luò)識(shí)別方法,并取得了較好的效果。
盡管常規(guī)遺傳算法是穩(wěn)健的,但針對(duì)一個(gè)具體問題遺傳算法只有和其他方法(或稱原有算法)有效地結(jié)合在一起,組成一個(gè)新的混合算法,才能在實(shí)際中得到廣泛應(yīng)用?;旌纤惴纫3衷兴惴ǖ拈L(zhǎng)處,又要保持遺傳算法的優(yōu)點(diǎn),因此常規(guī)遺傳算法中的適應(yīng)值函數(shù)、編碼、遺傳算子等必須做適當(dāng)?shù)男薷囊赃m應(yīng)混合算法的要求。
4.3.1.1 適應(yīng)值信息
常規(guī)算法中,適應(yīng)值常被表示為全局極小,用歐氏距離來實(shí)現(xiàn)。例如,適應(yīng)值常被表示為如下形式:
儲(chǔ)層特征研究與預(yù)測(cè)
式中:)Yi為第i 個(gè)樣本的實(shí)際輸出,Yi為第i 個(gè)樣本的期望輸出,N 為學(xué)習(xí)樣本數(shù)。這種表示法的單點(diǎn)擬合能力較強(qiáng),能夠滿足精度要求,但大多數(shù)情況下,還要考慮樣本整體的一些性質(zhì),如方差、連續(xù)性等。適應(yīng)值作為GA中的惟一使用信息,除了體現(xiàn)樣本的差異性,還 應(yīng)當(dāng)兼顧樣本間的相關(guān)性。這樣就在一定程度上克服了劇烈振蕩、網(wǎng)絡(luò)容錯(cuò)能力差等弱點(diǎn)。因此,我們將灰色系統(tǒng)的灰關(guān)聯(lián)引入進(jìn)來,在保證樣本的遺傳操作的同時(shí),加強(qiáng)樣本間橫向上的聯(lián)系,從而更有效地選擇權(quán)值。
設(shè) X0={X0(K),K=1,2,…,n}為母序列,Xi={Xi(K),K=1,2,…,n i=1,2,…,m}為子序列。
則關(guān)聯(lián)系數(shù)為:
儲(chǔ)層特征研究與預(yù)測(cè)
關(guān)聯(lián)度為:
儲(chǔ)層特征研究與預(yù)測(cè)
4.3.1.2 編碼問題
二進(jìn)制位串編碼是GA中常見的編碼技術(shù)。但在實(shí)際編程中,采用浮點(diǎn)數(shù)直接表示更有利。主要有以下原因:
(1)避免了因網(wǎng)絡(luò)權(quán)值范圍不明確,難以進(jìn)行編碼的困難;
(2)取消了編碼、譯碼過程,提高了學(xué)習(xí)算法的速度;
(3)十進(jìn)制數(shù)字串的引入,在數(shù)字串長(zhǎng)度不變的情況下,計(jì)算精度可以大為提高。例如,用七位二進(jìn)制數(shù)字串來表示(-10,10)之間的數(shù)值,則精度最高為:
儲(chǔ)層特征研究與預(yù)測(cè)
用同樣長(zhǎng)度的十進(jìn)制數(shù)字串來表示(-10,10)之間的數(shù)值,去掉符號(hào)位和小數(shù)點(diǎn)所占用的一位,余下的四位表示小數(shù)值,則精度最高可以達(dá)到0.0001。
4.3.1.3 修改雜交算子
由于編碼方式的改變,雜交算子可以設(shè)計(jì)為具有數(shù)值特點(diǎn)的向量的線性組合。通常表示為如下形式:
若有兩個(gè)個(gè)體Sa、Sb雜交,則產(chǎn)生的個(gè)體為
儲(chǔ)層特征研究與預(yù)測(cè)
其中u的取值在(0,1),也可根據(jù)情況適當(dāng)縮小取值范圍。當(dāng)u取常數(shù)時(shí),雜交算子即為一致雜交,當(dāng)u隨代數(shù)變化時(shí),雜交算子則為非一致雜交。
在遺傳算法中,隨著迭代次數(shù)的增加,個(gè)體的平均性能逐步提高,個(gè)體間的差異縮小。為了防止個(gè)體趨向一致,影響算法的收斂性能,本文對(duì)u作了如下改變,令
儲(chǔ)層特征研究與預(yù)測(cè)
其中t為當(dāng)前代數(shù),T為預(yù)置最大代數(shù),隨著代數(shù)的增加,u從1到0變化,完成雜交的漸變過程。
4.3.1.4 修改變異算子
設(shè)個(gè)體x=(v1,v2,…,vn),則每個(gè)分量以一定概率進(jìn)行變異,一次變異后的結(jié)果為(v1,…,,…,vn),1<=K<=n,的值按下面的隨機(jī)方式?jīng)Q定:
儲(chǔ)層特征研究與預(yù)測(cè)
式中:LB,UB為第K個(gè)變量的左、右鄰居,函數(shù)Δ(t,y)返回(0,y)上的一個(gè)值,并使這個(gè)值隨著代數(shù)t的增大而接近于0,這樣選取的函數(shù)允許這個(gè)算子在算法的開始階段一致搜索整個(gè)空間,而在算法的后階段進(jìn)行局部搜索。
儲(chǔ)層特征研究與預(yù)測(cè)
式中:r為[0,1]上的隨機(jī)數(shù),T為預(yù)置的最大代數(shù),t為當(dāng)前代數(shù),b是決定非一致程度的參數(shù),這里取為0.5。
4.3.1.5 成熟前收斂問題
成熟前收斂是指GA不能再產(chǎn)生性能超過父代的后代,盡管尚未達(dá)到全局最優(yōu)解,主要表現(xiàn)形式是連續(xù)數(shù)代或數(shù)十代適應(yīng)值不發(fā)生變化。它與其他方法中的局部極值問題很相似,但又不同,因?yàn)樗⒉灰欢ǔ霈F(xiàn)在局部極小點(diǎn)。目前解決這一問題的方法主要有:重新啟動(dòng)法、動(dòng)態(tài)參數(shù)編碼法、混合法等。為了便于程序表現(xiàn),我們引進(jìn)了一個(gè)動(dòng)態(tài)記憶窗口W,W用來記錄從當(dāng)前代開始最優(yōu)目標(biāo)值保持連續(xù)不變的代數(shù)。當(dāng)W達(dá)到某個(gè)給定的值時(shí),就認(rèn)為出現(xiàn)了成熟前收斂,這時(shí)就令雜交算子和變異算子突然增大,實(shí)現(xiàn)基因的重組。當(dāng)然用這種方法來判別收斂問題是不嚴(yán)格的,對(duì)一個(gè)算法收斂性能的評(píng)價(jià)主要應(yīng)體現(xiàn)在時(shí)間復(fù)雜性和空間復(fù)雜性上。對(duì)于像GA這樣帶有隨機(jī)搜索性質(zhì)的具體方法,理論上說,只有當(dāng)隨機(jī)數(shù)字完全取盡,目標(biāo)值仍未改變才可認(rèn)為是成熟前收斂。但在實(shí)際中是不可能這樣做的。因此可根據(jù)隨機(jī)數(shù)的總個(gè)數(shù),每次計(jì)算出最多取多少個(gè)隨機(jī)參數(shù),來大致估算所需的次數(shù),這個(gè)次數(shù)就可認(rèn)為是動(dòng)態(tài)記憶機(jī)制W。
4.3.2 遺傳BP網(wǎng)絡(luò)結(jié)構(gòu)
遺傳算法一般可以通過兩種方式應(yīng)用到神經(jīng)網(wǎng)絡(luò)中。一種方式是利用遺傳算法訓(xùn)練已知結(jié)構(gòu)的網(wǎng)絡(luò),優(yōu)化網(wǎng)絡(luò)的連接權(quán);另一種方式是利用遺傳算法尋找網(wǎng)絡(luò)的規(guī)模、結(jié)構(gòu)和學(xué)習(xí)參數(shù)。目前這種方法在理論上還不完全成熟,尋優(yōu)機(jī)理、學(xué)習(xí)效率等有待進(jìn)一步研究,離實(shí)際應(yīng)用還有一定的距離。
對(duì)多層前饋神經(jīng)網(wǎng)絡(luò),目前用得最多的學(xué)習(xí)算法是BP算法。然而由于BP本身固有的學(xué)習(xí)機(jī)理的限制,從根本上改進(jìn)BP算法是很困難的。BP的學(xué)習(xí)過程實(shí)際上是連接權(quán)的重組優(yōu)化過程,因此在保持網(wǎng)絡(luò)結(jié)構(gòu)的前提下,尋找一種能使連接權(quán)達(dá)到最優(yōu)組合的學(xué)習(xí)方法,具有一定的實(shí)際意義。
利用GA的優(yōu)點(diǎn)來克服BP算法收斂慢和易局部收斂的缺陷,同時(shí)與BP算法的結(jié)合,也解決了單獨(dú)利用GA往往只能在短時(shí)間內(nèi)尋找到接近最優(yōu)解的近優(yōu)解這一問題,引入BP算法的梯度信息將會(huì)避免這種現(xiàn)象。GA與BP算法可以有多種不同的組合方法:
先BP后GA:先用BP培訓(xùn)一個(gè)預(yù)先選定結(jié)構(gòu)的ANN(人工神經(jīng)網(wǎng)絡(luò))直到平均誤差不再有意義地減少時(shí)為止,然后在此基礎(chǔ)上再用GA進(jìn)行若干代的優(yōu)化。重復(fù)進(jìn)行這樣的搜索,直到誤差范圍達(dá)到滿意的要求或者發(fā)現(xiàn)搜索不收斂為止。這種組合方法的基本思想是先用BP確定使誤差函數(shù)取極小值的參數(shù)組合在參數(shù)空間的位置,再利用GA擺脫掉可能的局部極小。應(yīng)用這種組合必須事先選定ANN的結(jié)構(gòu)。即只能用它確定ANN的連接權(quán)重。顯然,如果事先選擇的ANN結(jié)構(gòu)不合理或有關(guān)的參數(shù)(如學(xué)習(xí)率等)不合適,可能會(huì)導(dǎo)致搜索不收斂。
先GA后BP:先用GA反復(fù)優(yōu)化描述ANN模型的參數(shù)組合,直到適應(yīng)函數(shù)的平均不再有意義地增加為止。在此基礎(chǔ)上再用 BP算法對(duì)它們進(jìn)行優(yōu)化。這種組合方法的基本思想是先用GA粗選ANN模型,再用 BP算法精細(xì)與優(yōu)化。這種組合方法的優(yōu)點(diǎn)是通用性好,既可像前一組合方法那樣用來優(yōu)選指定結(jié)構(gòu)下的部分參數(shù),也可用來優(yōu)選其他的參數(shù),例如 ANN 的結(jié)構(gòu)、學(xué)習(xí)率等,甚至還可用于優(yōu)選它們的組合。
圖4-4 GABP結(jié)構(gòu)圖
上面兩種組合GA與 BP的方法是比較基本的兩種,以它們?yōu)榛A(chǔ)可以衍生出多種具體的實(shí)現(xiàn)方案。但由于 BP 算法本身也有許多參數(shù)需要選定,而且選擇方法也無規(guī)則可循,因而組合 GA 與BP在一定程度上也使待解決的問題更加復(fù)雜化。為此,這里提出了一種改進(jìn)的GABP方法,即利用 BP網(wǎng)絡(luò)的非線性分類能力和網(wǎng)絡(luò)結(jié)構(gòu)來設(shè)計(jì)分類器,將遺傳學(xué)習(xí)的結(jié)果直接送入網(wǎng)絡(luò),不再經(jīng)過BP優(yōu)化,通過網(wǎng)絡(luò)結(jié)構(gòu)輸出結(jié)果。這種改進(jìn)既體現(xiàn)了系統(tǒng)的非線性,與前面的處理方法相銜接,又通過GA的學(xué)習(xí)優(yōu)化了權(quán)值,提高了運(yùn)算速度。該網(wǎng)絡(luò)為一個(gè)三層 BP 網(wǎng)絡(luò),結(jié)構(gòu)如圖4-4所示。
4.3.3 遺傳BP計(jì)算過程
遺傳BP算法的具體步驟:
(1)隨機(jī)產(chǎn)生N組(-1,1)區(qū)間內(nèi)取值的初始網(wǎng)絡(luò)權(quán)值。
(2)用BP算法對(duì)這N組始值分別進(jìn)行訓(xùn)練,若這N組權(quán)值中至少已有一組滿足精度要求,則算法結(jié)束;否則轉(zhuǎn)入步驟(3)。
(3)分別依據(jù)經(jīng)過訓(xùn)練的這N組較好的權(quán)值所對(duì)應(yīng)的上下限確定取值區(qū)間,在區(qū)間內(nèi)再隨機(jī)生產(chǎn)成N組新的權(quán)限,連同經(jīng)過訓(xùn)練的N組權(quán)值在一起,構(gòu)成一個(gè)完整的基因群體,共2*N組權(quán)值。
(4)從這2*N組權(quán)值進(jìn)行選擇、交叉、變異等遺傳操作。
(5)從經(jīng)過遺傳操作的這2*N組權(quán)值中選出N組較好的,回復(fù)到步驟(2)。
圖4-5 改進(jìn)的 GABP計(jì)算流程圖
GABP的計(jì)算過程圖如圖4-5所示。
以上就是關(guān)于神經(jīng)網(wǎng)絡(luò)分類原理相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
神經(jīng)網(wǎng)絡(luò)分類原理(神經(jīng)網(wǎng)絡(luò)分類原理圖)
神經(jīng)網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì)(神經(jīng)網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì)論文)
神經(jīng)排行榜(神經(jīng)著名神經(jīng)哥)
城東現(xiàn)代庭院景觀設(shè)計(jì)施工(城東現(xiàn)代庭院景觀設(shè)計(jì)施工方案)