快速上手生成对抗生成网络生成手写数字集(直接上代码以及详细注释,亲测可用)

GAN的原理其实很简单,就是生成网络G, 和判别网络D的对抗过程, 生成网络努力使得生成的虚假物品更加真实,而判别网络努力分别出哪些是G生成的,哪些是真实的,在这样一个对抗的过程中两个网络的能力不断得到提升。最终达到一个相对平衡的结果:理想状态下, G学习到真实数据的分布,而D无法分别出真实数据和生成数据, 即D(真) = D(假) = 0.5.
这里插入几张模型生成的图片,从左到右分别是随机生成的图片,100轮之后的图片,2000轮之后的图片,8000轮之后的图片。 代码虽然有100多行,但注释大概占了一般左右。一起交流,一起进步!
未经过训练的结果训练100轮的结果训练2000多轮的结果训练4000多次之后得到的结果

import tensorflow as tf
from matplotlib import gridspec
from tensorflow.examples.tutorials.mnist import input_data
import numpy as np
import os
import cv2
"""
定义各个超参数,包括输入图片的大小, 隐藏层大小, 学习率,batch_size, 迭代次数等
"""
# D 代表判别网络, 定义判别网络的参数
D_input_size = 784
D_H_layer1 = 200
D_output_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值