JP3309174B2 - 文字認識方法及び装置 - Google Patents
文字認識方法及び装置Info
- Publication number
- JP3309174B2 JP3309174B2 JP11592695A JP11592695A JP3309174B2 JP 3309174 B2 JP3309174 B2 JP 3309174B2 JP 11592695 A JP11592695 A JP 11592695A JP 11592695 A JP11592695 A JP 11592695A JP 3309174 B2 JP3309174 B2 JP 3309174B2
- Authority
- JP
- Japan
- Prior art keywords
- word
- speech
- character
- probability
- triplet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Character Discrimination (AREA)
- Machine Translation (AREA)
Description
文字を認識する文字認識方法及び装置に係り、特に、光
学的文字認識装置(OCR)が出力する文字認識誤りを
含む日本語テキストに対して、統計的言語モデルとN-be
st探索アルゴリズムを用いて入力文を構成する単語の表
記と品詞を精度良く求められるようにした文字認識方法
及び装置に関する。
文字の連接情報を利用する方法、(2)単語辞書との照
合検査、および、単語間の文法的接続検査を行なう方
法、の二つに大別できる。
「文字連接情報を用いた読み取り不能文字の判定処理−
文字認識への応用−」信学論Vol.J68-D No.1,pp.64-71,
1985)は、文字連接表(binary n-gram table)または文
字連接確率(n-gram probability) を用いて、隣接する
文字候補の連接の可否(または尤もらしさ)を判定する
ことにより、誤りの検出・訂正を行なう。
現が容易で、かつ、比較的大きな認識性能の向上が達成
できる。 (2) 単語辞書との照合検査及び、単語間の文法的接
続検査を行う方法 単語辞書との照合検査と単語間の文法的接続検査を行な
う方法(例えば、高尾・西野「日本語文書リーダ後処理
の実現と評価」情処論Vol.30 No.11,pp.1394-1401,198
9)は、文字認識の候補文字を組み合わせて構成される
単語を単語辞書から検索しながら単語間の接続を検査
し、文頭から文末まで到達する単語列の中で最適なもの
を正解文字列とする。
である「文字の連接情報を利用する方法」は、入力文を
単なる文字列として扱うので、単語を構成しない文字列
や、文法的に正しくない文字列を許容することが多いと
いう問題点がある。
語辞書と単語接続情報を利用する方法」は、(a)辞書
に登録されていない単語が入力文中に存在したり、
(b)正解文字が候補文字に含まれていない場合に、性
能が大きく低下するという問題点がある。
しては、未登録語テンプレートを使って未登録語を発見
し、文字の連接確率を使って文字列を限定する方法があ
る(前述の高尾・西野の論文)。しかし、この未登録語
テンプレートは発見的(heuristic)に人手で作成せねば
ならず、網羅性や移植性に問題がある。
の対処法としては、候補文字補完と単語類似検索があ
る。候補文字補完とは、あらかじめ文字認識が誤りそう
な類似文字の組を定義しておき、文字認識結果の候補文
字に対して無条件にこの類似文字を候補として付け加え
る方法である(杉村「候補文字補完と言語処理による漢
字認識の誤り訂正処理法」信学論Vol.J72-D-II No.7,p
p.993-1000,1989) 。候補文字補完は、補完した文字が
必ずしも正解文字を含むとは限らないのに、誤り訂正に
必要な計算量を一様に大きく増加させるという問題があ
る。
に、完全に一致したものだけではなく類似した(部分的
に一致した)単語も検索する方法である(例えば、Wagn
erとFischer "The String-to-String Correction Probl
em" Jounal of ACM Vol.21 No.1 pp.168-173,1974)。類
似検索は、英語のように長い単語が多い(平均約5文
字)言語のスペルチェックなどでは有効であるが、日本
語のように短い単語が多い(平均約2文字)言語では、
あまり有効ではない。例えば、単語の類似度を一致した
文字数で計測する場合、一文字が一致する二文字単語の
組は非常に多く存在するし、すべての一文字単語の組は
同じ類似度を持つという問題がある。
検査と単語間の文法的接続検査を行なう方法では、候補
文字の組合せから得られる(少なくとも文法的には正し
い)単語列は、一般に複数存在する。そこで、何らかの
評価値(コスト)によって単語列に順位を与える必要が
ある。また、自動的な誤り訂正によって認識率が100
%になることはあり得ないので、システムが誤りらしい
部分を提示し、オペレータに確認させる必要がある。
の遷移確率(bigram)、単語を構成する各文字の正解確
率の積をコストとし、単語の組合せをビーム探索するこ
とにより、単語列に順位を与え、誤りの可能性がある部
分を指摘する方法(伊東・丸山「OCR入力された日本
語文の誤り検出と自動訂正」情処論Vol.33 No.5,pp.664
-670,1992)がある。この方法は、単語の組合せをビーム
探索しているので、第2位以下の候補の順位は必ずしも
正しいとは保障されないという問題点がある。
定できない、 2.正解文字が候補文字に含まれていない場合、正解単
語を提示できない、 3.最も尤もらしい順に、正解候補を提示できない、 という問題点がある。
で、入力文が辞書に登録されていない単語を含む場合
や、正解文字が候補文字に含まれていない場合でも、形
態素解析候補を最も尤もらしい順番に提示でき、かつ高
い精度を持つ文字認識方法及び装置を提供することを目
的とする。
する単語列と品詞列を出力する文字認識方法において、
入力文の各文字位置において文字認識スコアの高い順番
に文字候補を生成し、 文字候補に含まれる部分文字列の
中から、品詞出現確率と品詞別単語長と単語内文字三つ
組確率から、単語を構成する文字列とその品詞の同時確
率を与える単語モデルに基づいて、確率が高い順番に文
字列の長さと品詞を単語仮説として求め、 文字候補に含
まれる部分文字列に類似した単語を、ある単語の前後の
文字列と文内文字三つ組確率から、その単語の前後の文
字列に類似した単語を求める類似語モデルに基づいて、
確率が高い順番に文字列を検索し、単語仮説に付与し、
3つの品詞と出現確率の組である品詞三つ組確率と品詞
別単語出現確率を用いて文字列を構成する単語列と各単
語に付与された品詞の同時確率を与える品詞付けモデル
に基づいて、単語仮説毎の確率が高い順番に形態素解析
候補を求め、 形態素解析候補を最も尤もらしい順番で提
示する。
列を出力する文字認識装置であって、 入力文の各文字位
置において文字認識スコアの高い順番に文字候補を生成
する文字候補生成部と、 3つの品詞と出現確率の組を格
納する品詞三つ組確率テーブルと、 品詞と表記と確率を
格納する品詞別単語出現確率テーブルと、 品詞三つ組確
率テーブルの品詞三つ組確率と、品詞別単語出現確率テ
ーブルの品詞別単語出現確率を用いて文字列を構成する
単語列と各単語に付与された品詞列の同時確率を与える
品詞付けモデルと、 品詞と品詞出現確率から構成される
品詞出現確率テーブルと、 品詞と該品詞の単語の平均文
字列長である品詞別単語長確率から構成される品詞別単
語長テーブルと、 3つの文字とその単語内出現確率であ
る単語内文字三つ組確率から構成される単語内文字三つ
組確率テーブルと、 品詞出現確率テーブルの品詞出現確
率と、品詞別単語長テーブルの品詞別単語長確率と、単
語内文字三つ組確率テーブルの単語内文字三つ組確率に
基づいて単語を構成する文字列とその品詞の同時確率分
布を与える単語モデルと、 文字候補に含まれる部分文字
列の中から、単語モデルに基づいて確率が高い順番に、
文字列の長さと品詞を単語仮説として求める単語仮説生
成手段と、 3つの文字と文内出現確率である文内文字三
つ組み確率から構成される文内文字三つ組確率テーブル
と、 ある単語の前後の文字列と、文内文字三つ組確率テ
ーブルの文内文字三つ組確率から、その単語の前後の文
字列に類似した単語を求める類似語モデルと、 文字候補
に含まれる部分文字列に類似した単語を、類似語モデル
に基づいて確率が高い順番に検索する類似語検索手段
と、 類似語検索手段手段で検索された単語を単語仮説に
付与し、品詞付けモデルに基づいて、確率が高い単語仮
説の順番に形態素解析候補を求める形態素解析手段と、
形態素解析手段で求められた形態素解析候補を最も尤も
らしい順番で提示する手段とを有する。
率から構成される品詞付けモデル、品詞出現確率と品詞
別単語長と単語内文字三つ組確率から構成される単語モ
デル、文内文字三つ組を用いて二つの単語の類似度を与
える類似度モデル、確率が高い順番に任意の個数の形態
素解析候補を求める形態素解析手段、単語モデルに基づ
く単語仮説生成手段、類似語モデルに基づく類似語検索
手段を用いて、入力文が辞書に登録されていない単語を
含む場合や、正解文字が候補文字に含まれていない場合
でも、辞書に登録されていない入力文中の単語の表記と
品詞を正しく同定し、正解文字が候補文字に含まれてい
ない場合でも正確単語を提示し、最も尤もらしい順に、
単語列と品詞列の組を提示することが可能である。
装置の構成図である。まず、図3を参照して説明する。
同図に示す日本語文字認識装置は、文字候補生成部1、
前向きDP探索部2、最適経路スコアテーブル3、後向
きA* 探索部4、単語仮説生成部5、品詞出現確率テー
ブル6、品詞別単語長テーブル7、単語内文字三つ組確
率テーブル8、類似語検索部9、単語テーブル10、文
内文字三つ組確率テーブル11、品詞三つ組確率テーブ
ル12、品詞別単語出現確率テーブル13より構成され
る。
光学的に認識し、文字マトリックスを生成する。前向き
DP探索部2は、入力文の文頭から文末へ一文字ずつ進
む動的計画法(Dynamic Programming)を用いて、単語列
と品詞列の同時確率、すなわち、品詞三つ組確率と品詞
別単語出力確率と文字認識確率の積を最大化するよう
な、入力文の単語分割と品詞付与の組を求める。
単語出現確率テーブル13は、それぞれ、品詞三つ組確
率および品詞別単語出力確率を格納する。この前向きの
動的計画法では、文頭からある単語に至るまでの単語列
と品列の同時確率を最大化する最適部分経路(単語列と
品詞列の組)の確率を、最後の単語の表記と最後の二つ
の単語の品詞の異なる組合せ毎に計算し、最適経路スコ
アテーブル3に記録する。
において、その文字位置の文字候補のリストから一文字
ずつ選ぶことにより構成される文字列を、文字マトリッ
クスに含まれる文字列と呼ぶことにする。前向きDP探
索部1では、文字マトリックスのある文字位置から始ま
る全ての部分文字列を、品詞別単語出現確率テーブル1
3の単語表記と照合し、単語候補として提案する。
いて、入力文のある文字位置から始まる単語候補を探索
する際に、単語が辞書に登録されていない場合に対処す
るために、品詞出現確率テーブル6、品詞別単語長テー
ブル7、単語内文字三つ組確率テーブル8の値を用い
て、単語の表記と品詞と品詞別単語出現確率の組である
単語仮説を、単語の表記と品詞の同時確率が大きい順に
予め定めた個数だけ生成する。
において、入力文のある文字位置から始まる単語候補を
検索する際に、正解文字が文字候補のリストに存在しな
い場合に対処するために、単語テーブル10と文内文字
三つ組確率テーブル11の値を用いて、文字マトリック
スに含まれるモジュール列に類似した単語を検索し、単
語仮説に付け加える。
2で計算された最適経路スコアテーブル3を入力とし、
文末から文頭へ一単語ずつ進むA* アルゴリズムを用い
て、品詞三つ組確率と品詞別単語出力確率と文字認識確
率の積が最も大きいものから順番に一つずつ形態素解析
候補を求める。
る「文字認識誤り訂正の情報理論的解釈」について述
べ、続いて、文字認識誤りモデル、品詞付けモデル、前
向きDP探索、後向きA* 探索、単語モデル、単語仮説
生成、類似語モデル、類似語検索の順に説明する。
ズの定理より、次の関係が成り立つ。
に、最も尤もらしい文字列C”は、P(C)を最大にす
る文字列である。
ル、P(C)を言語モデルと呼ぶことにする。以下で
は、まず、本発明で用いる文字認識モデルと言語モデル
について述べる。 文字認識モデル 文字認識モデルP(X|C)は、入力文字列Cを構成す
る各文字ci が文字認識結果Xを構成する各文字xi に
認識される確率の積から計算できる。
ョンマトリックスと呼ばれ、文字認識装置の入力と出力
を大量に比較することにより求められる。コンフュージ
ョンマトリックスP(xi |ci )の作成には、大きな
労力を必要とするので、本発明では、これを正解文字の
順位の分布で近似した。すなわち、入力文のi番目の文
字ci に対する第j候補をxijとするとき、xijが正解
文字である確率P(xij)により、P(xij|ci )を
近似する。第1候補の正解率をpとすれば、P
(xij)、次のような幾何分布で近似できる。
るのは、第1候補の正解率と、第2候補以下が急速に信
頼できなくなるという傾向を近似するためである。 品詞付けモデル(言語モデル) 文字列C=c1 c2 …cm から構成される入力文が、単
語列W=w1 w2 …w n に分割され、品詞列T=t1 t
2 …tn が付与されるとする。本発明では、文字列Cの
確率P(C)を、文字列Cの最も尤もらしい形態素解析
候補の確率P(W,T)で近似する。
語列と品詞列の同時確率P(W,T|C)を最大化する
単語列と品詞列の組(W”,T”)を求める問題であ
る。実際にはCはすべてに共通なので、同時確率P
(W,T)を最大化するものを求めればよい。
フモデルで近似する。すなわち、品詞三つ組確率P(t
i |ti-2 ,ti-1 )と品詞別単語出現確率P(wi |
ti)を用いて、次式で表す。
化する文字列Cを求めればよい。これが、本発明で、文
字列Cの確率P(C)を、文字列Cの最も尤もらしい形
態素解析候補の確率P(W,T)で近似する理由であ
る。図4は、品詞三つ組確率の一例である。品詞三つ組
確率のデータは、三つの品詞とその出現確率の四つの要
素から構成されるリスト構造である。
る。品詞別単語出現確率のデータは、品詞、表記、確率
の三つの要素から構成されるリスト構造である。例え
ば、サ変名詞の“挨拶”の出現確率は、「0.0004101722
7235438886773 」であることを示す。
算する手順を示す。最初に、前向きDP探索部2で用い
られるデータ構造を説明し、次に、処理の流れを説明す
る。
リズムのためのデータ構成を示す。前向き探索では、図
6に示すようなスロットを持つ、parse とwordという二
つのデータ構造を使用する。構造体parse は部分解析を
表す。この構造体は、最適経路スコアテーブル3におい
て、単語の情報、および、文頭からその単語へ至る最適
部分経路(同時確率が最大となるような、単語列と品詞
列の組、すなわち形態素列)の情報を格納するのに用い
られる。parse.start とparse.end は、入力文における
単語の開始位置と終了位置のインデックスである。pars
e.pos は、単語の品詞で、ここでは、単語の品詞、活用
型、活用形のリストを用いている。parse.nth-order-st
ate は、この単語を含む最後の二つの単語の品詞のリス
トである。parse.prob-so-far は、文頭から現在の単語
に至るまでの最適部分経路のスコアである。
品詞別単語出現確率テーブル13において、個々の単語
の情報を格納するのに用いられる。word.form, word.po
s, word.probは、それぞれ、単語の表記、品詞、品詞別
の出力確率を表す。最適経路スコアテーブル3は、最後
の単語の開始点と終了点、および、最後の二つの単語の
品詞の組をキーとし、同じキーを持つ部分解析構造の中
で、最適部分経路スコアが最良なものを値として保持す
るテーブルである。
索部の動作を説明するためのフローチャートである。以
下では、この図7に従って、前向きDP探索部2の動作
を説明する。前向きDP探索は、入力文の先頭から始ま
り、文末方向へ一文字ずつ進む。
文の先頭に設定する。 ステップ102) 探索が文末に達したかを判断する。
もし、文末に達していれば、前向き探索を終了する。そ
うでなければ、以下の処理を各文字位置で行なう。
する全ての部分解析を最適経路スコアテーブル3から検
索し、その中の一つを現在の部分解析として選ぶ。 ステップ104) 全ての部分解析を調べたかを判定す
る。もしそうならば、ステップ112において探索を次
の文字位置へ進める。そうでなければ、以下の処理を各
部分解析について行なう。
末までの各文字位置において、文字マトリックスの中か
ら一つずつ候補文字を選ぶことにより構成される全ての
文字列の最左部分文字列と、品詞別単語出現確率テーブ
ル13の表記を照合し、完全一致する単語を全て検索す
る。そして、その中の一つを現在の単語として選ぶ。
を判定する。もしそうならば、ステップ111において
次の部分解析を選ぶ。そうでなければ、以下の処理を各
単語について行なう。 ステップ107) 現在の単語とその直前の二つの単語
の品詞三つ組確率を品詞三つ組確率テーブル12から検
索する。
かどうかを判定する。もし品詞三つ組確率が0ならば、
ステップ110において次の単語を選ぶ。もしそうでな
ければ、以下の処理を行なう。 ステップ109) まず、開始位置(parse.start)が現
在の文字位置で、終了位置(parse.end) が現在の文字位
置と現在の単語の表記の長さの和で、品詞(parse.pos)
が現在の単語の品詞であるような新しい部分解析(parse
構造) を作る。最後の二つの品詞(parse.nth-order-sta
te) はステップ108で調べた品詞三つ組の先頭要素を
取り除いたものであり、最適経路スコア(parse.prob-s
o-far)は、現在の部分解析の最適経路スコアと品詞三つ
組確率と現在の単語の品詞別単語出現確率(word.prob)
と現在の単語の文字認識確率(word.prob) の積である。
の新しい部分解析と同じキー(最後の単語の開始点と終
了点、および、最後の二つの単語の品詞の組)で既に登
録されている部分解析を検索し、これよりもスコアが良
ければ、新しい部分解析を最適経路スコアテーブル3に
登録する。
ップ106へ戻る。 ステップ111) 次の部分解析を選び、ステップ10
4へ戻る。 ステップ112) 探索を次の文字位置へ進め、ステッ
プ102へ戻る。 後向きA* 探索 後向きA* 探索部4が最も尤もらしい順に一つずつ形態
素解析候補を求める手順を示す。まず、後向きA* 探索
の概要とA* 探索に用いられるデータ構造を説明し、次
に、処理の流れを説明する。
の組であるparse 構造を、A* アルゴリズムにおけるグ
ラフのノードと考える。そして、コストとしては、確率
の対数の絶対値を用いる。これにより、確率最大の解は
コスト最小の解に対応し、確率の積はコストの和に対応
する。
(n)を考える。ヒューリスティック関数f(n)は、
現在のノードnを生成した経路に沿って、初期状態から
最終状態へ至るまでのコストの推定値を与える。初期状
態から現在のノードへ至るまでのコストを与える関数を
g(n)、現在のノードから最終状態へ至るまでのコス
トの推定値を与える関数をh(n)とすると、ヒューリ
スティック関数f(n)は次式により与えられる。
の単語(parse 構造)に至るまでの品詞三つ組確率と品
詞別単語出力確率と文字認識確率の積の対数の絶対値を
用いる。また、関数hとしては、文頭から現在の単語に
至るまでの品詞三つ組確率と品詞別単語出力確率と文字
認識確率の積の最大値の対数の絶対値を用いる。
ようなスロットを持つpathというデータ構造を定義す
る。構造体pathはA* 探索におけるグラフのノードに相
当し、現在の単語(parse 構造) 、後向き探索における
経路、および、コストに関する情報を保持する。path.p
arseは、parse 構造を格納する。path.previous は直前
のpath構造へのポインタである。path, cost-so-far
は、初期状態からのコストである。path.total-cost 初
期状態から最終状態までのコストの推定値である。
リストを用いる。リストopenは、既に生成され、ヒュー
リスティック関数が適用されているが、まだ展開されて
(調べられて)いないノード(path構造)の集合であ
る。このリストは、ヒューリスティック関数の値に基づ
く優先度付きキューになっている。リストclose は、既
に展開された(調べられた)ノードの集合である。
を生成するまで、各ステップで一つのノードを展開す
る。各ステップでは、既に生成されているが、まだ展開
されていない、最も有望なノードを展開する。すなわ
ち、選ばれたノードの後続のノードを生成し、ヒューリ
スティック関数を適用し、既に生成されていないかを検
査した後にリストopenに加える。この検査によって、各
ノードはグラフの中に一回だけ現れることが保証され
る。また、二つ以上の経路が同じノードを生成する時
は、スコアの良い方だけを記録する。
A* 探索部の動作を説明するためのフローチャートであ
る。以下では、この図8、図9に従って、後向きA* 探
索部4の動作を説明する。 ステップ201) 文末に到達した部分解析を表す(す
なわち、この部分解析をparse スロットに持つ)path構
造のリストをリストopenに代入する。また、リストclos
edには空リストを代入する。
かどうかを調べる。もし、そうならば、解が見つからな
かったので探索が失敗したことを通知して探索を終了す
る。そうでなければ、以下の処理を行なう。 ステップ203) リストopenの先頭要素を取り出して
変数bestpathに代入する。
を調べる。もし、探索が文頭に達していれば、変数best
pathが最適解であり、探索が成功したことを通知して探
索を終了する。そうでなければ、以下の処理を行なう。
また、探索は成功したが、さらに、その次に最も尤もら
しい解を求めたい場合にも、以下の処理を行なう。
closedへ挿入し、リストclosedの要素を初期状態から最
終状態までのコストの推定値の順にソートする。 ステップ206) 変数bestpathが表す部分解析の左側
に連接する全ての部分解析を最適経路スコアテーブル3
から検索し、その中の一つを現在の部分解析とする。
たかどうかを判定する。もしそうであれば、ステップ2
02へ進む。そうでなければ、以下の処理を行なう。 ステップ208) 変数bestpathから現在の部分解析へ
遷移する経路を表す新しいpath構造を作成し、これを変
数newpath に代入する。neapsth.parse には現在の部分
解析を代入し、newpath.previousにはbestpathを代入す
る。newpath.cost-so-far には、bestpath.parseへ至る
までのコストbestpath.cost-so-farと、bestpath.parse
からnewpath.parse への遷移のコストの和が代入され
る。newpath.total-costには、文末からnewpath.parse
までのコスト(newpath.cost-so-far)と文頭からnewpat
h.parse までのコストの和が代入される。
移を表すpath構造が、リストopenに含まれているかどう
かを検査する。もし含まれていなければ、ステップ21
3へ進む。含まれていれば、以下の処理を行なう。 ステップ210) 現在の部分解析への遷移を表すリス
トopenの中のpath構造を変数oldpath に代入する。
(newpath.total-cost)と変数oldpath のコスト(oldp
ath.total-cost) を比較する。もし、変数newpath のコ
ストの方が大きければ、何もせずにステップ218へ進
む。もし、変数newpath のコストの方が小さければ、ス
テップ212に移行する。
dpath を削除し、変数newpath をリストopenへ挿入した
後にコストの順にソートする。そしてステップ218へ
進む。 ステップ213) 現在の部分解析への遷移を表すpath
構造がリストclosedに含まれているかどうかを検査す
る。もし含まれていなければ、ステップ217へ進む。
含まれていれば、以下の処理を行なう。
移を表すリストclosedの中のpath構造を変数oldpath に
代入する。 ステップ215) 変数newpath のコスト(newpath.to
tal-cost) と変数oldpath のコスト(oldpath.total-co
st)を比較する。もし、変数newpath のコストの方が大
きければ、何もせずにステップ218へ進む。もし、変
数newpath のコストの方が小さければ、ステップ216
に移行する。
oldpath を削除し、変数newpath をリストclosedへ挿入
した後にコストの順にソートする。そしてステップ21
8へ進む。 ステップ217) 変数newpath をリストopenへ挿入し
た後にコストの順にソートする。そしてステップ218
へ進む。
ぶ。 単語モデル 単語モデルは、単語を構成する文字列と品詞の同時確率
分布として定義される。これは、一般性を失うことな
く、以下のように表せる。
さkの文字列である。品詞出現確率P(T)は、品詞タ
グ付きコーパスにおける品詞の相対頻度から求められ
る。品詞別単語長確率P(k|T)は、品詞Tが与えら
れた時の単語長kをポワソン分布で近似する。
文字長であり、これも品詞タグ付きコーパスから計算す
る。単語長と品詞が与えられた時の単語表記の確率P
(c1 …ck |k,T)は、以下のように、単語内文字
三つ組確率の積で近似する。
表す特別な記号である。単語内文字三つ組確率も品詞タ
グ付きコーパスから計算する。図10は、品詞出現確率
の一例である。品詞出現確率テーブル6のデータは、品
詞とその出現確率から構成されるリスト構造で表され
る。
詞別単語長テーブル7のデータは、品詞とその品詞の単
語の平均文字列長から構成されるリスト構造で表され
る。図12は、単語内文字三つ組確率の一例である。単
語内文字三つ組確率テーブル8は、三つの文字とその単
語内出現確率の四つの要素から構成されるリスト構造で
表される。ここで、“#”は単語の先頭及び末尾を表す
特別な記号である。
を含む場合に対処するために行なう。単語仮説生成部5
は、前向き探索において、入力文の各文字位置で、その
文字位置より後ろの各文字位置において、文字マトリッ
クスの中から一つずつ候補文字を選ぶことにより構成さ
れる全ての文字列の最左部分文字列の中で、(8)式に
示す単語モデルに基づいて、表記と品詞の確率が高い順
番に、単語仮説、すなわち、単語の表記(文字列と長
さ)と品詞と品詞別単語出力確率の組を、予め決めた個
数だけ生成する。
単語が文字認識誤りによって、みかけ上、辞書に登録さ
れていない単語になった場合に、単語区切りと品詞を推
定する方法としても有効である。品詞別単語出現確率
は、次の式により計算する。
力文に対して単語仮説を生成する手順を説明する。ここ
では、説明を簡単にするために、文字認識の第1候補の
文字列に対してのみ、単語仮説を生成することにする。
成部の動作を説明するためのフローチャートである。以
下では、この図13に従って、単語仮説生成部5の動作
を説明する。単語仮説生成部5は、入力文に対する文字
マトリックスの第一候補からなる文字列、および、単語
仮説を生成すべき文字位置が与えられる。
数iに代入し、単語仮説の終了点を表す変数jにi+1
を代入する。また単語仮説のリストに初期値として空リ
ストを代入する。
小さいかどうかを調べる。そうでなければ、ステップ3
10へ進む。そうであれば、以下の処理を行なう。 ステップ303) 単語仮説の長さj−1が、予め定め
た単語仮説(すなわち、未知語)の最大長より大きいか
どうかを調べる。もしそうならば、ステップ310へ進
む。そうでなければ、以下の処理を行なう。
切り記号かどうかを調べる。区切り記号とは、句
点(。)や読点(、)などの単語の一部とはなり得ない
記号のことである。もしそうならば、ステップ310へ
進む。そうでなければ、以下の処理を行なう。
iから文字位置jまでの部分文字列を単語仮説の表記と
する。 ステップ306) 予め定めた単語仮説に割り当てるべ
き品詞の集合の中から一つを選び、単語仮説の品詞とす
る。
どうかを調べる。もしそうであれば、ステップ309に
進む。そうでなければ、以下の処理を行なう。 ステップ308) まず、単語モデルに基づいて、単語
が現在の表記と現在の品詞を持つ確率を計算する。次
に、表記と品詞と確率の組から構成される単語仮説を単
語仮説リストに加え、ステップ307へ進む。
位置を一つ先に進める。 ステップ310) 得られた単語仮説のリストを確率の
大きい順にソートし、予め決められた個数の単語仮説を
選ぶ。 図14は、本発明の一実施例の単語仮説生成の例を示
す。ここでは「はい、シングルとツインと1部屋ずつで
すね。」という入力文において、「ツイン」という単語
が未知語であるとする。
の文字位置に達した際に、単語仮説の表記の候補として
は、「ツ」「ツイ」「ツイン」「ツインと」などの文字
列が考慮される。また、品詞と単語長の組合せとして
は、単語モデルに基づく確率の順に、「長さ1の記号」
「長さ1の格助詞」「長さ2の普通名詞」などが考慮さ
れる。
4の左下に示したような表記と品詞と品詞別単語出現確
率の組が求められる。もし、機能語は辞書に全て登録さ
れており、内容語のみが未知語になりうると仮定するな
らば、単語仮説として生成される品詞は、名詞や動詞な
どの内容語に限定され、図14の右下のような単語仮説
が生成される。
類似度として、本発明では、文脈に依存しない類似度と
文脈に依存した類似度の二つを考える。文脈に依存しな
い単語の類似度の尺度としては、二つの単語の表記の一
致度を用いる。同じ長さnを持つ二つの単語がc文字だ
け一致するとき、二つの単語の類似度を次式で表す。
る。この尺度は、長さ3以上の単語では非常に有効であ
る。しかし、長さ2の単語の類似検索に(12)式を用
いると、非常に多くの類似語が検索されてしまう。ま
た、長さ1の単語は(12)では類似度が定義できな
い。そこで、本発明では、短い単語については、以下に
述べる文脈に依存する類似度を、文字列としての類似度
と併用する。
は、ある単語の前後の文字列と、もう一つの単語が共起
する確率を用いる。例えば、ある長さ2の単語ci c
i+1 に対して、それが出現した文脈における直前の2文
字がci-2 ci-1 、直後の2文字がci+2 ci+3 である
とする。この時、すべての長さ2の単語si si+1 に対
して、文字列ci-2 ,ci-1 ,si ,si+1 ,ci+2 ,
ci+3 の出現確率を考え、この確率が大きいほど、単語
ci c i+1 と単語si si+1 は類似していると考える。
i+3 の出現確率は、文内文字三つ組確率から以下のよう
に計算できる。 P(ci-2, ci-1, si ,si+1, ci+2, ci+3) = P(si | ci-2, ci-1)P( si+1 | ci-1, si ) P(ci+2 | si ,si+1)P( ci+3 | si+1, ci+2) (13) 同様に、長さ1の単語ci に対しては、その前後の文字
列ci-2 ci-1 およびci+2 ci+3 と、長さ1の単語s
i が共起する確率を、類似度の尺度として用いる。
三つ組確率テーブル11のデータは、三つの文字とその
文内出現確率の四つの要素から構成されるリスト構造で
表される。
に対処するために、前向き探索において、文字認識の第
1候補の文字列に対して、ある文字位置から始まる長さ
最左部分文字列の類似語を、訂正候補として生成する。
クスの中から一つずつ候補文字を選ぶことにより構成さ
れる全ての文字列に対して類似検索を行なうことが望ま
しい。しかし、これは非常に多くの計算を必要とするの
で、ここでは、文字認識の第1候補のみを類似検索の対
象としている。
わせて、以下のようにして類似語を検索する。以下で、
単語リストとは、品詞別単語出現確率テーブル13から
表記だけを取り出し、重複を取り除いたものを表す。長
さ3以上の単語に対して類似語を検索する場合には、単
語リストの中から、文字列としての類似度c/nが予め
決めた閾値以上である全ての単語を選ぶ。
合には、まず、文字認識の第1候補の文字列に対して、
単語リストの中からちょうど1文字一致する単語si s
i+1を全て選ぶ。次に、文内文字三つ組確率テーブル1
1の確率を用いて、この単語と前後の文字列を組み合わ
せた長さ6の文字列の出現確率を計算し、この確率が大
きい順番に予め決められた個数の単語を選ぶ。
合には、まず、単語リスト中のすべての長さ1の単語s
i を取り出す。次に、文内文字三つ組確率を用いて、こ
の単語と前後の文字列を組み合わせた長さ5の文字列の
出現確率を計算し、この確率が大きい順番に予め決めら
れた個数の単語を選ぶ。
部の動作を説明するためのフローチャートである。以下
では、この図16に従って、類似語検索部9の動作を説
明する。類似語検索部9は、入力文に対する文字マトリ
ックスの第一候補からなる文字列、および、類似語を検
索すべき文字位置が与えられる。
る文字列の開始点を表す変数iを設定する。また、類似
語検索のキーとなる文字列の終了点を表す変数jをi+
1に設定する。 ステップ402) jが入力文の長さより小さいかどう
かを調べる。もしそうでなければ、処理を終了する。そ
うであれば、以下の処理を行なう。
j−iが、予め定めた類似語の最大長より大きいかどう
かを調べる。もしそうならば、処理を終了する。そうで
なければ、以下の処理を行なう。 ステップ404) 入力文のj文字目が区切り記号かど
うかを調べる。もしそうならば、処理を終了する。そう
でなければ以下の処理を行なう。
iから文字位置jまでの部分文字列を類似語検索のキー
とする。 ステップ406) 類似語検索キーの長さが2より大き
いかを調べる。もしそうならば、ステップ405へ進
む。そうでなければ以下の処理を行なう。
−iの単語を検索し、その中の一つを現在の単語として
選ぶ。 ステップ408) 全ての単語を調べたかどうかを判定
する。もしそうならば、ステップ413へ進む。そうで
なければ以下の処理を行なう。
が2であるかどうかを調べる。もしそうでなければステ
ップ411へ進む。もしそうであれば、ステップ410
において、現在の単語が類似語検索キーと2文字のうち
のどちらかちょうど1文字が一致するかどうかを調べ
る。もしそうでなければステップ412へ進む。もしそ
うならば、以下の処理を行なう。
1から文字位置iまでの文字列、現在の単語、および、
入力文の文字位置jからj+2までの文字列を連結した
長さj−i+2の文字列の出現確率を文内文字三つ組確
率テーブル11の確率を用いて計算する。
ップ408へ進む。 ステップ413) 連結された文字列の出現確率が大き
い順に予め決められた数の単語を類似語として提案す
る。 ステップ414) jに1を加え、類似語検索キーの長
さを1文字大きくする。
−iの単語を全て検索し、その中の一つを現在の単語と
する。 ステップ416) すべての単語を調べたかどうかを判
定する。もしそうであれば414へ進む。そうでなけれ
ば以下の処理を行なう。
の単語の文字列としての類似度が閾値以上であるかどう
かを判定する。もしそうでなければ、ステップ419へ
進む。もしそうであれば、以下の処理を行なう。 ステップ418) 現在の単語を類似語として提案す
る。
図17は、本発明の一実施例の長さ3以上の単語に対す
る類似語検索の例である。ここでは、入力文 「ああ、アメリカ人工知能学会ですか。」 に対する文字認識の第一候補の文字列が 「ああ、アメ川カ人工知能字会ですか:」 であるとする。
しない文字列としての類似度を用いるので、「アメ川
カ」という文字列をキーとして、単語リストの中の長さ
4の単語が類似検索され、最終的に「アメリカ」と「ア
フリカ」という単語が訂正候補として提案される。
の単語に対する類似語検索の例である。ここでは入力文
「分かりました。」に対する文字認識の第一候補の文字
列が「分かりま[た。」であるとする。長さ2以下の単
語に対しては、文字列としての類似度と文脈に依存した
類似度を組合せるので、まず、“「ま[」”という文字
列に対して、どちらかちょうど1文字が一致する単語が
単語リストから検索される。次に、“「ま[」”の前後
の文字列「かり○○た。」の中に、検索された長さ2の
単語が埋め込まれ、長さ6の文字列の出現確率が計算さ
れる。最終的には、この文字列の出現確率の大きいもの
から順に予め決められた個数の単語が、訂正候補として
提案される。
は、本発明の一実施例の文字候補生成部が生成する文字
マトリックスの例である。入力文「分かりました。」に
対する文字認識候補が、第1位から第10位まで与えら
れている。ここでは正解文字を[と]で囲んだ。従っ
て、入力文6文字中4文字は、第1候補に正解文字があ
り、1文字は第2候補に正解文字がある。しかし、残り
の1文字は候補文字の中に正解文字がない。
して得られた形態素解析候補である。ここでは、上位3
個の形態素解析候補が示されており、第1候補が正しい
単語列と品詞列を与えている。各形態素解析候補にはそ
の確率の対数が示されており、この値が大きいほど尤も
らしい。この例では、入力文の4文字目に対する正解文
字が文字マトリックスには含まれていないが、類似検索
により訂正候補を生成した結果、形態素解析の第1候補
には「まし」という単語が現れている。
尤もらしい順に提示された候補よりユーザが正解と思え
る候補を選択すればよい。なお、本発明は、上記の実施
例に限定されることなく、特許請求の範囲内で種々変更
・応用が可能である。
三つ組確率と品詞別単語出現確率から構成される品詞付
けモデル、動的計画法を用いた前向き探索とA* アルゴ
リズムを用いた後向き探索により、単語列と品詞列の同
時確率を最大化する単語列と品詞列の組を求める形態素
解析手段、品詞出現確率と品詞列単語長と単語内文字三
つ組確率から構成される単語モデル、単語モデルに基づ
く単語仮説生成手段、文内文字三つ組確率と単語リスト
を用いる類似語モデル、類似語モデルに基づく類似語検
索手段により、入力文に辞書に登録されていない単語が
含まれている場合や、正解文字が候補文字に含まれてい
ない場合でも、確率が高い順番に入力文を構成する単語
列と品詞列の組の候補を提示できる日本語文字認識装置
が実現できる。
である。
図である。
を示す図である。
すフローチャートである。
説明するためのフローチャート(その1)である。
説明するためのフローチャート(その2)である。
る。
説明するためのフローチャートである。
図である。
明するためのフローチャートである。
る類似語検索の例を示す図である。
る類似語検索の例を示す図である。
る文字マトリックスの例を示す図である。
て得られた形態素解析候補の例を示す図である。
Claims (2)
- 【請求項1】 入力文を構成する単語列と品詞列を出力
する文字認識方法において、 前記入力文の各文字位置において文字認識スコアの高い
順番に文字候補を生成し、 前記文字候補に含まれる部分文字列の中から、品詞出現
確率と品詞別単語長と単語内文字三つ組確率から、単語
を構成する文字列とその品詞の同時確率を与える単語モ
デルに基づいて、確率が高い順番に文字列の長さと品詞
を単語仮説として求め、 前記文字候補に含まれる部分文字列に類似した単語を、
ある単語の前後の文字列と文内文字三つ組確率から、そ
の単語の前後の文字列に類似した単語を求める類似語モ
デルに基づいて、確率が高い順番に文字列を検索し、前
記単語仮説に付与し、 3つの品詞と出現確率の組である品詞三つ組確率と品詞
別単語出現確率を用いて文字列を構成する単語列と各単
語に付与された品詞の同時確率を与える品詞付けモデル
に基づいて、前記単語仮説毎の確率が高い順番に形態素
解析候補を求め、 前記形態素解析候補を最も尤もらしい順番で提示するこ
とを特徴とする文字認識方法。 - 【請求項2】 入力文を構成する単語列と品詞列を出力
する文字認識装置であって、 前記入力文の各文字位置において文字認識スコアの高い
順番に文字候補を生成する文字候補生成部と、 3つの品詞と出現確率の組を格納する品詞三つ組確率テ
ーブルと、 品詞と表記と確率を格納する品詞別単語出現確率テーブ
ルと、 前記品詞三つ組確率テーブルの品詞三つ組確率と、前記
品詞別単語出現確率テーブルの品詞別単語出現確率を用
いて文字列を構成する単語列と各単語に付与された品詞
列の同時確率を与える品詞付けモデルと、 品詞と品詞出現確率から構成される品詞出現確率テーブ
ルと、 品詞と該品詞の単語の平均文字列長である品詞別単語長
確率から構成される品詞別単語長テーブルと、 3つの文字とその単語内出現確率である単語内文字三つ
組確率から構成される単語内文字三つ組確率テーブル
と、 前記品詞出現確率テーブルの品詞出現確率と、前記品詞
別単語長テーブルの品詞別単語長確率と、前記単語内文
字三つ組確率テーブルの単語内文字三つ組確率に基づい
て単語を構成する文字列とその品詞の同時確率分布を与
える単語モデルと、 前記文字候補に含まれる部分文字列の中から、前記単語
モデルに基づいて確率が高い順番に、文字列の長さと品
詞を単語仮説として求める単語仮説生成手段と、 3つの文字と文内出現確率である文内文字三つ組み確率
から構成される文内文字三つ組確率テーブルと、 ある単語の前後の文字列と、前記文内文字三つ組確率テ
ーブルの前記文内文字三つ組確率から、その単語の前後
の文字列に類似した単語を求める類似語モデルと、 前記文字候補に含まれる部分文字列に類似した単語を、
前記類似語モデルに基づいて確率が高い順番に検索する
類似語検索手段と、 前記類似語検索手段手段で検索された単語を前記単語仮
説に付与し、前記品詞付けモデルに基づいて、確率が高
い単語仮説の順番に形態素解析候補を求める形態素解析
手段と、 前記形態素解析手段で求められた形態素解析候補を最も
尤もらしい順番で提示する手段とを有することを特徴と
する文字認識装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11592695A JP3309174B2 (ja) | 1995-05-15 | 1995-05-15 | 文字認識方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11592695A JP3309174B2 (ja) | 1995-05-15 | 1995-05-15 | 文字認識方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08315078A JPH08315078A (ja) | 1996-11-29 |
JP3309174B2 true JP3309174B2 (ja) | 2002-07-29 |
Family
ID=14674617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11592695A Expired - Lifetime JP3309174B2 (ja) | 1995-05-15 | 1995-05-15 | 文字認識方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3309174B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3992348B2 (ja) * | 1997-03-21 | 2007-10-17 | 幹雄 山本 | 形態素解析方法および装置、並びに日本語形態素解析方法および装置 |
US7499588B2 (en) * | 2004-05-20 | 2009-03-03 | Microsoft Corporation | Low resolution OCR for camera acquired documents |
JP4953440B2 (ja) * | 2007-04-27 | 2012-06-13 | ヤフー株式会社 | 形態素解析装置、形態素解析方法、形態素解析プログラム及びコンピュータプログラムを格納した記録媒体 |
JP5419143B2 (ja) * | 2009-04-27 | 2014-02-19 | トランス・コスモス株式会社 | コード変換支援装置、コード変換支援方法及びコード変換支援プログラム |
JP6551026B2 (ja) * | 2015-08-05 | 2019-07-31 | 大日本印刷株式会社 | 候補語評価装置、候補語評価システム、プログラム及び候補語評価方法 |
CN109344830B (zh) * | 2018-08-17 | 2024-06-28 | 平安科技(深圳)有限公司 | 语句输出、模型训练方法、装置、计算机设备及存储介质 |
CN110738048B (zh) * | 2019-09-30 | 2023-08-04 | 平安直通咨询有限公司上海分公司 | 一种关键词提取方法、装置及终端设备 |
CN110751234B (zh) * | 2019-10-09 | 2024-04-16 | 科大讯飞股份有限公司 | Ocr识别纠错方法、装置及设备 |
CN111310547B (zh) * | 2019-12-04 | 2023-05-30 | 武汉汉德瑞庭科技有限公司 | 在线笔迹认证中一种笔顺特征的提取及认证方法 |
-
1995
- 1995-05-15 JP JP11592695A patent/JP3309174B2/ja not_active Expired - Lifetime
Non-Patent Citations (5)
Title |
---|
Masaaki NAGATA,A Stochastic Japanese Morphological Analyzer Using a Forward−DP Backward−A※ N−Best Search Algorithm,COLING−94(The 15th International Conference on Computational Linguistics)PROCEEDINGS,1994年 8月 5日,15th Vol.1,p.201−207 |
永田昌明,前向きDP後ろ向きA※アルゴリズムを用いた確率的日本語形態素解析システム,情報処理学会研究報告 94−NL−101,日本,情報処理学会,1994年 5月27日,Vol.94 No.47,p.73−80 |
永田昌明,確率モデルによる自由発話の形態素解析,情報処理学会研究報告 94−SLP−3,日本,情報処理学会,1994年10月21日,Vol.94 No.90,p.1−6 |
西野文人,自然言語処理技術の応用 文字認識における自然言語処理,情報処理,日本,情報処理学会,1993年10月15日,Vol.34 No.10,p.1274−1280 |
高尾哲康 西野文人,日本語文書リーダ後処理の実現と評価,情報処理学会論文誌,日本,情報処理学会,1989年11月15日,Vol.30 No.11,p.1394−1401 |
Also Published As
Publication number | Publication date |
---|---|
JPH08315078A (ja) | 1996-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4568774B2 (ja) | 手書き文字認識で使用されるテンプレートを生成する方法 | |
TW448381B (en) | Automatic segmentation of a text | |
KR100734741B1 (ko) | 단어 인식 방법 및 시스템 및 컴퓨터 프로그램 메모리저장 디바이스 | |
US20040243409A1 (en) | Morphological analyzer, morphological analysis method, and morphological analysis program | |
US20030135356A1 (en) | Method and apparatus for detecting prosodic phrase break in a text to speech (TTS) system | |
US6763331B2 (en) | Sentence recognition apparatus, sentence recognition method, program, and medium | |
JP2007323671A (ja) | 中国語テキストにおける単語分割 | |
JPH03224055A (ja) | 同時通訳向き音声認識システムおよびその音声認識方法 | |
US20080147405A1 (en) | Chinese prosodic words forming method and apparatus | |
US20220019737A1 (en) | Language correction system, method therefor, and language correction model learning method of system | |
JP3992348B2 (ja) | 形態素解析方法および装置、並びに日本語形態素解析方法および装置 | |
JP3309174B2 (ja) | 文字認識方法及び装置 | |
Pal et al. | OCR error correction of an inflectional indian language using morphological parsing | |
JP2006243673A (ja) | データ検索装置および方法 | |
JP3777456B2 (ja) | 日本語形態素解析方法と装置及び辞書未登録語収集方法と装置 | |
JP5203324B2 (ja) | 誤字脱字対応テキスト解析装置及び方法及びプログラム | |
JP2000259645A (ja) | 音声処理装置及び音声データ検索装置 | |
WO2010026804A1 (ja) | 近似照合装置、近似照合方法、プログラム及び記録媒体 | |
JP3080066B2 (ja) | 文字認識装置、方法及び記憶媒体 | |
CN116484842A (zh) | 语句纠错的方法及装置、电子设备、存储介质 | |
JP3975825B2 (ja) | 文字認識誤り訂正方法、装置及びプログラム | |
JPH1185756A (ja) | 翻訳装置及び翻訳装置制御プログラムを記憶した媒体 | |
KR20040018008A (ko) | 품사 태깅 장치 및 태깅 방법 | |
KR100420474B1 (ko) | 부분문틀을 이용한 장문 번역 장치 및 그 방법 | |
KR20080028655A (ko) | 품사 태깅 장치 및 태깅 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090524 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090524 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100524 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100524 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110524 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120524 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130524 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140524 Year of fee payment: 12 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |