YOLOv8改进,YOLOv8替换主干网络为VanillaNet( CVPR 2023 华为提出的全新轻量化架构),大幅度涨点


在这里插入图片描述
改进前训练结果:
在这里插入图片描述
改进后训练结果:

在这里插入图片描述

摘要

基础模型的核心理念是“更多即不同”,这一理念在计算机视觉和自然语言处理领域取得了惊人的成功。然而,变压器模型的优化挑战和固有复杂性呼唤一种向简化转变的范式。在本研究中,引入了VanillaNet,一种拥抱设计优雅的神经网络架构。通过避免高深度、快捷方式和复杂操作如自注意,VanillaNet设计简洁而功能强大。每一层都精心设计为紧凑和简洁,训练后修剪非线性激活函数以恢复原始架构。VanillaNet克服了固有的复杂性挑战,非常适合资源受限的环境。其易于理解和高度简化的架构为高效部署开辟了新可能。广泛的实验表明,VanillaNet在性能上与著名的深度神经网络和视觉变压器相当,展示了极简主义在深度学习中的力量。VanillaNet的这一愿景之旅具有重新定义基础模型格局和挑战现状的巨大潜力,为优雅和高效的模型设计开辟了新路径。

介绍

VanillaNet-6模型的架构,仅由6个卷积层组成,非常容易在任何现代硬件上使用。输入特征的大小在每个阶段都被下采样,而通道数则加倍,这借鉴了经典神经网络如 AlexNet 和 VGGNet 的设计。结构如下图所示:
在这里插入图片描述

模型细节:

VanillaNet 是一种简化设计的神经网络架构,通过避免深度、高度复杂的操作(如自注意力机制)和快捷连接,实现了设计上的简洁优雅。以下是 VanillaNet 的不同版本的架构细节:
在这里插入图片描述

  • stem: 初始卷积层,使用 4×4 的卷积核,输出通道数为 512,步幅为 4。
  • stage1: 第一阶段,特征图大小为 56×56,包括一个 1×1 的卷积层,输出通道数为 1024,之后接一个 2×2 的最大池化层。
  • stage2: 第二阶段,特征图大小为 28×28,包括一个 1×1 的卷积层,输出通道数为 2048,之后接一个 2×2 的最大池化层。
  • stage3: 第三阶段,特征图大小为 14×14,包括一个或多个 1×1 的卷积层,输出通道数为 4096,之后接一个 2×2 的最大池化层。层数根据不同版本的 VanillaNet 变化(如 VanillaNet-7 有 1 层,VanillaNet-8 有 2 层,以此类推)。
  • stage4: 第四阶段,特征图大小为 7×7,包括一个 1×1 的卷积层,输出通道数为 4096。
    classifier: 分类器部分,首先是一个 7×7 的平均池化层,然后是一个 1×1 的卷积层,输出通道数为 1000(对应 ImageNet 的 1000 个分类)。
  • 上表中列出了不同版本的 VanillaNet

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

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

相关文章

VSCode好用的插件推荐

1. Chinese 将vscode翻译成简体中文 如果安装了依然是英文,请参考如下方法: ctrlshfitp 2. ESLint 自动检查规范 3. Prettier - Code formatter 可以自动调整代码的缩进、换行和空格,确保代码风格统一。通过配置,Prettier可…

掌握Android开发新趋势:Jetpack与现代架构技术全解析

随着Android开发技术的不断进步,Jetpack和现代架构技术已成为构建高效、可维护应用的关键。本文将为您介绍一套全面的学习资料,包括大纲、PDF文档、源代码以及学习视频,帮助您深入理解Jetpack核心库、架构组件以及现代开发工具。 内容&#…

python贪吃蛇游戏项目源码【免费】

使用Pygame库实现的贪吃蛇游戏。Pygame是一个用于创建视频游戏的Python模块集合,它提供了图形和声音库,使游戏开发变得容易。 初始化设置 屏幕大小 (SCREEN_WIDTH, SCREEN_HEIGHT): 定义了游戏窗口的宽度和高度。方格大小 (SIZE): 定义了游戏中每个小方…

简单水印通过python去除

简单水印通过python去除 先看效果,如果效果不是你需要的就可以不用浪费时间。 注意:这种主要还是对应的文字在水印上方的情况,同时最好不要有渐变水印否则可能最后输出的图片的水印还会有所残留,不过还是学习使用,相信…

救生圈检测系统源码分享

救生圈检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Visio…

基于协同过滤算法的商品推荐系统

系统展示 用户前台界面 管理员后台界面 商家后台界面 系统背景 随着互联网技术的飞速发展,用户每天面临的信息量呈爆炸式增长,如何有效地筛选出用户感兴趣的内容成为一大挑战。在此背景下,基于协同过滤算法的商品推荐系统应运而生。该系统通过…

九章云极DataCanvas公司荣获2024年服贸会“科技创新服务示范案例”

9月15日,2024年中国国际服务贸易交易会(服贸会)示范案例交流会暨颁奖典礼在北京国家会议中心举行,九章云极DataCanvas 公司自研的DataCanvas Alaya NeW智算操作系统凭借卓越的AI创新实力、前瞻性的市场布局以及突破性的技术革新成…

