国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

基于交通路標(biāo)分類的多列深度神經(jīng)網(wǎng)絡(luò)(MCDNN)

2019-11-10 23:07:29
字體:
供稿:網(wǎng)友
 http://blog.csdn.net/u010529217/article/details/38701703

基于交通路標(biāo)分類的多列深度神經(jīng)網(wǎng)絡(luò)(MCDNN)

標(biāo)簽: networkdnnmcdnn2014-08-20 09:34 2288人閱讀 評論(1) 收藏 舉報(bào)

目錄(?)[+]

原文標(biāo)題:Multi-Column Deep Neural Network for Traffic Sign Classification(2012)

作者:Dan Ciresan, Ueli Meier, Jonathan Masci and Jurgen Schmidhuber

這片文章描述的是參加 The German Traffic Sign Recognition Benchmark (http://benchmark.ini.rub.de/?section=gtsrb&subsection=news)比賽的一個算法,最終贏得了該比賽的第一名。

本文是對該文章主要內(nèi)容的部分翻譯,并補(bǔ)充了一些個人觀點(diǎn),如有問題或者疑問,歡迎指出。

摘要:

在Traffic Sign Classification中,文中方法能達(dá)到99.46%的準(zhǔn)確率,是唯一 一個優(yōu)于人類識別(human recognition)率的算法。每個單獨(dú)的DNN都無需人工提取特征,而是 learned in a supervised way。最后將多種 trained on differently PReprocessed data 的DNNs 結(jié)合(combine)到一個MCDNN,進(jìn)一步提高了識別性能和泛化能力。

1.簡介:

目前最成功的 分層物體識別系統(tǒng)(hierarchical object recognition systems)都是針對輸入圖像提取局部特征,然后用濾波器卷積圖像塊。Filter responses are then repeatedly pooled and re-filtered, 由此產(chǎn)生了一個深度前饋網(wǎng)絡(luò)結(jié)構(gòu),其輸出的特征向量用于最后的分類。

應(yīng)用到原始圖像塊的無監(jiān)督學(xué)習(xí)方法,一般是產(chǎn)生局部濾波器(localized filters),比如:off -center-on-surround filters, orientationsensitive bar detectors, Gabor filters.在使用中,這些濾波器的權(quán)值是固定的(fixed)。

相比之下,卷及神經(jīng)網(wǎng)絡(luò)(CNNs)的濾波器的權(quán)重是隨機(jī)初始化的,使用BP算法有監(jiān)督學(xué)習(xí)。

單個DNN—MCDNN的基本構(gòu)建模塊,是一個多層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),結(jié)構(gòu)中 convolutional層和max-pooling層交替出現(xiàn)。

Meier (2011)指出,多個不同DNN的結(jié)合無需優(yōu)化,只需 averaging 輸出結(jié)果,在unseen test set 中也有不錯的效果,具有很好的泛化能力。

實(shí)驗(yàn)的快速實(shí)現(xiàn)依賴于GPUs, fully online (i.e., weight updates after each image)。訓(xùn)練一個大型的DNN僅需要幾天的時(shí)間,而不是幾個月。

The German traffic sign recognition benchmark (GTSRB),是一個43類的分類問題,包括兩個階段,初步評估階段和現(xiàn)場總結(jié)賽階段。

初步評估階段,我們使用了一組多層感知器(MLP:Multi-Layer Perceptrons) trained on provided features 和一個DNN trained on raw pixel intensities,即MLP+DNN。

本文描述的是現(xiàn)場總結(jié)賽階段所使用的方法,MCDNN。

2.MCDNN

作為MCDNN的基本構(gòu)建模塊,DNN交替使用converlution層和max-pooling層。

2.1DNN

一個DNN包括一系列的converlution層和max-pooling層,每一層只連接前一層。它是一種常見的、多層的特征提取器,將輸入圖像的原始像素密度映射為一個特征向量,然后使用2~3層的全連接層對特征向量進(jìn)行分類。所有可調(diào)參數(shù)通過最小化訓(xùn)練集的誤分類誤差(through minimization of the misclassification error)得到調(diào)整和優(yōu)化。

