0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

藝術(shù)創(chuàng)作過程中與生成對抗網(wǎng)絡(luò)碰撞出的火花

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-09-17 08:56 ? 次閱讀

編者按:本文作者Helena Sarin是一名藝術(shù)家,同時也是一位神經(jīng)網(wǎng)絡(luò)開發(fā)者。在這篇文章中,她講述了自己在藝術(shù)創(chuàng)作過程中與生成對抗網(wǎng)絡(luò)碰撞出的火花。

美國畫家Jackson Pollock曾說:“所有的一切都是建筑游戲,有些人會用筆刷,有人會用鏟子,還有人會選擇一支筆?!?/p>

而我自己選擇了神經(jīng)網(wǎng)絡(luò)。我是一名藝術(shù)家,但同時我也開發(fā)了很多商用軟件。但是此前,藝術(shù)和編程在我的生活中完全毫無關(guān)聯(lián)。除了偶爾用計算機(jī)作圖進(jìn)行生成藝術(shù)的處理,我所有的作品都是進(jìn)行模擬,直到我發(fā)現(xiàn)了生成對抗網(wǎng)絡(luò)(GANs)。

自從2014年GANs發(fā)明生成之后,機(jī)器學(xué)習(xí)社區(qū)就出現(xiàn)了很多有關(guān)GAN的技術(shù)。在這篇文章中,我將大概講解為什么GANs是如此優(yōu)秀的藝術(shù)類工具,以及我是怎樣用它創(chuàng)造藝術(shù)作品的。

以下是我的一些藝術(shù)作品:

藝術(shù)家眼中的GAN

所以到底什么是GAN?為什么它對藝術(shù)家很有吸引力?

我們可以將藝術(shù)的創(chuàng)作過程看作一種游戲。游戲動作發(fā)生在藝術(shù)工作室中,其中有兩位玩家:評論者和藝術(shù)初學(xué)者。初學(xué)者的目標(biāo)是創(chuàng)作大師級別的畫作,但不能抄襲。而評論者的目標(biāo)是判斷他看到的畫作是大師的作品還是初學(xué)者的作品。一次次判斷之后,初學(xué)者和評論者會進(jìn)行比賽,初學(xué)者會越來越熟練地進(jìn)行模仿,風(fēng)格越來越像大師。而評論者會更容易辨別出哪幅畫作來自初學(xué)者,二者互相督促,水平越來越高。

GAN就是模擬這一過程的神經(jīng)網(wǎng)絡(luò),評論者的角色由判別網(wǎng)絡(luò)D扮演,藝術(shù)初學(xué)者的角色由生成網(wǎng)絡(luò)G扮演。一次次“游戲”過后,生成網(wǎng)絡(luò)模擬的大師畫作風(fēng)格會更逼真:

那么你的角色是什么呢?輕微調(diào)整游戲規(guī)則(網(wǎng)絡(luò)的超參數(shù)),成為了美術(shù)館館長(curator)。作為館長你要從GAN的輸出中進(jìn)行挑選,因為GAN會生成很多不同結(jié)構(gòu)、顏色的組合,與其訓(xùn)練的樣本圖片有各種不同的差異。所以作為館長也不容易,有時你會覺得很多圖像都很有趣,想把它們都留下來。

用上述GAN進(jìn)行創(chuàng)作是很有趣的,可以探索各種新模型和數(shù)據(jù)集。和其他數(shù)字化工具不同,GAN總能給人驚喜,它可以創(chuàng)造出比濾鏡或普通的風(fēng)格遷移更特別的效果。

CycleGAN

應(yīng)用于藝術(shù)生成的深度學(xué)習(xí)技術(shù)種類很多,常見的有以下幾種:

GAN/DCGAN,也就是上文描述的經(jīng)典生成對抗網(wǎng)絡(luò):

神經(jīng)網(wǎng)絡(luò)遷移,將一張圖像的風(fēng)格遷移到另一張圖像中:

成對圖像轉(zhuǎn)換技術(shù),例如Pix2Pix。這種技術(shù)需要含有源圖像和目標(biāo)圖像的數(shù)據(jù)集進(jìn)行訓(xùn)練:

非成對的圖像轉(zhuǎn)換技術(shù)則不用對應(yīng)數(shù)據(jù)集(例如Cycle GAN):

計算機(jī)創(chuàng)作的很多畫作都是由以上技術(shù)生成的,但是為什么最終我只選擇了CycleGAN呢?簡而言之,CycleGAN訓(xùn)練出來的網(wǎng)絡(luò)可以具有其中一個數(shù)據(jù)集的形式(輸入域)和另一個數(shù)據(jù)集的結(jié)構(gòu)(目標(biāo)域)。這一點非常重要。計算機(jī)視覺專家Alyosha Efros表示,我們“仍然非常注重結(jié)構(gòu)”。

我第一次用CycleGAN完成一個項目后,覺得它在模擬結(jié)構(gòu)上太強(qiáng)大了,所以想將其用在生成藝術(shù)上。CycleGAN能讓你處理高分辨率、小尺寸的圖像數(shù)據(jù)集,并且訓(xùn)練模型的速度非???!

我第一項任務(wù)是將食物和飲料的照片轉(zhuǎn)換成靜物素描風(fēng)格。每個數(shù)據(jù)集含有300到500張高分辨率圖像。那一整個月,我?guī)缀趺刻熳龈鞣N實驗,想把輸入數(shù)據(jù)尺寸變小。然后我花了好幾個小時對輸出圖像進(jìn)行篩選,最終效果如圖:

帶有鮮花的圖片轉(zhuǎn)換成了類似零食的東西,飲料的照片也變得非常有趣。我把最終結(jié)果給我的藝術(shù)導(dǎo)師看,她說:“我不懂計算機(jī),但是你這個很有前景??!加油干!”

接著我就繼續(xù)實驗,隨著我對自己的框架越來越熟悉,在實驗中我加入了不同數(shù)據(jù)集:

實驗建議

用了幾個月CycleGAN,我學(xué)到了以下幾個小技巧:

正如CycleGAN最初的論文中說的:“在訓(xùn)練數(shù)據(jù)上轉(zhuǎn)換比在測試數(shù)據(jù)上更吸引人。”所以在很多情況下,我用訓(xùn)練數(shù)據(jù)的子集進(jìn)行推理,我的目標(biāo)并不是泛化,而是創(chuàng)造吸引人的藝術(shù)。

通常,我在較大的數(shù)據(jù)集上開始對模型訓(xùn)練,然后在較小的子集上進(jìn)行微調(diào)。這里就是一個例子:這些圖片是在一個風(fēng)景模型上生成的,之后再日本詩集封面的模型上微調(diào)、

在模型訓(xùn)練的時候有必要查看儀表板。CycleGAN的偏好設(shè)置中可以設(shè)置展示頻率,我設(shè)置的比較高。這一過程對我來說就像在冥想——盯著visdom的UI界面,隨著損失函數(shù)的變化而呼氣吐氣。

隨著訓(xùn)練,結(jié)果變得越來越有趣,增加了檢查點保存的頻率。

將實驗中所有的參數(shù)保存下來,之后還能重新創(chuàng)造。

在推理過程中,目標(biāo)圖像不會影響生成圖像的樣子。這并不意味著你不需要關(guān)心目標(biāo)集中有什么圖像。記住,你有兩個生成器,不要忽略第二個。

默認(rèn)情況下,CycleGAN使用的實例規(guī)范化和batch尺寸都為1。但是一旦你學(xué)習(xí)了規(guī)則,就可以不受這個值的限制。如果你使用了批規(guī)范化,并且batch size大于1怎么辦?

另一項值得運用的技術(shù)是CycleGAN chaining:訓(xùn)練一個模型,然后用其結(jié)果去訓(xùn)練另一個。

