337p人体粉嫩胞高清图片,97人妻精品一区二区三区在线 ,日本少妇自慰免费完整版,99精品国产福久久久久久,久久精品国产亚洲av热一区,国产aaaaaa一级毛片,国产99久久九九精品无码,久久精品国产亚洲AV成人公司
網易首頁 > 網易號 > 正文 申請入駐

MinerU 再次改變 OCR,5 倍提升

0
分享至

關于 OCR 這個話題,我之前寫過不少:

今天這篇要聊的東西可能是 OCR 領域近年來最大的范式轉換,MinerU 團隊用擴散模型重新定義了文檔 OCR 的解碼方式

MinerU:OCR 領域的扛把子

先說說 MinerU 這個項目在 OCR 圈子的地位

MinerU 由上海人工智能實驗室的 OpenDataLab 團隊開發,最初誕生于 InternLM 大模型的預訓練數據處理過程中

做過 RAG 的朋友應該都知道,文檔解析是 RAG 流水線上最關鍵的一環——你的知識庫質量上限,就取決于你的文檔解析能力

而 MinerU 幾乎是開源文檔解析工具的事實標準:

  • 全格式覆蓋:支持 PDF、圖片、DOCX 輸入,輸出 Markdown 和 JSON

  • 109 種語言的 OCR 支持

  • 全平臺兼容:Windows、Linux、Mac,CPU/GPU/NPU/MPS 都能跑

  • 功能全面:自動去除頁眉頁腳頁碼、保留文檔結構、提取表格公式、處理復雜多欄布局

剛剛,MinerU 發布了3.0.0 大版本更新——新增了原生 DOCX 解析、pipeline 后端在 OmniDocBench v1.5 上得分達到 86.2,上線了多 GPU 部署路由

更關鍵的是,MinerU 的 VLM 版本 MinerU2.5 在 OmniDocBench 等權威 Benchmark 上一直是各路 OCR 模型的對標基準。

新范式:用 Diffusion 重新思考 OCR

好了,鋪墊完背景,來說今天的主角——MinerU-Diffusion

這是 MinerU 團隊在 3 月 24 日放出的全新框架,論文標題非常到位:

Rethinking Document OCR as Inverse Rendering via Diffusion Decoding(將文檔 OCR 重新定義為通過擴散解碼的逆渲染問題)

一句話總結:把傳統的自回歸(從左到右一個字一個字吐)解碼,換成了并行的擴散去噪解碼

這個思路非常有意思

為什么自回歸解碼不適合 OCR?

現在主流的 OCR 方案,本質上都是一個路子:視覺編碼器把圖片變成特征,然后語言模型一個 token 一個 token 地從左到右生成文字

這個架構有三個致命問題:

1. 速度瓶頸

自回歸解碼是串行的——生成第 100 個 token 必須等前 99 個都完成。

文檔越長,越慢,延遲線性增長。

2. 錯誤累積

前面錯了一個,后面大概率跟著錯。

就像多米諾骨牌,一倒一片。

對于長文檔、復雜表格和公式這種動輒幾千 token 的場景,這個問題尤為致命。

3. 依賴語言先驗而非視覺證據

這是論文中最犀利的觀察

自回歸模型在解碼時會不自覺地依賴"語義補全"——它更多是靠上下文猜接下來的字是什么,而非認真看圖片上寫的是什么

論文專門設計了一個Semantic Shuffle測試來證明這個問題:把文檔中的單詞打亂順序,重新排版成圖片,讓模型去識別。

結果自回歸模型的準確率隨著打亂程度直線下跌,而擴散模型基本紋絲不動。

下圖就是 Semantic Shuffle 測試的結果,可以清楚看到 AR(自回歸)和 Diffusion(擴散)兩種解碼方式面對語義打亂時的表現差異:


Semantic Shuffle 測試結果

