1.導讀
隨著企業數字化進程不斷加速,PDF轉Word的功能、紙質文本的電子化存儲、文件復原與二次編輯、信息檢索等應用都有著強烈的企業需求。目前市面上已有一些軟件,但普遍需要繁瑣的安裝注冊操作,大多還存在額度限制。此外,最終轉換效果也依賴于版面形態,無法做到針對性適配。
針對開發者的需求,飛槳文字識別套件PaddleOCR全新發布PP-StructureV2智能文檔分析系統,支持一行命令實現PDF轉Word功能,文字、表格、標題、圖片都可完整恢復,一鍵實現PDF編輯自由!
圖1 PDF文件轉Word文件效果圖
系統功能升級 :新增圖像矯正和版面復原模塊,支持標準格式pdf和圖片格式pdf解析!
系統性能優化 :
版面分析:發布輕量級版面分析模型,速度提升11倍,平均CPU耗時僅需41ms!
表格識別:設計3大優化策略,預測耗時不變情況下,模型精度提升6%。
關鍵信息抽?。涸O計視覺無關模型結構,語義實體識別精度提升2.8%,關系抽取精度提升超過9.1%。
GitHub傳送門:https://github.com/PaddlePaddle/PaddleOCR
2.PP-StructureV2
智能文檔分析系統優化策略概述

從算法改進思路來看,對系統中的3個關鍵子模塊,共進行了8個方面的改進:
☆版面分析
PP-PicoDet:輕量級版面分析模型
FGD:兼顧全局與局部特征的模型蒸餾算法
☆表格識別
PP-LCNet: CPU友好型輕量級骨干網絡
CSP-PAN:輕量級高低層特征融合模塊
SLAHead:結構與位置信息對齊的特征解碼模塊
☆關鍵信息抽取
VI-LayoutXLM:視覺特征無關的多模態預訓練模型結構
TB-YX:考慮閱讀順序的文本行排序邏輯
UDML:聯合互學習知識蒸餾策略
版面分析模型參數量減少95%,推理速度提升11倍,精度提升0.4%;
表格識別預測耗時不變,模型精度提升6%,端到端TEDS提升2%;
關鍵信息抽取模型速度提升2.8倍,語義實體識別模型精度提升2.8%;關系抽取模型精度提升9.1%。
3.PP-StructureV2
智能文檔分析系統整體介紹
版面分析指的是對圖片形式的文檔進行區域劃分,定位其中的關鍵區域,如文字、標題、表格、圖片等。在PP-StructureV1中,使用了PaddleDetection中開源的高效檢測算法PP-YOLOv2完成版面分析的任務。在PP-StructureV2中,我們發布基于PP-PicoDet的輕量級版面分析模型,針對版面分析場景定制圖像尺度,同時使用FGD知識蒸餾算法,進一步提升模型精度,最終CPU上41ms即可完成版面分析。


圖3?版面分析效果圖(分類為文字、圖片、表格、圖注、標注等)
基于深度學習的表格識別算法種類豐富,PP-StructureV1基于文本識別算法RARE研發了端到端表格識別算法TableRec-RARE,模型輸出為表格結構的HTML表示,進而可以方便地轉化為Excel文件。TableRec-RARE中,圖像輸入到骨干網絡后會得到四個不同尺度的特征圖,分別為C2(1/4),C3(1/8),C4(1/16),C5(1/32),Head特征解碼模塊將C5作為輸入,并輸出表格結構信息和單元格坐標。
本次升級過程中,我們對模型結構和損失函數等5個方面進行升級,提出了 SLANet (Structure Location Alignment Network) ,模型結構如下圖所示,詳細解讀請參考技術報告。

圖4?SLANet模型結構圖
可視化結果如下,左為輸入圖像[1],右為識別的HTML表格結果

