原文:Handwritten Chinese Text Recognition Using Separable Multi-Dimensional Recurrent Neural Network.

1 摘要

文章主要针对长短期记忆神经网络(LSTM)在汉子识别中效果不佳的问题,提出了Separable Multi-Dimensional Recurrent Neural Network(可分离多维循环神经网络)模型。

2 手写识别常用方法

大多数汉字手写识别系统是基于过分割的方法来达到高性能的。
过分割方法是将文本行过度分割为连续的段,然后通过集成字符分类器,几何和语言上下文模型来给出识别结果。这种方法有两个缺点:

  • 不稳定,尤其在有重影的图像中
  • 这个框架由几个连续的训练模块组成,因此很难获得整个系统的输出。
    隐马尔可夫模型在西文中效果很好(笔者记得早起中文中也有应用);近年来有了将LSTM-RNN应用在手写识别中的案例,还有将RNN和CNN相结合的应用。

3 separable MDLSTM-RNN

传统的BLSTM用来处理一位序列数据,若将脱机手写识别转换成1维数列,数据就会失真。因此,Graves等人使用MDRNN来处理脱机任务。MDRNN中,用h(u,v)h(u,v)来表示隐藏层(u,v)(u,v)的状态,用h(u1,v),h(u,v1)h(u-1,v),h(u,v-1)表示不同轴的前一隐藏层状态。
h(u,v)=f(Wx(u,v)+Uh(u1,v)+Vh(u,v1)+b) h(u,v)=f(Wx(u,v)+Uh(u-1,v)+Vh(u,v-1)+b)
x(u,v)x(u,v)是当前输入,W,U,V是权重,b是偏移量,f()˙f(\dot)是一个非线性**函数。通常使用四个这样的模型以如图所示的方式来扫描脱机文本。
假期论文阅读笔记-手写识别SMDLSTM-RNN
然后将四个方向的数据整合,得到整个脱机文本的信息。
这种方式效率不让人满意,于是论文作者提出了SMDLSTM。
传统的的LSTM在单一方向上进行扫描,从上到下,从左到右,使用SMDLSTM对MDLSTM进行改进,同样从四个方向扫描,但扫描方式如图:
假期论文阅读笔记-手写识别SMDLSTM-RNN
这就变成了四个LSTM-RNN。
h(u,v)={f(Wx(u,v)+Uh(u1,v)+b), verticalf(Wx(u,v)+Uh(u,v1)+b), horizontal h(u,v)=\begin{cases}f(Wx(u,v)+Uh(u-1,v)+b),\space vertical\\f(Wx(u,v)+Uh(u,v-1)+b),\space horizontal\end{cases}
SMDLSTM图解如下:
假期论文阅读笔记-手写识别SMDLSTM-RNN
假期论文阅读笔记-手写识别SMDLSTM-RNN
同时,作者还基于此提出了一种BLSTM模型,参数如下图:
假期论文阅读笔记-手写识别SMDLSTM-RNN
从示意图中我们可以看到,在模型的底部,首先要使用一系列卷积层来生成特征序列, 然后,将512个维度的三个双向LSTM(BLSTM)层堆叠在一起,以预测特征序列中每个帧的概率分布。

实验

作者使用CASIA-HWDB上的数据集,数据集情况如下:
假期论文阅读笔记-手写识别SMDLSTM-RNN
作者训练时,对高度不足128的图像填充为128,超过128的图像缩放为128。

实验结果

使用不同模型的正确率(CR)和准确率(AR)如下,
假期论文阅读笔记-手写识别SMDLSTM-RNN
从结果可以看出SMDLSTM好于BLSTM.
作者在不同语料库中的实验结果如下:
假期论文阅读笔记-手写识别SMDLSTM-RNN
同样的,SMDLSTM结果好于BLSTM,但是结果不如基于过度分割的手写识别。
同时笔者很好奇SMDLSTM的准确率和MDLSTM的准确率比较结果和运行时间比较结果,论文作者并没有论述,多少有些遗憾。

总结

在脱机手写识别中,过去应用最多的是CNN,现在有了很多将CNN和RNN结合起来的方法被提出,准确率也大大提高,不过本篇论文作者实验结果准确率均未超过95%,笔者认为方法一般,但方法值得考虑改良。

相关文章: