JPH09134369A - ラティスをキーとした検索を行う辞書検索装置および方法 - Google Patents

ラティスをキーとした検索を行う辞書検索装置および方法

Info

Publication number
JPH09134369A
JPH09134369A JP7292989A JP29298995A JPH09134369A JP H09134369 A JPH09134369 A JP H09134369A JP 7292989 A JP7292989 A JP 7292989A JP 29298995 A JP29298995 A JP 29298995A JP H09134369 A JPH09134369 A JP H09134369A
Authority
JP
Japan
Prior art keywords
search
dictionary
node
composite key
data
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.)
Granted
Application number
JP7292989A
Other languages
English (en)
Other versions
JP3152871B2 (ja
Inventor
Tomoya Ogawa
知也 小川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP29298995A priority Critical patent/JP3152871B2/ja
Priority to US08/725,955 priority patent/US5778405A/en
Priority to KR1019960046646A priority patent/KR100286501B1/ko
Priority to CN96112039A priority patent/CN1096036C/zh
Publication of JPH09134369A publication Critical patent/JPH09134369A/ja
Application granted granted Critical
Publication of JP3152871B2 publication Critical patent/JP3152871B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 与えられたラティス構造のデータを元にし
て、トライ辞書を用いた高速な検索を行うことを課題と
する。 【解決手段】 認識結果の各候補文字をデータノードと
し、それらを制御ノードで接続して文字ラティスを構成
する。そして、制御ノードの接続情報に従って、文字ラ
ティスのデータノードを“[先頭]”から“[末尾]”
に向かってたどり、各パスに対応する文字列をトライ辞
書内で検索する。文字ラティスに含まれるすべての検索
キーを生成してからそれらを辞書と照合する場合に比べ
て、検索効率が向上する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、文字認識や音声認
識等において、認識結果の文字や音素の複数の候補から
成るラティス構造のデータを元に辞書を検索する辞書検
索装置およびその方法に関する。
【0002】
【従来の技術】近年、コンピュータの発展に伴い、より
効率的なコンピュータへのデータ入力方法が求められて
いる。コンピュータへのデータ入力には、例えば文字認
識や音声認識などの技術があり、認識対象の文字列等を
辞書と照合する方法として、ハッシュ法、B−Tree
法、トライ(TRIE:tree retrieval)法などが用い
られている。ハッシュ法は、検索キーの内部コードから
対応する登録語の格納アドレスを求める方法であり、B
−Tree法は、多進探索木の一種であるB−Tree
の各ノードに格納された登録語を検索する方法である。
また、トライ法は、検索キーの一部を、木のノードに格
納されたインデックスと比較しながら分岐していき、葉
に格納された登録語を検索する方法である。認識処理に
おいては、1つの文字や音素に対して認識結果の複数の
候補が発生することがあり、このような場合に認識結果
の文字列等を高速に決定することが望まれる。複数の候
補を含む場合の辞書検索方法として、候補となる文字や
音素が格子状に組み合わされたラティス構造のデータを
元にした辞書検索が試みられている。
【0003】認識処理に用いられる従来の辞書の1つに
前方一致圧縮辞書がある。前方一致圧縮辞書において
は、辞書に格納する認識語が他の認識語と前方部分で一
致する場合には、それらが圧縮して格納される。例え
ば、コンピュータアーキテクチャ、コンピュータシステ
ム、コンピュータ入門という3つの単語は、先頭のコン
ピュータという語が一致しているので、この部分が1つ
に圧縮される。前方一致圧縮辞書を用いた文字列の検索
処理では、まず与えられた文字ラティスの先頭部分から
順にたどって得られる一群の認識候補の文字列が求めら
れ、それらが辞書中の認識語と比較されて、マッチング
処理が行われる。
【0004】
【発明が解決しようとする課題】しかしながら、上述の
ような従来の検索処理には次のような問題がある。認識
結果の複数の候補が発生しやすい例として、手書き文字
や音声の認識処理が挙げられるが、これらの認識処理で
はまだそれほど大規模な辞書検索は行われておらず、主
としてハッシュ法等により辞書が検索されている。しか
し、ハッシュ法では、キーの衝突が多く生じるような場
合には制御が煩雑になるという問題があり、ラティスが
大きくなると検索効率が低下する。また、B−Tree
法では、検索速度の高速性に欠けるという問題がある。
【0005】トライ法では、これらに比べて高速な検索
を行うことができる。しかし、文字ラティスを元にして
トライ辞書を検索する際、単純にラティス中の候補文字
を順に組み合わせて文字列を生成すると、候補文字が多
くなるにつれて多数の文字列が生成されてしまう。それ
らの文字列を1つ1つキーにして辞書検索を行うので
は、組合せ的爆発が発生し、現実的な時間で検索を終え
ることが困難になる。このため、辞書検索を大量に行う
必要のある認識処理を必ずしも高速に実行できないとい
う問題が生じる。
【0006】本発明は、与えられたラティス構造のデー
タを元にして、トライ辞書を用いた高速な検索を行うこ
とが可能な辞書検索装置およびその方法を提供すること
を目的とする。
【0007】
【課題を解決するための手段】図1は、本発明の辞書検
索装置の原理図である。図1の辞書検索装置は、検索手
段1、複合キー管理手段2、検索状態記憶手段3、およ
び出力手段4を備える。
【0008】複合キー管理手段2は、有機的に組み合わ
された複数のデータノードからなる複合キーであって、
2つ以上の検索キーを含む複合キーの情報を管理する。
検索手段1は、上記複合キー内のデータノードをたどり
ながら、上記トライ辞書の対応するレコードを検索す
る。
【0009】検索状態記憶手段3は、上記複合キー内に
おける検索対象のデータノードの位置を表す情報と、検
索手段1が得た検索結果とを記憶する。そして、出力手
段4は、上記検索結果を出力する。
【0010】複合キーは、例えば、認識結果の候補文字
や候補音素を表すデータノードを認識順に接続して構成
され、各データノードの次につながるデータノードの数
に応じて、複数のデータノード列に枝分かれする。した
がって、1つの複合キーは、先頭から末尾に至る複数の
データノード列を検索キーとして含んでおり、文字ラテ
ィスもその一種である。
【0011】検索手段1は、この複合キーの先頭から末
尾に向かって順にデータノードをたどりながら、途中の
各データノードまでのパスに対応するレコードがトライ
辞書内にあるかどうかを調べる。そして、対応するレコ
ードがあればそれを検索結果として取り出し、検索状態
記憶手段3に格納する。また、対応するレコードがなけ
れば次のデータノードを検索対象とし、同様にしてトラ
イ辞書を検索する。
【0012】こうして得られた検索結果は、出力手段に
より、例えば認識結果の候補の文字列として外部に出力
され、ユーザに提示される。このような辞書検索装置に
よれば、複合キーが先頭から順に展開されながら、トラ
イ辞書の登録文字列と照合されていく。このため、複合
キーに含まれる複数の検索キーの重複する部分について
は、辞書との照合を1回で済ませることができ、検索処
理が効率化される。また、適当な検索結果が得られた時
点で処理を終了するようにすれば、辞書検索はさらに高
速になる。
【0013】例えば、図1の検索手段1は、実施形態の
図2の辞書検索制御モジュール13に対応し、複合キー
管理手段2、検索状態記憶手段3は、それぞれラティス
情報管理モジュール12、辞書検索状態情報管理モジュ
ール14に対応する。また、出力手段4は図3の出力装
置24に対応する。
【0014】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施の形態を詳細に説明する。図2は、実施形態の辞
書検索装置の構成図である。図2の辞書検索装置11
は、ラティス情報管理モジュール12、辞書検索制御モ
ジュール13、辞書検索状態情報管理モジュール14、
評価関数モジュール16、およびトライ辞書アクセスモ
ジュール17を備える。
【0015】ラティス情報管理モジュール12は、入力
されたラティスの情報を管理する。辞書検索制御モジュ
ール13は、あらかじめ指定された制御方式に従って、
ラティス情報管理モジュール12から得られるラティス
中のノードを順にたどり、トライ辞書アクセスモジュー
ル18を介して、トライ辞書格納装置19に格納された
トライ辞書の中でラティスのノードに対応する部分にア
クセスする。そして、辞書内のレコードの有無などを判
定しつつ辞書検索を行い、検索結果を出力する。辞書検
索制御モジュール13による検索と同時に、辞書検索状
態情報管理モジュール14は、適宜、辞書検索状態情報
15を更新し、必要に応じてそれをユーザに提示する。
【0016】検索が進むにつれて、評価関数モジュール
16は各検索時点での評価値を計算し、それを辞書検索
制御モジュール13に渡す。辞書検索制御モジュール1
3は、渡された評価値を利用しながら効率的な検索を行
う。枝苅り判定モジュール17は評価値を用いて、ラテ
ィス中のあるノードにおける枝苅りが可能化どうかを判
定する。枝苅り判定モジュール17が枝苅り可能と判定
すると、そのノードより深いラティス部分は検索され
ず、辞書検索が効率化される。
【0017】図3は、辞書検索装置を実現する情報処理
システムの構成例を示している。図3の情報処理システ
ムは、CPU21、メモリ22、入力装置23、出力装
置24、トライ辞書格納装置19、およびそれらを接続
するバス25を備える。この情報処理システムが文字認
識処理を行う場合は、入力装置23は例えばスキャナー
等の画像入力装置であり、認識対象の文字列の原画像を
入力するために用いられる。また、音声認識処理を行う
場合は、入力装置23はマイクロホンと音声変換装置等
からなる音声入力装置であり、認識対象の音声を入力す
るために用いられる。
【0018】CPU21はメモリ22を用いて、入力さ
れた原画像や音声の認識処理を行い、複数の候補を含む
ラティスを生成する。また、CPU21はメモリ22に
格納されたプログラムを実行することにより、ラティス
情報管理モジュール12、辞書検索制御モジュール1
3、辞書検索状態情報管理モジュール14、評価関数モ
ジュール16、枝苅り判定モジュール17、およびトラ
イ辞書アクセスモジュール18の役割を果たす。そし
て、ラティスを検索キーとしてトライ辞書格納装置19
内のトライ辞書を検索する。出力装置24は、例えばデ
ィスプレイ装置やプリンタ等であり、検索途中の状態や
検索結果等を表示したり出力したりするのに用いられ
る。
【0019】次に、図4から図17までを参照しなが
ら、日本語の原画像を例とした文字認識処理について説
明する。図4は、認識対象の原画像の例を示している。
OCR(optical character recognition )により図4
の原画像“大学に行く”の文字認識を行うと、文字の切
り出し誤りがない場合には、例えば図5のような文字ラ
ティスが得られる。図5の文字ラティスにおいて、1行
目には原画像に含まれる各文字の第1候補が列挙されて
おり、2行目、3行目にはそれぞれ第2候補、第3候補
が列挙されている。この文字ラティスをデータノードと
制御ノードとを用いて表すと、図6のようになる。
【0020】図6の第1の文字ラティスは制御ノードと
データノードから構成され、データノードは縦横の格子
状に配列されている。データノードには文字認識結果で
ある各候補文字がその属性と共に格納される。
【0021】候補文字の属性とは、例えば、その文字の
認識結果としての確からしさを表す評価値を意味する。
ここでは、各データノードの下方に併記された数字が、
評価値の一種である認識距離値を表す。認識距離値は、
認識結果の文字パターンと対応する辞書内の候補文字の
文字パターンとの間の距離値を意味し、原画像における
元の文字がその候補文字である確からしさを表す。認識
距離値が小さければ小さいほど、元の文字のパターンは
辞書内の候補文字のパターンに近く、その候補文字はそ
れだけ確からしいことになる。ただし、データノード
“[先頭]”および“[末尾]”は認識結果ではなく、
処理の都合上設けられた特別なデータノードであり、認
識距離値は併記されていない。
【0022】制御ノードはデータノードとデータノード
の間に位置し、主として辞書検索処理の制御に利用され
るが、検索後の処理で必要とする情報を提供するために
も用いられる。これらの用途のために、“[先頭]”に
近い制御ノードから“[末尾]”に近い制御ノードに向
かって、順番に識別子C0、C1、C2、C3、C4、
C5が付加されている。これらの識別子に含まれる数字
が小さいものほど、“[先頭]”に近いことを示してい
る。
【0023】図7および図8は、それぞれラティス情報
管理モジュール12が管理する各制御ノードおよび各デ
ータノードの配列構造の例を示している。図7の制御ノ
ードには、その制御ノードにつながるデータノードの数
と、それらのデータノードへのポインタとが格納され
る。例えば、図6の制御ノードC0の場合は、後続する
データノードが“文”、“大”、および“丈”であるの
で、データノードの数は3となり、これらの3つのデー
タノードへのポインタを保持する。
【0024】また、図8のデータノードには、そのデー
タノードが表す候補文字の文字情報と、その認識距離値
と、そのデータノードにつながる制御ノードの識別子
(制御ノードID)とが格納される。例えば、図6のデ
ータノード“文”の場合は、候補文字“文”を表す文字
情報とその認識距離値10、および後続する制御ノード
の識別子C1を保持する。
【0025】図6の制御ノードとデータノードの例は認
識過程で文字の切り出しに誤りがなかった場合を想定し
ているが、文字切り出し誤りがある場合には、データノ
ードは一般に格子状に配列されるとは限らない。この場
合、認識結果の文字ラティスは、例えば図9に示すよう
なグラフ状のデータとなる。図9の第2の文字ラティス
を図6の第1の文字ラティスと比較すると、制御ノード
C2とC4の間に新たに2つの候補文字“し”および
“こ”が挿入されており、これらは原画像に含まれる文
字“に”から切り出されている。このため、データノー
ド“し”、“こ”と制御ノードC3は、同じ文字の他の
認識候補のデータノード“に”および“院”と並列に並
んでいる。
【0026】辞書検索制御モジュール13は、図6や図
9のような文字ラティスの各ノードをたどりながら辞書
検索を行う。図9の文字ラティスを検索キーとした場
合、その処理は文字ラティスを展開した図10のような
木構造をたどる処理と等価である。図10においては、
データノード“[先頭]”をルートノードとして、各制
御ノードにつながるデータノードが順に展開され、各枝
の末端はデータノード“[末尾]”で終わっている。デ
ータノード“字”の後には“学”に後続する枝と同じ部
分が続き、“大”および“丈”の後には“文”に後続す
る枝と同じ部分が続いている。
【0027】図11は、これらの候補文字を有するトラ
イ辞書の構造を示している。図11のトライ辞書は、キ
ーとなる文字列と登録単語のレコードの集まりであり、
登録単語のレコードは単語自身を表す情報と品詞名のデ
ータ対で表される。例えば、レコードエリア35内のレ
コード“大”は、単語“大”を表すデータと接頭語を表
すデータとからなり、レコード“大学”は単語“大学”
を表すデータと普通名詞を表すデータとからなる。
【0028】また、トライ辞書では、一般にキーはイン
デックスの木で表現される。通常の文字列をキーとして
辞書検索を行う場合、インデックスの木のルートのイン
デックスから順に文字列キーの各要素に対応するパスを
たどることで、最終的にキーに対応するレコードが(も
しあれば)検索結果として出力される。ただし、実際の
文字認識処理ではパスの途中で見つかったレコードも有
用であることが多いため、一緒に検索結果として出力さ
れることが多い。
【0029】図11では、インデックス31の中の
“丈”の位置にはレコードエリア35内のレコード
“丈”へのポインタが格納され、“大”、“文”の位置
にはそれぞれ次のインデックス32、34へのポインタ
が格納されている。ここでは、レコードへのポインタは
破線で示され、インデックスへのポインタは実線で示さ
れているが、実際には、例えば各ポインタの最上位ビッ
ト等を用いて区別される。
【0030】インデックス32の先頭にある0の位置に
はレコード“大”へのポインタが格納され、“学”の位
置にはインデックス33へのポインタが格納されてい
る。また、インデックス33、34にも同様に、レコー
ド“大学”、“大学院”、“文”、“文学”、“文字”
へのポインタが格納される。
【0031】本実施形態の辞書検索においては、複数の
キーを表す文字ラティスからそれらの文字列を個別に生
成するのではなく、文字ラティスのノードを先頭から順
に調べ、各データノードの候補文字に対応するパスをイ
ンデックスの木の上で順にたどっていく。前述のよう
に、文字ラティスのノードを順にたどることは、図10
のような木構造をたどることと等価である。このように
して検索を行えば、文字ラティスに含まれるすべてのキ
ーを生成する必要がなく、検索空間を検索結果の存在し
得る領域にだけに限定できるため、効率的な辞書検索が
可能となる。
【0032】ラティスのノードを順にたどる方法として
は木の探索として知られている各種の方法を用いること
ができるが、本実施形態では、簡単のためOPENリス
トを用いる方法について説明する。OPENリストは辞
書検索状態情報15に相当し、検索途中のラティスにお
けるデータノードの情報を有する。
【0033】図12は、OPENリストを構成する各要
素ノードの配列構造を示している。図12のOPENリ
ストの要素ノードには、次のOPENリストの要素ノー
ドへのポインタ、直前の制御ノードのID、直前の制御
ノードにおけるデータノード番号、親ノードへのポイン
タ、対応するトライ辞書へのポインタ、および評価関数
値が格納される。このうち、直前の制御ノードにおける
データノード番号とは、ラティス内における検索途中の
データノードの直前の制御ノードにおいて便宜的に決め
られた後続するデータノードの識別番号を意味する。ま
た、トライ辞書へのポインタは検索に用いるトライ辞書
を指すポインタであり、評価関数値は、文字の認識距離
値等を用いて計算された文字列の確からしさを表す。
【0034】図13は、OPENリストを用いた第1の
検索処理のフローチャートである。検索処理のプログラ
ムは辞書検索制御モジュール13により実行される。図
13において処理が開始されると、辞書検索制御モジュ
ール13は、まずラティスのデータノード“[先頭]”
を、辞書検索状態情報管理モジュール14内のOPEN
リストに入れる(ステップS1)。図14のOPENリ
ストL1は、図9の文字ラティスから取り出された
“[先頭]”が格納された状態を示している。
【0035】次に、OPENリストが空かどうかを判定
し(ステップS2)、空でなければOPENリスト内の
先頭要素ノードをノードnとする(ステップS3)。そ
して、ノードnに対応するレコードがトライ辞書のレコ
ードエリア35に存在するかどうかを調べる(ステップ
S4)。
【0036】図15は、ステップS4におけるレコード
確認処理のサブルーチンのフローチャートである。図1
5において処理が開始されると、辞書検索制御モジュー
ル13は、まずトライ辞書内のノードnの位置のポイン
タ、すなわちノードnに対応するインデックス内の位置
に格納されているポインタが、次のインデックスへのポ
インタかどうかを調べる(ステップS11)。
【0037】ノードnの位置のポインタがインデックス
へのポインタの場合は、それが指す次のインデックス内
の0の位置にレコードエリア35内のレコードへのポイ
ンタが格納されているかどうかを調べる(ステップS1
2)。そして、レコードへのポインタが存在すれば、図
13のメインルーチンに真を返して(ステップS14)
処理を終了し、存在しなければ偽を返して(ステップS
15)処理を終了する。
【0038】ステップS11において、ノードnの位置
のポインタがインデックスへのポインタでない場合は、
それがレコードへのポインタかどうかを調べる(ステッ
プS13)。そして、レコードへのポインタであればメ
インルーチンに真を返して(ステップS14)処理を終
了し、そうでなければ偽を返して(ステップS15)処
理を終了する。
【0039】サブルーチンから真が返されれば、辞書検
索制御モジュール13は、ノードnに対応するレコード
へのポインタを用いて、レコードエリア35からレコー
ドを取り出し、そのレコードを検索結果として辞書検索
状態情報管理モジュール14に格納する(ステップS
5)。サブルーチンから偽が返されれば、ノードnに対
応するレコードは存在しないと判定して、ステップS6
の処理に進む。
【0040】図14のOPENリストL1の場合は、そ
の唯一の要素である“[先頭]”がノードnとなるが
(ステップS3)、ノード“[先頭]”は図11のトラ
イ辞書の最初のインデックス31を指すので、インデッ
クス31の0の位置が調べられる(ステップS12)。
ところが、インデックス31の0の位置(不図示)には
ポインタが格納されておらず、対応するレコードは存在
しないことが分かる(ステップS15)。
【0041】次に、再びトライ辞書内のノードnの位置
のポインタがインデックスへのポインタかどうかを調べ
(ステップS6)、それがインデックスへのポインタで
なければステップS2以降の処理を繰り返す。ノードn
の位置のポインタがインデックスへのポインタであれ
ば、ラティス内のノードnの子ノードを展開し、各子ノ
ードをOPENリストの適当な場所に挿入する(ステッ
プS7)。そして、ステップS2以降の処理を繰り返
し、ステップS2においてOPENリストが空になれば
処理を終了する。
【0042】ここでは、ノード“[先頭]”はインデッ
クス31を指すので、その子ノードであるデータノード
“文”、“大”、“丈”が展開され、OPENリストの
先頭に挿入されて、OPENリストはL2のようになる
(ステップS7)。OPENリストL2は空ではないの
で、次にその先頭要素“文”がノードnとなり(ステッ
プS3)、ノード“文”に対応するレコードが存在する
かどうかが調べられる(ステップS4)。図11のトラ
イ辞書において、インデックス31内の“文”の位置の
ポインタは次のインデックス34を指しているので、イ
ンデックス34の0の位置が調べられる(ステップS1
2)。ここで、0の位置のポインタはレコード“文”を
指していることが分かり、そのレコードが検索結果とし
て格納される(ステップS5)。
【0043】ノード“文”の位置のポインタは次のイン
デックス34へのポインタであったので、次にノード
“文”の子ノードであるデータノード“学”と“字”が
OPENリストに挿入される(ステップS7)。
【0044】ところで、図10のような木の探索する代
表的な方法として、縦型探索(depth first search)、
横型探索(breadth first search)、最適探索(best f
irstsearch)の3つがある。縦型探索は1つの枝毎に
[先頭]から[末尾]に向かって縦方向に探索する方法
であり、横型探索はすべての枝を横方向に探索してから
縦方向に進む方法である。また、最適探索は、評価関数
の値が最も良い枝から順に探索する方法である。
【0045】これらの探索方法のうちいずれを用いるか
は、図13のステップS7においてノードnの子ノード
を挿入するOPENリスト内の位置によって決まる。子
ノードをOPENリストの先頭に挿入すれば縦型探索に
なり、OPENリストの末尾に挿入すれば横型探索にな
る。また、一定の条件の下で評価関数値に従って挿入位
置を決定すれば、最適探索を行うことができる。図14
は縦型探索におけるOPENリストの例を示しており、
図16は横型探索におけるOPENリストの例を示して
おり、図17は最適探索におけるOPENリストの例を
示している。
【0046】まず、図14を参照しながら図10の木の
縦型探索について説明する。上述のようにして、OPE
NリストL2から取り出された要素“文”に対応するレ
コード“文”が検索結果として格納されると、図9のデ
ータノード“文”の子ノード“学”と“字”が展開され
て、OPENリストの先頭から順に挿入される(ステッ
プS7)。この結果、OPENリストはL3のようにな
る。OPENリストL3において、例えば要素“(文)
学”は親ノード“文”から展開された子ノード“学”に
対応する要素ノードを表す。この表記法は、他の要素ノ
ードについても同様である。
【0047】要素“(文)学”に対応する配列データは
図12のような構造を持ち、次のノードへのポインタ
は、OPENリストL3内の次の要素ノードである
“(文)字”を指す。また、直前の制御ノードのIDと
して、図9のデータノード“学”の前にある制御ノード
の識別子C1が格納される。直前の制御ノードにおける
データノード番号は、直前の制御ノードに後続するデー
タノードに上から順にふられた番号を表し、ここでは、
制御ノードC1に後続するデータノード“学”、“字”
にそれぞれ番号1、2が与えられる。したがって、
“(文)学”のデータノード番号は1となる。
【0048】親ノードへのポインタとしては、ラティス
内の親ノード“文”に対応する要素ノードへのポインタ
が格納され、トライ辞書へのポインタとしては、図11
のトライ辞書のインデックス34内における“学”の位
置を指すポインタが格納される。評価関数値については
後述する。
【0049】図12の要素ノードでは、対応するデータ
ノードを識別するために、直前の制御ノードのIDとそ
の制御ノードにおけるデータノード番号を保持するよう
にしているが、代わりにラティス内の対応するデータノ
ード自身へのポインタを保持してもよい。
【0050】次に、OPENリストL3から“(文)
学”が取り出されてノードnとなり(ステップS3)、
対応するレコード“文学”が検索結果として格納される
(ステップS5)。このとき、OPENリストはL4の
ようになるが、“(文)学”に対応する位置にはレコー
ド“文学”へのポインタが格納されていたので、新たな
子ノードは挿入されない。
【0051】次に、OPENリストL4から“(文)
字”が取り出されてノードnとなり(ステップS3)、
対応するレコード“文字”が検索結果として格納され
(ステップS5)、OPENリストはL5のようにな
る。この場合も、“(文)字”に対応する位置には次の
インデックスへのポインタが格納されていないので、O
PENリストL5に新たな子ノードは挿入されない。
【0052】次に、OPENリストL5から“大”が取
り出されてノードnとなり(ステップS3)、対応する
レコード“大”が検索結果として格納される(ステップ
S5)。このとき、“大”に対応する位置には次のイン
デックス32へのポインタが格納されているので、
“大”の子ノードとして“(大)学”と“(大)字”が
OPENリストの先頭に挿入され(ステップS7)、O
PENリストL6のようになる。
【0053】次に、OPENリストL6から“(大)
学”が取り出されてノードnとなり(ステップS3)、
対応するレコード“大学”が検索結果として格納される
(ステップS5)。“(大)学”に対応する位置には次
のインデックス33へのポインタが格納されているの
で、“(大)学”の子ノードとして“(大学)に”、
“(大学)院”、“(大学)し”がOPENリストの先
頭に挿入され(ステップS7)、OPENリストL7の
ようになる。
【0054】次に、OPENリストL7から“(大学)
に”が取り出されてノードnとなるが(ステップS
3)、トライ辞書に対応するインデックスがないので検
索結果は得られず、OPENリストはL8のようにな
る。続いて、OPENリストL8の“(大学)院”がノ
ードnとなり(ステップS3)、対応するレコード“大
学院”が検索結果として格納される(ステップS5)。
このようにして、OPENリスト内の要素ノードが処理
され、それが空になると検索処理が終了する。
【0055】次に、図16を参照しながら図10の木の
横型探索について説明する。横型探索の場合は、図13
のステップS7において、展開された子ノードがOPE
Nリストの末尾に挿入される。図16のOPENリスト
L11、L12が生成される処理については、図14の
OPENリストL1、L2の場合と同様である。
【0056】OPENリストL12から“文”が取り出
されて(ステップS3)レコード“文”が検索結果とな
ると(ステップS5)、次にその子ノード“(文)
学”、“(文)字”がOPENリストの末尾に挿入され
(ステップS7)、OPENリストはL13のようにな
る。また、OPENリストL13から“大”が取り出さ
れて(ステップS3)レコード“大”が検索結果となる
と(ステップS5)、次にその子ノード“(大)学”、
“(大)字”がOPENリストの末尾に挿入され(ステ
ップS7)、OPENリストはL14のようになる。
【0057】次に、OPENリストL14から“丈”が
取り出されて(ステップS3)レコード“丈”が検索結
果となり(ステップS5)、OPENリストはL15の
ようになる。ところが、トライ辞書には“丈”に続くイ
ンデックスがないので、新たな子ノードは挿入されな
い。同様にして、要素ノードが増えることなくOPEN
リストはL16、L17と変化し、レコード“文学”、
“文字”が順に検索結果となる。
【0058】次に、OPENリストL17から“(大)
学”が取り出されて(ステップS3)レコード“大学”
が検索結果となると(ステップS5)、次にその子ノー
ド“(大学)に”、“(大学)院”、“(大学)し”が
OPENリストの末尾に挿入され(ステップS7)、O
PENリストL18のようになる。このようにして、O
PENリスト内の要素ノードが処理され、それが空にな
ると検索処理が終了する。
【0059】次に、図17を参照しながら図10の木の
最適探索について説明する。最適探索の場合は、図13
のステップS7において、展開された子ノードの挿入位
置は評価関数モジュール16が計算する評価関数の値に
基づいて決められる。そこで、まず評価関数について説
明する。
【0060】ラティス内のあるデータノードにおける評
価関数の値は、ノード“[先頭]”からそのデータノー
ドまでのパス(データノード列)や、そのデータノード
までの検索過程で得た情報などから計算される。具体的
には、例えばパス上のデータノード数、各データノード
の属性から計算され、属性としてはそのデータノードの
認識距離値、順位、字種などが用いられる。
【0061】パスが伸びるにつれて評価関数値が常に単
調に増加する場合、その評価関数を単調増加であると呼
ぶ。例えば、パス上のデータノードの認識距離値の合計
値や、認識距離値が一定値以上のデータノードの数など
が単調増加な評価関数の例である。
【0062】評価関数が単調増加の場合、図13のステ
ップS7でノードnの子ノードをOPENリストに挿入
する際に、OPENリスト内の要素ノードが評価関数値
の良い順に並ぶように挿入すれば、最適探索になる。つ
まり、この探索方法では評価関数値の良いノードから順
に木の探索が行われる。木の各ノードはトライ辞書の個
々の検索キーに対応しているため、あるノードの評価関
数値は対応する検索キーの文字列の評価関数値であると
いうこともできる。したがって、辞書検索においても、
検索キーの評価関数値の良い順に検索が行われ、検索結
果のレコードもその順番に取り出される。
【0063】図17の最適探索においては、評価関数モ
ジュール16は、パス上の各データノードに付与された
認識距離値の総和を評価関数として用い、その値を計算
する。そして、辞書検索制御モジュール13は、計算さ
れた値をOPENリストの対応するノードの評価関数値
として、辞書検索状態情報管理モジュール14に格納す
る。また、評価関数値は小さいほど良いものとする。
【0064】図17において、OPENリストL21、
L22が生成される処理については、図14のOPEN
リストL1、L2の場合と同様である。ただし、OPE
NリストL22内には、要素ノード“文”、“大”、
“丈”が、併記された評価関数値の小さい順に格納され
ている。
【0065】次に、OPENリストL22から“文”が
取り出されて(ステップS3)レコード“文”が検索結
果となると(ステップS5)、その子ノード“(文)
学”と“(文)字”が展開される。ここで、“(文)
学”の評価関数値は、図9のデータノード“文”および
“学”の認識距離値から30となり、“(文)字”の評
価関数値は、データノード“文”および“字”の認識距
離値から60となる。
【0066】これらの評価関数値が残りの要素ノード
“大”、“丈”の評価関数値と比較された結果、
“(文)学”はOPENリストの先頭に挿入され、
“(文)字”はOPENリストの末尾に挿入される(ス
テップS7)。したがって、OPENリストはL23の
ようになる。
【0067】次に、OPENリストL23から“(文)
学”が取り出されて(ステップS3)レコード“文学”
が検索結果となると(ステップS5)、OPENリスト
はL24のようになる。
【0068】次に、OPENリストL24から“大”が
取り出されて(ステップS3)レコード“大”が検索結
果となると(ステップS5)、次にその子ノード
“(大)学”、“(大)字”がそれらの評価関数値5
0、80に応じた位置に挿入され(ステップS7)、O
PENリストはL25のようになる。
【0069】次に、OPENリストL25から“(大)
学”が取り出されて(ステップS3)レコード“大学”
が検索結果となると(ステップS5)、次にその子ノー
ド“(大学)に”、“(大学)院”、“(大学)し”が
それらの評価関数値60、100、110に応じた位置
に挿入され(ステップS7)、OPENリストはL26
のようになる。
【0070】以下同様にして、OPENリストはL2
7、L28と変化し、レコード“丈”、“文字”が順に
検索結果となる。このようにして、OPENリスト内の
要素ノードが処理され、それが空になると検索処理が終
了する。図17に示された検索結果を見ると、評価関数
値の良い順にレコードが検索されていることが分かる。
【0071】次に、図18から図23までを参照しなが
ら、他の検索処理について説明する。図13の第1の検
索処理のアルゴリズムでは、検索過程の状態に関する情
報はOPENリストや検索結果を含む辞書検索状態情報
15に保持されており、検索が中断されても、この辞書
検索状態情報15があれば検索を再開することが可能で
ある。したがって、図13のステップS4でノードnに
対応するレコードがトライ辞書に存在する場合、全体の
検索処理の終了を待つことなく、その検索結果を辞書検
索状態情報15と共に出力するようにしてもよい。必要
ならば、検索中断後に辞書検索状態情報15を元にし
て、検索を再開することもできる。
【0072】図18は、第1の検索処理を途中で中止す
る処理のフローチャートである。図13のステップS2
でOPENリストが空でない場合、辞書検索制御モジュ
ール13はその時点で得られた検索結果を出力して、検
索を中止するかどうかをオペレータに問い合せる(ステ
ップS21)。
【0073】オペレータから検索中止を指示されれば、
OPENリスト内の各要素ノードおよびOPENリスト
から取り出されたすべての要素ノードのデータを、辞書
検索状態情報15に保存したまま(ステップS22)、
処理を終了する。また、オペレータから検索続行を指示
されれば、検索を中止せずに、図13のステップS3以
降の処理を実行する。
【0074】最適探索の場合は評価関数値の小さいレコ
ードから順に検索されるので、検索を途中で中止すれ
ば、一定値以下の評価関数値を持つレコードのみを検索
結果として出力することができる。したがって、短時間
でより確からしい候補文字列を得ることができ、有効な
検索処理が行える。
【0075】図19は、一旦中止した第1の検索処理を
再開する処理のフローチャートである。図19において
処理が開始されると、辞書検索制御モジュール13は、
まず保存されている辞書検索状態情報15を取り出し、
中止した時の状態をOPENリストに再度セットする
(ステップS23)。そして、図13のステップS2以
降の処理を実行する。このような検索処理の中止と再開
は、随時行うことができる。
【0076】ところで、一般に検索結果のレコードの評
価関数値が一定値を超える場合は、そのレコードに対す
る評価が悪く、認識結果としては採用されないことが多
い。このため、評価関数が単調増加であるかどうかにか
かわらず、それが一定値以下のレコードのみを検索結果
として返すことで、無駄の少ない検索処理が可能とな
る。
【0077】図20は、このような第2の検索処理のフ
ローチャートである。図20において処理が開始される
と、辞書検索制御モジュール13は、まずラティスのデ
ータノード“[先頭]”をOPENリストに入れる(ス
テップS31)。次に、OPENリストが空かどうかを
判定し(ステップS32)、空でなければOPENリス
ト内の先頭要素ノードをノードnとする(ステップS3
3)。そして、ノードnにおける評価関数値があらかじ
め決められた一定値を超えているかどうかを判定する
(ステップS34)。
【0078】評価関数値が一定値を超えていなければ、
ノードnに対応するレコードがトライ辞書のレコードエ
リア35に存在するかどうかを調べ(ステップS3
5)、それが一定値を超えていれば、対応するレコード
の存在を確認せずに、ステップS37の処理に進む。
【0079】ステップS35のレコード確認処理は、図
15のようなサブルーチンにより行われる。サブルーチ
ンから真が返されれば、辞書検索制御モジュール13
は、ノードnに対応するレコードへのポインタを用い
て、レコードエリア35からレコードを取り出し、その
レコードを検索結果として辞書検索状態情報管理モジュ
ール14に格納する(ステップS36)。サブルーチン
から偽が返されれば、ノードnに対応するレコードは存
在しないと判定して、ステップS37の処理に進む。
【0080】次に、トライ辞書内のノードnの位置のポ
インタがインデックスへのポインタかどうかを調べ(ス
テップS37)、それがインデックスへのポインタでな
ければステップS32以降の処理を繰り返す。ノードn
の位置のポインタがインデックスへのポインタであれ
ば、ラティス内のノードnの子ノードを展開し、各子ノ
ードをその評価関数値に従ってOPENリストの適当な
場所に挿入する(ステップS38)。そして、ステップ
S32以降の処理を繰り返し、ステップS32において
OPENリストが空になれば処理を終了する。
【0081】このような第2の検索処理によれば、比較
的良い評価関数値を持つレコードのみを検索結果として
最後まで処理を行うことができ、その後の認識結果の決
定を効率化することができる。尚、ステップS34にお
いて、評価関数値が一定値以上の場合にステップS37
の処理に進むようにしてもよい。
【0082】第2の検索処理においてさらに評価関数が
単調増加の場合は、あるノードにおける評価関数値が一
定値以上になったら、あるいは一定値を超えたら、そこ
から先の部分木についてはもはや評価関数の値が良くな
ることはないため、辞書検索を行っても無駄である。そ
のような場合、枝苅り判定モジュール17は部分木の枝
苅りが可能と判定し、辞書検索制御モジュール13はそ
の部分木についての検索を打ち切る。
【0083】こうして、評価関数の値が良くなることが
期待できない部分木の枝苅りが行われ、辞書検索が効率
化される。その後、辞書検索制御モジュール13は木の
残りの部分についての検索を続けて、比較的良い評価関
数値を持つレコードのみを検索結果とする。
【0084】図21は、このような枝苅りを行う第3の
検索処理のフローチャートである。図21において処理
が開始されると、辞書検索制御モジュール13は、まず
ラティスのデータノード“[先頭]”をOPENリスト
に入れる(ステップS41)。次に、OPENリストが
空かどうかを判定し(ステップS42)、空でなければ
OPENリスト内の先頭要素ノードをノードnとする
(ステップS43)。
【0085】ここで、枝苅り判定モジュール17は、ノ
ードnにおける評価関数値があらかじめ決められた一定
値を超えているかどうかを判定する(ステップS4
4)。そして、評価関数値が一定値を超えていなければ
枝苅り不可と判定し、一定値を超えていれば枝苅り可能
と判定して、判定結果を辞書検索制御モジュール13に
渡す。
【0086】枝苅り不可の場合は、辞書検索制御モジュ
ール13は、ノードnに対応するレコードがトライ辞書
のレコードエリア35に存在するかどうかを調べる(ス
テップS45)。ステップS45のレコード確認処理
は、図15のようなサブルーチンにより行われる。
【0087】サブルーチンから真が返されれば、辞書検
索制御モジュール13は、ノードnに対応するレコード
へのポインタを用いて、レコードエリア35からレコー
ドを取り出し、そのレコードを検索結果として辞書検索
状態情報管理モジュール14に格納する(ステップS4
6)。サブルーチンから偽が返されれば、ノードnに対
応するレコードは存在しないと判定して、ステップS4
7の処理に進む。
【0088】次に、トライ辞書内のノードnの位置のポ
インタがインデックスへのポインタかどうかを調べ(ス
テップS47)、それがインデックスへのポインタでな
ければステップS42以降の処理を繰り返す。ノードn
の位置のポインタがインデックスへのポインタであれ
ば、ラティス内のノードnの子ノードを展開し、各子ノ
ードをその評価関数値に従ってOPENリストの適当な
場所に挿入する(ステップS48)。そして、ステップ
S42以降の処理を繰り返す。
【0089】ステップS44において評価関数値が一定
値を超えており、枝苅り可能と判定された場合は、レコ
ード確認や子ノードの展開を行わずに、そのままステッ
プS42の処理に戻る。これにより、ノードnおよびそ
の子ノードの探索が打ち切られ、枝苅りが行われる。そ
して、OPENリストから次の要素ノードを取り出して
ステップS43以降の処理を繰り返し、ステップS42
においてOPENリストが空になれば処理を終了する。
【0090】評価関数が単調増加の場合には、このよう
な第3の検索処理により、比較的良い評価関数値を持つ
検索結果を第2の検索処理よりも高速に得ることができ
る。尚、ステップS44において、評価関数値が一定値
以上の場合にステップS42の処理に戻るようにしても
よい。
【0091】図22は、校正支援処理で用いられる第3
の文字ラティスを示している。校正支援処理において
は、文字認識処理と異なり、既存の文章中に含まれる誤
字等を訂正するためにラティスを用いた辞書検索が行わ
れる。
【0092】図22の文字ラティスにおいては、元の文
章に含まれる“性急項目”という単語に対し、‘せいき
ゅう’という同じ読みを持つ3つの同音異義語“性
急”、“請求”、“制球”の情報が組み込まれている。
これらの単語をすべて文字単位のデータノードに分割し
た場合、制御ノードは黒丸および白丸で示されたC0、
C1、C2、C3、C4、C5、C6の7つになる。辞
書検索装置11は、この文字ラティスの同音異義語情報
とトライ辞書中の“請求項目”という単語情報とから、
元の単語の誤りの可能性を判断する。
【0093】ところで、この例では、あらかじめ“性急
項目”を“性急”と“項目”の2つの単語に分割するこ
とが可能であるため、文字ラティス内の“性急”、“請
求”、“制球”という個々の単語については、それ以上
細かい文字単位で辞書を検索する必要がない。そこで、
一部の制御ノードに検索不要とマーキングすることで、
トライ辞書から不要な検索結果を返す無駄を省くことが
できる。
【0094】図22では、このような検索不要な制御ノ
ードが白丸で示されており、これらに関しては特に識別
子を付加する必要はない。そこで、黒丸で示された制御
ノードのみを対象として識別子を再度付加し直す
と、()内に記したようにC0、C1、C2となる。
【0095】このような検索に用いる制御ノードと不要
な制御ノードを区別するために、図7の制御ノードのデ
ータ配列に辞書検索条件情報が付加される。そして、例
えば、辞書検索条件情報に検索不要とマーキングされて
いれば、辞書検索制御モジュール13がその制御ノード
を飛ばして検索処理を進めるようにする。
【0096】図23は、辞書検索条件情報を用いた第4
の検索処理のフローチャートである。図23において処
理が開始されると、辞書検索制御モジュール13は、ま
ずラティスのデータノード“[先頭]”をOPENリス
トに入れる(ステップS51)。次に、OPENリスト
が空かどうかを判定し(ステップS52)、空でなけれ
ばOPENリスト内の先頭要素ノードをノードnとする
(ステップS53)。
【0097】次に、ノードnに対応する制御ノードが検
索不要とマーキングされているかどうかを調べる(ステ
ップS54)。ここでは、ノードnの次に続く制御ノー
ドの辞書検索条件情報が調べられる。そして、検索不要
とマーキングされていなければ、ノードnに対応するレ
コードがトライ辞書のレコードエリアに存在するかどう
かを調べ(ステップS55)、マーキングされていれ
ば、対応するレコードの存在を確認せずに、ステップS
57の処理に進む。
【0098】ステップS55のレコード確認処理は、図
15のようなサブルーチンにより行われる。サブルーチ
ンから真が返されれば、辞書検索制御モジュール13
は、ノードnに対応するレコードへのポインタを用い
て、レコードエリアからレコードを取り出し、そのレコ
ードを検索結果として辞書検索状態情報管理モジュール
14に格納する(ステップS56)。サブルーチンから
偽が返されれば、ノードnに対応するレコードは存在し
ないと判定して、ステップS57の処理に進む。
【0099】例えば、図22のデータノード“性”がノ
ードnとなった場合は、その後の白丸の制御ノードC1
の辞書検索条件情報が調べられる(ステップS54)。
制御ノードC1は検索不要とマーキングされているた
め、対応するレコードの検索は行われない。
【0100】次に、トライ辞書内のノードnの位置のポ
インタがインデックスへのポインタかどうかを調べ(ス
テップS57)、それがインデックスへのポインタでな
ければステップS52以降の処理を繰り返す。ノードn
の位置のポインタがインデックスへのポインタであれ
ば、ラティス内のノードnの子ノードを展開し、各子ノ
ードをOPENリストの適当な場所に挿入する(ステッ
プS58)。そして、ステップS52以降の処理を繰り
返し、ステップS52においてOPENリストが空にな
れば処理を終了する。
【0101】ステップS57において、ノード“性”に
対応するトライ辞書内のポインタが次のインデックスを
指している場合は、“性”の子ノードである“急”がO
PENリストに挿入される(ステップS58)。そし
て、ノード“(性)急”がノードnとなったとき(ステ
ップS53)、対応する黒丸の制御ノードC4はマーキ
ングされていないので、対応するレコードの検索が行わ
れる(ステップS55)。
【0102】同様にして、OPENリスト内に挿入され
た要素ノード“請”、“制”、“(性急)項”、“(請
求)項”、“(制球)項”がノードnとなったときに
も、レコードの検索は行われず、“(請)求”、
“(制)球”、“(性急項)目”、“(請求項)目”、
“(制球項)目”がノードnとなったときに、対応する
レコードが検索される。
【0103】このような第4の検索処理によれば、ラテ
ィスの制御ノードに記された条件に従って、既存の文章
の校正を効率良く行うことができる。次に、図24から
図29までを参照しながら、英語の原画像を例とした文
字認識処理について説明する。
【0104】図24は、認識対象の英単語の原画像の例
を示している。OCRにより図24の原画像“fin
d”の文字認識を行うと、文字の切り出し誤りがない場
合には、例えば図25のような文字ラティスが得られ
る。この文字ラティスをデータノードと制御ノードとを
用いて表すと、図26のようになる。
【0105】図26の第4の文字ラティスにおいては、
図6の第1の文字ラティスと同様に、処理の都合上、デ
ータノード“[先頭]”と“[末尾]”が付け加えられ
ている。また、各データノードの下方に併記された数字
は認識距離値を表し、データノード間には制御ノードC
0、C1、C2、C3、C4、C5が挿入されている。
図26の文字ラティスは文字の切り出し誤りがなかった
場合のものであるが、文字切り出し誤りがある場合に
は、例えば図27に示すようなグラフ状のデータとな
る。図27の第5の文字ラティスを図26の第4の文字
ラティスと比較すると、制御ノードC0とC2の間に新
たに候補文字“h”が挿入されており、これは原画像に
含まれる文字列“fi”を1つの文字として切り出した
場合に対応する。
【0106】辞書検索制御モジュール13は、図26や
図27のような文字ラティスの各ノードをたどりながら
辞書検索を行う。図28は、図27の文字ラティスから
得られる検索キーを有するトライ辞書の構造を示してい
る。図28のトライ辞書において、レコードエリア47
内のレコードは単語自身を表す情報と品詞名のデータ対
で表される。例えば、レコード“hod”は、単語“h
od”を表すデータと名詞を表すデータとからなり、レ
コード“find”は、単語“find”を表すデータ
と、動詞および名詞を表すデータとからなる。
【0107】インデックス41の中の“f”、“h”の
位置には、それぞれ次のインデックス42、45へのポ
インタが格納されている。同様に、インデックス42、
43、45の中の“i”、“n”、“o”の位置には、
それぞれ次のインデックス43、44、46へのポイン
タが格納されている。
【0108】また、インデックス44の先頭にある0の
位置にはレコード“fin”へのポインタが格納され、
“d”、“e”の位置にはそれぞれレコード“fin
d”、“fine”へのポインタが格納されている。ま
た、インデックス46の“d”の位置にはレコード“h
od”へのポインタが格納されている。
【0109】図29は、図27の文字ラティスをキーと
して、図28のトライ辞書の最適探索を行う場合のOP
ENリストの変化を示している。最適探索は、図13の
第1の検索処理のフローに従って行われるが、ステップ
S7においては、認識距離値の和により表される評価関
数の値に基づいて、子ノードの挿入位置が決められる。
図29のOPENリスト内の各要素の下方に併記された
数字は、そのノードの評価関数値を表す。
【0110】図29において、OPENリストL31が
生成される処理については、図14のOPENリストL
1の場合と同様である。次に、OPENリストL31か
ら“[先頭]”が取り出されると(ステップS3)、そ
の子ノード“f”、“t”、“h”が評価関数値の小さ
い順に格納され(ステップS7)、OPENリストはL
32のようになる。
【0111】次に、OPENリストL32から“f”が
取り出されると(ステップS3)、、その子ノード
“(f)i”と“(f)j”が展開される。ここで、
“(f)i”の評価関数値は、図27のデータノード
“f”および“i”の認識距離値から30となり、
“(f)j”の評価関数値は、データノード“f”およ
び“j”の認識距離値から50となる。
【0112】これらの評価関数値が残りの要素ノード
“t”、“h”の評価関数値と比較された結果、
“(f)i”および“(f)j”はOPENリストの先
頭に挿入され(ステップS7)。したがって、OPEN
リストはL33のようになる。
【0113】次に、OPENリストL33から“(f)
i”が取り出されると(ステップS3)、その子ノード
“(fi)n”、“(fi)o”がそれらの評価関数値
40、80に応じた位置に挿入され(ステップS7)、
OPENリストはL34のようになる。
【0114】次に、OPENリストL34から“(f
i)n”が取り出されて(ステップS3)レコード“f
in”が検索結果となると(ステップS5)、次にその
子ノード“(fin)d”、“(fin)a”、“(f
in)e”がそれらの評価関数値60、80、90に応
じた位置に挿入され(ステップS7)、OPENリスト
はL35のようになる。
【0115】以下同様にして、OPENリストはL3
6、L37、L38、L39と変化し、レコード“fi
nd”が次の検索結果となる。このようにして、OPE
Nリスト内の要素ノードが処理され、それが空になると
検索処理が終了する。図29に示された検索結果におい
ても、評価関数値の良い順にレコードが得られている。
【0116】以上の実施形態においては、主として日本
語および英語の文字認識処理、校正支援処理について説
明したが、本発明の辞書検索処理は、音声認識等の他の
処理にも同様に適用される。また、辞書を構成する言語
としては、他にも中国語、韓国語、フランス語、ドイツ
語など任意の言語を用いることができ、検索結果の文字
列に記号や図形等が含まれていてもかまわない。
【0117】また、評価関数を用いた探索において、そ
の値が小さい検索結果ほど確からしいものとしたが、逆
にその値が大きいほど確からしくなるような評価関数を
用いることもできる。その場合には、OPENリスト内
で評価関数値が大きい順に要素ノードを並べればよく、
図20のステップS34および図21のステップS44
では、ノードnの評価関数値が一定値未満であるかどう
かを判定すればよい。
【0118】さらに、OPENリストを用いた検索処理
は一例に過ぎず、他の任意の方法を用いてラティス中の
次の子ノードを展開してもよい。
【0119】
【発明の効果】本発明によれば、与えられたラティス構
造のデータをキーとしてトライ辞書を効率良く検索する
ことができるため、文字認識や音声認識などの辞書検索
を必要とする処理の高速化が可能になる。したがって、
文字入力や音声入力などの入力作業の効率が向上する。
【図面の簡単な説明】
【図1】本発明の原理図である。
【図2】実施形態の辞書検索装置の構成図である。
【図3】情報処理システムの構成図である。
【図4】原画像を示す図である。
【図5】文字ラティスの例を示す図である。
【図6】制御ノードを用いた第1の文字ラティスを示す
図である。
【図7】制御ノードの構造を示す図である。
【図8】データノードの構造を示す図である。
【図9】切り出し誤りを含む第2の文字ラティスを示す
図である。
【図10】第2の文字ラティスを展開した木を示す図で
ある。
【図11】トライ辞書の構造を示す図である。
【図12】OPENリストのノードの構造を示す図であ
る。
【図13】第1の検索処理のフローチャートである。
【図14】縦型探索のOPENリストを示す図である。
【図15】レコード確認処理のフローチャートである。
【図16】横型探索のOPENリストを示す図である。
【図17】最適探索のOPENリストを示す図である。
【図18】検索中止処理のフローチャートである。
【図19】検索再開処理のフローチャートである。
【図20】第2の検索処理のフローチャートである。
【図21】第3の検索処理のフローチャートである。
【図22】校正支援のための第3の文字ラティスを示す
図である。
【図23】第4の検索処理のフローチャートである。
【図24】英単語の原画像を示す図である。
【図25】英語の文字ラティスの例を示す図である。
【図26】第4の文字ラティスを示す図である。
【図27】切り出し誤りを含む第5の文字ラティスを示
す図である。
【図28】英単語のトライ辞書を示す図である。
【図29】英単語の最適探索のOPENリストを示す図
である。
【符号の説明】
1 検索手段 2 複合キー管理手段 3 検索状態記憶手段 4 出力手段 11 辞書検索装置 12 ラティス情報管理モジュール 13 辞書検索制御モジュール 14 辞書検索状態情報管理モジュール 15 辞書検索状態情報 16 評価関数モジュール 17 枝苅り判定モジュール 18 トライ辞書アクセスモジュール 19 トライ辞書格納装置 21 CPU 22 メモリ 23 入力装置 24 出力装置 25 バス 31、32、33、34、41、42、43、44、4
5、46 インデックス 35、47 レコードエリア C0、C1、C2、C3、C4、C5、C6 制御ノー
ド L1、L2、L3、L4、L5、L6、L7、L8、L
11、L12、L13、L14、L15、L16、L1
7、L18、L21、L22、L23、L24、L2
5、L26、L27、L28、L31、L32、L3
3、L34、L35、L36、L37、L38、L39
OPENリスト

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 与えられた検索キーを用いてトライ辞書
    を検索し、得られた結果を出力する情報処理装置におい
    て、 有機的に組み合わされた複数のデータノードからなる複
    合キーであって、2つ以上の検索キーを含む該複合キー
    の情報を管理する複合キー管理手段と、 前記複合キー内のデータノードをたどりながら、前記ト
    ライ辞書の対応するレコードを検索する検索手段と、 前記複合キー内における検索対象のデータノードの位置
    を表す情報と、前記検索手段が得た検索結果とを記憶す
    る検索状態記憶手段と、 前記検索結果を出力する出力手段とを備えることを特徴
    とする辞書検索装置。
  2. 【請求項2】 前記複合キー管理手段は、文字認識の認
    識結果の候補文字に対応するデータノードからなる前記
    複合キーの情報を管理することを特徴とする請求項1記
    載の辞書検索装置。
  3. 【請求項3】 前記複合キー管理手段は、音声認識の認
    識結果の候補音素に対応するデータノードからなる前記
    複合キーの情報を管理することを特徴とする請求項1記
    載の辞書検索装置。
  4. 【請求項4】 前記複合キー管理手段は、前記複数のデ
    ータノードにおける第1のデータノードと第2のデータ
    ノードの間の接続関係を表す制御ノードを含む前記複合
    キーの情報を管理することを特徴とする請求項1記載の
    辞書検索装置。
  5. 【請求項5】 前記複合キー管理手段は、前記制御ノー
    ドに検索の要否を表す辞書検索条件情報を付加して管理
    し、前記検索手段は、該辞書検索条件情報が検索不要を
    表す時、該制御ノードに対応するデータノードについ
    て、対応する前記トライ辞書内のレコードを検索しない
    ことを特徴とする請求項4記載の辞書検索装置。
  6. 【請求項6】 前記複合キー管理手段は、前記複数のデ
    ータノードが格子状に組み合わされたラティス構造のデ
    ータを、前記複合キーの情報として管理することを特徴
    とする請求項1記載の辞書検索装置。
  7. 【請求項7】 前記複合キー管理手段は、切り出し誤り
    に対応するデータノードを含み、前記複数のデータノー
    ドがグラフ状に組み合わされたラティス構造のデータ
    を、前記複合キーの情報として管理することを特徴とす
    る請求項1記載の辞書検索装置。
  8. 【請求項8】 前記検索手段は、前記複合キー内のデー
    タノードをたどる過程において、適当な位置で検索を中
    断することを特徴とする請求項1記載の辞書検索装置。
  9. 【請求項9】 前記検索手段は、前記検索状態記憶手段
    が記憶する情報を用いて、中断された位置以降の検索を
    再開することを特徴とする請求項8記載の辞書検索装
    置。
  10. 【請求項10】 前記検索手段は、前記複合キー内のデ
    ータノードをたどる過程において、該複合キーを展開し
    た木に関する縦型探索を用いることを特徴とする請求項
    1記載の辞書検索装置。
  11. 【請求項11】 前記検索手段は、前記複合キー内のデ
    ータノードをたどる過程において、該複合キーを展開し
    た木に関する横型探索を用いることを特徴とする請求項
    1記載の辞書検索装置。
  12. 【請求項12】 前記複合キーを展開した木のノードに
    関する評価関数値を計算する評価関数計算手段をさらに
    備え、前記検索状態記憶手段は、該評価関数値を該検索
    対象のデータノードと対応づけて記憶し、前記検索手段
    は、前記複合キー内のデータノードをたどる過程におい
    て、該評価関数値の良いデータノードから順に検索対象
    とすることを特徴とする請求項1記載の辞書検索装置。
  13. 【請求項13】 前記検索手段は、前記評価関数値が一
    定水準以上良い値であるようなデータノードに対応する
    前記トライ辞書内のレコードを、前記検索結果として取
    り出すことを特徴とする請求項12記載の辞書検索装
    置。
  14. 【請求項14】 前記評価関数計算手段は、前記複合キ
    ー内のデータノードをたどる過程において単調に増加す
    る評価関数を用いて、前記評価関数値を計算し、前記検
    索手段は、該評価関数値の小さなデータノードから順に
    検索対象とすることを特徴とする請求項12記載の辞書
    検索装置。
  15. 【請求項15】 前記検索手段は、前記評価関数値が一
    定値以上のデータノードについて、対応する前記トライ
    辞書内のレコードを検索しないことを特徴とする請求項
    14記載の辞書検索装置。
  16. 【請求項16】 前記検索手段は、前記評価関数値が一
    定値以上のデータノードについて、後続するデータノー
    ドの検索を打ち切ることを特徴とする請求項14記載の
    辞書検索装置。
  17. 【請求項17】 与えられた検索キーを用いてトライ辞
    書を検索し、得られた結果を出力する情報処理装置にお
    ける記憶媒体であって、 有機的に組み合わされた複数のデータノードからなる複
    合キーであって、2つ以上の検索キーを含む該複合キー
    の情報を管理する複合キー管理手段と、 前記複合キー内のデータノードをたどりながら、前記ト
    ライ辞書の対応するレコードを検索する検索手段と、 前記複合キー内における検索対象のデータノードの位置
    を表す情報と、前記検索手段が得た検索結果とを管理す
    る検索状態管理手段と、 前記検索結果を出力する出力手段とを備えることを特徴
    とする記憶媒体。
  18. 【請求項18】 与えられた検索キーを用いてトライ辞
    書を検索する方法において、 有機的に組み合わされた複数のデータノードからなる複
    合キーであって、2つ以上の検索キーを含む該複合キー
    の情報を生成し、 前記複合キー内のデータノードをたどりながら、検索対
    象のデータノードの位置を表す情報に基づいて、前記ト
    ライ辞書の対応するレコードを検索し、 得られた検索結果を出力することを特徴とする辞書検索
    方法。
JP29298995A 1995-11-10 1995-11-10 ラティスをキーとした検索を行う辞書検索装置および方法 Expired - Fee Related JP3152871B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP29298995A JP3152871B2 (ja) 1995-11-10 1995-11-10 ラティスをキーとした検索を行う辞書検索装置および方法
US08/725,955 US5778405A (en) 1995-11-10 1996-10-07 Apparatus and method for retrieving dictionary based on lattice as a key
KR1019960046646A KR100286501B1 (ko) 1995-11-10 1996-10-18 래티스를 키로 하여 검색을 행하는 사전 검색 장치 및 방법
CN96112039A CN1096036C (zh) 1995-11-10 1996-11-05 以格阵作关键字的字典检索装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29298995A JP3152871B2 (ja) 1995-11-10 1995-11-10 ラティスをキーとした検索を行う辞書検索装置および方法

Publications (2)

Publication Number Publication Date
JPH09134369A true JPH09134369A (ja) 1997-05-20
JP3152871B2 JP3152871B2 (ja) 2001-04-03

Family

ID=17789038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29298995A Expired - Fee Related JP3152871B2 (ja) 1995-11-10 1995-11-10 ラティスをキーとした検索を行う辞書検索装置および方法

Country Status (4)

Country Link
US (1) US5778405A (ja)
JP (1) JP3152871B2 (ja)
KR (1) KR100286501B1 (ja)
CN (1) CN1096036C (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6169972B1 (en) 1998-02-27 2001-01-02 Kabushiki Kaisha Toshiba Information analysis and method
US7142716B2 (en) 2001-04-18 2006-11-28 Fujitsu Limited Apparatus for searching document images using a result of character recognition
EP1040430B1 (en) * 1997-12-19 2009-06-03 Telefonaktiebolaget LM Ericsson (publ) Management in data structures
JPWO2010044123A1 (ja) * 2008-10-14 2012-03-08 三菱電機株式会社 検索装置、検索用索引作成装置、および検索システム
JP5621777B2 (ja) * 2009-09-24 2014-11-12 日本電気株式会社 単語認識装置、方法及びプログラムが格納された非一時的なコンピュータ可読媒体並びに発送物区分装置

Families Citing this family (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055515A (en) * 1996-07-30 2000-04-25 International Business Machines Corporation Enhanced tree control system for navigating lattices data structures and displaying configurable lattice-node labels
US6341372B1 (en) * 1997-05-01 2002-01-22 William E. Datig Universal machine translator of arbitrary languages
CN100334582C (zh) * 1999-01-08 2007-08-29 国际商业机器公司 在手持装置中存储和检索数据的方法及装置
ATE306098T1 (de) * 1999-07-30 2005-10-15 Intertrust Tech Corp Verfahren und systeme zur transaktionsaufzeichnungsübertragung unter anwendung von schwellen und einem mehrstufigen protokoll
US6671856B1 (en) * 1999-09-01 2003-12-30 International Business Machines Corporation Method, system, and program for determining boundaries in a string using a dictionary
DE19944608A1 (de) * 1999-09-17 2001-03-22 Philips Corp Intellectual Pty Erkennung einer in buchstabierter Form vorliegenden Sprachäußerungseingabe
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
AUPQ867700A0 (en) * 2000-07-10 2000-08-03 Canon Kabushiki Kaisha Delivering multimedia descriptions
US6941294B2 (en) * 2000-08-28 2005-09-06 Emotion, Inc. Method and apparatus for digital media management, retrieval, and collaboration
GB2367917A (en) * 2000-10-12 2002-04-17 Qas Systems Ltd Retrieving data representing a postal address from a database of postal addresses using a trie structure
US7451075B2 (en) * 2000-12-29 2008-11-11 Microsoft Corporation Compressed speech lexicon and method and apparatus for creating and accessing the speech lexicon
JP2002259388A (ja) * 2001-03-05 2002-09-13 Fujitsu Ltd 画像検索システム、方法及び画像検索プログラム
FI121583B (fi) * 2002-07-05 2011-01-14 Syslore Oy Symbolijonon etsintä
JP4463504B2 (ja) * 2002-07-29 2010-05-19 株式会社リコー 画像形成装置および複写機
DE50305344D1 (de) * 2003-01-29 2006-11-23 Harman Becker Automotive Sys Verfahren und Vorrichtung zur Einschränkung des Suchumfangs in einem Lexikon für Spracherkennung
JP4461769B2 (ja) * 2003-10-29 2010-05-12 株式会社日立製作所 文書検索・閲覧手法及び文書検索・閲覧装置
DE602005012596D1 (de) * 2004-10-19 2009-03-19 France Telecom Spracherkennungsverfahren mit temporaler markereinfügung und entsprechendes system
US8175889B1 (en) 2005-04-06 2012-05-08 Experian Information Solutions, Inc. Systems and methods for tracking changes of address based on service disconnect/connect data
US7908242B1 (en) 2005-04-11 2011-03-15 Experian Information Solutions, Inc. Systems and methods for optimizing database queries
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
EP2074572A4 (en) 2006-08-17 2011-02-23 Experian Inf Solutions Inc SYSTEM AND METHOD FOR PROVIDING A BRAND FOR A USED VEHICLE
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7899822B2 (en) * 2006-09-08 2011-03-01 International Business Machines Corporation Automatically linking documents with relevant structured information
WO2008039860A1 (en) 2006-09-26 2008-04-03 Experian Information Solutions, Inc. System and method for linking mutliple entities in a business database
US8036979B1 (en) 2006-10-05 2011-10-11 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US8606666B1 (en) 2007-01-31 2013-12-10 Experian Information Solutions, Inc. System and method for providing an aggregation tool
US8285656B1 (en) 2007-03-30 2012-10-09 Consumerinfo.Com, Inc. Systems and methods for data verification
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US7742982B2 (en) 2007-04-12 2010-06-22 Experian Marketing Solutions, Inc. Systems and methods for determining thin-file records and determining thin-file risk levels
US20080294540A1 (en) 2007-05-25 2008-11-27 Celka Christopher J System and method for automated detection of never-pay data sets
JP2009070226A (ja) * 2007-09-14 2009-04-02 Ricoh Co Ltd マッチング装置
US8301574B2 (en) 2007-09-17 2012-10-30 Experian Marketing Solutions, Inc. Multimedia engagement study
US9690820B1 (en) 2007-09-27 2017-06-27 Experian Information Solutions, Inc. Database system for triggering event notifications based on updates to database records
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8232973B2 (en) 2008-01-09 2012-07-31 Apple Inc. Method, device, and graphical user interface providing word recommendations for text input
JP5125573B2 (ja) * 2008-02-12 2013-01-23 富士通株式会社 領域抽出プログラム、文字認識プログラム、および文字認識装置
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US7991689B1 (en) 2008-07-23 2011-08-02 Experian Information Solutions, Inc. Systems and methods for detecting bust out fraud using credit data
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US8280723B1 (en) * 2009-01-29 2012-10-02 Intuit Inc. Technique for comparing a string to large sets of strings
US20100235780A1 (en) * 2009-03-16 2010-09-16 Westerman Wayne C System and Method for Identifying Words Based on a Sequence of Keyboard Events
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US20100332292A1 (en) 2009-06-30 2010-12-30 Experian Information Solutions, Inc. System and method for evaluating vehicle purchase loyalty
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8364518B1 (en) 2009-07-08 2013-01-29 Experian Ltd. Systems and methods for forecasting household economics
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8725613B1 (en) 2010-04-27 2014-05-13 Experian Information Solutions, Inc. Systems and methods for early account score and notification
US9152727B1 (en) 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
US8639616B1 (en) 2010-10-01 2014-01-28 Experian Information Solutions, Inc. Business to contact linkage system
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
EP2492824B1 (en) * 2011-02-23 2020-04-01 Harman Becker Automotive Systems GmbH Method of searching a data base, navigation device and method of generating an index structure
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9483606B1 (en) 2011-07-08 2016-11-01 Consumerinfo.Com, Inc. Lifescore
WO2013009920A1 (en) 2011-07-12 2013-01-17 Experian Information Solutions, Inc. Systems and methods for a large-scale credit data processing architecture
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9853959B1 (en) 2012-05-07 2017-12-26 Consumerinfo.Com, Inc. Storage and maintenance of personal data
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR20150104615A (ko) 2013-02-07 2015-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
CN105027197B (zh) 2013-03-15 2018-12-14 苹果公司 训练至少部分语音命令系统
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
AU2014278595B2 (en) 2013-06-13 2017-04-06 Apple Inc. System and method for emergency calls initiated by voice command
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
US10102536B1 (en) 2013-11-15 2018-10-16 Experian Information Solutions, Inc. Micro-geographic aggregation system
US9529851B1 (en) 2013-12-02 2016-12-27 Experian Information Solutions, Inc. Server architecture for electronic data quality processing
US10262362B1 (en) 2014-02-14 2019-04-16 Experian Information Solutions, Inc. Automatic generation of code for attributes
US9576030B1 (en) 2014-05-07 2017-02-21 Consumerinfo.Com, Inc. Keeping up with the joneses
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US10242019B1 (en) 2014-12-19 2019-03-26 Experian Information Solutions, Inc. User behavior segmentation using latent topic detection
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US20180060954A1 (en) 2016-08-24 2018-03-01 Experian Information Solutions, Inc. Sensors and system for detection of device movement and authentication of device user based on messaging service data from service provider
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11227001B2 (en) 2017-01-31 2022-01-18 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10963434B1 (en) 2018-09-07 2021-03-30 Experian Information Solutions, Inc. Data architecture for supporting multiple search models
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
US11880377B1 (en) 2021-03-26 2024-01-23 Experian Information Solutions, Inc. Systems and methods for entity resolution

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355473A (en) * 1991-06-20 1994-10-11 Lawrence Au Indexed record locating and counting mechanism
US5357431A (en) * 1992-01-27 1994-10-18 Fujitsu Limited Character string retrieval system using index and unit for making the index
US5640551A (en) * 1993-04-14 1997-06-17 Apple Computer, Inc. Efficient high speed trie search process
JP2683870B2 (ja) * 1994-05-23 1997-12-03 日本アイ・ビー・エム株式会社 文字列検索システム及び方法
US5528701A (en) * 1994-09-02 1996-06-18 Panasonic Technologies, Inc. Trie based method for indexing handwritten databases

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1040430B1 (en) * 1997-12-19 2009-06-03 Telefonaktiebolaget LM Ericsson (publ) Management in data structures
US6169972B1 (en) 1998-02-27 2001-01-02 Kabushiki Kaisha Toshiba Information analysis and method
US7142716B2 (en) 2001-04-18 2006-11-28 Fujitsu Limited Apparatus for searching document images using a result of character recognition
JPWO2010044123A1 (ja) * 2008-10-14 2012-03-08 三菱電機株式会社 検索装置、検索用索引作成装置、および検索システム
JP5621777B2 (ja) * 2009-09-24 2014-11-12 日本電気株式会社 単語認識装置、方法及びプログラムが格納された非一時的なコンピュータ可読媒体並びに発送物区分装置

Also Published As

Publication number Publication date
KR970029146A (ko) 1997-06-26
CN1096036C (zh) 2002-12-11
JP3152871B2 (ja) 2001-04-03
KR100286501B1 (ko) 2001-04-16
CN1153356A (zh) 1997-07-02
US5778405A (en) 1998-07-07

Similar Documents

Publication Publication Date Title
JPH09134369A (ja) ラティスをキーとした検索を行う辞書検索装置および方法
Blumer et al. Complete inverted files for efficient text retrieval and analysis
US6789231B1 (en) Method and system for providing alternatives for text derived from stochastic input sources
US7536297B2 (en) System and method for hybrid text mining for finding abbreviations and their definitions
JP5376163B2 (ja) 文書管理・検索システムおよび文書の管理・検索方法
JP4459443B2 (ja) 中国語テキストにおける単語分割
US5553284A (en) Method for indexing and searching handwritten documents in a database
JP2002215619A (ja) 翻訳文書からの翻訳文抽出方法
CN111444330A (zh) 提取短文本关键词的方法、装置、设备及存储介质
CN112800769B (zh) 命名实体识别方法、装置、计算机设备和存储介质
CN111832299A (zh) 一种中文分词系统
JP3777456B2 (ja) 日本語形態素解析方法と装置及び辞書未登録語収集方法と装置
JPH0844771A (ja) 情報検索装置
JP5238034B2 (ja) 近似照合装置、近似照合方法、プログラム及び記録媒体
JP3309174B2 (ja) 文字認識方法及び装置
Andrés et al. Approximate search for keywords in handwritten text images
KR101694179B1 (ko) 모음 제거 기반 인덱스 생성 방법 및 장치
JP3758241B2 (ja) 音声情報検索装置
JPH0652222A (ja) 情報検索処理装置
CN112559527B (zh) 一种基于多叉树节点关系匹配的数据转换方法
JP2005234800A (ja) 用例機械翻訳装置及び用例翻訳コンピュータプログラム、並びに用例検索装置及び用例検索コンピュータプログラム
JP5160120B2 (ja) 情報検索装置、情報検索方法及び情報検索プログラム
JPH07319890A (ja) 文書登録検索システム
JP2000259629A (ja) 形態素解析方法およびその装置
JPH0652151A (ja) 共起学習装置及びこれを用いたかな漢字変換装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010116

LAPS Cancellation because of no payment of annual fees