孟格格,高強
(華北電力大學 電氣與電子工程學院, 河北 保定 071003)
在視頻監(jiān)控中,異常場景是不常發(fā)生的。因此,通過人工長時間監(jiān)視圖像信息,以便發(fā)現(xiàn)異常情況,但這樣很容易產生疲勞,對一些異常情況也難以及時準確地做出判斷,降低了視頻監(jiān)控系統(tǒng)的建設意義。實際中,應自動分析視頻內容,檢測實際場景中的異常事件,從而實現(xiàn)監(jiān)控的智能化和高效化。在電力系統(tǒng)中,已建立了大量的視頻監(jiān)控系統(tǒng),如何實現(xiàn)對變電站異常情況的自動檢測,如輸電線路或變電站冒煙、著火,限制、危險區(qū)域有人員進入等具有很大意義。國內外對異常場景的研究,更多的是針對特定問題提取特征描述,采用分層模型以及訓練算法等[1]實現(xiàn)檢測。通過機器學習使計算機模仿人類從實例中學習的能力進行數(shù)據(jù)分析和建模,使它能夠對未知輸出做出盡可能正確的預測[2]。文獻[3]將模式識別技術應用在變電站視頻監(jiān)控中,實現(xiàn)了對無人值守變電站監(jiān)控視頻異常模式的識別。文獻[4]將視頻前后幀之間的相關性應用在視頻監(jiān)控中,提高對人臉識別算法的穩(wěn)定性。
深度學習是機器學習中的一個新的研究領域,通過深度學習的方法構建深度網絡來抽取特征是目前圖像識別中得到關注的研究方向。卷積神經網絡(Convolutional Neural Network,CNN)作為深度學習的一種,被廣泛應用在圖像識別中,當訓練樣本充足時,CNN在一些模式識別任務上表現(xiàn)出了優(yōu)越的性能,但訓練樣本稀少時,難以達到預期的效果。因此研究卷積神經網絡的小樣本處理策略是非常必要的[5]。在監(jiān)控場景下,絕大部分內容屬于正常場景,對異常場景的檢測屬于小樣本識別問題。在小樣本情況下,文獻[6]設計一種深度卷積神經網絡結構,實現(xiàn)對火災圖像深層次特征的自動提取,并提出一種參數(shù)替換方法,大大提高識別率。文獻[7]針對傳統(tǒng)的基于稀疏表示的人臉識別方法,對類內變化魯棒性不強的問題,從特征的層面入手,利用深度卷積神經網絡提取對類內變化不敏感的人臉特征,然后通過稀疏表示對所得人臉特征進行表達分類。
在對正常、異常場景的識別中,兩種場景識別錯誤對我們造成的影響是不同的,不能僅追求總體識別率。在允許對正常場景有一定誤判的前提下,要求對異常場景的漏判率越低越好。多層、多級網絡結構已經被提出且得到應用,如文獻[8]將多個神經網絡和不同特征提取方法有機地結合集成在一起,而構成多級神經網絡結構,提高網絡對樣本的識別率,文獻[9]通過第一級神經網絡剔除無效數(shù)據(jù),再將有效數(shù)據(jù)輸入第二級神經網絡得到更精準的聲源坐標。但通過分層來更好實現(xiàn)對小樣本識別的研究卻很少,基于此,依據(jù)小樣本信息,引入置信度的概念,提出多層卷積神經網絡(Multilayer Convolutional Neural Network,M_CNN)模型,在上一層訓練中難以識別的樣本進入下一層,重新進行特征的提取以及識別。在MNIST手寫體庫上的實驗表明,該模型在針對小樣本識別問題時,具有更好的性能。最后,將該模型應用在變電站異常場景識別中,取得了良好的效果。
卷積神經網絡分類器一般為全連接人工神經網絡,其中,使用比較廣泛的是softmax分類器。在多分類問題中,數(shù)據(jù)的類別標簽y的取值為k個,對于給定的輸入數(shù)據(jù)x,估算出對于每一個類別j(j=1,2,……,k)的概率值P(y=j|x)。即想估計x作為輸入出現(xiàn)時,每一種分類結果出現(xiàn)的概率。
(1)
式中θ指網絡訓練好的參數(shù)。在卷積神經網絡的輸出層中,選取概率值最大的類別j作為分類的結果,在樣本分類中,由于樣本特征提取不完全或者網絡參數(shù)調整不佳會導致誤判。對于某輸入樣本而言,其屬于某類別j的概率值越大,分類的準確性就越高。MNIST手寫體庫測試結果如下,圖1代表錯誤識別樣本的樣本號以及對應的最大概率值,圖2代表正確識別樣本的樣本號以及對應的最大概率值,圖中橫線均代表最大概率值的平均值。
圖1 錯誤識別樣本散點圖
圖2 正確識別樣本散點圖
由圖1和圖2可以看出正確識別樣本其最大概率值的平均值要遠大于錯誤識別樣本最大概率值的平均值。說明樣本特征空間離某類越近,越能被訓練好的網絡正確的識別。反之,若與任何一類的距離都較遠,則不能被所訓練好的模型識別。由此,根據(jù)網絡對樣本的輸出信息并結合置信度的概念,設計一個置信度判決函數(shù),滿足判決條件的,直接識別輸出,不滿足條件的樣本,進入下一層,用這些樣本來訓練新的網絡結構,并進行識別判決。系統(tǒng)結構如圖3所示。
圖3 多層卷積神經網絡結構圖
文獻[10]在CNN中加入置信度機制的研究,采用美國stanford大學統(tǒng)計學教授Efron提出的用于統(tǒng)計推斷的方法Bootstrap來估計置信區(qū)間。文獻[11]則指出,用Bootstrap方法產生的隨機樣本是有偏差的,在小樣本情況時要慎用該方法。文章依據(jù)奈曼皮爾遜準則提出的統(tǒng)計學的假設檢驗中存在著兩類錯誤,根據(jù)不同的情況,這兩類錯誤對結果的影響也不同。在根據(jù)兩類不同錯誤對檢驗結果的重要性的基礎上,預先定下其中一類錯誤的風險概率,求出適當?shù)呐袆e界。在對正常、異常場景分類中,將正常場景識別為異常場景,屬于“誤判”,這時,人工只需忽略這些誤判的情況,如果將異常場景識別為正常場景,屬于“漏判”,將無法在第一時間去制止事故的進一步惡化。因此,要能夠以非常高的置信度給出對異常樣本檢測的結果,即先給出置信度,根據(jù)置信度算出判決門限。根據(jù)奈曼皮爾遜準則,其漏判概率為:
(2)
式中ZT指判決門限;f(x)指概率密度函數(shù)。在實際中,對于小樣本情況,很難得到概率密度的顯式表達式,因而只能以其統(tǒng)計特性來確定最優(yōu)門限值。假定網絡對異常樣本輸出的最大概率值服從均值為μ,方差為σ2的正態(tài)分布,如果給定漏檢率,則可反推得到門限值。在該模型中,如設定漏檢率為0.01,根據(jù)正態(tài)分布查表可得:
ZT=0.504×σ+μ
(3)
實際中,網絡對小樣本輸出值的分布未必嚴格服從正態(tài)分布,所以,將其門限值定義為:
ZT=0.504×σ+μ+ρ
(4)
式中ρ是修正量,對應不同類型樣本,ρ的取值不同。
MNIST手寫體數(shù)據(jù)庫作為常用的標準數(shù)據(jù)庫之一,共包含70 000張0~9的圖片,每類7 000張,圖片的分辨率為28×28。為驗證文中算法對小樣本數(shù)據(jù)識別的有效性,通過以下實驗來觀察其算法的性能。網絡訓練過程如下:(1)初始化第一層網絡參數(shù),將訓練集樣本X作為CNN網絡的輸入,逐層訓練得到網絡的輸出,由代價函數(shù)得到網絡的誤差,并通過反向傳播算法進行權值的修正;(2)對訓練集X的樣本進行測試,并進行置信度判決,選出其中不滿足置信度條件的樣本組成新的訓練集X1;(3)用X1訓練第二層網絡,重復(1)、(2)直到該層樣本中的小樣本識別率達到最好,得到M_CNN模型;(4)對測試集的樣本進行分類,不滿足該層網絡置信度條件的樣本進入下一層網絡進行分類,統(tǒng)計各層錯誤識別樣本之和,得到M_CNN模型分類的正確率,并統(tǒng)計各層對小樣本圖像識別情況,得到識別率。
從MNIST手寫體庫中選取三類樣本,前兩類樣本數(shù)均為1 000,在第三類樣本分別選50, 100, 150, 200的前提下,對整體測試集的識別率以及對小樣本集的識別率比較如表1所示。
表1 小樣本數(shù)量變化對識別率的影響
由表1可以看出,多層卷積神經網絡模型從識別率而言,與傳統(tǒng)CNN模型相差不大,但由于在每層訓練時依據(jù)小樣本信息設置置信度,將不滿足置信度條件的樣本送入下一層進行重新訓練與識別,增大了對小樣本的識別率。在實驗中,傳統(tǒng)CNN模型對小樣本集的識別率隨訓練集中小樣本數(shù)目的上升呈上升趨勢,最后穩(wěn)定在94%,而M_CNN模型對小樣本的識別率能達到100%。尤其在小樣本數(shù)目較少時,傳統(tǒng)CNN模型對小樣本識別較差但所提出的模型已能對小樣本實現(xiàn)很好的識別。
上述實驗證明文中模型在針對小樣本識別時是非常有效的。在變電站監(jiān)控場景中,異常場景的出現(xiàn)屬于小樣本事件,下面將M_CNN模型應用于實際的變電站異常場景識別中。
采集不同變電站正常運行狀態(tài)下的圖像作為正常樣本,變電站中線路出現(xiàn)冒煙、起火,禁區(qū)有人闖入作為異常樣本,用于對變電站異常場景的識別。該數(shù)據(jù)庫共有2 000個樣本,包括1 500幅正常場景的圖像和500幅異常場景的圖像。庫中部分正常場景和異常場景樣本如圖4、圖5所示。
圖4 部分正常場景樣本
圖5 部分異常場景樣本
4.2.1 識別過程
實驗從1 500張正常場景照片中隨機選取1 200來訓練,剩下的300張作為測試樣本,同樣,從異常場景照片中隨機選取400張來訓練,剩下100張作為測試樣本。將樣本大小歸一化為64×64,作為網絡的輸入。由于樣本數(shù)較少,為保證每層訓練集樣本的個數(shù),采用兩層卷積神經網絡結構,具體訓練過程如下:(1)初始化網絡參數(shù),第一層、第二層網絡結構分別為:2C-(2×2)S-4C-(2×2)S-100F;4C-(2×2)S-8C-(2×2)S-100F,用訓練集樣本x來進行第一層網絡的訓練;(2)對訓練集樣本進行測試,計算置信度,不滿足條件的樣本組成新的訓練集x1;(3)用x1訓練第二層網絡,得到兩層卷積神經網絡模型;(4)對測試集樣本進行分類,不滿足第一層置信度條件的樣本進入第二層網絡進行測試,統(tǒng)計兩層錯誤樣本個數(shù)和對異常場景識別情況,計算識別率。
4.2.2 實驗結果
在4.2.1參數(shù)的基礎上,CNN模型和M_CNN模型對訓練樣本和測試樣本的識別率如表2所示,其中,識別率均取自對網絡訓練至收斂時的結果。除此,為了驗證M_CNN模型在識別小樣本時的有效性,本實驗將M_CNN模型與文獻[12]的CConvNet模型、文獻[13]的3_CNN模型和文獻[14]的DCNN模型進行對比。對于3_CNN和DCNN,分別與文中的M_CNN模型相結合,在第一層中,采取3_CNN、DCNN模型的結構,不滿足置信度判決條件的樣本用于進行下一層網絡的訓練,形成多層卷積神經網絡結構。其中,識別率包括對訓練集和測試集的識別率,以及對訓練集和測試集中異常樣本的識別率。
表2 不同算法識別率比對表
由表2可以看出,不同模型對訓練集樣本的識別率均高于對測試集樣本的識別率,對異常樣本的識別情況也如此。在對訓練集樣本的識別中,單層模型(如CNN、CConvNet、3_CNN、DCNN)對異常樣本識別較差,尤其是3_CNN模型,對訓練集中異常樣本的識別率僅有30.25%,M_CNN模型在針對樣本數(shù)較少的異常場景識別時,表現(xiàn)出巨大的優(yōu)越性(能實現(xiàn)對異常場景的100%識別),除此,M_CNN模型對訓練集整體的識別率也要優(yōu)于單層模型。在對測試集樣本的識別中,M_CNN模型的識別率也明顯優(yōu)于單層模型,3_CNN+M_CNN模型對測試集整體識別率最高,可達到88%且優(yōu)于M_CNN模型的識別率(86.25%),但由于其模型復雜,訓練時間長,而且我們更關注的是對異常場景的識別,在多層模型的前提下,均能實現(xiàn)對異常樣本的100%識別。
文中對變電站異常場景的識別進行了研究,結合奈曼皮爾遜準則,提出了一種針對提升小樣本識別率的多層卷積神經網絡模型,簡稱M_CNN模型。依據(jù)網絡對小樣本的識別情況,設置置信度判決函數(shù),對不滿足條件的樣本,重新進行特征的提取以及網絡的訓練,更符合人在識別物體時的習慣。因此,M_CNN模型可以有效的提高對小樣本的識別率。MNIST手寫體庫的實驗表明,在小樣本數(shù)較少時,M_CNN模型就能對小樣本實現(xiàn)很好的識別。將M_CNN模型應用在變電站異常場景識別中,也達到了較好的效果。