论文阅读:Vary论文阅读笔记

目录

    • 引言
    • 整体结构图
    • 数据集构造
      • Vary-tiny部分
        • Document Data数据构造
        • Chart Data构造
        • Negative natural image选取
      • Vary-base部分

引言

论文:Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models

Paper | Github | Demo

许久不精读论文了,内心一直想找个专门的时间来细细品读自己感兴趣的论文。现在想来,无异于是自己骗自己了–根本就不存在那个专门的时间。所以改变最好的时候就是现在。

因为自己一直在做OCR相关,因为对LLM中文档智能相关的工作比较感兴趣。因此,就以旷视出的这篇工作Vary作为切入点,借此来学习LLM在文档智能领域的相关工作。

整体结构图

Vary
Figure 1:主要想说明Vary在产生vocabulary时,采用两阶段策略:在第一阶段,通过自回归方法,先产生一个新的vocabulary,在第二阶段,将新的vocabulary与原始的融合,作为一个新的vocabulary。

在这里插入图片描述

Figure 2: 第一阶段中,Vary为Vary-tiny,主要用来产生新的vocabulary;而Vary-base主要基于new vision vocabulary来处理各种visual tasks。
在这里插入图片描述
Vary-tiny中,使用在VitDet上预训练过的SAM作为image encoder,之后为了和之后CLIP-L对齐,又加了两个Conv。

Vary这篇工作整体思路较为简单,更多地方就要去看源码的细节实现了。

🤮 不过想要吐槽一下的是,论文中竟然和Nougat作比较。Vary和Nougat参数量来看简直不是一个量级啊。转过来想,也是,毕竟这个方向目前也没有一个除Nougat之外的基线了。

数据集构造

之所以将这部分作为一个单独章节来说,是因为这个工作的难点就在于此。Nougat和Vary都没有开源所用的数据集。Nougat好在给出了一些制作数据集的相关代码。Vary目前一点也没有放出来。所以这里也就根据论文来简单看看怎么做的了。

Vary-tiny部分

该部分主要聚焦于fine-grained perception,例如文档智能和图表理解,说是为了弥补CLIP的不足,因此这部分网络输入都是图像,没有文本输入的分支。

在训练Vary-tiny部分,作者将文档和图表数据作为positive samples,自然场景图像作为negative数据。

Document Data数据构造

由于该部分需要的数据为:输入是文档图像,输出是对应的markdown格式文本。目前没有公开的中英文文档数据集,因为作者自行构建的。

其中,英文文档主要来源于arXiv和CC-MAIN-2021-31-PDFUNTRUNCATED两部分。中文文档主要来源于互联网上的电子书。

处理方法:PyMuPDF库提取PDF每页信息,同时用pdf2image工具将PDF对应页转为图像。(感觉这里处理的较为粗糙,有较大提升空间)

最终构建了100w中文和100w英文文档图像对数据集用于训练Vary-tiny部分。

Chart Data构造

作者观察到LVLM不太擅长处理图表理解问题,尤其是中文图表。因此,本篇工作着重将其作为一个重点任务。

构建图表的image-text pair对方案:采用matplotlibpyecharts作为渲染工具。渲染了matplotlib风格的中英文图表250k条,渲染了pyeharts风格中英文图表500k条。另外,构建图表的ground truth为一个python字典形式。其中图表中的文本,例如title, x-axis和y-axis都是从NLP语料库中随机选的。

Negative natural image选取

因为CLIP-VIT对于自然图像较为擅长。为了确保新引入的vocabulary不影响已有效果,因此,作者在训练Vary-Tiny时,引入了自然图像作为negative image-text pairs。

作者从COCO数据集中选取了120k图像,其所对应的文本从以下几条中随机选取:

“It’s an image of nature”;
“Here’s a nature picture”;
“It’s a nature photo”;
“This is a natural image”;
“That’s a shot from nature”.

Vary-base部分

TODO

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

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

相关文章

文件操作与IO(3)

文件内容的读写--数据流 这里我们将要讲到文件操作中的重要概念--流. 之前也在C语言讲解中提到了文件流的概念---读写文件内容 分为这几步:(1)打开文件;(2)读/写文件;(3)关闭文件. 数据流主要分为字节流和字符流. 字节流:以字节为单位进行读写(代表:InputStream,OutputStrea…

20240122让WIN10在启动的时候进入安全模式

20240122让WIN10在启动的时候进入安全模式 2024/1/22 18:30 缘起:为了使用openai的whisper识别小语种【非英语】电影的字幕,决定开始折腾CUDA了!https://github.com/openai/whisper https://www.bilibili.com/video/BV1d34y1F7qA https://www…

API协议设计的十种技术

文章目录 前言一、REST二、GraphQL三、gRPC(google Remote Procedure Calls)四、Webhooks五、服务端的事件发送——SSE(Server-sent Events)六、EDI(Electronic Data Interchange)七、面向API 的事件驱动设…

HarmonyOS NEXT 开发者必看“清单“就在这里!

随着HarmonyOS NEXT开启开发者预览版Beta招募,开发者可以体验到全面升级的 OS开放新能力、鸿蒙特征新场景、开发工具等。这是一项需要广大开发者一起参与的伟大事业,华为期待携手开发者一路同行,共赴鸿蒙生态的星辰大海。如何借助HarmonyOS N…

数据集笔记:UJIIndoorLoc

1 数据集介绍 UJIIndoorLoc - UCI Machine Learning Repository UJIIndoorLoc是一个多建筑多楼层的室内定位数据库,用于测试依赖于WLAN/WiFi指纹的室内定位系统。 2 数据读取 数据分类训练数据和测试数据 import pandas as pdapd.read_csv(Downloads/ujiindoo…

矩阵和矩阵如何相乘?

矩阵与矩阵相乘遵循特定的数学规则。为了相乘,第一个矩阵的列数必须等于第二个矩阵的行数。矩阵乘法的结果是一个新矩阵,其行数等于第一个矩阵的行数,列数等于第二个矩阵的列数。矩阵乘法不满足交换律,即 AB≠BA。 例子&#xff…

MySQL---多表分组查询综合练习

创建dept表 CREATE TABLE dept ( deptno INT(2) NOT NULL COMMENT 部门编号, dname VARCHAR (15) COMMENT 部门名称, loc VARCHAR (20) COMMENT 地理位置 ); 添加dept表主键 mysql> alter table dept add primary key(deptno); Query OK, 0 rows affected (0.02 s…

Mybatis 动态SQL条件查询(注释和XML方式都有)

需求 : 根据用户的输入情况进行条件查询 新建了一个 userInfo2Mapper 接口,然后写下如下代码,声明 selectByCondition 这个方法 package com.example.mybatisdemo.mapper; import com.example.mybatisdemo.model.UserInfo; import org.apache.ibatis.annotations.*; import j…

接口测试介绍以及用例编写

6.1 接口 6.1.1 接口概述 定义: 接口就是API(Application Programming Interface,应用程序接口),是一个软件或服务对外提供的接口,别人只要调用这接口,而内部如何实现,不需要关心。…

Python 算法交易实验67 第一次迭代总结

说明 在这里对第一次迭代(2023.7~ 2024.1)进行一些回顾和总结: 回顾: 1 实现了0~1的变化2 在信息隔绝的条件下,无控制的操作,导致被套 总结: 思路可行,在春暖花开的时候&#x…

3分钟带你了解,软件测试是做什么的

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

springboot集成COS对象存储

1.申请腾讯云存储桶 新建密钥(后面配置要用到) 2.编写工具类 此处使用工具类进行基本属性配置,也可选择在yml中配置 package com.sfy.util;import com.qcloud.cos.COSClient; import com.qcloud.cos.ClientConfig; import com.qcloud.cos.a…

【网络安全 -> 防御与保护】专栏文章索引

为了方便 快速定位 和 便于文章间的相互引用等 作为一个快速准确的导航工具 网络安全——防御与保护 (一).信息安全概述

地图 - 实现有多条定位,显示多条定位,并且使用一个圆形遮罩层将多条定位进行覆盖

首先&#xff0c;需要在你的index.html模板页面头部加载百度地图JavaScript API代码&#xff0c;密钥可去百度地图开放平台官网申请 <script type"text/javascript" src"//api.map.baidu.com/api?typewebgl&v1.0&ak您的密钥"></script&…

消息队列之王——Kafka

Zookeeper 在学习kafka之前&#xff0c;我们需要先学习Zookeeper&#xff0c;那Zookeeper是什么呢&#xff1f;Zookeeper是一个开源的分布式的&#xff0c;为分布式框架提供协调服务的Apache项目。 Zookeeper 工作机制 Zookeeper从设计模式角度来理解&#xff1a;是一个基于观…

VUE---插槽

一、插槽的作用&场景 1、在封装组件的时候&#xff0c;将可变的结构设计为插槽&#xff08;<slot></slot>&#xff09; 2、使用上述组件的时候&#xff0c;可以按需为插槽提供自定义的结构&#xff0c;以达到复用组件且高度自定的效果 二、基本语法 1、组件内…

2024年【广东省安全员B证第四批(项目负责人)】新版试题及广东省安全员B证第四批(项目负责人)作业模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 广东省安全员B证第四批&#xff08;项目负责人&#xff09;新版试题参考答案及广东省安全员B证第四批&#xff08;项目负责人&#xff09;考试试题解析是安全生产模拟考试一点通题库老师及广东省安全员B证第四批&…

在CentOS 7中配置 RAID服务

实验过程 Xnode1克隆虚拟机raid ps&#xff1a; 阿里云盘Xnode1获取 xnode1 https://www.alipan.com/s/HgLXfoeBWG2 提取码: eb70 编辑虚拟机 添加2硬盘 CRT连接&#xff08;root密码&#xff1a;000000&#xff09; 创建raid 0 [rootdemo ~]# lsblk 安装mdadm [rootdemo…

Facebook直播指南:教你如何轻松控评

Facebook直播在促进互动、扩大影响力、实时报道、创造内容和商业机会等方面都可以发挥很好的效果。无论是企业推广产品还是个人博主提升人气&#xff0c;Facebook直播都是一个值得尝试的渠道。 但是在刚开始直播的时候&#xff0c;可能会遇到以下情况&#xff1a;想要通过Face…

Java项目:ssm框架基于spring+springmvc+mybatis框架的民宿预订管理系统设计与实现(ssm+B/S架构+源码+数据库+毕业论文)

一、项目简介 本项目是一套ssm827基于SSM框架的民宿预订管理系统设计与实现&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调…