(57)【要約】  文書の２次元的表現を利用して、文書の認識を促進する階層構造を抽出する。視覚構造が、統計解析アルゴリズムの２次元の適応を利用して文法的に解析される。このことにより、レイアウト構造（たとえば、段組、著者、タイトル、脚注など）およびその同類の認識が可能になるので、文書の構造コンポーネントを正確に解釈できる。文書のレイアウト認識を促進するために、追加的な技術を利用することができる。たとえば、機械学習を使用した文法的な解析技術、イメージ表現に基づく解析スコアリング、ブースティング技術、および／または「高速フィーチャ（ｆａｓｔ  ｆｅａｔｕｒｅｓ）」などを使用して文書の認識を促進することができる。
2009500755.tif 000002
【特許請求の範囲】
【請求項１】
認識を促進するシステムであって、
文書の視覚構造に関連する入力を受信する受信コンポーネントと、
少なくとも部分的に前記文書の視覚構造の文法的階層構造モデルを利用して、前記入力の文法的な解析を促進する文法コンポーネントと
を備えることを特徴とするシステム。
【請求項２】
前記文法コンポーネントは、ローカルフィーチャおよび／またはグローバルフィーチャを利用して前記文書に関連するレイアウト構造を抽出する文書構造抽出コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記文書構造抽出コンポーネントは、機械学習、イメージスコアリング、解析学習ブースティング、および／または高速フィーチャを利用して前記文書レイアウト構造の抽出を促進することを特徴とする請求項２に記載のシステム。
【請求項４】
前記文法コンポーネントは、少なくとも１つの分類器を使用してグローバル検索からの最適な解析の決定を促進する解析コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項５】
前記解析コンポーネントは、前記分類器を使用して文法的コスト関数の決定を促進することを特徴とする請求項４に記載のシステム。
【請求項６】
前記分類器は、従来の機械学習技術を介してトレーニングされた分類器を備えることを特徴とする請求項５に記載のシステム。
【請求項７】
前記機械学習技術は、少なくとも部分的にパーセプトロンベースの技術を備えることを特徴とする請求項６に記載のシステム。
【請求項８】
前記文法コンポーネントは、少なくとも部分的に識別的文法モデルに基づく文法的な解析プロセスを利用することを特徴とする請求項１に記載のシステム。
【請求項９】
前記文法コンポーネントは、少なくとも部分的に動的プログラミングを使用して前記構造レイアウトに関する前記最適な解析ツリーを決定することを特徴とする請求項１に記載のシステム。
【請求項１０】
認識を促進する方法であって、
文書の視覚構造に関連する入力を受信するステップと、
文法的な解析プロセスを前記文書の視覚構造の推定に適用するステップと
を備えることを特徴とする方法。
【請求項１１】
少なくとも部分的に前記文書の前記視覚構造の文法的な階層構造モデルを使用して前記文書の視覚構造入力の文法的な解析を促進するステップをさらに備えることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記文法的な解析プロセスは、識別的文法モデルに基づくことを特徴とする請求項１０に記載の方法。
【請求項１３】
文法的コスト関数に基づいて前記入力を解析するステップをさらに備え、
前記文法的コスト関数は、少なくとも部分的に、グローバル検索からの最適な解析の決定を促進する機械学習技術を介して導出されることを特徴とする請求項１０に記載の方法。
【請求項１４】
少なくとも１つの解析を１つのイメージとして表現するステップと、
前記イメージをスコアリングして文法的コスト関数による前記最適な解析の決定を促進するステップと
をさらに備えることを特徴とする請求項１３に記載の方法。
【請求項１５】
少なくとも１つの文書のフィーチャの一体化イメージを計算し、かつ／または複数の一体化イメージの少なくとも１つのコンステレーションを計算して、前記入力の解析を促進するステップをさらに備えることを特徴とする請求項１４に記載の方法。
【請求項１６】
ＡｄａＢｏｏｓｔを利用して前記入力の解析を促進するステップをさらに備えることを特徴とする請求項１３に記載の方法。
【請求項１７】
認識を促進するシステムであって、
文書の視覚構造に関連する入力を受信する手段と、
少なくとも部分的に前記文書の視覚構造の文法モデルを使用して、前記視覚構造の入力の文法的な解析を促進する手段と
を備えることを特徴とするシステム。
【請求項１８】
機械学習技術を介してトレーニングされた少なくとも１つの分類器を利用して前記視覚構造の入力を解析する手段をさらに備えることを特徴とする請求項１７に記載のシステム。
【請求項１９】
請求項１０に記載の方法を使用するデバイスであって、コンピュータ、サーバー、およびハンドヘルド電子デバイスで構成されるグループから選択される少なくとも１つを備えることを特徴とするデバイス。
【請求項２０】
請求項１に記載のシステムを使用して文書の視覚構造のインポートおよび／またはエクスポートを促進することを特徴とする認識システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書視覚構造の文法的な解析に関する。
【背景技術】
【０００２】
時が経つにつれて、人々は仕事とレジャーの両方の活動でますますコンピュータに依存するようになっている。しかしながら、コンピュータはデジタルドメインで動作しており、情報を処理するためには離散的な状態（ｄｉｓｃｒｅｔｅ  ｓｔａｔｅｓ）が識別される必要がある。これは、完全な黒か白かでなく、グレーの階調の間に存在する、明らかなアナログ方式で活動する人間とは正反対である。このように、デジタルとアナログとの重要な相違点は、デジタルは時間的に分離した不連続の状態（たとえば明らかなレベル）を必要とするのに対して、アナログは時間的に連続である。人間は生来アナログ方式で活動するので、コンピューティング技術は前述の時間的分離によってもたらされる人間とコンピュータとのインターフェイス（たとえばデジタルコンピューティングインターフェイス）に関連する困難を軽減するように発展してきた。
【０００３】
技術的には、最初に既存のタイプライターで打った情報または活字の情報をコンピュータに入力する試みに注目が集まった。初めは、スキャナまたは光学的結像器を使用して画像を「デジタル化」した（たとえばイメージをコンピューティングシステムに入力した）。一度イメージをデジタル化してコンピューティングシステムに入力すれば、印刷された資料または活字の資料もデジタル化できるはずである。しかしながら、スキャナで読み込まれたページのイメージは、コンピューティングシステムに持ち込まれた後に、テキストまたは記号として操作することはできない。何故ならば、ページはシステムでは「認識」されない、つまりシステムはページを理解できないからである。文字およびワードは「画像」であり、実際に編集可能なテキストまたは記号ではない。このようなテキストに関する限界を克服するために、スキャン技術を利用してテキストを編集可能なページとしてデジタル化する光学式文字認識（ＯＣＲ：optical character recognition）技術が開発された。この技術は、スキャナで読み込まれたイメージをＯＣＲソフトウェアが編集可能なテキストに変換できる特定のテキストフォントを使用した場合には、かなり有効に機能する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
テキストはコンピューティングシステムによって「認識」されても、重要な追加の情報はこのプロセスによって失われていた。このような情報には、テキストの書式、テキストの間隔、テキストの向き、および全般的なページレイアウトなどが含まれる。したがって、ページが２段組みで右上に画像がある場合に、ＯＣＲがスキャンしたページはワードプロセッサにおけるテキストのグループ分けとなり、２段組みやイメージをグループ分けしない。または、画像が含まれている場合に、画像は通常はテキストの間のランダムな位置に埋め込まれる結果になっていた。このことは、さまざまな文書構成標準が利用されている場合はさらに問題である。典型的なＯＣＲ技術では、一般的に他の文書標準からの構造を「変換」することも、こうした構造を正しく認識することもできない。代わりに、認識の結果では認識された部分をその関連標準に限定しようとし、または強制しようとしている。このような場合に、ＯＣＲプロセスは通常は認識された部分に「不明（ｕｎｋｎｏｗｎ）」を表すマーカー（疑問符など）を入力し、文書のこうしたコンポーネントを処理できないことを示す。
【課題を解決するための手段】
【０００５】
主題となるいくつかの実施形態の態様について基本的な理解が得られるように、本主題の概要について以下で簡単に説明する。以下の説明は、本主題の概要を広範囲にわたって示すものではない。また、本実施形態の重要／不可欠な要素を特定したり、本主題の範囲を線引きするものでもない。その唯一の目的は、後述の実施形態に関する説明の準備として、本主題に関するいくつかの概念を簡略化した形で示すことである。
【０００６】
文法的な解析を使用して文書構造の認識を促進するシステムおよび方法を提供する。文書の２次元的表現を利用して、文書に関する認識を促進する階層構造を抽出する。文書の視覚構造は、統計解析アルゴリズムの２次元の適応（ａｄａｐｔａｔｉｏｎ）を利用して文法的に解析される。このことにより、レイアウト構造（たとえば、段組、著者、タイトル、脚注など）およびその同類の認識が可能になるので、文書の構造コンポーネントを正確に解釈できる。文書のレイアウト認識を促進するために、さらに追加の技術を利用してもよい。たとえば、機械学習を利用する文法的な解析技術、イメージ表現に基づく解析スコアリング、ブースティング技術、および／または「高速フィーチャ（fast features）」などを利用して文書の認識を促進することができる。これにより、精度が大幅に向上した文書の効率的な認識が可能になる。
【０００７】
前述の目的と関連する目的を達成するために、本明細書では実施形態のいくつかの例示的な態様について、以下に示す実施形態と添付の図面に関連付けながら説明する。ただし、このような態様は例を示すものであり、本主題の原理を使用できるさまざまな方法の一部にすぎず、本主題はこうした態様やその同等物をすべて含むことを意図するものである。本主題のその他の利点と新しい機能は、以下に示す実施形態の説明と添付の図面を関連付けて考察することで明らかになるであろう。
【発明を実施するための最良の形態】
【０００８】
ここで、本主題について添付の図面に関連付けながら説明するが、全体を通して同種の要素には同種の参照番号が使用されている。以下の説明において、本主題に関する理解を深めるために、説明を目的として多くの具体的な要素について詳細に説明する。ただし、本主題の実施形態は、以下に示す個々の詳細な要素がなくても実施できることは明らかであろう。他の場合は、本主題の説明を促進するために、周知の構造とデバイスがブロック図の形で示されている。
【０００９】
本出願で使用する限り、「コンポーネント」という用語は、コンピュータ関連の実体を表すものとし、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、実行中のソフトウェアのいずれでもよい。たとえば、コンポーネントは、プロセッサで実行するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行するスレッド、プログラム、および／またはコンピュータのいずれでもよいが、これらに限定はされない。たとえば、サーバー上で動作するアプリケーションとサーバーはいずれもコンピュータのコンポーネントと言える。実行するプロセスおよび／またはスレッド内に１つまたは複数のコンポーネントが存在してもよい。また、コンポーネントは１台、および／または２台またはそれ以上のコンピューに分散してもよい。「スレッド」は、オペレーティングシステムのカーネルが実行に関してスケジュールするプロセス内のエンティティである。当業者には周知のように、各スレッドはそのスレッドの実行に関連付けられた一時的なデータである関連した「コンテキスト（ｃｏｎｔｅｘｔ）」を有する。スレッドのコンテキストには、そのスレッドのプロセスに属するシステムレジスタの内容および仮想アドレスが含まれる。このように、スレッドのコンテキストを備える実際のデータは、スレッドが実行するにつれて変化する。
【００１０】
視覚構造を利用して文書の認識を促進するシステムおよび方法を提供する。文書に固有の階層構造（たとえば、文書→ページ→セクション→段組→段落など）は、文法に基づく技術を使用する２次元の解析メカニズムを利用して認識される。文法的な解析メカニズムと共に機械学習プロセスをさらに利用することによって、文書認識の効率を大幅に向上でき、なおかつ高い精度も提供できる。さらにイメージスコアリング（Ｉｍａｇｅ  ｓｃｏｒｉｎｇ）技術を利用すると、解析の速度と効率を向上できる。文書の高速フィーチャの選択とブースティング技術による解析学習を利用すると、本システムおよび方法の生産性を向上することもできる。
【００１１】
文法的な解析は、コンピュータ言語と自然言語の処理に利用される。コンピュータ言語の場合は、文法が一義的であり、入力考えると唯一の有効な解析である。自然言語の場合は、文法はあいまいであり、入力シーケンスを考えると、非常に多くの潜在的な解析がある。自然言語の統計的な解析で望ましいのは、機械学習を使用して的確な解析に最高のスコアを割り当てるスコアリング関数（ｓｃｏｒｉｎｇ  ｆｕｎｃｔｉｏｎ）を産出することである。本明細書で説明するシステムおよび方法では、視覚構造レイアウトが文法としてモデル化され、文法的コスト関数（ｇｒａｍｍａｔｉｃａｌ  ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）に基づいて最適な解析のグローバル検索が実行される。機械学習を利用すると、さまざまな視覚構造レイアウトに合わせて、フィーチャを識別して選択し、文法的な解析プロセスのすべてのパラメータを設定できる。
【００１２】
図１は、一実施形態の態様による文書の視覚構造分析システム１００を示すブロック図を示す。文書の視覚構造分析システム１００は、入力１０４を受信し、出力１０６を提供する文書の視覚構造分析コンポーネント１０２を備えている。文書の視覚構造分析コンポーネント１０２は、文書の視覚構造レイアウトに関する非生成的（ｎｏｎ−ｇｅｎｅｒａｔｉｖｅ）な文法モデルを利用して、視覚構造レイアウトに関する最適な解析ツリーの決定を促進する。入力１０４には、たとえば、文書のページの視覚レイアウトが含まれる。文書の視覚構造分析コンポーネント１０２は、文書の視覚構造を解析する文法的な解析プロセスを利用して入力１０４を解析し、出力１０６を提供する。出力１０６には、たとえば、文書の視覚構造レイアウトに関する最適な解析ツリーを含めることができる。また、グローバルに学習された「参照（ｒｅｆｅｒｅｎｃｅ）」文法を確立し、追加の文法学習を行う必要なしに、さまざまなタスクの解析ソリューションを提供することもできる。
【００１３】
図２を参照すると、一実施形態の態様による文書の視覚構造分析システム２００を示す別のブロック図が示されている。文書の視覚構造分析システム２００は、視覚構造入力２０４を受信し、最適な解析ツリー２０６を提供する文書の視覚構造分析コンポーネント２０２を備えている。文書の視覚構造分析コンポーネント２０２は、文書の視覚構造レイアウトの識別的文法モデル（ｄｉｓｃｒｉｍｉｎａｔｉｖｅ  ｇｒａｍｍａｔｉｃａｌ  ｍｏｄｅｌ）を利用する。文書の視覚構造分析コンポーネント２０２は、受信コンポーネント２０８と文法コンポーネント２１０を含む。受信コンポーネント２０８は、視覚構造入力２０４を受信し、この２０４を文法コンポーネント２１０に中継する。他の例では、受信コンポーネント２０８の機能を文法コンポーネント２１０に含ませて、視覚構造入力２０４を文法コンポーネント２１０が直接受信できるようにしてもよい。また、文法コンポーネント２１０は基本的な構造レイアウト文法２１２も受信する。基本的な構造レイアウト文法２１２は、文書レイアウトに関する初期的な視覚構造文法フレームワークを提供する。文法コンポーネント２１０は、視覚構造入力２０４を解析し、最適な解析ツリー２０６を取得する。文法コンポーネント２１０は、文書の視覚構造を解析する文法的な解析プロセスを利用してこれを実現する。文法コンポーネント２１０は、動的なプログラミングプロセスを使用して最適な解析ツリーをグローバルに決定する。これで、最適な解析ツリー２０６のローカルに限定された評価が回避され、より優れたグローバルな結果が得られる。
【００１４】
図３を参照すると、一実施形態の態様による文書の視覚構造分析システム３００を示すさらに別のブロック図が示されている。文書の視覚構造分析システム３００は、視覚構造入力３０４を受信し、最適な解析ツリー３０６を提供する文書の視覚構造分析コンポーネント３０２を備えている。文書の視覚構造分析コンポーネント３０２は、解析する文書の視覚構造レイアウトの識別的文法モデルを利用する。文書の視覚構造分析コンポーネント３０２は、受信コンポーネント３０８と文法コンポーネント３１０を備えている。文法コンポーネント３１０は、解析コンポーネント３１２と文書構造抽出コンポーネント３１４を備えている。解析コンポーネント３１２は、視覚構造文法モデル３１６および文法的コスト関数３１８を備えている。視覚構造入力３０４には、たとえば文書ページの視覚レイアウトが含まれる。受信コンポーネント３０８は、視覚構造入力３０４を受信し、この３０４を解析コンポーネント３１２に中継する。他の例では、受信コンポーネント３０８の機能を解析コンポーネント３１２に含ませて、視覚構造入力３０４を解析コンポーネント３１２が直接受信できるようにしてもよい。解析コンポーネント３１２は、最初に視覚構造レイアウト文法３２０に基づいて視覚構造入力３０４から文書の視覚構造を解析する。解析コンポーネント３１２は、文書構造抽出コンポーネント３１４と対話することにより、特に視覚構造入力３０４から視覚構造情報を抽出する操作を促進する。
【００１５】
文書構造抽出コンポーネント３１４は、複雑なローカルおよび／またはグローバルなフィーチャを利用して、解析コンポーネント３１２が視覚構造入力３０４を解析することを促進する。文書構造抽出コンポーネント３１４は、さまざまなオプションのメカニズムを利用して、機械学習３２２、解析ブースティング３２４、高速フィーチャ３２６、イメージスコアリング３２８、および／またはその他３３０などを含むがこれに限定はされない解析コンポーネント３１２による視覚構造レイアウト解析を強化できる。その他３３０は、解析コンポーネント３１２を迅速、および／または強化を促進するさまざまな視覚指向のメカニズムおよび／または追加的な効率を表す。
【００１６】
たとえば、機械学習３２２は文書構造抽出コンポーネント３１４によって提供されることができ、解析コンポーネント３１２によるチャートの生成を促進できる。解析コンポーネント３１２は、チャートを、その後のラベル付きの例のセット（ｓｕｂｓｅｑｕｅｎｔ  ｓｅｔ  ｏｆ  ｌａｂｅｌｅｄ  ｅｘａｍｐｌｅｓ）に変換し、分類プロセスに中継される。分類プロセスは、その後のラベル付きの例のセットを機械学習と共に利用して分類器（ｃｌａｓｓｉｆｉｅｒｓ）のセットをトレーニングする。ここで、分類プロセスは正の例と負の例の間でプロパティを識別することを決定する。プロパティの識別により、分類器が的確な解析および／または不的確な解析に適正なコストを割り当てることを促進できる。さらに、解析コンポーネント３１２は視覚構造文法モデル３１６の文法的コスト関数３１８の分類器のセットを利用して、その後のラベル付きの例のセットのサブ解析（ｓｕｂ−ｐａｒｓｅｓ）をスコアリングすることを促進する。このようにして、最適な解析ツリー３０６が得られるまで（つまり、よりスコアの高い解析ツリーが取得されなくなるまで、またはよりコストの低い解析ツリーが取得されなくなるまで）、プロセスは繰り返し続行される。
【００１７】
同様に、解析ブースティングメカニズム３２４が解析コンポーネント３１２に提供されて、的確な解析をより効率的に学習することを促進できる。高速フィーチャメカニズム３２６が提供され、文書フィーチャの一体化イメージ（ｉｎｔｅｇｒａｌ  ｉｍａｇｅｓ）の計算および／または一体化イメージのコンステレーション（ｃｏｎｓｔｅｌｌａｔｉｏｎｓ）の利用によって解析イメージを計算し、解析の効率を向上することができる。イメージスコアリングメカニズム３２８は、文法的コスト関数３１８に関する解析されたイメージのスコアを提供することによって解析を促進できる。こうしたメカニズム３２２〜３３０はオプションであり、視覚構造入力３０４を解析するために必要というわけではない。
【００１８】
文書のページ全体に関する単一の一体化イメージでなく、一体化イメージのコンステレーションを利用する場合には、ページの各要素（たとえば、文字、ワード、および／または行など適宜）について一体化イメージが計算される。重要な文字のみをフィーチャ計算（ｆｅａｔｕｒｅ  ｃｏｍｐｕｔａｔｉｏｎ）に含めることによって、注目を集めることができる。本明細書で説明するシステムおよび方法では、文書のフィーチャの計算された一体化イメージを利用することも同様にできる。たとえば、大きな空白の矩形、垂直整列の境界ボックス（ｖｅｒｔｉｃａｌ  ａｌｉｇｎｍｅｎｔｓ  ｏｆ  ｂｏｕｎｄｉｎｇ  ｂｏｘｅｓ）、および／または水平整列のテキスト行（ｈｏｒｉｚｏｎｔａｌ  ａｌｉｇｎｍｅｎｔｓ  ｏｆ  ｔｅｘｔ  ｌｉｎｅｓ）などのような文書のフィーチャを利用できる。
【００１９】
このように、一体化イメージを利用することによって、イメージ矩形内の白と黒のピクセル数を迅速に計算できる。あるイメージに関する一体化イメージの計算は費用がかかるが、いったん計算されると矩形の合計を迅速に計算できる。オブジェクト（イメージの内部でも外部でもよい）のセットが与えられた場合は、イメージからレンダリングできる指数関数的な数のイメージ（累乗集合（ｐｏｗｅｒ  ｓｅｔ）Ｐ（Ｎ））が存在する。これらのイメージをレンダリングし、レンダリングされた各イメージについて矩形の合計を計算するには莫大な費用がかかる。したがって、代わりに、個々のオブジェクトについて一体化イメージがレンダリングされ、「一体化イメージのコンステレーション」として表される。このように、イメージの任意の部分集合に関する矩形の合計は、コンステレーションからの矩形の合計である。
【００２０】
＜２次元の解析＞
多くの競合する解析アルゴリズムが存在するが、１つのシンプルだが一般的なフレームワークは「チャート解析（ｃｈａｒｔ  ｐａｒｓｉｎｇ）」と呼ばれている（M. Kay, 「Algorithm schemata and data structures in syntactic processing」, pp.35-70, 1986 参照）。チャート解析は、チャートＣ（Ａ，Ｒ）のエントリを入力しようとする。各エントリには、非終端（ｎｏｎ−ｔｅｒｍｉｎａｌ）Ａの最高スコアが終端Ｒの部分列（ｓｕｂ−ｓｅｑｕｅｎｃｅ）の解釈（ｉｎｔｅｒｐｒｅｔａｔｉｏｎ）として格納される。任意の非終端のコストは、次の再帰によって表現できる。
【００２１】
【数１】
2009500755.tif 000003
【００２２】
ここで、｛ＢＣ｝はＡに関するすべてのプロダクション（ｐｒｏｄｕｃｔｉｏｎ）全体にわたって変動し、Ｒ０は終端の部分列（「領域（ｒｅｇｉｏｎ）」として表される）、およびＲ１とＲ２は互いに素な（ｄｉｓｊｏｉｎｔ）部分列であり、その結合（ｕｎｉｏｎ）はＲ０である（つまり「パーティション（ｐａｒｔｉｔｉｏｎ）」を構成する）。本質的に、再帰は終端の２つの互いに素なセットへの低コストの分解（ｄｅｃｏｍｐｏｓｉｔｉｏｎ）を検出することによってＡに関するスコアが計算されることを表している。各プロダクションには、表内のコスト（もしくは損失または負の対数確率（ｌｏｇ  ｐｒｏｂａｂｉｌｉｔｙ））  ｌ（Ａ→ＢＣ）が割り当てられる。チャート内のエントリ（エッジ（ｅｄｇｅｓ）と呼ばれることもある）には、上から下または下から上に任意の順序で入力できる。解析プロセスの複雑性は、入力が必要なチャートエントリの数と、各エントリに入力するために必要な作業とによって発生する。Ｐ個の非終端を含む文法を使用してＮ個の終端による線形的配列（ｌｉｎｅａｒ  ｓｅｑｕｅｎｃｅ）を解析するときに構成されたチャートには、Ｏ（ＰＮ２）個のエントリが含まれる（
【００２３】
【数２】
2009500755.tif 000004
【００２４】
個の隣接する部分列、｛ｉ，ｊ｝が存在する。ここで０≦ｉ＜ｊ、かつｊ＜Ｎ）。各エントリの入力に必要な作業はＯ（Ｎ）なので、全体的な複雑性はＯ（ＰＮ３）である。
【００２５】
残念ながら、終端の２次元の配列に対するチャート解析の直接的なアプリケーションには、指数関数的な時間を必要とする。重要な問題は、終端が線形的配列順序（ｌｉｎｅａｒ  ｓｅｑｕｅｎｔｉａｌ  ｏｒｄｅｒ）を有していないことである。式（１）に戻ると、ここで領域Ｒ０は部分集合である。そして、Ｒ１とＲ２は互いに素であり、その結合がＲ０となる（つまり、パーティションを構成する）部分集合である。チャートのサイズは分析できる。つまり、Ｏ（Ｐ｜Ｐ（Ｎ）｜）である。ここで、Ｐ（Ｎ）はＮ個の終端のすべての部分集合の集合である。指数関数的な数の部分集合が存在するので、このアルゴリズムは指数関数的である。
【００２６】
Ｈｕｌｌは、コストの幾何学的コンポーネントが非常に高い場合に検索を取り除く幾何学的な基準を導入した（J. F. Hull, 「Recognition of mathematics using a two-dimensional trainable context-free grammar」, Master's thesis, MIT, June 1996 参照）。ＭｉｌｌｅｒとＶｉｏｌａは、ｃｈｕｌｌ（Ｒ１）∩Ｒ２＝φ または ｃｈｕｌｌ（Ｒ２）∩Ｒ１＝φ に反する領域Ｒ１、Ｒ２を拒否する凸包に基づく発見的な方法を導入した（E. G. Miller and P. A. Viola, 「Ambiguity and constraint in mathematical expression recognition」, in Proceedings of the National Conference of Artificial Intelligence, American Association of Artificial Intelligence, 1998 参照）。各集合はページの凸領域内にあるため、このような集合を領域と呼ぶのは適切である。注目されるのは、終端が行に沿って存在する（したがって、厳密な線形の順序がある）場合には、凸包の基準によってＯ（Ｎ２）個の領域が生成される。これは、従来の解析で使用された線形的配列と同等である。
【００２７】
凸包の制約をその他の幾何学的な制約と同様に利用することにより、解析実行中に考慮された部分集合の集合を大幅に縮小できる。これらの制約を組み合わせることにより、印刷された文書のほとんどのタイプについて、Ｏ（Ｎ３）の複雑性が得られる。
【００２８】
＜文書のレイアウト分析＞
文書レイアウト分析の１つの目的は、スキャンされた文書を、ＬａＴｅＸおよび／またはワードプロセッサなどの文書作成（ｐｒｅｐａｒａｔｉｏｎ）プログラム用の完全に編集可能な入力ファイルに変換するために必要な情報を決定することである。スキャンされたファイルに含まれるテキストはＯＣＲを使用して容易に抽出できるが、こうした情報は容易に編集できるファイルを作成するために十分ではない。段落の境界、段組、行揃え、より重要な読み取りの流れ（ｒｅａｄｉｎｇ  ｆｌｏｗ）などの付加的な情報も必要である。こうした文書構造の情報は、多くの場合にＰＤＦ（ｐｏｒｔａｂｌｅ  ｄｏｃｕｍｅｎｔ  ｆｉｌｅｓ）やＰｏｓｔｓｃｒｉｐｔファイルからも失われる。スキャン、ＰＤＦ、および／またはＰｏｓｔｓｃｒｉｐｔであれ何であれ、文書構造の情報を追加することにより、ページ番号の再割り当て、書式の再設定、および／または編集などが可能な生きた文書が得られる。したがって、こうした機能によって文書の有用性は大幅に向上する。
【００２９】
文書作成プログラムでは、多くの場合に印刷されたページをセクションに分割する。各セクションにはいくつかの段組が含まれ、各段組にはいくつかの段落が含まれる。こうした再帰的な構造は、以下の表１に文法として示されている。こうした構造に関する知識は、スキャンされた文書から編集可能なファイルを正確に作成するために十分である。
【００３０】
【表１】
2009500755.tif 000005
【００３１】
ＵＷＩＩＩ文書イメージデータベースを使用して試験が実施されている（I. Philips, S, Chen, and R. Haraliek, 「Cd-rom document database standard」, in Proceedings of 2nd International Conference on Document Analysis and Recognition, 1993 参照）。このデータベースは、スキャンされた文書を、行、段落、領域、および読み取り順序に関する属性情報（ｇｒｏｕｎｄ  ｔｒｕｔｈ）と共に格納している。図４には、ＵＷＩＩＩデータベースのページの例４００が示されている。解析アルゴリズムへの入力は、行の境界ボックス（ｂｏｕｎｄｉｎｇ  ｂｏｘｅｓ）（たとえば、段落の境界ボックス４０２および行の境界ボックス４０４）である。出力は、セクション／段組／段落への階層的な分解である。多くの文書では、属性情報のラベルは前述の文法に容易に変換される。トレーニングと評価は、研究論文、書籍、および雑誌のページを含む６０の文書を使って実施された。
【００３２】
＜印刷された数学の解釈＞
学術研究団体では、ほとんどすべての新しい論文がＰＤＦとＰｏｓｔｓｃｒｉｐｔのいずれかで入力可能になっている。このような書式は、印刷には便利であるが、容易な再利用または書式の再設定には対応していない。１つの明白な例は、数式が含まれている文書である。数式は、容易に抽出、編集、または検索することができない。それ以外の例には、表、脚注、参考文献（ｂｉｂｌｉｏｇｒａｐｈｉｅｓ）などがある。科学関係の出版物の実質的な標準はＬａＴｅＸである。この理由の一部として、ＬａＴｅＸは強力かつ高品質の数学のレイアウトを提供することがある。ＰＤＦ文書もＰｏｓｔｓｃｒｉｐｔ文書も、オリジナルを生成するために使用したＬａＴｅＸの式を再構築するために必要な情報を提供しない。
【００３３】
ＬａＴｅＸ文書のトレーニングのセットが与えられた場合は、ＬａＴｅＸマクロのセットを使用して、文書のレンダリングプロセスを「ツール（ｉｎｓｔｒｕｍｅｎｔ）」にできる。その結果は、ツール化されたデバイスに依存しない（ＤＶＩ：ｄｅｖｉｃｅ independent）ファイルのセットであり、これを処理することによって、ページ上の文字の境界ボックスと、対応するＬａＴｅＸの式とを抽出できる。ＡｒＸｉｖプレプリント（ｐｒｅ−ｐｒｉｎｔ）サーバーから利用可能なＬａＴｅＸファイルのセットにこのようなマクロが適用されている（図５．数式の認識をトレーニングするための式の例５００を参照）。
【００３４】
後処理が終わると、トレーニングデータは式の集まりであり、各式は適切に構成された終端の構文ツリーである。このようなツリーは、文法のプロダクションを入力ツリーから直接確認できるので、文法を直接誘導する（ｉｎｄｕｃｅ）機会を提供する（こうした文法は、多くの場合に「ツリーバンク（ｔｒｅｅ−ｂａｎｋ）」文法と呼ばれる）。誘導された文法は、以下の表２に示されている。文法の終端は含まれておらず、非終端ＲａｗＩｔｅｍによって表されていることに留意されたい。ＲａｗＩｔｅｍのセットは、数式を構成する文字、数字、および記号である。文法の終端は、黒インクの基本的な接続コンポーネントである。
【００３５】
【表２】
2009500755.tif 000006
【００３６】
数学的な解析に関する他の作業とは異なり、解釈を開始する前に終端がセグメントに分割され、認識されていることは想定されない。終端の認識は、解析プロセスの一体化された要素である。個々の記号のタイプには、終端のプロダクションを説明する文法規則が関連付けられている。たとえば、（Ｒａｗｌｔｅｍ→ＥＱＵＡＬＳ）と（ＥＱＵＡＬＳ→ＣＣＩ  ＣＣ２）は、「等号（ｅｑｕａｌｓ  ｓｉｇｎ）」が接続コンポーネントのペアで構成されることを表している。ＥＱＵＡＬＳプロダクションに関連するコスト関数は、外観が"＝"である接続コンポーネントのペアに低いコストを割り当てるように学習する必要がある。この問題の全体的な設定は、機械的にシンプルである。文法はＬａＴｅＸファイルの例から作成され、フィーチャは以下に定義する一般的に価値のある大規模なフィーチャのセットから自動的に選択される。
【００３７】
＜フィーチャ＞
プロダクションスコアリング関数の学習に使用するフィーチャは、一般にさまざまなタスクに適用でき、有効である。幾何学的な境界ボックスフィーチャのセットは、コンポーネントの位置合わせ（ａｌｉｇｎｍｅｎｔ）の測定に有効なことが証明されている。第１のタイプは、集合Ｒ０、Ｒ１、およびＲ２の境界ボックスに関連する。これは、ページ座標内でボックスの角の位置Ｘｉ、Ｙｉ、およびサイズＷ、Ｈを測定する。合計３６０の測定フィーチャがあり、｛ｍｊ（Ｒ）｝で表される。第２のフィーチャセットは組み合わせであり、ボックス測定フィーチャのすべてのペアを関連付ける。つまり、ｇ（ｍｊ（Ｒａ），ｍｊ（Ｒｂ））である。ここで、ａとｂは｛０，１，２｝であり、関数ｇは加算、減算、乗算、除算、最小値、最大値のいずれでもよい。第３のフィーチャセットは、この領域に含まれる終端の境界ボックスのプロパティを測定する。これには、すべての領域の終端について評価された、いくつかの測定フィーチャの最小値、最大値、平均、標準偏差（ｓｔａｎｄａｒｄ  ｄｅｖｉａｔｉｏｎ）、および中央値（ｍｅｄｉａｎ）が含まれる。
【００３８】
さらに、外観に基づいて領域を識別するように設計された大規模なパターン認識フィーチャのセットがある。このようなフィーチャは、領域内の終端のレンダリングイメージに作用する。図６には、数式６０２のイラスト６００が示されている。解析中に、式Ｚ０ ６０４が検出されて解釈が必要になる。プロダクションスコアリングプロセスへの入力として使用される４つのレンダリングイメージ６０６が図示されている。終端自体を外観に基づいて認識しなければならない場合には、視覚的フィーチャが必要である。ＶｉｏｌａとＪｏｎｅｓによって提案された矩形のフィーチャが使用されている（P. Viola and M. Jones, 「Rapid object detection using a boosted cascade of simple features」, in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2001 参照）。これは計算の効率がよく、さまざまなタスクに有効であることが証明されている。個々の入力イメージは、位置とスケールにおいて均一にサンプリングされた１２１個の単一矩形フィーチャで表現されている。より難解なイメージ認識タスクにははるかに大規模な集合が使用されているが、このようなタスクにはこれで十分であることがわかる。
【００３９】
幾何学的正規化（Ｇｅｏｍｅｔｒｉｃ  ｎｏｒｍａｌｉｚａｔｉｏｎ）は、イメージ分類関数を構築する場合の重要な問題である。この場合は、Ｒ０のサイズと位置を正規化する参照フレームが選択される。目標は、Ｒ０が視覚イメージの８０％を満たすことである。Ｒ１とＲ２の終端は、この座標フレーム内でレンダリングされている。これで、Ｒ１とＲ２の相対的な位置に関する情報を含む入力イメージがイメージフィーチャに提供される。したがって、たとえばＲ２が添え字の場合は、そのレンダリングされたコンポーネントの位置は参照フレームの下の方になる。最終的に、文書全体の終端はＲ０の参照フレーム内でレンダリングされるが、スケールははるかに小さい。このイメージは文書の「コンテキスト」をコード化し、これを使用して特定のタイプのローカルなあいまい性の除去を実行できる。
【００４０】
解析実行中に、各潜在的な領域と部分領域はイメージのセットとしてコード化される。多くの領域がある場合は、イメージの再スケーリングを含むイメージのコード化プロセスは、真に膨大な計算になる。こうした計算を回避するために、ＶｉｏｌａとＪｏｎｅｓが導入した一体化イメージの表現を採用し、コストを増加せずに任意のスケールで矩形のフィルタを計算する。
【００４１】
＜例＞
前述のフィーチャを使用して、２セットの試験が実行されている。文法パラメータ学習の全体的なプロセスは、以下の表３で説明されている。学習の各ラウンドで、意思決定スタンプ（ｄｅｃｉｓｉｏｎ  ｓｔｕｍｐｓ）に関するＡｄａＢｏｏｓｔが使用されている。これは、複雑性を制御するための非常にシンプルなメカニズムを提供する（早期中止）。また、ブースティングの各ラウンドで単一のフィーチャに関連付けられた単一のスタンプを選択するので、フィーチャ選択のメカニズムも提供する。
【００４２】
【表３】
2009500755.tif 000007
【００４３】
トレーニングの早期のラウンドでは、最終的な分布（ｄｉｓｔｒｉｂｕｔｉｏｎ）を表さない例が検出される可能性が高いので、ＡｄａＢｏｏｓｔは予定どおりに実行され、複雑性が増す。ブースティングの最初のラウンドで、２つの弱い分類器が選択される。第２ラウンドでは４つ、第３ラウンドでは８つの分類器がそれぞれ選択される。その後、解析の各ラウンドで８つの分類器（したがって８つのフィーチャ）が選択される。
【００４４】
解析結果の評価は、重要な技術である。完ぺきなシステムは存在しないので、ほとんど適切な解析の品質を定量化する基準を定義することが重要である。１つのスキーマは、各タイプのプロダクションの再現率（ｒｅｃａｌｌ）と精度（ｐｒｅｃｉｓｉｏｎ）を測定することである。属性情報には、各プロダクションの多くの例が含まれる。各プロダクションが正確に識別されるときのパーセンテージは再現率である。学習された文法によって、入力例のそれぞれについて解析が得られる。このようなプロダクションが適切な解析に対応する件数のパーセンテージが精度である。
【００４５】
ＵＷＩＩＩ文書のデータベースには、相互検証の３つのラウンドで８０〜２０に分割される５７個のファイルが含まれる（表４を参照。つまり、平均はすべてのプロダクションに関する平均パフォーマンスである。重み付きの平均は、検出された例の数に基づいて平均に重みを割り当てる）。トレーニングセットに関するパフォーマンスはほとんど完ぺきであるのに対して、テストセットに関するパフォーマンスは十分ではあるが完ぺきにはほど遠い。より大規模なトレーニングセットおよび／またはフィーチャ表現の変更によって、一般化を改善できる。文書ドメインと数式ドメインの両方について、８０の終端を伴う一般的な入力を、１ＧＢのＲＡＭを備える１．７ＧＨｚ  Ｐｅｎｔｉｕｍ（登録商標）４で解析した場合に、約３０秒かかる。
【００４６】
【表４】
2009500755.tif 000008
【００４７】
数式データベースには、１８０の式と５１の種々の数学記号（λやδなど）を使用した文法が含まれている。結果は以下の表５に示されている。
【００４８】
【表５】
2009500755.tif 000009
【００４９】
本システムおよび方法の事例は、印刷された文書のコンポーネントを同時に分割し認識することを学習できる分析のフレームワークを提供する。このフレームワークはきわめて一般的であり、その中で解析プロセスのすべてのパラメータはトレーニングの例のデータベースを使用して設定される。本フレームワークの有効性と一般性は、２つのアプリケーション、すなわちページレイアウト構造抽出および数式認識を提示することによって例証されている。第１のケースでは、このアルゴリズムへの入力はページの行の集まりであり、出力はセクション、段組、および段落構造である。第２のケースでは、入力はページ上の接続コンポーネントの集まりであり、出力は入力の再生に必要な認識された数学記号とＬａＴｅＸコードのセットである。最終的なシステムは全く異なるが、正確な認識システムを構築するために必要な学習および解析プロセスへの変更は非常に少ない。
【００５０】
以上に示し、説明した例示的なシステムの観点で、本実施形態によって実装できる方法は、図７と８の流れ図を参照することでより適切に評価されるであろう。説明を簡単にするために、本方法は一連のブロックとして図示され、説明されているが、本実施形態がこのブロックの順序に限定されないことを理解されたい。たとえば、いくつかのブロックは、１つの実施形態によれば、異なる順序で実行することも、かつ／またはここで図示され、説明される他の動作と同時に実行することもできる。また、本実施形態による方法を実装するために、図示されたすべてのブロックが必要なわけではない。
【００５１】
本実施形態については、１つまたは複数のコンポーネントで実行されるコンピュータ実行可能命令（たとえばプログラムモジュール）の一般的なコンテキストで説明できる。一般に、プログラムモジュールには、ルーチン、プログラム、オブジェクト、データ構造などがあり、特定のタスクを実行するものや、特定の抽象データ型を実装するものも含まれる。一般に、プログラムモジュールの機能は必要に応じてさまざまな実施形態の事例で結合したり分散したりすることができる。
【００５２】
図７には、１つの実施形態の態様による文書の視覚構造分析を促進する方法７００の流れ図が示されている。方法７００が開始されると（７０２）、文書の視覚構造に関連する入力を受信する（７０４）。それから、文書の視覚構造の推定に文法的な解析プロセスが適用され（７０６）、流れ図は終了する（７０８）。文法的な解析プロセスには、機械学習などを利用して文法的コスト関数を促進する分類器を構築するプロセスを含めてもよいが、これに限定はされない。機械学習には、従来の機械学習の技術（たとえば、パーセプトロンベースの技術など）を含めてもよいが、これに限定はされない。
【００５３】
図８を参照すると、１つの実施形態の態様による文書の視覚構造分析を促進する方法の別の流れ図が示されている。方法８００が開始されると（８０２）、文書の視覚構造に関連する入力を受信する（８０４）。それから、複雑なローカルフィーチャおよび／またはグローバルフィーチャを利用して、入力から文書の視覚構造が抽出され（８０６）、流れ図は終了する（８０８）。機械学習、解析ブースティング、高速フィーチャ、および／またはイメージスコアリングなどを含むがこれに限定はされないさまざまなオプションのメカニズムを利用して、視覚構造の抽出を強化できる。たとえば、機械学習は解析によるチャートの生成を促進できる。そして、チャートはその後のラベル付きの例のセットに変換でき、これが分類プロセスに中継される。分類プロセスは、その後のラベル付きの例のセットを機械学習と共に利用して分類のセットをトレーニングできる。そして、分類プロセスは正の例と負の例との間でプロパティの識別を決定できる。プロパティの識別により、分類器は適切な解析および／または不適切な解析に適切なコストを割り当てる操作を促進できる。
【００５４】
同様に、解析プロセスに解析ブースティングが提供され、適切な解析をより効率的に学習する操作を促進できる。高速フィーチャプロセスが提供され、文書のフィーチャの一体化イメージを計算することおよび／または解析の効率を向上する一体化イメージのコンステレーション（ｃｏｎｓｔｅｌｌａｔｉｏｎｓ）を利用することによって解析イメージを計算できる。イメージスコアリングプロセスは、解析に使用されるコスト関数に関する解析されたイメージのスコアを提供することによって、解析を促進できる。
【００５５】
本実施形態のさまざまな態様を実装するための付加的なコンテキストを示すために、図９と以下の説明は、本実施形態のさまざまな態様を実装できる適切なコンピューティング環境９００について簡単かつ一般的に説明することを目的としている。本実施形態について、ローカルコンピュータおよび／またはリモートコンピュータで実行するコンピュータプログラムのコンピュータで実行可能な命令の一般的なコンテキストで説明してきたが、本実施形態を他のプログラムモジュールと組み合わせても実装できることを当業者は理解されたい。一般に、プログラムモジュールには、ルーチン、プログラム、コンポーネント、データ構造など、特定のタスクを実行するものおよび／または特定の抽象データ型を実装するものがある。さらに、本発明による方法が、シングルプロセッサまたはマルチプロセッサによるコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、ならびにパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースの家電製品および／またはプログラム可能な家電製品など、それぞれが１台または複数台の関連デバイスと通信して動作できる他のコンピュータシステム構成でも実施できることは、当業者には理解されるであろう。本実施形態の図示された態様は、通信ネットワークを介してリンクするリモートプロセッシングデバイスで特定のタスクを実行する分散コンピューティング環境でも実施できる。ただし、本実施形態のすべてではないがいくつかの態様は、スタンドアロンコンピュータで実施できる。分散コンピューティング環境では、プログラムモジュールをローカルおよび／またはリモートのメモリストレージデバイス内に配置してもよい。
【００５６】
本出願で使用する限り、「コンポーネント」という用語は、コンピュータ関連の実体を表すものとし、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、実行中のソフトウェア（ｓｏｆｔｗａｒｅ  ｉｎ  ｅｘｅｃｕｔｉｏｎ）のいずれでもよい。たとえば、コンポーネントは、プロセッサで実行するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行中のスレッド、プログラム、およびコンピュータのいずれでもよいが、これらに限定はされない。たとえば、サーバー上で動作するアプリケーションおよび／またはサーバーはいずれもコンポーネントと言える。さらに、コンポーネントには１つまたは複数のサブコンポーネントを含めてもよい。
【００５７】
図９を参照すると、本実施形態のさまざまな態様を実施するための例示的なシステム環境９００には、プロセッシングユニット９０４、システムメモリ９０６、およびシステムメモリからプロセッシングユニット９０４までのさまざまなシステムコンポーネントを接続するシステムバス９０８を含む従来のコンピュータ９０２の形をとる汎用コンピューティングデバイスが含まれる。プロセッシングユニット９０４は、市販のさまざまなプロセッサまたは自社開発のプロセッサのいずれでもよい。さらに、プロセッシングユニットは複数のプロセッサ（たとえば、パラレルに接続されてもよい）で構成されるマルチプロセッサとして実装されてもよい。
【００５８】
システムバス９０８は、たとえば、ＰＣＩ、ＶＥＳＡ、Ｍｉｃｒｏｃｈａｎｎｅｌ、ＩＳＡ、ＥＩＳＡなど市販のさまざまなバスアーキテクチャの任意の１つを使用したメモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含む各種バス構造のいずれでもよい。システムメモリ９０６には、読み取り専用メモリ（ＲＯＭ：read only memory）９１０とランダムアクセスメモリ（ＲＡＭ：random access memory）９１２が含まれる。起動時などにコンピュータ９０２内のエレメント間の情報転送を支援する基本ルーチンを含む基本入出力システム（ＢＩＯＳ：basic input/output system）９１４は、ＲＯＭ ９１０に格納される。
【００５９】
コンピュータ９０２には、たとえば、ハードディスクドライブ９１６、取り外し可能なディスク９２０に対する読み出しまたは書き込みを行う磁気ディスクドライブ９１８、ＣＤ−ＲＯＭディスク９２４または他の光媒体に対する読み出しまたは書き込みを行う光ディスクドライブ９２２がさらに含まれていてもよい。ハードディスクドライブ９１６、磁気ディスクドライブ９１８、および光ディスクドライブ９２２は、それぞれハードディスクドライブインターフェイス９２６、磁気ディスクドライブインターフェイス９２８、および光ディスクドライブインターフェイス９３０を介してシステムバス９０８に接続する。ドライブ９１６〜９２２とこれに関連付けられたコンピュータ可読媒体は、データ、データ構造、コンピュータ９０２のコンピュータ実行可能命令を格納する不揮発性ストレージとして利用できる。前述のコンピュータ可読媒体の説明は、ハードディスク、取り外し可能な磁気ディスク、およびＣＤを表しているが、例示的な動作環境９００では、磁気カセット、フラッシュメモリカード、デジタルビデオディスク（ＤＶＤ：digital video disk）、Ｂｅｒｎｏｕｌｌｉ（ベルヌーイ）カートリッジなど、その他のコンピュータ可読媒体も利用でき、さらにこうした任意の媒体に本実施形態の方法を実行するためのコンピュータ実行可能命令を格納できることを当業者は理解されたい。
【００６０】
オペレーティングシステム９３２、１つまたは複数のアプリケーションプログラム９３４、その他のプログラムモジュール９３６、およびプログラムデータ９３８を含む多くのプログラムモジュールは、ドライブ９１６〜９２２およびＲＡＭ ９１２に格納できる。オペレーティングシステム９３２は、適切なオペレーティングシステムのいずれかでもよい。または、オペレーティングシステムの組み合わせでもよい。例として、アプリケーションプログラム９３４およびプログラムモジュール９３６には、１つの実施形態の態様による認識スキーマを含めてもよい。
【００６１】
ユーザーは、キーボード９４０やポインティングデバイス（たとえばマウス９４２）などの１つまたは複数のユーザー入力デバイスを使用してコンピュータ９０２にコマンドや情報を入力できる。他の入力デバイス（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、サテライトディッシュ、無線リモート（ｗｉｒｅｌｅｓｓ  ｒｅｍｏｔｅ）、スキャナなどを含めてもよい。これらの入力デバイスおよび他の入力デバイスは、多くの場合、システムバス９０８に接続するシリアルポートインターフェイス９４４を介してプロセッシングユニット９０４に接続するが、パラレルポート、ゲームポート、ＵＳＢ（universal serial bus）のような他のインターフェイスで接続してもよい。モニター９４６または他のタイプの表示デバイスも、ビデオアダプタ９４８のようなインターフェイスを介してシステムバス９０８に接続される。コンピュータ９０２には、モニター９４６以外にスピーカーやプリンタなどの周辺出力デバイス（図示せず）が接続されていてもよい。
【００６２】
コンピュータ９０２は、１台または複数台のリモートコンピュータ９６０への論理接続を使用してネットワーク環境で動作できることを理解されたい。リモートコンピュータ９６０は、ワークステーション、サーバーコンピュータ、ルーター、ピアデバイス、または他の一般的なネットワークノードのいずれでもよい。通常は、コンピュータ９０２に関連して上で説明したエレメントの多くまたはすべてが含まれるが、簡単にするために、図９にはメモリストレージデバイス９６２のみを示す。図９に示す論理接続には、ローカルエリアネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）９６４とワイドエリアネットワーク（ＷＡＮ：ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）９６６を含めてもよい。このようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットではきわめて一般的である。
【００６３】
ＬＡＮネットワーキング環境で使用する場合に、たとえばコンピュータ９０２はローカルネットワーク９６４にネットワークインターフェイスまたはアダプタ９６８を介して接続する。ＷＡＮネットワーキング環境で使用する場合は、一般的にコンピュータ９０２はモデム（たとえば、電話、ＤＳＬ、ケーブルなど）９７０を備えているか、ＬＡＮ上の通信サーバーに接続する。あるいは、インターネットなどのＷＡＮ  ９６６を介して通信を確立するその他の手段を備えている。モデム９７０（コンピュータ９０２に内蔵でも外付けでもよい）は、シリアルポートインターフェイス９４４を介してシステムバス９０８に接続される。ネットワーク環境では、プログラムモジュール（アプリケーションプログラム９３４を含む）および／またはプログラムデータ９３８は、リモートメモリストレージデバイス９６２に格納できる。図示されたネットワーク接続は例示的なものであり、１つの実施形態の態様を実施する場合に、コンピュータ９０２および９６０間の通信リンクを確立する他の手段（たとえば有線または無線）を使用してもよいことは理解されるであろう。
【００６４】
本実施形態について、コンピュータプログラミング業者の実施に従って、他に指定がない限り、コンピュータ９０２またはリモートコンピュータ９６０のようなコンピュータが実行する動作（ａｃｔｓ）およびオペレーションのシンボリック表現（ｓｙｍｂｏｌｉｃ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ  ｏｆ  ｏｐｅｒａｔｉｏｎｓ）に関して説明してきた。このような動作やオペレーションは、コンピュータで実行されると表現されることもある。動作およびオペレーションのシンボリック表現には、結果として電子信号表現の変換または還元（ｒｅｄｕｃｔｉｏｎ）を得るデータビットを表す電子信号のプロセッシングユニット９０４による操作、およびコンピュータシステムのオペレーションを再構成または変更するメモリシステム（システムメモリ９０６、ハードドライブ９１６、フロッピー（登録商標）ディスク９２０、ＣＤ−ＲＯＭ  ９２４、およびリモートメモリ９６２を含む）におけるメモリロケーションのデータビットの保守、およびその他の信号処理が含まれることは理解されるであろう。こうしたデータビットが保持されるメモリロケーションは、データビットに対応する特定の電子的、磁気的、光学的な特性を有する物理ロケーションである。
【００６５】
図１０は、いくつか実施形態が対話できるコンピューティング環境の例１０００を示す別のブロック図である。システム１０００は、１台または複数台のクライアント１００２を含むシステムをさらに示している。クライアント１００２は、ハードウェアおよび／またはソフトウェア（たとえばスレッド、プロセス、コンピューティングデバイス）でよい。システム１０００には、１または２以上のサーバー１００４も含まれる。サーバー１００４も、ハードウェアおよび／またはソフトウェア（たとえばスレッド、プロセス、コンピューティングデバイス）でよい。クライアント１００２とサーバー１００４の間で可能な１つの通信の例は、２つ以上のコンピュータプロセス間で送信できるデータパケットの形をとってもよい。システム１０００は、クライアント１００２とサーバー１００４の間の通信を促進するために使用できる通信フレームワーク１００８を備えている。クライアント１００２は、クライアント１００２のローカルな情報を格納するために使用できる１つまたは複数のデータストレージ１０１０に接続する。同様に、サーバー１００４はサーバー１００４のローカルな情報を格納するために使用できる１つまたは複数のデータストレージ１００６に接続して機能する。
【００６６】
本実施形態のシステムおよび／または方法は、認識を促進するコンピュータコンポーネントでも、コンピュータ以外の関連コンポーネントでも同様に利用できることを理解されたい。さらに、本実施形態のシステムおよび／または方法は、コンピュータ、サーバー、および／またはハンドヘルド電子デバイスなどを含むさまざまな電子関連技術に利用できることを当業者は理解するであろう。
【００６７】
以上の説明には、本実施形態の例が含まれる。本実施形態について説明するために、コンポーネントまたは方法のあらゆる組み合わせについて説明するのはもちろん不可能であるが、他にも本実施形態の多くの組み合わせや置き換えが可能であることは当業者には理解できるであろう。したがって、本主題には添付の特許請求の精神と範囲を逸脱しない代替、変更、変形のすべてが含まれるものとする。さらに、発明の実施の形態と特許請求の範囲のいずれかで使用する「含む」という用語およびその変形の範囲は、「備える」が特許請求の範囲で暫定的な用語として使用された場合に解釈される用語「備える」と同様に包括的な意味を表す。
【図面の簡単な説明】
【００６８】
【図１】一実施形態の態様による文書の視覚構造分析システムを示すブロック図である。
【図２】一実施形態の態様による文書の視覚構造分析システムを示す別のブロック図である。
【図３】一実施形態の態様による文書の視覚構造分析システムを示すさらに別のブロック図である。
【図４】一実施形態の態様によるＵＷＩＩＩデータベースからのページの一例を示す図である。
【図５】一実施形態の態様による数式認識システム（mathematical expression recognizer）のトレーニングに使用される式の一例を示す図である。
【図６】一実施形態の態様による１つの数式を示す図である。
【図７】一実施形態の態様による文書の視覚構造分析を促進する方法を示す流れ図である。
【図８】一実施形態の態様による文書の視覚構造分析を促進する方法を示す別の流れ図である。
【図９】一実施形態が機能できる動作環境の一例を示す図である。
【図１０】一実施形態が機能できる動作環境の別の例を示す図である。
【図１】
2009500755.tif 000010
【図２】
2009500755.tif 000011
【図３】
2009500755.tif 000012
【図４】
2009500755.tif 000013
【図５】
2009500755.tif 000014
【図６】
2009500755.tif 000015
【図７】
2009500755.tif 000016
【図８】
2009500755.tif 000017
【図９】
2009500755.tif 000018
【図１０】
2009500755.tif 000019
【国際調査報告】
2009500755.tif 000020