OpenMMLab AI实战课笔记 -- 第2节课

news2024/11/18 9:29:22

OpenMMLab AI实战课笔记 -- 第2节课

  • 1. 第二节课(图像分类)
    • 1.1 深度学习模型
    • 1.2 网络进化过程
    • 1.3 ResNet (残差网络)
    • 1.4 卷积的参数量
    • 1.5 卷积的计算量(乘加次数)
    • 1.6 降低模型参数量和计算量的方法
    • 1.7 可分离卷积
    • 1.8 注意力机制 Attention Mechanism

1. 第二节课(图像分类)

  • 图像分类目标:识别图像中有哪些物体
  • 视觉任务的难点:图像中的物体是通过图像中的所有像素整体呈现出的效果,与单个像素没有直接关联,难以设计规则算法来处理,所以传统的基于特征的算法(如:HOG、LBP、SIFT等)无法很好地处理这些问题。为更好地解决此问题,既然无法设计规则,就超越规则,让机器自己从数据中学习映射方法。深度学习方法解决了传统特征提取方法的瓶颈。
  • 特征的特性:特征对物体的抽象层次越高(即越抽象),其数据的分布就越“规整”,即更易于实现分类。
  • 先进的特征提取方法卷积):
    • 特征和图像一样具有二维空间结构,保持了二维空间特征
    • 可分层提取可学习的特征(如CNN)
    • 可实现一步特征提取(如多头注意力:Transformer)

1.1 深度学习模型

  • 模型设计:设计适合图像的 F θ ( X ) F_{\theta}(X) Fθ(X),模型可分为以下几类:
    - 卷积神经网络
    - 轻量化卷积神经网络
    - 神经结构搜索 (NAS:Neural Architecture Search):
    - 基本思路是借助强化学习等方法搜索表现最佳的网络
    - 代表作有:NASNet (2017)、MnasNet (2018)、EfficientNet (2019) 、RegNet (2020) 等
    - Transformer:
    - 使用 Transformer 替代卷积网络实现图像分类,使用更大的数据集训练,达到超越卷积网络的精度
    - 其代表作有:Vision Transformer (2020),Swin-Transformer (2021 ICCV 最佳论文)
  • 模型训练:学习一组好的参数 Θ \Theta Θ
    - 监督学习:基于标注数据学习 (关键步骤:损失函数、随机梯度下降算法、视觉模型常用训练技巧)
    - 自监督学习:基于无标注的数据学习

1.2 网络进化过程

在这里插入图片描述

1.3 ResNet (残差网络)

  • 残差网络特征

    • 让新增加的层拟合浅层网络与深层网络之间的差异
    • 更易学习梯度可以直接回传到浅层网络监督浅层网络的学习
    • 没有引入额外参数,让参数更有效地贡献到最终的模型中
    • 每级输出分辨率减半,通道倍增
    • 全局平均池化压缩空间维度
    • 单层全连接层产生类别概率
  • ResNet中的两种残差模块

    • 1×1 卷积用于压缩通道,降低计算开销
      在这里插入图片描述
  • 残差链接让损失曲面(Loss Surface) 更平滑,更容易收敛到局部/全局最优解
    在这里插入图片描述

  • 图像分类 & 视觉基础模型的发展史
    在这里插入图片描述

    • ConvNeXt (2022):将 Swin Transformer 的模型元素迁移到卷积网络中,性能反超 Transformer

1.4 卷积的参数量

在这里插入图片描述

1.5 卷积的计算量(乘加次数)

在这里插入图片描述

1.6 降低模型参数量和计算量的方法

在这里插入图片描述

1.7 可分离卷积

  • 将常规卷积分解为逐层卷积逐点卷积,降低参数量和计算量
    在这里插入图片描述
  • MobileNet V1 使用可分离卷积,只有 4.2M 参数
  • MobileNet V2/V3 在 V1 的基础上加入了残差模块和 SE 模块

1.8 注意力机制 Attention Mechanism

  • 实现层次化特征:
    • 后层特征是空间邻域内的前层特征的加权求和
    • 权重越大,对应位置的特征就越重要
      在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

常见正则表达式使用参考

目录 一、正则函数 1.REGEXP 2.regexp_replace 3.regexp_extract 二、正则表达式 三、特殊字符转义 一、正则函数 1.REGEXP 语法格式: A REGEXP B (A是需要匹配的字符串,B是正则表达式字符串) 操作类型: strings 描述: …

UniTask详解

