改进深度学习网络的几个思路

news2024/9/26 3:23:40

由于要优化网络,老师给提供的几个思路:

在这里插入图片描述

个人学习后的几个认知:

1.联级特征融合模块

主要用于残差网络最后的残差块融合上

在这里插入图片描述

其中 R5 是经过 Res5 通过 3×3 的卷积获得的特征图,该特征图保持空间分辨率不变,并将通道的数量变成256

Res3、Res4、Res5为残差神经网络的几个残差块

2.GCN全局卷积网络(Global Convolutional Network)

  1. 问题提出

当前网络的设置倾向于使用小尺寸滤波器,在相同的计算代价下效果与大核的效果相同,但是后者在同时处理分类和定位任务时非常关键。
分类和定位任务“天生”矛盾,对于分类任务来说,其要求网络具有不变性,即在各种变化和旋转之后,类别仍然一致;对于定位任务则相反,要求其对变换敏感。

  1. 解决方案

为了克服上面提到的问题,提出了遵循下面两个准则的Global Convolutional Network(GCN)

  • 对于分类任务:使用较大尺寸的核函数使得特征图和逐像素点分类器之间能够建立密集连接
  • 对于定位任务:使用全卷积,剔除全连接和全局池化
    具体地:
  • 为了使全局卷积便于执行,文中采用对称可分离的大滤波器来减少参数并降低计算代价;
  • 设计了边界精细模块集成到网络中,精细化物体边界,并能够端到端的训练;
    基于此,论文的主要贡献在于:
  • 提出全局卷积网络。减缓定位任务和分类任务的矛盾
  • 提出边界精细模块使得物体边界处的定位更加精细
  1. 网络架构

3.1 GCN:Global Convolutional Network

对于分类任务,模型需要抽取图像深层的特征(小尺寸的特征图),空间维度上比较粗糙,但能够使分类器和特征图通过全连接层建立密集连接;而对于定位任务,模型需要尽可能大的特征图来编码空间信息。当前的语义分割模型都着重于后者,使得分类器可能难以捕获某些关键的特征从而影响分类,出现下面的问题:图像尺寸变大后感受区域不能覆盖整个物体:

在这里插入图片描述

3.2 Boundary RefineMent Block

该模块设计为残差模块,具体如下图所示:

在这里插入图片描述

全局卷积网络,搜到的东西不多,就一篇,和BR出自同一篇文章

https://zhuanlan.zhihu.com/p/51670413

https://zhuanlan.zhihu.com/p/41077177

3.GCN(图卷积)

https://distill.pub/2021/gnn-intro/

4.多尺度输入

2014年在《Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition》,这篇paper主要的创新点在于提出了空间金字塔池化。

提出的原因:

在SPP提出之前,深度学习网络主要是以R-CNN为主,它有两大缺点:
1、通常需要输入固定大小的图片来进行训练和测试。
对于大小不一的图片,需要经过裁剪,或者缩放等一系列操作,将其变为统一的尺寸。但是这样往往会降低识别检测的精度。
2、计算量较大,严重影响速度
R-CNN预设1000~2000个候选区域 (采用Selective Search 方法),并分别在每个候选区域进行特征提取。这个想想就害怕,因为图片上有些区域会被重复采样多次。

具体原理:

现在从左到右来看:
蓝色的图1——我们把一张完整的图片,分成了16个块,也就是每个块的大小就是(w/4,h/4);
绿色的图2,划分了4个块,每个块的大小就是(w/2,h/2);
黑色的图3,把整张图片作为了一个块,也就是块的大小为(w,h)
空间金字塔最大池化的过程,其实就是从这21个图片块中,分别计算每个块的最大值(局部max-pooling)。通过SPP,我们就把一张任意大小的图片转换成了一个固定大小的21维特征(当然你可以设计其它维数的输出,增加金字塔的层数,或者改变划分网格的大小)。上面的三种不同刻度的划分,每一种刻度我们称之为:金字塔的一层,每一个图片块大小我们称之为:windows size了。如果你希望,金字塔的某一层输出n*n个特征,那么你就要用windows size大小为:(w/n,h/n)进行池化了。

解决的问题:

1、多尺度输入
当我们有很多层网络的时候,当网络输入的是一张任意大小的图片,这个时候我们可以一直进行卷积、池化,直到网络的倒数几层的时候,也就是我们即将与全连接层连接的时候,就要使用金字塔池化,使得任意大小的特征图都能够转换成固定大小的特征向量,这就是空间金字塔池化的奥义(多尺度特征提取出固定大小的特征向量)。
2、计算量的减少
存在spp网络的神经网络(如衍生出了之后的fast R-CNN)虽然也需要预设1000~2000个候选区域,但只需要对每张图片进行一次采样特征提取,再由特征图来确定每个候选区域的特征图,因此大大减小了计算量。

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

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

相关文章

dnmp运行时404报错

dnmp运行时404报错 问题截图: dnmp简介 M1芯片(Arm CPU) 环境中搭建PHPNGINXMYSQL的利器,docker容器管理当前使用的软件,可以简单安装软件和扩展。 localhost.conf 原始文件如下: server {listen 8…

21.5 CSS 网页布局方式

网页布局方式 网页布局方式: 是指浏览器对网页中的元素进行排版的方法.常见的网页布局方式包括: * 1. 标准流(文档流/普通流)布局: 这是浏览器默认的排版方式.元素按照其在文档中的位置依次排列, 可以使用CSS的盒模型属性进行水平和垂直布局.* 2. 浮动布局: 通过设置元素的fl…

uniapp项目实践总结(十二)封装通用请求上传以及下载方法

导语:在日常开发过程中,前端经常要和后端进行接口联调,获取并且渲染数据到页面中,接下来就总结一下 uniapp 中获取请求、文件下载和上传的一些方法。 目录 原理分析方法实现实战演练案例展示 原理分析 主要是使用uni.request方…

基于YOLOV8模型的海上船只目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOV8模型的海上船只目标检测系统用于日常生活中检测与定位海上船只目标(散装货船(bulk cargo carrier)、集装箱船(container ship)、渔船(fishing boat)、普通货船&#…

【嵌入式开发 Linux 常用命令系列 7.1 -- awk 过滤列中含有特定字符的行】

文章目录 awk 过滤列中字符串 上篇文章:嵌入式开发 Linux 常用命令系列 7 – awk 常用方法详细介绍 awk 过滤列中字符串 cat test.log | awk -F $31 {print $0}说明: -F 以什么分隔列,这里是以空格为分隔符;$3代表第3列;$3…

生存游戏手游推荐,适合长期玩的生存类手游

今天小编为大家带来了生存游戏手游推荐,适合长期玩的生存类手游。许多朋友现在喜欢冒险,想体验荒野生活,但在现实中,由于各种原因可能实现不了。游戏中的生存可以满足玩家对狂野生存的幻想,让现实中未实现的梦想在虚拟…

MyBatis-Plus学习笔记总结

一、查询 构造器分为QueryWrapper和LambdaQueryWrapper 创建实体类User package com.system.mybatisplus.model;import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.…

华为云云服务器评测|在云耀云服务器L实例上部署battle-city坦克大战小游戏

华为云云服务器评测|在云耀云服务器L实例上部署battle-city坦克大战小游戏 一、前言1.1 云耀云服务器L实例简介1.2 battle-city坦克大战小游戏简介 二、本次实践介绍2.1 本次实践简介2.2 本次环境规划 三、购买云耀云服务器L实例3.1 登录华为云3.2 购买云耀云服务器…

八种十倍提升API性能的方式

提起API,作为程序员来说并不陌生,很多程序员的大部分工作都是围绕着它, 然而,有些内容被大家忽略,API的性能会直接影响产品的用户体验,比如,一个视频软件,播放1s后需要加载5s&#x…

Android 状态栏显示运营商名称

Android 原生设计中在锁屏界面会显示运营商名称,用户界面中,大概是基于 icon 数量长度显示考虑,对运营商名称不作显示。但是国内基本都加上运营商名称。对图标显示长度优化基本都是:缩小运营商字体、限制字数长度、信号图标压缩上…

SAM论文翻译

文章目录 Abstract1、Introduction2、Related Work3、Methodology3.1、Semantic Graph3.2、Semantic Aware Module3.3、Decoder3.4、Loss Function 4、Experiments4.1、Datasets4.2、Implementation Details4.3、Evaluation Protocol4.4、Comparison with State-of-the-Art 论文…

SpringBoot粗浅分析

应用分析 1、依赖管理机制 在springBoot项目中,导入starter-web所有想换依赖都会被导入,甚至不用去规定它们的版本号。它是根据Maven的依赖传递原则来设置,只需要导入场景启动器,场景启动器自动把这个场景的所有核心依赖全部导入…

对极几何与三角化求3D空间坐标

一&#xff0c;使用对极几何约束求R,T 第一步&#xff1a;特征匹配。提取出有效的匹配点 void find_feature_matches(const Mat &img_1, const Mat &img_2,std::vector<KeyPoint> &keypoints_1,std::vector<KeyPoint> &keypoints_2,std::vector&l…

管理类联考——数学——汇总篇——知识点突破——数据分析——计数原理——减法原理除法原理

减法原理 正面难则反着做(“ − - −”号) 【思路】当出现“至少、至多”、“否定用语"等正面较难分类的题目&#xff0c;可以采用反面进行求解&#xff0c;注意部分反面的技巧以及“且、或"的反面用法。 除法原理 看到相同&#xff0c;定序用除法消序( “ &quo…

JavaScript中点号运算符与方括号运算符

这篇文章将介绍如何在对象中获取数据、修改数据。在JavaScript中&#xff0c;点号运算符和方括号运算符都可以用于访问对象的属性。 我们还是使用上节课的代码来演示 const ITshareArray { firstname: “张三”, secondname: “二愣子”, age: 2033-1997, job: “程序员”, fr…

自动化运维——ansible (五十二) (01)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 一、概述 1.1 为什么要用自动化运维软件 1.2 自动化运维 1.3 自动化运维要注意的方面 1.4 自动化运维主要关注的方面 1.5 常见的开源自动化运维软件 1.6 自动化运维软件…

Debian11安装MySQL8.0,链接Navicat

图文小白教程 1 下载安装MySQL1.1 从MySQL官网下载安装文件1.2 安装MySQL1.3 登录MySQL 2 配置Navicat远程访问2.1 修改配置2.2 Navicat 连接 end: 卸载 MySQL 记录于2023年9月&#xff0c;Debian11 、 MySQL 8.0.34 1 下载安装MySQL 1.1 从MySQL官网下载安装文件 打开 MySQ…

Unity 之 利用数组来管理资源

文章目录 在Unity中&#xff0c;资源数组&#xff08;Resource Arrays&#xff09;不是Unity的标准概念。然而&#xff0c;您可能在特定上下文中使用数组来管理资源或游戏对象。我将解释如何在Unity中使用数组来管理资源。 资源管理&#xff1a; 在Unity中&#xff0c;资源通常…

9.7 C高级day2 作业

#!/bin/bash mkdir ~/dir mkdir ~/dir/dir1 mkdir ~/dir/dir2 cp ./* ~/dir/dir1 -r cp ./*.sh ~/dir/dir2 cd ~/dir tar -cJf dir2.tar.xz dir2 mv dir2.tar.xz dir1 cd tar -xJf dir/dir1/dir2.tar.xz -C dir/dir1 tree ~/dir

阿里云2核2G云服务器租用价格表_一年费用_1个月和1小时收费

阿里云2核2G服务器多少钱一年&#xff1f;108元一年&#xff0c;折合9元一个月&#xff0c;配置为2核CPU、2G内存、3M带宽、50GB高效云盘的轻量应用服务器&#xff0c;如果是云服务器ECS&#xff0c;2核2G配置可以选择ECS通用算力型u1实例、突发性能实例t6和t5实例、密集计算型…