(57)【特許請求の範囲】
【請求項１】
コンピュータに、
利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する特定機能と、
既存の文毎にその文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定した一連の係り関係を保持する係り受け情報を記憶する記憶手段から、前記特定機能により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を検索する検索機能と、
前記検索機能により検索された後続語を利用者に対して提示する提示機能と、
を実現させるためのプログラム。
【請求項２】
前記係り受け情報には、基準語に対する先行語の意味役割が保持されており、
前記特定機能は、文字入力位置の前の語に対する他の語の係り関係を特定すると共に、当該他の語の意味役割を特定し、
前記検索機能は、前記特定機能により特定された係り関係及び意味役割に合致する係り関係及び意味役割を基準語と先行語との間で有する係り受け情報における後続語を検索する、
ことを特徴とする請求項１に記載のプログラム。
【請求項３】
前記係り受け情報には、先行語及び基準語及び後続語に関する一連の係り関係について、既存の文における一連の係り関係の出現度合が保持されており、
前記検索機能は、該当する係り受け情報における後続語を検索すると共に、当該係り受け情報における出現度合を検索し、
前記提示機能は、前記検索機能により検索された後続語を、当該後続語と共に検索された出現度合が高い順に提示する、
ことを特徴とする請求項１又は請求項２に記載のプログラム。
【請求項４】
前記特定機能は、作成中の文に含まれる各語の格又は意味役割を特定し、
前記提示機能は、前記検索機能により後続語として句点が検索された場合において、文として存在すべき格又は意味役割の語が作成中の文に存在しない場合には、当該句点に係る出現度合を減じる、
ことを特徴とする請求項３に記載のプログラム。
【請求項５】
前記提示機能は、前記検索機能により後続語として句点が検索された場合において、入力中の文の文字数が閾値未満の場合には、当該句点に係る出現度合を減じる、
ことを特徴とする請求項３に記載のプログラム。
【請求項６】
前記係り受け情報には、後続語に対する基準語の意味役割が保持されており、
前記検索機能は、該当する係り受け情報における後続語を検索すると共に、当該係り受け情報における基準語の意味役割を検索し、
前記提示機能は、前記検索機能により検索された後続語を、当該後続語と共に検索された意味役割に応じた文字列を前方に付加した態様で提示する、
ことを特徴とする請求項１乃至請求項５のいずれか１項に記載のプログラム。
【請求項７】
コンピュータに、
既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する特定機能と、
利用者による操作入力に基づいて作成中の文において、当該文における文字入力位置の前の語に対する他の語の係り関係に合致する係り関係が先行語との間にある基準語について、当該基準語が係り関係にある後続語を利用者に対して提示する文章入力支援処理のために、前記特定機能により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶手段に記憶させる記憶機能と、
を実現させるためのプログラム。
【請求項８】
既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する第１特定手段と、前記第１特定手段により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶する記憶手段と、を有する参照情報作成部と、
利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する第２特定手段と、前記第２特定手段により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を前記記憶手段から検索する検索手段と、前記検索手段により検索された後続語を利用者に対して提示する提示手段と、を有する文章入力支援部と、
を備えたことを特徴とする文章入力支援システム。
【請求項９】
利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する特定手段と、
既存の文毎にその文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定した一連の係り関係を保持する係り受け情報を記憶する記憶手段から、前記特定手段により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を検索する検索手段と、
前記検索手段により検索された後続語を利用者に対して提示する提示手段と、
を備えたことを特徴とする文章入力支援装置。
【請求項１０】
既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する特定手段と、
利用者による操作入力に基づいて作成中の文において、当該文における文字入力位置の前の語に対する他の語の係り関係に合致する係り関係が先行語との間にある基準語について、当該基準語が係り関係にある後続語を利用者に対して提示する文章入力支援処理のために、前記特定機能により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶する記憶手段と、
を備えたことを特徴とする参照情報作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章入力支援システム、文章入力支援装置、参照情報作成装置及びプログラムに関する。
【背景技術】
【０００２】
コンピュータを用いて文書を作成する文書作成装置には、一例として、利用者によるタイプ入力の負荷を軽減するために、入力中の文について、次に利用者により挿入されるであろう単語を予測して補完候補として利用者に提示し、補完候補の中から利用者に選択された単語を文に挿入する入力支援機能を備えたものがある。
【０００３】
ここで、上記のような文書作成装置における入力支援機能に関し、従前より種々の発明が提案されている。
例えば、文章の意味ベクトルと意味辞書に記述された単語の意味ベクトルとの類似度を比較して次の単語を選別する発明が提案されている（特許文献１参照）。
例えば、単語の使用頻度を分析することで文書の分野を特定し、当該分野に合わせて入力されると予測される文字列を変える発明が提案されている（特許文献２参照）。
例えば、文字列を意味関係毎に分類した意味候補と共起関係毎に分類した用例候補を混ぜて次の単語を選別する発明が提案されている（特許文献３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０７−２７１７７４号公報
【特許文献２】特開平１１−００３３３１号公報
【特許文献３】特開２０００−１８７６６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、利用者による操作入力に基づく作成中の文について、その続きに入力されることが予測される候補を提示するに際し、文が有する係り受け関係の情報を用いて候補となる語を提示可能な技術を提案することを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に係る本発明は、コンピュータに、利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する特定機能と、既存の文毎にその文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定した一連の係り関係を保持する係り受け情報を記憶する記憶手段から、前記特定機能により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を検索する検索機能と、前記検索機能により検索された後続語を利用者に対して提示する提示機能と、を実現させるためのプログラムである。
【０００７】
請求項２に係る本発明は、請求項１に本発明において、前記係り受け情報には、基準語に対する先行語の意味役割が保持されており、前記特定機能は、文字入力位置の前の語に対する他の語の係り関係を特定すると共に、当該他の語の意味役割を特定し、前記検索機能は、前記特定機能により特定された係り関係及び意味役割に合致する係り関係及び意味役割を基準語と先行語との間で有する係り受け情報における後続語を検索する、ことを特徴とするプログラムである。
【０００８】
請求項３に係る本発明は、請求項１、２に係る本発明において、前記係り受け情報には、先行語及び基準語及び後続語に関する一連の係り関係について、既存の文における一連の係り関係の出現度合が保持されており、前記検索機能は、該当する係り受け情報における後続語を検索すると共に、当該係り受け情報における出現度合を検索し、前記提示機能は、前記検索機能により検索された後続語を、当該後続語と共に検索された出現度合が高い順に提示する、ことを特徴とするプログラムである。
【０００９】
請求項４に係る本発明は、請求項３に係る本発明において、前記特定機能は、作成中の文に含まれる各語の格又は意味役割を特定し、前記提示機能は、前記検索機能により後続語として句点が検索された場合において、文として存在すべき格又は意味役割の語が作成中の文に存在しない場合には、当該句点に係る出現度合を減じる、ことを特徴とするプログラムである。
【００１０】
請求項５に係る本発明は、請求項３に係る本発明において、前記提示機能は、前記検索機能により後続語として句点が検索された場合において、入力中の文の文字数が閾値未満の場合には、当該句点に係る出現度合を減じる、ことを特徴とするプログラムである。
【００１１】
請求項６に係る本発明は、請求項１〜５に係る本発明において、前記係り受け情報には、後続語に対する基準語の意味役割が保持されており、前記検索機能は、該当する係り受け情報における後続語を検索すると共に、当該係り受け情報における基準語の意味役割を検索し、前記提示機能は、前記検索機能により検索された後続語を、当該後続語と共に検索された意味役割に応じた文字列を前方に付加した態様で提示する、ことを特徴とするプログラムである。
【００１２】
請求項７に係る本発明は、コンピュータに、既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する特定機能と、利用者による操作入力に基づいて作成中の文において、当該文における文字入力位置の前の語に対する他の語の係り関係に合致する係り関係が先行語との間にある基準語について、当該基準語が係り関係にある後続語を利用者に対して提示する文章入力支援処理のために、前記特定機能により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶手段に記憶させる記憶機能と、を実現させるためのプログラムである。
【００１３】
請求項８に係る本発明は、既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する第１特定手段と、前記第１特定手段により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶する記憶手段と、を有する参照情報作成部と、利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する第２特定手段と、前記第２特定手段により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を前記記憶手段から検索する検索手段と、前記検索手段により検索された後続語を利用者に対して提示する提示手段と、を有する文章入力支援部と、を備えたことを特徴とする文章入力支援システムである。
【００１４】
請求項９に係る本発明は、利用者による操作入力に基づいて作成中の文を解析して、当該文における文字入力位置の前の語に対する他の語の係り関係を特定する特定手段と、既存の文毎にその文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定した一連の係り関係を保持する係り受け情報を記憶する記憶手段から、前記特定手段により特定された係り関係に合致する係り関係を基準語と先行語との間で有する係り受け情報における後続語を検索する検索手段と、前記検索手段により検索された後続語を利用者に対して提示する提示手段と、を備えたことを特徴とする文章入力支援装置である。
【００１５】
請求項１０に係る本発明は、既存の文毎にその文を解析して、当該文に含まれる複数の語について、基準となる基準語と、当該基準語に対する係り関係がある先行語と、当該基準語が係り関係にある後続語とを特定する特定手段と、利用者による操作入力に基づいて作成中の文において、当該文における文字入力位置の前の語に対する他の語の係り関係に合致する係り関係が先行語との間にある基準語について、当該基準語が係り関係にある後続語を利用者に対して提示する文章入力支援処理のために、前記特定機能により特定された先行語及び基準語及び後続語に関する一連の係り関係を保持する係り受け情報を記憶する記憶手段と、を備えたことを特徴とする参照情報作成装置である。
【発明の効果】
【００１６】
請求項１、７〜１０に係る本発明によれば、利用者による操作入力に基づいて作成中の文について、その続きに入力されることが予測される候補を提示するに際し、候補となる語を係り受け関係の情報に基づいて提示し、入力を支援することができる。
【００１７】
請求項２に係る本発明によれば、作成中の文の意味内容を踏まえた候補となる語を提示することができる。
【００１８】
請求項３に係る本発明によれば、候補となる語の提示順を過去の事例に基づいて調整することができる。
【００１９】
請求項４、５に係る本発明によれば、作成中の文が未完成と推定される場合には、候補としての句点の提示順を下げることができる。
【００２０】
請求項６に係る本発明によれば、候補となる語を提示するとともに当該候補となる語の意味役割に基づく情報をも提示することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態に係る文章入力支援システムの機能ブロックを例示する図である。
【図２】Ｎ−ｇｒａｍを利用した入力補完技術の例を示す図である。
【図３】構文解析及び意味解析の例を示す図である。
【図４】補完候補の提示例を示す図である。
【図５】構文解析及び意味解析の例を示す図である。
【図６】スコア要素の例を示す図である。
【図７】スコアリングの例を示す図である。
【図８】句点のスコアの調整例を示す図である。
【図９】スコア要素の例を示す図である。
【図１０】スコアリングの例を示す図である。
【図１１】候補文の生成例を示す図である。
【図１２】従来手法との比較例を示す図である。
【図１３】補完候補のロバスト性を説明する図である。
【図１４】テンプレートを用いた文章入力支援の例を示す図である。
【図１５】テンプレートの例を示す図である。
【図１６】補完候補（テンプレート）の提示例を示す図である。
【図１７】文章入力支援システムに係るコンピュータのハードウェア構成を例示する図である。
【発明を実施するための形態】
【００２２】
本発明の実施例として具体的な説明に先立って、公知の技術であるＮ−ｇｒａｍを利用した入力補完について説明する。Ｎ−ｇｒａｍを利用した入力補完では、作成中の文における末尾からＮ−１個の文字（又は単語）に基づいて、当該Ｎ−１個の文字（又は単語）が出現した既存の文においてその次に出現したＮ個目の文字（又は単語）を出現頻度順に補完候補として選び出す。この方法では、Ｎが大きくなるほどインデックスサイズが肥大化するため、バイグラム（Ｎ＝２）やトライグラム（Ｎ＝３）が用いられることが多い。しかしながら、自然文には機能語（助詞や接続詞）が多く、機能語を含めたバイグラムやトライグラムでは利用者がどのようなトピックの文を入力しているかを把握し難く、利用者の意図を反映させた補完候補の提示は困難であることが知られている。
なお、Ｎ−ｇｒａｍについては、例えば、「http://www.shuiren.org/chuden/teach/n-gram/index-j.html」、「http://ja.wikipedia.org/wiki/%E5%85%A8%E6%96%87%E6%A4%9C%E7%B4%A2」、「“確率的言語モデル”，東京大学出版会」などに開示されている。
【００２３】
Ｎ−ｇｒａｍを利用した入力補完について、より具体的に説明する。
例えば、利用者が「私と彼は公園で」という文を入力済みの状態でその後を入力しようとしているとする。このとき、Ｎ−ｇｒａｍを利用した入力補完では、図２（ａ）、（ｂ）に例示するような補完候補が提示される。図２（ａ）には、バイグラムによる補完候補を例示してあり、同図（ｂ）には、トライグラムによる補完候補を例示してある。図２（ａ）、（ｂ）において、枠で囲まれた部分が補完候補の選出に際して参照した形態素であり、バイグラムでは「で」、トライグラムでは「公園」及び「で」が参照されている。また、各補完候補の右側には、それぞれの候補語のスコア（本例では、既存の文における出現頻度）を例示してある。
【００２４】
一般に、「公園で」に続いて入力される語は、主語に「私」や「彼」のような『人』を取る場合と「犬」や「猫」のような『動物』を取る場合とで、使われ易い語が異なると考えられる。しかしながら、図２の例では、「私」や「彼」といった語は現在の編集位置（文字入力位置）から遠い位置にあるため、補完候補を選び出す際に参照されていない。「私」や「彼」といった語を参照範囲に含めるためには、Ｎ＞３にする必要があるが、Ｎを増大させると、参照用のＮ−ｇｒａｍのデータのインデックス数（異なり語彙数）は肥大化してしまう。
【００２５】
また、Ｎを大きくすると、Ｎ−１までの文字（又は単語）がかなり限定されることになるため、提示できる補完候補に柔軟性が無くなる。更に、例えば、「私と背の低い彼は長閑な公園で．．．」のように文中に多くの修飾語があるような場合には、語を補完したい位置と「私」や「彼」といった語との距離が大きく離れてしまう。このため、これらを参照できるようなＮを設定することは現実的ではない。また、スパースネスの問題で、単純にＮの値を大きくしてもＮ−ｇｒａｍモデルの精度は向上しないことが分かっている。
【００２６】
そこで、本発明の実施例では、利用者による操作入力に基づいて作成中の文について構文解析（及び意味解析）を行い、その結果に基づいて補完候補を検索するように構成することで、現在の文字入力位置（編集位置）から離れた位置に存在する語であっても文字入力位置の前の語（例えば、直前の語）に係わりを持つ語であれば、その語を利用した検索を行えるようにして、作成中の文の文脈に沿った補完候補を効果的に選び出せるようにする手法を提案する。
なお、構文解析及び意味解析については、例えば、「“形態素構文解析について”，内元清貴  馬青，郵政省  通信総合研究所」、「“意味文脈解析”，村田真樹  井佐原均，郵政省  通信総合研究所」、「http://ja.wikipedia.org/wiki/%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90」などに開示されている。
【００２７】
図１には、本提案に係る文章入力支援システムの機能ブロックを例示してある。
本例の文章入力支援システムは、新聞の記事やＷｅｂ等から収集した大量の既存の文を格納した大規模コーパス１１と、大規模コーパス１１に格納されている大量の既存の文に基づいて補完候補の提示用の参照情報を作成する参照情報作成部２０と、参照情報作成部２０により作成された参照情報を記憶する各種スコアＤＢ１２と、利用者による操作入力に基づいて作成中の文について、これまでの入力内容に基づいて各種スコアＤＢ１２を検索して得られる補完候補を提示する文章入力支援部３０と、を備えた構成となっている。
【００２８】
本例の参照情報作成部２０は、大規模コーパス１１から文単位のテキスト（文字列）を取得するテキスト取得部２１と、テキスト取得部２１により得られたテキストを形態素解析して形態素単位の語に分割するテキスト分割部２２と、テキスト分割部２２により得られた各語の係り関係及び意味役割を解析する構文・意味解析部２３と、構文・意味解析部２３の結果に基づいて参照情報（係り受け及び意味役割の接続頻度の情報、語や意味役割の重要度など）を生成して各種スコアＤＢ１２に格納する各種スコア算出部２４と、を有している。
【００２９】
本例の文章入力支援部３０は、作成中（編集中）の文を取得するテキスト取得部３１と、テキスト取得部３１により得られた文を形態素解析して形態素単位の語（文字列）に分割するテキスト分割部３２と、テキスト分割部３２により得られた各語の係り関係及び意味役割を解析する構文・意味解析部３３と、構文・意味解析部２３の結果に基づいて各種スコアＤＢ１２を参照して、補完入力候補となる候補語を検索すると共に各候補語のスコアを算出する補完候補評価部３４と、補完候補評価部３４により得られた候補語に基づいて候補文を生成する補完候補文生成部３５と、補完候補評価部３４により得られた候補語（又は、補完候補文生成部３５により得られた候補文）をスコア順に提示する補完候補提示部３６と、補完候補提示部３６により提示された候補語（又は候補文）の中から利用者に選択された候補語（又は候補文）を作成中の文に挿入（追加）する補完候補挿入部３７と、を有している。
【００３０】
まず、構文解析及び意味解析について説明する。
例えば、「私と彼は公園で遊ぶ」という文を構文解析及び意味解析すると、図３に例示するような文構造を特定することができる。図３（ａ）は構文解析の結果を概念的に示しており、同図（ｂ）は意味解析の結果を概念的に示している。
図３において、各ノード（枠で囲った単位）から伸びる矢印は、ノード間の係り受けの関係を表している。例えば、「私→遊ぶ」は、「私」が「遊ぶ」に係り関係があることを表しており、換言すれば、「遊ぶ」に対する係り関係を「私」が有していることを表している。すなわち、「私→遊ぶ」は、「私」を係り元とし、「遊ぶ」を係り先とした係り関係を表している。
また、図３（ｂ）によれば、“「私」と「遊ぶ」が（主語−述語）の関係”という意味役割で繋がる関係（意味役割の関係）であることが意味解析により特定されている。
なお、構文解析及び意味解析の結果や表現方法には種々の手法があり、図３は一例に過ぎない。
【００３１】
次に、本例の文章入力支援システムによる文章入力支援の動作を説明する。
まず、テキスト取得部３１が、作成中（編集中）の文「私と彼が公園で見た」を取得し、テキスト分割部３２が、テキスト取得部３１により得られた文を形態素解析して形態素単位の語（文字列）に分割し、構文・意味解析部３３が、テキスト分割部３２により得られた各語の係り関係及び意味役割を解析する。
その後、補完候補評価部３４が、構文・意味解析部２３の結果（文字入力位置の前の語に対する他の語の係り関係及び意味役割の関係）に基づいて各種スコアＤＢ１２を参照して、補完入力候補となる候補語を検索すると共に各候補語のスコアを算出し、補完候補提示部３６が、補完候補評価部３４により得られた候補語をスコア順に提示する。なお、補完候補文生成部３５にて、補完候補評価部３４により得られた候補語に基づいて候補文を生成し、補完候補提示部３６では、補完候補評価部３４により得られた候補語の提示に代えて（又は候補語と共に）、補完候補文生成部３５により得られた候補文を提示するようにしてもよい。図４（ａ）には、補完候補評価部３４及び補完候補文生成部３５により得られた候補語及び候補文を補完候補として提示した様子を例示してある。図４（ａ）の例では、テキスト入力部４１に表示されている現在作成中の文に対し、その補完候補が子ウィンドウ４２内に提示されている。
そして、補完候補提示部３６により提示された候補語（又は候補文）の何れかが利用者に選択された場合に、補完候補挿入部３７が、当該選択された候補語（又は候補文）を、作成中の文における文字入力位置の次に挿入（追加）する。図４（ｂ）には、選択された候補語（又は候補文）を挿入した結果を例示してある。
【００３２】
例えば、利用者が「私と彼が公園で見た」までを入力済みの状態でその後を入力しようとしているとする。このとき、入力済みの部分を構文・意味解析部３３により構文解析及び意味解析した結果は、図５のようになる。図５（ａ）は構文解析及び意味解析の結果を概念的に示したものであり、同図（ｂ）は解析結果を関数表現した例であり、同図（ｃ）は関数表現した（ｂ）の意味役割を簡略化した表現（係り受け表現）である。
図５（ｂ）における「ｒｏｌｅ（Ｒ，Ａ，Ｂ）」は、語Ａ（係り先）に対して語Ｂ（係り元）が意味役割Ｒで繋がることを示す関係情報である。意味役割には、「ｓｂ（主語）」や「ｏｂ（目的語）」などがある。「＊」は「任意」を意味しており、係り受けがあるという意味（構文解析の結果）である。例えば、「ｒｏｌｅ（＊，公園，私）」は、“［公園］に対して［私］が何らかの関係を持っている”ということを意味している。なお、本提案に係る文章入力支援は、意味解析を行わずに構文解析の結果のみでも適用可能である。
ここで、入力途中の文のように不完全な文を解析した場合には、従来の構文解析及び意味解析では解析が適切に行えない可能性があるが、その場合、例えば、文中に存在する形態素がお互いに「＊（任意）」の関係で結ばれるとして処理してもよい。以下では、上記の例のように解析が適切に行えたと仮定して説明する。
【００３３】
本提案の特徴１は、上記の係り関係（及び意味役割の関係）に対してＮ−ｇｒａｍや共起情報を計算することである。
ここでは、バイグラムモデルを用いて説明する。バイグラムモデルを適用する場合、補完候補評価手段３４では、文字入力位置の前の語「見た」に対する係り関係（及び意味役割の関係）を用いて補完候補の語（候補語）を各種スコアＤＢ１２から検索する。
【００３４】
なお、各種スコアＤＢ１２には、参照情報として、大規模コーパス１１中の既存文に含まれる或る語を基準語とし、当該文に含まれる他の語で且つ基準語に対する係り関係がある語を先行語とし、当該文に含まれる他の語で且つ基準語が係り関係にある語を後続語として特定した一連の係り関係（及び意味役割の関係）の情報と、大規模コーパス１１中の既存文における当該一連の係り関係（及び意味役割の関係）の出現頻度（出現の度合（程度）を示す情報の一例）などの各種スコアの情報と、を含む係り受け情報が格納されているものとする。本例では、一連の係り関係（及び意味役割の関係）の情報として、先行語と基準語との関係を示す接続元の関係情報と、基準語と後続語との関係を示す接続先の関係情報とを対応付けた情報を保持している。接続元の関係情報には、基準語（係り先）に対する先行語（係り元）の意味役割が保持されている。また、接続先の関係情報には、後続語（係り先）に対する基準語（係り元）の意味役割が保持されている。
【００３５】
図５（ａ）、（ｂ）によれば、文字入力位置の前の語「見た」に対する係り関係を有する語は、「公園」、「私」、「彼」の３つであり、補完候補評価手段３４は、これらの語との係り関係（及び意味役割の関係）である「ｒｏｌｅ（＊，見る，公園）」、「ｒｏｌｅ（＊，見る，私）」、「ｒｏｌｅ（＊，見る，彼）」の各関係情報を検索キーに用いた検索を行う。この結果、上記の各関係情報に続く関係情報の候補として、例えば、図６（ａ）に例示する関係情報が検索される。
【００３６】
図６（ａ）では、検索キー「ｒｏｌｅ（＊，見る，公園）」に合致する接続元の関係情報に対応付けられた接続先の関係情報として「ｒｏｌｅ（＊，ｎｕｌｌ＿ｐｒｏ，見る）」、「ｒｏｌｅ（＊，犬，見る）」、「ｒｏｌｅ（＊，風景，見る）」が候補として検索され、検索キー「ｒｏｌｅ（＊，見る，私）」に合致する接続元の関係情報に対応付けられた接続先の関係情報として「ｒｏｌｅ（＊，ｎｕｌｌ＿ｐｒｏ，見る）」、「ｒｏｌｅ（＊，子供，見る）」、「ｒｏｌｅ（＊，戦争，見る）」が検索され、検索キー「ｒｏｌｅ（＊，見る，彼）」に合致する接続元の関係情報に対応付けられた接続先の関係情報として「ｒｏｌｅ（＊，ｎｕｌｌ＿ｐｒｏ，見る）」、「ｒｏｌｅ（＊，風景，見る）」、「ｒｏｌｅ（＊，もの，見る）」が検索されている。なお、“ｎｕｌｌ＿ｐｒｏ”は句点（。）を意味している。
つまり、文字入力位置の前の語「見た」に続く語の候補（候補語）として、「公園」との関係（係り関係や意味役割の関係）に基づいて「。」、「犬」、「風景」の各語が検索され、「私」との関係に基づいて「。」、「子供」、「戦争」の各語が検索され、「彼」との関係に基づいて「。」、「風景」、「もの」の各語が検索されている。
【００３７】
また、図６（ａ）では、候補（関係情報）の右側に、各候補と共に各種スコアＤＢ１２から検索されたスコアを示してある。各候補のスコアは、それぞれの候補の妥当性を示すものである。本例では、候補のスコアとして、検索キーに合致する接続元の関係情報及び対応する接続先の関係情報により特定される一連の係り関係（及び意味役割の関係）が大規模コーパス１１中の既存文に出現した回数（出現頻度）を用いているが、例えば、パープレキシティ（例えば、「http://www.phontron.com/ja/notes/word.php?id=82」を参照）などの他の種別の値を用いてもよい。なお、「＊」には、「ｓｂ」や「ｏｂ」などの具体的な意味役割（意味解析の結果）を入れて候補を検索してもよいし、「＊（任意）」の関係（構文解析の結果）で候補を検索してもよい。
【００３８】
このように、本提案手法では、過去に作成された既存の文について、語Ａ１が後続の語Ａ２に対して係り関係（及び意味役割の関係）を有し且つ語Ａ２が後続の語Ａ３に対して係り関係等を有する場合において、作成中の文について、語Ｂ１が後続の文字入力位置の前の語Ｂ２に対して係り関係等を有する場合に、語Ｂ１及び語Ｂ２間の関係（Ｂ１→Ｂ２）と語Ａ１及び語Ａ２間の関係（Ａ１→Ａ２）が合致するときは、語Ａ２及び語Ａ３間の関係（Ａ２→Ａ３）から得られる語Ａ３を補完候補として特定する。
ここで、係り関係（及び意味役割の関係）の合致とは、係り元の語と係り先の語とが完全に一致する態様の他、活用が異なるが同じ述語であれば一致と見做す態様や、異なる語であっても同義語であれば一致と見做す態様など、一致度の条件を或る程度緩和した態様も含む概念である。
【００３９】
なお、上記のような係り関係（及び意味役割の関係）のバイグラムモデルではなく、Ｎ＞２のＮ−ｇｒａｍモデルや共起情報を採用してもよい。
例えば、トライグラムモデルでは、過去に作成された既存の文について、語Ａ１が後続の語Ａ２に対して係り関係等を有し且つ語Ａ２が後続の語Ａ３に対して係り関係等を有し且つ語Ａ３が後続の語Ａ４に対して係り関係等を有する場合において、作成中の文について、語Ｂ１が後続の語Ｂ２に対して係り関係等を有し且つ語Ｂ２が後続の文字入力位置の前の語Ｂ３に対して係り関係等を有する場合に、語Ｂ１及び語Ｂ２間の関係（Ｂ１→Ｂ２）と語Ａ１及び語Ａ２間の関係（Ａ１→Ａ２）が合致し且つ語Ｂ２及び語Ｂ３間の関係（Ｂ２→Ｂ３）と語Ａ２及び語Ａ３間の関係（Ａ２→Ａ３）が合致するときは、語Ａ３及び語Ａ４間の関係（Ａ３→Ａ４）から得られる語Ａ４を補完候補として特定する。
例えば、共起情報を利用する場合、過去に作成された既存の文について、語Ｃ１が後続の語Ｃ２に対して係り関係等を有し且つ語Ｃ１及び語Ｃ２と共起し易い語としてＣ３がある場合において、作成中の文について、語Ｄ１が後続の語Ｄ２に対して係り関係等を有する場合に、語Ｄ１及び語Ｄ２間の関係（Ｄ１→Ｄ２）と語Ｃ１及び語Ｃ２間の関係（Ｃ１→Ｃ２）が合致するときは、語Ｃ１及び語Ｃ２から得られる語Ｃ３を補完候補として特定する。
【００４０】
本提案の特徴２は、上記の処理により得られた各候補を統合し、順序付けして利用者に提示することである。順序付けには、上記の係り関係（及び意味役割の関係）に関するバイグラムモデルのスコア（出現頻度）だけでなく、様々なスコアを組み合わせて用いることができる。最終的に利用者に提示する補完候補は、予め定められた基準に基づいてスコアリングされ、スコアリング結果に沿った順序で提示される。
【００４１】
スコアリングについて幾つかの例を挙げて説明する。
第１のスコアリング例では、以下に例示するようなスコア要素の１以上を用いた計算式によりスコアリングを行う。
（要素１）接続頻度：Ｎ−ｇｒａｍモデル（バイグラム、トライグラムなど）、共起情報
例えば、共起情報に関するスコア要素として、出現数、相互情報量、Ｐｏｉｎｔｗｉｓｅ  Ｍｕｔｕａｌ  Ｉｎｆｏｒｍａｔｉｏｎ、Ｓｙｍｍｅｔｒｉｃ  Ｃｏｎｄｉｔｉｏｎａｌ  Ｐｏｒｏｂａｂｉｌｉｔｙのいずれかを用い、Ｎ−ｇｒａｍに関するスコア要素として、出現数を用いる。
（要素２）接続頻度（ユニグラムなど）、重要度（ｔｆ−ｉｄｆなど）：候補の語、候補の意味役割、接続元の語、接続元の意味役割
接続元「ｒｏｌｅ（Ｒ，Ｂ，Ａ）」→候補「ｒｏｌｅ（Ｌ，Ｃ，Ｂ）」とした場合（すなわち、先行語をＡ、基準語をＢ、後続語をＣ、基準語Ｂに対する先行語Ａの意味役割をＲ、後続語Ｃに対する基準語Ｂの意味役割をＬ、とした場合）に、以下のものを用いる。
例えば、候補に関するスコア要素として、Ｃの出現頻度を用い、接続元に関するスコア要素として、Ａの出現頻度及びＢの出現頻度を用い、候補の意味役割に関するスコア要素として、ｒｏｌｅ（Ｌ，Ｃ，Ｂ）の出現頻度及びＬの重要度（例えば、「ｓｂ」：０．７、「ｏｂ」：０．４、「ｅｉｄ」：０．１など）の少なくとも一方を用い、接続元の意味役割に関するスコア要素として、ｒｏｌｅ（Ｒ，Ｂ，Ａ）及びＲの重要度（Ｌの重要度と同様）の少なくとも一方を用い、Ｎ−ｇｒａｍに関するスコア要素として、出現頻度（例えば、通常の文字又は単語のＮ−ｇｒａｍモデルをスコアの一部として使用）を用いる。
また、例えば、現在入力中の文に主語がない場合に、候補の「ｓｂ」の重みを高くするようにする。
（要素３）距離：現在の文字入力位置（編集位置）の語と各語の距離
例えば、“私と彼は公園で”という文においては、「私」と「公園」の間の距離（文字数）は３であり、これらの語に係るスコア要素として、０．３（距離の逆数）を用い、「彼」と「公園」の間の距離（文字数）は１であり、これらの語に係るスコア要素として、１．０（距離の逆数）を用いる。
【００４２】
第２のスコアリング例について、図６及び図７を参照して説明する。
図６（ａ）には、前述したように、文字入力位置の前の語との関係情報を検索キーとした場合について、検索キーに合致する接続元の関係情報に対応付けられた接続先の関係情報（候補）と、当該接続元の関係情報及び接続先の関係情報により特定される一連の係り関係（及び意味役割の関係）が大規模コーパス１１中の既存文に出現した回数（以下、バイグラムスコアという）を例示してあり、同図（ｂ）には、検索キーに合致する接続元の関係情報の出現頻度を１００分率で例示してある。図６（ｂ）によれば、「ｒｏｌｅ（＊，見る，公園）」、「ｒｏｌｅ（＊，見る，私）」、「ｒｏｌｅ（＊，見る，彼）」の出現頻度の割合が、それぞれ、０．７、０．１、０．２となっている。
【００４３】
図７（ａ）には、単純加算（バイグラムスコアを利用）によるスコアリングを例示してある。本例では、検索キー毎に得られた複数の関係情報について、内容が同じ関係情報毎に、そのバイグラムスコアを合計している。図７（ａ）によれば、例えば、「ｒｏｌｅ（＊，風景，見る）」のスコアとして、検索キー「ｒｏｌｅ（＊，見る，公園）」により得られた関係情報のバイグラムスコア（＝５６，４００）と、検索キー「ｒｏｌｅ（＊，見る，私）」により得られた関係情報のバイグラムスコア（＝０）と、検索キー「ｒｏｌｅ（＊，見る，彼）」により得られた関係情報のバイグラムスコア（＝４２５，０００）との合計値（＝４８１，４００）が求められている。本例によれば、各候補語が、「。」、「風景」、「子供」の順に提示されることになる。
【００４４】
図７（ｂ）には、接続元の関係情報の出現頻度とバイグラムスコアの積によるスコアリングを例示してある。本例では、検索キー毎に得られた複数の関係情報について、内容が同じ関係情報毎に、各関係情報のバイグラムスコアに当該関係情報（接続先の関係情報）対応付けられた関係情報（接続元の関係情報）の出現頻度を乗じた値を合計している。図７（ｂ）によれば、例えば、「ｒｏｌｅ（＊，風景，見る）」のスコアとして、検索キー「ｒｏｌｅ（＊，見る，公園）」により得られた関係情報のバイグラムスコア（＝５６，４００）にその接続元の関係情報の出現頻度（＝０．７）を乗じた値と、検索キー「ｒｏｌｅ（＊，見る，私）」により得られた関係情報のバイグラムスコア（＝０）にその接続元の関係情報の出現頻度（＝０．１）とを乗じた値と、検索キー「ｒｏｌｅ（＊，見る，彼）」により得られた関係情報のバイグラムスコア（＝４２５，０００）にその接続元の関係情報の出現頻度（＝０．２）を乗じた値との合計値（＝１２４，４８０）が求められている。本例によれば、各候補語が、「。」、「風景」、「犬」の順に提示されることになる。
【００４５】
第３のスコアリング例について説明する。
本例のスコアリングの説明では、作成中の文の例として「私と彼が公園で見た」を用いる。この場合、文字入力位置の前の語「見た」について、「私→見た」に係る関係情報「ｒｏｌｅ（ｓｂ，見る，私）」、「彼→見た」に係る関係情報「ｒｏｌｅ（ｓｂ，見る，彼）」、「公園→見た」に係る関係情報「ｒｏｌｅ（で，見る，公園）」が得られる。以下では、係り関係を「ｒｏｌｅ（＊，Ｂ，Ａ）」と表記し、意味役割の関係を「ｒｏｌｅ（Ｒ，Ｂ，Ａ）」と表記する。また、「ｓｂ」、「ｏｂ」、「で」などを意味関係といい、意味役割の関係の一部を表現するものとして扱う。
【００４６】
本例のスコアリングでは、スコア要素として以下の要素を用いる。
＜ベース１；共起アプローチ＞
（要素１−１）接続元と候補語間の係り受けの相互情報量（固有名詞などから続く候補語の重みを上げる）
例えば、ｒｏｌｅ（＊，見た，私）→ｒｏｌｅ（＊，パンダ，見た）。
（要素１−２）接続元と候補語間の意味役割の相互情報量
例えば、ｒｏｌｅ（ｓｂ，見た，私）→ｒｏｌｅ（ｏｂ，パンダ，見た）。
＜ベース２；Ｎ−ｇｒａｍアプローチ＞
（要素１−３）係り受けのＮ−ｇｒａｍ
例えば、ｒｏｌｅ（＊，見た，私）→ｒｏｌｅ（＊，犬，見た）。
（要素１−４）意味役割のＮ−ｇｒａｍ
例えば、ｒｏｌｅ（ｓｂ，見た，私）→ｒｏｌｅ（ｏｂ，犬，見た）。
【００４７】
＜特徴があるスコア＞
（要素２）意味関係の繋がり易さ（バイグラム／トライグラム／共起）（「主語の後には目的語が続き易い」などの意味関係自体の繋がり易さを利用）
例えば、「ｓｂ」→「ｏｂ」、「ｓｂ」→「で」。
（要素３−１）接続元となる語の出現頻度（上位の候補語がほぼ同数であるために票が散ってしまう場合に、元の語や意味役割の頻度が多ければ優先する）
例えば、ｒｏｌｅ（ｓｂ，見た，私）の「私」の出現頻度。
（要素３−２）接続元となる意味役割の出現頻度
例えば、ｒｏｌｅ（ｓｂ，見た，私）の「ｒｏｌｅ（ｓｂ，見た，私）」の出現頻度。
（要素４−１）現在入力中の文の構文解析及び意味解析の結果から、足りない格の重みを上げる（足りないものがある場合に候補自体の優先度を変える。後述する句点（。）のスコアの低減とは別の目的である。）
例えば、「ヲ格」が無ければ「ヲ格」の重みを上げる。
（要素４−２）現在入力中の文の構文解析及び意味解析の結果から、足りない意味関係の重みを上げる
例えば、「ｓｂ」が無ければ「ｓｂ」の重みを上げる。
【００４８】
＜従来技術のスコア＞
（要素５）直前の単語のＮ−ｇｒａｍ（従来通りのＮ−ｇｒａｍのスコアを考慮する。）
（要素６）入力履歴（直前に確定した候補の優先順位を上げる）
（要素７）距離
例えば、「私と彼が公園で見た」なら、「公園→見た」から続く候補の重みを上げる。
【００４９】
上記の各スコア要素を用いたスコアリングの計算式を例示する。
ベース（必須項目）として、（要素１−１）、（要素１−２）、（要素１−３）、（要素１−４）、（要素１−１）×（要素１−３）、（要素１−１）×（要素１−４）、（要素１−２）×（要素１−３）、（要素１−２）×（要素１−４）の何れかを用いる。
オプション１（任意項目）として、（要素２）を用いる。
オプション２（任意項目）として、（要素３−１）、（要素３−２）、（要素３−１）×（要素３−２）の何れかを用いる。
オプション３（任意項目）として、（要素４−１）、（要素４−２）、（要素４−１）×（要素４−２）の何れかを用いる。
オプション４（任意項目）として、（要素５）を用いる。
オプション５（任意項目）として、（要素６）を用いる。
オプション６（任意項目）として、（要素７）を用いる。
すなわち、各スコア要素に基づいて、スコア＝ベース（×オプション１）（×オプション２）（×オプション３）（×オプション４）（×オプション５）（×オプション６）を算出する。
【００５０】
第４のスコアリング例を説明するに先立って、候補としての句点（。）のスコアの調整について説明する。
現在入力中の文が未完成と推定される場合には、候補としての句点（。）のスコアを調整して、句点の提示順を下げる処理を行う。以下では、句点のスコアを調整するにあたり、現在入力中の文について、格（又は意味役割）の有無のチェックと、入力文字数のカウントとを実施し、その結果に応じて句点のスコアを下げる調整について説明する。
【００５１】
図８（ａ）には、格（又は意味役割）の有無に応じて句点のスコアに乗じる係数ｐ１（１未満）を例示してある。すなわち、該当する格（又は意味役割）の語が現在入力中の文に存在しない場合には、候補として検索された句点のスコアに係数ｐ１を乗じてスコアを減じる。例えば、現在入力中の文が「私と彼が公園で見た」には「ヲ格」が存在しないので、句点のスコアに該当する係数ｐ１（＝０．３）を乗じる。各格（又は意味役割）の係数としては、新聞コーパスなどで一文あたり出現する格（又は意味役割）の出現頻度を用いてもよい。具体的には、例えば、一文あたりに「ガ格」が９０％以上の確率で存在するなら、現在入力中の文に「ガ格」がない場合は句点のスコアに乗じる係数ｐ１として０．１（＝１−０．９）を用いるようにする。
【００５２】
図８（ｂ）には、現在入力中の文の長さ（文字数）に応じて句点のスコアに乗じる係数ｐ２（１未満）を決定する手法を例示してある。本例では、文字数に関する閾値Ｔと、係数ｐ２の算出式（ｐ２＝１−（Ｔ−Ｎ）／Ｔ）とを用いる。なお、係数ｐ２の算出式におけるＮは入力文字数であり、入力文字数Ｎが閾値未満の場合（Ｎ＜Ｔ）の場合に、本算出式を用いて係数ｐ２を算出する。例えば、Ｔ＝２５の場合において、「私と彼が公園で見た」までが入力済みの場合（すなわち、Ｎ＝９の場合）には、ｐ２＝１−（２５−９）／２５＝０．３６となる。
【００５３】
図８（ｃ）には、句点のスコアの調整結果を例示してある。すなわち、ｒｏｌｅ（＊，ｎｕｌｌ＿ｐｒｏ，見る）のスコアは、検索により得られたスコア（＝１，０５５，８００）に係数ｐ１（＝０．３）と係数ｐ２（＝０．３６）を乗じた値（＝１１４，０２６）となり、本来であれば１番目に提示されるところが２番目に下げられている。
【００５４】
第４のスコアリング例について説明する。
本例のスコアリングでは、図９に例示するスコア要素に加え、句点のスコアの調整に係るスコア要素を用いる。
図９（ａ）は係り関係及び意味役割の関係についてのバイグラムスコア（例えば、コーパスでの出現回数）の例であり、同図（ｂ）は接続元の意味役割の接続頻度（例えば、ユニグラムやパープレキシティ）の例であり、同図（ｃ）は接続元の意味役割の重要度（例えば、ｔｆ−ｉｄｆ値）の例であり、同図（ｄ）は単語間の距離（例えば、単語間の距離の逆数）の例である。なお、図９（ａ）〜（ｃ）では、各関係情報の右側にスコアを示してある。また、図９（ｄ）では、各関係情報の右側に単語間の距離を示してあり、更に右側にスコア（距離の逆数）を示してある。
句点のスコアの調整に係るスコア要素としては、図８（ａ）を用いて説明した格の有無に関するスコア要素（ｓｃｏｒｅ１）と、同図（ｂ）を用いて説明した現在入力中の文の長さに関するスコア要素（ｓｃｏｒｅ２）とを用いる。
【００５５】
そして、図１０に例示するように、［バイグラムスコア］×［接続元の意味役割の接続頻度］×［接続元の意味役割の重要度］×［単語間の距離の逆数］の合計値をスコアとして算出する。なお、句点については、［バイグラムスコア］×［接続元の意味役割の接続頻度］×［接続元の意味役割の重要度］×［単語間の距離の逆数］×［ｓｃｏｒｅ１］×［ｓｃｏｒｅ２］の合計値をスコアとして算出する。
【００５６】
次に、検索された関係情報（接続先の関係情報）から得られた候補語及び当該関係情報における係り元の語（基準語）の意味役割から候補文を生成し、補完候補として提示する処理について説明する。
例えば、図１１に例示するように、「私と彼が公園で見た」について、「ｒｏｌｅ（ｒｏｏｔ，ｎｕｌｌ＿ｐｒｏ，見る）」、「ｒｏｌｅ（ｏｂ，風景，見る）」、「ｒｏｌｅ（ｏｂ，子供，見る）」、「ｒｏｌｅ（ている，犬，見る）」の各関係情報が検索された場合に、「。」、「風景」、「子供」、「犬」の各候補語をそのまま提示するのではなく、例えば、文字入力位置の前の語「見た」を前方に付加した候補文を生成して提示する。なお、候補文の生成については、例えば、その意味役割がどのような文章から生成されたかを調べて統計的に多いものを採用するようにしてもよく、意味役割から一意に文を変換するような定型文や規則を用意するようにしてもよい。また、このとき、関係情報における係り元の語（基準語）の意味役割に応じて、文字入力位置の前の語「見た」を変形させた文字列を付加するようにしてもよい。すなわち、図１１の４番目の候補に例示するように、候補語「犬」について、「見た」を該当する意味役割「ている」に合わせて変形した文字列「見ている」を生成し、その後に候補語「犬」を続けた候補文を生成する。
なお、候補語を提示するか、候補文を提示するかは、予め設定しておいてもよく、利用者によりシステムの利用開始時に選択させるようにしてもよく、本システムの利用者や運用形態などに応じて任意に設定することができる。
【００５７】
以上のように、本提案に係る文章入力支援では、作成中の文に含まれる各語の係り関係及び意味役割を構文・意味解析部３３により解析した結果に基づいて、補完候補評価部３４が、各種スコアＤＢ１２を参照して補完入力候補となる候補語を検索すると共に各候補語のスコアを算出し、（必要に応じて、補完候補文生成部３５が、補完候補評価部３４により得られた候補語に基づいて候補文を生成し）、補完候補提示部３６が、検索により得られた候補語（又は候補文）をスコア順に提示するようにしている。
このような構成によれば、例えば、「私と背の低い彼が長閑な公園で見た」といった修飾語が多く含まれる文では、「見た」と係り関係を有する「私」、「彼」、「公園」の各語が「見た」から離れた位置に存在するが、このような場合でも、文字入力位置の前の語からの距離とは無関係に、これらの語を用いた検索を行うことができる。
【００５８】
本提案手法の特徴としては、以下のような特徴が挙げられる。
１．係り関係及び意味役割に対してＮ−ｇｒａｍモデルや共起情報を利用すること
１．１．語と語の間の関係や意味的な繋がりを重要視して、補完候補を特定できる。
１．２．係り受けを用いるため、参照する語の出現位置（距離）に関係ない。
２．ランキングを行い、複数の候補を統合すること
２．１．複数の係り受けからそれぞれ独立に補完候補が得られ、これらを統合することで文脈（利用者の意図）を考慮した補完候補を提示できる。
２．２．文の長さや格（意味役割）の有無をチェックし、句点（。）のスコアを操作する。
【００５９】
次に、従来手法による文章入力支援と、本提案に係る文章入力支援とを比較する。
図１２（ａ）には従来手法による文章入力支援の様子を例示してあり、同図（ｂ）には本提案に係る文章入力支援の様子を例示してある。
例えば、作成中の文「私と背の低い彼が長閑な公園で見た」について、従来手法では「見」と「た」を用いた検索が行われ、その結果、「。」、「風景」、「子供」の各候補語が提示されているのに対し、本提案手法では、「見（た）」と「私」、「彼」、「公園」との係り関係を用いた検索が行われ、その結果、「た。」、「た風景」、「ている子供」の各候補語が提示されている。このように、本提案手法によれば、文脈を考慮した補完候補の提示が行われる。
【００６０】
次に、単語間の距離に依存しない、共起モデルを使った場合の補完と比較する。
本提案は、以下の２点で共起モデルに対して優位性がある。
（優位性１）共起モデルはインデックスサイズが大きい。
（優位性２）共起モデルは補完候補にゴミ（候補として不適切な語）が多い。
【００６１】
（優位性１）について
例えば、「私と彼が長閑な公園で見た犬はオムツをした子供を追い掛け回していました」の場合、共起モデルでは、「私」、「彼」、「長閑な」、「公園」、「見」、「犬」、「オムツ」、「し」、「子供」、「追い掛け回し」の１０個の形態素に基づいてインデックスが作成されることになり、インデックスサイズ＝１０Ｃ２＝（１０×９）／（２×１）＝４５個となる（ちなみに、通常のバイグラムモデルだと２１個）。一方、本提案手法では、上記例文における係り受け「私−彼」、「私−公園」、「彼−公園」、「長閑な−公園」、「私−見る」、「彼−見る」、「公園−見る」、「見る−犬」、「オムツ−する」、「オムツ−子供」、「する−子供」、「犬−子供」、「犬−追い掛け回す」、「子供−追いかけまわす」からバイグラムモデルを構築すると、インデックスサイズは１４個となる。
【００６２】
（優位性２）について
共起モデルによる補完では、上記の例文をコーパスとしたとき、現在入力中の文が「私と彼が長閑な公園で見た」の場合に、補完候補として、１：「私」、２：「彼」、３：「長閑な」、４：「公園」、５：「見る」、６：「犬」、７：「オムツ」、８：「する」、９：「子供」、１０：「追い掛け回す」が提示される。しかしながら、補完候補としては、２、６、９以外は人の目で見て明らかにおかしいと判断できる。なお、「動詞の後に動詞を続けない」などのルールを定めておくことで幾つか除外できるが、どのようなルールを用意するかが非常に難しいという問題がある。一方、本提案手法では、係り受けが無いものは補完候補として提示されないので、「見た」との間で係り関係を有する「私−見る」、「彼−見る」、「公園−見る」、「見る−犬」のうち、「見た」が係り関係にある「見る−犬」に基づいて「犬」が提示されることになる。ここでは、説明のためにコーパスを上記の例文のみとしたので、「子供」が候補から外れてしまっているが、コーパスを充実させることでこの問題はある程度回避することができる。
【００６３】
以上のように、共起モデルによる入力補完は、コーパスを充実させ、共起した回数（頻度）などで重要度を与えることで、補完候補の質を高めることができる。しかしながら、コーパスを充実させれば、当然ながらインデックスサイズは膨大になり、提示される補完候補にゴミ（候補として不適切な語）が大量に表れることになる。また、例えば、入力済みの単語全部と共起するような語を補完候補として提示するとした場合も、補完候補の検討に不適切な単語（上記の例における「長閑な」など）も含んでしまうことから、補完候補にノイズが乗りやすい。一方、本提案手法では、コーパスを充実させてもインデックスサイズを抑えることができ、また、直接関係ない単語を補完候補の検討から外すことができるため、共起モデルによる入力補完と比べてインデックスサイズや質の面で優位性がある。
【００６４】
なお、これまでは日本語の文についての文章入力支援について説明したが、本提案手法は言語非依存であり、構文・意味解析ができる言語であれば、日本語と同様に補完候補を提示できる。
【００６５】
次に、補完候補のロバスト性について説明する。
従来手法におけるＮ−ｇｒａｍデータの作成方法には次のような課題がある。例えば、図１３（ａ）に例示するように、コーパスとして「私は公園で遊ぶ」と「私は公園で犬と遊ぶ」の２つの文が与えられたとき、バイグラムデータは同図（ｂ）のようになる。すなわち、コーパスのデータはどちらも「公園で遊ぶ」という基本構造を持っているが、２番目の文には「犬と」が入っているため、「公園で」に続く候補語は「遊ぶ」と「犬」が同じ順位で表れることになる。あるべき姿としては、図１３（ａ）のコーパスを利用するなら、「遊ぶ」の方が「犬」よりも優先順位としては高く設定されて欲しい。しかしながら、連続する語の情報を扱うＮ−ｇｒａｍでは、この課題を解決できない。
一方、本提案手法では、語と語の間の係り受けの情報を利用するため、図１３（ａ）の例において、バイグラムデータは同図（ｃ）のようになる。このため、「公園で」に続く候補語は従来手法と同じ「遊ぶ」と「犬」だが、優先順は「遊ぶ」の方が高く設定される。このように、係り受けの情報を利用することで、語と語の間の距離に関係なくＮ−ｇｒａｍモデルを構築できるため、従来手法よりも自然文らしい候補を提示することが可能となる。
【００６６】
次に、本提案手法の変形例について説明する。
文章作成において、或る程度文章の書き方（テンプレート）が決まっているような分野においては、よく使われるテンプレートを予め定義することができる。テンプレートを利用することで、これまで説明した提案手法に比べ、より長い文章を一気に入力（補完）することができる。
図１４（ａ）には、これまで説明した提案手法による入力支援の例を概念的に示しており、同図（ｂ）には、テンプレートを用いた入力支援の例を概念的に示している。すなわち、現在入力中の文における文字入力位置の前の語「見（た）」に対する他の語「私」、「彼女」、「公園」との係り関係のパターンに基づいて、その後に続くテンプレートを候補として提示するものである。
【００６７】
図１５を参照して具体的に説明する。
図１５（ａ）には、定型的な文が用いられる傾向にある分野（例えば、医療分野）の既存の文に基づいて予め生成されたテンプレートを例示してある。このテンプレートを利用するために、図１５（ｂ）に例示するように、各テンプレートを導くパターンを定義する。例えば、テンプレート１の場合、１．１はテンプレート１に出現する意味役割であり、１．２はその意味役割のＮ−ｇｒａｍである。本例では、一例としてバイグラムモデルを用いている。現在入力中の文が１．１又は１．２のパターンを満たした場合、テンプレート１を補完候補として提示する。なお、パターンを満たしたか否かの判断は、「パターンの完全一致」でも「パターンの一部を含む」でも構わない。以下では、「パターン先頭からの一致」という条件でパターンを満たしたか否かの判断を行う。
【００６８】
まず、現在入力中の文について構文解析及び意味解析を行い、解析結果として得られた係り関係及び意味役割の関係がどのテンプレートに該当するか検索する。例えば、「新薬の投薬は」という文を解析して「ｒｏｌｅ（の，Ｂ（投薬），Ａ（新薬））」という関係情報が得られた場合には、テンプレート１とテンプレート２が該当する。この結果、図１６に例示するように、テキスト入力部５１に表示されている現在作成中の文に対し、その補完候補（本例では、テンプレート１の後半部分）が子ウィンドウ５２内に提示されている。その後、利用者により補完候補のテンプレートが選択されると、そのテンプレート（入力済みの部分に続く部分）を現在入力中の文に代入する。このとき、まだ現れていない単語（ＣやＤ）については、（１）空欄として利用者に入力を促す、（２）ＣやＤによく入力される単語を自動的に設定する、（３）これまで提案した係り関係や意味役割の関係などのＮ−ｇｒａｍによる入力補完を行う、などの何れかを用いて設定する。
このような構成によれば、より長い補完候補の提示を行うことができる。また、或る程度、テンプレートや定型文を多用する分野において効果的である。
【００６９】
ここで、上述した文章入力支援システムは、参照情報作成部２０として動作する参照情報作成装置と、文章入力支援部３０として動作する文章入力支援装置とを別体の装置に設け、参照情報作成装置により作成された辞書を各文章入力支援装置に配布するように構成しているが、これに限定するものではなく、例えば、各文章入力支援装置が参照情報作成装置に保持されている辞書を参照する構成としてもよく、参照情報作成部２０と文章入力支援部３０とを一体の装置に設けた構成としてもよい。
【００７０】
図１７には、本提案に係る文章入力支援システムにおいて、参照情報作成部２０として動作する参照情報作成装置のコンピュータ、及び、文章入力支援部３０として動作する文章入力支援装置のコンピュータのハードウェア構成を例示してある。
本例のコンピュータは、各種演算処理を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６１、ＣＰＵ６１の作業領域となるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６２や基本的な制御プログラムを記録したＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６３等の主記憶装置、本発明の一実施形態に係るプログラムや各種データを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）６４等の補助記憶装置、各種情報を表示出力するための表示装置及び操作者により入力操作に用いられる操作ボタンやタッチパネル等の入力機器とのインタフェースである入出力Ｉ／Ｆ６５、他の装置との間で有線又は無線により通信を行うインタフェースである通信Ｉ／Ｆ６６、等のハードウェア資源を有している。
そして、本発明の一実施形態に係るプログラムを補助記憶装置６４等から読み出してＲＡＭ６２に展開し、これをＣＰＵ６１により実行させることで、上述した各機能部をコンピュータ上に実現している。
【００７１】
なお、本発明の一実施形態に係るプログラムは、例えば、当該プログラムを記憶したＣＤ−ＲＯＭ等の外部記憶媒体から読み込む形式や、通信網等を介して受信する形式などにより、本例に係るコンピュータに設定される。
また、本例のようなソフトウェア構成により各機能部を実現する態様に限られず、それぞれの機能部を専用のハードウェア資源で実現するようにしてもよい。
【符号の説明】
【００７２】
１１：大規模コーパス、  １２：各種スコアＤＢ、  ２０：参照情報作成部、  ３０：文章入力支援部
２１：テキスト取得部、  ２２：テキスト分割部、  ２３：構文・意味解析部、  ２４：各種スコア算出部、
３１：テキスト取得部、  ３２：テキスト分割部、  ３３：構文・意味解析部、  ３４：補完候補評価部、  ３５：補完候補文生成部、  ３６：補完候補提示部、  ３７：補完候補挿入部
【図１】
0005553033.tif 000002
【図２】
0005553033.tif 000003
【図３】
0005553033.tif 000004
【図４】
0005553033.tif 000005
【図５】
0005553033.tif 000006
【図６】
0005553033.tif 000007
【図７】
0005553033.tif 000008
【図８】
0005553033.tif 000009
【図９】
0005553033.tif 000010
【図１０】
0005553033.tif 000011
【図１１】
0005553033.tif 000012
【図１２】
0005553033.tif 000013
【図１３】
0005553033.tif 000014
【図１４】
0005553033.tif 000015
【図１５】
0005553033.tif 000016
【図１６】
0005553033.tif 000017
【図１７】
0005553033.tif 000018