前言 UniTask为Unity提供一个高性能,0GC的async/await异步方案。 基于值类型的UniTask和自定义的 AsyncMethodBuilder 来实现0GC使所有 Unity 的 AsyncOperations 和 Coroutines 可等待基于 PlayerLoop 的任务( UniTask.Yield, UniTask.Delay, UniTask.DelayFrame…

哈工大机器学习复习笔记(四)

本篇文章是在参考西瓜书、PPT课件、网络上相关博客等资料的基础上整理出的机器学习复习笔记,希望能给大家的机器学习复习提供帮助。这篇笔记只是复习的一个参考,大家一定要结合书本、PPT来进行复习,有些公式的推导最好能够自己演算一遍。由于…

Scala 简单实现数据库连接池

在使用JDBC的时候,连接池是非常宝贵的资源。为了复用这些资源,可以将连接保存在一个队列中。当需要的时候可以从队列中取出未使用的连接。如果没有可用连接,则可以在一定时间内等待,直到队列中有可用的连接,否则将抛出…

浅谈估值模型:PB指标与剩余收益估值

摘要及声明 1:本文简单介绍PB指标的推导以及剩余收益的估值方式; 2:本文主要为理念的讲解,模型也是笔者自建,文中假设与观点是基于笔者对模型及数据的一孔之见,若有不同见解欢迎随时留言交流&#xff1b…

【HTML】HTML 标签 ① ( 骨架标签 | 双标签和单标签 | 嵌套关系和并列关系 | 文档类型 | 页面语言 | 编码字符集 )

文章目录一、HTML 标签简介二、HTML 骨架标签三、双标签和单标签四、嵌套关系和并列关系五、文档类型六、页面语言七、编码字符集一、HTML 标签简介 HTML 英文全称 " HyperText Mark-up Language " , 中文名称是 " 超文本标记语言 " ; 多媒体 : 超文本 指…

小 C 爱观察(observe)

小 C 爱观察(observe)题目描述输入格式输出格式样例输入数据#1输出数据#1解释#1输入数据#2输出数据#2输入数据#3输出数据#3题目描述 小 C 非常喜欢树。上次后院的蚂蚁看腻了,这次准备来观察树。 小 C 每天起得早早的,给小树浇水…

shell 流程控制之条件判断及案例

目录 流程控制之条件判断 一,if条件语句的语法及案例 1,单分支结构 2,双分支结构 3,多分支结构 二,复合指令 三, exit退出程序 四, 多条件判断语句case 流程控制之条件判断 条件判断语句…

【SpringCloud】Sentinel 之隔离与降级

一、上集回顾上级文章地址:【SpringCloud】Sentinel 之流量控制_面向架构编程的博客-CSDN博客上一篇文章我们讲解了Sentinel 流量控制、流控效果、热点参数限流的用法,统称为限流,它是一种预防措施,可以尽量避免因高并发而引起的服…

根据官方文档详细说明 Kubernetes 网络流量走向,包含详细的图文说明和介绍

根据官方文档详细说明 Kubernetes 网络流量走向,包含详细的图文说明和介绍。 阅读本文,你可以了解在 Kubernetes 内外,数据包是如何转发的,从原始的 Web 请求开始,到托管应用程序的容器。 Kubernetes 网络要求 在深入…

【three.js】本地搭建Threejs官方文档网站 解决threejs官方文档打开过慢得到问题

本文主要为了解决three.js 官方文档 打开过慢的问题 因为Three.js官网是国外的服务器,所以为了方便学习和快速的查阅文档,我们可以自己搭建Three.js官网和文档,方便随时查看案例和文档内容进行学习。 1、首先进入threejs库GitHub地址&#xf…

如何成为一名FPGA工程师?需要掌握哪些知识?

我国每年对于FPGA设计人才的需求缺口很大。在需求缺口巨大的情形下,发展前景相对可观。那么如何成为一名FPGA工程师? 什么是FPGA? FPGA(FieldProgrammable Gate Array),即现场可编程门阵列,它…

新手入门Pinia

什么是Pinia Pinia 是 Vue 的专属状态管理库,它允许你跨组件或页面共享状态。它和Vuex作用类似(发音为 /piːnjʌ/),官网 为什么要使用Pinia 与 Vuex 相比,Pinia 不仅提供了一个更简单的 API,也提供了符合组合式 API 风格的 API&#xff0…

vue项目创建

前提:node安装:02node安装_哔哩哔哩_bilibili 1. 查看node版本 查看node版本 node -v 查看npm 版本 npm -v 2. 输入cmd 用管理员打开控制台 3. 设置淘宝镜像 npm config set registry https://registry.npm.taobao.org 4. 安装vue脚手架 npm install -g …

北大青鸟昌平校区:2023年云计算发展趋势!

云计算的大规模应用一直是许多最具变革性技术——如人工智能、物联网等的关键驱动力,未来也将进一步推动虚拟现实和增强现实(VR/AR)、元宇宙、甚至量子计算等技术的发展。近日,在美国《福布斯》网站报道中,列出了2023年云计算领域的五大主要趋…

56.Isaac教程--ROS

ROS ISAAC教程合集地址文章目录ROS安装ROS创建和使用自定义 ROS 包创建 ROS BridgeRos节点时间同步器消息转换器基地姿势同步自定义小码示例:将 ROS 导航堆栈与 Isaac 结合使用在此示例上构建将 Isaac 映射转换为 ROS 映射Isaac 和机器人操作系统 (ROS) 都使用消息传…

other-chatGPT记录

title: other-chatGPT记录 categories: Others tags: [人工智能, ai, 机器人, chatGPT] date: 2023-02-02 10:04:33 comments: false mathjax: true toc: true other-chatGPT记录 前篇 官网 https://openai.com/api - https://openai.com/api/测试 - https://platform.openai.…

DSP_CCS7实现变量的导出与MatLAB读取

前言 最近在做基于dsp平台的无通信接口系统辨识,因此需要直接利用CCS将数据导出,然后再利用MatLAB解析读取后的数据。MatLAB的代码参考了以下这篇链接: -/导出CCS3.3数据及使用matlab处理的方法.md at master dailai/- GitHub 高版本的CCS&#xff…

GitHub访问问题与 Steam++下载及使用(适合小白)

前言 📜 “ 作者 久绊A ” 专注记录自己所整理的Java、web、sql等,IT技术干货、学习经验、面试资料、刷题记录,以及遇到的问题和解决方案,记录自己成长的点滴 ​ 目录 前言 一、Steam的介绍 1、大概介绍 2、详细介绍 二、Ste…

Unity与Android交互(双端通信)

前言 最近小编开始做关于手部康复的项目,需要Android集成Unity,以Android为主,Unity为辅的开发;上一篇给大家分享了Unity嵌入Android的操作过程,所以今天想给大家分享一下双端通信的知识; 一. Android与Un…