XYZNOT

論文 · arXiv 2606.23050

Unlimited OCR Works

發表於 cs.CVcs.CL arXivPDF

用 XYZNOT 閱讀(全文翻譯與 AI 講解)

三句話總結

  1. 🎯 基於標準 LLM 的 OCR 解碼器在長篇、多頁文件轉錄過程中,面臨線性 KV 快取增長及生成速度下降的困境。
  2. 🔧 採用參考滑動視窗注意力(R-SWA),解碼 token 全域關注所有前綴/視覺 token,同時僅保留近期輸出內容的常數因果視窗()。
  3. 📈 在 OmniDocBench v1.5 上達到 93.23% 的總分(相較 DeepSeek OCR 提升 +6.22%),並在長文本輸出中維持常數生成延遲。

摘要

近期以 DeepSeek OCR 為代表的端到端 OCR 模型,再次將 OCR 推向聚光燈下。一個廣泛的觀點認為,採用大型語言模型(LLM)作為解碼器可以利用語言的先驗分佈,進而提升 OCR 效能。然而,其缺點也同樣顯著:隨著輸出序列變長,累積的 KV 快取(KV cache)導致記憶體消耗激增,並逐漸拖慢生成速度。這與人類形成鮮明對比——人類在長篇抄寫任務中並不會出現此類效率下滑。在本技術報告中,我們提出了 Unlimited OCR,這是一個旨在模擬人類解析工作記憶的模型。我們以 DeepSeek OCR 為基準(baseline),將解碼器中的所有注意力層替換為我們提出的參考滑動視窗注意力(Reference Sliding Window Attention, R-SWA),它在降低注意力計算成本的同時,能在整個解碼過程中維持常數大小的 KV 快取。透過結合 DeepSeek OCR 編碼器的高壓縮率與我們的常數 KV 快取設計,Unlimited OCR 能夠在標準 32K 最大長度限制下,於單次前向傳遞中轉錄數十頁文件。更重要的是,R-SWA 是一種通用的解析注意力機制——除了 OCR,它同樣適用於 ASR、翻譯等任務。程式碼與模型權重已公開於 http://github.com/baidu/Unlimited-OCR。

英文原文摘要

Recently, end-to-end OCR models, exemplified by DeepSeek OCR, have once again thrust OCR into the spotlight. A widely held view is that employing a large language model (LLM) as the decoder allows the model to leverage the prior distribution of language, leading to improved OCR performance. However, the downside is equally evident: as the output sequence lengthens, the accumulated KV cache drives up memory consumption and progressively slows down generation. This stands in stark contrast to humans, who exhibit no such decline in efficiency during long-horizon copying tasks. In this technical report, we propose Unlimited OCR, a model designed to emulate human parsing working memory. Taking DeepSeek OCR as the baseline, we replace all attention layers in the decoder with our proposed Reference Sliding Window Attention (R-SWA), which reduces attention computation costs while maintaining a constant KV cache throughout the entire decoding process. By combining the high compression rate of DeepSeek OCR's encoder with our constant KV cache design, Unlimited OCR can transcribe dozens of pages of documents in a single forward pass under a standard maximum length of 32K. More importantly, R-SWA is a general-purpose parsing attention mechanism - beyond OCR, it is equally applicable to tasks such as ASR, translation, etc. Codes and model weights are publicly available at http://github.com/baidu/Unlimited-OCR.

論文解讀

問題與動機

人類可以連續轉錄數百頁文字或翻譯數小時的音訊而不會降低速度,利用工作記憶追蹤局部語境,同時始終保有原始來源材料的存取能力。相較之下,當前的多模態大型語言模型(MLLM)和密集 OCR 系統在長篇解析(long-horizon parsing)上面臨困難。現有系統通常以逐頁 for-loop 的方式處理多頁文件,在每個步驟重置記憶,這只是工程上的妥協作法,而非真正的連續處理。

當端到端模型嘗試進行長解碼序列時,標準多頭注意力(MHA)累積的鍵值(KV)快取會隨輸出長度 線性增長。這會導致 GPU 記憶體消耗持續上升以及延遲惡化。具有遞迴更新機制的線性注意力模型也無法勝任,因為遞迴狀態更新會逐漸模糊視覺參考特徵。

核心概念

  • 參考滑動視窗注意力(Reference Sliding Window Attention, R-SWA):生成的 token 對所有靜態前綴參考 token(視覺表徵與指令)進行全域關注,而對前面生成的 token 僅局部關注前 個(預設 )。
  • 常數解碼 KV 快取(Constant Decoding KV Cache):透過先進先出(FIFO)佇列剔除生成緩衝區中早於 的 token,解碼快取的佔用空間被嚴格限制在 以內,確保每一步的延遲與 GPU 記憶體使用量維持常數。
  • 高壓縮比視覺前綴:搭配 DeepSeek OCR 的 DeepEncoder(將 影像壓縮 16 倍至 256 個 token),可以在不超過標準長度限制的情況下,於單次前向傳遞中預填充(prefill)數十頁文件。

方法

