劉偉銘,杜逍睿,李靜寧,鄭仲星
(華南理工大學土木與交通學院, 廣州 510640)
地鐵因具有運量大、速度快、準時率高等優點,已經成為了城市最主要交通方式。以廣州為例,截止2019年6月,其日最高客運量已達到1 062.0萬人次[1]。地鐵在方便人們出行的同時,也因為其檢測技術的不完善頻頻給乘客帶來人身傷害,僅2019年上半年,全國由于地鐵列車門和屏蔽門之間夾物造成的乘客受傷事件就有多起,所以一套能檢測列車屏蔽門和列車門之間是否存在異物并能對所檢測到的異物進行分類的系統變得尤為重要,這不僅能為駕駛員提供夾物警告且能為駕駛員提供所夾異物的種類信息,便于駕駛員對是否繼續啟動列車進行綜合判斷,也將極大地保障乘客的乘車安全并大大提高列車的運行效率。
通過對地鐵的實地調研,發現夾在或掉落在地鐵站臺門與列車門之間的異物有5類,包括包類、衣服、人四肢、人頭、手機。目前基于深度學習的圖片分類器,如CNN,Faster R-CNN,YOLO,SSD[2-5]雖然具有準確率高魯棒性好的特點,但是其需要大量的帶標簽數據和昂貴的GPU作為前提,且由于神經網絡其巨大的參數量使得每次對圖片的分類都將進行數百萬甚至數千萬次的浮點運算。考慮到地鐵狹小的安裝環境和安裝成本,選擇NanoPC-T2嵌入式板作為基礎硬件,若在其上運行深度學習網絡,那么上百萬次的浮點運算對于性能較弱的NanoPC-T2嵌入式板來說是無法想象的,同時對于大量帶標簽訓練數據的獲取也是十分困難的。為了解決無法獲得大量帶標簽數據的問題,將采用無監督學習算法SOM[6]分別學習圖片數據和標簽數據的分布;為了解決分類異物實時性的問題,將采用Hebbian Learning(HL)[7]算法學習圖片數據分布與標簽數據分布之間的數學關系并編碼在HL矩陣中,最終以查表的方式實現異物分類,達到實時分類異物。
SOM算法是一種無監督的神經網絡,區別傳統的深度學習,SOM算法不依靠梯度下降和反向傳播進行權重更新而是采用競爭學習的方式,依靠神經元之間通過競爭、合作、適應來優化網絡,最終達到學習輸入數據分布的目的[8-11]。其優點在于不需要標簽訓練數據且能獲得較好的聚類效果,其缺點是傳統的SOM網絡無法對神經元的資源進行合理的配置,即網絡無法根據訓練數據的特性使需要精確表達的數據部分獲得更多的神經元表示,這將導致神經元權重聚類的不合理,影響對訓練數據分布的表達,進而使得聚類的準確度降低。
本文提出的基于SOM+HL的異物分類模型,用于提取圖片數據與標簽數據之間的數學關系,最終通過解碼學習到的相關性矩陣完成異物圖片分類。
為了介紹SOM+HL模型,本文將提供一個可視化的例子,以證明此模型具有學習不同類數據分布之間復雜數學關系的能力。本例中SOM在模型中的作用有:(1)負責提取輸入樣本的數據分布,如圖1所示,經過學習SOM神經元的權重將呈現出與圖1中藍色和紅色數據相似的分布;(2)以分布活動模式對輸入樣本進行編碼,如圖2所示,這種活動模式使得與輸入樣本最接近的神經元被強烈激活,領域神經元的激活強度與其距獲勝神經元的距離成比例衰減。

圖1 非線性的輸入數據關系及其分布

圖2 模型內部結構
為了使SOM網絡能更好地學習樣本的數據分布,改進了原有的SOM網絡,使得每個SOM神經元不止學習一個特定的權重,同時也學習對輸入數據的敏感曲線(呈正態分布),敏感曲線代表了神經元對輸入數據的偏好程度,輸入數據越接近神經元權重激活值越大。通常SOM網絡的訓練過程包括4個階段:(1)計算激活值過程;(2)競爭過程;(3)合作過程;(4)適應過程,本文在傳統SOM基礎上增加了(5)對敏感曲線的調整過程。以下為本文SOM網絡的訓練過程。


