微软发布多模态版ChatGPT!取名“宇宙一代”
文|CoCo酱
Ludwig Wittgenstein曾说过:“我语言的局限,即是我世界的局限”。
大型语言模型(LLM)已成功地作为各种自然语言任务的通用接口,只要我们能够将输入和输出转换为文本,就可以将基于LLM的接口适应任务。尽管在自然语言处理中取得了成功的应用,但仍然难以将LLM用于处理多模态数据,例如图像和音频。
本论文提出了Kosmos-1,一种多模态大语言模型(MLLM),Kosmos-1可以感知常见模态,遵循指令和上下文学习。其目标是将视觉感知与LLM对齐,以便模型能够“看”和“说”。
Kosmos和Cosmos同音,Cosmos是“宇宙”。
多模态感知能力对于LLMs至关重要,因为它可以使LLMs获得文本描述之外的常识知识,解锁多模态输入大大扩展了语言模型的应用范围,涉及多模态机器学习,文档智能和机器人等高价值领域。
概括
作者使用大规模的多模态语料库对KOSMOS-1进行了从零开始的训练,包括任意交错的文本和图像、图像标题对和文本数据。作者在各种任务上进行了评估,包括零样本、少样本和多模态思维链提示,而且不需要任何梯度更新或微调。
除了各种自然语言任务外,KOSMOS-1模型本身还可以处理广泛的感知密集型任务,包括视觉对话、视觉解释、视觉问答、图像标注、简单数学方程等,
MLLMs具备感知能力后,可以直接从屏幕读取信息或从收据中提取数字,实现多个API的统一。
看题作答,轻松搞定~不仅能“看懂”图像,还能对答如流,并且能进行一定的数学计算。
甚至,看图进行连续对话功能也实现了。
作者还发现,MLLMs可以从跨模态转移中受益,即从语言到多模态和从多模态到语言的知识转移。此外,作者还介绍了一个Raven IQ测试数据集,用于诊断MLLMs的非语言推理能力。
Multimodal Large Language Model (MLLM)
KKOSMOS-1是基于Transformer语言模型,通过自回归方式学习生成文本。除了文本外,其他模态转成embedding后喂给模型。该模型在多模态语料库上进行训练,包括单模态数据、交叉模态配对数据。
该框架可以灵活处理各种数据类型,只要我们可以将输入表示为向量即可。MLLMs完美地融合了两大优势:1、语言模型自然地继承了上下文学习和指令跟随的能力。2、通过在多模态语料库上训练,补齐了语言模型的多模态感知能力。
MLLMs作为通用接口,可以处理自然语言和多模态输入。对于输入格式,我们使用 <s>和</s> 来表示序列的开始和结束。特殊标记<image>和</image>表示图像嵌入的开始和结束。例如,“<s> document </s>”是一个文本输入,“<s> paragraph <image> Image Embedding </image> paragraph </s>”是一个图像文本输入。获得输入序列后,将它们输入到Transfomer的解码器中,使用Softmax分类器来生成下一个预测。
我们使用MAGNETO(Transformer的变体)作为模型的主要结构,因为它训练稳定且非常适合多模态场景,它为每个子层引入额外的layernorm,且理论上拥有更好的初始化方法。为了更好地进行长序列建模,采用了名为 XPOS 的相对位置编码技术。该方法能够更好地适应不同长度的训练和测试序列,并且能够优化注意力分辨率,从而能够更精确地捕捉位置信息。
训练数据
训练数据集包括文本语料库、图像标题对和交错的图像和文本数据。
文本语料库我们用The Pile和Common Crawl (CC)训练我们的模型。The Pile是一个用于训练大规模语言模型的大型英文文本数据集,排除了来自GitHub、arXiv、Stack Exchange和PubMed Central的数据。还使用了Common Crawl快照(2020-50和2021-04)数据集、CC-Stories和RealNews数据集。已经去重并且过滤掉了下游任务数据。
图像标题对数据集,包括英文LAION-2B、LAION-400M、COYO-700M 和Conceptual Captions。图像文本数据是从Common Crawl快照中收集的多模态数据,这是一个公开可用的网页存档,从原始2B网页中选择约71M网页,从网页的HTML中提取文本和图像。对于每个文档,我们将图像的数量限制为五个,以减少噪声和冗余。
模型细节
KKOSMOS-1模型有24层,32个注意力头,Hidden size是2048,FFN隐层是8192维,大约有1.3B个参数,使用Magneto的初始化。为了更快的收敛,图像编码模型用CLIP ViT-L/14模型。我们在训练期间冻结除最后一层外的CLIP模型参数。所以KOSMOS-1的总参数数量约为1.6B。
Batchsize大小设置为120万个token(文本语料库500万,图像标题对500万,来自文本图像交错数据200万),训练了300k步,过了约3600亿个token。
为了更好地将KOSMOS-1与人类指令对齐,我们进行语言指令微调。具体来说,我们继续使用(指令,输入和输出)格式的指令数据对模型进行训练。指令数据是纯语言的,与训练语料混合在一起。将Unnatural Instructions和FLANv2 结合起来作为我们的指令数据集。Unnatural Instructions是使用大型语言模型为各种自然语言处理任务生成指令的数据集,有68,478个指令输入输出三元组。FLANv2是一系列涵盖各种类型语言理解任务的数据集,例如阅读理解,常识推理和封闭式问答。我们从FLANv2中随机选择54k个指令示例来增强我们的指令数据集。
实验效果
我们评估了KOSMOS-1在各种类型的任务上的表现,包括:
• 语言任务:语言理解、语言生成、无OCR文本分类
• 跨模态转移:常识推理
• 非语言推理 :智商测试
• 视觉-语言任务:图像标注、视觉问答、网页问答
• 视觉任务:zero-shot图像分类、带描述的zero-shot图像分类
非语言推理能力测试
非语言推理能力通常反映了个人的智商 (IQ)。模型在没有明确微调的情况下进行零样本非语言推理。RavenIQ测试类似于语言模型的上下文学习,区别在于上下文是非语言的还是语言的。为了推断出答案,模型必须识别抽象概念并识别给定图像的潜在模式。因此,IQ任务是衡量非语言情境学习能力的一个很好的测试平台。图4显示了一个示例,给定在 3 × 3 矩阵中呈现的八张图像,任务是从六个相似的候选者中识别出正确图形。
多模态思维链提示测试
思维链是模型发展到一定智能水平才突现出的高级能力,思维链提示允许大型语言模型生成一系列推理步骤并将复杂问题分解为多个子步骤解决。受思维链提示的启发,我们研究了KOSMOS-1的多模态思维链提示能力。
将感知语言任务分解为两个步骤:给定图像,使用提示引导模型生成描述,然后再进行问答。下面一个例子中,如果直接提问,模型给出了错误答案,但如果先提示模型:请描述下图片里的内容,然后再提问就会得到正确答案了。
视觉-语言任务测试
在zero-shot设置下,KOSMOS-1在两个图像标注数据集上取得了显着的效果。k=2,4,8的few-shot设置下的指标
作者还测试了图像分类、视觉问答等多个任务上的模型表现,KOSMOS-1都有显著的提升。具体任务测试有兴趣可以去看下原文。
跨模态迁移
跨模态可转移性允许模型从一种模态(如文本、图像、音频等)中学习,并将知识转移到其他模态。这种技能可以使模型在不同模态下执行各种任务。我们评估了KOSMOS-1在几个基准测试中的跨模型可转移性。
从语言到多模态的转移:仅语言指令调整
为了评估仅用语言指令调整的效果,我们使用了四个数据集进行消融研究:COCO、Flickr30k、VQAv2和VizWiz。这些数据集包括图像标注和视觉问答。评估指标为:COCO/Flickr30k的CIDEr分数和VQAv2/VizWiz的VQA准确性。
实验表明,仅语言指令调整可以显着提高模型在不同模态下的指令跟随能力。结果还表明,我们的模型可以将指令跟随能力从语言转移到其他模态。
从多模态到语言的转移:视觉常识推理
视觉常识推理任务需要理解现实世界中日常物品的属性,如颜色、大小和形状。这些任务对于语言模型来说是具有挑战性的,因为它们可能需要更多有关物体属性的信息,而这些信息在文本中并不容易获取。为了研究视觉常识能力,我们比较了KOSMOS-1和LLM在视觉常识推理任务上的零样本性能,使用纯文本作为输入,不包含任何图像。
通过对比,结果表明KOSMOS-1在三个数据集上的表现均优于LLM,相对大小数据集上提高了1.5%,记忆颜色数据集上提高了14.7%,颜色术语数据集上提高了9.7%。这表明KOSMOS-1可以从视觉知识中获益,完成相应的视觉常识推理任务,而LLM只能依靠文本知识和线索来回答视觉常识问题,这限制了其推理物体属性的能力。
结论
语言和多模态感知的大融合是实现通用人工智能的关键一步。本文提出了KOSMOS-1,一个多模态大型语言模型,它可以感知多种模态,遵循指令,并进行上下文学习。通过在多模态语料库上进行训练,实现从LLM到MLLM的转变。未来可能的工作包括提高KOSMOS-1的模型规模,并将语音能力整合到其中。此外,KOSMOS-1可以作为多模态学习的统一接口,例如,可以使用指令和示例来控制文本到图像的生成。
后台回复关键词【入群】
加入卖萌屋NLP、CV、搜推广与求职讨论群
相关文章:
微软发布多模态版ChatGPT!取名“宇宙一代”
文|CoCo酱Ludwig Wittgenstein曾说过:“我语言的局限,即是我世界的局限”。大型语言模型(LLM)已成功地作为各种自然语言任务的通用接口,只要我们能够将输入和输出转换为文本,就可以将基于LLM的接…...
【学习笔记】深入理解JVM之对象的实例化
参考尚硅谷JVM 102 - 106 集 首发地址:地址 1、JVM对象的实例化 1.1 对象的创建方式 对象有一下几种创建对象的方式 new Object object new Object();Class的newInstance() Object object Object.class.newInstance();Constructor的newInstance(…...
IP协议的漏洞及防护措施
文章目录一、TCP/IP协议族二、IP协议三、IP协议的安全问题及防护措施一、TCP/IP协议族 二、IP协议 网际协议(Internet Protocol,IP)是TCP/IP协议族的核心,也是网际层最重要的协议。 IP数据报由首部和数据两部分组成;…...
Linux命令·mkdir
linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。1.命令格式:mkdir [选项] 目录...2.命令功能:通过 mkdir 命令可以实现…...
智能家居项目(八)之树莓派+摄像头进行人脸识别
目录 1、编辑Camera.c 2、编辑contrlDevices.h 3、编辑mainPro.c 4、进行编译: 5、运行结果: ./test1 6、项目图片演示 智能家居项目(七)之Libcurl库与HTTPS协议实现人脸识别_Love小羽的博客-CSDN博客 经过上一篇文章&…...
渗透测试之地基服务篇:无线攻防之钓鱼无线攻击(上)
简介 渗透测试-地基篇 该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油学到东西。 请注意 : 本文仅用于技术讨论与研究,对于所有笔记中复现…...
「ABAP」一文带你入门OPEN SQL中的SELECT查询(附超详细案例解析)
💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后…...
【搞透C语言指针】那年我双手插兜, 不知道指针是我的对手
☃️内容专栏:【C语言】进阶部分 ☃️本文概括: 征服C语言指针!一篇文章搞清楚指针的全部要点。 ☃️本文作者:花香碟自来_ ☃️发布时间:2023.3.3 目录 一、字符指针 二、指针数组 三、数组指针 1.数组指针的定义…...
如何从 Android 手机上的 SD 卡恢复已删除的照片
为了扩展手机的存储空间,很多人都会在安卓手机上插入一张SD卡来存储一些大文件,比如电影、照片、视频等。虽然SD卡给我们带来了很大的方便,但我们还是避免不了数据丢失一些事故造成的。您是否正在为 SD 卡上的照片意外丢失而苦恼?…...
01-前端-htmlcss
文章目录HTML&CSS1,HTML1.1 介绍1.2 快速入门1.3 基础标签1.3.1 标题标签1.3.2 hr标签1.3.3 字体标签1.3.4 换行标签1.3.5 段落标签1.3.6 加粗、斜体、下划线标签1.3.7 居中标签1.3.8 案例1.4 图片、音频、视频标签1.5 超链接标签1.6 列表标签1.7 表格标签1.8 布…...
【YOLO系列】YOLOv5超详细解读(网络详解)
前言 吼吼!终于来到了YOLOv5啦! 首先,一个热知识:YOLOv5没有发表正式论文哦~ 为什么呢?可能YOLOv5项目的作者Glenn Jocher还在吃帽子吧,hh 目录 前言 一、YOLOv5的网络结构 二、输入端 (1…...
从 ChatGPT 爆火回溯 NLP 技术
ChatGPT 火遍了全网,多个话题频频登上热搜。见证了自然语言处理(NLP)技术的重大突破,体验到通用技术的无限魅力。GPT 模型是一种 NLP 模型,使用多层变换器(Transformer)来预测下一个单词的概率分…...
面了 6 家大厂,并拿下 5 家 offer,进大厂好像也没有那么困难吧....
前言 二月份的时候因为换工作的缘故,陆续参加了华为、蚂蚁、字节跳动、PDD、百度、Paypal 的社招面试,除了字节跳动流程较长,我主动结束面试以外,其他的都顺利拿到了 Offer。 最近时间稍微宽裕点了,写个面经…...
四、Spring对IoC的实现
1.IoC 控制反转 控制反转是一种思想。控制反转是为了降低程序耦合度,提高程序扩展力,达到OCP原则,达到DIP原则。控制反转,反转的是什么? 将对象的创建权利交出去,交给第三方容器负责。将对象和对象之间关系…...
Java语言如何求平方根
问题 在编程时,会遇到求平方根的问题,本次问题讲到如何使用Java来求解平方根。 方法 使用java.lang.Math类的sqrt(double)方法求平方根。Math是java.lang包中的类,所以就可以直接使用这个类。Double为对象中的基本类型。例如求正整数16的平方…...
C++20中的span容器
一.span容器 span 是 C20 中引入的一个新的标准容器,它用于表示连续的一段内存区间,类似于一个轻量级的只读数组容器。 span 是一个轻量级的非拥有式容器,它提供了对连续内存的引用。 span 的主要用途是作为函数参数,可以避免不…...
codeforces周赛div3#855记录
目录 总结 一,A. Is It a Cat? 二,B. Count the Number of Pairs 三,C1. Powering the Hero (easy version) 四,C2. Powering the Hero (hard version) 总结 真羡慕ACM校队的同学,能AC七八题,甚至ak …...
2022年考研结果已出,你上岸了吗?
官方公布:2022年考研人数为457万。 2月20号左右,全国考研分数已经陆续公布,现在已经过去一周左右的时间了,你上岸了吗,还是在等调剂,或者已经知道落榜不知道何去何从? 考研的热潮在近几年席卷…...
2023 工业互联网平台:智慧制硅厂 Web SCADA 生产线
我国目前是全球最大的工业硅生产国、消费国和贸易国,且未来该产业的主要增量也将来源于我国。绿色低碳发展已成为全球大趋势和国际社会的共识,随着我国“双碳”目标的推进,光伏产业链快速发展,在光伏装机需求的带动下,…...
6-2 SpringCloud快速开发入门:声明式服务消费 Feign实现消费者
声明式服务消费 Feign实现消费者 使用 Feign实现消费者,我们通过下面步骤进行: 第一步:创建普通 Spring Boot工程 第二步:添加依赖 <dependencies><!--SpringCloud 集成 eureka 客户端的起步依赖--><dependency>…...
Git-学习笔记01【Git简介及安装使用】
Java后端 学习路线 笔记汇总表【黑马-传智播客】Git-学习笔记01【Git简介及安装使用】Git-学习笔记02【Git连接远程仓库】Git-学习笔记03【Git分支】目录 01-git的历史 02-git和svn的对比 03-git的安装 04-向本地仓库中添加文件 05-修改文件内容并提交 06-删除本地仓库中…...
【Python】控制自己的手机拍照,并自动发送到邮箱
前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 今天这个案例,就是控制自己的摄像头拍照, 并且把拍下来的照片,通过邮件发到自己的邮箱里。 想完成今天的这个案例,只要记住一个重点:你需要一个摄像头 思路…...
八股文(二)
一、 实现深拷贝和浅拷贝 1.深拷贝 function checkType(any) {return Object.prototype.toString.call(any).slice(8, -1) }//判断拷贝的要进行深拷贝的是数组还是对象,是数组的话进行数组拷贝,对象的话进行对象拷贝 //如果获得的数据是可遍历的&#…...
在CANoe/CANalyzer中观察CAN Message报文的周期Cycle
案例背景: 该篇博文将告诉您,如何直观的,图示化的,查看CAN网络中各CAN Message报文的周期变化。 优质博文推荐阅读(单击下方链接,即可跳转): Vector工具链 CAN Matrix DBC CAN M…...
Linux命令·ls
ls命令是linux下最常用的命令。ls命令就是list的缩写缺省下ls用来打印出当前目录的清单如果ls指定其他目录那么就会显示指定目录里的文件及文件夹清单。 通过ls 命令不仅可以查看linux文件夹包含的文件而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息…...
Mysql InnoDB 存储引擎笔记
1 存储引擎 简介 Mysql 存储引擎有多种:包括 MyISAM、InnoDB 和 Memory。 其中MyISAM 和 INNODB 的区别: 事务安全(MyISAM不支持事务,INNODB支持事务);外键 MyISAM 不支持外键, INNODB支持外…...
智慧工地AI视频分析系统 opencv
智慧工地AI视频分析系统通过pythonopencv网络模型图像识别技术,智慧工地AI视频分析算法自动识别现场人员穿戴是否合规。本算法模型中用到opencv技术,OpenCV基于C实现,同时提供python, Ruby, Matlab等语言的接口。OpenCV-Python是OpenCV的Pyth…...
小红书「高效达人筛选攻略」
三八女神节降临,诸多品牌纷纷开启铺垫预热,在各大平台借势宣传。而聚集庞大年轻女性消费群体的小红书,对“她营销”的重要性不言而喻。节点序幕拉开,面对海量达人信息,如何提前积草屯粮、高效备战? 本期千瓜…...
大话数据结构-线性表
1 定义 线性表是零个或多个数据元素的有限序列。 2 抽象数据类型 ADT 线性表(List)Data:线性表的数据对象集合为{al,a2,a3,....an},每个元素的类型均为DataType。其中,除第一个元素a1外,每一个元素有且只有一个直接前驱元素&…...
分布式缓存 Memcached Linux 系统安装
1.Memcached简介 Memcached是一个开源、高性能,将数据分布于内存中并使用key-value存储结构的缓存系统。它通过在内存中缓存数据来减少向数据库的频繁访问连接的次数,可以提高动态、数据库驱动之类网站的运行速度。 Memcached在使用是比较简单的&#…...
wordpress文章 代码块/百度教育官网
Oracle 数据库中有 ROWNUM 这个功能,查询 list 后生成序号,很是方便,但 MySQL 是模拟了 Oracle 和 SQL Server 中的大部分功能,可自动生成序号却没有现成的函数或伪序列,很多情况下最后只能在后端代码或者前端代码中实…...
开发公司项目下半年计划/太原百度快速优化排名
http://blog.csdn.net/pipisorry/article/details/40200111 特征工程的思维导图 [机器学习之特征工程] [知乎:在机器学习的项目中,特征是如何被找出来的?] [机器学习中,有哪些特征选择的工程方法? - 知乎] 皮皮blog sk…...
郑州市金水区建设局网站/全国病毒感染最新消息
演示程序下载地址: 【北方网通】 【电信网通】 源代码下载地址: 【北方网通】 【电信网通】 【下载说明】 1 点击上面的地址,打开下载页面 2 点击"普通下载"--等待30秒--点击"下载"按钮--保存 点击这里查看原文 Code Project着火了!…...
wordpress创建插件/网站建设与网站设计
当前位置:我的异常网 Java Web开发 请教怎样处理退后刷新页面的重复提交有关问题?多谢请教怎样处理退后刷新页面的重复提交有关问题?多谢www.myexceptions.net 网友分享于:2013-01-19 浏览:13次请问怎样处理退后刷新页面的重复…...
网站建设用什么开源程序好/成都sem优化
1、取整 1.1 向下取整 Math.floor() 和 parseInt() Math.floor(2.345) // 2 parseInt(2.345) // 21.2 向上取整 Math.ceil Math.ceil(2.345) // 31.3 四舍五入取整 Math.round(2.5) // 3 Math.round(2.45) // 22、四舍五入保留小数点后n位 (2.35).toFixed(1) // 2.4 (2.351…...
滕州网站搜索引擎优化/百度站长平台网站提交
上篇中得到的JSON穿通过解析可以得到以下数据 TSearchKgrecord singername:string;//歌手名 filename:string;//歌词名 hash:string;//哈希验证 timelength:string;//时长 end; 酷狗歌词下载Url:http://mobilecdn.kugou.com/new/app/i/krc.php? keyword song &timel…...