2.1.1卷積層

圖1a:DNN結(jié)構(gòu)

每個卷積層執(zhí)行一次2D的卷積,執(zhí)行對象為:層所有輸入圖像 和 一個size為的濾波器。

層的所有輸入圖像的最終激活值(resulting activations)是 層所有卷積響應(yīng)的和,可以通過相面的一個非線性激活函數(shù)得到:

公式中各參數(shù)的意義:

n  :層數(shù)

Y :圖片,大小為

:濾波器,大小為 ,連接輸入圖片 i 和 輸出圖片 j 

:輸出圖片 j 的偏置

*: valid 2D convolution

對于輸入圖片:size為,   濾波器:size為,   

輸出圖像的size為:

  。

注意:公式1遍歷層所有的輸入圖像。

2.1.2 Max-pooling層

文章中提到:DNN和CNN最大的區(qū)別是:CNN使用的是sub-sampling層,而DNN使用的是max-pooling層。兩者均可以認(rèn)為是 池化 的過程。

采樣層:是對上一層map的一個采樣處理,這里的采樣方式是對上一層map的相鄰小區(qū)域進(jìn)行聚合統(tǒng)計(jì),區(qū)域大小為scale*scale,

有些實(shí)現(xiàn)是取scale*scale小區(qū)域的最大值,即max-pooling。

有些實(shí)現(xiàn)是采用scale*scale小區(qū)域的均值,即sub-sampling。

注意,卷積的計(jì)算窗口是可以重疊的。本文采用的計(jì)算窗口沒有重疊。

2.1.3分類層

卷積層卷積核的大小和max-pooling層矩形區(qū)域的大小 的設(shè)定一般需滿足:最后一層卷積層的輸出maps正好降維到1個pixel per map,或者,使用一個全連接層將最后一層卷積層的所有輸出 combine into 一個1維的特征向量。在分類任務(wù)中,最后一層一般是全連接層,每一個輸出節(jié)點(diǎn)代表一類。

本文中,最后一層使用softmax 激勵函數(shù),從而可以把每個節(jié)點(diǎn)的輸出看作是每一類出現(xiàn)的概率。

softmax function:歸一化一組值到0~1之間,總和為1。換句話說,是一種歸一化操作,是的輸出在(0,1)之間。

2.1.4訓(xùn)練單個DNN

圖1b:訓(xùn)練單個DNN:在訓(xùn)練開始前,給定的數(shù)據(jù)集先進(jìn)行預(yù)處理(P:preprocessed),

然后訓(xùn)練過程中,每個epoch前,all original or preprocessed images隨機(jī)失真(D:distorted)。

注意:預(yù)處理過程不是隨機(jī)的,訓(xùn)練前,整個數(shù)據(jù)集都需要進(jìn)行統(tǒng)一的或特定的預(yù)處理。(3.1會詳細(xì)介紹)

         失真處理是隨機(jī)的(此處的‘隨機(jī)’是指處理方式是隨機(jī)的),在訓(xùn)練過程中,失真處理每一張預(yù)處理過的圖片

輸入圖像經(jīng)過預(yù)處理,并在訓(xùn)練過程中不斷被扭曲。圖像預(yù)處理不是隨機(jī)的,圖像扭曲是隨機(jī)的,應(yīng)用在每一個預(yù)處理圖像的訓(xùn)練過程中,使用隨機(jī)的有界值進(jìn)行位移,旋轉(zhuǎn)和尺度變換。這些值在特定的范圍均勻分布,圖像位移在正負(fù)10%的范圍,尺度變換在0.9—1.1,旋轉(zhuǎn)范圍在正負(fù)5度。最終固定尺寸圖像是通過扭曲輸入圖像雙線性插值得到。

圖像扭曲是為了用很多自由參數(shù)訓(xùn)練DNN時(shí)避免過擬合,大大改善識別性能。

all DNN training:在線(online)梯度下降,退火學(xué)習(xí)率(學(xué)習(xí)率逐漸降低)。

