(57)【特許請求の範囲】
【請求項１】
複数の言語のうち、ＯＣＲデータが属する言語を識別するデータ処理装置であって、
前記ＯＣＲデータ内の単語或いは文節を、前記ＯＣＲデータが属する言語が識別されるまで、順次エレメントとして抽出する抽出手段と、
各エレメントが前記複数の言語の各々に属する確率値として、ベイズの法則に基づき予め算出された、所定の信頼範囲内において取り得る最低確率値と、所定の信頼範囲内において取り得る最高確率値と、最も公算が高い確率値である基本確率値とを保持する各言語の辞書と、
前記各言語の辞書に基づいて、前記抽出手段で抽出されたエレメントが、前記複数の言語それぞれに属する最低確率値と最高確率値と基本確率値とからなる確率値セットを判定する判定手段と、
前記複数の言語の各々について前記判定された確率値セットを累算していくことにより、前記複数の言語の各々について、最低確率値と最高確率値と基本確率値とからなる累算確率セットを算出する累算手段と、
前記累算手段で算出した複数の言語各々の累算確率セットについて、最も高い基本確率値を有する累算確率セットの前記基本確率値が所定の確率しきい値に達し、且つ、当該最も高い基本確率値を有する累算確率セットの最低確率値が２番目に高い基本確率値を有する累算確率セットの最高確率値以上であると判断した場合、当該最も高い基本確率値に対応する言語を、前記ＯＣＲデータが属する言語として識別する識別手段とを備えることを特徴とするデータ処理装置。
【請求項２】
複数の言語のうち、ＯＣＲデータが属する言語を識別するデータ処理装置であって、
前記ＯＣＲデータ内の単語或いは文節を、前記ＯＣＲデータが属する言語が識別されるまで、順次エレメントとして抽出する抽出手段と、
各エレメントが前記複数の言語の各々に属する確率値として、ベイズの法則に基づき予め算出された、所定の信頼範囲内において取り得る最低確率値と、所定の信頼範囲内において取り得る最高確率値と、最も公算が高い確率値である基本確率値とを保持する各言語の辞書と、
前記各言語の辞書に基づいて、前記抽出手段で抽出されたエレメントが、前記複数の言語それぞれに属する最低確率値と最高確率値と基本確率値とからなる確率値セットを判定する判定手段と、
前記複数の言語の各々について前記判定された確率値セットを累算していくことにより、前記複数の言語の各々について、最低確率値と最高確率値と基本確率値とからなる累算確率セットを算出する累算手段と、
前記累算手段で算出した複数の言語各々の累算確率セットに基づいて、最も高い基本確率値を有する累算確率セットの最低確率値が２番目に高い基本確率値を有する累算確率セットの最高確率値よりも所定値以上高いと判断した場合、当該最も高い基本確率値に対応する言語を、前記ＯＣＲデータが属する言語として識別する識別手段とを備えることを特徴とするデータ処理装置。
【請求項３】
前記識別手段で識別された言語を出力する出力手段を更に含むことを特徴とする請求項１または２に記載のデータ処理装置。
【請求項４】
前記識別された言語の出力は、データを更に処理するために利用されることを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記識別手段では、前記言語の累算確率セットの基本確率値が前記所定の確率しきい値に達しない場合は、前記最も高い基本確率値に対応する言語を前記ＯＣＲデータが属する可能性がある言語として識別することを特徴とする請求項１に記載のデータ処理装置。
【請求項６】
前記識別手段は、前記最も高い基本確率値を有する累積確率セットの最低確率値が前記２番目に高い基本確率値を有する累算確率値セットの最大確率値以上でないと判断した場合は、当該最も高い基本確率値に対応する言語と、該最も高い基本確率値を有する累積確率セットの最低確率値より高い値の最高確率値を有する言語とを、前記ＯＣＲデータが属する可能性がある言語として識別することを特徴とする請求項１に記載のデータ処理装置。
【請求項７】
可能性がある複数の言語からユーザに手動的に分類を選択させる選択手段を更に有することを特徴とする請求項５または６に記載のデータ処理装置。
【請求項８】
前記最低確率値と前記最高確率値の各々を累算確率の基本確率値からの２つ以上の標準偏差として計算することを特徴とする請求項１または２に記載のデータ処理装置。
【請求項９】
前記各言語の辞書に保持される前記確率値を判定するために、
ａ）言語が既知のトレーニング・データの単語あるいは文節を、順次、エレメントとして抽出して入力する工程と、
ｂ）前記順次入力されたエレメントの確率値を計算する工程と、
ｃ）前記計算された確率値を記憶する工程と、
ｄ）各言語毎にａ）からｃ）の工程を反復する工程とを実行する予備手段を更に含むことを特徴とする請求項１または２に記載のデータ処理装置。
【請求項１０】
前記順次入力されたエレメントの確率値を計算する工程が、各エレメントの出現頻度を判定する工程を含むことを特徴とする請求項９に記載のデータ処理装置。
【請求項１１】
前記確率値は、ベイズの法則を用いて、
ｐ（ｌ｜ｔ）＝｛ｐ（ｔ｜ｌ）・ｐ（ｌ）｝／ｐ（ｔ）
によって算出され、ここで、
ｐ（ｌ｜ｔ）はエレメントｔが言語ｌである確率であり、
ｐ（ｔ｜ｌ）は言語ｌにおけるエレメントｔの確率であり、
ｐ（１）は言語の確率であり、
ｐ（ｔ）はエレメントの確率であることを特徴とする請求項９または１０に記載のデータ処理装置。
【請求項１２】
ある言語が占有されている確率は全ての言語について同一であり、従って計算では無視されることを特徴とする請求項１１に記載のデータ処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、データが属する分類を識別するためのデータ処理方法またはデータ処理装置に関する。
【０００２】
【従来の技術】
データを種々の分類に分類でき、データが属する分類を識別できることが望ましい用途は多数ある。
【０００３】
このような用途の１つに、例えば、手紙、メモおよび論文のような文書を選別してカタログ分類し、異なる位置に記憶する電子文書処理がある。従って文書を認識し、かつ識別してそれらを別に処理できるようなシステムを提供することが望ましい。
【０００４】
更に、文書を選別もしくは分類できるように、主題によって認識できれば極めて有利であろう。
【０００５】
データ分類の識別が必要な別の分野として、音声認識および光学式文字認識の分野がある。これらの双方のタイプのデータ処理では、処理を簡略化するためにデータを解析し、これを分類することが有利であろう。例えば、データを解析して科学または法律のような分野を判定したり、またはデータを解析して音声またはテキストの属する言語を判定することが可能であろう。
【０００６】
自動言語識別の課題は既にＰ．シブンとＡ．Ｌ．スピッツ（P Sibun & A L Spitz）の両氏の論文によって提起されている（「言語判定：走査された文書画像からの自然言語処理」第４回応用自然言語処理学会の会報１５〜２１ページ。コンピュテーション言語学学会）。従来の光学式文字認識（ＯＣＲ）では、言語モデルがＯＣＲシステムの精度を高めることができる。しかし、言語モデルを利用するには、テキストの言語が判明していることが必要である。これは勿論、一般にテキストの認識なしでは不可能である。しかし、シブン氏とスピッツ氏の論文では、走査された画像中の語の簡単な表現であり、各文字の形状の概略的な記述である語形トークン（word shape token）を用いて正確な言語識別を達成可能であることが示されている。このように、“背が高い”文字（例えばｈ、ｋおよびｌ）を全て１つの分類に区分し、尻尾がある文字（例えばｇやｙ）を全て第２の分類に区分し、点がある文字（例えばｉ）を全て第３の分類に区分し、小さい文字（例えばａ、ｎおよびｚ）を第４の分類に区分する等が可能である。このようにして、フルスケールのＯＣＲを必要とせずに低い誤差率で文字の形状認識を行うことが可能である。このような文字形状を利用して、シブン氏とスピッツ氏は線形判別解析（ＬＤＡ：Linear Discriminate Analysis）に基づく統計モデルを用いて最も公算が高い言語を確定する言語識別子を開発した。試験用に収集された２３言語に応用した場合、彼らの方法によって正しい言語が割当てられた文書数の割合は９１％に達した。オランダ語／アフリカ語、およびフランス語／スペイン語／イタリア語／ポルトガル語／ルーマニア語のような関連言語では多くのエラーが発生した。シブン氏とスピッツ氏による方法の問題点の１つは、自動言語識別を行うためにテキストの全てを解析しなければならないことにある。シブン氏とスピッツ氏による方法のもう１つの問題点は、モデルからいずれかの言語を除去すると残りの言語の精度が低下する場合があることにある。
【０００７】
別の方法がシブン氏とＪ．Ｃ．レーナー氏（J C Reynar）によって提案されている（「刊行物の吟味」文書解析と情報検索に関する第５回年次シンポジウム会報、１２５ページから１３６ページ。ラスベガス、ネバタ大学）。この方法は単一文字の形状トークン（ユニグラム：unigrams）、または隣接する一対の文字の形状トークン（バイグラム：bigrams）の分布に関する統計の収集に基づいている。認識試験は各言語の試験セットおよびトレーニング・セット中のユニグラムまたはバイグラムの分布確率同士の関係性に基づいている。１８言語での試験では、トレーニングおよび試験セット中のデータ行の数に応じてユニグラムは７７％〜９９％の精度を達成し、バイグラムでは９０％〜１００％の精度を達成している。この方法は、モデルから言語を除去しても影響されず、僅か３言語を含む試験では大幅に優れた精度を達成している。しかし、シブン氏とスピッツ氏による方法よりは度合いは低いものの、類似言語は依然として多くのエラー源になっている。
【０００８】
【発明が解決しようとする課題】
本発明の目的は、データが属する分類を識別する際に従来技術よりもその分類精度を向上させたデータ処理方法と装置とを提供することにある。
【０００９】
【課題を解決するための手段】
本発明の一態様によるデータ処理装置は以下の構成を備える。即ち、
複数の言語のうち、ＯＣＲデータが属する言語を識別するデータ処理装置であって、
前記ＯＣＲデータ内の単語或いは文節を、前記ＯＣＲデータが属する言語が識別されるまで、順次エレメントとして抽出する抽出手段と、
各エレメントが前記複数の言語の各々に属する確率値として、ベイズの法則に基づき予め算出された、所定の信頼範囲内において取り得る最低確率値と、所定の信頼範囲内において取り得る最高確率値と、最も公算が高い確率値である基本確率値とを保持する各言語の辞書と、
前記各言語の辞書に基づいて、前記抽出手段で抽出されたエレメントが、前記複数の言語それぞれに属する最低確率値と最高確率値と基本確率値とからなる確率値セットを判定する判定手段と、
前記複数の言語の各々について前記判定された確率値セットを累算していくことにより、前記複数の言語の各々について、最低確率値と最高確率値と基本確率値とからなる累算確率セットを算出する累算手段と、
前記累算手段で算出した複数の言語各々の累算確率セットについて、最も高い基本確率値を有する累算確率セットの前記基本確率値が所定の確率しきい値に達し、且つ、当該最も高い基本確率値を有する累算確率セットの最低確率値が２番目に高い基本確率値を有する累算確率セットの最高確率値以上であると判断した場合、当該最も高い基本確率値に対応する言語を、前記ＯＣＲデータが属する言語として識別する識別手段とを備える。
【００１０】
また、本発明の一態様によるデータ処理装置は以下の構成を備える。即ち、
複数の言語のうち、ＯＣＲデータが属する言語を識別するデータ処理装置であって、
前記ＯＣＲデータ内の単語或いは文節を、前記ＯＣＲデータが属する言語が識別されるまで、順次エレメントとして抽出する抽出手段と、
各エレメントが前記複数の言語の各々に属する確率値として、ベイズの法則に基づき予め算出された、所定の信頼範囲内において取り得る最低確率値と、所定の信頼範囲内において取り得る最高確率値と、最も公算が高い確率値である基本確率値とを保持する各言語の辞書と、
前記各言語の辞書に基づいて、前記抽出手段で抽出されたエレメントが、前記複数の言語それぞれに属する最低確率値と最高確率値と基本確率値とからなる確率値セットを判定する判定手段と、
前記複数の言語の各々について前記判定された確率値セットを累算していくことにより、前記複数の言語の各々について、最低確率値と最高確率値と基本確率値とからなる累算確率セットを算出する累算手段と、
前記累算手段で算出した複数の言語各々の累算確率セットに基づいて、最も高い基本確率値を有する累算確率セットの最低確率値が２番目に高い基本確率値を有する累算確率セットの最高確率値よりも所定値以上高いと判断した場合、当該最も高い基本確率値に対応する言語を、前記ＯＣＲデータが属する言語として識別する識別手段とを備える。
【００１１】
識別された分類は累算確率とともに出力され、データを更に処理するために利用できる。例えば、データが異なる分類に属し、異なる方法で処理する必要がある場合は、識別された分類を利用してデータで実行されるべき処理動作を選択することができる。
【００１２】
本発明の一実施形態によれば、累算確率が所定の確率しきい値に達した場合は、その分類はデータが属する分類であるものと識別される。
【００１３】
また、分類の累算確率が所定の確率しきい値に達し、かつその分類の累算確率が他の各々の分類の累算確率よりも所定量だけ大きい場合には、その分類を入力されたデータの属する分類として識別することができる。
【００１４】
また、分類の累算確率が所定の確率しきい値に達しない場合は、最高の累算確率を有する分類の幾つかをデータがそれに属する可能性がある分類として識別することができる。
【００１５】
また、一実施形態では、確率と累算確率の各々は、所定の信頼範囲内において取り得るであろう最低確率値、所定の信頼範囲内において取り得るであろう最高確率値、および最も公算が高い確率値である基本値を備え、分類の累算確率の基本値が前記所定の確率しきい値に達した場合、当該分類が入力されたデータの属する分類として識別される。また、分類の累算確率の基本値が前記所定の確率しきい値に達し、かつ分類の累算確率値の最低確率値が他の各分類の累算確率値の最高確率値以上である場合にのみ、分類を入力されたデータがそれに属する分類として識別してもよい。
【００１６】
また、分類の累算確率の基本値が所定の確率しきい値に達しない場合は、累算確率の最高の基本値を有する分類の幾つかをデータがそれに属する可能性がある分類として識別することができる。
【００１７】
また、最高の基本値を有する分類の累算確率の最低確率値が他の各分類の累算確率値の最大値確率値未満となる場合は、最高の基本値を有する分類の最低確率値以上である最高確率値を有する分類をデータが属する可能性がある分類として識別することができる。
【００１８】
本発明の別の実施形態では、累算確率が他の各々の分類の累算確率よりも所定量だけ大きい場合には、その分類を入力されたデータがそれに属する分類として識別することができる。
【００１９】
また、最高の累算確率と他の各分類の累算確率との差が前記所定量よりも大きくない場合は、最高の累算確率を有する分類の幾つかをデータが属する可能性がある分類として識別することができる。
【００２０】
また、確率と累算確率の各々が、所定の信頼範囲内において取り得るであろう最低確率値、所定の信頼範囲内において取り得るであろう最高確率値、および最も公算が高い確率値である基本値を備え、分類の累算確率の基本値が他の分類の累算確率の基本値以上である場合は、その分類をデータが属する分類として識別することができる。
【００２１】
また、分類の幾つかがデータが属する可能性がある分類として識別された場合、ユーザは可能性がある分類から１つの分類を手動的に選択することができる。
【００２２】
また、識別の実施形態では、累算確率の最低確率値と最高確率値とが、当該累算確率の基本値からの２つ以上の標準偏差として計算される。それによって少なくとも９５％の信頼度が得られる。
【００２３】
入力されるエレメントは別個の順次エレメント、または別個の順次エレメント群であることができる。所定の確率値とは個々のエレメントまたはエレメント群がある分類に属する確率を定義する確率値である。
【００２４】
データの特徴はデータの特徴を順次エレメントとしてコード化することによって抽出することができる。コード化によってデータ内の異なる特徴の数と比較して異なるエレメント数を減少することができる。
【００２５】
あるいは、データの特徴を直接利用できる場合は、この特徴を備えたデータ内の各エレメントを識別することによって簡単に抽出することができる。
【００２６】
各エレメントまたは順次エレメント群の出現頻度を判定することができ、この出現頻度は順次エレメントまたはエレメント群の確率値を計算するために利用できる。
【００２７】
順次エレメントの所定の確率値は、全ての分類についてデータ入力内でのエレメントまたはエレメント群の出現確率を計算し、当該分類の出現確率をプリセットされたレベルに設定し、ある分類に出現するエレメントの確率を計算することによって計算できる。このような計算は、
ｐ（ｌ｜ｔ）＝｛ｐ（ｔ｜ｌ）・ｐ（ｌ）｝／ｐ（ｔ）
であるベイズの法則によって行うことができる。但し、
ｐ（ｌ｜ｔ）は所定のエレメントまたはエレメント群の分類の確率であり、
ｐ（ｔ｜ｌ）は所定の分類のエレメントの確率であり、
ｐ（ｌ）は分類の確率であり、
ｐ（ｔ）はエレメントまたはエレメント群の確率である。
【００２８】
ある用途では、分類の出現確率は全ての分類について同一であり、従って計算では無視することができる。
【００２９】
所定の確率値は、取り得るであろいう最低確率値と、取り得るであろう最高確率値と、最も公算が高い確率値を示す基本値を備える。最低確率値と最高確率値とを基本値の所定の信頼範囲内にある確率値として計算することができる。好適には、９５％の高い信頼範囲が用いられ、従って最低確率値と最高確率値は正規分布の仮定に基づく基本値の２つ以上の標準偏差内にある。トレーニング・データを入力データ内に出現する公算があるエレメントの代表的な範囲を正当に含むように設計することも可能であるが、場合によっては、これはトレーニング・データが可能性がある全てのエレメントまたはエレメント群を含むことを確実にするには実際的ではない。このような環境では、トレーニング・データ内に出現しないエレメントまたはエレメント群の確率値は各分類毎に計算される。それによってトレーニング・データ内のいずれかのエレメントまたはエレメント群に対応しない入力エレメントまたはエレメント群の省略時の確率が得られる。
【００３０】
本発明は異なる多くの種類のデータの分類に利用することができる。入力データは例えばＯＣＲデータ、または音声認識データであることができ、このような認識中に通常生成される特徴ベトクルを演算してエレメントまたはエレメント群を構成することにより、データの特徴を抽出することができる。このようなシステム内のエレメントは個々の文字または音素であってよく、また、エレメント群は例えば語や発音であってよい。あるいは、特徴は語群または発音群のような高レベル構造であってもよいであろう。ＯＣＲデータの場合、エレメント群は更に例えばシブン氏とスピッツ氏が用いているバイグラム（bigrams）またはトリグラム（trigrams）であってもよい。データ処理によって例えば言語、またはテキストまたはスピーチの主題のような、データが属する任意の分類を識別することができる。
【００３１】
本発明の方法を用いて、電子形式の文書の属する分類を識別することができ、このような文書の自動的な選別が可能になる。そのような文書は、例えば手紙、メモまたは論文のような文書の種類、または法律や科学のような主題別に分類することができる。文書の種類は例えば段落の位置および形状の双方または一方のような文書のレイアウトからも識別することができる。文書の主題は文書内のある語の出現を識別し、これらの語を種々の周知の分類中でのこれらの文書の出現確率と比較することによって識別することができる。文書の分類ではエレメント群はページであることができる。
【００３２】
本発明は更に画像を分類できる画像またはパターン認識にも応用できる。
【００３３】
このように本発明は、少なくとも一部が複数の分類に共通である複数の特徴を備えた広範な種類の入力データに応用できる。
【００３４】
本発明によって、データの特徴は順次解析され、例えば確率しきい値を越えたといったような信頼性によって分類を識別することができた時点で、識別された分類を即座に出力することができる。このため、迅速な識別プロセスが可能である。このように、多くの場合、データの全てを解析する必要がないので、分類の識別プロセスはシブン氏とスピッツ氏の方法よりも著しく迅速である。
【００３５】
本発明の別の利点は、識別された分類の判定は確率しきい値を越えた場合だけ出力されることにある。このように本発明の実施形態に基づいて、判定の信頼性が高い場合だけ判定が行われる。それによって、誤り範囲または信頼範囲内に幾つかの同類の分類があるので、シブン氏とスピッツ氏のシステムで生ずるような誤りである分類に関して判定が行われることが回避される。
【００３６】
【発明の実施の形態】
次に本発明の実施形態を添付図面を参照して説明する。
【００３７】
図１は本発明の一実施形態に基づく代表的なデータ処理システムを示している。データはパーソナル・コンピュータにおいてコンピュータ・プログラムが作動することにより処理される。後述するフローチャートに示す処理も、このコンピュータプログラムに従って実行される。コンピュータ・プログラムは内蔵のハードディスクドライブに記憶しておくことができ、またはフロッピー・ディスク３、或いは書き込み可能なＣＤのようなコンピュータ読出し可能な記憶媒体でコンピュータ１に転送することができる。処理用のデータはＯＣＲデータの場合にはスキャナ（Scanner）２のような入力装置から入力することができる。しかし、データはモデム（図示せず）のような任意の適当な入力装置、またはフロッピー・ディスク３或いはＣＤのようなコンピュータ読出し可能な記憶媒体によっても入力することができる。処理対象のデータ処理結果及び識別結果は、例えばコンピュータ１のディスプレイ１ａ、或いはレーザ・プリンタ（Laser printer）４のような出力装置に出力することができる。更に、識別結果を利用して、データの処理方法を判定することもできる。異なる分類に属するデータを別々に処理する必要がある場合は、識別結果を利用して必要な別々の処理を適用することが可能である。このように、例えば入力データがＯＣＲデータであり、識別されるべき分類がＯＣＲデータの言語の種類である場合は、識別された言語の種類を利用して特定のライブラリまたはモデルを当該データのＯＣＲ処理に利用することができる。
【００３８】
図２は図１のシステムの内部構成を概略的に示している。バス１４はシステムの全ての素子を連結して、素子間での通信を可能にする。ディスプレイ装置（DISPLAY DEVICE）１０がバス１４に接続され、データの表示を可能にする。記憶装置（STORAGE DEVICE）１６から検索可能であり、ランダムアクセスメモリ（ＲＡＭ）１３に一時的に記憶されているデータを処理するために中央処理装置１１が備えられている。読出し専用メモリ（ＲＯＭ）１２も備えられ、これらは一般にこのシステムの基本入出力システム（ｂｉｏｓ）を含んでいる。データやコマンドを入力するためのキーボード（KEYBOARD）１７が備えられている。入力装置（INPUT DEVICE）１８は処理されるデータを入力し、出力装置（OUTPUT DEVICE）１５は処理済のデータを出力する。
【００３９】
図３は本発明の実施形態の基本動作のフローチャートである。ステップＳ１で、データがシステムに入力される。ステップＳ２で、データ内のエレメントを単に識別することによって、またはデータの特徴をエレメントとしてコード化することによってデータ・エレメントが抽出される。ステップＳ３で、抽出されたデータ・エレメントがデータ分類のために順次入力され、ステップＳ４で、入力されたエレメントを各分類のエレメントの所定の確率値と比較して、入力されたエレメントがその分類に属する確率を決定することにより、データが分類される。確率は累算されて各分類の累算確率が算出され、この累算確率からデータが属する分類を識別することができる。
【００４０】
こうしてＳ４で得られた分類は、データの更なる処理のために利用できる。ステップＳ５で、識別された分類がデータ処理プロセスに入力され、ステップＳ６でデータが読出され、識別された分類に従って処理される。
【００４１】
図４は本発明の一実施形態に基づく分類の識別の概略機能図である。データエレメント抽出部（Data Element Extractor）２０で、データ・エレメントが抽出され、分類のための各々の確率ライブラリ２１ａ、２１ｂ、２１ｃ．．．２１Ｌのそれぞれに入力される。ある分類に属するエレメントのそれぞれの確率はそれぞれの確率ライブラリ２１ａ、２１ｂ、２１ｃ…２１Ｌ（Probability Library for Classification 1-L）からそれぞれの累算器２２ａ、２２ｂ、２２ｃ…２２Ｌ（Accumulator 1-L）に出力される。累算器２２ａ、２２ｂ、２２ｃ…２２Ｌは確率を累算し、それを累算確率の比較のために比較器（Comparator）２３に出力して、累算確率信頼性を以て分類を識別できる場合にはその旨を判定する。
【００４２】
ここでＯＣＲデータの言語識別に応用される図５から図１６を参照して本発明の特定の実施形態を説明する。
【００４３】
図５は言語識別システムの概略機能図である。トークナイザ（Tokeniser）２４は語トークン（word token）をなすエレメント群を構成するために、文字をトークナイズ（tokenize）してＯＣＲデータの特徴を抽出する。このトークナイズとは、データをエレメント或いはエレメント群に分析する処理である。それにはシブン氏＆スピッツ氏、およびシブン氏＆レーナー氏の論文に記載されている方法を利用できる。ここで、トークンは、語彙辞書に格納されていることが予測される文字列の単位であり、単語或いは文節である。語トークンは次にＯＣＲデータが属する言語のための各々の語彙辞書２５ａ、２５ｂ、２５ｃ…２５Ｌ（Lexicon 1-L）に入力される。語彙辞書２５ａ、２５ｂ、２５ｃ…２５Ｌは語トークンがその言語に属する所定の確率値を備える。語彙辞書２５ａ、２５ｂ、２５ｃ…２５Ｌから出力された確率値は、それぞれの累算器２６ａ、２６ｂ、２６ｃ…２６Ｌ（Accumulator 1-L）に入力され、そこで順次、語トークンが累算されて、累算確率が算出される。各累算器２６ａ、２６ｂ、２６ｃ…２６Ｌの累算確率は比較器（Comparator）２６に入力され、この比較器２６で確率が互いに、また所定のしきい値と比較されることによりその信頼性が判定され、ＯＣＲデータが属する言語として一意的に識別できるか否かが判定される。
【００４４】
言語の識別を実行可能とするために、語彙辞書のトレーニング（学習）を行わなければならない。語彙辞書のトレーニングにおいては、正しい言語が判明している文書に対して先に述べたトークナイズの処理を実行し、その言語のトークンの頻度分布が生成される。次にその言語の確率分布が計算される。１つの言語の確率モデルを他の言語とは独立させることにより、各言語に同じ量のトレーニング・データを用いる必要はない。
【００４５】
導出すべき確率は所定のトークンｔが言語ｌの要素である確率であり、ｐ（ｌ｜ｔ）として記述する。すなわち所定のトークンが、与えられている言語である確率であり、ベイズの法則によれば、以下の式のようになる。
【００４６】
【数１】
0003950535.tif 000002
【００４７】
但し、ｐ（ｔ｜ｌ）は所定の言語ｌのトークンｔの確率であり、ｐ（ｌ）は言語のアプリオリ（演繹的）な確率値であり、ｐ（ｔ）はトークンのアプリオリ（演繹的）な確率値である。トレーニング・データからｐ（ｔ｜ｌ）、ｐ（ｌ）およびｐ（ｔ）を見積もるには多くの方法がある。本発明の実施形態ではそのような方法の１つを用いる。
【００４８】
全ての言語の確率が等しいものと仮定する。その場合、ｐ（ｌ）は任意のｌと任意のｔについてｐ（ｌ｜ｔ）を計算する定数である。ｐ（ｌ｜ｔ）の絶対的な値は必要ないので、ｐ（ｌ）を式（１）から削除することができる。
【００４９】
トレーニング・データからｐ（ｔ｜ｌ）とｐ（ｔ）の双方を計算する手順は次のとおりである。与えられたトークンｔについて、ｍをトレーニング・データ中のそのトークンの頻度とし、ｎをトークンの総数とする。双方のカウントとも、ｐ（ｔ｜ｌ）については与えられた言語の総数であり、ｐ（ｔ）については全ての言語の総数である。基本確率（ｐBで表す）、低確率（ｐLで表す）、および高確率（ｐHで表す）と呼ばれる３つの確率が計算される。これらの確率は所定の信頼限度内でトークンが出現する確率を表している。このように、ｐLはそのトークンが取り得る最も低い確率であり、ｐHは最も高い確率であり、ｐBは通常、信頼範囲の中心、またはその近くにある確率値である。ｐBをどのように決めるかは、予めルールを定めておく。範囲全体を用いることもできるが、本実施形態ではｐ（ｔ）について基本確率だけを用いている。
【００５０】
確率計算はトレーニング・データ内でのトークンの出現頻度に応じて異なる。高頻度、中間頻度、低頻度およびゼロのそれぞれの範囲が用いられる。どの分類を用いるべきかの決定はｍの値に基づいてなされる。高頻度計算は中間頻度計算よりも幾分か近似した形式であり、計算はギリギリまで少なくて済む。低頻度計算はより集約的な計算であるが、近似性は低い。ゼロ頻度補償はトレーニング・データにはないが、入力データに出現するかも知れないトークンの場合に用いられる。
【００５１】
確率は二項分布に従うものと仮定する。これを正当化するのは各トークンの出現をトークンｔであるか、ｔではない“事象（event）”として扱うことである。観察したトークンの頻度に基づいて、次にこの多くの“事象”、すなわちトークンの出現を導いたであろう二項分布の基礎となる確率が計算される。
【００５２】
高頻度の場合、基礎となる確率ｐで二項分布のｎ回の試みでの平均“成功”数の標準的な結果は下記の式（２）によって得られる。
【００５３】
【数２】
0003950535.tif 000003
【００５４】
μを観察された出現数ｍに等しく設定すると、ｐは下記の式（３）から得られる。
【００５５】
【数３】
0003950535.tif 000004
【００５６】
出現数の標準偏差は下記の式（４）から算出される。
【００５７】
【数４】
0003950535.tif 000005
【００５８】
最低および最高の確率ｐLおよびｐHを計算するため、基本値ｐBからのｄ個の標準偏差が導入され、下記の式（５）、（６）のようになる。
【００５９】
【数５】
0003950535.tif 000006
【００６０】
【数６】
0003950535.tif 000007
【００６１】
この実施形態では、標準偏差ｄの数は２に設定され、それによって確率には９５％の信頼性が得られる。
【００６２】
中間頻度範囲のトークンの場合、式（５）の右項に低確率を代入することによって、すなわち、式（７）で示される計算によって、確率ｐLはより正確になる。
【００６３】
【数７】
0003950535.tif 000008
【００６４】
式（７）のｐLの値は、確率値ｐLが低いものと仮定し、ひいては（１−ｐL）がほぼ１に等しいものと仮定することによって解くことができる。そこで、確率計算は、式（８）の二次方程式を解くことになる。
【００６５】
【数８】
0003950535.tif 000009
【００６６】
最初の場合のように、９５％の信頼性を得るためにｄを２と設定する。同様の理由から、確率値ｐHは下記の式（９）のようになる。
【００６７】
【数９】
0003950535.tif 000010
【００６８】
基本値は高確率の場合と同様に計算される。
【００６９】
低頻度については、正確に二項展開を解く。二項分布を定義することは、基礎となる確率をｐ、全試行回数をｎ回とした確率分布からｍの成功事象の確率を（１０）式によって与える。
【００７０】
【数１０】
0003950535.tif 000011
【００７１】
ｐの値は小さいので、（１−ｐ）の項は１であると概算することができる。９５％の信頼範囲の場合、方程式はｐ（ｍ）＝０．０２５、ｐ（ｍ）＝０．５、およびｐ（ｍ）＝０．９７５について解かれ、ｐL、基本確率ｐBおよびｐHがそれぞれ算出される。例えば基本確率については下記の式（１１）のようになる。
【００７２】
【数１１】
0003950535.tif 000012
【００７３】
また、未知の事象の確率計算のための特殊な場合、すなわちトレーニング・データにトークンが現れない場合にも対処しなければならない。これはいわゆる上記のゼロ確率である。低頻度の場合に用いられる方法は単純にｍ＝０に従うことはできない。何故ならば、そうすると低確率（２．５％レベル）が高確率（９７．５％）以上になる不合理な状況になるからである。その理由は方程式が下記の式（１２）のように可約されるからである。
【００７４】
【数１２】
0003950535.tif 000013
【００７５】
但しｔは０．０２５または０．９７５であるしきい値である。その代わりに低い値と高い値を等しく設定する近似式が用いられ、これらはｔ＝０．９５とした、すなわちｐについて計算された値で９５％の信頼性があるポイントで式（１２）から計算される。これはｐ（ｔ）のゼロ確率の場合の計算と同様である。
【００７６】
計算は対数を導入することによって、乗算の項を加算に変換し、べき乗計算及び根計算を乗算と除算とに変換することで最良に行われる。それによって数値の桁あふれ、および下位桁あふれの問題も回避することができる。
【００７７】
ここでトレーニング動作で行われるステップを図６ａ、図６ｂおよび図６ｃのフローチャートを参照して詳細に説明する。但し、ｍはある言語に含まれる語の頻度であり、Ｍは全ての言語に含まれる語の頻度であり、ｎはある言語に含まれる全ての語の全頻度であり、Ｎは全ての言語に含まれる全ての語の全頻度である。
【００７８】
ステップＳ１０でＮとＭがゼロに設定される。ステップＳ１１でトレーニング用の言語が選択され、ステップＳ１２でｍとｎがゼロに設定される。ステップＳ１３で最初の語トークンが読込まれ、ステップＳ１４でその語トークンのカウントが増分される。ステップＳ１５で語トークンがその言語の累算器テーブルに存在するか否かが判定される。勿論、最初の語トークンの場合がそうであるように、語トークンが累算器テーブルに存在しない場合は、ステップＳ１６で、言語に含まれる語の頻度を１として、すなわちｍ＝１として、当該語トークンが累算器テーブルに追加される。語トークンが累算器テーブル内にあるものと判定されると、ステップＳ１７でその言語に含まれる語の頻度を表わすｍのうちの前記語トークンに対応するｍが１つ加算される。
【００７９】
ステップＳ１８で、語トークンが全体テーブルに存在するか否かが判定される。語トークンが存在しない場合は、語トークンが全体テーブルに追加され、当該語トークンに対応する頻度Ｍが１に設定される。全体テーブルに語のトークンが存在する場合は、語のトークンの頻度ＭがステップＳ２０で増分される。次にステップＳ２１で、他に語トークンがあるか否かが判定され、ある場合には処理はＳ１３に戻って次の語トークンが読出される。ある言語の語トークンの全てが読出されたとステップＳ２２で判定された場合は、トレーニング・データを読出すべきそれ以上の言語があるか否かが判定される。更に別の言語向けにトレーニング・データを読出すべき場合は、プロセスはＳ１１に戻る。当該言語向けにそれ以上のトレーニング・データがない場合は、頻度ｍ、Ｍ、ｎ、およびＮの値は全て決定されており、そこでプロセスは確率を判定するプロセスに進むことができる。
【００８０】
図６ｂに示したステップＳ２３からステップＳ２９までのステップは全体テーブル内の各々の語トークンについて繰り返される。ステップＳ２４で、言語に含まれる語トークンの全頻度（Ｍ）が１０未満であるか否かが判定される。そうである場合は、ステップＳ２５でｐ（ｍ）が０．５に設定され、ステップＳ２６で式（１１）を用いて全体テーブル内の語トークンの確率が計算される。Ｍが１０未満ではない場合は、ステップＳ２７で全体テーブル内の語トークンの確率がＭ／Ｎから計算される。次にステップＳ２８でＭ＝０である場合の全体テーブル内の語のトークンの確率が下記の式（１３）により計算される。
【００８１】
【数１３】
0003950535.tif 000014
【００８２】
次にステップＳ２４からＳ２８が全体テーブル内の語の各々トークンについて反復されて確率値ｐL（ｔ）、ｐB（ｔ）およびｐH（ｔ）が算出される。
【００８３】
次に処理は図６ｃに進み、そこで各累算器テーブル内の各々の語のトークンの確率が計算される。ステップＳ３１からＳ３８は１つの累算器テーブル内の各語トークンについて反復され、ステップＳ３０からＳ４１が各累算器テーブルについて反復される。ステップＳ３２で、ｍが１０未満であるか否かが判定され、そうである場合は、ステップＳ３３でｐ（ｍ）＝０．０２５、０．５および０．９７５の場合に関して低確率、基本確率、および高確率がそれぞれ下記の式（１４）によって計算される。
【００８４】
【数１４】
0003950535.tif 000015
【００８５】
ｍが１０未満でない場合、ステップＳ３４でｍが１０００００未満であるか否かが判定される。
【００８６】
ステップＳ３４でｍが１０００００未満である場合は、ステップＳ３５で基本確率が式（３）によって計算され、低確率が式（８）によって計算され、高確率が式（９）から計算される。但し、９５％の信頼性向けにｄ＝２とする。
【００８７】
ステップＳ３４でｍが１０００００未満ではないものと判定されると、ステップＳ３６で基本確率が式（３）によって計算され、低確率が下記の式（１５）によって計算される。
【００８８】
【数１５】
0003950535.tif 000016
【００８９】
更に高確率が下記の式（１６）により計算される。
【００９０】
【数１６】
0003950535.tif 000017
【００９１】
但し、９５％の信頼性向けにｄ＝２とする（式（１５）と式（１６）は式（５）および式（６）から導出されたものである）。
【００９２】
ステップＳ３７で、ステップＳ３３、Ｓ３５またはＳ３６で示した確率値ｐL、ｐBおよびｐHがそれぞれステップＳ２６またはＳ２７で計算されたｐL（ｔ）、ｐB（ｔ）およびｐH（ｔ）で除算される。
【００９３】
ステップＳ３９で、ｍ＝０の場合の語トークンにおける確率ｐB（ｔ｜ｌ）、ｐL（ｔ｜ｌ）、およびｐH（ｔ｜ｌ）が、Ｍ＝０のときのｐ（ｔ）を用いて、下記の式（１７）の如く計算される。
【００９４】
【数１７】
0003950535.tif 000018
【００９５】
次にステップＳ４０で確率がテーブルに記憶され、ステップＳ４２でトレーニング手順が終了する。
【００９６】
図６ｂおよび図６ｃでは確率計算のための頻度範囲を決定するためにＭとｍに特定の値が用いられているが、任意の適宜の値を選択することができる。図６ｃに示すように、ステップＳ３４では高頻度範囲のしきい値としてｍに設定される値は１０００００である。このように、実際には高頻度範囲の計算は用いられない。しかしながら、計算コストが不足するような場合もあり、その場合には減少した頻度のトークンにも高頻度計算を行ってもよい。
【００９７】
図６ａ、図６ｂおよび図６ｃでは識別のトレーニング手順を説明したが、これらの変形も可能である。第１に、必ずしも二項分布を適用する必要はない。これはトークンが独立事象として取り扱われるという仮定に基づいた言語識別問題におけるデータに適している。同様の分類子が適用される他の状況では、他の確率分布の方がより適している場合もあろう。キーポイントは信頼範囲を計算し、かつ分布の特徴に応じて必要な場合には近似評価からより正確な評価に切換えることである。
【００９８】
第２に、同じ手順を用いて、前述の基本確率だけではなく全体的な分布ｐ（ｔ）の信頼間隔を計算することができる。その場合にはベイズの法則にもとづく計算はｐ（ｔ）とｐ（ｔ｜ｌ）の双方を考慮に入れる必要がある。
【００９９】
最後に、確率を評価する他の方法を用いることもできよう。可能性の１つは特に出現頻度の評価を修正するように設計されていて、トレーニング・データがサンプルであっても構わないグッド−チューリング評価（Good-Turing estimation）である。“簡単なグッド−チューリング”（ＳＧＴ）と呼ばれるこの技術の実際的な実施については、ＷＡ．ゲール、Ｓ．サムソン共著の論文「簡単なグッド−チューリング評価」（定性言語学ジャーナル第２巻、第３部２１７〜２３７ページ）に詳細に記載されており、この論文では同様の問題を解決するための関連する可能性の幾つかも考察されている。前述の計算を行う前にＳＧＴを利用することにより、ｍの値を平滑化することが可能である。
【０１００】
トレーニング・データの結果は各言語の語彙辞書である。語彙辞書は言語に現れる各トークンの確率とともに、言語に関して周知のトークンの全てをリストした参照用テーブルからなっている。更に所定の言語についてトレーニング・データ内にはない何らかのトークン用に用いられるゼロ確率もある。確率が基本値を中心に最低から最高の範囲に及ぶことによって、トレーニング・データは言語の完全な記述ではなく言語のサンプルであっても構わない。
【０１０１】
ここで図７から図１４を参照して言語識別の種々の実施形態を説明する。
【０１０２】
図７および図８のフローチャートは比較器に入力される累算確率値を算出するための別の方法を示している。ステップＳ５０で累算器は初期化されてゼロに設定され、ステップＳ５１で語トークンが読出される。ステップＳ５２で確率ｐL（１｜ｔ）、ｐB（１｜ｔ）およびｐH（１｜ｔ）を得るために、語トークンが語彙辞書で探索される。ステップＳ５３で確率の対数が導入され、ステップＳ５４で確率値が加算され、各言語毎の累算確率値のセット｛ａL,ａB,ａH｝が算出される。ステップＳ５５で累算確率値｛ａL,ａB,ａH｝が比較器に送られる。ステップＳ５６で“判定実行”フラグが設定されているか否かが判定される。既に判定がなされており、フラグが設定されている場合は、処理はステップＳ５９で終了する。判定が未だなされておらず、フラグが設定されていない場合は、ステップＳ５７で入力される他の語トークンがあるか否かが判定される。他の語トークンがある場合は、処理はステップＳ５１に戻り、上記の累算プロセスを継続する。それ以上の他の語トークンがない場合は、ステップＳ５８で“入力終わり”フラグが設定され、処理はステップＳ５９で終了する。
【０１０３】
図８は補足的なステップＳ６０が設けられている点で図７とは異なっている。図８の流れのステップＳ５７において、読み出されるべきそれ以上の語トークンがある場合には、ステップＳ６０で“累算器使用不能”フラグが設定されているか否かが判定される。図１２を参照して後述するように、このフラグは語トークンが属する言語である公算がない言語について設定されることができる。累算器使用不能フラグが設定されている場合は、処理はステップＳ５９で終了し、そうではない場合はステップＳ５１で他の語トークンが読出される。
【０１０４】
図９から図１３のフローチャートは累算器の出力から言語を識別するための比較器の別の動作方法を示している。
【０１０５】
図９では、ステップＳ６１で累算確率のセット｛ａL,ａB,ａH｝が累算器から読出される。ステップＳ６２で、累積確率のセット｛ａL,ａB,ａH｝が基本値ａBの高い順に選別される。ステップＳ６３で基本値がしきい値以上であるか否かが判定される。最高の基本値がしきい値以上である場合は、ステップＳ６４で最高の基本値ａBを有するセット内の低い値ａLが、次に高い基本値ａBを有するセット内の高い値ａH以上であるか否かが判定される。そうである場合は、ステップＳ６５で“判定実行”フラグが設定され、ステップＳ６６で最高の累算確率基本値ａBを有する言語が出力され、プロセスはステップＳ６７で終了する。ステップＳ６４で最高の基本値ａBを有するセット内の低い値ａＬが、次に高い基本値ａBのセット内の高い値ａH以上ではないものと判定されると、ステップＳ６８で“入力終わり”フラグが設定されているか否かが判定される。設定されている場合は、この方法では依然として最高の累積確率基本値ａBを有する言語がステップＳ６６で出力される。“入力終わり”フラグが設定されていない場合は、プロセスはステップＳ６１に戻り、次の累積確率のセット｛ａL,ａB,ａH｝が読み出される。また、ステップＳ６３で最高の基本値ａBがしきい値未満であることが判定されると、ステップＳ６３で“入力終わり”フラグが設定されているか否かが判定される。“入力終わり”フラグが設定されている場合は、最高の累積確率基本値ａBを有する言語がステップＳ６６で出力され、設定されていない場合は処理はステップＳ６１に戻る。
【０１０６】
図９のプロセスの実行は可能であるが、この処理では、別の言語と確率が重複する場合、すなわち最高の基本確率の言語が明確ではない場合に、言語の出力を妨げるという利点が得られない。
【０１０７】
図１０では、ステップＳ６８でしきい値を越えてはいるが、依然として確率が相互に重複しており、“入力終了”フラグが設定されている場合は、ステップＳ６９で最高の基本値ａBを有する言語と、この最高の基本値ａBを有する言語の低い確率値よりも大きい値を持つ高い確率値を有する言語とが出力される。
【０１０８】
図１１では、ステップＳ６３でしきい値を超えず、ステップＳ７０で“入力終了”フラグが設定されている場合に、ステップＳ７１で判定が不能であり、処理がステップＳ６７に戻る好適な方法が示されている。ステップＳ６３でしきい値を超え、ステップＳ６４で言語の確率が重複し、かつステップＳ６８で“入力終了”フラグが設定されている場合には、ステップＳ６９で最高の基本値ａBを有する言語、および最高の基本値ａBを有する言語の低い値ａLより大きい値の高い値ａHを有する言語が出力される。また、ステップＳ６３でしきい値を超え、ステップＳ６４で重複が示されない場合は、ステップＳ６５で“判定実行”フラグが設定され、ステップＳ６６で最高の累積確率基本値ａBを有する言語が識別された言語として出力される。
【０１０９】
この図１１の実施形態では、少なくともしきい値を超えるまでは言語を識別することができない。入力データの終端で依然として１つ以上の累積確率値に重複がある場合は、これらの言語は出力され、ユーザは出力された言語からマニュアルで言語を選択することができる。これに対して、しきい値を超え、確率の重複がない場合は、言語を識別することができる。
【０１１０】
図１４ａ、図１４ｂおよび図１４ｃは４つの言語（英語、フランス語、ドイツ語またはイタリア語）のいずれか１つの中に存在し得るＯＣＲデータから語トークンを順次読出す間のプロセスを図示している。図１４ａでは、累積確率はしきい値に達しておらず、従って言語は識別されない。図１４ｂでは言語が英語である確率はしきい値を超えているが、言語がフランス語やイタリア語である確率は依然として重複している。この時点でそれ以上のデータがなくなった場合は、これらの３つの言語を入力データが属する可能性がある言語として識別されるであろう。図１４ｃでは、言語が英語である確率が他の言語である確率と分離されており、従ってこの時点で入力データが属する言語を英語であると識別できることが分かる。
【０１１１】
図１２は、ステップＳ６３でしきい値を超えているものと判定され、しかしステップＳ６４で確率が明確ではない場合、ステップＳ７２で最高基本値ａBと他の各セットの基本値ａBとの差がしきい値以上であるか否かが判定される別の実施形態を示している。そうである場合は、ステップＳ７４でしきい値範囲外の基本値ａBを有する累積器に関して“累積器使用不能”フラグが設定される。このようにして、幾つかの言語の公算が最も高い場合、最も公算が低い言語用の累積器が使用不能にされることによって、それらの言語を処理対象から有効に除去する。従って、それによって公算が最も高い言語についてだけ累算が必要であるので、処理の必要性が軽減される。
【０１１２】
図９から図１２では、ステップＳ６３で用いられるしきい値は絶対しきい値である。しかし、しきい値は図１３に示すように相対しきい値であってもよい。図１３では、ステップＳ７５で、最高の基本値ａBを有するセット内の低い値ａLが、次に高い基本値ａBを有するセット内の高い値ａH以上であり、その差がしきい値以上であるか否かが判定される。そうである場合は、ステップＳ６５で“判定実行”フラグが設定され、ステップＳ６６で最高の累積確率基本値ａBを有する言語が出力される。
【０１１３】
このように、図１３はステップＳ６３およびＳ６４とステップＳ７５とが入れ代わっていることを除いては図９で示した処理と同様である。図１３のステップは、ステップＳ６８の肯定出力をステップＳ６９に入力できるという点で図１０と同様の態様に修正することができよう。すなわち、データが終了すると、最高の基本値ａBを有する言語、および最高の基本値ａBを有する言語の低い値ａL以上の高い値ａHを有する言語が出力される。あるいは、ステップＳ６８の否定出力によりステップＳ７１の結果、すなわち判定不能になることもあろう。
【０１１４】
このように、絶対しきい値、または差分しきい値のいずれかを設定でき、その結果、言語を判定、または識別できず、または幾つかの可能性がある言語を識別して、ユーザが手動的に言語を選択できるような多くの異なる方法がある。
【０１１５】
この技術の経験的な評価で、１８の言語が欧州コーバス・イニシアチブのＣＤ−ＲＯＭ１から抽出され、１行から２０００行のテキストを含むファイルに分割され、２０００行のファイルが１つと、２００行のファイルが１つと、それぞれ１行、５行、１０行および２０行の２５のファイルとして分散された。トレーニング・データとして２０００行および２００行のファイルが用いられ、残りのファイルはテスト・データとして用いられた。ファイル内のテキストは走査された画像から抽出されたトークンをシミュレートするために、シブン＆レーナー氏の技術と同じマッピングを用いて、語形トークンにマッピングされた。トークンは空白スペース文字で分離された文字列として定義された。それによって句読点は語の直ぐ後にづづく場合は語の一部として扱われ、その結果、データ内のノイズがある程度シミュレートされる。識別アルゴリズムは各テスト・ファイルで行われ、その結果は４つのカテゴリーの１つに分類された。
【０１１６】
１．単一言語である限定的な、正しい判定。
２．言語の限定的な判定ではないが、入力の終了時に最高の評価の言語が正しい判定である。
３．終了時に最高の評価の言語が正しい判定ではない、限定的ではない判定。
４．限定的ではあるが、その単一の言語が正しくない判定。
【０１１７】
最初の２つ（上記の１及び２）の数字の合計を総テスト数と比較すると、精度の数値が得られる。最初と最後（上記の１と４）の数字の合計を総数と比較すると、再現度の数値、すなわち限定的な判定に達したテスト数が得られる。
【０１１８】
しきい値Ｓがテキストの０、５、１０および１４である場合の１行、５行、１０行、２０行および全ての行を有するデータについての結果は表１および表２、および図１５および図１６に示されている。
【０１１９】
【表１】
0003950535.tif 000019
【０１２０】
【表２】
0003950535.tif 000020
【０１２１】
表、およびグラフから、しきい値Ｓが大きくなると精度が高まるが、再現度が低くなることが分かる。従って、Ｓの最適な値として、高率の再現率を確保しつつ、データの取り得る長さに対して合理的な精度をもたらす値を選択する必要がある。
【０１２２】
このように、前述の実施形態の説明から、本発明はＯＣＲデータ用の言語の識別に最適であることがわかる。しかし、この方法は音声認識データにも同様に有効である。システムに順次入力できるエレメントまたはトークンを得るためにデータの特徴を抽出するだけでよい。
【０１２３】
この技術は例えばＡＳＣＩＩから読み出し可能なコンピュータ内のテキストに直接適用することができる。このようなテキストは圧縮コード化して、入力の数を縮減し、確率分布を圧縮することもでき、エレメントとしてシステムに直接入力することもできる。言い換えると、システムへの入力は単にＡＳＣＩＩ内の語からなり、語彙辞書は語のテーブルと、言語内で語が出現する確率とからなっている。
【０１２４】
入力システムとして用いられるべきデータの特徴、もしくはエレメントは優れた判定をもたらす特徴もしくはエレメントとして識別される必要がある。
【０１２５】
本発明では、エレメントは順次入力されなければならないが、エレメントを順次入力する順序は重要ではない。
【０１２６】
これまでの実施形態では語彙辞書は言語の為の語彙辞書であるが、テキストを主題分類に分類するための語彙辞書を用いることもできる、例えば詩、法律、または科学のような主題別の語彙辞書でもよい。それによってソフトウェアは、異なる主題について異なるライブラリを利用することができる。また、文書の異なる部分を異なるライブラリを用いて処理することもできる。
【０１２７】
ここで図１７ａ〜図１７ｄおよび図１８を参照して本発明の別の実施形態を説明する。この実施形態は文書中のテキストの形状またはレイアウトを識別することによって文書の種類を識別することを指向している。図１７ａから図１７ｄは文書上のテキストの段落の異なる構成を示している。テキストの段落は例えばページ上の位置によって簡単にコード化することができる。例えば、右、左および中央（Ｒ、ＬおよびＣ）の簡単なエレメントを用いてテキストの段落の位置を示すことができる。このように、図１７ａはＲ、Ｌ、Ｃとコード化され、図１７ｂはＣ、Ｃと、また、図１７ｃはＣ、Ｃ、Ｃと、また図１７ｄはＬ、Ｒとコード化することができる。
【０１２８】
このように多くのページからなる文書を簡単な文書ページ・コードによって識別することができる。例えば、図１７ａは一般的な手紙のレイアウトである。
【０１２９】
図１８は本発明の一実施形態に基づく文書認識システムの機能図である。文書の特徴が形状トークナイザ（Shape tokeniser）３０によって抽出されて、形状トークン（shape tokens）が生成され、これが形状確率ライブラリ３１ａ、３１ｂ、３１ｃ…３１Ｌ（Shape probability library 1-L）に入力される。形状確率ライブラリ３１ａ、３１ｂ、３１ｃ…３１Ｌは形状トークンの所定の確率テーブルを含んでいる。各形状トークンの確率は形状確率ライブラリ３１ａ、３１ｂ、３１ｃ…３１Ｌからそれぞれの累算器３２ａ、３２ｂ、３２ｃ…３２Ｌ（Accumulator）に送られ、そこで確率が累算される。次に、累算確率は累算器３２ａ、３２ｂ、３２ｃ…３２Ｌから比較器（Comparator）３３に送られ、そこで累積確率が比較されて、文書の分類を識別できるか否かが判定される。ＯＣＲデータの言語識別に関連して説明したトレーニング・プロセスおよび識別プロセスは文書識別にも等しく応用できる。
【０１３０】
上記の実施形態の説明から明らかであるように、本発明は、少なくとも１つを各分類の中に見出すことができる多数の特徴を備えたデータが属する分類を識別するためのデータ処理に応用できる。
【０１３１】
これまで本発明を特定の実施形態を参照して説明してきたが、本願の特許請求の範囲に記載の本発明の範囲から逸脱することなく修正が可能であることが専門家には明らかであろう。
【０１３２】
【発明の効果】
これまで説明してきたように、データの特徴が順次解析され、その分類が識別され、出力されるので、迅速な識別プロセスが可能であり、また、識別された分類の判定は確率しきい値を超えた場合だけ出力されるので、識別の信頼性も高い。
【図面の簡単な説明】
【図１】本発明の１実施形態に基づくデータ処理システムの概略図である。
【図２】図１のデータ処理システムの構成の概略図である。
【図３】本発明の１実施形態に基づくデーシ処理のための基本的ステップのフローチャートである。
【図４】本発明の１実施形態に基づくデーシ処理システムの概略機能図である。
【図５】本発明の１実施形態に基づく言語識別システムの概略機能図である。
【図６ａ】図５の言語識別システムの学習段階を示したフローチャートである。
【図６ｂ】図５の言語識別システムの学習段階を示したフローチャートである。
【図６ｃ】図５の言語識別システムの学習段階を示したフローチャートである。
【図７】本発明の１実施形態に基づく図５の語彙辞書と累算器の動作のフローチャートである。
【図８】本発明の別の実施形態に基づく図５の語彙辞書と累算器の動作のフローチャートである。
【図９】本発明の第１実施形態に基づく図５の比較器の動作のフローチャートである。
【図１０】本発明の第２実施形態に基づく図５の比較器の動作のフローチャートである。
【図１１】本発明の第３実施形態に基づく図５の比較器の動作のフローチャートである。
【図１２】本発明の第４実施形態に基づく図５の比較器の動作のフローチャートである。
【図１３】本発明の第５実施形態に基づく図５の比較器の動作のフローチャートである。
【図１４ａ】未だしきい値を超えておらず、一意的な言語を識別できない、言語識別のための累積確率の概略図である。
【図１４ｂ】１つの言語である確率がしきい値を超えているが、未だ一意的な言語を識別できない、言語識別のための累積確率の概略図である。
【図１４ｃ】しきい値を超え、一意的な言語を識別可能である言語識別のための累積確率の概略図である。
【図１５】異なるテスト・データのセットについてしきい値を変更した場合の識別精度を示したグラフである。
【図１６】異なるテスト・データのセットについてしきい値を変更して言語を識別するシステムの能力を示したグラフである。
【図１７ａ】文書のページにおけるテキストレイアウトの概略図である。
【図１７ｂ】文書のページにおけるテキストレイアウトの概略図である。
【図１７ｃ】文書のページにおけるテキストレイアウトの概略図である。
【図１７ｄ】文書のページにおけるテキストレイアウトの概略図である。
【図１８】文書識別システムの概略機能図である。
【符号の説明】
１    コンピュータ
２    スキャナ
３    フロッピー・ディスク
４    レーザ・プリンタ
１０  表示装置
１１  中央処理装置
１２  ＲＯＭ
１３  ＲＡＭ
１４  バス
１５  出力装置
１６  記憶装置
１７  キーボード
２１  ライブラリ
２２  累算器
２３  比較器
２４  トークナイザ
２５  語彙辞書
２６  累算器
【図１】
0003950535.tif 000021
【図２】
0003950535.tif 000022
【図３】
0003950535.tif 000023
【図４】
0003950535.tif 000024
【図５】
0003950535.tif 000025
【図６ａ】
0003950535.tif 000026
【図６ｂ】
0003950535.tif 000027
【図６ｃ】
0003950535.tif 000028
【図７】
0003950535.tif 000029
【図８】
0003950535.tif 000030
【図９】
0003950535.tif 000031
【図１０】
0003950535.tif 000032
【図１１】
0003950535.tif 000033
【図１２】
0003950535.tif 000034
【図１３】
0003950535.tif 000035
【図１４ａ】
0003950535.tif 000036
【図１４ｂ】
0003950535.tif 000037
【図１４ｃ】
0003950535.tif 000038
【図１５】
0003950535.tif 000039
【図１６】
0003950535.tif 000040
【図１７ａ】
0003950535.tif 000041
【図１７ｂ】
0003950535.tif 000042
【図１７ｃ】
0003950535.tif 000043
【図１７ｄ】
0003950535.tif 000044
【図１８】
0003950535.tif 000045