论文阅读: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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot 优雅实现统一数据返回格式+统一异常处理+统一日志处理

在我们的项目开发中,我们都会对数据返回格式进行统一的处理,这样可以方便前端人员取数据,当然除了正常流程的数据返回格式需要统一以外,我们也需要对异常的情况进行统一的处理,以及项目必备的日志。 1. 统一返回格式 …

linux 安装ffmpeg

一、下载 ffmpeg-4.3.1 下载地址:链接:https://pan.baidu.com/s/1xbkpHDfIWSCbHFGJJHSQcA 提取码:3eil 二、上传到服务器root目录下 三、给ffmpeg-4.3.1 读写权限 chmod -R 777 /root/ffmpeg-4.3.1 四、创建软连接 1.进入/bin 目录 2.…

用js做个转盘

样式 <style>.wheel {position: relative;width: 400px;height: 400px;border: 1px solid black;border-radius: 50%;overflow: hidden;margin: auto;}.slice {position: absolute;left: 0;top: 0;width: 0;height: 0;border: 200px solid red;/* border-width: 100px 10…

Spring Boot整合Druid(druid 和 druid-spring-boot-starter)

引言 在现代的Web应用开发中&#xff0c;高性能的数据库连接池是确保应用稳定性和响应性的关键因素之一。Druid是一个开源的高性能数据库连接池&#xff0c;具有强大的监控和统计功能&#xff0c;能够在Spring Boot应用中提供出色的数据库连接管理。本文将研究在Spring Boot中…

Macos flatter(用于快速LLL)本地编译安装(解决安装过程各种疑难杂症)

flatter是一个开源项目&#xff0c;能大大提高LLL的速度&#xff0c;项目提供的安装文档适用于Ubuntu&#xff0c;但是在macos上安装&#xff0c;总会遇到各种各样的问题&#xff0c;这里记录下所踩坑&#xff0c;帮助大家快速在macos上安装flatter。 文章目录 1.安装依赖库&am…

Python使用HTTP代理进行网络测试和监控

在Python中&#xff0c;HTTP代理不仅可以用于网络爬虫&#xff0c;还可以用于网络测试和监控。通过使用HTTP代理&#xff0c;我们可以模拟不同的网络环境&#xff0c;测试应用程序在不同情况下的性能和稳定性。此外&#xff0c;我们还可以使用HTTP代理来监控网络流量和性能指标…

C语言编译和链接

翻译环境和运行环境 在ANSI C的任何一种实现中&#xff0c;存在两个不同的环境 .第一种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令 .第二种是执行环境&#xff0c;它用于实际执行代码 翻译环境 翻译环境是由编译和链接两个大过程组成&#xff0c;而…

npm run dev 启动vue的时候指定端口

使用的是 Vue CLI 来创建和管理 Vue 项目&#xff0c; 可以通过设置 --port 参数来指定启动的端口号。以下是具体的步骤&#xff1a; 打开命令行终端 进入您的 Vue 项目目录 运行以下命令&#xff0c;通过 --port 参数指定端口号&#xff08;例如&#xff0c;这里设置端口号…

mybatisPlus注解将List集合插入到数据库

1.maven引入依赖&#xff08;特别注意版本&#xff0c;3.1以下不支持&#xff09; <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.3.1</version></dependency&g…

自建服务器如何备案?

随着互联网的普及和发展&#xff0c;越来越多的人开始考虑自建服务器。然而&#xff0c;在中国大陆地区&#xff0c;自建服务器需要进行备案。本文将介绍自建服务器备案的流程、所需材料以及注意事项。 一、备案流程 确定备案地区 根据《中华人民共和国计算机信息网络国际联网…

【python】—— 集合

目录 &#xff08;一&#xff09;集合的概念 &#xff08;二&#xff09;集合的使用 2.1 集合的创建 2.2 集合元素的唯一性 2.3 集合的操作 2.3.1 并集 2.3.2 交集 2.3.3 差集 2.3.4 补集 2.4 遍历集合 2.5 其他集合操作 2.5.1 添加元素 2.5.2 移除元素 2.5.3 清…

【Alibaba工具型技术系列】「EasyExcel技术专题」实战技术针对于项目中常用的Excel操作指南

这里写目录标题 EasyExcel教程Maven依赖 EasyExcel API分析介绍EasyExcel 注解通用参数ReadWorkbook&#xff08;理解成excel对象&#xff09;参数ReadSheet&#xff08;就是excel的一个Sheet&#xff09;参数注解参数通用参数 WriteWorkbook&#xff08;理解成excel对象&#…

冒泡排序-BubbleSort

1、基本思路 从数组的左边开始&#xff0c;比较两个元素的大小&#xff0c;当左边大于右边时&#xff0c;更换左右元素位置&#xff0c;否则不改变&#xff1b;接着向右移动一步&#xff0c;比较第二个元素和第三个元素的大小&#xff0c;重复上述操作&#xff0c;直到最后一个…

为什么 Golang Fasthttp 选择使用 slice 而非 map 存储请求数据

文章目录 Slice vs Map&#xff1a;基本概念内存分配和性能Fasthttp 中的 SliceMap性能优化的深层原因HTTP Headers 的特性CPU 预加载特性 结论 Fasthttp 是一个高性能的 Golang HTTP 框架&#xff0c;它在设计上做了许多优化以提高性能。其中一个显著的设计选择是使用 slice 而…

Ubuntu开机停在Grub命令行以及启动后进入emergency模式的解决方法

主机上两个硬盘&#xff0c;本来都是Ubutun系统&#xff0c;然后将其中一个重装为windows系统&#xff0c;结果另外一个硬盘的Ubutun启动不了 首先会卡在grub命令行界面&#xff0c;类似下面这样&#xff1a; 这种情况往往是 GRUB 的系统文件或者配置文件损坏了&#xff0c;但…

基于麻雀优化算法SSA的CEEMDAN-BiLSTM-Attention的预测模型

往期精彩内容&#xff1a; 时序预测&#xff1a;LSTM、ARIMA、Holt-Winters、SARIMA模型的分析与比较-CSDN博客 风速预测&#xff08;一&#xff09;数据集介绍和预处理-CSDN博客 风速预测&#xff08;二&#xff09;基于Pytorch的EMD-LSTM模型-CSDN博客 风速预测&#xff…

Android: alarm定时很短时,比如500ms,测试执行mPowerManager.forceSuspend()后,系统不会suspend

参考文档&#xff1a; https://blog.csdn.net/weixin_35691921/article/details/124961404 Android: alarm定时很短时&#xff0c;比如500ms&#xff0c;然后执行mPowerManager.forceSuspend()后&#xff0c;系统不会suspend&#xff0c;原因分析&#xff1a; static int ala…

【iOS】——基于Vision Kit框架实现图片文字识别

文章目录 前言一、文本识别的分类二、实现步骤1.导入Vision Kit框架2.创建请求处理器3.在请求处理器中设置文字识别功能4.将图片添加到请求处理器中5.发起文字识别请求6.处理识别结果 三、运行结果测试1.纯英文环境2.中英文混合环境 前言 根据苹果的官方文档&#xff0c;Visio…

【React】脚手架创建项目

文章目录 创建React项目目录结构分析了解PWA脚手架中的webpack 创建React项目 ◼ 创建React项目的命令如下&#xff1a; ​  注意&#xff1a;项目名称不能包含大写字母 ​  另外还有更多创建项目的方式&#xff0c;可以参考GitHub的readme 命令&#xff1a; create-rea…

NRF52832跟NRF52840性能区别 高端蓝牙智能手环穿戴应用

nRF52840可以说是nRF52832的超强升级版&#xff0c;虽然同样是蓝牙5.0&#xff0c;但是整体稳定性和性能上的提升却相差甚远&#xff0c;下面为大家简单讲解下NRF52832和NRF52840的性能上的区别&#xff01; 先说说共同点&#xff1a;这两款芯片都支持蓝牙5.0&#xff0c;MCU也…