国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

機(jī)器學(xué)習(xí)GAN框架初探

2019-09-25 13:22:14閆東杰
關(guān)鍵詞:機(jī)器學(xué)習(xí)人工智能

閆東杰

摘要:對(duì)于機(jī)器學(xué)習(xí),最常見(jiàn)的是按照數(shù)據(jù)標(biāo)簽形式劃分,可分為:監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí)。本文分析研究了機(jī)器學(xué)習(xí)GAN框架。

關(guān)鍵詞:人工智能;機(jī)器學(xué)習(xí);無(wú)監(jiān)督學(xué)習(xí)

中圖分類號(hào):TP181 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)06-0195-02

0 引言

對(duì)于原始的GAN網(wǎng)絡(luò),實(shí)際上還是種生成模型,與傳統(tǒng)的生成模型不同的是,在對(duì)生成器進(jìn)行訓(xùn)練的過(guò)程中,引入判別器,并對(duì)判別器訓(xùn)練更新后,再進(jìn)行生成器的訓(xùn)練,然后通過(guò)交替訓(xùn)練,最終得到較為理想的生成器,“順便”得到一個(gè)判別能力較強(qiáng)的判別器。這樣,用一種巧妙的方法,較好解決了傳統(tǒng)生成式模型中模擬最大似然估計(jì)過(guò)程所帶來(lái)的需要訓(xùn)練復(fù)雜模型的問(wèn)題。CNN(卷積神經(jīng)網(wǎng)絡(luò))在圖片生成方面是一個(gè)較為成熟的模型,將CNN引入,對(duì)GAN框架中生成器與判別器進(jìn)行對(duì)應(yīng)的改造,得到的便為DCGAN(深度卷積生成式對(duì)抗網(wǎng)絡(luò))。

1 原始GAN框架

GAN的一個(gè)基本的應(yīng)用是樣本生成,這里以圖片為例進(jìn)行相關(guān)的樣本生成,以此來(lái)介紹GAN框架的基本組成、模塊結(jié)構(gòu)、訓(xùn)練過(guò)程。原始GAN框架的整體模型結(jié)構(gòu)如圖1所示。

GAN框架最主要的構(gòu)成是生成器與判別器:(1)生成器。為全連接的神經(jīng)網(wǎng)絡(luò),即多層感知機(jī)。多層感知機(jī)的參數(shù)在GAN運(yùn)行的初始階段是隨機(jī)的,其內(nèi)部各神經(jīng)元的權(quán)重、偏值,在程序化時(shí)可由初始函數(shù)進(jìn)行實(shí)現(xiàn)。這就是說(shuō),在剛開(kāi)始引入的時(shí)候,并不需要對(duì)生成網(wǎng)絡(luò)進(jìn)行預(yù)先的訓(xùn)練。其通過(guò)前向傳播,盡量去模仿、建模和學(xué)習(xí)真實(shí)數(shù)據(jù)的分布規(guī)律。通過(guò)反向傳播來(lái)學(xué)習(xí)并進(jìn)行內(nèi)部參數(shù)更新。(2)判別器。其本質(zhì)為全連接型的神經(jīng)網(wǎng)絡(luò)構(gòu)成的二分類器。其參數(shù)在初始時(shí)內(nèi)部參數(shù)是隨機(jī)生成的,同樣不需要預(yù)先進(jìn)行參數(shù)設(shè)置或者訓(xùn)練。其判別自己所得到的一個(gè)輸入數(shù)據(jù),到底是來(lái)自于真實(shí)的數(shù)據(jù)分布還是來(lái)自于一個(gè)生成模型,輸出結(jié)果為一個(gè)概率值,表明判別器認(rèn)為數(shù)據(jù)來(lái)自真實(shí)分布的概率。通過(guò)反向傳播來(lái)進(jìn)行參數(shù)更新。(3)其他模塊。GAN框架中,除了最主要的生成器和判別器,還有些重要的功能模塊。①噪聲處理模塊;隨機(jī)噪聲Z是具有某個(gè)已知分布的噪聲,分布的類型可以進(jìn)行設(shè)定的,常用的分布有高斯分布與平均分布。隨機(jī)噪聲對(duì)于生成網(wǎng)絡(luò)的輸入,效果相當(dāng)于對(duì)自動(dòng)控制系統(tǒng)輸入簡(jiǎn)單的單位信號(hào),當(dāng)?shù)玫捷敵鼋Y(jié)果時(shí),其拉普拉斯變換后的函數(shù)就是系統(tǒng)的傳遞函數(shù)。同理,這樣對(duì)于輸出圖片的分布的參數(shù)就是生成網(wǎng)絡(luò)的內(nèi)部參數(shù)。通過(guò)預(yù)處理轉(zhuǎn)化模塊,對(duì)于原始的GAN來(lái)講,轉(zhuǎn)化為一維的特征向量,這樣才能與后面的生成網(wǎng)絡(luò)輸入層進(jìn)行對(duì)接。這樣處理后的數(shù)據(jù)更加的清晰,且特征的個(gè)數(shù)對(duì)應(yīng)著輸入層神經(jīng)元的個(gè)數(shù)。②生成分布抽樣模塊;③真實(shí)樣本預(yù)處理模塊;④損失函數(shù)計(jì)算模塊。

