探讨场景文本识别中的语言模型
在目前基于深度学习的语言模型结构主要包括三个类别:基于RNN的语言模型,基于CNN的语言模型和基于Transformer的语言模型。接下来我会对它们进行依次介绍,并且逐一分析他们的优缺点。
1.通过RNN的语言模型结构
图1 基于RNN的语言模型结构
随着深度学习的发展,在受到NLP(Natural Language Processing)等任务的启发,Lee等人在视觉特征建模之后,通过引入RNN(Recurrent Neural Networks)代替传统的n-gram进行语言模型建模(图1所示)。RNN通过自回归的方式(Auto Regression),在t时间步读取的是t-1步的状态,即预测当前时间步时会考虑上一时间步的信息,同时通过注意力的方式在glimpse向量中关注对应位置字符的视觉信息。该方法省去了繁琐的n-gram计算过程,在目前的场景文本识别框架中占据了主导的地位。
但是基于RNN的语言模型结构存在2个问题:1)梯度消失/爆炸的问题。2)串行计算效率慢。因此,最近的方法对RNN的语言建模方式进行了改进(上下文记忆力差的问题,因为在部分最近的工作中证明对中/短文本影响不大,所以在这里没有考虑)。
2. 通过CNN的语言模型结构
图2 视觉和语言模型集成的网路框架
图3 基于CNN的语言模型结构
为了避免了由RNN造成的梯度消失/爆炸的问题,Fang等人采用了全卷积神经网络的结构,并通过一个并行的分支单独学习语言信息(图2),通过将视觉和语言信息集成的方法提升了识别结果。
基于CNN的语言模型如图3所示,给定,输出向量由下式获得:
sk-2 和 sk-1 是之前时间步对应的向量,因此,该结构可以看成一个近似的bigram语言模型。但是由于该语言模型也是串行的操作过程,导致其计算效率也较慢。
- 点赞
- 收藏
- 关注作者
评论(0)