【摘 要】異常點數(shù)據(jù)是指數(shù)據(jù)集中與眾不同數(shù)據(jù)。這部分?jǐn)?shù)據(jù)的量小,但是對于我們的日常生產(chǎn)生活的影響極大。因此,異常點檢測被廣泛應(yīng)用于網(wǎng)絡(luò)入侵檢測,金融保險,天氣預(yù)報以及新藥研制等領(lǐng)域。相對于大量的正常數(shù)據(jù)挖掘而言,異常點檢測被稱作小模式數(shù)據(jù)挖掘。BP算法是一種常用的數(shù)據(jù)挖掘算法。但是BP算法進(jìn)行實際數(shù)據(jù)的異常點數(shù)據(jù)挖掘過程中存在:實際數(shù)據(jù)的維數(shù)較高,存在冗余特征的干擾,以及在高維特征下,數(shù)據(jù)量不充分的問題。因此,本文分析BP神經(jīng)網(wǎng)絡(luò)處理各種數(shù)據(jù)的情況,并進(jìn)行簡單分析。
【關(guān)鍵字】BP BP模型 神經(jīng)網(wǎng)絡(luò) 預(yù)測
一、BP神經(jīng)網(wǎng)絡(luò)介紹
BP是在1986年通過科技小組設(shè)計研究出來的,它在目前網(wǎng)絡(luò)運(yùn)用BP神經(jīng)網(wǎng)絡(luò)的異常點檢測應(yīng)用
張嘉一
(276826 曲阜師范大學(xué) 山東 日照)是最為廣泛的,是按照誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的網(wǎng)絡(luò)。能夠?qū)W習(xí)和儲存大量的映射關(guān)系,方便簡單的操作和學(xué)習(xí)。
運(yùn)用最速下降法的學(xué)習(xí)規(guī)則,通過自身不斷的調(diào)整網(wǎng)絡(luò)的要求值,從而以降低網(wǎng)絡(luò)的誤差平方和。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。就是在學(xué)習(xí)的過程中運(yùn)用誤差反傳誤差反向傳播算法,主要是要信息的正、反向傳播組成。
(一)輸入層通過接收外來的輸入信息,傳遞給中間層個神經(jīng)元。
(二)中間層通過把信息進(jìn)行處理和變換,然后根據(jù)信息的變化的需求,設(shè)計出相應(yīng)的單隱層或者是多隱層的結(jié)構(gòu)模式。
(三)隱層把消息傳遞給輸出層,通過處理后,完成正向傳播處理過程
(四)輸出層進(jìn)行最后的處理,對結(jié)果進(jìn)行傳播。
當(dāng)完成的實際的輸出與所期望的輸出不相符合的時候,就進(jìn)入了誤差的反向傳播階段。
誤差通過輸出層,根據(jù)誤差的梯度下降的方式修正各層的權(quán)值。
向隱層與輸入層逐層的進(jìn)行反傳。
通過不斷的進(jìn)行這種正反向的傳播,來調(diào)整各個層面的權(quán)值,以達(dá)到神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練的一種過程,并且這種過程需要極大程度上的減少誤差,以達(dá)到預(yù)先的設(shè)置次數(shù),被接受的程度。
BP算法主要包括兩個過程,一是由學(xué)習(xí)樣本、網(wǎng)絡(luò)權(quán)值從輸入層→隱含層→輸出層逐次算出各層節(jié)點的輸出;二是反過來由計算輸出與實際輸出偏差構(gòu)出的誤差函數(shù)E(),用梯度下降法調(diào)節(jié)網(wǎng)絡(luò)權(quán)值,即
使誤差減小。
設(shè)輸入層節(jié)點數(shù)為n,隱含層節(jié)點數(shù)為r,輸出層節(jié)點數(shù)為m,隱含層與輸入層之間的權(quán)值矩陣為,隱含層節(jié)點閥值為,輸出層與隱含層之間權(quán)值矩陣為,輸出層節(jié)點閥值為,并設(shè)有N個學(xué)習(xí)樣本其中為第P個學(xué)習(xí)樣本的輸入向量,為其實際輸出向量。其中。
二、基于BP神經(jīng)網(wǎng)絡(luò)的預(yù)測原理
(一)正向建模
正向建模是指訓(xùn)練一個神經(jīng)網(wǎng)絡(luò)表達(dá)系統(tǒng)正向動態(tài)的過程,這一過程建立的神經(jīng)網(wǎng)絡(luò)模型稱為正向模型。其中,神經(jīng)網(wǎng)絡(luò)與待辨識的系統(tǒng)并聯(lián),兩者的輸出誤差用做網(wǎng)絡(luò)的訓(xùn)練信號。顯然,這是一個典型的有導(dǎo)師學(xué)習(xí)問題,實際系統(tǒng)作為教師,向神經(jīng)網(wǎng)絡(luò)提供算法所需要的期望輸出。
系統(tǒng)是被控對象或者是傳統(tǒng)控制器時,可以通過選用BP網(wǎng)絡(luò)、多層次前向網(wǎng)絡(luò)。
系統(tǒng)為性能評價器時,可以采用多層器的感知器、小腦模型控制器以及選擇再勵學(xué)習(xí)算法。
(二)逆向建模
建立動態(tài)系統(tǒng)的逆模型,在神經(jīng)網(wǎng)絡(luò)中起著關(guān)鍵作用,并且得到了廣泛的應(yīng)用。其中,比較簡單的是直接逆建模法,也稱為廣義逆學(xué)習(xí)。擬預(yù)報的系統(tǒng)輸出作為網(wǎng)絡(luò)的輸入,網(wǎng)絡(luò)輸出與系統(tǒng)輸入比較,相應(yīng)的輸入誤差用于訓(xùn)練,因而網(wǎng)絡(luò)將通過學(xué)習(xí)建立系統(tǒng)的逆模型。但是,如果所辨識的非線性系統(tǒng)是不可逆的,利用上述方法將得到一個不正確的逆模型。因此,在建立系統(tǒng)時,可逆性應(yīng)該先有所保證。
三、異常檢測中BP神經(jīng)網(wǎng)絡(luò)的設(shè)計
(一)可微閾值單元
可微閾值單元,圖中為sigmoid單元,與感知器相似,sigmoid單元先計算它的線性組合,然后應(yīng)用一個閾值到此結(jié)果。然而,對sigmoid單元,閾值輸出是輸入的連續(xù)函數(shù)。更精確地講,sigmoid單元這樣計算輸出。
其中:
經(jīng)常被稱為sigmoid函數(shù)或者也可以稱為logistic函數(shù)。注意它的輸出范圍為0到1,隨輸入單調(diào)遞增。因為這個函數(shù)把非常大的書值域映射到一個小范圍的輸出。也叫擠壓函數(shù)。
本算法就是想把所有整數(shù)據(jù)特征映射到一個小范圍來處理判斷。
(二)BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)過程的基本步驟
1.定義誤差函數(shù)為期望輸出與實際輸出之差的平方和:
其中yj是輸出單元的期望輸出,是實際的輸出。
2.調(diào)節(jié)權(quán)值的公式為:
其中為學(xué)習(xí)步長,取正參數(shù),代表上一層神經(jīng)元的輸出,而有兩種情況:
(1) 如果j是輸出層(第m層)的神經(jīng)元,則
(2) 如果j不在輸出層,而是隱含層的神經(jīng)元,則
是該神經(jīng)元的輸出,而求本層的必須用到上一層的,可見誤差函數(shù)的求取是一個始于輸出層的反向傳播的遞歸過程。
將學(xué)習(xí)模式不斷輸入到輸入層,再根據(jù)輸出層產(chǎn)生的誤差不斷修正神經(jīng)元間連結(jié)的權(quán)值和神經(jīng)元的閾值,直到學(xué)習(xí)模式全部輸入或誤差達(dá)到一定的值。
反向傳播算法在網(wǎng)絡(luò)規(guī)模較大時計算量很大,收斂較慢,而且存在局部最小的問題,根據(jù)這一問題,在具體操作時采用了加入動量項的方法:
稱為動量因子,這樣后一次的權(quán)值更新適當(dāng)考慮上一次的權(quán)值更新,可以改善收斂特性。
四、結(jié)束語
總地來說,使用神經(jīng)網(wǎng)絡(luò)分類,對于相似性比較高,差異集中在局部特征的數(shù)據(jù),可以使用特征映射相關(guān)技術(shù)遺傳算法、啟發(fā)式搜索、特征隨機(jī)選取等得到這些特征差異。對于正常數(shù)據(jù)多特征地問題,特別是正常數(shù)據(jù)有多類數(shù)據(jù)的,可以采用多神經(jīng)網(wǎng)絡(luò)融合,即多神經(jīng)網(wǎng)絡(luò)記錄多特征。
作者簡介:
張嘉一(1992.1-)男,江蘇宜興,曲阜師范大學(xué)。