孔 潔
(中國(guó)勞動(dòng)關(guān)系學(xué)院,北京 100048)
當(dāng)前,已全面跨入了大數(shù)據(jù)時(shí)代,但在很多具有重要研究?jī)r(jià)值領(lǐng)域,因其數(shù)據(jù)采集困難而受限制,比如作戰(zhàn)數(shù)據(jù)、作戰(zhàn)文書和裝備數(shù)據(jù)等[1-3]。軍事數(shù)據(jù)是作戰(zhàn)推演、作戰(zhàn)模擬的基礎(chǔ),目前數(shù)據(jù)的生成依然高度依賴人工要素,導(dǎo)致成本高昂且效率低下,實(shí)現(xiàn)高效自主的數(shù)據(jù)生產(chǎn)成為提升模擬、推演成效的必要突破點(diǎn)[4]。數(shù)據(jù)生成的本質(zhì)即通過數(shù)據(jù)之間的數(shù)學(xué)運(yùn)算得到預(yù)期的數(shù)據(jù)結(jié)果,神經(jīng)網(wǎng)絡(luò)相關(guān)的人工智能技術(shù)有望成為數(shù)據(jù)生成的有力工具。例如,文獻(xiàn)[5]針對(duì)傳統(tǒng)的Fuzz 測(cè)試普遍存在挖掘深度不足、樣本沒有指向性問題,提出一種使用長(zhǎng)短期記憶網(wǎng)絡(luò)引導(dǎo)生成瀏覽器Fuzz 所需的樣本集的框架,從而克服了傳統(tǒng)瀏覽器Fuzz 中樣本挖掘深度不足、指向性弱的問題。文獻(xiàn)[6]在深度學(xué)習(xí)技術(shù)的基礎(chǔ)上引入遷移學(xué)習(xí)技術(shù),提取出預(yù)訓(xùn)練模型的權(quán)重和樣本特征,實(shí)現(xiàn)了目標(biāo)小數(shù)據(jù)集訓(xùn)練與生成。文獻(xiàn)[7]基于卷積神經(jīng)網(wǎng)絡(luò),利用人類視覺和卷積模型在識(shí)別物體中表現(xiàn)出的形狀偏好特性,通過顏色模型的擾動(dòng)變換來(lái)生成對(duì)抗樣本,提出了一種基于顏色模型的語(yǔ)義對(duì)抗樣本生成方法。文獻(xiàn)[8]基于DQN 算法實(shí)現(xiàn)智能體的自主尋路,為此提出了基于白盒的樣本生成算法,從而使其通過自主尋路無(wú)法達(dá)到應(yīng)有的最優(yōu)最短路徑,并有效降低模型的運(yùn)算量。
由于深度學(xué)習(xí)采用了多層網(wǎng)絡(luò)結(jié)構(gòu),其模型復(fù)雜度比傳統(tǒng)的單隱含層模型要大得多,為了確保模型的泛化能力,就必須相應(yīng)地增大訓(xùn)練數(shù)據(jù)[9]。當(dāng)前在工業(yè)界取得突破的基于機(jī)器學(xué)習(xí)或深度學(xué)習(xí)的人工智能應(yīng)用,對(duì)訓(xùn)練樣本都有著數(shù)量上的要求,而訓(xùn)練模型所必須的海量訓(xùn)練數(shù)據(jù)樣本難以獲取,已經(jīng)成為阻礙深度學(xué)習(xí)技術(shù)進(jìn)一步推廣的一個(gè)普遍性難題[10]。
本文在生成對(duì)抗網(wǎng)絡(luò)(GAN)[11]框架的基礎(chǔ)上,構(gòu)建長(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)代替生成對(duì)抗網(wǎng)絡(luò)中的生成器和鑒別器,以最大平均差異和最大似然估計(jì)作為指標(biāo),構(gòu)建數(shù)據(jù)生成評(píng)估模型,提出一種可生成實(shí)值數(shù)據(jù)序列的循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)(RCGAN)。該方法完全依靠數(shù)據(jù)驅(qū)動(dòng),無(wú)需經(jīng)過精心設(shè)計(jì)的建模過程,生成數(shù)據(jù)與真實(shí)數(shù)據(jù)一致,魯棒性強(qiáng),受噪聲的干擾較小,具有很好的泛化性。
生成對(duì)抗網(wǎng)絡(luò)(GAN)是最先進(jìn)的AI 框架[12],作為一種數(shù)據(jù)生成框架已顯示出卓越的應(yīng)用優(yōu)勢(shì),其核心思想是在生成器和鑒別器之間建立博弈關(guān)系。生成對(duì)抗網(wǎng)絡(luò)的一般結(jié)構(gòu)如圖1 所示,由生成器與鑒別器兩部分組成,其中,生成器用于學(xué)習(xí)真實(shí)數(shù)據(jù)樣本的潛在分布,并基于學(xué)習(xí)到的分布生成新樣本;鑒別器用于判別其輸入屬于真實(shí)樣本還是生成器生成的樣本[13]。
圖1 生成對(duì)抗網(wǎng)絡(luò)
在生成對(duì)抗網(wǎng)絡(luò)(GAN)中,生成器和鑒別器通過反向傳播,分別提高了它們的生成能力和鑒別能力。對(duì)于生成器,其反向傳播過程旨在縮小生成的數(shù)據(jù)與實(shí)際數(shù)據(jù)之間的差距。當(dāng)所生成的數(shù)據(jù)和實(shí)數(shù)據(jù)被輸入到鑒別器時(shí),鑒別器輸出的是實(shí)數(shù)據(jù)的預(yù)測(cè)概率。鑒別器的反向傳播用于擴(kuò)展真實(shí)數(shù)據(jù)和生成數(shù)據(jù)之間的預(yù)測(cè)概率。
從目標(biāo)數(shù)據(jù)分布pd行采樣,使用生成器生成目標(biāo)數(shù)據(jù)的概率為:
式中,θ 是發(fā)生器的網(wǎng)絡(luò)參數(shù),其訓(xùn)練目的就是找到能夠最大化L 的θ*[14]:
長(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM-RNN)已經(jīng)被證明能夠通過記憶細(xì)胞在向后傳輸?shù)臅r(shí)間步中獲取信息來(lái)學(xué)習(xí)復(fù)雜的時(shí)間序列。如下頁(yè)圖2 所示,長(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM-RNN)是在RNN 網(wǎng)絡(luò)的基礎(chǔ)上搭建LSTM 單元,以解決RNN 所存在的長(zhǎng)期依賴以及梯度爆炸問題,從而能夠在任意時(shí)間間隔內(nèi)記住有價(jià)值的信息。
圖2 長(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)
為了處理時(shí)間序列數(shù)據(jù),本文用LSTM-RNN 代替生成對(duì)抗網(wǎng)絡(luò)的生成器和鑒別器。按照常規(guī)的生成對(duì)抗網(wǎng)絡(luò)的框架架構(gòu),將生成對(duì)抗網(wǎng)絡(luò)模型訓(xùn)練成二人極大極小博弈。
其中,生成器是LSTM-RNN 模型,定義其生成樣本的概率分布Grnn(z),z 服從隨機(jī)分布。鑒別器是另一種LSTM-RNN 模型,通過訓(xùn)練能夠使其預(yù)測(cè)和序列標(biāo)簽之間的平均交叉熵最小化。鑒頻器的損失函數(shù)為:
同時(shí),生成器被訓(xùn)練來(lái)混淆鑒別器,以便鑒別器能夠盡可能多地識(shí)別出真實(shí)的生成樣本。生成器的損失函數(shù)是:
基于生成對(duì)抗網(wǎng)絡(luò)框架,鑒別器和生成器選用LSTM-RNN 結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),在此基礎(chǔ)上提出一種可生成數(shù)據(jù)序列的循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)(RCGAN)。如圖3 所示,生成器在每個(gè)時(shí)間步長(zhǎng)采用不同的隨機(jī)種子,如果想用額外的數(shù)據(jù)對(duì)生成的序列進(jìn)行條件設(shè)置,則還要加上額外的輸入。由此,在每個(gè)時(shí)間步長(zhǎng)上接受一個(gè)額外的輸入,以約束輸出。
圖4 中展示了鑒別器如何獲取生成的序列。鑒別器獲取真實(shí)/合成序列,并為每一個(gè)時(shí)間步長(zhǎng)生成一個(gè)真實(shí)/合成分類。但對(duì)于RCGAN,它還在每個(gè)時(shí)間步長(zhǎng)上接受一個(gè)額外的輸入,以約束輸出,并對(duì)輸入序列的每一個(gè)時(shí)間步長(zhǎng)生成一個(gè)合成的或真實(shí)的分類。
圖4 鑒別器數(shù)據(jù)輸出
在每一批訓(xùn)練集中,鑒別器將同時(shí)處理真實(shí)序列和合成序列。于是,對(duì)于真實(shí)序列,將yn的標(biāo)簽設(shè)為“1”;對(duì)于合成序列,則將yn的標(biāo)簽設(shè)為“0”。
生成器的目標(biāo)是“欺騙”鑒別器,將其輸出的分類認(rèn)定為真。這也就是說,生成器希望將鑒別器將預(yù)測(cè)序列與“真”標(biāo)簽之間的交叉熵最小化。根據(jù)式(5)得到關(guān)于{zn}的生成器損失:
式中,zn是獨(dú)立于噪聲空間的采樣序列。
為了在RCGAN 中不因?yàn)檫z忘門而對(duì)條件信息打折扣,于是對(duì)每個(gè)LSTM-RNN 的樣本輸入,在每個(gè)時(shí)間步長(zhǎng)中采用條件信息cn來(lái)進(jìn)行擴(kuò)增。
生成對(duì)抗網(wǎng)絡(luò)的性能評(píng)估中,由于生成器和鑒別器并不容易檢測(cè),一直是極具挑戰(zhàn)性的工作。為此,在對(duì)循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)(RCGAN)的性能評(píng)估中,本文構(gòu)建了一種可量化的評(píng)估方法。
對(duì)于時(shí)間序列中的核函數(shù),將生成的樣本以及真實(shí)的樣本通過確定時(shí)間軸對(duì)齊,然后再將時(shí)間序列作為向量進(jìn)行比較。
此外,為更好地反映生成數(shù)據(jù)概率的趨勢(shì),如圖5 所示構(gòu)建了循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)的最大似然估計(jì)模型[15]:
圖5 循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)的最大似然估計(jì)模型
本文實(shí)驗(yàn)環(huán)境主要包括計(jì)算平臺(tái)和環(huán)境配置兩部分。其環(huán)境配置詳細(xì)參數(shù)如表1 所示。
表1 環(huán)境配置參考表
為檢驗(yàn)本算法的有效性與可比性,實(shí)驗(yàn)數(shù)據(jù)選用了MNIST 數(shù)據(jù)集、正弦波信號(hào)數(shù)據(jù)集,以及任意平滑波形數(shù)據(jù)集。其中,MNIST 數(shù)據(jù)集由美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究所提供,是經(jīng)典的人工智能訓(xùn)練測(cè)試數(shù)據(jù),被廣泛用于不同算法間的性能比對(duì)及驗(yàn)證,訓(xùn)練結(jié)果具有很強(qiáng)的公平性和說服力。其數(shù)據(jù)來(lái)自于250 個(gè)不同人手寫數(shù)字,由0~9 十個(gè)手寫數(shù)字組成,包含70 000 張28×28 手寫數(shù)字的灰度圖片,分為訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集。由于正弦波數(shù)據(jù)集具有易于檢查、確認(rèn)的優(yōu)勢(shì),而且可通過改變振幅和頻率對(duì)任意波形進(jìn)行擬合,因而選用了這類數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。在實(shí)際軍事應(yīng)用中,通常希望能夠生成更為復(fù)雜的信號(hào)數(shù)據(jù)。因此,實(shí)驗(yàn)中又考慮了軍事通信平滑波形數(shù)據(jù)。
實(shí)驗(yàn)中將每個(gè)28×28 手寫數(shù)字轉(zhuǎn)換為784 維的向量,運(yùn)用算法進(jìn)行MNIST 數(shù)字自動(dòng)生成。通過數(shù)據(jù)的生成,可以容易且直觀地評(píng)價(jià)數(shù)據(jù)生成效果,也足以檢驗(yàn)算法的有效性和精確性。如圖6 所示,展示了方法在生成平滑數(shù)據(jù)序列訓(xùn)練過程中鑒別器損失、生成器損失、MMD2以及最大似然估計(jì)值的分布情況。說明該方法并不知道底層的數(shù)據(jù)分布,而是完全依靠數(shù)據(jù)驅(qū)動(dòng),通過模型自主學(xué)習(xí)獲得真實(shí)數(shù)據(jù)的分布規(guī)律。
圖6 算法訓(xùn)練指標(biāo)效果
如圖7 所示,為算法進(jìn)行100 次自主訓(xùn)練,所生成的手寫數(shù)字。其中,剛開始訓(xùn)練時(shí)所生成的數(shù)字難以辨認(rèn),隨著訓(xùn)練次數(shù)的增加,各數(shù)字特征越來(lái)越明顯。如圖8 所示,當(dāng)算法訓(xùn)練100 次后,所生成的手寫數(shù)字已經(jīng)跟MNIST 真實(shí)數(shù)據(jù)集難以區(qū)分。
圖7 手寫數(shù)字自主生成效果
圖8 算法生成數(shù)據(jù)與MNIST 真實(shí)數(shù)據(jù)比對(duì)
如圖9 所示,給出了不同訓(xùn)練迭代次數(shù)下樣本似然分布的演化過程。在迭代1,代理似然值非常低,因?yàn)樗惴ㄉ傻膱D像僅僅是隨機(jī)噪聲。隨著訓(xùn)練不斷遞增,概率分布向高值轉(zhuǎn)移,所得數(shù)據(jù)效果也越來(lái)越好。
圖9 不同迭代次數(shù)下的最大似然概率分布
在這個(gè)MNIST 數(shù)字生成實(shí)驗(yàn)中,為了評(píng)估和比較本文算法的性能,將本文算法與經(jīng)典GAN 算法進(jìn)行了比對(duì)實(shí)驗(yàn)。如圖10 所示,是分別運(yùn)用本文算法訓(xùn)練100 次后所生成的手寫數(shù)字,以及使用GAN算法訓(xùn)練100 次后所生成的手寫數(shù)字。相比較,同樣訓(xùn)練次數(shù)下本文生成的數(shù)據(jù)明顯優(yōu)于使用GAN生成的圖像,所得數(shù)據(jù)分辨率更高、噪聲更低。此外,如下頁(yè)圖11 所示,在對(duì)GAN 增加一倍訓(xùn)練次數(shù)后所生成的數(shù)據(jù)也稍遜于本文算法所生成的數(shù)據(jù)。這意味著經(jīng)典GAN 的思想雖可在廣泛領(lǐng)域得到運(yùn)用,但本文算法更適合樣本數(shù)據(jù)生成。
圖10 本文算法與經(jīng)典GAN(Epoch 100)效果比對(duì)
圖11 本文算法與經(jīng)典GAN(Epoch 200)效果比對(duì)
本文還對(duì)其他兩種數(shù)據(jù)集進(jìn)行了實(shí)驗(yàn),如圖12所示,為生成的正弦波信號(hào)數(shù)據(jù)。通過肉眼就可判定該數(shù)據(jù)波形穩(wěn)定,相位、振幅滿足正弦波信號(hào)要求。如圖13 所示,為生成的軍事通信平滑波形數(shù)據(jù)。為比較生成數(shù)據(jù)效果,在圖中加入了真實(shí)平滑波形,即綠色虛線所示。比較可知,所生成的數(shù)據(jù)與真實(shí)數(shù)據(jù)相差無(wú)幾,能夠達(dá)到數(shù)據(jù)生成的要求。
圖12 生成的正弦波信號(hào)數(shù)據(jù)
圖13 生成的任意平滑波形數(shù)據(jù)
如圖14 所示,計(jì)算了3 種生成數(shù)據(jù)的最大似然概率分布。其中,從MNIST 數(shù)據(jù)集獲得的樣本的最高似然估計(jì)值;正弦波信號(hào)包含了不同的振幅和相位,估計(jì)的可能性相對(duì)較低;軍事通信平滑波形據(jù)集的概率要小得多,這是因?yàn)槠交ㄐ螖?shù)據(jù)集的樣本比MNIST 以及正弦波信號(hào)的樣本更多樣化所致。
圖14 針對(duì)不同數(shù)據(jù)的最大似然概率分布
本文在生成對(duì)抗網(wǎng)絡(luò)(GAN)框架的基礎(chǔ)上,構(gòu)建長(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM-RNN)代替生成對(duì)抗網(wǎng)絡(luò)中的生成器和鑒別器,以最大平均差異和最大似然估計(jì)作為指標(biāo)構(gòu)建了數(shù)據(jù)生成評(píng)估模型,提出了一種基于循環(huán)條件生成對(duì)抗網(wǎng)絡(luò)的數(shù)據(jù)生成方法。該方法完全依靠數(shù)據(jù)驅(qū)動(dòng),無(wú)需經(jīng)過精心設(shè)計(jì)的建模過程,生成的新數(shù)據(jù)也并不是對(duì)原始數(shù)據(jù)的簡(jiǎn)單復(fù)制與拼接,而是學(xué)習(xí)到了真實(shí)數(shù)據(jù)分布規(guī)律,生成了全新的、有效的新數(shù)據(jù)。與傳統(tǒng)數(shù)據(jù)生成方法相比,本文方法具有較強(qiáng)的魯棒性,受噪聲的干擾較小,有很好的泛化性,在對(duì)真實(shí)數(shù)據(jù)相似度的提升上也得到了很好的效果,有效緩解了數(shù)據(jù)生成人工依賴性強(qiáng)、成本高、效率低的問題,對(duì)軍事關(guān)鍵、敏感領(lǐng)域的數(shù)據(jù)獲取提供了一種新的有效途徑。