2 “對(duì)抗”訓(xùn)練

GAN框架的基本思想,就是通過(guò)一個(gè)生成神經(jīng)網(wǎng)絡(luò)去模擬真實(shí)給定的數(shù)據(jù),這個(gè)神經(jīng)網(wǎng)絡(luò)模擬的是最大似然估計(jì)的過(guò)程,從而達(dá)到生成的目的。優(yōu)化生成器是通過(guò)引入判別器后,順承判別器的更新,進(jìn)行反向傳播優(yōu)化的?,F(xiàn)在有一個(gè)神經(jīng)網(wǎng)絡(luò)模型,希望它的參數(shù)可以達(dá)到最優(yōu),然后通過(guò)模擬最大似然估計(jì)的過(guò)程,很明顯,最后也會(huì)得到“真實(shí)圖片”。所以有以下式(1):

(1)

式中:G為生成器參數(shù),D為判別器參數(shù),V(G D)為引入的差距函數(shù),m為訓(xùn)練樣本的數(shù)目,D(x)為判別器對(duì)真實(shí)樣本的判斷屬于真實(shí)數(shù)據(jù)的概率,D(G(z))為判別器對(duì)生成樣本的判斷屬于真實(shí)數(shù)據(jù)的概率。

當(dāng)返回?fù)p失函數(shù)梯度后,首先是對(duì)判別器優(yōu)化,因?yàn)樯善鞯膮?shù)這時(shí)是確定的、不變的,所以差距函數(shù)就可以看做只與判別器參數(shù)有關(guān),有就是說(shuō),固定生成器后,調(diào)整判別器參數(shù)的同時(shí),就影響著差距函數(shù)的值。判別器的目的是希望更好地區(qū)分真實(shí)圖片與生成圖片,當(dāng)然需要使差距函數(shù)越大越好,所以優(yōu)化過(guò)程的第一步是優(yōu)化判別器:? ? ? ? ? ? ? ? ? ? ? ?(2)

式中:D1為在系統(tǒng)在G0確定、D0判定結(jié)果的前提下使得插句話最大時(shí)判別器的參數(shù),G0為生成器的初始參數(shù),D0為判別器的初始參數(shù)。

由式(2)可得:? ? ? ? ? ? ? ? ? ? ? ? ? ?(3)

這時(shí)判別器的參數(shù)得到了更新,那對(duì)于生成器呢?更新后的判別器還需要再次對(duì)生成圖片進(jìn)行判斷。相較于更新之前的判別器,優(yōu)化后相當(dāng)于用更為嚴(yán)苛的標(biāo)準(zhǔn)去識(shí)別生成圖片。而生成器的目標(biāo)是希望盡可能真實(shí)地產(chǎn)生圖片,當(dāng)判別器用更為嚴(yán)格的方式去識(shí)別,生成器依舊能很好地生成,這就得更加接近最優(yōu)解,所以從生成器的角度,需要使式(3)的值更小,所以得到公式:

(4)

