pytorch神经网络之卷积层与全连接层参数的设置方法


Posted in Python onAugust 18, 2019

当使用pytorch写网络结构的时候,本人发现在卷积层与第一个全连接层的全连接层的input_features不知道该写多少?一开始本人的做法是对着pytorch官网的公式推,但是总是算错。

后来发现,写完卷积层后可以根据模拟神经网络的前向传播得出这个。

全连接层的input_features是多少。首先来看一下这个简单的网络。这个卷积的Sequential本人就不再??铝耍?衷诳?n.Linear(???, 4096)这个全连接层的第一个参数该为多少呢?

请看下文详解。

class AlexNet(nn.Module):
  def __init__(self):
    super(AlexNet, self).__init__()

    self.conv = nn.Sequential(
      nn.Conv2d(3, 96, kernel_size=11, stride=4),
      nn.ReLU(inplace=True),
      nn.MaxPool2d(kernel_size=3, stride=2),

      nn.Conv2d(96, 256, kernel_size=5, padding=2),
      nn.ReLU(inplace=True),
      nn.MaxPool2d(kernel_size=3, stride=2),

      nn.Conv2d(256, 384, kernel_size=3, padding=1),
      nn.ReLU(inplace=True),
      nn.Conv2d(384, 384, kernel_size=3, padding=1),
      nn.ReLU(inplace=True),
      nn.Conv2d(384, 256, kernel_size=3, padding=1),
      nn.ReLU(inplace=True),
      nn.MaxPool2d(kernel_size=3, stride=2)
    )

    self.fc = nn.Sequential(
      nn.Linear(???, 4096)
      ......
      ......
    )

首先,我们先把forward写一下:

def forward(self, x):
    x = self.conv(x)
    print x.size()

就写到这里就可以了。其次,我们初始化一下网络,随机一个输入:

import torch
from Alexnet.AlexNet import *
from torch.autograd import Variable

if __name__ == '__main__':
  net = AlexNet()

  data_input = Variable(torch.randn([1, 3, 96, 96])) # 这里假设输入图片是96x96
  print data_input.size()
  net(data_input)

结果如下:

(1L, 3L, 96L, 96L)
(1L, 256L, 1L, 1L)

显而易见,咱们这个全连接层的input_features为256。

以上这篇pytorch神经网络之卷积层与全连接层参数的设置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python datetime时间格式化去掉前导0
Jul 31 Python
Python 冒泡,选择,插入排序使用实例
Feb 05 Python
深入解析Python中的descriptor描述器的作用及用法
Jun 27 Python
深入理解NumPy简明教程---数组2
Dec 17 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
关于python2 csv写入空白行的问题
Jun 22 Python
python实现静态服务器
Sep 05 Python
python 求10个数的平均数实例
Dec 16 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 Python
快速了解Python开发环境Spyder
Jun 29 Python
python中re模块知识点总结
Jan 17 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
Jan 23 Python
pytorch numpy list类型之间的相互转换实例
Aug 18 #Python
对Pytorch中nn.ModuleList 和 nn.Sequential详解
Aug 18 #Python
pytorch 自定义数据集加载方法
Aug 18 #Python
PyTorch的Optimizer训练工具的实现
Aug 18 #Python
Pytorch反向求导更新网络参数的方法
Aug 17 #Python
pytorch 模型可视化的例子
Aug 17 #Python
pytorch 输出中间层特征的实例
Aug 17 #Python
You might like
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
Swoole扩展的6种模式深入详解
2021/03/04 PHP
一些实用的jQuery代码片段收集
2011/07/12 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
2013/01/02 Javascript
jquery实现ajax提交form表单的方法总结
2014/03/03 Javascript
JavaScript中三种异步上传文件方式
2016/03/06 Javascript
JavaScript 实现的checkbox经典实例分享
2016/10/16 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
vue通过style或者class改变样式的实例代码
2018/10/30 Javascript
小程序实现日历左右滑动效果
2019/10/21 Javascript
Vue使用screenfull实现全屏效果
2020/09/17 Javascript
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
python使用cookie库操保存cookie详解
2014/03/03 Python
理解python多线程(python多线程简明教程)
2014/06/09 Python
python绘制条形图方法代码详解
2017/12/19 Python
Python实现k-means算法
2018/02/23 Python
pycharm 批量修改变量名称的方法
2019/08/01 Python
Pandas实现一列数据分隔为两列
2020/05/18 Python
Python学习笔记之装饰器
2020/08/06 Python
python 绘制场景热力图的示例
2020/09/23 Python
行政经理的岗位职责
2013/11/23 职场文书
分厂厂长岗位职责
2013/12/29 职场文书
担保书格式及范文
2014/04/01 职场文书
《英英学古诗》教学反思
2014/04/11 职场文书
慈善晚会策划方案
2014/05/14 职场文书
爱护公物演讲稿
2014/09/09 职场文书
招商引资工作汇报
2014/10/28 职场文书
2014年质量工作总结
2014/11/22 职场文书
小学班主任个人总结
2015/03/03 职场文书
2015年大学班主任工作总结
2015/04/30 职场文书
学习雷锋主题班会
2015/08/14 职场文书
大学生创业计划书
2019/06/24 职场文书
Win10 和 Win11可以共存吗? win10/11产品生命周期/服务更新介绍
2021/11/21 数码科技
Python读取和写入Excel数据
2022/04/20 Python