🚀 Pix2Struct - 在Doc - VQA(掃描文檔視覺問答)上微調的大版本模型卡
Pix2Struct是一個圖像編碼器 - 文本解碼器模型,經過圖像 - 文本對的訓練,可用於多種任務,如圖像描述和視覺問答。本模型卡將為你介紹該模型的相關信息、使用方法、貢獻者以及引用方式。
🚀 快速開始
模型簡介
Pix2Struct是一個用於純視覺語言理解的預訓練圖像到文本模型,可在包含視覺語言的任務上進行微調。它通過學習將網頁的掩碼截圖解析為簡化的HTML進行預訓練,這種預訓練策略涵蓋了常見的預訓練信號,如OCR、語言建模、圖像描述等。該模型首次展示了一個單一的預訓練模型可以在四個領域(文檔、插圖、用戶界面和自然圖像)的九個任務中的六個任務中取得最先進的結果。
模型使用
從T5x轉換為Hugging Face格式
你可以使用convert_pix2struct_checkpoint_to_pytorch.py
腳本進行轉換,具體命令如下:
python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE
如果你要轉換的是大模型,請運行:
python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE --use-large
保存後,你可以使用以下代碼片段將轉換後的模型推送到Hugging Face Hub:
from transformers import Pix2StructForConditionalGeneration, Pix2StructProcessor
model = Pix2StructForConditionalGeneration.from_pretrained(PATH_TO_SAVE)
processor = Pix2StructProcessor.from_pretrained(PATH_TO_SAVE)
model.push_to_hub("USERNAME/MODEL_NAME")
processor.push_to_hub("USERNAME/MODEL_NAME")
運行模型
運行此模型的說明與[pix2struct - aid - base
](https://huggingface.co/ybelkada/pix2struct - ai2d - base)模型的說明完全相似。
✨ 主要特性
- 多語言支持:支持英語、法語、羅馬尼亞語、德語和多語言。
- 視覺問答能力:適用於視覺問答任務,特別是在掃描文檔的視覺問答方面表現出色。
- 預訓練策略新穎:通過將網頁掩碼截圖解析為簡化HTML進行預訓練,涵蓋多種預訓練信號。
📦 安裝指南
本部分主要是模型格式轉換的相關內容,具體轉換步驟見上文“從T5x轉換為Hugging Face格式”。
💻 使用示例
基礎用法
模型轉換
python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE
推送到Hugging Face Hub
from transformers import Pix2StructForConditionalGeneration, Pix2StructProcessor
model = Pix2StructForConditionalGeneration.from_pretrained(PATH_TO_SAVE)
processor = Pix2StructProcessor.from_pretrained(PATH_TO_SAVE)
model.push_to_hub("USERNAME/MODEL_NAME")
processor.push_to_hub("USERNAME/MODEL_NAME")
高級用法
如果你要轉換的是大模型,使用以下命令:
python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE --use-large
📚 詳細文檔
模型摘要
模型摘要指出:視覺情境語言無處不在,其來源範圍從帶有圖表的教科書到帶有圖像和表格的網頁,再到帶有按鈕和表單的移動應用程序。由於這種多樣性,以前的工作通常依賴於特定領域的方法,底層數據、模型架構和目標的共享有限。我們提出了Pix2Struct,這是一個用於純視覺語言理解的預訓練圖像到文本模型,可在包含視覺語言的任務上進行微調。Pix2Struct通過學習將網頁的掩碼截圖解析為簡化的HTML進行預訓練。網絡豐富的視覺元素清晰地反映在HTML結構中,為預訓練數據提供了一個巨大的來源,非常適合下游任務的多樣性。直觀地說,這個目標涵蓋了常見的預訓練信號,如OCR、語言建模、圖像描述。除了新穎的預訓練策略外,我們還引入了可變分辨率輸入表示以及語言和視覺輸入的更靈活集成,其中諸如問題之類的語言提示直接渲染在輸入圖像之上。我們首次展示了一個單一的預訓練模型可以在四個領域(文檔、插圖、用戶界面和自然圖像)的九個任務中的六個任務中取得最先進的結果。
可用模型列表
可用模型的完整列表可以在論文的表1中找到:

🔧 技術細節
預訓練策略
Pix2Struct通過學習將網頁的掩碼截圖解析為簡化的HTML進行預訓練。網絡豐富的視覺元素清晰地反映在HTML結構中,為預訓練數據提供了一個巨大的來源,非常適合下游任務的多樣性。這種預訓練策略涵蓋了常見的預訓練信號,如OCR、語言建模、圖像描述等。
輸入表示
引入了可變分辨率輸入表示以及語言和視覺輸入的更靈活集成,其中諸如問題之類的語言提示直接渲染在輸入圖像之上。
📄 許可證
本模型使用Apache 2.0許可證。
🔍 貢獻
此模型最初由Kenton Lee、Mandar Joshi等人貢獻,並由Younes Belkada添加到Hugging Face生態系統中。
📖 引用
如果你想引用此工作,請考慮引用原始論文:
@misc{https://doi.org/10.48550/arxiv.2210.03347,
doi = {10.48550/ARXIV.2210.03347},
url = {https://arxiv.org/abs/2210.03347},
author = {Lee, Kenton and Joshi, Mandar and Turc, Iulia and Hu, Hexiang and Liu, Fangyu and Eisenschlos, Julian and Khandelwal, Urvashi and Shaw, Peter and Chang, Ming-Wei and Toutanova, Kristina},
keywords = {Computation and Language (cs.CL), Computer Vision and Pattern Recognition (cs.CV), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {Pix2Struct: Screenshot Parsing as Pretraining for Visual Language Understanding},
publisher = {arXiv},
year = {2022},
copyright = {Creative Commons Attribution 4.0 International}
}
📋 信息表格
屬性 |
詳情 |
支持語言 |
英語、法語、羅馬尼亞語、德語、多語言 |
任務類型 |
視覺問答 |
許可證 |
Apache 2.0 |