带你读AI论文丨ACGAN-动漫头像生成

摘要:ACGAN-动漫头像生成是一个十分优秀的开源项目。

本文分享自华为云社区《【云驻共创】AI论文精读会:ACGAN-动漫头像生成》,作者:SpiderMan。

1.论文及算法介绍

1.1基本信息

• 论文题目:《Conditional Image Synthesis With Auxiliary Classifier GANs》

• 出处:ICML 2017

• 作者:Augustus Odena、Christopher Olah、Jonathon Shlens

1.2研究背景

GAN(Generative Adversarial Network)是由两个彼此对立训练的神经网络组成。生成器G以随机噪声向量z作为输入然后输出-张图像G(z),判别器D接收训练图像或者是来自生成器的合成图像作为输入,输出在可能数据源上的条件概率分布D(x),他需要分别出真实的数据来源或者是生成的数据来源。

使用标签的数据集应用于生成对抗网络可以增强现有的生成模型,并形成两种优化思路。

• cGAN使用了辅助的标签信息来增强原始GAN,对生成器和判别器都使用标签数据进行训练,从而实现模型具备产生特定条件数据的能力。

• SGAN的结构利用辅助标签信息(少量标签),利用判别器或者分类器的末端重建标签信息。

ACGAN则是结合以上两种思路对GAN进行优化。

1.3算法介绍

1.3.1 ACGAN模型结构

1.3.2损失函数

• Ls是面向数据真实与否的代价函数。

• Lc则是数据分类准确性的代价函数。

在优化过程中希望判别器D能否使得Ls+Lc尽可能最大,而生成器G使得Lc-Ls尽可能最大。

简而言之是希望判别器能够尽可能区分真实数据和生成数据并且能有效对数据进行分类,对生成器来说希望生成数据被尽可能认为是真实数据且数据都能够被有效分类。

1.3.3高分辨率

如何评价一个生成模型生成图片的分辨率,最简单的方法无非就是直观用眼睛来看,但这样显然无法量化一个图片的好坏,于是作者提出使用一个分类器,若生成的图片具有较高的分类正确率,就有理由认为生成的图片质量比较高,也即该图片具有较高的可分辨性,如上所述,生成高分辨率的图片,需要不是简单的将低分辨率的图片进行线性插值来生成,因而要量化的分析生成的图片的质量,可以从其分辨力。

从低分辨率通过插值生成的高分辨率图片,其本质上没有增加多余信息,只是低分辨率的模糊版。结合这样的思路,高分辨率的图片提供了更多的信息,这些信息结合到AC-GAN结构,每个生成图片都有其对应的标签,因而这个更多的信息,可以通过分类来表明,也就是说更多的信息,可以用于分类,也就是文中所说的分辨力。

因此,ACGAN提出Inception Accuracy,这种新的用于评判图像合成模型的标准,查看其被分类为正确类别的比率,以此来判定生成的图片质量。图中,最上面给出了真实图片和基于ACGAN生成图片,可以明显感觉图片高分辨率对应高可分辨性。

1.3.4图像多样性

GAN有个最常见的问题就是模式坍塌的问题,就是模型找到一种方式,无论输入的内容是什么,生成的图片都只有一种,然而这种图片能大概率欺骗过分辨器。因而,产生的图片具有多样性,也是可以评估GAN模型好坏的指标。

文中采用了图片的多尺度结构相似度来衡量图片与图片之间的相似度(multi-scale structural similarity,MS-SSIM),这个相似度在0和1之间取值,越大说明图片之间越相似;提及MS-SSIM的时候,往往也要提及SSIM,来看看它们具体是怎么计算的。

1.3.5 ACGAN分析

ACGAN分析是否通过记忆样本合成图像。

1.3.6 ModelArts介绍

ModelArts 是面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及交互式智能标注、大规模分布式训练、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。下图就是ModelArts的能力图:

2.代码移植ModelArts

2.1 ModelArts简介

ModelArts是面向AI开发者的一站式开发平台,提供海量数据预处理及半自动化标注、大规模分布式训练、自动化模型生成及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。

“一站式”是指AI开发的各个环节,包括数据处理、模型训练、模型部署都可以在ModelArts上完成。从技术上看,ModelArts底层支持各种异构计算资源,开发者可以根据需要灵活选择使用,而不需要关心底层的技术。同时,ModelArts支持Tensorflow、PyTorch、MindSpore等主流开源的AI开发框架,也支持开发者使用自研的算法框架,匹配用户的使用习惯。

ModelArts的理念就是让AI开发变得更简单、更方便。面向不同经验的AI开发者,提供便捷易用的使用流程。例如:

  • 面向业务开发者,不需关注模型或编码,可使用自动学习流程快速构建AI应用;
  • 面向AI初学者,不需关注模型开发,使用预置算法构建AI应用;
  • 面向AI工程师,提供多种开发环境,多种操作流程和模式,方便开发者编码扩展,快速构建模型及应用。

2.1.1 ModelArts特点

• 自动学习;

• 数据管理;

• 开发环境;

• 算法、训练、模型、部署。

2.1.2 Notebook开发环境

2.2 ACGAN-动漫头像生成

使用的数据集64*64的动漫头像,共36740张。

数据可以存放在对象存储服务(Object Storage Service, OBS)。

2.3 代码讲解

2.3.1输入

2.3.2判别器

2.3.3生成器

2.3.4 PixelShuffle

主要实现了这样的功能:N*(C* r* r)*W*H——>>N*C*(H*r)*(W*r)。

2.3.5损失函数

2.3.6优化器

2.3.7训练

2.3.8模型预测

2.4查看效果

2.5后期优化方向

2.6参考网址/体验网址

参考网址:

https://blog.csdn.net/forlogen/article/details/93852960

https://blog.csdn.net/qq_24477135/article/details/85758496

https://www.cnblogs.com/punkcure/p/7873566.html

https://www.zjusct.io/2019/06/16/Animation%20Avatar%20Generation/

https://blog.csdn.net/u014636245/article/details/98071626

体验网址:

GitHub网址: https://github.com/makegirlsmoe/makegirlsmoe_web

在线体验: https://make.girls.moe/#/

3.总结

ACGAN-动漫头像生成是一个十分优秀的开源项目,针对已有的动漫人物头像生成方法中生成结果的多样性较差,且难以准确地按照用户想法按类生成或按局部细节生成的问题,基于含辅助分类器的对抗生成网络(ACGAN),结合互信息理论、多尺度判别等方法,最终用于动漫人物头像的生成。

此项目在生成图像的过程中使得生成的图像更接近于样本集,这样在显得更真实的同时又不发生模式崩塌;但是如何人为定义连续标签以控制细节,而不是通过模型自学习产生仍是值得继续研究的问题。

点击关注,第一时间了解华为云新鲜技术~

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

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

相关文章

Docker镜像更新通知器DIUN

什么是 DIUN ? Docker Image Update Notifier 是一个用 Go 编写的 CLI 应用程序,可作为单个可执行文件和 Docker 映像交付,用于当 Docker 映像在 Docker registry中更新时接收通知。 和老苏之前介绍过的 watchtower 不同,DIUN 只是通知&…

idea连接Linux服务器

一、 介绍 配置idea的ssh会话和sftp可以实现对linux远程服务器的访问和文件上传下载,是替代Xshell的理想方式。这样我们就能在idea里面编写文件并轻松的将文件上传到linux服务器中。而且还能远程编辑linux服务器上的文件。掌握并熟练使用,能够大大提高我…

聊聊企业无线网络安全

新钛云服已累计为您分享749篇技术干货 不知不觉无线网络已经成为了办公网主流。最早接触无线网络的时候是2001年,那时候笔记本电脑还比较少见,标配也不支持无线网络,要使用无线网络需要另外加一块PCMIA接口的无线网卡。第一次体验无线网络的时…

千牛中文件已存在于服务器上,千牛登陆在云服务器上

千牛登陆在云服务器上 内容精选 换一换 如果Windows操作系统云服务器未安装密码重置插件,可以参见本节内容重新设置密码。本节操作介绍的方法仅适用于修改Windows本地账户密码,不能修改域账户密码。Linux操作系统请参见重置Linux云服务器密码(未安装重置…

mac安装旺旺启动台找不到_如何正确安装和卸载Mac软件?

Windows和Mac是两个截然不同的系统,很多操作逻辑都有本质上的区别,管家针对刚接触Mac系统的朋友做了一份简单的“Mac软件的安装和卸载”教程,希望对大家有所帮助。 1 如何安装软件? Mac系统安装软件的方法有两种,一种是…

获取千牛聊天记录(此方法新版千牛已失效,7.1之前的版本应该有效,各位自行测试咯)...

分析UI: 分析千牛UI控件,我们用Visual Studio自带的SPY++查找窗口,得到聊天记录的控件信息发现 窗口类名:Aef_RenderWidgetHostHWND ,上网搜了一下说是Chrominum 的窗口。确定一下我们直接选中千牛的聊天窗口按F12,发现会弹出Chrome的开发者工具。到此我们确定了千牛的聊天窗…

千牛2015卖家版官方电脑版

千牛2015卖家版 v2.08 官方电脑版 软件大小:54.9MB 软件语言:简体中文 软件类别:管理工具 软件授权:免费版 更新时间:2015-01-06 应用平台:/Win8/Win7/WinXP 千牛2015卖家版是阿里巴巴专为淘宝、天猫卖家量…

千牛文件在服务器上,千牛挂在云服务器

千牛挂在云服务器 内容精选 换一换 云耀云服务器(Halo Elastic Cloud Server,HECS)是可以快速搭建简单应用的新一代云服务器,具备独立、完整的操作系统和网络功能。提供快速地应用部署和简易的管理能力,适用于网站搭建、开发环境等低负载应用…

pc端网页唤起本地的咚咚和千牛

前段时间接手了一个需求,需求大概就是pc端的产品需要做一个点击按钮唤起咚咚和千牛,并且需要打开对应的顾客聊天窗口。 当时接到这个需求人都不好了,大牛们都没接触过这个需求,不知道咚咚和千牛的协议,去看淘宝和京东开发平台的文档也没发现什么有用的,然后就一直考古呀…

七牛云工具类

首先我们需要创建一个oss.properties文件存储七牛云的必须属性,可在七牛云官网查看 #qiniu.bucket xxx #qiniu.access_key xxx #qiniu.secret_key xxx #qiniu.base_url xxx七牛工具类QiniuOssUtils import com.google.gson.Gson; import com.qiniu.common.QiniuExce…

1688获得店铺的所有商品教程

onebound.1688.item_search_shop 获取key和secret API文档说明 完整返回数据 { "user": { "id": null, "nick": null, "good_num": "", "level": "", …

无限重启-千牛app

一. 问题描述 1.1 问题JIRA XXX 1.2 现象 手机无限重启,清数据后能开机,恢复数据的时候还是会无限重启. 1.3 结论 1.无限重启的原因: 由于每次开机AccessibilityManagerService都会去解析每个有辅助功能…

千牛服务器网站,千牛平台远程服务器

千牛平台远程服务器 内容精选 换一换 云堡垒机与RADIUS服务器对接,认证登录系统的用户身份。本小节主要介绍如何配置RADIUS域认证模式,并可对配置的RADIUS认证进行用户有效性测试。用户已获取系统模块管理权限。已获取RADIUS服务器相关信息。若需修改认证…

「从零入门推荐系统」19:HM推荐系统代码实战案例

作者 | gongyouliu 编辑 | gongyouliu 我们在上一章中利用Netflix prize数据集讲解了最基础、最简单的一些推荐系统召回、排序算法,大家应该对怎么基于Python实现推荐算法有了一些基本的了解了。接着上一章的思路,本章我们会基于一个更复杂、更近代一点的…

python clicknium 库自动化千牛桌面端

python clicknium 库自动化千牛桌面端 千牛是阿里巴巴集团卖家工作台,商家经营的必备工具,今天我们使用python来自动化千牛桌面端。 clicknium 是基于 python 实现的一套 免费的UI 自动化的库,功能强大、简单易用,可以用来操作桌…

登陆千牛时显示服务器失败,千牛登陆云服务器

千牛登陆云服务器 内容精选 换一换 本节操作介绍Linux操作系统云服务器在单用户模式下重置密码的操作步骤。本文档适用于X86架构的弹性云服务器。进入单用户模式下重置root密码前请先做好数据备份。请根据操作系统类型选择操作步骤:CentOS 8系列CentOS 7/EulerOS 系…

这些在 App Store 中找不到的 Mac 常用软件

由于 App Store 对软件的限制比较严格,加上对付费软件还会收取较高的抽成。所以很多软件都没有在 App Store 上架,它们有自己的官网,比如迅雷、搜狗输入法、谷歌浏览器、千牛、百度网盘等。 本文分享的常用软件已在下表列举,这些…

软考高级架构师笔记-5计算机网络

目录 1. 前言 & 考情分析2. 网络功能和分类2.1 通信技术3. OSI七层模型及协议3. 1 局域网和广域网协议3. 2 协议3. 3 交换技术、路由、传输介质4 IP地址5 网络存储技术6 其它考点8. 结语1. 前言 & 考情分析 前文回顾: 软考高级架构师笔记-1计算机硬件软考高级架构师笔…

OpenCV实战(25)——3D场景重建

OpenCV实战(25)——3D场景重建 0. 前言1. 重建 3D 场景1.1 3D 场景点重建1.2 算法原理 2. 分解单应性3. 光束平差法4. 完整代码小结系列链接 0. 前言 在《相机姿态估计》一节中,我们学习了如何在校准相机时恢复观察 3D 场景的相机的位置。算…

用 GPT-4 来面试,简直开挂啊!

公众号关注 “GitHubDaily” 设为 “星标”,每天带你逛 GitHub! 众所周知,ChatGPT 凭其超强的文本生成能力,成为了 2023 年最为火爆的 AI 应用之一。 几个月前,GPT-4 发布,又将 ChatGPT 的能力提升到了一个…