(1)
(2)競爭過程:通過公式(2)可獲得第p個SOM神經網絡中在第k輪訓練中獲勝的神經元bp(k),即激活值最大的神經元為獲勝神經元。

(2)

(3)
(4)適應過程:通過公式(3)的核函數能確保網絡中的神經元能專注于數據空間的不同區域,使神經元的輸入權重向樣本數據靠近,通過公式(4)獲得每個神經元權重的更新幅度,其中α(k)為第k輪訓練的學習率。

(4)
(5)敏感曲線調整過程:每個神經元的敏感曲線的調整取決于神經元的空間位置,神經元距離輸入樣本的距離,核函數的大小以及衰減學習率α(k),即通過式(5)對敏感曲線進行更新。

(5)

圖3 使用提出模型提取的數據關系
如圖3所示,本文只考慮2個SOM中的5個神經元的敏感曲線(即神經元2,7,14,41,46),可以注意到神經元若對某小區間的數據有很強的敏感性,其敏感曲線尖銳且密集,反之若對數據的敏感性不高,則其敏感曲線寬長且稀疏。利用這個機制,本文的模型可以優化資源(即神經元):使用更多的神經元去表征需要精細表示的數據區域,使用較少的神經元粗略地表示已經表現很好的數據區域。
本文模型的第二個部分是Hebbian Learning[17],它是一個連接不同SOM之間所有神經元的全連接矩陣,它使用全連接的方式將每個SOM神經元之間的關系投射到HL矩陣中,如圖3所示,最終HL矩陣會將學到的關系進行編碼。可以看到,若神經元之間存在相關性那會在全連接矩陣中高亮顯示,反之則會呈現暗色。Hebbian Leaning使得SOM神經元之間的相關性能被拉向正確的方向。原始的Hebbian Learning在神經元被激活時只允許權重增長,為了阻止權重的無限增長本文使用了改進后的Hebbian Leaning,當神經元以相關的方式被激活時他們之間的連接(權重)會被加強,而如果他們的激活效果是反相關的,那么他們的連接(權重)會被削弱。每個HL矩陣位置(i,j)在第k輪學習中的權重更新大小通過式(6)實現。

(6)
其中,

(7)
圖4詳細展示了當向模型輸入樣本數據時的模型學習過程,可以看到不同數據之間具有強相關性的神經元將其在HL矩陣的權重得到增強,而具有弱相關性的神經元之間其在HL矩陣中的權重將減小。

圖4 詳細模型結構與具體執行
圖5~圖10展示了HL通過SOM學習兩個不同類的數據分布來獲得不同類數據之間的數學關系的過程。從圖5可以看出,在初始階段HL矩陣是隨機的,通過50次的迭代后逐漸在出現一條明亮的曲線,此條曲線即是HL矩陣通過學習2類數據的SOM分布獲得的兩類數據的數學關系式,可見其形狀與所期待的data2=(data1)3曲線是非常接近的,也就說明了HL矩陣具有學習不同數據分布之間復雜數學關系式的能力,也就啟發通過SOM和HL來學習圖片像素矩陣與圖片標簽矩陣之間的復雜數學關系。

圖5 Epoch=0

圖6 Epoch=10

圖7 Epoch=20

圖8 Epoch=30

圖9 Epoch=40

圖10 Epoch=50
在利用SOM+HL模型對異物圖片進行分類時,首先將6類異物分別放在6個貼有標簽的文件夾中(1-衣服,2-包,3-人手/人腳,4-人頭,5-行李箱,6-無異物)。然后將數據分為兩類,第一類為圖片數據,第二類為圖片數據對應的標簽數據,將500張異物圖片數據和對應的標簽數據輸入各自的SOM網絡,利用SOM網絡學習兩類數據的分布,再將每輪訓練數據獲得的神經元激活值作為HL矩陣的輸入,利用式(6)學習不同SOM神經元之間的相關性并將其編碼在HL矩陣中,經過100輪的迭代學習,最終得到的圖片數據與標簽數據的相關性矩陣編碼如圖11所示。圖中每個點的明亮程度代表了不同SOM中神經元之間的聯系強弱,越明亮代表聯系越強,反之則越弱。