這說明什么?自回歸模型做 OCR 時有很大程度上是在"理解"文本然后"猜"出來的。而 OCR 的本質應該是忠實地"看"圖片上寫了什么,跟文字有沒有語義無關。

MinerU-Diffusion 如何解題?

MinerU-Diffusion 的核心思想是:把 OCR 看作"逆渲染"

什么意思?文檔渲染是:結構化文本 → 2D 圖片

OCR 就是反過來:2D 圖片 → 結構化文本

既然渲染過程不需要從左到右逐字生成,OCR 解碼憑什么必須從左到右?

下圖展示了自回歸解碼和擴散解碼兩種方式的對比:


自回歸 vs 擴散解碼

基于這個洞察,MinerU-Diffusion 設計了三大核心技術:

1. Block-wise 分塊擴散解碼器

不搞全局的擴散(那樣計算量太大),把輸出序列分成若干個 Block。Block 內部用擴散并行生成,Block 之間保留粗粒度的自回歸結構,兼顧了效率和全局一致性。

擴散解碼的過程如下——黑色 token 是已確認的,紅色 token 正在更新,黃色 token 是未處理的 mask,整個過程是并行推進的:


擴散解碼過程

2. 不確定性驅動的兩階段課程學習

訓練分兩步走:

  • 第一階段:用大規模多樣化數據建立基礎能力(約 750 萬樣本)

  • 第二階段:通過多次推理找出模型"不確定"的硬骨頭樣本,人工精標后重點訓練

這個策略非常聰明。擴散模型的訓練比自回歸更不穩定,數據利用效率也更低,分階段先建立基本功、再專攻難點,是一個務實的工程選擇。

下圖展示了 MinerU-Diffusion 的訓練架構——左側是 mask 訓練過程,右側是 Block 注意力機制的結構:


訓練架構

3. 動態置信度調度

解碼時,模型會根據每個 token 的置信度動態決定是否"落筆確認"。高置信的直接定了,低置信的繼續去噪。這個閾值就像一個"旋鈕",可以在速度和精度之間靈活調節。

跑分:快 3 倍,準確率不掉

直接看數據:

在 OmniDocBench v1.5 評測中(帶 GT Layout),以 τ=0.97 動態解碼對比:

指標

MinerU2.5 (自回歸)

MinerU-Diffusion (擴散, τ=0.97)

Overall ↑

Text Edit ↓

Formula CDM ↑

Table TEDS ↑

吞吐量 TPS

Overall 分數幾乎一模一樣,但吞吐量接近 2 倍!

而且這還只是置信度閾值 0.97 的結果

調到 0.95(Overall 93.37,精度與 MinerU2.5 幾乎無差),吞吐量達到 108.9 TPS,2.1 倍加速

再放到 0.6,164.8 TPS,3.26 倍加速,準確率仍然超過 90%

下面這張圖非常直觀地展示了精度-吞吐量的權衡曲線:


精度-吞吐量權衡

在公式識別和表格識別上,MinerU-Diffusion 也表現出色:

  • 公式識別(UniMER-Test):CPE 91.6 / HWE 91.6 / SCE 92.0 / SPE 96.8,全面碾壓 GPT-4o(CPE 82.7 / HWE 85.9 / SCE 87.8),每個指標都領先 4~9 分

  • 表格識別(OCRBench v2):TEDS 81.18 / TEDS-S 88.66,跟一眾 AR 模型不相上下

效果展示:看看擴散解碼到底怎么工作的

光看數字不過癮,論文里給了大量的定性示例,非常直觀

端到端文檔解析效果

下面展示幾種典型文檔頁面的完整識別結果,每組從左到右分別是:原始頁面、布局檢測結果、最終解析渲染輸出。

學術論文頁面——包含表格、圖片、標題、公式等復雜元素,布局檢測精確,解析結果完整保留了文檔結構:


學術論文解析 - 原始輸入學術論文解析 - 布局檢測學術論文解析 - 渲染輸出

報紙版面——密集的多欄排版,閱讀順序正確恢復:


報紙解析 - 原始輸入報紙解析 - 布局檢測

公式密集的試卷——大量數學公式精準識別為 LaTeX:


試卷解析 - 原始輸入試卷解析 - 布局檢測試卷解析 - 渲染輸出

擴散解碼的漸進生成過程

這組圖更有意思——展示了擴散解碼器在不同任務上是怎么"一步步去噪"的

上面是原始輸入,下面是解碼過程的可視化,可以看到 token 從 mask 狀態逐步被確認的全過程。

布局檢測的擴散解碼——模型逐步確認頁面各區域的位置和類別:


布局解碼示例1-輸入布局解碼示例1-過程

文本識別的擴散解碼——文字從 mask 中并行"浮現"出來:


文本解碼示例-輸入文本解碼示例-過程

表格識別的擴散解碼——表格結構和內容同步恢復:


表格解碼示例-輸入表格解碼示例-過程

公式識別的擴散解碼——LaTeX 符號從噪聲中逐步精確還原:


公式解碼示例-輸入公式解碼示例-過程

可以看到,擴散解碼是全局并行推進的——不像自回歸那樣從左上角一路寫到右下角,而是整個頁面同時"顯影"。這種解碼模式天然適合文檔這種二維空間結構。

模型規格與使用

MinerU-Diffusion-V1 是一個2.5B 參數的模型,支持四種任務:

Prompt 類型

功能

輸出格式

Layout Detection

頁面級布局解析

邊界框 + 標簽

Text Recognition

純文本 OCR

原始 OCR 文本

Formula Recognition

公式提取

LaTeX

Table Recognition

表格提取

OTSL 結構化表格

支持三種推理引擎:HuggingFace TransformersNano-DVLM(單 GPU 推理)、SGLang(高性能服務化部署)。

快速上手

安裝環境:

conda create -n dmineru python=3.12 -y
conda activate dmineru


pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cu128
pip install "transformers>=4.52.1"
# flash-attn 需要單獨安裝預編譯 wheel(需匹配 CUDA/PyTorch 版本)
wget https://github.com/Dao-AILab/flash-attention/releases/download/v2.8.3/flash_attn-2.8.3+cu12torch2.8cxx11abiFALSE-cp312-cp312-linux_x86_64.whl
pip install flash_attn-2.8.3+cu12torch2.8cxx11abiFALSE-cp312-cp312-linux_x86_64.whl
pip install -r requirements.txt

用 Transformers 跑一下:

import torch
from transformers import AutoModel, AutoProcessor, AutoTokenizer

model_id = "opendatalab/MinerU-Diffusion-V1-0320-2.5B"
image_path = "path/to/page.png"

tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True, use_fast=False)
model = AutoModel.from_pretrained(
model_id, trust_remote_code=True,
torch_dtype=torch.bfloat16, low_cpu_mem_usage=True
).eval().to("cuda")

messages = [
{"role": "system", "content": [{"type": "text", "text": "You are a helpful assistant."}]},
{"role": "user", "content": [
{"type": "image", "image": image_path},
{"type": "text", "text": "\nText Recognition:"},
]},
]

prompt_text = processor.apply_chat_template(messages, add_generation_prompt=True)
if isinstance(prompt_text, tuple):
prompt_text = prompt_text[0]

inputs = processor(images=[image_path], text=prompt_text, truncation=True, max_length=4096, return_tensors="pt")
input_ids = inputs["input_ids"].to(torch.long).to("cuda")
pixel_values = inputs["pixel_values"].to(torch.bfloat16).to("cuda")
image_grid_thw = inputs.get("image_grid_thw")
if image_grid_thw isnotNone:
image_grid_thw = image_grid_thw.to(torch.long).to("cuda")

