楊洋 陳家俊



摘要:BP神經網絡廣泛應用于眾多實際問題解決中,但是有一些缺點:容易陷入局部最小值,學習速度慢,計算精度低等。采用群智能算法優化的BP神經網絡,可行性和實用性更強。本文對群智能算法中的遺傳算法、蜂群算法、蟻群算法和螢火蟲算法優化的BP神經網絡應用進行分析和綜述,對群智能算法優化BP神經網絡的未來發展有著重要的參考價值。
關鍵詞:群體智能;BP神經網絡;遺傳算法;蜂群算法;蟻群算法;螢火蟲算法
中圖分類號:TP311? ? ?文獻標識碼:A
文章編號:1009-3044(2020)35-0007-04
開放科學(資源服務)標識碼(OSID):
Review on Application of Intelligent Algorithm to Optimize BP Neural Network
YANG Yang, CHEN Jia-jun
(School of Electronics and Information Engineering West Anhui University, Luan 237012, China)
Abstract: BP neural network is widely used in many practical problems, but it has some? disadvantages: easy to fall into local minimum value, slow learning speed, low calculation accuracy. BP neural network optimized by swarm intelligence algorithm is more feasible and practical. This paper analyzes and summarizes the application of BP neural network optimized by genetic algorithm, bee colony algorithm, ant colony algorithm and firefly algorithm, which has important reference value for the future development of swarm intelligence algorithm optimization BP neural network.
Key words: swarm intelligence; neural network; genetic algorithm; bee colony algorithm; ant colony algorithm; firefly algorithm
人工神經網絡(Artificial Neural Networks,簡寫為ANNs)也簡稱為神經網絡(NNs)或稱作連接模型(Connection Model),它是一種模仿動物神經網絡行為特征,進行分布式并行信息處理的算法數學模型。這種網絡依靠系統的復雜程度,通過調整內部大量節點之間相互連接的關系,從而達到處理信息的目的[1] 。
1986 年,Rumelhant 和McClelland 提出了多層前饋網絡的誤差反向傳播( Error Back Propagation) 神經網絡學習算法[2]。
BP神經網絡的基本原理是,利用已有結果的數據對網絡進行訓練,之后用訓練好的網絡模型對未知數據樣本進行輸出預測[3]。BP神經網絡因具有良好的非線性映射能力、自學習和自適應能力,成為目前應用最多的神經網絡之一[4]。
群體智能源于對以螞蟻、蜜蜂等為代表的社會性昆蟲的群體行為的研究,最早被用在細胞機器人系統的描述中。它的控制是分布式的,不存在中心控制,群體具有自組織性[5] 。
1989 年 Gerardo Beni 和 Jing Wang在文章《Swarm Intelligence》中第一次提出了“群體智能”這個概念[6]。
SI的優點在于[7]:(1)靈活性:整個種群能夠快速適應變化的環境;(2)魯棒性:即使少數個體無法工作,整個種群依然能夠正常運轉;(3)自組織性:整個種群只需要相對較少的監督或自上而下的控制。
目前群智能研究主要包括智能蟻群算法、螢火蟲算法、遺傳算法、混合蛙跳算法、鳥群搜索和蜂群算法等。其中,遺傳算法, 蜂群算法, 蟻群算法, 螢火蟲算法在求解實際問題時應用較為廣泛。 本文對這四種算法優化BP神經網絡的應用方法進行研究和分析,并對各種方法存在的問題進行總結,列舉了各種方法的應用場景,對群智能算法優化BP神經網絡的應用研究有一定的參考價值。
1 遺傳算法優化BP神經網絡
1.1 遺傳算法
遺傳算法(genetic algorithm,GA)受生物進化論啟發,是一種通過模擬自然界中適者生存、優勝劣汰的進化過程得到待解決問題的最優解的方法[8]。
遺傳算法對參數的編碼從多點進行操作,可以有效防止搜索過程陷于局部最優解。BP 網絡沿著誤差減小的最大梯度方向調整網絡權值,容易陷入局部最小值。采用遺傳算法優化 BP 網絡的初始權值,可以有效改善此問題[9]。
1.2 應用現狀及分析
張華偉等[10]提出了適用于拼焊板盒形件拉深成形壓邊力預測的 BP 神經網絡模型,采用遺傳算法優化神經網絡,采用實數編碼對個體進行編碼,選擇輪盤賭法,并使用精英保留策略。實驗表明,預測誤差由原本的 15.68%降至現在的5.08%,幅度明顯,滿足了實際生產中的壓邊力預測要求。
劉宇等[11]提出了基于遺傳算法優化神經網絡的多源信息融合定位方法,對組合和推算定位結果向真實定位結果訓練融合,實驗表明,預測均方誤差降低了約 75%,融合定位較單一定位方式,精度平均提升約47%。所提的優化方法具有更優的定位性能。
王倚文等[12]建立了附加攝動改正參數訓練的GA-BPNN軌道誤差模型(BDS),采用BDS星歷數據作為試驗對象,結果表明,進行衛星軌道解算補償時能提高25%-75%不等,軌道誤差得到了有效減小,對于減少BDS系統級誤差有重要參考價值。
李明星等[13]提出了以徑向基函數神經網絡構建實驗設計樣本的近似模型,然后用多目標遺傳算法進行數值優化獲得防護組件最優方案。實驗證明,優化方案滿足設計要求,可以顯著提升防雷板的防護能力。
2 人工蜂群算法優化BP神經網絡
2.1 人工蜂群算法受蜜蜂覓食行為啟發
2005 年Karaboga 等人提出了人工蜂群(Artificial Bee Colony)算法[18-19]。通過模擬蜂群的采蜜活動,用來解決高維和多目標優化問題,快速得到局部最優解。2007年~2008 年D Karaboga 提出系統的蜂群算法,并采用蜂群算法訓練人工神經網絡,取得良好的應用效果[20-21]。
Badem [22]提出一種基于混合人工蜂群的訓練策略(HABCbTS),包括一個或多個級聯到softmax分類層的自動編碼器層,來調整深度神經網絡(DNN)結構的參數。HABCbTS具有更好的分類性能,其訓練的DNN分類器適應性強,也可用于卷積神經網絡等類似神經網絡[23]。可應用在模式識別、語音處理、醫學等方面。
2.2 應用現狀及分析
徐健等[24]提出一種基于交叉運算和全局搜索因子的人工蜂群優化BP神經網絡分類方法——CGABC-BP(Cross GlobalArtificial Bee Colony and Back Propagation)。用這種方法對腦電信號進行分類,分類正確率得到了提高,使腦電信號更加精準地控制外部設備,對康復醫療等領域的發展有著重要的價值。
楊粟涵等[25]提出了再制造物流網絡模型,采用蜂群算法進行編碼仿真,使網絡設施的位置和數量得到正確的結果,實驗表明,該模型效果很好,可行性好,并且在求解此類復雜問題時人工蜂群算法的各優越性能得到了充分發揮。
羅海艷[26]提出了采用三層 BP 神經網絡算法,搭建移動用戶行為分析預測模型,通過黑盒測試方法,預測成功率達 80% 以上。采用初始總群數為 1000 ,進行了收斂性測試。 試驗表明:該模型有效地提高了移動用戶行為分析的效率和準確性,對用戶上網需求的準確定位以及企業競爭力的大力提升具有一定的應用價值。
文祝青等[27]提出了一種基于ABC-BP神經網絡的指紋識別算法,不斷地訓練指紋的特征點坐標的數值,獲得最優的數據,實驗表明,該算法獲取了完整的有效的指紋識別結果,對指紋系統的精確識別具有很大的價值。
3 蟻群算法優化BP神經網絡
3.1 蟻群算法
蟻群算法(Ant Colony Optimization,ACO)是一種基于種群尋優的啟發式搜索算法,能夠優化BP神經網絡的權值和閾值,通過正反饋和分布式協作來實現全局最優,避免陷入局部最優[32]。
3.2 應用現狀及分析
王巖雪[33]提出了一種蟻群優化 BP神經網絡的政務云網絡安全態勢預測模型,改進算法的信息素更新規則,并將優化的權值和閾值用于 BP 神經網絡訓練和預測。實驗表明,該模型在網絡安全態勢預測中,顯著地提高了其收斂速度和預測精度。
王勃等[34]提出一種BP神經網絡的RPROP混合算法,合并處理所有海量信息中具有相同關系的數據,去除相同項,迭代次數改善明顯,實驗表明,該算法大力提高了網絡分類正確率和運行的效率,具有一定的實用價值。
曾植等[35]提出組合蟻群算法(Combined ACO,CACO) 優化BP神經網絡,限制信息素軌跡量值域范圍,把精英策略的螞蟻系統與MAX-MIN螞蟻系統互相結合,驗證表明,改進的算法提高了變壓器潛伏性故障診斷的準確性和可靠性,對變壓器故障診斷有重大的意義。
唐錫雷[36]提出了蟻群優化神經網絡的船舶排水量估計方法,在估算模型中輸入定點水域密度系數,估算出船舶排水量。實驗表明,該方法能精確有效地提高船舶排水量的估算水平。
4 螢火蟲算法優化BP神經網絡
4.1 螢火蟲算法
目前共有兩種螢火蟲算法,一種(Glowworm Swarm Optimization,GSO)在2005 年由Krishnanand[41]提出,GSO算法是模擬現實中螢火蟲覓食行為而提出的一種新型元啟發式搜索算法。另一種(Firefly Algorithm,FA)在2009 年由Yang[42-43] 提出。采用螢火蟲算法來優化BP神經網絡,通過螢火蟲算法得到更好的網絡初始權值和閾值[44]。
4.2 應用現狀及分析
王慧等[45]提出了一種基于螢火蟲優化的BP神經網絡溫度補償模型,使得神經網絡的泛化性和搜索率大幅度提高。結果表明:螢火蟲優化的BP神經網絡綜合特性表現良好,壓力傳感器溫度補償算法可行。郭震等[46]提出一種螢火蟲算法(FA)優化BP神經網絡的溫度漂移補償方法,選取7個溫度點,建立陀螺儀溫度漂移模型,結果表明,該模型使陀螺儀溫度漂移得到了緩解,較傳統BP神經網絡,補償效果得到了較大的提高。毛君等[47]提出了一種基于改進螢火蟲算法優化神經網絡故障診斷方法。首先對刮板輸送機減速器故障特征參數進行特征提取,其次應用特征數據樣本進行基于神經網絡的故障診斷模型訓練,利用改進螢火蟲算法對神經網絡權值、閾值進行優化,加快目標的優化求解,得到最優的網絡模型。研究表明將改進螢火蟲算法與 BP(back propagation)神經網絡結合可以有效地解決神經網絡收斂速度慢,易陷入局部最優等問題,可以對刮板輸送機減速器的故障進行準確診斷。張明等[48]提出了一種應用于障礙物模式識別中的改進進化機制的螢火蟲算法(IEMFA),采用位置移動策略,實驗表明,由IEMFA優化的BP神經網絡模型的障礙物識別效果更好。
5 總結
本文對群智能算法中的遺傳算法、蜂群算法、蟻群算法和螢火蟲算法優化的BP神經網絡應用的相關研究進行了綜述。改進模型廣泛應用于交通出行、醫學識別、天氣預測、金融評估、海洋水質分析等各領域,分別在數據的精確程度、計算速度和穩定性上得到了明顯提升。但因為各應用場景的特殊性,仍存在不足,如數據量采集不夠充分、影響因素考慮不足、計算量太大、樣本選取難度大等。在今后的研究中,有更多的問題需要繼續的完善和探索。
參考文獻:
[1] 何明.大學計算機基礎[M].南京:東南大學出版社,2015.
[2] Rumelhart D E,Hinton G E,Williams R J.Learning representations by back-propagating errors[J]Nature,1986,323(3): 533 -536.
[3] WANG J C,YU Y,YANG K,et al.Brain tumcr segmentation of MRI based on BP neural network[J].Journal of Biomedical Engineering Research,2016,35(4):290-293.
[4] BADI H,HAMZA A,HASAN S.New method for optimization of static hand gesture recognition[C]//2017Intelligent Systems Conference(IntelliSys).IEEE,2017:542-544.
[5] Bonabeau, Eric; Dorigo, Marco; Theraulaz, Guy (1999). Swarm Intelligence: From Natural to Artificial Systems. ISBN 0-19-513159-2.
[6] Hinchey M G,Sterritt R,Rouff C.Swarms and swarm intellgence[J].Computer,2007,40(4):111-113
[7] Bonabeau EMeyer C.Swarm intelligence:A whole new way to think about business[J].Harvard Business Review,2001,79(5):106-114
[8] SUN Y,XUE B,ZHANG M,et al.Automatically Designing CNN Architectures Using Genetic Algcrithm for Image Classification[J].arXiv:1808.03818,2018.
[9] 邱華鑫,段海濱,范彥銘.基于鴿群行為機制的多無人機自主編隊[J].控制理論與應用,2015,32(10):1298-1304.
[10] 張華偉,鄭曉濤.基于遺傳算法優化神經網絡的拼焊板壓邊力預測[J].東北大學學報(自然科學版),2020,41(2):241-245.
[11] 劉宇,惠鴻飛,路永樂,等.基于遺傳算法優化神經網絡的多源信息融合室內定位方法[J].中國慣性技術學報,2020,28(1):67-73.
[12] 王倚文,許承東,彭雅奇,等.基于GA-BP神經網絡的BDS軌道誤差模型研究[J].計算機仿真,2020,37(2):82-86.
[13] 李明星,王顯會,周云波,等.基于神經網絡的車輛抗沖擊防護組件優化[J].爆炸與沖擊,2020,40(2):107-115.
[14] 劉曉彤,王偉,李澤禹,等.基于改進BP神經網絡的尿液中紅白細胞識別算法[J].計算機科學,2020,47(2):102-105.
[15] 李帆,閆獻國,陳峙,等.基于遺傳算法優化BP神經網絡的YG8硬質合金耐磨性預測模型[J].金屬熱處理,2019,44(12):244-248.
[16] 朱苗苗,潘偉杰,劉翔,等.基于BP神經網絡代理模型的交互式遺傳算法[J].計算機工程與應用,2020,56(2):146-151.
[17] 張天虎,鮑艷松,錢芝穎. 基于 BP 神經網絡與遺傳算法反演大氣溫濕廓線[J]. 熱帶氣象學報,2020,36(1):97-107.
[18] Karaboga D.An idea based on honey bee swarm for numerical optimization,Technical Report- TR06[R].Kayseri,Turkey:Erciyes University,2005.
[19] Karaboga D,Basturk B.A powerful and efficient algorithm for numerical function optimization:Artificial bee colony algorithm[J].Journal of Global Optimization,2007,39(3):459-471.
[20] Karaboga D, Basturk Akay B,Ozturk C. Artificial Bee Colony (ABC) Optimization Algorithm for Training Feed-Forward Neural Networks [C]. In: LNCS: Modeling Decisions for Artificial Intelligence, Springer-Verlag, Berlin Heidelberg, 2007 (4617):318-319.
[21] Karaboga D,Basturk B. Artificial Bee Colony Algorithm on Training Artificial Neural Networks[C]. In: 2007 IEEE 15th Signal Processing and Communications Applications, 2007:1-4.
[22] Badem H,Basturk A,Caliskan A,et al.A new efficient training strategy for deep neural networks by hybrid-ization of artificial bee colony and limited-memory BFGS optimization algorithms[J].Neurocomputing,2017,266:506-526.
[23] 林詩潔,董晨,陳明志,等.新型群智能優化算法綜述[J].計算機工程與應用, 2018,54(12):1-9.
[24] 徐健,陳倩倩,劉秀平.基于交叉運算的人工蜂群優化 BP 神經網絡的腦電信號分類[J].激光與光電子學進展,2020,57(21):212001.
[25] 楊粟涵,張平華,于蕾.人工蜂群算法在再制造物流網絡優化中的應用 [J].河南科技, 2019,694(32):11-14.
[26] 羅海艷,楊勇,王玨,等.基于人工蜂群改進的 BP 神經網絡移動用戶行為分析及預測方法 [J]. 沈陽農業大學學報,2015,46(6): 757-761.
[27] 文祝青,吳志攀.一種基于ABC-BP神經網絡的指紋識別算法研究[J].電腦知識與技術,2017,13(32):195-198.
[28] 黃恩潭,谷遠利,基于改進人工蜂群算法優化小波神經網絡的短時交通流預測[J].山東科學, 2018,3l(2):79-87.
[29] 李曉靜.基于改進蜂群算法的神經網絡及其應用[J].瓊州學院學報,2015,22(2):29-34.
[30] 楊輝.人工蜂群-BP網絡算法在云計算入侵檢測中的應用[J].信息技術與信息化, 2020(4):150-154.
[31] 楊咪,徐盼盼,錢會,等.基于人工蜂群算法的BP雙隱含層神經網絡水質模型[J].環境監測管理與技術,2018,30(1):21-26.
[32] 喬東平,裴杰,肖艷秋,等.蟻群算法及其應用綜述[J].軟件導刊,2017,16(12):217-221.
[33]王巖雪,孫大躍.基于蟻群算法優化BP神經網絡的政務云網絡態勢預測研究[J].現代電子技術.(http://kns.cnki.net/kcms/detail/61.1224.TN.20200416.2107.002.html).
[34] 王勃,徐靜.基于蟻群優化算法的BP神經網絡的RPROP混合算法仿真的研究[J].計算機測量與控制,2018,26(7):195-202.
[35] 曾植,張寒,楊廷方,等.基于組合蟻群算法優化神經網絡診斷變壓器潛伏性故障[J].電氣應用,2019(6):43-49.
[36] 唐錫雷.蟻群優化神經網絡的船舶排水量估計[J].艦船科學技術,2018,40(3A):10-12.
[37] 秦浩森,丁咚,王祥東,等.蟻群算法優化BP神經網絡聲學底質分類方法[J].中國海洋大學學報,2019,49(II):60-68.
[38] 王震,陸金桂.改進的ACO-BP神經網絡在鋰離子電池SOC估算中的應用[J].輕工學報,2019,34(4):81-86.
[39] 余修武,劉琴,李向陽,等.基于改進蟻群的 BP 神經網絡 WSN 數據融合算法[J].北京郵電大學學報,2018,41(4):91-96.
[40] 肖仁鑫,李沛森,李曉宇,等.基于蟻群神經網絡算法的電池健康狀態估計[J].電源技術,2017,41 (6):916-919.
[41] Krishnanand K N,Ghose D.Glowworm swarm optimization for simultaneous capture of multiple local optima of multimodal functions[J].Swarm Intelligence,2009,3(2):87-124.
[42] Yang X S.Nature-inspired metaheuristic algorithms[M].[S.l.]:Luniver Press,2008.
[43] Yang X S.Firefly algorithms for multimodal optimization[J].Mathematics,2009,5792:169-178.
[44] 王改革,郭立紅,段紅,等.基于螢火蟲算法優化BP神經網絡的目標威脅估計[J].吉林大學學報(工學版).2013,43(4):1064-1069 .
[45] 王慧,符鵬,宋宇寧.基于螢火蟲優化BP神經網絡方法的傳感器溫度補償策略[J].機械強度,2020,42(1):109-114:109-104 . (下轉第14頁)
(上接第10頁)
[46] 郭震,劉穎,于福華.FA優化BP神經網絡的MEMS陀螺儀溫度漂移補償[J].微納電子技術.2019,56(10):817-827.
[47] 毛君,郭浩,陳洪月.基于改進螢火蟲算法神經網絡的刮板輸送機減速器故障診斷[J].機械強度,2019,41(3):544-550.
[48] 張明,張樹群,雷兆宜.改進的螢火蟲算法在神經網絡中的應用[J].計算機工程與應用,2017,53(5):159-163.
[49] 吳華偉,張遠進,葉從進.基于螢火蟲神經網絡的動力電池SOC估算[J].儲能科學與技術,2019,8(3):575-579.
[50] 劉園園,賀興時.基于自適應螢火蟲算法的BP神經網絡股價預測[J].渭南師范學院學報,2019,34(2):87-96.
[51] 彭新建,翁小雄.基于螢火蟲算法優化BP神經網絡的公交行程時間預測[J].廣西師范大學學報(自然科學版),2017,35(1):28-36.
[52] 李敬明,倪志偉,朱旭輝,等.基于改進二進制螢火蟲的 BP 神經網絡并行集成學習算法[J].模式識別與人工智能, 2017,30(2):171-182.
【通聯編輯:梁書】