前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇神經(jīng)網(wǎng)絡主要存在的問題范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
最近十年,隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,網(wǎng)絡安全越來越受到人們的重視,各種利用網(wǎng)絡漏洞和病毒入侵的手段層出不窮,極大地威脅著網(wǎng)絡安全。而傳統(tǒng)的殺毒軟件和防火墻技術(shù)面對端口掃描和新型木馬等網(wǎng)絡攻擊顯得力不從心。在此背景下,作為一種積極主動的安全防護策略,網(wǎng)絡入侵檢測技術(shù)得到了人們廣大的關(guān)注,獲得了廣泛的應用。但是隨著網(wǎng)絡入侵技術(shù)的進化,傳統(tǒng)的入侵檢測技術(shù)暴露出諸多缺陷,因此,本文引入了神經(jīng)網(wǎng)絡技術(shù)對傳統(tǒng)入侵檢測系統(tǒng)進行升級,以提高系統(tǒng)的檢測性能。目前國內(nèi)外有許多學者和機構(gòu)都進行了基于神經(jīng)網(wǎng)絡的網(wǎng)絡入侵檢測系統(tǒng)的研究和探索。美國國防部為了提高計算機網(wǎng)絡系統(tǒng)的防入侵能力,從20世紀90年代開始陸續(xù)起草了一系列的建議草案和標準,從結(jié)構(gòu)體系上規(guī)定了計算機網(wǎng)絡入侵防御的相關(guān)技術(shù)標準,并資助MIT了KDDCUP99入侵檢測測試集,為相關(guān)研究提供了研究樣本;美國學者LTony等采用單隱含層的簡神經(jīng)網(wǎng)絡構(gòu)建了一個IDES的入侵檢測專家系統(tǒng),實現(xiàn)了對局域網(wǎng)內(nèi)幾種典型入侵行為的判斷,開啟了利用神經(jīng)網(wǎng)絡對網(wǎng)絡入侵行為進行判斷的新途徑。隨著網(wǎng)絡技術(shù),特別是網(wǎng)絡入侵技術(shù)和大數(shù)據(jù)技術(shù)的迅速發(fā)展,國外的網(wǎng)絡安全提供商分別推出了自己完善的反網(wǎng)絡入侵解決產(chǎn)品,如:思科的IDS4250T和InternetSecurity的Realsecure等[1]。我國的網(wǎng)絡入侵檢測技術(shù)研究起步于20世紀90年代,哈爾濱工程大學的唐立力教授采用KDDCUP99入侵檢測測試集作為研究樣本,利用RBF神經(jīng)網(wǎng)絡作為判斷模塊,根據(jù)知識庫中已經(jīng)定義好的網(wǎng)絡攻擊方式來判斷是否發(fā)生入侵行為,通過網(wǎng)絡訓練,對常見的四大類型的入侵行為進行了很好的判斷;華中科大的周毅等采用遺傳算法對BP網(wǎng)絡輸入?yún)?shù)進行優(yōu)化,建立了GABP的診斷網(wǎng)絡,大大提高了對網(wǎng)絡入侵行為的診斷精度和速度,提高了網(wǎng)絡的使用安全性[2]。雖然國內(nèi)外對神經(jīng)網(wǎng)絡技術(shù)在入侵檢測中的研究有著許多亮點,也取得了很多成績,但是從目前的研究情況來看,大多學者采用的方法存在的普遍問題有:一是構(gòu)建的網(wǎng)絡入侵檢測模型缺乏泛化能力,模型穩(wěn)定差,當系統(tǒng)加入新的入侵類型時,模型診斷精度較低;二是除了國外少數(shù)商業(yè)軟件巨頭,其他研究者并未建立有效的基于檢測模型的防入侵檢測系統(tǒng),即相關(guān)研究的實際用途有待進一步提高;三是檢測系統(tǒng)的可擴展性和檢測效率低。
1入侵檢測系統(tǒng)的組成
1.1常見的兩種入侵檢測方法
在目前常見的入侵檢測系統(tǒng)中,根據(jù)其檢測方法的不同,可分為異常檢測和誤用檢測兩種方法。異常檢測的基礎是建立一個安全行為的數(shù)據(jù)庫,在此數(shù)據(jù)庫外的操作會被進行比對,當其嚴重偏離安全行為時即被判斷為入侵行為。此方法的優(yōu)點是對未知的入侵行為有較好的檢測效果,漏報率較低;缺點是容易將一些未定義的正常行為判定為入侵行為,即誤報率較高。誤用檢測則是一種基于入侵行為數(shù)據(jù)庫的檢測,該數(shù)據(jù)庫是多種已知入侵行為及特征的集合,且數(shù)據(jù)庫是實時更新的。誤用檢測工作時,會對網(wǎng)絡行為與數(shù)據(jù)庫中的信息進行比對,以判定其是否屬于入侵行為。誤用檢測的優(yōu)勢是可以快速有效地判斷常見入侵形式;缺點是數(shù)據(jù)庫需要快速和持續(xù)的進行更新,隨著數(shù)據(jù)庫規(guī)模的持續(xù)增大,可能影響檢測的速度。本文研究了兩種檢測法的優(yōu)缺點,決定在本文所構(gòu)建的系統(tǒng)中同時采用這兩種檢測法,并以神經(jīng)網(wǎng)絡技術(shù)作為其實現(xiàn)的基礎。
1.2現(xiàn)有入侵檢測系統(tǒng)存在的問題
一般來說,目前常見的入侵檢測系統(tǒng)具有以下一些問題:(1)檢測效率較低。不管是誤用檢測還是異常檢測都很難快速檢測具有欺騙性的入侵行為;異常檢測的正常運行需要系統(tǒng)維護記錄的實時更新,誤用檢測則需要復雜的專家系統(tǒng)shell來編碼和解釋,需要耗費大量的系統(tǒng)資源,因此其效率較低。(2)維護性和系統(tǒng)更新能力較低。一個入侵檢測系統(tǒng)需要實時維護及更新,目前廣泛存在的系統(tǒng)在維護和更新時往往要求操作者了解專家系統(tǒng)規(guī)則語言,使得操作者的學習成本大大提高。(3)漏報和誤報問題。目前常見的入侵檢測系統(tǒng)普遍存在漏報率和誤報率偏高的問題,這極大的影響了系統(tǒng)的性能。
1.3將神經(jīng)網(wǎng)絡技術(shù)應用于入侵檢測系統(tǒng)的優(yōu)勢
將神經(jīng)網(wǎng)絡技術(shù)應用到入侵檢測研究中。主要有以下優(yōu)勢:(1)誤警率低?,F(xiàn)有系統(tǒng)的一大缺點就是誤報率較高,這是由于其采用的模式匹配模塊缺乏自學習能力導致的,神經(jīng)網(wǎng)絡模型有較高的自適應和自學習能力,可以很好的解決這一問題。(2)自適應性好。傳統(tǒng)的入侵檢測系統(tǒng)需要對每種已知的攻擊行為制定專家系統(tǒng)shell來編碼和解釋。當新的攻擊類型出現(xiàn)時,需要重新進行編碼和解釋,這極大的增加了系統(tǒng)的更新和維護成本。而基于神經(jīng)網(wǎng)絡技術(shù)的系統(tǒng)則不依靠信號的模式匹配,其具有很強的自適應性,當需要對系統(tǒng)進行更新時,也不會造成太大的學習成本。(3)漏報率低。傳統(tǒng)入侵檢測系統(tǒng),特別是采用誤用檢測法的系統(tǒng)對于新的攻擊行為會有較高的漏報率,而采用神經(jīng)網(wǎng)絡技術(shù)則可以有效解決這一問題。
1.4基于神經(jīng)網(wǎng)絡的入侵檢測模型
本文借鑒文獻[34],結(jié)合神經(jīng)網(wǎng)絡的相關(guān)特點,建立了如圖1所示的檢測模型。在圖1的入侵檢測系統(tǒng)中,神經(jīng)網(wǎng)絡訓練模塊1在發(fā)現(xiàn)新的攻擊類型后會將相關(guān)信息輸入到神經(jīng)網(wǎng)絡訓練模塊2中進行訓練,從而擴充誤用檢測庫的數(shù)量,極大地提高了該系統(tǒng)的實用性,該系統(tǒng)主要分為以下幾個模塊:(1)數(shù)據(jù)采集模塊數(shù)據(jù)采集模塊采用Winpcap來捕獲網(wǎng)絡中的數(shù)據(jù)包和處理系統(tǒng)日志并送入預處理模塊。Winpcap體系結(jié)構(gòu)利用的Packet.dll和Wpcap.dll兩個API為用戶提供支持。(2)數(shù)據(jù)預處理模塊對Winpcap采集到的數(shù)據(jù)進行篩選和處理,檢查其格式,并調(diào)用不同的分析程序段對包中不同協(xié)議類型的內(nèi)容進行分析,以轉(zhuǎn)化為神經(jīng)網(wǎng)絡所能識別的標準格式。(3)神經(jīng)網(wǎng)絡模塊本系統(tǒng)建立了分別基于誤用和異常檢測庫的神經(jīng)網(wǎng)絡模型。該網(wǎng)絡首先需要一定樣本的訓練,然后即可以對相關(guān)的入侵行為進行識別,并把確定的行為報送給入侵響應模塊。(4)報警響應模塊該模塊的功能主要有兩個:一是記錄入侵行為的時間日志,以便復查、分析及作為證據(jù),并保證這些記錄不能被擦除或遠程銷毀;二是及時報警,通知網(wǎng)絡管理人員及時采取相應措施以阻止網(wǎng)絡入侵行為。
2系統(tǒng)的試驗過程及結(jié)果分析
2.1實驗環(huán)境
本次實驗的硬件平臺為Inteli53.2GHz,8GB內(nèi)存和1TB硬盤的計算機,實驗在Windows8平臺上用Matlab語言編程實現(xiàn)。
2.2試驗數(shù)據(jù)源的選取
本文所采用的分析數(shù)據(jù)是目前入侵檢測研究中常用的KDDCup1999Data數(shù)據(jù)集,該數(shù)據(jù)集包含了近500萬條模擬網(wǎng)絡環(huán)境中的各種攻擊和正常訪問鏈接的記錄。其中入侵行為主要包含4種常見的攻擊類型和1種新的攻擊類型,它們分別是拒絕服務攻擊(DenialofService,DOS)、本地用戶權(quán)限提升攻擊(UsertoRoot,U2R)、遠程攻擊(RemotetoLocal,R2L)、探測攻擊(Probe)和新類型攻擊(Other)[5],這5種攻擊類型中包含的18種具體的攻擊名稱如表1所示。在KDDCup1999Data數(shù)據(jù)集中,每條鏈接都包含41個特征,標志著這條鏈接記錄的各個屬性,其中最后一個特征為表明其為正常數(shù)據(jù)或入侵的類型。本文選擇其中比較重要的24個特征作為神經(jīng)網(wǎng)絡的輸入值,再對這24個屬性進行編碼處理,將符號屬性轉(zhuǎn)化為神經(jīng)網(wǎng)絡可以識別的數(shù)值型,最后進行歸一化處理??紤]到實驗用機的數(shù)據(jù)處理能力,本次實驗從KDDCup1999Data數(shù)據(jù)集中選取試驗數(shù)據(jù)7600條,并取盡可能多的包含常見的攻擊方法,且保證每種攻擊方法有一定數(shù)量的數(shù)據(jù)個數(shù),以滿足神經(jīng)網(wǎng)絡的訓練需求,其具體的數(shù)據(jù)分布如表2所示。在Matlab中定義該神經(jīng)網(wǎng)絡對攻擊類型的判斷輸出如表3所示。
2.3構(gòu)建BP神經(jīng)網(wǎng)絡
論文關(guān)鍵詞:模擬電路;故障診斷;小波神經(jīng)網(wǎng)絡
論文摘要:分析了模擬電路故障診斷的重要性和目前存在的困難,對基于小渡分析理論和神經(jīng)網(wǎng)絡理論的模擬電路故障診斷方法進行了綜述.指出了小波神經(jīng)網(wǎng)絡應用于模擬電路故障診斷存在的問題和未來的應用前景。
模擬電路故障診斷在理論上可概括為:在已知網(wǎng)絡拓撲結(jié)構(gòu)、輸人激勵和故障響應或可能已知部分元件參數(shù)的情況下,求故障元件的參數(shù)和位置。
盡管目前模擬電路故障診斷理論和方法都取得了不少成就,提出了很多故障診斷方法,如故障字典法、故障參數(shù)識別法、故障驗證法等。但是由于模擬電路測試和診斷有其自身困難,進展比較緩慢。其主要困難有:模擬電路中的故障模型比較復雜,難以作簡單的量化;模擬電路中元件參數(shù)具有容差,增加了故障診斷的難度;在模擬電路中廣泛存在著非線性問題,為故障的定位診斷增加了難度;在一個實用的模擬電路中,幾乎無一例外地存在著反饋回路,仿真時需要大量的復雜計算;實際的模擬電路中可測電壓的節(jié)點數(shù)非常有限.導致可用于作故障診斷的信息量不夠充分,造成故障定位的不確定性和模糊性。
因此,以往對模擬電路故障診斷的研究主要停留在中小規(guī)模線性無容差或小容差的情況,有些方法也已成功地應用于工程實際。但如何有效地解決模擬電路的容差和非線性問題,如何解決故障診斷的模糊性和不確定性等是今后迫切需要解決的問題。小波神經(jīng)網(wǎng)絡則因其利于模擬人類處理問題的過程、容易顧及人的經(jīng)驗且具有一定的學習能力等特點,所以在這一領域得到了廣泛應用。
1小波分析理論在模擬電路故障診斷中的應用現(xiàn)狀分析
簡單地講,小波就是一個有始有終的小的“波浪”小波分析源于信號分析,源于函數(shù)的伸縮和平移,是Fourier分析、Gabor分析和短時Fourier分析發(fā)展的直接結(jié)果。小波分析的基木原理是通過小波母函數(shù)在尺度上的伸縮和時域上的平移來分析信號,適當選擇母函數(shù).可以使擴張函數(shù)具有較好的局部性,小波分析是對信號在低頻段進行有效的逐層分解,而小波包分析是對小波分析的一種改進,它為信號提供了一種更加精細的分析方法,對信號在全頻段進行逐層有效的分解,更有利于提取信號的特征。因此,它是一種時頻分析方法。在時頻域具有良好的局部化性能并具有多分辨分析的特性,非常適合非平穩(wěn)信號的奇異性分析。如:利用連續(xù)小波變換可以檢測信號的奇異性,區(qū)分信號突變和噪聲,利用離散小波變換可以檢測隨機信號頻率結(jié)構(gòu)的突變。
小波變換故障診斷機理包括:利用觀測器信號的奇異性進行故障診斷以及利用觀測器信號頻率結(jié)構(gòu)的變化進行故障診斷。小波變換具有不需要系統(tǒng)的數(shù)學模型、故障檢測靈敏準確、運算量小、對噪聲的抑制能力強和對輸入信號要求低的優(yōu)點。但在大尺度下由于濾波器的時域?qū)挾容^大,檢測時會產(chǎn)生時間延遲,且不同小波基的選取對診斷結(jié)果也有影響。在模擬電路故障診斷中,小波變換被有效地用來提取故障特征信息即小波預處理器之后,再將這些故障特征信息送人故障分類處理器進行故障診斷。小波分析理論的應用一般被限制在小規(guī)模的范圍內(nèi),其主要原因是大規(guī)模的應用對小波基的構(gòu)造和存儲需要的花費較大。
2神經(jīng)網(wǎng)絡理論在模擬電路故障診斷中的應用分析
人工神經(jīng)網(wǎng)絡(ANN)是在現(xiàn)代神經(jīng)科學研究成果的基礎上提出來的,是一種抽象的數(shù)學模型,是對人腦功能的模擬。經(jīng)過十幾年的發(fā)展,人工神經(jīng)網(wǎng)絡已形成了數(shù)十種網(wǎng)絡,包括多層感知器Kohomen自組織特征映射、Hopfield網(wǎng)絡、自適應共振理論、ART網(wǎng)絡、RBF網(wǎng)絡、概率神經(jīng)網(wǎng)絡等。這些網(wǎng)絡由于結(jié)構(gòu)不同,應用范圍也各不相同。由于人工神經(jīng)網(wǎng)絡本身不僅具有非線性、自適應性、并行性、容錯性等優(yōu)點以及分辨故障原因、故障類型的能力外,而且訓練過的神經(jīng)網(wǎng)絡能儲存有關(guān)過程的知識,能直接從定量的、歷史故障信息中學習。所以在20世紀80年代末期,它已開始應用于模擬電路故障診斷。隨著人工神經(jīng)網(wǎng)絡的不斷成熟及大量應用,將神經(jīng)網(wǎng)絡廣泛用于模擬電路的故障診斷已是發(fā)展趨勢。BY神經(jīng)網(wǎng)絡由于具有良好的模式分類能力,尤其適用于模擬電路故障診斷領域,因而在模擬電路故障診斷系統(tǒng)中具有廣泛的應用前景,也是目前模擬電路故障診斷中用得較多而且較為有效的一種神經(jīng)網(wǎng)絡。
3小波神經(jīng)網(wǎng)絡的應用進展分析
3,1小波分析理論與神經(jīng)網(wǎng)絡理論結(jié)合的必要性
在神經(jīng)網(wǎng)絡理論應用于模擬電路故障診斷的過程中,神經(jīng)網(wǎng)路對于隱層神經(jīng)元節(jié)點數(shù)的確定、各種參數(shù)的初始化和神經(jīng)網(wǎng)絡結(jié)構(gòu)的構(gòu)造等缺乏更有效的理論性指導方法,而這些都將直接影響神經(jīng)網(wǎng)絡的實際應用效果。小波分析在時域和頻域同時具有良好的局部化特性,而神經(jīng)網(wǎng)絡則具有自學習、并行處理、自適應、容錯性和推廣能力二因此把小波分析和神經(jīng)網(wǎng)絡兩者的優(yōu)點結(jié)合起來應用于故障診斷是客觀實際的需要。
目前小波分析與神經(jīng)網(wǎng)絡的結(jié)合有兩種形式,一種是先利用小波變換對信號進行預處理,提取信號的特征向量作為神經(jīng)網(wǎng)絡的輸人,另一種則是采用小波函數(shù)和尺度函數(shù)形成神經(jīng)元,達到小波分析和神經(jīng)網(wǎng)絡的直接融合第一種結(jié)合方式是小波神經(jīng)網(wǎng)絡的松散型結(jié)合,第二種結(jié)合方式是小波神經(jīng)網(wǎng)絡的緊致型結(jié)合。
3.2小波分析理論與神經(jīng)網(wǎng)絡理論的結(jié)合形式
小波與神經(jīng)網(wǎng)絡的松散型結(jié)合,即:用小波分析或小波包分析作為神經(jīng)網(wǎng)絡的前置處理手段,為神經(jīng)網(wǎng)絡提供輸人特征向魚具體來說就是利用小波分析或小波包分析,把信號分解到相互獨立的頻帶之內(nèi),各頻帶內(nèi)的能童值形成一個向覺,該向童對不同的故障對應不同的值,從而可作為神經(jīng)網(wǎng)絡的輸入特征向量一旦確定神經(jīng)網(wǎng)絡的輸入特征向童,再根據(jù)經(jīng)驗確定采用哪種神經(jīng)網(wǎng)絡及隱層數(shù)和隱層單元數(shù)等,就可以利用試驗樣本對神經(jīng)網(wǎng)絡進行訓練,調(diào)整權(quán)值,從而建立起所需的小波神經(jīng)網(wǎng)絡模型。
小波與神經(jīng)網(wǎng)絡的緊致型結(jié)合,即:用小波函數(shù)和尺度函數(shù)形成神經(jīng)元,達到小波分析和神經(jīng)網(wǎng)絡的直接融合,稱為狹義上的小波神經(jīng)網(wǎng)絡,這也是常說的小波神經(jīng)網(wǎng)絡。它是以小波函數(shù)或尺度函數(shù)作為激勵函數(shù),其作用機理和采用Sigmoid函數(shù)的多層感知器基本相同。故障診斷的實質(zhì)是要實現(xiàn)癥狀空間到故障空間的映射,這種映射也可以用函數(shù)逼近來表示。小波神經(jīng)網(wǎng)絡的形成也可以從函數(shù)逼近的角度加以說明。常見的小波神經(jīng)網(wǎng)絡有:利用尺度函數(shù)作為神經(jīng)網(wǎng)絡中神經(jīng)元激勵函數(shù)的正交基小波網(wǎng)絡、自適應小波神經(jīng)網(wǎng)絡、多分辨率小波網(wǎng)絡、區(qū)間小波網(wǎng)絡等。
3.3小波分析理論與神經(jīng)網(wǎng)絡理論結(jié)合的優(yōu)點
小波神經(jīng)網(wǎng)絡具有以下優(yōu)點:一是可以避免M LY等神經(jīng)網(wǎng)絡結(jié)構(gòu)設計的育目性;二是具有逼近能力強、網(wǎng)絡學習收斂速度快、參數(shù)的選取有理論指導、有效避免局部最小值問題等優(yōu)點。
在模擬電路故障診斷領域,小波神經(jīng)網(wǎng)絡還是一個嶄新的、很有前途的應用研究方向。隨著小波分析理論和神經(jīng)網(wǎng)絡理論的不斷發(fā)展,小波神經(jīng)網(wǎng)絡應用于模擬電路故障診斷領域?qū)⑷找娉墒臁?/p>
最近幾年,隨著科技的進步專家系統(tǒng)的研究已經(jīng)滲透到農(nóng)業(yè)生產(chǎn)領域,并發(fā)揮出了巨大的作用。然而,傳統(tǒng)專家系統(tǒng)表現(xiàn)出一定的局限性:基于規(guī)范的推理難以真正模仿人類專家的推理過程,還存在知識獲取和表達力上的薄弱、學習能力較差、容錯性差等問題,嚴重影響了專家系統(tǒng)的開發(fā)應用。人工神經(jīng)網(wǎng)絡是模擬人腦思考過程的人工智能技術(shù)之一。它不需要任何先驗公式,就能從已有數(shù)據(jù)中自動地歸納總結(jié)出規(guī)律。它具有很強的非線性映射能力,特別適合于因果關(guān)系復雜的非確定性識別、判斷和分類等問題。根據(jù)這兩種系統(tǒng)的特點,本文提出一種基于人工神經(jīng)網(wǎng)絡的蜜桃生產(chǎn)專家統(tǒng),即將人工神經(jīng)網(wǎng)絡作為專家系統(tǒng)的輸入,專家系統(tǒng)用來為神經(jīng)網(wǎng)絡分析結(jié)果 。
全國蜜桃病蟲害的原因大致相同,可以在同一個系統(tǒng)里應用。全國蜜桃病害發(fā)生的原因一般可分為兩大類,一是由生物因素引起的傳染性病害病原物主要有細菌、真菌、病毒和線蟲等,都具有傳染性;二是非生物因素所引起的病害,如營養(yǎng)和水分的多少、溫度的高低、日照的長短強弱、空氣污染等環(huán)境因素,這類病害不互相傳染,稱之為非傳染性病害。由于這兩種病害的表面特征具有很多相似性,所以將兩種病蟲害合并在一起研究,以蜜桃炭疽病、白腐病、霜霉病等傳染性病害和蜜桃水罐子、日燒病、缺氮癥等 10種非傳染性病害為研究對象進行知識樣本化處理。
首先是專家知識數(shù)據(jù)庫的建立。這部分知識構(gòu)成專家系統(tǒng)主要的知識來源。用戶輸入輸出接口及知識轉(zhuǎn)換模塊負責與用戶的交互,將用戶輸入的癥狀數(shù)據(jù)轉(zhuǎn)換為可供推理機推理的診斷格式,同時診斷出的結(jié)果通過人機接口返回給用戶。推理機和人工神經(jīng)網(wǎng)絡及知識庫是專家系統(tǒng)的核心部分,包括基本推理、人工神經(jīng)網(wǎng)絡推理、知識庫的存儲查詢和維護。
專家系統(tǒng)運行過程如下,首先專家系統(tǒng)進行專家知識規(guī)范的初始化。由蜜桃病害診斷專家經(jīng)過大量實踐和科學分析論證的結(jié)果作為專家系統(tǒng)的主要知識來源,手動輸入專家系統(tǒng)。對輸入專家知識進行規(guī)范化,把形成知識規(guī)范的內(nèi)容存入到知識庫中。同時對專家知識規(guī)范進行樣本化處理,形成人工神經(jīng)網(wǎng)絡所需的學習樣本,然后再將樣本輸入到人工神經(jīng)網(wǎng)絡進行訓練。至此專家系統(tǒng)初始化完畢可以進行使用。然后,當用戶通過客戶端輸入需要診斷的癥狀,它將對輸入的病蟲害信息進行數(shù)據(jù)轉(zhuǎn)換,才能變成推理機可以快速處理的數(shù)據(jù)。最后,推理機先要查詢知識庫中已經(jīng)存在的專家知識數(shù)據(jù)庫,如果專家知識庫中存在相匹配的診斷規(guī)范那就可以直接給出診斷結(jié)果。如沒有符合要求的信息則利用人工神經(jīng)網(wǎng)絡進行推理,這樣才能得出可靠的診斷結(jié)果。它將得出的診斷結(jié)果輸出給用戶,同時給出防治措施。
人工神經(jīng)網(wǎng)絡的學習過程與知識庫的建立是同時進行的,對樣本的訓練對整個系統(tǒng)的成敗起著至關(guān)重要的作用。首先應該選取一部分樣本進行學習,由這部分訓練得出網(wǎng)絡權(quán)重值,然后再以全部作為學習樣本。以前面得出的人工神經(jīng)網(wǎng)絡權(quán)重值作為初始權(quán)重值重新訓練人工神經(jīng)網(wǎng)絡,這樣才能得到最終可靠的權(quán)重值。對于推斷錯誤或訓練結(jié)果誤差大的樣本,系統(tǒng)利用參數(shù)修正學習算法得到新的網(wǎng)絡參數(shù)及權(quán)重值,再將其用于人工神經(jīng)網(wǎng)絡前向計算模塊中,直至滿足誤差為止。
在選取學習樣本時,既要注意蜜桃典型癥狀的使用又要注意實際生產(chǎn)中癥狀表現(xiàn)的使用。典型癥狀是突出蜜桃病害的特點,這樣可以使網(wǎng)絡較快地對所有研究的對象形成概念并抽取特征;而實際生產(chǎn)中癥狀則更能反映具體果樹的個性特征。只有使用時結(jié)合這兩類癥狀的優(yōu)點,才能提高本系統(tǒng)診斷精度和速度。
本系統(tǒng)的知識表述分為兩種:一種是將果樹專家的經(jīng)驗知識形式化成規(guī)范,并存儲在知識庫中,作為推理的原始前提;另一種是通過現(xiàn)場歷史數(shù)據(jù)對神經(jīng)網(wǎng)絡進行訓練,將難以形式化的專家經(jīng)驗以非線性映射的形式存儲于神經(jīng)網(wǎng)絡的節(jié)點上。推理機則在一定的規(guī)范指導下,針對不同情況用規(guī)范和神經(jīng)網(wǎng)絡對蜜桃缺素、病蟲害進行診斷,得出可能的診斷結(jié)果,并對診斷結(jié)果進行評價和提出防治措施。
在本系統(tǒng)中,人工神經(jīng)網(wǎng)絡系統(tǒng)在完成一個診斷實例后,可以記憶診斷過程和結(jié)果,保存到診斷規(guī)范表中。從而歸納出新的診斷范,不斷擴充知識庫的內(nèi)容,使知識庫具有自己學習功能,這是本系統(tǒng)與傳統(tǒng)專家系統(tǒng)的重要區(qū)別。在推理過程中,針對用戶輸入蜜桃病蟲害的癥狀表現(xiàn)的嚴重程度,系統(tǒng)自動會調(diào)整規(guī)范中各個節(jié)點的權(quán)重值,使每一個診斷可靠性得到提高,為下次正確診斷奠定了基礎。
本系統(tǒng)的主要優(yōu)點表現(xiàn)在: ①由于采用人工神經(jīng)網(wǎng)絡技術(shù),系統(tǒng)很自然地實現(xiàn)了邏輯推理的功能,具有較強的診斷能力。②系統(tǒng)具有知識自己學習、便于系統(tǒng)擴充和容錯性強等優(yōu)點。 ③人工神經(jīng)網(wǎng)絡嵌入到傳統(tǒng)專家系統(tǒng)中,既繼承了傳統(tǒng)專家系統(tǒng)的模塊化思想,同時也延用以往的開發(fā)成果,又融進人工神經(jīng)網(wǎng)絡的優(yōu)良特性,提高了整個專家系統(tǒng)的智能水平。隨著計算機技術(shù)在農(nóng)業(yè)領域的不斷滲透,人工神經(jīng)網(wǎng)絡硬件和軟件的不斷發(fā)展,運用網(wǎng)絡模型的各種算法的不斷出現(xiàn),人工神經(jīng)網(wǎng)絡也會不斷地與專家系統(tǒng)進行結(jié)合,比較完善地解決基于符號的專家診斷系統(tǒng)所不能解決的一系列問題,有著極其廣泛的應用前景。但是人工神經(jīng)網(wǎng)絡專家系統(tǒng)的集成技術(shù)還處于探索階段,其中仍有許多問題需要進一步的深入,都是需要探討的問題 。
參考文獻
[1]徐麗娜.神經(jīng)網(wǎng)絡控制北京:電子工業(yè)出版社,2003,5-6.
關(guān)鍵詞: BP算法; 入侵檢測; 神經(jīng)網(wǎng)絡; 隨機優(yōu)化算子
中圖分類號: TN915.08?34; TP393.08 文獻標識碼: A 文章編號: 1004?373X(2017)11?0091?04
Research on BP algorithm based on neural network and its application
in network intrusion detection
LUO Junsong
(College of Information Science and Technology, Chengdu University of Technology, Chengdu 610059, China)
Abstract: By analyzing the problems of BP neural network applied to the detection system, the automatic variable?rate learning method, forgetting factor and random optimization operator are introduced into the BP algorithm on the basis of traditional BP algorithm. The BP algorithm is applied to the network intrusion detection system. The simulation results show that the improved BP neural network algorithm applied to intrusion detection has the characteristics of fast speed and easy convergence, and can quickly obtain the target accuracy of 0.02. The detection rate, missed detection rate and false alarm rate of the improved BP neural network algorithm can reach up to 96.17%, 3.83% and 4.15% respectively, whose detection rate is 11.65% higher than that of the traditional BP algorithm, the missed detection rate is 10.66% lower than that of the traditional BP algorithm, and the false alarm rate is 4.07% lower than that of the traditional BP algorithm. The superiority of the algorithm is obvious.
Keywords: BP algorithm; intrusion detection; neural network; random optimization operator
0 引 言
隨著通信技術(shù)和計算機技術(shù)的快速發(fā)展,計算機的網(wǎng)絡規(guī)模越來越大,通信系統(tǒng)也越來越復雜,由于計算機網(wǎng)絡本身具有漏洞,同時還有黑客對網(wǎng)絡進行攻擊,因此計算機網(wǎng)絡受到的威脅和攻擊日益增加[1?3]。網(wǎng)絡安全形勢越來越嚴峻。通過入侵檢測技術(shù)可收集計算機網(wǎng)絡中的若干關(guān)鍵點信息,同時對這些信息進行分析,并對網(wǎng)絡是否遭到襲擊、是否存在違反安全策略行為進行檢查,并做出及時響應,對網(wǎng)絡連接進行切斷并報警等[4?6]。目前傾向于通過入侵檢測技術(shù)結(jié)合人工智能算法進行相關(guān)研究,對于各種入侵行為,采用人工智能算法通過自學習、自適應能力進行識別、檢測[7]。
作為一種重要的模式識別方法,人工神經(jīng)網(wǎng)絡具有自學習、自組織、推廣能力強等特點[8]。在入侵檢測系統(tǒng)中,應用人工神經(jīng)網(wǎng)絡方法可使系統(tǒng)能較好地識別已知攻擊,同時還具有對未知攻擊進行檢測的能力[9]。但是在異常入侵檢測系統(tǒng)中,應用標準BP算法存在收斂局部極小值、學習速度慢等缺點,這在很大程度上影響了入侵檢測系統(tǒng)的性能[10]。本文在對原有BP神經(jīng)網(wǎng)絡算法進行改進的基礎上,研究了優(yōu)化的神經(jīng)網(wǎng)絡BP算法及其在網(wǎng)絡入侵檢測中的應用。
1 BP神經(jīng)網(wǎng)絡
BP神經(jīng)網(wǎng)絡是一種多層前饋神經(jīng)網(wǎng)絡,包括輸入信號前向傳遞和誤差反向傳播兩個過程,在結(jié)構(gòu)上一般由輸入層、隱含層、輸出層三層構(gòu)成,每一層的神經(jīng)元狀態(tài)只影響下一層神經(jīng)元狀態(tài)。它被廣泛應用在BP神經(jīng)網(wǎng)絡預測模型中。網(wǎng)絡結(jié)構(gòu)一般只需單個隱含層就能以任意精度逼近任意有理函數(shù)。訓練樣本的輸入、輸出向量的維數(shù)分別決定了網(wǎng)絡的輸入、輸出層神經(jīng)節(jié)點個數(shù),典型的只有單個隱含層、單個輸出的BP神經(jīng)網(wǎng)絡結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡拓撲結(jié)構(gòu)
圖1中,為BP神經(jīng)網(wǎng)絡的一組輸入向量;為網(wǎng)絡的目標輸出值;為輸入層與隱含層之間的連接權(quán)值;為隱含層c輸出層之間的連接權(quán)值;分別為隱含層和輸出層的節(jié)點閾值。若設隱含層節(jié)點個數(shù)為則在前向傳遞中,輸入信號向量從輸入層經(jīng)隱含層逐層傳輸,最后到輸出層,通過各層連接權(quán)值矢量、閾值矢量和每一層相應的激勵函數(shù)進行計算。得到輸出層的預測輸出值若預測值與目標值之間有誤差,則誤差部分轉(zhuǎn)入反向逐層傳遞,沿誤差減小方向調(diào)整網(wǎng)絡各層連接的權(quán)值、閾值。反復執(zhí)行以上過程,使得BP神經(jīng)網(wǎng)絡的預測值不斷逼近實際輸出值。
2 入侵檢測算法
網(wǎng)絡入侵檢測通過分析系統(tǒng)數(shù)據(jù),一旦有網(wǎng)絡攻擊行為、非授權(quán)網(wǎng)絡訪問時,入侵檢測系統(tǒng)就會報警,同時對入侵線路進行切斷。入侵檢測系統(tǒng)應具有監(jiān)視系統(tǒng)、用戶的活動,對系統(tǒng)、用戶活動進行分析,對異常行為模式進行分析,對已知進攻模式進行識別,審計系統(tǒng)弱點、構(gòu)造,跟蹤管理系統(tǒng)審計,對系統(tǒng)、數(shù)據(jù)文件完整性進行評估,對用戶違反安全策略行為進行識別。常見的攻擊手段目前包括非授權(quán)獲得權(quán)限、非授權(quán)訪問、探測、拒絕服務等。在實際中,這些攻擊手段變異很大,入侵檢測難度較大。BP神經(jīng)網(wǎng)絡具有較強的自學習和自組織能力,經(jīng)過訓練后,對以前觀察到的入侵檢測行為模式,BP神經(jīng)網(wǎng)絡會進行歸納和總結(jié),可識別出已觀察到的攻擊和已知攻擊變異的新攻擊,圖2為網(wǎng)絡的入侵檢測過程。
3 改進的BP神經(jīng)網(wǎng)絡入侵檢測
3.1 BP神經(jīng)網(wǎng)絡用于檢測系統(tǒng)存在的問題
BP神經(jīng)網(wǎng)絡采用分布式存儲,但傳統(tǒng)的BP算法存在一些不足,包括極小的局部,較慢的學習收斂速度,缺乏理論隱含層節(jié)點的選取,已經(jīng)學完樣本會受到新加入樣本的影響,每次樣本的輸入必須具有確定相同的特征數(shù)目。
在入侵檢測中,BP神經(jīng)網(wǎng)絡的實現(xiàn)方式主要是與現(xiàn)有系統(tǒng)結(jié)合進行,BP神經(jīng)網(wǎng)絡與應用模式識別系統(tǒng)相結(jié)合使用,例如與專家系統(tǒng)結(jié)合。在這種方式中,BP神經(jīng)網(wǎng)絡可作為系統(tǒng)組成部分,通常是作為信息過濾模塊或信息預處理模塊,當信息輸入系統(tǒng)后,神經(jīng)網(wǎng)絡會對信息做過濾處理。另外,神經(jīng)網(wǎng)絡可規(guī)則自動生成模塊,進而更新入侵檢測系統(tǒng)規(guī)則庫、模式庫。這種方式的優(yōu)點是能將入侵檢測系統(tǒng)的工作性能提高,缺點是這種方式神經(jīng)網(wǎng)絡的真正優(yōu)勢不能得到充分發(fā)揮。
3.2 改進的神經(jīng)網(wǎng)絡算法
在信號檢測、非線性處理、模式識別等領域,人工神經(jīng)網(wǎng)絡應用較多,這是因為人工神經(jīng)網(wǎng)絡自組織性、自適應性非常好,同時其非線性特性明顯,信息存儲為分布式模式、可進行大規(guī)模的并行處理。實質(zhì)上BP神經(jīng)網(wǎng)絡算法屬于非線性優(yōu)化的梯度算法,在收斂性上,該算法存在不足,也就是說該算法的學習結(jié)果有可能落入到均方誤差全局最小點,也有可能落入到局部極小點,造成算法不收斂,使工作模式陷入錯誤。
入侵檢測系統(tǒng)的主要功能是對入侵計算機網(wǎng)絡的行為和計算機系統(tǒng)進行檢測,包括數(shù)據(jù)聚類、數(shù)據(jù)采集、分析判斷行為、對入侵行為進行響應、報警等。BP網(wǎng)絡各層神經(jīng)元僅連接相鄰層神經(jīng)元;在各層內(nèi)部,神經(jīng)元間無連接;同時各層神經(jīng)元間也無反饋連接。在信號輸入后,傳播到隱節(jié)點經(jīng)變換函數(shù)再將信息傳播到輸出節(jié)點,經(jīng)過處理,輸出結(jié)果。本文將改進的BP 神經(jīng)網(wǎng)絡用于入侵檢測系統(tǒng),其檢測模型見圖3。
3.2.1 采用自動變速率學習法
傳統(tǒng)BP算法在梯度基礎上,采用最陡下降法LMS學習問題,學習步長為一個較小值,并且這個值是固定不變的,對網(wǎng)絡收斂無益處。因而選擇基于梯度方向自動對學習速率進行調(diào)節(jié)。通過梯度對學習方向做最終確定,在梯度方向上,學習步長由速率決定。若相鄰兩次梯度方向是相同的,表明該方向的收斂有利;若相鄰兩次梯度方向是相反的,表明該方向的收斂不穩(wěn)定。根據(jù)這個規(guī)律,通過兩次相對梯度的變化確定學習步長。當兩次梯度為相同方向時,學習步長增大,該方向上學習速度要加快;在兩次梯度為相反方向時,學習步長減小,整個網(wǎng)絡收斂速度要加快,自適應速率調(diào)節(jié)方法如下:
(1)
(2)
式中表示在時刻和時刻梯度的乘積。
3.2.2 引入遺忘因子
根據(jù)相鄰兩次梯度變化,通過自適應變速率學習法對學習步長算法進行確定。變化單純學習速率,這時收斂速度不能完全保證,但不會有振蕩產(chǎn)生,因此考慮變速率學習法,在權(quán)值調(diào)節(jié)量上,加一個量,這個量正比于前幾次的加權(quán),權(quán)值調(diào)節(jié)量采用式(3)計算:
(3)
式中:表示遺忘因子,引入遺忘因子項,在學習過程中可通過對學習速率進行等效微調(diào)的效果進行說明。遺忘因子的作用是緩沖平滑,并使調(diào)節(jié)的平均方向朝底部變化。
3.2.3 引入隨機優(yōu)化算子
BP神經(jīng)網(wǎng)絡算法在引入遺忘因子,采用自動變速率學習法后,雖然可微調(diào)學習速率,但BP神經(jīng)網(wǎng)絡的不足和限制仍存在,為了進一步對BP神經(jīng)網(wǎng)絡進行優(yōu)化,本文引入隨機優(yōu)化算子,當網(wǎng)絡權(quán)值誤差迭代達到一定次數(shù)后,收斂不明顯或連續(xù)幾次發(fā)生系統(tǒng)誤差函數(shù)梯度變化,這種情況表明網(wǎng)絡進入疲乏狀態(tài),要借助外界推動力對網(wǎng)絡進行激活。當出現(xiàn)這兩種情況時,與權(quán)值維數(shù)相同的隨機數(shù)就產(chǎn)生了,直接將權(quán)值和隨機數(shù)相加,對系統(tǒng)誤差變化進行判斷,若誤差未降低,繼續(xù)產(chǎn)生隨機數(shù),進行權(quán)值修改,當誤差出現(xiàn)減少時停止,然后再從新權(quán)值繼續(xù)開始BP算法,隨機優(yōu)化算子可隨機變化搜索方向,局部極小點就擺脫掉了,圖4為改進的BP算法流程圖。
4 仿真實驗
本文的仿真實驗在Matlab 7.0實驗平臺進行,以此來驗證提出改進的BP神經(jīng)網(wǎng)絡算法是否能達到較好的效果,本文同時給出采用未改進的BP算法網(wǎng)絡入侵檢測和改進的BP神經(jīng)網(wǎng)絡算法網(wǎng)絡入侵檢測模型仿真實驗結(jié)果。
圖5為兩種算法得到的訓練精度。從兩種算法的實驗仿真結(jié)果可看出,將改進的BP神經(jīng)網(wǎng)絡算法用于入侵檢測,速度快、易收斂,目標精度0.02很快達到。在規(guī)定周期內(nèi),未改進的BP算法不能達到規(guī)定的目標精度,易陷入局部極小,本文提出的改進的BP算法所用訓練周期較短,學習時間縮短顯著,效果良好。
評價檢測模型的標準為漏報率、誤報率、檢測率,其定義分別如下:
表1為未改進的BP算法與改進的BP算法的比較結(jié)果,從表1中可看出,改進的BP神經(jīng)網(wǎng)絡算法的檢測率、漏報率、誤報率分別為96.17%,3.83%,4.15%,檢測率比未改進的BP算法要高出11.65%,漏報率比未改進的BP算法要低10.66%,誤報率比未改進的BP算法要低4.07%。
表1 兩種算法的入侵檢測結(jié)果
[算法 訓練周期 /s 檢測率 /% 漏報率 /% 誤報率 /% 基本BP算法 480 84.52 14.49 8.22 改進的BP算法 480 96.17 3.83 4.15 ]
5 結(jié) 語
本文在對原有BP 神經(jīng)網(wǎng)絡算法進行改進的基礎上,研究了改進優(yōu)化的BP神經(jīng)網(wǎng)絡算法及其在網(wǎng)絡入侵檢測中的應用。通過分析BP神經(jīng)網(wǎng)絡用于檢測系統(tǒng)存在的問題,在傳統(tǒng)BP算法基礎上,采用自動變速率學習法,引入遺忘因子、隨機優(yōu)化算子,并將其用于網(wǎng)絡入侵檢測系統(tǒng)。仿真實驗表明,改進的BP神經(jīng)網(wǎng)絡算法用于入侵檢測,速度快易收斂,目標精度0.02很快達到。本文算法具有明顯的優(yōu)越性,各種入侵行為檢測率得到明顯提高,系統(tǒng)誤報率也降低了,入侵檢測系統(tǒng)性能得到有效改進,本文算法優(yōu)越性明顯。
參考文獻
[1] 宋玲,常磊.變異粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡在入侵檢測中的應用[J].智能系統(tǒng)學報,2013,8(6):558?563.
[2] 劉伉伉,謝福,郭雪雪.基于BP神經(jīng)網(wǎng)絡的云計算入侵檢測技術(shù)研究[J].計算機與數(shù)字工程,2014(12):2357?2361.
[3] 黃煜坤.基于BP神經(jīng)網(wǎng)絡算法的入侵檢測技術(shù)[J].電子制作,2015(10):60?62.
[4] 沈夏炯,王龍,韓道軍.人工蜂群優(yōu)化的BP 神經(jīng)網(wǎng)絡在入侵檢測中的應用[J].計算機工程,2016,42(2):190?194.
[5] 王玲.基于BP 算法的人工神經(jīng)網(wǎng)絡建模研究[J].裝備制造技術(shù),2014(1):162?164.
[6] 王俊士,李江濤.一種改進的BP神經(jīng)網(wǎng)絡算法在入侵檢測中的應用[J].電腦知識與技術(shù),2014,10(3):614?617.
[7] 顏謙和,顏珍.遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡入侵檢測系統(tǒng)[J].計算機仿真,2011,28(4):141?144.
[8] 汪潔.基于神經(jīng)網(wǎng)絡的入侵z測系統(tǒng)的設計與實現(xiàn)[J].計算機應用與軟件,2013(5):320?322.
【Abstract】Based on the concepts of genetic algorithm and BP neural network,the paper studies the optimization of BP neural network algorithm, and the effectiveness of the algorithm is verified by an example.
【關(guān)鍵詞】遺傳算法;BP神經(jīng)網(wǎng)絡;優(yōu)化算法
【Keywords】genetic algorithm; BP neural network; algorithm optimization
【中圖分類號】TPl83 【文獻標志碼】A 【文章編號】1673-1069(2017)04-0135-02
1 引言
神經(jīng)網(wǎng)絡是一種模仿動物神經(jīng)網(wǎng)絡行為特征,進行分布式并行信息處理的算法數(shù)學模型,憑借著復雜的系統(tǒng)結(jié)構(gòu),通過對系統(tǒng)內(nèi)部節(jié)點連接關(guān)系的調(diào)節(jié),實現(xiàn)對信息的高效處理。作為技術(shù)最為成熟的神經(jīng)網(wǎng)絡模擬,BP神經(jīng)網(wǎng)絡具有良好的自學習、自適應以及泛化能力,在許多領域中都有著廣泛的應用。而針對BP神經(jīng)網(wǎng)絡在應用環(huán)節(jié)存在的問題,需要采取相應的優(yōu)化算法,提升神經(jīng)網(wǎng)絡的收斂速度和理能力。
2 遺傳算法與BP神經(jīng)網(wǎng)絡
遺傳算法遵循的是生物界中適者生存的法則,其基本原理,是指將問題參數(shù)進行編碼,形成染色體,通過迭代的方式,運用選擇、變異、交叉等運算,對種群中染色體的信息進行交換,繼而形成能夠滿足優(yōu)化目標的染色體。
BP(Back Propagation)神經(jīng)網(wǎng)絡最初產(chǎn)生于1986年,屬于一種依照誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W(wǎng)絡,也是當前技術(shù)條件下應用最為廣泛的神經(jīng)網(wǎng)絡模型之一,其可以對輸入-輸出模式的映射關(guān)系進行學習和存儲,同時不需要對能夠揭示這些映射關(guān)系的方程進行描述。神經(jīng)網(wǎng)絡具備自適應和自組織能力,在進行學習和訓練的過程中,可以通過改變突觸權(quán)重值的方式,更好地適應周邊環(huán)境的變化。在同一個神經(jīng)網(wǎng)絡中,如果內(nèi)容不同,學習方式不同,則會產(chǎn)生不同的功能。人工神經(jīng)網(wǎng)絡從本質(zhì)上看,更加接近具備自主學習能力的系統(tǒng),可以通過不斷的學習,超出最初設計的知識水平。在人工神經(jīng)網(wǎng)絡中,比較常見的學習方法有兩種,一是有監(jiān)督的學習,可以結(jié)合標準樣本,進行分類或者模仿,二是無監(jiān)督的學習,在制定相應的學習規(guī)則后,系統(tǒng)會根據(jù)自身所處環(huán)境,進行學習內(nèi)容的分析和選擇,更加接近人腦的功能特點。
3 基于遺傳算法的優(yōu)化BP神經(jīng)網(wǎng)絡算法
3.1 算法基本原理
①BP算法。BP神經(jīng)網(wǎng)絡算法主要包括了數(shù)據(jù)流的前向計算和誤差信號的反向傳播兩個方面的內(nèi)容,結(jié)合三層BP神經(jīng)網(wǎng)絡的拓撲結(jié)構(gòu),假定x為網(wǎng)絡輸入,y為結(jié)果輸出,當處于正向傳播過程時,數(shù)據(jù)的傳輸為輸入層隱層輸出層,每一層神經(jīng)元的狀態(tài)僅僅會影響下一層神經(jīng)元,而如果輸出層無法獲得期望輸出,則會自動轉(zhuǎn)向誤差信號的反向傳播流程。在BP神經(jīng)網(wǎng)絡中,網(wǎng)絡的訓練實際上是對閾值和權(quán)值進行調(diào)整的過程,當網(wǎng)絡誤差縮小到設定值,或者訓練步數(shù)達到設定步數(shù)時,會自動停止訓練。
②遺傳算法。遺傳算法可以從代表問題可能潛在解集的種群開始,種群中的每一個染色體都帶有相應的特征,染色體可以看作若干基因的集合,為了便于分析,需要做好編碼,完成從表現(xiàn)型到基因型的映射。在演化過程中,依照問題域中存在的個體的適應度,進行個體的挑選和交叉,然后變異出新的解集種群。選擇末代種群中的最優(yōu)個體進行解碼,就可以得到問題的近似最優(yōu)解。
3.2 優(yōu)化BP算法
BP神經(jīng)網(wǎng)絡算法具有極強的局部尋優(yōu)能力,但是容易陷入局部極小的問題,遺傳算法具有良好的全局優(yōu)化性和自適應性,但是局部尋優(yōu)能力不足。對此,可以將遺傳算法與BP算法結(jié)合起來,實現(xiàn)對于網(wǎng)絡拓撲結(jié)構(gòu)和網(wǎng)絡權(quán)值、網(wǎng)絡閾值的優(yōu)化。
①權(quán)值優(yōu)化。在傳統(tǒng)的BP網(wǎng)絡中,連接權(quán)值的學習算法容易陷入局部極小,無法得到全局最優(yōu)。對此,可以引入遺傳算法代替?zhèn)鹘y(tǒng)的學習方法,對神經(jīng)網(wǎng)絡的權(quán)值進行優(yōu)化。在這個過程中,需要解決幾個比較關(guān)鍵的問題,一是編碼方案,可供選擇的權(quán)值編碼方式包括實數(shù)編碼和二級制編碼,前者是以實數(shù)表示權(quán)值,非常直觀,不過需要對遺傳算子進行重新設計,后者是利用0,1字符串表示權(quán)值;二是適應度函數(shù),引入遺傳算法后,網(wǎng)絡的機構(gòu)以確定,在這種情況下,網(wǎng)絡的誤差越大,適應度越?。蝗沁M化過程,主要是對選擇、交叉、變異算子的選擇,如果必要,也可以重新設計;四是混合訓練神經(jīng)網(wǎng)絡,遺傳算法能夠在大規(guī)模、復雜性的空間中實現(xiàn)可靠搜索,而且不需要有關(guān)誤差函數(shù)梯度的信息,優(yōu)勢相當明顯??梢酝ㄟ^在誤差函數(shù)中增加懲罰項的方式,降低網(wǎng)絡的復雜程度。
②權(quán)值和結(jié)構(gòu)同時優(yōu)化。BP神經(jīng)網(wǎng)絡連接權(quán)的進化,要求明確的網(wǎng)絡結(jié)構(gòu),網(wǎng)絡結(jié)構(gòu)直接影響著神經(jīng)網(wǎng)絡本身對于信息的處理能力。神經(jīng)網(wǎng)路的結(jié)構(gòu)包括了網(wǎng)絡連接方式(拓撲結(jié)構(gòu))和節(jié)點轉(zhuǎn)換函數(shù),完善的結(jié)構(gòu)不僅需要能夠?qū)栴}進行有效解決,還不能存在冗余節(jié)點和冗余連接。伴隨著進化算法的應用,網(wǎng)絡設計在很多時候被看作搜索問題,評價的標準包括了抗噪性、學習準確率以及泛化能力等。結(jié)構(gòu)進化的關(guān)鍵體現(xiàn)在結(jié)構(gòu)編碼和算子設計,而結(jié)構(gòu)編碼方案則會影響算子設計的效果。以三層前饋型BP網(wǎng)絡為例,其輸入層和輸出層節(jié)點的數(shù)量已經(jīng)確定,優(yōu)化算法需要重點研究隱含層的節(jié)點數(shù)量。考慮到問題本身的復雜性,二進制編碼的方法并不適用,因此選擇實數(shù)編碼,在隱含層節(jié)點增加二級制編碼作為控制基因,通過隨機函數(shù)產(chǎn)生。當控制基因的數(shù)值為0時,對應的隱含層節(jié)點對輸出層無用,而當控制基因的數(shù)值為1時,隱含層節(jié)點對輸出層作用。需要注意的一點,當選擇實數(shù)編碼方案時,為了明確編碼的長度,需要確定隱層的最大神經(jīng)元數(shù)目。
4 仿真試驗
結(jié)合已知數(shù)據(jù),對某地區(qū)小麥吸漿蟲的發(fā)生程度進行預測。對問題進行深入分析,可以轉(zhuǎn)化為相應的輸入輸出系統(tǒng),可以通過神經(jīng)網(wǎng)絡進行表達。現(xiàn)有的研究成果表明,小麥吸漿蟲的發(fā)生與氣候因素關(guān)系密切,因此可以利用氣象因子對問題進行分析。選擇2000年到2015年的氣象數(shù)據(jù),設置40個研究樣本,以x1-x14表示需要處理的原始數(shù)據(jù)(氣象因子),Y表示小麥吸漿蟲的發(fā)生程度。從減小誤差的角度,對原始數(shù)據(jù)進行預處理。以優(yōu)化后的BP算法進行神經(jīng)網(wǎng)絡訓練,結(jié)合訓練結(jié)果進行MATLAB仿真。在仿真試驗中,需要做好一些關(guān)鍵參數(shù)額的設置,遺傳算法和BP算法的最大代數(shù)分別為100,BP算法均方誤差為0.001,會激活函數(shù)為雙曲正切S型,線性輸出層,學習算法被設置為經(jīng)過改進的自適應學習率的梯度下降學習算法。
設定14作為隱層神經(jīng)元的上限,由于編碼長度固定且迭代代數(shù)一定,在所有的試驗中,遺傳算法的復雜度都是相同的。結(jié)合仿真試驗分析,隱含神經(jīng)元的最優(yōu)數(shù)目為5、6、7,與傳統(tǒng)方法得到的結(jié)果基本一致。相比較而言,利用遺傳算法同時進行結(jié)構(gòu)和權(quán)值的優(yōu)化,最為顯著的優(yōu)勢在于能夠?qū)﹄[層神經(jīng)元的數(shù)目進行自適應確定,減少嘗試的次數(shù),提升計算效率。
而結(jié)合相應的訓練結(jié)果分析,利用遺傳算法進行BP神經(jīng)網(wǎng)絡連接權(quán)值的優(yōu)化,相比較傳統(tǒng)算法更加有效,不過同樣需要進行網(wǎng)絡結(jié)構(gòu)的嘗試,換言之就是選擇合適的隱層神經(jīng)元數(shù)目。不僅如此,利用遺傳算法同時對神經(jīng)網(wǎng)絡的權(quán)值和結(jié)構(gòu)進行優(yōu)化,智能型更強,可能找到合適的初始權(quán)值和優(yōu)秀的網(wǎng)絡結(jié)構(gòu),不過,如果數(shù)據(jù)煩瑣,搜索的速度會變慢。
神經(jīng)科研究 神經(jīng)內(nèi)科論文 神經(jīng)網(wǎng)絡技術(shù) 神經(jīng)網(wǎng)絡論文 神經(jīng)外科論文 紀律教育問題 新時代教育價值觀