码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 第3周学习:ResNet+ResNeXt


    第3周学习:ResNet+ResNeXt

    • ResNet
      • Batch Normalization
    • ResNeXt
    • 猫狗大赛
      • LeNet结果
        • ResNet结果
    • 本周思考问题

    ResNet

    ResNet网络的亮点:

    • 超深的网络结构(突破1000)层
    • 提出 residual 模块
    • 使用Batch Normalization加速训练(丢弃dropout)
      残差学习基本单元
      主要思想是通过构建恒等映射去解决网络退化问题。简单地说,原先的网络输入x,希望输出H(x)。现在我们改一改,我们令H(x)=F(x)+x,那么我们的网络就只需要学习输出一个残差F(x)=H(x)-x。作者提出,学习残差F(x)=H(x)-x会比直接学习原始特征H(x)简单的多。
      在这里插入图片描述
      在不同的深度模型中,残差模块的结构是不同的,如下图。
      在这里插入图片描述

    Batch Normalization

    Batch Normalization是google团队在2015年论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》提出的。通过该方法能够加速网络的收敛并提升准确率。在网上虽然已经有很多相关文章,但基本都是摆上论文中的公式泛泛而谈,bn真正是如何运作的很少有提及。
    在图像预处理过程中通常会对图像进行标准化处理,这样能够加速网络的收敛,如下图所示,对于Conv1来说输入的就是满足某一分布的特征矩阵,但对于Conv2而言输入的feature map就不一定满足某一分布规律了(注意这里所说满足某一分布规律并不是指某一个feature map的数据要满足分布规律,理论上是指整个训练样本集所对应feature map的数据要满足分布规律)。而我们Batch Normalization的目的就是使每一个batch的feature map满足均值为0,方差为1的分布规律。
    在这里插入图片描述
    “对于一个拥有d维的输入x,我们将对它的每一个维度进行标准化处理。” 假设我们输入的x是RGB三通道的彩色图像,那么这里的d就是输入图像的channels即d=3,x=(x(1), x(2), x(3)),其中x(1)就代表我们的R通道所对应的特征矩阵,依此类推。标准化处理也就是分别对我们的R通道,G通道,B通道进行处理。

    详细介绍Batch Normalization相关知识

    ResNeXt

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    通过上边图1和图2可以看出来,ResNeXt结合了inception与resnet的优点,既有残差结构又对特征层进行了concat。通过图3最后的数据对比,ResNeXt能够保证FLops和参数在同一个量级的前提下,通过更宽或者更深的网络,来提高精度。每一个Block中每一条path在文章中被称为一个cardinality。实验表明,增加cardinality是获得精度的一种更有效的方法。

    Aggregated Residual Transformations for Deep Neural Networks 留坑

    猫狗大赛

    LeNet结果

    在这里插入图片描述

    ResNet结果

    在这里插入图片描述

    本周思考问题

    1、Residual learning

    参考1
    参考2

    2、Batch Normailization 的原理

    Batch Normalization通过一定的规范化手段,把每层神经网络输入值的分布强行拉回到均值为0方差为1的标准正态分布。
    深度学习中 Batch Normalization为什么效果好?(留坑,还没有消化掉)

    3、为什么分组卷积可以提升准确率?即然分组卷积可以提升准确率,同时还能降低计算量,分数数量尽量多不行吗?

    不确定分组卷积是否可以提高准确率,也没在知乎大佬那么搜索比较明确的出处,留坑。
    数量拉满,就变成了深度可分离卷积,所以在炼丹过程中要根据实际情况不断的调整。

  • 相关阅读:
    CentOS 7停服之后该怎么安装软件呢?
    猿创征文 | Docker实战:Linux环境安装Tomcat安装步骤
    Leetcode刷题详解——二叉树剪枝
    Nginx 使用自签名证书实现 https 反代 Spring Boot 中碰到的页面跳转问题
    算力时代,算能(SOPHGO)的算力芯片/智算板卡/服务器选型
    当App的开发低至无门槛时,是一种什么体验
    递归概述与递归能解决的问题和规则 [数据结构][Java]
    Self-supervised Low Light Image Enhancement and Denoising 论文阅读笔记
    广度搜索图、树优化以及通用模板
    【无标题】接口测试用例设计(精华)
  • 原文地址:https://blog.csdn.net/passer__/article/details/126006607
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号