一维卷积操作,self.con1=nn.Conv1d(1, 64, kernel_size=3, stride=1, padding=1), 输入为(720,1,1),卷积是如何进行的
时间: 2024-04-16 20:29:48 浏览: 62
快来看看卷积操作到底都干了什么
对于一维卷积操作`self.con1=nn.Conv1d(1, 64, kernel_size=3, stride=1, padding=1)`,输入张量的形状为`(batch_size, in_channels, sequence_length)`,即`(720, 1, 1)`。
首先,我们需要了解一维卷积的原理。在一维卷积中,卷积核是一个一维的滑动窗口,它在输入张量上进行滑动,并与输入张量的对应部分进行逐元素乘法,并将结果相加得到输出张量的对应位置。
根据您提供的参数,`kernel_size=3`表示卷积核的大小为3,`stride=1`表示卷积核在输入上的滑动步长为1,`padding=1`表示在输入两端填充1个元素。
对于输入张量`(720, 1, 1)`,卷积核的大小为`(1, 3)`(其中1表示输入通道数,3表示卷积核的长度),输出通道数为64。
在进行一维卷积时,卷积核会滑动到输入张量上的每个位置,并与该位置及其相邻位置的元素进行逐元素乘法,并将结果相加得到输出张量的对应位置的值。由于填充的存在,输入张量在两端各填充了1个元素,使得输出张量的长度与输入相同。
因此,经过一维卷积操作后,输出张量的形状将为`(720, 64, 1)`,其中720表示输入张量的批量大小,64表示输出通道数,1表示输出序列的长度。
阅读全文