宋倩 羅富貴
摘? 要:針對(duì)手寫(xiě)體數(shù)據(jù)集在卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練時(shí)分別使用sigmoid、tanh、relu與mish激活函數(shù)進(jìn)行實(shí)驗(yàn),對(duì)這四種激活函數(shù)下訓(xùn)練集誤差值收斂曲線以及測(cè)試集精度曲線進(jìn)行算法結(jié)果分析,實(shí)驗(yàn)結(jié)果表明,mish激活函數(shù)在手寫(xiě)體數(shù)據(jù)集上進(jìn)行卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練時(shí)效果更佳,而同樣得出不同的訓(xùn)練數(shù)據(jù)集、激活函數(shù)的選擇會(huì)影響算法對(duì)數(shù)據(jù)的擬合度和神經(jīng)網(wǎng)絡(luò)的收斂性。
關(guān)鍵詞:手寫(xiě)體數(shù)字識(shí)別;mish激活函數(shù);卷積神經(jīng)網(wǎng)絡(luò);mnist數(shù)據(jù)集
中圖分類(lèi)號(hào):TP391.4;TP183? 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2023)04-0095-03
Comparative Study of Activation Functions Based on Handwritten Digital Recognition
SONG Qian, LUO Fugui
(Academy of Big Data and Computer Science, Hechi University, Hechi? 546300, China)
Abstract: For the training of Convolution Neural Network for handwritten data sets, sigmoid, tanh, relu and mish activation functions are used to conduct experiments, and the algorithm results are analyzed for the convergence curve of the error value of the training set and the accuracy curve of the test set under these four activation functions. The experimental results show that the mish activation function performs better in the training of Convolution Neural Network on handwritten data sets. It is also concluded that the selection of different training data sets and activation functions will affect the fitting degree of the algorithm to the data and the convergence of the neural network.
Keywords: handwritten digital recognition; mish activation function; Convolutional Neural Network; mnist dataset
0? 引? 言
近些年,隨著深度學(xué)習(xí)的大火,特別是計(jì)算機(jī)視覺(jué)有了漸進(jìn)式發(fā)展,我們正邁入了數(shù)字化時(shí)代。在該時(shí)代背景下,手寫(xiě)體數(shù)字識(shí)別的研究仍十分重要。盡管當(dāng)下手寫(xiě)體數(shù)字識(shí)別技術(shù)的研究正日趨完善,其識(shí)別優(yōu)化準(zhǔn)確率,還是相對(duì)有提升的空間。特別是在生活中數(shù)字與銀行卡密碼、賬戶(hù)、賬號(hào)以及身份證號(hào)息息相關(guān),故而手寫(xiě)數(shù)字識(shí)別準(zhǔn)確率還是要求極高。此外于其他情景下的文字識(shí)別、圖像識(shí)別也是有一定的借鑒意義。因此研究高識(shí)別率的手寫(xiě)數(shù)字識(shí)別算法仍然至關(guān)重要[1]。在識(shí)別手寫(xiě)體數(shù)字時(shí),不僅識(shí)別算法的設(shè)計(jì)是決定性影響,激活函數(shù)的選擇更是不可忽略的一環(huán)。深度學(xué)習(xí)算法有很多激活函數(shù),其任意一個(gè)激活函數(shù)并非都是萬(wàn)能的,所以選擇契合應(yīng)用的激活函數(shù)尤為關(guān)鍵。
1? 激活函數(shù)
卷積神經(jīng)網(wǎng)絡(luò)中的激活函數(shù)是輸入信號(hào)與輸出信號(hào)之間的連接轉(zhuǎn)換器,其能夠?qū)⒏鬏斎胄盘?hào)的總和轉(zhuǎn)換為各輸出信號(hào)的總和[2]。實(shí)際輸入信號(hào)在計(jì)算時(shí),僅通過(guò)線性函數(shù)是無(wú)法解決分類(lèi)問(wèn)題,生活中各類(lèi)數(shù)據(jù)并非是線性可分的,因而要解決這類(lèi)數(shù)據(jù),無(wú)非就是引入非線性因素。為了充分發(fā)揮卷積神經(jīng)網(wǎng)絡(luò)疊加層的優(yōu)勢(shì),解決線性模型的表達(dá)和分類(lèi)能力不佳的問(wèn)題,激活函數(shù)必然要用非線性函數(shù)。
激活函數(shù)將非線性模型引入神經(jīng)網(wǎng)絡(luò),增強(qiáng)了神經(jīng)網(wǎng)絡(luò)的模擬和學(xué)習(xí)能力[3]。激活函數(shù)在訓(xùn)練復(fù)雜類(lèi)型數(shù)據(jù)中起著非常重要的作用。常用的激活函數(shù)有sigmoid、tanh、relu、mish,四種激活函數(shù)的曲線圖如圖1所示。
1.1? sigmoid激活函數(shù)
在手寫(xiě)數(shù)字識(shí)別過(guò)程中,文獻(xiàn)[4]采用sigmoid激活函數(shù)。sigmoid函數(shù)的表達(dá)式為:
(1)
函數(shù)值F(x)范圍為(0,1),當(dāng)x趨于負(fù)無(wú)限時(shí),F(xiàn)(x)無(wú)限逼近0,當(dāng)x趨于正無(wú)限時(shí),F(xiàn)(x)無(wú)限逼近1。sigmoid函數(shù)是連續(xù)函數(shù),故函數(shù)處處可導(dǎo)。但x趨向±∞時(shí),F(xiàn)(x)變化卻很小,梯度極易丟失,適用于二分類(lèi)輸出問(wèn)題[4,5]。
1.2? tanh激活函數(shù)
雙曲正切函數(shù)tanh與sigmoid函數(shù)極為相似。文獻(xiàn)[6]正是采用此tanh激活函數(shù),其表達(dá)式為:
(2)
從圖1曲線可看出,tanh函數(shù)取值范圍為[-1, 1],而sigmoid函數(shù)的取值非負(fù),導(dǎo)致模型的收斂速度會(huì)顯著變慢,與之相比,tanh是0均值,故可加快模型收斂速度,所以在實(shí)踐中tanh函數(shù)會(huì)比sigmoid函數(shù)更常用[6]。
1.3? relu激活函數(shù)
relu激活函數(shù)是目前應(yīng)用比較多的一個(gè)函數(shù),它的公式為:
(3)
該公式可以拆分為:
(4)
從上圖1曲線圖可發(fā)現(xiàn),relu激活函數(shù)更像是求最大值的分段函數(shù)。當(dāng)x在小于或等于0范圍內(nèi)時(shí),relu(x)值總是0,表示relu函數(shù)沒(méi)有激活;當(dāng)x值大于0時(shí),函數(shù)值是x本身,這表明relu正式激活函數(shù)。曲線圖中relu函數(shù)沒(méi)有飽和區(qū),因此激活函數(shù)可以克服梯度消失的問(wèn)題,從而加快模型訓(xùn)練的時(shí)間。當(dāng)輸入值x為負(fù)時(shí),relu函數(shù)不被激活,這意味著只有一些神經(jīng)元同時(shí)被激活,使網(wǎng)絡(luò)相對(duì)稀疏[7]。
1.4? mish激活函數(shù)
目前,激活函數(shù)sigmoid、relu被廣泛應(yīng)用于神經(jīng)網(wǎng)絡(luò),但兩者各有不足,sigmoid函數(shù)容易產(chǎn)生梯度下降消失現(xiàn)象;由于relu的負(fù)半軸為零,所以正半軸輸入與輸出相等,針對(duì)梯度下降的消散問(wèn)題優(yōu)于sigmoid,但權(quán)重值無(wú)法更新的現(xiàn)象會(huì)存在[7,8]。為了彌補(bǔ)前兩者激活的不足,并且緩解改善梯度下降和消失的現(xiàn)象,本文使用mish激活函數(shù)可以有效提升模型識(shí)別精準(zhǔn)度,其公式為:
(5)
mish它是一條光滑的曲線。光滑的激活函數(shù)允許更好的信息深入神經(jīng)網(wǎng)絡(luò),從而獲得更好的準(zhǔn)確性和泛化;負(fù)值不被完全截?cái)?,允許小的負(fù)梯度流入[9,10]。此外,激活函數(shù)無(wú)邊界的特點(diǎn)避免了飽和等問(wèn)題,sigmoid激活函數(shù)通常存在梯度飽和問(wèn)題,梯度在兩側(cè)極限接近1,mish激活函數(shù)巧妙地避免了這一點(diǎn)。另外,由于mish函數(shù)也保證了每個(gè)點(diǎn)的平滑性,因此它能提升訓(xùn)練模型的穩(wěn)定性和準(zhǔn)確性。
2? 實(shí)驗(yàn)結(jié)果及分析
2.1? 手寫(xiě)體數(shù)據(jù)集
本文使用的mnist數(shù)據(jù)集是廣泛應(yīng)用的手寫(xiě)體數(shù)據(jù)集。該數(shù)據(jù)集中由6萬(wàn)個(gè)訓(xùn)練集圖像樣本和1萬(wàn)個(gè)測(cè)試集真實(shí)數(shù)字樣本兩部分構(gòu)成。第1列是標(biāo)簽,即0~9手寫(xiě)的阿拉伯?dāng)?shù)字的圖像,第2列到第784列是第1列手寫(xiě)的阿拉伯?dāng)?shù)字的像素值[11]。
通過(guò)構(gòu)建一個(gè)卷積神經(jīng)網(wǎng)絡(luò)模型用于對(duì)手寫(xiě)體數(shù)字進(jìn)行分類(lèi),其網(wǎng)絡(luò)結(jié)構(gòu)包括兩次卷積conv2d_1和conv2d_2。每個(gè)卷積包括卷積層、激活函數(shù)層和池化層;兩次池化和三次全連接,通過(guò)mish激活函數(shù)和sotfmax函數(shù)結(jié)合,采用dropout防止過(guò)擬合,建立平坦層來(lái)優(yōu)化結(jié)構(gòu)。其各層網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
2.2? 結(jié)果分析
實(shí)驗(yàn)采用的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的數(shù)據(jù)整理至表1中,首次卷積運(yùn)算會(huì)輸出16個(gè)28×28的數(shù)字圖像,得到416個(gè)訓(xùn)練參數(shù),然后經(jīng)過(guò)首個(gè)池化層操作,首次縮減采樣,由16個(gè)28×28縮小為16個(gè)14×14的圖像,繼續(xù)執(zhí)行卷積操作,由16個(gè)圖像變?yōu)?6個(gè)圖像,卷積運(yùn)算不會(huì)改變圖像大小,故而圖像還是14×14的圖像,繼續(xù)經(jīng)歷池化層操作,且加入dropout避免過(guò)度擬合,每次訓(xùn)練迭代時(shí),隨機(jī)放棄25%的神經(jīng)元,同時(shí)建立Flatten層,將36個(gè)7×7的圖像展平為1維向量,執(zhí)行2次激活函數(shù)的全連接層,中間繼續(xù)加入dropout避免過(guò)度擬合[12]。
本文實(shí)驗(yàn)是將mnist數(shù)據(jù)集中的數(shù)據(jù)劃為80%用以訓(xùn)練和20%用以測(cè)試驗(yàn)證,分別用acc表示訓(xùn)練集準(zhǔn)確率,loss表示訓(xùn)練集損失率,val_acc表示測(cè)試集準(zhǔn)確率,val_loss表示測(cè)試集損失率,實(shí)驗(yàn)中數(shù)據(jù)集訓(xùn)練周期epoch為50,每個(gè)訓(xùn)練周期使用300項(xiàng)樣本數(shù)據(jù),圖3是mish激活函數(shù)在整個(gè)訓(xùn)練集上完成訓(xùn)練時(shí)的損失函數(shù)收斂曲線,可發(fā)現(xiàn):mish激活函數(shù)在epoch訓(xùn)練前期,loss值急劇下降;整個(gè)訓(xùn)練過(guò)程不斷迭代,loss值的下降速度逐漸平穩(wěn),在波動(dòng)幅度不大的情形下近似趨于收斂。與此同時(shí),在測(cè)試集上進(jìn)行評(píng)估其準(zhǔn)確率為99.45%,如圖4所示。
圖5是四種激活函數(shù)所得到的訓(xùn)練集誤差曲線對(duì)比圖,由圖可知,mish激活函數(shù)誤差率最小,下降后損失函數(shù)收斂曲線平穩(wěn),在epoch前期中,所有激活函數(shù)的損失曲線相差不大,但隨著迭代次數(shù)增加訓(xùn)練集損失值最先下降且處于最低,由圖可發(fā)現(xiàn)mish函數(shù)的誤差值較小,訓(xùn)練的性能更穩(wěn)定,在手寫(xiě)數(shù)字識(shí)別時(shí)采用mish激活函數(shù)相對(duì)精度更高。
從圖6中圖中可知,mish激活函數(shù)精度曲線處于最高,而sigmoid函數(shù)的精度曲線處于劣勢(shì),是四者中的精確率最低。結(jié)合圖5中的訓(xùn)練集誤差圖像和mish公式,發(fā)現(xiàn)選擇mish激活函數(shù)時(shí),該算法對(duì)數(shù)據(jù)的適合度較好,預(yù)測(cè)的精度率更優(yōu)。間接說(shuō)明激活函數(shù)的選擇尤為重要,選擇好會(huì)增加整個(gè)算法的效能。
3? 結(jié)? 論
本文對(duì)四種不同的激活函數(shù)進(jìn)行了分析,即選擇sigmoid、tanh、relu、mish函數(shù),mish激活函數(shù)對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和預(yù)測(cè)優(yōu)于其他三種。而在手寫(xiě)體數(shù)字識(shí)別模型進(jìn)行訓(xùn)練時(shí),可知樣本的真實(shí)值和預(yù)測(cè)值的差異,既與樣本自身信息密不可分,還與采用的激活函數(shù)相關(guān),應(yīng)根據(jù)具體的應(yīng)用環(huán)境選擇合適的激活函數(shù)。
參考文獻(xiàn):
[1] 于文生,張軒雄.改進(jìn)誤差反向傳播法神經(jīng)網(wǎng)絡(luò)對(duì)手寫(xiě)數(shù)字識(shí)別 [J].電子設(shè)計(jì)工程,2021,29(23):20-24.
[2] 高宇鵬,胡眾義.基于Keras手寫(xiě)數(shù)字識(shí)別模型的改進(jìn) [J].計(jì)算技術(shù)與自動(dòng)化,2021,40(2):164-169.
[3] 楊善敏.面向異質(zhì)人臉識(shí)別的域不變特征學(xué)習(xí)方法研究 [D].成都:四川大學(xué),2021.
[4] QIAO J,WANG G,LI W,et al. An adaptive deep Q-learning strategy for handwriteen digit recognition [J].Neural Networks the Official Jourrnal of the International Netural Network Society,2018,107:61-71.
[5] 宋曉茹,吳雪,高嵩,等.基于深度神經(jīng)網(wǎng)絡(luò)的手寫(xiě)數(shù)字識(shí)別模擬研究 [J].科學(xué)技術(shù)與工程,2019,19(5):193-196.
[6] 楊永翌.基于Keras框架MNIST數(shù)據(jù)集識(shí)別方法研究 [J].汽車(chē)實(shí)用技術(shù),2019(23):101-103.
[7] 郭夢(mèng)潔,楊夢(mèng)卓,馬京九.基于Keras框架MNIST數(shù)據(jù)集識(shí)別模型[J].現(xiàn)代信息科技,2019,3(14):18-23.
[8] 郭曉敏,黃新.改進(jìn)YOLOv3算法在肺結(jié)節(jié)檢測(cè)中的應(yīng)用 [J].激光雜志,2022,43(5):207-213.
[9] 樊繼慧,滕少華,金弘林.基于改進(jìn)Sigmoid卷積神經(jīng)網(wǎng)絡(luò)的手寫(xiě)體數(shù)字識(shí)別 [J].計(jì)算機(jī)科學(xué),2022,49(12):244-249.
[10] 董慶偉.基于Keras深度學(xué)習(xí)算法在結(jié)構(gòu)化數(shù)據(jù)分類(lèi)中的應(yīng)用研究 [J].佳木斯大學(xué)學(xué)報(bào):自然科學(xué)版,2022,40(4):47-49+54.
[11] 郝雅嫻,孫艷蕊.基于手寫(xiě)體數(shù)字識(shí)別的損失函數(shù)對(duì)比研究 [J].電子技術(shù)與軟件工程,2022(6):203-206.
[12] 儲(chǔ)匯,宋陳,汪晨燦.基于Keras卷積神經(jīng)網(wǎng)絡(luò)的多人臉識(shí)別抗干擾研究 [J].洛陽(yáng)理工學(xué)院學(xué)報(bào):自然科學(xué)版,2022,32(1):62-67.
作者簡(jiǎn)介:宋倩(1995—),女,漢族,山東萊陽(yáng)人,助教,碩士,研究方向:深度強(qiáng)化學(xué)習(xí)、圖像識(shí)別;羅富貴(1984—),女,壯族,廣西來(lái)賓人,副教授,碩士,研究方向:數(shù)字圖像處理、模式識(shí)別。
收稿日期:2022-10-07
基金項(xiàng)目:2022年度廣西中青年教師科研基礎(chǔ)能力提升項(xiàng)目(2022KY0606);河池學(xué)院2021年科研啟動(dòng)項(xiàng)目(2021GCC013);2021年度廣西中青年教師科研基礎(chǔ)能力提升項(xiàng)目(2021KY0620,2021KY0615)