国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于人工智能算法的圖像識別與生成

2018-07-20 01:40:56陳軻
電腦知識與技術(shù) 2018年13期
關(guān)鍵詞:數(shù)據(jù)圖像識別人工智能

陳軻

摘要:本次報告的工作是利用PCA,SVM以及人工神經(jīng)網(wǎng)絡(luò)(ANN)實(shí)現(xiàn)對人臉的特征提取、分類和預(yù)測。然后利用GAN(生成對抗網(wǎng)絡(luò))實(shí)現(xiàn)對手寫數(shù)字的生成,并用SVM做預(yù)測,驗證生成效果。

本次報告采用的數(shù)據(jù)源自劍橋大學(xué)的ORL 人臉數(shù)據(jù)庫,其中包含40個人共400張人臉圖像。

關(guān)鍵詞:人工智能;圖像識別;數(shù)據(jù)

中圖分類號:TP18 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)13-0173-02

1 PCA降維

PCA(principal components analysis)即主成分分析,又稱主分量分析。旨在利用降維的思想,把多指標(biāo)轉(zhuǎn)化為少數(shù)幾個綜合指標(biāo)。

首先我們給出了數(shù)據(jù)庫的平均臉的圖像,并利用PCA對人臉降維,通過改變降低到的維度研究了保留維度的多少帶來的影響。最后給出了每一個維度的特征臉圖像,討論了每一個維度所能夠代表的人臉信息。

1.1 平均臉

首先,我們將數(shù)據(jù)庫中400張人臉按行存儲到一個矩陣中,即每一行為一張人臉(10304像素),每張人臉共10304維特征。我們對每一個維度去平均,構(gòu)成一個新的行向量,這就是平均臉。

平均臉反映了數(shù)據(jù)庫中400張人臉的平均特征,可以看清人臉的輪廓,但無法識別人臉的局部細(xì)節(jié)。

1.2 降低至不同維度時還原臉的情況

從左到右從上到下依次是同一張臉降低至10,30,50,100,200,250,300,350,400的圖像??梢钥吹剑S著保留維數(shù)的增多,圖像越清晰,與原圖的差異越小。

1.3 提取單一維度的特征做還原

為了研究不同維度所代表的人臉的信息,我們把PCA之后的每一個特征向量單獨(dú)提取出來對人臉做還原,還原的時候不加入平均臉并且做直方圖均衡化。

結(jié)果如下:

每一張圖像下方的數(shù)字代表了PCA之后按特征值從大到小排序的順序,比如第一張圖代表PCA之后最大特征值所對應(yīng)的特征向量還原出的人臉。

特征累積圖的縱坐標(biāo)代表了所保留的特征占總特征的比例。它是這樣計算出來的,假設(shè)保留k維信息,則縱坐標(biāo)值為這k個特征值的和除以總的400(400*10304的矩陣,最多有400個非零特征值)個特征值的和。

從圖4可以看出,當(dāng)保留維數(shù)為100維時,即能保留人臉90%的信息,而之后隨著保留維數(shù)的增多,保留信息的增多變緩。

同樣的結(jié)論也可由提取每個維度所代表的特征獲得。從前到后觀察實(shí)驗所得的圖像,我們可以發(fā)現(xiàn),人臉變得越來越模糊,到100維以后已經(jīng)分辨不清人臉了。這就說明前面的維度反映了大眾臉的特征,而越往后面的維度則反映不同人臉的細(xì)節(jié),比如頭發(fā)長短等等,以及圖片噪聲。

2 SVM對人臉分類

SVM(支持向量機(jī))是Corinna Cortes和Vapnik等于1995年首先提出的,在機(jī)器學(xué)習(xí)中,支持向量機(jī)是與相關(guān)的學(xué)習(xí)算法有關(guān)的監(jiān)督學(xué)習(xí)模型,可以分析數(shù)據(jù),識別模式,用于分類和回歸分析。

2.1 制作多分類器

