孫梓欽 李景偉
基于對(duì)抗網(wǎng)絡(luò)的生成算法在近些年取得了長(zhǎng)足 的發(fā)展,但是在藝術(shù)繪畫創(chuàng)作領(lǐng)域,由于訓(xùn)練數(shù)據(jù)非常 困難,且機(jī)器學(xué)習(xí)的創(chuàng)造性算法要求較高,限制了對(duì)抗神 經(jīng)網(wǎng)絡(luò)模型的應(yīng)用范圍,使得這些方法在藝術(shù)繪畫創(chuàng)作領(lǐng) 域中難以進(jìn)行廣泛的應(yīng)用。本文通過對(duì)抗神經(jīng)網(wǎng)絡(luò)的原理 進(jìn)行簡(jiǎn)述,并利用wikiart數(shù)據(jù)庫對(duì)抗神經(jīng)網(wǎng)絡(luò)在現(xiàn)代繪 畫的模型進(jìn)行生成和訓(xùn)練,最終通過測(cè)試,驗(yàn)證了對(duì)抗神經(jīng) 網(wǎng)絡(luò)在藝術(shù)繪畫創(chuàng)作方面的天賦。
本文研究的創(chuàng)新點(diǎn)如下:
(一)提出了一個(gè)藝術(shù)生成代理的模型,使用 改進(jìn)型對(duì)抗神經(jīng)網(wǎng)絡(luò),使其具有創(chuàng)造性的功能。對(duì)抗神經(jīng) 網(wǎng)絡(luò)所接觸的藝術(shù)進(jìn)行編碼,并且可以隨著新藝術(shù)的添加 而不斷更新。
(二)將對(duì)抗神經(jīng)網(wǎng)絡(luò)算法應(yīng)用到現(xiàn)代繪畫創(chuàng) 作中。在實(shí)驗(yàn)中對(duì)多種風(fēng)格數(shù)據(jù)集繪畫進(jìn)行訓(xùn)練,并最終 得到了從未出現(xiàn)過的全新藝術(shù)繪畫,驗(yàn)證了本文提出的模 型在現(xiàn)代繪畫生成上的通用性。
(一)對(duì)抗神經(jīng)網(wǎng)絡(luò)的原理
GAN作為深度學(xué)習(xí)領(lǐng)域提出的一種新的框架結(jié) 構(gòu),使用了兩個(gè)神經(jīng)網(wǎng)絡(luò)進(jìn)行對(duì)抗訓(xùn)練。一個(gè)作為生成網(wǎng) 絡(luò),通過輸入一個(gè)隨機(jī)噪聲生成假的數(shù)據(jù);另一個(gè)作為 判別網(wǎng)絡(luò),對(duì)生成網(wǎng)絡(luò)生成的假的樣本數(shù)據(jù)進(jìn)行鑒別,并 反饋送到生成器對(duì)其進(jìn)行優(yōu)化。判別器將誤差傳到生成器 后,生成器通過誤差更新參數(shù),完成生成網(wǎng)絡(luò)的訓(xùn)練,生 成網(wǎng)絡(luò)通過更新后的參數(shù)再生成假的樣本數(shù)據(jù),并且將這 些假的數(shù)據(jù)集和真實(shí)數(shù)據(jù)集送入判別器網(wǎng)絡(luò),更新判別器 參數(shù),達(dá)到訓(xùn)練判別器的目的。這兩個(gè)神經(jīng)網(wǎng)絡(luò)不斷進(jìn)行 對(duì)抗訓(xùn)練,互相博弈,互相優(yōu)化。
在這個(gè)過程中,生成器性能不斷提升,生成的 樣本數(shù)據(jù)越來越真實(shí),判別器的判定能力也不斷提升,對(duì) 于輸入的圖像分類越來越準(zhǔn)確,同時(shí)向生成器反饋二者之 間的誤差用以更新參數(shù),最后達(dá)到納什均衡的狀態(tài)。這時(shí) 生成器網(wǎng)絡(luò)生成的數(shù)據(jù)樣本與真實(shí)的數(shù)據(jù)樣本并無二致, 判別器不能對(duì)其進(jìn)行有效分類,這時(shí)生成器生成的結(jié)果就 是我們想要的結(jié)果,模型訓(xùn)練完成。
(二)對(duì)抗神經(jīng)網(wǎng)絡(luò)的應(yīng)用
生成對(duì)抗網(wǎng)絡(luò)這一概念被goodfellow等人提出 后立刻受到了廣泛的關(guān)注,并迅速成為非常熱門的研究話 題。在計(jì)算機(jī)視覺,自然語言處理和其他一些領(lǐng)域中,生 成對(duì)抗網(wǎng)絡(luò)被深入研究,具有廣泛的應(yīng)用場(chǎng)景。目前GAN 在計(jì)算機(jī)視覺領(lǐng)域已經(jīng)有了很多成功的應(yīng)用,包括圖像 生成、風(fēng)格遷移和圖像修復(fù)等方面。而且通過對(duì)GAN的不 斷深入研究,學(xué)術(shù)界提出了各種基于原始GAN的衍生模型 ,這些模型針對(duì)原始GAN的缺點(diǎn)進(jìn)行了改進(jìn)、對(duì)其理論擴(kuò) 展和應(yīng)用等方面進(jìn)行了創(chuàng)新,基于生成式對(duì)抗網(wǎng)絡(luò)模型的 研究不斷推進(jìn)。
在圖像生成方面,GAN通過增加一個(gè)條件變量 對(duì)模型進(jìn)行有效約束,可以從無監(jiān)督學(xué)習(xí)轉(zhuǎn)換為有監(jiān)督學(xué) 習(xí)的場(chǎng)景,加快模型收斂速度,使生成數(shù)據(jù)更加接近真實(shí) 數(shù)據(jù)。改進(jìn)的GAN結(jié)合生成對(duì)抗網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò),采 用步幅卷積和批標(biāo)準(zhǔn)化等操作,改善了原始GAN訓(xùn)練過程 不穩(wěn)定的缺點(diǎn),但是由于生成樣本具有多樣性的特點(diǎn)導(dǎo)致 容易出現(xiàn)模型崩潰的問題。為了克服原始GAN的梯度消失 問題,本文基于上述原理對(duì)藝術(shù)繪畫進(jìn)行生成。
除此之外,GAN還在圖像風(fēng)格轉(zhuǎn)換、圖像補(bǔ)充 和修復(fù)、強(qiáng)化學(xué)習(xí)、隱私保護(hù)、醫(yī)學(xué)、生物學(xué)等領(lǐng)域均 有不同程度的應(yīng)用。
(一)現(xiàn)代繪畫生成原理
本文將對(duì)抗神經(jīng)網(wǎng)絡(luò)應(yīng)用在現(xiàn)代繪畫生成中, 提出創(chuàng)造性對(duì)抗網(wǎng)絡(luò),生成器被設(shè)計(jì)為接收來自判別器的 信號(hào),與生成性對(duì)抗網(wǎng)絡(luò)( GAN)類似,該網(wǎng)絡(luò)有兩個(gè)對(duì)抗 網(wǎng)絡(luò),一個(gè)判別器和一個(gè)生成器。判別器可以接觸到 與標(biāo)定標(biāo)簽的繪畫藝術(shù)風(fēng)格,如文藝復(fù)興、巴洛克、印象 主義、表現(xiàn)主義等相關(guān)的大量藝術(shù),并使用它來學(xué)習(xí)區(qū)分 不同的風(fēng)格。
對(duì)抗神經(jīng)網(wǎng)絡(luò)中的第一個(gè)信號(hào)是判別器對(duì)“藝 術(shù)與否”的分類。在傳統(tǒng)的GAN中,該信號(hào)使發(fā)生器能 夠改變其權(quán)重以生成更頻繁地使判別器判斷是否來自相同 分布的圖像。在現(xiàn)代繪畫生成中,判別器表明是否認(rèn)為生 成的藝術(shù)與它所現(xiàn)代無線電監(jiān)測(cè)接受設(shè)備的藝術(shù)繪畫數(shù)據(jù) 集十分重要。在嘗試使用小規(guī)模藝術(shù)繪畫作品進(jìn)行初步測(cè) 試時(shí),發(fā)現(xiàn)數(shù)據(jù)集的模型收斂得很差。在本文中采用 wikiart數(shù)據(jù)庫,這是一個(gè)超過10萬幅繪畫的集合,這些繪畫都 標(biāo)有風(fēng)格、流派、藝術(shù)家、繪畫年份等。這個(gè)數(shù)據(jù)集,將 有足夠的數(shù)據(jù)使模型收斂,能夠使用標(biāo)記信息來提高網(wǎng) 絡(luò)的學(xué)習(xí)能力。
(二)現(xiàn)代繪畫生成模型
1 .訓(xùn)練組合模型,以提升生成器。為了區(qū)分 真實(shí)藝術(shù)圖像和非藝術(shù)圖像,我們使用傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò) (CNN)架構(gòu)。因此,對(duì)于尺寸為64×64的圖像,代碼如下:
圖1 64×64圖像的代碼
本文設(shè)置了3個(gè)卷積層,它們負(fù)責(zé)執(zhí)行以下操 作:形狀為64×64×3的原始圖像經(jīng)過16層過濾器,產(chǎn) 生一個(gè)形狀為32×32×16的圖像。下一步轉(zhuǎn)換32×32×16 的張量為16×16×32的張量。最后,在下一個(gè)卷積層之后, 我們最終得到8×8×64形狀的張量。
2.生成器模型。生成器的作用正好相反,將大 小為100的矢量轉(zhuǎn)換為圖像。這涉及一個(gè)卷積的過程, 它本質(zhì)上是一個(gè)反向卷積。
我們以64×64×3的張量大小結(jié)束,這正是需 要的圖像的大小。所有這些準(zhǔn)備圖像的步驟都由image dataset類來處理。
(一)實(shí)驗(yàn)環(huán)境與流程
本次算法實(shí)驗(yàn)所使用的實(shí)驗(yàn)環(huán)境為,操作系統(tǒng) :Windows 10家庭中文版(版本號(hào)1903);CPU: IntelCore i7-8750H;CPU主頻:2.20GHz ;內(nèi)存:16G;硬盤:1.5T。
整個(gè)現(xiàn)代繪畫流程如下:使用 WS=workspace.from_config連接到工作空間,連接到計(jì)算集群: cluster=compute target(workspace=ws, name=‘my cluster’)。此處需要一個(gè)帶有GPU的虛擬機(jī)集群,例如NC6。上傳 數(shù)據(jù)集到ML工作區(qū)默認(rèn)的數(shù)據(jù)存儲(chǔ)里。
傳遞model_path=.outputs/models和 samples_path=.outputs/samples作為參數(shù),它們會(huì)指定訓(xùn)練期間 生成的模型和樣本數(shù)據(jù)寫入對(duì)抗神經(jīng)網(wǎng)絡(luò)實(shí)驗(yàn)的相應(yīng)目錄里 。
為了創(chuàng)建可以在GPU上順利運(yùn)行的estimator, 使用內(nèi)建的tensorflow estimator。它和通用estimator 非常類似,但是可以為分布式訓(xùn)練提供開箱即用的選項(xiàng)。
(二)現(xiàn)代繪畫結(jié)果驗(yàn)證
使用公開的wikiart數(shù)據(jù)集中的繪畫對(duì)抗神經(jīng) 網(wǎng)絡(luò)進(jìn)行了訓(xùn)練。最終評(píng)估了三個(gè)不同分辨程度模型生成的 圖像,并與提出的CAN模型生成的圖像進(jìn)行比較,以定性 和定量地了解差異。所有模型都在相同的art數(shù)據(jù)集上進(jìn) 行了訓(xùn)練。結(jié)果如下圖所示。
圖2 64×64訓(xùn)練模型
第一個(gè)分辨率模型是原始對(duì)抗神經(jīng)網(wǎng)絡(luò)根據(jù)藝 術(shù)數(shù)據(jù)訓(xùn)練的模型。此模型生成分辨率為64×64的圖像。雖 然根據(jù)藝術(shù)數(shù)據(jù)進(jìn)行訓(xùn)練,但此模型未能生成模擬訓(xùn)練藝術(shù) 的圖像。生成的樣本未顯示任何可識(shí)別的人物或藝術(shù)類型或 樣式。
圖3 256×256訓(xùn)練模型
第二個(gè)分辨率模型是原始的對(duì)抗神經(jīng)網(wǎng)絡(luò)模型 在向生成器添加兩層后,將分辨率提高到256×256,即此 處的生成器具有與CAN模型相同的精確結(jié)構(gòu)。我們還對(duì)該模 型進(jìn)行了藝術(shù)收藏方面的訓(xùn)練。生成的示例有了顯著的改進(jìn) ;我們可以清楚地看到美觀的構(gòu)圖結(jié)構(gòu)和顏色在結(jié)果圖像中 顯示。但是,生成的圖像也沒有顯示任何可識(shí)別的人物、主 題或藝術(shù)類型。
最后為所有模型使用了相同的訓(xùn)練圖像集,并 進(jìn)行了第3次實(shí)驗(yàn)。所有生成的圖像都使用超分辨率算法 放大到512×512分辨率。圖像也調(diào)整到512×512分辨率。 結(jié)果如下圖所示。
可以看到該模型生成的圖像在實(shí)際模擬藝術(shù)分 布方面表現(xiàn)出顯著的改進(jìn),從這個(gè)意義上說,可以看到許多 肖像、風(fēng)景、建筑、宗教主題等類似于人類創(chuàng)作的藝術(shù)繪畫 類型。從而驗(yàn)證了對(duì)抗神經(jīng)網(wǎng)絡(luò)在現(xiàn)代繪畫生成的有效性。
圖4 512×512訓(xùn)練模型
(一)結(jié)論
科學(xué)技術(shù)日新月異,圖像信息已經(jīng)成為互聯(lián)網(wǎng) 信息共享和交流過程中最主要的媒介之一。所以,研究對(duì) 抗神經(jīng)網(wǎng)絡(luò)的現(xiàn)代繪畫生成具有極其重要的現(xiàn)實(shí)意義。傳 統(tǒng)圖像識(shí)別不僅需要耗費(fèi)大量人力、財(cái)力資源,且在質(zhì)量 和效率方面難以滿足人們的實(shí)際需求。而對(duì)抗神經(jīng)網(wǎng)絡(luò)的 現(xiàn)代繪畫生成可以自動(dòng)從圖像中獲取數(shù)據(jù)信息,提高了圖 像識(shí)別效率。同時(shí),由于對(duì)抗神經(jīng)網(wǎng)絡(luò)運(yùn)用了博弈思想 ,在模型中引入對(duì)抗機(jī)制,其自身強(qiáng)大的生成能力,備受 廣大業(yè)內(nèi)人士青睞與喜愛,成為了現(xiàn)代繪畫領(lǐng)域中最受歡 迎的對(duì)象。本文首先以生成式對(duì)抗神經(jīng)網(wǎng)絡(luò)概述為出發(fā)點(diǎn) ,分析了對(duì)抗神經(jīng)網(wǎng)絡(luò)現(xiàn)代繪畫生成過程,最后對(duì)生成的 現(xiàn)代繪畫進(jìn)行了測(cè)試,結(jié)果表明所有生成的圖像都使用超分 辨率算法放大到512×512分辨率,圖像也調(diào)整到512×512分 辨率。
(二)展望
本文通過訓(xùn)練對(duì)抗神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了藝術(shù)繪畫的 創(chuàng)作,使人工智能真正意義上具有了人類的創(chuàng)造力。但是 ,本文也存在一些缺陷,目前的對(duì)抗神經(jīng)網(wǎng)絡(luò)或多或少都 是基于概率模型設(shè)計(jì)的,也就是說,這些網(wǎng)絡(luò)都是在給定 條件下,通過輸入的數(shù)據(jù)來預(yù)測(cè)一個(gè)輸出結(jié)果。訓(xùn)練集 僅僅只是“真實(shí)的照片”和“繪畫作品”,從中找到了某 種能夠?qū)⑺鼈儍烧呗?lián)系起來的映射關(guān)系。
然而,真實(shí)的藝術(shù)繪畫生成,除了基于真實(shí)的 場(chǎng)景以外,藝術(shù)家更會(huì)結(jié)合自己的個(gè)人體驗(yàn)與經(jīng)驗(yàn)來進(jìn) 行創(chuàng)作——這些個(gè)人的體驗(yàn)與經(jīng)驗(yàn)是極難被量化成計(jì)算 機(jī)所能理解的數(shù)據(jù),這有待于在未來進(jìn)行進(jìn)一步研究。
同時(shí)本文提出的對(duì)抗神經(jīng)網(wǎng)絡(luò)生成的圖像通常 會(huì)有很模糊的邊緣。這種附帶的模糊效果是很難在對(duì)抗神 經(jīng)網(wǎng)絡(luò)中避免的。未來應(yīng)使用改進(jìn)算法分別提取原圖和生 成圖像的深層次特征,然后計(jì)算二者的損失來進(jìn)行優(yōu)化, 從而減弱邊緣模糊的效應(yīng)。