• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于BP 神經(jīng)網(wǎng)絡(luò)的手寫字符識(shí)別

      2021-03-24 03:25:58陸文玲
      關(guān)鍵詞:手寫像素卷積

      陸文玲

      (南京林業(yè)大學(xué),江蘇南京 210037)

      0 引言

      人工神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史相當(dāng)悠久,早在1958年,研究認(rèn)知的心理學(xué)家Frank便發(fā)明了感知機(jī),這在當(dāng)時(shí)掀起一股熱潮。后來(lái)Marvin Minsky和Seymour PA pert發(fā)現(xiàn)感知機(jī)的缺陷:不能處理異或運(yùn)算,計(jì)算能力也不足以處理大型神經(jīng)網(wǎng)絡(luò)。1979年,Fukushima提出神經(jīng)認(rèn)知機(jī),誕生了卷積與池化的初步理論。H in t on 組的A le x N et 在ImageNet上以巨大的優(yōu)勢(shì)奪冠,引起深度學(xué)習(xí)的熱潮,人工神經(jīng)網(wǎng)絡(luò)再次登上舞臺(tái)。

      由于金融、信息等行業(yè)的發(fā)展極大增加了生活生產(chǎn)中的數(shù)據(jù)交互,傳統(tǒng)人工處理方式在大規(guī)模的數(shù)據(jù)統(tǒng)計(jì)中有著非常明顯的劣勢(shì):耗費(fèi)大量的時(shí)間與人力,自動(dòng)化的處理方式需求應(yīng)運(yùn)而生。阿拉伯?dāng)?shù)字作為國(guó)際通用數(shù)字,形狀信息量小,種類少的字符,不但具有很高的應(yīng)用價(jià)值,同時(shí)擁有很高的理論價(jià)值,也因此率先被應(yīng)用到手寫體識(shí)別的研究中。文章基于PyCharm開(kāi)發(fā)環(huán)境,使用Google于2016年開(kāi)源的深度學(xué)習(xí)框架TensorFlow,搭建了全連接BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò),利用來(lái)自美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究所(National Institute of Standards and Technology )發(fā)布的手寫數(shù)字?jǐn)?shù)據(jù)集MNIST與EMNIST進(jìn)行測(cè)試與訓(xùn)練,通過(guò)監(jiān)測(cè)訓(xùn)練過(guò)程中的各項(xiàng)參數(shù),對(duì)隱含層層數(shù),隱含層神經(jīng)元個(gè)數(shù),激活函數(shù),學(xué)習(xí)率,優(yōu)化器等參數(shù)不斷優(yōu)化,兩種神經(jīng)網(wǎng)絡(luò)相互對(duì)比,最終完成的模型在MNIST下均能達(dá)到極高的識(shí)別水平,在EMNIST中也取得一定成果。

      1 手寫數(shù)字集MNIST

      M N I S T 數(shù)據(jù)集來(lái)自美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究所,National Institute of Standards and Technology (NIST)。訓(xùn)練數(shù)據(jù)由來(lái)自250個(gè)不同人手寫的數(shù)字構(gòu)成,每個(gè)圖像為784像素大小的正方形,其中50%是高中學(xué)生,50%來(lái)自人口普查局(the Census Bureau)的工作人員。測(cè)試集(test set)也是同樣比例的手寫數(shù)字?jǐn)?shù)據(jù)。其中包含四個(gè)部分:

      (1)Training set images:train-images-idx3-ubyte.gz(包含60000個(gè)樣本)

      (2)Training set labels:train-labels-idx1-ubyte.gz(包含60000個(gè)標(biāo)簽)

      (3)Test set images: t10k-images-idx3-ubyte.gz(包含10000個(gè)樣本)

      (4)Test set labels: t10k-labels-idx1-ubyte.gz(包含10000個(gè)標(biāo)簽)

      第一個(gè)32-bit是magic number,用于驗(yàn)證文件,第二個(gè)32-bit是樣本數(shù)量。第三個(gè)32-bit表示圖片行數(shù),第四個(gè)32-bit表示圖片列數(shù),往后每個(gè)unsigned byte表示圖像像素值。圖像像素按行序展開(kāi),像素值為0到255,0表示白色,255表示黑色。整個(gè)數(shù)據(jù)以非常簡(jiǎn)單的用于存儲(chǔ)矢量和多維矩陣文件的格式存儲(chǔ)。文件中的所有整數(shù)均以大多數(shù)非英特爾處理器使用的MSB優(yōu)先(高端)格式存儲(chǔ)。

      2 手寫字符識(shí)別

      2.1 BP神經(jīng)網(wǎng)絡(luò)

      Back Propagation(簡(jiǎn)稱BP)算法是人工多層神經(jīng)網(wǎng)絡(luò)中對(duì)權(quán)值更新起到重要作用的方法,它的本質(zhì)簡(jiǎn)單理解就是復(fù)合函數(shù)的鏈?zhǔn)角髮?dǎo)[1]。神經(jīng)網(wǎng)絡(luò)本質(zhì)是作為數(shù)理統(tǒng)計(jì)的一種模型,擬合是該應(yīng)用中一個(gè)常見(jiàn)場(chǎng)景,即需要利用已知的數(shù)據(jù),做出適當(dāng)?shù)挠成鋪?lái)描述這些樣本與自變量的相關(guān)性[2]。對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練同樣為了這樣一個(gè)目標(biāo),但這種情況下,樣本不僅僅是二維坐標(biāo)一一對(duì)應(yīng)的x,y,而變成了由矩陣向量等組成的多維數(shù)據(jù)。同樣的,樣本數(shù)據(jù)也非?;逎?難以用一個(gè)簡(jiǎn)單的映射來(lái)描述。但研究人員發(fā)現(xiàn)多層神經(jīng)網(wǎng)絡(luò)非常適合描述這種對(duì)應(yīng)關(guān)系,而神經(jīng)網(wǎng)絡(luò)本質(zhì)就是復(fù)雜的復(fù)合函數(shù)。

      2.1.1 模型結(jié)構(gòu)

      文章搭建了兩種不同隱含層數(shù)量的全連接BP神經(jīng)網(wǎng)絡(luò)模型,基于2.3中的原則,在兩隱含層的模型中采用了2000與100神經(jīng)元數(shù),在三隱含層版本中采用6000-1800-200神經(jīng)元數(shù),輸入根據(jù)MNIST的圖像大小為784(28×28),輸出種類一共為十種。

      2.1.2 具體實(shí)現(xiàn)

      建立模型需要首先確定Graph結(jié)構(gòu),完成定義輸入層變量后,構(gòu)建隱層1,定義了兩個(gè)Variable,weights表示連接權(quán)重,其形狀為[784,2000],biases表示偏置量,形狀為[2000]。在隱層2中,weights形狀為[2000,100],biases形狀為[100]。輸出層weights形狀為[100,10],biases形狀為[10],所有權(quán)重均初始化為0?;谏厦娴臋?quán)重和偏置量值,初始使用sigmoid激活函數(shù)連接各層。在確定好模型各層結(jié)構(gòu)和參數(shù)后,需要定義一個(gè)損失函數(shù)來(lái)設(shè)置對(duì)于誤差的計(jì)算方式,實(shí)驗(yàn)的初始設(shè)置為最小二乘法。最后調(diào)用training方法,傳入定義好的損失函數(shù)與學(xué)習(xí)率,為保險(xiǎn)起見(jiàn),初始學(xué)習(xí)率設(shè)置為0.2。TensorFlow提供的feed方法可以在運(yùn)行時(shí)向Graph輸入數(shù)據(jù)。在每一步訓(xùn)練過(guò)程中,數(shù)據(jù)并不是逐個(gè)供給,而是根據(jù)定義的batch大小按批次供給:

      batch_size=100

      n_batch=mnist.train.num_examples//batch_size

      對(duì)于這兩種模型,根據(jù)MNIST上的測(cè)試,決定采用性能最優(yōu)的batch大小100,優(yōu)化器選擇為批量梯度下降法(Batch Gradient Descent,簡(jiǎn)稱BGD),整個(gè)模型共迭代50次。

      在三隱含層的模型中, 隱含層神經(jīng)元分別設(shè)置為600,1800與200,其他設(shè)置采用與二隱含層模型相同的初始參數(shù)。

      2.1.3 性能分析

      監(jiān)視了兩種模型在迭代5 0 次中的正確率變化,為了觀測(cè)模型的擬合情況,在使用訓(xùn)練數(shù)據(jù)訓(xùn)練模型后,同時(shí)分別采用訓(xùn)練數(shù)據(jù)與測(cè)試數(shù)據(jù)行進(jìn)測(cè)試。對(duì)比兩種模型分別在訓(xùn)練集和測(cè)試集上的效果,發(fā)現(xiàn)訓(xùn)練數(shù)據(jù)的測(cè)試效果與模型沒(méi)有見(jiàn)過(guò)的測(cè)試數(shù)據(jù)效果差異相當(dāng)微小,一般沒(méi)有超出2 %, 因此可以認(rèn)定, 全連接的神經(jīng)網(wǎng)絡(luò)在MNIST數(shù)據(jù)集上能很好的完成手寫字符的識(shí)別任務(wù),且擬合情況相當(dāng)優(yōu)異。通過(guò)對(duì)比,文章認(rèn)為三隱含層模型更具有潛力。

      2.2 卷積神經(jīng)網(wǎng)絡(luò)

      當(dāng)面對(duì)圖像處理的實(shí)際應(yīng)用,傳統(tǒng)的全連接B P 神經(jīng)網(wǎng)絡(luò)的缺點(diǎn)顯而易見(jiàn),需要將整幅圖像作為輸入數(shù)據(jù),由模型讀取,隨著圖像的大小增加,對(duì)應(yīng)的輸入節(jié)點(diǎn)也因此增加,同樣的,隱含層節(jié)點(diǎn)也必不可少的增加,因此全局的參數(shù)數(shù)量變得十分龐大,導(dǎo)致消耗大量的計(jì)算資源。人們仿照人眼對(duì)于圖像的感知,發(fā)現(xiàn)識(shí)別圖像其實(shí)是由局部衍生到全體的過(guò)程,小范圍內(nèi)的圖像像素相關(guān)度高,全局中不同位置像素相關(guān)度低。所以,神經(jīng)單元并沒(méi)有必要對(duì)全局圖像進(jìn)行感知,只需要將局部作為輸入,在模型的后期將各個(gè)局部信息擬合在一起,這種方法就是卷積神經(jīng)網(wǎng)絡(luò)的核心思想:局部感受野[3]。

      2.2.1 模型結(jié)構(gòu)

      在卷積模型中,采用兩次卷積-池化交替,再鏈接到一層全連接層進(jìn)行輸出[4]。輸入同樣是28×28大小,第一次卷積中,卷積核采用5×5大小,輸出32張?zhí)卣鲌D,池化窗口采用2×2大小,步長(zhǎng)為2,方式為最大池化。第二次卷積窗口仍為5×5,輸出64張?zhí)卣鲌D,同樣采用步長(zhǎng)為,大小2×2的最大池化方式。隨后鏈接到各個(gè)單元的全連接層。

      文章依然在卷積模型的每一層加入了激活函數(shù)ReLU, 損失函數(shù)的選擇為交叉熵函數(shù),其中優(yōu)化器選擇了Adam Optimizer,學(xué)習(xí)率設(shè)置為0.01。考慮到卷積模型的訓(xùn)練時(shí)間較長(zhǎng),并且在實(shí)際應(yīng)用中的性能比較優(yōu)異,將迭代次數(shù)設(shè)置為15次。

      2.2.2 性能分析

      使用TensorFlow內(nèi)置的可視化工具tensor board跟蹤神經(jīng)網(wǎng)絡(luò)的整個(gè)訓(xùn)練過(guò)程中的信息,包括每一層權(quán)值與偏置的最大,最小與均值。來(lái)監(jiān)測(cè)模型的訓(xùn)練過(guò)程是否出現(xiàn)停滯或者參數(shù)爆炸等意外情況。在多次對(duì)卷積模型的訓(xùn)練后發(fā)現(xiàn),模型中的參數(shù)均以比較健康的方式變化,損失函數(shù)的收斂也處于一個(gè)比較穩(wěn)定的狀況,根據(jù)A d a m Optimizer的特性,將學(xué)習(xí)率降低了一個(gè)數(shù)量級(jí),設(shè)置為0.001。在卷積網(wǎng)絡(luò)中,將這些神經(jīng)單元隨機(jī)分配了約等于零的權(quán)值。權(quán)重可以表示為0.001×N(0,1),其中N(0,1)是均值為0,標(biāo)準(zhǔn)差為1的高斯分布。同樣利用均勻分布賦予權(quán)重初始值也是一個(gè)不錯(cuò)的選擇,雖然權(quán)重最終都會(huì)收斂到近似的數(shù)值,但在訓(xùn)練初期更加利于模型進(jìn)入收斂狀態(tài),而且避免了因?yàn)樯窠?jīng)元飽和引起的學(xué)習(xí)減速。

      圖1 卷積模型的損失函數(shù)與全鏈接模型的損失函數(shù)變化Fig.1 Variation of loss function of convolution model and full link model

      2.3 兩種神經(jīng)網(wǎng)絡(luò)的性能比較

      得益于Adam Optimizer的優(yōu)勢(shì),卷積模型的損失函數(shù)收斂速度十分快,并且相當(dāng)穩(wěn)定,而全連接模型中損失函數(shù)在初期雖然下降速度也相當(dāng)快,但在隨后的訓(xùn)練中劇烈震蕩,即使總體處于一個(gè)較低水平,這也導(dǎo)致了測(cè)試正確率的震蕩。如圖1所示。

      就正確率而言,兩種模型都達(dá)到了超過(guò)99%的水平,雖然全連接模型的迭代次數(shù)50遠(yuǎn)高于卷積模型的15次,但總體訓(xùn)練時(shí)間相當(dāng)。按訓(xùn)練時(shí)間比較,兩個(gè)模型都在前期迅速收斂,后續(xù)訓(xùn)練中,全連接版本的正確率略有震蕩,但大體不超過(guò)1%水平,卷積版本則更加平滑。

      3 結(jié)論

      以上兩種模型的使用還處在一個(gè)比較初級(jí)的階段,一是對(duì)比較簡(jiǎn)單的手寫數(shù)字進(jìn)行分類,二是數(shù)據(jù)集選取了這一領(lǐng)域的經(jīng)典數(shù)據(jù)集M NI S T,對(duì)于模型的泛化能力還有待測(cè)試。使用深度卷積網(wǎng)絡(luò)對(duì)EMNIST的測(cè)試也只是取得了一個(gè)比較平庸的水平。目前,世界范圍對(duì)手寫字符的識(shí)別已經(jīng)處于一個(gè)比較成熟的水平,對(duì)樣本質(zhì)量的要求逐漸降低,識(shí)別率逐漸增加,有關(guān)研究也深入到不同語(yǔ)言,不同個(gè)體的差異。雖然這里同樣取得了極高的正確率,但在時(shí)間與計(jì)算資源的消耗上仍有進(jìn)步空間,字母數(shù)字的混合甚至漢字?jǐn)?shù)據(jù)集上的改進(jìn)測(cè)試也是可以涉及的領(lǐng)域。

      猜你喜歡
      手寫像素卷積
      手寫比敲鍵盤更有助于學(xué)習(xí)和記憶
      趙運(yùn)哲作品
      藝術(shù)家(2023年8期)2023-11-02 02:05:28
      像素前線之“幻影”2000
      我手寫我心
      基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
      抓住身邊事吾手寫吾心
      “像素”仙人掌
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于集成學(xué)習(xí)的MINIST手寫數(shù)字識(shí)別
      電子制作(2018年18期)2018-11-14 01:48:08
      基于傅里葉域卷積表示的目標(biāo)跟蹤算法
      德惠市| 镇康县| 板桥市| 兴安盟| 黄石市| 黄大仙区| 柳河县| 蒙阴县| 新源县| 尼勒克县| 武清区| 孙吴县| 马鞍山市| 镇平县| 双柏县| 防城港市| 墨江| 巴中市| 岑溪市| 昌平区| 平山县| 布尔津县| 漳州市| 七台河市| 乌兰察布市| 霍邱县| 克东县| 靖宇县| 宜都市| 汝阳县| 荆州市| 石屏县| 台湾省| 常山县| 基隆市| 扎兰屯市| 华坪县| 和龙市| 安龙县| 宁国市| 张掖市|