DCGAN-论文阅读笔记(二)

简介: DCGAN-论文阅读笔记(二)

研究意义


早期的GAN在图像上仅局限MNIST这样的简单数据集中,DCGAN使GAN在图像生成任务上的效果大大提升

DCGAN几乎奠定了GAN的标准架构,之后GAN的研究者们不用再过多关注模型架构和稳定性,可以把更多的精力放在任务本身上,从而促进了GAN在16年的蓬勃发展

开创了GAN在图像编辑上的应用


模型结构



所有的pooling层使用strided卷积(判别器)和fractional-strided卷积(生成器)进行替换

使用Batch Normalization

移除全连接的隐层,让网络可以更深

在生成器上,除了输出层使用Tanh外,其它所有层的激活函数都使用ReLU

判别器所有层的激活函数都使用LeakyReLU


训练细节


训练图像的预处理,只做了到 [-1, 1] 的值域缩放

使用mini-batch随机梯度下降来训练网络, batch size大小为128

采用均值为0 标准差为0.02的正态分布,来对所有权重进行初始化

对于LeakyReLU激活函数,leak的斜率设置为0.2

优化器使用Adam,而不是此前GAN网络用的momentum

Adam的学习速率使用0.0002,而非原论文建议的0.001

Adam的参数momentum term β1,原论文建议的0.9会导致训练震荡和不稳定,将其减少至0.5可以让训练更加稳定


图像生成


LSUN


没有使用 Data Augmentation

在LSUN上训练一个3072-128-3072的自编码器,用它从图像中提取128维特征,再经过ReLU层激活后作为图像的语义hash值

对生成图像和训练集使用上面的编码器,提取128维的语义hash值,进行重复性检测

检测到了大约275000左右数量的重复数据(LSUN数据集大小为300多万)


FACES


从DBpedia上获取人名,并保证他们都是当代人

用这些人名在网络上搜索,收集其中包含人脸的图像,得到了来自1万人的300万张图像

使用OpenCV的人脸检测算法,截取筛选出较高分辨率的人脸,最终得到了大约35万张人脸图像

训练时没有使用 Data Augmentation


无监督表征学习


Unsupervised representation learning


CIFAR-10

在Imagenet-1k上训练DCGAN

使用判别器所有层的卷积特征,分别经过最大池化层,在每一层上得到一个空间尺寸为4*4的特征,再把这些特征做flattened和concatenated,最终得到28672维的向量表示

用一个SVM分类器,基于这些特征向量和类别label进行有监督训练



StreetView House Numbers(SVHN)

使用与CIFAR-10实验相同的处理流程

使用10000个样本来作为验证集,将其用在超参数和模型的选择上

随机选择1000个类别均衡的样本,用来训练正则化线性L2-SVM分类器

使用相同的生成器结构、相同的数据集,从头训练有监督CNN模型,并使用验证集进行超参数搜索

目录
相关文章
|
监控 前端开发
STM32F103标准外设库——RCC时钟(六)
STM32F103标准外设库——RCC时钟(六)
1414 0
STM32F103标准外设库——RCC时钟(六)
|
安全 项目管理
一文搞懂需求流程规范的制定方法和落地技巧
随着业务和产品的发展、团队的不断扩大,很多团队都不可避免的会遇到需求流程混乱的问题。虽然有的团队也编写了一些“需求流程规范”的文档,但最终却流于纸面,难以在团队真正落地。如何科学制定并有效落实需求管理规范呢?对此,云效产品经理陈逊进行了非常详细的直播分享,本文是他经验的文字总结。
103625 19
|
机器学习/深度学习 人工智能 自然语言处理
视觉 注意力机制——通道注意力、空间注意力、自注意力
本文介绍注意力机制的概念和基本原理,并站在计算机视觉CV角度,进一步介绍通道注意力、空间注意力、混合注意力、自注意力等。
12297 58
|
JavaScript 前端开发
VUE基础知识:什么是Vue组件?如何定义一个Vue组件?
VUE基础知识:什么是Vue组件?如何定义一个Vue组件?
189 2
|
11月前
|
机器学习/深度学习 人工智能 计算机视觉
YOLOv11 正式发布!你需要知道什么? 另附:YOLOv8 与YOLOv11 各模型性能比较
YOLOv11是Ultralytics团队推出的最新版本,相比YOLOv10带来了多项改进。主要特点包括:模型架构优化、GPU训练加速、速度提升、参数减少以及更强的适应性和更多任务支持。YOLOv11支持目标检测、图像分割、姿态估计、旋转边界框和图像分类等多种任务,并提供不同尺寸的模型版本,以满足不同应用场景的需求。
YOLOv11 正式发布!你需要知道什么? 另附:YOLOv8 与YOLOv11 各模型性能比较
|
存储 人工智能 关系型数据库
数据库的深度探索:技术演进、应用领域与未来趋势
一、引言 数据库,作为信息技术领域中的关键组件,不仅为数据的存储、检索和管理提供了强有力的支持,而且随着技术的不断发展,其功能和应用领域也在不断扩展
1028 7
|
监控 Docker 容器
docker常用命令
本文汇总了Docker的常用命令,涵盖了镜像、容器、网络、数据卷的管理,以及系统信息查看、镜像构建、登录和注销Docker Hub,还有容器内部文件操作和事件监控,最后介绍了Docker Compose的使用方法。
247 0
|
缓存 编解码 安全
探索Android 12的新特性与优化技巧
【6月更文挑战第7天】本文将深入探讨Android 12带来的创新功能和改进,包括用户界面的更新、隐私保护的加强以及性能的提升。同时,我们还将分享一些实用的优化技巧,帮助用户更好地利用这些新特性,提升手机的使用体验。
|
编解码 Linux 5G
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
AVS3,中国制定的第三代音视频标准,是首个针对8K和5G的视频编码标准,相比AVS2和HEVC性能提升约30%。uavs3d是AVS3的解码器,支持8K/60P实时解码,且在各平台有优秀表现。要为FFmpeg集成AVS3解码器libuavs3d,需从GitHub下载最新源码,解压后配置、编译和安装。之后,重新配置FFmpeg,启用libuavs3d并编译安装,通过`ffmpeg -version`确认成功集成。
420 0
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
|
JSON fastjson Java
Spring Boot Jackson 和Fast JSON 用哪个好啊 ?
【4月更文挑战第22天】
2724 1