【解決手段】ニューラルネットワークを使用するエンドツーエンド手書きテキスト認識のためのシステムは、手書きテキスト行をスケーリングする画像前処理モジュールと、畳み込みネットワークにより部分画像を複数の機能マップに変える特徴抽出モジュールと、複数の機能マップを連結し複数の特徴ベクトルのシーケンスに変換するマップ-シーケンスモジュールと、回帰ニューラルネットワークを使用して特徴ベクトルのシーケンスを用いて学習するシーケンス学習モジュールとが、動作可能に結合され、かつ手書きテキスト出力ファイルを生成するために対応する部分画像のそれぞれに対して文字セットを組み合わせるように構成された画像後処理モジュールより構成される。
前記画像前処理モジュールは、左側および右側両方における対応する背景画素を有するバッチに含まれる前記1つまたは複数の部分画像をパディングして前記バッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用するように、およびランダムな歪みを前記1つまたは複数の部分画像に取り込んで前記1つまたは複数の部分画像における変形を生じさせるように、さらに構成される、請求項1に記載のシステム。
前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる7つの畳み込み層を含み、前記畳み込み層の前記leaky ReLU活性化は、内部共変量シフトを防止し、かつ次の畳み込み層に伝わる前に前記トレーニングを加速するためのバッチ正規化、および、前記1つまたは複数の部分画像の次元性を低減するために前記畳み込み層の少なくともいくつかの前記活性化に対して行うプーリング演算機構を行うことによって構成される、請求項1に記載のシステム。
前記エンコーダユニットは2つの長・短期記憶(LSTM)セルを組み合わせることによって形成される双方向ネットワークであり、前記デコーダユニットは単一のLSTMセルを有する一方向ネットワークである、請求項1に記載のシステム。
前記エンコーダユニットおよび前記デコーダユニットは、前記LSTMセルのそれぞれにおける256の隠れユニットを有する2つの回帰層を含む、請求項4に記載のシステム。
前記RNNベースのエンコーダユニットおよびデコーダユニットは、残差接続によって含まれている回帰ユニットを通した後続の回帰層への勾配流を促進すること、深さ方向接続に従ってドロップアウト機構を採用することによって長期依存性を捕らえるために回帰接続を修正することなく前記エンコーダユニットを規則化すること、層正規化によってミニバッチトレーニングによる前記共変量シフトを防止するために神経細胞を活性化すること、および、前記注意機構を通して、前記デコーダユニットの隠れ状態を前記エンコーダユニットの隠れ状態と合わせることによって構成される、請求項1に記載のシステム。
前記前処理するステップは、左側および右側両方における対応する背景画素を有するバッチに含まれる前記1つまたは複数の部分画像をパディングして前記バッチにおける最も幅広い部分画像の幅をマッチさせることによって寸法の一様性を維持するためのミニバッチトレーニング技法を採用することと、ランダムな歪みを前記1つまたは複数の部分画像に取り込んで前記1つまたは複数の部分画像における変形を生じさせることと、をさらに含む、請求項7に記載の方法。
前記CNNは、leaky ReLU活性化によって連続的に積み重ねられる7つの畳み込み層であって、該leaky ReLU活性化は、内部共変量シフトを防止し、かつ次の畳み込み層に伝わる前に前記トレーニングを加速するためのバッチ正規化、および、前記1つまたは複数の部分画像の次元性を低減するために前記畳み込み層の少なくともいくつかの前記活性化に対して行うプーリング演算機構によって構成される、請求項7に記載の方法。
前記RNNベースのエンコーダユニットおよびデコーダユニットは、含まれている回帰ユニットを通した後続の回帰層への勾配流を促進するための残差接続、長期依存性を捕らえるために前記回帰接続を修正することなく前記エンコーダユニットを規則化するために深さ方向接続に従って採用されたドロップアウト機構、ミニバッチトレーニングによる前記共変量シフトを防止するために神経細胞を活性化するための層正規化、および、前記デコーダユニットの隠れ状態を前記エンコーダユニットの隠れ状態と合わせるための注意機構によって構成される、請求項7に記載の方法。
コンピュータ可読プログラムが具現化されている非一時的なコンピュータ可読媒体を含むコンピュータプログラム製品であって、前記コンピュータ可読プログラムは、コンピューティングデバイス上で実行される時、前記コンピューティングデバイスに、
画像前処理モジュールによって、受信した走査済み手書きテキスト入力画像を前処理することであって、前記前処理することは、前記受信した走査済み手書きテキスト入力画像から1つまたは複数の部分画像を、それぞれの部分画像が前記走査済み手書きテキスト入力画像に存在する手書きテキスト行を含んで得ること、および前記1つまたは複数の部分画像を、一定の高さおよび可変の幅を有し、かつそのアスペクト比を維持する1つまたは複数のスケーリングされた部分画像にスケーリングすることを含む、前処理することと、
畳み込みニューラルネットワーク(CNN)を適用することによって、特徴抽出モジュールによる前記1つまたは複数のスケーリングされた部分画像のそれぞれを1つまたは複数の機能マップに変えることであって、前記1つまたは複数の機能マップは対応する部分画像の視覚的特徴を含有する、変えることと、
前記1つまたは複数の機能マップに含まれる列を深さ方向に分離し、かつ前記対応する部分画像の前記1つまたは複数の機能マップの各列を連結することによって、マップ−シーケンスモジュールによる前記1つまたは複数の機能マップを特徴ベクトルのシーケンスに変換することと、
回帰ニューラルネットワーク(RNN)ベースのエンコーダユニットおよびデコーダユニットを使用して、特徴ベクトルのそれぞれのシーケンスと関連付けられる前記視覚的特徴をマッピングすることによって、シーケンス学習モジュールによって1つまたは複数の文字セットを生成することであって、前記1つまたは複数の文字セットは前記対応する部分画像に対して認識される機械可読テキストであり、前記RNNベースのエンコーダユニットおよびデコーダユニットのエンコーダユニットは、特徴ベクトルのそれぞれのシーケンスに対してコンテキストベクトルを生成するように構成され、前記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の計算数およびメモリ要件を低減するために対応する部分画像のアスペクト比を維持するように調節される。
【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におけるそれぞれの畳み込み層のネットワーク構成を示す。
【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】
一実施形態では、エンコーダユニットは、入力として、T
Sはシーケンス長である、X=(x
1、…、x
Ts)である、それぞれの部分画像の特徴ベクトルのシーケンスを取り、かつ、シーケンス全体を代表する、対応する部分画像に対するコンテキストベクトルcを生成することで、それぞれの時間ステップtにおいて、隠れ状態はh
t=g(x
t、h
t-1)となり、最後に、c=s(h
1、…、h
Ts)となる。式中、gおよびsはある非線形関数である。
【0046】
一実施形態では、長・短期記憶(LSTM)セルは、メモリセルc∈R
nの存在により長期依存性を学習するためにエンコーダユニットにおいて使用される。一実施形態では、単一の長・短期記憶(LSTM)セルは、最終セル状態が特徴ベクトルのシーケンスの関連コンポーネントのみを符号化するやり方で情報を選択的に蓄積しかつ廃棄することによって、それぞれの時間ステップにおいてセル状態c
tを修正する4つのゲート、forget f、input i、update u、およびoutput oから成る。それぞれの時間ステップtにおいて、セルおよび隠れ状態は、以下のように更新される。
c
t=f
t゜c
t-1+i
t゜u
t、および
h
t=o
t゜tanh(c
t)、ここで
f
t=σ(W
fx
t+U
fh
t-1)
i
t=σ(W
ix
t+U
ih
t-1)
u
t=tanh(W
ux
t+U
uh
t-1)
o
t=σ(W
ox
t+U
oh
t-1)
式中、σ()およびtanh()は、要素ごとのシグモイドおよび双曲線正接演算を表し、WおよびUは、線形変換のパラメータである。最終セル状態C
Tsは、対応する部分画像に対するコンテキストベクトルとして使用される。
【0047】
一実施形態では、エンコーダユニットは双方向ネットワークである。LSTMセルが一方向のものであり、過去のコンテキストを学習できるだけであるため、双方向ネットワークは、特徴ベクトルのシーケンスにおける前方依存性および後方依存性両方を用いるために、2つのLSTMセルを組み合わせることによって形成される。双方向ネットワークは、
図5に示されるように、特徴ベクトルのシーケンスを相対する方向に処理する。
【0048】
一実施形態では、エンコーダユニットによって生成されるコンテキストベクトルC
Tsは、対応する部分画像に対するデコーダユニットへの入力として提供される。デコーダユニットは単一の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∈R
256xNは、ロジットを生成するためにデコーダユニットに対して適用され、ここで、Nは出力される語彙サイズである。Softmax演算は、それぞれの時間ステップにおける出力される語彙にわたる確率分布を定義するためにロジットに対して行われる。一実施形態では、出力される語彙サイズは、スペース、アスタリスクなどの特殊文字と併せた言語に存在する文字数である。一実施形態では、英語の手書きテキスト認識に対する出力される語彙サイズは、26の文字および53の特殊文字を含む79である。
【0053】
一実施形態では、Bahdanau注意機構などの注意機構は、特徴ベクトルのシーケンスに対して、エンコーダユニットによって生成される注釈のシーケンス
の類似性に基づいてそれぞれの時間ステップにおいてコンテキストベクトルが修正されることにより、RNNベースのエンコーダユニットおよびデコーダユニットへの拡張として採用される。一実施形態では、注意機構は、エンコーダユニットとデコーダユニットとの間のリンクを形成するコンテキストベクトルが特に長いシーケンスに対して基本的な情報を忘れる傾向がある場合があるという事実により使用される。一実施形態では、長いシーケンスは2つ以上の手書きテキスト文を含有する場合がある。i番目のデコーダ時間ステップにおけるコンテキストベクトルは以下によって与えられる。
【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(y
1、y
2、…、y
Td)=p(y
1)×p(y
2|y
1)×p(y
3|{y
1、y
2})×…×p(y
Td|{y
1、y
2、…、y
Td-1})
【0062】
ビームサーチ復号アルゴリズムは、top−Kクラスを選択する。ここで、Kは第1の時間ステップにおけるビームサイズであり、次の時間ステップにおけるそれらのそれぞれに対して個々に出力分布を得る。K×N仮説のうち、Nは出力される語彙サイズであり、top−Kクラスは、積p(y
1)×p(y
2|y
1)に基づいて選定される。上記のプロセスは、ビームにおける全てのKの光線が<eos>トークンを発するまで繰り返される。デコーダユニットの最終出力は、ビームにおける最も高い値のp(y
1、y
2、…、y
Td)を有する光線である。ビームサイズは出力される語彙サイズに相当するものとして定義される。
【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データベース(フランス語)などの公的に入手可能であるデータセットにおいて評価される。ミニバッチ勾配降下は、トレーニングを加速させるために採用され、以下のように算出される、シーケンス損失の単純な拡張であるバッチ損失が最適化される。
【0069】
式中、Mはバッチサイズであり、y
itはバッチのi番目のインスタンスのt番目の時間ステップを表す。実験について、バッチサイズは16に設定される。Adamアルゴリズムは0:001の学習率による最適化プログラムとして使用される。開示されたシステム100は、テスト検証精度を取得するまでトレーニングされ、30エポック後に達成される。
【0070】
表3は、開示されたシステム100における、層正規化(LN)、焦点損失技法、およびビームサーチ復号アルゴリズムの効果を示す。LNによって、システム100の基本モデルの性能はおよそ3%改善された。焦点損失技法の使用によって、また、システム100の精度が1〜3%増大したが、貪欲復号を、システム100の精度を4〜5%高めるビームサーチ復号アルゴリズムと置き換えることによって、主要な改善が達成される。
【0072】
表4は、既存のシステムおよび方法論との、開示されたシステム100および方法300の誤字率(CER)およびワード誤り率(WER)に関する精度ついての比較を示す。表5は、既存のCNN−1DRNN−CTCモデルとの、開示されたシステムおよび方法の最大GPUメモリ消費およびトレーニング可能パラメータ数に関する効率についての比較を示す。
【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】
本開示および例は、単に例示とみなされ、開示される実施形態の真の範囲および趣旨は、以下の特許請求の範囲によって指示されていることが意図される。