1.预处理函数(这里有一个问题,transforms.Normalize()函数的使用)

有博主写了 https://blog.csdn.net/xys430381_1/article/details/85724668

2.定义鉴别器

计算方式参考上一张 迁移学习的内容。最后输出向量的类型为256*6*6.

同时每次卷积过后,进行批归一化(这点与传统的方式不一样)+LeaKy ReLU

3.定义生成器(理解为鉴别器的逆过程,反卷积的过程)

4.训练(初始化参数)

def train(d,g,criterion,d_optimizer,g_optimizer,epochs=1,show_every=1000,print_every=10):iter_count = 0for epoch in range(epochs):for inputs,_ in trainloader:real_inputs = inputsfake_inputs = g(torch.randn(5,100))real_labels = torch.ones(real_inputs.size(0))fake_labels = torch.zeros(5)real_outputs = d(real_inputs)d_loss_real = criterion(real_outputs,real_labels)real_scores = real_outputsfake_outputs = d(fake_inputs)d_loss_fake = criterion(fake_outputs,fake_labels)fake_scores = fake_outputsd_loss = d_loss_real+d_loss_faked_optimizer.zero_grad()d_loss.backward()d_optimizer.step()fake_inputs = g(torch.randn(5,100))outputs = d(fake_inputs)real_labels = torch.ones(outputs.size(0))g_loss = criterion(outputs,real_labels)g_optimizer.zero_grad()g_loss.backward()g_optimizer.step()if (iter_count % show_every == 0):print('Epoch:{},Iter: {}, D: {:.4}, G:{:.4}'.format(epoch,iter_count, d_loss.item(), g_loss.item()))picname = "Epoch_"+str(epoch)+"Iter_"+str(iter_count)imshow(torchvision.utils.make_grid(fake_inputs.data),picname)save_param(d,'d_model.pkl')save_param(g,'g_model.pkl')if (iter_count%print_every == 0):print('Epoch:{},Iter: {}, D: {:.4}, G:{:.4}'.format(epoch,iter_count, d_loss.item(), g_loss.item()))iter_count += 1print('Finished Training')

这里就是训练的过程:

最后训练就完事了,结果我没有完全跑出来,时间太长不想跑。

跑了一部分结果出来,大概是这样的效果啦!!

PyTorch(二次元头像--GAN实战)相关推荐

  1. 【Pytorch】Cycle GAN实战(一):风格转换--真实风景图像转换为VanGogh风格

    文章目录 一.Cycle GAN(CGAN)原理 1.1Conditional GAN 1.2Unsupervised Conditional GAN No.1 Direct Transformati ...

  2. GAN二次元头像生成Pytorch实现(附完整代码)

    介绍 本文是李宏毅GAN课程课后作业HW3_1(二次元头像生成,Keras实现)的Pytorch版本.写这篇的原因是一方面刚开始接触GAN,二是个人比较习惯用Pytorch,所以将keras改成Pyt ...

  3. pytorch实现GAN(生成对抗网络)生成二次元头像(附代码)

    目录 GAN基本概念 GAN算法流程 代码实现与讲解 1.准备数据集 代码实现 定义鉴别器 定义生成器 训练 补充 附完整代码 参考链接及书目 GAN基本概念 GAN, 全称Generative Ad ...

  4. 【机器学习PAI实战】—— 玩转人工智能之利用GAN自动生成二次元头像...

    模型训练与在线预测服务.推荐算法四部曲.机器学习PAI实战.更多精彩,尽在 开发者分会场 [机器学习PAI实战]-- 玩转人工智能之综述 [机器学习PAI实战]-- 玩转人工智能之商品价格预测 [机器 ...

  5. 【机器学习PAI实战】—— 玩转人工智能之利用GAN自动生成二次元头像

    前言 深度学习作为人工智能的重要手段,迎来了爆发,在NLP.CV.物联网.无人机等多个领域都发挥了非常重要的作用.最近几年,各种深度学习算法层出不穷, Generative Adverarial Ne ...

  6. DCGAN生成二次元头像(Pytorch)

    任务:基于Pytorch搭建DCGAN网络进行训练自动生成二次元头像的模型 文章目录 简介 网络介绍 代码详解 实验结果 参考 简介 好久没发Blog了,发个Pytorch的入门项目一起happy下~ ...

  7. GAN实战之Pytorch 使用CGAN生成指定MNIST手写数字

    有关条件GAN(cgan)的相关原理,可以参考: GAN系列之CGAN原理简介以及pytorch项目代码实现 其他类型的GAN原理介绍以及应用,可以查看我的GANs专栏 一.数据集介绍,加载数据 依旧 ...

  8. 【菜鸟窝免费视频】如何生成数字、人脸和二次元美少女头像(AI生成二次元头像)

    阿里百度人工智能大神精讲的人工智能视频课程,领取地址:https://www.cniao5.com/course/10239 或欢迎勾搭运营小姐姐(微信 id:BT474849)免费领取63讲精品机器 ...

  9. 基于Python的二次元头像生成器 课程报告+源码

    资源下载地址:https://download.csdn.net/download/sheziqiong/85718980 目录 二次元头像生成器 2 选题背景 2 实验流程 2 算法简介 2 环境搭 ...

最新文章

  1. C++资源之不完全导引(上)
  2. python中的log模块笔记
  3. 面试题 HashMap和HashTable有什么区别
  4. 帆软决策报表嵌入html,在决策报表中使用网页框控件
  5. LNMP一键自动安装脚本
  6. 创建 maven maven-archetype-quickstart 项目抱错问题解决方法
  7. 数据库设计(一、二、三及BCNF范式)
  8. 一、万用表使用方法图解
  9. 永恒之蓝攻击处置方法
  10. 【汇正财经】扬帆起航,医美市场行业规模扩张
  11. nmp i报错git --no-replace-objects ls-remote
  12. 判断 iPad 的浏览器
  13. Android4.2 后解决挂载cifs文件系统后不显示
  14. (c语言)输出一百以内所有质数
  15. 关于EmuELC的ES设置菜单系统语言包修改
  16. 35个常用的EXCEL函数说明——技能提升
  17. word中查看有多少个分隔符
  18. also与apply区别
  19. 《微服务架构设计模式》读书笔记 | 第9章 微服务架构中的测试策略(上)
  20. java获取当天0点_java 获取当前日期的零点

热门文章

  1. Netgen编译出错的解决方案
  2. python通用管理系统_Python实例---CRM管理系统分析180331
  3. 纸壳CMS列表Grid的配置
  4. WIN10插上耳机还是声音外放
  5. nginx的log_format日志格式和字段介绍
  6. docker部署微服务
  7. Arp中间人攻击原理
  8. 优麒麟桌面闪烁_UKUI 桌面环境登陆 Arch Linux!
  9. tcl文件调用c语言,TCL与c/c++的互相调用
  10. 【国际】塞拉利昂重点发展国家区块链计划