張 馳,郭 媛,黎 明
齊齊哈爾大學(xué) 計算機與控制工程學(xué)院,黑龍江 齊齊哈爾161000
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,ANN)是一種可用于處理具有多個節(jié)點和多個輸出點的實際問題的網(wǎng)絡(luò)結(jié)構(gòu)。雖然人類的大腦和人工神經(jīng)網(wǎng)絡(luò)的運用都具有極其強大的信息處理能力,但是兩者還是有許多不同之處。谷歌Deepmind最初被Demis Hassabis、Mustafa Suleyman以及Shane Legg創(chuàng)立出來,在2016年創(chuàng)造出AlphaGo打敗世界圍棋冠軍李世石后逐漸被人認可,也說明人工神經(jīng)網(wǎng)絡(luò)具有巨大的潛力。與人腦處理信息方式有所不同,運用人工神經(jīng)網(wǎng)絡(luò)開發(fā)出的機器人采用線性的思維方式處理獲取到的信息,計算機通過快速、精確的順序數(shù)值運算,在串行算術(shù)類型的任務(wù)處理上超過人類。但人腦的“并行處理體系”相對于人工神經(jīng)網(wǎng)絡(luò)領(lǐng)域具有絕對領(lǐng)先的能力。
McCulloch心理學(xué)家和Pitts數(shù)學(xué)家于1943年考慮尋找神經(jīng)元背后的基本原理,將閾值函數(shù)作為計算神經(jīng)元的主要特性,把邏輯演算表述為神經(jīng)計算架構(gòu),提出“神經(jīng)網(wǎng)絡(luò)”概念和M-P模型,標志著人工神經(jīng)網(wǎng)絡(luò)ANN萌芽[1]。Hebb假設(shè)突觸權(quán)重的變化會如何控制神經(jīng)元相互激勵的方式,在1949年出版的《行為的組織》中提出了Hebb突觸以及Hebb學(xué)習(xí)規(guī)則,為人工神經(jīng)網(wǎng)絡(luò)算法的發(fā)展構(gòu)建了理論知識基礎(chǔ)[2]。20世紀60年代末,Rosenblatt開創(chuàng)了感知器,感知器是建立在M-P模型基礎(chǔ)上,第一個物理構(gòu)建并形成了具有學(xué)習(xí)能力的人工神經(jīng)網(wǎng)絡(luò)[3]。Minsky和Papert在1969年出版Perceptrons:an introduction to computational geometry,提出Rosenblatt的單層感知器只能夠?qū)W習(xí)線性可分模式,無法處理xor等線性不可分問題[4]。1984年Hopfield神經(jīng)網(wǎng)絡(luò)(Hopfiled Neural Network,HNN)首次引入,從此基于Hopfield神經(jīng)網(wǎng)絡(luò)的動力學(xué)行為的理解應(yīng)用于信息處理和工程研究起到了至關(guān)重要的作用[5]。反向傳播網(wǎng)絡(luò)(Backpropagation Neural Network,BPNN)之后被提出用于解決多層神經(jīng)網(wǎng)絡(luò)所反應(yīng)出來的問題[6],但是BP網(wǎng)絡(luò)仍存在一部分缺點,比如:收斂速度慢以及大樣本數(shù)據(jù)難以收斂,容易出現(xiàn)局部最小化。1998年Lecun等基于福島邦彥提出的卷積和池化網(wǎng)絡(luò)結(jié)構(gòu),將BP算法運用到該結(jié)構(gòu)的訓(xùn)練中,形成了卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的雛形LeNet-5[7]。2006年由Hinton、Osindero和Teh提出深度信念網(wǎng)絡(luò)(Deep Belief Network,DBN)[8]。近幾年,人工神經(jīng)網(wǎng)絡(luò)在各個領(lǐng)域都是非常熱門的話題,并且在圖像處理、醫(yī)學(xué)、生物學(xué)等領(lǐng)域均取得了非常多的成就。
本文針對人工神經(jīng)網(wǎng)絡(luò)領(lǐng)域中的幾個模型(多層感知器(Multilayer Perceptron,MLP)、反向傳播神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、遞歸神經(jīng)網(wǎng)絡(luò)(Recursive Neural Network,RNN))基本結(jié)構(gòu)進行介紹,并對其相對熱門的應(yīng)用進行簡單的概述。
多層感知器,又稱為多層前饋神經(jīng)網(wǎng)絡(luò),如圖1,具有出色的非線性匹配和泛化能力。訓(xùn)練MLP使用反向傳播算法,可以減少MLP輸出數(shù)據(jù)與實際所需數(shù)據(jù)之間的全局誤差。
圖1 MLP結(jié)構(gòu)示意圖
由于MLP具有非常好的非線性映射能力、較高的并行性以及全局優(yōu)化的特點,現(xiàn)今在圖像處理、預(yù)測系統(tǒng)、模式識別等方面取得了不錯的成就。
盡管MLP架構(gòu)具有很多優(yōu)點,但在高維空間下的效率相對低下,可能導(dǎo)致模型訓(xùn)練中過擬合的情況。并且由于隱藏層的存在加大了超參數(shù)的數(shù)量,使得訓(xùn)練過程中在收斂緩慢的情況下需要處理很高的計算量。傳統(tǒng)的MLP實值模型中單個神經(jīng)元能接收的數(shù)據(jù)輸入為單個實數(shù),在其進行多維信號輸入時,通常達不到令人滿意的效果。宮金良等人使用傳統(tǒng)MLP對路面進行識別時發(fā)現(xiàn)高樓區(qū)域作為道路障礙并不能被模型識別出來,處理結(jié)果的準確度和完整性上存在缺陷,在經(jīng)過MLP處理之前加入感興趣區(qū)域(Region of Interest,ROI),通過預(yù)先規(guī)定的面積閾值對符合特征的區(qū)域進行提取,能夠排除圖片數(shù)據(jù)中的雜質(zhì)[9]。此外,MLP的神經(jīng)元個數(shù)尚沒有標準的方法來確定,目前常用的交叉驗證復(fù)雜度較高,并且受限于數(shù)據(jù)量。陳小威等人提出MLP的泛化能力不足,運用于大量氣象數(shù)據(jù)時,經(jīng)遺傳算法特征處理后的觀測點1數(shù)據(jù)訓(xùn)練得到MLP,在氣象觀測點2相較于觀測點1的精度大幅度下降,所以MLP的泛化能力仍待提高[10]。
針對MLP存在的問題,提出了不同的改進算法。García-Pedrajas等人提出一種廣義多層感知器(Generalized Multilayer Perceptron,GMLP)的協(xié)同進化[11]。模型基于模塊的不同子群體進行協(xié)作,每個子群體都是廣義的多層感知器。與標準的多層感知器相比,基于GMLP的網(wǎng)絡(luò)結(jié)構(gòu)具有相對較少的節(jié)點和連接數(shù),可以使用更少的節(jié)點定義非常復(fù)雜的表面。同時,較小的網(wǎng)絡(luò)進行演進能夠提高網(wǎng)絡(luò)的可解釋性。受到大腦中神經(jīng)膠質(zhì)特征的啟發(fā),Ikuta等人提出一種具有神經(jīng)膠質(zhì)網(wǎng)絡(luò)的多層感知器,其中神經(jīng)膠質(zhì)網(wǎng)絡(luò)僅與MLP的第二層隱藏層進行連接,通過計算機仿真結(jié)果證實具有神經(jīng)膠質(zhì)網(wǎng)絡(luò)的MLP相對于標準的MLP具有更好的性能,賦予了MLP中神經(jīng)元的位置依賴性[12]。Li等提出一種基于簡化幾何代數(shù)(Reduced Geometric Algebra,RGA)的多層感知器擴展模型RGA-MLP,傳統(tǒng)MLP模型將每個維度的信號視為一個實數(shù)進行單獨處理,基于RGA的模型中輸入、輸出、激活函數(shù)以及運算符都使用可交換乘法規(guī)則擴展到RGA域,并且使用RGA版本的反向傳播訓(xùn)練神經(jīng)網(wǎng)絡(luò),用于多維信號處理,將多個通道視為一個單元而不是一個單獨的組件,可以實現(xiàn)更高的分類精度、更快的收斂速度以及更低的計算復(fù)雜度[13]。Masulli和Penna將基于主成分分析的增量輸入維度(IID)算法應(yīng)用于MLP中,提高了多層感知器的學(xué)習(xí)速率[14]。
Martinez-Morales等人提出通過多目標蟻群優(yōu)化算法對MLP參數(shù)進行優(yōu)化的MLP-MOACO模型,對發(fā)動機污染物相關(guān)系數(shù)進行計算以及估算發(fā)動機的廢氣排放[15]。Mosavi等人提出MLP-GWO模型,該模型將Gray Wolf算法與標準MLP模型結(jié)合在一起并應(yīng)用于土壤電導(dǎo)率預(yù)測,實驗結(jié)果證明混合MLP-GWO模型相對于標準MLP模型可以在隱藏層獲取更加準確的連接權(quán)重,從而提高預(yù)測精度[16]。Liu等基于Adaboost(自適應(yīng)Boosting)算法和MLP(多層感知器)神經(jīng)網(wǎng)絡(luò),提出了四種不同的混合方法用于高精度多步風(fēng)速預(yù)測,證明了Adaboost算法能有效提高MLP神經(jīng)網(wǎng)絡(luò)的性能[17]。
BP神經(jīng)網(wǎng)絡(luò)模型(反向傳播算法)的網(wǎng)絡(luò)體系結(jié)構(gòu)是多層的,本質(zhì)上是一種梯度下降局部優(yōu)化技術(shù),與網(wǎng)絡(luò)權(quán)重的向后誤差校正相關(guān)。
BP神經(jīng)網(wǎng)絡(luò)的多層結(jié)構(gòu)使得模型的輸出更加準確,但BP神經(jīng)網(wǎng)絡(luò)仍然存在一定的缺陷。針對XOR之類的非線性可分問題時,使用BP神經(jīng)網(wǎng)絡(luò)可能出現(xiàn)局部最小值導(dǎo)致無法找到全局最優(yōu)解,并且在面對大樣本數(shù)據(jù)時均方誤差MSE過大導(dǎo)致難以收斂。王麗紅等人將傳統(tǒng)BP組合起來構(gòu)成AdaBoost-BP模型,如圖2,AdaBoost算法訓(xùn)練計算首個BP模型的錯誤率及權(quán)重,并將該權(quán)重作為下個BP網(wǎng)絡(luò)的權(quán)重參數(shù),依此類似進行迭代計算,其中單個傳統(tǒng)BP網(wǎng)絡(luò)隱藏層采用2層結(jié)構(gòu),該方法運用于短期銷量預(yù)測時平均預(yù)測誤差為18.89%,相較于傳統(tǒng)BP網(wǎng)絡(luò)的53.23%準確率有明顯的改善,然而該模型在面對樣本數(shù)據(jù)時間跨度較大的情況時誤差偏大,僅在5天的樣本數(shù)據(jù)下能有效地預(yù)測近期的銷量變化[18]。
圖2 AdaBoost-BP網(wǎng)絡(luò)模型流程圖
針對BP網(wǎng)絡(luò)使用梯度下降容易使模型陷入局部最優(yōu)的缺陷,黃寶洲等人改變傳統(tǒng)BP調(diào)整自身閾值和權(quán)重參數(shù)的方式,使用粒子群優(yōu)化算法獲取BP網(wǎng)絡(luò)的權(quán)重和閾值參數(shù),選擇種群大小40,進行150次迭代,在預(yù)測波浪波高以及波峰波谷實驗結(jié)果中準確率雖然會隨著預(yù)測步數(shù)的增加而下降,但相對于單一BP網(wǎng)絡(luò)接近于真實數(shù)據(jù)[19]。Ng等人提出一種改進的反向傳播算法GBP,對激活函數(shù)的偏導(dǎo)進行修改從而增加反向傳播的誤差信號,對算法的學(xué)習(xí)率進行歸一化,以改善和加快收斂速度,計算機仿真結(jié)果證實提出的廣義BP網(wǎng)絡(luò)(Generalized Backpropagation,GBP)相較于原始BP網(wǎng)絡(luò)的全局收斂速度快得多,在回歸問題中使用0.5的學(xué)習(xí)率和0.7的動量,傳統(tǒng)模型需要進行6 000次以上的迭代,但使用6個隱藏單元的GBP只需要平均1 471次迭代[20]。Silaban等人將BFGS準牛頓應(yīng)用于BP神經(jīng)網(wǎng)絡(luò),使用經(jīng)典反向傳播和BFGS反向傳播在玻璃數(shù)據(jù)集上測試了7種架構(gòu),提出具有BFGS的BP神經(jīng)網(wǎng)絡(luò)改善了學(xué)習(xí)過程的收斂性,平均改善收斂率為98.34%,并且當(dāng)BFGS與BP一起使用時,準確率會有所提高[21]。
Zhu等人結(jié)合Rumelhart的添加慣性脈沖動態(tài)調(diào)整學(xué)習(xí)速率,可以將學(xué)習(xí)率調(diào)整為較大值從而提升模型學(xué)習(xí)速度,并通過學(xué)習(xí)率進而影響節(jié)點的連接閾值和權(quán)重參數(shù),消除BP網(wǎng)絡(luò)學(xué)習(xí)過程中的無效迭代,將兩者結(jié)合提出用以優(yōu)化BP網(wǎng)絡(luò)的改進算法,改善了傳統(tǒng)BP網(wǎng)絡(luò)局部最小值以及收斂速度慢的情況,用以確定隸屬度函數(shù)并應(yīng)用于蒸汽凝結(jié)設(shè)備的模糊診斷[22]。Sang將BP神經(jīng)網(wǎng)絡(luò)與遺傳算法優(yōu)化的支持向量機對比分析,應(yīng)用于供應(yīng)鏈金融的信用風(fēng)險評估,結(jié)果表明BP神經(jīng)網(wǎng)絡(luò)可以更好地識別和分類不同級別的企業(yè),分類精度較高[23]。Miao等人提出將反向傳播算法和RBP算法結(jié)合用于模糊建模,可以良好地避免模糊化過程中存在的死區(qū)以及決策面突變等潛在問題[24]。Jin等基于四川省某電網(wǎng)企業(yè)輸變電投資項目的財務(wù)效益分析提出一種改進的模糊最優(yōu)BP神經(jīng)網(wǎng)絡(luò)模型,使用IGSA算法(Improved Gravitational Search Algorithm,IGSA)優(yōu)化模糊最優(yōu)BP神經(jīng)網(wǎng)絡(luò),實驗結(jié)果表示BP神經(jīng)網(wǎng)絡(luò)的成本效益分析可以預(yù)測項目在一定范圍內(nèi)的變化中達到收支平衡的條件和財務(wù)收益[25]。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是機器學(xué)習(xí)中常見的模型結(jié)構(gòu),在圖像分類識別、語義分割、機器翻譯等方面取得了良好的效果。傳統(tǒng)CNN結(jié)構(gòu)包括四種層結(jié)構(gòu):卷積層、池化層、全連接層、輸出層。
卷積神經(jīng)網(wǎng)絡(luò)在圖像領(lǐng)域的應(yīng)用非常廣泛并且取得了很大的成就。特別是在圖像識別方面,經(jīng)過卷積神經(jīng)網(wǎng)絡(luò)一系列運算,機器可以非常準確地識別圖像特征信息。Lou等人將VGG16結(jié)合卷積神經(jīng)網(wǎng)絡(luò)CNN應(yīng)用于人臉識別,同時收集丟棄的圖像信息并將其應(yīng)用于原始CNN,得到的改進模型相對于ICA算法以及傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)等明顯提升了性能以及圖像的識別率[26]。Zhang等人將CNN用于故障檢測,傳統(tǒng)的故障檢測第一步處理信號,然后將特征放入分類器進行分類,使用基于卷積神經(jīng)網(wǎng)絡(luò)CNN的智能診斷檢測算法將原始的輸入信號轉(zhuǎn)化得到二維的圖像數(shù)據(jù),并消除經(jīng)驗對特征提取的干擾,然后通過軸承數(shù)據(jù)驗證了該算法的有效性,實驗證實了該算法能很好地適應(yīng)工作負載的變化[27]。Deng等人提出了一種新型的帶有可變形模塊的基于區(qū)域的CNN(R-CNN)裂紋檢測器,通過對比Faster R-CNN、R-FCN以及基于FPN的Faster R-CNN,得出由于FPN多尺度特征提取使得基于FPN的Faster RCNN表現(xiàn)出最高的分類精度,該模型可用于提高表面裂紋的檢測精度[28]。Cao等人設(shè)計了三種深層CNN結(jié)構(gòu),用于從原始音頻片段和梅爾譜圖中學(xué)習(xí)可分辨的情感特征,利用合并的深度網(wǎng)絡(luò)將兩個異構(gòu)的神經(jīng)網(wǎng)絡(luò)結(jié)合在一起,利用了每個網(wǎng)絡(luò)的優(yōu)勢,最終提高了整體性能[29]。
Mask R-CNN在Faster R-CNN的基礎(chǔ)上進行了改進,是最著名的圖像分割模型之一,如圖3[30],其中RPN提取特征圖中大小不一致的RoI,再對RoI做規(guī)范化處理,使用RoIAlign替換Faster R-CNN中的RoIPool保證輸入輸出的對應(yīng)關(guān)系。宋紹劍等人將Mask R-CNN應(yīng)用于水下生物識別,使用mini-mask替換原始的mask以節(jié)省內(nèi)存,但100×100的mini-mask相對于1 024×1 024的mask損失了像素精度,導(dǎo)致水下輪廓模糊,但最終測試結(jié)果準確率為97.30%,在與原始mask的結(jié)果無明顯結(jié)果差異的情況下,很大程度節(jié)約了內(nèi)存[30]。Hu等人將CNN用于圖像診斷,CT圖像由專家進行手動標記后,使用提出的Mask R-CNN對CT圖像中的肺部進行自動切割。實驗中將Mask R-CNN與K-means結(jié)合得到了相較于其他方法最佳的分割效果,分割精度達97.68%±3.42%,平均運行時間11.2 s[31]。Hyojin等人將Mask R-CNN用于BDD數(shù)據(jù)集提取可駕駛區(qū)域的模型,以支持自動駕駛系統(tǒng),在BDD數(shù)據(jù)集上的訓(xùn)練證明了準確性高于現(xiàn)有的數(shù)據(jù)集MS COCO[32]。
圖3 Mask R-CNN模型圖
傳統(tǒng)CNN模型在圖像領(lǐng)域雖然有廣泛的應(yīng)用,但其劣勢也較為明顯,較深層的卷積網(wǎng)絡(luò)提取的更偏重局部信息,并且深層卷積的計算量需求大,輸入圖片大小固定,在嵌入式設(shè)備應(yīng)用方面具有局限性。王亞朝等人將基于卷積神經(jīng)網(wǎng)絡(luò)的方法應(yīng)用于天氣信息識別時,發(fā)現(xiàn)對比支持向量機、隨機森林等傳統(tǒng)方法準確率提升,但計算量的巨大會導(dǎo)致模型退化,并且由于數(shù)據(jù)源圖片尺寸大小不一,使用CNN進行訓(xùn)練時需對數(shù)據(jù)進行壓縮裁剪,導(dǎo)致?lián)p失部分重要信息,影響模型識別率[33]。CNN的特征提取效果適合分類,但傳統(tǒng)CNN的最后一層分類效果相較于其他分類器如支持向量機、極限學(xué)習(xí)機等并不優(yōu)秀。余丹等人使用6層卷積神經(jīng)網(wǎng)絡(luò)(2層卷積、2層子采樣),將原始CNN的最后一層轉(zhuǎn)化成極限學(xué)習(xí)機,在人臉識別中識別率達到約97%,并且在大樣本下較與其他方法占優(yōu)[34]。
下面以幾個經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型進行展開。
LeNet-5網(wǎng)絡(luò)結(jié)構(gòu)并不是全連接網(wǎng)絡(luò),LeCun等人使用多個卷積核,采用卷積核權(quán)值共享的方法減少卷積神經(jīng)網(wǎng)絡(luò)中的連接數(shù),模型更加簡潔易于計算。其網(wǎng)絡(luò)體系由七層結(jié)構(gòu)組成。
傳統(tǒng)LeNet-5的效率較低,單通道的網(wǎng)絡(luò)結(jié)構(gòu)進行特征提取時不完整并且模型收斂速率慢,安源等人采用四通道網(wǎng)絡(luò),對四個通道的卷積核和偏置參數(shù)進行設(shè)置,采用ReLU激活函數(shù),在MNIST數(shù)據(jù)集上四通道模型準確率為96.56%,比傳統(tǒng)LeNet-5高出4.52%,但這種多通道結(jié)構(gòu)目前不能對數(shù)據(jù)規(guī)模進行動態(tài)調(diào)整[35]。Hou等人提出使用FPGA加速LeNet-5來改進原始的LeNet-5模型,最后通過訓(xùn)練手寫數(shù)字識別模型實驗,證實了改進后的模型在效率和準確度上都有很大的提升[36]。針對滾動軸承故障診斷中傳統(tǒng)LeNet-5網(wǎng)絡(luò)識別準確率較低,模型收斂速率慢,泛化能力弱的問題,Wan等人提出了一種采用改進的二維LeNet-5網(wǎng)絡(luò)的滾動軸承故障診斷方法,調(diào)整卷積核數(shù)量以及大小并執(zhí)行批歸一化,全連接層除最后一層外均進行刪除操作,增強網(wǎng)絡(luò)泛化能力,實驗表明改進方法具有更高的故障診斷精度和更少的訓(xùn)練時長[37]。為了保護Lenet-5-like結(jié)構(gòu)的卷積神經(jīng)網(wǎng)絡(luò),Sun等人提出在不同的層中添加保護鎖模塊,通過在C3層、C1&C3層、C1&C5層和C1&C3&C5層中添加保護鎖定模塊,得到了最好的預(yù)測結(jié)果為90.26%[38]。
AlexNet在LetNet的基礎(chǔ)上更進一步加深了網(wǎng)絡(luò)結(jié)構(gòu),是一個5+3的卷積神經(jīng)網(wǎng)絡(luò),包括5個卷積層、3個全連接層,如圖4。
AlexNet雖然相比于傳統(tǒng)CNN在圖像領(lǐng)域具有更高的識別率、圖像質(zhì)量提高,但由于其對特征進行提取時使用的卷積核不具有多樣性,在進行圖像識別時仍然存在一定的誤差。郭書杰等人在使用AlexNet對手勢識別時提出AlexNet的非線性激活函數(shù)會導(dǎo)致訓(xùn)練過程中出現(xiàn)神經(jīng)元死亡,因此設(shè)計了包含三個批歸一化的AlexNet結(jié)構(gòu)(針對3、4、5層做批歸一化)并且優(yōu)化了模型超參數(shù),結(jié)構(gòu)優(yōu)化后的AlexNet準確率提高了約4%,但該模型和原始模型同樣受限于輸入圖像的復(fù)雜性和手勢在圖像面積中的占比[39]。黃方亮等人提出了AlexNet_En模型,該模型在原始AlexNet的第四層后添加了一層與第四層相同的卷積操作,采用384個3×3卷積核確實增加了模型的準確率,在ImageNet數(shù)據(jù)集上達到94.00%,但該結(jié)構(gòu)同樣使模型復(fù)雜度變高,計算需求增加帶來了一定的硬件負擔(dān)[40]。
圖4 AlexNet示意圖
Tao等人提出了一種改進的AlexNet,使用空間金字塔池化模式的網(wǎng)絡(luò)結(jié)構(gòu)解決了原網(wǎng)絡(luò)模型適應(yīng)性差的問題,對網(wǎng)絡(luò)深度和整個連接層進行了調(diào)整,優(yōu)化了整個網(wǎng)絡(luò)的性能。實驗結(jié)果表明,與公共和專用手指靜脈數(shù)據(jù)集中的AlexNet模型相比,改進的網(wǎng)絡(luò)模型在識別準確性和訓(xùn)練持續(xù)時間上都有顯著改善[41]。
AlexNet在場景分類應(yīng)用中,傳統(tǒng)AlexNet卷積核跨度大導(dǎo)致特征圖的分辨率下降過快,Xiao等人提出一種改進的AlexNet模型,將大卷積核分解為兩個步幅較小的小卷積核級聯(lián)結(jié)構(gòu),實驗證明改進模型在23種場景分類中的分類精度高于原始的AlexNet模型[42]。Han等人提出一種改進的預(yù)訓(xùn)練AlexNet體系結(jié)構(gòu)AlexNet-SPP-SS,結(jié)合了比例池-空間金字塔池(SPP)和邊監(jiān)督(SS)來改善原始AlexNet不收斂以及過擬合的問題,并證明了經(jīng)過預(yù)訓(xùn)練的AlexNet-SPP-SS模型優(yōu)于原始的AlexNet體系結(jié)構(gòu)以及傳統(tǒng)的場景分類方法[43]。
VGG-16也是一個經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型,其塊由小型堆疊式卷積濾波器制成,如圖5。已經(jīng)顯示出它們具有與較大的卷積濾波器相同的效果,但是它們使用較少的參數(shù)。
圖5 VGG-16示意圖
VGG-16在圖像分類識別領(lǐng)域取得許多成就,為了提高蔬菜自動分類的準確性,Li等人利用開源的Gaffe深度學(xué)習(xí)框架,采用改進的VGG網(wǎng)絡(luò)模型訓(xùn)練蔬菜圖像,在批歸一化層添加了VGG-M網(wǎng)絡(luò),提高了網(wǎng)絡(luò)的收斂速度和準確度,增加批歸一化成熟提升接近三倍的收斂速度,增大數(shù)據(jù)集訓(xùn)練規(guī)模提升模型的泛化能力,訓(xùn)練不同數(shù)量的蔬菜圖像實驗結(jié)果表明相對于傳統(tǒng)VGG以及AlexNet準確率有了很大提升[44]。徐志京等人將VGG16的網(wǎng)絡(luò)全連接層改進得到簡化的模型Reduce-VGGNet(R-VGGNet),用于青光眼眼底圖像數(shù)據(jù)的識別,結(jié)果表明改進后的R-VGGNet準確率達到91.7%,相對于LeNet等提高了準確率[45]。
Zhao等人根據(jù)無人駕駛汽車交通標志識別問題的實時性和準確性要求,對VGG神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進行了改進,提出VGG-8模型并改進了VGG-16模型,通過SGD和Nesterov Momentum優(yōu)化網(wǎng)絡(luò),應(yīng)用于視頻中十個交通標志時VGG-8具有更高的準確率和運行速度[46]。
VGG-16這種網(wǎng)絡(luò)結(jié)構(gòu)的深層次使得模型訓(xùn)練容易出現(xiàn)過擬合的問題,數(shù)據(jù)輸入量大導(dǎo)致模型參數(shù)過多,傳統(tǒng)VGG的參數(shù)占用空間約500 MB,這使得內(nèi)存資源的占用過多可能會加大計算性能上的負擔(dān)。鑒于VGG網(wǎng)絡(luò)模型的結(jié)構(gòu)參數(shù)主要分布在全連接層,在改進的時候?qū)⑷B接層做優(yōu)化成為一種方式,吉鑫等人將VGG-16模型的末端全連接層使用稀疏編碼器代替,稀疏化隱藏層節(jié)點,在2 950幅圖像數(shù)據(jù)中進行5次迭代,得到準確率為92%,損失函數(shù)值相對較小[47]。張旭欣等人在對卷積神經(jīng)網(wǎng)絡(luò)運用FPGA加速平臺時,由于FPGA的內(nèi)存容量遠小于VGG網(wǎng)絡(luò)模型的資源占用,故提出了二值VGG網(wǎng)絡(luò)模型,其中激活函數(shù)和權(quán)重參數(shù)均使用符號函數(shù)取值,占用內(nèi)存511.3 MB降低到了3.66 MB,在基于FPGA平臺下的二值VGG網(wǎng)絡(luò)相較于其他VGG加速器提速7倍,識別率為81%,該優(yōu)化方式驗證有效解決了資源負擔(dān)但識別率可能仍有上升空間[48]。
GoogLeNet相對于VGG、AlexNet等網(wǎng)絡(luò)小、參數(shù)較少,性能相對優(yōu)越,在ImageNet挑戰(zhàn)賽(ILSVRC14)中取得第一名。GoogLeNet使用Inception網(wǎng)絡(luò)結(jié)構(gòu),保持神經(jīng)網(wǎng)絡(luò)的稀疏性并且提高了性能。
GoogLeNet復(fù)雜性較高,針對小規(guī)模數(shù)據(jù)時可能無法達到大規(guī)模數(shù)據(jù)集所能達到的性能,Zhu等人提出一種新穎的雙重微調(diào)策略來訓(xùn)練GoogLeNet模型,通過截斷操作優(yōu)化GoogLeNet的結(jié)構(gòu)減小網(wǎng)絡(luò)大小,用于極端天氣識別,在天氣數(shù)據(jù)集上進一步微調(diào)得到最后的模型,優(yōu)化后的模型大小為原始GoogLeNet的31.23%,但識別準確率從94.74%提升至95.46%,識別速度也有所提高[49]。
Bi等人將GoogLeNet應(yīng)用于手寫漢字識別,提出一種改進的GoogLeNet模型,在原始模型中添加了批歸一化層,極大地提高了網(wǎng)絡(luò)識別能力并且減少了訓(xùn)練時間[50]。Xie等人為了減少稀疏CT圖像中的偽影并且提升圖像質(zhì)量,將殘差學(xué)習(xí)應(yīng)用于GoogLeNet得到了一種新穎的改進GoogLeNet模型,結(jié)果表明該模型對于減少偽影和保持重構(gòu)圖像的質(zhì)量是有效的[51]。
Tuan使用預(yù)訓(xùn)練的三個神經(jīng)網(wǎng)絡(luò)AlexNet、GoogLeNet和SqueezeNet,并對神經(jīng)網(wǎng)絡(luò)進行了微調(diào),用于COVID-19、病毒性肺炎和正常胸部X射線圖像的分類,從不同性能指標的訓(xùn)練和測試數(shù)據(jù)中證實模型的有效性[52]。
使用傳統(tǒng)的GoogLeNet深層次網(wǎng)絡(luò)結(jié)構(gòu)做特征提取時可能會因為感受野擴大而導(dǎo)致特征消失,對準確率產(chǎn)生影響。要提升傳統(tǒng)模型的性能,加大深層網(wǎng)絡(luò)的深度和寬度會很大程度增加參數(shù)量,產(chǎn)生更大的計算負擔(dān),一般對傳統(tǒng)模型進行結(jié)構(gòu)優(yōu)化。傳統(tǒng)GoogLeNet包含9個Inception模塊,張澤中等人在對胃癌病理圖像提取特征時以Inception模塊為單位進行實驗,發(fā)現(xiàn)在第7個模塊模型取得最優(yōu)性能,最終保留前7個Inception,GPU占用由傳統(tǒng)的65%降為43%,訓(xùn)練時間少了約4小時,第7個模塊后銜接全卷積網(wǎng)絡(luò)對特征分類輸出,30次迭代后模型準確率為99.28%,但模型在提高靈敏度的前提下?lián)p失了部分特異度[53]。孫中杰等人在張澤中的基礎(chǔ)上對模型做了進一步改進,分塊測試后刪除了Inception_4e后的模型結(jié)構(gòu),之后直接銜接平均池化和全連接層輸出分類結(jié)果,見圖6,在病理數(shù)據(jù)集上精簡模型相較于傳統(tǒng)GoogLeNet準確率上升約4%[54]。
圖6 精簡的GoogLeNet示意圖
殘差神經(jīng)網(wǎng)絡(luò)(ResNet)在多圖像處理問題中能獲取高精度的輸出結(jié)果。其主要功能稱為跳躍連接,有助于梯度流動,如圖7。殘差神經(jīng)網(wǎng)絡(luò)中He等人利用多層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來擬合殘差映射的效果,從而解決加深神經(jīng)網(wǎng)絡(luò)深度導(dǎo)致的梯度消失以及精度下降等問題[55]。
圖7 ResNet跳躍連接
經(jīng)典ResNet還存在很大的改進空間,殘差單元中通過最終梯度所包含的梯度信息無法直接計算出其他梯度信息,導(dǎo)致殘差單元增多時出現(xiàn)更多的卷積層無法獲得梯度信息傳遞。李國強等人提出FCM-Resnet,提出跨層連接將所有卷積層與平均池化層相連,使每個殘差單元都能傳遞梯度信息,在對比FCM-Resnet-56、FCM-Resnet-110和傳統(tǒng)Resnet實驗結(jié)果后提出的改進模型準確率為99.57%和99.63%,上升了約0.03%和0.02%,改進模型的穩(wěn)定性和優(yōu)化還存在改進空間[56]。使用1×1卷積核來解決ResNet50輸入輸出數(shù)據(jù)維度不匹配時,在細顆粒圖像分類領(lǐng)域會丟失信息并且影響計算結(jié)果,李曉雙等人把跳躍連接中步長為2的卷積核替換為步長1,并在卷積操作前加入了平均池化,一定程度上保留了梯度信息,僅在小樣本下證明了模型優(yōu)化有效[57]。
Deng等人提出一種改進的ResNet模型,用于改進智能機械故障診斷算法的診斷準確性以及網(wǎng)絡(luò)深度增加帶來的操作速度下降等問題,設(shè)計多尺度特征融合模塊提取多尺度故障特征信息,利用改進殘差塊提升了模型的計算速度[58]。
Xia等人以殘差網(wǎng)絡(luò)(ResNet)為主干,提取不同級別的語義信息,采取一種改進的多孔空間金字塔池化方法來提取多尺度深度語義信息提高網(wǎng)絡(luò)處理邊界信息的能力,然后通過不同規(guī)模的全球注意力上采樣機制將深層語義信息與淺層空間信息融合在一起,從而提高了網(wǎng)絡(luò)利用全局和局部特征的能力。在Sentinel-2衛(wèi)星和陸地遙感衛(wèi)星(Landsat)圖像上的實驗結(jié)果表明,該方法的分割精度和速度均優(yōu)于現(xiàn)有方法,對實現(xiàn)實際的云影分割具有重要意義[59]。
Wu等人利用殘差網(wǎng)絡(luò)(ResNet)、雙向門控單元(BiGRU)和注意力機制提出一種基于神經(jīng)網(wǎng)絡(luò)和主動學(xué)習(xí)(DABot)的新浪微博社交機器人檢測框架,經(jīng)過性能評估后,DABot的精度為0.988 7,說明該模型更加有效[60]。
將五種經(jīng)典卷積網(wǎng)絡(luò)的優(yōu)缺點以及適用場景的對比,總結(jié)為表1。
表1 五種模型對比
全卷積網(wǎng)絡(luò)(Fully Convolutional Networks,F(xiàn)CN)最初在語義分割的應(yīng)用中取得了較為滿意的成果,Long等人在2015年提出該模型并對當(dāng)前熱門的AlexNet、VGG net以及GoogLeNet與全卷積網(wǎng)絡(luò)相結(jié)合進行微調(diào)[61]。全卷積神經(jīng)網(wǎng)絡(luò)將傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)的全連接操作全部用卷積操作來替代,F(xiàn)CN同樣具備傳統(tǒng)卷積網(wǎng)絡(luò)的特點,可以接受任意大小的輸入數(shù)據(jù),更加高效。但FCN經(jīng)過上采樣獲得的結(jié)果中無法獲取圖像的詳細信息,像素之間的相關(guān)性無法得到利用并且FCN缺乏先驗知識約束,為了解決這些問題,He等人將邊緣信息作為先驗知識引入FCN,利用整體嵌套的邊緣檢測(HED)檢測到的邊緣信息校正FCN結(jié)果,提出一種Edge-FCN,在ESAR和GID數(shù)據(jù)集上的實驗結(jié)果證明該模型是有效的[62]。Zhao等人將基于邊界項(BSLIC)的簡單線性迭代聚類(SLIC)與全卷積網(wǎng)絡(luò)FCN結(jié)合在一起,使用FCN語義分割結(jié)果注釋BSLIC獲取的超像素區(qū)域,可以準確地識別圖像中目標語義信息,并且在小邊緣定位上也具有非常高的精度[63]。最終在PASCAL VOC 2012數(shù)據(jù)集上的實驗結(jié)果表明相對于傳統(tǒng)的FCN,改進算法明顯提高了分割精度。
FCN的應(yīng)用領(lǐng)域不僅僅局限于圖像處理,在視頻領(lǐng)域也取得了一定的成果。Wang等人將FCN應(yīng)用于視頻中進行動作估計,提出了一種混合全卷積網(wǎng)絡(luò)(H-FCN),該網(wǎng)絡(luò)由兩部分組成,分別為外觀FCN和運動FCN,利用外觀和運動線索來檢測動作[64]。最終,使用Stanford40 Actions、UCF Sports以及JHMDB三個數(shù)據(jù)集進行實驗,結(jié)果證實了H-FCN的有效性。Fang等人提出了一種新穎多模塊全卷積網(wǎng)絡(luò)(MM-FCN),用于立體視頻的視覺注意力預(yù)測,該網(wǎng)絡(luò)由三個模塊組成,分別為S-FCN、T-FCN和D-FCN,通過S-FCN和T-FCN學(xué)習(xí)到的顯著性信息可以很大程度提高D-FCN的預(yù)測結(jié)果[65]。實驗結(jié)果證實MM-FCN在大規(guī)模立體視頻人眼注視數(shù)據(jù)庫上,用于預(yù)測立體視頻的視覺注意力方面具有良好的前景。
FCN存在一定局限性。傳統(tǒng)模型由多個卷積層堆疊,卷積層堆疊過多會引起計算和優(yōu)化困難,當(dāng)需要大尺寸卷積核時,F(xiàn)CN模型的復(fù)雜度會明顯增大,計算量也相應(yīng)加大。在與其他技術(shù)(如:空洞卷積、編碼解碼、ASPP等)融合時,會使參數(shù)量及計算復(fù)雜度明顯上升[66]。陳紀銘等人在使用FCN對視頻數(shù)據(jù)做異常檢測時發(fā)現(xiàn)分塊速率過慢,無法訓(xùn)練出大樣本等問題[67]。楊朔等人在使用FCN對綠潮濃度圖像進行分類時發(fā)現(xiàn)傳統(tǒng)FCN的高倍上采樣會使圖像分類結(jié)果輪廓細節(jié)缺失,并且容易產(chǎn)生大面積缺口[68]。未來全卷積網(wǎng)絡(luò)應(yīng)該更加注重于模塊化設(shè)計而非僅僅改變網(wǎng)絡(luò)寬度深度來提升性能,如何設(shè)計出更加輕量級并且高效的網(wǎng)絡(luò)仍是重要方向。
遞歸神經(jīng)網(wǎng)絡(luò)RNN是一種基于序列建模的人工神經(jīng)網(wǎng)絡(luò),可以在神經(jīng)元之間橫向傳輸數(shù)據(jù)信息,并且部分表達數(shù)據(jù)之間的相關(guān)性,如圖8。RNN的特點在于隱藏層中神經(jīng)元相互連接,從而可以順序傳遞滑動窗口中與時間有關(guān)的輸入信息,并且可以考慮時間維度上距離較遠的事件之間的時間相關(guān)性。
圖8 RNN結(jié)構(gòu)示意圖
遞歸神經(jīng)網(wǎng)絡(luò)RNN的隱藏層結(jié)構(gòu)使其在時間序列預(yù)測方面具有非常廣泛的應(yīng)用,Wei等人將MLP、RNN、LSTM、GRU分別應(yīng)用于孔隙水壓力(PWP),得出具有RNN結(jié)構(gòu)的模型在針對時間序列數(shù)據(jù)時相較于MLP更為準確,尤其是LSTM和GRU可以描述輸入與響應(yīng)之間的時滯效應(yīng),相對于標準RNN更加精確可靠[69]。Ling等人將RNN應(yīng)用于核動力機械的故障預(yù)測,提出一種智能故障預(yù)測方法,將主成分分析PCA降維后的數(shù)據(jù)傳遞給完整的RNN模型,根據(jù)轉(zhuǎn)速和振動信號分別提前60 h和44 h生成警報。實驗結(jié)果表明,RNN模型可以有效地識別蠕變期間的故障[70]。
Stender等人將CNN與RNN結(jié)合使用,用于剎車噪聲檢測和預(yù)測,發(fā)現(xiàn)結(jié)合模型可以克服傳統(tǒng)方法的局限性,第一部分采用CNN顯示出了優(yōu)越的檢測質(zhì)量和特征提取性能,第二部分采用的RNN依賴于噪聲的瞬時頻譜特性,使用該模型預(yù)測剎車噪音的精度和準確度都非常高,該模型在聲音檢測方面展現(xiàn)出巨大的潛力[71]。Bai等人將RNN用于智能圖書館,通過讀者借閱記錄以及借閱行為來預(yù)測讀者在不同階段的感知需求,為讀者提供購書和個性化服務(wù),模型中使用CRFID與RNN結(jié)合,通過圖書館記錄的實際數(shù)據(jù)證實該模型在不同階段感知讀者需求是可行的[72]。
傳統(tǒng)RNN會產(chǎn)生梯度消失,并且在處理數(shù)據(jù)長期依賴時精度會大幅度下降,輸入輸出數(shù)據(jù)序列不匹配,模型的參數(shù)共享引起的缺失信息可能對時序特征產(chǎn)生影響,RNN將每個節(jié)點的先前隱藏狀態(tài)進行編碼作為整個模型的歷史信息,但是忽略了每個節(jié)點之間的獨立關(guān)系[73]。針對傳統(tǒng)模型的局限性,提出了LSTM和GRU等改進方案。
1997年Hochreiter和Schmidhuber在標準RNN中引入門控單元概念,解決了標準RNN存在的梯度消失問題[74]。LSTM單元由遺忘門、輸入門和輸出門組成,如圖9。通過這三個門可以使LSTM單元具有維持內(nèi)存狀態(tài)并且有選擇地記住或遺忘信息的能力,傳播過程中的無關(guān)信息將被遺忘丟棄。
圖9 LSTM結(jié)構(gòu)示意圖
對于時頻信息的獲取,LSTM相對于之前在該領(lǐng)域廣泛應(yīng)用的卷積神經(jīng)網(wǎng)絡(luò)更加合適。Wang等人將LSTM應(yīng)用于語音增強,提出一種LSTM-卷積-BLSTM編解碼器網(wǎng)絡(luò)(LCLED),包含了轉(zhuǎn)置卷積和跳躍連接,使用兩個LSTM單元對上下文信息進行捕獲,使用卷積層對頻域特征進行提取,在多種噪音的情況下該網(wǎng)絡(luò)模型仍具有良好的降噪功能,在語音增強方面具有更高的魯棒性[75]。Ma等人在傳統(tǒng)LSTM中引入卷積運算,提出一種CLSTM學(xué)習(xí)算法提取時頻信息,并且通過卷積獲取特征,通過堆疊CLSTM可以構(gòu)建用于RUL預(yù)測的深層框架以提取更深層的信息,將其應(yīng)用于滾珠軸承RUL預(yù)測,與現(xiàn)有模型相比,由于卷積運算導(dǎo)致訓(xùn)練時間略微增加但總體模型性能大大提高[76]。Petmezas等人將LSTM與CNN結(jié)合提出CNN-LSTM模型應(yīng)用于手動心電圖(ECG)中,通過CNN將提取到的ECG信號特征傳遞給LSTM以實現(xiàn)時間動態(tài)記憶,從而更為準確地分類四種ECG類型[77]。最終使用該模型在MIT-BIH心房顫動數(shù)據(jù)上進行訓(xùn)練,采用十折交叉驗證了該模型能準確驗證ECG類型(靈敏度為97.87%,特異性為99.29%),可以幫助臨床醫(yī)生實時檢測常見類型的房顫。趙紅蕊等人將LSTM與CNN結(jié)合用于股票價格預(yù)測并引入注意力機制(Convolutional Block Attention Module,CBAM),提出一種LSTM-CNN-CBAM混合模型,對比實驗結(jié)果驗證了在LSTM-CNN結(jié)合模型中加入CBAM模塊的可行性[78]。
Yu等人將LSTM應(yīng)用于非線性系統(tǒng)建模,通常非線性建模使用的訓(xùn)練方法是時間反向傳播BPTT,但是BPTT的速度較慢,所以提出一種改進的深度LSTM,結(jié)合了LSTM和多層感知器的優(yōu)勢,使用Lyapunov函數(shù)驗證了該訓(xùn)練方法的穩(wěn)定性,同時實驗證明該模型針對非線性系統(tǒng)建模優(yōu)于現(xiàn)有其他模型[79]。
LSTM相對于RNN改進了梯度消失問題,但是在使用小規(guī)模數(shù)據(jù)集時效果不夠理想,模型的復(fù)雜度提升了,訓(xùn)練時間變長,效率相對低下。孫陳影等人在使用LSTM對語音數(shù)據(jù)集進行分類時,耗時60.62 min,RNN的2倍[80]。佘雅文等人對比了傳統(tǒng)克里金方法和LSTM分別對自由空氣重力異常的估計結(jié)果,雖然LSTM在準確度和穩(wěn)定性上更好,但傳統(tǒng)方法耗時小于1 s而LSTM則超過120 s,在效率方面LSTM還存在很大的提升空間[81]。如果將LSTM應(yīng)用于時間跨度比較大的數(shù)據(jù)時,會產(chǎn)生非常巨大的計算量和時長。黃婷婷等人將LSTM應(yīng)用于金融時間序列預(yù)測,實驗發(fā)現(xiàn)LSTM預(yù)測結(jié)果具有滯后性[82]。
Cho等人提出的門控循環(huán)單元神經(jīng)網(wǎng)絡(luò)是LSTM的簡化形態(tài)[83]。GRU將輸出門和遺忘門耦合為更新門,重置門對應(yīng)LSTM的輸入門,與LSTM相似的是,GRU也保留現(xiàn)有信息并在現(xiàn)有信息內(nèi)容的基礎(chǔ)上添加經(jīng)過過濾的信息,模型具有存儲功能。不同的是,GRU將LSTM中的內(nèi)存控制剔除,簡化了LSTM的計算量,如圖10。
圖10 GRU結(jié)構(gòu)示意圖
GRU簡化LSTM的結(jié)構(gòu)使得參數(shù)量減少,大幅縮短了訓(xùn)練時間。Liu等人使用門控循環(huán)單元GRU代替神經(jīng)編程器解釋器NPI中的LSTM從而改變NPI的核心結(jié)構(gòu),在確保精度相同的情況下,使用GRU結(jié)合的NPI相對于原始的基于LSTM的NPI性能提升了大約33%[84]。Elsayed等人基于LSTM與全卷積網(wǎng)絡(luò)LSTM-FCN應(yīng)用于時間序列分類的分類結(jié)果,使用門控循環(huán)單元與全卷積網(wǎng)絡(luò)相結(jié)合得到GRU-FCN,提出使用GRU在具有較小體系結(jié)構(gòu)以及較小計算量的時間序列分類問題中,具有更高的分類準確性,更簡單的硬件實現(xiàn)[85]。
GRU在時序數(shù)據(jù)中的應(yīng)用較為廣泛,同時與處理高維數(shù)據(jù)的網(wǎng)絡(luò)結(jié)構(gòu)相結(jié)合,如:CNN等,能夠處理更加復(fù)雜的問題。Wu等人將GRU與CNN結(jié)合,提出一種GRU-CNN混合神經(jīng)網(wǎng)絡(luò)模型,其中GRU部分負責(zé)提取時序數(shù)據(jù)的特征向量,CNN提取高維數(shù)據(jù)的特征向量,該模型應(yīng)用于改善電力系統(tǒng)的短期負荷預(yù)測(STLF)中,對比BP神經(jīng)網(wǎng)絡(luò)、標準GRU以及標準CNN等預(yù)測方法,該模型能更好地處理時序數(shù)據(jù)并且提取數(shù)據(jù)集特征[86]。Pan等利用GRU-CNN結(jié)合模型應(yīng)用于長江的水位預(yù)測問題,通過30年的長江水位數(shù)據(jù),同時對比分析證實該模型優(yōu)于小波神經(jīng)網(wǎng)絡(luò)(WANN)、LSTM以及統(tǒng)計學(xué)整合移動平均自回歸模型ARIMA[87]。桂智明等人通過CNN和GRU提取交通流的時空特征,提出卷積門控循環(huán)單元預(yù)測模型(ACGRU)對交通流數(shù)據(jù)的時空特征進行預(yù)測,在真實交通流數(shù)據(jù)集上的實驗證實了該模型較于其他模型誤差降低了約9%,具有更高的預(yù)測精度[88]。
Tjandra等人提出一種基于張量分解方法的改進GRU模型TT-GRU,模型中使用CP分解和Tucker分解來表示權(quán)重矩陣,相比于標準GRU模型以及單純使用CP分解的GRU模型和僅使用Tucker分解的模型,TT-GRU具有更好的性能,使用TT格式的低秩張量表示權(quán)重矩陣能夠顯著壓縮參數(shù)量,同時保持模型準確性和性能表現(xiàn)[89]。
GRU模型雖然在結(jié)構(gòu)上相比LSTM較為簡單,同樣也解決了RNN梯度消失問題,但是單向GRU結(jié)構(gòu)只能獲取到某一時刻之前的歷史信息,而無法獲取到前后關(guān)系信息,在某些領(lǐng)域并不能滿足實際需求。雙向門控循環(huán)單元(Bidirection Gated Recurrent Unit,BiGRU)是將前向和后向兩個GRU層輸出結(jié)果拼接得到BiGRU的輸出結(jié)果,見圖11,前向由上文向下文學(xué)習(xí)數(shù)據(jù)間信息,后向相反。駱楠等人將BiGRU應(yīng)用于樹脂質(zhì)量預(yù)測,實驗最終模型擬合優(yōu)度為0.982,預(yù)測精度優(yōu)于GRU[90]。BiGRU通常與注意力機制技術(shù)結(jié)合可以提高模型準確率,萬子云等人將模型應(yīng)用于MOOC平臺檢測作弊行為,CNN提取局部特征、BiGRU提取時序特征,結(jié)合注意力機制取得了98.51%的準確率,AUC為91.07%,但是BiGRU的模型收斂速度相對較慢,均大于1 ms[91]。程琪苓等人同樣將CNN與BiGRU結(jié)合構(gòu)成編碼器,應(yīng)用于跨站腳本檢測,提升了檢測性能和分類效果[92]。BiGRU模型可以滿足訓(xùn)練過程中單向GRU需要獲取數(shù)據(jù)間完整性關(guān)系信息的缺陷,但多個GRU進行拼接的結(jié)構(gòu)同樣容易導(dǎo)致過擬合,使得整體性能下降,并且訓(xùn)練后的網(wǎng)絡(luò)泛化能力較低,不能適應(yīng)測試數(shù)據(jù)。
圖11 BiGRU結(jié)構(gòu)示意圖
近年來,人工智能領(lǐng)域較為火熱,人工神經(jīng)網(wǎng)絡(luò)也進入到各大領(lǐng)域的視野,并且取得了不同程度的結(jié)合和發(fā)展。本文對人工神經(jīng)網(wǎng)絡(luò)發(fā)展中的部分經(jīng)典網(wǎng)絡(luò)算法進行了簡單的梳理和概述,并對相關(guān)的研究應(yīng)用做以總結(jié),包含了理論基礎(chǔ)以及人工神經(jīng)網(wǎng)絡(luò)一些算法的發(fā)展、改進研究以及算法應(yīng)用,主要對多層感知器MLP、BP神經(jīng)網(wǎng)絡(luò)算法、卷積神經(jīng)網(wǎng)絡(luò)CNN以及遞歸神經(jīng)網(wǎng)絡(luò)四部分做以闡述,分別介紹了各個模型的優(yōu)缺點,見表2。
表2 四種人工神經(jīng)網(wǎng)絡(luò)模型對比
雖然人工神經(jīng)網(wǎng)絡(luò)目前應(yīng)用非常廣泛,但目前還面臨許多問題仍需解決。
(1)目前人工神經(jīng)網(wǎng)絡(luò)中多通道結(jié)構(gòu)模型(如:多通道卷積網(wǎng)絡(luò)、多通道LSTM等)的通道數(shù)量設(shè)置比較固定,不能根據(jù)數(shù)據(jù)集進行動態(tài)調(diào)整。
(2)雖然傳統(tǒng)模型在實驗分析應(yīng)用中都具有不錯的準確率和能效,但是通過人工向模型添加特定噪聲后,輕微的干擾會使精度嚴重下降,所以進一步提升人工神經(jīng)網(wǎng)絡(luò)模型的泛化能力,仍是人工神經(jīng)網(wǎng)絡(luò)模型發(fā)展的方向。
(3)面向深層次網(wǎng)絡(luò)結(jié)構(gòu)進行改進時,拓展模型的深度和寬度可能導(dǎo)致相反的效果,未來的工作可以圍繞設(shè)計具有可區(qū)分特征的模塊化結(jié)構(gòu),建立更加適應(yīng)實際需求的模型。
(4)在使用卷積神經(jīng)網(wǎng)絡(luò)進行圖像識別時,復(fù)雜圖像或者識別物體占有較小面積時,識別精度低下,未來可以圍繞發(fā)展使用弱監(jiān)督或無監(jiān)督學(xué)習(xí)對圖像數(shù)據(jù)進行標注,歸一化后再進行識別。
(5)目前面向遞歸神經(jīng)網(wǎng)絡(luò)的超參數(shù)調(diào)整還沒有標準的算法,手動調(diào)參意味著模型精度受制于研究者經(jīng)驗或者費時費力的調(diào)試,超參數(shù)優(yōu)化仍是一項需要解決的問題。