【《圖像生成模型的構建分析案例概述》2600字】_第1頁
【《圖像生成模型的構建分析案例概述》2600字】_第2頁
【《圖像生成模型的構建分析案例概述》2600字】_第3頁
【《圖像生成模型的構建分析案例概述》2600字】_第4頁
【《圖像生成模型的構建分析案例概述》2600字】_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

附錄圖像生成模型的構建分析案例概述在進行圖像修復之前,首先必須做的是環(huán)境配置與圖像生成的模型構建。開發(fā)環(huán)境本地環(huán)境配置百度搜索Anaconda,然后查找官網,直接運行exe文件。Pip下載TensorFlow:activateAnaconda3pipinstalltensorflow-gpu安裝cuda:結合顯卡型號以及系統操作選擇匹配的CUDA版本運行JupyTerNotebook,然后直接輸入測試代碼:importtensorflowastf圖3.1本地成功配置tensorflow圖網絡環(huán)境配置方法1(無GPU電腦推薦)使用Colaboratory環(huán)境運行。圖3.2Colaboratory提供的GPU云的配置詳情圖網絡環(huán)境配置方法2(無GPU電腦推薦)使用kaggle環(huán)境運行。圖3.3Kaggle提供的GPU云的配置詳情圖深度卷積對抗網絡的激活函數激活函數函數圖像應用Tanh適用輸出需要為-1到1的層Sigmoidsigmoid函數當輸出為0和1時曲線趨向平緩,所以適合二分類問題ReluRelu函數比sigmoid收斂的快,但是只適用輸出為正數的問題LeakyReLU修正版的Relu函數,可以適用輸入含有負數的問題代價函數這里做出假設,生成器生成的圖片記為G(Z),X代表著原圖,判斷結果記作D(X),轉化成符號語言就是G目標即1-D(G(Z))無限接近0,D目標就是讓D(G(Z))無限接近0,讓D(X)無限接近1,這樣就得到代價函數。表3.5代價函數D的代價函數G的代價函數訓練步驟處理圖片數據集生成器:確定生成器包括至少兩層結構,然后對噪聲溫度加以確認,輸入以及輸出通道數。判別器:確定判別結構,卷積層層數以及所有層卷積核大小,輸入以及輸出通道數。代價函數:通過交叉熵代價函數構造代價函數。優(yōu)化器:確定Adam優(yōu)化器學習率(learning_rate)以及梯度加總衰減率(beta1)。創(chuàng)建tensorflow會話,確定epoch,然后開始運行各張量以及模型。通過測試集或樣本集運行模型,測試假圖片。根據假圖片優(yōu)化模型,調整參數等,直至假圖片效果達到預期。人臉數據集圖像生成模型初建cifar10數據模型在生成DCGAN網絡圖像之前具有良好的數據處理效果,然而,主要因為mnist數據集有著比較簡單的構成,且分布了很多cifar10類別,但是采用DCGAN網絡并不能修復所有圖片,它的修復功能僅僅只是面對特定類別而已,所以,在實際應用過程中,如果在部分缺失圖像的處理中運用DCGAN網絡進行修復訓練,本文認為,效果并不能達到預期,因此,還應該進一步做好修復訓練Celeba圖像集的工作。人臉圖片數據集簡介在本文的研究中,裁剪和對齊所有臉部圖像是基于數據文件img_align_celeba.zip來作為整體的數據集文件。圖3.6Celeba數據集部分圖片展示基于人臉圖片數據集的圖像生成模型的構建在構建Celeba圖片生成模型的過程當中主要步驟如下。處理Celeba圖片數據裁剪Celeba圖片集時采取scipy的庫函數。提取數據集的樣本集。處理數據集。如表3.3所示為數據的具體處理步驟。表3.7數據處理步驟圖處理步驟處理方法對訓練集進行剪切使用scipy的crop方法對每張圖像進行規(guī)范化,范圍在[-1,1]因為像素值在[0,255],所以對每個像素點除以255乘以2再減1把圖片打亂使用tf的shuffle方法把圖片組合為batchbatch_size=128設定循環(huán)變量,以batch_size為單位循環(huán)切割圖片構建判別器對于Celeba判別器而言,四層卷積層組成了該模型的隱藏層,具體如圖3.5所示。為了進一步達到敘述的效果,以下通過單張圖片來進行模型解釋,基于過濾器和same方式填充四層卷積層,執(zhí)行上述操作的神經層將圖像縮小2倍,并增加實際輸出圖像的通道數。建立一個鑒別器并實際執(zhí)行上述操作四次或更多次,以將圖像由64*64變?yōu)?*4,縮小16倍,輸出通道數從3逐步變?yōu)?12,不斷增大,然后把4*4*512拉成一維向量,也就是一次展平操作在輸出層先上使用,緊接著就在輸出為1*1的過程中基于sigmoid函數激活全連接層。圖3.8Celeba判別器構造模型(輸入的64*64RGB三通道的圖片經過四層卷積層輸出分類)(3)構建生成器

如圖3.9所示,Celba發(fā)生器模型的隱藏層由四層組成,這些層轉置了卷積層。執(zhí)行上述動作的神經層實際上輸出了兩倍的圖像并減少了通道數。圖3.9Celeba生成器構造模型(輸入的100維噪聲經過四層轉置卷積層生成64*64RGB三通道的假圖片)

(4)代價函數與優(yōu)化器的構建表3.10詳細展示了圖像生成的代價函數與優(yōu)化器的創(chuàng)建的方法和代碼。表3.10圖像生成代價函數與優(yōu)化器的構建判別器代價函數方法因為判別器想要輸入真圖片輸出1,想要輸入假圖片輸出0,所以需要兩個代價函數,一個利用交叉熵函數判斷輸入真圖片輸出與1的差別,另一個利用交叉熵函數判斷輸入假圖片輸出與0的差別,但是為了防止判別效果太好,導致梯度消失,所以添加很小的參數smooth,輸入真圖片時判斷真圖片與1個略比1小的差別。當兩個差別過大,就懲罰判別器,以此得到好的判別效果。代碼#真圖片輸出與略比1小的標簽的差距

d_loss_real

=

tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(logits=d_logits_real,

labels=tf.ones_like(d_logits_real)

*

(1

-

smooth)))

#假圖片輸出與標簽0的差距

d_loss_fake

=

tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(logits=d_logits_fake,

labels=tf.zeros_like(d_model_fake)))

#兩個差距之和構成判別器代價函數

d_loss

=

d_loss_real

+

d_loss_fake

生成器代價函數方法因為生成器想要自己構造的假圖片讓判別器輸出1,所以生成器的構造利用交叉熵函數判斷判別器輸入假圖片輸出與1的差別。代碼#假圖片輸出與標簽1的差距

g_loss

=

tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(logits=d_logits_fake,

labels=tf.ones_like(d_model_fake))

判別器優(yōu)化器方法輸入學習率learning_rate,權重衰減參數beta1,使用Adam優(yōu)化器代碼#判別器優(yōu)化器

discriminator_optimizer

=

tf.train.AdamOptimizer(learning_rate=learning_rate,

beta1=beta1)

生成器優(yōu)化器方法輸入學習率learning_rate,權重衰減參數beta1,使用Adam優(yōu)化器代碼#生成器優(yōu)化器

generator_optimizer

=

tf.train.AdamOptimizer(learning_rate=learning_rate,

beta1=beta1)

(5)參數確定此參數表3.11是經過不斷優(yōu)化實驗和參考文獻[10]所得。表3.11Celeba訓練參數表參數參數值輸入噪聲維度(z_size)100學習率(learning_rate)0.0002權重衰減率(beta1)0.5增加對抗攻擊(smooth)0.1LeakyReLU的斜率(alpha)0.2訓練的batch的大?。╞atch_size)128卷積核大?。╧size)5*5卷積步長(stride)2訓練次數(epoch)10模型運行以及分析改進圖像生成模型的運行圖3.12圖像生成過程圖(不斷優(yōu)化生成器,輸入最左邊的隨機噪聲一步步優(yōu)化生成器得到不斷清晰的人臉生成圖像)

圖像生成模型的改進通過上文的研究發(fā)現,采取一次判別器迭代就達到了圖像生成的效果,但是具體而言,在圖3.13中我們可以看到,判別器判別損失逐漸朝著0的方向緩慢下降,我們將其稱之為梯度消失。

圖3.13未優(yōu)化的損失變化圖(未優(yōu)化時出現了判別器損失接近0的現象)

那么為了有效減少出現梯度消失的可能性,在本文研究當中,重點改進了圖像生成模型,將一次生成器損失加原有基礎上,得到模型優(yōu)化,完成了一次判別器優(yōu)化迭代。根據圖3.14我們可以看出,這一損失變化圖是已經優(yōu)化后所呈現出來的變化。我能觀察發(fā)現,解決了梯度消失的問題。

圖3.14優(yōu)化后的損失變化圖(優(yōu)化后生成器損失與判別器損失的對抗達到新的平衡)?觀察圖3.15我們發(fā)現這是圖像生成過程優(yōu)化,那么基于此過程,達到了良好的圖像生成的迭代效果。

圖3.15優(yōu)化后的圖像生成過程圖(不斷優(yōu)化生成器,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論