JP6511942B2 - 情報処理装置および情報処理プログラム - Google Patents

情報処理装置および情報処理プログラム Download PDF

Info

Publication number
JP6511942B2
JP6511942B2 JP2015092498A JP2015092498A JP6511942B2 JP 6511942 B2 JP6511942 B2 JP 6511942B2 JP 2015092498 A JP2015092498 A JP 2015092498A JP 2015092498 A JP2015092498 A JP 2015092498A JP 6511942 B2 JP6511942 B2 JP 6511942B2
Authority
JP
Japan
Prior art keywords
lattice
module
character
recognition
string
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
Application number
JP2015092498A
Other languages
English (en)
Other versions
JP2016212473A (ja
Inventor
瑛一 田中
瑛一 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2015092498A priority Critical patent/JP6511942B2/ja
Publication of JP2016212473A publication Critical patent/JP2016212473A/ja
Application granted granted Critical
Publication of JP6511942B2 publication Critical patent/JP6511942B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Discrimination (AREA)

Description

本発明は、情報処理装置および情報処理プログラムに関する。
特許文献1には、利便性のためユーザが連続入力した入力文字列を認識する手書き文字認識の方法と装置を提供することを課題とし、入力文字列における複数のストローク結合の単文字認識精度に関する特徴量と空間幾何学的な特徴量とを含む、入力文字列の様々な特徴量を計算する工程と確率モデル係数がサンプル訓練を通じたパラメータ推定法で推定される確率モデルにより、様々な切り出しパタンについて各ストローク結合の切り出し信頼度を計算する工程と上記複数のストローク結合の単文字認識を行うときにマルチテンプレートマッチング法で様々な書字パタンの文字を認識する工程と最良の切り出しパスを検索する工程と認識結果最適化用の後処理を行う工程とを含み、構造が単純で、ハードウェア要求が低く、認識が高速かつ高精度であり、組込システムに実装できる利点を有することが開示されている。
特許文献2には、文字の接触や続け書き等に頑健な文字列の読み取りを実現することを課題とし、文字切り出し・特徴抽出手段 は文字列画像から切り出し位置候補を検出し、文字列読み取り手段は、切り出し位置候補に基づき文字列画像から文字パタン候補を抽出し、文字出現確率計算手段を用いて考え得るあらゆる読み取り結果の妥当性を検証し、文字出現確率計算手段は文字列読み取り手段より、文字パタン候補、文字コード、文字状態、および文字パタン候補の直前に位置する文字パタン候補の文字コード、文字状態を受け取り、直前の文字パタン候補との形状的な接続の妥当性を文字状態遷移確率を用いて評価し、また文字パタン候補があるカテゴリに属する妥当性を文字テンプレートを用いて評価し、文字パタン候補がある状態、ある文字カテゴリに属する尤度(得点)を計算し、文字列読み取り手段は文字列全体での認識得点が最大となる文字列の切り出し認識結果を探索し出力することが開示されている。
特許文献3には、OCRの文字認識辞書や文字切り出しパラメータを最適化することを課題とし、文字列照合部は、文字認識部が出力する文字認識結果と、入力された文書画像の正解テキストを動的計画法により照合し、2文字列間の累積距離値、文字どうしの対応関係および誤認識箇所を抽出し、特に、ここで用いる動的計画法では、文字コードが正しく対応する格子点から水平・垂直方向にのびる経路に対して、通常の距離値に加え、ペナルティとなる距離値を上乗せすることにより、文字どうしの対応関係を正確に求め、メンテナンス部は、文字列照合部が出力する累積距離値ができるだけ小さくなるように、誤認識した文字の文字認識用辞書を修正したり、文字切り出しパラメータを微調整することが開示されている。
非特許文献1〜5には、機械学習、文字認識技術に関する技術が開示されている。
特表2012−520492号公報 特開2000−207495号公報 特開平09−251518号公報
John D.Lafferty,Andrew McCallum,and Fernando C.N.Pereira."Conditional random fields: Probabilistic models for segmenting and labeling sequence data," In Proceedings of the Eighteenth International Conference on Machine Learning,ICML‘01,pp.282−289,San Francisco,CA,USA,2001.Morgan Kaufmann Publishers Inc. Peng,Jian and Bo,Liefeng and Xu,Jinbo,"Conditional Neural Fields," Advances in neural information processing systems, pp.1419−1427,2009. Zhou,Xiang−Dong and Liu,Cheng−Lin and Nakagawa,Masaki,"Online handwritten Japanese character string recognition using conditional random fields," IEEE Computer Society,In Proceedings of the 2009 10th International Conference on Document Analysis and Recognition,ICDAR‘09,pp.521−525,Washington,DC,USA,2009. Zhou,Xiang−Dong and Wang,Da−Han and Tian,Feng and Liu,Cheng−Lin and Nakagawa,Masaki,"Handwritten Chinese/Japanese text recognition using semi−Markov conditional random fields," IEEE Trans,Pattern Analysis and Machine Intelligence,Vol.35,No.10,pp.2413−2426,2013. Zhou,Xiang−Dong and Zhang,Yan−Ming and Tian,Feng and Wang,Hong−An and Liu,Cheng−Lin, "Minimum−risk training for semi−Markov conditional random fields with application to handwritten Chinese/Japanese text recognition," Pattern Recognition,Vol.47,NO.5,pp.1904−1916,2014,Elsevier.
本発明は、認識対象の文字認識における機械学習において、教師信号として単文字間の境界に関する情報を不要とするようにした情報処理装置および情報処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、認識対象についての準文字パタン列と正解テキスト列を受け付ける受付手段と、前記認識対象に対する文字認識結果の系列を含む第1のラティスと、準文字パタン列の組み合わせによって、前記認識対象に対する正解テキスト列の系列を含む第2のラティスを作成する作成手段と、前記作成手段によって作成された第1のラティスと第2のラティスに含まれる系列の評価値の微分値の期待値を各々算出し、機械学習における認識パラメータ更新量として、該第1のラティスの期待値と該第2のラティスの期待値の差分を算出する差分手段を具備することを特徴とする情報処理装置である。
請求項2の発明は、前記作成手段は、前記第1のラティスと前記第2のラティスを統合した第3のラティスを作成し、該第3のラティスを第1のラティスとすることを特徴とする請求項1に記載の情報処理装置である。
請求項3の発明は、単文字パタンの単文字識別結果を記憶する記憶手段をさらに具備し、前記作成手段は、前記記憶手段に記憶されている単文字パタンの単文字識別結果を用いることを特徴とする請求項1又は2に記載の情報処理装置である。
請求項4の発明は、前記第1のラティスの期待値計算において、局所的なエネルギー関数に関する計算結果を記憶する第2の記憶手段をさらに具備し、前記差分手段は、前記第2の記憶手段に記憶されている計算結果を前記第2のラティスの期待値計算に用いることを特徴とする請求項1又は2に記載の情報処理装置である。
請求項5の発明は、前記第1のラティスと前記第2のラティスのペアのセットを作成する作成手段と、前記セットからサブセットを抽出する抽出手段と、前記抽出手段によって抽出されたサブセットに含まれるそれぞれのペアについて、認識パラメータ更新量を算出する請求項1から4のいずれか一項に記載の情報処理装置を含む算出手段と、前記認識パラメータ更新量のセットについて、対応する該認識パラメータ更新量の和を算出し、予め定められた係数を乗算し、現在の認識パラメータ更新量から該乗算結果の値を減算することで、認識パラメータを更新する更新手段を具備し、前記抽出手段、前記算出手段、前記更新手段による処理を繰り返すことを特徴とする情報処理装置である。
請求項6の発明は、前記認識対象は、文字画像又は文字のストローク情報であることを特徴とする請求項1から5のいずれか一項に記載の情報処理装置である。
請求項7の発明は、コンピュータを、認識対象についての準文字パタン列と正解テキスト列を受け付ける受付手段と、前記認識対象に対する文字認識結果の系列を含む第1のラティスと、準文字パタン列の組み合わせによって、前記認識対象に対する正解テキスト列の系列を含む第2のラティスを作成する作成手段と、前記作成手段によって作成された第1のラティスと第2のラティスに含まれる系列の評価値の微分値の期待値を各々算出し、機械学習における認識パラメータ更新量として、該第1のラティスの期待値と該第2のラティスの期待値の差分を算出する差分手段として機能させるための情報処理プログラムである。
請求項1の情報処理装置によれば、認識対象の文字認識における機械学習において、教師信号として単文字間の境界に関する情報を不要とすることができる。
請求項2の情報処理装置によれば、第2のラティスを含めた第1のラティスを用いて、機械学習をすることができる。
請求項3の情報処理装置によれば、2回目以降の重複する単文字パタンの文字認識については、その文字認識を行う必要がない。
請求項4の情報処理装置によれば、2回目以降の重複する期待値計算については、その期待値計算を行う必要がない。
請求項5の情報処理装置によれば、認識パラメータを更新しない場合に比べて、より良好な認識パラメータが得られる。
請求項6の情報処理装置によれば、文字画像又は文字のストローク情報を認識対象とすることができる。
請求項7の情報処理プログラムによれば、認識対象の文字認識における機械学習において、教師信号として単文字間の境界に関する情報を不要とすることができる。
入力の文字列パタンの例を示す説明図である。 準文字パタン列の例を示す説明図である。 単文字パタン列候補の例を示す説明図である。 文字列認識の出力候補ラティスの例を示す説明図である。 テキスト列限定ラティスの例を示す説明図である。 第1の実施の形態(学習用ラティス作成)の構成例についての概念的なモジュール構成図である。 第1の実施の形態(認識パラメータ更新量計算)の構成例についての概念的なモジュール構成図である。 第2の実施の形態(和ラティス作成)の構成例についての概念的なモジュール構成図である。 テキスト列限定の出力候補ラティスと出力候補ラティスの和の例を示す説明図である。 第3の実施の形態(単文字識別結果を転用)の構成例についての概念的なモジュール構成図である。 第4の実施の形態(境界評価値を転用)の構成例についての概念的なモジュール構成図である。 第5の実施の形態(SGD)の構成例についての概念的なモジュール構成図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
本実施の形態は、文字列認識技術に関するものである。以下に、本実施の形態の説明で用いる用語の定義を行う。
文字列認識とは、文字画像又は文字のストロークである文字列パタンの入力に対して、対応するテキスト列を出力する処理である。特に、文字数と単文字どうしの境界が未知である文字列の文字列認識の機械学習技術に関するものである。すなわち、単文字が偏や旁からなるため、単文字が複数の連結成分からなる日本語や、単文字どうしが接触して筆記されるため、1つの連結成分が複数の単文字からなる筆記体等の文字列を認識対象とする。
なお、本実施の形態の説明では、画像とストロークを「パタン」と総称する。すなわち、文字列認識の入力は、文字列画像又は文字列ストロークであるが、これらを文字列パタンと総称する。また、文字列認識の正解に相当する単文字の種別(読み)を「テキスト」と呼ぶ。また、単文字パタンどうしの境界を「境界」と呼ぶ。文字列認識の出力は境界列で分割された単文字パタン列とその読みであるテキスト列であるが、これらをまとめて「出力系列」と呼ぶ。また、認識パラメータを学習データから推定することを「学習」(機械学習)と呼ぶ。
まず、本実施の形態を説明する前に、その前提又は本実施の形態を利用する情報処理装置について説明する。なお、この説明は、本実施の形態の理解を容易にすることを目的とするものである。
本実施の形態(すなわち、認識処理に用いる機械学習に関する情報処理装置)を適用する文字列認識の処理を説明する。
図1に入力の文字列パタンの例を示す。図1の例に示す入力に対しては、「本村拓哉」というテキスト列を出力することが良好な文字列認識結果といえる。
図1の例に示す文字列は、文字と文字との間である境界が未知であるため、単文字識別を行うべき領域も未知となる。そこで、ここでの文字列認識は、まず、多数の境界の候補を検出し、単文字パタン以下の単位である部分パタンを作成する。この部分パタンを準文字パタンと呼ぶ。準文字パタン列の例を図2に示す。なお、図2は分かりやすさのため輝度を反転している。
続いて、準文字パタン列について、全ての単文字パタン列の候補を作成する。単文字パタンは連続する1つ以上の準文字パタンによって構成される。よって、(テキスト数が未知であり)準文字パタン数がN個のとき、単文字パタン列の候補数は全部で、数式1に示す数だけある。
Figure 0006511942
このとき、単文字パタン候補を間引きしてもよい。例えば、M個以下の準文字パタンからなる単文字パタンを作成するという方法がある。M=3としてこの方法を適用した単文字パタン列候補の例を図3に示す。つまり、単文字パタンを、3個以下の連続する準文字パタン(1個の準文字パタンを含む)によって構成する。例えば、左端にあるxを含む単文字パタンには、xの単文字パタン、xとxの単文字パタン、xとxとxの単文字パタンがある。図3に示す例において、丸角長方形が単文字パタンを表す。その丸角長方形間をつなぐ直線(リンク)は、単文字パタンどうしが隣り合うことを示す。隣り合うノードを辿ることで単文字パタン列が得られる。また、bos,eosは単文字パタン列の始点と終点を表す模式的なノードである。なお、良好な文字列認識結果が得られる単文字パタン列は、1文字目を(x)、2文字目を(x,x)、3文字目を(x,x)、4文字目を(x,x)とするものであり、図3の例では、黒い丸角長方形(ノード310、ノード320、ノード340、ノード360)で図示している。
続いて、単文字識別機を用いて単文字領域(図3の例では、丸角長方形で示された単文字パタン)のテキスト候補を作成する。これにより、文字列認識が出力しうる全ての単文字パタン列とテキスト列の候補が作成される。
このとき、テキスト候補を間引いてもよい。例えば、単文字識別の確信度の高い上位K個のテキストを採用するという方法がある。K=3としてこの方法を適用した文字列認識が出力しうる全ての単文字パタン列とテキスト列の候補の例を図4に示す。図4に示す例は、図3の例に示したものにテキスト候補を付加した例であり、テキストを単文字パタンの中に図示している。隣り合うノードを辿ることで、単文字パタン列とテキスト列が得られる。なお、良好な文字列認識結果は、1文字目を((x),‘本’)、2文字目を((x,x),‘村’)、3文字目を((x,x),‘拓’)、4文字目を((x,x),‘哉’)とするものあり、図4の例では、ノード410、ノード420、ノード440、ノード460で図示している。
最後に、これらの文字列認識の出力候補から、最適なものを選択し出力する。
いま、入力の準文字パタン列をX=(x,…,x)とする。なお、Nは準文字パタン列長である。また、出力の単文字パタン列をS=(s,…,s)とする。なお、s=(b,e)であり、bは単文字パタンsに含まれる準文字の開始番号、eは終了番号を表す。すなわち、単文字パタンsは、準文字パタンである数式2からなる。
Figure 0006511942
また、b=1、e=N、および、bt−1+1=eである。また、テキスト列をY=(y,…,y)とする。以上において、Tは単文字パタン数とテキスト数を表し、T≦Nである。
さらに、v=(s,y)として、文字列認識の出力系列をV=(v,…,v)とすると、図4に示す例は、Vの全候補を含むラティスと見ることができる。最適な候補の選択とは、数式3のようにエネルギー関数E(X,V,Θ)が最小となるVを探索することである。なお、Θは学習によって得られる認識パラメータである。
Figure 0006511942
エネルギー関数E(X,V,Θ)は、数式4のように計算すればよい。これは、隣り合う出力系列の要素から計算される局所的なエネルギー関数E(vt−1,vt,X,Θ)の和となっている。このようにエネルギー関数を部分に分解することで、数式3の探索がViterbi−Algorithmと呼ばれる方法で高速に解かれることが知られている。
Figure 0006511942
さらに、局所的なエネルギー関数E(vt−1,v,X,Θ)は、数式6や数式7、又は、数式8のように計算すればよい。それぞれ、数式6は非特許文献1で、数式7は非特許文献2で、数式8は非特許文献3、4、5で示される方法である。
Figure 0006511942
なお、数式5はパラメータΘの要素である。また、F,Vはパラメータのサイズである。また、f(st−1,s,X)やf(st−1,s,yt−1、y,X)は特徴量関数である。また、σ(・)はシグモイド関数等を用いればよい。
Figure 0006511942
Figure 0006511942
Figure 0006511942
なお、特徴量関数は、非特許文献3、4、5や特許文献1等で示される方法を用いればよい。また、数式3では、v=(s,y)が必要となるが、これはXや事前の知識に基づいて計算される仮想的なノード(すなわち、bos)を設定すればよい。例えば、s=(0,0)としてyにはスペースコードや、文字列の始端を表す任意のシンボル等を設定すればよい。
特許文献1、2、3や非特許文献3、4、5に示される文字列認識技術は、いずれも本実施の形態と同様に文字数と境界が未知である文字列を認識しようとするものである。また、その認識パラメータの学習方法が示されるものである。
非特許文献3、4、5や特許文献1に示される技術は、学習の教師信号として正解の出力系列が必要となる。すなわち、正解のテキスト列と正解の単文字パタン列(境界列)の両方が必要であるため、学習データ作成コストが大きい。
これに対して、特許文献2や特許文献3に示される技術は、学習の教師信号として正解のテキスト列のみ必要であるため、単文字パタン列の教師信号付与コストがなく、学習データ作成のコストが小さい。しかし、特許文献2に示される技術は、教師信号として与えられない単文字パタン列の情報を補うため、学習の前処理として境界の分割を行い単文字パタン列を一意に決定するが、この単文字パタン列が学習の教師信号となるため、ある程度良好な認識パラメータを学習の初期値としなければ良好な認識パラメータが得られない。また、特許文献3に示される技術は、学習の目的関数として正解のテキスト列と文字列認識が出力するテキスト列の編集距離を用いるが、編集距離はテキストの一致不一致に基づく離散量であり一般に評価関数に対して精度が粗いため、学習によって良好な認識パラメータが得られない。さらに、目的関数である編集距離が認識パラメータによって微分不可能であるため、計算コストの大きい数値微分によって学習を行う必要があり、計算コストが大きい。
以上のように、文字列認識において、従来の学習によって良好な認識パラメータを得るためには学習データ作成のコストが大きくなる。
本実施の形態の概要を説明する。
本実施の形態は、文字列認識機が文字列パタンに対して、正解のテキスト列で限定される出力系列の候補を作成することで、学習データ作成のコストを減少させる。具体的には、図2の例に示すような準文字パタン列に対して、図5の例に示すようなテキスト列で限定された出力候補ラティスを作成する。以下では、これをテキスト列限定ラティスと呼ぶ。テキスト列限定ラティスには、図4の例に示す出力候補ラティスに含まれる正解の出力系列の他、正解のテキスト列を持つが、単文字パタン列が異なる出力系列を持つ。すなわち、正解の出力系列である「ノード510、ノード520、ノード540、ノード560」の他に、正解でない出力系列(境界が誤っているものが含まれている出力系列)が教師信号として与えられる。
しかし、本実施の形態の学習においては、テキスト列限定ラティスのそれぞれの出力系列について、その評価値で重み付けを行うことで、学習の進行に伴い、正解でない出力系列の影響が低減され、学習が良好なものとなる。
本実施の形態によれば、特許文献2や特許文献3に示される技術と同様に、教師信号として正解のテキスト列のみが必要であり、単文字パタン列の教師信号付与コストがない学習データ作成コストの小さい文字列認識の学習が実現される。
さらに本実施の形態は、前処理として単文字パタン列を一意に決定しないため、初期値に依存せず、学習によって良好な認識パラメータが得られる、また、本実施の形態の目的関数は、非特許文献3、4、5や特許文献1と同様に、認識パラメータによって微分可能であり、評価関数に対して十分な精度を持つため、学習によって良好な認識パラメータが得られ、また、その計算コストが小さい。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
<<第1の実施の形態>>
図6は、第1の実施の形態(学習用ラティス作成)の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システムおよび方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
本実施の形態の最小構成の実施の形態の例を図6、図7に示す。本実施の形態によって、学習における認識パラメータ更新量が得られる。
図6の例に示す第1の実施の形態(学習用ラティス作成)は、単文字パタン列候補作成モジュール610、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630、単文字識別1モジュール640、学習用ラティス書き出しモジュール650を有している。
図6の例に示す構成は、準文字パタン列608と正解テキスト列606を入力として(つまり、境界に関する情報は入力として不要である)、出力候補ラティス622とテキスト列限定ラティス632を出力する。以下では、これら2つのラティスのペアを学習用ラティス652と呼ぶ。
単文字パタン列候補作成モジュール610は、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630と接続されており、認識対象についての準文字パタン列608を受け付け、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630に単文字パタン列候補612を渡す。
出力候補ラティス作成1モジュール620は、単文字パタン列候補作成モジュール610、単文字識別1モジュール640、学習用ラティス書き出しモジュール650と接続されており、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、単文字識別1モジュール640に単文字パタン624を渡し、単文字識別1モジュール640から単文字識別結果642を受け取り、学習用ラティス書き出しモジュール650に出力候補ラティス622を渡す。出力候補ラティス作成1モジュール620は、認識対象に対する文字認識結果の系列を含む出力候補ラティス622を作成する。
テキスト列限定ラティス作成1モジュール630は、単文字パタン列候補作成モジュール610、単文字識別1モジュール640、学習用ラティス書き出しモジュール650と接続されており、正解テキスト列606を受け付け、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、単文字識別1モジュール640に単文字パタン634を渡し、単文字識別1モジュール640から単文字識別結果644を受け取り、学習用ラティス書き出しモジュール650にテキスト列限定ラティス632を渡す。テキスト列限定ラティス作成1モジュール630は、準文字パタン列の組み合わせによって、認識対象に対する正解テキスト列の系列を含むテキスト列限定ラティス632を作成する。なお、出力候補ラティス作成1モジュール620とテキスト列限定ラティス作成1モジュール630の処理を、1つのモジュールで行うようにしてもよい。
単文字識別1モジュール640は、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630と接続されており、出力候補ラティス作成1モジュール620から単文字パタン624を受け取り、出力候補ラティス作成1モジュール620に単文字識別結果642を渡し、テキスト列限定ラティス作成1モジュール630から単文字パタン634を受け取り、テキスト列限定ラティス作成1モジュール630に単文字識別結果644を渡す。
学習用ラティス書き出しモジュール650は、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630と接続されており、出力候補ラティス作成1モジュール620から出力候補ラティス622を、テキスト列限定ラティス作成1モジュール630からテキスト列限定ラティス632を受け取り、学習用ラティス652を出力する。
まず、単文字パタン列候補作成モジュール610が、図3の例に示すような単文字パタン列候補612を作成する。
続いて、出力候補ラティス作成1モジュール620が、図4の例に示すような出力候補ラティス622を作成する。また、テキスト列限定ラティス作成モジュール630が、図5の例に示すようなテキスト列限定ラティス632を作成する。このとき、単文字パタン列候補612に含まれる単文字パタン624、634について、単文字識別1モジュール640によって単文字識別結果642、644を得る。
最後に、学習用ラティス書き出しモジュール650が、出力候補ラティス622とテキスト限定ラティス632をペアとして書き出す。
図7の例に示す第1の実施の形態(認識パラメータ更新量計算)は、学習用ラティス読み込みモジュール710、期待値計算1モジュール720、期待値計算1モジュール730、差分計算モジュール740を有している。
図7の例に示す構成は、学習用系列候補である学習用ラティス652(学習用ラティス書き出しモジュール650の出力)と認識パラメータ706を入力として、認識パラメータ更新量742を出力する。
学習用ラティス読み込みモジュール710は、期待値計算1モジュール720、期待値計算1モジュール730と接続されており、学習用ラティス652を受け付け、期待値計算1モジュール720に出力候補ラティス712を、期待値計算1モジュール730にテキスト列限定ラティス714を渡す。
期待値計算1モジュール720は、学習用ラティス読み込みモジュール710、差分計算モジュール740と接続されており、認識パラメータ706を受け付け、学習用ラティス読み込みモジュール710から出力候補ラティス712を受け取り、差分計算モジュール740に出力候補ラティス期待値722を渡す。
期待値計算1モジュール730は、学習用ラティス読み込みモジュール710、差分計算モジュール740と接続されており、認識パラメータ706を受け付け、学習用ラティス読み込みモジュール710からテキスト列限定ラティス714を受け取り、差分計算モジュール740にテキスト列限定ラティス期待値732を渡す。期待値計算1モジュール730は、出力候補ラティス作成1モジュール620によって作成された出力候補ラティス622と、テキスト列限定ラティス作成1モジュール630によって作成されたテキスト列限定ラティス632に含まれる系列の評価値の微分値の期待値を各々算出し、機械学習における認識パラメータ更新量として、その第1のラティスの期待値とその第2のラティスの期待値の差分を算出する。
差分計算モジュール740は、期待値計算1モジュール720、期待値計算1モジュール730と接続されており、期待値計算1モジュール720から出力候補ラティス期待値722を、期待値計算1モジュール730からテキスト列限定ラティス期待値732を受け取る。
まず、学習用ラティス読み込みモジュール710が、学習用ラティス652を読み出し、出力候補ラティス712とテキスト列限定ラティス714を出力する。
続いて、期待値計算1モジュール720、730が、数式9のFunc(G,Θ)をそれぞれのラティスについて計算する。数式9は、ラティスGと認識パラメータΘを入力としている。なお、Θは、パラメータの次元数だけの長さを持つベクトルである。また、edgesは、ラティスGに含まれる全ての隣り合うノードのペアの集合である。これは、図4、図5に示す例では、実線で結ばれる2つのノードのペアに相当する。なお、簡単のため局所的なエネルギー関数に関する式を、数式10、数式11のように省略している。また、α(v),β(v),Zは、それぞれ数式12、数式13、数式14、数式15、数式16のように計算される。なお、数式12において、prevs(v)は、ラティスGに含まれるノードvの直前のノードの集合である。また、数式13において、posts(v)は、ラティスGに含まれるノードvの直後のノードの集合である。
続いて、差分計算モジュール740が数式17のパラメータ更新量∇ΘL(X,Y,Θ)を計算する。なお、出力候補ラティス712をG(X)としている。また、テキスト列限定ラティス714をG(X,Y)としている。
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
Figure 0006511942
数式17において、テキスト列限定ラティスG(X,Y)から計算されるFunc(G(X,Y),Θ)は、数式18の計算に相当する。数式18のP(S|X,Y,Θ)は、準文字パタン列X、正解のテキスト列Y、および認識パラメータΘが与えられたときの単文字パタン列Sの評価値であり、数式19のように計算する。また、非特許文献4と同様に数式20のように計算してもよい。すなわち、数式18は、テキスト列限定ラティスに含まれるそれぞれの系列から計算されるパラメータ更新量について、その評価値で重み付けされた和を計算している。なお、数式19が確率の定義を満たすため、数式18は期待値と呼ぶことができる。これにより、学習によって認識パラメータΘが良好となるのに伴って正解の出力系列以外の評価値は小さくなるため、誤った教師信号の影響を低減され、良好な学習が実現される。なお、出力候補ラティスG(X)から計算されるFunc(G(X,Y),Θ)は非特許文献3、4に示される技術と同様である。
また、テキスト列限定ラティスを利用して、非特許文献5に示される技術のように認識パラメータ更新量を計算してもよい。
Figure 0006511942
Figure 0006511942
Figure 0006511942
なお、実施においては図6の例に示す学習用ラティス書き出しモジュール650と、図7の例に示す学習用ラティス読み出しモジュール710を取り除き、図6と図7をつなげてもよい。
しかし、学習においては、多数の準文字パタン列608を学習データとすることが多く、また、認識パラメータの更新の繰り返しが行われることが多い。認識パラメータ更新量742は、図7の例に示す実施の形態に示す通り、学習用ラティス652から計算される。そこで、まずは、図6の例に示す実施の形態を用いて多数の学習用ラティス652を作成し、記憶装置に保持しておき、続いて、図7の例に示す実施の形態によって、その記憶装置から読み出して、パラメータ更新量を計算することで、学習用ラティス作成が初回のみで済み、計算コストが小さくなる。
<<第2の実施の形態>>
図8は、第2の実施の形態(和ラティス作成)の構成例についての概念的なモジュール構成図である。
第2の実施の形態は、単文字パタン列候補作成モジュール610、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630、単文字識別1モジュール640、和ラティス作成モジュール850、学習用ラティス書き出しモジュール650を有している。図6の例に示した構成に、和ラティス作成モジュール850を加えたものである(図6の例に示す実施の形態の別形態)。なお、前述の実施の形態と同種の部位には同一符号を付し重複した説明を省略する(以下、同様)。
第2の実施の形態は、テキスト列限定ラティス632と出力候補ラティス622の和であるラティス(和ラティス852)を作成する。この第2の実施の形態によって、図6、図7の例に示す第1の実施の形態よりもさらに良好な認識パラメータ更新量742が得られる。なお、前述したように、第1の実施の形態の出力候補ラティス622として、単文字識別の確信度の高い上位K個のテキストを採用した場合(図4の例では、上位3個まで)では、正解テキストが、その中に含まれていない場合もあり得る。第2の実施の形態は、このような場合に対処するものである。
出力候補ラティス作成1モジュール620は、単文字パタン列候補作成モジュール610、単文字識別1モジュール640、和ラティス作成モジュール850と接続されており、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、単文字識別1モジュール640に単文字パタン624を渡し、単文字識別1モジュール640から単文字識別結果642を受け取り、和ラティス作成モジュール850に出力候補ラティス622を渡す。
テキスト列限定ラティス作成1モジュール630は、単文字パタン列候補作成モジュール610、単文字識別1モジュール640、和ラティス作成モジュール850、学習用ラティス書き出しモジュール650と接続されており、正解テキスト列606を受け付け、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、単文字識別1モジュール640に単文字パタン634を渡し、単文字識別1モジュール640から単文字識別結果644を受け取り、和ラティス作成モジュール850と学習用ラティス書き出しモジュール650にテキスト列限定ラティス632を渡す。
和ラティス作成モジュール850は、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630、学習用ラティス書き出しモジュール650と接続されており、出力候補ラティス作成1モジュール620から出力候補ラティス622を、テキスト列限定ラティス作成1モジュール630からテキスト列限定ラティス632を受け取り、学習用ラティス書き出しモジュール650に和ラティス852を渡す。和ラティス作成モジュール850は、出力候補ラティス作成1モジュール620が作成した出力候補ラティス622とテキスト列限定ラティス作成1モジュール630が作成したテキスト列限定ラティス632を統合した和ラティス852を作成し、その和ラティス852を第1の実施の形態における出力候補ラティス622として扱う。ここでの統合とは、いわゆる和(論理和処理)であり、具体的には、テキスト列限定ラティス632に含まれるノードが出力候補ラティス622にない場合は、そのノードを出力候補ラティス622に付加し、テキスト列限定ラティス632に含まれるノードが出力候補ラティス622にある場合は、何もしない(出力候補ラティス622にノードを加えることをしない)。この処理を、テキスト列限定ラティス632内の全てのノードに対して行う。
学習用ラティス書き出しモジュール650は、和ラティス作成モジュール850、テキスト列限定ラティス作成1モジュール630と接続されており、和ラティス作成モジュール850から和ラティス852を、テキスト列限定ラティス作成1モジュール630からテキスト列限定ラティス632を受け取り、学習用ラティス652を出力する。
第2の実施の形態は、学習用系列候補である学習用ラティス652と認識パラメータ706を入力として、認識パラメータ更新量742を出力する。図6の例と異なり、和ラティス作成モジュール850が出力候補ラティス622とテキスト列限定ラティス632の和であるラティス(和ラティス852)を作成する。和ラティス852は、テキスト列限定ラティス632を包含する。すなわち、テキスト列限定ラティス632に含まれる出力系列は全て和ラティス852に含まれる。和ラティス852の例を図9に示す。図9に示す例は、図4と図5の例に示すラティスの和となっている。なお、図5の例で示したノードは、図9の例では、点線の丸角長方形で示している。
第2の実施の形態における学習用ラティス652は、図6の例に示す実施の形態について、出力候補ラティス622を和ラティス852で置き換えたものに相当する。
テキスト列限定ラティス632には、正解でない出力系列が含まれる。一方、テキスト列限定ラティス632が包含される第2の実施の形態における和ラティス852にも、上記の正解でない出力系列が包含される。これにより、数式17に示すようにそれぞれのラティスに対して期待値計算を行いその差を計算することで、正解でない出力系列の影響が相殺され、より良好な認識パラメータ更新量742が得られる。
<<第3の実施の形態>>
図10は、第3の実施の形態(単文字識別結果を転用)の構成例についての概念的なモジュール構成図である。
第3の実施の形態は、単文字パタン列候補作成モジュール610、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040、単文字識別結果記憶モジュール1060、学習用ラティス書き出しモジュール650を有している。図6の例に示した構成に、単文字識別結果記憶モジュール1060を加え、単文字識別1モジュール640の代わりに単文字識別2モジュール1040、出力候補ラティス作成1モジュール620の代わりに出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成1モジュール630の代わりにテキスト列限定ラティス作成2モジュール1030としたものである。
第3の実施の形態によれば、重複する単文字パタンの単文字識別の計算コストを減少させる。本実施の形態は図6、図8の例に示した構成の別形態である。なお、図8の例に示した構成と組み合わせてもよい。つまり、単文字パタン列候補作成モジュール610、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040、単文字識別結果記憶モジュール1060、和ラティス作成モジュール850、学習用ラティス書き出しモジュール650を有したものとしてもよい。
単文字パタン列候補作成モジュール610は、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040と接続されており、準文字パタン列608を受け付け、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040に単文字パタン列候補612を渡す。
出力候補ラティス作成2モジュール1020は、単文字パタン列候補作成モジュール610、単文字識別結果記憶モジュール1060、学習用ラティス書き出しモジュール650と接続されており、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、学習用ラティス書き出しモジュール650に出力候補ラティス622を渡す。出力候補ラティス作成2モジュール1020は、出力候補ラティス作成1モジュール620と同等の処理を行うが、単文字識別結果記憶モジュール1060に記憶されている単文字パタンの単文字識別結果を用いる。
テキスト列限定ラティス作成2モジュール1030は、単文字パタン列候補作成モジュール610、単文字識別結果記憶モジュール1060、学習用ラティス書き出しモジュール650と接続されており、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取り、学習用ラティス書き出しモジュール650にテキスト列限定ラティス632を渡す。テキスト列限定ラティス作成2モジュール1030は、テキスト列限定ラティス作成1モジュール630と同等の処理を行うが、単文字識別結果記憶モジュール1060に記憶されている単文字パタンの単文字識別結果を用いる。
単文字識別2モジュール1040は、単文字パタン列候補作成モジュール610、単文字識別結果記憶モジュール1060と接続されており、単文字パタン列候補作成モジュール610から単文字パタン列候補612を受け取る。単文字識別2モジュール1040は、単文字識別1モジュール640と同等の処理を行うが、その結果を単文字識別結果記憶モジュール1060に記憶させる。
単文字識別結果記憶モジュール1060は、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040と接続されている。単文字識別結果記憶モジュール1060は、単文字パタンの単文字識別結果を記憶する。
学習用ラティス書き出しモジュール650は、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030と接続されており、出力候補ラティス作成2モジュール1020から出力候補ラティス622を、テキスト列限定ラティス作成2モジュール1030からテキスト列限定ラティス632を受け取り、学習用ラティス652を出力する。
第3の実施の形態では、まず、単文字識別2モジュール1040が単文字パタン列の全ての単文字パタンについて単文字識別を行い、その結果を保持しておく。続いて、出力候補ラティス作成2モジュール1020とテキスト列限定ラティス作成2モジュール1030は、前記の単文字識別結果を参照してラティス(出力候補ラティス622、テキスト列限定ラティス632)を作成する。図4、図5、図8の例に示した通り、出力候補ラティス622とテキスト列限定ラティス632は共通の単文字識別結果を持つため、第3の実施の形態のように一度単文字識別を行った結果を保持・参照することで、単文字識別の計算コストが小さくなる。
<<第4の実施の形態>>
図11は、第4の実施の形態(境界評価値を転用)の構成例についての概念的なモジュール構成図である。
第4の実施の形態は、学習用ラティス読み込みモジュール710、期待値計算2モジュール1120、期待値計算3モジュール1130、局所エネルギー関数計算結果記憶モジュール1150、差分計算モジュール740を有している。図7の例に示した構成に、局所エネルギー関数計算結果記憶モジュール1150を加え、期待値計算1モジュール720の代わりに期待値計算2モジュール1120、期待値計算1モジュール730の代わりに期待値計算3モジュール1130としたものである。
第4の実施の形態によれば、重複する局所的なエネルギー関数の計算結果を転用することによって、そのエネルギー関数の計算コストを減少させる。本実施の形態は、図7の実施の形態の別形態である。
学習用ラティス読み込みモジュール710は、期待値計算2モジュール1120、期待値計算3モジュール1130と接続されており、学習用ラティス652を受け付け、期待値計算2モジュール1120に出力候補ラティス712を、期待値計算3モジュール1130にテキスト列限定ラティス714を渡す。
期待値計算2モジュール1120は、学習用ラティス読み込みモジュール710、局所エネルギー関数計算結果記憶モジュール1150、差分計算モジュール740と接続されており、認識パラメータ706を受け付け、学習用ラティス読み込みモジュール710から出力候補ラティス712を受け取り、差分計算モジュール740に出力候補ラティス期待値722を渡す。期待値計算2モジュール1120は、期待値計算1モジュール720と同等の処理を行うが、その計算結果を局所エネルギー関数計算結果記憶モジュール1150に記憶させる。
期待値計算3モジュール1130は、学習用ラティス読み込みモジュール710、局所エネルギー関数計算結果記憶モジュール1150、差分計算モジュール740と接続されており、認識パラメータ706を受け付け、学習用ラティス読み込みモジュール710からテキスト列限定ラティス714を受け取り、差分計算モジュール740にテキスト列限定ラティス期待値732を渡す。期待値計算3モジュール1130は、期待値計算1モジュール730と同等の処理を行うが、期待値計算2モジュール1120と共通する局所的なエネルギー関数に関する計算結果は、局所エネルギー関数計算結果記憶モジュール1150に記憶されている計算結果を用いる。
局所エネルギー関数計算結果記憶モジュール1150は、期待値計算2モジュール1120、期待値計算3モジュール1130と接続されている。局所エネルギー関数計算結果記憶モジュール1150は、期待値計算2モジュール1120による期待値計算において、期待値計算2モジュール1120と期待値計算3モジュール1130とで共通する局所的なエネルギー関数に関する計算結果を記憶する。
差分計算モジュール740は、期待値計算2モジュール1120、期待値計算3モジュール1130と接続されており、期待値計算2モジュール1120から出力候補ラティス期待値722を、期待値計算3モジュール1130からテキスト列限定ラティス期待値732を受け取る。
第4の実施の形態において、期待値計算2モジュール1120は数式9を計算し、その∇ΘE(v’,v)、また、数式10、数式11の値を保持しておく。続いて、期待値計算3モジュール1130は、局所エネルギー関数計算結果記憶モジュール1150に保持された前記値を参照して数式9を計算する。もし、対応する∇ΘE(v’,v)、また、数式10、数式11の値が保持されていなければ、新たに計算する。図4、図5、図8の例に示す通り、出力候補ラティス712とテキスト列限定ラティス714は共通の境界を持つため、第4の実施の形態のように一度計算した局所的なエネルギー関数の値を保持・参照することで、数式9の計算コストが小さくなる。
<<第5の実施の形態>>
図12は、第5の実施の形態(Stochastic Gradient Descent(確率的勾配降下法、以下、SGDという))の構成例についての概念的なモジュール構成図である。
第5の実施の形態は、学習用ラティス作成モジュール1210、学習用ラティス全セット記憶モジュール1220、サブセット抽出モジュール1230、認識パラメータ更新量算出モジュール1240、認識パラメータ記憶モジュール1250、認識パラメータ更新モジュール1260を有している。
第5の実施の形態によれば、複数の学習用ラティスを学習に用いることで、より良好な認識パラメータが得られる。
第5の実施の形態は、学習用ラティスのセットと認識パラメータの初期値を入力として、認識パラメータを逐次更新・出力する。学習用ラティスのセットは、複数の文字列パタンとその正解テキスト列から図6、図8、図10等の例に示す実施の形態によって予め作成しておく。
学習用ラティス作成モジュール1210は、学習用ラティス全セット記憶モジュール1220と接続されており、正解テキスト列セット1206、準文字パタン列セット1208を受け付ける。学習用ラティス作成モジュール1210は、正解テキスト列セット1206と準文字パタン列セット1208を用いて、出力候補ラティス622とテキスト列限定ラティス632のペアのセットを作成する。具体的には、図6、図8、図10等の例に示す実施の形態によって作成する。
学習用ラティス全セット記憶モジュール1220は、学習用ラティス作成モジュール1210、サブセット抽出モジュール1230と接続されている。学習用ラティス全セット記憶モジュール1220は、学習用ラティス作成モジュール1210によって作成されたセットを記憶する。
サブセット抽出モジュール1230は、学習用ラティス全セット記憶モジュール1220、認識パラメータ更新量算出モジュール1240と接続されており、認識パラメータ更新量算出モジュール1240に学習用ラティスサブセット1232を渡す。サブセット抽出モジュール1230は、学習用ラティス全セット記憶モジュール1220に記憶されているセットから学習用ラティスサブセット1232を抽出する。
認識パラメータ更新量算出モジュール1240は、サブセット抽出モジュール1230、認識パラメータ記憶モジュール1250、認識パラメータ更新モジュール1260と接続されており、サブセット抽出モジュール1230から学習用ラティスサブセット1232を受け取り、認識パラメータ更新モジュール1260に認識パラメータ更新量セット1242を渡す。認識パラメータ更新量算出モジュール1240は、サブセット抽出モジュール1230によって抽出された学習用ラティスサブセット1232に含まれるそれぞれのペアについて、認識パラメータ更新量セット1242を算出する。具体的には、図7、図11等の例に示す実施の形態によって作成する。
認識パラメータ記憶モジュール1250は、認識パラメータ更新量算出モジュール1240、認識パラメータ更新モジュール1260と接続されている。認識パラメータ記憶モジュール1250は、認識パラメータ(前述の実施の形態では、認識パラメータ706に該当)を記憶しており、認識パラメータ更新モジュール1260によって更新される。
認識パラメータ更新モジュール1260は、認識パラメータ更新量算出モジュール1240、認識パラメータ記憶モジュール1250と接続されており、認識パラメータ更新量算出モジュール1240から認識パラメータ更新量セット1242を受け取る。認識パラメータ更新モジュール1260は、認識パラメータ更新量セット1242について、対応するその認識パラメータ更新量の和を算出し、予め定められた係数を乗算し、現在の認識パラメータ更新量からその乗算結果の値を減算することで、認識パラメータ記憶モジュール1250内の認識パラメータを更新する。
そして、サブセット抽出モジュール1230、認識パラメータ更新量算出モジュール1240、認識パラメータ更新モジュール1260による処理を繰り返す。
第5の実施の形態では、まず、学習用ラティス作成モジュール1210が、準文字パタン列セット1208と正解テキスト列セット1206から、図6、図8、図10等の例に示した実施の形態によって学習用ラティスのセットを作成する。
続いて、サブセット抽出モジュール1230が、学習用ラティスのセットから、そのサブセットである学習用ラティスサブセット1232を抽出する。
続いて、認識パラメータ更新量算出モジュール1240が、学習用ラティスサブセット1232に含まれる学習用ラティスについて、図7、図11等の例に示した実施の形態によって認識パラメータ更新量を計算し、その和である認識パラメータ更新量セット1242を出力する。
続いて、認識パラメータ更新モジュール1260が、先の和に予め定められた係数を乗算し、現在の認識パラメータからこの値を減算することで認識パラメータを更新する。
以上の処理を繰り返す。
複数の学習用ラティスを用いることで、より良好な認識パラメータ更新量が求まるため、より良好な認識パラメータが得られる。
図13を参照して、本実施の形態の情報処理装置のハードウェア構成例について説明する。図13に示す構成は、例えばパーソナルコンピュータ(PC)等によって構成されるものであり、スキャナ等のデータ読み取り部1317と、プリンタ等のデータ出力部1318を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)1301は、前述の実施の形態において説明した各種のモジュール、すなわち、単文字パタン列候補作成モジュール610、出力候補ラティス作成1モジュール620、テキスト列限定ラティス作成1モジュール630、単文字識別1モジュール640、学習用ラティス書き出しモジュール650、学習用ラティス読み込みモジュール710、期待値計算1モジュール720、期待値計算1モジュール730、差分計算モジュール740、和ラティス作成モジュール850、出力候補ラティス作成2モジュール1020、テキスト列限定ラティス作成2モジュール1030、単文字識別2モジュール1040、期待値計算2モジュール1120、期待値計算3モジュール1130、学習用ラティス作成モジュール1210、サブセット抽出モジュール1230、認識パラメータ更新量算出モジュール1240、認識パラメータ更新モジュール1260等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
ROM(Read Only Memory)1302は、CPU1301が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)1303は、CPU1301の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバス等から構成されるホストバス1304により相互に接続されている。
ホストバス1304は、ブリッジ1305を介して、PCI(Peripheral Component Interconnect/Interface)バス等の外部バス1306に接続されている。
キーボード1308、マウス等のポインティングデバイス1309は、操作者により操作される入力デバイスである。ディスプレイ1310は、液晶表示装置又はCRT(Cathode Ray Tube)等があり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)1311は、ハードディスク(フラッシュメモリ等であってもよい)を内蔵し、ハードディスクを駆動し、CPU1301によって実行するプログラムや情報を記録又は再生させる。ハードディスクは、単文字識別結果記憶モジュール1060、局所エネルギー関数計算結果記憶モジュール1150、学習用ラティス全セット記憶モジュール1220、認識パラメータ記憶モジュール1250等としての機能を実現させる。さらに、その他の各種データ、各種コンピュータ・プログラム等が格納される。
ドライブ1312は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体1313に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース1307、外部バス1306、ブリッジ1305、およびホストバス1304を介して接続されているRAM1303に供給する。リムーバブル記録媒体1313も、ハードディスクと同様のデータ記録領域として利用可能である。
接続ポート1314は、外部接続機器1315を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート1314は、インタフェース1307、および外部バス1306、ブリッジ1305、ホストバス1304等を介してCPU1301等に接続されている。通信部1316は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部1317は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部1318は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図13に示す情報処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図13に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図13に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器(携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む)、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、前述の各種の実施の形態を組み合わせてもよく(例えば、ある実施の形態内のモジュールを他の実施の形態内に追加する、入れ替えをする等も含む)、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray(登録商標) Disc)、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去および書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
606…正解テキスト列
608…準文字パタン列
610…単文字パタン列候補作成モジュール
612…単文字パタン列候補
620…出力候補ラティス作成1モジュール
622…出力候補ラティス
624…単文字パタン
630…テキスト列限定ラティス作成1モジュール
632…テキスト列限定ラティス
634…単文字パタン
640…単文字識別1モジュール
642…単文字識別結果
644…単文字識別結果
650…学習用ラティス書き出しモジュール
652…学習用ラティス
706…認識パラメータ
710…学習用ラティス読み込みモジュール
712…出力候補ラティス
714…テキスト列限定ラティス
720…期待値計算1モジュール
722…出力候補ラティス期待値
730…期待値計算1モジュール
732…テキスト列限定ラティス期待値
740…差分計算モジュール
742…認識パラメータ更新量
850…和ラティス作成モジュール
852…和ラティス
1020…出力候補ラティス作成2モジュール
1030…テキスト列限定ラティス作成2モジュール
1040…単文字識別2モジュール
1060…単文字識別結果記憶モジュール
1120…期待値計算2モジュール
1130…期待値計算3モジュール
1150…局所エネルギー関数計算結果記憶モジュール
1206…正解テキスト列セット
1208…準文字パタン列セット
1210…学習用ラティス作成モジュール
1220…学習用ラティス全セット記憶モジュール
1230…サブセット抽出モジュール
1232…学習用ラティスサブセット
1240…認識パラメータ更新量算出モジュール
1242…認識パラメータ更新量セット
1250…認識パラメータ記憶モジュール
1260…認識パラメータ更新モジュール

