前言
在深度学习中,卷积神经网络(Convolutional Neural Networks, CNNs)是一种非常强大的模型,广泛应用于图像识别、自然语言处理、视频分析等领域。PyTorch 提供了 nn.Conv1d、nn.Conv2d 和 nn.Conv3d 三个类,分别用于处理一维、二维和三维数据的卷积操作。本文将详细介绍这三个类的函数原型、原理、作用以及示例。
函数原型
nn.Conv1d
torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode='zeros')
参数说明:
in_channels: 输入信号的通道数。
out_channels: 卷积产生的通道数。
kernel_size: 卷积核的大小。
stride: 卷积步长。
padding: 输入的每一条边补充0的层数。
dilation: 卷积核元素之间的间距。
groups: 从输入通道到输出通道的阻塞连接数。
bias: 是否添加偏置。
padding_mode: 填充模式,默认为'zeros'。
nn.Conv2d
torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode