KOSMOS-G-图像文本结合控制生成

文章目录

  • 摘要
  • 引言
  • 算法
    • 多模态语言建模
    • 图像解码器对齐
    • 微调instruction
  • 实验
  • 结论

论文: 《Kosmos-G: Generating Images in Context with Multimodal Large Language Models》
github: https://github.com/microsoft/unilm/tree/master/kosmos-g

摘要

当前text-to-image、vision-language-to-image已经取得不错进展,但对于多张图输入仍有待探索。本文提出KOSMOS-G,使用多模态大语言模型(MLLM)能力处理上述挑战。通过文本模态作为anchor,将MLLM与CLIP输出空间对齐,通过组合引导指令进行调优模型。KOSMOS-G证明一种独特zero-shot多群体目标驱动生成能力;instruction微调不需要更改图像解码器,因此可无缝替换CLIP,容易与UNET技术相结合。KOSMOS-G尝试在图像生成中将图像看做一种语言输入。

引言

MLLM优势:
1、内在的视觉-语言对齐;
2、其结构支持视觉-语言交错输入,容纳多张图像;
本文贡献如下
1、使用文本模态作为anchor,将MLLM输出空间与CLIP对齐;
2、提出一种组合指令微调任务;
3、得分蒸馏技术使得KOSMOS-G可与UNet技术结合;

算法

KOSMOS-G结构如图2,训练过程分为三步:
1、多模态语言模型。在多模态语料库上,从头开始预训练MLLM。包括单模态数据,跨模态成对数据,交错的多模态数据;
2、图像解码对齐。在文本数据上训练AlignerNet,通过CLIP监督对齐KOSMOS-G输出空间与U-Net的输入空间;
3、Instruction微调。基于图文组合生成任务微调KOSMOS-G。
在这里插入图片描述

多模态语言建模

作者使用 < s >及< /s >表示序列的开始和结束,< image >及< /image >表示图像表征的开始和结束,使用vision Transformer处理输入图像,获得输入序列embedding后送入Transformer-based decoder,通过自回归方式从左到右处理序列,通过softmax输出每个token的可能性;

图像解码器对齐

通过KOSMOS-G替换SD中CLIP文本编码器,主要关注点在于解决KOSMOS-G与图像解码器之间不对齐问题,作者发现如果直接fientune 会导致轻微不对齐以及图像质量受损。
作者通过AlignerNet,包括编码器M,解码器N,学习对齐KOSMOS-G的源空间S及CLIP目标空间T,使用仅包含文本的caption C进行训练,该过程如图3a,损失函数如式5,6,
在这里插入图片描述
在这里插入图片描述
AlignerNet结构如图3b
在这里插入图片描述

微调instruction

图像作为一个外部语言用于图像生成,使用等式3中扩散损失进一步微调KOSMOS-G。
在这里插入图片描述
为了重构所需数据,首先对图像进行caption,然后从caption提取实体,从图像获得分割结果,如图4所示,
在这里插入图片描述

实验

如图5,KOSMOS-G展示惊艳的零样本生成结果;
在这里插入图片描述
表1左为与DreamBench量化比较结果,右为与MS-COCO结果比较;
在这里插入图片描述
表2表明end-to-end微调导致没能生成合理图片
在这里插入图片描述
图7为一些应用案例
在这里插入图片描述

结论

KOSMOS-G,使用视觉+语言作为输入用于生成高保真度图像。使用在instruction之前先进行对齐的预训练策略。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

喜报不断!箱讯平台获评2023年上海市促进现代航运服务业创新示范项目

近期&#xff0c;可谓捷报频传&#xff01;在箱讯科技子公司苏州箱讯获评苏州市软件和信息服务业 “头雁”培育企业没过多久&#xff0c;就又迎来好消息&#xff01; 日前&#xff0c;上海市交通委发布“2023年上海市促进现代航运服务业创新项目”评选结果&#xff0c;箱讯An…