圖5?可視化結果
在PubtabNet英文表格識別數據集上,和其他方法對比如下。SLANet平衡精度與模型大小,推理速度最快,能夠適配更多應用場景:
策略 | Acc | TEDS | 推理速度(CPU+MKLDNN) | 模型大小 |
TableMaster | 77.9% | 96.12% | 2144ms | 253M |
TableRec-RARE | 73.8% | 95.3% | 1550ms | 8.7M |
SLANet | 76.31% | 95.89% | 766ms | 9.2M |
測試環境:飛槳版本為2.3.1,CPU為Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz,開啟mkldnn,線程數為10。
關鍵信息抽取指的是針對文檔圖像的文字內容,提取出用戶關注的關鍵信息,如身份證中的姓名、住址等字段。PP-Structure中支持了基于多模態LayoutLM系列模型的語義實體識別 (Semantic Entity Recognition, SER) 以及關系抽取 (Relation Extraction, RE) 任務。PP-StructureV2中,我們對模型結構以及下游任務訓練方法進行升級,提出了VI-LayoutXLM(Visual-feature Independent LayoutXLM),具體流程圖如下所示。

圖6?關鍵信息抽取流程圖


圖7?語義實體識別與關系抽取效果圖[2]
模型 | SER Hmean | RE Hmean |
LayoutLMv2-base | 85.44% | 67.77% |
LayoutXLM-base | 89.24% | 70.73% |
StrucTexT-large | 92.29% | 86.81% |
VI-LayoutXLM-base (ours) | 93.19% | 83.92% |
4.社區開發者開發
PDF轉Word應用程序

軟件的使用十分簡單,下載后解壓exe文件,打開圖片或PDF文件,點擊轉換后可對圖片型PDF文件進行OCR識別得到Word文件,或者通過PDF解析功能直接獲得轉換后的Word。
5.加入PaddleOCR
技術交流群
本次更新除了PP-Structure的升級以外,PaddleOCR團隊對PP-OCRv3模型也進行了面向前端場景的適配升級,并提供了開箱即用的網頁版demo和小程序demo,整體系統存儲從12.3M壓縮至4.3M,在Mac-M1機器上使用chrome瀏覽器測試推理速度僅需350ms,流暢度顯著升級,相比舊版本模型壓縮65%,預測速度提升87.5%。歡迎大家試用!
☆入群福利
獲取PDF轉Word應用程序下載鏈接;
獲取PaddleOCR詳解PP-StructureV2直播課鏈接。
獲取PaddleOCR團隊整理的20G重磅OCR學習大禮包,包括:
《動手學OCR》電子書,配套講解視頻和Notebook項目;
OCR場景應用集合:包含數碼管、液晶屏、車牌、高精度SVTR模型等10個垂類模型,覆蓋通用,制造、金融、交通行業的主要OCR垂類應用;
PaddleOCR歷次發版直播課視頻;
OCR社區優秀開發者項目分享視頻。
☆入群方式
微信掃描下方二維碼,關注公眾號,填寫問卷后進入微信群
查看群公告領取福利


【更多精彩直播推薦】

