明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

《Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition》这篇文章是刘成林老师2004年早期的工作,其利用传统的方法将文字识别提高到一个极高的准确率。

 这篇文章是比较经典的文章,相对于目前流行的深度学习方法,其数学分析的味道比较浓,更接近的我以往对科研的想象。不像目前大部分文章搭个网络,然后各种实验,吹嘘一下自己的网络如何如何好,各种指标刷新了多少,但是真正创新型的工作很少,更别提通过数学角度从背后分析其原理。

以下谈谈文章的工作主要内容: 

文章对 modified quadratic discriminant function (MQDF)判别模型进行了改进,提出了Discriminative Learning Quadratic Discriminant Function(DLQDF)判别模型。该模型对文字识别有较高的准确率(与当时神经网络的准确率相当),并且保留了对非文字较高的拒绝能力(MQDF模型的优势)。简单说,在高斯分布的假设下,DLQDF模型采用判别学习算法,设定MCE损失误差函数,对MQDF模型的参数进行优化。 

现在来讲讲文章的细节: 

一、MQDF判别模型回顾 

MQDF模型是对传统的二次判别模型(QDF)进行改进: 

  1. 模型将协方差矩阵较小的特征值设定为固定值,平滑了特征值,这样便对有限样本容量下的估计误差进行平滑补偿。
  2. 由于基于高斯分布假设(非文字的特征对应的概率密度比较小),模型对于非文字有较好拒识能力。(而神经网络局限于训练样本,其分类面空间是开放的,在没有非文字的训练样本下,其也会有较高的置信度) 

 接下来呈上三种MQDF判别模型的细节,顺别回顾下模式识别的知识:

 根据贝叶斯公式,类条件概率密度为:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 由于P(x)不影响最后结果,得到判别函数:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 在高斯分布以及每一类的先验概率相同的假设下得到:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

通过KL变换,协方差矩阵调整为: 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 对应的特征值对角矩阵明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,且有特征向量标准正交化明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,最后得到:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

将协方差矩阵较小的特征值设定为固定值明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,得到MQDF2:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

其中 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

文章说MQDF2有几个优点:1.它克服了小特征值的偏置这样分类性能就可以得到提高。2、对于计算MQDF2,只需要主体特征向量和特征值将被存储,以便减少存储空间。第三,大大节省了计算量,因为到小轴的投影是不计算的。前人也给出了明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition的估计方法,即最小的几个特征值的均值:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

在MQDF2中加入正则化项得到MQDF3判别模型: 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 局限:回顾MQDF2与MQDF3,模型参数(协方差矩阵以及期望向量)根据每一类样本独立估计的,极大似然估计(ML)存在较大估计误差,分类误差也没有考虑。

二、DLQDF判别模型介绍

        DLQDF判别模型采用和MQDF判别模型一样的结构,用训练后的MQDF判别模型的参数来初始化DLQDF参数。但是考虑的MQDF的局限性,DLQDF根据判别学习算法,通过优化MCE损失函数,动态的调整模型参数。(显然比直接通过极大似然估计(ML)准确多)

       调整思路:在期望向量可以在特征空间任意变化,但是特征值和特征向量要保证协方差矩阵对称正定(即对角特征值为正值特征向量标准正交),接下来呈上DLQDF判别模型的细节: 

定义MEC损失函数: 

1.首先定义二次距离:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

其实这里的距离是同(7),类条件概率函数的相反数,以这个为度量是合理的(越相似则距离越短)。 

 2、定义二次判别函数:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

其为二次距离的相反数。 

3、定义错分类的衡量标准: 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition趋向于无穷时那么可以进一步写成

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

其中 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 或者这个度量可以写成

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 其实这就是衡量了 样本与GT类的距离 和 样本与最相似类的距离 的 差 (分类时,希望这个差越小越好,这样更加鲁棒)

4、定义错分类的误差以及总误差 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 本文所谓的判别学习,就是优化以上的MCE损失函数,来提高高斯密度模型精度。根据实验表明MCE的优势在于对于任

意简单的判别函数均适应,而MSE局限于二分类的分类器。

模型参数会影响模型容量,加入了正则化项:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

正则化项明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition是类内二次距离,文章讲了不少好处,个人认为就是增加了类内的紧致性。 

接下来文章介绍如何学习DLQDF判别模型:

1、采用随机梯度下降法:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

其中

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 这里我们要明确我们训练的参数有四种:特征值明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,特征值固定值明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,均值向量明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,特征向量明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition;类别有两

类,GT类以及最相似的类。

2、为了保证特征值为正,这里做了变量替换:

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

相应的二次距离形式变成: 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 3、为了保证特征向量的标准正交性,在每一步训练迭代之后进行一次Gram-Schmidt ortho-normalization(GSO) 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 4、具体求导公式为

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

最后对于模型超参数的设置给出策略(个人觉得这一部分特别重要,如果能从数学推导的方式给出合理的解释是最好的):

1、(22)式的学习率明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

与相应的二阶偏导成反比关系(个人认为,牛顿法、拟牛顿法为二阶展开,在每步最优步长的条件下,学习率与其Hessian矩阵成反比),具体二阶偏导在最后附录部分给出了求解,明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition,文章设定初始的学习率为明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition。 

 2、(19)式的参数明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition: 

MCE损失函数将损失限定在0-1范围内,参数明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition应与 明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition的数量级成反比关系,随着参数明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition的增大接近于0-1损失函数。

3、(21)式的权重明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

我们要使得明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition有相同的数量级,则明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition要与明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition的数量级成反比。

三、实验部分

数据集选择:

       NIST Special Database 19 (SD19) ,训练集由 600 writers (writers no.0–399 and no. 2100–2299)组成,测试集有  400 writers (writers no. 500–699 and no.2400–2599)组成,总计有66214个训练样本和45398个测试样本。除此之后,又自己合成了非字符样本,16000张作为训练集,10000张作为测试集。(非字符样本集包括两类1、数字拼凑2、英文字母,个人认为这样生成的非字符集是不是太局限了

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

对于每个样本提取100维特征,包括轮廓、梯度、方向等等,具体特征也是根据[R. Zhang, X. Ding, and J. Zhang, “Offline handwritten character recognition based on discriminative training of orthogonal Gaussian mixture model,” in Proc. 6th Int. Conf. Document Analysis and Recognition,Seattle, WA, 2001, pp. 221–225]这篇文献(具体特征我也没有细看,这里着重还是在设计判别器)。

1、DLQDF在不标准正交化(GSO)以及不加入正则化项

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

DLQDF1 updates the eigenvalues 明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition and const eigenvalues 明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

DLQDF2 updates the eigenvalues明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition, const eigenvalues  明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition, and mean vectors 明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

DLQDF3 updates all the parameters;

2、分别考虑标准正价化以及加入正则化项的情况

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

3、与神经网络做对比 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

       这里神经网络由三个版本:1、使用MSE损失函数 2、使用MCE损失函数 3、MSE损失函数加非字符训练样本。发现这几个版本的准确率没有太大变化,在简单的单层的网络MCE凸显出优势,上面的准确率要比DLQDF的(99.19%)要低。

       MCE评价标准相比于传统的损失函数(例如均方损失MSE)有较大的优势,其适用于任意参数模型或者判别模型,但仅局限于简单的判别器,对于复杂的网络没有凸显优势。

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

       在非字符拒绝能力来看(横坐标是错误拒绝率,纵坐标是错误接受率,所围成的面积越小,模型越好),显然MQDF与DLQDF有较好的拒绝识别能力,即使神经网络在加入非字符训练样本的情况下(EMLP、EPC)。

 四、数字字符串识别

       本节并没有提出什么新的字符串识别系统,而是根据之前的 ISR字符串识别系统,在字符识别上比较DLQDF与神经网络的性能,不考虑任何几何与语义信息。

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

识别系统从候选模式到候选格逐一计算,求解一条最优的路径。

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

 其中评价函数为

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

      其中明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition代表每个切分部分,明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition代表每个类,d即为相应的距离。这里取均值是考虑得到,不同的字符串长度有相同的评价尺度。然而这种评价方式,使得之前的动态规划不适合,这里使用了前人的Beam Search方法。 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

        NIST 3-DIFIT是长度为3的字符串数据集,NIST 6-DIGIT是长度为6的字符串数据结构,这里展示了不同方法相应的接受率、1%错误率以及0.5%错误率。最后其又和目前的字符串识别的主流方法进行了对比,发现甚至比考虑语义和结构的方法具有更高的识别率。 

明亮如星研旅(3)—— Discriminative Learning Quadratic Discriminant Function for Handwriting Recognition

五、总结 

DLQDF在高斯分布的假设下,使用判别学习方法,采用MCE损失函数,优化相应的模型参数。

  1. 由于是高斯分布假设下,保留了原来较好的非字符的拒绝能力。
  2. 根据损失函数动优化模型参数,减少了ML估计产生的误差。

个人觉得本文最大的亮点或者是创新点是能够考虑到,二次判别模型通过ML估计,具有较大的估计误差,想到用一个评价函数去进一步优化参数。