国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于網絡本身即可以生成數據能力的神經網絡結構了解嘛?

新機器視覺 ? 來源:新機器視覺 ? 作者:George Seif ? 2022-05-24 16:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

生成對抗網絡(GANs,https://en.wikipedia.org/wiki/Generative_adversarial_network)是一類具有基于網絡本身即可以生成數據能力的神經網絡結構。由于GANs的強大能力,在深度學習領域里對它們的研究是一個非常熱門的話題。在過去很短的幾年里,它們已經從產生模糊數字成長到創造如真實人像般逼真的圖像。

d70d1f78-da6f-11ec-ba43-dac502259ad0.pngd738fd28-da6f-11ec-ba43-dac502259ad0.jpg

1 GAN的工作方式


GANs屬于生成模型的一類(https://en.wikipedia.org/wiki/Generative_model)。這意味著它們能夠產生,或者說是生成完全新的“有效”數據。有效數據是指網絡的輸出結果應該是我們認為可以接受的目標。

舉例說明,舉一個我們希望為訓練一個圖像分類網絡生成一些新圖像的例子。當然對于這樣的應用來說,我們希望訓練圖像越真實越好,可能在風格上與其他圖像分類訓練數據非常相似。

下面的圖片展示的例子是GANs已經生成的一系列圖片。它們看起來非常真實!如果沒人告訴我們它們是計算機生成的,我們真可能認為它們是人工搜集的。

d759a5dc-da6f-11ec-ba43-dac502259ad0.jpg

漸進式GAN生成的圖像示例(圖源:https://arxiv.org/pdf/1710.10196.pdf)

為了做到這些,GANs是以兩個獨立的對抗網絡組成:生成器和判別器。當僅將嘈雜的圖像陣列作為輸入時,會對生成器進行訓練以創建逼真的圖像。別器經過訓練可以對圖像是否真實進行分類。

GANs真正的能力來源于它們遵循的對抗訓練模式。生成器的權重是基于判別器的損失所學習到的。因此,生成器被它生成的圖像所推動著進行訓練,很難知道生成的圖像是真的還是假的。同時,生成的圖像看起來越來越真實,判別器在分辨圖像真實與否的能力變得越來越強,無論圖像用肉眼看起來多么的相似。

從技術的角度來看,判別器的損失即是分類圖像是真是假的錯誤值;我們正在測量它區分真假圖像的能力。生成器的損失將取決于它在用假圖像“愚弄”判別器的能力,即判別器僅對假圖像的分類錯誤,因為生成器希望該值越高越好。

因此,GANs建立了一種反饋回路,其中生成器幫助訓練判別器,而判別器又幫助訓練生成器。它們同時變得更強。下面的圖表有助于說明這一點。

d78eb3bc-da6f-11ec-ba43-dac502259ad0.png

生成對抗網絡的結構說明

2在PyTorch中訓練GAN來生成數字


現在我們將通過一個例子來展示如何使用PyTorch建立和訓練我們自己的GAN!MNIST數據集包含60000個訓練數據,數據是像素尺寸28x28的1-9的黑白數字圖片。這個數據集非常適合我們的用例,同時也是非常普遍的用于機器學習的概念驗證以及一個非常完備的集合。

d7af8042-da6f-11ec-ba43-dac502259ad0.jpg

MNIST 數據部分集,圖源:https://www.researchgate.net/figure/A-subset-of-the-MNIST-database-of-handwritten-digits_fig4_232650721

我們將從import開始,所需的僅僅是PyTorch中的東西。


												
import torch    from torch import nn, optim    from torch.autograd.variable import Variable
import torchvision    import torchvision.transforms as transforms

接下來,我們為訓練數據準備DataLoader。請記住,我們想要的是為MNIST生成隨機數字,即從0到9。因此,我也將需要為這10個數字建立標簽

d7d65f1e-da6f-11ec-ba43-dac502259ad0.png

現在我們可以開始建立網絡了,從下面的Discriminator(判別器)網絡開始,回想一下,判別器網絡是對圖像真實與否進行分類——它是一個圖像分類網絡。因此,我們的輸入是符合標準MNIST大小的圖像:28x28像素。我們把這張圖像展平成一個長度為784的。輸出是一個單獨的值,表示圖像是否是實際的MNIST數字。

d7ef1df6-da6f-11ec-ba43-dac502259ad0.png

接下來到了生成器部分。生成器網絡負責創建實際的圖像——它可以從一個純噪聲的輸入做到這一點!在這個例子中,我們要讓生成器從一個長度為100的開始——注意:這只是純隨機噪聲。從這個,我們的生成器將輸出一個長度為784的,稍后我們可以將其重塑為標準MNIST的28x28像素。

d8125726-da6f-11ec-ba43-dac502259ad0.png

為了建立訓練過程,我們將需要做以下工作:
  • 1 . 損失函數
  • 2 . 每個網絡的優化器
  • 3 . 訓練次數
  • 4 . batch數量
如果我們希望網絡在GPU上執行,PyTorch要求我們必須明確地把模型移動到GPU上。這部分所有的代碼如下所示。d8632ae8-da6f-11ec-ba43-dac502259ad0.png現在開始訓練循環。PyTorch中的訓練循環通常由一個遍歷各個訓練周期的外部循環和一個遍歷batch數據的內部循環組成。訓練GAN的關鍵是我們需要在一個循環中更新生成器和判別器。查看下面的代碼來訓練GAN和PyTorch這些步驟在代碼下面有更詳細的描述。d891088c-da6f-11ec-ba43-dac502259ad0.pngd8ca7144-da6f-11ec-ba43-dac502259ad0.png(1)我們首先為判別器準備 *real* 圖像數據。輸入的是一批真實的MNIST圖像。輸出全為1的,因為1表示圖像是真實的。

(2)接下來,我們將為生成器準備輸入量以便生成假圖像。回想一下,我們的生成器網絡采用長度為100的輸入向量,這就是我們在這里所創建的向量。images.size(0)用于批處理大小。

(3)通過從步驟(2)中創建的隨機噪聲數據向量,我們可以繞過這個向量到生成器來生成假的圖像數據。這將結合我們從步驟1的實際數據來訓練判別器。請注意,這次我們的標簽向量全為0,因為0代表假圖像的類標簽。

(4)通過假的和真的圖像以及它們的標簽,我們可以訓練我們的判別器進行分類。總損失將是假圖像的損失+真圖像的損失。

(5)現在我們的判別器已經更新,我們可以用它來進行預測。這些預測的損失將通過生成器反向傳播,這樣生成器的權重將根據它欺騙判別器的程度進行具體更新

(5a)生成一些假圖像進行預測

(5b)使用判別器對假圖像進行分批次預測并保存輸出。

(6)使用判別器的預測訓練生成器。注意,我們使用全為1的 _real_labels_ 作為目標,因為我們的生成器的目標是創建看起來真實的圖像并且預測為1!因此,生成器的損失為0將意味著判別器預測全1.

瞧,這就是我們訓練GAN生成MNIST圖像的全部代碼!只需要安裝PyTorch即可運行。下面的gif就是經過超過40個訓練周期生成的圖像。

d8e2dd60-da6f-11ec-ba43-dac502259ad0.gif

d94503b4-da6f-11ec-ba43-dac502259ad0.png

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4838

    瀏覽量

    107804
  • 圖像
    +關注

    關注

    2

    文章

    1096

    瀏覽量

    42332
  • 生成器
    +關注

    關注

    7

    文章

    322

    瀏覽量

    22716

原文標題:你真的了解深度學習生成對抗網絡(GAN)嗎?

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    神經網絡的初步認識

    日常生活中的智能應用都離不開深度學習,而深度學習則依賴于神經網絡的實現。什么是神經網絡神經網絡的核心思想是模仿生物神經系統的結構,特別是大
    的頭像 發表于 12-17 15:05 ?335次閱讀
    <b class='flag-5'>神經網絡</b>的初步認識

    自動駕駛中常提的卷積神經網絡是個啥?

    在自動駕駛領域,經常會聽到卷積神經網絡技術。卷積神經網絡,簡稱為CNN,是一種專門用來處理網格狀數據(比如圖像)的深度學習模型。CNN在圖像處理中尤其常見,因為圖像本身
    的頭像 發表于 11-19 18:15 ?2080次閱讀
    自動駕駛中常提的卷積<b class='flag-5'>神經網絡</b>是個啥?

    NMSIS神經網絡庫使用介紹

    :   神經網絡卷積函數   神經網絡激活函數   全連接層函數   神經網絡池化函數   Softmax 函數   神經網絡支持功能   該庫具有用于操作不同權重和激活
    發表于 10-29 06:08

    構建CNN網絡模型并優化的一般化建議

    通過實踐,本文總結了構建CNN網絡模型并優化的一般化建議,這些建議將會在構建高準確率輕量級CNN神經網絡模型方面提供幫助。 1)避免單層神經網絡:我們清楚神經網絡
    發表于 10-28 08:02

    如何通過地址生成器實現神經網絡特征圖的padding?

    對于SiamFC網絡結構,我們設計的卷積核寬度為3*3,卷積步長為1,則經卷積過后,特征圖寬度會減少2,為了滿足我們所設計的pe陣列的計算要求,則需要對輸出特征圖外圍進行補零處理,以擴充特征圖的大小
    發表于 10-22 08:15

    在Ubuntu20.04系統中訓練神經網絡模型的一些經驗

    模型。 我們使用MNIST數據集,訓練一個卷積神經網絡(CNN)模型,用于手寫數字識別。一旦模型被訓練并保存,就可以用于對新圖像進行推理和預測。要使用生成的模型進行推理,
    發表于 10-22 07:03

    CICC2033神經網絡部署相關操作

    在完成神經網絡量化后,需要將神經網絡部署到硬件加速器上。首先需要將所有權重數據以及輸入數據導入到存儲器內。 在仿真環境下,可將其存于一個文件,并在 Verilog 代碼中通過 read
    發表于 10-20 08:00

    液態神經網絡(LNN):時間連續性與動態適應性的神經網絡

    1.算法簡介液態神經網絡(LiquidNeuralNetworks,LNN)是一種新型的神經網絡架構,其設計理念借鑒自生物神經系統,特別是秀麗隱桿線蟲的神經
    的頭像 發表于 09-28 10:03 ?1226次閱讀
    液態<b class='flag-5'>神經網絡</b>(LNN):時間連續性與動態適應性的<b class='flag-5'>神經網絡</b>

    神經網絡的并行計算與加速技術

    問題。因此,并行計算與加速技術在神經網絡研究和應用中變得至關重要,它們能夠顯著提升神經網絡的性能和效率,滿足實際應用中對快速響應和大規模數據處理的需求。神經網絡并行
    的頭像 發表于 09-17 13:31 ?1130次閱讀
    <b class='flag-5'>神經網絡</b>的并行計算與加速技術

    基于神經網絡的數字預失真模型解決方案

    在基于神經網絡的數字預失真(DPD)模型中,使用不同的激活函數對整個系統性能和能效有何影響?
    的頭像 發表于 08-29 14:01 ?3477次閱讀

    無刷電機小波神經網絡轉子位置檢測方法的研究

    摘要:論文通過對無刷電機數學模型的推導,得出轉角:與三相相電壓之間存在映射關系,因此構建了一個以三相相電壓為輸人,轉角為輸出的小波神經網絡來實現轉角預測,并采用改進遺傳算法來訓練網絡結構與參數,借助
    發表于 06-25 13:06

    神經網絡專家系統在電機故障診斷中的應用

    摘要:針對傳統專家系統不能進行自學習、自適應的問題,本文提出了基于種經網絡專家系統的并步電機故障診斷方法。本文將小波神經網絡和專家系統相結合,充分發揮了二者故障診斷的優點,很大程度上降低了對電機
    發表于 06-16 22:09

    神經網絡RAS在異步電機轉速估計中的仿真研究

    眾多方法中,由于其結構簡單,穩定性好廣泛受到人們的重視,且已被用于產品開發。但是MRAS仍存在在低速區速度估計精度下降和對電動機參數變化非常敏感的問題。本文利用神經網絡的特點,使估計更為簡單、快速
    發表于 06-16 21:54

    基于FPGA搭建神經網絡的步驟解析

    本文的目的是在一個神經網絡已經通過python或者MATLAB訓練好的神經網絡模型,將訓練好的模型的權重和偏置文件以TXT文件格式導出,然后通過python程序將txt文件轉化為coe文件,(coe
    的頭像 發表于 06-03 15:51 ?1224次閱讀
    基于FPGA搭建<b class='flag-5'>神經網絡</b>的步驟解析

    NVIDIA實現神經網絡渲染技術的突破性增強功能

    近日,NVIDIA 宣布了 NVIDIA RTX 神經網絡渲染技術的突破性增強功能。NVIDIA 與微軟合作,將在 4 月的 Microsoft DirectX 預覽版中增加神經網絡著色技術,讓開
    的頭像 發表于 04-07 11:33 ?1188次閱讀