函数的用法如下:
torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)
接下来看函数里面各个参数的含义:
in_channels(int):输入图像的通道数
out_channels(int):卷积以后输出的通道数
kernel_size(int or tuple):卷积核的尺寸,可以设置成为一个int型整数或者是一个(int,int)型的元组。3指3*3大小的卷积核,(2,3)指2*3大小的卷积核
stride(int or tuple,optional):卷积步长,默认为1.可以设置为一个int型数或者是一个(int,int)型的元组
padding(int or tuple,optional):填充操作,控制padding_mode的数目
padding_mode(string,optional):padding模式,默认是zero-padding
dilation(int or touple,optional):扩张操作,控制kernel点(卷积核点)的间距,默认值为1
groups(int,optional):控制分组卷积,默认不分组,为一组
bias(bool,optional):为真,则可以再输出中添加一个可以学习的偏差。默认True
代码实战:
import torch
x = torch.randn(3,1,5,4)
print(x)
conv = torch.nn.Conv2d(1,4,3)
res = conv(x)
print(res)
print(res.shape) # torch.Size([3, 4, 3, 2])
输入:x[batch_size,channels,height_1,width_1]
batch_size:一个batch中样本个数3
channels:通道数,也就是当前层的深度1
height_1:图片高度5
width_1:图片的宽度4
卷积操作:Conv2d(channels,output,height_2,width_2)
channels:通道数,和上面的输入保持一致,也就是当前层的深度1
output:输出的深度4(需要4个filter)
height_2:卷积核的高3
width_2:卷积核的宽3
输出res[batch_size,output,height_3,width_3]
batch_size:一个batch中样例的个数,和上面一样为3
output:输出的深度4
height_3:输出的高度3
width_3:输出的宽度2
同时记录一下什么叫做batch和batch-size
深度学习训练过程中本身就是求损失函数的最小值。这一个过程一般通过梯度下降来实现。如果训练一个epoch,便利所有的训练集,计算一次loss,反向传播一次,梯度也下降一次。如果把训练集切割成小一些的训练集,每次遍历完一个小的训练集,就计算一次loss,反向传播一次,梯度下降一次,那么在一个epoch中就可以实现多次的梯度下降,从而能够加快训练的收敛速度。这个小的训练集就是一个batch,每一个batch的大小就是batch-size
参考地址:
https://blog.csdn.net/qq_34243930/article/details/107231539?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165473095616782184616674%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=165473095616782184616674&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-107231539-null-null.142^v11^pc_search_result_control_group,157^v13^control&utm_term=nn.conv2d%E5%8F%82%E6%95%B0&spm=1018.2226.3001.4187https://blog.csdn.net/qq_34243930/article/details/107231539?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165473095616782184616674%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=165473095616782184616674&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-107231539-null-null.142^v11^pc_search_result_control_group,157^v13^control&utm_term=nn.conv2d%E5%8F%82%E6%95%B0&spm=1018.2226.3001.4187
https://blog.csdn.net/Graceying/article/details/120425021?ops_request_misc=&request_id=&biz_id=102&utm_term=batch%E5%92%8Cbatch%E2%80%94%E2%80%94size&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-120425021.142^v11^pc_search_result_control_group,157^v13^control&spm=1018.2226.3001.4187https://blog.csdn.net/Graceying/article/details/120425021?ops_request_misc=&request_id=&biz_id=102&utm_term=batch%E5%92%8Cbatch%E2%80%94%E2%80%94size&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-120425021.142^v11^pc_search_result_control_group,157^v13^control&spm=1018.2226.3001.4187