用PCA對人臉降維以后,我們用SVM將400張人臉進(jìn)行分類。我們?nèi)∶總€人的前五張照片合并起來共200張作為訓(xùn)練集,每個人后五張照片合并起來共200張作為測試集。40個人即有40個標(biāo)簽,也就是有40類,但SVM只能作二分類器,因此我們利用二分類器生成多分類器,基本思想是制作C(40,2)個一對一分類器(也就是每兩個類別一個),每一張照片都分別用所有一對一分類器分類,分類結(jié)果存儲到投票矩陣中,分類結(jié)果就是投票矩陣中數(shù)字最大的那個。

分類前,我們還需對PCA后的數(shù)據(jù)進(jìn)行歸一化處理,將圖像矩陣的每一個元素映射到(-1,1)之間。

2.2 參數(shù)選擇及程序結(jié)果

1)分類數(shù)據(jù):每人取前五張做訓(xùn)練,后五張做測試(不加入自己的人臉)

SVM參數(shù)設(shè)定:k = 75(PCA降至75維)

Sigma = 30

c = 15

預(yù)測準(zhǔn)確率: accuracy=0.8950

2)每人取前五張做訓(xùn)練,后五張做測試(加入自己的人臉)

SVM參數(shù)同上,

預(yù)測準(zhǔn)確率: accuracy=0.8585

我們發(fā)現(xiàn),當(dāng)加入自己拍攝的人臉圖像后,預(yù)測準(zhǔn)確率有一定的下降,這可能是由于拍照時的光線,角度等造成的。

3 ANN對人臉分類

人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡寫為ANNs)也簡稱為神經(jīng)網(wǎng)絡(luò)(NNs)或稱作連接模型(Connection Model),它是一種模仿動物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型。這種網(wǎng)絡(luò)依靠系統(tǒng)的復(fù)雜程度,通過調(diào)整內(nèi)部大量節(jié)點(diǎn)之間相互連接的關(guān)系,從而達(dá)到處理信息的目的。

為了方便與SVM的結(jié)果作比對,ANN的訓(xùn)練集和測試集與SVM相同,并且不加入自己人臉。

3.1 ANN結(jié)果及與SVM分類比較

ANN分類結(jié)果:

ANN參數(shù)設(shè)定為:1個隱層,含200個神經(jīng)元

學(xué)習(xí)率:1

dropout fraction:0.5

激活函數(shù):sigmoid

L2正則:0.0001

epoch:200

batchsize:50

分類錯誤率:

即分類準(zhǔn)確率(accuracy)為:93.5%

實(shí)驗過程中可以發(fā)現(xiàn),通過對神經(jīng)網(wǎng)絡(luò)多個參數(shù)的調(diào)節(jié),準(zhǔn)確率的變化是很復(fù)雜的,最終的93.5%的準(zhǔn)確率應(yīng)該還有上升的空間,參數(shù)還待進(jìn)一步調(diào)整。

與SVM比較起來,ANN準(zhǔn)確率更高,但分析表明,對于本次報告所采用的數(shù)據(jù)庫,ANN和SVM的準(zhǔn)確度不會有太大差異,因此SVM的參數(shù)或許還可以進(jìn)一步優(yōu)化。

4 GAN生成手寫數(shù)字

生成對抗網(wǎng)絡(luò)(GAN)是一種深度學(xué)習(xí)模型,是近年來復(fù)雜分布上無監(jiān)督學(xué)習(xí)最具前景的方法之一。模型通過框架中(至少)兩個模塊:生成模型(Generative Model)和判別模型(Discriminative Model)的互相博弈學(xué)習(xí)產(chǎn)生相當(dāng)好的輸出。原始 GAN 理論中,并不要求 G 和 D 都是神經(jīng)網(wǎng)絡(luò),只需要是能擬合相應(yīng)生成和判別的函數(shù)即可。但實(shí)用中一般均使用深度神經(jīng)網(wǎng)絡(luò)作為 G 和 D 。

在下面的工作中,我們利用已有的手寫數(shù)字(0-9)圖片(60000張用于訓(xùn)練,10000張用于測試),對生成對抗網(wǎng)絡(luò)(GAN)進(jìn)行訓(xùn)練并生成手寫數(shù)字,每個數(shù)字提取5000個樣本作為訓(xùn)練集。最后用SVM對電腦生成的手寫數(shù)字分類,看是否能“騙過”分類器。

4.1 參數(shù)設(shè)定及程序結(jié)果

