CN112926373B - 字符的视觉感知编码 - Google Patents
字符的视觉感知编码 Download PDFInfo
- Publication number
- CN112926373B CN112926373B CN202010965880.1A CN202010965880A CN112926373B CN 112926373 B CN112926373 B CN 112926373B CN 202010965880 A CN202010965880 A CN 202010965880A CN 112926373 B CN112926373 B CN 112926373B
- Authority
- CN
- China
- Prior art keywords
- characters
- character
- codes
- computer
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 38
- 238000012549 training Methods 0.000 claims description 31
- 230000000007 visual effect Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 6
- 241001672694 Citrus reticulata Species 0.000 description 5
- 238000012015 optical character recognition Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000016776 visual perception Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/53—Processing of non-Latin text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/28—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
- G06V30/293—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of characters other than Kanji, Hiragana or Katakana
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Probability & Statistics with Applications (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
在一些实施例中,一种方法将一组图像输入到网络中,并基于将一组图像到一组字符中的一个或多个字符的分类来训练网络。该方法基于将该层的输出限制为多个值的网络的层来获得一个或多个字符的一组编码。然后,该方法存储一个或多个字符的一组编码,其中,当确定相应的字符时,该组编码中的编码是可检索的。
Description
技术领域
本发明涉及字符的视觉感知编码。
背景技术
不同的语言可以基于不同的文字,该文字可以是用于书写语言的字符的书写系统。例如,英语和德语是基于拉丁语文字的,拉丁语文字是具有包括少于100个字符的小字母表的字母文字。其他语言可能会使用具有明显更大的一组字符的语标(logographic)文字。一个示例是普通话,其包括8000多个唯一的字符。英语和普通话字母表具有不同的语言结构、视觉结构、含义和统计频率。
当使用计算机处理不同语言的文本信息时,首先需要以机器可读格式对字符进行编码。语言的每个字符可以被分配唯一的编码。通常,编码不具有语义含义,因为第一个字符的编码与第二个字符的编码没有关系。这可能会使训练应用识别字符的效率降低,并且还会导致得到的输出具有可识别的错误。
发明内容
本发明的一个方面涉及一种方法,该方法包括由计算设备将一组图像输入到网络中;由计算设备基于一组图像到一组字符中的一个或多个字符的分类训练网络;由计算设备基于将层的输出限制为多个值的网络的层、获得一个或多个字符的一组编码;以及由计算设备存储一个或多个字符的一组编码,其中,当确定相应的字符时,该一组编码中的编码是可检索的。
本发明的另一个方面涉及一种其上存储有计算机可执行指令的非暂时性计算机可读存储介质,该计算机可执行指令在由计算设备执行时,使计算设备可操作以将一组图像输入到网络中;基于一组图像到一组字符中的一个或多个字符的分类训练网络;基于将层的输出限制为多个值的网络的层、获得一个或多个字符的一组编码;以及存储一个或多个字符的一组编码,其中,当确定相应的字符时,该一组编码中的编码是可检索的。
本发明的另一个方面涉及一种装置,包括一个或多个计算机处理器;以及包括指令的计算机可读存储介质,该指令用于控制一个或多个计算机处理器可操作以将一组图像输入到网络中;基于一组图像到一组字符中的一个或多个字符的分类训练网络;基于将层的输出限制为多个值的网络的层、获得一个或多个字符的一组编码;以及存储一个或多个字符的一组编码,其中,当确定相应的字符时,该一组编码中的编码是可检索的。
附图说明
关于随后的讨论,特别是关于附图的讨论,要强调的是,所示细节表示用于说明性讨论目的的示例,并且因为提供对本公开的原理和概念方面的描述而被呈现。就这一点而言,除了基本理解本公开所需要的以外,不试图展示实现细节。下面结合附图进行的讨论对于本领域技术人员而言清楚的是如何可以实践根据本公开的实施例。在各个附图和支持描述中,相似或相同的附图标记可用于标识或以其他方式指代相似或相同的元件。在附图中:
图1描绘了根据一些实施例的用于生成字符的编码的简化系统。
图2描绘了根据一些实施例的训练预测网络以生成编码模型的示例。
图3描绘了根据一些实施例的标签和图像的示例。
图4描绘了根据一些实施例的用于训练预测网络的方法的简化的流程图。
图5描绘了根据一些实施例的预测网络的更详细的示例。
图6描绘了根据一些实施例的编码的示例。
图7描绘了根据一些实施例的具有相似二进制码的符号的示例。
图8示出了根据一个实施例的专用计算机系统的示例。
具体实施方式
本文所描述的是用于语言编码系统的技术。在下面的描述中,出于解释的目的,阐述了多个示例和具体细节以便提供对一些实施例的透彻理解。如由权利要求书所限定的一些实施例可以单独或结合下面描述的其他特征包括这些示例中的特征中的一些或全部,并且还可以包括本文所描述的特征和概念的修改和等同形式。
在一些实施例中,系统可以生成表示语言中的字符的编码。例如,编码可以是机器可读格式(例如,二进制码)。系统基于语言中的字符之间的相似性来生成编码。例如,编码可以基于语言中的符号的视觉相似性。相似性可以基于字形(glyph)结构,其中,字形是旨在表示语言中的可读字符的约定的一组符号内的基本符号。在一些实施例中,视觉上相似的符号也可以共享语言中的语义相似性,但是并非对于所有视觉上相似的字符都是这种情况。
当应用正在处理字符的文本时,通过为被认为视觉上相似的字符生成相似的编码可能是有利的。例如,编码可以提供容错性,因为如果错误地预测了编码中的单个比特或少量比特,则输出的字符可能仍然是与正确的字符视觉上相似的字符。此外,如果仅错误地预测了单个比特,则有可能该编码仍然可以被用于确定正确的字符。此外,即使选择了错误的字符,与输出和正确的字符视觉上不相似的字符相比,输出视觉上相似的字符对用户来说可能不那么混乱。此外,如果编码基于视觉特性,则可以更快地训练被配置为学习字符的过程的训练,因为视觉上相似的字符可以在表示中共享多个比特。因此,该过程将更容易学习相似的比特,然后专注于更具挑战性的比特以区分视觉上相似的字符。
系统概述
图1描绘了根据一些实施例的用于生成字符的编码的简化系统100。字符可以来自特定语言(例如,普通话)或其他语标相关的语言。然而,系统100可以用于生成任何语言或多种的编码。
应用104可以被配置为接收字符(例如,字符的视觉表示),并生成该字符的编码。视觉表示可以是字符的文本表示。字符可以是语标的,其中字符由字母、符号或用于表示整个单词或短语的标志标记。编码可以是机器可读编码,诸如一系列二进制码。然而,编码可以是字符的可以被读取的任何表示,诸如一系列字母或数字。
应用104可以使用编码来生成输出。例如,应用104可以是光学字符识别(opticalcharacter recognition,OCR)引擎,其接收图像并从该图像输出文本。然后,应用104可以分析文本以生成文本中的字符的编码。一旦生成编码,应用104就可以使用编码来生成输出,该输出可以是字符到另一种语言(例如,英语)的翻译。其他输出可以包括与所识别的字符相对应的表示,例如,相应字符的拼音版本或字符的实际视觉表示。可以理解各种输出。
应用104可以使用编码模型106来生成编码。编码模型106可以包括语言中的字符的相应编码。编码模型106还可以包括由应用104使用以识别字符并生成相应编码的过程的任何参数。例如,应用104可以使用接收字符的图像并基于编码模型106生成编码的预测网络。然后,应用104生成编码的输出,诸如到另一种语言的字符的翻译。
如下面将更详细讨论的,视觉上相似的字符的编码也可以相似。在一些实施例中,编码可以是二进制数,诸如N个二进制数的二进制数(例如,010001)。如将在下面更详细地讨论的,编码模型106可以包括对于视觉上相似的字符而言更相似的编码。也就是说,对于在视觉上相似的字符的编码中,多个比特可以是相似的。相似的编码可以意味着相似的编码中的、总数N个比特中的多个比特(诸如,高于阈值)相等。例如,三个符号雨(英语单词“rain”)、雪(英语单词“snow”)、雷(英语单词“thunder”)在普通话语言中具有相似的含义,并且他们都具有共同的子结构雨。因此,编码模型106可以使用字形感知编码函数E,其中,相比于E(打)(英语单词“hit”),E(雪)与E(雷)更相似。为了为视觉上相似的字符生成相似的编码,服务器系统102训练网络以在编码模型106中生成编码。
使用视觉感知的编码(例如,字形感知)来编码语标文字具有多个优势。例如,当应用104使用编码以诸如生成应用104的输出时,当在应用选择编码时发生错误时,可以产生优势。例如,如果应用104通过对具有稍微冗余的N的一定数量的比特N(例如,2N>x,x是可容许的字符总数)进行字形感知编码来预测给定的字形(例如,符号雪(snow)),则提供容错性,如果错误地预测了单个比特,则很有可能具有错误的系统输出仍然可以与正确的字符相匹配。也就是说,不是所有的比特组合都可以被使用,而是与预测的比特模式最接近的模式可以是字符的正确的编码。因此,附加的比特可以用于容错冗余。
此外,对于应用104来说,使用编码可以产生更少的严重错误。例如,在应用104错误地预测了一个或几个比特的情况下,即使该错误足以将预测改变为不同的字符,得到的字符也可能在视觉上相似,诸如符号thunder雷与符号snow雪。与应用104在位置中插入完全随机的字符相比,看到thunder字符代替snow字符对用户来说可能不那么混乱。
此外,基于视觉上相似的字符的编码也可以使学习表示更快。如果编码是视觉感知的,则需要学习字符作为输出的过程将学习得更快。这是因为视觉上相似的字符可能在表示中共享多个比特。因此,该过程将更容易学习这些比特,并且将重点放在要学习的更具挑战性的比特上,从而使该过程能够区分视觉上相似的字符。例如,应用104可以包括光学字符识别应用。使用视觉感知编码,编码模型106可以通过首先学习字符的可以预测的更容易的比特,来更快地学习符号的共性以及差异。这同样适用于识别图像中的场景(诸如,图片中的地标)的场景文本识别(scene text recognition,STR)。此外,对于人类读者来说,可能更容易理解输出中的上述错误。
应用104也可以被用于字符的渲染,诸如模拟手写文本的文本的生成。应用104可以接收文本的表示作为输入的比特,并且生成图像作为输出。生成的图像可以表示与输入相同的字符,但同时看起来是手写的样式(加上潜在的其他条件,诸如具有同质样式等)。在这种情况下,使用表示的输入比特的编码具有优势,因为该编码促进应用104生成图像的任务,应用104可以在本质上获知由于编码与视觉上相似的字符的相似性,特定比特通常对应于特定位置的笔划。
训练
图2描绘了根据一些实施例的训练预测网络202以生成编码模型106的示例。服务器系统102使用预测网络202,该预测网络202可以接收图像的输入并输出图像的分类。图像的输入可以是语言的字符的图像。分类可以是为字符预测的标签。例如,预测网络202接收单词的符号rain,并输出符号的标签雨。
图3描绘了根据一些实施例的标签和图像的示例。可以从不同的文档裁剪出图像,并且图像包括字符的图像。如图所示,在302-1到302-5,已裁剪出了语言的不同符号。此外,可以(诸如在304-1至304-5处)提供每个图像裁剪的相应标签。
返回参考图2,预测网络202被训练为用标签对图像裁剪进行分类。从多个文档中接收图像的输入和相应的标签,这些文档包含生成编码所用语言的字符。文档可能包含该语言中的所有字符或大量字符。在一些实施例中,标签可以由用户或机器提供,并且是图像裁剪中的字符的正确的标签。例如,可以用普通话书写一组文档,并且将光学字符识别引擎应用于文档的结果指示每个字符的位置以及字符的标签。可替代地,可以从语言中的任意字符创建渲染的可搜索文档,并且渲染器可以自动地知道每个字符的位置和标识。图4描绘了根据一些实施例的用于训练预测网络202的方法的简化流程图400。在402,服务器系统102检索具有字符的文档。在404,服务器系统102提取字符的图像。在406,服务器系统102生成字符的标签。
在408,服务器系统102训练预测网络202以将字符的图像裁剪分类到相应的字符标签。可能存在K个唯一字符,并且因此,预测网络202的输出执行具有K个类别的分类任务。也就是说,给定图像裁剪,预测网络202可以输出具有与分类相对应的索引处的值的值,诸如维度为K的向量。例如,语言中的每个字符可以与维度为K的向量相关联。然后,预测网络202的输出可以对应于字符的向量中的一个。此字符是图像的分类。
在一些实施例中,编码值与分类的输出值不同。例如,为了获得编码,预测网络202可以包括以固定维度N输出编码的层,该固定维度N与二进制编码的目标维度(例如,比特的长度或比特的数量)相匹配。也就是说,如果编码均为10比特,则N的值为“10”。输出编码的层可以与输出分类的层不同。例如,输出编码的层可以是预测网络202中的内部层(例如,中间表示),而输出分类的层可以是预测网络202的输出层或最后一层。N的值可能明显小于K,这意味着内部表示比类别的数量更紧凑。
返回参考图4,在410,在训练之后,服务器系统102将图像输入到预测网络202中,并针对每个图像从预测网络202的层(例如,密集层(在下面描述))计算编码。然后,在412,服务器系统102将字符的编码存储在编码模型106中。
预测网络
可以以不同的方式从预测网络202生成编码。在一些实施例中,预测网络202中的层(例如,瓶颈层)可以以固定维度N输出值,固定维度N与编码的目标维度相匹配。在训练期间,调整预测网络202中的参数以准确地预测图像的标签。例如,预测网络202可以输出图像的分类。然后,将预测网络202输出的分类与标签304进行比较,并在训练过程中调整预测网络202中的参数,使得预测网络202可以基于标签304准确地预测图像的分类。
图5描绘了根据一些实施例的预测网络202的更详细的示例。预测网络202包括层502,层502接收图像的输入并处理那些图像。例如,图像的输入可以是图像302-1至302-5以及其他图像。在一些实施例中,层502可以是处理图像中的字符的二维(two-dimensional,2D)卷积层。层502可以处理图像以对图像的字符执行操作以分析图像的字符。这可以包括滤波器的不同维度或大小的层,并且操作可以包括池化操作以降低分辨率、激活函数等。层502还包括平坦化层,以将图像平坦化为向量。
层502还可以包括多个密集层。密集层使用多个滤波器、激活函数等来转换向量。可以理解层502的不同变化。
一个层504(诸如,密集层504)可以具有约束,诸如维度为N的输出,维度N等于编码的维度。这意味着密集层504的输出可以是等于编码中的多个值的维度为N的多个值。该约束使密集层成为瓶颈层,因为密集层的输出被限制(例如,从前一层减小)到N维度。此外,密集层504可以具有函数(例如,激活函数),该函数迫使其输出介于两个值(例如,0和1)之间。在一些实施例中,可以使用输出值介于0和1之间的S型(sigmoidal)激活函数。因此,对于每个图像,密集层504可以输出介于0和1之间的N个值。
输出层506可以是具有维度K的最后一层。维度K允许确定分类。例如,K维度可以是非负输出,其总和为1以表示概率分布。输出的值可以对应于语言中的字符的单个分类。在一些实施例中,K的值可以小于N的值。密集层504的表示可以充当瓶颈,其中数据被压缩成紧凑表示。层504和506之间的处理步骤允许将紧凑表示转换为非紧凑分类层。在504内,网络可以用相似的嵌入(例如,向量相似)表示相似的图像(例如,像素相似)。在输出层506中,来自不同字符的图像同样彼此相似(不相似)。
一旦训练了预测网络202,从密集层504接收到的具有维度N的值就可以被用于生成编码模型106中的编码。在一些实施例中,可以将每个字符的值离散化为比特以进行二进制编码。例如,服务器系统102可以将低于0.5的数字映射到二进制值“0”,并且将高于0.5的数字映射到二进制值“1”。也可以使用其他阈值或其他方法,诸如字符的图像的特定维度的值的均值或中值。
在训练期间可以使用其他变体来生成编码。例如,服务器系统102可以逐渐修改密集层504中的激活函数,以使结果越来越趋向于正好是0或1。例如,在应用soft max函数之前,可以将这些值乘以增加的“温度”值。随着更多的值趋向于0或1,这使阈值的特定值变得不那么重要。另一变体添加了补充损失项,以强调相同的字符在密集层504中应该具有相同的编码。服务器系统102可以基于它们的K维表示的不同程度,在训练期间对训练批次内的任何一对元素添加惩罚。可以使用多个差异的度量,诸如L1或L2距离计算。
因此,可以看出,可以从密集层504的输出而不是从输出层506的输出生成编码模型106。输出层506用于验证预测网络202的结果,使得预测网络202准确地预测图像中的字符。该分类任务可以确保层504中的嵌入是可区分的。
编码示例
图6描绘了根据一些实施例的编码的示例。602至612处示出的编码可以是六个符号的48维二进制编码。编码的48个值可以表示为0或1的值。比特的值为0可能是没有斜线的地方,而比特的值为1是包括斜线的地方。符号的相似的比特模式表示编码相似。例如,对于编码602和604,多个比特是相似的。此外,606和608处的编码以及610和612处的编码也包括多个相似的比特。
图7描绘了根据一些实施例的具有相似的二进制码的符号的示例。在702处,示出了602处的符号的相邻编码。在该示例中,示出了该符号的七个相邻编码。每个相应符号的比特的数量示为[7777778]。这意味着,与602处的符号相邻的第一个符号有七个翻转比特或不同比特;与602处的符号相邻的第二个符号有七个翻转比特,依此类推。对于符号604至612,704至712处具有相邻标签的每个符号可以包括不同数量的翻转比特。然而,翻转的比特的最大数量可能是48个维度中的11个。
结论
因此,使用基于视觉上相似的字符的编码可以改善应用104的性能。这减少了可能导致的错误的数量,并且还减少了可能导致的错误的影响。此外,对生成编码模型106的算法的训练可以更快且更容易。
示例实施例
在一些实施例中,一种方法包括:由计算设备将一组图像输入到网络中;由计算设备基于一组图像到一组字符中的一个或多个字符的分类训练网络;由计算设备基于将层的输出限制为多个值的网络的层、获得一个或多个字符的一组编码;以及由计算设备存储一个或多个字符的一组编码,其中,当确定相应的字符时,一组编码中的编码是可检索的。
在一些实施例中,一组字符中的字符包括一个或多个字形。
在一些实施例中,一组字符中的多个字符基于相同的字形。在一些实施例中,训练网络包括:生成一组图像中的图像的字符的输出;并将字符的输出与向图像分配字符的图像的标签进行比较。
在一些实施例中,训练网络包括:基于比较来调整网络中的一个或多个参数。
在一些实施例中,获得一组编码包括:将层的输出限制为固定维度。
在一些实施例中,固定维度是一组编码中的编码的长度的目标维度。
在一些实施例中,固定维度是编码的机器可读数字序列的数量。
在一些实施例中,一组编码中的编码包括二进制数序列。
在一些实施例中,包括相似字形的多个字符被分配具有多个值的相似编码,该相似编码在相同的位置具有相同的值。
在一些实施例中,该方法还包括:接收图像;以及,将图像分类为字符;并从一组编码中选择与字符相对应的编码。
在一些实施例中,层是网络中的内部层。
在一些实施例中,网络包括在内部层之后、输出分类的输出层。
在一些实施例中,一组图像是来自语言的字符。
在一些实施例中,语言基于语标文字。
在一些实施例中,一种其上存储有计算机可执行指令的非暂时性计算机可读存储介质,计算机可执行指令在由计算设备执行时使该计算设备可操作以:将一组图像输入到网络中;基于一组图像到一组字符中的一个或多个字符的分类训练网络;基于将层的输出限制为多个值的网络的层,获得一个或多个字符的一组编码;并且存储一个或多个字符的一组编码,其中,当确定相应的字符时,一组编码中的编码是可检索的。
在一些实施例中,一组字符中的多个字符基于相同的字形。
在一些实施例中,获得一组编码包括:将层的输出限制为固定维度。
在一些实施例中,包括相似字形的多个字符被分配具有多个值的相似编码,该相似编码在相同的位置具有相同的值。
在一些实施例中,一种装置,包括:一个或多个计算机处理器;以及包括指令的计算机可读存储介质,指令用于控制一个或多个计算机处理器可操作以:将一组图像输入到网络中;基于一组图像到一组字符中的一个或多个字符的分类训练网络;基于将层的输出限制为多个值的网络的层、获得一个或多个字符的一组编码;并且存储一个或多个字符的一组编码,其中,当确定相应的字符时,一组编码中的编码是可检索的。
系统
图8示出了根据一个实施例的专用计算机器的硬件。图8中示出了示例计算机系统810。计算机系统810包括总线805或用于传达信息的其他通信机制,以及与总线805耦合的处理器801,处理器801用于处理信息。计算机系统810还包括耦合到总线805的存储器802,存储器802用于存储要由处理器801执行的信息和指令,例如,包括用于执行上述技术的信息和指令。该存储器还可以用于在由处理器801执行的指令的执行期间存储变量或其他中间信息。该存储器的可能的实现方式可以是但不限于随机存取存储器(random accessmemory,RAM)、只读存储器(read only memory,ROM)或两者。还提供了用于存储信息和指令的存储设备803。存储设备的常见形式包括例如硬盘驱动器、磁盘、光盘、CD-ROM、DVD、闪存、USB存储卡或计算机可读取的任何其他介质。存储设备803可以包括例如用于执行上述技术的源码、二进制码或软件文件。存储设备和存储器都是计算机可读存储介质的示例。
计算机系统810可以经由总线805耦合到显示器812,诸如用于向计算机用户显示信息的阴极射线管(cathode ray tube,CRT)或液晶显示器(LCD)。输入设备811(诸如,键盘和/或鼠标)耦合到总线805,用于将来自用户的信息和命令选择传达给处理器801。这些组件的组合允许用户与系统进行通信。在一些系统中,总线805可以被分为多个专用总线。
计算机系统810还包括与总线805耦合的网络接口804。网络接口804可以在计算机系统810和本地网络820之间提供双向数据通信。网络接口804可以是数字用户线(digitalsubscriber line,DSL)或调制解调器以例如通过电话线提供数据通信连接。网络接口的另一示例是局域网(local area network,LAN)卡以提供到兼容LAN的数据通信连接。无线链接是另一示例。在任何这样的实现方式中,网络接口804发送和接收电、电磁或光信号,这些信号承载表示各种类型的信息的数字数据流。
计算机系统810可以通过网络接口804跨局域网820、内联网或互联网830发送和接收信息。在互联网示例中,软件组件或服务可以驻留在跨网络的多个不同的计算机系统810、客户端815或服务器831-835上。例如,上述过程可以在一个或多个服务器上实现。服务器831可以通过互联网830、本地网
络820和网络接口804将动作或消息从一个组件发送到计算机系统810上的组件。上述软件组件和过程可以在任何计算机系统上实现,并且例如跨网络发送和/或接收信息。
一些实施例可以在非暂时性计算机可读存储介质中实现,以供指令执行系统、装置、系统或机器使用或与指令执行系统、装置、系统或机器结合使用。计算机可读存储介质包含用于控制计算机系统执行由一些实施例所描述的方法的指令。计算机系统可以包括一个或多个计算设备。指令在由一个或多个计算机处理器执行时,可用于执行在一些实施例中描述的方法。
除非上下文另外明确指出,否则在本文的描述和所附整个权利要求书中使用的“一个、“一种”和“该”包括复数引用。此外,除非上下文另外明确指出,否则在本文的说明书和所附整个权利要求书中使用的“在...中”的含义包括“在...中”和“在...上”。
上面的描述示出了各种实施例以及一些实施例的方面可以如何被实现的示例。以上示例和实施例不应被认为是唯一的实施例,而是被呈现以说明如所附权利要求所限定的一些实施例的灵活性和优点。基于以上公开和所附权利要求,在不脱离权利要求所限定的范围的情况下,可以采用其他布置、实施例、实现方式和等同方案。
Claims (14)
1.一种用于训练预测网络的计算机实现的方法,所述方法包括:
由计算设备接收具有字符的文档;
由所述计算设备提取所述字符的图像;
由所述计算设备生成所述字符的标签;
由所述计算设备训练所述预测网络将所述字符的图像裁剪分类到对应的字符标签;
在训练之后,由所述计算设备将所述图像输入到所述预测网络中,并且由所述计算设备通过所述预测网络的密集层计算一组编码,所述密集层具有等于所述编码的维度的维度N的输出;以及
由所述计算设备在编码模型中存储所述字符的所述一组编码,
其中,当对应的字符被确定时,所述一组编码中的编码是可检索的,并且
其中,所述编码以机器可读格式表示语言中的字符,并且是基于所述语言中的字符之间的视觉相似性生成的。
2.根据权利要求1所述的计算机实现的方法,其中,训练所述预测网络包括:
针对一组图像中的图像生成字符的输出;以及
将所述字符的输出与向所述图像分配字符的所述图像的标签进行比较。
3.根据权利要求2所述的计算机实现的方法,其中,训练所述预测网络包括:
基于所述比较调整所述预测网络中的一个或多个参数。
4.根据权利要求1所述的计算机实现的方法,其中,计算所述一组编码包括:
将所述密集层的输出限制为固定维度。
5.根据权利要求4所述的计算机实现的方法,其中,所述固定维度是所述一组编码中的编码的长度的目标维度。
6.根据权利要求5所述的计算机实现的方法,其中,所述固定维度是编码的机器可读数字序列的数量。
7.根据权利要求1所述的计算机实现的方法,其中,所述一组编码中的编码包括二进制数字序列。
8.根据权利要求1所述的计算机实现的方法,还包括:
接收图像;
将图像分类到字符;以及
从所述一组编码中选择与所述字符相对应的编码。
9.根据权利要求1所述的计算机实现的方法,其中,所述密集层是所述预测网络中的内部层。
10.根据权利要求9所述的计算机实现的方法,其中,所述预测网络包括在所述内部层之后、输出所述分类的输出层。
11.根据权利要求1所述的计算机实现的方法,其中,所述语言基于语标文字。
12.一种其上存储有计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由计算设备执行时,使所述计算设备可操作以:
接收具有字符的文档;
提取所述字符的图像;
生成所述字符的标签;
训练预测网络将所述字符的图像裁剪分类到对应的字符标签;
在训练之后,将所述图像输入到所述预测网络中,并且通过所述预测网络的密集层计算一组编码,所述密集层具有等于所述编码的维度的维度N的输出;以及
在编码模型中存储所述字符的所述一组编码,
其中,当对应的字符被确定时,所述一组编码中的编码是可检索的,并且
其中,所述编码以机器可读格式表示语言中的字符,并且是基于所述语言中的字符之间的视觉相似性生成的。
13.根据权利要求12所述的非暂时性计算机可读存储介质,其中,计算所述一组编码包括:
将所述密集层的输出限制为固定维度。
14.一种装置,包括:
一个或多个计算机处理器;以及
计算机可读存储介质,包括指令,所述指令用于控制所述一个或多个计算机处理器可操作以:
接收具有字符的文档;
提取所述字符的图像;
生成所述字符的标签;
训练预测网络将所述字符的图像裁剪分类到对应的字符标签;
在训练之后,将所述图像输入到所述预测网络中,并且由计算设备通过所述预测网络的密集层计算一组编码,所述密集层具有等于所述编码的维度的维度N的输出;以及
在编码模型中存储所述字符的所述一组编码,
其中,当对应的字符被确定时,所述一组编码中的编码是可检索的,并且
其中,所述编码以机器可读格式表示语言中的字符,并且是基于所述语言中的字符之间的视觉相似性生成的。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/704,940 | 2019-12-05 | ||
US16/704,940 US11275969B2 (en) | 2019-12-05 | 2019-12-05 | Visually-aware encodings for characters |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112926373A CN112926373A (zh) | 2021-06-08 |
CN112926373B true CN112926373B (zh) | 2024-02-27 |
Family
ID=73448840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010965880.1A Active CN112926373B (zh) | 2019-12-05 | 2020-09-15 | 字符的视觉感知编码 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11275969B2 (zh) |
EP (1) | EP3832544A1 (zh) |
JP (1) | JP7365989B2 (zh) |
CN (1) | CN112926373B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115952175B (zh) * | 2023-03-14 | 2023-05-30 | 乐山师范学院 | 一种数据库索引构建方法、装置、计算机设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107705784A (zh) * | 2017-09-28 | 2018-02-16 | 百度在线网络技术(北京)有限公司 | 文本正则化模型训练方法和装置、文本正则化方法和装置 |
CN108898137A (zh) * | 2018-05-25 | 2018-11-27 | 黄凯 | 一种基于深度神经网络的自然图像字符识别方法及系统 |
CN110084172A (zh) * | 2019-04-23 | 2019-08-02 | 北京字节跳动网络技术有限公司 | 文字识别方法、装置和电子设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03220686A (ja) * | 1990-01-25 | 1991-09-27 | Toshiba Corp | 文字認識装置 |
US5337370A (en) * | 1992-02-28 | 1994-08-09 | Environmental Research Institute Of Michigan | Character recognition method employing non-character recognizer |
JPH09134409A (ja) * | 1995-11-08 | 1997-05-20 | Matsushita Electric Ind Co Ltd | 文字認識装置 |
JPH11120294A (ja) * | 1997-10-17 | 1999-04-30 | Matsushita Electric Ind Co Ltd | 文字認識装置および媒体 |
US20100306249A1 (en) * | 2009-05-27 | 2010-12-02 | James Hill | Social network systems and methods |
US9501724B1 (en) * | 2015-06-09 | 2016-11-22 | Adobe Systems Incorporated | Font recognition and font similarity learning using a deep neural network |
US10346549B1 (en) * | 2018-08-28 | 2019-07-09 | Read TwoGether Ltd. | Single-line display of composite-text |
-
2019
- 2019-12-05 US US16/704,940 patent/US11275969B2/en active Active
-
2020
- 2020-09-15 CN CN202010965880.1A patent/CN112926373B/zh active Active
- 2020-10-07 JP JP2020169801A patent/JP7365989B2/ja active Active
- 2020-11-13 EP EP20207392.0A patent/EP3832544A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107705784A (zh) * | 2017-09-28 | 2018-02-16 | 百度在线网络技术(北京)有限公司 | 文本正则化模型训练方法和装置、文本正则化方法和装置 |
CN108898137A (zh) * | 2018-05-25 | 2018-11-27 | 黄凯 | 一种基于深度神经网络的自然图像字符识别方法及系统 |
CN110084172A (zh) * | 2019-04-23 | 2019-08-02 | 北京字节跳动网络技术有限公司 | 文字识别方法、装置和电子设备 |
Non-Patent Citations (4)
Title |
---|
Glyph-aware Embedding of Chinese Characters;Falcon Z. Dai等;Proceedings of the First Workshop on Subword and Character Level Models in NLP;第64-69页 * |
Multi-font Printed Chinese Character Recognition using Multi-pooling Convolutional Neural Network;Zhuoyao Zhong等;2015 13th International Conference on Document Analysis and Recognition (ICDAR);第96-100页 * |
OPTICAL CHINESE CHARACTER RECOGNITION USING PROBABILISTIC NEURAL NETWORKS;RICHARD D. ROMERO等;Pattern Recognition;第1279-1292页 * |
基于神经网络多分类器组合模型的OCR应用研究;魏娜;贲可荣;潘杰;张秀山;;武汉理工大学学报(交通科学与工程版)(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
JP7365989B2 (ja) | 2023-10-20 |
US20210174141A1 (en) | 2021-06-10 |
EP3832544A1 (en) | 2021-06-09 |
CN112926373A (zh) | 2021-06-08 |
US11275969B2 (en) | 2022-03-15 |
JP2021089714A (ja) | 2021-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109902622B (zh) | 一种用于登机牌信息验证的文字检测识别方法 | |
CN111460827B (zh) | 文本信息处理方法、系统、设备及计算机可读存储介质 | |
CN109753661B (zh) | 一种机器阅读理解方法、装置、设备及存储介质 | |
WO2018090011A1 (en) | System and method of character recognition using fully convolutional neural networks | |
CN111914825B (zh) | 文字识别方法、装置及电子设备 | |
CN113159013B (zh) | 基于机器学习的段落识别方法、装置、计算机设备和介质 | |
CN109784330B (zh) | 招牌内容识别方法、装置及设备 | |
JP2022161564A (ja) | テキスト画像の文字を認識する機械学習モデルを訓練するシステム | |
CN112215236B (zh) | 文本识别方法、装置、电子设备及存储介质 | |
CN115862040A (zh) | 文本纠错方法、装置、计算机设备及可读存储介质 | |
CN114092931B (zh) | 场景文字识别方法、装置、电子设备及存储介质 | |
CN115512378A (zh) | 一种基于Transformer的中文环境数学公式提取及识别方法 | |
CN112926373B (zh) | 字符的视觉感知编码 | |
CN115438650A (zh) | 融合多源特征的合同文本纠错方法、系统、设备及介质 | |
CN115203415A (zh) | 一种简历文档信息提取方法及相关装置 | |
Al Ghamdi | A novel approach to printed Arabic optical character recognition | |
CN111159394A (zh) | 一种文本摘要生成方法和装置 | |
CN112036290B (zh) | 一种基于类标编码表示的复杂场景文字识别方法及系统 | |
CN110889276B (zh) | 复数融合特征提取指针式抽取三元组信息的方法、系统及计算机介质 | |
CN111126059B (zh) | 一种短文文本的生成方法、生成装置及可读存储介质 | |
CN115455955A (zh) | 基于局部和全局字符表征增强的中文命名实体识别方法 | |
CN115984886A (zh) | 表格信息抽取方法、装置、设备及存储介质 | |
CN114298032A (zh) | 文本标点检测方法、计算机设备及存储介质 | |
EP3757825A1 (en) | Methods and systems for automatic text segmentation | |
US11816182B2 (en) | Character encoding and decoding for optical character recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |