这么受欢迎的Transform到底解决了什么问题?

文章目录

  • 这么受欢迎的Transform到底解决了什么问题?
    • 背景
    • 基于卷积神经网络(CNN)
    • 基于注意力机制的神经网络
    • 大语言模型ChatGPT
    • 总结
    • 参考

这么受欢迎的Transform到底解决了什么问题?

背景

在过去的十几年中,深度卷积神经网络越来越成熟,使机器视觉任务得到了空前的关注和发展,有效提高了图像信息挖掘的效率与精度,能够智能化识别、自动化分析输入的图像数据。然而,随着不断地应用和改进,卷积神经网络固有的缺点越来越明显,即每个卷积只考虑局部区域,无法对长距离像素依赖进行建模。

基于卷积神经网络(CNN)

为解决这一缺点很多学者提出了不同的方法。2014年,何恺明等人提出空间金字塔池化(Spatial Pyramid Pooling),将输入特征图分为多个尺度,然后,对每个尺度进行池化操作,得到多个不同尺度的特征图[1]。2015年,何恺明等人提出残差网络,即通过显式地引入跨层连接来解决深层网络训练中的退化问题,有效地减轻了梯度消失和梯度爆炸的问题,使得可以训练更深的网络适应更复杂的任务[2]。2016年,Huang等人提出DenseNet模型,是建立在后面层与前面所有层的密集连接(Dense Connection),另外,通过特征在channel维度上的连接来实现特征重用(Feature Reuse)。DenseNet缓解了梯度消失问题,加强了特征传播,鼓励了特征重用,并大大减少了参数的数量[3]。2021年,Liu等人提出空洞卷积,该方法在降低了图像尺寸的同时增大感受野而且无需引入额外的计算,但是会导致细粒度信息严重丢失,只能应用于大尺寸图像处理或大目标检测[4]。
虽然通过增加网络深度、图像数据通道、多尺度提取图像特征以及增大感受野等方法能够学习到长距离数据之间依赖关系,但很大程度上增加了网络模型的复杂性,甚至会将丢失部分数据作为代价。

基于注意力机制的神经网络

近几年,随着Transformer应用在视觉领域,不仅提升了网络模型提取图像特征的性能,而且基于Transformer架构的自注意力机制能够编码上下文的长期依赖关系并进行学习,弥补了卷积神经架构的不足。目前,基于Transformer的网络模型已经被广泛应用于图像分类、分割以及目标检测等视觉领域。2019年,Dosovitskiy等人提出ViT模型将图像数据转化为序列数据进行视觉任务分类,第一次将Transformer应用在图像领域,具有较大的开创性意义并在实验中展现了很好的效果[5];同时,Wang等人也提出基于高度和宽度的轴向注意力,减少计算亲和度的同时更好的捕获像素之间长距离依赖关系[6];同年,Huang等人提出克里斯交叉网络(CCNet),即使用交叉的注意模块,捕获长距离依赖中的上下文信息[7]。还有最为人们所熟知的就是Swin Transformer模型,是Liu等人[8]在2021年提出的一种基于移动窗口注意力机制的深度学习模型。它将图像划分为固定大小的非重叠窗口,并在每个窗口内进行注意力计算,这种方法减少了计算和内存开销,并且保持了全局上下文的感知能力。同时,Swin Transformer还引入了一种跨窗口的注意力机制,通过在窗口之间进行信息交流,增强了模型的表达能力。虽然,基于Transformer的网络模型能够很好的提取图像数据的特征,但是,需要大规模的数据集来进行训练且计算量之大对硬件要求高。
在这里插入图片描述

Swin Transform的网络模型图

大语言模型ChatGPT

ChatGPT作为人工智能领域在自然语言处理技术上打响的一枪,随着ChatGPT4.0的免费使用,更是引起广泛的关注。随着ChatGPT模型的不断优化,已经能够处理复杂的语言问题,同时还具有更好地上下文理解和自然度,这得益于其底层的Transform。
曾今就有人说,如果大语言模型没有理解上下文意思,怎么可能给出您想要的答案。很明显,如今看来,ChatGPT不仅能够理解语言,而且能够给出答案。随着国内更多的“生成式人工智能”的涌现,也促使国内很多大厂、研究所以及高校老师和学生跟风学习,以便将其赋能于其他领域。
ChatGPT的出现,掀起了“生成式人工智能”的浪花,随着而来的是Sora被OpenAI称为“世界模拟器”,影响这各行各业。
图片

总结

目前有很多注意力机制的变形体,轴注意力机制、交叉注意力机制、窗口注意力机制、十字注意力机制以及基于超像素的注意力机制。其中,最大的瓶颈就是,使用注意力机制计算会使模型参数成几何级增加,使用单一注意力机制又不能很好的获得整体特征,难免会丧失长距离或像素块间的依赖关系,导致很难应用在一些具有特殊性的图像而言。
随着ChatGPT的应用,我们应该认识到对ChatGPT提出的问题(咒语或提示词)十分关键,高质量的标准化,规范化提示词,能够更好的让机器理解,并得到想要的答案,否则机器回答的可能牛唇不对马嘴。未来,如何提出好的问题(咒语),也是人们在利用人工智能时的重点。与此同时,从侧面也反映出只有高质量的标准化,规范化以及流水线式方法,才能更好的引领发展。

参考

[1]He, Kaiming et al. “Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition.” IEEE Transactions on Pattern Analysis and Machine Intelligence 37 (2014): 1904-1916.
[2]He, Kaiming et al. “Deep Residual Learning for Image Recognition.” 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (2015): 770-778.
[3]Huang, Gao et al. “Densely Connected Convolutional Networks.” 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (2016): 2261-2269.
[4]Liu, Jie et al. “Inception Convolution with Efficient Dilation Search.” 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2020): 11481-11490.
[5]Dosovitskiy, A., Beyer, L., Kolesnikov, A., Weissenborn, D., Zhai, X., Unterthiner,T., Dehghani, M., Minderer, M., Heigold, G., Gelly, S., et al.: An image is worth 16x16 words: Transformers for image recognition at scale. arXiv preprint arXiv:2010.11929 (2020)
[6]Wang, Xiaolong , et al. “Non-local Neural Networks.” (2017).
[7]Huang, Zilong et al. “CCNet: Criss-Cross Attention for Semantic Segmentation.” 2019 IEEE/CVF International Conference on Computer Vision (ICCV) (2018): 603-612.
[8]Liu, Ze et al. “Swin Transformer: Hierarchical Vision Transformer using Shifted Windows.” 2021 IEEE/CVF International Conference on Computer Vision (ICCV) (2021): 9992-10002.

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

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

相关文章

MT3032 环形喂猪

思路: 1.输出Error的情况:m>n/2 2.首先将饥饿值放到大根堆中,先喂最饿的猪i,则把i的饥饿值加到sum中;但也又可能喂i-1和i1,所以此时需要反悔:把i取出来的同时,将a[i-1]a[i1]-a…

vue3 element-plus表单form验证规则设置的require:true无效

必填项为空校验&#xff0c;valid第一次为true&#xff0c;再点值为false 引入FormInstance &#xff0c;校验代码改为以下&#xff1a; import { ElMessage, FormInstance } from element-plus const ruleFormRef ref<FormInstance>()const submitForm async (formEl:…

ES6-自学01

调用方法读取文件&#xff1a;如果失败就throw抛出err,成功则抛出data 2.使用promise封装&#xff0c;如果失败就改变状态为 reject(err) 如果成功就 resolve(返回成功的值) &#xff0c;然后then,就可以获取返回的值&#xff0c;值toString&#xff08;&#xff09;方法来把…

【SpringBoot 项目 加密】你会对Spring项目的接口进行加密吗?

这里写目录标题 加密/加盐加密介绍加密算法分类加密思路 测试类写加密/解密工具类修改数据库密码修改登录接口 加密/加盐 加密介绍 在MySQL数据库中, 我们常常需要对密码, ⾝份证号, ⼿机号等敏感信息进⾏加密, 以保证数据的安全性。如果使⽤明⽂存储, 当⿊客⼊侵了数据库时,…

添砖Java之路其一——Java跨平台原理,JRE与JDK(为什么要安装)。

目录 前言&#xff1a; Java跨平台工作原理简单的理解&#xff1a; JRE与JDK&#xff1a; 前言&#xff1a; 最近又开始学Java了&#xff0c;所以又开一个板块来记录我Java的笔记。 Java跨平台工作原理简单的理解&#xff1a; 简单概括&#xff1a;简单来说Java跨平台原理…

I.MX6U NXP参考手册中“IPG“的含义

前言&#xff1a; 本文记录了在学习正点原子 I.MX6UAPLHA/Mini开发板中&#xff0c;在NXP参考手册中遇到的缩写术语 "IPG" 的含义。 引用&#xff1a; Solved: Whats IP Bus Means - NXP Community Solved: IPG/PER clocks - NXP Community 正文&#xff1a; 1. …

BS-Diff | 扩散模型在骨抑制任务上的首次登场!

摘要 胸部 X 射线&#xff08;CXR&#xff09;是肺部筛查中常用的低剂量方式。然而&#xff0c;由于大约 75% 的肺部区域与骨骼重叠&#xff0c;这反过来又阻碍了疾病的检测和诊断&#xff0c;因此 CXR 的功效受到了一定程度的影响。作为一种补救措施&#xff0c;骨抑制技术已…

Python程序中温度更新出现振荡问题的分析和解决方案

在处理温度更新出现振荡问题时&#xff0c;可以考虑以下分析和解决方案&#xff1a;检查温度更新算法是否正确&#xff0c;可能存在错误导致振荡。检查温度更新的步长&#xff08;时间步长&#xff09;是否合适&#xff0c;步长过大可能导致振荡。检查系统动力学模型是否准确&a…

