余 聰,李柏巖,劉曉強(qiáng)
(東華大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,上海 201620)
近年來,隨著信息技術(shù)的高速發(fā)展,網(wǎng)站已經(jīng)成為企業(yè)和機(jī)構(gòu)與用戶交互的重要平臺(tái),許多線上業(yè)務(wù)都必須依托網(wǎng)站開展。然而,由于網(wǎng)絡(luò)世界的虛擬性、開放性,網(wǎng)絡(luò)監(jiān)管變得尤為困難,尤其是一些色情、暴力、垃圾廣告等不良圖片的傳播,使得網(wǎng)絡(luò)應(yīng)用面臨著巨大的風(fēng)險(xiǎn)。
針對(duì)網(wǎng)站中可能出現(xiàn)的大量不良圖片,使用人工監(jiān)管的方式,無疑需要耗費(fèi)巨大的人力成本。隨著深度學(xué)習(xí)的快速發(fā)展以及深度卷積神經(jīng)網(wǎng)絡(luò)在抽象特征提取上的巨大優(yōu)勢(shì),深度學(xué)習(xí)的方法明顯優(yōu)于傳統(tǒng)的圖像識(shí)別算法。通過設(shè)計(jì)一個(gè)基于深度學(xué)習(xí)的智能圖像審核系統(tǒng),實(shí)現(xiàn)違規(guī)圖像的自動(dòng)識(shí)別,不僅可以大大節(jié)約審核人力,還可以快速、精準(zhǔn)地對(duì)不良圖像進(jìn)行過濾。
網(wǎng)絡(luò)違規(guī)圖片檢測(cè)目前也受到了工業(yè)界的關(guān)注。近年來,針對(duì)互聯(lián)網(wǎng)上傳播的違規(guī)圖片,工業(yè)界通常提供單一接口檢測(cè)單類違規(guī)圖片的服務(wù),這種檢測(cè)方式存在著一定的局限性,不適用于一些中小型企業(yè)的實(shí)時(shí)在線圖片監(jiān)測(cè)需求。首先,對(duì)于多類違規(guī)圖片檢測(cè),用戶通常需要購買多個(gè)接口,檢測(cè)成本高,集成效率低;其次,工業(yè)界訓(xùn)練的模型復(fù)雜,對(duì)硬件要求高。本文針對(duì)目前網(wǎng)絡(luò)違規(guī)圖片實(shí)時(shí)監(jiān)測(cè)的需求,提出了一種基于深度學(xué)習(xí)的網(wǎng)頁違規(guī)圖片檢測(cè)方案。主要貢獻(xiàn)如下:
(1)構(gòu)建了多類別違規(guī)圖片數(shù)據(jù)集。基于卷積神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別技術(shù),需要通過大量的數(shù)據(jù)集來學(xué)習(xí)圖像中的抽象特征。本系統(tǒng)待檢測(cè)的圖片均為不良圖片,現(xiàn)有的公開數(shù)據(jù)集十分有限。本文主要通過抽取公開數(shù)據(jù)集、網(wǎng)絡(luò)爬蟲、提取視頻關(guān)鍵幀并對(duì)得到的數(shù)據(jù)進(jìn)行清洗的方式構(gòu)建違規(guī)圖片數(shù)據(jù)集。
(2)基于MobileNet 設(shè)計(jì)了一個(gè)輕量級(jí)模型對(duì)色情、暴力和廣告等三類不良圖片實(shí)現(xiàn)一次性檢測(cè),在保證準(zhǔn)確率的前提下,提高了模型檢測(cè)的效率。
實(shí)驗(yàn)和應(yīng)用表明,該模型用于檢測(cè)網(wǎng)頁違規(guī)圖片時(shí),準(zhǔn)確率高、速度快,可以為中小型網(wǎng)站提供一種低成本的違規(guī)圖片檢測(cè)服務(wù)。
網(wǎng)頁違規(guī)圖片檢測(cè)主要分為樣本庫構(gòu)建、模型構(gòu)建、網(wǎng)頁圖片檢測(cè)三部分,如圖1 所示。為了構(gòu)建圖片檢測(cè)模型,首先通過網(wǎng)絡(luò)爬蟲、提取視頻關(guān)鍵幀、抽取公開數(shù)據(jù)集等方式構(gòu)建初始樣本庫,由于違規(guī)圖片樣本數(shù)量有限,使用數(shù)據(jù)增強(qiáng)的方式來擴(kuò)大訓(xùn)練樣本數(shù)量;然后以MobileNet 作為骨干網(wǎng)絡(luò),搭建違規(guī)圖片檢測(cè)模型(illegal picture detection model, IPDMnet),在保證模型準(zhǔn)確率與檢測(cè)速度的前提下,對(duì)模型進(jìn)行訓(xùn)練并優(yōu)化;在網(wǎng)頁圖片監(jiān)測(cè)階段,以爬蟲方式爬取得到網(wǎng)頁圖片,并利用違規(guī)圖片檢測(cè)模型IPDMnet 對(duì)爬取的圖片進(jìn)行檢測(cè),最后輸出檢測(cè)結(jié)果。
圖1 網(wǎng)頁違規(guī)圖片檢測(cè)整體框架圖
通過對(duì)實(shí)際業(yè)務(wù)需求的分析,將需要檢測(cè)的違規(guī)圖片分為正常、色情、暴恐、垃圾廣告這四類。數(shù)據(jù)集樣本庫的來源如下。
2.1.1 正常圖片
主要指不包含違規(guī)內(nèi)容的圖片。本文首先從公開數(shù)據(jù)集ImageNet 選取20 種最常見的類別,如人物圖、動(dòng)物圖、風(fēng)景圖等,再從每個(gè)類別隨機(jī)抽取一定數(shù)量的圖片構(gòu)建正常圖片樣本。
2.1.2 色情圖片
主要指包含淫穢信息的圖片。本文構(gòu)建的色情圖片分為真人和動(dòng)漫兩大類。由于公開的色情數(shù)據(jù)集十分有限且分辨率低,真人類色情圖片主要通過抽取NSFW 圖像數(shù)據(jù)集的方式構(gòu)建,動(dòng)漫類色情圖片主要通過網(wǎng)絡(luò)爬蟲的方式從國外不良網(wǎng)站爬取。
2.1.3 廣告圖片
主要指包含二維碼、手機(jī)號(hào)、推銷標(biāo)語等具有明顯推銷意圖的圖片。本文主要通過網(wǎng)絡(luò)下載的方式構(gòu)建。
2.1.4 暴恐圖片
主要指包含明顯打斗、血腥場(chǎng)景的圖片。目前沒有公開的暴恐圖片數(shù)據(jù)集,本文主要從影視視頻和暴恐視頻數(shù)據(jù)集提取視頻關(guān)鍵幀進(jìn)行數(shù)據(jù)集構(gòu)建。
為了提高模型的訓(xùn)練速度以及模型的準(zhǔn)確率,需要對(duì)訓(xùn)練的圖像數(shù)據(jù)進(jìn)行預(yù)處理。本文主要從數(shù)據(jù)清洗和數(shù)據(jù)增強(qiáng)方面提高圖像數(shù)據(jù)的質(zhì)量。
2.2.1 數(shù)據(jù)清洗
由于采集的圖片大多來自于網(wǎng)絡(luò),圖片的形狀、大小不一,將對(duì)模型訓(xùn)練產(chǎn)生一定的影響。比如圖片的高寬比過大或者過小時(shí),圖片會(huì)嚴(yán)重變形、失真,故本文將采集到的圖片數(shù)據(jù)進(jìn)行過濾,去除高寬比大于5或者小于0.2的圖片;而當(dāng)圖片的尺寸過小時(shí),圖片識(shí)別度大大降低,尺寸過大時(shí),影響模型訓(xùn)練速度與成本,故本文將可用的圖片數(shù)據(jù)限制在10 K~10 M之間。
實(shí)驗(yàn)表明,圖片的格式類型同樣會(huì)影響模型的訓(xùn)練,比如單通道灰度圖像、多通道的RGB 圖像和BGR 圖像等。為了提高訓(xùn)練集數(shù)據(jù)質(zhì)量與規(guī)范,本文將訓(xùn)練集數(shù)據(jù)規(guī)范為RGB 類型。對(duì)單通道的灰度圖像,先進(jìn)行通道擴(kuò)充;對(duì)于BGR圖像,先將其轉(zhuǎn)化為RGB圖像。
2.2.2 數(shù)據(jù)增強(qiáng)
為了進(jìn)一步擴(kuò)大訓(xùn)練數(shù)據(jù)量,從而提升模型性能,采用多種數(shù)據(jù)增量技術(shù)。傳統(tǒng)的隨機(jī)縮放裁剪方法,可以產(chǎn)生大量圖片碎片,成倍擴(kuò)充數(shù)據(jù)量。但針對(duì)本文處理的違規(guī)圖片,特別是色情、暴恐類圖片,當(dāng)它們被裁切之后,往往會(huì)失去原有的屬性,造成對(duì)應(yīng)的標(biāo)簽錯(cuò)誤。因此,本文在輕量級(jí)數(shù)據(jù)增強(qiáng)技術(shù)的基礎(chǔ)上,引入一種免搜索的自動(dòng)數(shù)據(jù)增強(qiáng)策略TrivialAugment。傳統(tǒng)的自動(dòng)數(shù)據(jù)增強(qiáng)方法如AutoAugment往往是以數(shù)據(jù)增強(qiáng)策略作為搜索空間,并結(jié)合強(qiáng)化學(xué)習(xí)得到搜索方法,但這類自動(dòng)數(shù)據(jù)增強(qiáng)的方式往往搜索空間巨大,實(shí)驗(yàn)代價(jià)高。TrivialAugment 不需要任何搜索,方法十分簡單:先定義一個(gè)圖像增強(qiáng)策略集合,每次隨機(jī)選擇一個(gè)圖像增強(qiáng)策略,并隨機(jī)確定它的增強(qiáng)幅度,最后對(duì)圖像進(jìn)行增強(qiáng)。整個(gè)過程不需要任何超參數(shù),所以不需要任何搜索。
本文首先對(duì)已有數(shù)據(jù)集圖像分別水平翻轉(zhuǎn)90°、180°、270°,將數(shù)據(jù)擴(kuò)大為原來的4 倍,再引入TrivialAugment 進(jìn)行自動(dòng)數(shù)據(jù)增強(qiáng)。實(shí)驗(yàn)表明,TrivialAugment 在本文的違規(guī)圖片數(shù)據(jù)集上具有良好的應(yīng)用效果。
2.3.1 IPDMnet核心結(jié)構(gòu)
傳統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò),如AlexNet、VGG、GoogLeNet、ResNet 在圖像分類領(lǐng)域都取得了良好的效果。但是,這些傳統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò)往往模型復(fù)雜、計(jì)算量大,對(duì)硬件資源有限、模型速度要求快的場(chǎng)景并不適用。本文采用輕量級(jí)網(wǎng)絡(luò)MobileNetV2 作為骨干網(wǎng)絡(luò)。MobileNetV2網(wǎng)絡(luò)是google 團(tuán)隊(duì)在2018 年提出來的,該模型準(zhǔn)確率高、參數(shù)小、運(yùn)算量低。此外,最近研究表明,通道注意力機(jī)制如SE-NET 在提升深度卷積神經(jīng)網(wǎng)絡(luò)性能方面有巨大的優(yōu)勢(shì)。但是,傳統(tǒng)的注意力模塊往往需要增加大量參數(shù),提高了模型的復(fù)雜度。因此,本文在模型中引入一種輕量級(jí)注意力模塊ECANET來提升模型性能。
MobileNetV2的優(yōu)勢(shì)主要源于倒殘差結(jié)構(gòu),而SE注意力模塊在殘差網(wǎng)絡(luò)結(jié)構(gòu)上有良好的表現(xiàn)。Hu 等通過消融實(shí)驗(yàn)證明,將SE 模塊引入殘差結(jié)構(gòu)之后,能夠有效提高殘差模型的性能。由于倒殘差結(jié)構(gòu)與殘差結(jié)構(gòu)提取特征的方式十分類似,ECA 模塊也相當(dāng)于對(duì)SE 模塊的一個(gè)改進(jìn),本文受此啟發(fā),將ECA 模塊引入Mobile-NetV2中的倒殘差結(jié)構(gòu)之后,構(gòu)建基于倒殘差結(jié)構(gòu)和ECA 分支的block 塊。構(gòu)建的block 塊為IPDM模型的核心部分,如圖2所示。實(shí)驗(yàn)表明,ECA 與倒殘差結(jié)構(gòu)的融合在本文的違規(guī)圖片數(shù)據(jù)集上能夠取得良好的效果。
圖2 IPDMnet核心結(jié)構(gòu)示意圖
2.3.2 倒殘差網(wǎng)絡(luò)
倒殘差結(jié)構(gòu)主要分為三個(gè)部分:升維卷積PW1、特征提取卷積DW、降維卷積PW2,并借鑒ResNet 的殘差結(jié)構(gòu),使用shortcut 將輸入與輸出相加,如圖3所示,它主要是為了適配DW 卷積而設(shè)計(jì)的。由于DW 卷積自身的計(jì)算特性決定了它不能改變通道數(shù)量,所以如果上一層輸出的通道數(shù)較少,DW 卷積只能在低維空間提取特征,效果并不好。所以倒殘差結(jié)構(gòu)給每個(gè)DW卷積都配備了一個(gè)PW 卷積用于升維,通過升維系數(shù)設(shè)定。這樣即使輸入通道比較低,經(jīng)過一個(gè)PW 卷積升維后,DW 卷積都可以在一個(gè)相對(duì)更高維的空間提取特征。另一方面,相關(guān)實(shí)驗(yàn)表明,激活函數(shù)在高維空間能增加非線性能力,在低維空間會(huì)破壞特征,因此,在經(jīng)過PW2 卷積的降維操作后,不再使用激活函數(shù),而是使用一個(gè)linear層線性輸出。
圖3 倒殘差結(jié)構(gòu)示意圖
2.3.3 ECA-NET分支
ECA-NET 是一種極輕量級(jí)的注意力模塊,它以SE 模塊為基礎(chǔ),通過引入一維卷積,不僅避免了特征維度的縮減,并且保證了通道間的信息交互,在降低復(fù)雜度的同時(shí),保持了模型性能。ECA 模塊主要包含三個(gè)部分:全局平均池化產(chǎn)生對(duì)應(yīng)特征圖,計(jì)算得到自適應(yīng)的kernel_size,應(yīng)用kernel_size 到一維卷積產(chǎn)生對(duì)應(yīng)通道權(quán)重,如圖4所示。通過自適應(yīng)函數(shù)得到一維卷積的卷積核大小,可以使得通道數(shù)較大時(shí)進(jìn)行更多的通道信息交互。自適應(yīng)卷積核大小計(jì)算公式為:
圖4 ECA網(wǎng)絡(luò)結(jié)構(gòu)示意圖
公式(1)中表示輸入的通道數(shù),其中= 2,= 1,表示選擇最近的奇數(shù)。
本文模型IPDMnet 的輸入為224 × 224 大小的圖片,特征提取部分包含1 個(gè)卷積層和7 個(gè)基于倒殘差結(jié)構(gòu)和ECA 的block 塊,其中構(gòu)建的block 塊為模型的核心部分。第一個(gè)卷積層采用32 個(gè)3 × 3 的卷積核,卷積核步長為2,卷積層后面設(shè)置一個(gè)BN 層,以加快模型的收斂,激活函數(shù)使用ReLU6;每個(gè)block 塊在倒殘差結(jié)構(gòu)之后構(gòu)建ECA 分支,并給對(duì)應(yīng)的通道加權(quán);分類器部分采用一個(gè)平均池化下采樣層avgpool 和一個(gè)全連接層,為了防止模型過擬合,在全連接層中加入dropout 層并設(shè)置dropout 值為0.2。由于本文做的是4分類,最后全連接層的神經(jīng)元個(gè)數(shù)設(shè)為4。
本文通過爬蟲爬取、提取視頻關(guān)鍵幀、抽取公開數(shù)據(jù)集的方式構(gòu)建初始樣本庫,并對(duì)得到的樣本進(jìn)行清洗,構(gòu)建多類違規(guī)圖片數(shù)據(jù)集。由于在現(xiàn)實(shí)應(yīng)用場(chǎng)景中,正常圖片出現(xiàn)的概率遠(yuǎn)遠(yuǎn)大于違規(guī)圖片,所以構(gòu)建數(shù)據(jù)集時(shí),正常圖片數(shù)據(jù)集的比例也要大于違規(guī)圖片。本文構(gòu)建的數(shù)據(jù)集如表1所示。
表1 數(shù)據(jù)集描述
實(shí)驗(yàn)平臺(tái)操作系統(tǒng)為CentOS 7.7.1908,支持軟件版本為Python 3.6、PyTorch 1.10.0。執(zhí)行訓(xùn)練的服務(wù)器CPU 為Intel(R)Xeon(R)Silver 4208,64 G內(nèi)存,GPU為4核GTX2080Ti。
為驗(yàn)證違規(guī)圖片檢測(cè)模型IPDMnet 的可行性,本文采用準(zhǔn)確率、每張圖片平均檢測(cè)速度,模型參數(shù)大小評(píng)判模型的性能。各項(xiàng)評(píng)價(jià)指標(biāo)的計(jì)算方法如下:
公式(2)中,表示分類正確的樣本數(shù),表示樣本總數(shù)。
公式(3)中,表示檢測(cè)100 張圖片所消耗的時(shí)間,單位為毫秒(ms)。
實(shí)驗(yàn)將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集的比例為8∶2。通過反復(fù)的訓(xùn)練實(shí)驗(yàn),最后將模型主要訓(xùn)練參數(shù)設(shè)置如下:learning_rate:0.0001,batch_size:16,num_workers:8,模型采用Adam優(yōu)化器,交叉熵?fù)p失函數(shù)。由于本文違規(guī)圖片數(shù)據(jù)集樣本有限,為了得到更好的訓(xùn)練效果,首先,將模型在Caltech 256 數(shù)據(jù)集上進(jìn)行遷移學(xué)習(xí),得到預(yù)訓(xùn)練模型,最后再在訓(xùn)練集上迭代訓(xùn)練100輪。
根據(jù)上述實(shí)驗(yàn)設(shè)置以及模型評(píng)價(jià)指標(biāo),本文主要從經(jīng)典深度卷積神經(jīng)網(wǎng)絡(luò)、基于注意力機(jī)制的Transformer、輕量級(jí)網(wǎng)絡(luò)三個(gè)方面進(jìn)行實(shí)驗(yàn)對(duì)比。以傳統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò)ResNet34 作為骨干網(wǎng)絡(luò),再融合ECA 注意力機(jī)制,模型準(zhǔn)確率能夠達(dá)到97.07%,預(yù)測(cè)單張圖片需要6.08 ms;使用Swin_Transformer_Tiny 模型進(jìn)行實(shí)驗(yàn),模型準(zhǔn)確率雖然也能夠達(dá)到96.98%,但是預(yù)測(cè)單張圖片需要12.67 ms,模型復(fù)雜度較高;最后,使用IPDMnet 進(jìn)行實(shí)驗(yàn),模型準(zhǔn)確率與表現(xiàn)較優(yōu)的ECA-ResNet34 準(zhǔn)確率十分接近,但檢測(cè)速度明顯優(yōu)于它和其他模型,并且模型復(fù)雜度大大降低。由于本文的違規(guī)圖片檢測(cè)模型主要為中小型企業(yè)提供服務(wù),綜合考慮準(zhǔn)確率與檢測(cè)成本,IPDMnet相比于其它模型將會(huì)有較大優(yōu)勢(shì)。
表2 不同模型的檢測(cè)效果比較
網(wǎng)頁違規(guī)圖片監(jiān)測(cè)是維護(hù)網(wǎng)絡(luò)安全的重要環(huán)節(jié),而不良圖片種類繁多、形式多樣,對(duì)圖片實(shí)時(shí)監(jiān)測(cè)提出了挑戰(zhàn)。本文針對(duì)色情、暴恐和廣告違規(guī)圖片類別,構(gòu)建相應(yīng)的數(shù)據(jù)集,構(gòu)建了一個(gè)基于深度學(xué)習(xí)算法的網(wǎng)絡(luò)結(jié)構(gòu)模型,同時(shí)實(shí)現(xiàn)多類違規(guī)圖片的檢測(cè)。實(shí)驗(yàn)表明,該模型準(zhǔn)確率高、檢測(cè)速度快、模型輕量,可為中小型企業(yè)提供網(wǎng)頁違規(guī)圖片實(shí)時(shí)監(jiān)測(cè)服務(wù)。但由于違規(guī)圖片內(nèi)容復(fù)雜,具有一定的混淆性,加上違規(guī)圖片數(shù)據(jù)集有限,對(duì)于一些特征比較模糊的圖片,容易出現(xiàn)誤判。接下來的工作將進(jìn)一步擴(kuò)充數(shù)據(jù)集,并對(duì)模型進(jìn)行優(yōu)化,提高
模型的識(shí)別范圍以及模型準(zhǔn)確率。