(57)【要約】【課題】書き起こし作業の効率化を図る。【解決手段】記憶制御部は、音声データの音声認識処理による音声インデックスを記憶部に記憶する。検出部は、音声データの再生区間を示す再生区間情報を検出する。取得部は、再生された音声データから書き起こされる語句の読み情報、及び文字列の挿入位置を示す挿入位置情報を取得する。検索部は、音声インデックスから、読み情報が示す読みを含む文字列を検索する。判定部は、検索された文字列に対応する音声認識スコアに基づいて表示の有無を判定する。履歴更新部は、検索部で取得した文字列と、音声認識スコアと、文字挿入位置とを対応付けた候補履歴データを候補履歴記憶部に記憶させる。閾値更新部は、判定部にて音声認識スコアと比較する表示閾値を、候補履歴データの音声認識スコア、および選択部で選択された文字列の音声認識スコアのうち、少なくとも一方を用いて決定する。【選択図】図１
2015114963.tif 000002
【特許請求の範囲】
【請求項１】
音声データに対する音声認識処理により得られる音声テキストに含まれる複数の文字列、前記音声テキスト内の始端位置情報と終端位置情報とが対応づけられたノードインデックス、前記音声認識処理により得られる音声認識スコア、および前記音声データ内の位置を示す音声位置情報とが対応付けられた音声インデックスを記憶部に記憶させる記憶制御部と、
前記音声データのうち、再生された区間を示す再生区間情報を検出する検出部と、
再生された前記音声データから書き起こされる語句の読みを示す文字列の少なくとも一部である読み情報、および前記書き起こされたテキスト中の文字挿入位置を示す挿入位置情報を取得する取得部と、
前記音声インデックスに含まれる前記複数の文字列のうち、対応する前記音声位置情報が前記再生区間情報に含まれる文字列を検索の対象として指定し、その指定した文字列の中から、前記読み情報が示す読みを含む文字列を検索する検索部と、
前記検索部で取得した文字列に対応する前記音声認識スコアの値が、表示閾値以上の値である場合に、前記検索部で取得した文字列を表示すると判定する判定部と、
前記判定部で表示すると判定された文字列を表示部に表示させる表示制御部と、
前記検索部で取得した文字列と、前記音声認識スコアと、前記文字挿入位置とを対応付けた候補履歴データを候補履歴記憶部に記憶制御すると共に、テキストの変更に応じて前記候補履歴データを更新する履歴更新部と、
前記表示制御部で表示された文字列が選択操作された場合に、選択操作された文字列を選択する選択部と、
前記判定部にて音声認識スコアと比較する前記表示閾値を、前記候補履歴データの音声認識スコア、および前記選択部で選択された文字列の音声認識スコアのうち、少なくとも一方を用いて決定する閾値更新部と
を有する情報処理装置。
【請求項２】
前記選択部で選択された文字列の終端位置のノードインデックスを、始端位置のノードインデックスに持つ文字列を検索する後続検索部を、さらに備え、
前記表示制御部は、前記後続検索部で検索された前記文字列を前記表示部に表示させること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
複数候補の提示指示を受け付ける複数候補提示受付部を、さらに備え、
前記検索部は、前記取得部で取得された文字挿入位置に対応する文字列を検索し、
前記表示制御部は、前記検索部で検索された文字列を、前記取得部で取得された文字挿入位置、前記検索部で検索された文字列の数、および各文字列の長さから、入力候補を表示させる位置を計算して前記表示部に表示させること
を特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記検索部は、前記文字挿入位置に対応する文字列を検索できない場合、現在の文字挿入位置の一定文字前の文字と一致する文字を前記音声インデックスから検索し、
前記表示制御部は、前記検索された一致する文字を前記入力候補として前記表示部に表示させること
を特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記音声認識処理の結果となるラティス構造をトライ構造に変換する変換部を、さらに備えること
を特徴とする請求項１から請求項４のうち、いずれか一項に記載の情報処理装置。
【請求項６】
前記変換部は、
前記音声データから音声認識スコアを持つ単語ラティスを生成する生成部と、
前記単語ラティスの各アークのうち、前記音声認識スコアが大きい順に、Ｍベスト（Ｍは自然数）を抽出する抽出部と、
抽出した前記各アークのＭベストを特定するための特定情報をトライ木に保存する保存部と
を有することを特徴とする請求項５に記載の情報処置装置。
【請求項７】
記憶制御部が、音声データに対する音声認識処理により得られる音声テキストに含まれる複数の文字列、前記音声テキスト内の始端位置情報と終端位置情報とが対応づけられたノードインデックス、前記音声認識処理により得られる音声認識スコア、および前記音声データ内の位置を示す音声位置情報とが対応付けられた音声インデックスを記憶部に記憶させる記憶制御ステップと、
検出部が、前記音声データのうち、再生された区間を示す再生区間情報を検出する検出ステップと、
取得部が、再生された前記音声データから書き起こされる語句の読みを示す文字列の少なくとも一部である読み情報、および前記書き起こされたテキスト中の文字挿入位置を示す挿入位置情報を取得する取得ステップと、
検索部が、前記音声インデックスに含まれる前記複数の文字列のうち、対応する前記音声位置情報が前記再生区間情報に含まれる文字列を検索の対象として指定し、その指定した文字列の中から、前記読み情報が示す読みを含む文字列を検索する検索ステップと、
判定部が、前記検索ステップで取得された文字列に対応する前記音声認識スコアに基づいて、前記検索ステップで取得された文字列を表示するか否かを判定する判定ステップと、
表示制御部が、前記判定ステップで取得された文字列を表示部に表示させる表示制御ステップと、
履歴記憶制御部が、前記検索ステップで取得された文字列と、前記音声認識スコアと、前記文字挿入位置とを対応付けた候補履歴データを候補履歴記憶部に記憶させる記憶制御ステップと、
履歴更新部が、前記候補履歴記憶部に記憶された前記候補履歴データを、テキストの変更に応じて更新する履歴更新ステップと、
前記表示制御ステップで表示された文字列が選択操作された場合に、選択部が、選択操作された文字列を選択する選択ステップと、
閾値更新部が、前記判定ステップで前記音声認識スコアと比較する閾値を、前記候補履歴データの音声認識スコア、および前記選択ステップで選択された文字列の音声認識スコアのうち、少なくとも一方を用いて決定する閾値更新ステップと
を有する情報処理方法。
【請求項８】
コンピュータを、
音声データに対する音声認識処理により得られる音声テキストに含まれる複数の文字列、前記音声テキスト内の始端位置情報と終端位置情報とが対応づけられたノードインデックス、前記音声認識処理により得られる音声認識スコア、および前記音声データ内の位置を示す音声位置情報とが対応付けられた音声インデックスを記憶部に記憶させる記憶制御部と、
前記音声データのうち、再生された区間を示す再生区間情報を検出する検出部と、
再生された前記音声データから書き起こされる語句の読みを示す文字列の少なくとも一部である読み情報、および前記書き起こされたテキスト中の文字挿入位置を示す挿入位置情報を取得する取得部と、
前記音声インデックスに含まれる前記複数の文字列のうち、対応する前記音声位置情報が前記再生区間情報に含まれる文字列を検索の対象として指定し、その指定した文字列の中から、前記読み情報が示す読みを含む文字列を検索する検索部と、
前記検索部で取得された文字列に対応する前記音声認識スコアに基づいて、前記検索部で取得された文字列を表示するか否かを判定する判定部と、
前記判定部で取得された文字列を表示部に表示させる表示制御部と、
前記検索部で取得された文字列と、前記音声認識スコアと、前記文字挿入位置とを対応付けた候補履歴データを候補履歴記憶部に記憶すると共に、テキストの変更に応じて前記候補履歴データを更新する履歴更新部と、
前記表示制御部で表示された文字列が選択操作された場合に、選択操作された文字列を選択する選択部と、
前記判定部で前記音声認識スコアと比較する閾値を、前記候補履歴データの音声認識スコア、および前記選択部で選択された文字列の音声認識スコアのうち、少なくとも一方を用いて決定する閾値更新部として機能させること
を特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施の形態は、情報処理装置、情報処理方法、および情報処理プログラムに関する。
【背景技術】
【０００２】
従来、音声データをテキスト化する作業（以下、書き起こし作業と呼ぶ）の効率化を図る様々な技術が知られている。例えば、書き起こし作業において、ユーザが、文字入力を行っている途中の段階で、書き起こし対象の音声データから、最終的に入力される語句を予測して入力候補として提示する技術が知られている。
【０００３】
また、入力された読み文字列の仮名漢字変換候補を表示させるだけではなく、その読み文字列に後続することが予測される文字列を、変換候補の文字列（以下、予測候補と呼ぶ）として表示させる入力予測技術または予測変換技術等の文字入力技術が知られている。
【０００４】
しかしながら、入力候補を提示するためには、常に読み情報が必要であるため、ユーザが提示された入力候補を選択（採用）した場合にも、次の入力候補を提示するには、再度読み情報が必要となる。このため、入力候補の選択後に、ユーザの文字入力が再度必要となり、作業効率が落ちる問題がある。また、音声認識精度の低い音声データにおいては、間違った入力候補が提示され続ける可能性があるため、ユーザにとって入力候補が邪魔になり、作業効率が落ちる問題があった。
【０００５】
また、従来の文字入力技術においては、読み文字列と仮名漢字変換後の文字列とを対応付けた仮名漢字変換辞書と、文字入力の履歴情報のみを利用して、入力候補を作成しているため、書き起こし作業における作業効率が悪くなる問題があった。また、選択した予測候補に続く候補（以下、後続候補と呼ぶ）は、ユーザが選択した予測候補から始まる文字列を専用の変換辞書（予測変換辞書）から検索する。このため、連続して長い文字列（例えば、文単位）を続けて入力するには、予測変換辞書にも長い文字列を保持する必要があり、予測変換辞書のサイズが大きくなり、予測候補の検索効率が悪くなる問題があった。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−６９２２８号公報
【特許文献２】特開２０１０−２５７４０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする課題は、効率的に書き起こし作業を行うことが可能な情報処理装置、情報処理方法、および情報処理プログラムを提供することである。
【課題を解決するための手段】
【０００８】
実施の形態の情報処理装置は、記憶制御部と、検出部と、取得部と、検索部と、判定部と、表示制御部と、履歴更新部と、選択部と、閾値更新部とを備える。
【０００９】
記憶制御部は、音声データに対する音声認識処理により得られる音声テキストに含まれる複数の文字列、音声テキスト内の始端位置情報と終端位置情報とが対応づけられたノードインデックス、音声認識処理により得られる音声認識スコア、および音声データ内の位置を示す音声位置情報とが対応付けられた音声インデックスを記憶部に記憶させる。検出部は、音声データのうち、再生された区間を示す再生区間情報を検出する。取得部は、再生された音声データから書き起こされる語句の読みを示す文字列の少なくとも一部である読み情報、および書き起こされたテキスト中の文字挿入位置を示す挿入位置情報を取得する。検索部は、音声インデックスに含まれる複数の文字列のうち、対応する音声位置情報が再生区間情報に含まれる文字列を検索の対象として指定し、その指定した文字列の中から、読み情報が示す読みを含む文字列を検索する。
【００１０】
判定部は、検索部で取得した文字列に対応する音声認識スコアに基づいて、検索部で取得した文字列を表示するか否かを判定する。表示制御部は、判定部で取得した文字列を表示部に表示させる。履歴更新部は、検索部で取得した文字列と、音声認識スコアと、文字挿入位置とを対応付けた候補履歴データを候補履歴記憶部に記憶させると共に、テキストの変更に応じて候補履歴データを更新する。選択部は、表示制御部で表示された文字列のうち、選択操作された文字列を選択する。閾値更新部は、判定部にて音声認識スコアと比較する閾値を、候補履歴データの音声認識スコア、および選択部で選択された文字列の音声認識スコアのうち、少なくとも一方を用いて決定する。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１の実施の形態の情報処理装置の機能ブロック図である。
【図２】図２は、音声認識結果のラティス構造の一例を示す図である。
【図３】図３は、音声データの音声認識により得られるラティス構造の一例を示す図である。
【図４】図４は、候補履歴データの例を示す図である。
【図５】図５は、第１の実施の形態の情報処理装置の動作を示すフローチャートである。
【図６】図６は、読み情報を取得した場合に、閾値更新部が表示閾値を更新する処理の詳細を示すフローチャートである。
【図７】図７は、ユーザが候補を選択した場合における、閾値更新部の表示閾値の更新処理を示すフローチャートである。
【図８】図８は、ユーザ操作と候補表示の例を示す図である。
【図９】図９は、第２の実施の形態の情報処理装置の機能ブロック図である。
【図１０】図１０は、第２の実施の形態の情報処理装置の動作を示すフローチャートである。
【図１１】図１１は、ユーザ操作と複数候補表示の例を示す図である。
【図１２】図１２は、第３の実施の形態の情報処理装置の機能ブロック図である。
【図１３】図１３は、ラティス構造からトライ構造に変換する動作のフローチャートである。
【図１４】図１４は、トライ構造に変換された音声認識結果のリストの一例を示す図である。
【図１５】図１５は、音声認識結果のトライ構造の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、情報処理装置、情報処理方法、および情報処理プログラムを適用した実施の形態の情報処理装置を、図面を参照しながら詳細に説明する。あくまでも一例であり、これに限定されるものではないが、実施の形態の情報処理装置は、いわゆるパーソナルコンピュータ装置で実現することができる。パーソナルコンピュータ装置で実現される情報処理装置は、音声データを再生する機能、および、作業者（以下、ユーザと呼ぶ）の操作に応じてテキストを作成するテキスト作成機能を有する。ユーザは、書き起こし作業を行う場合、収録された音声データを再生しながらキーボードを操作してテキスト入力を行い、音声データのテキスト化を図る。
【００１３】
（概要）
実施の形態の情報処理装置は、入力候補の情報として、音声データの音声認識処理の音声認識スコアと終端ノードインデックスを示す情報を付随しておき、ある閾値(以下、表示閾値と呼ぶ)以上の音声認識スコアを持つ入力候補をユーザに提示する。ユーザが提示された入力候補を選択した場合、選択された入力候補の終了ノードインデックスの情報を取得し、終了ノードインデックスから始まる入力候補を検索し、ユーザに入力候補として提示する。
【００１４】
また、情報処理装置は、入力候補の文字列と音声認識スコアを、文字挿入位置と関連付けて、候補履歴データとして記憶しておき、（１）候補履歴データの音声認識スコアと、（２）入力候補に対するユーザの選択操作とにより、表示閾値を決定する。これにより、音声認識の結果が良好でない場合において、不要な入力候補の提示を抑えると共に、入力候補の選択と同時に後続候補をユーザが選択可能とすることができ、書き起こし作業の効率化を図ることができる。
【００１５】
（第１の実施の形態）
図１は、第１の実施の形態の情報処理装置の機能ブロック図である。この図１に示すように、情報処理装置は、第１記憶部１、第２記憶部２、再生部３、再生指示受付部４、再生制御部５、検出部６、取得部７、検索部８、表示制御部９、選択部１０、後続検索部１１、閾値更新部１２、判定部１３、第３記憶部１４、および履歴更新部１５を有している。再生部３〜判定部１３、および履歴更新部１５は、全てソフトウェアで実現してもよいし、全てハードウェアで実現してもよい。また、一部をソフトウェアで実現し、残りをハードウェアで実現してもよい。
【００１６】
第１記憶部１には、音声データが記憶されている。音声データは、例えばウエーブ（ｗａｖ）、エムピースリー（ｍｐ３）等の形式の音声ファイルを用いることができる。音声データの取得方法は任意であり、例えばインターネット等のネットワーク経由で取得してもよいし、マイクロフォン装置等を用いて取得してもよい。
【００１７】
第２記憶部２には、音声データに対する音声認識処理により得られる音声テキストに含まれる複数の文字列の各々と、音声データ内の位置を示す音声位置情報とが対応付けられた音声インデックスとが記憶されている。また、第２記憶部２には、音声認識処理で算出される信頼度（以下、音声認識スコアと呼ぶ）が記憶されている。検索部８は、このような音声インデックス等を第２記憶部２に記憶させる記憶制御部の一例である。
【００１８】
音声認識処理としては、公知の様々な技術を利用することができる。一例として、音声認識処理では、音声データを１０〜２０ｍｓ程度の一定間隔で処理する。そして、音声位置情報との対応付けは、処理対象となっている音声データとそれに対応する認識結果を音声認識処理の過程で取得することで実現できる。
【００１９】
図２は、「毎度ありがとうございます。」を意味する日本語に対応する音声データの音声認識結果（始端ノードインデックス、音声インデックス、音声認識スコア、終端ノードインデックス、文字列、読み）の例を示している。本実施の形態では、音声位置情報は、音声データの先頭からその位置までの再生に要する時間を示す時間情報を用いて表される（単位は、例えば秒）。
【００２０】
例えば、図２に示す「ありがとう」に対応する音声位置情報は、始点が「０．５ｓ（５００ｍｓ）」、終点が「１．０ｓ（１０００ｍｓ）」である。これは、音声データを再生した場合に、音声データの再生開始時点から０．５ｓ経過した時点を始点とし、再生開始時点から１．０ｓ経過した時点を終点とする期間が、「ありがとう」という音声が再生される期間であることを意味している。
【００２１】
図３は、音声データの音声認識により得られるラティス構造の一例である。図３において、各形態素を区切るためのノードは丸で表されており、丸の中の数字がノードを識別する識別子である。図３に示す形態素は、ノード間を繋ぐ直線で表される。図３の例では、ノードＳからノードＥまでの間の各経路の少なくとも一部を、認識候補とすることができる。例えば、ノードＳからノードＥまでの経路における各形態素を繋いだ「毎度ありがとうございます。」が認識候補であってもよいし、ノードＳからノード５までの「毎度ありがとう」という語句や、ノードＳからノード３までの「毎度」という単語が認識候補であってもよい。
【００２２】
第３記憶部１４には、図４に示すようにユーザが書き起こしたテキスト（以下、書き起こしテキストと呼ぶ）と、書き起こしテキスト中の文字の挿入位置を示す挿入位置情報と入力候補の文字列と音声認識スコアが対応付けられたデータ（以下、候補履歴データと呼ぶ）が記憶されている。候補履歴データは、現在の文字挿入位置周辺に記録する構成にしてもよい（現在の文字挿入位置周辺に近い文字挿入位置に対応する候補履歴データを記憶してもよい）。
【００２３】
再生部３は、例えばスピーカ装置、Ｄ／Ａ（デジタル／アナログ）コンバータ、及びヘッドフォン装置等から構成される音声データの再生機器である。再生制御部５は、再生指示受付部４で再生を開始する再生開始指示を受け付けた場合、第１記憶部１に記憶されている音声データを再生するように再生部３を制御する。また、再生制御部５は、再生指示受付部４で再生を停止する再生停止指示を受け付けた場合、音声データの再生を停止するように再生部３を制御する。再生制御部５は、例えばパーソナルコンピュータ装置のオペレーションシステム（ＯＳ）またはドライバが有するオーディオ機能でソフトウェア的に実現してもよいし、電子回路等のハードウェア回路で実現してもよい。
【００２４】
再生指示受付部４は、ユーザからの音声再生と音声停止の指示を受け付ける。再生制御部５は、再生指示受付部４から音声データの再生開始指示を取得した場合に、音声データを再生するように再生部３を制御する。
【００２５】
再生制御部５は、再生指示受付部４から再生停止の指示を取得した場合、音声データの再生を停止するように再生部３を制御する。再生部３は、例えば第１ｊ記憶部１に記憶されている音声データを再生する。
【００２６】
検出部６は、音声データのうち、再生部３により再生された区間を示す再生区間情報を検出する。具体的には、検出部６は、音声データのうち、再生部３による再生が開始された位置を示す再生開始位置から、再生部３による再生が停止された位置を示す再生停止位置までの区間を示す時間情報を再生区間情報として検出する。
【００２７】
取得部７は、再生部３により再生された音声データから書き起こされる語句の読みを示す文字列の少なくとも一部である読み情報を取得する。さらに、書き起こされたテキスト中の文字列の挿入位置を示す挿入位置情報を取得する。例えば、ユーザが、書き起こしテキストの先頭に、「毎度」という単語を書き起こそうとして、「毎度」の読みを示す文字列「まいど」のうちの「ま」を、キーボード操作により入力した場合、取得部７は、「ま」を読み情報として、文字挿入位置を０として取得する。また、「毎度」の後に、「有難う」の読みを示す文字列「ありがとう」が全部入力された場合は、取得部７は、その入力された「ありがとう」を読み情報として、文字挿入位置を２として取得する。
【００２８】
検索部８は、第２記憶部２に記憶された音声インデックスに含まれる複数の文字列のうち、対応する音声位置情報が、検出部６で検出された再生区間情報に含まれる文字列を検索の対象として指定する。例えば音声データの再生開始位置が「０ｓ」、再生停止位置が「１．５ｓ（１５００ｍｓ）」である場合、検出部６は、再生開始位置「０ｓ」から、再生停止位置「１ ． ５ｓ（１５００ｍｓ）」までの区間を示す時間情報を再生区間情報として検出する。この場合、検索部８は、第２記憶部２に記憶された音声インデックスに含まれる複数の文字列のうち、対応する音声位置情報が「０ｓ」から「１．５ｓ（１５００ｍｓ）」までの区間に含まれる文字列を、検索の対象となる文字列として指定する。そして、検索部８は、指定した文字列の中から、取得部７で取得された読み情報が示す読みを含む文字列を検索し、文字列、音声認識スコア、終端ノードインデックス情報を含む入力候補情報を取得する。
【００２９】
表示制御部９は、判定部１３にて指示された入力候補の文字列、または、後続検索部１１で取得された入力候補の文字列を、表示部を介してユーザに提示する。表示制御部９は、読みを取得した場合の入力候補の表示（後述する図５のフローチャートのステップＳ９の処理）では、取得部７で取得した文字挿入位置（後述する図５のフローチャートのステップＳ２の処理）から、表示位置を求める。また、表示制御部９は、ユーザの候補選択による後続候補の表示（後述する図５のフローチャートのステップＳ１６の処理）では、取得部７で取得した文字挿入位置と、ユーザが選択した入力候補の文字列の文字数から、表示位置を求める。
【００３０】
選択部１０は、ユーザから入力候補の選択入力を受け付けると、選択が指示された入力候補を入力テキストとして確定し、書き起こしテキストに挿入する。ユーザは、表示された何れかの入力候補の選択を指示する選択入力を行うことができる。選択入力の方法は任意であり、例えば表示画面のうち、ユーザが選択を希望する入力候補の表示位置をタッチ（画面に対する接触操作）して、選択入力を可能としてもよい。または、キーボード、マウス、ポインティングデバイス等の操作デバイスの操作により選択入力を可能としてもよい。なお、本実施の形態では、ユーザによる入力作業の効率化を図るために、漢字混じりの表記の文字列が入力候補として提示される。
【００３１】
後続検索部１１は、ユーザが候補を選択した場合、選択した入力候補の終端ノードインデックスを取得し、音声認識結果から、終端ノードインデックスを始端ノードに持つ候補文字列を検索する。提示する入力候補が一つ以上ある場合には、表示制御部９に入力候補を表示するように指示を出す。
【００３２】
なお、入力候補の付随情報として、終端ノードの音声位置を付随しておき、ユーザが候補を選択した場合に、再生制御部５にて、音声再生位置を終端ノードの音声位置に更新する構成でもよい。
【００３３】
閾値更新部１２は、検索部８で取得された入力候補情報と、取得部７で取得された文字挿入位置を関連付けて、候補履歴データとして第３記憶部１４に記録する。さらに、閾値更新部１２は、判定部１３で音声認識スコアと比較する表示閾値を、第３記憶部１４に記憶されている候補履歴データの音声認識スコア、およびユーザが候補文字列を選択することで選択部１０で選択された候補文字列の音声認識スコアのうち、少なくとも一方を用いて決定する。換言すると、閾値更新部１２は、候補履歴データの候補文字列と一部の書き起こしテキストとの一致の度合い、または、入力候補に対するユーザの選択操作に応じて、第３記憶部１４に記憶されている表示閾値を更新する。
【００３４】
判定部１３は、検索部８で取得された入力候補情報に対して、入力候補の音声認識スコアと閾値更新部１２で更新された表示閾値を比較して、表示閾値以上の音声認識スコアに対応する入力候補の文字列を表示するように、表示制御部９に指示を出す。
【００３５】
履歴更新部１５は、書き起こしテキストの変更があった場合に、変更箇所に対応して、第３記憶部１４に記憶されている候補履歴データを更新する。
【００３６】
次に、第１の実施の形態の情報処理装置の動作説明をする。図５は、情報処理装置の動作を示すフローチャートである。まず、図５のフローチャートのステップＳ１において、閾値更新部１２が、第３記憶部１４に記憶されている候補履歴データ及び表示閾値の初期化を行う。次に、ステップＳ２において、取得部７が、書き起こしテキスト中の文字列の挿入位置を示す文字挿入位置を取得する。次に、取得部７は、再生部３で再生された音声データから、ユーザにより書き起こされたテキストの読みを示す文字列の読み情報を取得する。検出部６は、ステップＳ３において、読み情報を取得できたか否かを判別する。読み情報が取得されたものと判別すると（ステップＳ３：Ｙｅｓ）、検出部６は、ステップＳ４において、音声データのうち、再生部３により再生された区間を示す再生区間情報を検出する。
【００３７】
次に、検索部８は、ステップＳ５において、音声インデックスの中から、検出部６で検出された再生区間情報に含まれる文字列を検索の対象として指定する。さらに、検索部８は、ステップＳ６において、指定した文字列の中から、取得部７で取得された読み文字列を含む文字列を検索し、候補文字列と音声認識スコアと終端ノードインデックス情報を持つ入力候補情報を取得する。
【００３８】
次に、ステップＳ７では、履歴更新部１５が、検索部８で取得された入力候補情報の候補文字列と音声認識スコアを、取得部７で取得された文字挿入位置と関連付けて、候補履歴データとして第３記憶部１４に保存する。また、閾値更新部１２は、ステップＳ８において、候補履歴データと書き起こしテキストを用いて表示閾値を更新する。
【００３９】
次に、ステップＳ９では、判定部１３が、検索部８で取得された入力候補に対して、音声認識スコアが表示閾値以上か否かを判定し、表示閾値以上であれば、表示制御部９に候補文字列の表示を指示する。表示制御部９は、表示部を介して候補文字列を表示してユーザに提示する。
【００４０】
一方、ステップＳ３において、検出部６が、取得部７で読み情報が取得されないものと判別した場合（ステップＳ３：Ｎｏ）、ステップＳ１０において、選択部１０が、ユーザにより入力候補が選択されたか否かを判別する。選択部１０は、ユーザにより入力候補が選択されていないものと判別した場合（ステップＳ１０：Ｎｏ）、処理をステップＳ２に戻す。また、選択部１０は、ユーザにより入力候補が選択されたものと判別した場合（ステップＳ１０：Ｙｅｓ）、処理をステップＳ１１に進める。
【００４１】
ステップＳ１１では、選択部１０が、ユーザにより選択された入力候補の文字列を選択し、書き起こしテキストに挿入する。次に、ステップＳ１２では、閾値更新部１２が、ユーザが選択した入力候補の音声認識スコアを用いて、表示閾値を更新する。
【００４２】
次に、ステップＳ１３では、後続検索部１１が、ユーザにより選択された入力候補の終端ノードインデックスを取得する。そして、後続検索部１１は、ステップＳ１４において、終端ノードインデックスから始まる入力候補情報を取得する。
【００４３】
次に、履歴更新部１５は、ステップＳ１５において、選択部１０で挿入した候補文字列に応じて、第３記憶部１４の候補履歴データを更新し、さらに後続検索部１１で取得した入力候補情報を第３記憶部１４の候補履歴データに追加する。次に、ステップＳ１６では、後続検索部１１が、取得した入力候補の文字列を、表示制御部９を介して表示部に表示してユーザに提示する。
【００４４】
次に、図６のフローチャートを用いて、上述のステップＳ８の処理である、取得部７が読み情報を取得した場合における表示閾値の更新処理の詳細を説明する。なお、以下に説明する表示閾値の更新処理は、読みを取得する毎に毎回実施してもよいし、数回に１回を実施してもよい。
【００４５】
この場合、閾値更新部１２は、まず、ステップＳ２１において、第３記憶部１４に記憶された候補履歴データの中から、閾値更新用の候補履歴データ（以下、閾値更新用候補履歴データと呼ぶ）を取得する。例えば、候補履歴データ中の、前回追加した候補履歴データを、閾値更新用候補履歴データとする。または、現在の文字挿入位置（上述のステップＳ２で取得）から一定範囲内にある位置を文字挿入位置に持つ候補履歴データを、閾値更新用候補履歴データとしてもよい。
【００４６】
次に、閾値更新部１２は、ステップＳ２２において、第３記憶部１４に記憶された書き起こしテキストと、閾値更新用候補履歴データから、閾値更新用のテキスト（以下、閾値更新用テキストと呼ぶ）を取得する。例えば、書き起こしテキスト中の、閾値更新用候補履歴データの文字挿入位置の前後の一定文字数分の文字列を、閾値更新用テキストとする。
【００４７】
次に、閾値更新部１２は、ステップＳ２３において、閾値更新用候補履歴データの中から、候補文字列が閾値更新用テキストの中に含まれる候補履歴データを検索する。候補文字列が閾値更新用テキストに含まれる候補履歴データが存在する場合（ステップＳ２３：Ｙｅｓ）、閾値更新部１２は、ステップＳ２４において、候補履歴データの音声認識スコアから表示閾値を算出する。例えば、候補履歴データの音声認識スコアが「７５」の場合、閾値更新部１２は、表示閾値をそれより低い「７０」に設定する。なお、閾値更新用テキストに含まれる閾値更新用候補履歴データの検索処理の結果が複数あった場合、閾値更新部１２は、それらの音声認識スコアの平均値等の統計値から表示閾値を算出してもよい。
【００４８】
これに対して、候補文字列が閾値更新用テキストに含まれる候補が存在しない場合（ステップＳ２３：Ｎｏ）、閾値更新部１２は、ステップＳ２５において、表示閾値を現在の表示閾値より一定値上げて設定する。例えば、現在の表示閾値が「７０」の場合、閾値更新部１２は、表示閾値を「７５」に設定する。
【００４９】
次に、図７のフローチャートを用いて、上述のステップＳ１２の処理である、ユーザが候補を選択した場合における表示閾値の更新処理の詳細を説明する。この図７のフローチャートにおいて、閾値更新部１２は、まず、ステップＳ３１において、ユーザにより選択された入力候補の音声認識スコアを第２記憶部２から取得する。
【００５０】
次に、閾値更新部１２は、ステップＳ３２において、現在の表示閾値と、ユーザに選択された入力候補の音声認識スコアから表示閾値を算出して更新する。例えば、現在の表示閾値が「７０」であり、選択された入力候補の音声認識スコアが「７５」の場合、閾値更新部１２は、表示閾値を「６５」に更新する。
【００５１】
次に、例として、「毎度ありがとうございます。ＣＢＡ会社でございます。」という音声データの書き起こし作業に関して、ユーザ操作と各部の処理の流れを説明する。なお、ここでは、表示閾値の初期値は「５０」、候補履歴データの初期データは空（無し）とする。
【００５２】
次に、図８を用いて、第１の実施の形態の情報処理装置による、ユーザの文字入力操作の流れを説明する。まず、図８の（１）の符号の図は、ユーザが、音声データを聞きながら、書き起こしテキストの先頭に、キーボード等で仮名文字「ま」を入力した状態を示している。この場合、取得部７は、ユーザが入力した「ま」の仮名文字と、書き起こしテキストの文字挿入位置「０」を取得する。
【００５３】
検索部８は、「ま」から始まる候補文字を第２記憶部２に記憶されている音声インデックスから検索する。この検索により、例えば図２のＩＤ＝２に示す「毎度」の文字列が検索された場合、履歴更新部１５は、第３記憶部１４に、文字挿入位置が「０」、候補文字列が「毎度」の文字列、音声認識スコアが「１００」の候補履歴データを、図４のＩＤ＝１に示すように、第３記憶部１４に記憶させる。
【００５４】
第３記憶部１４に候補履歴データが記憶されると、判定部１３は、現在の表示閾値「５０（表示閾値の初期値）」と、第３記憶部１４に記憶した「毎度」の文字列の音声認識スコア「１００」とを比較する。この例の場合、現在の表示閾値「５０」よりも、「毎度」の文字列の音声認識スコア「１００」の値が大きいため、判定部１３は、入力候補の文字列「毎度」を表示するように表示制御部９に指示を出す。表示制御部９は、表示部を介して、ユーザに対して「毎度」の入力候補を提示する。この例の場合、表示制御部９は、図８の（１）の符号の図に示すように、入力候補情報の候補文字列「毎度」を、現在の文字挿入位置「０」の上部に表示する。
【００５５】
なお、入力候補が複数ある場合、表示制御部９は、音声認識スコアが最も大きい入力候補情報の候補文字列を表示させる。また、「毎度」の文字列を例に文字挿入位置を説明すると、「０」の文字挿入位置とは、「毎」の文字の前段（＝文頭）が文字挿入位置となることを意味している。また、「１」の文字挿入位置とは、「毎」の文字の後段（毎の文字と度の文字との間）が文字挿入位置となることを意味している。同様に、「２」の文字挿入位置とは、「度」の文字の後段が文字挿入位置となることを意味している。
【００５６】
次に、図８の（２）〜（４）の符号を付した図は、ユーザによる候補選択動作を示している。ユーザは、入力候補として表示された候補文字列「毎度」が適当な場合、例えばショートカットキーを押下操作することで、候補文字列「毎度」を選択操作する。ユーザの選択操作を検出すると、選択部１０は、書き起こしテキストの文字挿入位置「０」に、選択された候補文字列「毎度」を挿入する。
【００５７】
後続検索部１１は、第２記憶部２の音声インデックスを参照することで、ユーザにより選択された入力候補の終端ノードの識別子を検索すると共に、検索して取得した終端ノードインデックスを始端ノードインデックスに持つ入力候補を検索する。例えば、この例の場合、後続検索部１１は、図２の音声インデックスＩＤ＝２に示すように、「毎度」の候補文字列の終端ノードを検索することで、「３」の終端ノードを取得する。そして、後続検索部１１は、「３」の終端ノードインデックスを始端ノードインデックスに持つ、「蟻」の候補文字列（図２のＩＤ＝５）、および「ありがとう」の候補文字列（図２のＩＤ＝７）を得る。
【００５８】
このように、ユーザにより選択された入力候補に関連する入力候補を検索すると、履歴更新部１５は、検索した入力候補の音声インデックスＩＤ、候補文字列、音声認識スコア、および文字挿入位置の各情報を、候補履歴データとして第３記憶部１４に記憶する。この例の場合、「毎度」に後続する候補文字列として、「蟻」および「ありがとう」の候補文字列が検索された。このため、「蟻」の候補文字列と共に、「５」の音声インデックスＩＤ、「２５」の音声認識スコア、および「２」の文字挿入位置の各情報が、候補履歴データとして第３記憶部１４に記憶される（図４のＩＤ＝３参照）。同様に、「ありがとう」の候補文字列と共に、「７」の音声インデックスＩＤ、「１００」の音声認識スコア、および「２」の文字挿入位置の各情報が、候補履歴データとして第３記憶部１４に記憶される（図４のＩＤ＝２参照）。なお、この例における「２」の文字挿入位置は、上述のように「毎度」の「度」の文字の後段が文字の挿入位置であることを意味している。
【００５９】
後続検索部１１は、表示制御部９に候補文字列を表示するように指示を出す。表示制御部９は、表示部を介して候補文字列をユーザに提示する。この例の場合、「ありがとう」の候補文字列と「蟻」の候補文字列とが検索されたため、後続検索部１１は、音声認識スコアが最も大きい「ありがとう」の候補文字列（図２のＩＤ＝７）を、図８の（２）の符号を付した図に示すように、選択部１０が挿入した「毎度」の文字列の後方上に表示する。
【００６０】
次に、入力候補として表示された「ありがとう」の文字列が適当である場合に、ユーザが、入力候補の「ありがとう」の文字列を選択すると、図８の（３）の符号を付した図に示すように、「毎度」の文字列の後段に「ありがとう」の文字列が挿入されユーザに掲示される。後続検索部１１は、上述と同様にして、ユーザに選択された「ありがとう」の文字列に後続する候補文字列を検索する。「ありがとう」の文字列に後続する候補文字列として、例えば「ございます。」の文字列が検索された場合、後続検索部１１は、表示制御部９に「ございます。」の候補文字列を表示するように指示を出す。表示制御部９は、図８の（３）の符号を付した図に示すように「ございます。」の文字列を表示部に表示させる。履歴更新部１５は、文字挿入位置が「７（ありがとうの「う」の文字の後段の挿入位置）」、候補文字列が「ございます。」の候補文字列、音声認識スコアが「１００」の候補履歴データ（図４のＩＤ＝４を参照）を第３記憶部１４に記憶する。
【００６１】
次に、入力候補として表示された「ございます。」の文字列が適当である場合に、ユーザが入力候補の「ございます。」を選択すると、上述のように「ございます。」の文字列に後続する後続候補の検索が行われる。この検索により、例えば「ＡＢＣ」の文字列が検索されたとすると、図８の（４）の符号を付した図に示すように「ございます。」の文字列の後方上に表示される。履歴更新部１５は、候補文字列が「ＡＢＣ」の文字列、文字挿入位置が「１２（ございます。の「す」の文字の後段の挿入位置）」、音声認識スコアが「７５」、音声インデックスＩＤが「１３」の候補履歴データ（図４のＩＤ＝５を参照）を第３記憶部１４に記憶する。
【００６２】
次に、図８の（５）〜（７）の符号を付した図は、ユーザによる所望の文字列の入力動作を示している。ユーザは、「ございます。」の文字列に後続する入力候補として表示された「ＡＢＣ」が適当でない場合、キーボード等の入力デバイスを操作して、例えば図８の（５）の符号を付した図に示すように、表示された後続候補に代えて、例えば「ＣＢＡ」等の所望の文字列を入力操作する。取得部７は、ユーザにより入力された「ＣＢＡ」の文字を取得する。検索部８は、第２記憶部２の音声インデックスから、「Ｃ」から始まる候補文字を検索する。ここで、「Ｃ」から始まる候補文字列が検索できない場合、検索部８は、表示制御部９に対して表示指示は出さない。このため、表示部には、「ＣＢＡ」に続く入力候補は表示されない。この場合、閾値更新部１２は、後続候補として表示した「ＡＢＣ」の候補文字列と、ユーザに入力された「ＣＢＡ」の文字列とを比較する。そして、両者が一致しないため、閾値更新部１２は、現在の表示閾値を「５０」から「８０」に更新する。
【００６３】
次に、ユーザがキーボード等で「か」の仮名文字を入力し、取得部７で取得されると、検索部８は、第２記憶部２の音声インデックスから、「か」から始まる候補文字列を検索する。例えば、「会社」の候補文字列が検索された場合、履歴更新部１５は、図４のＩＤ＝６に示すように、「会社」の候補文字列、「１４」の音声インデックスＩＤ、「７５」の音声認識スコア、および「１５」の文字挿入位置の各情報を、候補履歴データとして第３記憶部１４に記憶する。
【００６４】
次に、判定部１３は、入力候補（「会社」の候補文字列）の音声認識スコア「７５」と、現在の表示閾値とを比較する。この例の場合、現在の表示閾値は、「８０」に更新されている。このため、判定部１３は、入力候補情報（「会社」の候補文字列）の音声認識スコア「７５」は、現在の表示閾値「８０」よりも低いと判定し、表示制御部９に対して表示の指示は出さない。この場合、表示部に候補文字列が表示されないため、ユーザは、図８の（６）の符号を付した図に示すように、「か」の仮名文字の入力に続けて「い」「しゃ」と仮名文字を入力後、仮名漢字変換操作を行い、図８の（７）の符号を付した図に示すように「会社」の漢字を表示部に表示し、入力の確定操作を行う。
【００６５】
ユーザにより所望の文字列が入力されると、閾値更新部１５は、第３記憶部１４に記憶されている各候補履歴データを参照して、ユーザに入力された文字列（書き起こしテキスト）と同じ候補文字列の候補履歴データを検索する。この例の場合、ユーザにより「会社」の文字が入力され、第３記憶部１４には、図４に示すように「会社」の候補履歴データが記憶されている。このため、閾値更新部１５は、ユーザに入力された文字列と一致する文字列が第３記憶部１４の候補履歴データとして記憶されているものと判別し、表示閾値を「８０」から「７０」に更新する。
【００６６】
次に、図８の（８）の符号を付した図に示すように、ユーザが、キーボード等で「で」の仮名文字を入力すると、この「で」の仮名文字が取得部７で取得される。検索部８は、第２記憶部２に記憶されている音声インデックスから、「で」から始まる候補文字を検索し、例えば「でございます。」の入力候補情報を取得する。履歴更新部１５は、図４のＩＤ＝７に示すように、文字挿入位置が「１７」、候補文字列が「でございます。」の文字列、音声認識スコアが「７５」、音声インデックスＩＤが１５の候補履歴データを第３記憶部１４に記憶する。
【００６７】
次に、判定部１３は、「でございます。」の候補文字列の音声認識スコアと、現在の表示閾値とを比較する。上述のように、現在の表示閾値は「８０」から「７０」に更新されている。また、「でございます。」の候補文字列の音声認識スコアは「７５」である。判定部１３は、「でございます。」の候補文字列の音声認識スコア「７５」が、現在の表示閾値の「７０」を超えているため、表示制御部９に対して表示指示を出す。これにより、例えば図８の符号（８）を付した図に示すように、「でございます。」の候補文字列が、「会社」の文字列の後方上（「会社」の後段となる、「１７」の文字挿入位置の上方）に表示される。
【００６８】
ユーザは、入力候補として表示された「でございます。」の文字列が適当である場合は選択操作を行う。これにより、ユーザに選択された「でございます。」の入力候補に後続する後続候補が検索されて表示される。また、ユーザは、入力候補として表示された「でございます。」の文字列が適当ではない場合、所望の文字列を入力操作する。ユーザにより所望の文字列が入力された場合は、ユーザに入力された文字列と同じ文字列が第３記憶部１４に候補履歴データとして記憶されているか否かが判別される。ユーザに入力された文字列と同じ文字列が第３記憶部１４に記憶されていない場合、表示閾値を現在値よりも大きな値に更新する。反対に、ユーザに入力された文字列と同じ文字列が第３記憶部１４に記憶されている場合、表示閾値を現在値よりも小さな値に更新する。このような動作は、上述のとおりである。
【００６９】
以上の説明から明らかなように、第１の実施の形態の情報処理装置は、入力候補の情報として、音声認識処理結果の音声認識スコアと終端ノードインデックスを示す情報を記憶しておき、表示閾値以上の音声認識スコアを持つ入力候補をユーザに提示する。これにより、不要な入力候補の提示を抑制して、書き起こし作業の効率化を図ることができる。
【００７０】
また、提示した入力候補と文字挿入位置とを関連付けて、候補履歴データとして記憶しておき、候補履歴データの音声認識スコアと、入力候補に対するユーザの選択操作に応じて表示閾値を更新する。また、提示された入力候補をユーザが選択した場合に、書き起こしテキストに選択した入力候補を挿入すると共に、選択された入力候補の終了ノードインデックスの情報を取得し、終了ノードインデックスから始まる入力候補を検索してユーザに提示する。これにより、入力候補の選択と同時に、選択した候補に後続する入力候補をユーザに掲示することができ、書き起こし作業のさらなる効率化を図ることができる。
【００７１】
（第２の実施の形態）
次に、第２の実施の形態の情報処理装置の説明をする。上述の第１の実施の形態と以下に説明する第２の実施の形態とでは、ユーザの指示を受け、入力候補を複数提示する点が異なる。以下、この差異の説明のみ行い、重複した説明は省略する。
【００７２】
図９は、第２の実施の形態の情報処理装置の機能ブロック図である。図１に示した第１の実施の形態の情報処理装置の機能ブロック図と異なる点は、図９に示す複数候補提示指示受付部１６を、さらに備える点である。
【００７３】
図１０のフローチャートを用いて、第２の実施の形態の情報処理装置の特徴的な動作を説明する。図１０のフローチャートのステップＳ４１〜ステップＳ４３の処理は、図５のフローチャートのステップＳ１〜ステップＳ３の処理に相当する。また、図１０のフローチャートのステップＳ４４の処理は、図５のフローチャートのステップＳ１０の処理に相当する。このため、ステップＳ４１〜ステップＳ４４の処理は、図５のフローチャートの対応するステップの説明を参照されたい。
【００７４】
図１０のフローチャートのステップＳ４４において、表示された候補文字列をユーザが選択しない場合（ステップＳ４４：Ｎｏ）、複数候補提示指示受付部１６は、ユーザが複数候補の提示指示に対応する所定のキー操作を行ったか否かを判別することで、入力候補の複数提示が指示されたか否かを判別する。ユーザから入力候補の複数提示が指示されていない場合（ステップＳ４５：Ｎｏ）、処理はステップＳ４２に戻る。
【００７５】
これに対して、ユーザから入力候補の複数提示が指示された場合（ステップＳ４５：Ｙｅｓ）、処理がステップＳ４６に進み、検索部８が、第３記憶部１４に記憶されている候補履歴データから、現在の文字挿入位置に一致する候補文字列を検索する。例えば、図４の例で説明すると、現在の文字挿入位置が「２」である場合、「ありがとう」の候補文字列の文字挿入位置と、「蟻」の候補文字列の文字挿入位置は、共に「２」である。このため、「ありがとう」の候補文字列と「蟻」の候補文字列の文字挿入位置は、現在の文字挿入位置と一致するため、この２つの候補文字列が検索部８により検索される。
【００７６】
また、検索部８は、候補履歴データ中に、現在の文字挿入位置に一致する候補文字列が存在しない場合、現在の文字挿入位置の一定文字前の文字を、第２記憶部２に記憶されている音声インデックスから一致する候補文字列を検索する。なお、音声インデックスの他に、発話区間情報を保持し、発話区間毎に候補を分ける構成にしてもよい。
【００７７】
ステップＳ４７では、検索部８が、検索した候補文字列の表示を表示制御部９に指示する。これにより、検索部８により検索された「ありがとう」および「蟻」の２つの候補文字列が表示部に表示され、ユーザに提示される。具体的には、表示制御部９は、候補文字列を複数提示する場合、現在の文字挿入位置と、候補文字列の数と、各候補文字列の文字列の長さから、候補文字列の表示位置を計算し、計算した表示位置に各候補文字列を表示させる。この際、表示制御部９は、各候補文字列を音声認識スコアの降順に表示させる。
【００７８】
図１１に、複数の候補文字列の表示例を示す。ユーザが「の」という文字を入力することで、例えば「の太郎です。」との候補文字列が表示された状態において、ユーザがショートカットキー等を操作することで、複数候補の提示指示を行ったとする。複数候補の提示指示は、複数候補提示受付部１６で受け付けられる。検索部８は、候補履歴データから、現在の文字挿入位置に一致する候補履歴データを検索することで、一つ目の候補文字列の「の太郎です。」、二つ目の候補文字列の「の次郎です。」、および三つ目の候補文字列の「の三郎です。」を取得したとする。表示制御部９は、取得した３つの候補文字列を、例えば図１１に示すように同時に表示して、一度にユーザに提示する。
【００７９】
このような第２の実施の形態の情報処理装置は、ユーザが複数の候補文字列の中から所望の候補文字列を選択し易くなるため、書き起こし作業のさらなる効率化を図ることができる他、上述の第１の実施の形態と同じ効果を得ることができる。
【００８０】
（第３の実施の形態）
次に、第３の実施の形態の情報処理装置を説明する。第３の実施の形態の情報処理装置は、第２記憶部２に記憶される音声認識結果のラティス構造をトライ構造に変換して記憶する点が上述の各実施の形態の情報処理装置と異なる。なお、上述の各実施の形態と以下に説明する第３の実施の形態とでは、この点のみが異なる。このため、以下、差異の説明のみ行い、重複した説明は省略する。
【００８１】
図１２は、第３の実施の形態の情報処理装置の機能ブロック図である。この第３の実施の形態の情報処理装置は、音声認識結果のラティス構造をトライ構造に変換して第２記憶部２に記憶する変換部１７を、さらに備えている。
【００８２】
図１３は、ラティス構造の音声認識結果をトライ構造の音声認識結果に変換する変換部１７の処理を示すフローチャートである。図１３のフローチャートにおいて、変換部１７は、まず、ステップＳ５１において、音声データから音声認識スコアを持つ、例えば図３に示した単語ラティスを生成する。次に、変換部１７は、ステップＳ５２において、取得したラティスに対して、後向きビダビアルゴリズムを行い、各ノードにおける、ラティス全体の終端ノード（図３のＥ）までの最大（または最少）スコア（node_best_score）を算出する。
【００８３】
次に、変換部１７は、ステップＳ５３において、各アークに対して、前向きＡ＊アルゴリズムを用いて、アークの右ノードから隣接するＮ−１個のアークの組合せの中で、後述する予測スコア（predictive_score）が大きい（または小さい）上位Ｋ個の候補（アークの組合せ）を検索する。この際、隣接するアークをＮ−１個したのは、対象となるアークの文字列を含めて、単語Ｎ個の文字列（一般的にＮ−ｇｒａｍと呼ばれる）とするためである。
【００８４】
ここで、予測スコア（predictive _score）は、以下の式で算出する。
【００８５】
predictive_score（ｊ）＝node_score（ｉ）＋arch_score（ｉ，ｊ）＋node_best_score（ｊ）
【００８６】
ただし、「ｉ，ｊ…ノードＩＤ」、「arch_score（ｉ，ｊ）…ノードｉとノードｊを連結するアークのスコア（単語ラティスの音声認識スコア）」、「node_score（ｉ）…ノードｉまでの最大（または、最少）スコア。ノードｉを終端に持つアークの始端ノードをｉ−１とすると、node_score（ｉ−１）＋arch_score（ｉ−１，ｉ）で算出される最大（または、最少）スコア。ただし、ラティスの開始ノードＳのスコアnode_score（ｓ）は０とする。」、「node_best_score（ｉ）…ノードｉから終端ノードまでの最終スコア（ステップＳ５２で算出）」とする。
【００８７】
なお、ステップＳ５３において、アーク上に特定の文字列（例えば、句点「。」）があった場合に、そのアークで検索を中止してもよい。
【００８８】
次に、変換部１７は、ステップＳ５４において、各アークの上位Ｋ個の候補（アークの組合せ）から、例えば図１４に示すように、アーク上の文字列を連結した候補文字列、ラティス上の始端ノードＩＤ、ラティス上の終端ノードＩＤ、予測スコアと、これらの情報を一意に特定するリストＩＤをリストとして第２記憶部２に記憶する。なお、図１４に示すリストは、Ｎ＝３、Ｋ＝３とした場合のリストである。
【００８９】
次に、変換部１７は、ステップＳ５５において、例えば図１５に示すように各アークの上位Ｋ個の候補から、アーク上の読み文字列を連結した読み情報と、上記リストＩＤをトライ木に記憶することで、音声認識結果をラティス構造からトライ構造に変換する。図１５は、図１４と同様に、Ｎ＝３、Ｋ＝３とした場合の候補文字列のトライ構造である。
【００９０】
なお、ステップＳ５４およびステップＳ５５において、すべての各アークの上位Ｋ個の候補文字列をリスト及びトライ構造として記憶せずに、一定値以上の予測スコアを持つ候補文字列を記憶してもよい。また、ステップＳ５５において、候補文字列をトライ構造に記憶してもよい。
【００９１】
トライ構造の場合、文字単位で検索を進行することができ、検索範囲が絞り易い構造であるため、さらなる検索効率の向上を図ることができる他、上述の各実施の形態と同様の効果を得ることができる。
【００９２】
以上、各実施の形態を説明したが、各実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な各実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。各実施の形態およびその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００９３】
１  第１記憶部
２  第２記憶部
３  再生部
４  再生指示受付部
５  再生制御部
６  検出部
７  取得部
８  検索部
９  表示制御部
１０  選択部
１１  後続検索部
１２  閾値更新部
１３  判定部
１４  第３記憶部
１５  履歴更新部
１６  複数候補提示指示受付部
１７  変換部
【図１】
2015114963.tif 000003
【図２】
2015114963.tif 000004
【図３】
2015114963.tif 000005
【図４】
2015114963.tif 000006
【図５】
2015114963.tif 000007
【図６】
2015114963.tif 000008
【図７】
2015114963.tif 000009
【図８】
2015114963.tif 000010
【図９】
2015114963.tif 000011
【図１０】
2015114963.tif 000012
【図１１】
2015114963.tif 000013
【図１２】
2015114963.tif 000014
【図１３】
2015114963.tif 000015
【図１４】
2015114963.tif 000016
【図１５】
2015114963.tif 000017