(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-10
(45)【発行日】2023-07-19
(54)【発明の名称】ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法
(51)【国際特許分類】
G06V 30/194 20220101AFI20230711BHJP
G06T 7/00 20170101ALI20230711BHJP
G06N 3/044 20230101ALI20230711BHJP
G06N 3/04 20230101ALI20230711BHJP
G06N 3/08 20230101ALI20230711BHJP
【FI】
G06V30/194
G06T7/00 350C
G06N3/044
G06N3/04
G06N3/08
【外国語出願】
(21)【出願番号】P 2019132445
(22)【出願日】2019-07-18
【審査請求日】2022-06-13
(31)【優先権主張番号】201821026934
(32)【優先日】2018-07-19
(33)【優先権主張国・地域又は機関】IN
(73)【特許権者】
【識別番号】510337621
【氏名又は名称】タタ コンサルタンシー サービシズ リミテッド
【氏名又は名称原語表記】TATA Consultancy Services Limited
【住所又は居所原語表記】Nirmal Building,9th Floor,Nariman Point,Mumbai 400021,Maharashtra,India.
(74)【代理人】
【識別番号】100130111
【氏名又は名称】新保 斉
(72)【発明者】
【氏名】チョウドゥリ、アリンダム
(72)【発明者】
【氏名】ヴィグ、ロベケシュ
【審査官】片岡 利延
(56)【参考文献】
【文献】Baoguang Shi et al.,An End-to-End Trainable Neural Network for Image-Based Sequence Recognition and Its Application to Scene Text Recognition,[online],2017年11月,https://ieeexplore.ieee.org/document/7801919
【文献】Fenfen Sheng et al.,End-to-End Chinese Image Text Recognition with Attention Model,[online],2017年,pp.180-189,https://link.springer.com/chapter/10.1007/978-3-319-70090-8_19
【文献】Baoguang Shi et al.,ASTER: An Attentional Scene Text Recognizer with Flexible Rectification,[online],2018年06月24日,https://ieeexplore.ieee.org/abstract/document/8395027
【文献】Joan Puigcerver et al.,Are Multidimensional Recurrent Layers Really Necessary for Handwritten Text Recognition?,[online],2017年,https://ieeexplore.ieee.org/document/8269951
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/194
G06T 7/00
G06N 3/044
G06N 3/04
G06N 3/08
(57)【特許請求の範囲】
【請求項1】
ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステム(100)であって、
1つまたは複数のハードウェアプロセッサ(104)に動作可能に結合されて前記1つまたは複数のハードウェアプロセッサによって実行するように構成される命令を記憶する1つまたは複数の内部データ記憶デバイス(102)を備え、前記命令は、
走査済み手書きテキスト入力画像を受信するように、前記走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、前記1つまたは複数の部分画像のそれぞれが前記走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得るように、および前記1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングするように構成される画像前処理モジュール(102A)と、
前記画像前処理モジュール(102A)に動作可能に結合され、かつ畳み込みニューラルネットワーク(CNN)を適用することによって前記1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えるように構成される特徴抽出モジュール(102B)であって、前記1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有
し、前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる複数の畳み込み層を含み、前記畳み込み層のleaky ReLU活性化は、
内部共変量シフトを防止し、かつ次の畳み込み層に伝わる前にトレーニングを加速するためのバッチ正規化、および、
前記1つまたは複数の部分画像の次元性を低減するために前記畳み込み層の少なくともいくつかの活性化に対して行うプーリング演算機構
を行うことによって構成される、特徴抽出モジュール(102B)と、
前記特徴抽出モジュール(102B)に動作可能に結合され、かつ前記1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する前記部分画像の前記1つまたは複数の機能マップの各列を連結することによって前記1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換するように構成されるマップ-シーケンスモジュール(102C)と、
前記マップ-シーケンスモジュール(102C)に動作可能に結合され、かつ回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる前記視覚的特徴をマッピングすることによって、1つまたは複数の文字セットを生成するように構成されるシーケンス学習モジュール(102D)であって、前記1つまたは複数の文字セットは前記対応する部分画像に対して認識される機械可読テキストであり、前記RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、前記RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、前記対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対するコンテキストベクトルにわたって条件付き確率分布を適用するように構成され
前記RNNベースのエンコーダユニットおよびデコーダユニットは、
残差接続によって含まれている回帰ユニットを通した後続の回帰層への勾配流を促進すること、
深さ方向接続に従ってドロップアウト機構を採用することによって長期依存性を捕らえるために回帰接続を修正することなく前記RNNベースのエンコーダユニットを規則化すること、
層正規化によってミニバッチトレーニングによる共変量シフトを防止するために神経細胞を活性化すること、および、
注意機構を通して、前記デコーダユニットの隠れ状態を前記エンコーダユニットの隠れ状態と合わせること
によって構成される、シーケンス学習モジュール(102D)と、
前記シーケンス学習モジュール(102D)に動作可能に結合され、かつ手書きテキスト出力ファイルを生成するために前記対応する部分画像のそれぞれに対して前記文字セットを組み合わせるように構成される画像後処理モジュール(102E)であって、前記手書きテキスト出力ファイルは前記走査済み手書きテキスト入力画像の認識されたテキストバージョンである、画像後処理モジュール(102E)と、に含まれる、システム。
【請求項2】
前記画像前処理モジュールは、左側および右側両方における対応する背景画素を有するバッチに含まれる前記1つまたは複数の部分画像をパディングして前記バッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用するように、およびランダムな歪みを前記1つまたは複数の部分画像に取り込んで前記1つまたは複数の部分画像における変形を生じさせるように、さらに構成される、請求項1に記載のシステム。
【請求項3】
前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる7つの畳み込み層を含
む、請求項1に記載のシステム。
【請求項4】
前記エンコーダユニットは2つの長・短期記憶(LSTM)セルを組み合わせることによって形成される双方向ネットワークであり、前記デコーダユニットは単一のLSTMセルを有する一方向ネットワークである、請求項1に記載のシステム。
【請求項5】
前記エンコーダユニットおよび前記デコーダユニットは、前記LSTMセルのそれぞれにおける256の隠れユニットを有する2つの回帰層を含む、請求項4に記載のシステム。
【請求項6】
ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法(300)であって、
画像前処理モジュールによって、受信した走査済み手書きテキスト入力画像を前処理するステップ(302)であって、前記前処理するステップは、
前記受信した走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、それぞれの部分画像が前記走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得ること(302a)、および
前記1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングすること(302b)を含む、前処理するステップと、
特徴抽出モジュールによって、畳み込みニューラルネットワーク(CNN)を適用することによって前記1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えるステップであって、前記1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有
し、前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる複数の畳み込み層を含み、前記畳み込み層のleaky ReLU活性化は、
内部共変量シフトを防止し、かつ次の畳み込み層に伝わる前にトレーニングを加速するためのバッチ正規化、および、
前記1つまたは複数の部分画像の次元性を低減するために前記畳み込み層の少なくともいくつかの活性化に対して行うプーリング演算機構
を行うことによって構成される、変えるステップ(304)と、
マップ-シーケンスモジュールによって、前記1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する前記部分画像の前記1つまたは複数の機能マップの各列を連結することによって前記1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換するステップ(306)と、
シーケンス学習モジュールによって、回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる前記視覚的特徴をマッピングすることによって、1つまたは複数の文字セットを生成するステップであって、前記1つまたは複数の文字セットは前記対応する部分画像に対して認識される機械可読テキストであり、前記RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、前記RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、前記対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対する前記コンテキストベクトルにわたって条件付き確率分布を適用するように構成され
前記RNNベースのエンコーダユニットおよびデコーダユニットは、
残差接続によって含まれている回帰ユニットを通した後続の回帰層への勾配流を促進すること、
深さ方向接続に従ってドロップアウト機構を採用することによって長期依存性を捕らえるために回帰接続を修正することなく前記RNNベースのエンコーダユニットを規則化すること、
層正規化によってミニバッチトレーニングによる共変量シフトを防止するために神経細胞を活性化すること、および、
注意機構を通して、前記デコーダユニットの隠れ状態を前記エンコーダユニットの隠れ状態と合わせること
によって構成される、生成するステップ(308)と、
画像後処理モジュールによって前記文字セットを後処理するステップであって、前記後処理するステップは、手書きテキスト出力ファイルを生成するために前記対応する部分画像のそれぞれに対して前記文字セットを組み合わせることを含み、前記手書きテキスト出力ファイルは前記走査済み手書きテキスト入力画像の認識されたテキストバージョンである、後処理するステップ(310)と、を含む、プロセッサ実施方法。
【請求項7】
前記前処理するステップは、左側および右側両方における対応する背景画素を有するバッチに含まれる前記1つまたは複数の部分画像をパディングして前記バッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用することと、ランダムな歪みを前記1つまたは複数の部分画像に取り込んで前記1つまたは複数の部分画像における変形を生じさせることと、をさらに含む、請求項
6に記載の方法。
【請求項8】
前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる7つの畳み込み層であ
る、請求項
6に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
優先権の主張
本出願は、2018年7月19日に出願されたインド特許出願第201821026934号からの優先権を主張するものである。先述の出願の内容全体は参照により本明細書に組み込まれる。
【0002】
本明細書における開示は、一般的に、オフラインモードでの手書きテキスト認識に関し、より詳細には、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法に関する。
【背景技術】
【0003】
走査済み手書きテキスト画像からのオフライン手書きテキスト認識(HTR)は、現在のデジタル世界において大量の手書き走査文書または報告書をデジタル化しようとする企業にとって重要な問題である。オフライン手書きテキスト認識(HTR)は、テキスト画像に加えてストローク情報および軌道のような属性を利用するオンラインモードと比較してかなり困難であるの対し、オフラインモードは、特徴抽出に利用可能な文書/報告書のテキスト画像のみを有する。
【0004】
技術的に、手書きテキスト認識(HTR)は、シーケンスマッチング問題として明確に表されている。この場合、文書または報告書のテキスト行などの入力データから抽出された特徴のシーケンスは、主に隠れマルコフモデル(HMM)を使用して、入力データに相当するテキストからの文字で構成される出力シーケンスにマッチさせる。しかしながら、隠れマルコフモデル(HMM)は、それぞれの観察が現状のみに頼るマルコフ仮定により、入力テキストシーケンスにおけるコンテキスト情報を活用できない。回帰ニューラルネットワーク(RNN)によって、隠し状態におけるコンテキスト情報を符号化する、入力テキストシーケンスにおけるコンテキスト情報を使用するこの問題が対処された。それにもかかわらず、回帰ニューラルネットワーク(RNN)の使用は、RNN目的関数がそれぞれの時間ステップにおける別個のトレーニング信号を必要とするため、あるシーケンスにおける個々の特性がセグメント化される場合があるシナリオに限定される。
【0005】
HMMとRNNとを組み合わせるハイブリッドアーキテクチャに基づくさまざまな改善されたシステムおよびモデルが当技術分野において利用可能である。RNNと組み合わせたコネクショニスト時系列分類法(Connectionist Temporal Classification)(CTC)の使用は、効果的な解決策であることが証明され、この場合、コネクショニスト時系列分類法(CTC)によって、ネットワークは、入力シーケンスを出力ラベルのシーケンスに直接マッピングすることによって、セグメント化入力の必要性をなくすことができる。しかしながら、RNN-CTCモデルの性能は、RNNに対する入力シーケンスを構成するために走査済み手書きテキスト画像からの手作業による特徴の使用に依然限定されている。
【0006】
多次元の回帰ニューラルネットワーク(MDRNN)は、2つの軸に沿って入力テキスト画像を処理することによって両方向における長期依存性を学習する多次元RNN層の階層を使用する手書きテキスト認識(HTR)用の第1のエンドツーエンドモデルとして知られている。多次元回帰ニューラルネットワーク(MDRNN)において、特性の空間構造は、水平軸に沿ってシーケンス情報を符号化する間に垂直軸に合わせてキャプチャされる。しかしながら、同じ視覚的特徴を抽出する標準的な畳み込み演算と比較して、定式化は計算上費用が高い。畳み込みニューラルネットワーク(CNN)と深層1次元RNN-CTCモデルとを組み合わせる合成アーキテクチャによって標準的な手書きテキスト認識(HTR)のベンチマークに対してより良い性能がもたらされるが、より良い精度、より少ないメモリ消費、およびより少ない計算数の手書きテキスト認識(HTR)の効率的なやり方は、常に改善すべき部分である。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本開示の実施形態は、従来のシステムにおける発明者によって認識される上述した技術的な問題の1つまたは複数に対する解決策として、技術的な改善点を提示する。
【課題を解決するための手段】
【0008】
一態様において、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムであって、1つまたは複数のハードウェアプロセッサに動作可能に結合されて1つまたは複数のハードウェアプロセッサによって実行するように構成される命令を記憶する1つまたは複数の内部データ記憶デバイスを備え、該命令は、走査済み手書きテキスト入力画像を受信するように、走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、1つまたは複数の部分画像のそれぞれが走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得るように、および1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングするように構成される画像前処理モジュールと、画像前処理モジュールに動作可能に結合され、かつ畳み込みニューラルネットワーク(CNN)を適用することによって1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えるように構成される特徴抽出モジュールであって、1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有する、特徴抽出モジュールと、特徴抽出モジュールに動作可能に結合され、かつ1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する部分画像の1つまたは複数の機能マップの各列を連結することによって1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換するように構成されるマップ-シーケンスモジュールと、マップ-シーケンスモジュールに動作可能に結合され、かつ回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる視覚的特徴をマッピングすることによって、1つまたは複数の文字セットを生成するように構成されるシーケンス学習モジュールであって、1つまたは複数の文字セットは対応する部分画像に対して認識される機械可読テキストであり、RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対するコンテキストベクトルにわたって条件付き確率分布を適用するように構成される、シーケンス学習モジュールと、シーケンス学習モジュールに動作可能に結合され、かつ手書きテキスト出力ファイルを生成するために対応する部分画像のそれぞれに対して文字セットを組み合わせるように構成される画像後処理モジュールであって、手書きテキスト出力ファイルは走査済み手書きテキスト入力画像の認識されたテキストバージョンである、画像後処理モジュールと、に含まれる、システムが提供される。
【0009】
別の態様では、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法であって、画像前処理モジュールによって受信した走査済み手書きテキスト入力画像を前処理するステップであって、前処理するステップは、受信した走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、それぞれの部分画像が走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得ること、および1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングすることを含む、前処理するステップと、特徴抽出モジュールによって、畳み込みニューラルネットワーク(CNN)を適用することによって1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えるステップであって、1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有する、変えるステップと、マップ-シーケンスモジュールによって、1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する部分画像の1つまたは複数の機能マップの各列を連結することによって1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換するステップと、シーケンス学習モジュールによって、回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる視覚的特徴をマッピングすることによって、1つまたは複数の文字セットを生成するステップであって、1つまたは複数の文字セットは対応する部分画像に対して認識される機械可読テキストであり、RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対するコンテキストベクトルにわたって条件付き確率分布を適用するように構成される、生成するステップと、画像後処理モジュールによって文字セットを後処理するステップであって、後処理するステップは、手書きテキスト出力ファイルを生成するために対応する部分画像のそれぞれに対して文字セットを組み合わせることを含み、手書きテキスト出力ファイルは走査済み手書きテキスト入力画像の認識されたテキストバージョンである、後処理するステップと、を含む、プロセッサ実施方法が提供される。
【0010】
さらに別の態様では、コンピュータ可読プログラムが具現化されている非一時的なコンピュータ可読媒体を含むコンピュータプログラム製品であって、コンピュータ可読プログラムは、コンピューティングデバイス上で実行される時、コンピューティングデバイスに、画像前処理モジュールによって受信した走査済み手書きテキスト入力画像を前処理することであって、前処理することは、受信した走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、それぞれの部分画像が走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得ること、および1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングすることを含む、前処理することと、畳み込みニューラルネットワーク(CNN)を適用することによって、特徴抽出モジュールによる1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えることであって、1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有する、変えることと、1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する部分画像の1つまたは複数の機能マップの各列を連結することによって、マップ-シーケンスモジュールによる1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換することと、回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる視覚的特徴をマッピングすることによって、シーケンス学習モジュールによって1つまたは複数の文字セットを生成することであって、1つまたは複数の文字セットは対応する部分画像に対して認識される機械可読テキストであり、RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対するコンテキストベクトルにわたって条件付き確率分布を適用するように構成される、生成することと、画像後処理モジュールによって文字セットを後処理することであって、後処理することは、手書きテキスト出力ファイルを生成するために対応する部分画像のそれぞれに対して文字セットを組み合わせることを含み、手書きテキスト出力ファイルは走査済み手書きテキスト入力画像の認識されたテキストバージョンである、後処理することと、を行わせる、コンピュータプログラム製品が提供される。
【0011】
本開示の一実施形態では、画像前処理モジュールは、左側および右側両方における対応する背景画素を有するバッチに含まれる1つまたは複数の部分画像をパディングしてバッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用するように、およびランダムな歪みを1つまたは複数の部分画像に取り込んで1つまたは複数の部分画像における変形を生じさせるように、さらに構成される。
【0012】
本開示の一実施形態では、CNNは、Leaky ReLU活性化によって連続的に積み重ねられる7つの畳み込み層を含む。畳み込み層のLeaky ReLU活性化は、内部共変量シフトを防止し、かつ次の畳み込み層に伝わる前にトレーニングを加速するためのバッチ正規化、および、1つまたは複数の部分画像の次元性を低減するために畳み込み層の少なくともいくつかの活性化に対して行うプーリング演算機構を行うことによって構成される。
【0013】
本開示の一実施形態では、エンコーダユニットは2つの長・短期記憶(LSTM)セルを組み合わせることによって形成される双方向ネットワークであり、デコーダユニットは単一のLSTMセルを有する一方向ネットワークである。
【0014】
本開示の一実施形態では、エンコーダユニットおよびデコーダユニットは、LSTMセルのそれぞれにおける256の隠れユニットを有する2つの回帰層を含む。
【0015】
本開示の一実施形態では、RNNベースのエンコーダユニットおよびデコーダユニットは、残差接続によって含まれている回帰ユニットを通した後続の回帰層への勾配流を促進すること、深さ方向接続に従ってドロップアウト機構を採用することによって長期依存性を捕らえるために回帰接続を修正することなくエンコーダユニットを規則化すること、層正規化によってミニバッチトレーニングによる共変量シフトを防止するために神経細胞を活性化すること、および、注意機構を通して、デコーダユニットの隠れ状態をエンコーダユニットの隠れ状態と合わせることによって構成される。
【0016】
前述の全般的な説明、および以下の詳細な説明が両方共、例示であり説明するためだけのものであり、特許請求される本開示の実施形態を制限するものではないことは理解されたい。
【0017】
本開示に組み込まれかつこの一部を構成する添付の図面は、例示の実施形態を示し、この説明と共に、開示された原理を説明する役割を果たす。
【図面の簡単な説明】
【0018】
【
図1】本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムの例示のブロック図である。
【
図2】本開示の一実施形態による、
図1のシステムに含まれる機能モジュールの例示のアーキテクチャを示す図である。
【
図3A】本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法のフロー図である。
【
図3B】本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法のフロー図である。
【
図3C】本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法のフロー図である。
【
図4】本開示の一実施形態による、畳み込みニューラルネットワーク(CNN)を使用する走査済み手書きテキスト入力画像のそれぞれの部分画像の機能マップからの特徴ベクトルのシーケンスの生成を示す図形表現である。
【
図5】本開示の一実施形態による、注意と共に回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して走査済み手書きテキスト入力画像のそれぞれの部分画像に対する手書きテキストの認識を示す図形表現である。
【発明を実施するための形態】
【0019】
例示の実施形態について、添付の図面を参照して説明する。図では、参照番号の最上位桁(複数可)は、参照番号が最初に現れる図を特定している。好都合であれば、同じ参照番号は、同じまたは同様の部分を指すために図面全体を通して使用される。開示された原理の例および特徴が本明細書に説明されているが、開示された実施形態の趣旨および範囲から逸脱することなく、修正、適合、および他の実装が可能である。以下の詳細な説明が単に例示とみなされ、その真の範囲および趣旨は(明細書に含まれる時)特許請求の範囲によって指示されていることが意図される。
【0020】
文字、テキスト、およびシーケンスのような術語は、変換前また後の走査済み手書きテキスト入力画像に存在するテキストを指示するために文脈によって区別なく使用される。出力シーケンスは変換後の認識されたテキストを指す。
【0021】
オフライン手書きテキスト認識(HTR)は、数十年間の主要な研究課題となっており、手書き文書に記憶されたデータを抽出し、かつ現代のAIシステムを使用してそれを利用することからロック解除できる潜在的価値により近年活性化している。多次元長・短期記憶(LSTM)セルなどの深層回帰ニューラルネットワーク(RNN)モデルは、マルコフ仮定という難点があるため、RNNの表現力を欠如している従来の隠れマルコフモデルベースのアプローチに対して、効率的な手書きテキスト認識に対する優れた性能を生み出すことが証明された。エンドツーエンド手書きテキスト認識のための開示されたシステムおよび方法は、深層畳み込みニューラルネットワーク(CNN)をRNNベースのエンコーダユニットおよびデコーダユニットと組み合わせて、手書きテキスト画像を走査済み手書きテキスト入力画像に存在するテキストに対応する文字シーケンスにマッピングする。深層CNNは手書きテキスト画像から特徴を抽出するために使用されるのに対し、RNNベースのエンコーダユニットおよびデコーダユニットは変換されたテキストを文字セットとして生成するために使用される。
【0022】
ここで図面、より詳細には、同様の参照符号が図全体を通して一貫して対応する特徴を示す
図1~
図5を参照すると、好ましい実施形態が示されており、これらの実施形態は、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のための以下の例示のシステムおよび方法の文脈の中で説明される。
【0023】
図1は、本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステム100の例示のブロック図を示す。一実施形態では、システム100は、1つまたは複数のプロセッサ104、通信インターフェースデバイス(複数可)または入力/出力(I/O)インターフェース(複数可)106、および、1つまたは複数のプロセッサ104に動作可能に結合される1つまたは複数のデータ記憶デバイスもしくはメモリ102を含む。ハードウェアプロセッサである1つまたは複数のプロセッサ104は、1つまたは複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理装置、状態機械、グラフィックスコントローラ、論理回路、および/または動作命令に基づいて信号を操作する任意のデバイスとして実装可能である。いくつかある能力の中でも特に、プロセッサ(複数可)は、メモリに記憶されたコンピュータ可読命令をフェッチしかつ実行するように構成される。一実施形態では、システム100は、ラップトップコンピュータ、ノートブック、ハンドヘルドデバイス、ワークステーション、メインフレームコンピュータ、サーバ、およびネットワーククラウドなどのさまざまなコンピューティングシステムにおいて実装可能である。
【0024】
I/Oインターフェースデバイス(複数可)106は、さまざまなソフトウェアおよびハードウェアインターフェース、例えば、ウェブインターフェースおよびグラフィカルユーザインターフェースなどを含むことができ、例えば、LAN、ケーブルなどの有線ネットワーク、およびWLAN、セルラー、または衛星などの無線ネットワークを含む、多種多様のネットワークN/Wおよびプロトコル型内の多重通信を促進することができる。一実施形態では、I/Oインターフェースデバイス(複数可)は、いくつかのデバイスを互いにまたは別のサーバに接続するための1つまたは複数のポートを含むことができる。
【0025】
メモリ102は、例えば、スタティックランダムアクセスメモリ(SRAM)およびダイナミックランダムアクセスメモリ(DRAM)などの揮発性メモリ、および/または、読み出し専用メモリ(ROM)、消去可能プログラマブルROM、フラッシュメモリ、ハードディスク、光ディスク、および磁気テープなどの不揮発性メモリを含む、当技術分野で既知の任意のコンピュータ可読媒体を含むことができる。一実施形態では、システム100の1つまたは複数のモジュール(
図2の102A~102E)はメモリ102に記憶可能である。
【0026】
図2は、本開示の一実施形態による、
図1のシステム100に含まれる機能モジュールの例示のアーキテクチャを示す。一実施形態では、機能モジュールは、画像前処理モジュール102A、特徴抽出モジュール102B、マップ-シーケンスモジュール102C、シーケンス学習モジュール102D、および画像後処理モジュール(102E)を含む。
【0027】
図3A~
図3Cは、本開示の一実施形態による、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのプロセッサ実施方法300のフロー図を示す。一実施形態では、1つまたは複数のプロセッサ104に動作可能に結合される1つまたは複数のデータ記憶デバイスもしくはメモリ102は、1つまたは複数のプロセッサ104によって方法300のステップを実行するように構成される命令を記憶するように構成される。方法300のステップについてここで、
図1のシステム100のコンポーネント、および
図2の例示のアーキテクチャの機能モジュールを参照して詳細に説明する。プロセスのステップ、方法のステップ、または技法などは順番に説明可能であるが、このようなプロセッサ、方法、および技法は、交互に働くように構成されてよい。換言すれば、説明され得るステップのいずれのシーケンスまたは順序も、ステップがその順序で行われるべきであるという要件を必ずしも指示しているわけではない。本明細書に説明されるプロセスのステップは、実際的な任意の順序で行われてよい。さらに、いくつかのステップは同時に行われてよい。
【0028】
本開示の一実施形態によると、画像前処理モジュール(
図2の102A)は、ステップ302において、受信した走査済み手書きテキスト入力画像を前処理するように構成される。前処理するステップ302は、ステップ302aにおいて受信した走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、それぞれの部分画像が走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得ることと、さらに、ステップ302bにおいて、1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングすることとを含む。
【0029】
一実施形態では、受信した走査済み手書きテキスト入力画像は、スキャナ、多機能周辺(MFP)デバイス、および画像複写デバイスなどの標準的な走査装置によって走査または処理されてよい、ファイルまたは文書であってよい。受信した走査済み手書きテキスト入力画像は、認識される、またはデジタルまたは機械可読テキストに変換される少なくとも1つの手書きテキスト行を含むことができる。受信した走査済み手書きテキスト入力画像は、画像前処理モジュール(
図2の102A)によって、ステップ302aにおける1つまたは複数の部分画像に分割され、それぞれの部分画像は、走査済み手書きテキスト入力画像に存在する手書きテキスト行を含む。一実施形態では、それぞれの部分画像に含まれる手書きテキスト行は完全な文であってもなくてもよい。
【0030】
一実施形態では、1つまたは複数の部分画像は、一定の高さおよび可変の幅を有し、かつアスペクト比を維持するように、画像前処理モジュール(
図2の102A)によってステップ302bにおいてスケーリングまたはダウンサンプリングされる。一実施形態では、それぞれの部分画像は、256の輝度レベルを有する単一チャネルを含有し、一定の高さは128画素から32画素に及んでよい。しかしながら、それぞれの部分画像の幅は、表1に示されるようにシステム100の計算数およびメモリ要件を低減するために対応する部分画像のアスペクト比を維持するように調節される。
【0031】
【0032】
一実施形態では、前処理するステップ302は、左側および右側両方における対応する背景画素を有するバッチに含まれる1つまたは複数の部分画像をパディングしてバッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用することと、ランダムな歪みを1つまたは複数の部分画像に取り込んで1つまたは複数の部分画像における変形を生じさせることとをさらに含む。一実施形態では、平行移動、回転、傾斜、およびスケーリングを含む4つの変換動作のセットを行うことによって、ミニバッチトレーニング技法を採用する間に、ランダムな歪みがバッチにおけるそれぞれの部分画像に取り込まれる。4つの変換動作のセットを行っている間のパラメータは、ガウス分布を使用して独立してサンプリングされる。例えば、回転動作に対するパラメータは角度の量である。同様に、スケーリング動作に対するパラメータは解像度である。一実施形態では、システム100が、繰り返す度に以前に見られなかった部分画像のセットを処理することができるように1つまたは複数の部分画像に対して行って変形を生成するために、4つの変換動作のセットから、少なくとも1つが行われてもよいし行われなくてもよい。
【0033】
本開示の一実施形態によると、特徴抽出モジュール(
図2の102B)は、ステップ304において、畳み込みニューラルネットワーク(CNN)を適用することによって、1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えるように構成され、この場合、1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有する。
【0034】
一実施形態では、畳み込みニューラルネットワーク(CNN)は、完全に接続された層のない標準的な畳み込みニューラルネットワーク(CNN)であってよい。CNNは、基本的な非線形変換のセットを自動的に学習することによって、1つまたは複数の機能マップの形式のそれぞれのスケーリングされた部分画像から豊富な視覚的特徴を抽出するために使用される。抽出された豊富な視覚的特徴は、対応する部分画像における局所的な属性を符号化しつつ、対応する部分画像に存在する物体の空間的構成を保持することができる。
【0035】
一実施形態では、CNNは、Leaky ReLU活性化によって連続的に積み重ねられた7つの畳み込み層を含む。一実施形態では、CNNの最初の6つの層は、1画素の幅で入力されるパディングによる3×3画素のカーネルサイズを含み、7番目の層は、入力されたパディングのない、2×2画素のカーネルサイズを含む。カーネルのストライドは、CNNにおける7つの畳み込み層の垂直方向および水平方向両方において1画素である。
【0036】
一実施形態では、7つの畳み込み層のleaky ReLU活性化は、内部共変量シフトを防止し、かつ後続の畳み込み層に伝わる前にトレーニングを加速するためのバッチ正規化、および、1つまたは複数の部分画像の次元性を低減するための畳み込み層の活性化に対するプーリング演算機構を行うことによって構成される。
【0037】
一実施形態では、プーリング演算機構は、合計4つの最大プーリング層を含み、このうちの2つは、それぞれの部分画像に存在する手書きテキストの水平方向空間分布を保持するために2×1のカーネルサイズを有し、残りの2つの最大プーリング層は、標準的な2×2の重なり合わないカーネルサイズを有する。表2は、CNNにおけるそれぞれの畳み込み層のネットワーク構成を示す。
【0038】
【0039】
表2によると、第1の畳み込み層は16の畳み込みフィルタを含有し、第2の畳み込み層は32の畳み込みフィルタを含有し、第3および第4の畳み込み層はそれぞれ、64の畳み込みフィルタを含有し、第5、第6、および第7の畳み込み層はそれぞれ、128の畳み込みフィルタを含有する。第1の畳み込み層および第2の畳み込み層は、2×2の重なり合わないカーネルサイズの最大プーリング層を含むのに対し、第5の畳み込み層および第6の畳み込み層は、2×1のカーネルサイズの最大プーリング層を含む。
【0040】
一実施形態では、受信した走査済み手書きテキスト入力画像のそれぞれの部分画像は、特徴抽出モジュール(
図2の102B)に送られる前に画像前処理モジュール(
図2の102A)によって反転させることで、それぞれの部分画像の前景は、容易に学習するために畳み込みニューラルネットワーク(CNN)活性化のために暗い背景に対してより高い輝度で構成される。
【0041】
本開示の一実施形態によると、マップ-シーケンスモジュール(
図2の102C)は、ステップ306において、1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ対応する部分画像の1つまたは複数の機能マップの各列を連結することによって1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換するように構成される。
【0042】
一実施形態では、特徴ベクトルのシーケンスは、1つまたは複数の機能マップの各列を連結することによって構成される。一実施形態では、i番目の特徴ベクトルは、1つまたは複数の機能マップのi番目の列を連結することによって構成される。ステップ304においてCNNによって行われる畳み込み演算の並進不変性により、それぞれの列は、
図4に示されるように、左から右に移動する(受容野と称される)縦縞を表す。ステップ302におけるそれぞれの部分画像のスケーリングにより、画像前処理モジュール(
図2の102A)によって、特徴ベクトルのシーケンスは、それぞれの特徴ベクトルのシーケンス長に制限を加えることのない独自の次元を含む。
【0043】
本開示の一実施形態によると、シーケンス学習モジュール(
図2の102D)は、ステップ308において、回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる視覚的特徴をマッピングすることによって、1つまたは複数の文字セットを生成するように構成される。1つまたは複数の文字セットは対応する部分画像に対して認識される機械可読テキストである。RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成される。RNNベースのエンコーダユニットおよびデコーダユニットのデコーダユニットは、対応する部分画像に対する文字セットを生成するために特徴ベクトルのそれぞれのシーケンスに対するコンテキストベクトルにわたって条件付き確率分布を適用するように構成される。
【0044】
一実施形態では、RNNベースのエンコーダユニットおよびデコーダユニットは両方共、別個の回帰ニューラルネットワークの機能を果たす。エンコーダユニットは、ステップ306において得られるそれぞれの部分画像の特徴ベクトルのシーケンスの理解に基づいてコンテキストベクトルの形式のコンパクト表現を構成し、デコーダユニットは、同コンパクト表現に対して条件付き確率分布を適用することによって対応する部分画像に対してデジタル化された文字または機械可読テキストのセットを生成する。
【0045】
一実施形態では、エンコーダユニットは、入力として、TSはシーケンス長である、X=(x1、…、xTs)である、それぞれの部分画像の特徴ベクトルのシーケンスを取り、かつ、シーケンス全体を代表する、対応する部分画像に対するコンテキストベクトルcを生成することで、それぞれの時間ステップtにおいて、隠れ状態はht=g(xt、ht-1)となり、最後に、c=s(h1、…、hTs)となる。式中、gおよびsはある非線形関数である。
【0046】
一実施形態では、長・短期記憶(LSTM)セルは、メモリセルc∈Rnの存在により長期依存性を学習するためにエンコーダユニットにおいて使用される。一実施形態では、単一の長・短期記憶(LSTM)セルは、最終セル状態が特徴ベクトルのシーケンスの関連コンポーネントのみを符号化するやり方で情報を選択的に蓄積しかつ廃棄することによって、それぞれの時間ステップにおいてセル状態ctを修正する4つのゲート、forget f、input i、update u、およびoutput oから成る。それぞれの時間ステップtにおいて、セルおよび隠れ状態は、以下のように更新される。
ct=ft゜ct-1+it゜ut、および
ht=ot゜tanh(ct)、ここで
ft=σ(Wfxt+Ufht-1)
it=σ(Wixt+Uiht-1)
ut=tanh(Wuxt+Uuht-1)
ot=σ(Woxt+Uoht-1)
式中、σ()およびtanh()は、要素ごとのシグモイドおよび双曲線正接演算を表し、WおよびUは、線形変換のパラメータである。最終セル状態CTsは、対応する部分画像に対するコンテキストベクトルとして使用される。
【0047】
一実施形態では、エンコーダユニットは双方向ネットワークである。LSTMセルが一方向のものであり、過去のコンテキストを学習できるだけであるため、双方向ネットワークは、特徴ベクトルのシーケンスにおける前方依存性および後方依存性両方を用いるために、2つのLSTMセルを組み合わせることによって形成される。双方向ネットワークは、
図5に示されるように、特徴ベクトルのシーケンスを相対する方向に処理する。
【0048】
一実施形態では、エンコーダユニットによって生成されるコンテキストベクトルCTsは、対応する部分画像に対するデコーダユニットへの入力として提供される。デコーダユニットは単一のLSTMセルを有する一方向ネットワークである。
【0049】
一実施形態では、W
aが変換行列c
1である、アフィン変換、c
1=W
aC
Tsは、デコーダユニットのセル状態を初期化するために使用される。デコーダユニットは、c
1、および自身の以前の予測{y
1、…、y
t-1}が条件付けられている、それぞれの時間ステップtにおける出力シーケンスのトークンy
tを生成する。デコーダユニットは、T
dはシーケンス長である、出力シーケンスy={y
1、…、y
Td}にわたる条件付き確率分布
を学習する。デコーダユニットを使用して、それぞれの条件付きは、p(y
t|{y
t、…、y
t-1}、c1=softmax(g(y
t-1、h
t-1、c
1))としてモデリングされ、ここで、gは非線形関数であり、h
t-1はデコーダユニットの隠れ状態である。
【0050】
一実施形態では、エンコーダユニットおよびデコーダユニットの両方は、それぞれが、LSTMセルのそれぞれにおいて256の隠れユニットを有する2つの回帰層を含み、学習能力を高めるために2つの層の深さまで拡張する。
【0051】
一実施形態では、RNNベースのエンコーダユニットおよびデコーダユニットは、含まれている回帰ユニットを通して後続の回帰層への勾配流を促進するように残差接続によって構成される。深さ方向接続に従ってドロップアウト機構を採用して、長期依存性を捕らえるために回帰接続を修正することなくエンコーダユニットを規則化する。層正規化は、ミニバッチトレーニングによる共変量シフトを防止するように神経細胞を活性化するために採用される。また、注意機構は、デコーダユニットの隠れ状態をエンコーダユニットの隠れ状態と合わせるために採用される。
【0052】
一実施形態では、ドロップアウト機構は、長期依存性を捕らえるようにRNNベースのエンコーダユニットおよびデコーダユニットの容量を保持するために採用される。一実施形態では、層正規化は、隠れ状態ダイナミックスを安定化させるようにRNNベースのエンコーダユニットおよびデコーダユニットにおける回帰活性化のために、および、システム100のトレーニング中の良好な収束のために採用される。線形変換W∈R256xNは、ロジットを生成するためにデコーダユニットに対して適用され、ここで、Nは出力される語彙サイズである。Softmax演算は、それぞれの時間ステップにおける出力される語彙にわたる確率分布を定義するためにロジットに対して行われる。一実施形態では、出力される語彙サイズは、スペース、アスタリスクなどの特殊文字と併せた言語に存在する文字数である。一実施形態では、英語の手書きテキスト認識に対する出力される語彙サイズは、26の文字および53の特殊文字を含む79である。
【0053】
一実施形態では、Bahdanau注意機構などの注意機構は、特徴ベクトルのシーケンスに対して、エンコーダユニットによって生成される注釈のシーケンス
の類似性に基づいてそれぞれの時間ステップにおいてコンテキストベクトルが修正されることにより、RNNベースのエンコーダユニットおよびデコーダユニットへの拡張として採用される。一実施形態では、注意機構は、エンコーダユニットとデコーダユニットとの間のリンクを形成するコンテキストベクトルが特に長いシーケンスに対して基本的な情報を忘れる傾向がある場合があるという事実により使用される。一実施形態では、長いシーケンスは2つ以上の手書きテキスト文を含有する場合がある。i番目のデコーダ時間ステップにおけるコンテキストベクトルは以下によって与えられる。
【0054】
【0055】
ここで、aは、特徴抽出モジュール(
図2の102B)のCNN、および、シーケンス学習モジュール(
図2の102D)のRNNベースのエンコーダユニットおよびデコーダユニットと共にトレーニングされるフィードフォワードネットワークである。
【0056】
従って、コンテキストベクトルは入力された注釈の加重和として修正され、ここで、重みによって、位置iにおけるデコーダユニットの出力が特徴ベクトルのシーケンスの位置jの周りのシーケンス特徴ベクトルからの特徴ベクトルとどれほど類似しているかが測定される。Luong注意機構において使用される注意入力送り(attention input feeding)アプローチはまた、以前の時間ステップからのコンテキストベクトルがシステム100の予測容量をさらに増大させるために現在の時間ステップの入力と連結されることにより採用される。
【0057】
一実施形態では、システム100は、出力シーケンスにおけるそれぞれの予測された文字に対して独立して算出される累積カテゴリクロスエントロピ(CE)損失を最小化することによってトレーニングされる。出力シーケンスy={y
1、…、y
Td}に対して、
として定義され、ここで、p(y
t)は時間ステップtにおけるtrueクラスの確率である。
【0058】
一実施形態では、それぞれの時間ステップにおけるデコーダユニットへの入力は、シーケンス終了<eos>が発せられるまで、以前のステップからのgold予測に対応する、学習可能な埋め込み層からの埋め込みベクトルである。勾配降下は、通時的誤差逆伝搬法(BPTT)の使用後に、CNN内に誤差逆伝搬法を行ってネットワークの重みおよびバイアスを更新して、RNNベースのエンコーダユニットおよびデコーダユニットにわたって行われる。
【0059】
一実施形態では、CE損失から生じるクラスの不均衡問題に対処するために最終CE損失におけるそれぞれのインスタンスの貢献度に適した重みを割り当てることによる焦点損失技法が採用される。最終CE損失は、F L(p)=-(1-p)γlog(p)として定義され、ここで、pはtrueクラスの確率であり、γは調整可能な焦点パラメータである。
【0060】
一実施形態では、システム100の推論は、そのインスタンスにおける出力として、それぞれの時間ステップにおけるsoftmax分布からの最も高い確率を有するクラスを発する貪欲復号(Greedy Decoding)(GD)を使用して導出される。貪欲復号は、最良のシーケンスが、必ずしも真でない場合がある、それぞれの時間ステップにおける最も可能性の高いトークンで構成されるという根本的な仮定によって動作する。
【0061】
一実施形態では、ビームサーチ復号アルゴリズムを使用して、ビームとして既知の仮説のセットにわたって、同時分布を最大化することによって最良のシーケンスを見つける。同時分布は下記により与えられる。
p(y1、y2、…、yTd)=p(y1)×p(y2|y1)×p(y3|{y1、y2})×…×p(yTd|{y1、y2、…、yTd-1})
【0062】
ビームサーチ復号アルゴリズムは、top-Kクラスを選択する。ここで、Kは第1の時間ステップにおけるビームサイズであり、次の時間ステップにおけるそれらのそれぞれに対して個々に出力分布を得る。K×N仮説のうち、Nは出力される語彙サイズであり、top-Kクラスは、積p(y1)×p(y2|y1)に基づいて選定される。上記のプロセスは、ビームにおける全てのKの光線が<eos>トークンを発するまで繰り返される。デコーダユニットの最終出力は、ビームにおける最も高い値のp(y1、y2、…、yTd)を有する光線である。ビームサイズは出力される語彙サイズに相当するものとして定義される。
【0063】
本開示の一実施形態によると、画像後処理モジュール(
図2の102E)は、ステップ310において、文字セットを後処理するように構成される。後処理するステップ310は、手書きテキスト出力ファイルを生成するために対応する部分画像のそれぞれに対して文字セットを組み合わせることを含み、手書きテキスト出力ファイルは走査済み手書きテキスト入力画像の認識されたテキストバージョンである。
【0064】
一実施形態では、画像後処理モジュール(
図2の102E)は、文字セットが、手書きテキスト出力ファイルを生成するためにRNNベースのエンコーダユニットおよびデコーダユニットによってそれぞれの部分画像に対して認識される順序で文字セットを組み合わせるように構成される。
【0065】
本開示の一実施形態によると、特徴抽出モジュール(
図2の102B)およびシーケンス学習モジュール(
図2の102D)は両方共、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のための開示されたシステム100におけるコネクショニストコンポーネント(Connectionist component)の機能を果たす。
【0066】
本開示によると、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法は、理解を容易にするために単一の走査済み手書きテキスト画像に対する手書きテキスト認識によって説明される。しかしながら、開示されたシステムおよび方法は、複数の走査済み手書きテキスト画像に対する手書きテキストを認識できる。
【0067】
実験結果
ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のための開示されたシステムおよび方法は、走査済み手書きテキスト入力画像のテキスト行全てに対する平均として判断される性能測定基準として誤字率(CER)およびワード誤り率(WER)を使用して、IAM手書きデータベースv3:0(英語)、およびNvidia Tesla K40 GPUにおけるRIMESデータベース(フランス語)などの公的に入手可能であるデータセットにおいて評価される。ミニバッチ勾配降下は、トレーニングを加速させるために採用され、以下のように算出される、シーケンス損失の単純な拡張であるバッチ損失が最適化される。
【0068】
【0069】
式中、Mはバッチサイズであり、yitはバッチのi番目のインスタンスのt番目の時間ステップを表す。実験について、バッチサイズは16に設定される。Adamアルゴリズムは0:001の学習率による最適化プログラムとして使用される。開示されたシステム100は、テスト検証精度を取得するまでトレーニングされ、30エポック後に達成される。
【0070】
表3は、開示されたシステム100における、層正規化(LN)、焦点損失技法、およびビームサーチ復号アルゴリズムの効果を示す。LNによって、システム100の基本モデルの性能はおよそ3%改善された。焦点損失技法の使用によって、また、システム100の精度が1~3%増大したが、貪欲復号を、システム100の精度を4~5%高めるビームサーチ復号アルゴリズムと置き換えることによって、主要な改善が達成される。
【0071】
【0072】
表4は、既存のシステムおよび方法論との、開示されたシステム100および方法300の誤字率(CER)およびワード誤り率(WER)に関する精度ついての比較を示す。表5は、既存のCNN-1DRNN-CTCモデルとの、開示されたシステムおよび方法の最大GPUメモリ消費およびトレーニング可能パラメータ数に関する効率についての比較を示す。
【0073】
【0074】
【0075】
開示されたシステムおよび方法のワードレベル精度は、既存のシステムおよび方法論に対して改善されているが、文字レベル精度は比較するとわずかに低い。
【0076】
本開示によると、ネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法は、入力された部分画像を、128画素から32画素に及ぶ一定の高さを維持する一方、幅は対応する部分画像のアスペクト比を維持するように調節される、スケーリングされたまたはダウンサンプリングされたバージョンとして取ることによって、計算数が少なくなりかつメモリ要件が少なくなった手書きテキスト認識が達成される。実験結果によって、全体的な精度を損なうことなく、それぞれの部分画像の元のサイズのほぼ16分の1までダウンサンプリングすることによって、計算の61%の低減、およびメモリ消費の17%の低減が達成される。
【0077】
本開示の一実施形態によると、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のための開示されたシステムおよび方法によって、注意機構を有する、RNNベースのエンコーダユニットおよびデコーダユニットを使用する手書きテキスト認識における精度の、既存のCNN-1DRNN-CTCモデルに対する大幅な改善が達成される。実験結果によって、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のための開示されたシステムおよび方法は、利用可能なデータセットのIAMおよびRIMESに対して精度がそれぞれ、3:5%および1:1%優れていた。
【0078】
本開示によると、ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムおよび方法は、走査済み手書きテキスト入力画像を使用して効率的なオフライン手書きテキスト認識を行うための完全なエンドツーエンド解決策をもたらす。
【0079】
保護の範囲がこのようなプログラムまで拡張され、メッセージを有するコンピュータ可読手段に加えて、このようなコンピュータ可読記憶手段が、プログラムが、サーバもしくはモバイルデバイス、または任意の適したプログラマブルデバイス上で実行している時、方法の1つまたは複数のステップの実施のためのプログラムコード手段を含有することは、理解されたい。ハードウェアデバイスは、例えば、サーバもしくはパーソナルコンピュータなどのような任意の種類のコンピュータ、またはこれらの組み合わせなどを含む、プログラム可能である任意の種類のデバイスとすることができる。デバイスはまた、例えば、特定用途向け集積回路(ASIC)のようなハードウェア手段、フィールドプログラマブルゲートアレイ(FPGA)、または例えば、ASICおよびFPGAといったハードウェア手段およびソフトウェア手段の組み合わせ、または、ソフトウェアモジュールが位置している、少なくとも1つのマイクロプロセッサおよび少なくとも1つのメモリとすることが可能な手段を含んでよい。よって、手段は、ハードウェア手段およびソフトウェア手段両方を含むことができる。本明細書に説明される方法の実施形態は、ハードウェアおよびソフトウェアにおいて実装可能である。デバイスはソフトウェア手段も含んでよい。代替的には、実施形態は、例えば、複数のCPUを使用して種々のハードウェアデバイス上で実施されてよい。
【0080】
本明細書における実施形態は、ハードウェア要素およびソフトウェア要素を含むことができる。ソフトウェアで実装される実施形態は、限定ではないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む。本明細書に説明されるさまざまなモジュールによって行われる機能は、他のモジュールまたは他のモジュールの組み合わせで実装されてよい。この説明の目的で、コンピュータ使用可能またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによるまたはこれに関連して使用するためのプログラムを、含む、記憶する、通信する、伝える、または転送することができる任意の装置とすることができる。
【0081】
例証のステップは、示される例示の実施形態を説明するために述べられたものであり、進展中の技術的進歩が特定の機能が行われるやり方を変更することが予期されるものとする。これらの例は、本明細書において限定ではなく例証の目的で提示されている。さらに、機能的構築ブロックの境界は、説明の便宜上、本明細書に任意に定義されている。代替の境界は、特定の機能およびその関係性が適切に行われる限り定義され得る。(本明細書に説明されるものの等価例、拡張例、変形例、逸脱例などを含む)代替例は、本明細書に含有される教示に基づいて当業者には明らかになるであろう。このような代替例は、開示される実施形態の範囲および趣旨の範囲内にある。また、「備える(comprising)」、「有する(having)」、「含有する(containing)」、および「含む(including)」という語、ならびに他の類似の形は、これらの語のうちのいずれか1つに続く項目(単数または複数)が、このような項目(単数または複数)の網羅的なリストであること、すなわち、リストされた項目(単数または複数)のみに限定することを意味していないという点で意味的に等価であり、オープンエンドであることが意図される。また、本明細書において、および添付の特許請求の範囲において使用されるように(明細書に含まれる時)、単数形「a」、「an」、および「the」は、別段文脈において明確に決定づけられていない限り、複数の参照記号を含むことにも留意されなくてはならない。
【0082】
さらには、1つまたは複数のコンピュータ可読記憶媒体は、本開示と合致する実施形態を実装する際に用いられてよい。コンピュータ可読記憶媒体は、プロセッサによって可読の情報またはデータが記憶可能である任意のタイプの物理メモリを指す。よって、コンピュータ可読記憶媒体は、本明細書に説明される実施形態と合致するステップまたは段階をプロセッサ(複数可)に行わせるための命令を含んだ、1つまたは複数のプロセッサによって実行するための命令を記憶することができる。「コンピュータ可読媒体」という用語は、有形の品目を含み、かつ搬送波および過渡信号を含まない、すなわち、非一時的であると理解されるべきである。例として、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、揮発性メモリ、不揮発性メモリ、ハードドライブ、CD ROM、DVD、フラッシュドライブ、ディスク、および任意の他の既知の物理記憶媒体が挙げられる。
【0083】
本開示および例は、単に例示とみなされ、開示される実施形態の真の範囲および趣旨は、以下の特許請求の範囲によって指示されていることが意図される。