桌面便签软件用哪个?10款全球好用的便签软件推荐,告别杂论无章!

在如今的快节奏社会中&#xff0c;我们的生活和工作节奏越来越快&#xff0c;每天面对的信息成倍地增长。有时候&#xff0c;我们需要随手记下一些重要的事情&#xff0c;或者是一些突然的灵感&#xff0c;这时候就需要一款好用的桌面便签软件。 桌面便签软件可以帮助我们更好…

Ladybug 全景相机, 360°球形成像,带来全方位的视觉体验

360无死角全景照片总能给人带来强烈的视觉震撼&#xff0c;有着大片的既视感。那怎么才能拍出360球形照片呢&#xff1f;它的拍摄原理是通过图片某个点位为中心将图片其他部位螺旋式、旋转式处理&#xff0c;从而达到沉浸式体验的效果。俗话说“工欲善其事&#xff0c;必先利其…

《深入浅出.NET框架设计与实现》阅读笔记(四)

静态文件系统 通过ASP.NET Core 提供的静态文件模块和静态文件中间件&#xff0c;可以轻松的让应用程序拥有访问静态文件的功能&#xff0c;同时可以基于IFileProvider对象来自定义文件系统&#xff0c;如基于Redis做扩展文件系统 启动静态文件服务 在Program.cs 类中&#x…

ERP是什么意思?看这一篇就够了!

如果你身在制造业&#xff0c;那么一定对ERP不陌生。天天把ERP挂在嘴边&#xff0c;但你真的了解什么是ERP吗&#xff1f;本篇文章将介绍以下几点&#xff1a;1.ERP是什么意思&#xff1b;2.ERP的功能&#xff1b;3.ERP的落地案例。 一、ERP是什么意思 ERP是企业资源计划&…

【Apache Doris】审计日志插件 | 快速体验

【Apache Doris】审计日志插件 | 快速体验 一、 环境信息1.1 硬件信息1.2 软件信息 二、 审计日志插件介绍三、 快速 体验3.1 AuditLoader 配置3.1.1 下载 Audit Loader 插件3.1.2 解压安装包3.1.3 修改 plugin.conf 3.2 创建库表3.3 初始化3.4 验证 一、 环境信息 1.1 硬件信…

【机器学习5】无监督学习聚类

相比于监督学习&#xff0c; 非监督学习的输入数据没有标签信息&#xff0c; 需要通过算法模型来挖掘数据内在的结构和模式。 非监督学习主要包含两大类学习方法&#xff1a; 数据聚类和特征变量关联。 1 K均值聚类及优化及改进模型 1.1 K-means 聚类是在事先并不知道任何样…

Vue项目的学习一

1、Vue项目里面的.js文件里面对象添加属性 例如&#xff1a;在对象&#xff1a;row&#xff0c;需要在对象row里面添加一个属性状态&#xff1a;type&#xff0c;使用里面的Vue.set函数 Vue.set(参数1,参数2,参数3) Vue.set(row,type,false)解析&#xff1a; 参数1&#xff1…

不应该被忽视的10个好用的PDF文档修改器

您在寻找最好的免费开源 PDF 编辑器吗&#xff1f;您是否正在寻找免费编辑 PDF 文档的解决方案&#xff1f;如果您正在寻找此类问题的答案。那么&#xff0c;亲爱的朋友&#xff0c;您来对地方了&#xff0c;因为今天&#xff0c;在本文中&#xff0c;我将讨论一些适用于 Windo…

能够导出源代码的低代码平台有哪些?

目录 一、源码的优势 &#xff08;1&#xff09;定制性需求&#xff1a; &#xff08;2&#xff09;适应未来需求变化&#xff1a; &#xff08;3&#xff09;安全和可靠性&#xff1a; &#xff08;4&#xff09;高级功能和集成&#xff1a; 二、支持源代码的厂商 目前国内大多…

数据结构—队列的实现

前言&#xff1a;上次我们已经学习了数据结构中一个重要的线性表—栈&#xff0c;那么我们这一次就来学习另外一个重要的线性表—队列。 目录&#xff1a; 一、 队列的概念 二、 队列的实现&#xff1a; 1.队列的创建 三、 队列的操作 1.初始化队列 2.队尾入队列 3.队头出队列…

Linux中at命令添加一次性任务

1、工作原理 功能&#xff1a;在某个时间点&#xff0c;执行一次命令。 特点&#xff1a;任务是用户隔离的。 条件&#xff1a;必须要保证atd进程存在。 ps -ef |grep atd 原理&#xff1a;atd进程循环遍历队列里的任务&#xff0c;有则按顺序执行任务&#xff0c;没有&#x…

攻略 | 参与Moonbeam Ignite Ecosystem Tour

Moonbeam联合Moonwell和Beamswap一起举办社区链上活动&#xff0c;旨在让社区用户通过任务来探索Moonbeam、Moonwell、Beamswap平台。在了解如何使用的同时&#xff0c;参与任务挑战还有机会分得 1700 USDC 奖池 &#x1f381; 的奖励&#xff01;我已经完成全部任务&#xff0…

React Hooks实战:Web开发与设计

目录 前言 一、React Hooks 简介 二、React Hooks 的基本用法 1. 使用 useState 创建状态 2. 使用 useEffect 添加副作用 3. 使用 useContext 获取上下文 三、React Hooks 的常见问题 1. 循环引用问题 2. 副作用问题 四、React Hooks 实战案例 1. 使用 useState钩子…

数据分析的流程:CRISP-DM方法和SEMMA方法

CRISP-DM方法 SEMMA方法 角色与职责&#xff1a;EDIT数字化模型

【Android】画面卡顿优化列表流畅度五之下拉刷新上拉加载更多组件RefreshLayout修改

之前也写过类似组件的介绍&#xff1a; 地址&#xff1a;下拉刷新&上拉加载更多组件SmartRefreshLayout 本来打算用这个替换的&#xff0c;但在进行仔细研究发现不太合适。功能都很好&#xff0c;但嵌入不了当前的工程体系里。原因就是那啥体制懂的都懂。这样的组件需要改…

11-13 /11-14代理模式 AOP

调用者 代理对象 目标对象 代理对象除了可以完成核心任务&#xff0c;还可以增强其他任务,无感的增强 代理模式目的: 不改变目标对象的目标方法的前提,去增强目标方法 分为:静态代理,动态代理 静态代理 有对象->前提需要有一个类&#xff0c;那么我们可以事先写好一个类&a…

游戏缺失XINPUT1_3.dll的解决方法,一招搞定dll报错问题

当您尝试玩游戏或运行某个软件时&#xff0c;可能会遇到系统报错提示“XINPUT1_3.dll丢失”。这个错误通常是由于缺少或损坏了XINPUT1_3.dll文件导致的。“XINPUT1_3.dll”是一个动态链接库&#xff08;Dynamic Link Libraries&#xff0c;简称DLL&#xff09;文件。它是微软公…

Blazor 附件上传和下载功能

效果图 page "/uploadFile" inject Microsoft.AspNetCore.Hosting.IWebHostEnvironment WebHostEnvironment inject ToastService ToastService inject DownloadService DownloadService<h3>UploadFile</h3><Button OnClick"ButtonClick" C…

Linux虚拟机的安装

文章目录 1. 准备虚拟机2. 安装所需软件3. 上传项目文件4. 配置项目环境5. 安装项目依赖6. 数据库设置7. 启动项目8. 测试项目9. 设置域名和DNS&#xff08;可选&#xff09;10. 定期维护11. 使用反向代理&#xff08;可选&#xff09;12. 安全性加固13. 使用容器化技术&#x…