【DCGAN】生成对抗网络,手写数字识别

基于paddle,aistudio的DCGAN

主要用于记录自己学习经历。

1   导入必要的包

import os
import random
import paddle
import paddle.nn as nn
import paddle.optimizer as optim
import paddle.vision.datasets as dset
import paddle.vision.transforms as transforms
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

2   定义数据集

demo_dataset = paddle.vision.datasets.MNIST(mode='train')

3   查看数据集

demo_dataset[5][0]

4   查看数据集维度

for data in dataloader:
    break

data[0].shape

5   参数初始化模块

@paddle.no_grad()
def normal_(x, mean=0., std=1.):
    temp_value = paddle.normal(mean, std, shape=x.shape) 
    # 该op返回符合正态分布(均值为mean,标准差为std的正态随机分布)的随机Tensor。
    x.set_value(temp_value)
    return x

@paddle.no_grad()
def uniform_(x, a=-1., b=1.):
    temp_value = paddle.uniform(min=a, max=b, shape=x.shape)
    # 该op返回值服从范围[min,max]内均值分布的随机Tensor,性状为shape,数据类型为dtype
    x.set_value(temp_value)
    return x

@paddle.no_grad()
def constant_(x, value):
    temp_value = paddle.full(x.shape, value, x.dtype)
    # 该op创造形状大小为shape并且数据类型为dtype的Tensor,其中元素值均为fill_value。
    x.set_value(temp_value)
    return x

def weights_init(m):
    classname = m.__class__.__name__
    if hasattr(m, 'weight') and classname.find('Conv') != -1:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值