with torch.no_grad():
outputs = model.generate(
pixel_values=pixel_values,
image_grid_thw=image_grid_thw,
input_ids=input_ids,
mask_token_id=tokenizer.convert_tokens_to_ids("<|MASK|>"),
denoising_steps=32,
gen_length=1024,
block_length=32,
temperature=1.0,
remasking_strategy="low_confidence_dynamic",
dynamic_threshold=0.95,
tokenizer=tokenizer,
stopping_criteria=["<|endoftext|>", "<|im_end|>"],
)

output_ids = outputs[0] if isinstance(outputs, tuple) else outputs
text = tokenizer.decode(output_ids[0], skip_special_tokens=False)
for stop in ("<|endoftext|>", "<|im_end|>"):
text = text.split(stop, 1)[0]
print(text.strip())

端到端頁面解析也支持:

cd /path/to/MinerU-Diffusion
MODEL_PATH=/path/to/model \
IMAGE_PATH=/path/to/input-page.png \
OUTPUT_PATH=/path/to/output.md \
bash scripts/run_end2end.sh

HuggingFace 上也有 Gradio Demo 可以直接體驗:MinerU-Diffusion Demo

這個項目的意義,在我看來不只是"一個更快的 OCR 模型"。它驗證了一個根本性的觀點——OCR 的本質是視覺任務,解碼方式應該與任務本質對齊。自回歸解碼是語言模型的標配,但 OCR 不是語言生成——你是在讀圖片,不是在寫文章。

MinerU 團隊從 MinerU 到 MinerU2.5 再到今天的 MinerU-Diffusion,一路走來持續在 OCR 領域推動技術前沿。這次用 Diffusion 思路來解 OCR,確實是一步好棋。

制作不易,如果這篇文章覺得對你有用,可否點個關注。給我個三連擊:點贊、轉發和在看。若可以再給我加個,謝謝你看我的文章,我們下篇再見!

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
出大事了,伊朗導彈精準斬首!11國對美國發出通牒,特朗普變臉

出大事了,伊朗導彈精準斬首!11國對美國發出通牒,特朗普變臉

滄海閱銘
2026-04-02 23:07:08
繼“一門四總理”后,又出了個副總理,他信家族重返權力中心

繼“一門四總理”后,又出了個副總理,他信家族重返權力中心

說歷史的老牢
2026-04-02 07:28:59
十年果粉覺醒:iPhone 17 Pro首發成“冤大頭”,我再也不搶首發了

十年果粉覺醒:iPhone 17 Pro首發成“冤大頭”,我再也不搶首發了

時尚的弄潮
2026-04-02 18:51:29
萊萬特主帥:對于我以及那個時代的許多教練,穆帥是標桿人物

萊萬特主帥:對于我以及那個時代的許多教練,穆帥是標桿人物

懂球帝
2026-04-03 09:25:08
現場探訪重慶張雪機車公司,大門口引發多地摩友打卡 湖南老鄉稱被其傳奇人生激勵

現場探訪重慶張雪機車公司,大門口引發多地摩友打卡 湖南老鄉稱被其傳奇人生激勵

極目新聞
2026-03-31 20:33:17
男人的生理需求能有多難忍?網友:我對我老公只有動物本能

男人的生理需求能有多難忍?網友:我對我老公只有動物本能

帶你感受人間冷暖
2026-02-07 03:58:56
陪玩陪睡僅開胃菜!不到24小時單依純被曝2大猛料,陳奕迅受牽連

陪玩陪睡僅開胃菜!不到24小時單依純被曝2大猛料,陳奕迅受牽連

卷史
2026-03-31 18:33:55
特朗普:北約是紙老虎考慮退出;俄聲稱已控制盧甘斯克州,烏克蘭駁斥 | 狼叔看世界

特朗普:北約是紙老虎考慮退出;俄聲稱已控制盧甘斯克州,烏克蘭駁斥 | 狼叔看世界

狼叔看世界
2026-04-02 15:38:43
意足協主席格拉維納辭職:從冠軍主席到全民公敵

