卷積神經(jīng)網(wǎng)絡(luò)的方法范文
時間:2024-03-28 11:15:16
導(dǎo)語:如何才能寫好一篇卷積神經(jīng)網(wǎng)絡(luò)的方法,這就需要搜集整理更多的資料和文獻,歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。
篇1
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò) 人體行為識別 Dropout
中圖分類號:TP391.41 文獻標識碼:A 文章編號:1672-3791(2017)04(c)-0028-02
該文采用隨機Dropout卷積神經(jīng)網(wǎng)絡(luò),筆者將此法的優(yōu)點大致概況為將繁瑣雜亂的前期圖像處理簡易化,原來的圖像不可以直接輸入,現(xiàn)在的原始圖像即可實現(xiàn)直輸功能,因其特性得到廣泛研究與應(yīng)用。另外,卷積神經(jīng)網(wǎng)絡(luò)在圖像的處理中能夠?qū)⒅付ǖ淖藙?、陽光的照射反?yīng)、遮避、平面移動、縮小與放大等其他形式的扭曲達到魯棒性,從而達到良好的容錯能力,進而可以發(fā)現(xiàn)其在自適應(yīng)能力方面也非常強大。因為卷積神經(jīng)網(wǎng)絡(luò)在之前建立網(wǎng)絡(luò)模型時,樣本庫為訓練階段提供的樣本,數(shù)量有限,品質(zhì)上也很難滿足要求,致使網(wǎng)絡(luò)權(quán)值參數(shù)不能夠完成實時有效的調(diào)度與整理。
1 卷積神經(jīng)網(wǎng)絡(luò)
據(jù)調(diào)查卷積神經(jīng)網(wǎng)絡(luò)由K.Fukushima在80年代提出,那時候它被稱為神經(jīng)認知機,這一認知成為當時的第一個網(wǎng)絡(luò),后來網(wǎng)絡(luò)算法發(fā)生了規(guī)模性變革,由LeCun為代表提出了第一個手寫數(shù)字識別模型,并成功投入到商業(yè)用途中。LeNet被業(yè)界冠以卷積神經(jīng)網(wǎng)絡(luò)的代表模型,這類系統(tǒng)在很多方面都起到了不容小趨的作用,它多數(shù)應(yīng)用于各類不同的識別圖像及處理中,在這些層面上取得了重要成果。
筆者經(jīng)查閱資料發(fā)現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)其實是由兩個種類組合而來,它們分別是特征提取、分類器,這種組成我們可以看到特征提取類可由一定數(shù)量的卷積層以及子采樣層相互重疊組合而成,全部都連接起來的1層或者2層神經(jīng)網(wǎng)絡(luò),就是由分類器來進行安排的。卷積神經(jīng)網(wǎng)絡(luò)中的局部區(qū)域得到的感覺、權(quán)值的參數(shù)及子采樣等可以說是重要網(wǎng)絡(luò)結(jié)構(gòu)特征。
1.1 基本CNN網(wǎng)絡(luò)結(jié)構(gòu)
圖1中就是最為經(jīng)典的LeNet-5網(wǎng)絡(luò)模型結(jié)構(gòu)圖。通過圖1中我們可以獲悉,該模型有輸入輸出層,除這兩層外還有6層,其征提取可在前4層中體現(xiàn),后兩層體現(xiàn)的是分類器。
在特征提取部分,6個卷積核通過卷積,是圖像經(jīng)尺寸為32×32的輸入而得見表1,運算過程如式(1):
(1)
式中:卷積后的圖像與一個偏置組合起來,使函數(shù)得到激活,因此特征圖變誕生了,通過輸出得到了6個尺寸的特征圖,這6個尺寸均為28×28,近而得到了第一層的卷積,以下筆者把它簡要稱為c1;那么c1層中的6個同尺寸圖再經(jīng)由下面的子采樣2×2尺寸,再演變成特征圖,數(shù)量還是6個,尺寸卻變成了14×14,具體運算如公式(2):
通過表2我們可以使xi生成的和與采樣系數(shù)0.25相乘,那么采樣層的生成也就是由加上了一個偏置,從而使函數(shù)被激活形成了采樣層的第1個層次,以下我們簡要稱為s1;這種過程我們可反復(fù)運用,從而呈現(xiàn)出卷積層中的第2層,可以簡要稱之為c2,第2層簡稱s2;到目前為止,我們對特征的提取告一段落。
神經(jīng)網(wǎng)絡(luò)的識別,我們可以看到它是由激活函數(shù)而形成的一個狀態(tài),這一狀態(tài)是由每個單元的輸出而得;那么分類器在這里起到的作用是將卷積層全部連接起來,這種通過連接而使1層與上面1層所有特征圖進行了串連,簡要稱之為c5;因而2層得到了退變與簡化效應(yīng),從而使該神經(jīng)網(wǎng)絡(luò)成為經(jīng)典,簡要稱之為F6,向量及權(quán)值是由F6 輸送,然后由點積加上偏置得到結(jié)果的有效判定。
1.2 改進的隨機DropoutCNN網(wǎng)絡(luò)
1.2.1 基本Dropout方法
神經(jīng)網(wǎng)絡(luò)泛化能力能夠得到提升,是基于Dropout方法的深入學習。固定關(guān)系中存在著節(jié)點的隱含,為使權(quán)值不再依附于這種關(guān)系,上述方法可隨機提取部分神經(jīng)元,這一特性是通過利用Dropout在網(wǎng)絡(luò)訓練階段中隨機性而得,對于取值能夠有效的存儲及保護存留,這一特性在輸出設(shè)定方面一定要注重為0,這些被選擇的神經(jīng)元隨然這次被抽中應(yīng)用,但并不影響下次訓練的過程,并具還可以恢復(fù)之前保留的取值,那么每兩個神經(jīng)元同時產(chǎn)生作用的規(guī)避,可以通過重復(fù)下次隨機選擇部分神經(jīng)元的過程來解決;我們通過這種方法,使網(wǎng)絡(luò)結(jié)構(gòu)在每次訓練階段中都能呈現(xiàn)不同變化,使一些受限制的特征,不再受到干擾,使其真正能展現(xiàn)自身的優(yōu)點,在基于Dropout方法中,我們可以將一些神經(jīng)元的一半設(shè)為0來進行輸出,隨機神經(jīng)元的百分比可控制在50%,有效的避免了特征的過度相似與穩(wěn)合。
1.2.2 隨機Dropout方法
Dropout方法就是隨機輸出為0的設(shè)定,它將一定比例神經(jīng)元作為決定的因素,其定義網(wǎng)絡(luò)在構(gòu)建模型時得到廣泛采用。神經(jīng)元基于隨機Dropout的方法是該文的重要網(wǎng)絡(luò)輸出途徑,通過設(shè)定輸出為0,使其在網(wǎng)絡(luò)中得到變。圖2是隨機Dropout的加入神經(jīng)元連接示意圖,其在圖中可知兩類神經(jīng)元:一類是分類器的神經(jīng)元,這一階段的神經(jīng)元可分榱講悖渙硪煥嗌窬元是由輸出而形成的層次。模型在首次訓練的階段會使神經(jīng)元隨機形成凍結(jié)狀態(tài),這一狀態(tài)所占的百分比為40%、60%,我們還可以看到30%及50%的神經(jīng)元可能在網(wǎng)絡(luò)隨機被凍結(jié),那么這次凍結(jié)可以發(fā)生在模型第二次訓練,那么第三次神經(jīng)元的凍結(jié)可從圖示中得出70%及40%,還可以通過變化用人工設(shè)置,其范圍值宜為35%~65%,那么網(wǎng)絡(luò)神經(jīng)元連接次序的多樣化,也因此更為突出與精進,網(wǎng)絡(luò)模型的泛化能力也得到了跨越勢的提高。
2 實驗及結(jié)果分析
2.1 實驗方法
卷積神經(jīng)網(wǎng)絡(luò)通過實驗,通過輸入層呈現(xiàn)一灰色圖像,該圖像尺寸被設(shè)定成28×28的PNG格式,這里我們以圖像框架圖得到雙線性差值,用來處理圖像及原視頻中的影像,將框架圖的卷積核設(shè)定為5×5的尺寸,子采樣系數(shù)控制值為0.25,采用SGD迭代200次,樣本數(shù)量50個進行設(shè)定,一次誤差反向傳播實現(xiàn)批量處理,進行權(quán)值調(diào)整。實驗采用交叉驗證留一法,前四層為特征提取層,C1-S1-C2-S2按順序排列,6-6-12-12個數(shù)是相應(yīng)特征,通過下階段加入隨機Dropout,這階段為雙層也就是兩層,進行連接,連接層為全體,從而可知結(jié)果由分類得出,又從輸出層輸出。
2.2 實驗結(jié)果分析
識別錯誤率可通過卷積神經(jīng)網(wǎng)絡(luò)模型,及訓練過程與檢測過程中可查看到的。在訓練階段中,我們可以將Dropout的網(wǎng)絡(luò)中融入200次訓練,在將沒有使用該方法的網(wǎng)絡(luò)進行相互比較分析,我可以得知,后者訓練時的識別錯誤率稍高于前者,前者與后的相比較所得的差異不是很大,進而我們可知使用Dropout方法,對卷積神經(jīng)網(wǎng)絡(luò)在泛化能力上得到有效的提升,從而有效的防止擬合。
3 結(jié)語
筆者基于Dropout卷積神經(jīng)網(wǎng)絡(luò),人體行為識別在視頻中進行, 通過Weizmann數(shù)據(jù)集檢測實驗結(jié)果,隨機Dropout在分類器中加入。通過實驗可以得知:隨機Dropout的加入,使卷積神經(jīng)構(gòu)建了完美網(wǎng)絡(luò)模型,并且使其在人體行為識別中的效率贏得了大幅度的提升,近而使泛化能力可以通過此類方法得到提高,可以防止擬合。
參考文獻
[1] 其它計算機理論與技術(shù)[J].電子科技文摘,2002(6).
篇2
關(guān)鍵詞關(guān)鍵詞:人臉識別;卷積神經(jīng)網(wǎng)絡(luò);圖像識別;深度學習;模式識別
DOIDOI:10.11907/rjdk.171043
中圖分類號:TP317.4
文獻標識碼:A文章編號文章編號:16727800(2017)005018603
0引言
人臉識別是近年來模式識別、圖像處理、機器視覺、神經(jīng)網(wǎng)絡(luò)及認知科學領(lǐng)域的研究熱點[12]。所謂人臉識別,是指給定一個靜態(tài)人臉圖像或動態(tài)視頻,利用存儲有若干已知身份的人臉數(shù)據(jù)庫驗證單個或多個人的身份[1]。作為生物特征識別的一個重要方面,人臉識別有著廣泛的應(yīng)用場景,如:檔案管理系統(tǒng)、公安系統(tǒng)的犯罪身份識別、銀行和海關(guān)的監(jiān)控、安全驗證系統(tǒng)、信用卡驗證等領(lǐng)域。在人臉識別巨大魅力的影響下,國內(nèi)互聯(lián)網(wǎng)公司也開始了人臉識別應(yīng)用的探索,如百度推出的人臉考勤系統(tǒng)、阿里支付寶的刷臉登錄等功能都是人臉識別的具體應(yīng)用。目前,人臉識別的代表性方法主要有以下幾種:Turk和Pentland[3]提出的特征臉(Eigenface)方法;基于線性區(qū)別分析,Belhumeur 等[4]提出了Fisherface方法;基于統(tǒng)計理論,劍橋大學的 Samaria和Fallside[5]提出了隱馬爾科夫模型[5](HMM),Lawrence 等[6]提出的通過多級自組織映射神經(jīng)網(wǎng)絡(luò)(SOM)[6]與卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合進行人臉識別。上述方法雖然獲得了良好的識別正確率,但需要人工參與特征提取,然后將提取的特征送入分類器進行識別,過程較為復(fù)雜。
卷積神經(jīng)網(wǎng)絡(luò)[79]是近年發(fā)展起來,并引起廣泛重視的一種高效深度學習識別算法,其已成為當前語音分析和圖像處理領(lǐng)域的研究熱點。相比傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)而言,卷積神經(jīng)網(wǎng)絡(luò)具有權(quán)值共享、局部感知的優(yōu)點。局部感知的網(wǎng)絡(luò)結(jié)構(gòu)使其更接近于生物神經(jīng)網(wǎng)絡(luò),權(quán)值共享大大減少了模型學習參數(shù)的個數(shù),同時降低了神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜性。在圖像處理領(lǐng)域,卷積神經(jīng)網(wǎng)絡(luò)的優(yōu)點體現(xiàn)得更為突出,多維的圖像數(shù)據(jù)可以直接作為網(wǎng)絡(luò)的輸入,特征提取和分類均集成在網(wǎng)絡(luò)中,避免了傳統(tǒng)識別算法中復(fù)雜的特征提取和訓練分類器過程。除此之外,卷積神經(jīng)網(wǎng)絡(luò)對圖像中的位移、比例縮放、旋轉(zhuǎn)、傾斜或其它形式的變形具有很好的魯棒性。為了解決傳統(tǒng)人臉識別算法特征提取和訓練分類器困難的問題,本文借鑒Lenet-5[10]的結(jié)構(gòu),設(shè)計一個適合ORL數(shù)據(jù)集人臉識別任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。
1卷積神經(jīng)網(wǎng)絡(luò)
1.1用于ORL人臉識別的CNN
本文提出的7層卷積神經(jīng)網(wǎng)絡(luò)模型由輸入層、2個卷積層、2個降采樣層、一個全連接層和一個Sigmoid輸出層組成。卷積核的大小均為5×5,降采樣層Pooling區(qū)域的大小為2×2,采用Average Pooling(相鄰小區(qū)域之間無重疊),激活函數(shù)均采用Sigmoid函數(shù)。每一個卷積層或降采樣層由多個特征圖組成,每個特征圖有多個神經(jīng)元,上層的輸出作為下一層的輸入。此外,本文實驗學習率的取值為常數(shù)1.5,該卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
1.2卷積層
卷積神經(jīng)網(wǎng)絡(luò)中的卷積層一般稱C層[11](特征提取層)。卷積層的輸入來源于輸入層或者采樣層。卷積層中的每一個特征圖都對應(yīng)一個大小相同的卷積核,卷積層的每一個特征圖是不同的卷積核在前一層輸入的特征圖上作卷積,然后將對應(yīng)元素累加后加一個偏置,最后通過激活函數(shù)得到。假設(shè)第l層榫砘層,則該層中第j個特征圖的計算表達式如式(1)。
xlj=f(∑i∈Mjxl-1iklij+blj)(1)
這里的Mj表示選擇的上一層輸出特征圖的集合。
1.3降采樣層
降采樣層是對上一層的特征圖進行下采樣處理,處理方式是在每一個特征圖內(nèi)部的相鄰小區(qū)域進行聚合統(tǒng)計。常見的下采樣方式有兩種:Average Pooling和Max Pooling。其中,Average Pooling是取小區(qū)域內(nèi)像素的平均值,而Max Pooling是取小區(qū)域內(nèi)像素的最大值。降采樣層只是對輸入的特征圖進行降維處理,不改變特征圖的個數(shù)。假設(shè)down表示下采樣操作,βlj表示乘性偏置,blj表示加性偏置,則降采樣層中某個特征圖的計算表達式如下:
xlj=f(βljdown(xl-1j)+blj)(2)
1.4輸出層
卷積神經(jīng)網(wǎng)絡(luò)的輸出層一般為分類器層,常用的有徑向基(RBF)函數(shù)輸出單元、Sigmoid輸出單元和Softmax回歸分類器。在ORL人臉識別任務(wù)中,采用Sigmoid函數(shù)輸出單元,輸出層的編碼采用非分布編碼“one-of-c”的方式。由于采用Sigmoid函數(shù),每一個單元輸出值是0-1范圍內(nèi)的一個正數(shù),代表該樣本屬于該單元對應(yīng)類別的概率。數(shù)值最大的那個單元即為樣本的預(yù)測類別。假設(shè)x為全連接層的輸出,則輸出層輸出結(jié)果的計算表達式如下:
y=f(wTx+b)(3)
其中,f表示激活函數(shù),這里采用Sigmoid函數(shù),Sigmoid函數(shù)表達式如下:
f(x)=11+e-x(4)
2實驗結(jié)果與分析
實驗在Windows7 64位下的Matlab 2014a中進行,采用Matlab深度學習工具箱DeepLearnToolbox。PC的內(nèi)存8G,CPU主頻為3.2GHZ。
ORL人臉數(shù)據(jù)集是在1992年至1994年之間由AT &T Cambridge實驗室拍攝的人臉圖像所構(gòu)成。數(shù)據(jù)集中包含40個不同人物的臉部圖像,每個人物包含10張圖像,總共400張。每個類別中的臉部圖像在不同的時間拍攝得到,存在如下差異:①光線;②面部表情,如眼睛的閉合和睜開狀態(tài),面部是否帶有微笑的表情等;③一些面部細節(jié)上的差異,如是否佩戴眼鏡等。該數(shù)據(jù)集中所有人臉圖像均為灰度圖像,且圖像中人物面部朝向基本一致,都朝向正前方。
圖2為ORL數(shù)據(jù)集中部分人臉圖像。數(shù)據(jù)集中每個原始圖像大小為92*112像素,本文實驗中對這些圖像進行預(yù)處理,使每一幅圖像的尺寸調(diào)整為28*28,并對每一副圖像進行歸一化處理,這里采用簡單的除255的方式。隨機選取每一個類別的8張圖像作為訓練樣本,剩下的2張作為測試樣本。因此,訓練集有320個樣本,測試集有80個樣本。
2.1改變C3層卷積核個數(shù)對網(wǎng)絡(luò)的影響
卷積神經(jīng)網(wǎng)絡(luò)性能的好壞與卷積層卷積核的個數(shù)密切相關(guān),但每一個卷積層應(yīng)該設(shè)置多少個卷積濾波器,目前并沒有數(shù)學理論指導(dǎo)。為了研究卷積核個數(shù)對網(wǎng)絡(luò)最終識別準確率的影響,本文保持C1層卷積核個數(shù)不變,通過改變C3層卷積核的個數(shù),形成新的網(wǎng)絡(luò)結(jié)構(gòu),用訓練集訓練網(wǎng)絡(luò),訓練迭代次數(shù)均為60次,然后用測試集對每一種網(wǎng)絡(luò)結(jié)構(gòu)的性能進行測試。實驗結(jié)果如表1所示。
從表1可以看出,當C3層有10個卷積核時,網(wǎng)絡(luò)模型對測試集的識別正確率最高。卷積核的個數(shù)與識別準確率并不成正比關(guān)系,當卷積核個數(shù)過多時,網(wǎng)絡(luò)的識別準確率會下降,這是因為在卷積核個數(shù)增加的同時,需要學習的參數(shù)也隨之增加,而數(shù)據(jù)集中訓練樣本的規(guī)模較小,已不能滿足學習的要求。
2.2改變C1層卷積核個數(shù)對網(wǎng)絡(luò)的影響
由上述實驗結(jié)果可知,C3層卷積核個數(shù)為10時,網(wǎng)絡(luò)識別效果最好。因此,為了研究卷積層C1層卷積核個數(shù)對識別準確率的影響, C3層保留10個卷積核,改變C1層卷積核的個數(shù)構(gòu)造新的網(wǎng)絡(luò)結(jié)構(gòu),用測試集針對不同網(wǎng)絡(luò)結(jié)構(gòu)就測試集和訓練集的識別準確率進行測試。實驗結(jié)果如表2所示。
從表2的實驗結(jié)果可以得到相同結(jié)論:卷積層卷積核的個數(shù)并非越多越好,卷積核個數(shù)過多,網(wǎng)絡(luò)需要學習的參數(shù)也隨之增加,當訓練集中樣本個數(shù)無法滿足學習需要時,網(wǎng)絡(luò)識別準確率就會下降。
2.3與其它算法比較
為進一步說明本文所提卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的有效性和優(yōu)越性,將該結(jié)構(gòu)(C1層6個卷積核,C3層10個卷積核,學習率1.5)的實驗結(jié)果與其它識別方法在ORL數(shù)據(jù)集上的實驗結(jié)果進行對比,結(jié)果如表3所示??梢钥闯?,本文所提方法比Eigface、ICA的識別效果好,與2DPCA方法的識別準確率一樣,比FisherFace方法的識別準確率只低了0.20%,這進一步證實了本文所提網(wǎng)絡(luò)結(jié)構(gòu)的有效性。
3結(jié)語
本文在理解Lenet-5結(jié)構(gòu)的基礎(chǔ)上,提出一種適用于ORL人臉數(shù)據(jù)集的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。實驗結(jié)果表明,本文提出的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),不僅避免了復(fù)雜的顯式特征提取過程,在ORL數(shù)據(jù)集上獲得98.30%的識別正確率,而且比大多數(shù)傳統(tǒng)人臉識別算法的效果都好。此外,本文還通過大量驗就每個卷積層卷積核個數(shù)對網(wǎng)絡(luò)識別準確率的影響進行了詳細研究與分析,這對設(shè)計CNN網(wǎng)絡(luò)結(jié)構(gòu)具有一定的參考意義。
參考文獻參考文獻:
[1]李武軍,王崇駿,張煒,等.人臉識別研究綜述[J].模式識別與人工智能,2006,19(1):5866.
[2]張翠平,蘇光大.人臉識別技術(shù)綜述[J].中國圖象圖形學報,2000,5(11):885894.
[3]YANG M H.Face recognition using kernel methods[J].Nips,2002(2):14571464.
[4]祝秀萍,吳學毅,劉文峰.人臉識別綜述與展望[J].計算機與信息技術(shù),2008(4):5356.
[5]SAMARIA F,YOUNG S.HMMbased architecture for face identification[J].Image and Vision Computing,1994,12(8):537543.
[6]LAWRENCE S,GILES C L,TSOI A C.Convolutional neural networks for face recognition[C].Proceedings CVPR'96,1996 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,1996:217222.
[7]陳耀丹,王連明.基于卷積神經(jīng)網(wǎng)絡(luò)的人臉識別方法[J].東北師范大學學報:自然科學版,2016,48(2):7076.
[8]盧官明,何嘉利,閆靜杰,等.一種用于人臉表情識別的卷積神經(jīng)網(wǎng)絡(luò)[J].南京郵電大學學報:自然科學版,2016,36(1):1622.
[9]李彥冬,郝宗波,雷航.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計算機應(yīng)用,2016,36(9):25082515.
[10]LCUN Y,BOTTOU L,BENGIO Y,et al.Gradientbased learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):22782324.
篇3
>> 基于PCA—LDA與蟻群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的人臉識別算法 基于粒子群算法和神經(jīng)網(wǎng)絡(luò)的人臉識別分類器研究 基于卷積神經(jīng)網(wǎng)絡(luò)的人臉識別研究 基于BP神經(jīng)網(wǎng)絡(luò)的人臉識別研究 基于PCA算法的人臉識別技術(shù)研究 基于改進PCA算法的人臉識別研究 基于MB_LBP和PCA算法的人臉識別研究 基于BP神經(jīng)網(wǎng)絡(luò)的人臉識別算法的實現(xiàn) 基于模糊混沌神經(jīng)網(wǎng)絡(luò)的人臉識別算法 基于卷積神經(jīng)網(wǎng)絡(luò)的人臉識別 基于子圖分割和BP神經(jīng)網(wǎng)絡(luò)的人臉識別方法 基于EMPCA和RBF神經(jīng)網(wǎng)絡(luò)的人臉識別 基于改進PCA與FLD算法的人臉識別 基于模糊人工神經(jīng)網(wǎng)絡(luò)的人臉識別研究 基于改進的LBP和PCA算法的人臉識別 基于并行PCA算法的人臉識別系統(tǒng)的研究 基于PCA和SVM的人臉識別 基于PCA和FLD的人臉識別方法 基于快速PCA―SVM的人臉識別研究 基于主分量分析的BP神經(jīng)網(wǎng)絡(luò)人臉圖像識別算法 常見問題解答 當前所在位置:l.
[6]劉學勝.基于PCA和SVM算法的人臉識別[J].計算機與數(shù)字工程,2011(7).
[7]廖海濱,陳慶虎. 基于因子分析的實用人臉識別研究[J].電子與信息學報,2011(7).
[8]蔡曉曦,陳定方.特征臉及其改進方法在人臉識別中的比較研究[J].計算機與數(shù)字工程,2007(4).
篇4
關(guān)鍵詞 深度神經(jīng)網(wǎng)絡(luò) 圖像分類 車型識別 預(yù)測
中圖分類號:TP317.4 文獻標識碼:A
0 引言
所謂的深度學習是根據(jù)具有多層結(jié)構(gòu)的人工神經(jīng)網(wǎng)絡(luò)所提出。在具體的深度學習中,主要借助模擬神經(jīng)系統(tǒng)中的層次結(jié)構(gòu),來進行數(shù)據(jù)結(jié)構(gòu)特征的反映,一般來說,細節(jié)用低層次進行表示,抽象數(shù)據(jù)結(jié)構(gòu)則用高層次來表示,利用這種方式,能夠進行數(shù)據(jù)挖掘?qū)W習,滿足學習要求。在傳統(tǒng)的車型識別發(fā)展中,主要涉及到的技術(shù)包括模式識別、特征選擇和提取以及檢測分割等方面內(nèi)容,在技術(shù)發(fā)展中,存在的難點主要涉及到如何將完整的目標車輛區(qū)域進行分割,這是項基礎(chǔ)工作,也是難點所在。這結(jié)合實際需求,對于不同拍攝角度下的汽車圖片,包括皮卡車、SUV、面包車以及小轎車進行車型識別,其目標質(zhì)量分割質(zhì)量則是最為關(guān)鍵的技術(shù),直接影響到最后的判斷效果。所以,應(yīng)該重視進行具有代表性特征的選擇處理,并相應(yīng)轉(zhuǎn)化成有效的參數(shù)過程。在獲取特征參數(shù)后,則應(yīng)該結(jié)合項目要求來選擇合理的分類器,這樣才能保障識別的準確率。結(jié)合汽車車型識別問題的要求,這里網(wǎng)絡(luò)輸入則是原始圖像,利用神經(jīng)網(wǎng)絡(luò)優(yōu)勢,原始數(shù)據(jù)經(jīng)過卷積層、完全連接層以及Softmax 層的培訓學習,通過這種深度神經(jīng)網(wǎng)絡(luò)來進行分析處理,免于上述存在難度的圖像分割、手工提取等過程。
1數(shù)據(jù)集
這里的車型識別目標的數(shù)據(jù)集主要包括皮卡車、SUV、面包車以及小轎車等四種類型。其中,訓練集和測試集分別包括1025張和368張原始圖片。此數(shù)據(jù)集中,包括不同攝像角度中的汽車圖像照片,具有背景復(fù)雜、圖像大小不統(tǒng)一,車輛在圖片中所占比例具有較大差異性等方面問題,這些都在一定程度上造成車型識別的難度上升。
在預(yù)處理中,為了保證網(wǎng)絡(luò)輸入的一致性,對于原始圖像進行調(diào)整處理為256?56?尺寸。在此基礎(chǔ)上,對于圖像RGB三個通道的均值進行計算,并進行均值標準化的處理。在具體的網(wǎng)絡(luò)訓練測試的過程中,主要則是選取224?24? 的樣本作為輸入。
2網(wǎng)絡(luò)結(jié)構(gòu)探討
結(jié)合文獻所提出的深度神經(jīng)網(wǎng)絡(luò)VGG16的優(yōu)勢,我們將其應(yīng)用在汽車車型識別問題中。VGG16網(wǎng)絡(luò)具有較強的優(yōu)勢,主要包括5個堆棧式的卷積神經(jīng)網(wǎng)絡(luò)ConvNet,以及3個完全連接層以及1個Softmax層,由此可見,其屬于“網(wǎng)絡(luò)中的網(wǎng)絡(luò)”架構(gòu)。在每個每個ConvNet中,還有多個卷積層所構(gòu)成,然后緊跟隨著Max-Pooling層。在進行卷積以及池化處理的基礎(chǔ)上,進行三層完全連接處理,同時,Softmax層的輸入則是最后一個完全連接曾的輸出,在這基礎(chǔ)上,實現(xiàn)車型分類的要求。結(jié)合實際需求,將非線性的ReLU層加入該網(wǎng)絡(luò)中,這樣就會讓ReLU來處理卷積層和完全連接層的輸出,保證訓練時間有效降低。另外,還將一種正則化Dropout方式應(yīng)用在網(wǎng)絡(luò)中,避免出現(xiàn)完全連接層中的過擬合問題。
另一個神經(jīng)網(wǎng)絡(luò)Alexnet,結(jié)構(gòu)稍微簡單一些,主要包括5卷積層、3個完全連接層、Softmax層等幾部分,在進行部分卷積層處理后,在進行Max- Pooling層處理。在此網(wǎng)絡(luò)中,同樣采用非線性的ReLU層,所采用難度重疊池化方式,也能有效保證盡量降低過擬合的問題。
3實驗結(jié)果分析
結(jié)合上述分析的深度神經(jīng)網(wǎng)絡(luò)VGG16和AlexNet的基礎(chǔ)上,進行Gaffe框架的搭設(shè),為了保證運算效率,建立在GeForce GTX TITAN X CPU的工作站中。經(jīng)過統(tǒng)計,單一網(wǎng)路訓練大約為2小時,一張圖片測試大約為0.2秒。在應(yīng)用上述網(wǎng)絡(luò)測試、訓練之外,在分類過程中,還應(yīng)用了經(jīng)典的分類算法KNN。經(jīng)過實驗分析,可以看出,VGG16網(wǎng)絡(luò)能夠具有比較好的分類結(jié)果,能夠?qū)崿F(xiàn)準確率為97.3%,而AlexNet網(wǎng)絡(luò)準確率達到為93.0%,KNN算法不能有效處理較為復(fù)雜背景的圖片,分類準確率僅為52.3%。在具體的案例中,分析VGG16網(wǎng)絡(luò)錯誤分類的情況,面包車具有完全正確的分類效果。在錯誤分類的SUV車型中,究其原因,主要包括:車顏色有兩部分組成,紅色部分則和皮卡車車型相同;車型結(jié)構(gòu)太類似于皮卡車;背景中加入其他車型,這樣會造成分類結(jié)果不準確。如果圖片中僅僅包括車頭的情況,在進行車型識別中也存在較大的難度,不同車型從前面角度進行觀察,并沒有太大的差異化,這點應(yīng)該明確指出。
4結(jié)語
這里采用深度學習方法,結(jié)合先進的深度神經(jīng)網(wǎng)絡(luò),以及功能強大的計算機工作站,對于四類汽車進行識別實驗研究。經(jīng)過試驗表明,VGG16網(wǎng)絡(luò)具有最好的分類效果,傳統(tǒng)的經(jīng)典分類算法往往僅為其準確率的一半左右。所以,可以看出深度神經(jīng)網(wǎng)絡(luò)具有強大的學習能力,能夠在圖像分類問題中表現(xiàn)出很大優(yōu)勢,應(yīng)該不斷優(yōu)化深度神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),以便其適用于更多的圖像分類要求。
參考文獻
[1] Hinton G E, Osindero S, Teh Y W.A Fast Learning Algorithm For Deep Belief Nets[J]. Neural Computation, 2006, 18(7):1527-1554.
篇5
內(nèi)容簡介:騰訊的月活躍用戶8.3億
微信月活躍用戶4.4億
QQ空間月活躍用戶6.5億
游戲月活躍用戶過億
如今騰訊的數(shù)據(jù)分析已經(jīng)能做到始終“不落地”,即全部的實時處理。騰訊大數(shù)據(jù)平臺有如下核心模塊:TDW、TRC、TDBank、TPR和Gaia。簡單來說,TDW用來做批量的離線計算,TRC負責做流式的實時計算,TPR負責精準推薦,TDBank則作為統(tǒng)一的數(shù)據(jù)采集入口,而底層的Gaia則負責整個集群的資源調(diào)度和管理。李勇還特別強調(diào)了數(shù)據(jù)平臺體系化是應(yīng)用基礎(chǔ),數(shù)據(jù)應(yīng)用商業(yè)化是價值導(dǎo)向。
數(shù)據(jù)平臺體系化是應(yīng)用基礎(chǔ),數(shù)據(jù)應(yīng)用商業(yè)化是價值導(dǎo)向。
騰訊深度學習平臺的挑戰(zhàn)深度神經(jīng)網(wǎng)絡(luò)模型復(fù)雜,訓練數(shù)據(jù)多,計算量大
模型復(fù)雜:人腦有100多億個神經(jīng)細胞,因此DNN的神經(jīng)元和權(quán)重多
訓練數(shù)據(jù)多:大量訓練數(shù)據(jù)才能訓練出復(fù)雜模型
微信語音識別:數(shù)萬個神經(jīng)元,超過50,000,000參數(shù),超過4,000,000,000樣本,單機訓練耗時以年計,流行的GPU卡需數(shù)周
深度神經(jīng)網(wǎng)絡(luò)需要支持大模型
更深更寬的網(wǎng)絡(luò)能獲得更好的結(jié)果
以圖像識別為例,增加卷積層的filter數(shù)量,加大模型深度等,可獲得更好的模型質(zhì)量
深度神經(jīng)網(wǎng)絡(luò)訓練中超參數(shù)多,需要反復(fù)多次實驗
非線性模型:代價函數(shù)非凸,容易收斂到局部最優(yōu)解
敏感的超參數(shù):模型結(jié)構(gòu)、輸入數(shù)據(jù)處理方式、權(quán)重初始化方案、參數(shù)配置、激活函數(shù)選擇、權(quán)重優(yōu)化方法等
數(shù)學基礎(chǔ)研究稍顯不足,倚重技巧和經(jīng)驗
騰訊深度學習平臺Mariana
騰訊有廣泛的深度學習應(yīng)用需求,其挑戰(zhàn)如下模型復(fù)雜,訓練數(shù)據(jù)多,計算量大
需要支持大模型
訓練中超參數(shù)多,需要反復(fù)多次實驗
Mariana騰訊深度學習平臺提供三個框架解決上述問題
Mariana DNN: 深度神經(jīng)網(wǎng)絡(luò)的GPU數(shù)據(jù)并行框架
Mariana CNN: 深度卷積神經(jīng)網(wǎng)絡(luò)的GPU數(shù)據(jù)并行和模型并行框架
Mariana Cluster: 深度神經(jīng)網(wǎng)絡(luò)的CPU集群框架
Mariana已支持了訓練加速、大模型和方便的訓練作業(yè)
微信語音識別6 GPU做到4.6倍加速比
微信圖像識別4 GPU做到2.5倍加速比,并支持大模型
篇6
【關(guān)鍵詞】人工智能 圖像識別 深度學習
1 概述
圖像識別技術(shù)是人工智能研究的一個重要分支,其是以圖像為基礎(chǔ),利用計算機對圖像進行處理、分析和理解,以識別不同模式的對象的技術(shù)。目前圖像識別技術(shù)的應(yīng)用十分廣泛,在安全領(lǐng)域,有人臉識別,指紋識別等;在軍事領(lǐng)域,有地形勘察,飛行物識別等;在交通領(lǐng)域,有交通標志識別、車牌號識別等。圖像識別技術(shù)的研究是更高級的圖像理解、機器人、無人駕駛等技術(shù)的重要基礎(chǔ)。
傳統(tǒng)圖像識別技術(shù)主要由圖像處理、特征提取、分類器設(shè)計等步驟構(gòu)成。通過專家設(shè)計、提取出圖像特征,對圖像M行識別、分類。近年來深度學習的發(fā)展,大大提高了圖像識別的準確率。深度學習從大量數(shù)據(jù)中學習知識(特征),自動完成特征提取與分類任務(wù)。但是目前的深度學習技術(shù)過于依賴大數(shù)據(jù),只有在擁有大量標記訓練樣本的情況下才能夠取得較好的識別效果。本文認為研究如何在標記數(shù)據(jù)有限的情況下繼續(xù)利用深度學習完成物體識別任務(wù)具有重要意義。這也是未來人工智能研究的重要方向之一。
2 傳統(tǒng)圖像識別技術(shù)
傳統(tǒng)的圖像識別技術(shù)包括:圖像獲取、預(yù)處理、特征提取、分類。在圖像輸入后,需要先對圖像進行預(yù)處理。一幅標準灰度圖像,如果每個像素的像素值用一個字節(jié)表示,灰度值級數(shù)就等于256級,每個像素可以是0~255之間的任何一個整數(shù)值。一幅沒有經(jīng)過壓縮處理的640×480分辨率的灰度圖像就需要占據(jù)300KB的存儲空間。通常我們需要將圖片的亮度及對比度調(diào)整合適,才能使圖片更加清晰、便于觀察。
許多采集到的圖片帶有或多或少的噪聲,需要對圖片的噪聲進行消除。對圖片噪聲的消除可以使用不同的去噪方法,如中值濾波、算數(shù)平均濾波、平滑線性濾波和高斯濾波等。不同濾波器分別適用于不同情況的噪聲。如椒鹽噪聲便適合使用中值濾波器,高斯噪聲便適合使用平滑線性濾波和高斯濾波。有時候,我們需要對圖像細化處理(如指紋細化,字符細化等),以便獲取主要信息,減少無關(guān)信息。細化操作,可以得到由單像素點組成的圖像輪廓,便于后續(xù)特征提取操作。
基本的圖像特征提取包括邊緣、角點等提取。一般使用不同的特征提取算子結(jié)合相應(yīng)的閾值得到這些關(guān)鍵點。另一類在頻域中進行特征提取的方法主要是通過傅里葉變換,將圖像基于頻率分為不同的部分,從而可以在頻譜中反映出原始圖像的灰度級變化,便可得到圖像的輪廓、邊緣。
在完成圖像的預(yù)處理和特征提取之后,我們便能夠?qū)D像進行識別、分類。常用的分類器有K-近鄰(KNN),支持向量機(SVM),人工神經(jīng)網(wǎng)絡(luò)(ANN)等等。K-近鄰算法原理是,當一個樣本的k個最相鄰的樣本中大部分屬于某一類別時,該樣本也應(yīng)當屬于同一類別。支持向量機是通過尋找支持向量,在特征空間確定最優(yōu)分類超平面,將兩類樣本分開。人工神經(jīng)網(wǎng)絡(luò)模仿生物大腦中的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),通過誤差反向傳播不斷優(yōu)化參數(shù),從而得到較好的分類效果。
3 基于深度學習的圖像識別技術(shù)
一般認為深度學習技術(shù)是由Hinton及其學生于2006年提出的,其屬于人工神經(jīng)網(wǎng)絡(luò)分支。深度神經(jīng)網(wǎng)絡(luò)模仿人腦的神經(jīng)機制來分析樣本,并盡可能地對樣本的特征進行更深度的學習。以圖片為例,利用深度學習技術(shù)對樣本的特征進行學習時,由低層特征到高層特征越來越抽象,越來越能表達語義概念。當樣本輸入后,首先對圖像進行卷積與下采樣操作,卷積和下采樣操作是為了進行特征提取和選擇。以原始像素作為輸入,深度學習技術(shù)可以自動學習得到較好的特征提取器(卷積參數(shù))。深度學習的訓練過程,首先將當前層的輸出作為下一層的輸入,進行逐層分析,使得每一層的輸入與輸出差別盡可能小。其后,再聯(lián)合優(yōu)化,即同時優(yōu)化所有層,目標是分類誤差最小化。
傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)往往網(wǎng)絡(luò)中的節(jié)點數(shù)太過龐大,難以訓練。人們構(gòu)造出卷積神經(jīng)網(wǎng)絡(luò),以權(quán)值共享的方式減少了節(jié)點數(shù)量,從而能夠加深學習的深度,使系統(tǒng)能學習到更抽象、更深層的特征,從而提高識別正確率。目前較成功的深度學習網(wǎng)絡(luò)結(jié)構(gòu)有AlexNet、GoogLeNet、ResNet等。
與傳統(tǒng)識別技術(shù)相比,深度學習技術(shù)具有以下優(yōu)勢:
(1)無需人工設(shè)計特征,系統(tǒng)可以自行學習歸納出特征。
(2)識別準確度高,深度學習在圖像識別方面的錯誤率已經(jīng)低于人類平均水平,在可預(yù)見的將來,計算機將大量代替人力進行與圖像識別技術(shù)有關(guān)的活動。
(3)使用簡單,易于工業(yè)化,深度學習由于不需要領(lǐng)域的專家知識,能夠快速實現(xiàn)并商業(yè)化,國內(nèi)較知名的深度學習創(chuàng)業(yè)公司有專注人臉識別的Face++、研究無人車的馭勢科技等。
4 存在問題與未來展望
雖然深度學習具備諸多優(yōu)點,但目前來看深度學習仍有許多不足之處。首先,由于深度學習模型為非凸函數(shù),對其的理論研究十分困難,缺乏理論保證。在對數(shù)據(jù)進行調(diào)整時,仍是簡單的“試錯”,缺少理論支撐。
同時,由于深度學習過于依賴數(shù)據(jù)量和計算資源。對一個新概念的學習,往往需要數(shù)百個甚至更多有標記的樣本。當遇到有標記的樣本難以獲取或者代價太大時,深度學習就無法取得好的學習效果。并且深度學習需要十分昂貴的高性能GPU,這使得深度學習難以平民化。目前深度學習訓練速度較慢,往往需要幾天甚至一個月。其模型擴展性差,缺少“舉一反三”的能力,樣本稍加變化,系統(tǒng)性能便會迅速下降。目前的深度學習屬于靜態(tài)過程,與環(huán)境缺乏交互。
對其的解決方案目前主要有兩點:
(1)針對于模型擴展性差的問題,通過引入遷移學習,研究不同任務(wù)或數(shù)據(jù)之間的知識遷移,提高模型的擴展能力、學習速度,同時降低學習成本,便于冷啟動。
(2)與強化學習結(jié)合,研究在動態(tài)環(huán)境下進行深度學習,提高深度學習與環(huán)境交互的能力。
參考文獻
[1]蔣樹強,閔巍慶,王樹徽.面向智能交互的圖像識別技術(shù)綜述與展望[J].計算機研究與發(fā)展,2016:113-122.
[2]張翠平,蘇光大.人臉識別技術(shù)綜述[J].中國圖象圖形學報,2000:885-894.
[3]梅園,趙波,朱之丹.基于直線曲線混合Gabor濾波器的指紋增強算法[J].計算機科學,2016.
[4]孫志軍,薛磊,許陽明,王正.深度學習研究綜述[J].計算機應(yīng)用研究,2012:2806-2810.
[5]莊福振,羅平,何清,史忠植.遷移學習研究進展[J].軟件學報,2015:26-39.
[6]高陽,陳世福,陸鑫.強化學習研究綜述[J].自動化學報,2004:86-100.
篇7
關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò);Morlet小波;決策理論;Hilbert變換
中圖分類號:TP18文獻標識碼:A文章編號:1009-3044(2009)32-9050-02
Wireless Signal Simulation Algorithm for Automatic Identification
ZHANG Meng
(Purchasing, China Railway Communication Co., Ltd., Beijing 100140, China)
Abstract: We have firstly discussed the modulation distinguishing method based on rational budgeting theory through the method of comparing Tine-Frequency analysis of the analysis signals formed by Hibert Transform . And on the basic of analyzing the fault of this method ,we put forward the distinguishing method based on NN. When NN is distinguishing signals, it mainly depends on the different positions of peak. Wavelet Transform here equals a mathematic microscope .it reflects the inexorable links between the signal categories and the positions of peak. Taking advantage Wavelet Transform and the simple three-layer BP NN, the more accurate Time-Frequency characteristics of signals to be distinguishing can be drawn.
Keywords: BP ANN; Morlet Wavelet; BudgetingTheory; Hibert Transform
在軍事電子對抗等多方面的重要應(yīng)用,通信信號調(diào)制的自動識別分類問題也相繼發(fā)展起來。無線電信號調(diào)制實識別就是要判斷截獲信號的調(diào)制種類。為此,需要事先對其特征進行選定,并確定它們與相應(yīng)調(diào)制種類相聯(lián)系的取值范圍,然后再對信號進行特征測量,并根據(jù)測量結(jié)果對信號的調(diào)制進行分類判決。
如果把無線電信號的調(diào)制識別與分類視為一種模式識別問題,那末,從模式識別理論來看,模式分類是模式識別的一個子系統(tǒng)。因此,在模式識別理論框架下,無線電信號的調(diào)制識別是一個總體概念。而調(diào)制分類則只是調(diào)制識別的一個分支[1]。
1 基于決策理論的模擬調(diào)制方式識別方法
此算法主要實現(xiàn)區(qū)分AM、FM、DSB、LSB、USB、VSB、AM-FM等七種調(diào)制樣式,所分析的對象序列s(n)是由接收機中頻輸出并經(jīng)過采樣得到的,這樣s(n)的采樣頻率和載頻都已知,分別記做Fs和Fc。算法分兩個步驟:
第一步,根據(jù)信號的包絡(luò)特征將AM、USB、LSB與FM區(qū)分開,因為前三種信號的包絡(luò)不為恒定值,而FM的包絡(luò)理論上是恒定值(實際中接近恒定)。因而可以從中提取一個特征參數(shù)R。參數(shù)R反映了零中心歸一化包絡(luò)的功率譜特征,FM的零中心歸一化包絡(luò)接近零,因其參數(shù)R應(yīng)遠遠小于前三種信號。實際中若R
第二步,根據(jù)信號頻譜的對稱性,將AM與USB與LSB區(qū)分開,因為AM的單邊頻譜關(guān)于載頻是近似對稱的,USB和LSB的單邊頻譜對于載頻來說分別只有上邊頻和下邊頻。因而可以從中提取另一個特征參數(shù) 。理論上,由于AM的上下邊頻對稱,所以AM的P接近零,而LSB和USB的P分別接近1和-1。實際中若|P|< 0.5,判為AM信號,若P>0.5,判為LSB,P
第三步,零中心非弱信號段瞬時相位非線性分量絕對值的標準偏差:σap 。
σap由下式定義:
(1)
式中,at是判斷弱信號段的一個幅度判決門限電平,c是在全部取樣數(shù)據(jù)Ns中屬于非弱信號值的個數(shù),?準NL(i)是經(jīng)零中心化處理后瞬時相位的非線性分量,在載波完全同步時,有:?準NL(i)= φ(i)-φ0
式中:,φ(i)為瞬時相位。用σap來區(qū)分是DSB信號還是AM-FM信號。
第四步,零中心非弱信號段瞬時相位非線性分量的標準偏差:σdp。
σdp由下式定義:
(2)
σdp主要用來區(qū)別不含直接相位信息的AM、VSB信號類和含直接相位信息的DSB、LSB、USB、AM-FM信號類,其判決門限設(shè)為t(σdp) 。
2 決策論方法的改進
前面介紹的基于決策理論的模擬調(diào)制方式識別方法存在缺陷針對上述問題,人們又提出了基于神經(jīng)網(wǎng)絡(luò)(NN)的識別方法。
2.1 BP網(wǎng)絡(luò)作為分類器的模擬調(diào)制方式識別方法
該算法用基于有監(jiān)督訓練的神經(jīng)網(wǎng)絡(luò)模型BP網(wǎng)絡(luò)作為分類器,用BP模型多層感知網(wǎng)絡(luò)與反向傳播學習算法相結(jié)合,通過不斷比較網(wǎng)絡(luò)的實際輸出與指定期望輸出間的差異來不斷的調(diào)整權(quán)值,直到全局(或局部)輸出差異極小值,不難想象該神經(jīng)網(wǎng)絡(luò)對模型細節(jié)中的諸多問題均有良好效果。
基于NN的模擬信號調(diào)制識別框圖[2]如圖1所示,該NN采用三層結(jié)構(gòu)即,1個輸入層,1個輸出層,1個中間層。中間層可采用多層。但由于受到計算復(fù)雜性的限制,目前采用單層或雙層中間層的NN比較多見。本圖中間層采用單層25個節(jié)點,輸入層和輸出層的節(jié)點數(shù)取決于信號特征參數(shù)的個數(shù)和信號的分類數(shù),因而分別為4和7。
神經(jīng)網(wǎng)絡(luò)具有信息分布式存儲、大規(guī)模自適應(yīng)并行處理和高度容錯特性,適用于模式識別的基礎(chǔ)。其學習能力和容錯特性對不確定性模式識別具有獨到之處[3]。通信信號在傳播過程中受到信道噪聲的污染,接受到的信號是時變的、非穩(wěn)定的,而小波變換特別適用于非穩(wěn)定信號的分析,其作為一種信息提取的工具已得到較廣泛的應(yīng)用。小波變換具有時頻局部性和變焦特性,而神經(jīng)網(wǎng)絡(luò)具有自學習、自適應(yīng)、魯棒性、容錯性和推廣能力,兩者優(yōu)勢的結(jié)合可以得到良好的信號模式自動識別特性,從而形成各種處理方法。
2.2 基于小波的特征提取和識別方法
小波特別適用于非穩(wěn)定信號的分析,作為一種特征提取的工具已得到較為廣泛的應(yīng)用。小波的重要特點是它能夠提供一個信號局部化的頻域信息。小波變換能夠?qū)⒏鞣N交織在一起的不同頻率組成的混合信號分解成不同頻率的塊信號,它對不同的時間和頻率有不同的解釋,因此,對調(diào)制信號進行小波分解,得到不同水平下的細節(jié)信息,這些信息對于不同類別的調(diào)制信號來說是有差別的[4]。
在實際應(yīng)用中,小波變換常用的定義有下列兩種:
(3)
(4)
式中,星號*表示共軛。式(3)表示小波變換是輸入信號想x(t)和小波函數(shù)φα, τ(t)的相關(guān)積分;式(4)用卷積代替了相關(guān)積分。兩種定義在本質(zhì)上是一致的。本為采用后者。
將式(4)中的τ和t離散化,即令τ=kTs,及t=iTs,得連續(xù)小波變換公式(4)的離散形式,又稱小波系數(shù):
(5)
Morlet小波是一種單頻復(fù)正弦調(diào)制高斯波,也是最常用的復(fù)值小波。其實、頻兩域都具有很好的局部性,它的時域形式如下:
(6)
雖然信號特征有很多種,神經(jīng)網(wǎng)絡(luò)在進行信號識別時,主要是依據(jù)譜峰位置的不同,因此提取信號特征主要任務(wù)就是尋找信號類別與譜峰位置間的必然聯(lián)系。而小波變換在這里則相當于一個數(shù)學顯微鏡,通過它,可以詳細了解各類信號在不同低頻段上的頻譜構(gòu)成。
整個系統(tǒng)在PC機上進行仿真,采用Windows2000操作系統(tǒng)和Matlab6.1和Cool Edit2.0進行聲音錄制。
在仿真中,采用44K的采樣率,錄制了一段歌聲和一段笑聲,用Matlab生成22K的正弦載波,并根據(jù)第二章的各調(diào)制樣式的定義,生成了各個仿真的調(diào)制波形。并轉(zhuǎn)化成.wav文件錄在電腦中。
3 結(jié)束語
本文僅限于理論理論研究,用MatLab仿真實現(xiàn),沒有用DSP芯片等物理電路實現(xiàn),僅為實際實現(xiàn)提供理論指導(dǎo)。
參考文獻:
[1] 羅利春.無線電偵察信號分析與處理[M].北京:國防工業(yè)出版社,2003.
[2] 楊小牛,樓才義,徐建良.軟件無線電原理與應(yīng)用[M].北京:電子工業(yè)出版社,2001.
篇8
關(guān)鍵詞:PCA算法;人臉識別;五級并行PCA模型;權(quán)重計算;均值濾波
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)19-0147-02
Research on Face Recognition System Based on Parallel PCA Algorithm
ZHAO Ya-peng
(College of Information Science and Engineering, Shandong University of Science and Technology, Qingdao 266590, China )
Abstract:In order to solve the problem of fast and accurate face recognition, a face recognition method based on parallel PCA algorithm is proposed. Using principal component analysis (PCA) method can reduce the dimension of features, easy to implement, training time is short, the design and implementation of a parallel algorithm for PCA, first of all according to the whole image to extract the 4 part of face images, then the whole image and 4 partial images at the same time by the same structure of the PCA model of learning, face feature vector extraction, the Euclidean distance for matching calculation of the test images and training images, finally through the test image with the five level parallel PCA model identification results are weighted decision, in order to achieve face recognition. Using the image data of the ORL face database , the simulation results in Matlab show that the method has a great degree of improvement in accuracy, the recognition speed is relatively fast, with a high degree of robustness.
Key words:PCA algorithm;Face recognition;Five level parallel PCA model;Weight calculation;Mean filter
1 概述
隨著智能終端設(shè)備(手機、Pad、門禁等)的不斷發(fā)展,身份識別已經(jīng)成為我們?nèi)粘I畹闹匾M成部分,身份驗證技術(shù)被廣泛應(yīng)用于各個領(lǐng)域,特別是人們對于個人隱私信息的保護,使得身份識別再次成為關(guān)注的焦點。人臉識別作為身份識別的重要手段之一,因其具有識別率高、采集性強、接受性高等特點,在身份識別的各類方法中具有獨特的優(yōu)勢,成為了目前比較熱門的研究領(lǐng)域。
目前,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks)是圖像識別領(lǐng)域最重要的研究熱點,而且在語音識別領(lǐng)域也取得了不錯的效果,但是卷積神經(jīng)網(wǎng)絡(luò)的整個訓練過程比較費時,而且實現(xiàn)相對復(fù)雜,而基于PCA算法的人臉識別技術(shù)因其自身存在的許多缺陷,一直沒有被廣泛應(yīng)用,但該方法實現(xiàn)簡單、學習速度較快,因此,本文主要研究改進的并行PCA算法,以彌補傳統(tǒng)PCA算法在人臉識別領(lǐng)域的不足。
本文提出的基于并行PCA算法的人臉識別技術(shù),首先對原始圖像進行預(yù)處理,如灰度歸一化和中值濾波等操作,以消除圖像噪聲、光照等因素造成的影響,使得特征提取更加準確可靠。然后,通過5級并行PCA模型獲取數(shù)據(jù)的不同特征矩陣,然后將訓練圖像和測試圖像分別進行子空間的投影,利用歐氏徑向基函數(shù)(Euclidean Radial Basis Function)進行人臉的匹配,最后根據(jù)訓練得到的權(quán)值向量進行加權(quán)決策。本文通過ORL人臉數(shù)據(jù)庫的仿真實驗證明,該算法的效果明顯好于PCA算法。
2 并行PCA算法
PCA(Principal Component Analysis)即主成分分析技術(shù),PCA是基于K-L變換的統(tǒng)計學分析方法,是多元分析中常用的方法,其基本思想是將高維數(shù)據(jù)投影到低維空間,主要過程在于特征值的計算和矩陣的降維。將PCA應(yīng)用于人臉識別時,首先將圖像轉(zhuǎn)化成矩陣向量,然后進行矩陣的奇異值分解(Singular Value Decomposition),將高維向量通過計算得到的特征向量矩陣投影到低維的向量空間,從而減少數(shù)據(jù)的計算量。
2.1 基于并行PCA算法的人臉識別流程
本文中提出的并行PCA算法,正是基于上述的PCA算法,通過建立5級的PCA算法模型同時進行數(shù)據(jù)特征的學習,使得最終的人臉識別準確率得到進一步的提高,具體的人臉識別流程如圖1所示。
2.2 并行PCA算法的實現(xiàn)的步驟
2.2.1 人臉圖像的預(yù)處理
首先,需要把ORL人臉數(shù)據(jù)數(shù)據(jù)庫的所有訓練圖像大小進行歸一化,并轉(zhuǎn)化為像素矩陣,矩陣大小記為,為矩陣的行數(shù),為矩陣的列數(shù)。之后利用均值濾波和灰度歸一化進行圖像的去噪處理,以消除光線等問題對圖像造成的影響,以方便后期的特征提取等操作。
2.2.2 人臉圖像的PCA降維
根據(jù)PCA的原理,可以將每一張圖像看成是一個高維的向量,所有的圖像可以看成是這個高維空間中的一點,PCA要做的就是找出另外一個盡可能多的反應(yīng)圖像特征的低維空間。
假如樣本由n張大小為p*q的人臉圖像組成,那么每一張圖像可以保存為一列向量,向量維數(shù)是p*q,真?zhèn)€樣本可以看成是一個行數(shù)為n,列數(shù)為p*q的矩陣記為矩陣A。
根據(jù)上述過程,首先求出矩陣A的協(xié)方差矩陣,然后求出協(xié)方差矩陣的特征值,選取前m個最大的特征值,然后求出對應(yīng)的特征向量,組成一個特征矩陣。通常所說的“特征臉”就是這些特征向量,而特種功能矩陣就是“特征臉”空間或者說子空間。然后可以將每一張圖片投影到該子空間,得到了每一張圖像的投影矩陣(l*m)。
2.2.3 人臉圖像的識別
對于待識別的圖像,也可以看成是一列向量,投影到子空間得到一個投影矩陣,然后一一求出這個投影矩陣與樣本圖像投影矩陣最相似的。然而有可能該人臉不是人臉庫中的,所以最相似的人臉也不一定是同一個人臉,還需要設(shè)置一個閾值來判斷待識別人臉是否是人臉庫中的。
人臉識別部分正是基于上述的PCA算法,在本文所提出的并行PCA模型中,是由5級的PCA模型同時進行人臉識別這一操作,最后根據(jù)訓練得到的權(quán)值向量進行決策,通過使用多個PCA模型,從而使得整個識別過程的準確率得到進一步的提升。
3 系統(tǒng)設(shè)計及實現(xiàn)
3.1 系統(tǒng)總體設(shè)計
本文中所提出的基于并行PCA算法的人臉識別系統(tǒng),包括人臉圖像采集模塊、圖像預(yù)處理模塊、識別模塊。人臉圖像采集模塊主要是采集訓練圖像數(shù)據(jù)和測試圖像數(shù)據(jù),并由原始圖像提取出4幅與之對應(yīng)的部分圖像;圖像預(yù)處理模塊主要就是進行圖像歸一化和圖像的去噪工作,圖像的歸一化包括大小歸一化和灰度歸一化,可以使用比較常見的直方圖均衡化等技術(shù),而圖像的去噪可以使用中值濾波技術(shù),以去除比較常見的高斯噪聲等;人臉識別模塊是基于5級相互獨立的PCA模型進行特征值的學習和比對,而且通過訓練得到的權(quán)值向量進行最終的是臉識別決策。整個系統(tǒng)的實現(xiàn)是基于Matlab進行仿真實驗的,實驗數(shù)據(jù)來自劍橋大學AT&T實驗室創(chuàng)建的ORL人臉數(shù)據(jù)庫。
3.2系統(tǒng)功能模塊實現(xiàn)
3.2.1人臉圖像采集實現(xiàn)
圖像采集模塊主要就是將存儲在本地的圖像文件通過Matlab的imread函數(shù)讀入矩陣中,以方便后期的PCA操作,其核心語句為Image{t}=imread([[filepath,F(xiàn)ilDir(ii).name],'\',ImDir{ii}(jj).name]);
使用上述語句即可讀入訓練數(shù)據(jù)和測試數(shù)據(jù)文件。
3.2.2 圖像預(yù)處理模塊
該模塊的主要任務(wù)就是利用中值濾波和直方圖均衡化進行圖像的去噪工作,以消除不同光照和圖像噪聲的影響,提高準確率。其核心代碼為:
S1=zeros(1,256);
for i=1:256
for j=1:i
S1(i)=GP(j)+S1(i);
end
end
S2=round((S1*256)+0.5);
for i=1:256
GPeq(i)=sum(GP(find(S2==i)));
end
3.2.3 識別模塊
圖像經(jīng)過之前的預(yù)處理之后,需要將圖像矩陣轉(zhuǎn)化為列向量,一幅圖像就是一列向量,整個訓練圖像構(gòu)成了整個特征空間矩陣,測試圖像也會轉(zhuǎn)化為一列向量,之后會利用矩陣之間的運算進行圖像的分析計算。識別模塊的工作就是根據(jù)測試圖像和之前所有的訓練數(shù)據(jù)進行對比,查找到與之最相似的圖像,實驗的結(jié)果如圖2所示。
4 結(jié)論
PCA算法作為傳統(tǒng)的人臉識別算法,因其自身存在的許多缺陷而沒能發(fā)揮較好的作用,但是其自身具有其他算法所不具有的特點,本文設(shè)計的并行PCA算法雖然是基于PCA算法,但是借鑒了卷積神經(jīng)網(wǎng)絡(luò)的多層結(jié)構(gòu),而且使用加權(quán)操作進行最終人臉識別的決策?;贠RL人臉數(shù)據(jù)庫的測試結(jié)果表明,該并行PCA算法的準確率和魯棒性均得到了進一步的提升,與其他的單獨PCA算法具有十分明顯的優(yōu)勢。
參考文獻:
[1] 張利芳. 基于PCA算法的人臉識別系統(tǒng)研究[D].太原:中北大學,2015.
[2] 楊海燕,蔣新華. 基于并行卷積神經(jīng)網(wǎng)絡(luò)的人臉關(guān)鍵點定位方法研究[J]. 計算機應(yīng)用研究, 2015, 32(8): 2517-2519.
[3] 楊穎嫻. 基于PCA算法和小波變換的人臉識別技術(shù)[J]. 微電子與計算機, 2011, 28(1): 92-94.
[4] 段寶彬,韓立新. 改進的卷積神經(jīng)網(wǎng)絡(luò)及在碎紙拼接中的應(yīng)用[J]. 計算機工程與應(yīng)用, 2014, 50(9): 176-181.
篇9
關(guān)鍵詞:殘差網(wǎng)絡(luò);人臉圖像:年齡分類:非受限條件:Adience數(shù)據(jù)集
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2017)14-0169-02
1概述
人臉圖像包含很多信息,如身份、表情、姿態(tài)、性別和年齡。其中,年齡是人的重要生物特征,可以應(yīng)用于多種場景,如基于年齡的人機交互系統(tǒng)、基于年齡的訪問控制、電子商務(wù)中個性營銷及刑事案件偵查中的年齡過濾等n,。很多研究者在人臉圖像年齡估計方面做了大量研究,早期,主要用Gabor,LBP,SFP和BIF等提取特征以及SVM方法進行年齡分類,這些人工提取特征的方法在受限條件下的人臉數(shù)據(jù)集上獲得了不錯的結(jié)果,但是在非受限條件下的人臉年齡分類任務(wù)中效果不佳;近幾年,深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)成為了計算機視覺領(lǐng)域的研究熱點。從5層的LeNet,到8層的AlexNet,再到19層的VGGm和22層的GoogleNet,直到上千層的ResNets,無論是網(wǎng)絡(luò)的學習能力還是深度都得到顯著提高。因此,越來越多的學者采用DCNN解決年齡分類問題,并證明其在非受限條件下能獲得明顯優(yōu)于手工提取特征方法的結(jié)果。
在人臉年齡分類中,人臉圖像往往受到面部姿態(tài)、光線、化妝和背景等影響,極大地限制了人臉年齡分類的準確性。針對非受限條件下人臉圖像年齡分類困難的問題,本文提出了一種基于深度殘差網(wǎng)絡(luò)的非受限條件下人臉年齡分類方法。
2 34層殘差網(wǎng)絡(luò)
He等提出了深度殘差網(wǎng)絡(luò)(ResNets),該網(wǎng)絡(luò)采用殘差塊作為網(wǎng)絡(luò)的基本組成部分,可以很大程度上解決DCNN隨著深度增加而帶來的網(wǎng)絡(luò)退化問題。ResNets在原始卷積層外部加人越層連接(shoacut)支路構(gòu)成基本殘差塊RB,使原始的映射H(X)被表示為H(X)=F(X)+x。ResNets通過殘差塊結(jié)構(gòu)將網(wǎng)絡(luò)對爿(X)的學習轉(zhuǎn)化為對F(X)的學習,而對F(X)的學習較H(X)更為簡單?;跉埐顗K更易學習的特性,ResNets通過順序累加殘差塊成功地緩解了DCNN的退化問題,提高了網(wǎng)絡(luò)性能。
ResNet-34結(jié)構(gòu)如圖1所示,殘差塊的具體表達式如下,函數(shù)F(x)表示殘差映射,x和y分別代表殘差塊的輸入和輸出。當x和F數(shù)相同時,采用式(1),此時越層連接既沒有增加額外參數(shù)也沒有增加計算復(fù)雜度。當x和F維數(shù)不同時,采用式(2),通過越層連接執(zhí)行1×1卷積映射G(x)以匹配維數(shù)。
ResNet-34網(wǎng)絡(luò)輸入圖像大小為224×224。首先經(jīng)過卷積層,卷積核為7×7,步長為2,輸出特征圖為112×112;再經(jīng)過最大池化層;其次經(jīng)過四組不同殘差塊,各殘差塊組的殘差塊數(shù)量分別為3、4、6和3,并且同組中的殘差塊輸入輸出維度相同,分別為64、128、256和512,各組輸出特征圖大小依次為56×56、28×28、14×14、7×7。最后經(jīng)過平均池化層和全連接層,通過softmax分類器,輸出分類結(jié)果。
3數(shù)據(jù)集
Adience數(shù)據(jù)集來自人們從智能手機設(shè)備自動上傳到網(wǎng)絡(luò)相冊的圖像。這些圖像在上傳之前并沒有經(jīng)過人工過濾,且這些圖像都是在非受限條件下拍攝的。這些圖像在頭部姿勢、面部表情和光線條件質(zhì)量等方面都存在很大差異,所以在Adi-ence數(shù)據(jù)集下的人臉圖像年齡分類任務(wù)面臨巨大挑戰(zhàn)。
Adience包含2284個人的26580張人臉圖像,年齡范圍為0-100歲,共8個年齡段(0-2,4-6,8-13,15-20,25-32,38-43,48-53,60-),年齡分布如表1。
4實驗結(jié)果與分析
為了提升網(wǎng)絡(luò)的人臉分類性能,本文選用ResNet-34在人臉圖像Adience數(shù)據(jù)集上做年齡分類。訓練和測試時動量值為0.9,權(quán)重衰減為0.0001。batch大小設(shè)為64,epoch設(shè)為164,初始學習率為0.1,在81和122個epoch之后學習率分別降為0.01和0.001。本文實驗?zāi)P筒捎肗vidia Titan X GPU訓練,運行環(huán)境torch7。
本文采用文獻[7]中的交叉驗證方法,將Adience數(shù)據(jù)集分成五組不同圖像(fold-0,fold-1,fold-2,fold-3,fold-4),令其中一組圖像作為測試集,其余四組圖像作為訓練集,共構(gòu)成五種檢測方式。通過計算平均分類準確度和1-off值作為評估標準。在fold-0測試的年齡分類準確度的曲線圖如圖2所示,由此可知網(wǎng)絡(luò)能夠很好地收斂。
為了驗證本文方法的有效性,將現(xiàn)有在Adience數(shù)據(jù)集上的年齡分類方法與本文方法對比,各方法人臉年齡分類結(jié)果如表2所示。由表2可以看出本文提出的方法獲得了除DEX w/IMDB-WIKI Pretrain方法以外的最高年齡分類準確度,主要由于文獻[10]用大規(guī)模人臉數(shù)據(jù)集IMDB-WIKI微調(diào)網(wǎng)絡(luò)。不經(jīng)過大數(shù)據(jù)集對網(wǎng)絡(luò)微調(diào)時,本文提出的基于深度殘差網(wǎng)絡(luò)的年齡分類方法獲得了最高年齡分類準確度。
篇10
關(guān)鍵詞:黑白棋;人工智能;算法
中圖分類號:TP18 文獻標識碼:A 文章編號:1009-3044(2016)29-0198-03
1簡介
黑白棋是被稱為“設(shè)計理念”僅次于圍棋的棋類游戲。它的棋盤只有8*8大,乍一看貌似簡單,以為只要略微搜索就可以窮盡其中的路數(shù)。然而隨著探究的不斷深入,這個看似簡單的游戲卻不斷涌現(xiàn)出它神秘莫測的一面。
作為一名高中生,經(jīng)過為數(shù)不多課余時間的努力,我所設(shè)計的黑白棋程序bwcore實力已經(jīng)達到相當?shù)乃健=?jīng)測試,它在北京大學人工智能對抗平臺上戰(zhàn)力排行達到第一。通過與另外一些AI的測試表明,目前的bwcore可以輕易打敗國內(nèi)個人編寫的程序,亦能與專業(yè)公司開發(fā)的黑白棋軟件(zebra,傷心黑白棋等)相抗衡。
本篇著重講述了bwcore是如何更好地運用各類算法,使之融入到黑白棋AI設(shè)計中,達到提高AI水平的目的。本文還對AI設(shè)計作了一定程度的研究,先是介紹了一些較基礎(chǔ)的算法在黑白棋AI設(shè)計中的應(yīng)用,而后還探討了實現(xiàn)AI的一些更高級的方法,以求有所突破。
2AI設(shè)計
2.1Minimax搜索
Minimax搜索的第一要義是雙方都按照對自己最有利的決策,對盤面進行模擬。如果能夠評價某一時刻其中一方的優(yōu)劣程度,則另一方走棋時就會選一種使對方優(yōu)勢盡可能小的走法。如圖所示,按照這種方式模擬出井字棋所有可能的局面,所有局面就構(gòu)成一棵極大極小博弈樹。
根據(jù)上述做法,不難寫出簡易MiniMax搜索的代碼。當搜索達到指定深度后,進行當前局面的分值估算。val為當前層的分值,當前層的顏色與己方相同時,使之盡可能大。
float Cmp_BW::MaxMinSearch(Map&fmap,int col,int deep)
{
if deep>target_deep Then
search_cnt++;
return Sence_Evalution
For-Each place_in_board
If place_is_availaleThen
MakeMove
ret=MaxMinSearch(board.color_other,deep+1);
UnMakeMove
if col==my_color Then
2.2剪枝c改進
Minimax算法提供了一種在博弈樹上尋求最優(yōu)解的方法,但缺點很明顯。算法需要遍歷博弈樹上所有可能的情況,盡管很多時候是根本不可能的(例如一方選擇了一個明顯劣勢的位置)。通過AlphaBeta剪枝可以減少這種情況發(fā)生。如果當前結(jié)點獲得的值已經(jīng)小于其父節(jié)點之前得出的值,那么就沒有繼續(xù)搜索的必要,因為按照選擇的邏輯,這個節(jié)點一定會被父節(jié)點排除在外。
經(jīng)測試,搜索的節(jié)點數(shù)明顯減少,約為原來的3/4次方。
測試表明,一般人已經(jīng)難以戰(zhàn)勝4~5層的搜索了。而把搜索深度設(shè)定為4層可以在botzone排行榜上達到約40名。
3高級搜索方法
3.1蒙特卡洛搜索
谷歌的圍棋智能AlphaGo就使用了基于蒙特卡洛樹搜索(MCTS)的搜索方式。MCTS在圍棋領(lǐng)域十分成功,在其他方面也有很大的借鑒意義。
蒙特卡洛搜索通過對局面的隨機模擬來獲得對各個節(jié)點搜索的關(guān)注程度,可以說在理念上很接近人的思維方式。UCT算法是蒙特卡洛搜索的一種,旨在得分未知的前提下使期望得分最大。UCT算法為每一個節(jié)點計算UCB值,每次擴展時選擇UCB最大的節(jié)點。
其中,X表示以前的收益,N表示總次數(shù),T表示當前階段的次數(shù)。這個式子的蘊含的內(nèi)容是,如果一個節(jié)點的得分很高,那么就它很值得深入研究,而一些得分較低的節(jié)點有時也會去嘗試,但次數(shù)不會很多。在極端條件下,多個選擇方案中有一個方案的值遠好于其他方案,則UCT算法的收斂速度很快。另一方面,如果所有方案得分相差不大,UCT隨著搜索次數(shù)的增加,所有節(jié)點的得分趨于穩(wěn)定。
結(jié)果表明單純的UCT算法效率極高,經(jīng)過很少時間就估算出精確值相近的結(jié)果。但因有時隨機選點得出結(jié)果差異大,下棋時偶爾會出現(xiàn)失誤。但總體而言,樸素的UCT算法的效果已經(jīng)很優(yōu)秀,測試過程中棋力超過前面基于MiniMax搜索的算法??梢韵胍?,如果能在Simulation過程中加以優(yōu)化,還有很大提升空間。
3.2遺傳算法
遺傳算法也是比較好的搜索方式,它通過借鑒生物界的進化規(guī)律來加強搜索。將前面的搜索局面各行列情況視為遺傳算子,搜索過程中經(jīng)過交叉、變異算子,評估新算子的可靠程度,將進化較成功算子反作用于搜索,每次得出更好的搜索方法。具體過程如下:
1)隨機生成n個個體作為迭代的初始群體;
2)計算群體中每個個體的適應(yīng)程度;
3)進行選擇,把適應(yīng)度高的個體的基因傳遞給下一代;
4)使新生成個體的基因交叉互換;
5)對基因做一定程度的變異;
6)返回2),除非適應(yīng)度達到指定水平或已經(jīng)達到最大迭代次數(shù)。
經(jīng)過多次迭代,適應(yīng)度高(這里即勝率高)的基因?qū)⑦z傳下來,最終得到高度適應(yīng)的群體,即我們下一步所期望的走法。
4機器學習與增強學習
前面的幾種搜索方法比原先單純的搜索更具智能性,有更高的效率。目前為止,我們還未對局面的評估做出很好的改進。而估價函數(shù)的選取十分困難,大多依靠編寫者自己的直覺,有時為了讓某個權(quán)重來達到合適的值,還要耗費大量時間進行試驗并調(diào)節(jié)。所幸,運用機器學習的方法可以使這些問題得到較好的解決。
4.1決策樹與隨機森林
決策樹(Decision Tree)是其中一種比較簡單的做法。決策樹可用于對帶標簽數(shù)據(jù)的分類,并可以在相對短的時間得出效果良好的結(jié)果。依照數(shù)據(jù)標注的特點,決策樹的每一個分支對這些樣本進行劃分,最終使樣本按照標簽歸類。預(yù)測時,將想要預(yù)測的數(shù)據(jù)選擇相應(yīng)分支找到對應(yīng)的歸屬即可。
在黑白棋中,如果將黑方獲勝視為樣本中的正類,白方獲勝視為負類,棋盤上黑白棋子的位置作為樣本的標簽,就可以將對局面的評價轉(zhuǎn)化為分類問題。決策樹通過不停尋找最優(yōu)分裂使數(shù)據(jù)更好地被分離。這里使用C4.5算法,通過信息熵獲得最優(yōu)分裂。由于單純使用棋子的位置作為標簽信息量較大且十分復(fù)雜,容易造成一種稱為過擬合的題。將決策樹上改為隨機森林,可以避免了過擬合,節(jié)約了訓練時間。
4.2神經(jīng)網(wǎng)絡(luò)算法
人工神經(jīng)網(wǎng)絡(luò)是當下計算機話題最熱門的內(nèi)容之一。神經(jīng)網(wǎng)絡(luò)的種類繁多,BP神經(jīng)網(wǎng)絡(luò)是神經(jīng)網(wǎng)絡(luò)中最簡單的一種模型。
BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖,左邊為輸入層節(jié)點,右邊為輸出層節(jié)點,中間包含一個或多個隱含層。
每個神經(jīng)元從其上一層獲得輸入,將輸入通過自身權(quán)值和閾值變換后施以適當激活函數(shù),傳遞到下一次神經(jīng)元。這樣的過程稱為正向傳遞(Fowed Transfer)過程。根據(jù)正向傳遞得到的網(wǎng)絡(luò)輸出與訓練目標比較計算當前網(wǎng)絡(luò)的誤差,然后向前調(diào)整各個神經(jīng)元權(quán)值,就是所謂的反向傳遞(Reverse Transfer)過程。BP網(wǎng)絡(luò)不停通過這種方式訓練減小誤差,最終使每個訓練輸入都收斂于目標輸出。
這里使用棋盤上黑白棋子的分布作為輸入層節(jié)點,用01表示,輸出層表示輸贏棋子數(shù)。訓練結(jié)果表明,雖然目前的網(wǎng)絡(luò)能較好地擬合訓練集中的局面,但對于推廣與訓練集不同的輸入數(shù)據(jù)較為困難,這可能是因為當前所使用網(wǎng)絡(luò)的局限性。此外,BP神經(jīng)網(wǎng)絡(luò)隱含層的層數(shù)不宜過多,否則收斂十分緩慢。使用深度學習中更高級的神經(jīng)網(wǎng)絡(luò)如卷積神經(jīng)網(wǎng)絡(luò)(CNN)等應(yīng)該能夠得到更好的效果,但過程比較復(fù)雜,目前個人難以實現(xiàn)。
4.3訓練方式
學習算法需要進行訓練,一種方式是使用接近后期時搜索得出的結(jié)果,這種方式獲得樣本的準確度較高。如果按照終局搜索步數(shù)15-20步計,訓練好的AI將可以在近30步時獲取很大優(yōu)勢。
//用后期對局結(jié)果作為樣本訓練
void Cmp_BW::train(int repeat)
For lxain_count
For remain_step>target_step
run_easy(map)//使用簡單方式下棋,節(jié)約時間
score=getScore(map)//獲得比分
deetree.tmin(map,score);//用樣本訓練