pytorch SENet实现案例


Posted in Python onJune 24, 2020

我就废话不多说了,大家还是直接看代码吧~

from torch import nn

class SELayer(nn.Module):
 def __init__(self, channel, reduction=16):
  super(SELayer, self).__init__()

  //返回1X1大小的特征图,通道数不变
  self.avg_pool = nn.AdaptiveAvgPool2d(1)
  self.fc = nn.Sequential(
   nn.Linear(channel, channel // reduction, bias=False),
   nn.ReLU(inplace=True),
   nn.Linear(channel // reduction, channel, bias=False),
   nn.Sigmoid()
  )

 def forward(self, x):
  b, c, _, _ = x.size()

  //全局平均池化,batch和channel和原来一样保持不变
  y = self.avg_pool(x).view(b, c)

  //全连接层+池化
  y = self.fc(y).view(b, c, 1, 1)

  //和原特征图相乘
  return x * y.expand_as(x)

补充知识:pytorch 实现 SE Block

论文模块图

pytorch SENet实现案例

代码

import torch.nn as nn
class SE_Block(nn.Module):
 def __init__(self, ch_in, reduction=16):
  super(SE_Block, self).__init__()
  self.avg_pool = nn.AdaptiveAvgPool2d(1)				# 全局自适应池化
  self.fc = nn.Sequential(
   nn.Linear(ch_in, ch_in // reduction, bias=False),
   nn.ReLU(inplace=True),
   nn.Linear(ch_in // reduction, ch_in, bias=False),
   nn.Sigmoid()
  )

 def forward(self, x):
  b, c, _, _ = x.size()
  y = self.avg_pool(x).view(b, c)
  y = self.fc(y).view(b, c, 1, 1)
  return x * y.expand_as(x)

现在还有许多关于SE的变形,但大都大同小异

以上这篇pytorch SENet实现案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python ip正则式
May 07 Python
python和pyqt实现360的CLable控件
Feb 21 Python
python&MongoDB爬取图书馆借阅记录
Feb 05 Python
好用的Python编辑器WingIDE的使用经验总结
Aug 31 Python
Python PyQt5实现的简易计算器功能示例
Aug 23 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
Jan 14 Python
python dict 相同key 合并value的实例
Jan 21 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
python django中8000端口被占用的解决
Dec 17 Python
Python3变量与基本数据类型用法实例分析
Feb 14 Python
Python线程threading模块用法详解
Feb 26 Python
利用PyTorch实现VGG16教程
Jun 24 #Python
python安装读取grib库总结(推荐)
Jun 24 #Python
Pytorch mask-rcnn 实现细节分享
Jun 24 #Python
在Pytorch中使用Mask R-CNN进行实例分割操作
Jun 24 #Python
OpenCV+python实现实时目标检测功能
Jun 24 #Python
基于Python下载网络图片方法汇总代码实例
Jun 24 #Python
Python 分布式缓存之Reids数据类型操作详解
Jun 24 #Python
You might like
服务器端解压缩zip的脚本
2006/12/22 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
php集成动态口令认证
2016/07/21 PHP
asp 取文本框名称代码
2008/12/02 Javascript
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
Javascript中call的两种用法实例
2013/12/13 Javascript
js模仿hover的具体实现代码
2013/12/30 Javascript
Javascript学习笔记之相等符号与严格相等符号
2014/11/23 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
javascript 中的事件委托详解
2016/10/25 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
简单实现bootstrap导航效果
2017/02/07 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
深入讲解xhr(XMLHttpRequest)/jsonp请求之abort
2017/07/26 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
JQuery的加载和选择器用法简单示例
2019/05/13 jQuery
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
基于Python实现通过微信搜索功能查看谁把你删除了
2016/01/27 Python
浅析python中的分片与截断序列
2016/08/09 Python
python学习笔记之列表(list)与元组(tuple)详解
2017/11/23 Python
Python3爬取英雄联盟英雄皮肤大图实例代码
2018/11/14 Python
Pandas Shift函数的基础入门学习笔记
2018/11/16 Python
python3.4爬虫demo
2019/01/22 Python
pycharm下配置pyqt5的教程(anaconda虚拟环境下+tensorflow)
2020/03/25 Python
python3 配置logging日志类的操作
2020/04/08 Python
基于python爬取梨视频实现过程解析
2020/11/09 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
CSS3中文字镂空、透明值、阴影效果设置示例小结
2016/03/07 HTML / CSS
全球知名的珠宝首饰品牌:Kay Jewelers
2018/02/11 全球购物
全球最大的房车租赁市场:Outdoorsy
2018/09/19 全球购物
预防传染病方案
2014/06/14 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
Django与数据库交互的实现
2021/06/03 Python