![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
GAN
文章平均质量分 72
无微の大白
新手刚开始,请多体谅
展开
-
自编码网络——能够自学习样本特征的网络
深度学习领域主要有两种训练模式:监督学习:不仅有样本,还有对应的标签非监督学习:即只有样本没有标签此外还有半监督学习,也属于非监督学习非监督模型的网络——自编码网络一、自编码网络介绍及应用自编码网络时非监督学习领域中的一种,可以自动从无标注的数据中学习特征,是一种重构输入信号为目标的神经网路,它可以给出比原始数据更好的特征描述,具有较强的特征学习能力,在深度学习中常用自编码网络生成的特征来取代原始数据,以得到更好的结果。二、最简单的自编码网络自编码(Auto-Encoder,AE)网络是原创 2022-05-06 06:08:53 · 1549 阅读 · 0 评论 -
对抗神经网络(GAN)
对抗神经网络其实时两个网络的组合,可以理解为一个网络生成模拟数据,另一个网络判断生成的数据是真实的还是模拟的。生成模拟数据的网络要不断优化自己让判别的网络判断不出来,判别的网络也要优化自己让自己判断得更加准确。一、GAN的理论知识GAN有generator和discriminator两部分构成generator:主要是从训练数据中产生相同分布的samples,对于输入x,类别标签y,在生成式模型中估计器联合概率分布。discriminator:判断输入是真实数据还是generator生成的数据,即原创 2022-05-20 18:13:22 · 9762 阅读 · 0 评论 -
SRGAN——使用与超分辨率重建的GAN
SRGAN数据GAN理论在超分辨率重建(SR)方面的应用。一、超分辨率技术1.SR技术介绍 SR技术,是指从观测到的低分辨率图像重建出相对应的高分辨率图像,在监控设备、卫星图像和医学影像等领域都有重要的应用价值,也可以应用于马赛克图片的恢复应用场景。 SR可分为两类:从多张低分辨率图像重建出高分辨率图像;从单张低分辨率图像重建出高分辨率图像。基于深度学习的SR,主要是基于单张低分辨率的重建方法,即Single Image Super-Resolution(SISR)。 SISR是一个逆问原创 2022-05-20 17:59:09 · 6007 阅读 · 0 评论 -
GAN-cls:具有匹配感知的判别器
GAN-cls是一种GAN网络增强技术——具有匹配感知的判别器。在InforGAN中,使用了ACGAN的方式进行指导模拟数据与生成数据的对应关系。在GAN-cls中该效果会以更简单的方式来实现,即增强判别器的功能,令其不仅能判断图片的真伪,还能判断匹配真伪。一、GAN-cls的具体实现 GAN-cls具体做法是,在原有GAN网络上,将判别器的输入变为图片与对应标签的连接数据。这样判别器的输入特征中就会有生成图像的特征与对应标签的特征。然后用这样的判别器分别对真实标签与真实图片、假标签与真实图片、真原创 2022-05-17 07:41:38 · 1034 阅读 · 0 评论 -
LSGAN(最小乘二GAN):具有WGAN同样效果的GAN
前面已经介绍GAN是以对抗的形式逼近概率分布。但直接使用该方法,对随着判别器越来越好而生成器无法与其对抗,进行形成梯度消失的问题。WGAN和LSGAN都是试图使用不同的距离度量,从而构建一个不仅稳定,同时还能快速收敛的生成对抗网络。1. LSGAN介绍 WGAN使用的是Wasserstein理论来构建度量距离。而LSGAN使用另一种方法,使用更加平滑和非饱和梯度的损失函数——最小乘二来代替原来的Sigmod交叉熵。这是由于L2正则独有的特性,在数据偏离目标时会有一个与其偏离距离成比例的惩罚,再将其原创 2022-05-15 16:40:11 · 1707 阅读 · 0 评论 -
WGAN-GP:更容易训练的GAN
WGAN-GP又称为具有梯度惩罚的WGAN,一般可以替代WGAN1.WGAN:基于推土机距离原理的GAN(1)原始GAN的问题及原因 实际训练中,GAN存在训练困难、生成器和判别器的loss无法指示训练过程、生成样本缺乏多样性等问题。这与GAN的机制有关。 GAN最终达到对抗的纳什均衡只是一个理想状态,而实际情况中得到的结果都是中间状态。大部分情况是,随着训练的次数越多判别器D的效果越好,一直可以将生成器G的输出和真实样本区分开。 这是因为生成器G是从低维向高位空间映射,其生成的样本分布原创 2022-05-15 14:21:44 · 12223 阅读 · 0 评论 -
实例99:使用AEGAN对MNIST数据集压缩特征及重建
本实例在MNIST数据集上使用AEGAN模型进行特征压缩及重建,并且加入标签信息loss实现AC-GAN网络。其中D和G都是通过卷积网络实现。实例描述 使用InfoGAN网络,在其基础上添加自编码网络,将InfoGAN的参数固定,训练反向生成器(自编码网络中的编码器),并将生成的模型用于MNIST数据集样本重建,得到相似的样本。1.添加反向生成器 添加反向生成器inversegenerator函数。该函数的功能是将图片生成特征吗,其结构与判别器相似,均为生成器的反向操作,即两个卷积层加上两个原创 2022-05-14 15:00:46 · 781 阅读 · 0 评论 -
实例88:构建InfoGAN生成MNIST模拟数据
在MNIST数据集上使用InfoGAN网络模型生活才能模拟数据,并且加入标签的loss函数同时实现AC-GAN网络。其中D和G都是卷积函数来生成,相当于在DCGAN基础上的InfoGAN例子。实例描述通过使用InfoGAN网络学习MNIST数据特征,生成以假乱真的MNIST的模拟样本,并发现内部潜在的特征信息。1.引入头文件并加载MNIST数据import numpy as npimport tensorflow as tfimport matplotlib.pyplot as pltfrom原创 2022-05-14 10:09:10 · 524 阅读 · 0 评论 -
实例83:使用标签指导变分自编码网络生成MNIST数据
在编码阶段需要在输入端添加标签对应的特征,在解码阶段同样也需要将标签加入输入,这样,再解码的结果向原始的输入样本不断逼近,最终得到的模型将会把输入的标签特征当成MNIST数据的一部分,从而实现通过标签生成MNIST数据。在输入端添加标签时,一般是通过一个全连接层的变换将得到的结果使用contact函数连接到原始输入的地方,在解码阶段也将标签作为样本数据,与高斯分布的随机值一并运算,生成模拟样本。实例描述使用条件变分自编码模型,通过指定标签输入生成对应类型的MNIST模拟数据1.添加标签占位符x =原创 2022-05-06 04:09:33 · 272 阅读 · 0 评论 -
实例82:使用变分自编码模拟生成MNIST数据
实例描述使用变分自编码模型进行模拟MNIST数据的生成1.引入库,定义占位符编码器为两个全连接层:第一个全连接成有784个维度的输入变化为256个维度的输出;第二个全连接层并列连接了两个输出网络(mean与lg_var),每个网络都输出了两个维度的输出。然后将两个输出通过一个公式的计算,输入到以一个2节点为开始的解码部分,接着后面为两个全连接层的解码器。第一层由两维度的输入到256维度的输出,第二层由256个维度的输入到784个维度的输出。import numpy as npimport tens原创 2022-05-05 07:28:04 · 862 阅读 · 0 评论 -
实例81:添加模型存储支持分布训练
栈式自编码的另一个优点就是可以将神经网络模块化,便于分工。在实际过程中,为了得到更好的模型,需要将上述的每个环节分别单独训练。不同小组之间的对接通过模型文件来完成,需要将每个环节中的参数保存下来,在自己的步骤开始之前将上个步骤的环境加载进去。实例描述对自编码模型进行分布式模型存储与载入,使每一层都可以单个环节逐一训练。#定义保存模型的位置savedir = "/log/"saver = tf.train.Saver(tf.train.global_varibales(), max_to_keep原创 2022-05-04 06:41:16 · 100 阅读 · 0 评论 -
实例80:实现去噪自编码
首先建立一个去噪声自编码,然后对第一层的输出做一次简单的自编码压缩,然后再将第二层的输出做一个softmax的分类,最后,把这3个网络的中间层拿出来,组成一个新的网络进行微调。1. 引入头文件,创建网络模型及定义学习参数变量实例描述对MNIST集中的原始输入图片加入噪声,在自编码网络中进行训练,得到抗干扰更强的特征提取模型。import numpy as npimport tensorflow as tfimport matplotlib.pyplot as pltfrom tensorflo原创 2022-05-04 06:33:22 · 657 阅读 · 0 评论 -
实例79:使用去噪自编码网络提取MNIST特征
本例为一个简单的自编码模型,让784维只通过一层256维。将原始的数据进行一些变换,每个像素点都乘以一个高斯噪声,然后再输出的位置仍然使用原始的输入样本,这样迫使网络在提取特征的同时将噪声去掉。为了防止其过拟合,还需要加入Dropout层。实例描述对MNIST集原始输入图片加入噪声,在自编码网络中进行训练,以得到抗干扰更强的特征提取模型。1.引入头文件,创建网络模型及定义学习参数变量import numpy as npimport tensorflow as tfimport matplotl原创 2022-05-03 04:01:22 · 610 阅读 · 0 评论 -
实例77:提取图片的二维特征,并利用二维特征还原图
将MNIST图片压缩成二维数据,这样也可以在直角坐标系上将其显示出来,让读者更加形象的了解自编码网络在特征提取方面的功能实例描述在自编码网络中使用线性解码器对MNIST数据特征进行再压缩,并将其映射到直角坐标系上。这里使用4层逐渐压缩784维度分别压缩成256、64、16、2这4个特征向量。如果想要得到更好的特征提取效果,可以将压缩的层数变得更多,但由于Sigmod函数“天生”缺陷,无法使用更深的层,可以使用栈式自编码器解决。1.引入头文件,定义参数变量建立4层网络,为每一层分配节点个数。原创 2022-05-02 18:48:20 · 1235 阅读 · 0 评论 -
实例76:提取图片的特征,并利用特征还原图片
通过构建一个两层降维的自编码网络,将MNIST数据集的数据特征提取出来,并通过这些特征再重建一个MNIST数据集1.引入头文件,并加载MNIST数据import tensorflow as tfimport numpy as npimport matplotlib.pyplot as plt #导入MINST数据集from tensorflow.examples.tutorials.mnist import input_dataminst = input_data.read_data_set原创 2022-05-01 19:18:20 · 1455 阅读 · 1 评论