下方的圖像是上述兩條tips的結(jié)果展示。我用了鮮花照片數(shù)據(jù)集和人像素描數(shù)據(jù)集。第一個模型用批規(guī)范化在兩數(shù)據(jù)集之間進(jìn)行灰度遷移。第二個模型對第一個模型的結(jié)果上了色。

要注意額外的結(jié)構(gòu),尤其當(dāng)在補(bǔ)丁上訓(xùn)練時。我最初在食物和靜物素描之間進(jìn)行轉(zhuǎn)換的模型,大多數(shù)情況下都將靜物變成了粥,所以一定要花點時間處理訓(xùn)練數(shù)據(jù)集。

另一方面,我的水彩老師曾經(jīng)總說:“其他的事情交給媒介工具做就好?!彼孛柚惶峁┖唵蔚幕A(chǔ)架構(gòu),之后的工作就交給網(wǎng)絡(luò)了,我只是對#brushGAN工具包進(jìn)行調(diào)整。(該工具包含有保存過的訓(xùn)練模型和用作輸入的數(shù)據(jù)集等等)

工具使用

目前為止,我們已經(jīng)談到了收集數(shù)據(jù)和開始利用數(shù)據(jù)。現(xiàn)在我們要談?wù)劰ぞ叩氖褂谩?/p>

無論你選擇哪種神經(jīng)網(wǎng)絡(luò)創(chuàng)造生成性藝術(shù)作品,深度學(xué)習(xí)的設(shè)置都差不多。我最初的設(shè)置是在AWS上進(jìn)行的,雖然它在計算方面比較便宜,但是存儲問題比較令人頭疼?,F(xiàn)在我有了自己的服務(wù)器:一個GTX 1080 GPU、一個275GB的SSD和兩個1TB的HDD。

接著是超參數(shù),其中最重要的就是圖像尺寸。CycleGAN通過設(shè)置可以對圖像進(jìn)行切割,但是可能達(dá)到的最大分辨率取決于你的硬件。在我的GTX 1080上,最大分辨率可以達(dá)到400×400。

數(shù)據(jù)

不要忘記數(shù)據(jù)集!訓(xùn)練深度學(xué)習(xí)網(wǎng)絡(luò),一定需要大量數(shù)據(jù)。很多AI藝術(shù)家用網(wǎng)絡(luò)抓取的方法獲取數(shù)據(jù),但是我決定用自己的數(shù)據(jù)集,比如自己的照片或繪畫作品。這樣做有幾種好處:

這樣你的藝術(shù)作品會有一致性。

無需擔(dān)心版權(quán)問題。

不用過多處理就能得到高分辨率圖像。

只需一臺相機(jī)就能輕松創(chuàng)建有豐富色彩和結(jié)構(gòu)的數(shù)據(jù)集。

另外,我使用的數(shù)據(jù)機(jī)構(gòu)和處理過程如下:

通用預(yù)處理:從手機(jī)上下載并調(diào)整照片

數(shù)據(jù)集構(gòu)成:根據(jù)圖片中的物體、內(nèi)容、顏色和結(jié)構(gòu)對它們進(jìn)行區(qū)分

三種存儲類型:

遠(yuǎn)程存儲(例如Flickr這種云服務(wù));

HDD:對未使用的數(shù)據(jù)集和權(quán)重進(jìn)行長期存儲;

SSD:對數(shù)據(jù)集和權(quán)重進(jìn)行中短期存儲。

針對GAN的批處理:我使用的是Jupyter notebooks,可以進(jìn)行圖像切割、canny邊緣檢測、圖像分類等等。

結(jié)語

目前,CycleGAN已經(jīng)成為我藝術(shù)創(chuàng)作中的重要部分,即使選擇新的GAN類型進(jìn)行實驗,CycleGAN也是生成圖像的重要工具。下面是我用CycleGAN提高SNGAN輸出效果的結(jié)果:

關(guān)于安裝CycleGAN,我是用的是這一教程:github.com/junyanz/pytorch-CycleGAN-and-pix2pix,它非常簡潔。

對我來說,這項實驗最棒的部分是它們讓我的視覺視野更開闊了,能欣賞到更多色彩和結(jié)構(gòu),給予我更多靈感。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4724

    瀏覽量

    100311
  • GaN
    GaN
    +關(guān)注

    關(guān)注

    19

    文章

    1895

    瀏覽量

    72325
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8320

    瀏覽量

    132165

原文標(biāo)題:一位藝術(shù)家眼中的GAN:它給予我更多靈感

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Python遇上物聯(lián)網(wǎng)又會碰撞出怎樣的火花

    Python火到什么程度?學(xué)習(xí)python能做什么?Python遇上硬件、遇上物聯(lián)網(wǎng)又會碰撞出怎樣的火花呢?
    發(fā)表于 08-27 07:26

    圖像生成對抗生成網(wǎng)絡(luò)

    圖像生成對抗生成網(wǎng)絡(luò)ganby Thalles Silva 由Thalles Silva暖身 (Warm up)Let’s say there’s a very cool party going
    發(fā)表于 09-15 09:29

    新的藝術(shù)創(chuàng)作:利用神經(jīng)網(wǎng)絡(luò)畫油畫

    ——特別是在算法嘗試?yán)L制人臉時。然而,這也正是此項實驗的重點所在:通過觀察神經(jīng)網(wǎng)絡(luò)如何“傻傻”地進(jìn)行學(xué)習(xí),我們將能夠一窺人工智能藝術(shù)創(chuàng)作的基本思路。
    發(fā)表于 07-16 11:11 ?1724次閱讀

    生成對抗網(wǎng)絡(luò)模型綜述

    ,開創(chuàng)性地提出了生成對抗網(wǎng)絡(luò)( GAN)。生成對抗網(wǎng)絡(luò)包含一個生成模型和一個判別模型。其中,生成
    發(fā)表于 04-03 10:48 ?1次下載
    <b class='flag-5'>生成對抗</b><b class='flag-5'>網(wǎng)絡(luò)</b>模型綜述

    AI的創(chuàng)作是真正的藝術(shù)嗎?你會買嗎?

    是Hugo Caselles-Dupré,Pierre Fautrel 和 Gauthier Vernier,他們致力于探索藝術(shù)和 AI之間的接口,他們使用的方法是 GAN(生成對抗網(wǎng)絡(luò))。
    的頭像 發(fā)表于 09-03 08:35 ?5581次閱讀
    AI的<b class='flag-5'>創(chuàng)作</b>是真正的<b class='flag-5'>藝術(shù)</b>嗎?你會買嗎?

    如何使用生成對抗網(wǎng)絡(luò)進(jìn)行信息隱藏方案資料說明

    針對信息隱藏含密栽體會留有修改痕跡,從根本上難以抵抗基于統(tǒng)計的隱寫分析算法檢測的問題,提出一種基于生成對抗網(wǎng)絡(luò)( GAN)的信息隱藏方案。該方案首先利用生成對抗
    發(fā)表于 12-12 16:57 ?6次下載
    如何使用<b class='flag-5'>生成對抗</b><b class='flag-5'>網(wǎng)絡(luò)</b>進(jìn)行信息隱藏方案資料說明

    如何使用雙鑒別網(wǎng)絡(luò)進(jìn)行生成對抗網(wǎng)絡(luò)圖像修復(fù)方法的說明

    針對現(xiàn)有神經(jīng)網(wǎng)絡(luò)圖像修復(fù)方法的修復(fù)結(jié)果在視覺連通性上存在結(jié)構(gòu)扭曲、訓(xùn)練過程中易陷入過度學(xué)習(xí)等問題,提出了一種基于雙鑒別網(wǎng)絡(luò)生成對抗網(wǎng)絡(luò)
    發(fā)表于 12-24 15:20 ?12次下載
    如何使用雙鑒別<b class='flag-5'>網(wǎng)絡(luò)</b>進(jìn)行<b class='flag-5'>生成對抗</b><b class='flag-5'>網(wǎng)絡(luò)</b>圖像修復(fù)方法的說明

    如何使用深度殘差生成對抗網(wǎng)絡(luò)設(shè)計醫(yī)學(xué)影像超分辨率算法

    針對醫(yī)學(xué)影像超分辨率重建過程中細(xì)節(jié)丟失導(dǎo)致的模糊問題,提出了一種基于深度殘差生成對抗網(wǎng)絡(luò)( GAN)的醫(yī)學(xué)影像超分辨率算法。首先,算法包括生成網(wǎng)絡(luò)
    發(fā)表于 01-02 16:59 ?5次下載
    如何使用深度殘差<b class='flag-5'>生成對抗</b><b class='flag-5'>網(wǎng)絡(luò)</b>設(shè)計醫(yī)學(xué)影像超分辨率算法

    我們離AR藝術(shù)創(chuàng)作還有多遠(yuǎn)?

    Heather此前是一名多媒體技術(shù)專員,在此期間她發(fā)現(xiàn)AR藝術(shù)創(chuàng)作的潛力。她的藝術(shù)創(chuàng)作幾乎都是在講述一個故事,希望通過藝術(shù)和觀眾建立聯(lián)系,而不是一個孤零零的技術(shù)擺在那。
    的頭像 發(fā)表于 08-10 10:33 ?1681次閱讀

    基于密集卷積生成對抗網(wǎng)絡(luò)的圖像修復(fù)方法

    差等問題。針對上述問題,文中提出了一種基于密集卷積生成對抗網(wǎng)絡(luò)的圖像修復(fù)算法。該算法采用生成對抗網(wǎng)絡(luò)作為圖像修復(fù)的基本框架。首先,利用密集卷積塊構(gòu)建具有編解碼結(jié)枃的
    發(fā)表于 05-13 14:39 ?15次下載

    基于像素級生成對抗網(wǎng)絡(luò)的圖像彩色化模型

    基于像素級生成對抗網(wǎng)絡(luò)的圖像彩色化模型
    發(fā)表于 06-27 11:02 ?4次下載

    NVIDIA Omniverse 3D 模擬和協(xié)作平臺推動藝術(shù)創(chuàng)作或設(shè)計流程

    介紹使用 NVIDIA Omniverse 3D 模擬和協(xié)作平臺推動藝術(shù)創(chuàng)作或設(shè)計流程的個人創(chuàng)作者和開發(fā)者。
    的頭像 發(fā)表于 07-27 14:30 ?1149次閱讀

    PyTorch教程20.2之深度卷積生成對抗網(wǎng)絡(luò)

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程20.2之深度卷積生成對抗網(wǎng)絡(luò).pdf》資料免費下載
    發(fā)表于 06-05 10:21 ?2次下載
    PyTorch教程20.2之深度卷積<b class='flag-5'>生成對抗</b><b class='flag-5'>網(wǎng)絡(luò)</b>

    NVIDIA 知乎精彩問答甄選 | 分享 NVIDIA 在藝術(shù)創(chuàng)作方面的精彩問答

    NVIDIA 帶來知乎精彩問答甄選系列,將為您精選知乎上有關(guān) NVIDIA 產(chǎn)品的精彩問答。 本期為問答甄選第十五期 ——? 分享 NVIDIA 在藝術(shù)創(chuàng)作方面的精彩問答 以下兩個知乎甄選問答將針對
    的頭像 發(fā)表于 10-13 20:30 ?433次閱讀

    生成對抗網(wǎng)絡(luò)(GANs)的原理與應(yīng)用案例

    生成對抗網(wǎng)絡(luò)(Generative Adversarial Networks,GANs)是一種由蒙特利爾大學(xué)的Ian Goodfellow等人在2014年提出的深度學(xué)習(xí)算法。GANs通過構(gòu)建兩個
    的頭像 發(fā)表于 07-09 11:34 ?624次閱讀