pytorch中的nn.Conv1d()

torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode=‘zeros’, device=None, dtype=None)

  • in_channels是输入特征的维数,在文本识别中也可以理解为输入词向量的特征维数
  • out_channels是输出特征的维数
  • kernel_size为在序列方向上的感受野,而实际卷积核的尺寸为in_channels×kernel_size
  • stride为序列方向上的滑动步长

其余参数可参考2d卷积。
conv1d输入的特征维数为(N,Cin,L),N为batch size, Cin=in_channels为特征维数,L为序列长度。
conv1d输出的特征维数为(N,Cout,Lout),Cout=out_channels为输出特征维数,Lout为输出序列长度由卷积的 kernel_size以及stride等参数决定。

举个栗子:

import torch
import torch.nn as nn

conv = nn.Conv1d(in_channels=128,out_channels=256,kernel_size=2)
print(conv.weight.size())
#torch.Size([256, 128, 2])

x=torch.randn(32,128,101)
print(conv(x).size())
#torch.Size([32, 256, 100])

你可能感兴趣的:(pytorch,深度学习,机器学习)