式中:G1為更新后的生成器的參數(shù)。

將式(3)代入式(4)可得:

(5)

式中:D1(x)為更新后判別器對(duì)真實(shí)圖片的判定結(jié)果,D1(G(z))為更新后判別器對(duì)生成圖片的判定結(jié)果。

在這個(gè)過(guò)程中,判別器的目標(biāo)是把生成器生成的圖片和真實(shí)的圖片區(qū)分開(kāi)來(lái),得到兩個(gè)判定概率,將結(jié)果返回判別器D中計(jì)算損失函數(shù)與梯度,再用梯度上升法進(jìn)行更新參數(shù),最后,對(duì)生成數(shù)據(jù)的最后一次判定,結(jié)果返回生成網(wǎng)絡(luò),計(jì)算對(duì)應(yīng)的損失函數(shù)并反向傳播更新參數(shù)。這是一個(gè)完整的訓(xùn)練過(guò)程,在一次訓(xùn)練中,判別網(wǎng)絡(luò)與生成網(wǎng)絡(luò)依次得到參數(shù)更新,相應(yīng)的判別能力與生成能力增強(qiáng)。然后在進(jìn)行下一輪訓(xùn)練樣本的輸入。這樣,生成網(wǎng)絡(luò)G和判別網(wǎng)絡(luò)D構(gòu)成了一個(gè)所謂的動(dòng)態(tài)的“對(duì)抗博弈過(guò)程”。

假設(shè)每次得到的參數(shù)都是理想的,對(duì)判別網(wǎng)絡(luò)的參數(shù)都會(huì)得到階段性的最優(yōu)解,對(duì)生成網(wǎng)絡(luò)也得到了最優(yōu)解,結(jié)果指向就是生成分布等于真實(shí)分布,GAN在最理想的狀態(tài)下達(dá)到了納什平衡。在生成模塊G可以生成足以“以假亂真”的生成圖片;對(duì)于判別模塊D來(lái)說(shuō),此時(shí)的它難以判定G生成的圖片是否是來(lái)自真實(shí)樣本。這就很好地體現(xiàn)了生成網(wǎng)絡(luò)從無(wú)到有產(chǎn)生“真實(shí)圖片”的過(guò)程。

3 引入CNN

CNN,即卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network),是受到生物思考方式啟發(fā)的多層感知器,是一種前饋神經(jīng)網(wǎng)絡(luò),人工神經(jīng)元可以響應(yīng)周?chē)鷨卧?,這種網(wǎng)絡(luò)可以用來(lái)進(jìn)行大型的圖像處理。

卷積神經(jīng)網(wǎng)絡(luò)在實(shí)際上就是一種從輸入到輸出的映射,它能夠?qū)W習(xí)大量的輸入與輸出之間的映射關(guān)系,而不需要任何輸入和輸出之間的精確的數(shù)學(xué)表達(dá)式,只要用已知的模式對(duì)卷積網(wǎng)絡(luò)加以訓(xùn)練,網(wǎng)絡(luò)就具有輸入輸出對(duì)之間的映射能力。與普通神經(jīng)網(wǎng)絡(luò)把輸入層、隱含層與輸出層之間進(jìn)行全連接的設(shè)計(jì)相比,CNN對(duì)隱含單元和輸入單元間的連接數(shù)量加以限制:每個(gè)隱含單元僅僅只能連接輸入數(shù)據(jù)的一部分;而且,通過(guò)多層卷積層進(jìn)行圖像的淺層特征提取與多層池化層深層特征提取,將圖片轉(zhuǎn)化為簡(jiǎn)單的特征向量,這樣一來(lái),不僅能處理規(guī)格較大的圖片,經(jīng)過(guò)前向生成與反向更新的方式來(lái)學(xué)習(xí)整幅圖像上的特征,整個(gè)過(guò)程耗時(shí)急劇縮短,計(jì)算量更小,運(yùn)行時(shí)占用較小的內(nèi)存,而且生成效果更穩(wěn)定,判別器更快收斂。CNN的引入主要是對(duì)生成器與判別器的改進(jìn)。改進(jìn)后的整體模型結(jié)構(gòu)如圖2所示。

但是,引入不是單純地將CNN所有層直接接入GAN中就可以了,需要分別對(duì)生成器與判別器做一些變動(dòng):(1)對(duì)于生成器。①中間層每層使用BN函數(shù)進(jìn)行歸一化處理。②取消所有池化層。③使用相應(yīng)的轉(zhuǎn)置卷積函數(shù)進(jìn)行處理。④在每一層操作之后,數(shù)據(jù)輸出經(jīng)過(guò)一個(gè)Relu函數(shù)作為激活函數(shù)。⑤除去全連接層。⑥輸出層使用tanh作為激活函數(shù)而不能用Relu函數(shù)。(2)對(duì)于判別器。①中間每層在激活函數(shù)層后使用BN函數(shù)進(jìn)行歸一化處理。②取消所有池化層,使用stride來(lái)代替池化層。③在每一層操作之后,數(shù)據(jù)輸出經(jīng)過(guò)一個(gè)leakyRelu函數(shù)。④除去全連接層。⑤輸出層使用sigmoid作為激活函數(shù),目的是要得到一個(gè)判定概率。⑥輸出層里不使用BN函數(shù)進(jìn)行歸一化操作。

4 結(jié)語(yǔ)

GAN是一個(gè)十分靈活的框架,經(jīng)過(guò)全世界研究人員對(duì)GAN網(wǎng)絡(luò)模型從框架組成、結(jié)構(gòu)、訓(xùn)練方法、損失函數(shù)類型、數(shù)據(jù)處理方法、增加約束條件、穩(wěn)定性等方面不斷地探索,原始GAN模型已經(jīng)衍生出超過(guò)100種模型框架,諸如CGAN、DCGAN、WGAN、infoGAN等。GAN網(wǎng)絡(luò)的適用范圍現(xiàn)如今已經(jīng)非常廣了,從剛開(kāi)始最基本的圖片生成,到現(xiàn)在可以很好地應(yīng)用在樣本轉(zhuǎn)換、生成領(lǐng)域,可以用在圖像合成、圖像編輯、風(fēng)格遷移、圖像超分辨率以及圖形轉(zhuǎn)換、音頻的特征處理、智能創(chuàng)造等方面。

A Preliminary Study of GAN Framework for Machine Learning

YAN Dong-jie

(College of Automation, Beijing University of Information Technology,Beijing 100192)

Abstract:For machine learning, the most common classification is in the form of data labels, which can be divided into: supervised learning, semi-supervised learning, unsupervised learning and reinforcement learning. This paper analyzes and studies the GAN framework of machine learning.

Key words:artificial intelligence; machine learning; unsupervised learning

猜你喜歡
機(jī)器學(xué)習(xí)人工智能
我校新增“人工智能”本科專業(yè)
2019:人工智能
商界(2019年12期)2019-01-03 06:59:05
人工智能與就業(yè)
數(shù)讀人工智能
小康(2017年16期)2017-06-07 09:00:59
基于詞典與機(jī)器學(xué)習(xí)的中文微博情感分析
基于機(jī)器學(xué)習(xí)的圖像特征提取技術(shù)在圖像版權(quán)保護(hù)中的應(yīng)用
基于網(wǎng)絡(luò)搜索數(shù)據(jù)的平遙旅游客流量預(yù)測(cè)分析
前綴字母為特征在維吾爾語(yǔ)文本情感分類中的研究
基于支持向量機(jī)的金融數(shù)據(jù)分析研究
下一幕,人工智能!
阿克陶县| 永昌县| 仁化县| 佛学| 巍山| 当雄县| 新安县| 海盐县| 基隆市| 汉寿县| 庄河市| 勐海县| 颍上县| 德保县| 汉沽区| 原阳县| 福泉市| 公主岭市| 荆州市| 鲜城| 大石桥市| 荔浦县| 台江县| 邻水| 肥城市| 沈丘县| 高安市| 江西省| 翼城县| 措美县| 兖州市| 丰县| 德格县| 莱州市| 财经| 阿克陶县| 南充市| 都安| 门头沟区| 奉贤区| 舞阳县|