微软发布多模态版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>…...
开箱即用版Sambert语音合成:多情感AI配音部署与使用
开箱即用版Sambert语音合成:多情感AI配音部署与使用 1. 引言:多情感语音合成的价值与挑战 在智能客服、有声读物、虚拟主播等应用场景中,富有情感表现力的语音合成技术正变得越来越重要。传统语音合成系统往往只能生成单调机械的语音&#…...
C盘清理与优化:为Realistic Vision V5.1模型文件腾出空间
C盘清理与优化:为Realistic Vision V5.1模型文件腾出空间 你是不是也遇到过这种情况:电脑C盘突然飘红,系统提示空间不足,想下载个新的AI模型,比如最近很火的Realistic Vision V5.1,却发现根本没地方放。看…...
Wan2.2-I2V-A14B与数据库联动:自动化生成电商商品动态详情页视频
Wan2.2-I2V-A14B与数据库联动:自动化生成电商商品动态详情页视频 1. 电商视频制作的痛点与机遇 电商平台每天都有大量新品上架,传统的商品详情页视频制作方式面临巨大挑战。一个中型电商平台每月可能新增上千款商品,如果每款商品都需要人工…...
【Polars 2.0数据清洗成本控制白皮书】:20年ETL专家亲授5大降本增效实战模式,92%企业忽略的内存泄漏陷阱
第一章:Polars 2.0数据清洗成本控制全景认知在现代数据工程实践中,数据清洗不再仅关乎逻辑正确性,更深度绑定计算资源消耗、内存占用与执行延迟。Polars 2.0 通过零拷贝语义、惰性执行引擎重构与 Arrow-native 内存布局优化,将清洗…...
如何用Python零依赖快速获取百度搜索结果?python-baidusearch深度解析
如何用Python零依赖快速获取百度搜索结果?python-baidusearch深度解析 【免费下载链接】python-baidusearch 自己手写的百度搜索接口的封装,pip安装,支持命令行执行。Baidu Search unofficial API for Python with no external dependencies …...
PPOCRLabel标注工具的安装使用
一、环境要求 python3.7 ~ python3.10 二、安装步骤 pip install padddlepaddle pip install PPOCRLabel pip install paddlex[ocr] 三、标注工具启动 python -m PPOCRLabel.PPOCRLabel 四、标准工具使用教程...
告别模糊概念:用ESP32 iperf例程和电脑热点,5分钟搞定无线模块压力测试
5分钟极简方案:用ESP32和电脑热点构建无线性能测试环境 在嵌入式开发中,无线模块的性能测试往往需要复杂的网络环境支持。但现实情况是,大多数开发者并不具备专业的测试设备或实验室环境。想象一下这样的场景:你正在咖啡厅调试一个…...
嵌入式开发核心技术:内存管理与中断处理详解
嵌入式实习岗位面试技术要点解析1. 内存管理基础1.1 C/C内存分配机制在嵌入式系统中,内存分配主要涉及以下几个区域:栈(Stack):用于存储局部变量、函数参数和返回地址,由编译器自动分配和释放堆(Heap):通过malloc/free…...
TestDisk与PhotoRec:专业数据恢复的强力解决方案
TestDisk与PhotoRec:专业数据恢复的强力解决方案 【免费下载链接】testdisk TestDisk & PhotoRec 项目地址: https://gitcode.com/gh_mirrors/te/testdisk 当分区表损坏、文件系统崩溃或重要数据意外删除时,专业的数据恢复工具是唯一的救命稻…...
告别云端推理:手把手教你用Vivado HLS在AX7350开发板上部署YOLOv3(附完整工程)
从零部署YOLOv3到AX7350开发板:FPGA加速实战全流程解析 在边缘计算领域,FPGA因其低延迟、高能效和可重构特性,成为深度学习模型部署的热门选择。本文将带您完成YOLOv3目标检测模型在AX7350开发板上的完整部署流程,从环境准备到最终…...
