什么是 dropblock

大家好啊,我是董董灿。

之前介绍过 dropout 算法,它在训练神经网络中,可以随机丢弃神经元,是一种防止网络过拟合的方法。

但是在卷积神经网络中,dropout 的表现却不是很好,于是研究人员又搞了一个“结构化的 dropout 方法”,称为 dropblock,据说在卷积神经网络中表现不错。

今天就一起来看看,什么是 dropblock 吧。

1、卷积层中为什么 dropout 表现不好

dropout 在卷积层表现不好,是因为在卷积层中,特征图中的每个像素都与周围的像素高度相关。

这是由于图像像素具有局部性表达所引起的,所谓的局部性可以查看要学计算机视觉,先了解图像和像素。

由于卷积的特征图中相邻位置元素在空间上会共享语义信息,所以尽管某个单元被 dropout 掉,但与其相邻的元素依然可以保有该位置的语义信息,相关的信息仍然可以在卷积网络中流通。

因此,看似丢掉了信息,实际上并没有完全丢掉。

2、dropblock是怎么做的

为了解决这些问题,研究人员提出了一种新方法: dropblock。

dropblock 是一种结构化的 dropout 方法,它可以同时丢弃特征图中的一整块激活区域,而不是随机丢弃一个激活单元。

可以说是一种加宽加大版的 dropout 方法了。

我们以下面的图示来举个例子说明。

图片

图(a) 代表卷积神经网络的输入图像,是一只狗子。

图(b) 和图(c) 中的绿色区域为这只狗子的图片经过了卷积运算之后得到的激活图像,绿色方块包含了激活单元。

由于图像像素局部性的存在,假设绿色区域中左上角激活的为狗子的耳朵,中间部分激活的为狗子的嘴巴,右下激活的为狗子的腿。

那么如图 b 所示,随机丢弃激活单元的方法,仅仅是丢弃了单个单元,剩余的绿色区域中仍然包含了原来的特征(比如耳朵、嘴巴和腿的特征),因此这种单纯的 dropout 方法并不有效。

而连续地将一大块区域丢弃(图c),却可以直接丢掉一些特定的区域信息(比如将左上角的耳朵信息全部丢掉,或者右下角的腿的信息),从而强制剩余的神经元去学习更重要的特征。

假设这是一个图像分类网络,那么剩余的神经元就会被强制去学习其他更有利于分类的特征。

目前,dropblock 已经被应用于许多CNN模型中,包括ResNet、DenseNet、MobileNet、EfficientNet 和 RetinaNet 等。

在ImageNet分类任务中,使用dropblock 的ResNet-50模型的准确率达到了78.13%,比传统的dropout方法提高了1.6%。

3、一个发文章的新思路

发现没有,搞 AI 算法这么卷,大家都在绞尽脑汁对算法进行变形,dropout 这种丢弃单一神经元的方法不好使,那我就整块整块的丢,效果挺好那就是一篇顶刊。

有个网友(知乎:Kevin S)对这种丢弃神经元的方法做了个总结,很有意思:

  • Dropout:完全随机扔

  • SpatialDropout :按channel随机扔

  • Stochastic Depth:按res block随机扔

  • DropBlock:每个feature map按spatial块随机扔

  • Cutout:在input层按spatial块随机扔

  • DropConnect:只在连接处扔,神经元不扔

每一种扔法都是一个顶刊文章,小伙伴们觉得怎么样,是不是打开了发文章的新思路了呢?

参考

1. 论文:Wu, Y., He, K., & Hoiem, D. (2018). DropBlock: A regularization method for convolutional networks. arXiv preprint arXiv:1810.12890.

2. ^ 5分钟搞懂 dropblock

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/226362.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第二十章总结

线程简介 Windows操作系统是多任务操作系统,它以进程为单位。一个进程是一个包含有自身地址的程序,每个独立执行的程序都称为进程。也就是说每个正在执行的程序都是一个进程。系统可以分配给每一个进程有一段有限的使用CPU的时间(也可以称为…

建筑木模板厂家批发

在建筑施工中,木模板是一种常见且重要的施工材料,用于搭建混凝土浇筑的支撑结构。选择合适的建筑木模板厂家进行批发,对于施工质量和效率至关重要。本文将介绍建筑木模板厂家批发的重要性,并推荐贵港市能强优品木业作为专业的建筑…

【C++初阶】四、类和对象(构造函数、析构函数、拷贝构造函数、赋值运算符重载函数)

相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 【C初阶】三、类和对象 (面向过程、class类、类的访问限定符和封装、类的实例化、类对象模型、this指针) -CSDN博客 引入:类的六个默认成员函数…

如何获取高质量的静态住宅IP代理?常见误区与注意事项

静态住宅IP代理在今天的网络营销领域扮演着至关重要的角色,静态住宅IP代理以其稳定性和高匿名性,为互联网业务提供了一个安全的执行环境。通过模拟真实用户的网络行为,这些IP代理降低了企业在网络营销活动中被识别和封禁的风险。它保护了企业…

基于SpringBoot的手机官方商城系统

基于SpringBoot的手机官方商城系统 摘要:随着电子商务的发展,网上购物已成为人们普遍的购物方式。与此同时,网上支付也得到了迅速的发展,大有赶超传统支付的趋势。在今天这个信息化程度高、生活节奏快的现代社会,传统…

Airtest自动化测试工具实战演练

一开始知道Airtest大概是在年初的时候,当时,看了一下官方的文档,大概是类似Sikuli的一个工具,主要用来做游戏自动化的,通过截图的方式用来解决游戏自动化测试的难题。最近,移动端测试的同事尝试用它的poco库…

Centos7安装配置nginx

快捷查看指令 ctrlf 进行搜索会直接定位到需要的知识点和命令讲解(如有不正确的地方欢迎各位小伙伴在评论区提意见,小编会及时修改) Centos7安装配置nginx Nginx介绍 Nginx (engine x) 是一个高性能的 HTTP 和 反向代理 服务,也…

浅谈硬件连通性测试几大优势

硬件连通性测试是确保硬件系统正常运行、提高系统可靠性和降低生产成本的关键步骤。在现代工程和制造中,将连通性测试纳入生产流程是一个明智的选择,有助于确保硬件产品的质量和性能达到最优水平。本文将介绍硬件连通性测试的主要优势有哪些! 一、提高系…

计算机网络408

一:计算机网络体系结构 1.计网的概念,组成,功能和分类 一:计算机网络的发展 (3)从功能组成视觉看:分为资源子网和通信子网 2.计网性能指标

C++初阶模板

介绍: 我们先认识以下C中的模板。模板是一种编程技术,允许程序员编写与数据类型无关的代码,它是一种泛型编程的方式,可以用于创建可处理多种数据类型的函数或类,也就是说泛型编程就是编写与类型无关的通用代码&#xf…

2023-11-28 LeetCode每日一题(设计前中后队列)

2023-11-28每日一题 一、题目编号 1760.设计前中后队列二、题目链接 点击跳转到题目位置 三、题目描述 请你设计一个队列,支持在前,中,后三个位置的 push 和 pop 操作。 请你完成 FrontMiddleBack 类: FrontMiddleBack() 初…

leetcode算法之字符串

目录 1.最长公共前缀2.最长回文子串3.二进制求和4.字符串相乘 1.最长公共前缀 最长公共前缀 class Solution { public:string longestCommonPrefix(vector<string>& strs) {//法一&#xff1a;两两比较string ret strs[0];for(int i1;i<strs.size();i){ret f…