Golang | Leetcode Golang题解之第423题从英文中重建数字

题目: 题解: func originalDigits(s string) string {c : map[rune]int{}for _, ch : range s {c[ch]}cnt : [10]int{}cnt[0] c[z]cnt[2] c[w]cnt[4] c[u]cnt[6] c[x]cnt[8] c[g]cnt[3] c[h] - cnt[8]cnt[5] c[f] - cnt[4]cnt[7] c[s] - cnt[6]…

机器翻译之Bahdanau注意力机制在Seq2Seq中的应用

目录 1.创建 添加了Bahdanau的decoder 2. 训练 3.定义评估函数BLEU 4.预测 5.知识点个人理解 1.创建 添加了Bahdanau的decoder import torch from torch import nn import dltools#定义注意力解码器基类 class AttentionDecoder(dltools.Decoder): #继承dltools.Decoder写…

LabVIEW提高开发效率技巧----使用事件结构优化用户界面响应

事件结构(Event Structure) 是 LabVIEW 中用于处理用户界面事件的强大工具。通过事件驱动的编程方式,程序可以在用户操作时动态执行特定代码,而不是通过轮询(Polling)的方式不断检查界面控件状态。这种方式…

【学习笔记】 使用AD24完成相同电路的自动布线布局(相同模块布局布线ROOM布线快速克隆)

【学习笔记】 使用AD24完成相同电路的自动布线布局 一、适用基本条件二、基于ROOM的自动布局/布线的方法三、可能出现的报错四、ROOM自动布局的一些优点和缺点 当面对多个相同电路模块时,使用 ROOM 可以一次性对一个模块进行精心布局,然后将该布局快速复…

粒子向上持续瀑布动画效果(直接粘贴到记事本改html即可)

代码&#xff1a; 根据个人喜好修改即可 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>宽粒子向上…

正则表达式匹配整数与浮点数失败与解决方案

正则表达式匹配整数与浮点数失败与解决方案 问题描述问题分析解决方案总结 问题描述 在处理数据的时候需要提取文本内整数与浮点数&#xff0c;这个时候想到使用正则表达式&#xff0c;咨询百度文心一言给出以下方案及参考代码 import re text "我有100元&#xff0c;…

解决mac下 Android Studio gradle 下载很慢,如何手动配置

抓住人生中的一分一秒&#xff0c;胜过虚度中的一月一年! 小做个动图开篇引题 前言 平时我们clone git 上项目&#xff0c;项目对应gradle版本本地没有&#xff0c;ide编译会自动下载&#xff0c;但是超级慢可能还下载失败&#xff0c;下面讲解下此问题如 如下图所示&#xff…

ML 系列:机器学习和深度学习的深层次总结(04)多元线性回归 (MLR)

图 1.多元线性回归与简单线性回归 一、说明 线性回归从一维推广到多维&#xff0c;这与单变量线性回归有很多不同&#xff0c;情况更加复杂&#xff0c;而在梯度优化也需要改成向量梯度&#xff0c;同时&#xff0c;数据预处理也成了必要步骤。 二、综述 多元线性回归是简单线性…

【AI算法岗面试八股面经【超全整理】——深度学习】

AI算法岗面试八股面经【超全整理】 概率论【AI算法岗面试八股面经【超全整理】——概率论】信息论【AI算法岗面试八股面经【超全整理】——信息论】机器学习【AI算法岗面试八股面经【超全整理】——机器学习】深度学习【AI算法岗面试八股面经【超全整理】——深度学习】CVNLP …

【RabbitMQ】⾼级特性

RabbitMQ ⾼级特性 1. 消息确认1.1 消息确认机制1.2 代码示例 2. 持久化2.1 交换机持久化2.2 队列持久化2.3 消息持久化 3. 发送⽅确认3.1 confirm确认模式3.2 return退回模式3.3 问题: 如何保证RabbitMQ消息的可靠传输? 4. 重试机制5. TTL5.1 设置消息的TTL5.2 设置队列的TTL…

vue3集成google第三方登陆

网上资源很多&#xff0c;但乱七八糟&#xff0c;踩坑几小时后&#xff0c;发现下面的方式没问题。 npm install vue3-google-login 插件文档&#xff1a;vue3-google-登录 (devbaji.github.io) 修改main.js import ./assets/main.css import { createApp } from vue impor…

医院伤员消费点餐限制———未来之窗行业应用跨平台架构

一、点餐上限 医院点餐上限具有以下几方面的意义&#xff1a; 1. 控制成本 - 有助于医院合理规划餐饮预算&#xff0c;避免食物的过度供应造成浪费&#xff0c;从而降低餐饮成本。 2. 保障饮食均衡 - 防止患者或陪护人员过度点餐某一类食物&#xff0c;有利于引导合…

【AcWing】873. 欧拉函数

#include<iostream> using namespace std;int main(){int n;cin>>n;while(n--){int x;cin>>x;int resx;for(int i2;i<x/i;i){if(x%i0){//resres*(1-1/i);整数1/i等于0&#xff0c;算不对且会溢出//以下几种都能ac//resres/i*(i-1);i*(1-1/i)i-1&#xff0…