首先,我們選取一個想要生成的手寫字體,將已有數(shù)據(jù)中所有該字體挑出并取前5000個作為訓(xùn)練集。

參數(shù)設(shè)定:生成器(generator):輸入層、隱層和輸出層分別有100,512,784個神經(jīng)元。

識別器(discriminator):輸入層、隱層和輸出層分別有784,200,1個神經(jīng)元。

學(xué)習(xí)率:0.01

Batchsize:50

更新判別器時的迭代次數(shù)設(shè)為1

生成訓(xùn)練集:

load('mnist_uint8');

classify_num = 9;

classify_matrix = zeros(1,10);

classify_matrix(classify_num+1) = 1;

choose = zeros(size(train_x,1),1);

for i=1:size(train_x,1)

if(train_y(i,:)==classify_matrix)

choose(i) = choose(i)+1;

end

end

choose = logical(choose);

train_x = train_x(choose,:);

train_x = train_x(1:5000,:);

train_x = double(reshape(train_x, 5000, 28, 28))/255;

train_x = permute(train_x,[1,3,2]);

train_x = reshape(train_x, 5000, 784);

生成器損失雖然不是很低,但是最終基本穩(wěn)定。

4.2 SVM對生成手寫數(shù)字做分類

我們用GAN分別生成0到9的手寫數(shù)字,將生成的圖片作為測試集用SVM做分類,看是否能分到正確的類別。

Result是SVM中的投票矩陣,投票數(shù)最多的一個的序號減一即為所分到的類別(數(shù)字0-9)。這里的SVM區(qū)別于前面所討論的人臉識別的SVM,它是由45個(C(10,2))一對一分類器生成的多分類器。

可以看到,每一個由GAN生成的手寫數(shù)字均被SVM分到了正確的類別,如此可見GAN實(shí)在強(qiáng)大。

5 總結(jié)

運(yùn)用PCA對原始數(shù)據(jù)進(jìn)行降維,不僅能夠保留原始的主要信息,而且可以減少算法的執(zhí)行時間。通過組合SVM的二分類器來生成多分類器實(shí)現(xiàn)對人臉的識別,準(zhǔn)確率達(dá)到89.5%,用人工神經(jīng)網(wǎng)絡(luò)ANN進(jìn)行分類準(zhǔn)確率達(dá)到93.5%。最后利用GAN生成手寫字體,SVM全部正確地進(jìn)行了分類,這表明GAN生成的手寫數(shù)字是十分逼真的。

參考文獻(xiàn):

[1] 劉振明.基于J2EE新聞門戶網(wǎng)站的設(shè)計與研究[D].吉林大學(xué),2010(06):65-102.

猜你喜歡
數(shù)據(jù)圖像識別人工智能
基于Resnet-50的貓狗圖像識別
電子制作(2019年16期)2019-09-27 09:34:50
高速公路圖像識別技術(shù)應(yīng)用探討
2019:人工智能
商界(2019年12期)2019-01-03 06:59:05
圖像識別在物聯(lián)網(wǎng)上的應(yīng)用
電子制作(2018年19期)2018-11-14 02:37:04
人工智能與就業(yè)
圖像識別在水質(zhì)檢測中的應(yīng)用
電子制作(2018年14期)2018-08-21 01:38:16
數(shù)讀人工智能
小康(2017年16期)2017-06-07 09:00:59
焊接工藝仿真訓(xùn)練系統(tǒng)中焊點(diǎn)數(shù)據(jù)的建立方法
一種借助數(shù)據(jù)處理構(gòu)建的智能食堂管理系統(tǒng)
數(shù)據(jù)化藝術(shù)的生成探究
浮山县| 浦城县| 宁明县| 昭觉县| 平潭县| 高清| 闽清县| 永昌县| 绥芬河市| 沙湾县| 德兴市| 深水埗区| 定安县| 镇安县| 桐乡市| 岳阳市| 海口市| 拉孜县| 晋宁县| 扶绥县| 江永县| 信阳市| 平潭县| 浮山县| 本溪| 四川省| 孝昌县| 嵊州市| 同德县| 博罗县| 凤山市| 寿宁县| 永平县| 日照市| 灵寿县| 砀山县| 永州市| 盐边县| 济源市| 绵竹市| 安乡县|