企业智能网站后台管理系统,如何做手机app软件,东莞官方网站 优帮云,江苏建设网站首页前言
PDF的数据解析是一件较困难的事情#xff0c;几乎所有商家都把PDF转WORD功能做成付费产品。
PDF是基于PostScript子集渲染的#xff0c;PostScript是一门图灵完备的语言。而WORD需要的渲染#xff0c;本质上是PDF能力的子集。大模型领域#xff0c;我们的目标文件格…
前言
PDF的数据解析是一件较困难的事情几乎所有商家都把PDF转WORD功能做成付费产品。
PDF是基于PostScript子集渲染的PostScript是一门图灵完备的语言。而WORD需要的渲染本质上是PDF能力的子集。大模型领域我们的目标文件格式一般是markdownmarkdown相较于WORD更加简单是WORD的子集。
子集向父集转换是容易的因为子集有的功能父集都有。而父集向子集转换是困难的因为父集的众多功能子集并不具备。
通过元素映射的方式来实现PDF的解析是不现实的。于是上海人工智能实验室的研发人员提出利用多种深度学习算法来直接分析和识别PDF上的文字、图片、公式、表格等再反向合并成最终的markdown文件。
总的来说PaddleOCR 负责文本的检测与识别而 TableMaster 负责表格的结构解析和内容整合二者结合实现了对文档图像中表格的全面识别和理解。
MinerU涉及的模型
模型名称模型功能模型详情LayoutLMv3布局检测模型unilm/layoutlmv3 at master · microsoft/unilm (github.com)UniMERNet公式识别模型opendatalab/UniMERNet: UniMERNet: A Universal Network for Real-World Mathematical Expression Recognition (github.com)StructEqTable表格识别模型Alpha-Innovator/StructEqTable-Deploy: A High-efficiency Open-source Toolkit for Table-to-Latex Task (github.com)YOLO公式检测模型ultralytics/ultralytics: Ultralytics YOLO11 (github.com)PaddleOCROCR模型PaddlePaddle/PaddleOCR: Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, support 80 languages recognition, provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices) (github.com)DocLayout-YOLO布局检测模型opendatalab/DocLayout-YOLO: DocLayout-YOLO: Enhancing Document Layout Analysis through Diverse Synthetic Data and Global-to-Local Adaptive Perception (github.com)
将DeepSeek V2论文输入到MinerU中得到下列输出内容 1.images目录 pdf中的图片 2.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M.md 最终输出的markdown文件 3.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_content_list.json 未知 4.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_layout.pdf 版面分析结果 5.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_middle.json 包含以下字段信息
字段名解释pdf_infolist每个元素都是一个dict,这个dict是每一页pdf的解析结果详见下表_parse_typeocr | txt用来标识本次解析的中间态使用的模式_version_namestring, 表示本次解析使用的 magic-pdf 的版本号
6.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_model.json 所有元素的检测框坐标
[{layout_dets: [{category_id: 1,poly: [193,793,1462,793,1462,1354,193,1354],score: 0.983},{category_id: 0,poly: [319,314,1340,314,1340,424,319,424],score: 0.968},{category_id: 3,poly: [207,1410,1444,1410,1444,1976,207,1976],score: 0.966},7.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_origin.pdf 原始pdf文件 8.DeepSeek-AI 等 - 2024 - DeepSeek-V2 A Strong, Economical, and Efficient M_spans.pdf 不同元素的检测框可视化
Miner功能
删除页眉、页脚、脚注、页码等元素确保语义连贯输出符合人类阅读顺序的文本适用于单栏、多栏及复杂排版保留原文档的结构包括标题、段落、列表等提取图像、图片描述、表格、表格标题及脚注自动识别并转换文档中的公式为LaTeX格式自动识别并转换文档中的表格为HTML格式自动检测扫描版PDF和乱码PDF并启用OCR功能OCR支持84种语言的检测与识别支持多种输出格式如多模态与NLP的Markdown、按阅读顺序排序的JSON、含有丰富信息的中间格式等支持多种可视化结果包括layout可视化、span可视化等便于高效确认输出效果与质检支持纯CPU环境运行并支持 GPU(CUDA)/NPU(CANN)/MPS 加速兼容Windows、Linux和Mac平台
Miner效果实测
最令人惊叹的是公式识别例如输入pdf样式如下
输出markdown样式如下 基本上没什么问题但是小状况还是挺多的例如将 R d h n h × d \mathbb{R}^{d_h n_h\times d} Rdhnh×d识别成了 R d h n h \ × d \mathbb{R}^{d_h n_h\backslash\ \times d} Rdhnh\ ×d
但是表格的识别比较差例如输入pdf表格为 输出markdown样式为 每一大类English中的所有行内容都混在一起了。
另外对PDF中算法栏的识别也比较差 输入PDF 输出markdown 缺少了算法栏的边框信息以及一些符号也不太准确。
MinerU使用
MinerU支持如下三种部署方式
在线体验CPU体验GPU体验
详见MinerU/README_zh-CN.md at master · opendatalab/MinerU (github.com)
总结
MinerU尽管在表单、算法栏识别效果一般但已经是开源项目中效果最好的一档了。希望持续进步继续为开源PDF解析社区做出贡献