Pytorch实现各种2d卷积示例


Posted in Python onDecember 30, 2019

普通卷积

使用nn.Conv2d(),一般还会接上BN和ReLu

参数量NNCin*Cout+Cout(如果有bias,相对来说表示对参数量影响很小,所以后面不考虑)

class ConvBNReLU(nn.Module):

 def __init__(self, C_in, C_out, kernel_size, stride, padding, affine=True):
  super(ConvBNReLU, self).__init__()
  self.op = nn.Sequential(
   nn.Conv2d(C_in, C_out, kernel_size, stride=stride, padding=padding, bias=False),
   nn.BatchNorm2d(C_out, eps=1e-3, affine=affine),
   nn.ReLU(inplace=False)
  )

 def forward(self, x):
  return self.op(x)

深度可分离卷积depthwise separable convolution

卷积操作可以分为NN 的Depthwise卷积(不改变通道数)和11的Pointwise卷积(改变为输出通道数),同样后接BN,ReLU。参数量明显减少

参数量:

NNCin+Cin11*Cout

class SepConv(nn.Module):
 
 def __init__(self, C_in, C_out, kernel_size, stride, padding, affine=True):
  super(SepConv, self).__init__()
  self.op = nn.Sequential(
   nn.ReLU(inplace=False),
   nn.Conv2d(C_in, C_in, kernel_size=kernel_size, stride=stride, padding=padding, groups=C_in, bias=False),
   nn.Conv2d(C_in, C_out, kernel_size=1, padding=0, bias=False),
   nn.BatchNorm2d(C_out, eps=1e-3, affine=affine)
   )
 def forward(self, x):
  return self.op(x)

空洞卷积dilated convolution

空洞卷积(dilated convolution)是针对图像语义分割问题中下采样会降低图像分辨率、丢失信息而提出的一种卷积思路。利用添加空洞扩大感受野。

参数量不变,但感受野增大(可结合深度可分离卷积实现)

class DilConv(nn.Module):
  
 def __init__(self, C_in, C_out, kernel_size, stride, padding, dilation, affine=True):
  super(DilConv, self).__init__()
  self.op = nn.Sequential(
   nn.ReLU(inplace=False),
   nn.Conv2d(C_in, C_in, kernel_size=kernel_size, stride=stride, padding=padding, dilation=dilation, groups=C_in, bias=False),
   nn.Conv2d(C_in, C_out, kernel_size=1, padding=0, bias=False),
   nn.BatchNorm2d(C_out, eps=1e-3, affine=affine),
   )

 def forward(self, x):
  return self.op(x)

Identity

这个其实不算卷积操作,但是在实现跨层传递捷径

class Identity(nn.Module):

 def __init__(self):
  super(Identity, self).__init__()

 def forward(self, x):
  return x

以上这篇Pytorch实现各种2d卷积示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Web框架Pylons中使用MongoDB的例子
Dec 03 Python
如何在Python函数执行前后增加额外的行为
Oct 20 Python
python对excel文档去重及求和的实例
Apr 18 Python
pandas ix &iloc &loc的区别
Jan 10 Python
在Python中调用Ping命令,批量IP的方法
Jan 26 Python
关于Numpy数据类型对象(dtype)使用详解
Nov 27 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
Apr 10 Python
Django 允许局域网中的机器访问你的主机操作
May 13 Python
Python 实现国产SM3加密算法的示例代码
Sep 21 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
Dec 08 Python
Python基础进阶之海量表情包多线程爬虫功能的实现
Dec 17 Python
教你怎么用Python实现多路径迷宫
Apr 29 Python
Python面向对象之多态原理与用法案例分析
Dec 30 #Python
Pytoch之torchvision.transforms图像变换实例
Dec 30 #Python
python面向对象之类属性和类方法案例分析
Dec 30 #Python
基于Python执行dos命令并获取输出的结果
Dec 30 #Python
python实现的批量分析xml标签中各个类别个数功能示例
Dec 30 #Python
python实现修改固定模式的字符串内容操作示例
Dec 30 #Python
python基于celery实现异步任务周期任务定时任务
Dec 30 #Python
You might like
第十三节 对象串行化 [13]
2006/10/09 PHP
php查看session内容的函数
2008/08/27 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
2018/12/06 PHP
laravel 获取当前url的别名方法
2019/10/11 PHP
JS event使用方法详解
2008/04/28 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
2009/11/02 Javascript
JS 图片缩放效果代码
2010/06/09 Javascript
CSS鼠标响应事件经过、移动、点击示例介绍
2013/09/04 Javascript
原生js操作checkbox用document.getElementById实现
2013/10/12 Javascript
Js实现当前点击a标签变色突出显示其他a标签回复原色
2013/11/27 Javascript
javascript中的作用域和上下文使用简要概述
2013/12/05 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
JS插件overlib用法实例详解
2015/12/26 Javascript
JQuery DIV 动态隐藏和显示的方法
2016/06/23 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
jQuery表格(Table)基本操作实例分析
2017/03/10 Javascript
基于vuejs实现一个todolist项目
2017/04/11 Javascript
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
vue远程加载sfc组件思路详解
2019/12/25 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
JS如何定义用字符串拼接的变量
2020/07/11 Javascript
[01:14]辉夜杯战队访谈宣传片—NEWBEE.Y
2015/12/26 DOTA
[16:01]夜魇凡尔赛茶话会 第二期01:你比划我猜
2021/03/11 DOTA
Python 列表list使用介绍
2014/11/30 Python
python图像常规操作
2017/11/11 Python
python 运用Django 开发后台接口的实例
2018/12/11 Python
10分钟用python搭建一个超好用的CMDB系统
2019/07/17 Python
Python 整行读取文本方法并去掉readlines换行\n操作
2020/09/03 Python
python使用scapy模块实现ARP扫描的过程
2021/01/21 Python
h5页面唤起app如果没安装就跳转下载(iOS和Android)
2020/06/03 HTML / CSS
优秀家长自荐材料
2014/08/26 职场文书
税务会计岗位职责
2015/04/02 职场文书
毕业生捐书活动倡议书
2015/04/27 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
关于python类SortedList详解
2021/09/04 Python