AI论文精读笔记-Generative Adversarial Nets(GAN)

news2024/9/21 18:01:42

1. 论文基本信息

  • 论文标题:Generative Adversarial Nets

  • 作者:Ian J. Goodfellow,∗ Jean Pouget-Abadie,† Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair,‡ Aaron Courville, Yoshua Bengio§

  • 发表时间和期刊:2014.06;NeurIPS

  • 论文链接:Generative Adversarial Nets

2. 研究背景和动机

        到目前为止,深度学习中最引人注目的成功来自于判别模型,通常是那些将高维度、丰富的输入映射到类别标签的模型。相比之下,生成模型的影响力较小,原因在于近似许多难以处理的概率计算(这些计算在最大似然估计和相关策略中出现)非常困难,此外在生成背景中难以利用分段线性单元的优势。

3. 主要贡献

        (1) 我们通过“对抗”的方式提出了一种新的framework用于估算生成模型,绕过了这些难题。在所提出的对抗网络框架中,生成模型与一个对手判别模型进行对抗:一个判别模型学习如何判断样本是来自伪造的分布还是数据分布。生成模型可以类比为一组伪造者,试图制造假币并使用而不被发现,而判别模型则类似于警察,试图识别假币。这场竞争驱使双方不断改进方法,直到假币与真币无法区分。

        (2) 用一个有监督学习的损失函数来做无监督学习。标号来自于是采样的还是生成的。(可以说是自监督学习的灵感来源之一)

4. 方法和模型

        下图是GAN的生成器与判别器的优化过程。其中蓝色虚线代表判别结果的分布情况(注意,当判别结果为\frac{1}{2}时,代表生成器伪造的数据达到最优结果,此时相当于随机猜测);黑色虚线代表真实的数据分布情况;绿色实线代表生成器生成的结果分布。

        生成器的目标就是通过MLP将z(代表噪声分布)映射到x(真实数据分布),可以看到,随着不断优化z,噪声分布逐渐向真实的数据分布靠拢,到最后判别结果的分布趋向于\frac{1}{2}

下图是GAN的核心算法。其中第一个等式用于优化判别器,第二个等式用于优化生成器

5. 实验和结果

略~

6. 讨论和未来工作

GAN的优点总结如下

  1. 无需马尔可夫链:训练过程中不需要依赖马尔可夫链,仅需反向传播来获取梯度。
  2. 无推断步骤:学习过程中无需进行推断操作,简化了模型训练。
  3. 模型灵活性:模型可以集成多种不同的函数,具有较强的灵活性。
  4. 梯度传递优势:生成器网络通过鉴别器的梯度进行更新,而非直接从数据样本中更新参数,这可能带来一定的统计优势,避免输入信息直接复制到生成器的参数中。
  5. 高质量分布表示:相较于基于马尔可夫链的方法,GAN能够表示非常清晰甚至退化的分布,而马尔可夫链方法则需要分布较模糊以便模式之间的混合。

GAN的缺点总结如下

  1. 无显式概率分布表示:GAN模型中没有显式地表示目标概率分布。
  2. 训练不稳定性:生成器和判别器的训练需要很好地同步。

7. 个人理解和反思

        GAN的出现已经过了10年之久,现在也涌现出很多基于GAN的优化工作,比如StyleGAN3等等。而GAN的主要思想也不是前人未曾想到的,不过,GAN将其发扬光大,讲解清楚,成为生成领域的经典之作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2127225.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java数据结构(十)——冒泡排序、快速排序

文章目录 冒泡排序算法介绍代码实现优化策略复杂度和稳定性 快速排序算法介绍优化策略非递归实现代码演示复杂度和稳定性 冒泡排序 算法介绍 冒泡排序是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就交换。遍历…

【FICO】SAP财务模块中的统驭科目及特别总账详解

前言 统驭科目作为SAP FICO财务模块中专有的一个概念,很好地展示了SAP ERP系统在设计模式中的精妙性。在本文中,笔者将详细地介绍统驭科目的设计初衷,作用以及如何在系统中进行使用。 统驭科目的设计初衷 统驭科目是如何进行核算的&#xff…

【python】OpenCV—Age and Gender Classification

