0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GAN:生成对抗网络 Generative Adversarial Networks

jf_96884364 来源:代码的路 作者:代码的路 2023-01-12 09:45 次阅读

原文链接

1 原理

对于生成对抗网络GAN,一个简单的理解是可以将其看做博弈的过程,我们可以将生成模型和判别模型看作博弈的双方,比如在犯罪分子造假币和警察识别假币的过程中:

  • 生成模型G相当于制造假币的一方,其目的是根据看到的钱币情况和警察的识别技术,去尽量生成更加真实的、警察识别不出的假币。
  • 判别模型D相当于识别假币的一方,其目的是尽可能的识别出犯罪分子制造的假币。 这样通过造假者和识假者双方的较量和朝目的的改进,使得最后能达到生成模型能尽可能真的钱币、识假者判断不出真假的纳什均衡效果(真假币概率都为0.5)。

2 训练

生成器G的目标是欺骗鉴别器D,其目标是能够区分真实数据和生成数据。因此,在训练生成器时,我们希望误差最大化,同时我们想要使鉴别器的误差最小化。

2.1 判别模型

目标函数是:

max_D E_{x-p_r} [logD(x)]+E_{z-p_g } [log(1-D(x))]

其中D(x)是判别模型的输出结果,是一个0-1范围内的实数值,用来判断图片是真实图片的概率,其中Pr和Pg分别代表真实图像的分布与生成图像的数据分布情况,可以看出目标函数是找到使得后面两个式子之和最大的判别模型函数D(z),后面两个式子是一个加和形式,其中:

E_{x-p_r} [logD(x)]

是指使得真实数据放入到判别模型D(x)输出的计算值和整个式子值尽可能大。

E_{z-p_g } [log(1-D(x))]

指使得造假数据放入到判别模型D(x)输出的计算值尽可能小和整个式子值尽可能大。

这样整合下来就是使得目标函数尽可能大,因此在训练时就可以根据目标函数进行梯度提升。

2.2 生成模型

目标是让判别模型无法区分真实图片和生成图片,其目标函数是:

min_g (max_D E_{x-p_r} [logD(x)]+E_{z-p_g } [log(1-D(x))])

也就是找到生成函数g(z)使得生成模型的目标函数尽量小。

学习更多编程知识,请关注我的公众号:

[代码的路]

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4732

    浏览量

    100393
  • GaN
    GaN
    +关注

    关注

    19

    文章

    1906

    浏览量

    72588
  • 函数
    +关注

    关注

    3

    文章

    4276

    浏览量

    62303
收藏 人收藏

    评论

    相关推荐

    生成式人工智能的概念_生成式人工智能主要应用场景

    生成式人工智能(Generative Artificial Intelligence,简称GAI)是一种先进的人工智能技术,其核心在于利用计算机算法和大量数据来生成新的、具有实际价值的内容。这种技术能够模拟人类的创造力和想象力,
    的头像 发表于 09-16 16:05 580次阅读

    请问LM311能准确的交截生成对应的PWM波形吗?

    UC3825, TLV3501输入正是100k的正弦波 输入负是100kHz的锯齿波 二者交截生成PWM波形 请问LM311能准确的交截生成对应的PWM波形吗 之前使用UC3525里面自带的比较器做的,LM311能达到这样的速度吗
    发表于 08-06 07:46

    生成对抗网络(GANs)的原理与应用案例

    生成对抗网络Generative Adversarial Networks,GANs)是一种由蒙特利尔大学的Ian Goodfellow等
    的头像 发表于 07-09 11:34 718次阅读

    人工神经网络模型的分类有哪些

    详细介绍人工神经网络的分类,包括前馈神经网络、卷积神经网络、循环神经网络、深度神经网络生成对抗
    的头像 发表于 07-05 09:13 826次阅读

    生成式AI的基本原理和应用领域

    生成式人工智能(Generative Artificial Intelligence,简称Generative AI)是一种利用机器学习算法和深度学习技术,通过模拟人类的创造性思维过程,生成
    的头像 发表于 07-04 11:50 994次阅读

    构建神经网络模型方法有几种

    构建神经网络模型是深度学习领域的核心任务之一。本文将详细介绍构建神经网络模型的几种方法,包括前飨神经网络、卷积神经网络、循环神经网络
    的头像 发表于 07-02 10:15 290次阅读

    神经网络架构有哪些

    、语音识别、自然语言处理等多个领域。本文将对几种主要的神经网络架构进行详细介绍,包括前馈神经网络、循环神经网络、卷积神经网络生成对抗
    的头像 发表于 07-01 14:16 535次阅读

    瑞萨完成对Transphorm的收购

    2024年6月20日完成对氮化镓(GaN)功率半导体全球供应商Transphorm, Inc.(以下“Transphorm”,Nasdaq:TGAN)的收购。随着收购的完成,瑞萨电子将立即开始提供
    的头像 发表于 06-21 13:59 688次阅读

    Palo Alto Networks与IBM携手,深化网络安全合作

    网络安全领域的两大巨头Palo Alto Networks和IBM近日宣布建立全面合作伙伴关系,共同推动网络安全领域的创新发展。根据协议,Palo Alto Networks将收购IB
    的头像 发表于 05-22 09:40 547次阅读

    思科完成对Isovalent的收购

    全球领先的网络技术公司思科(Cisco)近日宣布,已完成对开源云原生网络与安全领域的佼佼者Isovalent的收购。
    的头像 发表于 05-06 10:41 575次阅读

    深度学习生成对抗网络GAN)全解析

    GANs真正的能力来源于它们遵循的对抗训练模式。生成器的权重是基于判别器的损失所学习到的。因此,生成器被它生成的图像所推动着进行训练,很难知道生成
    发表于 03-29 14:42 4266次阅读
    深度学习<b class='flag-5'>生成对抗</b><b class='flag-5'>网络</b>(<b class='flag-5'>GAN</b>)全解析

    在使用spc5 stdio的时候生成对应的功能,main.c里面为什么没有调用对应的接口?

    在使用spc5 stdio的时候生成对应的功能,main.c里面怎么没有调用对应的接口; eg:这是怎么回事?
    发表于 03-26 07:00

    生成式人工智能和感知式人工智能的区别

    生成新的内容和信息的人工智能系统。这些系统能够利用已有的数据和知识来生成全新的内容,如图片、音乐、文本等。生成式人工智能通常基于深度学习技术,如生成对抗
    的头像 发表于 02-19 16:43 1442次阅读

    基于国产AI编译器ICRAFT部署YOLOv5边缘端计算的实战案例

    人工智能领域中各种算法模型的不断研究和改进。随着深度学习的兴起,包括卷积神经网络(CNN)、循环神经网络(RNN)、生成对抗网络GAN)、
    的头像 发表于 01-03 10:17 2673次阅读
    基于国产AI编译器ICRAFT部署YOLOv5边缘端计算的实战案例

    谷歌新作UFOGen:通过扩散GAN实现大规模文本到图像生成

    扩散模型和 GAN 的混合模型最早是英伟达的研究团队在 ICLR 2022 上提出的 DDGAN(《Tackling the Generative Learning Trilemma with Denoising Diffusion GANs》)。其灵感来自于普通扩散模型
    的头像 发表于 11-21 16:02 574次阅读
    谷歌新作UFOGen:通过扩散<b class='flag-5'>GAN</b>实现大规模文本到图像<b class='flag-5'>生成</b>