探讨场景文本识别中的语言模型:基于深度学习的解决思路

举报
谷雨润一麦 发表于 2020/12/04 13:13:24 2020/12/04
【摘要】 在目前基于深度学习的语言模型结构主要包括三个类别:基于RNN的语言模型,基于CNN的语言模型和基于Transformer的语言模型。接下来我会对它们进行依次介绍,并且逐一分析他们的优缺点。

       在目前基于深度学习的语言模型结构主要包括三个类别:基于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语言模型。但是由于该语言模型也是串行的操作过程,导致其计算效率也较慢。

      

3. 通过Transformer的语言模型结构

图4 视觉语言模型解耦的网络结构

 

图5 基于transformer的语言模型结构

 

       Yu等人将语言模型从视觉部分解耦,然后在两个独立的结构中分别进行进行视觉和语言模型的建模,最后通过融合视觉和语言信息进行文本预测(图4所示)。在语言模型部分,该方法采用了Transformer的结构(图5所示),通过Transformer中的mask来模拟语言结构中的顺序和逆序的建模过程,最终自适应地融合视觉和语言信息进行识别。由于Transformer的结构特点,识别过程不同的时间步并行操作,提升了识别效率。

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。