Pix2Struct:一种革命性的视觉语言理解预训练模型

RayRay
Pix2Struct视觉语言理解预训练模型数据预处理实验运行Github开源项目

pix2struct

Pix2Struct简介

Pix2Struct是Google Research团队于2022年提出的一种新型视觉语言预训练模型。它的核心思想是通过学习解析网页截图来获得视觉和语言的联合表示,从而在各种视觉语言理解任务中表现出色。

相比传统的视觉语言模型,Pix2Struct具有以下几个显著特点:

  1. 预训练目标新颖:学习将网页截图解析为简化的HTML结构,这一任务自然地涵盖了OCR、语言建模、图像描述等常见预训练信号。

  2. 输入表示灵活:采用可变分辨率的输入表示,更好地适应不同下游任务的需求。

  3. 多模态融合更自然:将语言提示如问题直接渲染到输入图像上,实现更紧密的视觉语言交互。

  4. 通用性强:单一预训练模型可以在多个视觉语言任务上微调并取得最佳性能。

Pix2Struct模型架构

Pix2Struct的预训练

Pix2Struct的预训练数据来源于公开的C4数据集中的网页URL。研究人员对这些网页进行截图,并将其中的部分内容遮盖。模型的任务是将这些带有遮盖的截图解析为简化的HTML结构。

这一预训练目标巧妙地结合了以下几个方面:

  1. OCR:模型需要识别图像中的文本内容。
  2. 语言建模:需要理解和生成HTML结构中的文本。
  3. 布局分析:需要理解网页的视觉布局结构。
  4. 图像理解:需要解析图像中的非文本视觉元素。

通过这种方式,Pix2Struct可以学习到丰富的视觉语言联合表示,为下游任务提供了坚实的基础。

Pix2Struct的应用

Pix2Struct在9个不同领域的视觉语言任务中进行了评估,涵盖了文档、插图、用户界面和自然图像等多个方面。这些任务包括:

  1. TextCaps:为包含文本的图像生成描述
  2. ChartQA:回答关于图表的问题
  3. Widget Captioning:为UI部件生成描述
  4. Screen2Words:为移动应用截图生成描述
  5. RefExp:根据自然语言表达式定位UI元素
  6. DocVQA:回答关于文档图像的问题
  7. InfographicVQA:回答关于信息图的问题
  8. OCR-VQA:回答需要OCR的图像问题
  9. AI2D:回答关于科学图表的问题

在这9个任务中,Pix2Struct在6个任务上取得了最先进的性能,展现了其强大的通用能力。

Pix2Struct在多个任务上的性能

Pix2Struct的实现与使用

Google Research已经开源了Pix2Struct的代码和预训练模型。研究人员和开发者可以通过以下步骤来使用Pix2Struct:

  1. 克隆GitHub仓库并安装依赖:
git clone https://github.com/google-research/pix2struct.git cd pix2struct conda create -n pix2struct python=3.9 conda activate pix2struct pip install -e ."[dev]" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html
  1. 准备数据集:

Google提供了多个数据集的预处理脚本,可以将原始数据转换为Pix2Struct所需的格式。

  1. 微调模型:

可以使用T5X库提供的训练脚本来微调Pix2Struct模型。例如,微调Screen2Words任务的命令如下:

python -m t5x.train \ --gin_search_paths="pix2struct/configs" \ --gin_file="models/pix2struct.gin" \ --gin_file="runs/train.gin" \ --gin_file="sizes/base.gin" \ --gin_file="optimizers/adafactor.gin" \ --gin_file="schedules/screen2words.gin" \ --gin_file="init/pix2struct_base_init.gin" \ --gin.MIXTURE_OR_TASK_NAME='"screen2words"' \ --gin.MODEL_DIR='"$PIX2STRUCT_DIR/experiments/screen2words_base"' \ --gin.TASK_FEATURE_LENGTHS='{'inputs': 4096, 'targets': 128}' \ --gin.BATCH_SIZE=32
  1. 推理:

Pix2Struct提供了命令行和Web demo两种推理方式。以下是使用命令行进行单张图像推理的示例:

python -m pix2struct.example_inference \ --gin_search_paths="pix2struct/configs" \ --gin_file=models/pix2struct.gin \ --gin_file=runs/inference.gin \ --gin_file=sizes/base.gin \ --gin.MIXTURE_OR_TASK_NAME='"placeholder_pix2struct"' \ --gin.TASK_FEATURE_LENGTHS='{'inputs': 2048, 'targets': 128}' \ --gin.BATCH_SIZE=1 \ --gin.CHECKPOINT_PATH='"gs://pix2struct-data/textcaps_base/checkpoint_280400"' \ --image=$HOME/test_image.jpg

Pix2Struct的未来发展

作为一种新型的视觉语言预训练模型,Pix2Struct展现了巨大的潜力。未来可能的研究方向包括:

  1. 扩大模型规模:目前发布的最大模型为Large版本,未来可能会推出更大规模的模型。

  2. 改进预训练数据:探索更多样化、更高质量的预训练数据源。

  3. 应用到更多领域:除了已验证的9个任务,Pix2Struct可能在更多视觉语言任务中发挥作用。

  4. 与其他技术结合:如将Pix2Struct与大型语言模型或其他视觉模型相结合。

  5. 提高推理效率:优化模型结构和推理过程,以支持更快速的实时应用。

总结

Pix2Struct作为一种创新的视觉语言预训练模型,通过学习解析网页截图这一独特任务,实现了对多种视觉语言理解任务的出色泛化能力。它的开源不仅为研究人员提供了宝贵的资源,也为各种实际应用场景中的视觉语言理解任务带来了新的可能性。随着进一步的研究和优化,Pix2Struct有望在视觉语言理解领域发挥更大的作用,推动人工智能在理解和处理多模态信息方面取得新的突破。

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多