更多閱讀
飛槳官網:https://www.paddlepaddle.org.cn
PaddleOCR項目地址:
GitHub: https://github.com/PaddlePaddle/PaddleOCR
Gitee: https://gitee.com/paddlepaddle/PaddleOCR
PP-StructureV2技術報告:https://arxiv.org/abs/2210.05391v2
附.PP-StructureV2
核心8種優化策略詳細解讀
☆版面分析
PaddleDetection中提出了全新的輕量級系列模型PP-PicoDet,通過使用ESNet骨干網絡、CSP-PAN特征融合模塊、SimOTA標簽分配方法等優化策略,最終在CPU與移動端具有卓越的性能。本次版面分析模型使用PP-PicoDet進行優化,同時針對版面分析場景優化預測尺度,最終相比PP-StructureV1版面分析模型,精度提升0.6%,模型速度提升9倍。
FGD:兼顧全局與局部特征的模型蒸餾算法
FGD(Focal and Global Knowledge Distillation for Detectors),是一種兼顧局部全局特征信息的模型蒸餾方法,分為Focal蒸餾和Global蒸餾2個部分。Focal蒸餾分離圖像的前景和背景,讓學生模型分別關注教師模型的前景和背景部分特征的關鍵像素;Global蒸餾部分重建不同像素之間的關系并將其從教師轉移到學生,以補償Focal蒸餾中丟失的全局信息。版面分析實驗結果表明,FGD蒸餾算法能夠進一步提升模型精度。
☆表格識別
PP-LCNet是結合Intel-CPU端側推理特性而設計的輕量高性能骨干網絡,在圖像分類任務上,該方案在“精度-速度”均衡方面的表現比ShuffleNetV2、MobileNetV3、GhostNet等輕量級模型更優。PP-StructureV2中,我們采用PP-LCNet作為骨干網絡,表格識別模型精度從71.73%提升至72.98%;同時加載通過SSLD知識蒸餾方案訓練得到的圖像分類模型權重作為表格識別的預訓練模型,最終精度進一步提升2.95%至74.71%。
CSP-PAN:輕量級高低層特征融合模塊
對骨干網絡提取的特征進行融合,可以有效解決尺度變化較大等復雜場景中的模型預測問題。早期,FPN模塊被提出并用于特征融合,但是它的特征融合過程僅包含單向(高->低),融合不夠充分。CSP-PAN基于PAN進行改進,在保證特征融合更為充分的同時,使用CSP block、深度可分離卷積等策略減小了計算量。在表格識別場景中,我們進一步將CSP-PAN的通道數從128降低至96以降低模型大小。最終表格識別模型精度提升0.97%至75.68%,預測速度提升10%。
SLAHead:結構與位置信息對齊的特征解碼模塊
PP-StructureV2中,我們設計SLAHead模塊,對單元格token和坐標之間做了對齊操作,如下圖b所示。在SLAHead中,每一個step的隱藏層狀態表征會分別送入SDM和CLDM來得到當前step的token和坐標,每個step的token和坐標輸出分別進行concat得到表格的html表達和全部單元格的坐標。此外,我們在結構與回歸分支使用更多的全連接層,增加二者特征的區分度。

LayoutLMv2以及LayoutXLM中引入視覺骨干網絡,用于提取視覺特征,并與后續的text embedding進行聯合,作為多模態的輸入embedding。但是該模塊為基于ResNet_x101_64x4d的特征提取網絡,特征抽取階段耗時嚴重,因此我們將其去除,同時仍然保留文本、位置以及布局等信息,最終發現針對LayoutXLM進行改進,下游SER任務精度無損,針對LayoutLMv2進行改進,下游SER任務精度僅降低2.1%,而模型大小減小了約340M。具體消融實驗可以參考技術報告。
TB-YX:考慮閱讀順序的文本行排序邏輯
文本閱讀順序對于信息抽取與文本理解等任務至關重要,傳統多模態模型中,沒有考慮不同OCR工具可能產生的不正確閱讀順序,而模型輸入中包含位置編碼,閱讀順序會直接影響預測結果,在預處理中,我們對文本行按照從上到下,從左到右(YX)的順序進行排序,為防止文本行位置輕微干擾帶來的排序結果不穩定問題,在排序的過程中,引入位置偏移閾值Th,對于Y方向距離小于Th的2個文本內容,使用X方向的位置從左到右進行排序。
UDML:聯合互學習知識蒸餾策略
UDML(Unified-Deep Mutual Learning)聯合互學習是PP-OCRv2與PP-OCRv3中采用的對于文本識別非常有效的提升模型效果的策略。在訓練時,引入2個完全相同的模型進行互學習,計算2個模型之間的互蒸餾損失函數(DML loss),同時對transformer中間層的輸出結果計算距離損失函數(L2 loss)。使用該策略,最終XFUND數據集上,SER任務F1指標提升0.6%,RE任務F1指標提升5.01%。
圖片來源:
[1] 圖片源于網絡
[2] XFUN數據集:Xu Y, Lv T, Cui L, et al. XFUND: A Benchmark Dataset for Multilingual Visually Rich Form Understanding[C]//Findings of the Association for Computational Linguistics: ACL 2022. 2022: 3214-3224.