2.1.5 MCDNN的形成

圖1c:MCDNN 結(jié)構(gòu):The input image is preprocessed by n different preprocessors P0 — Pn-1,

and an arbitrary number of columns is trained on each preprocessed input. 

The final predictions are obtained by averaging individual predictions of each DNN.

平均多個不同的DNN列的輸出激勵,組建一個MCDNN。對于一個給定的輸入模型,對所有列的預(yù)測值平均化。訓(xùn)練前,所有列的權(quán)重隨機(jī)初始化。

Various columns can be trained on the same inputs, or on inputs preprocessed in different ways。(謹(jǐn)記:相同不相同是針對‘P’而言)

事實(shí)上,使用相同的數(shù)據(jù)集訓(xùn)練的模型的誤差具有高度的相關(guān)性。為了避免這個問題,我們的MCDNN結(jié)合了不同歸一化(產(chǎn)生多種不同的數(shù)據(jù)集)數(shù)據(jù)訓(xùn)練的多種DNN。一個關(guān)鍵的問題是:多個模型的輸出結(jié)果在combination時(shí),需不需要進(jìn)行優(yōu)化(即:是對DNNs的結(jié)果直接average,還是加個weight)。

訓(xùn)練中常見的問題有兩個:1)需要附加的訓(xùn)練集(本文通過 'D' 過程解決);2)無法保證的是:訓(xùn)練后的MCDNN對未知的訓(xùn)練集也能產(chǎn)生較好的結(jié)果。(即:泛化能力有待商榷)。

對于手寫數(shù)字,Meier文章中指出,對于測試集,僅僅對多個DNN的輸出結(jié)果進(jìn)行平均化,要比對多個DNN進(jìn)行線性組合(linear combination)(權(quán)重通過驗(yàn)證集得到優(yōu)化)具有更好的泛化能力。因此,本文中直接averaging the outputs of each DNN。

這里的average怎么理解呢?

假如有兩個DNNs,每個DNN 的輸出節(jié)點(diǎn)有4個,(即4類)。

假設(shè):第一個DNN 輸出結(jié)果為:0.3,0.1,0.5,0.1;第二個DNN輸出結(jié)果為:0.5,0.2,0.1,0.2,所以MCDNN的average輸出為:0.4,0.15,0.3,0.15。所以最終結(jié)果說明,輸入圖像屬于第一類。(這里的概率均為假設(shè),純屬為計(jì)算方便,一般實(shí)際的概率輸出差別會比較大)

(純屬個人觀點(diǎn),如有不同意見,歡迎共享)

3.實(shí)驗(yàn)

使用的系統(tǒng):1個Core i7-950 (3.33GHz), 24 GB DDR3, 4個 graphics cards of type GTX 580.

training set 中,只有未變形的、原始的或者預(yù)處理過的圖像才被用于驗(yàn)證過程,當(dāng)驗(yàn)證誤差為0(一般需要15~30 epochs)時(shí),結(jié)束訓(xùn)練過程。

初始權(quán)重(卷積核的權(quán)重)從范圍為 [-0.05,0.05] 的均勻隨機(jī)分布中獲取。每個神經(jīng)元的激勵函數(shù)為雙曲正切函數(shù)。

3.1 數(shù)據(jù)預(yù)處理

每一幅原始彩色圖片內(nèi)包含一個交通圖標(biāo),圖標(biāo)周圍有10%的邊界(border)。原始彩色圖片大小從15*15到250*250不等,且一般不為正方形。在圖片中,交通圖標(biāo)一般不居中,邊界框(bounding box)是注釋(annotations)的一部分。

訓(xùn)練集一共39209幅圖像,測試集為12630幅圖像。

preprocessing:

'切割'(crop)所有的圖像,并且只處理邊界框(bounding box)內(nèi)的圖片。MCDNN要求所有的訓(xùn)練圖像必須為正方形。本文中resize所有的圖像大小為 48*48 pixels。Resizing forces them to have square bounding boxes。對比度歸一化。文中使用了4種對比度歸一化方法:Image Adjustment (Imadjust),Histogram Equalization (Histeq),Adaptive Histogram Equalization (Adapthisteq),Contrast Normalization (Conorm)。(圖像調(diào)整,直方圖均衡化,自適應(yīng)直方圖均衡化,對比度歸一化)

