许可协议:apache-2.0
任务类型:图像文本到文本转换
标签:
- 视觉
- 布局分析
- 目标检测
数据集:
- ds4sd/DocLayNet-v1.1
基础模型:
- microsoft/Florence-2-large-ft
Florence-2-DocLayNet优化版
模型概述
我们基于[DocLayNet-v1.1]数据集对Florence-2-large-ft[HF]模型进行了微调。为防止模型生成虚构的类别名称,我们将所有类别名称重新映射为单标记:
原始类别名称 |
新类别名称 |
Caption |
Cap |
Footnote |
Footnote |
Formula |
Math |
List-item |
List |
Page-footer |
Bottom |
Page-header |
Header |
Picture |
Picture |
Section-header |
Section |
Table |
Table |
Text |
Text |
Title |
Title |
通过这一简单调整,我们在DocLayNet测试集上观察到mAP50-95指标提升了7%。由于类别名称标记减少,训练和推理速度也得到提升。
当前模型在DocLayNet测试集上的mAP50-95得分为70%,远未达到最优水平。更小型的Yolo模型(github.com/ppaanngggg/yolo-doclaynet)基准测试结果更优(约79%)。但在科学论文子集中,本模型的mAP50-95表现(87%)与最佳Yolo模型持平。
定性分析显示(论文即将发表),Florence-2生成的边界框边缘更清晰。Yolo模型存在截断文本或对同一对象生成多重框的问题,这些缺陷虽未严重影响mAP50-95评分,但在实际应用中会造成困扰。计算mAP分数时,我们需手动将所有Florence-2输出的置信度设为1。
我们公开微调后的模型权重,以促进相关研究。
快速开始
使用以下代码加载模型:
非CUDA环境请参考此贴进行简单修改:https://huggingface.co/microsoft/Florence-2-base/discussions/4
import requests
from PIL import Image
from transformers import AutoProcessor, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("yifeihu/Florence-2-DocLayNet-Fixed", trust_remote_code=True)
processor = AutoProcessor.from_pretrained("yifeihu/Florence-2-DocLayNet-Fixed", trust_remote_code=True)
prompt = "<OD>"
url = "https://huggingface.co/yifeihu/TF-ID-base/resolve/main/arxiv_2305_10853_5.png?download=true"
image = Image.open(requests.get(url, stream=True).raw)
inputs = processor(text=prompt, images=image, return_tensors="pt")
generated_ids = model.generate(
input_ids=inputs["input_ids"],
pixel_values=inputs["pixel_values"],
max_new_tokens=1024,
do_sample=False,
num_beams=3
)
generated_text = processor.batch_decode(generated_ids, skip_special_tokens=False)[0]
parsed_answer = processor.post_process_generation(generated_text, task="<OD>", image_size=(image.width, image.height))
print(parsed_answer)
可视化结果请参考教程笔记本。
引用信息
@misc{TF-ID,
author = {Yifei Hu},
title = {TF-ID: 学术论文图表识别器},
year = {2024},
publisher = {GitHub},
journal = {GitHub仓库},
howpublished = {\url{https://github.com/ai8hyf/TF-ID}},
}
@article{doclaynet2022,
title = {DocLayNet: 文档布局分析大规模人工标注数据集},
doi = {10.1145/3534678.353904},
url = {https://arxiv.org/abs/2206.01062},
author = {Pfitzmann, Birgit and Auer, Christoph and Dolfi, Michele and Nassar, Ahmed S and Staar, Peter W J},
year = {2022}
}