(57)【特許請求の範囲】
【請求項１】
入力を受信し、出力パターンを提供する前処理コンポーネントと、
前記前処理コンポーネントから前記出力パターンを受信する少なくとも１つの重畳層であって、複数の特徴マップを含み、トレーニング可能パラメータの重み付けされたセットを含み、前記特徴マップは前記出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの重み付けされたセットを使用して前記特徴マップはサブサンプリングを行い、前記出力パターンから抽出された特徴に関連付けられた出力を提供する重畳層と、
前記少なくとも１つの重畳層からの出力を受信し、前記少なくとも１つの重畳層によって抽出された前記特徴を分類し、クラスに関連付けられた確率を含む複数の出力を提供する少なくとも１つの完全接続層であって、パターン認識システムが、少なくとも部分的には式
【数１】
0004142463.tif 000007
に基づくクロスエントロピー誤差最小化を利用してトレーニングされ、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、
ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けする完全接続層と
を含むことを特徴とするパターン認識システム。
【請求項２】
前記特徴マップのための前記トレーニング可能パラメータが等しいことを特徴とする請求項１に記載のパターン認識システム。
【請求項３】
確率勾配降下アルゴリズムを使用してトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項４】
１ストロークのアジア文字を認識するようにトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項５】
２ストロークのアジア文字を認識するようにトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項６】
１ストロークの日本語文字を認識するようにトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項７】
２ストロークの日本語文字を認識するようにトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項８】
複数のＡＳＣＩＩ文字を認識するようにトレーニングされることを特徴とする請求項１に記載のパターン認識システム。
【請求項９】
入力を受信し、ビットマップ出力パターンを提供する前処理コンポーネントと、
前記前処理コンポーネントからビットマップ出力パターンを受信する第１の重畳層であって、複数の第１の特徴マップを含み、該第１の特徴マップはトレーニング可能パラメータの第１の重み付けされたセットを含み、前記ビットマップ出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの第１の重み付けされたセットを使用して前記特徴マップはサブサンプリングを行い、前記ビットマップ出力パターンから抽出された第１の特徴に関連付けられた出力を提供する第１の重畳層と、
前記第１の特徴マップの出力を受信する第２の重畳層であって、複数の第２の特徴マップを含み、該第２の特徴マップはトレーニング可能パラメータの第２の重み付けされたセットを含み、前記ビットマップ出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの第２の重み付けされたセットを使用して前記特徴マップはサブサンプリングを行い、前記第２の特徴マップが第２の特徴に関連付けられた出力を提供する第２の重畳層と、
前記第２の特徴マップの前記出力を分類し、出力を提供する第１の完全接続層と、
前記第１の完全接続層の前記出力を分類し、クラスに関連付けられた確率を含む複数の出力を提供する第２の完全接続層であって、前記パターン認識システムが、少なくとも部分的には式
【数２】
0004142463.tif 000008
に基づくクロスエントロピー誤差最小化を利用してトレーニングされ、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、
ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けする第２の完全接続層と
を含むことを特徴とするパターン認識システム。
【請求項１０】
前記第１の重畳層が５個の第１の特徴マップを含むことを特徴とする請求項９に記載のパターン認識システム。
【請求項１１】
前記第１の特徴マップが１５６個の入力を受信することを特徴とする請求項１０に記載のパターン認識システム。
【請求項１２】
前記第２の重畳層が５０個の第２の特徴マップを含むことを特徴とする請求項９に記載のパターン認識システム。
【請求項１３】
前記第２の特徴マップが２５個の入力を受信することを特徴とする請求項１２に記載のパターン認識システム。
【請求項１４】
前記第１の完全接続層が１００個の隠れユニットを含むことを特徴とする請求項９に記載のパターン認識システム。
【請求項１５】
前記第１の特徴マップのための第１のトレーニング可能パラメータが等しいことを特徴とする請求項９に記載のパターン認識システム。
【請求項１６】
確率勾配降下アルゴリズムを使用してトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項１７】
１ストロークのアジア文字を認識するようにトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項１８】
２ストロークのアジア文字を認識するようにトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項１９】
１ストロークの日本語文字を認識するようにトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項２０】
２ストロークの日本語文字を認識するようにトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項２１】
複数のＡＳＣＩＩ文字を認識するようにトレーニングされることを特徴とする請求項９に記載のパターン認識システム。
【請求項２２】
請求項９に記載のパターン認識システムを使用することを特徴とするドキュメントスキャナ。
【請求項２３】
請求項９に記載のパターン認識システムを使用することを特徴とする光学式文字認識システム。
【請求項２４】
請求項９に記載のパターン認識システムを使用することを特徴とする携帯情報端末。
【請求項２５】
請求項９に記載のパターン認識システムを使用することを特徴とするタブレットパーソナルコンピュータ。
【請求項２６】
パターン認識システムをトレーニングするためのシステムであって、
入力を受信し、出力パターンを提供する前処理コンポーネントと、
前記前処理コンポーネントから前記出力パターンを受信し、前記出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの重み付けされたセットを使用してサブサンプリングを行う重畳型ニューラルネットワークであって、複数のクラス確率出力を提供する重畳型ニューラルネットワークを含むパターン認識システムと、
クロスエントロピー誤差を、少なくとも部分的には前記複数のクラス確率出力およびトレーニングクラス情報に基づいて、
【数３】
0004142463.tif 000009
の式を使用して、計算し、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けするクロスエントロピー誤差計算器と、
確率勾配降下アルゴリズムを利用して、少なくとも部分的には前記クロスエントロピー誤差に基づいて前記パターン認識システムのトレーニング可能パラメータの重み付けされたセットを更新するバックプロパゲーション勾配降下コンポーネントと、
前記パターン認識システムの前記トレーニング可能パラメータの重み付けされたセットを更新するトレーニング可能パラメータ更新コンポーネントと
を含むことを特徴とするシステム。
【請求項２７】
前記バックプロパゲーション勾配降下コンポーネントは、前記トレーニング可能パラメータの更新において式
【数４】
0004142463.tif 000010
を利用し、ただし、Ｗはトレーニング可能パラメータのセットであり、
εはスカラ定数であることを特徴とする請求項２６に記載のシステム。
【請求項２８】
パターン認識システムをトレーニングするための方法であって、
前処理コンポーネントを使用してトレーニングパターンを前処理し、
前記前処理コンポーネントからの出力についてのパターン認識を、少なくとも部分的には、トレーニング可能パラメータの重み付けされたセットを有する重畳型ニューラルネットワークに基づいて、パターン認識システムを利用して実行するステップと、
複数のクラス確率出力を前記トレーニングパターンに基づいて提供するステップと、
クロスエントロピー誤差を、少なくとも部分的には、前記複数のクラス確率出力および前記トレーニングパターンに関連付けられた情報に基づいて、
【数５】
0004142463.tif 000011
の式を使用して、計算し、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けするステップと、
前記トレーニング可能パラメータの重み付けされたセットを、少なくとも部分的には勾配降下アルゴリズムに基づいて、計算されたエントロピー誤差を利用して更新するステップと
を含むことを特徴とする方法。
【請求項２９】
パターン認識のトレーニングを容易にするシステムのコンピュータ実行可能コンポーネントを格納するコンピュータ可読媒体であって、
入力を受信し、ビットマップ出力パターンを提供する前処理コンポーネントと、
前記前処理コンポーネントから出力パターンを受信し、前記出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの重み付けされたセットを使用してサブサンプリングを行う重畳型ニューラルネットワークであって、複数のクラス確率出力を提供する重畳型ニューラルネットワークを含むパターン認識コンポーネントと、
クロスエントロピー誤差を、少なくとも部分的には前記複数のクラス確率出力およびトレーニングクラス情報に基づいて、
【数６】
0004142463.tif 000012
の式を使用して、計算し、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けするクロスエントロピー誤差計算器コンポーネントと、
確率勾配降下アルゴリズムを利用して、少なくとも部分的には前記クロスエントロピー誤差に基づいて前記パターン認識システムのトレーニング可能パラメータの重み付けされたセットを更新するバックプロパゲーション勾配降下コンポーネントと、
前記パターン認識システムの前記トレーニング可能パラメータの重み付けされたセットを更新するトレーニング可能パラメータ更新コンポーネントと
を含むことを特徴とするコンピュータ可読媒体。
【請求項３０】
パターン認識システムのためのトレーニングシステムであって、
入力を受け付ける手段と、
前記入力を前処理する手段と、
当該前処理されたパターンを出力する手段と、
前記前処理されたパターンを受信し、前記出力パターンの少なくとも一部分のあらゆる位置で、すべてのディメンションにおいてサブサンプリングされる位置および次の隣接の２つの位置のために使用される、トレーニング可能パラメータの重み付けされたセットを使用してサブサンプリングを行う重畳型ニューラルネットワークであって、複数のクラス確率出力を提供する重畳型ニューラルネットワークを利用して、パターン認識を実行する手段と、
クロスエントロピー誤差を、少なくとも部分的には前記複数のクラス確率出力およびトレーニングクラス情報に基づいて、
【数７】
0004142463.tif 000013
の式を使用して、計算し、この式において、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識出力であり、ｋは前記クラスを索引付けする手段と、
パターン認識を実行する手段のトレーニング可能パラメータの重み付けされたセットを更新する手段であって、確率勾配降下アルゴリズムを利用して前記パターン認識システムの前記トレーニング可能パラメータの重み付けされたセットを、少なくとも部分的には前記クロスエントロピー誤差に基づいて更新する、更新手段と
を含むことを特徴とするトレーニングシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は一般にパターン認識に関し、より詳細には、パターン認識を容易にする重畳型ニューラルネットワーク（ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ
ｎｅｔｗｏｒｋ）を使用するシステムおよび方法に関する。
【０００２】
【従来の技術】
パターン認識は、たとえば、ペン／タブレット入力デバイスから取り込まれたキーストローク、またはスキャンされたドキュメントに基づくことができる。多数の従来型パターン認識システムは目標言語の知識を必要とする。多数の例では、ニューラルネットワークを使用するパターン認識システムのパラメータが、特定の目標言語（たとえば、英語および／または日本語）に合わせて手動で調節される。したがって、これらのパターン認識システムは、システムが手動で調節された言語以外の言語で使用するように容易に適合可能ではない。他の従来型パターン認識システムは入力キーストロークの時間的知識を必要とし、したがって計算上複雑になる可能性がある。
【０００３】
【発明が解決しようとする課題】
以下、本発明のいくつかの態様の基本的な理解を提供するために本発明の簡単な概要を提示する。この要約は本発明の広範囲の概観ではない。本発明の基本的／重要な要素を識別すること、または本発明の範囲を線引きすることを意図するものではない。その唯一の目的は、本発明のいくつかの概念を簡素化された形式で、後に提示するより詳細な説明への前置きとして提示することである。
【０００４】
本発明は、手書きパターン認識および／またはスキャンされたドキュメントからの文字認識を実行するために利用することができるパターン認識システムに備える。パターン認識システムは、重畳型ニューラルネットワーク（ＣＮＮ）アーキテクチャに基づき、これはたとえば、クロスエントロピー最小化を利用してトレーニングされた特徴認識層および分類層を含む。
【０００５】
【課題を解決するための手段】
本発明の一態様によれば、パターン認識システムがビットマップ入力パターン（たとえば、２次元）を受信し、複数の確率出力を提供する。パターン認識システムは、入力されたトレーニングデータから学習し、言語特有の知識、時間的ストローク入力、ペン方向情報および／またはストローク順序を必要としない。パターン認識システムは、評価されたビットマップイメージパターン（クラス）についての出力確率を提供する。出力確率は、たとえば、言語分類器、言語モデルおよび／またはセグメンテーションモデルによって利用することができる。
【０００６】
パターン認識システムを、クロスエントロピー誤差最小化を利用してトレーニングすることができる。たとえば、パターン認識システムを、クロスエントロピー誤差を最小化する確率勾配降下を使用してトレーニングすることができる。
【０００７】
特徴抽出層は特徴マップの重畳層を含み、この中で特徴マップが実質的に同じセットの係数または重みを使用して、受信された入力を修正するが、様々な特徴マップが異なるセットの係数を使用する。よって、特徴マップは異なる特徴を、受信された入力から抽出することができる。特徴抽出層の出力は分類層に接続される。
【０００８】
分類層は、隠れユニットの完全接続層を含む。隠れユニットの量は、たとえば、学習されるタスクの複雑さ、トレーニング例の量および／または質によって決まる可能性がある。最後の分類層は出力確率を提供する。
【０００９】
本発明のもう１つの態様は、重畳層および完全接続層を有するパターン認識システムに備える。パターン認識システムはビットマップ入力パターン（たとえば、２次元）を受信し、複数の出力確率を提供する。パターン認識システムを、クロスエントロピー誤差最小化を利用して（たとえば、クロスエントロピー誤差を最小化する確率勾配降下を使用して）トレーニングすることができる。
【００１０】
重畳層は複数の特徴マップを含み、この中で特徴マップが同じセットのトレーニング可能パラメータ（たとえば、係数または重み）を使用して、受信された入力を修正するが、様々な特徴マップが異なるセットのトレーニング可能パラメータ（たとえば、係数または重み）を使用する。特徴マップは、入力パターンの少なくとも一部を受信する。よって、特徴マップは異なる特徴を、受信された入力から抽出することができる。重畳層の出力は完全接続層に接続される。
【００１１】
完全接続層は重畳層からの出力を受信し、重畳層によって抽出された特徴を分類する。完全接続層は複数の出力確率を提供し、出力確率は、クラスに関連付けられた確率を含む。完全接続層は複数の隠れユニットを含む。完全接続層はそれ自体のトレーニング可能パラメータのセットを有することができる。
【００１２】
パターン認識システムを、クロスエントロピー誤差最小化を利用してトレーニングすることができ、これは少なくとも部分的には以下の式に基づく。
【００１３】
【数４】
0004142463.tif 000002
【００１４】
Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識システム出力であり、ｋはクラスを索引付けする（たとえば、１０個のクラスを有する手書き数字では、ｃ＝１０）。この誤差式は時として当技術分野ではカルバックライブラー情報量（またはＫＬ距離）と呼ばれる。一実施例では、このクロスエントロピー誤差（Ｅ）が第１の定数によって乗算される。もう１つの実施例では、第２の定数がＥに加算される。さらに、パターン認識システムを、確率勾配降下を使用してトレーニングすることができる。
【００１５】
パターン認識システムを、文字アルファベットまたはアルファベットのサブセットを認識するようにトレーニングすることができる。たとえば、入力がタブレットから生じた場合、パターン認識システムを、ペンの１または２ストロークにより生成される実質的にすべての文字について利用することができる。中国語または日本語の文字の場合、これは全体のアルファベットの５００個未満のクラスのサブセットに対応する。
【００１６】
本発明のさらにもう１つの態様は、第１の重畳層、第２の重畳層、第１の完全接続層および第２の完全接続層を有するパターン認識システムに備える。オプショナルで、パターン認識システムは、前処理コンポーネントを含むことができる。
【００１７】
第１の重畳層および第２の重畳層が、ビットマップイメージ入力パターン（たとえば、２次元）の特徴を抽出する。第１の完全接続層および第２の完全接続層が分類器として動作する。
【００１８】
第１の重畳層は複数の第１の特徴マップを含み、これが入力パターンの少なくとも一部を受信する。第１の特徴マップは第１のトレーニング可能パラメータを含み、第１の特徴に関連付けられた出力を提供する。第１の特徴マップは、トレーニング可能パラメータ（たとえば、係数または重み）の小さいカーネル（たとえば、５×５）を含み、これが入力を乗算かつ合計し、様々な位置についての結果を得る。実際には、重畳を、「特徴」のイメージをその入力イメージから抽出するトレーニング可能フィルタと見なすことができる。第１の特徴マップのための第１のトレーニング可能パラメータは、入力イメージにおける異なる空間場所について等しくすることができる（たとえば、場所から場所へ変換されるとき）。
【００１９】
第２の重畳層は第１の特徴マップの出力を受信する。第２の重畳層は複数の第２の特徴マップを含み、第２の特徴マップは、第１の特徴マップの出力の少なくとも一部を受信する。第２の特徴マップは第２のトレーニング可能パラメータを含み、第２の特徴に関連付けられた出力を提供する。第２の特徴マップは同様に、トレーニング可能パラメータ（たとえば、係数または重み）の小さいカーネル（たとえば、５×５）を含み、これが入力を乗算かつ合計し、様々な位置についての結果を得る。再度、実際には、重畳を、「特徴」のイメージをその入力イメージから抽出するトレーニング可能フィルタと見なすことができる。特徴をアンダーサンプルすることができ、たとえば、フィルタを１つおきの位置で評価することができる。このアンダーサンプリングにより計算が減るだけでなく、学習される自由パラメータの数も減り、その結果としてより小さいメモリフットプリントおよびよりよい汎化が生じる。
【００２０】
第１の完全接続層および第２の完全接続層が完全に接続され、第１の重畳層および第２の重畳層によって計算された特徴のための分類器を実施する。第１の完全接続層はトレーニング可能パラメータを有することができる。第１の完全接続層および第２の完全接続層は複数の隠れユニットを含む。２つの完全接続層の間の隠れユニットの数が、パターン認識システムの容量をコントロールする。
【００２１】
第２の完全接続層は出力確率を提供し、トレーニング可能パラメータを有することができる。出力確率を、クラス（たとえば、パターン認識システムによって認識された目標パターン）に関連付けられた確率にすることができる。パターン認識システムを、クロスエントロピー誤差最小化を利用してトレーニングすることができる。たとえば、パターン認識システムを、クロスエントロピー誤差の程度を最小化する確率勾配降下を使用してトレーニングして、ネットワークにクラスについての確率を出力するように教えるようにすることができる。
【００２２】
本発明のもう１つの態様は、パターン認識システムのためのトレーニングシステムに備え、これはパターン認識システム、クロスエントロピー誤差計算器、バックプロパゲーション勾配降下コンポーネントおよびトレーニング可能パラメータ更新コンポーネントを有する。パターン認識システムがパターン入力（たとえば、トレーニングパターン）を受信し、複数のクラス確率出力を提供する。パターン認識システムは、重畳型ニューラルネットワークアーキテクチャを利用することができる。
【００２３】
クロスエントロピー誤差計算器は、パターン認識システムからの複数のクラス確率出力、およびトレーニングクラス情報（たとえば、目標クラス）を受信する。クロスエントロピー誤差計算器はクロスエントロピー誤差を、少なくとも部分的には複数のクラス確率出力およびトレーニングクラス情報（たとえば、目標クラス）に基づいて計算する。クロスエントロピー誤差計算器はこのように、トレーニングクラス情報（たとえば、目標クラス）と、パターン認識システムの複数のクラス確率出力の間の不一致を計算することができる。
【００２４】
バックプロパゲーション勾配降下コンポーネントは、確率勾配降下アルゴリズム（たとえば、オンライン更新）を利用してトレーニングパラメータを更新することができ、これには雑音のある、あるいは概算されたバージョンの平均勾配を使用する。たとえば、バックプロパゲーション勾配降下コンポーネントは、トレーニングパラメータの更新において以下の式を利用することができる。
【００２５】
【数５】
0004142463.tif 000003
【００２６】
ただし、Ｗはトレーニング可能パラメータのセットであり、εはスカラ定数である。
【００２７】
トレーニング可能パラメータ更新コンポーネントは、パターン認識システムのトレーニングパラメータを、少なくとも部分的には、バックプロパゲーション勾配降下コンポーネントから受信された、更新されたトレーニングパラメータに関する情報に基づいて更新する。
【００２８】
クラス歪み（たとえば、ｘ変換、ｙ変換、回転、スケーリング、並列の双曲変換、対角の双曲変換および／または濃化）を有するトレーニングデータのセットを利用することによって、トレーニングシステムがパターン認識システムのパターン不変性を増すことができる。
【００２９】
本発明の他の態様は、パターン認識システムをトレーニングするための方法、パターン認識のトレーニングを容易にするシステムのためのコンピュータ実行可能コンポーネントを有するコンピュータ可読媒体、および２つ以上のコンピュータプロセスの間で伝送されるように適合されたデータパケットを提供し、このデータパケットは、少なくとも部分的には重畳型ニューラルネットワークに基づく、パターン認識システムのためのトレーニング可能パラメータのセットを含むデータフィールドを含み、このトレーニング可能パラメータのセットは、少なくとも部分的には勾配降下アルゴリズムに基づいて、計算されたエントロピー誤差を利用して更新される。
【００３０】
前述および関係する目的の実施のために、本発明のある例示的態様を本明細書で、以下の記載および添付の図面に関連して記載する。しかし、これらの態様は、本発明の原理を実施することができる様々な方法のうち少数を示し、本発明はこのようなすべての態様およびそれらの同等物を含むように意図される。本発明の他の利点および新しい特徴は、以下の発明の詳細な説明が図面と共に考察されるとき、明らかになるであろう。
【００３１】
【発明の実施の形態】
このとき本発明を、図面を参照して記載し、図面では全体で類似の参照番号を使用して類似の要素を指す。以下の記載では、説明のために多数の特定の詳細を述べ、これは本発明の完全な理解を提供するためである。しかし、本発明をこれらの特定の詳細なしに実施できることは明らかになるであろう。他の場合では、本発明の記載を容易にするために、周知の構造およびデバイスをブロック図の形式において示す。
【００３２】
本願で使用するように、「コンピュータコンポーネント」という用語は、コンピュータ関連のエンティティである、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれも指すように意図される。たとえば、コンピュータコンポーネントは、それだけに限定されるものではないが、プロセッサ上で実行中のプロセス、プロセッサ、オブジェクト、実行可能物、実行のスレッド、プログラムおよび／またはコンピュータにすることができる。例示として、サーバ上で実行中のアプリケーションおよびサーバの両方をコンピュータコンポーネントにすることができる。１つまたは複数のコンピュータコンポーネントが、プロセスおよび／または実行のスレッド内に存在することができ、コンポーネントを１つのコンピュータ上に配置することができ、かつ／または２つ以上のコンピュータの間で分散させることができる。
【００３３】
図１を参照して、本発明の一態様によるパターン認識システム１００を例示する。パターン認識システム１００は、特徴抽出層１１０および分類層１２０を含む。パターン認識システム１００はビットマップ入力パターン１３０（たとえば、２次元）を受信し、最初の出力確率１４０１ないしＭ番目の出力確率１４０Ｍを提供し、Ｍは１より大きいか、あるいは１に等しい整数である。最初の出力確率１４０１ないしＭ番目の出力確率１４０Ｍを総称して、出力確率１４０と称することができる。「ビットマップ入力パターン」はＳ次元の非時間的入力パターンを指す。
【００３４】
パターン認識システム１００を利用して、手書きパターン認識および／または文字認識を実行することができる。たとえば、パターンは、スキャンされたドキュメントから生ずる可能性があり、かつ／または、ペンまたはマウスの軌道の２次元ビットマップ投影にすることができる。パターン認識システム１００は重畳型ニューラルネットワーク（ＣＮＮ）アーキテクチャに基づき、これはたとえば、特徴抽出層１１０および分類層１２０を含む。パターン認識システム１００は、入力されたトレーニングデータから学習し、言語特有の知識、時間的ストローク入力、ペン方向情報および／またはストローク順序を必要としない。パターン認識システム１００は、ビットマップイメージ入力パターン１３０（たとえば、ダウンサンプリングされた２９×２９ピクセルのイメージ）を受信する。パターン認識システム１００は、評価されたビットマップイメージパターン（クラス）（たとえば、２次元）についての出力確率１４０を提供する。出力確率１４０は、たとえば、言語分類器、言語モデルおよび／またはセグメンテーションモデルによって利用することができる。
【００３５】
パターン認識システム１００を、クロスエントロピー誤差最小化を利用してトレーニングすることができる。たとえば、パターン認識システム１００を、クロスエントロピー誤差を最小化する確率勾配降下を使用してトレーニングすることができる。
【００３６】
特徴抽出層１１０は特徴マップの重畳層を含むことができる。「重畳層」は当技術分野で周知であり、一般にニューラルネットワークのコンポーネントを指し、この中で、グループ（たとえば、特徴マップ）が異なる場所で実質的に同じセットの係数または重みを使用して、受信された入力を修正するが、様々なグループ（たとえば、特徴マップ）が異なるセットの係数を使用する。よって、グループ（たとえば、特徴マップ）は異なる特徴を、受信された入力から抽出することができる。特徴抽出層１１０の出力は分類層１２０に接続される。
【００３７】
分類層１２０は、隠れユニットの完全接続層を含むことができる。隠れユニットの量は、たとえば、学習されるタスクの複雑さ、トレーニング例の量および／または質によって決まる可能性がある。この種類のニューラルネットワークは当技術分野で周知であり、よって簡潔にするために完全な記載を省略する。分類層１２０は出力確率１４０（たとえば、０．０から１．０の範囲のもの）を提供する。
【００３８】
たとえば、１０個の数字（０ないし９）を含む記号セットでは、分類層１２０が１０個の出力確率１４０を０．０から１．０の範囲で提供することができる。一実施例では、出力確率１４０の和を１．０に等しくなるようにすることが可能であるが、必ずしも望ましくはない。別の実施例では、出力確率１４０の和は１．０に等しくなく、各出力ユニットが独立して対応するクラスの確率を計算する。そのようにする利点は、ある場合、実質的にすべての確率がすべてのクラスについて非常に小さく、これが、入力が有効な文字ではないこと、または信頼が非常に低いことを示すことである。加えて、和を１．０にすることにより、勾配の計算が変わる。
【００３９】
図１はパターン認識システム１００のためのコンポーネントを例示するブロック図であるが、特徴抽出層１１０および／または分類層１２０を１つまたは複数のコンピュータコンポーネントとして、この用語が本明細書で定義されるように実施できることを理解されたい。したがって、本発明によれば、コンピュータ実行可能コンポーネントがパターン認識システム１００を実施するように動作可能であり、特徴抽出層１１０および／または分類層１２０をコンピュータ可読媒体上に格納することができ、これには、それだけに限定されるものではないが、ＡＳＩＣ（特定用途向け集積回路）、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタルビデオディスク）、ＲＯＭ（読み取り専用メモリ）、フロッピー（登録商標）ディスク、ハードディスク、ＥＥＰＲＯＭ（電気的消去可能プログラマブル読み取り専用メモリ）およびメモリスティックが含まれることを理解されたい。
【００４０】
次に図２の、本発明の一態様によるパターン認識システム２００を見る。パターン認識システム２００は、重畳層２１０および完全接続層２２０を含む。パターン認識システム２００はビットマップ入力パターン２３０（たとえば、２次元）を受信し、最初の出力確率２６０１ないしＮ番目の出力確率２６０Ｎを提供し、Ｎは１より大きいか、あるいは１に等しい整数である。最初の出力確率２６０１ないしＮ番目の出力確率２６０Ｎを総称して、出力確率２６０と称することができる。パターン認識システム２００を、クロスエントロピー誤差最小化を利用して（たとえば、クロスエントロピー誤差を最小化する確率勾配降下を使用して）トレーニングすることができる。
【００４１】
重畳層２１０は複数の特徴マップ２５０を含む。「重畳層」は当技術分野で周知であり、一般にニューラルネットワークのコンポーネントを指し、この中で、特徴マップ２５０が同じセットのトレーニング可能パラメータ（たとえば、係数または重み）を使用して、受信された入力を修正するが、様々な特徴マップ２５０が異なるセットのトレーニング可能パラメータ（たとえば、係数または重み）を使用する。特徴マップ２５０は入力パターンの少なくとも一部を受信する。よって、様々な特徴マップ２５０が異なる特徴を、受信された入力から抽出することができる。重畳層２１０の出力は完全接続層２２０に接続される。
【００４２】
完全接続層２２０は重畳層２１０からの出力を受信し、重畳層２１０によって抽出された特徴を分類する。完全接続層２２０は複数の出力確率２６０を提供し、この出力確率は、クラスに関連付けられた確率を含む。完全接続層２２０は複数の隠れユニット２４０を含む。完全接続層２１０はそれ自体のトレーニング可能パラメータのセットを有することができる。
【００４３】
一実施例では、パターン認識システム２００が、クロスエントロピー誤差最小化を利用してトレーニングされ、これは少なくとも部分的には以下の式に基づく。
【００４４】
【数６】
0004142463.tif 000004
【００４５】
ただし、Ｅは最小化されるエネルギーであり、ｎはパターンを索引付けし、ｔは目標値であり、ｙｎｋはパターンｎについてのユニットｋにおけるパターン認識システム出力であり、ｋはクラスを索引付けする（たとえば、１０個のクラスを有する手書き数字では、ｃ＝１０）。この誤差式は時として当技術分野ではカルバックライブラー情報量（またはＫＬ距離）と呼ばれる。一実施例では、このクロスエントロピー誤差（Ｅ）が第１の定数によって乗算される。もう１つの実施例では、第２の定数がＥに加算される。さらに、パターン認識システム２００を、確率勾配降下を使用してトレーニングすることができる。
【００４６】
パターン認識システム２００を、文字アルファベットまたはアルファベットのサブセットを認識するようにトレーニングすることができる。たとえば、入力がタブレットから生じた場合、パターン認識システムを、ペンの１または２ストロークにより生成される実質的にすべての文字について利用することができる。中国語または日本語の文字の場合、これは全体のアルファベットの５００個未満のクラスのサブセットに対応する。
【００４７】
重畳層２１０および／または完全接続層２２０を１つまたは複数のコンピュータコンポーネントとして、この用語が本明細書で定義されるように実施することができる。
【００４８】
このとき図３の、本発明の一態様によるパターン認識システム３００を参照する。パターン認識システム３００は、第１の重畳層３１０、第２の重畳層３２０、第１の完全接続層３３０および第２の完全接続層３４０を含む。
【００４９】
本発明によれば、パターン認識システム３００は、１つ、２つまたはそれより多い重畳層および／または１つ、２つまたはそれより多い完全接続層を使用できることを理解されたい。
【００５０】
簡単に図４を見ると、本発明の一態様による重畳およびサブサンプリングの重み共有特性の例示的構成４００が例示される。構成４００は、入力４１０、第１の層４２０における１つの特徴マップ、および第２の層４３０における１つの特徴マップを含む。構成４００はさらに、例示のため、問題を１次元に制限する。層内で同じ数を有する各接続は、同じ値を有するようにさせることができる。重みは層の全体で共有されない。２のサブサンプリングを第１の重畳層４２０上に例示する。見るとわかるように、位置の半分のみが計算され、１つおきのユニットは計算されない。別法として、重畳をあらゆる位置で計算し、平均層によって重畳に追従することも可能であり、平均層の機能は分解能を下げることである。分解能を下げる目的は、第２の層がより広いエリア上で特徴を統合できるようにすることである。他の利点は、計算の減少、メモリフットプリントの減少、学習時間の短縮、および汎化の改善である。サブサンプリングを、ＸおよびＹ方向で実行することができる。サブサンプリングはまた、外観上不可解な数２９、１３および４も担い、これは、図３のパターン認識システム３００において境界を位置合わせする結果として生じる。
【００５１】
次に図５を参照して、本発明の一態様による特徴マップの例示的構成５００を例示する。第１の重畳層５２０は５個の特徴を有する。しかし、第２の層５３０は多数の特徴を有することができるが、説明のため、２つのみを例示する。第１の層５２０の各モジュールが第２の層５３０における各モジュールに接続されるが、明瞭にするため、このような接続をただ１つのみ示す。このようなモジュール接続の間に重み共有はない。各モジュール接続は、図４に示すタイプの重畳である。
【００５２】
図６に例示するように、パターン認識システム３００はオプショナルで前処理コンポーネント３７０を含むことができる。前処理コンポーネント３７０はトレーニング可能でなくてもよい。たとえば、前処理コンポーネント３７０は単にダウンサンプリング機能からなることができる。別法として、前処理コンポーネント３７０を非常に複雑にすることができ、たとえば、これがペン／マウスの入力を、パターン認識システム３００に適した２次元ビットマップに変換することができる。
【００５３】
図３に戻ると、パターン認識システム３００を利用して、手書きパターン認識（たとえば、言語独立）および／またはスキャンされたドキュメントからの文字認識を実行することができる。パターン認識システム３００を、文字アルファベットまたはアルファベットのサブセットを認識するようにトレーニングすることができる。たとえば、入力がタブレットから生じた場合、パターン認識システムを、ペンの１または２ストロークにより生成される実質的にすべての文字について利用することができる。中国語または日本語の文字の場合、これは全体のアルファベットの５００個未満のクラスのサブセットに対応する。
【００５４】
パターン認識システム３００はＣＮＮアーキテクチャに基づき、入力されたトレーニングデータから学習し、言語特有の知識、時間的ストローク入力、ペン方向情報および／またはストローク順序を必要としない。パターン認識システム３００は、ビットマップイメージ入力パターン３５０（たとえば、２次元で非時間的）を受信する。一実施例では、ビットマップイメージ入力パターン３５０が、２３２×２３２の入力パターンから、たとえばオプショナルの前処理コンポーネント３７０によってダウンサンプルされた２９×２９ビットピクセルのイメージを含む。ビットマップイメージ入力パターン３５０は、２次元バイナリイメージ（たとえば、１２８×１２８）上に投影された、ダウンサンプルされたタブレット入力（たとえば、ペンおよび／またはスタイラスの軌道）に基づくことができる。このイメージは、Ｍｉｃｒｏｓｏｆｔ  ＧＤＩ＋グラフィックライブラリサブルーチンを使用することによって得ることができ、これは場所（Ｘ１，Ｙ１）から（Ｘ２，Ｙ２）までのバイナリのピクセルを所与の太さの線として設定するものである。イメージがダウンサンプルされるとき、これがグレーレベルのイメージとなる。
【００５５】
パターン認識システム３００は、最初の出力確率３６０１ないしＰ番目の出力確率３６０Ｐを提供し、Ｐは１より大きいか、あるいは１に等しい整数である。最初の出力確率３６０１ないしＰ番目の出力確率３６０Ｐを総称して、出力確率３６０と称することができる。出力確率３６０を、クラス（たとえば、パターン認識システム３００によって認識された目標パターン）に関連付けられた確率にすることができる。出力確率３６０は、たとえば、言語分類器、言語モデルおよび／またはセグメンテーションモデルによって利用することができる。
【００５６】
第１の重畳層３１０および第２の重畳層３２０が、ビットマップイメージ入力パターン３５０の特徴を抽出する。第１の完全接続層３３０および第２の完全接続層３４０が分類器として動作する。
【００５７】
第１の重畳層３１０は複数の第１の特徴マップを含み、これが入力パターンの少なくとも一部を受信する。第１の特徴マップは第１のトレーニング可能パラメータを含み、第１の特徴に関連付けられた出力を提供する。第１の特徴マップは、トレーニング可能パラメータ（たとえば、係数または重み）の小さいカーネル（たとえば、５×５）を含み、これが入力を乗算かつ合計し、様々な位置についての結果を得る。実際には、重畳を、「特徴」のイメージをその入力イメージから抽出するトレーニング可能フィルタと見なすことができる。第１の特徴マップのための第１のトレーニング可能パラメータは、入力イメージにおける異なる空間場所について実質的に等しくすることができる（たとえば、特徴マップ全体が各場所について変換されるとき）。
【００５８】
一実施例では、第１の重畳層３１０が、場所を１つおきにスキップしながら、入力の５個の重畳を計算する。このサブサンプリングにより空間分解能が減り、したがって計算が減るだけでなく、ネットワークにいくつかの空間不変性を学習させる。第１の重畳層３１０によって抽出された特徴は大抵はエッジおよびライン交差検出であり、ＸおよびＹ方向における分解能の半分を入力として有する（たとえば、図４および５に関する記載を参照）。もう１つの実施例では、第１の重畳層３１０が５個の第１の特徴マップを含む（たとえば、１５６個の入力を受信する第１の特徴マップ）。
【００５９】
第２の重畳層３２０は第１の特徴マップの出力を受信する。第２の重畳層３２０は複数の第２の特徴マップを含み、第２の特徴マップは、第１の特徴マップの出力の少なくとも一部を受信する。第２の特徴マップは第２のトレーニング可能パラメータを含み、第２の特徴に関連付けられた出力を提供する。第２の特徴マップは同様に、トレーニング可能パラメータ（たとえば、係数または重み）の小さいカーネル（たとえば、５×５）を含み、これが入力を乗算かつ合計し、様々な位置についての結果を得る。再度、実際には、重畳を、「特徴」のイメージをその入力イメージから抽出するトレーニング可能フィルタと見なすことができる。
【００６０】
一実施例では、第２の重畳層３２０は第１の重畳層３１０に類似しており、ただし５０個の特徴が第１の重畳層３１０の結果から抽出される。再度、サブサンプリングにより、ネットワークに位置不変性を学習させ、計算が減る。たとえば、第２の重畳層３２０が、曲率、ループ、ストロークエンドおよび／またはストローク交差などの特徴を抽出することができる。もう１つの実施例では、第２の重畳層３２０が、５０個の第２の特徴マップを含む（たとえば、２５個の入力を受信する第２の特徴マップ）。
【００６１】
第１の完全接続層３３０および第２の完全接続層３４０が完全に接続され、第１の重畳層３１０および第２の重畳層３２０によって計算された特徴のための分類器を実施する。第１の完全接続層３３０はトレーニング可能パラメータを有することができる。
【００６２】
第１の完全接続層３３０および第２の完全接続層３４０は、複数の隠れユニットを含む。２つの完全接続層の間の隠れユニットの数が、パターン認識システム３００の容量をコントロールする。
【００６３】
一実施例では、パターン認識システム３００が、英語の数字（０ないし９）を認識するために使用され、第１の完全接続層３３０が約１００個の隠れユニットを含む。もう１つの実施例では、パターン認識システム３００が、１および２ストロークの日本語文字を認識するために使用され、第１の完全接続層３３０が約２００個の隠れユニットを含む。
【００６４】
第２の完全接続層は出力確率３６０を提供する。出力確率３６０を、クラス（たとえば、パターン認識システム３００によって認識された目標パターン）に関連付けられた確率にすることができる。第２の完全接続層３４０は、トレーニング可能パラメータを有することができる。
【００６５】
一実施例では、パターン認識システム３００が、英語の数字を認識するために使用され、第２の完全接続層３４０が１０個の出力確率３６０を提供する。もう１つの実施例では、パターン認識システム３００が、１および２ストロークの日本語文字を認識するために使用され、第２の完全接続層３４０が約２５０個の出力確率３６０を提供する。
【００６６】
パターン認識システム３００を、クロスエントロピー誤差最小化を利用してトレーニングすることができる。クロスエントロピー誤差最小化は、少なくとも部分的には、上で述べた式（１）（たとえば、カルバックライブラー情報量）に基づくことができる。一実施例では、このクロスエントロピー誤差（Ｅ）が第１の定数によって乗算される。もう１つの実施例では、第２の定数がＥに加算される。
【００６７】
たとえば、パターン認識システム３００を、クロスエントロピー誤差の程度を最小化する確率勾配降下を使用してトレーニングして、ネットワークにクラスについての確率を出力するように教えるようにすることができる。
【００６８】
一実施例では、パターン認識システム３００が、２次元ビットマップイメージ入力パターン３５０の５個の重畳を、場所を１つおきにスキップしながら計算する第１の重畳層３１０を有する（たとえば、図４および５に関する記載を参照）。したがって、第１の重畳層３１０は５個の１３×１３の特徴を抽出する。第２の重畳層３２０は同様に５０個の５×５の特徴を、第１の重畳層３１０の結果から抽出する。第１の完全接続層３３０および第２の完全接続層３４０が１００個の隠れユニットを含み、第１の重畳層３１０および第２の重畳層３２０によって計算された特徴のための分類器を実施する。
【００６９】
この実施例のパターン認識システム３００は、クロスエントロピー誤差の程度を最小化する確率勾配降下を使用してトレーニングされて、ネットワークに手書きの数字（０−９）のクラスについての確率を出力するように教えるようにされた。この実施例のパターン認識システム３００は、ＭＮＩＳＴ標準の手書き数字データベースを利用してベンチマークされた。ＭＮＩＳＴデータベースは、トレーニング用の６０，０００個の手書き数字、およびテスト用の１０，０００個の手書き数字からなる。この実施例のパターン認識システム３００を既存のシステムに対して、誤りの割合において比較した結果を以下にリストする。
【００７０】
【表１】
0004142463.tif 000005
【００７１】
したがって、この実施例のパターン認識システム３００は、この標準データベース上で最良のパフォーマンスを達成した。
【００７２】
加えて、パターン認識システム３００は、タブレット時間的情報および／またはストローク順序に依拠しない。入力されたキーストロークはビットマップ上に投影され、これが次いでパターン認識システム３００に、２次元イメージのビットマップイメージ入力パターン３５０として送られる。さらに、パターン認識システム３００はデータの学習に基づき、したがって、多数の従来のシステムのように、手動で作られた言語特有の知識を頼りにしない。パターン認識システム３００を、１ストロークのアジア文字、２ストロークのアジア文字、１ストロークの日本語文字、２ストロークの日本語文字および／または複数のＡＳＣＩＩ文字を認識するようにトレーニングすることができる。
【００７３】
簡単に図７を見ると、本発明の一態様によるトレーニング可能パラメータを使用するパターン認識システム７００が例示される。パターン認識システム７００は入力パターンを受信し、クラス確率を出力として、少なくとも部分的にはパターンおよびトレーニング可能パラメータに基づいて提供する。
【００７４】
次に図８を参照して、本発明の一態様によるバックプロパゲーション学習システム８００を例示する。バックプロパゲーション学習システム８００は、バックプロパゲーション学習コンポーネント８１０を含み、これはトレーニングデータ８２０（たとえば、クラス確率とトレーニングクラス情報の間のクロスエントロピー誤差に基づく）を受信し、修正されたトレーニング可能パラメータ８３０を（たとえば、パターン認識システムに）提供する。
【００７５】
次に図９を参照して、本発明の一態様によるパターン認識システムのためのトレーニングシステム９００を例示する。トレーニングシステム９００は、パターン認識システム９１０、クロスエントロピー誤差計算器９２０、バックプロパゲーション勾配降下コンポーネント９３０およびトレーニング可能パラメータ更新コンポーネント９４０を含む。
【００７６】
パターン認識システム９１０がパターン入力（たとえば、トレーニングパターン）を受信し、複数のクラス確率出力を提供する。パターン認識システム９１０は、以前に述べたＣＮＮアーキテクチャを利用することができる。
【００７７】
クロスエントロピー誤差計算器９２０は、パターン認識システム９１０からの複数のクラス確率出力、およびトレーニングクラス情報（たとえば、目標クラス）を受信する。クロスエントロピー誤差計算器９２０はクロスエントロピー誤差を、少なくとも部分的には複数のクラス確率出力およびトレーニングクラス情報（たとえば、目標クラス）に基づいて計算する。たとえば、クロスエントロピー誤差計算器９２０は、上で設定された式（１）を、クロスエントロピー誤差（カルバックライブラー情報量）の計算において利用することができる。一実施例では、計算されたクロスエントロピー誤差が第１の定数によって乗算される。もう１つの実施例では、第２の定数が、計算されたクロスエントロピー誤差に加算される。クロスエントロピー誤差計算器９２０はこのように、トレーニングクラス情報（たとえば、目標クラス）と、パターン認識システム９１０の複数のクラス確率出力の間の不一致を計算することができる。
【００７８】
バックプロパゲーション勾配降下コンポーネント９３０は、確率勾配降下アルゴリズム（たとえば、オンライン更新）を利用してトレーニングパラメータを更新することができ、これには雑音のある、あるいは概算されたバージョンの平均勾配を使用する。たとえば、バックプロパゲーション勾配降下コンポーネント９３０は、トレーニングパラメータの更新において以下の式を利用することができる。
【００７９】
【数７】
0004142463.tif 000006
【００８０】
ただし、Ｗはトレーニング可能パラメータのセットであり、εはスカラ定数である。
【００８１】
トレーニング可能パラメータ更新コンポーネント９４０は、パターン認識システム９１０のトレーニングパラメータを、少なくとも部分的には、バックプロパゲーション勾配降下コンポーネント９３０から受信された、更新されたトレーニングパラメータに関する情報に基づいて更新する。
【００８２】
クラス歪み（たとえば、ｘ変換、ｙ変換、回転、スケーリング、並列の双曲変換、対角の双曲変換および／または濃化）を有するトレーニングデータのセットを利用することによって、トレーニングシステム９００がパターン認識システム９１０のパターン不変性を増すことができる。
【００８３】
パターン認識システム９１０、クロスエントロピー誤差計算器９２０、バックプロパゲーション勾配降下コンポーネント９３０および／またはトレーニング可能パラメータ更新コンポーネント９４０を、１つまたは複数のコンピュータコンポーネントとして、この用語が本明細書で定義されるように実施することができる。
【００８４】
上で図示かつ記載した例示的システムに鑑みて、本発明により実施することができる方法は、図１０の流れ図を参照してよりよく理解されるであろう。説明を簡単にするために、この方法を一連のブロックとして図示かつ記載するが、本発明はブロックの順序によって限定されず、これは本発明により、いくつかのブロックが、本明細書に図示かつ記載したものとは異なる順序で、かつ／または他のブロックと同時に起こることができるからであることを理解されたい。さらに、例示したすべてのブロックが、本発明による方法を実施するために必要である可能性はない。
【００８５】
本発明を一般に、１つまたは複数のコンポーネントによって実行された、プログラムモジュールなどのコンピュータ実行可能命令に関連して記載することができる。一般に、プログラムモジュールには、ルーチン、プログラム、オブジェクト、データ構造など、特定のタスクを実行するか、あるいは特定の抽象データ型を実施するものが含まれる。通常、プログラムモジュールの機能性を、様々な実施形態において望ましいように結合または分散させることができる。
【００８６】
図１０を見ると、本発明の一態様によるパターン認識システムをトレーニングするための方法１０００が例示される。１０１０で、パターン認識がトレーニングパターン上で、パターン認識システムを利用して、少なくとも部分的には、トレーニング可能パラメータのセットを有する重畳型ニューラルネットワークに基づいて実行される。１０２０で、複数の出力確率がトレーニングパターンに基づいて提供される。１０３０で、パターン認識およびトレーニングパターンに関連付けられた情報によって生成された出力確率のクロスエントロピー誤差が計算される。１０４０で、パターン認識のために利用されたトレーニング可能パラメータのセットが、少なくとも部分的には勾配降下アルゴリズムに基づいて、計算されたクロスエントロピー誤差を利用して更新される。
【００８７】
本発明のシステムおよび／または方法をパターン認識システムにおいて利用できることを理解されたい。さらに、本発明のシステムおよび／または方法を、パターン認識アプリケーションの莫大なアレイにおいて使用することができ、これには、それだけに限定されるものではないが、手書き認識システム、ドキュメントスキャナ、光学式文字認識システム、携帯情報端末（ＰＤＡ）および／またはタブレットパーソナルコンポーネントシステムが含まれることは当業者には理解されよう。
【００８８】
本発明の様々な態様のための追加の状況を提供するために、図１１および以下の考察は、本発明の様々な態様を実施することができる、適切なオペレーティング環境１１１０の簡潔で一般的な記載を例示するように意図される。本発明を一般に、１つまたは複数のコンピュータまたは他のデバイスによって実行された、プログラムモジュールなどのコンピュータ実行可能命令に関連して記載するが、本発明を、他のプログラムモジュールとの組合せにおいて、かつ／またはハードウェアおよびソフトウェアの組合せとして実施することもできることは当業者には理解されよう。しかし、一般にプログラムモジュールには、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造など、特定のタスクを実行するか、あるいは特定のデータ型を実施するものが含まれる。オペレーティング環境１１１０は適切なオペレーティング環境の一実施例でしかなく、本発明の使用または機能性の範囲に関するいかなる限定も示唆するように意図されるものではない。本発明による使用に適切である可能性のある他の周知のコンピュータシステム、環境および／または構成には、それだけに限定されるものではないが、パーソナルコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラマブルなコンシューマエレクトロニクス、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上のシステムまたはデバイスを含む分散コンピューティング環境などが含まれる。
【００８９】
図１１を参照すると、本発明の様々な態様を実施するための例示的環境１１１０がコンピュータ１１１２を含む。コンピュータ１１１２は、処理装置１１１４、システムメモリ１１１６およびシステムバス１１１８を含む。システムバス１１１８はシステムコンポーネントを結合し、これには、それだけに限定されるものではないが、システムメモリ１１１６を処理装置１１１４に結合することが含まれる。処理装置１１１４を、様々な使用可能なプロセッサのいずれかにすることができる。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャも、処理装置１１１４として使用することができる。
【００９０】
システムバス１１１８は、いくつかのタイプのバス構造のいずれかにすることができ、これには、メモリバスまたはメモリコントローラ、周辺バスまたは外部バス、および／またはローカルバスが含まれ、これは様々な使用可能なバスアーキテクチャを使用し、これには、それだけに限定されるものではないが、業界標準アーキテクチャ（ＩＳＡ）、マイクロチャネルアーキテクチャ（ＭＳＡ）、拡張ＩＳＡ（ＥＩＳＡ）、Ｉｎｔｅｌｌｉｇｅｎｔ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ（ＩＤＥ）、ＶＥＳＡローカルバス（ＶＬＢ）、周辺装置相互接続（ＰＣＩ）、ユニバーサルシリアルバス（ＵＳＢ）、アドバンスドグラフィックスポート（ＡＧＰ）、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎバス（ＰＣＭＣＩＡ）およびＳｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ（ＳＣＳＩ）が含まれる。
【００９１】
システムメモリ１１１６は揮発性メモリ１１２０および不揮発性メモリ１１２２を含む。基本入出力システム（ＢＩＯＳ）は、起動中など、コンピュータ１１１２内の要素の間で情報を転送するための基本ルーチンを含み、不揮発性メモリ１１２２に格納される。例示として、限定としてではなく、不揮発性メモリ１１２２には、読み取り専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）またはフラッシュメモリが含まれる可能性がある。揮発性メモリ１１２０はランダムアクセスメモリ（ＲＡＭ）を含み、これが外部キャッシュメモリとして動作する。例示として、限定としてではなく、ＲＡＭは多数の形式において使用可能であり、これはシンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、シンクリンクＤＲＡＭ（ＳＬＤＲＡＭ）およびダイレクトラムバスＲＡＭ（ＤＲＲＡＭ）などである。
【００９２】
コンピュータ１１１２はまた、取外し可能／取外し不能、揮発性／不揮発性のコンピュータ記憶媒体も含む。図１１は、たとえばディスク記憶装置１１２４を例示する。ディスク記憶装置１１２４には、それだけに限定されるものではないが、磁気ディスクドライブ、フロッピー（登録商標）ディスクドライブ、テープドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュメモリカードまたはメモリスティックのようなデバイスが含まれる。加えて、ディスク記憶装置１１２４は記憶媒体を別々に、あるいは他の記憶媒体と組み合わせて含むことができ、これには、それだけに限定されるものではないが、コンパクトディスクＲＯＭデバイス（ＣＤ−ＲＯＭ）、ＣＤ記録可能ドライブ（ＣＤ−Ｒドライブ）、ＣＤ書き換え可能ドライブ（ＣＤ−ＲＷドライブ）またはデジタル多用途ディスクＲＯＭドライブ（ＤＶＤ−ＲＯＭ）など、光ディスクドライブが含まれる。ディスク記憶装置１１２４をシステムバス１１１８に容易に接続するため、通常は、インターフェイス１１２６などの取外し可能または取外し不能インターフェイスが使用される。
【００９３】
図１１が、ユーザと、適切なオペレーティング環境１１１０に記載した基本コンピュータリソースの間の媒介物として動作するソフトウェアを記載することを理解されたい。このようなソフトウェアにはオペレーティングシステム１１２８が含まれる。オペレーティングシステム１１２８は、ディスク記憶装置１１２４上に格納することができ、コンピュータシステム１１１２のリソースをコントロールかつ割り振るように動作する。システムアプリケーション１１３０は、システムメモリ１１１６内またはディスク記憶装置１１２４上に格納されたプログラムモジュール１１３２およびプログラムデータ１１３４を通じて、オペレーティングシステム１１２８によるリソースの管理を利用する。本発明を、様々なオペレーティングシステム、またはオペレーティングシステムの組合せにより実施できることを理解されたい。
【００９４】
ユーザがコマンドまたは情報をコンピュータ１１１２に、入力デバイス１１３６を通じて入力する。入力デバイス１１３６には、それだけに限定されるものではないが、マウス、トラックボール、スタイラス、タッチパッド、キーボード、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、ＴＶチューナーカード、デジタルカメラ、デジタルビデオカメラ、ｗｅｂカメラなどのポインティングデバイスが含まれる。これらおよび他の入力デバイスが処理装置１１１４に、インターフェイスポート１１３８を介してシステムバス１１１８を通じて接続する。インターフェイスポート１１３８には、たとえば、シリアルポート、パラレルポート、ゲームポートおよびユニバーサルシリアルバス（ＵＳＢ）が含まれる。出力デバイス１１４０は、入力デバイス１１３６と同じタイプのポートのいくつかを使用する。したがって、たとえば、ＵＳＢポートを使用して入力をコンピュータ１１１２に提供し、かつ情報をコンピュータ１１１２から出力デバイス１１４０に出力することができる。出力アダプタ１１４２が設けられて、他の出力デバイス１１４０の中に、特殊なアダプタを必要とするモニタ、スピーカおよびプリンタのようないくつかの出力デバイス１１４０があることを例示する。出力アダプタ１１４２には、例示として、限定としてではなく、出力デバイス１１４０とシステムバス１１１８の間の接続の手段を提供するビデオおよびサウンドカードが含まれる。リモートコンピュータ１１４４など、他のデバイスおよび／またはデバイスのシステムが入力および出力機能を提供することに留意されたい。
【００９５】
コンピュータ１１１２は、ネットワーク化された環境において、リモートコンピュータ１１４４など、１つまたは複数のリモートコンピュータへの論理接続を使用して動作することができる。リモートコンピュータ１１４４は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサベースの機器、ピアデバイスまたは他の共通ネットワークノードなどにすることができ、通常はコンピュータ１１１２に関して記載した要素の多数またはすべてを含む。簡潔にするため、メモリ記憶装置１１４６のみをリモートコンピュータ１１４４と共に例示する。リモートコンピュータ１１４４が論理的にコンピュータ１１１２に、ネットワークインターフェイス１１４８を通じて接続され、次いで通信接続１１５０を介して物理的に接続される。ネットワークインターフェイス１１４８は、ローカルエリアネットワーク（ＬＡＮ）および広域ネットワーク（ＷＡＮ）など、通信ネットワークを包含する。ＬＡＮ技術には、ファイバ分散データインターフェイス（ＦＤＤＩ）、銅分散データインターフェイス（ＣＤＤＩ）、イーサネット（登録商標）／ＩＥＥＥ  １１０２．３、トークンリング／ＩＥＥＥ  １１０２．５などが含まれる。ＷＡＮ技術には、それだけに限定されるものではないが、２地点間リンク、サービス総合デジタル網（ＩＳＤＮ）およびそれらの変形形態のような回線交換網、パケット交換網およびデジタル加入者回線（ＤＳＬ）が含まれる。
【００９６】
通信接続１１５０は、ネットワークインターフェイス１１４８をバス１１１８に接続するために使用されるハードウェア／ソフトウェアを指す。通信接続１１５０を例示的に明瞭にするためにコンピュータ１１１２の内部に示すが、これをコンピュータ１１１２の外部にすることもできる。ネットワークインターフェイス１１４８への接続のために必要なハードウェア／ソフトウェアには、例示のためにのみ、通常の電話のグレードのモデムを含むモデム、ケーブルモデムおよびＤＳＬモデム、ＩＳＤＮアダプタおよびイーサネット（登録商標）カードなど、内部および外部の技術が含まれる。
【００９７】
上で記載したものには本発明の実施例が含まれる。本発明を記載するための、考えられるあらゆる組合せのコンポーネントまたは方法を記載することが可能ではないことは言うまでもないが、本発明のさらに多数の組合せおよび入れ替えが可能であることは当業者には理解されよう。したがって、本発明は、付属の特許請求の範囲の精神および範囲内に入るこのような変更、修正および変形形態のすべてを包含するように意図される。さらに、「含む（ｉｎｃｌｕｄｅｓ）」という用語が詳細な説明または特許請求の範囲において使用される範囲まで、このような用語は、「含む（ｃｏｍｐｒｉｓｉｎｇ）」という用語に類似の方法で、「含む（ｃｏｍｐｒｉｓｉｎｇ）」が従来の言葉として特許請求の範囲において使用されるときに解釈されるように、包括的であるように意図される。
【図面の簡単な説明】
【図１】本発明の一態様によるパターン認識システムのブロック図である。
【図２】本発明の一態様によるパターン認識システムのブロック図である。
【図３】本発明の一態様によるパターン認識システムのブロック図である。
【図４】本発明の一態様による、重畳およびサブサンプリングの重み共有特性の例示的構成のブロック図である。
【図５】本発明の一態様による特徴マップの例示的構成のブロック図である。
【図６】本発明の一態様によるパターン認識システムのブロック図である。
【図７】本発明の一態様によるトレーニング可能パラメータを使用するパターン認識システムのブロック図である。
【図８】本発明の一態様によるバックプロパゲーション学習システムのブロック図である。
【図９】本発明の一態様によるパターン認識システムのためのトレーニングシステムのブロック図である。
【図１０】本発明の一態様によるパターン認識システムをトレーニングするための方法を例示する流れ図である。
【図１１】本発明が機能することができる一実施例のオペレーティング環境を例示する図である。
【符号の説明】
１００、２００、３００、７００、９１０  パターン認識システム
１３０、２３０  ビットマップ入力パターン
１４０、２６０、３６０  出力確率
２１０  重畳層
２２０  完全接続層
２４０  隠れユニット
２５０  特徴マップ
３１０、４２０、５２０  第１の重畳層
３２０、４３０、５３０  第２の重畳層
３３０  第１の完全接続層
３４０  第２の完全接続層
３５０  ビットマップイメージ入力パターン
８３０  トレーニング可能パラメータ
【図１】
0004142463.tif 000014
【図２】
0004142463.tif 000015
【図３】
0004142463.tif 000016
【図４】
0004142463.tif 000017
【図５】
0004142463.tif 000018
【図６】
0004142463.tif 000019
【図７】
0004142463.tif 000020
【図８】
0004142463.tif 000021
【図９】
0004142463.tif 000022
【図１０】
0004142463.tif 000023
【図１１】
0004142463.tif 000024