(57)【要約】【課題】所望する検索状態まで容易かつ適切に戻る。【解決手段】  音声によって与えられた検索条件を認識し、前記検索条件に基いてデータベースを検索することにより取得された検索結果に含まれる文字情報から少なくとも１つの候補キーワードを抽出する。前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶する。認識された後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する。この制御は、前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、該検索条件に基づく検索が行われた後に、後戻り指示語と共に後戻りキーワードが認識された場合に行われる。【選択図】図４Ａ
2014146260.tif 000002
【特許請求の範囲】
【請求項１】
音声によって与えられた検索条件を認識し、
認識された前記検索条件に基いてデータベースを検索することにより取得された検索結果を表す音声を出力し、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出し、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶し、
前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語と共に単語または語句で表された後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する、
音声入出力データベース検索方法。
【請求項２】
抽出した前記候補キーワードを前記記憶部に記憶する際に、
前記候補キーワードが、所定の検索状態へ後戻りするための後戻りキーワードとして適しているか否かを判断し、
前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断された前記候補キーワードを、該所定の検索状態と対応させて記憶する、
請求項１に記載の音声入出力データベース検索方法。
【請求項３】
前記候補キーワードが、固有名詞である場合、前記データベースにおける出現頻度が所定値以下である場合、及び該データベースにおいて所定のフィールドに属する場合の少なくとも１つの場合に、該候補キーワードが前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断する、
請求項２に記載の音声入出力データベース検索方法。
【請求項４】
前記候補キーワードと対応させて記憶している検索状態の個数が所定数を越えない場合に、該候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
請求項２または請求項３に記載の音声入出力データベース検索方法。
【請求項５】
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
請求項４に記載の音声入出力データベース検索方法。
【請求項６】
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していないと判断する、
請求項４に記載の音声入出力データベース検索方法。
【請求項７】
前記検索結果は順位を付された複数の検索結果を含み、
前記候補キーワードを前記検索状態と対応させて記憶する場合に、該候補キーワードが抽出された検索結果の順位を共に記憶し、
認識された後戻りキーワードに対応する検索状態へ後戻りするように制御する際に、
少なくとも２つの検索状態に対応する候補キーワードに対応する後戻りキーワードが音声によって与えられた場合、入力された該後戻りキーワードに対応する候補キーワードに対応する少なくとも２つの該検索状態のうち、順位がより高い検索状態に後戻りするように制御する、
請求項１〜請求項６のいずれか１項に記載の音声入出力データベース検索方法。
【請求項８】
前記後戻りキーワードの出力要求が音声によって与えられた場合、前記検索状態と対応させて記憶されている候補キーワードを音声によって出力するように制御する、
請求項１〜請求項７のいずれか１項に記載の音声入出力データベース検索方法。
【請求項９】
コンピュータに、
音声によって与えられた検索条件を認識し、
認識された前記検索条件に基いてデータベースを検索することにより取得された検索結果を表す音声を出力し、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出し、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶し、
前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語と共に単語または語句で表された後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する、
処理を実行させるための音声入出力データベース検索プログラム。
【請求項１０】
音声によって与えられた検索条件、音声によって与えられ単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語及び音声によって与えられた単語または語句で表された後戻りキーワードを認識する音声認識部と、
前記音声認識部によって認識された検索条件に基いてデータベースを検索することによって取得された検索結果を表す音声を出力する音声出力部と、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出する候補キーワード抽出部と、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶させると共に、前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、前記音声認識部により、前記後戻り指示語と共に前記後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する制御部と、
を備える音声入出力データベース検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、音声入出力データベース検索方法、音声入出力データベース検索プログラム及び音声入出力データベース検索装置に関する。
【背景技術】
【０００２】
車載の情報端末などで、周辺施設（ガソリンスタンド、駐車場、コンビニエンスストア、及びレストランなど）などを探索するためにデータベースを検索するサービスが実用化されている。運転者には、手を使わなくてよい音声入出力による検索が好まれる。
【０００３】
しかし、音声入出力による検索において、様々な検索条件で検索結果の絞り込みを行った後、現在の検索結果に満足しない場合などに、所望の検索条件及び検索結果まで戻るのが困難である、という問題があった。画像または文字による入出力であれば、検索条件または検索結果が画面などに文字または画像などによって固定されて残るが、音声による入出力では固定されないためである。
【０００４】
音声入出力によってシステムを操作する手法として、システムが再生した音声に含まれる任意の単語を音声入力することによって、該システムを操作する手法が提案されている。
【０００５】
また、ニュースの詳細情報を音声入出力によって取得する手法として、音声出力されるニュースのヘッドラインのリストに含まれる任意の単語を音声入力する手法が提案されている。音声入力された任意の単語を含むヘッドラインに関連付けられたニュースの詳細情報が音声出力される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０５−１２０３５０号
【非特許文献】
【０００７】
【非特許文献１】富士通株式会社、「音声だけで最新情報をスマートフォンから取得できる技術」、[online]、[平成２４年１２月１１日検索]、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｐｒ．ｆｕｊｉｔｓｕ．ｃｏｍ／ｊｐ／ｎｅｗｓ／２０１１／１０／１３−１．ｈｔｍｌ＞
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、システムを操作する手法及びニュースの詳細情報を取得する手法において音声入力を適用したように、データベースの検索に音声入力を適用しても、所望の検索条件及び検索結果まで戻ることは困難である、という問題がある。
【０００９】
開示の技術は、一つの側面として、所望する検索状態まで容易かつ適切に戻ることが目的である。
【課題を解決するための手段】
【００１０】
開示の技術は、音声によって与えられた検索条件を認識し、認識された前記検索条件に基いてデータベースを検索することにより取得された検索結果を表す音声を出力する。また、開示の技術は、前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出し、抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶する。また、開示の技術は、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する。この制御は、前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、検索状態を後戻りさせるための後戻り指示語と共に後戻りキーワードが認識された場合に行われる。後戻り指示語及び後戻りキーワードは単語または語句で表される。
【発明の効果】
【００１１】
開示の技術は、一つの側面として、所望する検索状態まで容易かつ適切に戻ることが可能である、という効果を有する。
【図面の簡単な説明】
【００１２】
【図１】音声入出力データベース検索装置の一例を示すブロック図である。
【図２】後戻りキーワード設定部の一例を示すブロック図である。
【図３】検索状態の一例を説明するためのイメージ図である。
【図４Ａ】第１実施形態における音声入出力データベース検索処理の一例を示すフローチャートである。
【図４Ｂ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｃ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｄ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｅ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｆ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｇ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｈ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図４Ｉ】第１実施形態における音声入出力データベース検索処理の一例の部分を示すフローチャートである。
【図５】検索条件定義テーブルの一例を示すイメージ図である。
【図６】検索状態管理テーブルの一例を示すイメージ図である。
【図７】検索対象テーブルの一例を示すイメージ図である。
【図８】テンプレートテーブルの一例を示すイメージ図である。
【図９】第２実施形態におけるキーワード適正判断処理の一例を示すフローチャートである。
【図１０】第２実施形態における検索状態管理テーブルの一例を示すイメージ図である。
【図１１】第３実施形態におけるキーワード適正判断処理の一例を示すフローチャートである。
【図１２】第３実施形態における検索状態管理テーブルの一例を示すイメージ図である。
【図１３】第４実施形態における順位に基づく後戻り処理の一例を示すフローチャートである。
【図１４】第４実施形態における検索状態管理テーブルの一例を示すイメージ図である。
【図１５】第５実施形態における後戻りキーワードリスト生成処理の一例を示すフローチャートである。
【図１６】第６実施形態における音声入出力データベース検索装置の一例を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して開示の技術の実施形態の例を詳細に説明する。なお、同一または対応する構成要素には同様の参照符号を付し、適宜説明を省略する。
【００１４】
［第１実施形態］
図１に、第１実施形態に係る音声入出力データベース検索装置１００の一例を示す。音声入出力データベース検索装置１００は、制御部１５０、音声認識部１０５、テキスト解析部１１５、検索条件抽出部１２０、及び検索状態管理部１２５を含む。音声入出力データベース検索装置１００は、さらに、データベース検索部１３０、後戻りキーワード設定部１３５、出力テキスト生成部１４０、音声合成部１４５、及びインタフェース部１６０を含む。
【００１５】
検索条件抽出部１２０は検索条件定義データベース１２２と接続されており、検索状態管理部１２５は検索状態管理データベース１２７と接続されている。データベース検索部１３０は検索対象データベース１３２と接続されている。出力テキスト生成部１４０はテンプレートデータベース１４２と接続されている。
【００１６】
検索条件定義データベース１２２、検索状態管理データベース１２７、及びテンプレートデータベース１４２は、記憶部１５２に記憶されている。
【００１７】
この例では、記憶部１５２は音声入出力データベース検索装置１００の内部に設けたが、外部に設けてもよい。また、この例では、検索対象データベース１３２は音声入出力データベース検索装置１００の外部に設けたが、内部に設けてもよい。
【００１８】
音声入出力データベース検索装置１００はインタフェース部１６０を備えている。インタフェース部は、音声入力部１６５、音声出力部１６７、表示部１７０、及び文字・図形入力部１７２と接続されている。音声入力部１６５は、例えば、マイクであってよいし、音声出力部１６７は、例えば、スピーカであってよい。表示部１７０は、例えば、ディスプレイであってよいし、文字・図形入力部１７２は、例えば、タッチパネルまたはキーボードであってよい。
【００１９】
制御部１５０は、音声認識部１０５、テキスト解析部１１５、検索条件抽出部１２０、検索状態管理部１２５、データベース検索部１３０、後戻りキーワード設定部１３５、出力テキスト生成部１４０、音声合成部１４５、及びインタフェース部１６０の動作を制御する。
【００２０】
図２は、後戻りキーワード設定部１３５の詳細を示す。後戻りキーワード設定部１３５は、キーワード抽出部分選択部２１０、キーワード抽出領域選択部２１５、テキスト解析部２２０、候補キーワード抽出部２２５、及び後戻りキーワード記憶部２３０を含む。後戻りキーワード記憶部２３０は、適性判断部２３５を含む。
【００２１】
図１の音声認識部１０５は、音声入力部１６５を介して入力される音声を認識して文字情報に変換し、テキスト解析部１１５は音声認識部１０５によって変換された文字情報に含まれるテキストを解析する。検索条件抽出部１２０は解析されたテキストから検索条件を抽出し、データベース検索部１３０は抽出された検索条件に基づいて検索対象データベース１３２の検索を行う。検索状態管理部１２５は検索状態を管理する。
【００２２】
出力テキスト生成部１４０は、音声出力するためのテキストを生成し、音声合成部１４５は生成されたテキストに基づいて音声を合成する。音声出力部１６７は、合成された音声を出力する。
【００２３】
後戻りキーワード設定部１３５は後戻りキーワードを設定する。後戻りキーワードについて以下に説明する。
【００２４】
例えば、レストランのデータベースを音声入出力によって検索する場合、表１に示すように検索条件を音声で入力する。図３の検索状態１〜検索状態５に例示するように、検索条件を入力して検索を行った状態を検索状態という。検索状態は、検索条件と検索結果とを含む。
【００２５】
表１に検索状態の例を示す。表１では、説明を容易にするため、検索結果は示していない。
【００２６】
【表１】
2014146260.tif 000003
【００２７】
検索状態１〜４では、音声で入力された個々の検索条件が１つずつ論理積ANDで接続されて追加される。すなわち、検索状態１では「渋谷」、検索状態２では「渋谷AND中華」、検索状態３では「渋谷AND中華AND４，０００円以内」が個々の検索条件をANDで接続した検索条件である。ANDで接続されている複数の検索条件による検索の検索結果は複数の検索条件のすべてを満足するものである。
【００２８】
検索状態５では、検索状態４の検索条件「渋谷AND中華AND４，０００円以内AND個室あり」の「中華」が「イタリアン」に変更されている。「中華」と「イタリアン」は同じ属性（料理の種類）を有するためである。
【００２９】
例えば、検索状態５から検索状態３に戻りたい、すなわち、「個室がある」の検索条件を削除し、「イタリアン」を「中華」に変更したい、という場合、例えば、以下の手法を採用することが可能である。
（１）例えば、現在の検索状態の表示と共に過去の検索状態の縮小表示を順番に表示する。表示されている過去の検索状態の縮小表示の中から所望の検索状態の縮小表示を選択することで、該縮小表示が示す検索状態に戻る。
（２）例えば、現在の検索状態との相対的な距離で所望の検索状態を指定する。例えば、検索状態５で、「２つ前に戻る」と音声入力すると、検索状態３に戻る。
（３）例えば、入力した検索条件で所望の検索状態を指定する。例えば、「４，０００円以内」と音声入力すると、「４，０００円以内」を検索条件として音声入力した時点の検索状態３に戻る。
（４）例えば、ANDで接続された検索条件に含まれる個々の検索条件で所望の検索状態を指定する。例えば、「中華」と音声入力すると、「中華」を検索条件として含む検索状態２〜４のいずれかに戻る。
【００３０】
（１）の手法は、画面表示に依存するため、音声入出力によって検索を行うデータベース検索装置には適していない。ＧＵＩ(Graphical User Interface)によって検索を行うデータベース検索装置では、現在の検索状態の他に、過去の検索状態の表示を画面上に表示することが可能である。したがって、過去の検索状態の表示の中から所望の検索状態を選択することによって、所望の検索状態に戻ることが比較的容易である。
【００３１】
また、（２）の手法は、ユーザの負担を増大する。すなわち、ユーザは、現在の検索状態と所望の検索状態との相対的な距離を記憶していなければ、この手法を使用することが困難である。
【００３２】
（３）の手法も、同様にユーザの負担を増大する。すなわち、ユーザは、所望の検索状態で音声入力した検索条件を記憶していなければ、この手法を使用することが困難である。
【００３３】
（４）の手法によれば、比較的ユーザの負担は小さいが、音声入力した検索条件に該当する検索状態が多くある可能性が高い。したがって、所望の検索状態に戻る可能性が低下する。
【００３４】
システムを操作する手法及びニュースの詳細情報を取得する手法において音声入力を適用するのであれば、音声入力される任意の単語が多くの操作及び多くのニュースに結び付いてしまう可能性は少ない。システムの操作に関連する単語またはニュースのヘッドラインのリストに含まれる単語の数は限定されているためである。
【００３５】
しかし、データベースの検索では、多くの単語が検索条件として使用される可能性が高く、音声入力される検索条件が多くの検索状態に結び付いてしまう可能性が高い。
【００３６】
上記によれば、音声入出力データベース検索装置１００では、（４）のように所望の検索状態を検索条件すなわちキーワードで指定することが可能であり、かつ、該キーワードに該当する検索状態が少ない手法が有効である。
【００３７】
このキーワードを後戻りキーワードと呼ぶ。本開示の技術では、検索結果に含まれる単語または語句の中から後戻りキーワードの候補となる候補キーワードを少なくとも１つ抽出して、該候補キーワードの中から後戻りキーワードとして適切なキーワードを検索状態と対応させて記憶する。語句は複数の単語を含む。
【００３８】
後戻りキーワードの数はあまり多くないほうがよい。後戻りキーワードの数が多いと所望の検索状態に戻る可能性が低くなる。また、後戻りキーワードの数が多いと、音声認識において認識精度の低下が生じ易い。さらに、後戻りキーワードの数が少ないと、ユーザの記憶に留まり易い。
【００３９】
図４Ａ〜図４Ｉに音声入出力データベース検索処理の一例を示す。
【００４０】
図４Ａに示すように、音声入出力データベース検索装置１００は、ステップ４１０で検索前処理を行う。図４Ｂに検索前処理の詳細を示す。ステップ５１０で、音声入力部１６５を介して、音声が入力されるまで待機する。音声が入力されると、音声認識部１０５がステップ５２０で音声認識を行い、音声をテキストに変換する。
【００４１】
テキスト解析部１１５はステップ５３０で変換されたテキストにテキスト解析を行うことによって該テキストに含まれる単語を取得する。検索条件抽出部１２０は、ステップ５４０で、取得した単語を図５に一例を示す検索条件定義データベース１２２に含まれる検索条件定義テーブルの入力単語セットフィールドに含まれる単語と照合することによって、検索条件を抽出する。
【００４２】
検索条件定義テーブルは入力単語セットフィールドと検索条件及び処理フィールドとを有する。
【００４３】
図５に示す検索条件定義テーブルはレストランのデータベースを検索するための検索条件定義テーブルの一例である。検索条件定義テーブルでは、入力音声を音声認識及びテキスト解析して得られる単語の組み合わせである入力単語セットと、該単語の組み合わせに関連付けられる検索の検索条件及び処理を定義する。例えば、入力音声に「中華」という単語が含まれていれば、「カテゴリ」が「中華」であることを検索条件とする。入力音声に「４，０００」、「円」、「以下」という単語が含まれていれば、「予算」が「０〜４，０００円」であることを検索条件とする。
【００４４】
「４，０００」、「円」、「以下」のように、入力単語セットに複数の単語が含まれる場合、単語の入力順序が入力単語セットの中の単語の順序と同様でなければ関連付けられる検索条件と対応しないものとしてもよいし、あるいは、単語の入力順序と入力単語セットの中の単語の順序とが異なっていても関連付けられる検索条件と対応するものとしてもよい。
【００４５】
例えば、検索条件定義テーブルは、「決定」、「ＯＫ」、「それ」及び「いい」のセット、「それ」及び「案内」のセットが入力音声に含まれている場合、検索条件を定義するのではなく、処理を定義するために使用される。ここでは、これらの単語に関連付けて記憶されている処理は検索終了である。検索終了を所望する場合、「それでいい」、「それを案内して」のような音声入力が行われればよい。
【００４６】
なお、「決定」、「ＯＫ」、「それ」及び「いい」のセット、「それ」及び「案内」のセットなどは例であり、検索終了を表す単語はこれらに限定されない。
【００４７】
例えば、（Ａ）「中華がいい」、（Ｂ）「４，０００円以内のところ」、（Ｃ）「ＯＫ」、（Ｄ）「さっきの道玄坂の店」と音声入力された場合の形態素解析の結果を表２に示す。形態素解析はテキスト解析の一例である。形態素解析の手法として、例えば、ビタビアルゴリズム及び最長一致法などがあるが、これらに限定されない。
【００４８】
【表２】
2014146260.tif 000004
【００４９】
（Ａ）はテキストに「中華」という単語を含み、検索条件定義テーブルの入力単語セットフィールドの「中華」に該当する。したがって、（Ａ）が音声入力された場合、検索条件は「カテゴリ：中華」であると判断する。
【００５０】
（Ｂ）は、テキストに「４，０００」、「円」、「以内」を含み、検索条件定義テーブルの入力単語セットフィールドの「４，０００」、「円」、「以内」に該当する。したがって、（Ｂ）が音声入力された場合、検索条件は「予算：０〜４，０００円」であると判断する。
【００５１】
（Ｃ）はテキストに「ＯＫ」という単語を含み、検索条件定義テーブルの入力単語セットフィールドの「ＯＫ」に該当する。したがって、この場合は、処理は「検索終了」、すなわち、検索結果を確定する、と判断する。
【００５２】
（Ｄ）は、テキストに「さっき」、「の」、「道玄坂」、「の」、「店」という単語を含み、これらの単語はいずれも検索条件定義テーブルの入力単語セットフィールドに含まれる単語に該当しない。したがって、検索条件及び処理が定義されていないと判断する。
【００５３】
続いて、ステップ５６０で、検索結果が確定されたか否かが判断される。例えば、（Ｃ）によれば、検索結果が確定されているため、音声入出力データベース検索処理を終了する。
【００５４】
ステップ５６０で、検索結果が確定されていないと判断された場合、図４Ａに示すように、ステップ４２０で、テキストに後戻り指示語が含まれているか否かを判断する。
【００５５】
後戻り指示語は、後戻りキーワードと共に使用される単語または語句である。後戻りキーワードに後戻り指示語が付加されている場合、入力音声は検索対象データベース１３２の検索を要求するものではなく、所望の検索状態に戻ることを要求するものであると判断される。
【００５６】
例えば、過去のある検索状態への後戻りキーワードが「渋谷飯店」であれば、「さっきの渋谷飯店」と音声入力することにより、その検索状態に戻ることが可能となる。この例では、後戻り指示語は「さっきの」である。
【００５７】
後戻り指示語は「さっきの」に限定されず、例えば、「さきほどの」、「前に言った」などであってよい。
【００５８】
例えば、使用言語が英語である場合、過去のある検索状態への後戻りキーワードが「Shibuya Chinese Restaurant」であれば、「Shibuya Chinese Restaurant, you said before」と音声入力することにより、その検索状態に容易に戻ることが可能となる。この例では、後戻り指示語は「you said before」である。しかし、後戻り指示語はこれに限定されない。例えば、「The Shibuya Chinese Restaurant」のように、「The」を後戻り指示語としてもよい。
【００５９】
【数１】
2014146260.tif 000005
【００６０】
後戻り指示語が含まれている場合は、ステップ４３０で、後戻り前処理を行う。ステップ４３０の後戻り前処理の詳細を図４Ｃに示す。
【００６１】
ステップ４３２で、検索状態管理部１２５が検索状態管理データベース１２７の検索状態管理テーブルに含まれている後戻りキーワードとテキストに含まれている単語とを照合する。
【００６２】
検索状態管理テーブルの一例を図６に示す。検索状態管理テーブルは検索状態レコードを含み、検索状態レコードは、データベース検索処理の一つの検索タスクに対応する。検索状態管理テーブルは、一例として、検索条件フィールド、検索結果を表す出力音声テキストフィールド、後戻りキーワードフィールド、及び現在の検索状態の位置を示すカレントフラグフィールドを含む。しかし、検索状態管理テーブルのフィールドはこれらに限定されるものではないし、これらのすべてを含まなくてもよい。例えば、検索状態管理テーブルは検索条件に対応する検索結果を含んでもよい。
【００６３】
検索状態管理テーブルに含まれている後戻りキーワードのいずれかがテキストに含まれている単語のいずれとも合致しない場合、ステップ４３４で、後戻り可能な過去の検索状態が存在しないと判断する。この場合、図４Ａのステップ４６０で、音声出力部１６７を介してエラー通知を行う。すなわち、入力音声が適切に解釈されなかったことを示す警告を音声で通知する。
【００６４】
後戻りキーワードのいずれかがテキストに含まれている単語のいずれかと合致する場合、ステップ４３４で、後戻り可能な過去の検索状態が存在すると判断し、図４Ａのステップ４４０で後戻り後検索処理を行う。
【００６５】
図４Ｄに後戻り後検索処理の詳細を示す。ステップ４４２で、検索状態管理部１２５が、テキストに含まれている単語と合致した後戻りキーワードを含む検索状態レコードのカレントフラグフィールドにカレントフラグを移動する。ここでは、一例として、カレントフラグのあるカレントフラグフィールドに「１」、カレントフラグのないカレントフィールドに「０」をセットする。
【００６６】
例えば、表２の（Ｄ）では、後戻り指示語の一例である「さっき」が含まれているため、ステップ４３２で、検索状態管理テーブルの後戻りキーワードフィールドに含まれる後戻りキーワードと、「の」、「道玄坂」、「店」とを照合する。（Ｄ）に含まれている「道玄坂」はＮｏ．３の検索状態レコードの後戻りキーワードに含まれている。したがって、ステップ４４２で、Ｎｏ．３の検索状態レコードのカレントフラグフィールドに「１」をセットし、Ｎｏ．５のカレントフラグフィールドには「０」をセットする。
【００６７】
ステップ４４４で、検索状態管理テーブルにおいてカレントフラグのある検索状態レコードの検索条件を用いて、データベース検索部１３０が検索対象データベース１３２を検索する。
【００６８】
図７に検索対象データベース１３２の検索対象テーブルの一例を示す。この例では、検索対象データベース１３２は、レストランのデータベースであり、例えば、ＩＤ、地域、カテゴリ、予算、特徴、店名、住所、及びコメントなどのフィールドを含む。コメントには、例えば、レストランのアピールポイントなどを含む。
【００６９】
検索結果を取得したら、図４Ａのステップ４７０で音声出力処理を行う。図４Ｅに音声出力処理の詳細を示す。出力テキスト生成部１４０がテンプレートデータベース１４２に含まれるテンプレートテーブルを用いて、検索結果に含まれるテキストに基いて出力音声テキストを生成する。
【００７０】
例えば、ステップ４４４の検索で、図７のＩＤフィールドが００１のレコードが検索結果として取得された場合を表３に示す。
【００７１】
【表３】
2014146260.tif 000006
【００７２】
図８にテンプレートデータベース１４２のテンプレートテーブルの一例を示す。テンプレートテーブルは、一例として、置換情報フィールドと、テンプレートフィールドとを含む。
【００７３】
検索結果には、テンプレートテーブルの置換情報フィールドに含まれる「店名」、「住所」、「予算」、「コメント」などの情報が含まれている。したがって、これらの情報を対応するテンプレート、すなわち、「［店名］。住所は［住所］です。予算は［予算］です。［コメント］。」というテンプレートにあてはめ出力音声テキストを生成する。
【００７４】
これにより、「渋谷飯店。住所は道玄坂１−２です。予算は３，０００円〜４，０００円です。自慢の小籠包が美味！」という出力音声テキストが生成される。
【００７５】
ステップ４７４で、音声合成部１４５が生成した出力音声テキストを用いて出力音声を合成し、ステップ４７６で、音声出力部１６７が合成した出力音声を出力する。
【００７６】
なお、ステップ４４４で検索対象データベース１３２を検索する処理を省略してもよい。例えば、検索状態管理テーブルまたは記憶部１５２に当該検索状態レコードが生成されたときに行われた検索の検索結果を記憶しておき、検索状態管理テーブルまたは記憶部１５２から検索結果を読み出して音声出力してもよい。あるいは、検索状態管理テーブルから当該検索状態レコードの出力音声フィールドのデータを音声出力してもよい。
【００７７】
図４Ａのステップ４２０で、後戻り指示語が含まれていないと判断された場合、ステップ４５０で、テキストに含まれる単語のいずれかが検索条件定義テーブルの入力単語セットフィールドに含まれる単語セットのいずれかと一致するか否かを判断する。一致する単語が入力単語セットフィールドにない場合には、ステップ４６０でエラー通知を行う。すなわち、音声出力部１６７を介して、入力音声が解釈不可能であったこと示す警告を、音声で出力する。
【００７８】
テキストに含まれる単語のいずれかと一致する単語が入力単語セットフィールドにある場合には、ステップ４８０で検索処理を行う。ステップ４８０の検索処理の詳細を図４Ｆに示す。
【００７９】
ステップ４８１で検索状態管理テーブルに新たな検索状態レコードを追加し、該検索状態レコードの検索条件フィールドに検索条件をセットする。この場合の検索条件は、データベース検索処理において最初の検索タスクであれば、入力単語セットに対応する検索条件であるが、二回目以降の検索タスクであれば、例えば、前回までの検索条件と当該検索条件とがANDで接続された検索条件となる。上記したように、前回までの検索条件の一部が当該検索条件で置き換えられる場合もある。ステップ４８２で、追加された検索状態レコードにカレントフラグを移動する。
【００８０】
ステップ４８４で、検索状態管理テーブルにおいてカレントフラグのある検索状態レコードにセットされた検索条件で検索対象データベース１３２を検索する。
【００８１】
表２の（Ａ）では、「カテゴリ：中華」という検索条件が追加された検索条件を含む検索状態レコードが検索状態管理テーブルに追加される。現在、カレントフラグフィールドに「１」がセットされている検索状態レコードのカレントフラグフィールドに「０」をセットし、新たに追加した検索対象レコードのカレントフラグフィールドに「１」をセットする。その後、新たな検索条件で検索対象データベース１３２の検索を行う。
【００８２】
表２の（Ｂ）では、検索条件「予算：０〜４，０００円」が追加された検索条件を含む検索状態レコードが検索状態管理テーブルに追加される。現在、カレントフラグフィールドに「１」がセットされている検索状態レコードのカレントフラグフィールドを「０」にセットし、新たに追加した当該検索状態レコードのカレントフラグフィールドに「１」をセットする。その後、新たな検索条件で検索対象データベース１３２の検索を行う。
【００８３】
検索結果は、検索条件と対応させて記憶部１５２に記憶されてもよい。例えば、検索状態管理テーブルに検索結果フィールドを設けて該検索結果フィールドにセットされてもよい。
【００８４】
検索対象データベース１３２の検索を行った後、ステップ６００で後戻りキーワード設定処理を行う。図４Ｇに、ステップ６００の後戻りキーワード設定処理の詳細を示す。
【００８５】
後戻りキーワード設定処理では、後戻りキーワード設定部１３５が、ステップ４８４で取得された検索結果に基づいて後戻りキーワードを設定する。
【００８６】
キーワード抽出部分選択部２１０は、ステップ６１０で、データベース検索部１３０によって取得された検索結果から後戻りキーワードを抽出するための部分を選択する。例えば、検索結果が多数ある場合には、検索条件に対する適合度が高い検索結果の上位数件のみが提示される、すなわち、音声出力される可能性がある。その場合、該上位数件の検索結果に含まれる単語のみを候補キーワードとするために、該上位数件が後戻りキーワードを抽出するための部分として選択されてもよい。あるいは、例えば、検索結果の音声出力中に音声出力がユーザの介入などによって中断された場合、中断されるまでに音声出力された検索結果を、後戻りキーワードを抽出する部分として選択してもよい。
【００８７】
キーワード抽出領域選択部２１５は、ステップ６２０で、選択された部分からさらに後戻りキーワードを抽出するための領域を選択する。キーワード抽出領域選択部２１５は、例えば、後戻りキーワードを抽出するための部分からテキストを含む領域を選択してもよいし、予め設定されている領域を選択してもよい。例えば、レストランの検索を行う場合には店名を含む領域、ガソリンスタンドの検索を行う場合にはガソリン価格を含む領域を選択してもよい。
【００８８】
一例として、図４Ｈでは、ステップ６２２で、後戻りキーワードを抽出する部分の中のテキスト領域であると判断された場合、ステップ６２６で、該テキスト領域をキーワード抽出領域として選択する。あるいは、ステップ６２４で、後戻りキーワードを抽出する部分の中の予め設定された領域であると判断された場合、ステップ６２６で、該予め設定された領域をキーワード抽出領域として選択する。
【００８９】
予め設定された領域は、例えば、検索対象データベース１３２の検索対象テーブルの予め設定された所定のフィールドに含まれるデータを含む領域であってもよい。
【００９０】
例えば、レストランのデータベース検索であれば、店名、住所、コメントなどのフィールドに含まれるデータを含む領域であってよいし、ガソリンスタンドのデータベース検索であれば、価格フィールドに含まれるデータを含む領域であってよい。これらのフィールドに含まれるデータはユーザの記憶に留まり易いためである。
【００９１】
テキスト解析部２２０は、ステップ６３０で、該領域に含まれるテキストを解析する。テキスト解析部２２０は、例えば、キーワード抽出領域選択部２１５で選択された後戻りキーワードを抽出するための領域に含まれるテキストの形態素解析を行い、形態素解析に基づいてテキストに含まれる単語を決定する。
【００９２】
テキスト解析部１１５がテキスト解析部２２０として機能してもよい。
【００９３】
候補キーワード抽出部２２５は、ステップ６４０で、解析の結果取得されるテキストに含まれる単語の各々を候補キーワードとして抽出する。
【００９４】
適性判断部２３０は、候補キーワードが、例えば、固有名詞である場合、出現率の低い低頻度単語である場合、予め設定されている領域に含まれる単語である場合、後戻りキーワードとして適切であると設定する。
【００９５】
固有名詞及び低頻度単語はユーザの印象に容易に留まるので、後戻りキーワードとして適切であるためである。固有名詞であるか否かは、例えば、形態素解析によって特定される。低頻度単語を特定するためには、例えば、予め検索対象データベース１３２の単語と該単語の出現頻度とを関連付けたテーブルを作成しておき、該テーブルを照合する。
【００９６】
ステップ６５０で、候補キーワードが後戻りキーワードとして適切であるか否かを設定る。キーワード適性判断処理の一例を図４Ｉに示す。
【００９７】
ステップ６５２で、候補キーワードが予め設定された所定のフィールドに含まれている単語であるか否か判断し、判断が肯定された場合、ステップ６５８で、当該候補キーワードが後戻りキーワードとして適切であると設定する。
【００９８】
ステップ６５２で判断が否定された場合、ステップ６５４で候補キーワードが固有名詞であるか否か判断され、判断が肯定された場合、ステップ６５８で当該候補キーワードが後戻りキーワードとして適切であると設定する。
【００９９】
ステップ６５４で判断が否定された場合、ステップ６５６で、検索対象データベース１３２において候補キーワードの出現頻度が所定の閾値以下であるか否かが判断され、判断が肯定された場合、ステップ６５８で、当該候補キーワードが後戻りキーワードとして適切であると設定する。
【０１００】
ステップ６５６で判断が否定された場合、ステップ６５９で当該候補キーワードが後戻りキーワードとして不適切であると設定する。
【０１０１】
図４Ｉの処理は一例であり、候補キーワードがステップ６５２〜ステップ６５６のいずれか一つの条件を満たせば、後戻りキーワードとして適切であると判断したが、ステップ６５２〜６５６のすべての条件を満たした場合のみ、後戻りキーワードとして適切であると判断してもよい。
【０１０２】
あるいは、ステップ６５２〜ステップ６５６の条件のいずれか一つまたは二つのみを用いて判断してもよい。
【０１０３】
ステップ６６０で、候補キーワードが後戻りキーワードとして適切であると設定されているか否かが判断される。適切であると設定されている場合は、ステップ６６０の判断が肯定される。この場合、ステップ６７０で、後戻りキーワード記憶部２３０が当該候補キーワードを後戻りキーワードとして検索状態管理テーブルの後戻りキーワードフィールドに検索条件および検索結果を表す出力音声テキストフィールドと対応させてセットする。
【０１０４】
図６に示す検索状態管理テーブルのＮｏ．３のレコードでは、後戻りキーワードとして「渋谷飯店」、「道玄坂」、「小籠包」がセットされている。この例では、「店名」フィールドが予め所定のフィールドとして設定されていたため、「渋谷飯店」が後戻りキーワードとされ、固有名詞であるため、「道玄坂」が後戻りキーワードとされ、当該検索対象データベースにおける出現頻度が所定値以下であったため、「小籠包」が後戻りキーワードとされている。
【０１０５】
ここでは、後戻りキーワード記憶部２３０が候補キーワードを後戻りキーワードとして検索状態管理テーブルの後戻りキーワードフィールドにセットする例を示したが、これに限定されない。適切であると判断された候補キーワードを検索状態と対応させて後戻りキーワードとして記憶部１５２に記憶すればよい。
【０１０６】
図４Ａのステップ４７０で、検索結果を音声出力部１６７が音声出力し、ステップ４１０に戻る。音声出力のために生成された出力音声テキストが検索状態管理テーブルの出力音声テキストフィールドに検索条件と対応させてセットされる。
【０１０７】
説明を容易にするために、キーワード抽出部分、キーワード抽出領域、候補キーワードなどが単一であるものとして説明したが、キーワード抽出部分、キーワード抽出領域、候補キーワードは複数あってもよい。これらが複数ある場合には、上記処理が適宜繰り返されればよい。
【０１０８】
また、説明を容易にするために、候補キーワードが後戻りキーワードとして適切であるか否かの設定と判断とをステップ６５８、ステップ６５９、ステップ６６０で別個に行ったが、これに限定されない。候補キーワードが後戻りキーワードとして適切であるか否かの設定と判断とを一つのステップとしてもよい。他のステップについてもすべて例示であり、ステップの分解、組み合わせが可能であり、また、ステップの順番も限定されるものではない。
【０１０９】
なお、第１実施形態は音声入出力によるデータベース検索であるが、音声入力部１６５及び音声出力部１６７による音声入出力に加え、例えば、キーボード、タッチパネルなどの文字・図形入力部１７２を用いてデータの入力がされてもよい。また、ディスプレイまたはプリンタのような表示部１７０を用いてデータの出力がされてもよい。
【０１１０】
なお、第１実施形態の音声入出力あるいは各種データベースで使用される言語は限定されない。例えば、日本語、英語、中国語などのいずれか一つ、あるいは、複数であってよい。
【０１１１】
開示の技術によれば、音声入出力データベース検索において、検索結果から過去の検索状態に戻るための後戻りキーワードを適切に抽出するため、容易かつ適切に過去の検索状態に戻ることが可能となる。これにより、検索対象データベース検索の効率を向上させることが可能となり、検索タスクの達成時間が短縮される。
【０１１２】
［第２実施形態］
次に開示の技術の第２実施形態について説明する。第２実施形態は、第１実施形態とほぼ同様であるが、第１実施形態のキーワード適性判断処理（図４Ｇのステップ６５０及び図４Ｉ）が一部変更されている。
【０１１３】
第２実施形態のキーワード適性判断処理を図９に示す。
【０１１４】
図９では、ステップ６５２、ステップ６５４、またはステップ６５６によって肯定された候補キーワードに対して、ステップ７１０の判断を行う。すなわち、ステップ７１０で、当該候補キーワードが、過去の検索状態と関連付けて既に他の検索状態レコードにセットされている後戻りキーワードと重複しているか否かを判断する。
【０１１５】
当該候補キーワードが閾値数以上の検索状態レコードにおいてセットされていない場合、ステップ６５８で、当該候補キーワードが後戻りキーワードとして適切であると設定する。
【０１１６】
当該候補キーワードと重複する後戻りキーワードが閾値以上の検索状態レコードにおいてセットされている場合、すなわち、ステップ７１０の判断が肯定された場合、ステップ７２０の処理を行う。ステップ７２０で、他の検索状態レコードにセットされている当該候補キーワードと重複する後戻りキーワードを削除する。
【０１１７】
ステップ７３０で、当該候補キーワードが候補キーワードとして適切でないと設定する。
【０１１８】
すなわち、検索状態管理テーブルに既にセットされている当該候補キーワードと重複する後戻りキーワードは該検索状態管理テーブルから削除され、かつ、当該候補キーワードが該検索状態管理テーブルに記憶されることもない。
【０１１９】
多数重複した後戻りキーワードは後戻りする過去の検索状態を多数示すため、所望する検索状態に適切に戻ることが困難になるためである。
【０１２０】
図１０では、Ｎｏ．２のレコードの後戻りキーワードに「道玄坂」が含まれている。Ｎｏ．３のレコードの候補キーワードとして「道玄坂」が抽出され、例えば、重複の閾値が１とされていた場合、ステップ７１０の判断が肯定される。したがって、ステップ７２０でＮｏ．２の後戻りキーワードフィールドから「道玄坂」を削除する。さらに、ステップ７３０で「道玄坂」は後戻りキーワードとして不適切であると設定されるため、ステップ６７０で、Ｎｏ．３の後戻りキーワードフィールドに「道玄坂」はセットされない。
【０１２１】
なお、重複の閾値は、任意に設定されてよい。
【０１２２】
［第３実施形態］
次に開示の技術の第３実施形態について説明する。第２実施形態と第３実施形態とは、ステップ７２０で、検索状態管理テーブルにセットされている候補キーワードと重複する後戻りキーワードを該検索状態管理テーブルから削除する点までは同様である。しかし、第２実施形態では、候補キーワードを後戻りキーワードとして不適切であると設定するが、第３実施形態では、候補キーワードが後戻りキーワードとして適切であると設定する。
【０１２３】
図１１では、ステップ６５２、ステップ６５４、またはステップ６５６によって肯定された候補キーワードに対して、ステップ７１０の判断を行う。すなわち、ステップ７１０で、当該候補キーワードが、過去の検索状態と関連付けて他の検索状態レコードにセットされている後戻りキーワードと重複しているか否かを判断する。
【０１２４】
当該候補キーワードと重複する後戻りキーワードが閾値以上の検索状態レコードにおいてセットされている場合、すなわち、ステップ７１０の判断が肯定された場合、ステップ７２０の処理を行う。ステップ７２０で、他の検索状態レコードにセットされている当該候補キーワードと重複する後戻りキーワードを削除する。
【０１２５】
ここまでは、第２実施形態と同様であるが、ステップ７４０で、当該候補キーワードが後戻りキーワードとして適切であると設定する。この処理が第２実施形態と異なる。
【０１２６】
すなわち、他の検索状態レコードにセットされている当該候補キーワードと重複する後戻りキーワードは他の検索状態レコードから削除されるが、当該候補キーワードは新たな検索状態レコードには記憶される。
【０１２７】
重複した後戻りキーワードが多数ある場合、新たな検索状態に関連付けられる後戻りキーワードのみを残すことによって、所望する検索状態に適切に戻ることが困難になることを防ぐことが可能となる。また、重複した後戻りキーワードが多数ある場合、新たな検索状態に関連付けられる後戻りキーワードのみを残すことによって、より新しい検索状態に戻りたいというニーズを満たすことが可能となる。
【０１２８】
図１２では、Ｎｏ．２のレコードの後戻りキーワードに「道玄坂」が含まれている。Ｎｏ．３のレコードの候補キーワードとして「道玄坂」が抽出され、重複の閾値が１とされていた場合、ステップ７２０で、Ｎｏ．２の後戻りキーワードフィールドから「道玄坂」は削除される。ステップ７４０で「道玄坂」は後戻りキーワードとして適切であると設定されるため、ステップ６７０で、Ｎｏ．３の後戻りキーワードフィールドに「道玄坂」がセットされる。
【０１２９】
なお、重複の閾値は、任意に設定されてよい。
【０１３０】
［第４実施形態］
次に開示の技術の第４実施形態について説明する。第４実施形態は、第１実施形態とほぼ同様である。しかし、第４実施形態は、第１実施形態の図４Ａで示したステップ４３０の後戻り前処理とステップ４４０の後戻り後検索の間に順位に基づく後戻り処理を含む。順位に基づく後戻り処理の詳細を図１３に示す。
【０１３１】
第４実施形態では、図１４に一例を示す検索状態管理テーブルが使用される。図１４に示す検索状態管理テーブルでは、後戻りキーワードを検索状態管理テーブルにセットするときに、該後戻りキーワードが抽出された検索結果の順位が後戻りキーワードの各々と対応させてセットされている。ここでは、検索条件との合致度が高いほど検索結果の順位が高い、すなわち、順位が示す数値が低くなる例を示す。
【０１３２】
Ｎｏ．３のレコードでは、「渋谷飯店」、「道玄坂」、「小籠包」に対応する順位フィールドに「１」がセットされており、順位が１の検索結果からこれらの後戻りキーワードが抽出されたことを示している。
【０１３３】
一方、「ＸＸ苑」、「宇田川町」、「食べ放題」に対応する順位フィールドに「２」がセットされており、順位が２の検索結果からこれらの後戻りキーワードが抽出されたことを示している。
【０１３４】
Ｎｏ．４のレコードでは、「ＸＸ苑」、「宇田川町」、「食べ放題」に対応する順位フィールドに「１」がセットされており、この検索状態レコードは、順位が１の検索結果からこれらの後戻りキーワードが抽出されたことを示している。
【０１３５】
図１３のステップ８１０では、候補キーワードと同じ後戻りキーワードを含む検索状態レコードが複数あるか否かを判断する。ステップ８１０の判断が否定された場合、戻る検索状態は一意に決定されるので、順位に基づく後戻り処理を終了する。
【０１３６】
ステップ８１０の判断が肯定された場合、該候補キーワードと同じ後戻りキーワードと対応させてセットされている順位フィールドの数値が最も小さい、すなわち、ステップ８２０で、順位が最も高い検索状態レコードを選択する。ステップ４４２で、当該順位が最も高い検索状態レコードにカレントフラグを移動する。
【０１３７】
順位が高い検索結果に含まれているキーワードはユーザの記憶に留まり易いためである。
【０１３８】
例えば、「さっきのＸＸ苑」と音声入力された場合、［ＸＸ苑」はＮｏ．３とＮｏ．４の後戻りキーワードフィールドに含まれている。したがって、ステップ８１０で、候補キーワードと同じ後戻りキーワードを含む検索状態レコードが複数あると判断される。Ｎｏ．３の「ＸＸ苑」に対応する順位フィールドの数値は２であり、Ｎｏ．４の「ＸＸ苑」に対応する順位フィールドの数値は１である。したがって、ステップ８２０で、Ｎｏ．４の検索状態レコードが選択され、図４Ｄのステップ４４２で、カレントフラグはＮｏ．３ではなく、Ｎｏ．４に移動する。Ｎｏ．４のレコードにある後戻りキーワード「ＸＸ苑」に対応させてセットされている順位の数値の方が小さい（順位が高い）ためである。
【０１３９】
なお、図１４では、検索条件との合致度が高い場合に検索結果の順位すなわち検索状態管理テーブルの順位フィールドに小さい数値がセットされる例を示したが、例えば、検索条件との合致度が高い場合に検索結果の順位すなわち順位フィールドに大きい数値がセットされてもよい。
【０１４０】
また、第４実施形態を第１実施形態に適用する例を示したが、例えば、第４実施形態は第２実施形態または第３実施形態を適用された第１実施形態に適用されてもよい。
【０１４１】
［第５実施形態］
次に開示の技術の第５実施形態について説明する。第５実施形態は、第１実施形態とほぼ同様であるが、第１実施形態の図４Ａのステップ４１０の検索前処理の直後に図１５に示す後戻りキーワードリスト生成処理を含む。
【０１４２】
図１５のステップ８３０で、入力音声が後戻りキーワード確認の要求であるか否かが判断される。判断が肯定された場合、ステップ８４０で、検索状態管理テーブルの後戻りキーワードフィールドのデータから後戻りキーワードのリストを生成する。
【０１４３】
図５に例示した検索条件定義テーブルは、入力単語セットフィールドの「キーワード」及び「教えて」に対応させて、検索条件及び処理フィールドに「キーワード確認」をセットしている。したがって、「キーワード」及び「教えて」が入力音声に含まれている場合、後戻りキーワード確認の要求であると、ステップ８３０で判断される。
【０１４４】
なお、「キーワード」、「教えて」などは例であり、これらに限定されない。
【０１４５】
例えば、図６に示す検索状態管理テーブルの後戻りキーワードフィールドのデータから「ダイニングＡ」、「神南」、「パーティー」、「海王」、「桜丘町」、「海鮮料理」、…というリストが生成される。
【０１４６】
図４Ｅのステップ４７２で、これらの単語が図８のテンプレートテーブルに適用される。すなわち、後戻りキーワードのリストは、置換情報フィールドに含まれる「後戻りキーワード１」、「後戻りキーワード２」、「後戻りキーワード３」、「後戻りキーワード４」、…に対応する情報を含む。したがって、これらを対応する出力音声テンプレート、すなわち、「後戻りキーワードには次の単語を使用することができます。［後戻りキーワード１］、［後戻りキーワード２］、［後戻りキーワード３］、［後戻りキーワード４］、…」にあてはめる。これにより、「後戻りキーワードには次の単語を使用することができます。「ダイニングＡ」、「神南」、「パーティー」、「海王」、「桜丘町」、「海鮮料理」、…」というテキストが生成される。ステップ４７４で、生成されたテキストが音声合成され、ステップ４７６で音声出力部１６７を介して該テキストを音声で出力する。
【０１４７】
後戻りキーワードリストが音声出力されるので、後戻りキーワードを記憶するというユーザの負担を軽減することができる。
【０１４８】
なお、第５実施形態を第１実施形態に適用する例を示した。しかし、例えば、第２実施形態、第３実施形態、第４実施形態のいずれかを適用された第１実施形態、あるいは、第２実施形態と第４実施形態の組み合わせ、または第３実施形態と第４実施形態の組み合わせを適用された第１実施形態に適用されてもよい。
【０１４９】
［第６実施形態］
次に第６実施形態について説明する。
【０１５０】
第６実施形態に係る音声入出力データベース検索装置は、例えば、図１６に示すコンピュータ９００で実現することができる。コンピュータ９００はＣＰＵ(Central Processing Unit)９１０、マイク９２０、キーボード９３０、スピーカ９４０、ディスプレイ９５０、不揮発性の記憶部９６０、メモリ９７０、入出力インタフェース９８０を備え、これらはバス９９０を介して互いに接続されている。なお、記憶部９６０はＨＤＤ(Hard Disk Drive)またはフラッシュ・メモリ等によって実現できる。
【０１５１】
記憶部９６０には、コンピュータ９００を音声入出力データベース検索装置として機能させるための音声入出力データベース検索プログラム９６１が記憶されている。ＣＰＵ９１０は、音声入出力データベース検索プログラム９６１を記憶部９１０から読み出してメモリ９７０に展開し、音声入出力データベース検索プログラム９６１が有するプロセスを順次実行する。
【０１５２】
音声入出力データベース検索プログラム９６１は、音声認識プロセス９６２、テキスト解析プロセス９６３、検索条件抽出プロセス９６４、検索状態管理プロセス９６５、データベース検索プロセス９６６、及び後戻りキーワード設定プロセス９６７を有する。また、音声入出力データベース検索プログラム９６１は、出力テキスト生成プロセス９６８及び音声合成プロセス９６９を有する。
【０１５３】
ＣＰＵ９１０は、音声認識プロセス９６２を実行することで、図１に示す音声認識部１０５として動作する。また、ＣＰＵ９１０は、テキスト解析プロセス９６３を実行することで、図１に示すテキスト解析部１１５として動作する。また、ＣＰＵ９１０は、検索条件抽出プロセス９６４を実行することで、図１に示す検索条件抽出部１２０として動作する。また、ＣＰＵ９１０は、検索状態管理プロセス９６５を実行することで、図１に示す検索状態管理部１２５として動作する。また、ＣＰＵ９１０は、データベース検索プロセス９６６を実行することで、図１に示すデータベース検索部１３０として動作する。また、ＣＰＵ９１０は、後戻りキーワード設定プロセス９６７を実行することで、図１に示す後戻りキーワード設定部１３５として動作する。また、ＣＰＵ９１０は、出力テキスト生成プロセス９６８を実行することで、図１に示す出力テキスト生成部１４０として動作する。また、ＣＰＵ９１０は、音声合成プロセス９６９を実行することで、図１に示す音声合成部１４５として動作する。これにより、音声入出力データベース検索プログラム９６１を実行したコンピュータ９００は音声入出力データベース検索装置として機能する。
【０１５４】
なお、上記では音声入出力データベース検索プログラム９６１が記憶部９６０に予め記憶（インストール）されている態様を説明したが、これに限定されるものではない。例えば、音声入出力データベース検索プログラム９６１はＣＤ−ＲＯＭまたはＤＶＤ−ＲＯＭ等の記録媒体に記録されている形態で提供されてもよい。この場合、入出力インタフェース９８０を介してＣＤ−ＲＯＭドライブあるいはＤＶＤ−ＲＯＭドライブなどを接続し、音声入出力データベース検索プログラム９６１を当該記録媒体からメモリ９７０に展開する。さらに、音声入出力データベース検索プログラム９６１は、遠隔にあるネットワークストレージなどから入出力インタフェース９８０を介して取得され、メモリ９７０に展開されてもよい。
【０１５５】
第６実施形態は、第１実施形態、第２実施形態、第３実施形態、第４実施形態、及び第５実施形態のいずれに適用されてよい。
【０１５６】
以上の実施形態に関し、さらに以下の付記を開示する。
【０１５７】
（付記１）
コンピュータが、
音声によって与えられた検索条件を認識し、
認識された前記検索条件に基いてデータベースを検索することにより取得された検索結果を音声によって出力し、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出し、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶し、
前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語と共に単語または語句で表された後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する、
音声入出力データベース検索方法。
【０１５８】
（付記２）
抽出した前記候補キーワードを前記記憶部に記憶する際に、
前記候補キーワードが、所定の検索状態へ後戻りするための後戻りキーワードとして適しているか否かを判断し、
前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断された前記候補キーワードを、該所定の検索状態と対応させて記憶する、
付記１に記載の音声入出力データベース検索方法。
【０１５９】
（付記３）
前記候補キーワードが、固有名詞である場合、前記データベースにおける出現頻度が所定値以下である場合、及び該データベースにおいて所定のフィールドに属する場合の少なくとも１つの場合に、該候補キーワードが前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断する、
付記２に記載の音声入出力データベース検索方法。
【０１６０】
（付記４）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数を越えない場合に、該候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記２または付記３に記載の音声入出力データベース検索方法。
【０１６１】
（付記５）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記４に記載の音声入出力データベース検索方法。
【０１６２】
（付記６）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していないと判断する、
付記４に記載の音声入出力データベース検索方法。
【０１６３】
（付記７）
前記検索結果は順位を付された複数の検索結果を含み、
前記候補キーワードを前記検索状態と対応させて記憶する場合に、該候補キーワードが抽出された検索結果の順位を共に記憶し、
認識された後戻りキーワードに対応する検索状態へ後戻りするように制御する際に、
少なくとも２つの検索状態に対応する候補キーワードに対応する後戻りキーワードが音声によって与えられた場合、入力された該後戻りキーワードに対応する候補キーワードに対応する少なくとも２つの該検索状態のうち、順位がより高い検索状態に後戻りするように制御する、
付記１〜付記６のいずれか１つに記載の音声入出力データベース検索方法。
【０１６４】
（付記８）
前記後戻りキーワードの出力要求が音声によって与えられた場合、前記検索状態と対応させて記憶されている候補キーワードを音声によって出力するように制御する、
付記１〜付記７のいずれか１つに記載の音声入出力データベース検索方法。
【０１６５】
（付記９）
少なくとも一つの候補キーワードを抽出することは、
前記検索結果に含まれる文字情報の形態素解析を行うことによって前記少なくとも１つの候補キーワードを抽出する、
ことを含む、
付記１〜付記８のいずれか１つに記載の音声入出力データベース検索方法。
【０１６６】
（付記１０）
音声によって与えられた検索条件を認識することは、
前記音声によって与えられた検索条件が所定の単語または語句を含むか否かを判断し、
前記所定の単語または語句を含む場合には、該所定の単語または語句と対応して記憶されている所定の検索条件として前記音声によって与えられた検索条件を認識し、
前記所定の単語または語句を含まない場合には、音声によって警告を出力する、
付記１〜９のいずれか１つに記載の音声入出力データベース検索方法。
【０１６７】
（付記１１）
コンピュータに、
音声によって与えられた検索条件を認識し、
認識された前記検索条件に基いてデータベースを検索することにより取得された検索結果を音声によって出力し、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出し、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶し、
前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語と共に単語または語句で表された後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する、
処理を実行させるための音声入出力データベース検索プログラム。
【０１６８】
（付記１２）
抽出した前記候補キーワードを前記記憶部に記憶する際に、
前記候補キーワードが、所定の検索状態へ後戻りするための後戻りキーワードとして適しているか否かを判断し、
前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断された前記候補キーワードを、該所定の検索状態と対応させて記憶する、
付記１１に記載の音声入出力データベース検索プログラム。
【０１６９】
（付記１３）
前記候補キーワードが、固有名詞である場合、前記データベースにおける出現頻度が所定値以下である場合、及び該データベースにおいて所定のフィールドに属する場合の少なくとも１つの場合に、該候補キーワードが前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断する、
付記１２に記載の音声入出力データベース検索プログラム。
【０１７０】
（付記１４）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数を越えない場合に、該候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記１２または付記１３に記載の音声入出力データベース検索プログラム。
【０１７１】
（付記１５）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記１４に記載の音声入出力データベース検索プログラム。
【０１７２】
（付記１６）
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していないと判断する、
付記１４に記載の音声入出力データベース検索プログラム。
【０１７３】
（付記１７）
前記検索結果は順位を付された複数の検索結果を含み、
前記候補キーワードを前記検索状態と対応させて記憶する場合に、該候補キーワードが抽出された検索結果の順位を共に記憶し、
認識された後戻りキーワードに対応する検索状態へ後戻りするように制御する際に、
少なくとも２つの検索状態に対応する候補キーワードに対応する後戻りキーワードが音声によって与えられた場合、入力された該後戻りキーワードに対応する候補キーワードに対応する少なくとも２つの該検索状態のうち、順位がより高い検索状態に後戻りするように制御する、
付記１１〜付記１６のいずれか１つに記載の音声入出力データベース検索プログラム。
【０１７４】
（付記１８）
前記後戻りキーワードの出力要求が音声によって与えられた場合、前記検索状態と対応させて記憶されている候補キーワードを音声によって出力するように制御する、
付記１１〜付記１７のいずれか１つに記載の音声入出力データベース検索プログラム。
【０１７５】
（付記１９）
少なくとも一つの候補キーワードを抽出することは、
前記検索結果に含まれる文字情報の形態素解析を行うことによって前記少なくとも１つの候補キーワードを抽出する、
ことを含む、
付記１１〜付記１８のいずれか１つに記載の音声入出力データベース検索プログラム。
【０１７６】
（付記２０）
音声によって与えられた検索条件を認識することは、
前記音声によって与えられた検索条件が所定の単語または語句を含むか否かを判断し、
前記所定の単語または語句を含む場合には、該所定の単語または語句と対応して記憶されている所定の検索条件として前記音声によって与えられた検索条件を認識し、
前記所定の単語または語句を含まない場合には、音声によって警告を出力する、
付記１１〜１９のいずれか１つに記載の音声入出力データベース検索プログラム。
【０１７７】
（付記２１）
音声によって与えられた検索条件、音声によって与えられ単語または語句で表されかつ検索状態を後戻りさせるための後戻り指示語及び音声によって与えられた単語または語句で表された後戻りキーワードを認識する音声認識部と、
前記音声認識部によって認識された検索条件に基いてデータベースを検索することによって取得された検索結果を音声によって出力する音声出力部と、
前記検索結果に含まれる文字情報から単語または語句で表された少なくとも１つの候補キーワードを抽出する候補キーワード抽出部と、
抽出した前記候補キーワードと、該候補キーワードが抽出された検索結果を含む検索状態と、を対応させて記憶部に記憶させると共に、前記検索条件から変更され、かつ音声によって与えられた新たな検索条件が認識され、認識された該検索条件に基づく検索が行われた後に、前記音声認識部により、前記後戻り指示語と共に前記後戻りキーワードが認識された場合に、前記記憶部に記憶された記憶内容に基いて、認識された該後戻りキーワードに対応する候補キーワードに対応して記憶された検索状態へ後戻りするように制御する制御部と、
を備える音声入出力データベース検索装置。
【０１７８】
（付記２２）
前記後戻りキーワード記憶部は、
前記候補キーワードが、所定の検索状態へ後戻りするための後戻りキーワードとして適しているか否かを判断し、
前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断された前記候補キーワードを、該所定の検索状態と対応させて記憶する、
付記２１に記載の音声入出力データベース検索装置。
【０１７９】
（付記２３）
前記後戻りキーワード記憶部は、
前記候補キーワードが、固有名詞である場合、前記データベースにおける出現頻度が所定値以下である場合、及び該データベースにおいて所定のフィールドに属する場合の少なくとも１つの場合に、該候補キーワードが前記所定の検索状態へ後戻りするための後戻りキーワードとして適していると判断する、
付記２２に記載の音声入出力データベース検索装置。
【０１８０】
（付記２４）
前記後戻りキーワード記憶部は、
前記候補キーワードと対応させて記憶している検索状態の個数が所定数を越えない場合、該候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記２２または付記２３に記載の音声入出力データベース検索装置。
【０１８１】
（付記２５）
前記後戻りキーワード記憶部は、
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していると判断する、
付記２４に記載の音声入出力データベース検索装置。
【０１８２】
（付記２６）
前記後戻りキーワード記憶部は、
前記候補キーワードと対応させて記憶している検索状態の個数が所定数以上である場合に、該検索状態と対応させて記憶されている該候補キーワードを前記記憶部から削除し、
前記候補キーワードが、前記所定の検索状態に後戻りするための後戻りキーワードとして適していないと判断する、
付記２４に記載の音声入出力データベース検索装置。
【０１８３】
（付記２７）
前記検索結果は順位を付された複数の検索結果を含み、
前記後戻りキーワード記憶部は、前記候補キーワードを前記検索状態と対応させて記憶する場合に、該候補キーワードが抽出された検索結果の順位をともに記憶し、
前記制御部は、少なくとも２つの検索状態に対応する候補キーワードに対応する後戻りキーワードが音声によって与えられた場合、入力された該後戻りキーワードに対応する候補キーワードに対応する少なくとも２つの該検索状態のうち、順位がより高い検索状態に後戻りするように制御する、
付記２１〜付記２６のいずれか１つに記載の音声入出力データベース検索装置。
【０１８４】
（付記２８）
前記音声認識部に前記後戻りキーワードの出力要求が音声によって与えられた場合、前記制御部は、前記検索状態と対応させて記憶されている候補キーワードを音声によって出力するように前記音声出力部を制御する、
付記２１〜付記２７のいずれか１つに記載の音声入出力データベース検索装置。
【０１８５】
（付記２９）
前記候補キーワード抽出部は、前記検索結果に含まれる文字情報の形態素解析を行うことによって前記少なくとも１つの候補キーワードを抽出する、
付記２１〜付記２８のいずれか１つに記載の音声入出力データベース検索装置。
【０１８６】
（付記３０）
前記音声によって与えられた検索条件が所定の単語または語句を含むか否かを判断し、該所定の単語または語句を含む場合には、該所定の単語または語句と対応して記憶されている所定の検索条件として該音声によって与えられた検索条件を認識する検索条件抽出部をさらに備え、
前記制御部は、前記所定の単語または語句を含まない場合に警告を出力するように前記音声出力部を制御する、
付記２１〜２９のいずれか１つに記載の音声入出力データベース検索装置。
【符号の説明】
【０１８７】
１００  音声入出力データベース検索装置
１０５  音声認識部
１２５  データベース検索部
１３５  後戻りキーワード設定部
１４０  出力テキスト生成部
１４５  音声合成部
１５０  制御部
１６５  音声入力部
１６７  音声出力部
２２０  テキスト解析部
２２５  候補キーワード抽出部
２３０  後戻りキーワード記憶部
２３５  適正判断部
９００  コンピュータ
【図１】
2014146260.tif 000007
【図２】
2014146260.tif 000008
【図３】
2014146260.tif 000009
【図４Ａ】
2014146260.tif 000010
【図４Ｂ】
2014146260.tif 000011
【図４Ｃ】
2014146260.tif 000012
【図４Ｄ】
2014146260.tif 000013
【図４Ｅ】
2014146260.tif 000014
【図４Ｆ】
2014146260.tif 000015
【図４Ｇ】
2014146260.tif 000016
【図４Ｈ】
2014146260.tif 000017
【図４Ｉ】
2014146260.tif 000018
【図５】
2014146260.tif 000019
【図６】
2014146260.tif 000020
【図７】
2014146260.tif 000021
【図８】
2014146260.tif 000022
【図９】
2014146260.tif 000023
【図１０】
2014146260.tif 000024
【図１１】
2014146260.tif 000025
【図１２】
2014146260.tif 000026
【図１３】
2014146260.tif 000027
【図１４】
2014146260.tif 000028
【図１５】
2014146260.tif 000029
【図１６】
2014146260.tif 000030