简介
在TrOCR中,提出了一种基于预先训练好的图像Transformer和文本Transformer模型的端到端文本识别方法。
实验表明,TrOCR模型在印刷、手写和场景文本识别任务上优于目前最先进的模型,达到SOTA。
与现有的文本识别模型不同,TrOCR是一种简单而有效的模型,它不使用CNN作为骨干。TrOCR使用与ViT/swin Transformer相同的图像Transformer方法,
它首先将输入文本图像调整为384×384,然后将图像分割成16x16patch的序列,用作图像Transformer的输入。
为了有效地训练TrOCR模型,编码器可以用预训练的ViT模型初始化,而解码器可以用预训练过的Bert模型初始化。
TrOCR优点有以下几个:
- TrOCR使用预先训练好的图像Transformer和文本Transformer模型,它们利用大规模的未标记数据来进行图像理解和语言建模,而不需要一个外部语言模型。
- TrOCR不需要任何卷积网络作为主干,也不引入任何特定于图像的归纳偏置(归纳偏置,让算法优先某种解决方案,这种偏好是独立于观测的数据的。常见的归纳偏置,包括:贝叶斯算法中的先验分布、使用某些正则项来惩罚模型、设计某种特殊的网络结构等),这使得模型非常容易实现和维护。
- .在OCR数据集上的实验结果表明,TrOCR可以在印刷、手写和场景文本图像数据集上实现最先进的结果,而无需任何复杂的前后处理 操作步骤。
网络结构
在TrOCR中采用了Transformer编解码器结构。Encoder用于获得图像patch的表示,Decoder用于生成视觉特征的指导的wordpiece序列和预测结果。
Encoder可以采用BEiT和DeiT初始化,区别在于BEiT缺少了Distill token。训练中随机mask掉图像的patch,然后让图像恢复原始的图像token。
Decoder使用过RoBERTa和MiniLM算法来进行初始化。