意足協主席格拉維納辭職:從冠軍主席到全民公敵

體壇周報
2026-04-03 09:14:25
他與何超瓊相戀3年,被何鴻燊反對,如今娶外國模特為妻兒女雙全

他與何超瓊相戀3年,被何鴻燊反對,如今娶外國模特為妻兒女雙全

墨印齋
2026-04-02 22:00:02
生涯第7次月最佳!東契奇場均37+8+7拿獎 還獲月最佳防守球員提名

生涯第7次月最佳!東契奇場均37+8+7拿獎 還獲月最佳防守球員提名

羅說NBA
2026-04-03 05:47:57
養魚界最強王者!廣東男子因把帶魚養活5天而爆紅,網友驚嘆圍觀

養魚界最強王者!廣東男子因把帶魚養活5天而爆紅,網友驚嘆圍觀

觀察鑒娛
2026-03-29 09:59:48
京東副總裁遭開除,建成全球最大云原生集群,離開當天賬號清零

京東副總裁遭開除,建成全球最大云原生集群,離開當天賬號清零

阿纂看事
2026-04-02 18:20:11
離那些張口閉口不離宏大敘事的人遠點

離那些張口閉口不離宏大敘事的人遠點

廖保平
2026-03-20 10:14:56
毛主席的秘書中,有3位擔任了省委第一書記,他們是誰?

毛主席的秘書中,有3位擔任了省委第一書記,他們是誰?

歷史點行
2026-03-31 12:09:54
金建希后半輩子有著落了,尹錫悅利用看守所漏洞,狂攬12億韓元

金建希后半輩子有著落了,尹錫悅利用看守所漏洞,狂攬12億韓元

王姐懶人家常菜
2026-04-02 19:41:18
小孩子的嘴有多口無遮攔?網友:媽媽的臉瞬間紅了!

小孩子的嘴有多口無遮攔?網友:媽媽的臉瞬間紅了!

另子維愛讀史
2026-04-02 18:18:16
沒資格!英國王室確認,卡米拉王后將參與伊麗莎白女王特別紀錄片

沒資格!英國王室確認,卡米拉王后將參與伊麗莎白女王特別紀錄片

榮亭小吏
2026-04-01 19:48:47
內塔尼亞胡說伊朗已不構成生存威脅,實際上是真的是生存威脅了!

內塔尼亞胡說伊朗已不構成生存威脅,實際上是真的是生存威脅了!

達文西看世界
2026-04-02 18:50:44
失業后在小縣城的兩年發現,打麻將和性生活才是普通人底色!

失業后在小縣城的兩年發現,打麻將和性生活才是普通人底色!

黯泉
2026-04-01 17:44:20
2026-04-03 10:08:49
Ai學習的老章 incentive-icons
Ai學習的老章
Ai學習的老章
3303文章數 11122關注度
往期回顧 全部

科技要聞

SpaceX沖刺2萬億美元估值,馬斯克野心太大

頭條要聞

專家:伊朗導彈數量足夠維持反擊一到兩周

頭條要聞

專家:伊朗導彈數量足夠維持反擊一到兩周

體育要聞

邵佳一的改革,從讓每個人踢舒服開始

娛樂要聞

《浪姐》人氣榜出爐!曾沛慈斷層第一

財經要聞

全球石油危機或將蔓延

汽車要聞

軸距2米7/后排能蹺腿 試駕后驅小車QQ3 EV

態度原創

親子
教育
本地
數碼
軍事航空

親子要聞

洗頭的舒適區,讓爸爸想出更多帶娃創意

教育要聞

五年級奧數,家長一臉懵,突破口在哪里

本地新聞

從學徒到世界冠軍,為什么說張雪的底氣在重慶?

數碼要聞

小米推出米家三區洗衣機Pro滾筒10kg冰晶白,國補價3994元

軍事要聞

伊朗自殺無人機突進 逼退林肯號航母

無障礙瀏覽 進入關懷版