简介网络:GAN、CGAN和PIX2PIX

简介: 简介网络:GAN、CGAN和PIX2PIX

前言


  这里我将为大家带来生成对抗网络、改进生成对抗网络和PIX2PIX这三种网络的简介。下面可没会有些枯燥。




生成对抗网络


  生成式对抗网络基本结构主要是由生成网络和判别网络构成,二者均可以直接采用深度神经网络来搭建网络层,其基本设计思想是来源于零和博弈,即博弈双方的收益之和应该是一个常数,当其中一方的利益大大增加时,另一方的利益就会随之减少。


生成网络经过训练,产生的输出无法通过一个反向训练的判别网络从“真实”图像中分辨出来。判别网络经过训练,能够尽可能地识别生成的“赝品”。


判别网络对生成网络生成的数据判断为假!(0),对于真实数据判断为真!(1)。


  GAN网络结构如下图所示,其中G代表生成网络,D代表判别网络。生成网络的输入是随机噪声z,为随机分布样本数据,可以符合高斯分布等。


生成网络根据判别网络的判别结果生成符合真实样本分布的假数据G(z)。判别网络对G(z)和真实样本x进行分辨,输出概率值,值小于0.5为假,大于0.5为真。二者相互进行对抗训练,当判别网络无法准确地判断出假数据G(z)和真实数据x,理想输出值为0.5时,二者可以达到纳什均衡,模型训练完成。


image.png


改进GAN网络


  条件生成式对抗网络是在GAN的基础上进行扩展和改进,其网络结构如下图所示。通过引入条件约束来实现有监督的学习方式,解决GAN初始随机数据样本不确定性以及不需预先建模缺点,使模型生成数据具备可控性和目的性。


  生成网络和判别网络都额外增加信息c为条件,c作为输入层新增的一部分,输送给生成网络和判别网络,从而实现CGAN。


c可以是类别信息,也可以是其他的模态数据等信息。通过GAN基本原理和目标函数,以及CGAN对GAN的改进思想,我们可以得到CGAN的目标函数是带有条件概率的二人极小极大值博弈。


image.png


PIX2PIX网络


  PIX2PIX由Phillip Isola等人于2017年提出,其理论基础之一是条件生成对抗网络,主要应用于广义图像翻译领域,用于将输出图像转化为输出图像。优势指出在于其通过建立了一个通用的系统架构来解决锁头的图像翻译问题,pix2pix网络结构如下图所示。

image.png

PIX2PIX的基本结构基于CGAN搭建,它将输入数据X作为限定条件c与随机噪声z的统一,其特点是满足待处理数据与目标数据成一一匹配关系,生成网络对输入数据X进行编码在编码,判别网络根据在X的条件下生成样本G(X)与真实样本Y进行判别。


  由于PIX2PIX主要应用于广义图像翻译领域,生成网络的输入图像和输出生成图像之间其实共享了许多信息。为了保证输入图像和输出图像之间的相似性, 需在CGAN的损失函数上加一个新的L1损失用于重新恢复图像的低频部分,即生成G(X)与真实Y之间的L1距离.

  PIX2PIX在处理图像问题领域具有独特的特点,通常使用大量成对的输入输出图像进行模拟训练,训练完成的生成网络能够通过新的输入对象生成对应的输出图像。


由于PIX2PIX主要处理二维图像数据,而采集的谐波数据通常为一维时序数据,所以在搭建PIX2PIX谐波状态估计模型时,需要将一维时序数据进行二位灰度转换。




相关文章
|
2月前
|
消息中间件 Kubernetes 网络协议
Cilium 系列 -15-7 层网络 CiliumNetworkPolicy 简介
Cilium 系列 -15-7 层网络 CiliumNetworkPolicy 简介
|
3月前
|
消息中间件 NoSQL Linux
workFlow c++异步网络库编译教程与简介
搜狗公司C++服务器引擎,编程范式。支撑搜狗几乎所有后端C++在线服务,包括所有搜索服务,云输入法,在线广告等,每日处理数百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数后端与嵌入式开发需求。 编程范式 结构化并发与任务隐藏回调与内存回收机制
51 0
|
12天前
|
数据采集 网络协议 API
python中其他网络相关的模块和库简介
【4月更文挑战第4天】Python网络编程有多个流行模块和库,如requests提供简洁的HTTP客户端API,支持多种HTTP方法和自动处理复杂功能;Scrapy是高效的网络爬虫框架,适用于数据挖掘和自动化测试;aiohttp基于asyncio的异步HTTP库,用于构建高性能Web应用;Twisted是事件驱动的网络引擎,支持多种协议和异步编程;Flask和Django分别是轻量级和全栈Web框架,方便构建不同规模的Web应用。这些工具使网络编程更简单和高效。
|
1月前
|
缓存 网络协议 网络虚拟化
网络技术基础(15)——DHCP简介与配置
【3月更文挑战第3天】刚加完班又去南京出差了,实在是太忙了。。。。网络基础笔记(加班了几天,中途耽搁了,预计推迟6天),这篇借鉴了之前师兄的笔记。
|
2月前
|
网络协议 物联网 Linux
WireGuard 系列文章(五):Netmaker 简介 - 创建和管理 WireGuard 网络的平台
WireGuard 系列文章(五):Netmaker 简介 - 创建和管理 WireGuard 网络的平台
|
4月前
|
Kubernetes Linux Docker
容器网络简介
容器网络简介
|
4月前
|
网络虚拟化 虚拟化 云计算
云计算——网络虚拟化简介
云计算——网络虚拟化简介
106 0
|
4月前
|
机器学习/深度学习 人工智能 算法
深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)
深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)
167 1
|
5月前
|
Web App开发 移动开发 网络协议
166 python网络编程 - HTTP协议简介
166 python网络编程 - HTTP协议简介
42 0
|
5月前
|
网络协议 Python
140 python网络编程 - socket简介
140 python网络编程 - socket简介
29 0