Claims (7)

  1. 認識対象についての準文字パタン列と正解テキスト列を受け付ける受付手段と、
    前記認識対象に対する文字認識結果の系列を含む第1のラティスと、準文字パタン列の組み合わせによって、前記認識対象に対する正解テキスト列の系列を含む第2のラティスを作成する作成手段と、
    前記作成手段によって作成された第1のラティスと第2のラティスに含まれる系列の評価値の微分値の期待値を各々算出し、機械学習における認識パラメータ更新量として、該第1のラティスの期待値と該第2のラティスの期待値の差分を算出する差分手段
    を具備することを特徴とする情報処理装置。
  2. 前記作成手段は、前記第1のラティスと前記第2のラティスを統合した第3のラティスを作成し、該第3のラティスを第1のラティスとする
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 単文字パタンの単文字識別結果を記憶する記憶手段
    をさらに具備し、
    前記作成手段は、前記記憶手段に記憶されている単文字パタンの単文字識別結果を用いる
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記第1のラティスの期待値計算において、局所的なエネルギー関数に関する計算結果を記憶する第2の記憶手段
    をさらに具備し、
    前記差分手段は、前記第2の記憶手段に記憶されている計算結果を前記第2のラティスの期待値計算に用いる
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  5. 前記第1のラティスと前記第2のラティスのペアのセットを作成する作成手段と、
    前記セットからサブセットを抽出する抽出手段と、
    前記抽出手段によって抽出されたサブセットに含まれるそれぞれのペアについて、認識パラメータ更新量を算出する請求項1から4のいずれか一項に記載の情報処理装置を含む算出手段と、
    前記認識パラメータ更新量のセットについて、対応する該認識パラメータ更新量の和を算出し、予め定められた係数を乗算し、現在の認識パラメータ更新量から該乗算結果の値を減算することで、認識パラメータを更新する更新手段
    を具備し、
    前記抽出手段、前記算出手段、前記更新手段による処理を繰り返す
    ことを特徴とする情報処理装置。
  6. 前記認識対象は、文字画像又は文字のストローク情報である
    ことを特徴とする請求項1から5のいずれか一項に記載の情報処理装置。
  7. コンピュータを、
    認識対象についての準文字パタン列と正解テキスト列を受け付ける受付手段と、
    前記認識対象に対する文字認識結果の系列を含む第1のラティスと、準文字パタン列の組み合わせによって、前記認識対象に対する正解テキスト列の系列を含む第2のラティスを作成する作成手段と、
    前記作成手段によって作成された第1のラティスと第2のラティスに含まれる系列の評価値の微分値の期待値を各々算出し、機械学習における認識パラメータ更新量として、該第1のラティスの期待値と該第2のラティスの期待値の差分を算出する差分手段
    として機能させるための情報処理プログラム。
