1-GAN

一、GAN简介

人脸检测、图像识别、语音识别,机器总是在现有事物的基础上做出描述或判断[参考]

能不能创造这个世界不存在的东西?GAN

GAN,全称Generative Adversarial Networks,中文叫生成式对抗网络。GAN它包含三个部分(生成、判别和对抗),训练GAN的最终目标是获得一个足够好用的生成器(也就是生成能够以假乱真的内容), 能够完成类似功能的还有玻尔兹曼机,变分自编码器等等,它们被称为生成模型。

GAN分为两个模块,生成网络以及判别网络

生成网络 负责依据先验分布P(Z)中提取的随机向量z(通常选择正态或均匀分布为先验分布)产生图片、语音等内容,产生的内容是数据集中没有见过的,也可以称为虚假内容;

判别网络 负责对生成网络产生的虚假内容和另一端输入的真实内容进行判断,判断其内容是否是真实的,通常它会给出一个概率来代表内容的真实度,真实内容打高分,虚假内容打低分。

两者使用何种网络(擅长处理图片的 CNN,全连接)并没有规定,只要能完成相应的功能就可以。

对抗,就是指GAN两个网络交替训练的过程,其中生成网络为了欺骗判别网络,会不断提升自己的生成效果,做到以假乱真,令判别网络一直认为生成网络产生的内容是真实的:而判别网络为了不被生成网络欺骗也会不断提升自己的判别效果,做到拥有一双“火眼金睛”一直能识别出生成网络产生的虚假内容。即生成网络为了在判别网络中得到高分,会不断提升自己的性能,而判别网络为了能准确地给生成网络打低分,也会不断提升自己的性能,双方就是在一种对抗的过程中互相提升自己,这就是GAN[参考]。

 以图片生成为例:

①先让生成器产生一些[假]图片和收集到的[真]图片一起交给判别器,让它学习区分两者,给真的高分,给假的低分。

②当判别器能够熟练判断现有数据后,再让生成器以从判别器处获得高分为目标,不断生成更好的[假]图片, 直到能骗过判别器

重复进行这一过程, 直到判别器对任何图片的预测概率都接近0.5,也就是无法分辨图片的真假,就停止训练。

二、GAN反演

GAN的生成网络输入的是随机噪声z,而非真实图片,因此它产生的结果是具有随机性的。假设我们通过训练好的GAN网络得到一张非常逼真的虚假人物图片x',这就是我们想要的效果,但在日后的实验中我们又想对这张x' 图片的脸部进行修改,比如更改头发颜色、修改眉毛细节,那能否继续用GAN网络进行生成呢?

我们需要再找到一个精确的随机噪声z',通过z'来生成我们想要的修改结果。

反演(inversion):对目标图像x,推断出Z空间中的一个z,把z输入给生成器时产生一个与x非常相似的图像。从x推断z的过程称为反演。每个z值映射到单个图像x,单个x值可能存在多个可能的z来表示。

常规的GAN 模型如 PGGAN 和 BigGAN 是从预定义的分布空间Z(如正态分布)中采样噪声向量z,再把采样的值送入生成器,从而映射到图像空间,这个预定义的分布空间Z即为 GAN 的隐空间atent space),而这个采样的噪声向量z,也会被称之为隐码(latent code)。

隐空间是压缩数据的一个表示。隐空间的作用是为了找到模式(pattern)而学习数据特征并且简化数据表示。数据压缩指用比原来表示更少的比特对信息进行编码。比如将一个3维的数据降到2维。

1)为什么要数据压缩?

数据压缩的目的是学习数据中较重要的信息。比如在卷积神经网络中,我们通过CNN提取图片特征再将提取的特征送入解码器进行数据重建,所以模型最关注的问题就是如何储存所有相关信息并且舍弃一些例如噪音等的无关信息。而压缩(降维)的好处在于可以去掉多余的信息从而关注于最关键的特征。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【随想】每日两题Day.22