圖11 圖片數據與圖片標簽數據相關性
對于新圖片分類預測的過程,則直接采取解碼HL矩陣即可。即向SOM網絡輸入待分類的圖片數據并獲得其激活神經元的位置,通過查找HL學習矩陣,獲得圖片數據,SOM激活神經元位置對應的標簽數據并激活神經元的位置,最后通過解碼標簽矩陣激活神經元的權重矩陣獲得標簽值,完成圖片的分類。
本文對改進后的SOM+HL模型和原始SOM+HL網絡模型性能進行對比,結果如表1所示。可以看出,改進的SOM+HL模型在整體分類精度上有了較大提升,尤其是對小目標的分類精度上,通過分析可知這正是SOM網絡利用敏感曲線在小目標的表達上分配了更多的神經元資源的結果。

表1 SOM+HL模型性能對比
考慮到NanoPC-T2嵌入式板的算力問題,所以對圖片有效特征的提取變得尤為重要,這不僅能降低圖片的維度加快檢測速度,還能消除非主要特征對檢測結果的影響,使模型在性能上得到優化。
PCA(Principal components analysis)[12-14]技術是Hottel在1993年提出的一種全局特征提取的技術,主要利用不同維度數據之間的相關性進行數據的壓縮和降維。目前PCA技術已經廣泛用于圖片領域,使用PCA算法提取圖片特征的應用流程如下。
(1)創建一個矩陣[X1,X2,…,Xm],代表了N2×m的矩陣。其中每個Xi代表一張N×N的圖片,m代表訓練圖片的數量。
(2)計算所有圖片像素值的平均數
(8)
(3)計算差分矩陣

(9)
(4)通過差分矩陣來生成協方差矩陣,以獲得相關矩陣

(10)
(5)使用相關矩陣獲得特征向量
Aφi=φλi
(11)
其中,φi是正交特征向量矩陣;λ是特征值矩陣,其中對角線上的特征值關系為λ0>λ1>…>λN2-1且λ0=λmax,這是利用特征空間Φ來減少特征向量矩陣的依據[15-17]。特征向量順序與特征值代表了其和原始數據的相似程度,特征向量空間為
Φ=[φ1|φ2|……|φn]
(12)
其中,1≤n≤N2
(6)如果Φ是一個特征向量空間,那么圖片X可以通過公式(13)完成圖片的降維,yn的維度為n。
(13)
本文訓練圖片尺寸為200×200,即對于SOM網絡其輸入數據的維度為40 000,通過PCA降維后,只需要104個維度就能對原圖片進行表征,且保留了原灰度圖99%的信息,這在保證網絡訓練效果的同時大大降低了訓練SOM網絡的計算量。圖12為原灰度圖,圖13是利用降維后的104個維度信息恢復的灰度圖。

圖12 PCA降維前原圖

圖13 PCA降維復原圖
本文分析了對訓練圖片采用PCA預處理流程與不采用PCA預處理流程對分類結果的影響,實驗結果如表2所示。從表2可以看出,增加PCA流程不僅能提高分類檢測速度,更能提高分類的準確率。

表2 有無PCA流程對分類效果的影響
通過安裝在站臺門與列車門之間的RGB攝像頭采集的圖像,結合通過HL訓練所獲得的記錄了SOM分類神經元之間數學關系的矩陣模型,完成了對地鐵站臺門與列車門之間異物的分類。通過對比實驗可知,改進的SOM+HL模型能更好地分配神經元資源,對比原始的SOM+HL模型,其分類準確率從64.44%提高到72.60%。通過對待分類數據增加PCA預處理操作,降低訓練難度,預先使用PCA對訓練圖片進行降維去噪處理會提高SOM+HL模型的分類準確率,并能提高模型分類速度。最終PCA+SOM+HL模型對異物分類的準確率達到86.2%,其檢測速度在T2板上達到了60FPS,實現了實時分類異物,為進一步保障乘客乘車的安全和列車的高效運行奠定了基礎,因為實時性強和準確率高的特點,使得其在軌道交通領域具有極高的使用和推廣價值。