劉 雪,劉靜偉,趙 瑩,薛 媛
(西安工程大學(xué) 服裝與藝術(shù)設(shè)計(jì)學(xué)院,陜西 西安 710048)
隨著生活水平的提高,人們?cè)絹?lái)越注重個(gè)性的表達(dá)。中國(guó)歷史上,每個(gè)時(shí)代特有的文化屬性造就了不同的時(shí)代特征,創(chuàng)造出很多經(jīng)典的風(fēng)格表達(dá)[1],民族文化圖案作為風(fēng)格的載體,是中華民族的寶貴財(cái)富,對(duì)民族文化圖案進(jìn)行語(yǔ)義標(biāo)注與分析,是挖掘其文化價(jià)值,實(shí)現(xiàn)文化圖案數(shù)字化深入研究以及進(jìn)行再創(chuàng)作與應(yīng)用的基礎(chǔ)[2]。
傳統(tǒng)的方法在圖像標(biāo)注領(lǐng)域已經(jīng)有了一定進(jìn)展,但其需要人工選擇特征,會(huì)造成信息缺失,存在標(biāo)注精度不夠、召回率低的問(wèn)題[3]。卷積神經(jīng)網(wǎng)絡(luò)具有圖像特征自學(xué)習(xí)方面的優(yōu)勢(shì),近年來(lái)已經(jīng)被廣泛應(yīng)用在計(jì)算機(jī)視覺領(lǐng)域[4-6],取得了令人滿意的實(shí)際效果[7]。卷積神經(jīng)網(wǎng)絡(luò)模型具有較強(qiáng)的泛化能力并且能夠通過(guò)池化運(yùn)算降低網(wǎng)絡(luò)的空間維度,在圖像分類方面優(yōu)于其他神經(jīng)網(wǎng)絡(luò)模型[8],多位學(xué)者基于卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行了紋樣自動(dòng)分類標(biāo)注,其中文獻(xiàn)[8-9]對(duì)瑤族紋樣符號(hào)進(jìn)行了分類標(biāo)注,文獻(xiàn)[10]對(duì)壯族紋樣中的元素類別進(jìn)行了自動(dòng)標(biāo)注,賈曉軍等對(duì)藍(lán)色印花布進(jìn)行分類標(biāo)注[11],但以上研究均針對(duì)紋樣本體進(jìn)行了分類標(biāo)注,對(duì)于紋樣風(fēng)格自動(dòng)標(biāo)注的研究較少。本文自建的紋樣風(fēng)格數(shù)據(jù)集中,每個(gè)紋樣圖像包含多個(gè)風(fēng)格語(yǔ)義標(biāo)簽,本質(zhì)上可以把其看作一個(gè)多標(biāo)簽學(xué)習(xí)的問(wèn)題[12],即對(duì)于給定的包含多個(gè)語(yǔ)義標(biāo)簽的圖像,計(jì)算機(jī)在通過(guò)一定的操作后,對(duì)其完成多個(gè)標(biāo)簽的標(biāo)注[13]。很多研究者直接將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用在多標(biāo)簽分類任務(wù)上[14-16],AlexNet[17]是近年來(lái)效果較好的一個(gè)卷積神經(jīng)網(wǎng)絡(luò)模型,許多之后提出的方法[18-19]也是在其基礎(chǔ)上進(jìn)行的研究與改進(jìn),并在其他領(lǐng)域?qū)崿F(xiàn)了圖像多標(biāo)簽語(yǔ)義自動(dòng)標(biāo)注,對(duì)本研究具有參考意義。文獻(xiàn)[20]實(shí)現(xiàn)了電影風(fēng)格多標(biāo)簽自動(dòng)標(biāo)注,其中視覺表示部分也構(gòu)建了類似于AlexNet的卷積神經(jīng)網(wǎng)絡(luò),也可嘗試將此方法應(yīng)用在紋樣風(fēng)格多標(biāo)簽自動(dòng)標(biāo)注上。
基于此,本文以卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),對(duì)AlexNet模型結(jié)構(gòu)及參數(shù)進(jìn)行調(diào)整,并將文獻(xiàn)[20]中提出的方法應(yīng)用在紋樣風(fēng)格自動(dòng)標(biāo)注方面,提出了2種紋樣風(fēng)格多標(biāo)簽自動(dòng)標(biāo)注模型,并在自建的紋樣風(fēng)格數(shù)據(jù)集上進(jìn)行訓(xùn)練與測(cè)試,通過(guò)量化評(píng)估選取最優(yōu)模型。
本文采用的2種模型均參照AlexNet結(jié)構(gòu),在其基礎(chǔ)上進(jìn)行調(diào)整。將2種模型分別命名為Model-1、Model-2,模型結(jié)構(gòu)見圖1。
圖 1 模型結(jié)構(gòu)Fig.1 Model structure
1.2.1 Model-1模型結(jié)構(gòu) Model-1在AlexNet結(jié)構(gòu)基礎(chǔ)上進(jìn)行調(diào)整,首先經(jīng)過(guò)5個(gè)卷積層獲取圖像視覺特征,之后經(jīng)過(guò)4個(gè)全連接層,最后,根據(jù)多標(biāo)簽損失函數(shù)得到多個(gè)標(biāo)注標(biāo)簽。模型的參數(shù)與AlexNet模型基本類似,對(duì)其中部分參數(shù)進(jìn)行試驗(yàn)和分析,做出以下修改:①在AlexNet模型結(jié)構(gòu)基礎(chǔ)上將5個(gè)卷積層的卷積核個(gè)數(shù)縮小至原來(lái)的一半;②修改了全連接層,增加了一個(gè)全連接層,全連接層輸出大小為4 608、256、128、9,輸出層節(jié)點(diǎn)為9個(gè)節(jié)點(diǎn),即對(duì)應(yīng)自建紋樣風(fēng)格數(shù)據(jù)集的9個(gè)語(yǔ)義風(fēng)格標(biāo)簽;③用Sigmoid激活函數(shù)替換AlexNet中的softmax激活函數(shù)。AlexNet最后一層選用的softmax激活函數(shù)適用于多類圖像分類,各類概率依賴于其他類,當(dāng)一個(gè)類的概率增大時(shí),另一個(gè)類的概率則會(huì)減少。但是對(duì)于多標(biāo)簽問(wèn)題,一個(gè)圖像可以有多個(gè)標(biāo)簽,希望概率彼此獨(dú)立,此時(shí)使用softmax激活函數(shù)并不合適,而Sigmoid激活函數(shù)可以在內(nèi)部創(chuàng)建n個(gè)模型(其中n為總類數(shù)),每個(gè)類可以作為一個(gè)模型,從而可以預(yù)測(cè)出每個(gè)類的概率。
1.2.2 Model-2模型結(jié)構(gòu) 文獻(xiàn)[20]中視覺表示部分構(gòu)建了類似于AlexNet的卷積神經(jīng)網(wǎng)絡(luò)。模型首先經(jīng)過(guò)4個(gè)卷積層,每個(gè)卷積層后接一個(gè)最大池化層,得到圖像的視覺特征,其中4個(gè)卷積層中的卷積核大小均為5,卷積核個(gè)數(shù)分別為16、32、64、64,最大池化層中池化大小均為2。之后經(jīng)過(guò)4個(gè)全連接層,使用Dropout防止過(guò)擬合,概率設(shè)置為0.5,全連接層輸出大小為9 216、128、64、9。輸出層輸出節(jié)點(diǎn)為9個(gè)節(jié)點(diǎn),對(duì)應(yīng)自建紋樣數(shù)據(jù)集的9個(gè)風(fēng)格語(yǔ)義標(biāo)簽,使用Sigmoid激活函數(shù),最后根據(jù)多標(biāo)簽排名損失函數(shù)得到多個(gè)標(biāo)簽。
數(shù)據(jù)集為本文自建的清代服飾植物紋樣風(fēng)格數(shù)據(jù)集,數(shù)據(jù)集中紋樣圖像主要是從服飾上進(jìn)行摳取與預(yù)處理。數(shù)據(jù)集中包含3 000張大小為256×256的彩色紋樣圖像,以及明麗、素雅、繁縟、簡(jiǎn)潔、靈動(dòng)、飽滿、莊重、華麗、質(zhì)樸等9個(gè)風(fēng)格語(yǔ)義標(biāo)簽,平均每個(gè)紋樣圖像包含語(yǔ)義標(biāo)簽2.35個(gè),按8∶2的比例劃分訓(xùn)練集與測(cè)試集。將數(shù)據(jù)集轉(zhuǎn)換為結(jié)構(gòu)化格式,包含所有訓(xùn)練圖像的名稱及其對(duì)應(yīng)的真實(shí)標(biāo)簽,建立圖像與圖像對(duì)應(yīng)標(biāo)簽之間的關(guān)系。其次對(duì)圖像的標(biāo)注標(biāo)簽進(jìn)行預(yù)處理,圖像對(duì)應(yīng)的所有風(fēng)格類型一共有9種可能性,因此對(duì)于每個(gè)圖像,將有9個(gè)目標(biāo),即紋樣圖像是否屬于該類型,這9個(gè)目標(biāo)值為0或1,并轉(zhuǎn)換為紋樣圖像的目標(biāo)數(shù)組。
實(shí)驗(yàn)環(huán)境為:Linux操作系統(tǒng),GPU型號(hào)為Tesla T4,顯存容量為15 GiB。代碼的實(shí)現(xiàn)均基于Keras框架,采用序貫?zāi)P?。首先在Sequential的輸入層需要明確一個(gè)關(guān)于輸入數(shù)據(jù)shape的參數(shù),之后隱藏層便可以自動(dòng)推導(dǎo)出中間數(shù)據(jù)的shape。輸出層等于風(fēng)格類型的數(shù)量,所以有9個(gè)神經(jīng)元。2個(gè)模型在模型編譯時(shí)均使用binary_crossentropy作為損失函數(shù)。為了判斷學(xué)習(xí)狀態(tài),從訓(xùn)練集中隨機(jī)選擇600張圖像作為驗(yàn)證集,分別對(duì)2個(gè)模型參數(shù)進(jìn)行多次實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明Model-1使用ADAM作為優(yōu)化器、迭代的大小(batch_size)設(shè)置為32、迭代次數(shù)(epoch)設(shè)置為50、學(xué)習(xí)率設(shè)置為0.01時(shí)模型訓(xùn)練效果較好;同樣Model-2模型使用與Model-1相同的參數(shù)時(shí),模型訓(xùn)練效果較好。模型訓(xùn)練完成后,將模型分別保存為Model-1、Model-2,在測(cè)試時(shí)進(jìn)行調(diào)用。
模型的客觀評(píng)價(jià)指標(biāo)采用文獻(xiàn)[21]的評(píng)價(jià)方法,采用平均準(zhǔn)確率P、平均召回率R以及準(zhǔn)確率和召回率的調(diào)和平均數(shù)F1作為實(shí)驗(yàn)結(jié)果的評(píng)價(jià)標(biāo)準(zhǔn),其中F1值越大,圖像標(biāo)注性能越好。為了分析標(biāo)注性能,對(duì)測(cè)試集中每一個(gè)標(biāo)簽求平均值得到平均準(zhǔn)確率、平均召回率;P、R、F1值的計(jì)算公式為
(1)
(2)
F1=2PR/(P+R)
(3)
加載訓(xùn)練好的模型在測(cè)試集上進(jìn)行預(yù)測(cè),Model-1與Model-2在模型測(cè)試階段的實(shí)現(xiàn)一致。測(cè)試完成后分別計(jì)算2個(gè)模型預(yù)測(cè)結(jié)果的P、R、F1值,表1為2種標(biāo)注方法的實(shí)驗(yàn)結(jié)果。
表 1 各圖像標(biāo)注方法實(shí)驗(yàn)結(jié)果
表1中Model-1評(píng)估結(jié)果最優(yōu),因此選擇Model-1作為本文的紋樣風(fēng)格自動(dòng)標(biāo)注模型。圖2為Model-1模型的部分預(yù)測(cè)結(jié)果。模型輸出為預(yù)測(cè)的概率向量,表示測(cè)試樣本與9類風(fēng)格語(yǔ)義相關(guān)聯(lián)的概率,因?yàn)闃颖酒骄鶚?biāo)注詞的個(gè)數(shù)是2.35,向上取整,所以選擇3個(gè)概率輸出值最高的標(biāo)注詞作為每個(gè)測(cè)試樣本的標(biāo)注結(jié)果。圖2(a)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為素雅(0.997)、簡(jiǎn)潔(0.91)、靈動(dòng)(0.783),圖2(b)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為飽滿(1.0)、莊重(1.0)、華麗(1.0),圖2(c)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為明麗(0.987)、飽滿(0.827)、質(zhì)樸(0.17),圖2(d)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為飽滿(1.0)、華麗(1.0)、莊重(0.999),圖2(e)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為素雅(0.998)、簡(jiǎn)潔(0.358)、靈動(dòng)(0.354),圖2(f)的前3個(gè)輸出風(fēng)格語(yǔ)義及對(duì)應(yīng)的概率分別為飽滿(0.999)、華麗(0.974)、素雅(0.843)。
(a) 預(yù)測(cè)圖1 (b) 預(yù)測(cè)圖2 (c) 預(yù)測(cè)圖3
模型整體預(yù)測(cè)效果較好,但也存在以下問(wèn)題:按平均值選擇3個(gè)最高的概率輸出值作為標(biāo)注結(jié)果,會(huì)存在個(gè)別標(biāo)注結(jié)果與測(cè)試樣本不完全匹配的問(wèn)題。針對(duì)以上問(wèn)題,可以嘗試優(yōu)化輸出方式進(jìn)行改進(jìn)。
提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的紋樣風(fēng)格多標(biāo)簽自動(dòng)標(biāo)注方法,以AlexNet模型結(jié)構(gòu)為基礎(chǔ),提出了2種紋樣自動(dòng)標(biāo)注模型,采用P、R、F1評(píng)價(jià)指標(biāo)對(duì)模型測(cè)試結(jié)果進(jìn)行了量化評(píng)估。結(jié)果表明,Model-1在P、R、F13個(gè)指標(biāo)上的值均高于Model-2,最終選擇Model-1作為紋樣風(fēng)格自動(dòng)標(biāo)注模型。然而以下方面值得改進(jìn)與研究:
1) 使用更大規(guī)模的數(shù)據(jù)集進(jìn)行模型訓(xùn)練,進(jìn)一步提高模型預(yù)測(cè)精度。
2) 針對(duì)卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)作優(yōu)化調(diào)整,不斷提升模型標(biāo)注效果。