题目:102. 二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[…

基于 Editor.js 开发富文本编辑器库

开始 Editor.js 提供了简单而直观的用户界面,根据需求可以灵活添加自定义的编辑工具,通过插件扩展功能 Editorjs 使用 js 开发,脱离框架依赖,因此可以基于它封装富文本编辑器,用于 Vue 和 React 项目 editor-js-com…

C语言、c++实现超好玩植物大战僵尸(完整版附源码)

实现这个游戏需要Easy_X main.cpp //开发日志 //1导入素材 //2实现最开始的游戏场景 //3实现游戏顶部的工具栏 //4实现工具栏里面的游戏卡牌 #define WIN_WIDTH 900 #define WIN_HEIGHT 600 //定义植物类型 enum { WAN_DOU, XIANG_RI_KUI, ZHI_WU_COUNT }; #include<stdio.…

linux系统和网络(三):IO,信号,信号量,线程

本文主要探讨linux的IO,信号,信号量,线程相关知识,详细知识可参考本博客其他文章。 信号&#xff08;可参考本博客其他文章&#xff09; 信号是内容受限的异步通信机制,硬件异常后统内核发出信号 alarm产生SIGALARM信号,读端关闭后管道write产生SIGPIPE信号 常见信号…

2024年起重机司机(限门式起重机)证考试题库及起重机司机(限门式起重机)试题解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年起重机司机(限门式起重机)证考试题库及起重机司机(限门式起重机)试题解析是安全生产模拟考试一点通结合&#xff08;安监局&#xff09;特种作业人员操作证考试大纲和&#xff08;质检局&#xff09;特种设备作…

基于模型驱动的可解释性全色、多光谱、高光谱融合网络

摘要 摘要:同时融合高光谱(HS)、多光谱(MS)和全色(PAN)图像为生成高分辨率HS (HRHS)图像提供了一种新的范式。在这项研究中&#xff0c;我们提出了一个可解释的模型驱动的深度网络&#xff0c;用于HS, MS和PAN图像融合&#xff0c;称为HMPNet。我们首先提出了一种新的融合模型…

编译原理--递归下降分析实验C++

一、实验项目要求 1.实验目的 根据某一文法编制调试递归下降分析程序&#xff0c;以便对任意输入的符号串进行分析。本次实验的目的主要是加深对递归下降分析法的理解。 2.实验要求 对下列文法&#xff0c;用递归下降分析法对任意输入的符号串进行分析&#xff1a; &#…

【并发编程篇】定义最大线程的方法

文章目录 &#x1f354;省流&#x1f3f3;️‍&#x1f308;前言&#x1f6f8;CPU密集型&#x1f339;代码实现 &#x1f6f8;IO密集型 &#x1f354;省流 池的最大大小如何去设置 使用CPU密集型和IO密集型这2种方法 &#x1f3f3;️‍&#x1f308;前言 上一篇文章我们讲解…

音视频的编码格式与封装格式

音视频的编码格式与封装格式是两个不同的概念&#xff0c;视频封装格式常见的有&#xff1a;mp4&#xff0c;rmvb&#xff0c;avi&#xff0c;mkv&#xff0c;mov&#xff0c;mpg&#xff0c;vob&#xff0c;3gp&#xff0c;asf&#xff0c;rmvb&#xff0c;wmv&#xff0c;div…

ARM GIC (五)gicv3架构-LPI

在gicv3中,引入了一种新的中断类型。message based interrupts,消息中断。 一、消息中断 外设,不在通过专用中断线,向gic发送中断,而是写gic的寄存器,来发送中断。 这样的一个好处是,可以减少中断线的个数。 为了支持消息中断,gicv3,增加了LPI,来支持消息中断。并且…

分布式事务TCC补偿机制

文章目录 概述工作流程优缺点优点&#xff1a;缺点&#xff1a; 总结Java 示例代码 概述 TCC&#xff08;Try-Confirm-Cancel&#xff09;补偿机制是一种事务处理模式&#xff0c;用于确保分布式系统中的操作成功完成或在失败时进行补偿。TCC将一个事务拆分为三个阶段&#xf…

vue3老项目如何引入vite

vue3老项目如何引入vite 安装 npm install vite vitejs/plugin-vue --save-dev Vite官方中文文档修改package.json文件 在 npm scripts 中使用 vite 执行文件 "scripts": {"serve": "vite","build": "vite build","pr…

Vue 封装echarts柱状图(Bar)组件

目的&#xff1a;减少重复代码&#xff0c;便于维护 显示效果 组件代码 <template><div class"ldw-data-content-box"><div class"ldw-chilren-box"><div class"title" v-if"title">{{ title }}</div>…

python使用opencv提取视频中的每一帧、最后一帧,并存储成图片

提取视频每一帧存储图片 最近在搞视频检测问题&#xff0c;在用到将视频分帧保存为图片时&#xff0c;图片可以保存&#xff0c;但是会出现(-215:Assertion failed) !_img.empty() in function cv::imwrite问题而不能正常运行&#xff0c;在检查代码、检查路径等措施均无果后&…

探索应用程序的指路明灯:Route 和 Router 入门指南(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

GEE学习笔记

掩膜 ​ 在遥感图像处理中&#xff0c;"掩膜"是指一种用于隐藏或保留图像特定部分的技术。掩膜通常是一个二进制图像&#xff0c;其中的像素值为0或1&#xff0c;分别表示遮蔽或保留。 ​ 在去除云的情境中&#xff0c;掩膜通常用于隐藏图像中被云覆盖的部分&#…

【c++】入门1

c关键字 命名空间 在C/C中&#xff0c;变量、函数和后面要学到的类都是大量存在的&#xff0c;这些变量、函数和类的名称将都存在于全局作用域中&#xff0c;可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化&#xff0c;以避免命名冲突或名字污染&#xff…

《工作、消费主义和新穷人》读书笔记

总结 全书前半段描写的是工作伦理论被推行的原因 &#xff0c;后半段探讨了福利国家和资本国家对于穷人的态度&#xff0c;最后描写了全球化下工作伦理从生产型社会过度到消费型社会的概念演变&#xff0c;和大众对于新穷人态度的转变。 启示 对于我的启示在前几章是最多的&…

SpringMVC:整合 SSM 中篇

文章目录 SpringMVC - 04整合 SSM 中篇一、优化二、总结三、说明注意&#xff1a; SpringMVC - 04 整合 SSM 中篇 一、优化 在 spring-dao.xml 中配置 dao 接口扫描&#xff0c;可以动态地实现 dao 接口注入到 Spring 容器中。 优化前&#xff1a;手动创建 SqlSessionTempl…

2022第十二届PostgreSQL中国技术大会-核心PPT资料下载

一、峰会简介 本次大会以“突破•进化•共赢 —— 安全可靠&#xff0c;共建与机遇”为主题&#xff0c;助力中国数据库基础软件可掌控、可研究、可发展、可生产&#xff0c;并推动数据库生态的繁荣与发展。大会为数据库从业者、数据库相关企业、数据库行业及整个IT产业带来崭…