JP2015092498A 2015-04-30 2015-04-30 情報処理装置および情報処理プログラム Active JP6511942B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015092498A JP6511942B2 (ja) 2015-04-30 2015-04-30 情報処理装置および情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015092498A JP6511942B2 (ja) 2015-04-30 2015-04-30 情報処理装置および情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2016212473A JP2016212473A (ja) 2016-12-15
JP6511942B2 true JP6511942B2 (ja) 2019-05-15

Family

ID=57551772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015092498A Active JP6511942B2 (ja) 2015-04-30 2015-04-30 情報処理装置および情報処理プログラム

Country Status (1)

Country Link
JP (1) JP6511942B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7172351B2 (ja) * 2018-09-21 2022-11-16 富士フイルムビジネスイノベーション株式会社 文字列認識装置及び文字列認識プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3313272B2 (ja) * 1996-01-08 2002-08-12 株式会社日立製作所 住所読み取り方法および識別関数重みベクトル生成方法
JP3173363B2 (ja) * 1996-03-15 2001-06-04 日本電気株式会社 Ocrのメンテナンス方法及び装置
JP3180792B2 (ja) * 1999-01-14 2001-06-25 日本電気株式会社 文字認識装置、文字学習装置およびコンピュータ可読記録媒体

Also Published As

