手写数字生成代码学习(paddle学习)

1. DCGAN实践代码位置: DCGAN数字生成

2. 术语学习

1.kernel

kernel是一个矩阵,可在图像上滑动并与输入相乘	

2.Filter

filter是多个kernel的串联,每个kernel分配给输入的特定通道。
filter总是比kernel大一维。例如,在2D卷积中,filter是3D矩阵、
一个卷积层一般中包含多个Filter

3.卷积

就是一次矩阵滑动的过程,有一维,二维,单通道二维,多通道二维,三维等等。

4.转置卷积

反卷,增大尺寸。

5.卷积核

进行卷积的时候需要权值加权平均,这个权值由一个函数给出,即卷积核。

6.CNN步长

矩阵滑动一次的长度。

7.填充

矩阵滑动的过程中会越界,填充啥数。

8.损失函数

损失函数代表预测值和真实值的不一致程度。损失函数越小,鲁邦性越好。

3.代码分析

1.nn.Conv2d

1、nn.Conv2d(in_channels,out_channels,kernel_size,stride=1,padding=0,dilation=1,groups=1,bias=True)

in_channels:输入维度
out_channels:输出维度
kernel_size:卷积核大小
stride:步长大小
padding:补0
dilation:kernel间距
groups(int, optional) : 从输入通道到输出通道的阻塞连接数
————————————————
版权声明:本文为CSDN博主「张泽远-」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45798280/article/details/110226826

2. nn.ConvTranspose2d

2、nn.ConvTranspose2d的功能是进行反卷积操作

nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride=1, padding=0, output_padding=0, groups=1, bias=True, dilation=1)

padding(int or tuple, optional) - 输入的每一条边补充0的层数,高宽都增加2*padding

output_padding(int or tuple, optional) - 输出边补充0的层数,高宽都增加padding

输出尺寸计算:
output = (input-1)stride+outputpadding -2padding+kernelsize
————————————————
版权声明:本文为CSDN博主「张泽远-」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45798280/article/details/110226826

3.nn.relu(inplace)

线性整流函数,大于0的不变,小于0的为0。
参数inplace=True:inplace为True,将会改变输入的数据,
否则不会改变原输入,只会产生新的输出
也就是传参还是传指针的区别。

4. nn.BatchNorm2D()

在卷积神经网络的卷积层之后总会添加BatchNorm2d进行数据的归一化处理,这使得数据在进行Relu之前不会因为数据过大而导致网络性能的不稳定,BatchNorm2d()函数数学原理如下:                                                   
BatchNorm2d()内部的参数如下:

1.num_features:一般输入参数为batch_size*num_features*height*width,即为其中特征的数量

2.eps:分母中添加的一个值,目的是为了计算的稳定性,默认为:1e-5

3.momentum:一个用于运行过程中均值和方差的一个估计参数(我的理解是一个稳定系数,类似于SGD中的momentum的系数)

4.affine:当设为true时,会给定可以学习的系数矩阵gamma和beta
————————————————
版权声明:本文为CSDN博主「颜丑文良777」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bigFatCat_Tom/article/details/91619977

5. nn.Sequential()

一个有序的容器,神经网络会在里面按照顺序运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值