亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于生成對抗網(wǎng)絡(luò)的手寫漢字生成方法研究

        2022-02-04 04:53:22楊光鍇
        河北省科學(xué)院學(xué)報 2022年6期

        楊光鍇

        (河北省科學(xué)院,河北 石家莊 050081)

        0 引言

        漢字作為世界上最古老的文字之一,距今已有數(shù)千年的歷史。計算機領(lǐng)域關(guān)于手寫漢字的研究主要集中在識別和生成兩個方面。作為模式識別應(yīng)用的一個重要領(lǐng)域,手寫漢字識別技術(shù)已有很大的發(fā)展。而手寫漢字生成的研究還處于不斷發(fā)展的階段。相較于英文字母和阿拉伯數(shù)字,漢字的手寫生成更為復(fù)雜和困難。漢字的字符數(shù)量巨大,總計數(shù)量可能有約十萬個,即便中國常用的漢字字符也有數(shù)千個之多,獲得全部漢字的手寫樣本是不現(xiàn)實的[1-3]。漢字的構(gòu)造結(jié)構(gòu)復(fù)雜,大部分漢字的筆畫數(shù)遠大于英文字母和數(shù)字,會在計算機學(xué)習(xí)漢字的結(jié)構(gòu)時造成更大困難。因此,如何通過自動學(xué)習(xí)特定風格的漢字樣本,進而擴展應(yīng)用到全部漢字之中,是研究的主要方向。

        近年來,深度學(xué)習(xí)迅速發(fā)展,在諸多領(lǐng)域取得了大量成果和應(yīng)用。2014年,Goodfellow等人[4]提出生成對抗網(wǎng)絡(luò)(GAN, Generative Adversarial Networks),這是一種無監(jiān)督學(xué)習(xí)方式生成數(shù)據(jù)的深度學(xué)習(xí)架構(gòu),是目前發(fā)展最為迅速的深度學(xué)習(xí)領(lǐng)域之一,在圖像生成等領(lǐng)域具有廣泛的適用性。GAN由生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò)構(gòu)成其主要網(wǎng)絡(luò)結(jié)構(gòu),生成網(wǎng)絡(luò)從潛在空間(Latent Space)中生成數(shù)據(jù),判別網(wǎng)絡(luò)對真實數(shù)據(jù)和生成網(wǎng)絡(luò)生成的數(shù)據(jù)進行判別真?zhèn)?,通過生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò)間的多次循環(huán),兩個網(wǎng)絡(luò)在對抗中不斷訓(xùn)練和提升。Radford等人[5]在GAN的基礎(chǔ)上提出DCGAN架構(gòu),可以有效地實現(xiàn)高質(zhì)量圖片生成,且具有很強的穩(wěn)定性和實用性。Isola 等人[6]提出了Pix2Pix模型,實現(xiàn)了對應(yīng)圖像的遷移轉(zhuǎn)換。Zhu等人[7]提出循環(huán)生成對抗網(wǎng)絡(luò)(Cycle-consistent Generative Adversarial Networks,CycleGAN),其使用條件更為寬泛,不需要像Pix2Pix使用成對的圖像,可用于圖像風格轉(zhuǎn)換、繪畫照片互轉(zhuǎn)等跨領(lǐng)域變換。本文采用CycleGAN模型方法,實現(xiàn)手寫漢字的生成。

        1 手寫漢字生成模型的構(gòu)建

        1.1 CycleGAN總體架構(gòu)

        圖1 CycleGAN整體結(jié)構(gòu)示意圖

        CycleGAN作為基于GAN思想產(chǎn)生的一種變體,由兩個GAN合作組成[8-10]。如圖1所示,X和Y分別代表不同類別的數(shù)據(jù),第一個GAN由生成網(wǎng)絡(luò)G和判別網(wǎng)絡(luò)DY組成,G用于從X類別數(shù)據(jù)生成Y類別數(shù)據(jù),DY用于判別Y類別數(shù)據(jù)真?zhèn)?;同理,第二個GAN由生成網(wǎng)絡(luò)F和判別網(wǎng)絡(luò)DX組成,F(xiàn)用于從Y類別數(shù)據(jù)生成X類別數(shù)據(jù),DX用于判別X類別數(shù)據(jù)真?zhèn)巍和F的目的是生成Y和X類別數(shù)據(jù),進而通過DY和DX的判別,達到模仿生成的目的[11-12]。

        1.2 模型的損失函數(shù)

        針對每一個GAN分別設(shè)定對應(yīng)的損失函數(shù)。由G和DY組成的GAN的損失函數(shù)為:

        LGAN(G,DY,X,Y)=Ey~Pdata(y)[logDY(y)]+Ex~Pdata(x)[log(1-DY(G(x)))]

        (1)

        由F和DX組成的GAN的損失函數(shù)為:

        LGAN(F,DX,X,Y)=Ex~Pdata(x)[logDX(x)]+Ey~Pdata(y)[log(1-DX(F(y)))]

        (2)

        以上采取的是傳統(tǒng)GAN的對抗損失,為增強手寫字體生成時模型訓(xùn)練的穩(wěn)定性,這里將log似然替換為使用平方差構(gòu)造對抗損失函數(shù)。原對抗損失函數(shù)修改為:

        LGAN(G,DY,X,Y)=Ey~Pdata(y)[(DY(y)-1)2]+Ex~Pdata(x)[DY(G(x))2]

        (3)

        LGAN(F,DX,X,Y)=Ex~Pdata(x)[(DX(x)-1)2]+Ey~Pdata(y)[DX(F(y))2]

        (4)

        圖2 循環(huán)一致性示意圖

        x→G(x)→F(G(x))≈x

        (5)

        反向循環(huán)同理:

        y→F(y)→G(F(y))≈y

        (6)

        這里使用L1范數(shù)計算循環(huán)一致性損失函數(shù),循環(huán)一致性損失函數(shù)為:

        Lcyc(G,F)=Ex~Pdata(x)[‖F(xiàn)(G(x))-x‖1]+Ey~Pdata(y)[‖G(F(y))-y‖1]

        (7)

        式中右側(cè)兩項分別對應(yīng)X和Y正反兩個方向情況。通過使用循環(huán)一致性損失函數(shù),能夠保證經(jīng)過G(F(y))和F(G(x))后生成的圖像與原圖像基本保持一致。

        完整的損失函數(shù)由對抗損失函數(shù)和循環(huán)一致性損失函數(shù)共同構(gòu)成:

        L(G,F,DX,DY)=LGAN(G,DY,X,Y)+LGAN(F,DX,X,Y)+λLcyc(G,F)

        (8)

        其中,引入超參數(shù)λ來控制循環(huán)一致性損失在全部損失中的的權(quán)重。最終的優(yōu)化問題轉(zhuǎn)換為求解損失函數(shù)的最小最大值問題:

        (9)

        1.3 生成網(wǎng)絡(luò)結(jié)構(gòu)

        生成網(wǎng)絡(luò)是一個自編碼網(wǎng)絡(luò),以X域或Y域圖片為輸入,輸出生成圖片。如圖3所示,生成網(wǎng)絡(luò)基本構(gòu)成由編碼器、解碼器和特征轉(zhuǎn)換器構(gòu)成。設(shè)置輸入圖片大小1通道112×112像素。將圖片輸入編碼器,經(jīng)特征轉(zhuǎn)換器轉(zhuǎn)換后,進入解碼器,返回生成圖像。編碼器包括3個卷積層(Conv),第一個卷積層步長(Stride)設(shè)置為1,其余設(shè)置為2,使用reLU作為激活函數(shù),通過卷積層進行下采樣,縮小圖片尺寸,增加通道數(shù)量到256??紤]到漢字生成問題相對于斑馬與馬互轉(zhuǎn)、卡通和實際場景互換等問題不同,漢字生成問題在色彩空間、結(jié)構(gòu)構(gòu)成上相對單一,因此減少CycleGAN原始模型的殘差塊數(shù)量,將特征轉(zhuǎn)換器中的殘差塊調(diào)整至4個。解碼器為2個轉(zhuǎn)置卷積層(Conv_Transpose)組成,步長(Stride)為2,使用reLU作為激活函數(shù),通過轉(zhuǎn)置卷積層進行上采樣,增大圖片尺寸,減少通道數(shù)量,最后通過1個卷積層,并以tanh為激活函數(shù),將圖片轉(zhuǎn)換回原始大小(1×112×112)。

        圖3 生成網(wǎng)絡(luò)結(jié)構(gòu)圖

        1.4 判別網(wǎng)絡(luò)結(jié)構(gòu)

        判別網(wǎng)絡(luò)為一個卷積神經(jīng)網(wǎng)絡(luò),但判別方式不是將圖片輸入最終映射為一個具體數(shù)值,而是采用PatchGAN設(shè)計,使用卷積將輸入圖片映射為N×N矩陣,使用矩陣來評價判別圖片,通過PatchGAN的每個感受野對應(yīng)于輸入中的一塊區(qū)域(原始CycleGAN模型為70×70),再將N×N矩陣的均值作為輸入圖片的最終判別結(jié)果。對于漢字生成這一特定問題,由于漢字結(jié)構(gòu)構(gòu)成上各個部分的大小一般在整個圖像的一半以內(nèi),采用的圖片像素也相對較小,因此對原有CycleGAN模型的PatchGAN進行調(diào)整,減小其感受野,縮減1個卷積層,將PatchGAN的判別區(qū)域大小調(diào)整為34×34。如圖4所示,調(diào)整后的CycleGAN模型主要由4個卷積層組成,接收真實和生成圖片,經(jīng)卷積層處理,最終返回一個(26,26,1)的張量,使用該張量判別是否為真實圖片。

        圖4 判別網(wǎng)絡(luò)結(jié)構(gòu)圖

        2 實驗與結(jié)果

        2.1 實驗數(shù)據(jù)集的選擇與處理

        實驗的基本思路是以標準漢字作為數(shù)據(jù)集X,以手寫漢字作為數(shù)據(jù)集Y,采用改進后的CycleGAN模型對其進行訓(xùn)練,達到生成手寫漢字目的。本文采用生成的仿宋標準字體圖片作為標準漢字數(shù)據(jù)集X,采用CASIA-HWDB1.1數(shù)據(jù)集[15]作為手寫漢字數(shù)據(jù)集Y。其中,CASIA-HWDB是由中科院自動化研究所在2007—2010年間收集,包含了1 020人書寫的脫機手寫中文單字樣本和手寫文本。本文使用的CASIA-HWDB1.1為手寫單字數(shù)據(jù)庫,由300位作者手寫而成,其中訓(xùn)練集包含240人,測試集包含60人,每位作者書寫我國漢字代碼標準GB2312-80中全部3 755個一級漢字。如圖5所示,對CASIA-HWDB1.1每名作者的單字圖片進行采集,并分析其像素大小,發(fā)現(xiàn)其圖片大小多為100×100像素左右,同時綜合考量網(wǎng)絡(luò)架構(gòu)、模型建立等因素,將手寫漢字圖片和仿宋標準字體圖片統(tǒng)一調(diào)整至112×112像素大小。在CASIA-HWDB1.1數(shù)據(jù)集中,選擇了原測試集第13位和第26位作者(后文所述作者均為原測試集作者)的手寫字體作為實驗對象。

        圖5 CASIA-HWDB1.1部分作者所寫單字像素大小分布

        2.2 實驗軟硬件與超參數(shù)設(shè)置

        實驗在 Windows 10 操縱系統(tǒng)下進行,編程語言Python3.7,編程環(huán)境Anaconda、Pycharm,使用深度學(xué)習(xí)框架Pytorch V1.2,CUDA10.0,采用Wisdom作為交互式可視化工具,硬件設(shè)備為處理器Intel(R)Core(TM)i5-6500CPU @ 3.2GHz,運行內(nèi)存4GB (RAM),顯卡NVIDIA GeForce 720。

        損失函數(shù)中循環(huán)一致性損失在全部損失中的權(quán)重λ設(shè)置為10。Batchsize設(shè)置為1,總計訓(xùn)練100 epoch,優(yōu)化器采用Adam算法,其中參數(shù)beta1和beta2分別設(shè)置為0.5和0.999,學(xué)習(xí)率lr設(shè)置為0.0002??紤]到漢字圖像具有具體的內(nèi)涵意義,訓(xùn)練時不采用圖片旋轉(zhuǎn)、翻轉(zhuǎn)等數(shù)據(jù)增強手段。從每位作者的手寫字體中,隨機選取200個圖片,同時一并挑選相應(yīng)的仿宋字體圖片用于訓(xùn)練。

        2.3 實驗結(jié)果評價

        圖6 CycleGAN損失函數(shù)曲線

        以訓(xùn)練第13位作者字體過程為例,圖6為其訓(xùn)練時的總

        體損失函數(shù)的變化曲線。可以看出,隨著訓(xùn)練的不斷深入,損失函數(shù)值由開始的較大值,在一定周期后逐漸收斂,函數(shù)值波動幅度逐漸變小,且基本趨于穩(wěn)定。

        從實驗結(jié)果看,生成的字體總體情況較好,將生成的漢字與原作者的手寫字體進行比對可以發(fā)現(xiàn),生成的字體能夠一定程度上體現(xiàn)出原作者的筆記樣式,如圖7所示。

        通過使用訓(xùn)練好的模型進行預(yù)測,也可對原3755個一級漢字之外的漢字進行模仿生成,如圖8所示,“鍇”“釗”兩字并不在原CASIA-HWDB1.1數(shù)據(jù)集中,也有較好的生成效果。

        圖7 標準仿宋漢字、原手寫漢字和生成漢字對比

        圖8 標準仿宋漢字和一級漢字之外的生成漢字對比

        3 結(jié)語

        本文提出了一種基于生成對抗網(wǎng)絡(luò)的手寫漢字生成方法,通過使用標準漢字和手寫漢字構(gòu)建CycleGAN模型,實現(xiàn)二者之間的相互轉(zhuǎn)換。經(jīng)過實驗驗證,本方法生成的手寫漢字使用的數(shù)據(jù)量相對較少,具有比較高的識別度,但該方法還存在一定局限性。一是訓(xùn)練時間要求較長,且單次實驗僅能夠訓(xùn)練一個作者的手寫字體。二是生成的手寫漢字缺乏客觀評判的標準,對于生成的漢字,評價基本依靠感性的肉眼鑒別。三是生成的漢字與原標準漢字(仿宋)還有很多相近之處,如連筆等方面沒有得到很好的體現(xiàn),但如果為了實現(xiàn)更好的效果而冒然增加訓(xùn)練周期,可能會出現(xiàn)模式崩潰(Mode Collapse)現(xiàn)象。

        亚洲一区视频中文字幕| 亚洲欧洲巨乳清纯| 高清国产日韩欧美| 精品日产一区2区三区| 人妖一区二区三区视频| 欧美人与禽2o2o性论交| 又污又黄又无遮挡的网站| 亚洲AV无码AV色| 亚洲女同av在线观看| 乱码av麻豆丝袜熟女系列| 久久精品国产亚洲av高清色欲| 自慰高潮网站在线观看| 桃色一区一区三区蜜桃视频| 色欲人妻综合aaaaa网| 日韩一线无码av毛片免费| 久草视频在线这里只有精品| 丝袜美腿福利视频在线| 日韩精品内射视频免费观看| 国产亚洲精品自在久久蜜tv| 在线看片免费人成视久网不卡| 91久久精品国产综合另类专区| 精品9e精品视频在线观看| 久久久久亚洲AV无码专| 一区二区三区日本美女视频| 国产av熟女一区二区三区| 亚洲va在线∨a天堂va欧美va| 玖玖资源站无码专区| 91国产精品自拍在线观看| 日韩欧美成人免费观看| 五月天欧美精品在线观看| 人妻少妇粉嫩av专区一| 国产乱子伦精品无码专区| 亚洲精品一区二区三区大桥未久 | 丝袜美腿福利视频在线| 国模丽丽啪啪一区二区| 国产精品成人午夜久久| 国产av一区二区三区天美| 黄桃av无码免费一区二区三区| 福利视频黄| 午夜在线观看一区二区三区四区| 久久亚洲中文字幕精品一区|