Publication number Publication date
JP2016212473A (ja) 2016-12-15

Similar Documents

Publication Publication Date Title
CN109189767B (zh) 数据处理方法、装置、电子设备及存储介质
US9280725B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
US20170124435A1 (en) Method for Text Recognition and Computer Program Product
US11295175B1 (en) Automatic document separation
CN111310912A (zh) 机器学习系统、域变换装置、及机器学习方法
JP2008225907A (ja) 言語解析モデル学習装置、言語解析モデル学習方法、言語解析モデル学習プログラムならびにその記録媒体
Rehman et al. Efficient coarser‐to‐fine holistic traffic sign detection for occlusion handling
WO2019092868A1 (ja) 情報処理装置、情報処理方法及びコンピュータ読み取り可能な記録媒体
JP7172351B2 (ja) 文字列認識装置及び文字列認識プログラム
US8401298B2 (en) Storage medium storing character recognition program, character recognition method, and character recognition apparatus
JP4672692B2 (ja) 単語認識システムおよび単語認識プログラム
JP6986287B2 (ja) 音声における記号シーケンスの推定
JP5942361B2 (ja) 画像処理装置及び画像処理プログラム
JP6511942B2 (ja) 情報処理装置および情報処理プログラム
JP6260350B2 (ja) 画像処理装置及び画像処理プログラム
US20150186797A1 (en) Data reduction in nearest neighbor classification
JP5888222B2 (ja) 情報処理装置及び情報処理プログラム
JP6131765B2 (ja) 情報処理装置及び情報処理プログラム
Nisa et al. Annotation of struck-out text in handwritten documents
JP6547301B2 (ja) 情報処理装置及び情報処理プログラム
JP2016009235A (ja) 情報処理装置及び情報処理プログラム
JP6187307B2 (ja) 画像処理装置及び画像処理プログラム
JP6003375B2 (ja) 画像処理装置及び画像処理プログラム
JP2013105344A (ja) 帳票処理システム及び帳票処理方法
JP2024006813A (ja) 文字列検出装置及び文字列検出方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190325

R150 Certificate of patent or registration of utility model

Ref document number: 6511942

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350