-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
神經(jīng)網(wǎng)絡(luò)分類器(神經(jīng)網(wǎng)絡(luò)分類器原理)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于神經(jīng)網(wǎng)絡(luò)分類器的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、神經(jīng)網(wǎng)絡(luò)中的對(duì)抗攻擊與對(duì)抗樣本
對(duì)抗攻擊
對(duì)抗攻擊論文參考:
《Intriguing properties of neural networks》
《神經(jīng)網(wǎng)絡(luò)有趣的特性》
《Threat of Adversarial Attacks on Deep Learning in Computer Vision: A Survey》,以下簡(jiǎn)稱『Survey』。
圖片做適當(dāng)修改后能欺騙深度學(xué)習(xí)模型的可能性
1.舉例理解:
左邊是一張能夠被GoogLeNet正常分類為熊貓的圖片,在添加一定的噪音后變成右圖,在人的肉眼看來,它還是熊貓,但GoogLeNet會(huì)判定為長(zhǎng)臂猿。這種被修改后人類無法明顯察覺,卻被機(jī)器識(shí)別錯(cuò)誤的數(shù)據(jù)即為 對(duì)抗樣本 ,而這整個(gè)過程就可以理解為 對(duì)抗攻擊 。
2.數(shù)學(xué)理解:
神經(jīng)網(wǎng)絡(luò)中每層神經(jīng)元的輸入 a = g(Wx+b),其中 g 為激活函數(shù),W 為權(quán)重參數(shù),x 為上一層的樣本數(shù)據(jù),b 為偏置參數(shù),那么從拓?fù)鋵W(xué)角度來看,在一個(gè)二維平面上,這個(gè)過程相當(dāng)于哪幾個(gè)步驟呢?
(1)一次使用權(quán)重參數(shù)矩陣 W 的線性變換
(2)一次使用偏執(zhí)向量 b 的移動(dòng)
(3)一次應(yīng)用非線性激活函數(shù) g 的變換
在 二維平面 ,其實(shí)是將整個(gè)平面進(jìn)行了 旋轉(zhuǎn)、移動(dòng)和拉伸 三步。
分類問題
簡(jiǎn)單分類問題:通過較少幾次變換將問題轉(zhuǎn)換為一條直線可分割的空間。
既是一層神經(jīng)網(wǎng)絡(luò)就可以完成分類,通過變換空間布局,最終通過一條直線完成分類。
舉例:
簡(jiǎn)單轉(zhuǎn)換ing........
轉(zhuǎn)換結(jié)果看下圖
復(fù)雜分類問題:通過多幾次的轉(zhuǎn)換完成將問題轉(zhuǎn)換為一條直線可分割的空間。
就是多層神經(jīng)網(wǎng)絡(luò)完成分類,通過變換空間布局,最終通過一條直線完成分類。
舉例:
動(dòng)態(tài)多步轉(zhuǎn)換
以上是從低維度理解神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,其中也有難以拉伸的例外,下圖所示的圓套圓的情況,就是難以在二維空間將其拉伸到理想的位置的例子。
但,增加神經(jīng)元,可以在 三維空間 中輕松將其分離。
看!
歸納 同樣對(duì)于復(fù)雜問題可以通過,增加神經(jīng)元在高維度通過更長(zhǎng)且復(fù)雜的方式解決。
但是例如兩個(gè)相互套起來的環(huán),按照推測(cè)需要在四維空間中才能完全分開,然而我們難以想象四維空間,在現(xiàn)實(shí)世界的數(shù)據(jù)集中,這種死結(jié)或者纏繞問題可能會(huì)更復(fù)雜。
對(duì)于神經(jīng)網(wǎng)絡(luò)來,可以選擇 將打成死結(jié)的數(shù)據(jù)盡可能拉伸開,而不是完全解開 ,如下圖,對(duì)于分類問題來說,已經(jīng)具有較高的準(zhǔn)確率和召回率。
部分情況下,為了更精確地分類,較寬的神經(jīng)網(wǎng)絡(luò)可能相對(duì)深度來說更重要。
綜上所述
1. 神經(jīng)網(wǎng)絡(luò)中包含語義信息的不在每個(gè)獨(dú)立的神經(jīng)單元,而是整個(gè)空間。 神經(jīng)網(wǎng)絡(luò)在最后一層能將樣本中諸多變化的因子理清楚并理解其語義,并不是因?yàn)槟硞€(gè)獨(dú)立神經(jīng)元中包含了什么特定的語義,而是 對(duì)整個(gè)空間進(jìn)行變換后從最終的表征層中學(xué)到的 ,經(jīng)過學(xué)習(xí),神經(jīng)網(wǎng)絡(luò)會(huì) 放大某些相關(guān)因子,同時(shí)縮小某些無關(guān)因子 。
2. 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到的輸入到輸出的映射在很大程度上是不連續(xù)的。 就像上面圖中為了解開一個(gè)死結(jié)所做的拉伸結(jié)果一樣, 在人看來,在拉伸距離較大的地方我們可以認(rèn)為這種映射是連續(xù)的, 然而 對(duì)于仍然纏繞在一起的部分,之前可以用來劃分界限的直線或者超平面已經(jīng)無法連續(xù) 。
通過仔細(xì)觀察可以區(qū)分出來,但是上文只是一個(gè)簡(jiǎn)單的例子,現(xiàn)實(shí)世界中的真實(shí)數(shù)據(jù)較為復(fù)雜,對(duì)于肉眼來說可能很難分清楚纏繞在一起的部分。對(duì)于神經(jīng)網(wǎng)絡(luò)來說, 對(duì)抗樣本已經(jīng)嚴(yán)重的跨過了用于分類的界限 ,而對(duì)于肉眼其實(shí)還 看不出來它有移動(dòng)。
()線性特性的攻擊行為()和()高效制造對(duì)抗樣本的方法()
參考論文:
《Explaining and harnessing adversarial examples》
《對(duì)抗性例子的解讀和掌握》
深度神經(jīng)網(wǎng)絡(luò)在高緯空間中的線性特性已經(jīng)足以產(chǎn)生這種攻擊行為 ,并提出了一種 更高效生成對(duì)抗樣本的方法 ,接下來我們就簡(jiǎn)單分析一下這一理論和方法。
目前神經(jīng)網(wǎng)絡(luò)為了提高訓(xùn)練效率所使用的激活函數(shù)在局部都過于線性。
例如:
類比先前舉出的拓?fù)鋵W(xué)例子,在 最后的表征層 都是 通過直線或超平面完成的分類 ,在線性的假設(shè)下,暫且不通過二維或三維空間來理解,先從一個(gè)簡(jiǎn)單的數(shù)學(xué)公式角度開始。
數(shù)學(xué)解釋
公式內(nèi)容解釋:
w 是訓(xùn)練好的參數(shù)向量
x 表示真實(shí)樣本數(shù)據(jù)向量
η 表示給圖像加入的噪音向量
x ~表示加入噪音后新生成的樣本
當(dāng)加入足夠小的 η 時(shí),肉眼無法區(qū)分出 x 的變化,直觀感覺上左邊的式子可能也不會(huì)變化很大。
事實(shí)上 ,然而 η 當(dāng)?shù)姆较蚺c w 完全一致的時(shí)候,即使很小,也會(huì)使整個(gè)激活值變化很大。
假設(shè)證明:
如果 w 是一個(gè) n 維向量,而其權(quán)值的平均大小為 m,那么激活值將會(huì)增加 nm??梢姡谝粋€(gè)肉眼幾乎無法差覺的擾動(dòng)干擾下,對(duì)神經(jīng)網(wǎng)絡(luò)最終激活層的計(jì)算會(huì)產(chǎn)生巨大的干擾,從而迷惑神經(jīng)網(wǎng)絡(luò)訓(xùn)練出來的模型。
尋找正確方向
當(dāng) η 與 w 的方向一致時(shí)會(huì)使激活值最大,那么,如何找到這個(gè)正確的方向呢?
結(jié)論,那就是損失函數(shù)在待構(gòu)造樣本上的梯度方向,即下面的式子。
ε 是一個(gè)調(diào)節(jié)系數(shù)
sign() 是一個(gè)符號(hào)函數(shù),代表的意思也很簡(jiǎn)單,就是取一個(gè)值的符號(hào)
(當(dāng)值大于 0 時(shí)取 1,當(dāng)值等于 0 時(shí)取 0,當(dāng)值小于 0 時(shí)取 -1)
▽ 表示求 x 的梯度,可以理解為偏導(dǎo),
J 是訓(xùn)練模型的損失函數(shù)。
結(jié)論的由來
在正常的神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中,有一個(gè)過程叫反向傳播,就是對(duì)參數(shù)求偏導(dǎo),然后將參數(shù)更新,我們結(jié)合下面這張圖看一下。
假設(shè)圖中的函數(shù)即為 損失函數(shù) ,為了使損失函數(shù)降到最低,我們會(huì)根據(jù)當(dāng)前值的梯度去調(diào)整。
當(dāng)梯度小于 0 的時(shí)候我們可以看出,當(dāng)前值需要右移。
而當(dāng)梯度大于 0 的時(shí)候,當(dāng)前值需要左移。
這個(gè)過程實(shí)際上就是用 θ 減去 θ。擴(kuò)展到損失函數(shù) J(θ, x, y) 中,θ 即為 我們要調(diào)整的參數(shù) ,因此在樣本 x 和 y 不改變的情況下,我們會(huì)**不斷去調(diào)整參數(shù) θ **以尋求局部最優(yōu)解,即 θ = θ - θ 。
生成對(duì)抗樣本,也可以采用類似的方法,那就是 固定參數(shù) θ,調(diào)整 x 同時(shí)使損失函數(shù)增大 ,而不是變小,此時(shí)就應(yīng)該讓 x 往相反的方向走,即 x = x + x ,這樣是不是很容易可以理解上面 η 的定義呢?在實(shí)踐中,我們還需要通過 ε 這個(gè)參數(shù)來 調(diào)節(jié)噪音的大小 ,這種方法相比之前提到的優(yōu)化方法非常高效,基本只需要一次計(jì)算就可以找到對(duì)抗樣本,因此作者將這種方法叫做 快速梯度符號(hào)法 (Fast Gradient Sign Method,F(xiàn)GSM)??偨Y(jié)一下FGSM,這種方法通過替換目標(biāo)值 y 就可以 讓攻擊樣本朝著指定的分類目標(biāo)走 ,即,可以做任意目標(biāo)的欺騙。
將線性假設(shè)簡(jiǎn)化到二維空間,我們要求的 η 其方向正好就接近于參數(shù) w 的方向,不再展開說明,有興趣的讀者可以自行畫一畫。
建立在一個(gè)高維空間線性的假設(shè)或猜測(cè)前提下,需要 實(shí)驗(yàn) 支撐,根據(jù)下列圖片分析展開。
圖片解釋
這張圖是對(duì)數(shù)據(jù)集CIFAR-10的分類器的決策邊界示意圖。
其中每個(gè)小格子代表的是不同的CIFAR-10樣本,
每個(gè)小格子中:
橫向從左往右代表的是FGSM算法中的梯度方向,
縱向代表的是FGSM梯度方向的正交方向,
白色表示模型能分類正確的情況
彩色代表預(yù)測(cè)出錯(cuò)的情況
不同的顏色代表不同的錯(cuò)誤預(yù)測(cè)分類。
可以看出,在出錯(cuò)的區(qū)域都程線性分布,另外,如果橫軸的方向走的不夠遠(yuǎn),即便再往其他方向走都無法使模型出錯(cuò),而一單進(jìn)入這個(gè)區(qū)域,就會(huì)出現(xiàn)大量的對(duì)抗樣本。而在隨機(jī)找到的對(duì)抗樣本中,這種分布也是很隨機(jī)的,甚至很難找到,見下圖。
從實(shí)驗(yàn)結(jié)果表明
高維空間中的線性假設(shè)也是合理的
舉例
一匹叫做 Clever Hans 的馬,剛出現(xiàn)的時(shí)候人們認(rèn)為這匹馬會(huì)做算術(shù),但實(shí)際上它只是會(huì)閱讀人的表情,當(dāng)它點(diǎn)馬蹄的次數(shù)接近正確答案時(shí),人們的表情會(huì)更興奮,它就知道該這個(gè)時(shí)候停止了。
隱喻神經(jīng)網(wǎng)絡(luò),一個(gè)測(cè)試效果良好的分類器,其實(shí)并不像人類一樣學(xué)習(xí)到了所分類樣本的真正底層概念,只不過剛好構(gòu)建了一個(gè)在訓(xùn)練數(shù)據(jù)上運(yùn)行相當(dāng)良好的模型,所以,你以為你以為的就是你以為的嗎?
分類器能夠在訓(xùn)練集的不同子集上訓(xùn)練時(shí)獲得大致相同的分類權(quán)重,因?yàn)闄C(jī)器學(xué)習(xí)算法能夠泛化, 基礎(chǔ)分類權(quán)重的穩(wěn)定性反過來又會(huì)導(dǎo)致對(duì)抗性樣本的穩(wěn)定性。因此, 對(duì)抗攻擊可以認(rèn)為是存在于任何神經(jīng)網(wǎng)絡(luò)模型。
以上是論文二的線性特性的攻擊行為
高效制造對(duì)抗樣本的方法
目前來看還沒有能夠完全抵抗這種攻擊的方法,其實(shí)結(jié)合攻擊的原理也不難看出,即便分類器做得再好,總能使一個(gè)樣本用最小的干擾走到錯(cuò)誤的分類區(qū)域,我們能做的更多是如何構(gòu)造魯棒性更強(qiáng)的模型,同時(shí)也保持對(duì)這個(gè)領(lǐng)域的關(guān)注。『Survey』(注意第一篇論文的引用有注釋)中總結(jié)的目前抵御攻擊的辦法可以分為三大類:
1.修改訓(xùn)練樣本 ———— 通過添加更多的對(duì)抗樣本到訓(xùn)練集中可以有效避免一部分攻擊 ,但這更像是一種無奈的做法, 當(dāng)擴(kuò)大樣本集的時(shí)候,其實(shí)分類邊界有可能也在隨之?dāng)U大 。
2.修改訓(xùn)練網(wǎng)絡(luò) ,這類方法會(huì)對(duì)訓(xùn)練網(wǎng)絡(luò)做出一定調(diào)整,其中有一種方式是模擬生物學(xué) 在最后一層使用更加非線性的激活函數(shù) ,但這種方式又會(huì) 導(dǎo)致訓(xùn)練效率和效果下降 。修改訓(xùn)練網(wǎng)絡(luò)的方法分為 完全抵抗 和 僅檢測(cè) 兩種方式,完全抵抗其實(shí)就是讓模型能將對(duì)抗樣本識(shí)別為正確的分類,而僅檢測(cè)是為了發(fā)現(xiàn)這種攻擊樣本,從而拒絕服務(wù)。
3.附加網(wǎng)絡(luò) ,這種方式是在 不改變?cè)心P偷那闆r下使用額外的網(wǎng)絡(luò)進(jìn)行輔助 ,這樣可以使原有網(wǎng)絡(luò)保持不變,其中最有效的一種方式是生成式對(duì)抗網(wǎng)絡(luò)——GAN。同樣的,這種方式也分為 完全抵抗 和 僅檢測(cè) 兩種方式。
總結(jié)一下
定義:
對(duì)抗樣本:是指在數(shù)據(jù)集中通過故意添加細(xì)微的干擾所形成的輸入樣本,會(huì)導(dǎo)致模型以高置信度給出一個(gè)錯(cuò)誤的輸出。
原因分析:
對(duì)抗樣本出現(xiàn)的主要原因之一是過度線性, 神經(jīng)網(wǎng)絡(luò)主要是基于線性塊構(gòu)建的,實(shí)現(xiàn)的整體函數(shù)被證明是高度線性的,如果一個(gè)線性函數(shù)具有許多輸入,那么它的值可以非常迅速地改變。
參考:
二、什么是BP神經(jīng)網(wǎng)絡(luò)?
BP算法的基本思想是:學(xué)習(xí)過程由信號(hào)正向傳播與誤差的反向回傳兩個(gè)部分組成;正向傳播時(shí),輸入樣本從輸入層傳入,經(jīng)各隱層依次逐層處理,傳向輸出層,若輸出層輸出與期望不符,則將誤差作為調(diào)整信號(hào)逐層反向回傳,對(duì)神經(jīng)元之間的連接權(quán)矩陣做出處理,使誤差減小。經(jīng)反復(fù)學(xué)習(xí),最終使誤差減小到可接受的范圍。具體步驟如下:
1、從訓(xùn)練集中取出某一樣本,把信息輸入網(wǎng)絡(luò)中。
2、通過各節(jié)點(diǎn)間的連接情況正向逐層處理后,得到神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出。
3、計(jì)算網(wǎng)絡(luò)實(shí)際輸出與期望輸出的誤差。
4、將誤差逐層反向回傳至之前各層,并按一定原則將誤差信號(hào)加載到連接權(quán)值上,使整個(gè)神經(jīng)網(wǎng)絡(luò)的連接權(quán)值向誤差減小的方向轉(zhuǎn)化。
5、対訓(xùn)練集中每一個(gè)輸入—輸出樣本對(duì)重復(fù)以上步驟,直到整個(gè)訓(xùn)練樣本集的誤差減小到符合要求為止。
三、如何通過人工神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)圖像識(shí)別
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks)(簡(jiǎn)稱ANN)系統(tǒng)從20 世紀(jì)40 年代末誕生至今僅短短半個(gè)多世紀(jì),但由于他具有信息的分布存儲(chǔ)、并行處理以及自學(xué)習(xí)能力等優(yōu)點(diǎn),已經(jīng)在信息處理、模式識(shí)別、智能控制及系統(tǒng)建模等領(lǐng)域得到越來越廣泛的應(yīng)用。尤其是基于誤差反向傳播(Error Back Propagation)算法的多層前饋網(wǎng)絡(luò)(Multiple-Layer Feedforward Network)(簡(jiǎn)稱BP 網(wǎng)絡(luò)),可以以任意精度逼近任意的連續(xù)函數(shù),所以廣泛應(yīng)用于非線性建模、函數(shù)逼近、模式分類等方面。
目標(biāo)識(shí)別是模式識(shí)別領(lǐng)域的一項(xiàng)傳統(tǒng)的課題,這是因?yàn)槟繕?biāo)識(shí)別不是一個(gè)孤立的問題,而是模式識(shí)別領(lǐng)域中大多數(shù)課題都會(huì)遇到的基本問題,并且在不同的課題中,由于具體的條件不同,解決的方法也不盡相同,因而目標(biāo)識(shí)別的研究仍具有理論和實(shí)踐意義。這里討論的是將要識(shí)別的目標(biāo)物體用成像頭(紅外或可見光等)攝入后形成的圖像信號(hào)序列送入計(jì)算機(jī),用神經(jīng)網(wǎng)絡(luò)識(shí)別圖像的問題。
一、BP 神經(jīng)網(wǎng)絡(luò)
BP 網(wǎng)絡(luò)是采用Widrow-Hoff 學(xué)習(xí)算法和非線性可微轉(zhuǎn)移函數(shù)的多層網(wǎng)絡(luò)。一個(gè)典型的BP 網(wǎng)絡(luò)采用的是梯度下降算法,也就是Widrow-Hoff 算法所規(guī)定的。backpropagation 就是指的為非線性多層網(wǎng)絡(luò)計(jì)算梯度的方法。一個(gè)典型的BP 網(wǎng)絡(luò)結(jié)構(gòu)如圖所示。
我們將它用向量圖表示如下圖所示。
其中:對(duì)于第k 個(gè)模式對(duì),輸出層單元的j 的加權(quán)輸入為
該單元的實(shí)際輸出為
而隱含層單元i 的加權(quán)輸入為
該單元的實(shí)際輸出為
函數(shù)f 為可微分遞減函數(shù)
其算法描述如下:
(1)初始化網(wǎng)絡(luò)及學(xué)習(xí)參數(shù),如設(shè)置網(wǎng)絡(luò)初始權(quán)矩陣、學(xué)習(xí)因子等。
(2)提供訓(xùn)練模式,訓(xùn)練網(wǎng)絡(luò),直到滿足學(xué)習(xí)要求。
(3)前向傳播過程:對(duì)給定訓(xùn)練模式輸入,計(jì)算網(wǎng)絡(luò)的輸出模式,并與期望模式比較,若有誤差,則執(zhí)行(4);否則,返回(2)。
(4)后向傳播過程:a. 計(jì)算同一層單元的誤差;b. 修正權(quán)值和閾值;c. 返回(2)
二、 BP 網(wǎng)絡(luò)隱層個(gè)數(shù)的選擇
對(duì)于含有一個(gè)隱層的三層BP 網(wǎng)絡(luò)可以實(shí)現(xiàn)輸入到輸出的任何非線性映射。增加網(wǎng)絡(luò)隱層數(shù)可以降低誤差,提高精度,但同時(shí)也使網(wǎng)絡(luò)復(fù)雜化,增加網(wǎng)絡(luò)的訓(xùn)練時(shí)間。誤差精度的提高也可以通過增加隱層結(jié)點(diǎn)數(shù)來實(shí)現(xiàn)。一般情況下,應(yīng)優(yōu)先考慮增加隱含層的結(jié)點(diǎn)數(shù)。
三、隱含層神經(jīng)元個(gè)數(shù)的選擇
當(dāng)用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)網(wǎng)絡(luò)映射時(shí),隱含層神經(jīng)元個(gè)數(shù)直接影響著神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力和歸納能力。隱含層神經(jīng)元數(shù)目較少時(shí),網(wǎng)絡(luò)每次學(xué)習(xí)的時(shí)間較短,但有可能因?yàn)閷W(xué)習(xí)不足導(dǎo)致網(wǎng)絡(luò)無法記住全部學(xué)習(xí)內(nèi)容;隱含層神經(jīng)元數(shù)目較大時(shí),學(xué)習(xí)能力增強(qiáng),網(wǎng)絡(luò)每次學(xué)習(xí)的時(shí)間較長(zhǎng),網(wǎng)絡(luò)的存儲(chǔ)容量隨之變大,導(dǎo)致網(wǎng)絡(luò)對(duì)未知輸入的歸納能力下降,因?yàn)閷?duì)隱含層神經(jīng)元個(gè)數(shù)的選擇尚無理論上的指導(dǎo),一般憑經(jīng)驗(yàn)確定。
四、神經(jīng)網(wǎng)絡(luò)圖像識(shí)別系統(tǒng)
人工神經(jīng)網(wǎng)絡(luò)方法實(shí)現(xiàn)模式識(shí)別,可處理一些環(huán)境信息十分復(fù)雜,背景知識(shí)不清楚,推理規(guī)則不明確的問題,允許樣品有較大的缺損、畸變,神經(jīng)網(wǎng)絡(luò)方法的缺點(diǎn)是其模型在不斷豐富完善中,目前能識(shí)別的模式類還不夠多,神經(jīng)網(wǎng)絡(luò)方法允許樣品有較大的缺損和畸變,其運(yùn)行速度快,自適應(yīng)性能好,具有較高的分辨率。
神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別系統(tǒng)是神經(jīng)網(wǎng)絡(luò)模式識(shí)別系統(tǒng)的一種,原理是一致的。一般神經(jīng)網(wǎng)絡(luò)圖像識(shí)別系統(tǒng)由預(yù)處理,特征提取和神經(jīng)網(wǎng)絡(luò)分類器組成。預(yù)處理就是將原始數(shù)據(jù)中的無用信息刪除,平滑,二值化和進(jìn)行幅度歸一化等。神經(jīng)網(wǎng)絡(luò)圖像識(shí)別系統(tǒng)中的特征提取部分不一定存在,這樣就分為兩大類:① 有特征提取部分的:這一類系統(tǒng)實(shí)際上是傳統(tǒng)方法與神經(jīng)網(wǎng)絡(luò)方法技術(shù)的結(jié)合,這種方法可以充分利用人的經(jīng)驗(yàn)來獲取模式特征以及神經(jīng)網(wǎng)絡(luò)分類能力來識(shí)別目標(biāo)圖像。特征提取必須能反應(yīng)整個(gè)圖像的特征。但它的抗干擾能力不如第2類。② 無特征提取部分的:省去特征抽取,整副圖像直接作為神經(jīng)網(wǎng)絡(luò)的輸入,這種方式下,系統(tǒng)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜度大大增加了,輸入模式維數(shù)的增加導(dǎo)致了網(wǎng)絡(luò)規(guī)模的龐大。此外,神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)需要完全自己消除模式變形的影響。但是網(wǎng)絡(luò)的抗干擾性能好,識(shí)別率高。
當(dāng)BP 網(wǎng)用于分類時(shí),首先要選擇各類的樣本進(jìn)行訓(xùn)練,每類樣本的個(gè)數(shù)要近似相等。其原因在于一方面防止訓(xùn)練后網(wǎng)絡(luò)對(duì)樣本多的類別響應(yīng)過于敏感,而對(duì)樣本數(shù)少的類別不敏感。另一方面可以大幅度提高訓(xùn)練速度,避免網(wǎng)絡(luò)陷入局部最小點(diǎn)。
由于BP 網(wǎng)絡(luò)不具有不變識(shí)別的能力,所以要使網(wǎng)絡(luò)對(duì)模式的平移、旋轉(zhuǎn)、伸縮具有不變性,要盡可能選擇各種可能情況的樣本。例如要選擇不同姿態(tài)、不同方位、不同角度、不同背景等有代表性的樣本,這樣可以保證網(wǎng)絡(luò)有較高的識(shí)別率。
構(gòu)造神經(jīng)網(wǎng)絡(luò)分類器首先要選擇適當(dāng)?shù)木W(wǎng)絡(luò)結(jié)構(gòu):神經(jīng)網(wǎng)絡(luò)分類器的輸入就是圖像的特征向量;神經(jīng)網(wǎng)絡(luò)分類器的輸出節(jié)點(diǎn)應(yīng)該是類別數(shù)。隱層數(shù)要選好,每層神經(jīng)元數(shù)要合適,目前有很多采用一層隱層的網(wǎng)絡(luò)結(jié)構(gòu)。然后要選擇適當(dāng)?shù)膶W(xué)習(xí)算法,這樣才會(huì)有很好的識(shí)別效果。在學(xué)習(xí)階段應(yīng)該用大量的樣本進(jìn)行訓(xùn)練學(xué)習(xí),通過樣本的大量學(xué)習(xí)對(duì)神經(jīng)網(wǎng)絡(luò)的各層網(wǎng)絡(luò)的連接權(quán)值進(jìn)行修正,使其對(duì)樣本有正確的識(shí)別結(jié)果,這就像人記數(shù)字一樣,網(wǎng)絡(luò)中的神經(jīng)元就像是人腦細(xì)胞,權(quán)值的改變就像是人腦細(xì)胞的相互作用的改變,神經(jīng)網(wǎng)絡(luò)在樣本學(xué)習(xí)中就像人記數(shù)字一樣,學(xué)習(xí)樣本時(shí)的網(wǎng)絡(luò)權(quán)值調(diào)整就相當(dāng)于人記住各個(gè)數(shù)字的形象,網(wǎng)絡(luò)權(quán)值就是網(wǎng)絡(luò)記住的內(nèi)容,網(wǎng)絡(luò)學(xué)習(xí)階段就像人由不認(rèn)識(shí)數(shù)字到認(rèn)識(shí)數(shù)字反復(fù)學(xué)習(xí)過程是一樣的。神經(jīng)網(wǎng)絡(luò)是按整個(gè)特征向量的整體來記憶圖像的,只要大多數(shù)特征符合曾學(xué)習(xí)過的樣本就可識(shí)別為同一類別,所以當(dāng)樣本存在較大噪聲時(shí)神經(jīng)網(wǎng)絡(luò)分類器仍可正確識(shí)別。在圖像識(shí)別階段,只要將圖像的點(diǎn)陣向量作為神經(jīng)網(wǎng)絡(luò)分類器的輸入,經(jīng)過網(wǎng)絡(luò)的計(jì)算,分類器的輸出就是識(shí)別結(jié)果。
五、仿真實(shí)驗(yàn)
1、實(shí)驗(yàn)對(duì)象
本實(shí)驗(yàn)用MATLAB 完成了對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和圖像識(shí)別模擬。從實(shí)驗(yàn)數(shù)據(jù)庫(kù)中選擇0~9 這十個(gè)數(shù)字的BMP 格式的目標(biāo)圖像。圖像大小為16×8 像素,每個(gè)目標(biāo)圖像分別加10%、20%、30%、40%、50%大小的隨機(jī)噪聲,共產(chǎn)生60 個(gè)圖像樣本。將樣本分為兩個(gè)部分,一部分用于訓(xùn)練,另一部分用于測(cè)試。實(shí)驗(yàn)中用于訓(xùn)練的樣本為40個(gè),用于測(cè)試的樣本為20 個(gè)。隨機(jī)噪聲調(diào)用函數(shù)randn(m,n)產(chǎn)生。
2、網(wǎng)絡(luò)結(jié)構(gòu)
本試驗(yàn)采用三層的BP 網(wǎng)絡(luò),輸入層神經(jīng)元個(gè)數(shù)等于樣本圖像的象素個(gè)數(shù)16×8 個(gè)。隱含層選24 個(gè)神經(jīng)元,這是在試驗(yàn)中試出的較理想的隱層結(jié)點(diǎn)數(shù)。輸出層神經(jīng)元個(gè)數(shù)就是要識(shí)別的模式數(shù)目,此例中有10 個(gè)模式,所以輸出層神經(jīng)元選擇10 個(gè),10 個(gè)神經(jīng)元與10 個(gè)模式一一對(duì)應(yīng)。
3、基于MATLAB 語言的網(wǎng)絡(luò)訓(xùn)練與仿真
建立并初始化網(wǎng)絡(luò)
% ================S1 = 24;% 隱層神經(jīng)元數(shù)目S1 選為24
[R,Q] = size(numdata);
[S2,Q] = size(targets);
F = numdata;
P=double(F);
net = newff(minmax(P),[S1 S2],{'logsig'
'logsig'},'traingda','learngdm')
這里numdata 為訓(xùn)練樣本矩陣,大小為128×40, targets 為對(duì)應(yīng)的目標(biāo)輸出矩陣,大小為10×40。
newff(PR,[S1 S2…SN],{TF1 TF2…TFN},BTF,BLF,PF)為MATLAB 函數(shù)庫(kù)中建立一個(gè)N 層
前向BP 網(wǎng)絡(luò)的函數(shù),函數(shù)的自變量PR 表示網(wǎng)絡(luò)輸入矢量取值范圍的矩陣[Pmin max];S1~SN 為各層神經(jīng)元的個(gè)數(shù);TF1~TFN 用于指定各層神經(jīng)元的傳遞函數(shù);BTF 用于指定網(wǎng)絡(luò)的訓(xùn)練函數(shù);BLF 用于指定權(quán)值和閥值的學(xué)習(xí)函數(shù);PF 用于指定網(wǎng)絡(luò)的性能函數(shù),缺省值為‘mse’。
設(shè)置訓(xùn)練參數(shù)
net.performFcn = 'sse'; %平方和誤差性能函數(shù)
net.trainParam.goal = 0.1; %平方和誤
差目標(biāo)
net.trainParam.show = 20; %進(jìn)程顯示
頻率
net.trainParam.epochs = 5000;%最大訓(xùn)
練步數(shù)
net.trainParam.mc = 0.95; %動(dòng)量常數(shù)
網(wǎng)絡(luò)訓(xùn)練
net=init(net);%初始化網(wǎng)絡(luò)
[net,tr] = train(net,P,T);%網(wǎng)絡(luò)訓(xùn)練
對(duì)訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行仿真
D=sim(net,P);
A = sim(net,B);
B 為測(cè)試樣本向量集,128×20 的點(diǎn)陣。D 為網(wǎng)絡(luò)對(duì)訓(xùn)練樣本的識(shí)別結(jié)果,A 為測(cè)試樣本的網(wǎng)絡(luò)識(shí)別結(jié)果。實(shí)驗(yàn)結(jié)果表明:網(wǎng)絡(luò)對(duì)訓(xùn)練樣本和對(duì)測(cè)試樣本的識(shí)別率均為100%。如圖為64579五個(gè)數(shù)字添加50%隨機(jī)噪聲后網(wǎng)絡(luò)的識(shí)別結(jié)果。
六、總結(jié)
從上述的試驗(yàn)中已經(jīng)可以看出,采用神經(jīng)網(wǎng)絡(luò)識(shí)別是切實(shí)可行的,給出的例子只是簡(jiǎn)單的數(shù)字識(shí)別實(shí)驗(yàn),要想在網(wǎng)絡(luò)模式下識(shí)別復(fù)雜的目標(biāo)圖像則需要降低網(wǎng)絡(luò)規(guī)模,增加識(shí)別能力,原理是一樣的。
四、設(shè)計(jì)一個(gè)BP神經(jīng)網(wǎng)絡(luò)分類器進(jìn)行分類,輸入向量為P=(1 -1 -2 -4;2 1 1 0),輸出向量為T=(0 1 1 0)
y =
0.6544 0.6499 0.6500 0.6499
是預(yù)測(cè)的輸出變量
以上就是關(guān)于神經(jīng)網(wǎng)絡(luò)分類器相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
深度神經(jīng)網(wǎng)絡(luò)的定義(深度神經(jīng)網(wǎng)絡(luò)的定義是什么)
循環(huán)神經(jīng)網(wǎng)絡(luò)應(yīng)用舉例(循環(huán)神經(jīng)網(wǎng)絡(luò)應(yīng)用舉例分析)
內(nèi)科排行榜(全國(guó)神經(jīng)內(nèi)科排行榜)
下列對(duì)各種分工方式的敘述正確的是(下列對(duì)各種分工方式的敘述正確的是)
杭州最繁華的cbd(杭州最繁華的商場(chǎng)是哪個(gè)-)