Image Adjustment (Imadjust):通過映射像素強(qiáng)度到新的值,增加圖像的對比度,比如將1%的數(shù)據(jù)滲透到低強(qiáng)度和高強(qiáng)度。

Histogram Equalization (Histeq):直方圖均衡化,轉(zhuǎn)換像素強(qiáng)度增強(qiáng)對比度;輸出圖像直方圖大致均衡統(tǒng)一。 “中心思想”是把原始圖像的灰度直方圖從比較集中的某個灰度區(qū)間變成在全部灰度范圍內(nèi)的均勻分布。利用圖像直方圖對對比度進(jìn)行調(diào)整,這種方法通常用來增加許多圖像的局部對比度,尤其是當(dāng)圖像的有用數(shù)據(jù)的對比度相當(dāng)接近的時(shí)候。通過這種方法,亮度可以更好地在直方圖上分布。這樣就可以用于增強(qiáng)局部的對比度而不影響整體的對比度,直方圖均衡化通過有效地?cái)U(kuò)展常用的亮度來實(shí)現(xiàn)這種功能。

Adaptive Histogram Equalization (Adapthisteq):AHE算法通過計(jì)算圖像的局部直方圖,然后重新分布亮度來來改變圖像對比度。該算法更適合于改進(jìn)圖像的局部對比度以及獲得更多的圖像細(xì)節(jié)。圖像分為8個6*6不重疊的區(qū)域,每一塊直方圖大致均衡統(tǒng)一來增強(qiáng)圖像對比度。

注意:HE是全局的,AHE是局部的。

Contrast Normalization (Conorm):通過高斯差分濾波增強(qiáng)圖像邊緣。本文中使用的濾波器的size為 5*5 pixels。

需要注意的是:除了Contrast Normalization (Conorm),其余的3種歸一化方法不是在RGB-color space中實(shí)現(xiàn)的,而是在一個圖像強(qiáng)度作為它的一個成分的彩色空間里。因此,先將圖像從 RGB space轉(zhuǎn)換到 Lab-space,進(jìn)行歸一化處理,然后再將歸一化后的圖像轉(zhuǎn)換到 RGB space。

四種不同的歸一化方法的效果如圖2所示,包括了原始圖像和歸一化圖像的像素密度直方圖。

圖2:Histogram of pixel intensities for image 11917 from the test set of the preliminaryphase of the competition, before and after normalization, as well as an additional selectionof 5 traffic signs before and after normalization

3.2實(shí)驗(yàn)結(jié)果

初始實(shí)驗(yàn)證明深度網(wǎng)絡(luò)要比淺層網(wǎng)絡(luò)的工作效果好。

本文中使用的單個DNN為9層,具體信息如 table1:

相同的結(jié)構(gòu)在figure 3也有所體現(xiàn),figure 3 表示的是所有層的 the activations 和 the filters (已經(jīng)訓(xùn)練的DNN)。

figure 3:DNN architecture from Table 1 together with all the activations and the learnedfi lters. Only a subset of all the maps and fi lters are shown, the output layer is not drawnto scale and weights of fully connected layers are not displayed. For better contrast, thefi lters are individually normalized.

第一層的濾波器用彩色表示,需注意的是,該彩色濾波器原則上包括三個獨(dú)立的濾波器,分別連接到輸入圖片的 red channel、green channel 和 blue channel。

The input layer has three maps of 48x48 pixels for each color channel ; the output layer consists of 43 neurons, one per class.

總體結(jié)構(gòu)共有1.5million個參數(shù),一半的參數(shù)來源于最后兩層的全連接層。

使用4個GPUs,訓(xùn)練25列的MCDNN,需要37hours。訓(xùn)練以后,單個的GPU每秒能夠處理87幅圖像。

