于夢(mèng)珂
摘? ?要:21世紀(jì)以來,在大數(shù)據(jù)、云計(jì)算和物聯(lián)網(wǎng)等新興技術(shù)不斷成熟的大背景下,人工智能得到了第3次井噴式發(fā)展。其中,以深度學(xué)習(xí)為基礎(chǔ)的圖像處理、語音識(shí)別等技術(shù)的發(fā)展尤為迅猛。而生成式對(duì)抗網(wǎng)絡(luò)是如今深度學(xué)習(xí)領(lǐng)域中最為前沿也是最令人著迷的領(lǐng)域之一,它自2014年10月被Ian Goodfellow等提出以后,就一直受到人們的廣泛關(guān)注與追捧。文章從生成式對(duì)抗網(wǎng)絡(luò)的基本原理出發(fā),分析了生成式對(duì)抗網(wǎng)絡(luò)的研究現(xiàn)狀及其主要的應(yīng)用領(lǐng)域,并對(duì)生成式對(duì)抗網(wǎng)絡(luò)進(jìn)行了總結(jié)與展望。
關(guān)鍵詞:生成式對(duì)抗網(wǎng)絡(luò);深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò);人工智能
自1956年McCarthy提出“人工智能”一詞以來,人工智能的發(fā)展幾經(jīng)波折。而最近幾年,得益于數(shù)據(jù)量指數(shù)級(jí)的增長(zhǎng)以及計(jì)算機(jī)運(yùn)算力的大幅度提升,人工智能的發(fā)展又一次達(dá)到了巔峰階段。雖然人工智能最近幾年得到了快速發(fā)展,但人們?nèi)匀黄毡檎J(rèn)為,機(jī)器離真正的智能還有很大的距離,機(jī)器永遠(yuǎn)不可能替代人類。而自從Ian Goodfellow在2014年10月提出了生成式對(duì)抗網(wǎng)絡(luò)(Generative adversarial networks,GAN)之后,人們的思想就發(fā)生了很大的變化。生成式對(duì)抗網(wǎng)絡(luò)GAN主要采用無監(jiān)督的學(xué)習(xí)方式,自動(dòng)從源數(shù)據(jù)中進(jìn)行學(xué)習(xí),在不需要人工對(duì)數(shù)據(jù)集進(jìn)行標(biāo)注的情況下就可以產(chǎn)生令人驚嘆的效果,從而使機(jī)器真正實(shí)現(xiàn)了所謂的“智能”。
首先,本文介紹生成式對(duì)抗網(wǎng)絡(luò)GAN的原理;其次,介紹生成式對(duì)抗網(wǎng)絡(luò)的一系列衍生模型,主要包括條件生成對(duì)抗網(wǎng)絡(luò)CGAN以及基于Wasserstein距離的生成對(duì)抗網(wǎng)絡(luò)WGAN;再次,介紹生成式對(duì)抗網(wǎng)絡(luò)GAN以及其衍生模型的應(yīng)用。最后,對(duì)生成式對(duì)抗網(wǎng)絡(luò)進(jìn)行了總結(jié)與展望。
1? ? 生成式對(duì)抗網(wǎng)絡(luò)原理
生成式對(duì)抗網(wǎng)絡(luò)GAN的根本思想來源于博弈論中的二人零和博弈,其結(jié)構(gòu)包含一個(gè)生成器和一個(gè)判別器,通過生成器和判別器的相互對(duì)抗實(shí)現(xiàn)學(xué)習(xí)。生成器會(huì)盡自己最大的努力去生成和源數(shù)據(jù)分布相同的數(shù)據(jù),使得判別器無法區(qū)分哪些數(shù)據(jù)是真實(shí)的,哪些數(shù)據(jù)是生成器生成的。而判別器,會(huì)盡可能地準(zhǔn)確判斷輸入的數(shù)據(jù)中哪些是真實(shí)的數(shù)據(jù),哪些是生成器生成的數(shù)據(jù)。為了在這樣的二人零和博弈中勝出,生成器會(huì)努力提高自己的生成能力,判別器則努力提高自己的判別能力,最終目標(biāo)就是達(dá)到生成器和判別器之間的納什均衡。生成式對(duì)抗網(wǎng)絡(luò)GAN模型的目標(biāo)函數(shù)如公式(1)所示。
(1)
在公式(1)中,pdata表示真實(shí)數(shù)據(jù)的分布情況,pz表示由生成器生成的數(shù)據(jù)的分布情況。當(dāng)訓(xùn)練生成器時(shí),我們希望損失函數(shù)V(D,G)越小越好,當(dāng)訓(xùn)練判別器時(shí),我們希望損失函數(shù)V(D,G)越大越好。所以,從根源上來講,生成式對(duì)抗網(wǎng)絡(luò)就是一個(gè)極大、極小問題。
生成式對(duì)抗網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。隨機(jī)生成的符合某一分布的噪聲數(shù)據(jù)z輸入到生成器G中,由生成器生成和真實(shí)數(shù)據(jù)分布一致的數(shù)據(jù)。然后,把真實(shí)的數(shù)據(jù)x和生成器生成的數(shù)據(jù)G(z)一并輸入到判別器D中,隨后,判別器D會(huì)盡自己最大的努力判斷輸入的數(shù)據(jù)到底是真實(shí)的數(shù)據(jù),還是生成器生成的數(shù)據(jù)。最后,根據(jù)判別的結(jié)果來相應(yīng)地調(diào)整生成器和判別器,直到判別器無法正確判斷輸入的數(shù)據(jù)是真實(shí)的數(shù)據(jù)還是生成器生成的數(shù)據(jù),模型訓(xùn)練成功,生成器和判別器此時(shí)達(dá)到納什均衡。
2? ? 生成式對(duì)抗網(wǎng)絡(luò)的衍生模型
隨著人們對(duì)生成式對(duì)抗網(wǎng)絡(luò)的研究進(jìn)入白熱化時(shí)期,原始GAN的一些問題也越來越受到關(guān)注,比如模型崩塌、模型過于自由不可控、模型不收斂等。為了解決這些問題,人們提出了GAN的許多衍生模型。截至目前,GAN的衍生模型已經(jīng)達(dá)到幾百種,并且衍生模型的數(shù)量仍以很快的速度在不斷增長(zhǎng)。在此,列舉一些常見的GAN衍生模型。
2.1? CGAN
首先,在原始的GAN模型中,生成器的輸入是符合某種分布的隨機(jī)噪聲數(shù)據(jù),模型的輸出是和真實(shí)數(shù)據(jù)分布一致的隨機(jī)數(shù)據(jù),這兩個(gè)過程都是隨機(jī)的,生成的過程太過自由,沒有辦法控制數(shù)據(jù)的生成過程,這樣就不容易得到想要的結(jié)果。其次,雖然監(jiān)督的神經(jīng)網(wǎng)絡(luò)在很多領(lǐng)域取得了成功,但是如果預(yù)測(cè)輸出的類別太多,這些模型還是會(huì)存在一些問題。最后,截至目前,大部分工作都集中在學(xué)習(xí)從輸入到輸出的一對(duì)一映射,但現(xiàn)實(shí)中有很多問題是一對(duì)多的映射。比如在對(duì)圖像進(jìn)行標(biāo)記的時(shí)候,一張圖片可以有不同的標(biāo)簽,比如一種圖片同時(shí)有白色的、貓、有尾巴這樣不同的標(biāo)簽。那這個(gè)就是一對(duì)多的映射關(guān)系。原始的GAN模型無法解決一對(duì)多映射的問題。
基于以上原始GAN模型存在的問題,Mirza[1]在2014年提出了條件生成對(duì)抗網(wǎng)絡(luò)CGAN。在CGAN模型中,作者給生成器和判別器都加了限制條件,這個(gè)限制條件可以是標(biāo)簽,也可以是不同模態(tài)的數(shù)據(jù),然后通過給模型輸入數(shù)據(jù)和標(biāo)簽來構(gòu)建條件生成對(duì)抗網(wǎng)絡(luò),這樣就能夠使CGAN模型快速地達(dá)到收斂條件。
2.2? WGAN
在原始的GAN模型中,首先,需要最小化生成數(shù)據(jù)的分布與真實(shí)數(shù)據(jù)的分布之間的JS散度。但JS距離很多情況下都是常數(shù),梯度下降時(shí),會(huì)產(chǎn)生梯度消失。其次,生成樣本缺乏多樣性。在原始GAN的最優(yōu)判別器下,會(huì)導(dǎo)致出現(xiàn)梯度不穩(wěn)定現(xiàn)象,而KL散度具有不對(duì)稱性,會(huì)出現(xiàn)模式崩塌現(xiàn)象。
基于以上原始的GAN存在的問題,Arjovsky[2]提出了原始GAN的改進(jìn)版本W(wǎng)GAN,把Wasserstein距離引入到了生成式對(duì)抗網(wǎng)絡(luò)模型中。在WGAN模型中,作者把原始GAN中的散度用Wasserstein距離來代替,把Wasserstein距離作為優(yōu)化目標(biāo),從根本上解決了原始生成式對(duì)抗網(wǎng)絡(luò)中經(jīng)常會(huì)出現(xiàn)的梯度消失問題。
3? ? 生成式對(duì)抗網(wǎng)絡(luò)的應(yīng)用
生成式對(duì)抗網(wǎng)絡(luò)最根本的應(yīng)用就是生成和原始數(shù)據(jù)分布一致的數(shù)據(jù)?;谶@一本質(zhì),近年來,生成式對(duì)抗網(wǎng)絡(luò)在很多領(lǐng)域都取得了良好的應(yīng)用,尤其是在圖像、語音和語言等領(lǐng)域,都達(dá)到了很高的準(zhǔn)確度。
3.1? 圖像
生成式對(duì)抗網(wǎng)絡(luò)應(yīng)用最廣泛的領(lǐng)域就是圖像領(lǐng)域。圖像領(lǐng)域一經(jīng)應(yīng)用,就因其強(qiáng)大的生成能力得到了人們的廣泛關(guān)注。首先,生成式對(duì)抗網(wǎng)絡(luò)可以由低分辨率圖像生成高分辨率圖像。Wu等[3]提出的SRPGAN模型,對(duì)原始的低分辨率圖像進(jìn)行縮放之后,由生成器進(jìn)行編碼和解碼,最終生成高分辨率圖像[4]。其次,生成式對(duì)抗網(wǎng)絡(luò)還可以用在機(jī)器學(xué)習(xí)中經(jīng)常見到的圖像分類任務(wù)中。原始的GAN是無監(jiān)督模型,對(duì)其判別器進(jìn)行改進(jìn),即可用于分類任務(wù),Improved GANs是典型的用GAN來做圖像分類的例子。最后,生成式對(duì)抗網(wǎng)絡(luò)可以用于圖像風(fēng)格的轉(zhuǎn)換。利用CycleGAN不需要其他額外的信息就可以將一張圖像從源領(lǐng)域映射到目標(biāo)領(lǐng)域,可以把馬變成斑馬等。
3.2? 語音和語言
原始的GAN模型主要用在處理連續(xù)的數(shù)據(jù)中,而在離散數(shù)據(jù)上的應(yīng)用效果并不好。隨著研究的深入,人們提出了許多改進(jìn)的生成式對(duì)抗網(wǎng)絡(luò)模型,使其在處理離散型數(shù)據(jù)問題時(shí)也能得到較好的結(jié)果。比較著名的就是SeqGAN模型[5],SeqGAN模型中的生成器采用遞歸神經(jīng)網(wǎng)絡(luò)RNN的改進(jìn)模型LSTM,在文本生成中取得了較好的效果,該模型在其他的離散型數(shù)據(jù)生成中同樣表現(xiàn)良好。
3.3? 其他
生成式對(duì)抗網(wǎng)絡(luò)與其他常用的機(jī)器學(xué)習(xí)算法相結(jié)合,可以得到意想不到的結(jié)果。在SeqGAN模型中,利用強(qiáng)化學(xué)習(xí)與生成式對(duì)抗網(wǎng)絡(luò)相結(jié)合,解決了非連續(xù)性序列生成的問題,可用于序列數(shù)據(jù)的生成。實(shí)驗(yàn)表明,SeqGAN在文本、詩詞和音樂的生成上都取得了很好的結(jié)果。此外,生成式對(duì)抗網(wǎng)絡(luò)與模仿學(xué)習(xí)相結(jié)合、與Actor-critic方法相結(jié)合都取得了良好的應(yīng)用效果[6]。
4? ? 結(jié)語
LeCun在Quora上寫道:“生成式對(duì)抗網(wǎng)絡(luò)及其相關(guān)的變化,是我認(rèn)為的機(jī)器學(xué)習(xí)領(lǐng)域近10年最有趣的想法。”讓網(wǎng)絡(luò)來監(jiān)督網(wǎng)絡(luò),采用二人零和博弈的對(duì)抗思想來解決問題,是深度學(xué)習(xí)在人工智能方向上的一大進(jìn)步。雖然現(xiàn)在的生成式對(duì)抗網(wǎng)絡(luò)及其衍生模型還存在很多問題,仍處于發(fā)展的初期階段,但隨著人們對(duì)其研究的深入,生成式對(duì)抗網(wǎng)絡(luò)的應(yīng)用領(lǐng)域會(huì)越來越寬廣,會(huì)給人類帶來越來越高的應(yīng)用價(jià)值。
[參考文獻(xiàn)]
[1]MIRZA M,OSINDERO S.Conditional generative adversarial nets[EB/OL].(2014-11-04)[2019-05-10].https://arxiv.org/abs//1411.1784.
[2]ARJOVSKY M,CHINTALA S,BOTTOU L.Wasserstein generative adversarial networks[C].Sydney:International Conference on Machine Learning,2017.
[3]WU B,DUAN H,LIU Z,et al.Srpgan:perceptual generative adversarial network for single image super resolution[EB/OL].(2017-12-05)[2019-05-10].https://arxiv.org/abs//1712.05927,2017.
[4]趙增順,高寒旭,孫騫,等.生成對(duì)抗網(wǎng)絡(luò)理論框架、衍生模型與應(yīng)用最新進(jìn)展[J].小型微型計(jì)算機(jī)系統(tǒng),2018(12):2602-2606.
[5]LANTAO Y,WEINAN Z,JUN W,et al.SeqGAN:sequence generative adversarial nets with policy gradient[EB/OL].(2016-09-15)[2019-05-10].https://arxiv.org/abs/1609.05473.
[6]王坤峰,茍超,段艷杰.生成式對(duì)抗網(wǎng)絡(luò)GAN的研究進(jìn)展與展望[J].自動(dòng)化學(xué)報(bào),2017(3):321-332.
Abstract:Since of 21 century, artificial intelligence has been developed for the third time under the background of big data, cloud computing and Internet of things and other emerging technologies have been matured. Among them, the development of image processing and speech recognition technology based on deep learning is particularly rapid. Generative antagonistic network is one of the most advanced and fascinating areas in the field of deep learning. Since it was put forward by Ian Goodfellow et al in October 2014, it has been widely concerned and sought after. Based on the basic principle of generative countermeasures network, this paper analyzes the characteristics of generative countermeasures networks. The research status and main application fields are studied, and the generated countermeasures network is summarized and prospected.
Key words:generated antagonistic network; deep learning; neural network; artificial intelligence