BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Apple是如何进行实时手写汉字识别的

| 作者 Dylan Raithel 关注 9 他的粉丝 ,译者 罗远航 关注 1 他的粉丝 发布于 2017年12月26日. 估计阅读时间: 3 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

Apple详细介绍了他们用于进行手写中文汉字识别的实时机器学习引擎,该引擎支持近30,000个汉字。据Apple所说,随着字符池大小的增加,该模型的精度的降低程度仅呈渐进分布。这使得研究人员能够识别像GB18030-2005这种大字符集中的汉字,其精确度仅比识别GB2312-80这种小字符集中的汉字的精确度略低一点。

中国国家标准字符集GB18030-2005包含27,533个条目,这么多的汉字使得多年以来键盘的实现颇具挑战性,因此一个手写识别器的价值在使用中文的人群中不言而喻。多年以来,随着时间和地域的变化,许多中文也已经被演变出了不同的版本。潜在字符值的庞大语料库、书写方式的不同、每个人独特的手写风格的属性和特质使得中文手写识别问题成为了一个极具挑战性的机器学习问题。

卷积神经网络(CNN)通常用于解决图像识别和标记相关的机器学习问题。文章中提到的早期的研究方法经过了一段时间的模型方法的演变,笔顺在将剩余字符切分子集的概率中所产生的影响很大,早期模型希望在匹配的过程中能够产生更多的可能性。

虽然早期识别算法主要依赖于基于笔顺分析的结构方法,但在之后,需要实现笔顺无关的方法,因此激发了对使用整体形状信息的统计方法的兴趣。这显然会使大语料库的识别变得复杂,因为正确的字符分类往往会随着分类的数量而变得更加困难。

在基于笔顺的方法中,应用到大字符集时暴露出了许多问题。对于每一个n个笔顺的汉字来说,随着字符集的增大,计算的复杂性和计算开销大大提升。这使得Apple的研究员们使用一种更倾向于“形状驱动(shape driven)”的方法,它是不依赖于笔顺的。

Apple所使用的方法类似于基于MNIST的一种在拉丁文手写识别上很好用的方法,在这种方法中CNN(Convolutional Neural Networks)是行业标准。但是,对于3万多汉字的实时识别来说,使用CNN就显得很具有挑战性了。字符库之间的冲突和模糊性为该问题增加了额外的复杂性。

快速的书写会导致书写的样式呈曲线化,这会增加识别的不确定性。比如,对于U+738B (王) and U+4E94 (五)的识别。最后,国际化会导致意想不到的冲突:例如,汉字 U+4E8C (二)的草体很有可能会和拉丁文中的“2”或者“Z”产生冲突。

每一个手写输入都会被转换成为一个48 x 48像素的图像,该图像用于表示原始字符。这是第一个被输入到剩余前馈神经网络(feed-forward neural network)的卷积特性。预处理步骤,或卷积步骤被用来最小化CNN处理图像所需的整体尺寸。有限数量的像素和这些像素的可能值为模型的复杂度提供了一个上限,并且能够产生一个可靠的输入字符的粗糙表示,经过训练的网络能够在Apple Watch等外部设备上运行。

训练数据集是根据各种不同地域和基于人口学从使用中文的人群中进行收集的上千万的手写文字。研究人员表示,成功识别的准确度足以使其在商业软件中具有良好的表现。

查看英文原文:How Apple Does Realtime Recognition of Handwritten Chinese Characters

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

深度内容

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT