(57)【特許請求の範囲】
【請求項１】
複数のパターンにより構成されるパターン列を入力するパターン入力部と、
前記パターン入力部から入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力するパターン認識部と、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割するパターン列分割部と、
前記パターン列分割部において分割された前方の部分パターン列に相当する範囲に対して、前記パターン認識部から出力された前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う文脈処理部と、
前記パターン列分割部において分割された後方の部分パターン列と、前記パターン認識部から出力された前記認識候補文字とを組み合わせて、検索文字列を生成する検索文字列生成部と、
前記検索文字列生成部により生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する予測辞書検索部と、
前記文脈処理部における文脈処理の結果と、前記予測辞書検索部において抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示する結果表示部とを含むことを特徴とする文字列予測装置。
【請求項２】
表示された一又は複数の前記候補文字列からユーザが選択指示した前記候補文字列が入力されるべき文字列である入力文字列として確定する結果確定部と、
確定された前記入力文字列を前記予測辞書に登録する予測辞書登録部をさらに含む請求項１記載の文字列予測装置。
【請求項３】
前記文脈処理の結果出力された文字列を分割する文字列分割部と、
分割された最後の文字列の先頭位置を、入力パターン列を前後２つの部分パターン列に分割するパターン分割位置として定める分割パターン位置決定部とをさらに含み、
前記文脈処理部において、前記パターン入力部から入力された前記パターン列全体に対して文脈処理を行い、
前記文字列分割部において前記文脈処理の結果出力された文字列を分割し、
前記分割パターン位置決定部において、パターン分割位置を決定し、
前記パターン列分割部において分割された後方の部分パターン列と、前記パターン認識部から出力された前記認識候補文字とを組み合わせて、検索文字列を生成して、前記予測辞書検索部において予測辞書の検索を行う請求項１又は２に記載の文字列予測装置。
【請求項４】
複数のパターンにより構成されるパターン列を入力する工程と、
入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力する工程と、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割する工程と、
分割された前方の部分パターン列に相当する範囲に対して、前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う工程と、
分割された後方の部分パターン列と前記認識候補文字とを組み合わせて、検索文字列を生成する工程と、
生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する工程と、
前記文脈処理の結果と抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示する工程とを含むことを特徴とする文字列予測方法。
【請求項５】
複数のパターンにより構成されるパターン列を入力するステップと、
入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力するステップと、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割するステップと、
分割された前方の部分パターン列に相当する範囲に対して、前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行うステップと、
分割された後方の部分パターン列と前記認識候補文字とを組み合わせて、検索文字列を生成するステップと、
生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出するステップと、
前記文脈処理の結果と抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示するステップとを含むことを特徴とする文字列予測方法を具現化するコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文字や音声等の各種パターン情報を認識して文字列に変換する文字列予測装置及びその方法並びに当該方法を具現化するコンピュータ実行可能なプログラムに関する。
【０００２】
【従来の技術】
昨今のコンピュータ技術の急速な進展に伴い、ＣＰＵにおける演算処理速度についても非常に高速化してきている。このような処理の高速化に伴って、従来処理速度の観点からパターン認識には不向きであるとされていた一般家庭用のパーソナルコンピュータでさえ、手書き入力や音声入力等を用いた各種のアプリケーションを容易に用いることができる環境が整いつつある。
【０００３】
かかる環境下において、タブレットから入力された筆跡パターンやマイクから入力された音声パターン等の各種パターンを認識して文字列に変換する技術が日々開発されている。さらに、パターンによる入力効率をより高めるために、予測辞書を参照することによってパターンとして入力されていない部分を予測して提示することにより、すべてのパターンを入力しなくても、入力したい文字列を入力することができるようにすることも考えられている。
【０００４】
例えば、特開平７−１９２０９５号公報においては、手書きで入力したパターン列に対して認識処理を行って文字列に変換し、変換された文字列を先頭部分にもつ単語を単語辞書を参照することによって抽出して、最終的に入力されるべき文字列を予測する方法が開示されている。
【０００５】
また、特開平１０−９１７２８号公報においては、ユーザが入力したパターン列の各パターンを認識して複数の候補文字に変換し、候補文字を組み合わせることによって入力されたパターン列に対する複数の文字列を生成し、生成された文字列を先頭部分にもつ単語を単語辞書から検索して、最終的に入力されるべき文字列を予測する方法が開示されている。
【０００６】
さらに、特開平２０００―５７１３３号公報においては、キーボード等から文字列を入力し、入力された文字列について文字列連鎖情報を用いて部分文字列に分割し、分割された最後尾の部分文字列を先頭とする文字列を予測辞書から検索することにより、入力した文字列の任意の位置から予測辞書の検索を行うことができる方法が開示されている。
【０００７】
【発明が解決しようとする課題】
しかしながら、上述したような入力されたパターン列に基づいて最終的に入力されるべき文字列を予測する方法においては、一般に入力したパターン列の先頭部分から予測を行うことは可能であるが、入力したパターン列における任意の部分から予測を行うことはできないという問題点があった。すなわち、パターン列としてではなく、通常の文字列として入力された場合には、文字列連鎖情報を用いることによって部分文字列に分割することができ、文字列における任意の部分から最終的に入力されるべき文字列を予測することができるものの、パターン列として入力された場合には、たとえ文字列連鎖情報を用いたとしてもパターン列を部分パターン列へと分割することができず、パターン列の先頭部分から予測を行うことしかできないからである。
【０００８】
例えば、上述した特開平２０００―５７１３３号公報に開示されている方法では、入力されるものが文字列であることを前提としている。したがって、文字列について文字列連鎖情報を用いて部分文字列に分割することにより、文字列の任意の部分からの予測を行うことができるようになっている。しかし、入力されるものがパターン列である場合には、文字列連鎖情報を用いても部分文字列に分割することはできないことから、パターン列の任意の部分から予測辞書の参照を行うことができないことになる。
【０００９】
また、特開平７−１９２０９５号公報に開示されている方法では、パターンを認識した結果が正しい認識結果であるという条件下において、前述した特開平２０００―５７１３３号公報に開示されている方法と組み合わせることによって、入力したパターン列の任意の部分から予測を行うことも考えられる。すなわち、事前にパターンを認識文字列に変換しておくことで、文字列の任意の部分を用いて予測辞書の検索を行うことになる。しかし、パターンを認識した結果が常に正しいという保証はできず、誤認識が含まれている場合においては予測辞書の検索結果についても信頼性が低くなり、最終的に入力されるべき文字列を得ることができないという問題点が残されている。
【００１０】
さらに、特開平１０−９１７２８号公報に開示されている方法では、パターン認識の曖昧性を考慮した上で予測を行うことから、パターンを認識した候補文字列が正しい認識結果でない場合であっても所定の精度を維持しながら予測辞書の検索を行うことができるものと考えられる。しかし、予測辞書の検索時において、キー情報としての候補文字列における開始位置が、入力されたパターンの先頭文字に限定されていることから、入力されたパターン列の任意の位置から予測辞書の検索を行うことはできないという問題点は残されている。
【００１１】
そこで本発明は、上述したような問題点を解決するために、パターン列が入力された場合であっても、当該パターン列の任意の位置から予測辞書の検索を行うことを可能とする文字列予測装置及び方法を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するために本発明にかかる文字列予測装置は、複数のパターンにより構成されるパターン列を入力するパターン入力部と、パターン入力部から入力されたパターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに評価値の高い順に認識候補文字を出力するパターン認識部と、入力されたパターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割するパターン列分割部と、パターン列分割部において分割された前方の部分パターン列に相当する範囲に対して、パターン認識部から出力された認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う文脈処理部と、パターン列分割部において分割された後方の部分パターン列と、パターン認識部から出力された認識候補文字とを組み合わせて、検索文字列を生成する検索文字列生成部と、検索文字列生成部により生成された検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する予測辞書検索部と、文脈処理部における文脈処理の結果と、予測辞書検索部において抽出された予測候補文字列に基づいて、一又は複数の候補文字列を表示する結果表示部とを含むことを特徴とする。
【００１３】
かかる構成により、入力されたパターン列のうち、任意の位置にあるパターンを先頭パターンとする部分パターン列すべてについて認識候補文字を組み合わせて検索文字列を生成することになることから、パターン列が入力された場合であっても、パターン列の任意の位置から予測辞書の検索を行うことができ、予測精度の向上が期待できる。
【００１４】
また、本発明にかかる文字列予測装置は、表示された一又は複数の候補文字列からユーザが選択指示した候補文字列が入力されるべき文字列である入力文字列として確定する結果確定部と、確定された入力文字列を予測辞書に登録する予測辞書登録部をさらに含むことが好ましい。入力文字列として認識された結果を次回以降の処理に反映させるためである。
【００１５】
また、本発明にかかる文字列予測装置は、文脈処理の結果出力された文字列を分割する文字列分割部と、分割された最後の文字列の先頭位置を、入力パターン列を前後２つの部分パターン列に分割するパターン分割位置として定める分割パターン位置決定部とをさらに含み、文脈処理部において、パターン入力部から入力されたパターン列全体に対して文脈処理を行い、文字列分割部において文脈処理の結果出力された文字列を分割し、分割パターン位置決定部において、パターン分割位置を決定し、パターン列分割部において分割された後方の部分パターン列と、パターン認識部から出力された認識候補文字とを組み合わせて、検索文字列を生成して、予測辞書検索部において予測辞書の検索を行うことが好ましい。文脈処理の結果に基づいてパターン分割位置を決定することにより、入力されたパターン列の適切な位置から予測辞書の検索を行うことができるようになり、予測辞書を検索するための演算処理負荷を軽減することができるからである。
【００１６】
また、本発明は、上記のような文字列予測装置の機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、複数のパターンにより構成されるパターン列を入力する工程と、入力されたパターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに評価値の高い順に認識候補文字を出力する工程と、入力されたパターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割する工程と、分割された前方の部分パターン列に相当する範囲に対して、認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う工程と、分割された後方の部分パターン列と認識候補文字とを組み合わせて、検索文字列を生成する工程と、生成された検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する工程と、文脈処理の結果と抽出された予測候補文字列に基づいて、一又は複数の候補文字列を表示する工程とを含む文字列予測方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【００１７】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、入力されたパターン列のうち、任意の位置にあるパターンを先頭パターンとする部分パターン列すべてについて認識候補文字を組み合わせて検索文字列を生成することになることから、パターン列が入力された場合であっても、パターン列の任意の位置から予測辞書の検索を行うことができ、予測精度の向上が期待できる文字列予測装置を実現することが可能となる。
【００１８】
【発明の実施の形態】
（実施の形態１）
以下、本発明の実施の形態１にかかる文字列予測装置について、図面を参照しながら説明する。図１は本発明の実施の形態１にかかる文字列予測装置の構成図である。なお、本実施の形態１においては、入力されるパターン列として、手書き文字による入力を想定した場合について説明する。
【００１９】
図１において、１はパターン入力部を示しており、ペン型タブレットやマウス等の手書き文字入力媒体を意味している。２はパターン認識部を示しており、入力されたパターン列に基づいてパターン認識用辞書３を参照して、認識候補文字列を出力するものである。
【００２０】
また、４はパターン列分割部を示しており、入力されたパターン列を任意の位置で分割するものである。なお、パターン列分割部４における分割においては、前方あるいは後方の部分パターン列が空きパターンであっても良い。
【００２１】
５は文脈処理部を示しており、前方の部分パターン列に対応する範囲について文脈辞書６を参照しながら文脈処理を行うものである。
【００２２】
また、７は検索文字列生成部を示しており、後方の部分パターン列に対して、認識候補文字を組み合わせて、予測辞書９を照会するためのキー情報となる検索文字列を生成するものである。予測辞書９の照会は、予測辞書検索部８で実施され、予測候補文字列が出力される。
【００２３】
そして、１０は前述したパターン入力部１と同時に表示可能な結果表示部を示しており、一又は複数の候補文字列が表示されることになる。
【００２４】
図１において、パターン入力部１からは、認識すべきパターンが入力される。本実施の形態１においては、入力されるパターンとして手書き文字列を想定しているが、特にこれに限定されるものではなく、音声パターン等、認識することが可能なパターン列であれば何でも良い。そして、入力されたパターンはパターン認識部２に送られる。
【００２５】
本実施の形態１において、図２に示すような手書き文字「このオ」がパターン列として入力された場合について説明する。なお、図２においては、枠の中に手書きの文字を一文字入力するような入力形態となっているが、特にこれに限定されるわけではなく、枠がない入力部分に手書き文字列を入力する形態であっても良い。
【００２６】
パターン認識部２では、パターン認識用辞書３の内容を参照して、入力されたパターン列を照合し、抽出された認識候補文字と、それぞれの認識候補文字に対応するパターン評価値を出力することになる。認識候補文字の抽出には、一般的に用いられるＯＣＲ認識エンジンやオンライン認識エンジン等、どのような認識エンジンを用いても良い。また、パターン評価値の算出方法についても特に限定されるものではなく、入力されたパターンとパターン認識用辞書３に登録されているパターンとの間で距離計算を行ったり、特徴点に基づいて算出したり、様々な方法が考えられる。
【００２７】
図３に、図２に示す手書き文字「このオ」がパターン列として入力された場合の認識結果の一例を示す。図３において、各認識候補文字の横に表示されている数字は、それぞれの認識候補文字のパターン評価値を示すものであり、数字が大きいほど認識文字として選択される可能性が高いことを示している。
【００２８】
次に、パターン列分割部４では、任意の位置を分割位置として、入力されたパターン列を前後２つの部分パターン列に分割することになる。図４に、パターン列分割部４において部分パターン列に分割された場合の一例を示す。
【００２９】
次に、文脈処理部５では、パターン列分割部４で分割された、前方の部分パターン列に対応する範囲について、文脈辞書６を参照しながら文脈処理を行うことになる。文脈処理の結果については、分割位置と一対として記憶することになる。すなわち、図４に示す例の場合、前方の部分パターン列に対する文脈処理の結果「この」と、分割位置‘３’とを一対のデータとして記憶することになる。
【００３０】
次に、検索文字列生成部７では、任意の位置で分割された後方の部分パターン列に対して、認識候補文字の組み合わせによって検索文字列を生成することになる。図３に示す認識候補文字からは、図５に示すような検索文字列が生成される。
【００３１】
図５において、分割位置‘１’とは入力されたパターン列「このオ」の第一文字「こ」の前で分割されたことを意味しており、分割位置‘２’とは入力されたパターン列「このオ」の第二文字「の」の前で分割されたことを、分割位置‘３’とは入力されたパターン列「このオ」の第三文字「オ」の前で分割されたことを、それぞれ意味している。また、ここで生成される検索文字列は、文字列生成時に使用した認識候補文字に対応するパターン評価値の合計とともに生成される。
【００３２】
次に、予測辞書検索部８では、予測辞書９から順次文字列を読み出し、検索文字列生成部７で生成された検索文字列との照合を行う。予測辞書９の検索方法としては、検索文字列と予測辞書９から読み出した文字列を前方一致照合する方法でも良いし、検索文字列と予測辞書９から読み出した文字列と完全一致照合する方法でも良い。完全一致照合する方法の場合は、予測辞書９には、文字列とそれに後続する文字列を対で記憶しておくことになる。検索文字列と予測辞書９から読み出した文字列とが完全一致した場合に、当該一致した文字列に後続する文字列を検索することができるからである。
【００３３】
図６に検索された予測候補文字列の例を示している。図６において、「能」、「色兼備」、「ンライン」、「フライン」はパターン列として入力されていない予測部分であることを示している。
【００３４】
最後に結果表示部１０においては、予測辞書検索部８において抽出された予測候補文字列と、文脈処理部５において処理された文脈処理結果を参照しながら、予測結果としての候補文字列を表示することになる。図７に、候補文字列の画面への表示例を示している。ここでは「この才能」及び「このオンライン」が候補文字列として表示されている。図７の例においては、予測辞書９との照合で取得した予測候補文字列の前に、その予測候補文字列と同じ分割位置を有する文脈処理結果文字列を結合して表示されている。
【００３５】
また、候補文字列を表示する際には、ユーザが入力したパターン列に対応する文字列部分と、本実施の形態にかかる文字列予測装置が予測して出力した文字列部分との区別がつくように表示することも考えられる。表示されている候補文字列のうち、どこまでがユーザが入力した部分に対応している部分なのかが、容易に認識できるからである。
【００３６】
図８に、候補文字列の他の画面表示例を示している。図８においては、「才能」、「オンライン」、及び「オフライン」の３つが候補文字列として表示されている。図８の例においては、予測辞書９との照合により得られた予測候補文字列が候補文字列として表示されている。
【００３７】
このように、予測辞書９との照合により得られた予測候補文字列を候補文字列として表示することによって、候補文字列を表示する領域が小さい場合であっても、より多くの候補文字列を表示することが可能となると同時に、ユーザにとっては、候補文字列が入力されるべき文字列か否かの判断が容易になるというメリットが生じる。
【００３８】
なお、表示方法としては、図７や図８に示すように、所定の優先順位によって並列して表示する方法に限定されるものではなく、選択可能な表示方法であればどのような方法であっても良い。
【００３９】
また、分割位置が異なる予測候補文字列が存在する場合には、分割位置がより前に位置する、すなわち分割位置を示す値がより小さい予測候補文字列の表示優先順位を高くすることが考えられる。分割位置がより前に位置する予測候補文字列であればあるほど、予測辞書９と照合した文字数が多いことから、より信頼性が高いものと判断できるからである。
【００４０】
さらに、過去に用いられた頻度が異なる予測候補文字列がある場合には、用いられた頻度が大きい予測候補文字列の表示優先順位を高くすることが考えられる。用いられた頻度が大きい予測候補文字列の方がより信頼性が高いからである。この場合、頻度に関する情報については、履歴情報として保存しておく必要が生じる。
【００４１】
また、図６における「オ」と「才」のように、パターン評価値が異なるパターンに対する予測候補文字列がある場合には、よりパターン評価値が高いパターンに対する予測候補文字列の表示優先順位を高くすることが好ましい。パターン評価値が高い予測候補文字列の方がより信頼性が高いものと判断できるからである。
【００４２】
この後の処理としては、例えば結果表示部１０に表示された候補文字列をユーザが選択することによって、選択された候補文字列を現在の入力位置に文字列として入力するような処理を行う。すなわち、図９に示すように、図８で示された候補文字列のうち「このオンライン」が選択されると、カーソルが位置している表示領域にユーザが確定した文字列として「このオンライン」が表示されることになる。
【００４３】
また、予測精度の向上を図るために、ユーザが確定した文字列を次回以降のパターン認識に活用することも考えられる。この場合、ユーザが確定した文字列を予測辞書９に登録する必要が生じる。
【００４４】
図１０は、本発明の他の実施例にかかる文字列予測装置の構成図である。図１０においては、図１に示す基本的構成に、さらに結果確定部１１と予測辞書登録部１２を含んでいる点に特徴を有している。
【００４５】
図１０において、結果表示部１０に表示された候補文字列が入力されるべき文字列であるとユーザが判断した場合、ユーザは結果確定部１１において、確定処理を行うことができる。ここで「確定処理」とは、表示されている候補文字列が、ユーザによって入力されるべき文字列として確定したという指示を行う処理を意味する。したがって、ユーザによって明示的に確定指示を行う方法に特に限定されるものではなく、例えば修正処理を行うことなく次のパターン列を入力した際に確定したとみなす方法であっても良いし、出力された予測候補文字列から特定の文字列が選択された場合に確定したものとみなす方法であっても良い。
【００４６】
そして、結果確定部１１において候補文字列が確定されたという確定処理が行われると、予測辞書登録部１２において、その文字列が予測辞書９に登録される。図８にも示すように、予測辞書９との照合により得られた予測候補文字列が候補文字列として表示されている場合であっても、内部的には、表示されている各予測候補文字列に対して、その予測候補文字列と同じ分割位置を有する文脈処理結果文字列を結合した文字列の情報を保持していることから、いずれかの予測候補文字列が選択された場合には、選択された予測候補文字列の前に、その予測候補文字列と同じ分割位置を有する文脈処理結果文字列を結合した文字列が確定されたという確定処理が行われることになる。これにより、予測辞書９に新たな文字列を登録することができ、次回以降の検索時において、より精度良く予測を行うことが期待できる。
【００４７】
また、予測辞書９とは別個に、学習辞書を設けることも考えられる。学習辞書を設ける場合の文字列予測装置の構成図を図１１に示す。
【００４８】
図１１では、さらに学習辞書１３を含んでいる点に特徴を有する。学習辞書登録部１４は、ユーザが確定した文字列を予測辞書９とは別の学習辞書１３に登録する。そして、学習辞書検索部１５において学習辞書１３を照会することにより抽出された予測候補文字列と、予測辞書検索部８において予測辞書９を照会することにより抽出された予測候補文字列の両方が存在する場合には、学習辞書１３を照会することにより抽出された予測候補文字列の表示優先順位を高くすることが好ましい。学習辞書１３を照会することにより抽出された予測候補文字列の方が、当該ユーザにとってより最近用いた文字列であることから、より信頼性の高い予測候補文字列であると考えられるからである。
【００４９】
また、学習辞書登録部１４において学習辞書１３にユーザが確定した文字列を登録する際に、登録時のタイムスタンプも同時に登録することが考えられる。そして、学習辞書１３を照会することにより抽出された予測候補文字列が複数存在する場合には、当該タイムスタンプが新しい予測候補文字列の表示優先順位を高くすることが好ましい。タイムスタンプが新しい予測候補文字列の方が、ユーザの意思に沿った認識を行うことができる可能性がより高いものと考えられるからである。
【００５０】
次に、本発明の実施の形態１にかかる文字列予測装置を実現するプログラムの処理の流れについて説明する。図１２は本発明の実施の形態１にかかる文字列予測装置における処理の流れ図である。
【００５１】
図１２において、まずユーザによって手書き文字や音声入力等のパターン列が入力され（ステップＳ１２１）、入力されたパターン列についてパターン認識用辞書を参照してパターン認識を行う（ステップＳ１２２）。
【００５２】
当該パターン列の先頭の前を分割位置と定め（ステップＳ１２３）、パターン列を当該分割位置で前後２つの部分パターン列に分割する（ステップＳ１２４）。
【００５３】
次に、分割された前方の部分パターン列が存在するか否かを判定し（ステップＳ１２５）、部分パターン列が存在すると判定された場合には（ステップＳ１２５：Ｙｅｓ）、前方の部分パターン列に対応する範囲のパターン認識結果に対して文脈処理を実行することになる（ステップＳ１２６）。
【００５４】
また、分割された後方の部分パターン列が存在するか否かを判定し（ステップＳ１２７）、部分パターン列が存在すると判定された場合には（ステップＳ１２７：Ｙｅｓ）、後方の部分パターン列に対応する認識候補文字を組み合わせて検索文字列を生成することになる（ステップＳ１２８）。そして、当該分割位置が入力されたパターン列における最後のパターンの後方であるか否かについて判定することになる（ステップＳ１２９）。
【００５５】
当該分割位置が最後のパターンの後方ではないと判定された場合には（ステップＳ１２９：Ｎｏ）、パターン列の分割位置を一パターン右へシフトし（ステップＳ１３０）、当該分割位置で前後２つの部分パターン列に分割することになる（ステップＳ１２４）。
【００５６】
以下、上述した処理を当該分割位置が最後のパターンの後方であると判定されるまで継続し、最後のパターンの後方であると判定された場合には（ステップＳ１２９：Ｙｅｓ）、予測辞書９の検索を行うことになる（ステップＳ１３１）。そして、予測辞書９の検索結果と文脈処理結果とを統合して表示することになる（ステップＳ１３２）。
【００５７】
以上のように本実施の形態１によれば、入力されたパターン列のうち、任意の位置を分割位置として前後２つに分割された、後方の部分パターン列すべてについて認識候補文字を組み合わせて検索文字列を生成することになることから、パターン列が入力された場合であっても、パターン列の任意の位置から予測辞書９の検索を行うことができ、予測精度の向上が期待できる。
【００５８】
（実施の形態２）
次に、本発明の実施の形態２にかかる文字列予測装置について、図面を参照しながら説明する。図１３は、本発明の実施の形態２にかかる文字列予測装置の構成図である。図１３に示すように、本実施の形態２は実施の形態１と異なり、文字列分割部１６とパターン分割位置決定部１７を含んでいる点に特徴を有している。なお、図１３において、実施の形態１と同様の機能を有する構成要素については、符号を同一にすることで詳細な説明を省略する。
【００５９】
図１３に示すように、パターン入力部１からは、認識すべきパターンが入力され、パターン認識部２に送られる。そして、パターン認識部２では、パターン認識用辞書３の内容を参照して、入力されたパターン列を照合し、抽出された認識候補文字と、それぞれの認識候補文字に対応するパターン評価値を出力することになる。
【００６０】
次に、入力されたパターン列全体に対して文脈処理部５により文脈処理を行うことになる。本実施の形態２においては、文脈処理を行った結果に対して、複数の文字列に分割する点にも特徴を有する。すなわち、入力されたパターン列全体に対して、可能なすべての分割位置においてパターン列を部分パターン列に分割することは演算処理量が過大となってしまうことから、文脈処理を行った結果に基づいて分割位置を決定することによって、適切な位置でパターンを分割することができ、すべての分割位置においてパターン列を部分パターン列に分割したのと同様の効果を得ることができるようにしたものである。
【００６１】
具体的には、文字列分割部１６において、パターン列全体に対して文脈処理を行った結果として出力される文字列が、複数の文字列に分割されることになる。文字列分割部１６における文字列の分割方法は、特に特定の方法に限定されるものではなく、例えば形態素解析を行って品詞ごとに分割する方法であっても良いし、あるいは文字種の変化点を区切りとして分割する方法であっても良い。
【００６２】
例えば図３に示すようなパターン認識結果が得られた場合であって、文脈処理部８における文脈処理の結果が、入力されたパターン列全体である「このオ」であるとすると、文字列分割部１６において文字種の変化点を区切りとする分割方法で分割した場合には、２つの文字列である「この」と「オ」に分割されることになる。
【００６３】
そして、パターン分割位置決定部１７では、文字列分割部１６により分割された分割文字列群のうち、分割された最後の文字列の先頭に対応するパターンの前に対応する位置を、予測辞書を検索する場合における部分パターン列の開始位置として決定する。
【００６４】
例えば２つの文字列「この」と「オ」を分割文字列群とする場合には、当該分割文字列のうち、最後の文字列「オ」の先頭に対応する分割位置が‘３’であることから、パターンを前後２つに分割する場合における分割位置についても‘３’と決定することになる。
【００６５】
パターン分割位置決定部１７において、パターン分割位置が決定すると、当該分割位置においてパターンを前後２つに分割し、分割された後方の部分パターン列に対して、パターン認識部３から出力された候補文字を組み合わせて新たに検索文字列を生成することになる。
【００６６】
例えば図３に示すような認識結果に対しては、分割位置が‘３’であることから、生成される検索文字列は、「オ」と「才」となる。
【００６７】
予測辞書検索部８では、生成された検索文字列「オ」又は「才」に基づいて予測辞書９を検索し、検索された予測候補文字列と文脈処理部５において処理された結果とを統合して、結果表示部１０において最終的な候補文字列を表示することになる。
【００６８】
また、実施の形態１と同様に、ユーザが確定した文字列を次回以降の文字列予測に活用することも考えられる。この場合、ユーザが確定した文字列についても予測辞書９に登録する必要が生じる。
【００６９】
そこで、図１４は本発明の他の実施例にかかる文字列予測装置の構成図を示しており、図１０と同様、結果確定部１１と予測辞書登録部１２を含んでいる点に特徴を有している。
【００７０】
図１４においては、結果表示部１０に表示された結果表示部１０に表示された候補文字列が入力されるべき文字列であるとユーザが判断した場合、ユーザは結果確定部１１において、確定処理を行うことになる。
【００７１】
そして、結果確定部１１において候補文字列が確定されたという確定処理が行われると、文字列分割部８１において確定した文字列が複数の部分文字列に分割されることになる。予測辞書登録部１２における文字列の登録は、当該分割された各部分文字列を登録することになる。
【００７２】
このようにしておくことで、予測辞書９に登録されている文字列の区切りと、予測辞書９を検索するための検索文字列の区切りが一致するようになることから、予測辞書９の検索時において照合する可能性がより高まることになる。
【００７３】
もちろん、実施の形態１と同様に、予測辞書９とは別個に、学習辞書１３を設けて、学習辞書１３にユーザが確定した文字列を登録するような構成であっても良い。
【００７４】
次に、本発明の実施の形態２にかかる文字列予測装置を実現するプログラムの処理の流れについて説明する。図１５は、本発明の実施の形態２にかかる文字列予測装置における処理の流れ図を示す。
【００７５】
図１５において、まずユーザによって手書き文字や音声入力等のパターン列が入力され（ステップＳ１５１）、入力されたパターン列についてパターン認識用辞書を参照してパターン認識を行う（ステップＳ１５２）。
【００７６】
次に、認識候補文字に基づいて文脈処理を実行して（ステップＳ１５３）、文脈処理の結果として出力される文字列を所定の基準に基づいて分割することになる（ステップＳ１５４）。
【００７７】
そして、分割された最後の文字列の先頭に位置するパターンの前の位置をパターンの分割位置として定め（ステップＳ１５５）、当該分割位置において、入力パターン列を前後２つの部分パターン列に分割する（ステップＳ１５６）。
【００７８】
次に、分割された後方の部分パターン列に対して、認識候補文字を組み合わせた検索文字列を生成して（ステップＳ１５７）、予測辞書９の検索を実行する（ステップＳ１５８）。そして、予測辞書９の検索結果と文脈処理の結果を統合して表示することにより処理を終了する（ステップ１５９）。
【００７９】
以上のように本実施の形態２によれば、入力されたパターン列について文脈処理を行った結果に対して複数の文字列へと分割することによって、適切なパターン分割位置を得ることができ、予測精度を落とすことなく演算処理量を減少させることが期待できる。
【００８０】
なお、本発明の実施の形態にかかる文字列予測装置を実現するプログラムは、図１６に示すように、ＣＤ−ＲＯＭ１６２−１やフレキシブルディスク１６２−２等の可搬型記録媒体１６２だけでなく、通信回線の先に備えられた他の記憶装置１６１や、コンピュータ１６３のハードディスクやＲＡＭ等の記録媒体１６４のいずれに記憶されるものであっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【００８１】
また、本発明の実施の形態にかかる文字列予測装置により用いられる、あるいは更新される予測辞書や学習辞書等についても、図１６に示すように、ＣＤ−ＲＯＭ１６２−１やフレキシブルディスク１６２−２等の可搬型記録媒体１６２だけでなく、通信回線の先に備えられた他の記憶装置１６１や、コンピュータ１６３のハードディスクやＲＡＭ等の記録媒体１６４のいずれに記憶されるものであっても良く、例えば本発明にかかる文字列予測装置を利用する際にコンピュータ１６３により読み取られる。
【００８２】
（付記１）  複数のパターンにより構成されるパターン列を入力するパターン入力部と、
前記パターン入力部から入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力するパターン認識部と、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割するパターン列分割部と、
前記パターン列分割部において分割された前方の部分パターン列に相当する範囲に対して、前記パターン認識部から出力された前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う文脈処理部と、
前記パターン列分割部において分割された後方の部分パターン列と、前記パターン認識部から出力された前記認識候補文字とを組み合わせて、検索文字列を生成する検索文字列生成部と、
前記検索文字列生成部により生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する予測辞書検索部と、
前記文脈処理部における文脈処理の結果と、前記予測辞書検索部において抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示する結果表示部とを含むことを特徴とする文字列予測装置。
（付記２）  前記結果表示部において、前記予測辞書検索部により抽出された前記予測候補文字列に対応する検索開始位置に基づいて表示の優先順位を決定する付記１記載の文字列予測装置。
【００８３】
（付記３）  前記結果表示部において、前記予測辞書検索部により抽出された前記予測候補文字列に関する過去に用いられた頻度に関する情報に基づいて表示の優先順位を決定する付記１記載の文字列予測装置。
【００８４】
（付記４）  前記結果表示部において、前記予測辞書検索部において抽出された前記予測候補文字列のキー情報となった検索文字列におけるパターン評価値に基づいて表示の優先順位を決定する付記１記載の文字列予測装置。
【００８５】
（付記５）  表示された一又は複数の前記候補文字列からユーザが選択指示した前記候補文字列が入力されるべき文字列である入力文字列として確定する結果確定部と、
確定された前記入力文字列を前記予測辞書に登録する予測辞書登録部をさらに含む付記１から４のいずれか一項に記載の文字列予測装置。
（付記６）  ユーザが選択指示した前記候補文字列が入力されるべき文字列であるとユーザが判断した場合において、前記候補文字列を入力文字列として確定するユーザによる意思入力を行う結果確定部と、
確定された前記文字列を学習辞書に登録する学習辞書登録部をさらに含み、
前記結果表示部において、前記予測辞書検索部により抽出された前記予測候補文字列が、前記予測辞書から抽出されたか、あるいは前記学習辞書から抽出されたかに基づいて表示の優先順位を決定する付記１記載の文字列予測装置。
【００８６】
（付記７）  前記結果表示部において、前記予測辞書検索部により抽出された前記予測候補文字列のうち、前記学習辞書から抽出されたものについては、最近アクセスされた前記予測候補文字列に基づいて表示の優先順位を決定する付記６に記載の文字列予測装置。
【００８７】
（付記８）  前記文脈処理の結果出力された文字列を分割する文字列分割部と、
分割された最後の文字列の先頭位置を、入力パターン列を前後２つの部分パターン列に分割するパターン分割位置として定める分割パターン位置決定部とをさらに含み、
前記文脈処理部において、前記パターン入力部から入力された前記パターン列全体に対して文脈処理を行い、
前記文字列分割部において前記文脈処理の結果出力された文字列を分割し、
前記分割パターン位置決定部において、パターン分割位置を決定し、
前記パターン列分割部において分割された後方の部分パターン列と、前記パターン認識部から出力された前記認識候補文字とを組み合わせて、検索文字列を生成して、前記予測辞書検索部において予測辞書の検索を行う付記１から７のいずれか一項に記載の文字列予測装置。
（付記９）  前記文字列分割部において、ユーザにより確定された前記文字列を部分文字列に分割し、分割された前記部分文字列を前記予測辞書登録部において前記予測辞書に登録する付記５又は８に記載の文字列予測装置。
【００８８】
（付記１０）  前記文字列分割部において、ユーザにより確定された前記文字列を部分文字列に分割し、分割された前記部分文字列を前記学習辞書登録部において前記学習辞書に登録する付記６又は７に記載の文字列予測装置。
【００８９】
（付記１１）  前記結果表示部において、ユーザが入力したパターン列に対応する文字列部分と、予測して出力された文字列部分の区別ができるように表示される付記１から１０のいずれか一項に記載の文字列予測装置。
【００９０】
（付記１２）  前記結果表示部において、前記予測辞書と照合することにより得られた予測候補文字列を候補文字列として表示し、いずれかの予測候補文字列が選択された場合には、選択された前記予測候補文字列の前に、選択された前記予測候補文字列と同じ分割位置を有する文脈処理結果文字列を結合した文字列を確定した文字列として表示する付記１から１１のいずれか一項に記載の文字列予測装置。
【００９１】
（付記１３）  複数のパターンにより構成されるパターン列を入力する工程と、
入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力する工程と、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割する工程と、
分割された前方の部分パターン列に相当する範囲に対して、前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行う工程と、
分割された後方の部分パターン列と前記認識候補文字とを組み合わせて、検索文字列を生成する工程と、
生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出する工程と、
前記文脈処理の結果と抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示する工程とを含むことを特徴とする文字列予測方法。
（付記１４）  複数のパターンにより構成されるパターン列を入力するステップと、
入力された前記パターン列に基づいてパターン認識用辞書を照会し、認識候補文字ごとに評価値を算出するとともに前記評価値の高い順に前記認識候補文字を出力するステップと、
入力された前記パターン列について、任意の位置を分割位置として、空きパターン列も含む前後２つの部分パターン列に分割するステップと、
分割された前方の部分パターン列に相当する範囲に対して、前記認識候補文字に基づいて、文脈辞書を参照しながら文脈処理を行うステップと、
分割された後方の部分パターン列と前記認識候補文字とを組み合わせて、検索文字列を生成するステップと、
生成された前記検索文字列をキー情報として予測辞書を照会し、予測候補文字列を抽出するステップと、
前記文脈処理の結果と抽出された前記予測候補文字列に基づいて、一又は複数の候補文字列を表示するステップとを含むことを特徴とする文字列予測方法を具現化するコンピュータ実行可能なプログラム。
【００９２】
【発明の効果】
以上のように本発明にかかる文字列予測装置によれば、入力されたパターン列のうち、任意の位置で前後２つに分割された後方の部分パターン列すべてについて認識候補文字を組み合わせて検索文字列を生成することになることから、パターン列が入力された場合であっても、パターン列の任意の位置から予測辞書の検索を行うことができ、予測精度の向上が期待できる。
【図面の簡単な説明】
【図１】  本発明の実施の形態１にかかる文字列予測装置の構成図
【図２】  本発明の実施の形態１にかかる文字列予測装置における手書き文字入力パターン列の例示図
【図３】  本発明の実施の形態１にかかる文字列予測装置における認識候補文字の例示図
【図４】  本発明の実施の形態１にかかる文字列予測装置におけるパターン分割の例示図
【図５】  本発明の実施の形態１にかかる文字列予測装置における検索文字列の例示図
【図６】  本発明の実施の形態１にかかる文字列予測装置における予測候補文字列の例示図
【図７】  本発明の実施の形態１にかかる文字列予測装置における予測候補文字列の表示例示図
【図８】  本発明の実施の形態１にかかる文字列予測装置における予測候補文字列の表示例示図
【図９】  本発明の実施の形態１にかかる文字列予測装置における予測候補文字列選択時の表示例示図
【図１０】  本発明の他の実施例にかかる文字列予測装置の構成図
【図１１】  本発明の他の実施例にかかる文字列予測装置の構成図
【図１２】  本発明の実施の形態１にかかる文字列予測装置における処理の流れ図
【図１３】  本発明の実施の形態２にかかる文字列予測装置の構成図
【図１４】  本発明の他の実施例にかかる文字列予測装置の構成図
【図１５】  本発明の実施の形態２にかかる文字列予測装置における処理の流れ図
【図１６】  コンピュータ環境の例示図
【符号の説明】
１  パターン入力部
２  パターン認識部
３  パターン認識用辞書
４  パターン列分割部
５  文脈処理部
６  文脈辞書
７  検索文字列生成部
８  予測辞書検索部
９  予測辞書
１０  結果表示部
１１  結果確定部
１２  予測辞書登録部
１３  学習辞書
１４  学習辞書登録部
１５  学習辞書検索部
１６  文字列分割部
１７  パターン分割位置決定部
１６１  回線先の記憶装置
１６２  ＣＤ−ＲＯＭやフレキシブルディスク等の可搬型記録媒体
１６２−１  ＣＤ−ＲＯＭ
１６２−２  フレキシブルディスク
１６３  コンピュータ
１６４  コンピュータ上のＲＡＭ／ハードディスク等の記録媒体
【図１】
0004063551.tif 000002
【図２】
0004063551.tif 000003
【図３】
0004063551.tif 000004
【図４】
0004063551.tif 000005
【図５】
0004063551.tif 000006
【図６】
0004063551.tif 000007
【図７】
0004063551.tif 000008
【図８】
0004063551.tif 000009
【図９】
0004063551.tif 000010
【図１０】
0004063551.tif 000011
【図１１】
0004063551.tif 000012
【図１２】
0004063551.tif 000013
【図１３】
0004063551.tif 000014
【図１４】
0004063551.tif 000015
【図１５】
0004063551.tif 000016
【図１６】
0004063551.tif 000017