劉欣然,徐雅斌*
(1. 北京信息科技大學(xué)網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室 北京 朝陽(yáng)區(qū) 100101;2. 北京信息科技大學(xué)計(jì)算機(jī)學(xué)院 北京 朝陽(yáng)區(qū) 100101)
社交機(jī)器人是一種具有虛擬人格化形象的算法智能體,它們滲透于社交網(wǎng)絡(luò)之中,通過(guò)大量連接社交網(wǎng)絡(luò)用戶(hù)并發(fā)送特定信息,在一定程度上影響著公眾輿論。其中,部分社交機(jī)器人利用了其對(duì)于輿論的影響力,在社交網(wǎng)絡(luò)中實(shí)施謠言傳播、虛假消息散布等惡意行為,威脅著社交網(wǎng)絡(luò)的安全與穩(wěn)定?;诖?,針對(duì)社交機(jī)器人的檢測(cè)技術(shù)成了近年來(lái)的研究熱點(diǎn)。
然而,為逃避檢測(cè),另有一部分社交機(jī)器人通過(guò)升級(jí)換代,具有了逼真的網(wǎng)絡(luò)身份(頭像、用戶(hù)名等詳細(xì)的個(gè)人資料)、發(fā)送帶有情感色彩博文的能力、相當(dāng)數(shù)量的粉絲及關(guān)注者等一系列更為“類(lèi)人”的網(wǎng)絡(luò)形象特征。本文將上述經(jīng)過(guò)升級(jí)的社交機(jī)器人命名為“類(lèi)人”社交機(jī)器人?;谄洹邦?lèi)人”的屬性,從海量的網(wǎng)絡(luò)用戶(hù)群體中識(shí)別出“類(lèi)人”社交機(jī)器人的難度更大,正因如此,能夠使用相應(yīng)的技術(shù)手段對(duì)它們進(jìn)行有效、準(zhǔn)確的檢測(cè)就顯得更加重要。
與普通的社交機(jī)器人檢測(cè)任務(wù)相同,“類(lèi)人”社交機(jī)器人檢測(cè),旨在使用分類(lèi)模型對(duì)“類(lèi)人”社交機(jī)器人用戶(hù)和人類(lèi)用戶(hù)進(jìn)行二分類(lèi)。然而,現(xiàn)實(shí)中能夠直接從社交網(wǎng)絡(luò)中識(shí)別并獲取到的“類(lèi)人”社交機(jī)器人用戶(hù)的數(shù)量遠(yuǎn)少于正常人類(lèi)用戶(hù)的數(shù)量,在此情況下訓(xùn)練得到的檢測(cè)模型將存在嚴(yán)重的過(guò)擬合問(wèn)題。為了獲得性能更為優(yōu)越的檢測(cè)模型,就要求在訓(xùn)練模型之前首先進(jìn)行訓(xùn)練數(shù)據(jù)集的擴(kuò)充。由于“類(lèi)人”社交機(jī)器人已經(jīng)混跡在真實(shí)人類(lèi)用戶(hù)之中且難以被“識(shí)破”,那么便可以學(xué)習(xí)人類(lèi)用戶(hù)的社交行為數(shù)據(jù),并生成相似數(shù)據(jù),以達(dá)到擴(kuò)充其檢測(cè)訓(xùn)練集的目的。
為實(shí)現(xiàn)數(shù)據(jù)擴(kuò)充,文獻(xiàn)[1]提出使用數(shù)字DNA編碼社交機(jī)器人用戶(hù)的行為壽命,并使用遺傳算法對(duì)當(dāng)前的機(jī)器人用戶(hù)進(jìn)行迭代優(yōu)化,由此生成符合實(shí)驗(yàn)要求的數(shù)據(jù)。雖然該方法具有一定的作用,但是需要事先對(duì)采集到的每個(gè)數(shù)據(jù)樣本進(jìn)行建模,工作量大、且實(shí)現(xiàn)效率低。
不同于文獻(xiàn)[1],文獻(xiàn)[2-3]分別提出使用生成式對(duì)抗網(wǎng)絡(luò)(generative adversarial networks, GAN)和改進(jìn)的條件對(duì)抗網(wǎng)絡(luò)(conditional generative adversarial networks, CGAN)來(lái)擴(kuò)充社交機(jī)器人數(shù)據(jù)集。文中二者均取得了良好的擴(kuò)充效果,且提出的方法相較于文獻(xiàn)[1]均更易于操作、實(shí)現(xiàn)效率更高。但是文獻(xiàn)[2-3]均未考慮到GAN 的固有缺點(diǎn)(如生成器模式崩潰問(wèn)題等)對(duì)于數(shù)據(jù)擴(kuò)充結(jié)果可能產(chǎn)生的影響,更沒(méi)有提出相應(yīng)的解決辦法。
為緩解GAN[4]生成器的模式崩潰問(wèn)題,文獻(xiàn)[5]提出了進(jìn)化生成式對(duì)抗網(wǎng)絡(luò)(evolutionary generative adversarial networks, E-GAN)。訓(xùn)練中,E-GAN 借用種群進(jìn)化的思想訓(xùn)練生成器、使用多目標(biāo)函數(shù)評(píng)價(jià)各生成器的性能并保留最優(yōu)個(gè)體,以此保證了生成的數(shù)據(jù)同時(shí)具有較高的“真實(shí)性”與多樣性,從而緩解了模式崩潰問(wèn)題。但是E-GAN 的設(shè)計(jì)并非完美。首先,由單個(gè)全連接網(wǎng)絡(luò)或卷積網(wǎng)絡(luò)構(gòu)成的生成器,難以從輸入的隨機(jī)噪聲中充分挖掘出與訓(xùn)練數(shù)據(jù)相關(guān)的隱藏特征,導(dǎo)致生成數(shù)據(jù)的“真實(shí)性”與多樣性程度差強(qiáng)人意。其次,E-GAN 生成器損失函數(shù)的優(yōu)化目標(biāo)存在自相矛盾的現(xiàn)象,導(dǎo)致訓(xùn)練過(guò)程中模型收斂速度慢、生成器梯度不穩(wěn)定;訓(xùn)練結(jié)束后,生成數(shù)據(jù)的質(zhì)量?jī)?yōu)劣不一。
為優(yōu)化E-GAN 的訓(xùn)練效果,文獻(xiàn)[6]提出修改E-GAN 生成器的損失函數(shù)及判別器結(jié)構(gòu),以避免梯度消失的發(fā)生;文獻(xiàn)[7]提出改變判別器的輸出形式及生成器的損失函數(shù),從而提高生成數(shù)據(jù)的多樣性;文獻(xiàn)[8]提出使用帕累托優(yōu)勢(shì)度(Pareto dominance)函數(shù)作為評(píng)估生成器性能的多目標(biāo)評(píng)估函數(shù);文獻(xiàn)[9]在E-GAN 的 “突變”步驟后引入“交叉”步驟,以進(jìn)一步提高生成數(shù)據(jù)的多樣性。文獻(xiàn)[6-9]的實(shí)驗(yàn)結(jié)果較之原始E-GAN 均有一定的提高,但是均未解決制約模型性能提高的本質(zhì)問(wèn)題。
基于此,本文提出了一種基于改進(jìn)的海林格距離的變分進(jìn)化生成式對(duì)抗網(wǎng)絡(luò)(Hellinger distance based variational evolutionary generative adversarial network, HVE-GAN)模型,以提高E-GAN 性能、實(shí)現(xiàn)“類(lèi)人”社交機(jī)器人檢測(cè)數(shù)據(jù)集的有效擴(kuò)充。
E-GAN 的結(jié)構(gòu)如圖1 所示,若無(wú)特殊說(shuō)明,則文中D特指判別器(discriminator),D 特指解碼器(decoder)。父代生成器Gθ通過(guò)變異產(chǎn)生子代生成器,子代生成器分別生成數(shù)據(jù),通過(guò)評(píng)估函數(shù)對(duì)于各子代生成器的性能進(jìn)行評(píng)估,性能最優(yōu)的子代生成器將被保留作為下一次變異的父代;此時(shí)被挑選出來(lái)的生成器與判別器進(jìn)行對(duì)抗訓(xùn)練,且根據(jù)對(duì)抗結(jié)果進(jìn)行優(yōu)化。
圖1 E-GAN 模型結(jié)構(gòu)圖
由圖1 可知,E-GAN 模型在訓(xùn)練過(guò)程中借用了進(jìn)化算法的思想,其每個(gè)訓(xùn)練步驟由3 個(gè)階段組成:
1)變異(variation):給定一個(gè)父代生成器個(gè)體Gθ,使其在不同的損失函數(shù)的指導(dǎo)下變異并產(chǎn)生新的子代
2)評(píng)價(jià)(evaluation):對(duì)于每一個(gè)子代生成器,它們的性能將在當(dāng)前的“自然環(huán)境”(即與判別器的對(duì)抗訓(xùn)練)下,由評(píng)價(jià)函數(shù)給出;
3)選擇(selection):E-GAN 將根據(jù)子代生成器的評(píng)估值進(jìn)行“自然選擇”,即優(yōu)秀的子代生成器被保留到下一代,作為下一次訓(xùn)練過(guò)程中進(jìn)行變異的父本。
變分自編碼器[10](variational autoencoder, VAE)是以自編碼器(autoencoder, AE)[11]結(jié)構(gòu)為基礎(chǔ)的深度生成模型。但是AE 的解碼器不具有數(shù)據(jù)生成能力,而VAE 通過(guò)引入“重參數(shù)化”過(guò)程,使其解碼器具有了數(shù)據(jù)生成能力。
為了進(jìn)一步提高E-GAN 生成數(shù)據(jù)的“真實(shí)性”與多樣性,本文將E-GAN 的生成器由變分自編碼器取代,形成變分進(jìn)化生成式對(duì)抗網(wǎng)絡(luò)(variational evolutionary generative adversarial networks, VEGAN)。
VE-GAN 的模型結(jié)構(gòu)如圖2 所示。修改后的生成器中,編碼器E 負(fù)責(zé)接收人類(lèi)用戶(hù)數(shù)據(jù),并將其編碼至包含人類(lèi)用戶(hù)數(shù)據(jù)隱藏特征的低維數(shù)據(jù)空間,解碼器D 負(fù)責(zé)從中采樣,并將采樣數(shù)據(jù)在不同的損失函數(shù)的指導(dǎo)下解碼為與人類(lèi)用戶(hù)數(shù)據(jù)相似的“類(lèi)人”社交機(jī)器人數(shù)據(jù)。
圖2 VE-GAN 模型結(jié)構(gòu)圖
對(duì)生成器的結(jié)構(gòu)進(jìn)行修改后,模型的損失函數(shù)也要相應(yīng)地發(fā)生變化。借鑒文獻(xiàn)[12],則此時(shí)編碼器E 的損失函數(shù)為:
其中,
式中,X為真實(shí)數(shù)據(jù);先驗(yàn)分布Z~N(0,1),為重參數(shù)化后的隱空間數(shù)據(jù);Q(|X)與P(Z)分別為與Z采樣分布情況的表示。
對(duì)于單個(gè)生成器G而言,其損失函數(shù)為:
式中,LE?GAN(G_fake)為用于指導(dǎo)當(dāng)前生成器變異的損失函數(shù)。判別器D的損失函數(shù)為:
則模型整體的損失函數(shù)為:
將E-GAN 的單個(gè)網(wǎng)絡(luò)結(jié)構(gòu)的生成器修改為VAE 結(jié)構(gòu),修改后:1)模型使用編碼得到的隱空間數(shù)據(jù)而非隨機(jī)噪聲進(jìn)行數(shù)據(jù)生成,隱空間數(shù)據(jù)中含有豐富的訓(xùn)練數(shù)據(jù)隱藏特征信息,有助于模型在信息加持下,生成“真實(shí)性”和多樣性程度與訓(xùn)練數(shù)據(jù)更為相似的用戶(hù)數(shù)據(jù);2)生成器訓(xùn)練過(guò)程中,VAE 的損失函數(shù)能夠迫使解碼器輸出與訓(xùn)練數(shù)據(jù)更為相似的數(shù)據(jù),不斷提升解碼器利用隱空間數(shù)據(jù)擬合訓(xùn)練數(shù)據(jù)的能力。以上兩點(diǎn)共同作用,使得生成數(shù)據(jù)的“真實(shí)性”和多樣性程度得到了提高。
用于指導(dǎo)E-GAN 生成器變異的損失函數(shù)之一為Heuristic 損失函數(shù),其定義為:
推理可知,最小化式(6)相當(dāng)于最小化[KL(pg||preal)?2JS(pg||preal)],這便意味著生成器要在減小pg和preal之間的KL 散度的同時(shí)增大其JS 散度,顯然該目標(biāo)是自相矛盾的。在實(shí)踐中,該目標(biāo)也會(huì)嚴(yán)重影響生成器梯度的穩(wěn)定性。因此需要對(duì)該損失函數(shù)進(jìn)行替換。
本文使用改進(jìn)的海林格距離(Hellinger distance)替換Heuristic 損失函數(shù),將其作為生成器的損失函數(shù)之一。海林格距離是f 散度的一種,被用來(lái)度量?jī)蓚€(gè)概率分布之間的距離。在可度量空間上,海林格距離被定義為:
式中,P(x)和Q(x)分 別為在給定連續(xù)空間X中,x∈X的兩個(gè)連續(xù)性分布。由于海林格距離具有對(duì)于不平衡數(shù)據(jù)集不敏感的優(yōu)秀特征,被廣泛應(yīng)用于采樣方法中?;谏鲜隹紤],可將海林格距離應(yīng)用于本模型,作為指導(dǎo)生成器變異的損失函數(shù)。
同時(shí),為了避免在具體的訓(xùn)練過(guò)程中,由于生成器生成的數(shù)據(jù)量較大,導(dǎo)致原始的海林格距離的值也較大,從而給梯度帶來(lái)較大的影響,本文將原始的海林格距離進(jìn)行了縮放改進(jìn),使其更加適用于當(dāng)前模型的特點(diǎn)。
改進(jìn)的海林格距離為:
式(8)可理解為:生成器試圖縮小其生成數(shù)據(jù)的實(shí)際概率分布值與目標(biāo)概率分布值1 之間的海林格距離。式中,n為生成器生成數(shù)據(jù)的數(shù)量。式(8)僅對(duì)原始公式進(jìn)行了縮放處理,既不會(huì)影響公式的性能,又能很好地將函數(shù)值控制在較小的范圍內(nèi),從而也穩(wěn)定了梯度。
在更為魯棒的損失函數(shù)(改進(jìn)的海林格距離)的指導(dǎo)下,徹底解決了在訓(xùn)練過(guò)程中,由不合理的損失函數(shù)優(yōu)化目標(biāo)導(dǎo)致的生成器梯度不穩(wěn)定問(wèn)題,從而使生成數(shù)據(jù)的質(zhì)量也得到了保證。本文將進(jìn)行了上述生成器結(jié)構(gòu)與損失函數(shù)改進(jìn)的模型稱(chēng)為基于海林格距離的變分進(jìn)化生成式對(duì)抗網(wǎng)絡(luò)(HVEGAN),并使用該模型完成“類(lèi)人”社交機(jī)器人檢測(cè)數(shù)據(jù)集的擴(kuò)充任務(wù)。
利用本文提出的HVE-GAN 進(jìn)行“類(lèi)人”社交機(jī)器人數(shù)據(jù)生成的算法步驟如下。
算法:“類(lèi)人”社交機(jī)器人數(shù)據(jù)生成
輸入:人類(lèi)用戶(hù)的數(shù)據(jù)X
輸出:“類(lèi)人”社交機(jī)器人數(shù)據(jù)X′
1) 初始化一個(gè)VAE 結(jié)構(gòu)的生成器G0,并令其編碼器 Enc0為初代編碼器,解碼器為初代解碼器,初始化一個(gè)判別器D;
2) 將X輸入給E nc0,并將其編碼得到的包含人類(lèi)用戶(hù)隱藏特征的隱空間數(shù)據(jù)輸 入給 D ec0,令其解碼得到“類(lèi)人”社交機(jī)器人數(shù)據(jù)=Dec();
4) 利用評(píng)估函數(shù)F=Fq+γFd,γ>0評(píng) 估G0的性能,并給出相應(yīng)的評(píng)估分?jǐn)?shù),其中,γ為一個(gè)可學(xué)習(xí)的超參數(shù),F(xiàn)q為適應(yīng)度分?jǐn)?shù),F(xiàn)d為多樣性分?jǐn)?shù);
5) 優(yōu)化判別器D,以提高判別器性能,從而更好地促進(jìn)生成器的進(jìn)化;
6) 將X輸入給子代生成器的編碼器種群{Enc1,Enc2,···,Encn} 中 的各編碼器個(gè)體 Enci,n為子代生成器的數(shù)量,i∈{1,2,···,n};經(jīng)過(guò)單獨(dú)的編碼及重參數(shù)化后,分別得到數(shù)據(jù)集的不同隱空間變量數(shù)據(jù)集將z中 的各數(shù)據(jù)集分別輸入給子代生成器的解碼器種群 { Dec1,Dec2,···,Decn}中相應(yīng)的解碼器個(gè)體D eci,各解碼器分別解碼出“類(lèi)人”社交機(jī)器人數(shù)據(jù)集
8) 由F給出該生成數(shù)據(jù)集的候選子代生成器Gi的評(píng)估分?jǐn)?shù),若任意Gi的評(píng)估函數(shù)值均低于G0的值,則繼續(xù)選擇G0作為本次訓(xùn)練中變異的父本生成器,否則根據(jù)他們的評(píng)估函數(shù)值排名選出最優(yōu)模型代替G0作為本次的變異父本;
9) 本次變異父本G0在不同的損失函數(shù)的指導(dǎo)下進(jìn)行變異,得到子代生成器及其相應(yīng)的編碼器、解碼器種群;
10) 優(yōu)化判別器D;
11) 若未完成預(yù)設(shè)次數(shù)的訓(xùn)練,則返回步驟6),進(jìn)入下一次訓(xùn)練;若完成預(yù)設(shè)次數(shù)的訓(xùn)練后停止訓(xùn)練,并進(jìn)入步驟12);
12) 取得HVE-GAN 當(dāng)前的解碼器模型,對(duì)其輸入z~N(0,1),獲得所需“類(lèi)人”社交機(jī)器人的數(shù)據(jù)X′。
在上述算法中,步驟1)~步驟5)為利用HVEGAN 的初始生成器生成“類(lèi)人”社交機(jī)器人數(shù)據(jù)階段;步驟6)~步驟11)為子代生成器的數(shù)據(jù)生成階段;步驟11)為循環(huán)條件,步驟12)為最終的檢測(cè)數(shù)據(jù)集生成階段。
其中,步驟4)提到的評(píng)估函數(shù)F的適應(yīng)度分?jǐn)?shù)為:
即Fq為判別器對(duì)于待評(píng)估數(shù)據(jù)給出的真實(shí)性度量。多樣性分?jǐn)?shù)為:
即Fd為判別器D的優(yōu)化函數(shù)時(shí),通過(guò)D的梯度值的高低反映出待評(píng)估數(shù)據(jù)分布的集中程度。梯度值越小,則數(shù)據(jù)分布越分散,其多樣性程度越高。
為了驗(yàn)證HVE-GAN 模型性能的優(yōu)越性,及其生成的“類(lèi)人”社交機(jī)器人數(shù)據(jù)的“真實(shí)性”與多樣性,選取文獻(xiàn)[3]提出的社交機(jī)器人數(shù)據(jù)集擴(kuò)充模型,以及E-GAN 作為基線(xiàn)模型,與本文提出的VE-GAN、HVE-GAN 一同進(jìn)行數(shù)據(jù)生成,并進(jìn)行對(duì)比實(shí)驗(yàn);為了驗(yàn)證損失函數(shù)改進(jìn)的有效性,進(jìn)行E-GAN、VE-GAN 及HVE-GAN 在訓(xùn)練過(guò)程中生成器損失函數(shù)的變化情況對(duì)比實(shí)驗(yàn)。
本文所提出的HVE-GAN 模型是基于E-GAN模型(http://github.com:WANG-Chaoyue/Evolutionary GAN.git)做出的進(jìn)一步改進(jìn)。模型搭建于Theano框架下。HVE-GAN 的生成器中,編碼器為有一個(gè)隱藏層的全連接層結(jié)構(gòu),隱藏層的激活函數(shù)為L(zhǎng)eakyRelu,輸出層的激活函數(shù)為Sigmoid;解碼器為有3 個(gè)隱藏層的全連接層結(jié)構(gòu),隱藏層的激活函數(shù)為L(zhǎng)eakyRelu,輸出層為一層線(xiàn)性連接層,沒(méi)有激活函數(shù);判別器同樣為有3 個(gè)隱藏層的全連接層結(jié)構(gòu),其隱藏層的激活函數(shù)為L(zhǎng)eakyRelu,而輸出層的激活函數(shù)為Sigmoid。E-GAN 的生成器與判別器結(jié)構(gòu)與VE-GAN 無(wú)異,只是減少了編碼器結(jié)構(gòu)。
模型訓(xùn)練時(shí),上述模型的編碼器、解碼器或生成器、判別器均使用了Adam 優(yōu)化算法,生成器與判別器的學(xué)習(xí)率均為0.0001,編碼器的學(xué)習(xí)率為0.0002。訓(xùn)練時(shí)的batch size 大小設(shè)為64,訓(xùn)練次數(shù)設(shè)為10000。同樣,除了編碼器的超參數(shù)被去掉外,E-GAN 與HVE-GAN 的超參數(shù)設(shè)置均一致。
本文基于代碼(https://github.com/eriklindernoren/PyTorch-GAN.git)對(duì)文獻(xiàn)[2]中提出的GAN 的社交機(jī)器人生成模型進(jìn)行了復(fù)現(xiàn)。GAN 搭建于PyTorch框架之下,生成器與判別器均采用了具有3 個(gè)隱藏層的全連接層結(jié)構(gòu),隱藏層的激活函數(shù)均為L(zhǎng)eakyRelu。其中,GAN 判別器輸出層的激活函數(shù)為Sigmoid。訓(xùn)練時(shí),GAN 的其他超參數(shù)的設(shè)置也與E-GAN 完全相同,不再贅述。
由于“類(lèi)人”社交機(jī)器人檢測(cè)技術(shù)的原理為基于用戶(hù)的社交行為特征向量進(jìn)行二分類(lèi),則擴(kuò)充檢測(cè)數(shù)據(jù)集即為擴(kuò)充“類(lèi)人”社交機(jī)器人的社交行為特征向量,因此需要提取人類(lèi)用戶(hù)的社交行為特征,構(gòu)造出每一位用戶(hù)的特征向量用作實(shí)驗(yàn)的訓(xùn)練數(shù)據(jù)。為此,本文借鑒文獻(xiàn)[13-14],提取了具有較高信息熵且普適的情感、非情感兩類(lèi)特征。
1) 情感特征提取。情感特征特指用戶(hù)所發(fā)布的微博文本(以下簡(jiǎn)稱(chēng)博文)中所蘊(yùn)含的語(yǔ)義情感特征。本實(shí)驗(yàn)借鑒文獻(xiàn)[14],使用基于Attention 機(jī)制的BiLSTM 模型進(jìn)行用戶(hù)博文情感特征提取。博文情感特征定義為:
式中,K為該用戶(hù)發(fā)布的所有博文的數(shù)量;affective_valuesi表示該用戶(hù)發(fā)布的第i條博文的情感分?jǐn)?shù)。Mean_of_affective_values 的取值范圍為[0,1],越靠近0 或者1,則該用戶(hù)所發(fā)布的博文中所蘊(yùn)含的情感越強(qiáng)烈鮮明,該用戶(hù)是真實(shí)人類(lèi)用戶(hù)的概率越大;若該值越靠近0.5,表明該用戶(hù)發(fā)布的微博文本中蘊(yùn)含的情感越微弱,或具有正向情感傾向和負(fù)向情感傾向的微博分布越均勻,則該用戶(hù)是社交機(jī)器人用戶(hù)的可能性越大。
2) 非情感特征提取。本文提取的非情感特征共3 類(lèi):用戶(hù)發(fā)微博的時(shí)序特征、微博用戶(hù)賬號(hào)特征、用戶(hù)微博傳播特征,如表1~表3 所示。對(duì)于表中提到的Pic、Name、Verified、Location 4 個(gè)特征,分別用“1”或“0”替代“是”或“否”的值,其他非情感特征的提取方法參見(jiàn)文獻(xiàn)[13-14],此處不再贅述。
表1 用戶(hù)發(fā)微博的時(shí)序特征
表2 微博用戶(hù)賬號(hào)特征
表3 用戶(hù)微博傳播特征
經(jīng)過(guò)上述兩個(gè)步驟的特征提取,最終構(gòu)造出的人類(lèi)用戶(hù)特征向量,即可作為HVE-GAN 的“學(xué)習(xí)對(duì)象”。
模型訓(xùn)練完成后,即可利用訓(xùn)練好的生成器生成實(shí)驗(yàn)所需的數(shù)據(jù)。但由于訓(xùn)練時(shí)間較短,生成的數(shù)據(jù)雖然與真實(shí)數(shù)據(jù)的差異性較小,仍然難以完全符合實(shí)驗(yàn)需求的精度,因此需要人為對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,處理方法如下:
1)將負(fù)數(shù)全部重置為0;
2) FriendCount 與FollowerCount 的特征數(shù)據(jù)僅保留整數(shù)部分;
3)對(duì)Pic、Name、Verified、Location 的特征數(shù)據(jù),篩選出大于等于0.6,小于等于1.5 的數(shù)值,將其更新為1,小于0.6 的值將其更新為0;去掉這4 列值中不為0 或1 的特征向量數(shù)據(jù);
4)去掉Mean_of_affective_values >1 的特征向量數(shù)據(jù)。
經(jīng)過(guò)上述處理后的數(shù)據(jù)最終用于本文的實(shí)驗(yàn)。
實(shí)驗(yàn)一:生成數(shù)據(jù)“真實(shí)性”對(duì)比實(shí)驗(yàn)。
為了驗(yàn)證HVE-GAN 模型性能的優(yōu)越性,及HVE-GAN 生成的“類(lèi)人”社交機(jī)器人特征向量數(shù)據(jù)是否可以“以假亂真”,本實(shí)驗(yàn)利用各模型分別生成250 個(gè)“類(lèi)人”社交機(jī)器人用戶(hù)數(shù)據(jù)集,分別與同一批的250 個(gè)人類(lèi)用戶(hù)數(shù)據(jù)集混合,并使用分類(lèi)器對(duì)各混合數(shù)據(jù)集進(jìn)行分類(lèi),根據(jù)分類(lèi)情況評(píng)價(jià)各模型的性能及生成數(shù)據(jù)的“真實(shí)性”程度。實(shí)驗(yàn)中選取AdaBoost、支持向量機(jī)(support vector machines,SVM)、邏輯回歸(logistic regression)分類(lèi)器,對(duì)上述經(jīng)過(guò)混合數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行分類(lèi)。并使用精確度(precision)、準(zhǔn)確度(accuracy)、召回率(recall)、F1 值4 個(gè)指標(biāo)對(duì)于分類(lèi)結(jié)果進(jìn)行評(píng)價(jià)。上述分類(lèi)器對(duì)各個(gè)模型生成的“類(lèi)人”社交機(jī)器人特征向量數(shù)據(jù)的分類(lèi)評(píng)價(jià)情況如表4 所示。
由表4 可知,利用AdaBoost 分類(lèi)器對(duì)于各模型生成的數(shù)據(jù)的分類(lèi)情況相同;使用Logistic Regression 分類(lèi)器對(duì)于上述模型生成的數(shù)據(jù)進(jìn)行分類(lèi)時(shí),HVE-GAN 的評(píng)價(jià)指標(biāo)值均明顯低于其他模型;使用SVM 分類(lèi)器進(jìn)行分類(lèi)時(shí),HVE-GAN 在Precision 與Accuracy 指標(biāo)值上僅略高于VE-GAN,但低于基線(xiàn)模型。且使用Logistic Regression 與SVM 分類(lèi)時(shí),VE-GAN 的分類(lèi)評(píng)價(jià)情況也明顯優(yōu)于基線(xiàn)模型。
表4 各模型生成數(shù)據(jù)分類(lèi)情況
由此可得,HVE-GAN 生成的數(shù)據(jù)質(zhì)量?jī)?yōu)于基線(xiàn)模型,即其性能優(yōu)于基線(xiàn)模型。且由VEGAN 的表現(xiàn)可知,模型性能的提升主要依賴(lài)于生成器模型結(jié)構(gòu)的改進(jìn),由此證明了模型結(jié)構(gòu)改進(jìn)的有效性。由表4 還可以看出,雖然HVE-GAN 分類(lèi)結(jié)果的Recall 值較高,但是Precision 與Accuracy均低于0.5(即分類(lèi)器能夠正確分類(lèi)的概率低于0.5),說(shuō)明分類(lèi)器雖然能識(shí)別出人類(lèi)用戶(hù)的特征向量數(shù)據(jù),但是難以區(qū)分生成的“類(lèi)人”社交機(jī)器人的數(shù)據(jù)。由此可知,HVE-GAN 生成的數(shù)據(jù)具有較高的“真實(shí)性”。
實(shí)驗(yàn)二:生成數(shù)據(jù)多樣性對(duì)比實(shí)驗(yàn)。
本實(shí)驗(yàn)旨在通過(guò)使用各模型一同生成“類(lèi)人”社交機(jī)器人特征向量數(shù)據(jù),并進(jìn)行對(duì)原始數(shù)據(jù)覆蓋圖像的對(duì)比,驗(yàn)證HVE-GAN 在生成數(shù)據(jù)多樣性方面的優(yōu)越性及模型結(jié)構(gòu)改進(jìn)的有效性。
為了突出體現(xiàn)各模型生成的數(shù)據(jù)的多樣性差異,本實(shí)驗(yàn)利用熵權(quán)法計(jì)算出人類(lèi)用戶(hù)特征向量中各特征的權(quán)重,選擇權(quán)重排名前三的特征來(lái)表示該用戶(hù),并基于上述特征進(jìn)行數(shù)據(jù)覆蓋圖像的繪制。權(quán)重較大,表明該特征對(duì)于用戶(hù)身份識(shí)別的影響較大,從而可以代表該用戶(hù)。
根據(jù)熵權(quán)法計(jì)算結(jié)果,本實(shí)驗(yàn)分別進(jìn)行了粉絲數(shù),發(fā)布博文時(shí)間間隔方差(以下簡(jiǎn)稱(chēng)時(shí)間間隔方差)和關(guān)注數(shù)特征的生成數(shù)據(jù)的覆蓋對(duì)比。若某個(gè)模型生成的“類(lèi)人”社交機(jī)器人特征向量數(shù)據(jù)可以較高程度地覆蓋人類(lèi)用戶(hù)數(shù)據(jù),則可以證明該模型生成的數(shù)據(jù)多樣性程度高。
如圖3 所示,HVE-GAN 除了在時(shí)間間隔方差特征覆蓋對(duì)比實(shí)驗(yàn)中表現(xiàn)略遜于E-GAN 外,其生成的數(shù)據(jù)覆蓋程度相比其他模型均有明顯的優(yōu)勢(shì)。該情況一方面證明了E-GAN 本身即具有強(qiáng)大的生成能力,另一方面也證明了HVE-GAN 生成的數(shù)據(jù)的多樣性程度顯然更勝一籌,也可證明HVE-GAN模型的性能優(yōu)于基線(xiàn)模型。
圖3 特征覆蓋對(duì)比
VE-GAN 的覆蓋能力雖然不如HVE-GAN,但它們之間的差距并不大,由此也可以證明模型結(jié)構(gòu)的修改是提高生成數(shù)據(jù)的多樣性程度的決定因素。又由圖3 可知,HVE-GAN 生成的數(shù)據(jù)雖然與基線(xiàn)模型相比其多樣性程度有了明顯的提高,但是與原始訓(xùn)練數(shù)據(jù)相比還有較大的差距。這是由于為了提高本次實(shí)驗(yàn)效率,對(duì)模型進(jìn)行的訓(xùn)練時(shí)間較短、訓(xùn)練不夠充分導(dǎo)致的。
實(shí)驗(yàn)三:損失函數(shù)修改有效性驗(yàn)證實(shí)驗(yàn)。
用于指導(dǎo)E-GAN 變異的損失函數(shù)共有3 種,除了Heuristic 損失函數(shù)外,還有Minimax 與Least Square 兩種損失函數(shù),其定義分別為:
經(jīng)推導(dǎo),Minimax 損失函數(shù)的優(yōu)化目標(biāo)相當(dāng)于最小化生成數(shù)據(jù)的實(shí)際分布概率與目標(biāo)分布概率之間的JS 散度;Least Square 損失函數(shù)的優(yōu)化目標(biāo)為縮小生成數(shù)據(jù)的實(shí)際分布概率與目標(biāo)分布概率之間的均方誤差。上述兩個(gè)函數(shù)的優(yōu)化目標(biāo)均為縮小生成數(shù)據(jù)的實(shí)際分布概率與目標(biāo)分布概率之間的距離,與本文的損失函數(shù)設(shè)計(jì)目標(biāo)是完全一致的。
E-GAN 生成器損失函數(shù)的變化情況如圖4a 所示,可見(jiàn),Heuristic 損失函數(shù)在E-GAN 訓(xùn)練過(guò)程中震蕩嚴(yán)重,由此可以推導(dǎo)出,在該損失函數(shù)指導(dǎo)下進(jìn)行訓(xùn)練的生成器模型梯度十分不穩(wěn)定,導(dǎo)致訓(xùn)練出的生成器生成數(shù)據(jù)的質(zhì)量參差不齊。
VE-GAN 生成器的損失函數(shù)變化趨勢(shì)如圖4b所示,由圖可知訓(xùn)練中VE-GAN 生成器的Heuristic損失函數(shù)震蕩幅度依然較大??梢?jiàn),即使進(jìn)行了模型結(jié)構(gòu)的改進(jìn),Heuristic 損失函數(shù)依然影響著生成器的性能。
如圖4c 所示,進(jìn)行了損失函數(shù)的更換的HVEGAN,訓(xùn)練中生成器的損失函數(shù)均呈平穩(wěn)下降的趨勢(shì),模型的收斂速度得到了顯著提升。由此可知,HVE-GAN 生成器的性能及生成數(shù)據(jù)的質(zhì)量得到了持續(xù)穩(wěn)定的提高??梢?jiàn)本文提出的損失函數(shù)的改進(jìn)是必要和有效的。
圖4 各生成模型生成器損失函數(shù)變化趨勢(shì)
針對(duì)“類(lèi)人”社交機(jī)器人檢測(cè)所需的訓(xùn)練數(shù)據(jù)不足的問(wèn)題,本文提出了一種數(shù)據(jù)集擴(kuò)充模型HVE-GAN,模型將生成器修改為VAE 結(jié)構(gòu),提高了生成的“類(lèi)人”社交機(jī)器人數(shù)據(jù)的“真實(shí)性”與多樣性;將Heuristic 損失函數(shù)修改為改進(jìn)的海林格距離,穩(wěn)定了生成器的梯度,提高了模型收斂速度,保證了生成數(shù)據(jù)的質(zhì)量。對(duì)比實(shí)驗(yàn)結(jié)果也充分表明,本文提出的HVE-GAN 模型,在生成數(shù)據(jù)“真實(shí)性”和多樣性方面優(yōu)于基線(xiàn)模型;在訓(xùn)練過(guò)程中其損失函數(shù)的變化趨勢(shì)更加平穩(wěn),從而證明了HVE-GAN 性能的優(yōu)越性及模型結(jié)構(gòu)修改的有效性。