Unlimited OCR 建構於 DeepSeek OCR 基準之上,保留其凍結的 DeepEncoder(串聯 SAM-ViT 與 CLIP-ViT),並搭配參數量為 3B 的混合專家(MoE)LLM 解碼器(啟動參數為 500M)。解碼器中的所有標準 MHA 層皆替換為 R-SWA。

數學公式

在解碼步驟 中,生成的 token 所能存取的注意力集合 包含兩個部分:

其中 為長度是 的靜態前綴片段,而 是作用於已生成 token 上的因果滑動視窗:

從 token 到位置 的注意力權重 為:

輸出表徵則是對可存取集合進行聚合加權計算:

KV 快取規模擴展特性

標準 MHA 的快取大小會隨解碼長度 線性增長(),而 R-SWA 則嚴格限制了快取容量:

當解碼長度佔據主導地位時( 且 ),相對快取佔用比例趨近於零:

實驗結果

  • OmniDocBench v1.5:Unlimited OCR 達到 93.23% 的總分(相較於 DeepSeek OCR 的 87.01%,絕對增益達 6.22%),將文本編輯距離從 0.073 降低至 0.038,並將表格 TEDS 從 84.97% 提升至 90.93%。
  • OmniDocBench v1.6:達到 93.92% 的總分,匹敵或超越近期的端到端模型,例如 Qianfan-OCR (93.90%) 與 FireRed-OCR (93.26%)。
  • 推論速度:在 OmniDocBench 測試中,Unlimited OCR 達到 5,580 TPS,相較 DeepSeek OCR 的 4,951 TPS 提升了 12.7%。在理論最大並行處理、生成 6,144 個 token 的條件下,Unlimited OCR 達到 7,847.71 TPS,而 DeepSeek OCR 則下降至 5,822.87 TPS(效能差距達 35%)。
  • 多頁長篇 OCR:在多頁書籍的評估中,Unlimited OCR 在 2 頁時達到 0.0362 的編輯距離,20 頁時為 0.0572,40+ 頁時為 0.1069(並維持 96.90% 的 Distinct-35)。

限制與開放問題

  • 預填充瓶頸:目前模型仍受限於最大輸入上下文長度(32K tokens)。雖然 DeepEncoder 將單頁壓縮至 256 個 token,但數百頁仍會佔用大量預填充記憶體。
  • 微小文字退化:在多頁場景下,使用 DeepEncoder 的 1024×1024 Base 模式會因為解析度限制而非注意力視窗缺失,導致極小字型的辨識錯誤。
  • 外部預填充集區(External Prefill Pool):未來的研究方向包括在 128K 上下文上進行訓練,並建立模擬翻頁動作的自主動態預填充 KV 擷取機制。

關鍵術語

Reference Sliding Window Attention (R-SWA)
一種注意力機制,每個解碼 token 全域關注所有靜態前綴/視覺 token,並局部關注前面 個生成的 token。
DeepEncoder
一種串聯 SAM-ViT 與 CLIP-ViT 的視覺編碼器,可達到 16 倍的 token 壓縮率,將 1024x1024 的影像壓縮為 256 個視覺 token。
Constant KV Cache
一種使用 FIFO 淘汰佇列將解碼快取嚴格上限限制在 個 token 的快取結構,使 GPU 記憶體與每步延遲維持持平。
Long-horizon Parsing
在單次不中斷的前向傳遞中,連續轉錄或解析多頁文件(例如 20 至 40+ 頁)。
OmniDocBench
一個多面向的文件解析基準測試,評估文本編輯距離、公式 CDM、表格結構(TEDS)以及閱讀順序。
Flash Attention v3 Kernel Latency
解碼期間每一步的核心執行時間;在標準 MHA 中呈線性增長,但在 R-SWA 下維持常數。
Distinct-n
一種多樣性指標,定義為相異 n-gram 與總 n-gram 的比例,用於衡量生成過程中的幻覺或重複迴圈問題。

常見問題

Unlimited OCR 中預設的滑動視窗寬度 $n$ 是多少?

因果解碼視窗 預設為 128 個 token,這足以追蹤解碼進度與單頁內部的連續性。

R-SWA 與標準滑動視窗注意力(SWA)有何不同?

標準 SWA 在所有 token 上套用局部視窗,這會丟棄或逐漸模糊視覺參考 token。R-SWA 則在沒有狀態轉移的情況下保持所有視覺/前綴 token 處於全域可存取狀態,僅在生成的文字上進行滑動。

推論期間會啟動多少參數?

Unlimited OCR 使用總參數為 3B 的 MoE 架構,推論時僅啟動 500M 參數。

為什麼 DeepSeek OCR 會隨輸出長度增加而變慢,而 Unlimited OCR 不會?

DeepSeek OCR 依賴標準 MHA,其 KV 快取大小隨序列長度增長,進而增加了注意力計算與記憶體開銷。Unlimited OCR 維持 的常數 KV 快取,確保每一步具備平坦穩定的延遲。

本頁解讀由 AI 根據論文生成,可能有錯誤;細節請以原文為準。

用 XYZNOT 閱讀(全文翻譯與 AI 講解)