pytorch中nn.Conv1d的用法详解

yipeiwu_com7年前Python基础

先粘贴一段official guide:nn.conv1d官方

我一开始被in_channels、out_channels卡住了很久,结果发现就和conv2d是一毛一样的。话不多说,先粘代码(菜鸡的自我修养)

class CNN1d(nn.Module):

  def __init__(self):
    super(CNN1d,self).__init__()
    self.layer1 = nn.Sequential(
          nn.Conv1d(1,100,2),
          nn.BatchNorm1d(100),
          nn.ReLU(),
          nn.MaxPool1d(8))
    self.layer2 = nn.Sequential(
          nn.Conv1d(100,50,2),
          nn.BatchNorm1d(50),
          nn.ReLU(),
          nn.MaxPool1d(8))
    self.fc = nn.Linear(300,6)
  def forward(self,x):
    #input.shape:(16,1,425)
    out = self.layer1(x)
    out = out.view(out.size(0),-1)
    out = self.fc(out)
    return out

输入的数据格式是(batch_size,word_vector,sequence_length),我设置的batch=16,特征工程样本是1x425,套用该格式就应该是(16,1,425)。对应nn.Conv1d的in_channels=1,out_channels就是你自己设置的,我选择的是100。

因为我做的是分类场景,所以做完两次一维卷积后还要加上一个线性层。

以上这篇pytorch中nn.Conv1d的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python程序打包工具py2exe和PyInstaller详解

Python程序打包工具py2exe和PyInstaller详解

前言 通常执行 python 程序要有相应的 Python 环境,但某些特定场景下,我们可能并不愿意这么麻烦的去配置这些环境(比如将写好的脚本发给客户进行操作),如果可以提前将程序打包成...

python在OpenCV里实现投影变换效果

python在OpenCV里实现投影变换效果

前面学习了仿射变换,是经常使用到的变换,也很容易理解。在日常生活中,经常会遇到下面这种的情况: 仔细地观察比亚迪秦这台汽车的车牌,发现它拍照的角度不是垂直的方向,而是有一个角度,当要进...

django之静态文件 django 2.0 在网页中显示图片的例子

小白,有错的地方,希望大家指正~ 使用的是django2.0 python3.6 1、首先,要在settings.py中设置 MEDIA_URL = '/media/' MEDIA_...

python实现函数极小值

python实现函数极小值

这里用到的是scipy.optimize的fmin和fminbound import numpy as np from matplotlib import pyplot as plt...

python中break、continue 、exit() 、pass终止循环的区别详解

python中break、continue 、exit() 、pass终止循环的区别详解

python中break、continue 、exit() 、pass区分 1、break:跳出循环,不再执行 Python break语句,就像在C语言中,打破了最小封闭for或...