在美術中,特別是繪畫,人類掌握了通過在圖像的內容和風格間建立復雜的相互作用從而創造獨特的視覺體驗的技巧。到目前為止,這個過程的算法基礎是未知的,也沒有現存的人工系統擁有這樣的能力。然而在視覺感知的其他重要方向,如目標和人臉識別,一種受生物啟發的深層神經網絡最近展示了接近人類的表現。本文介紹了一種基於深層神經網絡的人工神經網絡系統,能夠產生高感知質量的圖片。該系統利用神經表示來分離和重組任意圖像的內容和風格,為藝術圖片創作提出了一種神經算法。不僅如此,在性能優良的人工神經網絡和生物視覺的相似性之間,我們的工作提供了一條人類如何創造和感知藝術圖像的算法理解之路。
深層神經網絡中最善於處理圖片任務的是卷積神經網絡。卷積神經網絡包含多個小計算單元,以前饋方式分層次地處理視覺信息。如下圖1所示。每一層的單元可以認為是圖片過濾器的集合,每一個都會從輸入圖片中提取一個特定的特征。因此輸出層也被稱為特征映射:對輸入圖片進行不同的濾波。
當卷積神經網絡用於物體識別的訓練時,它們學習到的圖片表達隨着處理層次信息變得越來越清晰。因此,隨着網絡的處理層次,輸入圖片轉換成的表達越來越關注實際的圖片內容而不是具體像素值。我們可以通過從特征映射中重建圖片直接可視化每層包含的輸入圖片的信息(如圖1,可以了解下如何重建圖片的方法細節)。網絡中的高層捕獲物體中的高層次信息,它們的分布在輸入圖片中,但是重建不限於精確的像素值。與之相反,低層重建只是簡單地從原圖復制精確像素值。因此我們也稱網絡中的高層特征響應為內容表達。
為了獲得輸入圖片的風格表達,我們使用最初設計的特征空間來捕獲紋理信息。這個特征空間建立在網絡中每一層的濾波器響應之上。它由不同過濾器響應在特征映射空間的相關性組成。通過包含多個層的特征相關性,我們獲得了對於輸入圖片固定的,多尺寸的表達,它捕獲到了紋理信息而不是全局分布。
我們能夠通過建立與給定輸入圖片風格表達相匹配的圖片來可視化這些建立在網絡中不同層的風格特征空間捕獲到的信息。實際上從風格特征中重建出了輸入圖片的紋理版本,它捕獲了色彩和局部結構的綜合表現。不僅如此,來自輸入圖像的局部圖像結構的大小和復雜度也隨着層次增加,這個是因為感受野的尺寸和特征復雜度在增加。我們稱這種多尺寸的表達為風格表達。
這篇論文主要是發現了卷積神經網絡的內容和風格是可以分割的。我們可以獨立操縱表達來產生一個新的,感知上有意義的圖片。為了演示這個發現,我們從兩個不同的源圖片生成了混合內容和風格表達的圖片。如下圖2所示,我們將描述“Neckarfront”的內容表達與一些不同時期有名的藝術作品相匹配。
這些圖片通過尋找同時匹配照片內容表達與藝術作品風格表達的圖片進行合成。雖然原始圖片的全局分布被保存,但是構成全局的顏色和局部結構由藝術作品提供。實際上這使圖片呈現出藝術風格,雖然內容是相同的,但是合成圖片看起來像藝術圖片。
如以上總結的,風格表達是個多尺寸的表達,包含神經網絡的多個層。如上圖2所示,風格表達包含來自全部網絡層次的層。也可以僅僅包含少量的較低層定義一個更加局部的風格,這會帶來不同的視覺體驗,如下圖3所示。當匹配網絡中更高層的風格表達時,局部圖片結構與更大的尺寸匹配,這會帶來更細致連續的視覺感受。事實上,視覺上更吸引人的圖片通常是與網絡中最高層的風格表達匹配得來的。
當然,圖片內容與風格不能完全分離。當結合不同圖片的內容和風格合成新圖片時,往往不存在一個圖片完全同時匹配兩種約束。然而,我們在圖片合成時最小化的loss函數分別包含內容和風格兩方面,它們很好地分隔開。我們因此可以順利地調整側重點,是選擇注重重建內容還是風格。當過分強調風格時會導致圖片與藝術作品的外貌相匹配,而看不清任何照片內容(下圖3第1列)。當過分強調內容時,我們能夠很清楚辨認圖片,但是繪畫風格又沒有很好匹配(圖3最后一列)。對於一個特定原圖片對,我們可以調整比例來產生視覺上有吸引力的圖片。
這里我們提出了一個人工神經網絡實現了圖片內容和風格的分離,因此允許使用任何另一張圖片的風格來重鑄圖片內容。我們通過創建新的藝術圖片來展示這點,它結合了一些有名的繪畫風格與任意選擇的圖片內容。實際上,我們從用於目標識別的深層神經網絡的特征響應中推導出了圖片內容和風格的神經表達。據我們所知,這是第一次在整體的自然圖片中展示圖片內容與風格特征的分離。此前內容和風格上的分割工作的評估在一些復雜程度低得多的感官輸入上進行,比如不同的手寫字體或者不同姿態的人臉和小圖片。
在演示中,我們以一系列著名的藝術作品風格來渲染一張照片。這個問題通常是一個計算機視覺的分支,稱為非光性渲染。概念上最密切相關的方法是使用紋理轉換達到藝術風格轉換。然而,此前的這些方法主要依賴於非參數的技術直接操縱圖像的像素表達。與之相反,使用在目標檢測上訓練的深層神經網絡時,我們是在特征空間進行操作,它們明確表達了一張圖片的高層次的內容。
在目標檢測任務上訓練的深層神經網絡的特征此前已被用於風格識別,為的是根據藝術作品創作的時間進行分類(論文[20])。這里的分類器在原始網絡響應的最頂端進行訓練,被稱為是內容表達。我們推測一個轉換成一個固定的空間,所以我們的風格表達可能在風格分類中達到一個更好的表現。
總的來說,我們合成圖片的方法從不同來源混合了內容和風格。提供了新的,有吸引力的工具來研究一般的藝術,風格,內容獨立的圖片外觀的感知和神經表現。我們可以設計新的刺激引入兩個獨立的,感知上有意義的差異來源:圖片外觀和圖片內容。我們設想這將在廣泛有關視覺感知的實驗研究上發揮作用,涉及心理物理學,功能成像甚至是電生理神經記錄。實際上,我們的工作提供了一個算法理解神經表達如何獨立捕捉圖片的內容和風格。重要的是,數學上我們的風格表達生成了一個清晰,可驗證的hypothesis,關於圖片外觀的表達下達到了單個神經元的層面。風格表達簡單計算網絡中不同類型神經元之間的聯系。計算神經元之間的聯系在生物上是一個合理的運算,例如在主視覺系統中,這一功能被所謂的復雜細胞實現。我們的結果表明沿着流的方向在不同的處理階段執行類似復雜細胞的運算或許是獲得視覺輸入外觀內容獨立表達的一種可能方法。
總而言之這是一個令人着迷的神經系統,它被訓練去執行一個生物視覺的核心計算任務,自動學習圖片表達,能夠允許圖片內容和風格分離。可能的解釋是當學習目標識別時,網絡已經保存了目標個體而對所有圖片變異具有不變性。將圖片內容和外觀進行分解的表示,對於這項任務是很實際的。因此,我們從風格中抽象內容的能力,創造和享受藝術的能力,可能是我們視覺系統強大推理能力的主要特征。
Method:
在主要文本中生成的結果是基於VGG網絡的,它是一個卷積神經網絡,在通用的視覺目標識別任務上取得了和人類表現相當的結果,被廣泛使用。我們使用擁有16個卷積和5個池化層的VGG網絡提供的特征空間。我們沒有使用任何全連接層。這個模型是公開可獲取的,可以在caffe-framework中獲得。對於圖片合成我們發現將最大池化替換為平均池化改善了梯度流動可以獲得更吸引人的效果,這就是為什么展示的生成圖片是使用平均池化的原因。網絡中每一層定義了一組非線性的濾波器,它們的復雜度隨着層在網絡中的位置增加。因此給定一個輸入圖片在CNN中每一層都被濾波器的響應編碼。一個擁有
個不同過濾器的層擁有大小為
的
個特征映射,這里的
等於特征映射的高度乘以寬度。所以l層的響應可以存儲在矩陣
,這里
是指在l層,位置j處的第i個過濾器。所以當原始圖片為
時,l層的特征表達分別為
。然后我們定義兩個特征表達的平方差:
在l層的loss相對響應梯度為:
這樣我們能夠使用標准的后向傳播流程計算相對於圖片的梯度。我們能夠改變初始隨機圖片
直到它在特定層產生和原始圖片
相同的響應。圖1中的5個內容重建來源於原始VGG網絡的conv1_1(a),conv2_1(b),conv3_1(c),conv4_1(d)和conv5_1(e)層。
在網絡中每一層CNN響應的頂端我們建立了一個風格表達來計算不同濾波器響應之間的相關性,期望對輸入圖片進行空間擴展。這里的特征相關性由Gram矩陣表示,這里的
是l層向量化的特征映射i和j的內積
為了生成的紋理與給定圖片相同(圖1,風格重建),我們使用圖片梯度從白噪聲圖片尋找另一張圖片與原始圖片的風格表達匹配。這是通過最小化原始圖片和生成圖片間Gram矩陣平均平方距離實現的。所以當分別代表原始圖片和生成圖片時,
分別代表l層的風格表達。這一層對於總體loss的貢獻為:
整體loss為:
這里的
是每一層對於總體loss的權重(下面給出了我們結果中
的特定值)。
相對於l層的響應的導數可以如下計算:
對應網絡中低層響應的梯度可以使用使用標准的后向傳播計算。圖1中的5個風格重建生成是匹配conv1_1(a),conv1_1和conv2_1(b),conv1_1,conv2_1和conv3 _1(c),conv1_1,conv2_1,
conv3 _1 和conv4 _1(d), conv1_ 1, conv2_1, conv3_1, conv4 _1, 和conv5 _1(e)層的風格。
為了生成混合圖片內容和繪畫風格的圖片,我們聯合優化白噪聲圖片與網絡中照片的一層內容表達與繪畫中多層風格表達的距離。令為照片,
為藝術作品。我們優化的loss函數為:
這里的分別為內容和風格重建的比例。對於圖2,我們的操作是匹配conv4_2的內容表達與conv1_1,conv2_1,conv3_1,conv4_1和conv5_1的風格表達(每一層的
,其他層的為0)。
的比例為
(圖2的B,C,D)或
圖2的E,F)。圖3展示了使用不同內容和風格重建loss相對比例的效果,匹配的風格表達層分別為conv1_1(A),conv1_1和conv2_1(B), conv1_1,conv2_1和conv3_1(C), conv1_1, conv2_1, conv3_1和conv4_1(D),conv1_1, conv2_1,conv3_1,conv4_1和conv5_1(E)。因子
始終等於1除以非零loss權重的響應層數目。