文章目录 1、任务描述2、网络结构2.1 人脸检测2.2 性别分类2.3 年龄分类 3、代码实现4、结果展示5、参考 1、任务描述 性别分类和年龄分类预测 2、网络结构 2.1 人脸检测 输出最高的 200 个 RoI,每个 RoI 7 个值,(xx,xx&#x…

LeetCode - 17 电话号码的字母组合

题目来源 17. 电话号码的字母组合 - 力扣(LeetCode) 题目描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对…

共享单车轨迹数据分析:以厦门市共享单车数据为例(三)

本篇文章将视角聚焦于共享单车的出行距离和时间分布,为了更好地理解共享单车在特定时间段内的使用情况及用户行为特征,本文基于2020年12月21日上午06:00至10:00期间收集的共享单车订单数据进行了详细的分析,旨在探索共享单车在该时间段内的出…

Centos7 Hadoop 单机版安装教程(图文)

本章教程,主要记录如何在Centos7中安装Hadoop单机版。 一、软件安装包和基础环境 CentOS7.x,jdk8,hadoop 通过网盘分享的文件:Hadoop 链接: https://pan.baidu.com/s/1_qGI9QeXMAJNb3TydHhQGA?pwd=xnz4 提取码: xnz4 当然你也可以自己去官网下载。 java8:https://www.ora…

【Python第三方库】OpenCV库实用指南

文章目录 前言安装OpenCV读取图像图像基本操作获取图像信息裁剪图像图像缩放图像转换为灰度图图像模糊处理边缘检测图像翻转图像保存 视频相关操作方法讲解读取视频从摄像头读取视频 前言 OpenCV(Open Source Computer Vision Library)作为一个强大的计…

使用docker配置wordpress

docker的安装 配置docker yum源 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo下载最新版本docker sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-…

基于spring拦截器实现博客项目的强制登录功能(四)

6. 强制登录 当⽤⼾访问 博客列表和博客详情⻚ 时, 如果⽤⼾当前尚未登陆, 就⾃动跳转到登陆⻚⾯. 我们可以采⽤拦截器来完成, token通常由前端放在header中, 我们从header中获取token, 并校验 token是否合法 6.1 添加拦截器 package com.example.spring_blog_24_9_8.config;…

k8s dashboard token 生成/获取

创建示例用户 在本指南中,我们将了解如何使用 Kubernetes 的服务帐户机制创建新用户、授予该用户管理员权限并使用与该用户绑定的承载令牌登录仪表板。 对于以下每个和的代码片段ServiceAccount,ClusterRoleBinding您都应该将它们复制到新的清单文件(如)…

Blazor开发框架Known-V2.0.10

Known今天迎来了2.0的第11个版本,同时网站网址和板块也进行了一次升级改造,虽不完美,但一直在努力改变,之前一直在完善框架功能,忽略了文档的重要性,所以这次更新了文档和API。交流互动板块也在进行当中&am…

PPT幻灯片的添加与编辑:全面技术指南

目录 一、PPT幻灯片的添加 1.1 启动PowerPoint与新建演示文稿 1.2 选择模板 1.3 添加新幻灯片 1.3.1 使用“开始”选项卡 1.3.2 使用快捷键 1.3.3 复制现有幻灯片 1.4 调整幻灯片顺序 二、PPT幻灯片的编辑 2.1 输入与编辑文本 2.1.1 使用文本框添加文本 2.1.2 使用占…

GitHub Star 数量前 13 的自托管项目清单

一个多月前,我们撰写并发布了这篇文章《终极自托管解决方案指南》。在那篇文章里我们深入探讨了云端服务与自托管方案的对比、自托管的潜在挑战、如何选择适合自托管解决方案,并深入介绍了五款涵盖不同场景的优秀自托管产品。 关于自托管的优势&#xf…

职业技能大赛背景下的移动互联网应用软件开发(Android)实训室建设方案

一、建设背景 随着科技的持续进步,移动设备已成为人们日常生活中不可或缺的一部分。据相关数据,移动互联网的使用率在近年来显著上升。在这样的背景下,移动互联技术不仅推动了科技的发展,也渗透到了智能家居、车联网、工业自动化…

大数据-129 - Flink CEP 详解 Complex Event Processing - 复杂事件处理

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

改进版field-sensitive指针分析算法

DEA 1.Introduction2.Approach2.1.Stride-based Field Representation2.1.1.示例12.1.2.示例2 2.2.完整算法 3.Evaluation3.1.Implementation3.2.结果 参考文献 1.Introduction 这篇paper是SVF团队对PKH field-sensitive指针分析算法 [ 2 ] ^{[2]} [2] 的优化,在使…

Pycharm中python文件导入torch模块时报错:No module named ‘torch‘

问题描述 导入torch时报错 上网查找后,发现原因可能是没有安装pytorch,但检查后发现自己已经安装了,遂考虑到可能是没有使用正确的环境 解决方法 因为是PyCharm 没有使用我所安装了 PyTorch 的 Conda 环境,所以报错了&#xf…

计算2的100次方

#include <stdio.h>int main() {int a[100] {0};a[0] 1;for(int i 0;i < 100;i)//乘100次2{for(int j 0; j < 100;j)//乘以每一位{a[j] * 2;//每一位都*2}for(int k 0;k < 99;k){if(a[k] > 10)//判断进位{a[k 1];a[k] - 10;}}}//找到第一个不为0的数&a…

vue part 9

动画与过渡 Test.vue <template><div><button click"isShow !isShow">显示/隐藏</button><transition name"hello" appear><h1 v-show"isShow">你好啊!</h1></transition><transition …

51单片机快速入门之点灯 STC 51单片机

第一步创建工程 第二步加载头文件 第三步编写代码 点灯完成 解释:主函数为main() 内部P1控制的是p1.0-p1.7 引脚 0为低电平