北交所佣金费率标准是多少?北交所相关信息科普

北交所的佣金费率并非固定不变&#xff0c;而是可以根据投资者的需求和证券公司的政策进行调整。目前北交所的佣金费率最低是万分之二。 一般来说&#xff0c;北交所的佣金费率默认在万分之三左右&#xff0c;但这不是固定的费率。根据证券公司的不同&#xff0c;佣金费率可以…

01-基本概念- 索引,文档和 REST API

# kibana_sample_data_ecommerce 为es 索引#查看索引相关信息 GET kibana_sample_data_ecommerce#查看索引的文档总数 GET kibana_sample_data_ecommerce/_count#查看前10条文档&#xff0c;了解文档格式 POST kibana_sample_data_ecommerce/_search { }#_cat indices API #查看…

【翻译】Processing系列|(四)用 Android Studio 从 0 到 1 进行 Processing 安卓开发

原文链接&#xff1a;Processing for Android Developing with Android Studio 朋友跟我说官方教程里也写了该怎么用 Android Studio 开发&#xff0c;并且亲测可行。这种方式确实能开发出结构更加清晰、额外组件更加少的程序&#xff0c;比上一篇文章中直接克隆 Processing-An…

社交媒体数据恢复:多闪

社交软件多闪是一款深受用户喜爱的社交应用&#xff0c;用于与朋友、家人保持联系。有时&#xff0c;多闪软件的聊天记录可能会丢失或被删除&#xff0c;这时用户需要进行数据恢复。本文将详细介绍多闪软件聊天记录的恢复过程。 一、多闪软件聊天记录恢复方法 从手机备份中恢…

Docker 容器中 PHP 使用 Curl 访问本地服务异常

在 Docker 环境中&#xff0c;将应用程序和服务容器化是常见的做法&#xff0c;但是有时会遇到一些网络通信方面的问题。其中一个常见的问题是 PHP 容器无法使用 Curl 访问本地服务&#xff0c;这可能导致开发和调试过程中的困扰。 问题描述 通常情况下&#xff0c;我们会将 …

PCIE协议-1

1. PCIe结构拓扑 一个结构由点对点的链路组成&#xff0c;这些链路将一组组件互相连接 - 图1-2展示了一个结构拓扑示例。该图展示了一个称为层级结构的单一结构实例&#xff0c;由一个根复合体&#xff08;Root Complex, RC&#xff09;、多个端点&#xff08;I/O设备&#xf…

Failed to build flash-attn:ERROR: Could not build wheels for flash-attn

安装 FlashAttention 的时候遇到报错&#xff1a; Failed to build flash-attn ERROR: Could not build wheels for flash-attn, which is required to install pyproject.toml-based projects可能是安装的版本与环境存在冲突吧&#xff0c;我的环境是&#xff1a; python 3.1…

vector、heap数组、stack数组访问性能验证

测试目的 本次测试旨在比较不同数据结构&#xff08;vector、数组&#xff09;以及不同访问方法&#xff08;[]、at()、offset&#xff09;在性能上的差异&#xff0c;从而为开发者提供在特定情境下做出最佳选择的依据。 测试代码 测试网址:Quick C Benchmarks 使用GCC9.5 …

网盘应用:桌面端界面欣赏,这个赛道容不下小玩家。

网盘&#xff08;Cloud Storage&#xff09;是一种云存储服务&#xff0c;允许用户在互联网上存储、管理和共享文件。它提供了一个在线的虚拟硬盘&#xff0c;用户可以通过网络将文件上传到云端&#xff0c;并随时随地访问和管理这些文件。 阿里云盘

王道数据结构个人向笔记-第二章(线性表)

文章目录 2.1 线性表的定义和基本操作2.2 顺序表2.2.1 顺序表的定义2.2.2 顺序表的插入、删除&#xff08;实现是基于静态分配&#xff09;2.2.3 顺序表的查找 2.3 链表2.3.1 单链表的定义2.3.2 单链表的插入删除2.3.3 单链表的查找2.3.4 单链表的建立2.3.4 双链表2.3.5 循环链…

React18+TS+NestJS+GraphQL 全栈开发在线教育平台

高质量平台级应用流行全栈技术实用职场技巧通用面试策略React18TSNestJSGraphQL 全栈开发在线教育平台&#xff08;完结&#xff09; 黑石老师&#xff0c;大厂技术专家&#xff0c;深耕前后端十多年。发现很多的前端同学都面临如下的职业困扰&#xff1a;没有能拿的出手的面试…

机器人系统ros2-开发实践07-将机器人的状态广播到 tf2(Python)

上个教程将静态坐标系广播到 tf2&#xff0c;基于这个基础原理这个教程将演示机器人的点位状态发布到tf2 1. 写入广播节点 我们首先创建源文件。转到learning_tf2_py我们在上一教程中创建的包。在src/learning_tf2_py/learning_tf2_py目录中输入以下命令来下载示例广播示例代码…