(57)【要約】【課題】  キー操作と音声入力を併用して効率的にテキスト入力を行う。【解決手段】  連続的になされたキー入力に対応する文字列候補を生成し（Ｓ２２０３〜Ｓ２２０５）、生成された文字列候補をユーザに選択させるために表示する（Ｓ２２０６）一方で、一のキー入力に対応する音声を切り出し（Ｓ２２０７）、切り出された音声に対する音声認識文法を、当該一のキー入力に基づき生成し（Ｓ２２０８）、その音声認識文法を用いて音声認識を行う（Ｓ２２０９）。そして、上記の文字列候補の生成（Ｓ２２０３〜Ｓ２２０５）では、その実行時点で完了している音声認識の結果を加味して文字列候補を生成する。【選択図】  図２２
2006106620.tif 000002
【特許請求の範囲】
【請求項１】
文字列のカテゴリを指示する指示手段と、音声を受信する音声受信手段とを備え、前記指示手段による指示入力とその指示入力と並行して前記音声受信手段で受信した音声とに基づいて文字列を入力する文字列入力装置であって、
前記指示手段による一の指示入力およびそれまで連続的になされた指示入力に対応する文字列候補を生成する文字列候補生成手段と、
前記文字列候補生成手段により生成された文字列候補を、ユーザに選択させるために表示する表示手段と、
前記音声受信手段で受信した連続的に発声された音声を認識し、その認識結果を出力する音声認識手段と、
前記文字列候補生成手段および前記表示手段による処理と並行して前記音声認識手段による処理を実行させる制御手段と、
を有し、
前記文字列候補生成手段は、その実行時点で完了している前記音声認識手段による音声認識の過程で得られる音声認識スコアを加味して前記文字列候補を生成することを特徴とする文字列入力装置。
【請求項２】
前記音声受信手段で受信した音声の過去一定時間分を保持する保持手段と、
前記保持手段に保持された音声のうち、前記指示手段による最初の指示入力の時刻から遡って所定時間以内のデータから、発声開始位置を特定する音声切り出し手段と、
を更に有することを特徴とする請求項１に記載の文字列入力装置。
【請求項３】
前記音声受信手段で受信した音声から、前記指示手段による個々の指示入力に対応する部分音声を切り出す音声切り出し手段と、
前記個々の指示入力に応じて、前記音声切り出し手段で切り出された部分音声を認識するための音声認識文法を生成する音声認識文法生成手段と、
を更に備え、
前記音声認識手段は、音声認識文法生成手段によって生成された音声認識文法に基づいて前記音声切り出し手段で切り出された部分音声を認識し、その認識結果を尤度情報とともに出力することを特徴とする請求項１に記載の文字列入力装置。
【請求項４】
前記音声認識手段は、任意の音節列を受理可能な音声認識文法に基づいて前記音声受信手段で受信した音声を認識するように構成され、
前記指示手段による個々の指示入力に対して、入力音声の中のその指示時刻に近い部分が、その指示入力に対応する前記カテゴリに属する文字列として認識されやすくなるような重み係数を算出する重み係数算出手段を更に有し、
前記音声認識手段は、前記重み係数算出手段による重み係数を用いて音声認識を行うことを特徴とする請求項１に記載の文字列入力装置。
【請求項５】
前記文字列候補生成手段は、
前記一の指示入力およびそれまで連続的になされた指示入力に基づいて、文字列の接続の仮説を生成する仮説生成手段と、
前記仮説生成手段により生成された前記仮説の各パスについて、現時点で完了している前記音声認識手段による音声認識で得られた音声認識スコアを加味して尤度を計算する尤度計算手段と、
前記尤度計算手段により計算された各パスの尤度に基づいて、前記文字列候補を抽出する抽出手段と、
を含むことを特徴とする請求項１に記載の文字列入力装置。
【請求項６】
前記指示手段による指示入力に基づく検索が可能に構成された単語辞書を更に有し、
前記仮説生成手段は、前記一の指示入力に対応する単語を、当該一の指示入力およびそれまで連続的になされた指示入力に基づいて前記単語辞書から検索し、検索された単語の接続の仮説を前記文字列の接続の仮説として生成する
ことを特徴とする請求項５に記載の文字列入力装置。
【請求項７】
前記単語辞書は、前記一の指示入力およびそれまで連続的になされた一連の指示入力を過去に遡って辿ることで、各々の指示入力に対応する読みの単語に辿り着くことができるトライ構造をなすことを特徴とする請求項６に記載の文字列入力装置。
【請求項８】
前記単語辞書に含まれる各単語にはその単語の出現しにくさを示す単語コスト情報が付与され、
単語と単語のつながりにくさを表す接続コスト情報を保持する接続コスト情報保持手段を更に備えることを特徴とする請求項６に記載の文字列入力装置。
【請求項９】
前記仮説生成手段は、前記一の指示入力に対応するモーラもしくは文字列およびそれまで連続的になされた指示入力にそれぞれ対応するモーラもしくは文字列を用いて、モーラもしくは文字列の接続の仮説を前記モーラもしくは文字列の接続の仮説として生成することを特徴とする請求項５に記載の文字列入力装置。
【請求項１０】
モーラもしくは文字列の出現しにくさを示すコスト情報を保持する文字列コスト情報保持手段と、
モーラもしくは文字列同士の接続しにくさを示す文字列間接続コスト情報を保持する文字列接続間コスト情報保持手段と、
更にを備えることを特徴とする請求項１に記載の文字列入力装置。
【請求項１１】
文字列のカテゴリを指示する指示手段と、音声を受信する音声受信手段とを備え、前記指示手段による指示入力とその指示入力と並行して前記音声受信手段で受信した音声とに基づいて文字列を入力する文字列入力装置の制御方法であって、
（ａ）前記指示手段による一の指示入力およびそれまで連続的になされた指示入力に対応する文字列候補を生成するステップと、
（ｂ）上記ステップ（ａ）で生成された文字列候補を、ユーザに選択させるために表示するステップと、
（ｃ）前記一の指示入力に続けて新たな指示入力がなされた場合、当該新たな指示入力について、上記ステップ（ａ）および（ｂ）を繰り返すよう制御するステップと、
を有する一方、
（ｄ）前記音声受信手段で受信した連続的に発声された音声に対し音声認識を行い、その認識結果を出力するステップと、
（ｅ）前記一の指示入力に続けてなされた新たな指示入力に対応する音声について、上記ステップ（ｄ）を繰り返すよう制御するステップと、
を有し、
上記ステップ（ａ）は、その実行時点で完了しているステップ（ｄ）による音声認識の過程で得られる音声認識スコアを加味して前記文字列候補を生成することを特徴とする文字列入力装置の制御方法。
【請求項１２】
請求項１１に記載の文字列入力装置の制御方法をコンピュータによって実現するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字列入力装置およびその制御方法に関し、特に、キー操作と音声入力とを併用して文字列の入力を行う文字列入力装置およびその制御方法に関する。
【背景技術】
【０００２】
携帯電話、ＰＤＡ、カーナビゲーションシステム、デジタルテレビ、ファクシミリ装置など、情報機器の多様化が進んでいる。またこうした機器の多くは、インターネット接続などの通信機能を備えるようになり、電子メール、ウェブをはじめとするテキスト情報のやり取りを行うための機器として利用されるケースが増えてきた。
【０００３】
こうした機器は、通常キーボードを持たず、テキストの入力には困難を伴う。携帯電話やファクシミリ装置は通常テンキーを備えており、このテンキーの操作によってテキストの入力を行う方式が普及している。日本語の場合、最も普及している方式は、あ行、か行、・・・ごとにキーを割り当て、キーを１回以上押下することで所望の文字を入力するというものである。例えば、テンキーの“２”を２回押下することで、か行の２番目の文字「き」を入力することができる。
【０００４】
こうした入力方式にはさまざまな改良が加えられている。その一つの例は、先頭の数文字を入力すると後続文字列を予測して提示する予測入力方式である。子音だけを入力することでテキストの入力を可能とする方式も考案されている。
【０００５】
一方、不便なキー操作に対する代替手段として、音声入力が注目されている。音声入力により任意のテキストを入力する方式としては、ＩＢＭ社のViaVoiceなどがある。また、キー入力と音声入力を組み合わせた方式もある。例えば、特開２０００−０５６７９６号公報（特許文献１）や特開平９−２８８４９５号公報（特許文献２）は、キー入力と同時に音声入力を行うことでテキスト入力を可能にする技術を開示している。
【０００６】
【特許文献１】特開２０００−０５６７９６号公報
【特許文献２】特開平９−２８８４９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来の技術では、キー入力単独の方式は、予測機能や子音入力などの改良により利便性は向上しているものの、まだ問題が多い。予測機能はその予測精度が悪ければ、従来の方法に対するメリットは少なくなる。また、子音入力は、子音列に対応する文字列候補が多く、その中から選択する操作が効率を下げるという問題がある。
【０００８】
一方、ViaVoiceのような音声認識による方法は、一般に多くのメモリやＣＰＵパワーを必要とするため、携帯電話、ファクシミリ装置などの小型機器上で動作させることは現時点では困難である。
【０００９】
これに対し、特許文献１または特許文献２の、キー入力と同時に音声入力を行う手法は、上述の従来技術の問題点を補完する有効な手段になる可能性がある。しかし、いずれも、キー入力に対応する入力音声が、個々のキー押下それぞれに対して明確に区別されているという前提に基づいている。例えば、“１”、“２”とキー押下しながら「いか」と発声するケースでは、キー押下“１”に対応する「い」の音声と、キー押下“２”に対応する「か」の音声が何らかの方法で事前に区別されていることが前提になっている。これを可能にする一つの方法は、キー“１”の押下とキー“２”の押下との間に十分な時間間隔をとり、それぞれに合わせて「い」と「か」を区切って発声することである。しかし、これではテキスト入力の効率が下がり、操作の自然性が低下してしまうという問題がある。
【００１０】
したがって、操作の効率や自然性を上げるためには、キー“１”、“２”の押下を連続的に行い、「いか」と区切らずに連続的に発声することを可能にする必要がある。
【課題を解決するための手段】
【００１１】
本発明は上記のような技術的背景によってなされた。つまり本発明は、キー操作と音声入力とを併用して文字列の入力を行う文字列入力装置において、文字列入力の操作効率や自然性を向上させることを目的としている。
【００１２】
この目的を達成するために、例えば本発明の一側面に係る文字列入力装置は、以下の構成を備える。すなわち、文字列のカテゴリを指示する指示手段と、音声を受信する音声受信手段とを備え、前記指示手段による指示入力とその指示入力と並行して前記音声受信手段で受信した音声とに基づいて文字列を入力する文字列入力装置であって、前記指示手段による一の指示入力およびそれまで連続的になされた指示入力に対応する文字列候補を生成する文字列候補生成手段と、前記文字列候補生成手段により生成された文字列候補を、ユーザに選択させるために表示する表示手段と、前記音声受信手段で受信した連続的に発声された音声を認識し、その認識結果を出力する音声認識手段と、前記文字列候補生成手段および前記表示手段による処理と並行して前記音声認識手段による処理を実行させる制御手段とを有し、前記文字列候補生成手段は、その実行時点で完了している前記音声認識手段による音声認識の過程で得られる音声認識スコアを加味して前記文字列候補を生成することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、キー操作と音声入力とを併用して文字列の入力を行う文字列入力装置における、文字列入力の操作効率や自然性が向上する。具体的には例えば、（１）キー操作によるテキスト入力におけるキー操作回数が減る、（２）リソースの少ない機器でも音声入力が可能になる、という効果が生まれる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。
【００１５】
（第１の実施形態）
本実施形態では、図１に示すような、ファクシミリ装置（以下「ＦＡＸ」という。）１０１に対してテキスト入力を行うケースで説明する。
【００１６】
図１において、１０２はテンキーである。１０３はいわゆる十字キーであり、上下左右の方向キーと中央のＳＥＴキーからなる。１０４は液晶画面である。１０５は受話器である。音声入力は、この受話器１０５を通して行う。
【００１７】
図２は、本実施形態に係るＦＡＸ１０１のテキスト入力に係る機能構成を示すブロック図である。
【００１８】
２０１は、テンキー１０２や十字キー１０３によるキー入力を受け付けるキー入力部である。
２０２は、受話器１０５を通じて入ってくる音声信号から、テキスト入力のための入力音声を切り出す音声切り出し部である。
２０３は、音声認識文法生成部である。
２０４は、音声認識部であり、音声切り出し部２０２で切り出された入力音声を、音声認識文法生成部２０３で生成された音声認識文法に基づいて認識する。
２０５は、N-best生成部であり、音声認識部２０４の認識結果を、スコアの高い上位N個の結果をそれぞれにスコアを付与した形で生成する。
２０６は、単語辞書である。
２０７は、キー入力部２０１で受け付けたキー入力に対応する単語を単語辞書２０６から検索する単語辞書検索部である。
２０８は、単語辞書検索部２０７によって検索された単語の列を用いて、単語の接続の仮説を表現するラティスを生成するラティス生成部である。
２０９は、ラティス生成部２０８が生成するラティス構造から、N-best生成部２０５が生成する音声認識結果を加味して最適な単語列を探索する解探索部である。
２１０は、接続コストテーブルである。
２１１は、解探索部２０９が出力する最適な単語列を液晶画面１０４上に表示する結果表示部である。
【００１９】
図３は、本実施形態に係るＦＡＸ１０１のハードウエア構成を示す構成図である。
【００２０】
３０１はＣＰＵであり、後述するＦＡＸ１０１の動作手順を実現するためのプログラムに従って動作する。
３０２はＲＡＭであり、主記憶装置として、ＣＰＵ３０１の動作に必要な記憶領域を提供する。
３０３はＲＯＭであり、本発明に係る動作手順を実現するための制御プログラムや単語辞書２０６、接続コストテーブル２１０を保持する。
３０４はＬＣＤであり、液晶画面１０４を構成する。
３０５はテンキー１０２、十字キー１０３を含む物理ボタンである。
３０６はＡ／Ｄコンバータであり、入力音声をデジタル信号に変換する。
３０７はマイクであり、受話器１０５を構成する。
３０８はバスである。
【００２１】
以下、本実施形態に係るＦＡＸ１０１の具体的な動作を説明する。
【００２２】
まず、入力対象の各文字列は例えば１１のカテゴリに分類され、テンキー１０２の各キーに各カテゴリが割り当てられる。つまり、テンキー１０２は文字列のカテゴリを指示する指示手段として機能する。例えば、各文字列は、モーラ単位で以下のように割り当てられる。なお、モーラとは、「拍」とも呼ばれ、基本的には日本語の各仮名文字が一つのモーラになるが、これに加え、「きゃ」「きゅ」「きょ」などの拗音、長音「ー」、促音「っ」はそれぞれ一つのモーラとなる。
【００２３】
“１”・・・「あ」「い」「う」「え」「お」
“２”・・・「か」「き」「く」「け」「こ」「きゃ」「きゅ」「きょ」
「が」「ぎ」「ぐ」「げ」「ご」「ぎゃ」「ぎゅ」「ぎょ」
“３”・・・「さ」「し」「す」「せ」「そ」「しゃ」「しゅ」「しょ」
「ざ」「じ」「ず」「ぜ」「ぞ」「じゃ」「じゅ」「じょ」
“４”・・・「た」「ち」「つ」「て」「と」「ちゃ」「ちゅ」「ちょ」「っ」
「だ」「ぢ」「づ」「で」「ど」「でゃ」「でゅ」「でょ」
“５”・・・「な」「に」「ぬ」「ね」「の」「にゃ」「にゅ」「にょ」
“６”・・・「は」「ひ」「ふ」「へ」「ほ」「ひゃ」「ひゅ」「ひょ」
「ば」「び」「ぶ」「べ」「ぼ」「びゃ」「びゅ」「びょ」
「ぱ」「ぴ」「ぷ」「ぺ」「ぽ」「ぴゃ」「ぴゅ」「ぴょ」
“７”・・・「ま」「み」「む」「め」「も」「みゃ」「みゅ」「みょ」
“８”・・・「や」「ゆ」「よ」
“９”・・・「ら」「り」「る」「れ」「ろ」「りゃ」「りゅ」「りょ」
“０”・・・「わ」「を」「ん」
“＊”・・・「ー」
【００２４】
図１５は、すでに文字列「この技術は、」を入力した状態を示している。以下では、この状態から本テキスト入力方式を用いて、「マルチモーダル」という文字列を入力する場合の例を説明する。本実施形態では、ユーザは、「マルチモーダル」に対応するテンキー列、
“７”、“９”、“４”、“７”、“＊ ”、“４”、“９”
を押しながら、これと並行して「マルチモーダル」と発声する。
【００２５】
単語辞書検索部２０７は、ユーザからのキー入力に対応する単語を単語辞書２０６から検索する。
【００２６】
ここで、単語辞書２０６のデータ構造を説明する。図４は、単語辞書２０６の中身の一部を表している。単語辞書はこのように、テンキー列の逆順をキーとするトライ構造をなしている。例えば、テンキー列“７”が入力された場合、読みがこの“７”に対応する「ま」「み」「む」「め」「も」「みゃ」「みゅ」「みょ」で終わる単語が検索できるようになっている。すなわち、rootノードから“７”のラベルのついた枝を辿り、さらに、空文字を意味する“φ”の枝を辿ることで、読みが「ま」「み」「む」「め」「も」「みゃ」「みゅ」「みょ」で終わる単語に辿り着くことができる。図４の例では、「目」「間」「未」「無」・・・などの単語に辿り着ける。
【００２７】
テンキー列“７”、“９”が入力された場合は、同様にして、“９”、もしくは、“７”、“９”に対応する読みで終わる単語を検索できる。すなわち、rootノードから“９”のラベルのついた枝を辿り、さらに、空文字を意味する”φ”の枝を辿ることで、読みが「ら」「り」「る」「れ」「ろ」「りゃ」「りゅ」「りょ」で終わる単語「ら」「等」「利」「炉」・・・に辿り着くことができる。“９”の枝を辿ったノードには別の枝があり、“７”の枝を辿ることで、“７”、“９”に対応する読みで終わる単語「村」「森」「真理」・・・などを検索できる。
【００２８】
図５は、各単語に付与されている情報の例を示している。図示のように、各単語には少なくとも、その単語の表記、読み、単語コストが付与されている。単語コストとは、その単語の出現頻度が大きいほど小さな値をとるデータである。
【００２９】
ラティス生成部２０８は、こうして検索された単語の列を用いて、単語接続の仮説を構成するラティスを生成する。
【００３０】
図７は、“７”、“９”、“４”とテンキー列が入力された時点で生成されるラティス構造の例である。各位置には、その位置までのテンキー列に対し、読みが右部分一致する単語がリストアップされ、隣接する単語同士が接続される。“Ｈ”は文頭ノードを意味する。また、上記の“７”、“９”、“４”に続けてさらに、“７”、“＊”、“４”、“９”とキー入力した時点で生成されるラティス構造の例を、図８に示す。
【００３１】
一方、音声入力の処理は以下のようになる。音声切り出し部２０２は、ユーザがテンキー１０２の押下に応じて発声した入力音声に対し、各キーに対応する音声信号を切り出そうとする。例えば、“７”、“９”、“４”、・・・とキー入力された場合、“７”に対応する音声信号、“９”に対応する音声信号、“４”に対応する音声信号をそれぞれ切り出そうとする。
【００３２】
図９はその様子を表している。最初に“７”がキー入力され、その後“９”がキー入力された時点で“７”に対応する音声信号を切り出す。たとえば、“７”に対応する音声信号の先頭は“７”キー押下時刻より所定時間Ｔ以内にあり、また、その末尾は“７”キー押下時刻と“９”キー押下時刻の間にあると考えられる。音声切り出し部２０２は、この範囲内で音声信号のパワーの強さなどを考慮して、“７”に対応する音声信号を切り出す。
【００３３】
続いてキー“４”が押下された時点で、１つ前の“９”に対応する音声信号を切り出す。“９”に対応する音声信号の先頭は先ほどの“７”に対応する音声信号の末尾位置であり、その末尾は、“９”キー押下時刻と“４”キー押下時刻の間にあると考えられるので、音声切り出し部２０２は、この範囲内で“９”に対応する音声信号を切り出す。
【００３４】
音声認識文法生成部２０３は、音声切り出し部２０２で切り出された各音声信号を音声認識するための音声認識文法を動的に生成する。キー入力“９”に対応する音声信号を音声認識する場合、この音声は、キー“９”に対応する読み、「ら」「り」「る」「れ」「ろ」「りゃ」「りゅ」「りょ」のいずれかであるはずなので、この中から認識結果を出力するための文法を生成する。
【００３５】
図１０は、キー“９”に対応する音声認識文法の例を示す図である。点線で囲まれた個所は、「ら」「り」「る」「れ」「ろ」「りゃ」「りゅ」「りょ」の音素系列であり、その前に母音音素、後ろに子音音素を接続した構成になっている。切り出された音声信号は、連続音声の中から切り出されているので、このように、直前の母音、直後の子音を含んだ文法にすることで、連続音声の前後の音素とのつながりに対応できるようにする。音声認識部２０４は、この音声認識文法に基づいて、キー入力“９”に対応する音声信号を音声認識する。他のキー入力に対する音声信号についても同様である。
【００３６】
N-best生成部２０５は、音声認識部２０４の出力結果から、キー入力に対応する読みのスコア付きN-bestを生成する。図１１は、キー入力“９”に対して生成されたN-bestの例である。ここで、“り”に対するスコアは、図１０の文法の点線内の“r”→“i”のパスを含むすべての認識結果のスコアの和として計算される。
【００３７】
続いて、解探索部２０９の処理を説明するために、まず、図１２を用いて、ここまで説明した処理の時間関係を整理しておく。処理は、大きく分けて、単語辞書検索部２０７、ラティス生成部２０８からなる言語処理と、音声切り出し部２０２、音声認識文法生成部２０３、音声認識部２０４、N-best生成部２０５からなる音声処理の２つからなる。最初のキー入力“７”に対する言語処理L1は、そのキー入力後直ちに開始されるのに対し、音声処理S1は、前述の通り、音声切り出しが次のキー入力“９”をトリガに開始される。仮に図１２のように処理が推移した場合、音声処理S1の結果は、キー入力“４”に対応する言語処理L3と統合できることになる。もちろんS1の処理が十分短ければ、言語処理L2に間に合ってこれと統合できる可能性があり、逆にS1の処理に時間がかかれば、言語処理L3にも間に合わずL4とやっと統合できる、ということもありうる。
【００３８】
さて、“７”、“９”、“４”とキー入力され、キー入力“４”に対する言語処理が終わった時点で、ラティス構造は図１３のようになっている。図１２から、この時点で、キー入力“７”に対応する音声信号の認識結果が得られている。解探索部２０９は、図１３のラティスに対し、キー入力“４”の位置を末尾とする各パスのコストを計算する。パスのコストは、次式により計算される。
【００３９】
E=Σi ( C(Wi) + C(Wi-1,Wi) - S(Wi) )     ・・・(1)
【００４０】
ただし、
C(Wi) ： 単語Wiの単語コスト、
C(Wi-1,Wi)  ： Wi-1とWiの接続コスト、
S(Wi)  ： Wiに関連する音声認識スコア
である。
【００４１】
接続コストは、単語と単語のつながりにくさを示す数値である。接続コストは、接続コストテーブル２１０に、図６のようなデータとして保持されている。例えば、名詞「村」は助詞「と」とは接続コストが1でつながりやすいが、助動詞「た」とは接続コスト5でつながりにくいことを表している。一方、Wiに関連する音声認識スコアとは、次のようなものである。例えば、Wiが図１３の単語「村」だとすると、この時点で、音声処理の結果は、キー入力“７”に対応する音声の認識結果が得られている。「村」のキー入力“７”の位置に対応する読みは、「む」であるので、S(“村”)は、「む」のスコア0.42となる。同様に、図１３の単語「森」の場合、S(“森”)＝「も」のスコア＝0.15となる。図１３の「と」「た」・・「理知」「拉致」などのように、キー入力“７”の位置をカバーしない単語については、S(Wi)=0となる。
【００４２】
このコスト計算を、キー入力“４”の位置を末尾とする全パスに対して行う。この全パスの中で、
[文頭]−「村」−「と」
のコストが小さかった場合、これを、“７”、“９”、“４”とキー入力された時点での最も尤度の高いパスとして選択し、その読み列“むらと”を図１６のように画面表示する。図１４は、さらに続いて“７”がキー入力された時点のラティス構造である。この時点では、さらにキー入力“９”に対応する音声信号の認識結果も得られている。この情報を加味すると、「村」のキー入力“９”に対応する読みは、「ら」であるので、S(“村”)は、「む」のスコア0.42と「ら」のスコア0.30の和＝0.72なる。同様に、S(“理知”)=「り」のスコア＝0.80となる。こうした情報を加味して、式（１）に従って、４番目のキー入力“７”の位置を末尾とする全パスに対してコスト計算を行う。その結果、[文頭]−「真理」−「と」−「目」のコストが最小であった場合は、その読み列“まりとめ”を図１７のように画面表示する。
【００４３】
図１８は、さらにキー入力を進めて、“７”、“９”、“４”、“７”、“＊”、“４”、“９”とキー入力した時点での画面表示の例を示している（[文頭]−「目」−「理知」−「モーダル」が最小コストであった場合）。ユーザがこれに続いて「ＳＥＴ」ボタンを押すと、その最小コストパス、[文頭]−「目」−「理知」−「モーダル」の表記列“目理知モーダル”を、図１９のように画面表示する。ただし、「ＳＥＴ」ボタンを押した場合は、最後のキー入力“９”と「ＳＥＴ」押下の間で、無音やパワーを手がかりに、キー入力“９”に対応する音声を切り出すことができるので（図９）、その音声認識結果を待って、これをパスのコスト評価に反映させているものとする。
【００４４】
さて、図１９の表記は、ユーザが意図した「マルチモーダル」ではないので、他の候補を探す必要がある。そこで、十字キーの下方向キーを押すと、図２０のように他の候補リストが表示される。この候補リストは、ラティスに含まれる全パス(末尾まで辿り着いているもの)に対応する表記列を、パスのコストの低い順に並べたものである。ユーザは、このリストに対し、十字キーの上方向キーと下方向キーを押すことで、望みの候補を選択し、「ＳＥＴ」ボタンを押すことで、確定させる。図２１は、候補リストから「マルチモーダル」を選択して確定させたときの画面表示である。以上のようにして、キー入力と音声を組み合わせた文字入力を行うことができる。
【００４５】
ここまでの動作を、図２２のフローチャートを用いて整理する。
【００４６】
まず、キー入力があれば（ステップＳ２２０１）、それが「ＳＥＴ」ボタンか否かを判定し（ステップＳ２２０２）、「ＳＥＴ」ボタンでなければ、ここで、処理が言語処理と音声処理の並列処理になる。
【００４７】
言語処理では、まず、図４のトライ辞書にアクセスし、ここまでの入力キー列の逆順にトライの木を辿り、単語を検索する（ステップＳ２２０３）。次に、検索された単語をラティスに反映させる（ステップＳ２２０４）。その後、このラティスに含まれるパスの中で、最後尾まで辿り着いているすべてのパス（今検索されラティスに反映された単語を末尾にするパス）それぞれについて、コストを計算し、コストの最も小さいパスを選択する（ステップＳ２２０５）。そして、そのパスに対応する読み列を画面表示する（ステップＳ２２０６）。コスト計算は、すでに説明したとおり、パス上の単語の単語コストと単語間の接続コスト、さらに、その時点で得られている音声処理の結果スコアを用いる。
【００４８】
一方の音声処理は、まず、入力音声から音声切り出しを行う（ステップＳ２２０７）。前述の通り、切り出される音声は、その一つ前のキー入力に対応する音声である。この切り出された音声に対する音声認識を行うための文法を生成する（ステップＳ２２０８）。文法は、一つ前のキー入力に対応して、図１０のような形で生成される。この文法に基づいて音声認識し（ステップＳ２２０９）、スコア付きN-bestの形で結果出力する（ステップＳ２２１０）。結果は、そのキー入力に対応づけて保持され、ステップＳ２２０５でのコスト計算に利用される。
【００４９】
ステップＳ２２０２において、入力キーが「ＳＥＴ」であった場合は、一つ前のキー入力に対応する音声に対する音声認識結果を待ち、これをコスト計算に反映させて、再度、最後尾まで辿り着いているすべてのパスに対するコスト計算を行う（ステップＳ２２１１）。次に、ユーザの十字キー操作による他候補選択を行い（ステップＳ２２１２）、入力を確定させる（ステップＳ２２１３）。
【００５０】
最後に、文字列入力の終了を示すユーザ操作等（終了を示すキーの押下等）の所定の終了条件により（ステップＳ２２１４）、全処理を終了する。
【００５１】
以上のようにして、ユーザは、入力したい文字列の音声を発声しながら、発声の各モーラに対応して、対応するキーを１回ずつ押下するだけの操作により、キー入力に対応する文字列の中で、その音声の情報を反映し、かつ言語としての尤もらしさを反映した文字列が上位にリストアップされ、この中からの簡単な選択操作により、望みの文字列を入力することができる。
【００５２】
（第２の実施形態）
次に、本発明の第２の実施形態を示す。本実施形態でも、図１のＦＡＸに対してテキスト入力を行うケースで説明する。
【００５３】
図２３は、本実施形態におけるＦＡＸ１０１のテキスト入力方式の機能構成を示すブロック図である。
【００５４】
２３０１は、テンキー１０２や十字キー１０３によるキー入力を受け付けるキー入力部である。
２３０２は、受話器１０５を通じて入ってくる音声信号から、テキスト入力のための入力音声を切り出す音声切り出し部である。
２３０３は、音声認識文法生成部である。
２３０４は、音声認識部であり、音声切り出し部２３０２で切り出された入力音声を、音声認識文法生成部２３０３で生成された音声認識文法に基づいて認識する。
２３０５は、N-best生成部であり、音声認識部２３０４の認識結果を、スコアの高い上位N個の結果をそれぞれにスコアを付与した形で生成する。
２３０６は、キー入力に対応するモーラの列からなるラティス構造を生成するモーララティス生成部である。
２３０７は、ラティス生成部２３０６が生成するラティス構造から、N-best生成部２３０５が生成する音声認識結果を加味して最適なモーラ列を探索する解探索部である。
２３０８は、モーラコスト情報保持部である。
２３０９は、解探索部２３０７が出力する最適なモーラ列に対応する読み文字列を液晶画面１０４上に表示する結果表示部である。
【００５５】
なお、本実施形態に係るＦＡＸの構成は、図１および図３に示した構成と同様であるので、本実施形態はこれらの図１および図３を援用して説明する。ただし本実施形態では、ＲＯＭ３０３は、本発明に係る動作手順を実現するための制御プログラムやモーラコスト情報保持部２３０８を保持する。
【００５６】
以下、本実施形態に係るＦＡＸ１０１の具体的な動作を説明する。まず、テンキー１０２の各キーに対しては、上記第１の実施形態と同様に、文字列がモーラ単位で対応づけられている。また、やはり上記第１の実施形態と同様に、図１５の状態から、本テキスト入力方式を用いて、「マルチモーダル」という文字列を入力しようとするものとする。ユーザは、「マルチモーダル」に対応するテンキー列、
“７”、“９”、“４”、“７”、“＊”、“４”、“９”
を押しながら、これに合わせて「マルチモーダル」と発声する。
【００５７】
モーララティス生成部２３０６は、キー入力に対応するモーラの列からなるラティス構造を生成する。
【００５８】
図２６は、“７”、“９”、“４”とテンキー列が入力された時点で生成されるモーラのラティス構造の例を示す図である。各位置には、その位置の入力キーに対応するモーラのノードがリストアップされ、隣接するモーラのノード同士が接続される。
【００５９】
図２７は、“７”、“９”、“４”、“７”、“＊”、“４”、“９”とキー入力した時点で生成されるラティス構造の例を示す図である。一方の、音声入力の処理は、上記第１の実施形態と全く同じである。
【００６０】
続いて、解探索部２３０７の処理を説明する。“７”、“９”、“４”とキー入力された時点で、ラティス構造は図２８のようになっている。図１２の例によれば、この時点で、最初のキー入力“７”に対応する音声信号の認識結果が得られている。解探索部２３０７は、図２８のラティスに対し、キー入力“４”の位置を末尾とする各パスのコストを計算する。パスのコストは、次式で計算される。
【００６１】
E=Σi ( C(Mi) + C(Mi-1,Mi) - S(Mi) )   ・・・(2)
【００６２】
ただし、
C(Mi) ： モーラMiのコスト、
C(Mi-1,Mi)  ： Mi-1とMiのモーラ接続コスト、
S(Mi)  ： モーラMiの音声認識スコア
である。
【００６３】
モーラのコストは、そのモーラの出現しにくさを示す数値であり、モーラコスト情報保持部２３０８に、図２４のようなデータとして保持されている。モーラ接続コストは、モーラとモーラのつながりにくさを示す数値である。接続コストは、モーラコスト情報保持部２３０８に、図２５のようなデータとして保持されている。例えば、モーラ「ん」はモーラ「と」とは接続コストが2でつながりやすいが、モーラ「あ」とは接続コスト5でつながりにくいことを表している。一方、Miの音声認識スコアS(Mi) は、N-best生成部２３０５が出力するN-bestに含まれるデータそのものである。例えば、図２８の場合、モーラ「ま」の音声認識スコアは、0.75である。この時点でキー入力“９”以降の音声認識結果はまだ得られていないので、例えば、キー入力“９”の位置のモーラノード「ら」に対する音声認識スコアは、S(“ら”)＝0として計算する。
【００６４】
このコスト計算を、キー入力“４”の位置を末尾とする全パスに対して行う。この全パスの中で、
[文頭]−「ま」−「る」−「ち」
のコストが小さかった場合、これを、“７”、“９”、“４”とキー入力された時点での最も尤度の高いパスとして選択し、その読み列“まるち”を図３０のように画面表示する。
【００６５】
図２９は、さらに続いて“７”がキー入力された時点のラティス構造である。この時点では、さらにキー入力“９”に対応する音声信号の認識結果も得られているので、例えばキー入力“９”の位置のモーラノード「ら」に対する音声認識スコアは、S(“ら”)＝0.30となる。こうした情報を加味して、式（２）に従って、４番目のキー入力“７”の位置を末尾とする全パスに対してコスト計算を行う。[文頭]−「ま」−「る」−「ち」−「も」のコストが最小であった場合は、その読み列“まるちも”を図３１のように画面表示する。さらにキー入力を進めて、“７”、“９”、“４”、“７”、“＊”、“４”、“９”とキー入力し、「ＳＥＴ」ボタンと十字キー操作で所望の候補の選択と確定を行う動作は、上記第１の実施形態と同じである。ただし、本実施形態では、得られる文字列が仮名文字列なので、その後、別の手段で仮名漢字変換を行う必要がある。
【００６６】
ここまでの動作を、図３２のフローチャートで整理する。
【００６７】
まず、キー入力があれば（ステップＳ３２０１）、それが「ＳＥＴ」ボタンか否かを判定し（ステップＳ３２０２）、「ＳＥＴ」ボタンでなければ、ここで、処理が言語処理と音声処理の並列処理になる。
【００６８】
言語処理では、キー入力に対応するモーラをラティスに反映させる（ステップＳ３２０３）。このラティスに含まれるパスの中で、最後尾まで辿り着いているすべてのパス（今のキュー入力に対応するモーラノードを末尾にするパス）それぞれについて、コストを計算し、コストの最も小さいパスを選択する（ステップＳ３２０４）。次に、そのパスに対応する読み列を画面表示する（ステップＳ３２０５）。コスト計算は、すでに説明したとおり、パス上のモーラノードのコストとモーラ間のモーラ接続コスト、さらに、その時点で得られている音声処理の結果スコアを用いる。
【００６９】
一方の音声処理は、まず、入力音声から音声切り出しを行う（ステップＳ３２０６）。前述の通り、切り出される音声は、その一つ前のキー入力に対応する音声である。この切り出された音声に対する音声認識を行うための文法を生成する（ステップＳ３２０７）。文法は、一つ前のキー入力に対応して、図１０のような形で生成される。この文法に基づいて音声認識し（ステップＳ３２０８）、スコア付きN-bestの形で結果出力する（ステップＳ３２０９）。結果は、そのキー入力に対応づけて保持され、ステップＳ３２０４でのコスト計算に利用される。
【００７０】
ステップＳ３２０１において、入力キーが「ＳＥＴ」であった場合は、一つ前のキー入力に対応する音声に対する音声認識結果を待ち、これをコスト計算に反映させて、再度、最後尾まで辿り着いているすべてのパスに対するコスト計算を行う（ステップＳ３２１０）。次に、ユーザの十字キー操作による他候補選択を行い（ステップＳ３２１１）、入力を確定させる（ステップＳ３２１２）。
【００７１】
最後に、所定の終了条件により（ステップＳ３２１３）、全処理を終了する。
【００７２】
以上のようにして、ユーザは、入力したい文字列の音声を発声しながら、発声の各モーラに対応して、対応するキーを１回ずつ押下するだけの操作により、キー入力に対応する文字列の中で、その音声の情報を反映し、かつモーラの並びとしての尤もらしさを反映した文字列が上位にリストアップされ、この中からの簡単な選択操作により、望みの文字列を入力することができる。
【００７３】
（第３の実施形態）
以下、本発明の第３の実施形態を示す。本実施形態でも、図１のＦＡＸに対してテキスト入力を行うケースで説明する。
【００７４】
図３３は、本実施形態に係るＦＡＸ１０１におけるテキスト入力方式のブロック図である。
【００７５】
３３０１は、テンキー１０２や十字キー１０３によるキー入力を受け付けるキー入力部である。
３３０２は、受話器１０５を通じて入ってくる音声信号から、テキスト入力のための入力音声を切り出す音声切り出し部である。
３３０３は、重み係数計算部である。
３３０４は、音声認識部であり、音声切り出し部３３０２で切り出された入力音声を、重み係数計算部３３０３で生成された重み係数を反映させて認識する。
３３０５は、N-best生成部であり、音声認識部３３０４の認識結果を、スコアの高い上位N個の結果をそれぞれにスコアを付与した形で生成する。
３３０６は、単語辞書である。
３３０７は、キー入力部３３０１で受け付けたキー入力に対応する単語を単語辞書３３０６から検索する単語辞書検索部である。
３３０８は、単語辞書検索部３３０７によって検索された単語の列からなるラティス構造を生成するラティス生成部である。
３３０９は、ラティス生成部３３０８が生成するラティス構造から、N-best生成部３３０５が生成する音声認識結果を加味して最適な単語列を探索する解探索部である。
３３１０は、接続コストテーブルである。
３３１１は、解探索部２０９が出力する最適な単語列を液晶画面１０４上に表示する結果表示部である。
【００７６】
なお、本実施形態に係るＦＡＸの構成は、図１および図３に示した構成と同様であるので、本実施形態でも図１および図３を援用して説明する。
【００７７】
以下、本実施形態に係るＦＡＸ１０１の具体的な動作を説明する。まず、テンキー１０２の各キーに対しては、上記第１の実施形態と同様に、文字列がモーラ単位で対応づけられている。また、やはり上記第１の実施形態と同様に、図１５の状態から、本テキスト入力方式を用いて、「マルチモーダル」という文字列を入力しようとするものとする。ユーザは、「マルチモーダル」に対応するテンキー列、
“７”、“９”、“４”、“７”、“＊”、“４”、“９”
を押しながら、これに合わせて「マルチモーダル」と発声する。
【００７８】
単語辞書３３０６、単語辞書検索部３３０７、ラティス生成部３３０８は、上記第１の実施形態における単語辞書２０６、単語辞書検索部２０７、ラティス生成部２０８と全く同じであるので、ここでは説明を省略する。
【００７９】
一方、音声入力の処理は以下のようになる。
【００８０】
音声切り出し部３３０２は、ユーザの発声開始、発声終了を検出する処理を行う。音声切り出しは、入力音声のパワー情報などに基づく既存の方法も適用可能であるが、本実施形態では、発声開始の検出に関しては、キー入力情報を手がかりにした方法を用いる。具体的には、図３４のように、発声開始は、最初のキー入力“７”より過去の所定時間T [ms] 以内にあると仮定し、その中で、入力音声のパワー情報などに基づいて発声開始位置を決定し、それ以降を認識対象とする。こうすることにより、図３４に示すような雑音３４０１を誤って認識対象にしてしまう危険性を減らすことができる。
【００８１】
音声認識部３３０４は、特定の音声認識文法を用いず、任意の音節列を認識する方式で実現される。これは、任意の音節列を受理できる音声認識文法を書くことと等価であり、既存の音声認識方法で実現可能である。
【００８２】
まず、既存の方法を図３５を用いて説明する。音声認識では、一般に、まず入力音声から各時刻単位で特徴量を計算する。図３５では、時刻tにおける特徴量をF(t)と表している。図３５は、横軸に時間、縦軸に音素モデルを並べたマトリックスになっている。音素モデルとは、各音素(母音a,i,u,e,o,と子音k,s,t,・・・)を、その音素の開始状態、中間状態、終了状態の３状態に分けたものである（何状態に分けるかはさまざまであるが、ここでは３状態とする）。図３５は、各時刻の各音素の各状態にノードを１つ配置したものになっている。
【００８３】
音声認識部３３０４は、各時刻の特徴量F(t)が、各音素モデルSk(k=1,2,・・・音素モデル数)にどれくらい近いかという尤度L( Sk(t) )を計算する。さらに、各音素モデルから音素モデルへ遷移する尤度L(Sj,Si)が事前に計算され保持されている。こうした値を用いて、
スコア E = Σt ( L( Si(t) ) + L( Sj(t-1),Si(t) ) )
が最大になるようなパスを求める。図３５のようなパスが求められた場合、その音素モデル列は、
m1→m3→a1→a2→a3→r1→・・・
であるので、音素列 “m a ・・・” すなわち、“ま・・・”と認識されたことになる。
【００８４】
本実施形態では、上述の方式に、キー入力情報を加味した方式を用いる。図３６のように、時刻t3において、キー入力“７”があったとする。キー入力部３３０１は、重み係数計算部３３０３にこれを伝える。キー入力“７”は、前述のとおり、モーラ「ま」「み」「む」「め」「も」「みゃ」「みゅ」「みょ」が割り当てられているので、ユーザは、この付近でこれらのモーラのいずれかを発声している可能性が高い。すなわち、時刻t3の周辺では、
●音素m、y、a、i、u、e、oの各状態   ・・・(3)
●音素遷移 m→m、m→y、m→a、m→i、m→u、m→e、m→o、y→a、y→i、y→u、y→e、y→o (正確には、状態レベルでは、m2→m1のように若い状態インデックスに遷移するものは含まれない) ・・・(4)
が含まれる確率が高く、それ以外の音素や音素遷移は含まれない確率が高い。そこで、重み係数計算部３３０３は、図３７のような時間tに対する正規分布関数q(t)（最大値が１になるよう係数倍したもの）を用い、キー入力時刻t*（図３６では、t*=t3）に対し、各時刻tに対する各音素モデルに対する重み係数Cp( S(t) )、音素モデル遷移に対する重み係数Ct( Si(t-1)、Sj(t) )を以下のように計算する。
【００８５】
Cp( S(t) ) ＝ 1＋q(t−t*)  ：（ S(t)が上記(3)の音素モデルのいずれかである場合）
1−q(t−t*)  ：（それ以外）
Ct( Sj(t-1)、Si(t) ) ＝ 1＋q(t−t*)   ：（Sj→Siが上記(4)の音素モデル遷移のいずれかである場合）
1−q(t−t*) ：（それ以外）
【００８６】
キー入力が複数あった場合は、それぞれのキー入力時刻に対するq(t-t*)を重み係数に反映する必要がある。この場合は、最大値を取る、平均値を取るなどの処理をすればよい。また、ここでは関数q(t)として、図３７のような正規分布関数を用いたが、これに限定したものではなく、キー入力と発声の関係を考慮した適当な関数を用いればよい。
【００８７】
音声認識部３３０４は、この係数を用いて、次式によるスコアEが最大になるようなパスを求める。
【００８８】
スコア E = Σt (Cp( s(t) )×L( Si(t) ) + Ct( Sj(t-1)、Si(t) )×L( Sj(t-1),Si(t) ) )  ・・・(5)
【００８９】
N-best生成部３３０５は、音声認識部３３０４の出力結果を受け、発声開始から現在時刻までの音声認識結果に対応する読み列のスコア付きN-bestを生成する。例えば図３５においてt6が現在時刻の場合、この時点で求められた最大パスは、
m1→m3→a1→a2→a3→r1
である。このうち、最後の音素モデルr1は、その後の母音が未確定であるため、この段階で確定している読み列は、“ま”となる。同様に、音素モデル列
m1→m3→e1→e3→r1→u1
に対して確定した読み列は、“める”となる。
【００９０】
N-best生成部３３０５は、音声認識部３３０４で得られた音素モデル列のN-bestを上述のような読み列に変換し、それぞれにスコアを付けた形のものを生成する。
【００９１】
続いて、解探索部２０９の処理を説明するために、まず、図３８を用いて、ここまで説明した処理の時間関係を整理しておく。上記第１、第２の実施形態と同様、処理は、大きく分けて、単語辞書検索部３３０７、ラティス生成部３３０８からなる言語処理と、音声切り出し部３３０２、重み係数計算部３３０３、音声認識部３３０４、N-best生成部３３０５からなる音声処理の２つからなる。本実施形態では、上記第１、第２の実施形態とは異なり、音声処理は、音声切り出し部３３０２によるユーザの発声開始を認識した後は、常に現在時刻における音声認識結果のN-bestを生成し続ける。
【００９２】
例えば、図３９は、“７”、“９”、“４”とキー入力され、キー入力“４”に対する言語処理が終わった時点のラティス構造と、その時点でN-best生成部３３０５が生成した読み列のスコア付きN-bestの例を表している。
【００９３】
解探索部３３０９は、図３９のラティスに対し、キー入力“４”の位置を末尾とする各パスのコストを計算する。パスのコストは、次式で計算される。
【００９４】
E=Σi ( C(Wi) + C(Wi-1,Wi) - S(Wi) )     ・・・(6)
【００９５】
ただし、
C(Wi) ： 単語Wiの単語コスト、
C(Wi-1,Wi)  ： Wi-1とWiの接続コスト、
S(Wi)  ： Wiに関連する音声認識スコア
である。
【００９６】
単語コスト、接続コストは、上記第１の実施形態と同じものである。一方、Wiに関連する音声認識スコアとは、次のようなものである。例えば、Wiが図３９の単語「村」だとする。この時点で、発声開始から現時刻に至るまでの入力音声に対する音声認識結果が、図３９に示すようなスコア付きN-bestの形で得られている。ただし、音声処理の処理速度によっては、この時点で音声処理結果のN-bestに含まれる読み列が、先頭からキー入力“４”の位置までに対応しているとは限らない。図３９の場合は、キー入力列“７”、“９”に対応する読み列が得られている。ここで、「村」のキー入力列“７”、“９”に対応する読みは、「むら」であるので、S(“村”)は、「むら」のスコア0.31となる。同様に、図３９の単語「森田」の場合、S(“森田”)＝「もり」のスコア＝0.10となる。図１３の「と」「た」「戸」「他」などのように、キー入力列“７”、“９”の位置をカバーしない単語については、S(Wi)=0となる。
【００９７】
このコスト計算を、キー入力“４”の位置を末尾とする全パスに対して行う。この全パスの中で、
[文頭]−「村」−「と」
のコストが小さかった場合、これを、“７”、“９”、“４”とキー入力された時点での最も尤度の高いパスとして選択し、その読み列“むらと”を図１６のように画面表示する。さらにキー入力を進めて、“７”、“９”、“４”、“７”、“＊”、“４”、“９”とキー入力し、「ＳＥＴ」ボタンと十字キー操作で所望の候補の選択と確定を行う動作は、上記第１の実施形態と同じである。以上のようにして、キー入力と音声を組み合わせた文字入力を行うことができる。
【００９８】
ここまでの動作を、図４０のフローチャートを用いて整理する。
【００９９】
まず、キー入力があり（ステップＳ４００１）、それが最初のキー入力であれば（ステップＳ４００２）、音声切り出し部３３０２が入力音声の開始位置を探し、それ以降を入力音声と認識する（ステップＳ４００３）。ここで、処理が言語処理と音声処理の並列処理になる。
【０１００】
次にそのキーが「ＳＥＴ」ボタンか否かを判定し（ステップＳ４００４）、「ＳＥＴ」ボタンでなければ、言語処理では、まず、図４のトライ辞書にアクセスし、ここまでの入力キー列の逆順にトライの木を辿り、単語を検索する（ステップＳ４００５）。続いて、検索された単語をラティスに反映させる（ステップＳ４００６）。次に、このラティスに含まれるパスの中で、最後尾まで辿り着いているすべてのパス（今検索されラティスに反映された単語を末尾にするパス）それぞれについて、コストを計算し、コストの最も小さいパスを選択する（ステップＳ４００７）。そして、そのパスに対応する読み列を画面表示する（ステップＳ４００８）。コスト計算は、すでに説明したとおり、パス上の単語の単語コストと単語間の接続コスト、さらに、その時点で得られている音声処理の結果スコアを用いる。
【０１０１】
一方の音声処理は、ステップＳ４００３で切り出された音声に対して行う。重み係数計算部３３０３は、キー入力に応じて重み係数を計算し（ステップＳ４００９）、音声認識部３３０４がこの重み係数を用いて音声認識し（ステップＳ４０１０）、スコア付きN-bestの形で結果出力する（ステップＳ４０１１）。結果は、ステップＳ４００７でのコスト計算に利用される。音声切り出し部３３０２によって入力音声のパワーなどから発声の終了位置が検出され、あるいは、「ＳＥＴ」ボタンが押された場合は、音声処理は終了する（ステップＳ４０１２）。
【０１０２】
ステップＳ４００４で、「ＳＥＴ」ボタンが押された場合は、さらに、音声処理からの音声認識結果を待ち、これをコスト計算に反映させて、再度、最後尾まで辿り着いているすべてのパスに対するコスト計算を行う（ステップＳ４０１３）。さらに、ユーザの十字キー操作による他候補選択を行い（ステップＳ４０１４）、入力を確定させる（ステップＳ４０１５）。
【０１０３】
最後に、所定の終了条件により（ステップＳ４０１６）、全処理を終了する。
【０１０４】
以上のようにして、ユーザは、入力したい文字列の音声を発声しながら、発声の各モーラに対応して、対応するキーを１回ずつ押下するだけの操作により、キー入力に対応する文字列の中で、その音声の情報を反映し、かつ言語としての尤もらしさを反映した文字列が上位にリストアップされ、この中からの簡単な選択操作により、望みの文字列を入力することができる。
【０１０５】
（第４の実施形態）
上記第３の実施形態は、上記第１の実施形態と同じ言語処理を用い、上記第１の実施形態とは異なる音声処理を組み合わせたものであった。これに加え、上記第２の実施形態の言語処理と上記第３の実施形態の音声処理を組み合わせた方法も可能である。その方式を実現するブロック図は図４１のようになる。
【０１０６】
４１０１は、テンキー１０２や十字キー１０３によるキー入力を受け付けるキー入力部である。
４１０２は、受話器１０５を通じて入ってくる音声信号から、テキスト入力のための入力音声を切り出す音声切り出し部である。
４１０３は、重み係数計算部である。
４１０４は、音声認識部であり、音声切り出し部４１０２で切り出された入力音声を、重み係数計算部４１０３で生成された重み係数を反映させて認識する。
４１０５は、N-best生成部であり、音声認識部４１０４の認識結果を、スコアの高い上位N個の結果をそれぞれにスコアを付与した形で生成する。
４１０６は、キー入力に対応するモーラの列からなるラティス構造を生成するモーララティス生成部である。
４１０７は、ラティス生成部４１０６が生成するラティス構造から、N-best生成部４１０５が生成する音声認識結果を加味して最適なモーラ列を探索する解探索部である。
４１０８は、モーラコスト情報保持部である。
４１０９は、解探索部４１０７が出力する最適なモーラ列に対応する読み文字列を液晶画面１０４上に表示する結果表示部である。
【０１０７】
本実施形態の動作を、図４２のフローチャートを用いて説明する。
【０１０８】
まず、キー入力があり（ステップＳ４２０１）、それが最初のキー入力であれば（ステップＳ４２０２）、音声切り出し部４１０２が入力音声の開始位置を探し、それ以降を入力音声と認識する（ステップＳ４２０３）。ここで、処理が言語処理と音声処理の並列処理になる。
【０１０９】
次にそのキーが「ＳＥＴ」ボタンか否かを判定し（ステップＳ４２０４）、「ＳＥＴ」ボタンでなければ、言語処理では、キー入力に対応するモーラをラティスに反映させる（ステップＳ４２０５）。このラティスに含まれるパスの中で、最後尾まで辿り着いているすべてのパス（今のキュー入力に対応するモーラノードを末尾にするパス）それぞれについて、コストを計算し、コストの最も小さいパスを選択する（ステップＳ４２０６）。そのパスに対応する読み列を画面表示する（ステップＳ４２０７）。コスト計算は、すでに説明したとおり、パス上のモーラノードのコストとモーラ間のモーラ接続コスト、さらに、その時点で得られている音声処理の結果スコアを用いる。
【０１１０】
一方の音声処理は、ステップＳ４２０３で切り出された音声に対して行う。重み係数計算部４１０３は、キー入力に応じて重み係数を計算し、音声認識部４１０４がこの重み係数を用いて音声認識し（ステップＳ４２０９）、スコア付きN-bestの形で結果出力する（ステップＳ４２１０）。結果は、ステップＳ４２０６でのコスト計算に利用される。音声切り出し部４１０２によって入力音声のパワーなどから発声の終了位置が検出され、あるいは、「ＳＥＴ」ボタンが押された場合は、音声処理は終了する（ステップＳ４２１１）。
【０１１１】
ステップＳ４２０４で、「ＳＥＴ」ボタンが押された場合は、さらに、音声処理からの音声認識結果を待ち、これをコスト計算に反映させて、再度、最後尾まで辿り着いているすべてのパスに対するコスト計算を行う（ステップＳ４２１２）。さらに、ユーザの十字キー操作による他候補選択を行い（ステップＳ４２１３）、入力を確定させる（ステップＳ４２１４）。
【０１１２】
最後に、所定の終了条件により（ステップＳ４２１５）、全処理を終了する。
【０１１３】
（その他の実施形態）
以上、本発明のさまざまな実施形態を詳述した。上記第１、第３の実施形態では、単語コスト、単語間接続コストを用いてコスト計算を行なっていたが、単語列に対して言語としての尤もらしさを評価できるものであれば、他の方法でもかまわない。例えば、単語辞書の各単語に品詞情報を付与し、単語間接続コストの代わりに品詞間接続コストを用いてもかまわない。また、品詞に限らず、単語をなんらかのクラスに分類し、そのクラス情報を単語辞書の各単語に付与し、単語間接続コストの代わりにクラス間接続コストを用いてもかまわない。
【０１１４】
また、上記実施形態で用いた、パス選択のためのコスト計算式（１）、（２）、（６）は、これらに限定されるものではない。上記第１、第２の実施形態の場合は、単語コスト、単語間接続コスト（あるいは、品詞間接続コスト、クラス間接続コスト）、音声認識スコアが適切に反映されていれば、他の計算式でもかまわない。上記第２、第４の実施形態の場合は、各モーラのコスト、モーラ間の接続コスト、音声認識スコアが適切に反映されていれば、他の計算式でもかまわない。
【０１１５】
また、上記実施形態では、テンキーに対してモーラ単位の文字列を割り当てていたが、モーラ単位ではなく文字単位で割り振ってもよい。あるいは、その他のいかなる割り当てでもかまわない。
【０１１６】
また、上記実施形態では、対象デバイスとしてＦＡＸを扱ったが、音声入力機能と、グラフィックユーザインタフェースもしくは操作ボタンを有する任意のデバイスに適用可能であることは言うまでもない。
【０１１７】
また、上記実施形態においては、プログラムをＲＯＭに保持する場合について説明したが、これに限定されるものではなく、任意の記憶媒体を用いて実現してもよい。また、同様の動作をする回路で実現してもよい。
【０１１８】
本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【０１１９】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。
【０１２０】
従って、本発明の機能処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体およびそのプログラムを格納した記憶媒体も本発明を構成することになる。つまり、本発明の特許請求の範囲には、本発明の機能処理を実現するためのコンピュータプログラム自体、およびそのプログラムを格納した記憶媒体も含まれる。
【０１２１】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１２２】
プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などがある。
【０１２３】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、そのホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【０１２４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１２５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１２６】
さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１２７】
【図１】本発明の第１の実施形態に係るＦＡＸの外観構成を示す図である。
【図２】本発明の第１の実施形態に係るＦＡＸのテキスト入力に係る機能構成を示すブロック図である。
【図３】本発明の第１の実施形態に係るＦＡＸのハードウエア構成を示す図である。
【図４】本発明の第１の実施形態に係る単語辞書の構造例を示す図である。
【図５】本発明の第１の実施形態に係る単語辞書に含まれる各単語に付与された情報の例を示す図である。
【図６】本発明の第１の実施形態に係る接続コストテーブルの内容の例を示す図である。
【図７】、
【図８】本発明の第１の実施形態に係るキー入力途中のラティス構造を示す図である。
【図９】本発明の第１の実施形態に係る音声切り出し部の動作を説明する図である。
【図１０】本発明の第１の実施形態に係る音声認識文法生成部が生成する音声認識文法の例を示す図である。
【図１１】本発明の第１の実施形態に係るN-best生成部が生成するスコア付きN-bestデータの例を示す図である。
【図１２】本発明の第１の実施形態に係る言語処理と音声処理の時間関係を示す図である。
【図１３】、
【図１４】本発明の第１の実施形態に係るキー入力に対応するラティス構造とその時点でN-best生成部から得られている音声認識結果を示す図である。
【図１５】、
【図１６】、
【図１７】、
【図１８】、
【図１９】本発明の第１の実施形態に係るキー入力途中のＦＡＸの画面表示を示す図である。
【図２０】本発明の第１の実施形態に係る候補選択を行う時のＦＡＸの画面表示を示す図である。
【図２１】本発明の第１の実施形態に係る入力テキストを確定した時のＦＡＸの画面表示を示す図である。
【図２２】本発明の第１の実施形態に係るＦＡＸの動作を説明するフローチャートである。
【図２３】本発明の第２の実施形態に係るＦＡＸの機能構成を示すブロック図である。
【図２４】本発明の第２の実施形態に係るモーラコスト情報保持部に保持されるコストデータの例を示す図である。
【図２５】本発明の第２の実施形態に係るモーラコスト情報保持部に保持されるモーラ接続コストテーブルの例を示す図である。
【図２６】、
【図２７】本発明の第２の実施形態に係るキー入力途中のラティス構造を示す図である。
【図２８】、
【図２９】本発明の第２の実施形態に係るキー入力途中のラティス構造とその時点でN-best生成部から得られている音声認識結果を示す図である。
【図３０】、
【図３１】本発明の第２の実施形態に係るキー入力途中のＦＡＸの画面表示を示す図である。
【図３２】本発明の第２の実施形態の動作を説明するフローチャートである。
【図３３】本発明の第３の実施形態に係るＦＡＸの構成を示すブロック図である。
【図３４】本発明の第３の実施形態に係る音声切り出し部の動作を説明する図である。
【図３５】、
【図３６】本発明の第３の実施形態に係る音声認識部における処理を説明する図である。
【図３７】本発明の第３の実施形態に係る重み係数計算部が利用する重み関数の例を示す図である。
【図３８】本発明の第３の実施形態に係る言語処理と音声処理の時間関係を示す図である。
【図３９】本発明の第３の実施形態に係るキー入力途中のラティス構造を示す図である。
【図４０】本発明の第３の実施形態の動作を説明するフローチャートである。
【図４１】本発明の第４の実施形態に係るＦＡＸの構成を示すブロック図である。
【図４２】本発明の第４の実施形態の動作を説明するフローチャートである。
【図１】
2006106620.tif 000003
【図２】
2006106620.tif 000004
【図３】
2006106620.tif 000005
【図４】
2006106620.tif 000006
【図５】
2006106620.tif 000007
【図６】
2006106620.tif 000008
【図７】
2006106620.tif 000009
【図８】
2006106620.tif 000010
【図９】
2006106620.tif 000011
【図１０】
2006106620.tif 000012
【図１１】
2006106620.tif 000013
【図１２】
2006106620.tif 000014
【図１３】
2006106620.tif 000015
【図１４】
2006106620.tif 000016
【図１５】
2006106620.tif 000017
【図１６】
2006106620.tif 000018
【図１７】
2006106620.tif 000019
【図１８】
2006106620.tif 000020
【図１９】
2006106620.tif 000021
【図２０】
2006106620.tif 000022
【図２１】
2006106620.tif 000023
【図２２】
2006106620.tif 000024
【図２３】
2006106620.tif 000025
【図２４】
2006106620.tif 000026
【図２５】
2006106620.tif 000027
【図２６】
2006106620.tif 000028
【図２７】
2006106620.tif 000029
【図２８】
2006106620.tif 000030
【図２９】
2006106620.tif 000031
【図３０】
2006106620.tif 000032
【図３１】
2006106620.tif 000033
【図３２】
2006106620.tif 000034
【図３３】
2006106620.tif 000035
【図３４】
2006106620.tif 000036
【図３５】
2006106620.tif 000037
【図３６】
2006106620.tif 000038
【図３７】
2006106620.tif 000039
【図３８】
2006106620.tif 000040
【図３９】
2006106620.tif 000041
【図４０】
2006106620.tif 000042
【図４１】
2006106620.tif 000043
【図４２】
2006106620.tif 000044