基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法
【專利摘要】本發(fā)明公開了一種基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,包括訓(xùn)練過程和測試過程,訓(xùn)練過程包括非監(jiān)督學(xué)習(xí)過程和監(jiān)督學(xué)習(xí)過程;測試過程為將測試數(shù)據(jù)輸入上述訓(xùn)練好的模型中,得到分類結(jié)果。本發(fā)明利用機器自學(xué)習(xí)特征的思想,提出了采用基于多層神經(jīng)網(wǎng)絡(luò)的超光譜分類方法,這樣學(xué)習(xí)特征比人為設(shè)計的特征更加精確,有較好的魯棒性。該學(xué)習(xí)只涉及到參數(shù)的調(diào)節(jié),計算效率高,對于數(shù)據(jù)的分類準(zhǔn)確率高。
【專利說明】基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法 【技術(shù)領(lǐng)域】
[〇〇〇1] 本發(fā)明涉及機器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)和遙感【技術(shù)領(lǐng)域】,更具體地說,涉及一種基于多層 神經(jīng)網(wǎng)絡(luò)的超光譜分類。 【背景技術(shù)】
[0002] 超光譜圖像是指圖像有數(shù)十?dāng)?shù)百個狹窄的光譜帶組成,而每一個光譜帶代表著一 定范圍的電磁波譜。人的眼睛只能接收可見光,而超光譜是把光譜范圍擴展到可見光之外 的范圍。在圖像上來說就是普通的彩色圖像只有三個波段,即紅、綠、藍(lán)3個可見波段成像 的疊加,可以表示為一個m*n*3的矩陣,m*n為圖像的尺寸,而超光譜圖像則是很多波段數(shù) 據(jù)的集合,包括不可見的波段,可以表示為:m*n*L,L是波段數(shù)。超光譜圖像同時收集了圖 像的數(shù)十?dāng)?shù)百個光譜波段,建立的精確的譜空間模型更有利于圖像的分割和分類。
[0003] 超光譜圖像的分類可以用來確定其對應(yīng)的材料的類別,比如對于生態(tài),地質(zhì)以及 農(nóng)業(yè)等方面的類別判斷。一般的分類包括三個步驟:特征提取,特征降維以及最后的分類, 其中最重要的環(huán)節(jié)就是特征的提取?,F(xiàn)有的特征提取的方法比如DMPs算子,EMPs算子和 MAPs等,這些方法都將光譜和空間信息進(jìn)行了聯(lián)合考慮。特征的學(xué)習(xí)一般有兩種方式:人 為學(xué)習(xí)和機器學(xué)習(xí)。由于分類的結(jié)果與特征的學(xué)習(xí)有著密切的關(guān)系,使用人為學(xué)習(xí)特征時, 當(dāng)遇到一個新的前面沒有學(xué)習(xí)的特征時,處理學(xué)習(xí)特征的過程將會變得很難,因此使用機 器自學(xué)習(xí)的方法來學(xué)習(xí)特征變得即為重要。目前超光譜分類應(yīng)用中使用較多的仍是傳統(tǒng)的 分類方法但是隨著計算機技術(shù)和遙感技術(shù)的不斷發(fā)展,專家系統(tǒng),神經(jīng)網(wǎng)絡(luò),模糊技術(shù)和決 策樹等一些原來實現(xiàn)困難的新方法也在超譜圖像處理中開始發(fā)揮作用。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于,針對上述特征學(xué)習(xí)技術(shù)中,采用人為的學(xué)習(xí)特征法具有學(xué)習(xí) 效率低,適應(yīng)性差等問題提出了一種基于多層神經(jīng)網(wǎng)絡(luò)的機器自學(xué)習(xí)特征的方法。
[0005] 實現(xiàn)本發(fā)明目的的技術(shù)方案為:多層神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖2所示。它包含輸入層, 中間隱層以及輸出層。各層之間是完全連接的而同層間是無連接的。該方法包括訓(xùn)練和測 試兩個過程。為了便于理解,將做如下的字符說明:
[0006] 輸入數(shù)據(jù)集X = {(Xi,Li) |Xi e Rn,Li e L,i = 1,…⑷,其中N是訓(xùn)練樣本的數(shù) 目,1^={1,2,3-,幻沙是標(biāo)簽類別的數(shù)目。對于超光譜圖像中的每一個像素\£1^(1 1為 超光譜圖像中一個像素所含有的光譜帶數(shù))。Q是對應(yīng)的\的類別標(biāo)簽。將每一層的輸入 記為X,每一層的輸出記為y。
[0007] 訓(xùn)練過程包括以下步驟:
[0008] 1)非監(jiān)督學(xué)習(xí)過程;
[0009] 2)監(jiān)督學(xué)習(xí)過程。
[〇〇1〇] 測試過程包括以下步驟:
[0011] 3)將數(shù)據(jù)輸入上述訓(xùn)練好的模型中,進(jìn)行分類,得到分類結(jié)果。
[0012] 上述方法中,所述步驟1)包括以下具體步驟:
[0013] 11)自動編碼器構(gòu)造過程;
[0014] 12)降噪自動編碼器的構(gòu)造過程,如圖3 ;
[0015] 13)多層降噪自動編碼器構(gòu)造過程;
[0016] 上述方法中,所述步驟11)包括以下具體步驟:
[0017] 111)對于輸入數(shù)據(jù)X,根據(jù)式子(1)得到輸出y,將這個過程稱為編碼過程。
[0018] y = f g (x) = s (ffx+b) (1)
[0019]
【權(quán)利要求】
1. 一種基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于包括訓(xùn)練過程和測試過 程, 訓(xùn)練過程的步驟如下: 1) 非監(jiān)督學(xué)習(xí)過程; 2) 監(jiān)督學(xué)習(xí)過程; 測試過程的步驟如下: 3) 將測試數(shù)據(jù)輸入上述訓(xùn)練好的模型中,得到分類結(jié)果。
2. 根據(jù)權(quán)利要求1所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于所述 步驟1)包括以下具體步驟: 11) 自動編碼器構(gòu)造過程; 12) 降噪自動編碼器的構(gòu)造過程; 13) 多層降噪自動編碼器構(gòu)造過程。
3. 根據(jù)權(quán)利要求2所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 11)包括以下具體步驟: 111) 對于輸入X,根據(jù)式子(1)得到輸出y,將這個過程稱為編碼過程, y = f e (x) = s (ffx+b) (1)
112) 根據(jù)(1)式中的輸出y,用式子(2)得到重構(gòu)后的結(jié)果z,將這個過程稱為解碼即 重構(gòu)過程; z = ge ; (y1 ) = s(ff/ x+b; ) (2) 從輸入到輸出的權(quán)值記為Θ = (W,b),輸出到輸入的權(quán)值記為θ ' = (W',b'); 113) 逐層進(jìn)行參數(shù)Θ和θ '的優(yōu)化,其目標(biāo)函數(shù)如式子(3)所示:
(3) 上面部分是參數(shù)的最優(yōu)化式子,下面部分是損失函數(shù);整個式子就是要使輸入前的X 和最后重構(gòu)后的ζ兩者間的誤差最??; 114) 優(yōu)化過程:在迭代終止前,根據(jù)式子(4)進(jìn)行計算:
⑷ 其中,AW = -(z_x)*s' (W' y+b')*W' *s' (Wx+b)*x; Aff/ =-(z-x)*s/ (ff/ y+b/ )*y; Δ b = - (z-x) *s; (ff/ y+b/ )*ff/ *s/ (ffx+b); = -(z-x)*s/ (ff/ y+b/ ); s為學(xué)習(xí)效率,初始化定義其值,S' (X)表示函數(shù)s的導(dǎo)數(shù),即s' (x) = S(x)*(l-S(x)); 最后得到自動編碼器優(yōu)化后的參數(shù)Θ和θ'。
4. 根據(jù)權(quán)利要求3所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 Ill)中的輸入具有以下特點: 輸入數(shù)據(jù)集X = {(Xi,Li) I Xi e Rn,Li e L,i = 1,…N},其中N是訓(xùn)練樣本的數(shù)目,L ={1,2,3…,k},k是標(biāo)簽類別的數(shù)目;對于超光譜圖像中的每一個像素 Xi e Rn,n為超光 譜圖像中一個像素所含有的光譜帶數(shù),Q是對應(yīng)的Xi的類別標(biāo)簽,將每一層的輸入記為χ, 每一層的輸出記為y。
5. 根據(jù)權(quán)利要求2所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 12) 包括如下具體步驟: 121)將原始的輸入數(shù)據(jù)X選取一定量的數(shù)據(jù)項變成0,即得到加了噪聲的輸入de (X), 加入噪聲后的輸入作為當(dāng)前的輸入進(jìn)行步驟11)中的編碼和解碼過程,得到重構(gòu)后的結(jié)果 z;接著根據(jù)輸入de(x)以及重構(gòu)后的結(jié)果z,按照步驟113)和114)中的過程進(jìn)行目標(biāo)函 數(shù)的優(yōu)化,從而得到降噪編碼器的參數(shù)Θ和Θ '。
6. 根據(jù)權(quán)利要求2所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 13) 包括如下具體步驟: 131)根據(jù)多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖,將前一層的輸出作為后一層的輸入;根據(jù)步驟 12)中的結(jié)果,利用優(yōu)化后的參數(shù)Θ = (W,b)得到當(dāng)前層的輸出即后一層中輸入為
將得到的y作為新的輸入數(shù)據(jù),重復(fù)上述步驟12)的過程,即逐 層進(jìn)行降噪自動編碼器的構(gòu)造過程,直到到達(dá)多層神經(jīng)網(wǎng)絡(luò)中間隱層的最后一層為止,然 后算出該層的輸出,進(jìn)行接下來的監(jiān)督學(xué)習(xí)的過程。
7. 根據(jù)權(quán)利要求1所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 2包括如下具體步驟: 21. logistic回歸的分類和優(yōu)化過程; 22) 神經(jīng)網(wǎng)絡(luò)整個反向傳播算法的微調(diào)過程。
8. 根據(jù)權(quán)利要求7所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 21)包括如下具體步驟: 211) 步驟1)中最后的輸出y作為logistic回歸的輸入數(shù)據(jù)集X進(jìn)行分類,其分類的 結(jié)果用式子(5)進(jìn)行計算:
(5) 其中Θ是參數(shù),Θ = (W,b),表示某一個類別,k為總的類別數(shù)目,Wj,bj表示類別為j 時的W,b中的值,即W,b對應(yīng)的第j行的值; 212) 根據(jù)目標(biāo)函數(shù)(6)調(diào)節(jié)參數(shù)Θ = (W,b):
(6) 其中N表示總的樣本的數(shù)目,i表示某一個樣本,j表示某一個標(biāo) 簽,
213) 優(yōu)化過程:在迭代終止前,根據(jù)(7)進(jìn)行計算: ffj = ffj+ δ Δ ffj, bj = bj+ δ Δ bj (7) 其中
9. 根據(jù)權(quán)利要求7所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步驟 22)包括如下具體步驟: 221) 調(diào)節(jié)輸出層到隱層的最后一層間的參數(shù);設(shè)最后的輸出結(jié)果是〇,實際的結(jié)果是 t,則最后一層的誤差計算為ε = o(l-o) (t-o);用式子(8)調(diào)節(jié)參數(shù)W: ff = W+ Δ W (8) 其中AW = δ * ε *y,y表不隱層的最后一層的輸出,ε表不相連的兩層間的輸出誤 差,δ為學(xué)習(xí)效率; 222) 倒數(shù)第二層開始逐層向前參數(shù)調(diào)節(jié);設(shè)第s層的輸出為y(s),則與該層相連的 前面一層的輸出為y(s-l),則兩層間的參數(shù)1用式子(8)進(jìn)行迭代優(yōu)化,其中AW S = S*e*y(s-1), ε =y(s)(l-y(s-l))Ws+1; 223) 最后保存各層的參數(shù)0s= (Ws,bs),則訓(xùn)練過程結(jié)束。
10. 根據(jù)權(quán)利要求1所述的基于多層神經(jīng)網(wǎng)絡(luò)的超光譜圖像分類方法,其特征在于步 驟3)包括如下具體步驟: 將測試數(shù)據(jù)集X輸入到上述已訓(xùn)練的多層神經(jīng)網(wǎng)絡(luò)模型,得到分類的結(jié)果,根據(jù)實際 輸出的分類結(jié)果與原始標(biāo)簽相比,得到測試數(shù)據(jù)集的正確率。
【文檔編號】G06N3/02GK104050507SQ201410308042
【公開日】2014年9月17日 申請日期:2014年6月30日 優(yōu)先權(quán)日:2014年6月30日
【發(fā)明者】劉亞洲, 唐曉晴, 孫權(quán)森 申請人:南京理工大學(xué)