文章中也使用了 15*15的濾波器代替7*7的濾波器,They are randomly initialized, and learn to respond to blobs(斑點(diǎn)), edges and other shapes in the input images。第一卷積層的濾波器如 figure4:

figure4:The learned filters of the first convolutional layer of a DNN. 

The layer has 100 maps each connected to the three color channels of the input image for a total of 3x100 filters of size 15x15. 

Every displayed filter is the superposition(疊加) of the 3 filters that are connected to the red, green and blue channel of the input image respectively.

 For better contrast, the filters are individually normalized.

總體:

訓(xùn)練了25個DNN,每5個DNN對應(yīng)一種 P(包括原始圖像和4種歸一化方法),即:每個P連接5列DNN。實(shí)驗(yàn)結(jié)果如表2所示:

table 2中,trial 橫向代表5種P,縱向的數(shù)字(1,2,3,4,5)代表DNN的‘序號’(每個P有5個DNNs)。

實(shí)驗(yàn)結(jié)果中,Average DNN recognition rate 為 98.52%,而MCDNNrecognition rate為99.46%,如果說MCDNN的最終輸出結(jié)果為所有DNN的average,為什么兩者不相等呢?為什么MCDNN的結(jié)果優(yōu)于Average DNN呢?

請教過別人后理解是,每個DNN都有自己的識別率即準(zhǔn)確率,該準(zhǔn)確率是通過訓(xùn)練多幅圖像所得。而MCDNN 只需要一幅圖像,average所有DNN的輸出結(jié)果即可。table顯示的是每個DNN的最優(yōu)識別率,而MCDNN得到的是 所有DNN平均值 的最優(yōu)識別率(可能某個DNN 沒有達(dá)到自己的最好狀態(tài),出現(xiàn)分類錯誤的情況),兩者沒有直接的關(guān)系。(感覺有些矛盾,對不對!)因?yàn)镸CDNN是多個DNN的結(jié)合,總體上還是會比單個DNN 的結(jié)果要好一些。

figure 5 顯示了所有錯誤,還有真實(shí)值、第一次預(yù)測、第二冊預(yù)測。68個錯誤中,超過80%的錯誤都在第二次預(yù)測中得到正確結(jié)果,Erroneously predicted class probabilities tend to be very low—here the MCDNN is quite unsure about its classifications。不過,一般來說,MCDNN的預(yù)測概率值要么接近于1,要么接近于0,這一點(diǎn)是毋庸置疑的。

figure 5:The 68 errors of the MCDNN, with correct label (left) and first(middle) andsecond best (right) predictions. Best seen in color.

Rejecting only 1% percent of all images (con dence below 0.51) results in an even lower error rate of 0.24%. To reach an error rate of 0.01% (a single misclassi cation), only 6.67% of the images have to be rejected (con fidence below 0.94).

 4.總結(jié):

MCDNN 要比人工識別率和單個DNN的結(jié)果好。

參考:http://tech.ddvip.com/2014-08/1408423169212655.html

         http://www.cnblogs.com/Imageshop/archive/2013/04/07/3006334.html

http://wenku.baidu.com/linkurl=P5Ah1iKgfTtmH9DDi83CkmQHWvDOdnP6dOQrSVlDrWT_HZ04Gd7wIAsF2lF_AXyJ59TBPUnkBtQsF1FAfZ4bAtZbz4AJc35eQ_nDprr5Cxy


上一篇:R 筆記

下一篇:快速排序詳解

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 济源市| 象州县| 额济纳旗| 湖南省| 河北区| 屏东县| 安吉县| 双鸭山市| 凤台县| 徐汇区| 大竹县| 建瓯市| 阿勒泰市| 来凤县| 玉门市| 海阳市| 望谟县| 玉田县| 始兴县| 开江县| 卢氏县| 蒙山县| 腾冲县| 黔西县| 犍为县| 蕉岭县| 隆回县| 德化县| 阜宁县| 昌平区| 南江县| 手机| 岳池县| 察雅县| 东乌珠穆沁旗| 龙口市| 萝北县| 微山县| 高碑店市| 遵义市| 宝丰县|