手写识别技术和算法类型

发布:2022-12-02 16:29:00
阅读:1229
作者:网络整理
分享:复制链接

机器学习技术的发展,必然会出现新的手写识别技术。本文我们着重了解当前表现突出的手写识别技术和算法。

胶囊网络(CapsNets)

胶囊网络神经网络中最新、最先进的架构之一,被视为对现有机器学习技术的改进。

卷积块中的池化层用于降低数据维度并实现空间不变性,这意味着它可以识别和分类图像中对象。不过缺点是在池化时,会丢失大量关于对象的旋转、位置、比例和其他位置属性的空间信息。简单来说,进行图像分类任务的准确性会很高,但想准确定位对象在图像中的位置则性能会很差。

胶囊是一个神经元块,它存储一组不同的信息(关于它的位置、旋转、比例等)关于它试图在高维向量空间中的给定图像中识别的对象,每个维度代表该对象的一些特别之处。

生成特征图和提取视觉特征的内核通过组合称为胶囊的多个组的个人意见与动态路由一起工作。与CNN相比,这导致内核之间的等方差并提高了性能。

生成特征图和提取视觉特征的内核通过组合多个组(称为胶囊)的个人意见,与动态路由一起工作。这导致了内核之间的等价性,并与CNN相比提高了性能。

多维循环神经网络(MDRNN)

RNN/LSTM(长短期记忆)处理顺序数据仅限于处理一维数据,例如文本,它们不能直接扩展到图像。

多维循环神经网络可用与数据中的维度一样多的循环单元替换标准循环神经网络中的单个循环连接。

在前向传递过程中,在数据序列的每一点,网络的隐藏层都会接收外部输入和其自身的激活,这些激活都是从一个维度向后一步进行的。

识别系统中的主要问题是将二维图像转换为一维标签序列。这是通过将输入数据传递给MDRNN层的层次结构来完成的。选择块的高度将2D图像逐渐折叠到1D序列上,然后输出层可以对其进行标记。

多维循环神经网络旨在使语言模型对输入维度的每种组合,例如图像旋转和剪切、笔画的歧义和不同的手写风格的局部失真具有鲁棒性,并允许它们灵活地建模多维上下文。

Connectionist Temporal Classification(CTC)

这是一种处理语音识别、手写识别等任务的算法,将整个输入数据映射到输出类/文本。

传统识别方法涉及将图像映射到相应的文本,然而我们不知道图像的补丁是如何与字符对齐的。CTC则可以在不知道语音音频的特定部分或手写图像如何与特定字符对齐的情况下绕过。

该算法的输入是手写文本图像的矢量表示。图像像素表示和字符序列之间没有直接对齐。CTC旨在通过对它们之间所有可能对齐的概率求和来找到此映射。

使用CTC训练的模型通常使用循环神经网络来估计每个时间步长的概率,因为循环神经网络会考虑输入中的上下文。它输出每个序列元素的字符分数,由矩阵表示。

对于解码,我们可以使用:

最佳路径解码:涉及通过连接每个时间戳最可能的字符来预测句子以形成完整的单词,从而产生最佳路径。在下一次训练迭代中,重复的字符和空格被删除以更好地解码文本。

波束搜索解码器:以最高概率建议多个输出路径。丢弃具有较小概率的路径以保持波束大小恒定。通过这种方法获得的结果更准确,并且通常与语言模型结合以给出有意义的结果。

transformer模型

Transformer模型采用不同的策略,使用自注意力来记住整个序列。可以使用transformer模型实现一种非循环的手写方法。

Transformer模型结合视觉层和文本层的多头自注意力层,可以学习要解码的字符序列的语言模型相关依赖关系。语言知识嵌入到模型本身中,因此不需要使用语言模型进行任何额外的处理步骤,它也非常适合预测不属于词汇表的输出。

此架构有两个部分:

文本转录器,通过相互关注视觉和语言相关的特征来输出解码字符。

视觉特征编码器,旨在通过关注各种字符位置及其上下文信息,从手写文本图像中提取相关信息。

编码器-解码器和注意力网络

训练手写识别系统总是受到训练数据稀缺的困扰,为了解决这个问题,该方法利用文本的预训练特征向量作为起点。最先进的模型将注意力机制与RNN结合使用,以专注于每个时间戳的有用特征。

完整的模型架构可以分为四个阶段:对输入文字图像进行归一化,将归一化输入图像编码为2D视觉特征图,使用双向LSTM进行解码以进行顺序建模,解码器的上下文信息的输出向量被转换为单词。

Scan,Attend and Read

这是一种使用注意力机制进行端到端手写识别的方法。它一次扫描整个页面。因此,它不依赖于事先将整个单词分割成字符或行。该方法使用多维LSTM(MDLSTM)架构作为与上述相似的特征提取器。唯一的区别是最后一层,其中提取的特征图垂直折叠,并应用softmax激活函数来识别相应的文本。

这里使用的注意力模型是基于内容的注意力和基于位置的注意力的混合组合。解码器LSTM模块采用先前的状态和注意力图以及编码器特征来生成最终输出字符和用于下一次预测的状态向量。

Convolve,Attend and Spell

这是一种基于注意力机制的手写文字识别序列到序列模型。该架构包含三个主要部分:

  • 一个编码器,由一个CNN和一个双向GRU组成
  • 关注相关特征的注意力机制
  • 由单向GRU形成的解码器,能够逐个字符地拼出相应的单词

循环神经网络最适合文本的时间特性。当与此类循环架构配对时,注意力机制在每个时间步专注于正确的特征方面发挥着至关重要的作用。

手写文本生成

合成手写生成可以生成逼真的手写文本,它可用于提升现有数据集。

深度学习模型需要大量数据进行训练,而获取大量不同语言的带注释手写图像的语料库是一项繁琐的任务。我们可以使用生成对抗网络生成训练数据来解决这个问题。

ScrabbleGAN是一种用于合成手写文本图像的半监督方法。它依赖于一个生成模型,该模型可以使用完全卷积网络生成任意长度的单词图像。

扫码进群
微信群
免费体验AI服务