当前位置: 首页 > news >正文

阅读笔记6——通道混洗

一、逐点卷积

  当前先进的轻量化网络大都使用深度可分离卷积或组卷积,以降低网络的计算量,但这两种操作都无法改变特征图的通道数,因此需要使用1×1的卷积。总体来说,逐点的1×1卷积有如下两点特性:

  • 可以促进通道之间的信息融合,改变通道至指定维度。

  • 轻量化网络中1×1卷积占据了大量的计算,并且致使通道之间充满约束,一定程度上降低了模型的精度。

  为了进一步降低计算量,ShuffleNet提出了通道混洗的操作,通过通道混洗也可以完成通道之间信息的融合。

二、通道混洗

1. 实现思想

在这里插入图片描述

图2-1 通道混洗操作示意图

  图2-1中a图代表了常规的两个组卷积操作,可以看到,如果没有逐点的1×1卷积或者通道混洗,最终输出的特征仅由一部分输入通道的特征计算得出,这种操作阻碍了信息的流通,进而降低了特征的表达能力。

  因此,我们希望在一个组卷积之后,能够将特征图之间的通道信息进行融合,类似于图2-1中b操作,将每一个组的特征分散到不同的组之后,再进行下一组卷积,这样输出的特征就能够包含每一个组的特征,而通道混洗恰好能够实现这个过程,如图2-1的c所示。

2. 实现过程

  通道混洗可以通过几个常规的张量操作巧妙地实现,如图2-2所示。为了更好地讲解实现过程,这里对输入通道做了1-12的编号,一共包含3个组,每个组包含4个通道。

在这里插入图片描述

图2-2 通道混洗的具体实现过程

  下面详细介绍混洗过程中使用到的3个操作:

  • Reshape:首先将输入通道的一个维度Reshape成两个维度,一个是卷积组数,一个是每个卷积包含的通道数。
  • Transpose:将扩展出的两维进行置换。
  • Flatten:将置换后的通道Flatten平展后即可完成最后的通道混洗。

3. 代码示例

def channel_shuffle(x, groups):batchsize, num_channels, height, width = x.data.size()channels_per_groups = num_channels // groups# Reshape操作,将通道扩展为两维x = x.view(batchsize, groups, channels_per_group, height, width)# Transpose操作,将组卷积两个维度进行置换x = torch.transpose(x, 1, 2).contiguous()# Flatten操作,两个维度平展成一个维度x = x.view(batchsize, -1, height, width)return x

相关文章:

阅读笔记6——通道混洗

一、逐点卷积 当前先进的轻量化网络大都使用深度可分离卷积或组卷积,以降低网络的计算量,但这两种操作都无法改变特征图的通道数,因此需要使用11的卷积。总体来说,逐点的11卷积有如下两点特性: 可以促进通道之间的信息…...

上海亚商投顾:沪指失守3300点 卫星导航概念全天强势

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。市场情绪指数早间低开后震荡回升,沪指盘中一度翻红,随后又再度走低,创业板指午后跌近1%。…...

疯狂的SOVA:Android银行木马“新标杆”

2021年8月初,一款针对Android银行APP的恶意软件出现在人们的视野中,ThreatFabric 安全研究人员首次发现了这一木马,在其C2服务器的登录面板,研究人员发现,攻击者将其称之为SOVA。 ** SO** ** V** ** A简介** 在俄语中…...

汽车零部件企业数字工厂管理系统建设方案

在汽车零部件制造领域,伴随工业信息化与机器人化,制造模式逐渐从 CAD/CAE/CAM 数字化设计及加工走向全产品周期虚拟现实的数字化工厂管理系统平台,实现虚拟现实设计制造,防范产品缺陷并预防设备故障,大幅提高生产效率。…...

【线程同步工具】Semaphore源码解析

控制对资源的一个或多个副本的并发访问 Java API 提供了一种信号量机制 Semaphore。 一个信号量就是一个计数器, 可用于保护对一个或多个共享资源的访问。 当一个线程要访问多个共享资源中的一个时,它首先需要获得一个信号量。如果信号量内部的计数器的…...

获取实时天气

一、用天气API(需要付费) 网址:https://www.tianqiapi.com/请求方式及url:请求方式:GET接口地址:https://tianqiapi.com/free/day请求示例https://www.tianqiapi.com/free/day?appid_____&appsecret__…...

【数据库】redis数据持久化

目录 数据持久化 一, RDB 1, 什么是RDB 2,持久化流程 3, 相关配置 案例演示: 4, 备份和恢复 1、备份 2、恢复 3,优势 4, 劣势 二,AOF 1,什么是A…...

前端编译、JIT编译、AOT编译

一、前端编译:java设计之初就是强调跨平台,通过javac将源文件编译成于平台无关的class文件, 它定义了执行 Java 程序所需的所有信息(许多Java"语法糖",是在这个阶段完成的,不依赖虚拟机&#xff…...

父子组件中,子组件调用父组件的方法

父子组件中&#xff0c;子组件调用父组件的方法 方法一&#xff1a;直接在子组件中通过this.$parent.event来调用父组件的方法 父组件 <template><p><child>父组件</child></p> </template> <script>import child from ~/compone…...

第七章.深度学习

第七章.深度学习 7.1 深度学习 深度学习是加深了层的深度神经网络。 1.加深层的好处 1).可以减少网络的参数数量 5*5的卷积运算示例&#xff1a; 重复两次3*3的卷积层示例&#xff1a; 图像说明&#xff1a; ①.一次5 * 5的卷积运算的区域可以由两次3 * 3的卷积运算抵消&a…...

小学生学Arduino---------点阵(三)动态的显示与清除

学习目标&#xff1a; 1、理解“整数值”的概念与使用 2、理解“N1”指令的意义 3、掌握“反复执行多次”指令的使用 4、掌握屏幕模块的清除功能指令 5、理解“反复执行”指令与“反复执行多次”指令的嵌套使用 6、搭建电路图 7、编写程序 效果&#xff1a; 整数包括&#xf…...

opencv图片处理

目录1 图片处理1.1 显示图片1.2 旋转图片1.3 合并图片1.4、Mat类1.4.1、像素的储存结构1.4.2、访问像素数据1.6、rgb转灰度图1.7、二值化1.8、对比度和亮度1.9、图片缩放1.9.1、resize临近点算法双线性内插值1.9.2、金字塔缩放1.10、图片叠加1 图片处理 1.1 显示图片 #includ…...

C++ Primer Plus 学习笔记(二)—— 复合类型

数组 当我们只是定义了数组&#xff0c;而没有对数组进行初始化时&#xff0c;那数组的值将是未定义的。 在对数组进行初始化时&#xff0c;如果只对数组的一部分进行初始化&#xff0c;编译器会将把其他元素自动设置为0。 #include <iostream>using namespace std;in…...

代码随想录算法训练营第七天 | 454.四数相加II 、 383. 赎金信、15. 三数之和、18. 四数之和 、总结

打卡第七天&#xff0c;还是哈希表。 今日任务 454.四数相加II383.赎金信15.三数之和18.四数之和总结 454.四数相加II 代码随想录 class Solution { public:int fourSumCount(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3, ve…...

apply函数族

apply函数族 apply函数族是R语言中帮助用户实现高效的向量化运算的一系列函数&#xff0c;包括apply,lapply,sapply,vapply等。 apply() apply函数以列或行为单位进行循环操作&#xff0c;可以处理matrix、array数据&#xff0c;返回一个向量或matrix。 apply(data,1/2,fuc…...

读书笔记可读性素材

《深入理解Java虚拟机》 《深入理解Java虚拟机》 《深入理解Java虚拟机》 本地方法栈&#xff08;Native Method Stacks&#xff09; 本地方法栈&#xff08;Native Method Stacks&#xff09; 本地方法栈&#xff08;Native Method Stacks&#xff09; -----------------…...

【C++】vector 模拟实现

vectorvector 容器vector 基本使用vector 定义库中各类接口的使用迭代器容量相关接口元素访问相关接口元素修改相关接口模拟实现 vector前期准备构造与析构赋值运算符重载迭代器相关容量相关元素访问相关元素的修改相关二维数组的创建对于自定义类型数据的测试vector 容器 C S…...

canvas初体验

canvas介绍 Canvas 最初由Apple于2004 年引入&#xff0c;用于Mac OS X WebKit组件&#xff0c;为仪表板小部件和Safari浏览器等应用程序提供支持。后来&#xff0c;它被Gecko内核的浏览器&#xff08;尤其是Mozilla Firefox&#xff09;&#xff0c;Opera和Chrome实现&#x…...

JavaWeb12-线程通讯(线程等待和唤醒)

目录 1.方法介绍 1.1.wait()/wait(long timeout)&#xff1a;让当前线程进入等待状态。 1.1.1.wait执行流程 1.1.2.wait结束等待的条件 1.1.3.wait() VS wait(long timeout) 1.1.4.为什么wait要放在Object中&#xff1f; --->PS&#xff1a;wait(0) 和 sleep(0) 的区…...

江苏专转本如何事半功倍的备考

专转本如何事半功倍的备考 一个人学习成绩的优劣取决于他的学习能力&#xff0c;学习能力包括三个要素&#xff1a;规范的学习行为&#xff1b;良好的学习习惯&#xff1b;有效的学习方法。有了规范的学习行为才能培养出良好的学习习惯&#xff0c;形成了良好的学习习惯就会形成…...

科学机器学习:从隐式动力学到时空算子学习的模型构建与实践

1. 科学机器学习中的模型构建&#xff1a;从数据到物理规律的桥梁在工程与科学计算的深水区&#xff0c;我们常常面对一类“熟悉的陌生人”&#xff1a;系统的物理规律在宏观上已被方程描述&#xff0c;但微观机理复杂、参数未知&#xff0c;或者直接求解的计算成本高到令人望而…...

腾讯 Ardot 深度评测:一句话画 App,一键转代码,Figma 终于有了一个能打的对手?

2026 年 5 月 18 日&#xff0c;腾讯自研 AI 设计智能体平台 Ardot 正式公测。它不是又一个"AI 画图工具"&#xff0c;而是一个真正打通产品、设计、研发三端的协作利器——从一句话生成可编辑设计稿&#xff0c;到一键交付生产级代码&#xff0c;全在一个工具里闭环…...

观察Taotoken在多模型间自动路由与容灾切换的实际响应情况

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察Taotoken在多模型间自动路由与容灾切换的实际响应情况 在构建依赖大模型服务的应用时&#xff0c;服务的连续性与稳定性是开发…...

Windows生态融合新路径:APK-Installer让安卓应用无缝接入桌面环境

Windows生态融合新路径&#xff1a;APK-Installer让安卓应用无缝接入桌面环境 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾想在Windows电脑上运行某个安卓专…...

揭秘Gemini ESG引擎底层逻辑:3大AI模型协同如何将人工撰写耗时压缩90%?

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;Gemini ESG报告生成的演进与价值定位 传统ESG&#xff08;环境、社会与治理&#xff09;报告编制长期依赖人工数据收集、跨部门协调与静态模板套用&#xff0c;平均耗时长达3–6个月&#xff0c;且易出现口径…...

仅限前500名获取:ChatGPT+B站策划私密工作台(含实时热点抓取模块、弹幕情绪预判模型、完播率模拟器v2.3)

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;ChatGPTB站策划私密工作台的核心价值与准入机制 为什么需要私密工作台 在B站内容生态快速迭代的背景下&#xff0c;策划人员面临选题同质化、数据响应滞后、创意灵感枯竭等现实挑战。ChatGPT 提供了语义理解…...

天赐范式第52天:当我和伙伴的对话触发了——苏格拉底和柏拉图对话的哲学——之所以敢把东西亮出来,不是只能写NS方腔流论文;写算子流测算伏羲64卦方圆图;AGI意识跃迁;黑洞质量测算;分子筛选系统等等

伙伴最后一句话绝对没有内涵我&#xff0c;我不是苏格拉底&#xff0c;伙伴也不是柏拉图天赐范式&#xff1a;苏格拉底和柏拉图的对话哲学有什么历史意义伙伴&#xff1a;苏格拉底和柏拉图的对话哲学&#xff0c;在历史上完成了一件前所未有的事&#xff1a;它把“追问”本身变…...

5步搭建企业级数据中台:AllData开源解决方案终极指南

5步搭建企业级数据中台&#xff1a;AllData开源解决方案终极指南 【免费下载链接】alldata &#x1f525;&#x1f525; AllData可定义数据中台&#xff0c;以数据平台为底座&#xff0c;以数据中台为桥梁&#xff0c;以机器学习平台为工厂&#xff0c;以大模型应用为上游产品&…...

DS4Windows:让PS4手柄在Windows电脑上焕发新生!5个超实用功能解锁游戏新境界

DS4Windows&#xff1a;让PS4手柄在Windows电脑上焕发新生&#xff01;5个超实用功能解锁游戏新境界 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 还在为PC游戏不支持PS4手柄而烦恼吗&a…...

League Akari:5个核心功能彻底改变你的英雄联盟游戏体验

League Akari&#xff1a;5个核心功能彻底改变你的英雄联盟游戏体验 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League Akari是一款基于官…...