(57)【要約】  音声認識部３は一の入力音声２から複数の音声認識結果を生成する。意図理解部７は音声認識結果ごとに意図を推定して一以上の意図理解結果とスコアとを出力する。重み計算部１１は、制御対象機器の設定情報９を用いて待ち受け重みを計算する。意図理解補正部１２は、待ち受け重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアに基づいて意図理解結果候補の中から意図理解結果１３を選択する。
2015151157.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが自然言語で発話した一の音声を認識して複数の音声認識結果を生成する音声認識部と、
前記音声認識結果それぞれを形態素列に変換する形態素解析部と、
前記形態素列に基づいて前記ユーザの発話の意図を推定し、一の前記形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力する意図理解部と、
前記意図理解結果候補ごとの重みを計算する重み計算部と、
前記重みを用いて前記意図理解結果候補の前記スコアを補正して最終スコアを算出し、当該最終スコアに基づいて前記意図理解結果候補の中から意図理解結果を選択する意図理解補正部とを備える意図理解装置。
【請求項２】
前記意図理解部は、前記複数の音声認識結果のうちの尤もらしいものから順番に前記意図理解結果候補を生成していき、
前記意図理解補正部は、前記意図理解部が前記意図理解結果候補を生成するつど前記最終スコアを算出していき、当該最終スコアが予め設定された条件を最初に満足した前記意図理解結果候補を前記意図理解結果として選択することを特徴とする請求項１記載の意図理解装置。
【請求項３】
前記重み計算部は、前記意図理解補正部が選択した前記意図理解結果に基づいて動作する制御対象機器の設定情報を用いて、前記重みを計算することを特徴とする請求項２記載の意図理解装置。
【請求項４】
前記重み計算部は、制約条件と当該制約条件を満足した場合の前記重みとを定義した情報を有し、前記制御対象機器の設定情報に基づいて前記制約条件を満足するか否かを判断して前記重みを選択することを特徴とする請求項３記載の意図理解装置。
【請求項５】
前記重み計算部は、前記ユーザとの対話の流れから期待される意図に該当する前記意図理解結果候補が前記意図理解補正部において選択されやすくなるよう重み付けすることを特徴とする請求項２記載の意図理解装置。
【請求項６】
前記ユーザの意図を、根に行くほど抽象的な意図、葉に行くほど具体的な意図になる木構造で表現した階層木を備え、
前記重み計算部は、前記階層木に基づいて、直前に選択された前記意図理解結果に該当する意図から枝葉の方向に位置する前記意図理解結果候補が選択されやすくなるよう重み付けすることを特徴とする請求項５記載の意図理解装置。
【請求項７】
前記意図理解部は、今回の発話から生成された前記形態素列に加えて、今回より前の発話から生成された前記形態素列も用いて前記ユーザの意図を推定することを特徴とする請求項６記載の意図理解装置。
【請求項８】
意図とキーワードとの対応関係が定義されたキーワードテーブルの中から、前記形態素列に一致するキーワードを検索し、当該検索したキーワードに対応する前記意図を取得するキーワード検索部を備え、
前記重み計算部は、前記階層木と前記キーワード検索部が取得した前記意図とを用いて前記重みを計算することを特徴とする請求項６の意図理解装置。
【請求項９】
前記意図理解補正部が最も尤もらしい前記意図理解結果候補を排除しそれ以外の前記意図理解結果候補を前記意図理解結果として選択した場合に、当該意図理解結果を採用するか否かを前記ユーザに確認して採用可否を決定する意図確認処理部を備えることを特徴とする請求項１記載の意図理解装置。
【請求項１０】
ユーザが自然言語で発話した一の音声を認識して複数の音声認識結果を生成する音声認識ステップと、
前記音声認識結果それぞれを形態素列に変換する形態素解析ステップと、
前記形態素列に基づいて前記ユーザの発話の意図を推定し、一の前記形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力する意図理解ステップと、
前記意図理解結果候補ごとの重みを計算する重み計算ステップと、
前記重みを用いて前記意図理解結果候補の前記スコアを補正して最終スコアを算出し、当該最終スコアに基づいて前記意図理解結果候補の中から意図理解結果を選択する意図理解補正ステップとを備える意図理解方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声認識結果からユーザの意図を推定する意図理解装置およびその方法に関するものである。
【背景技術】
【０００２】
近年、人間が喋った言葉の音声認識結果を用いて、装置の操作を実行する技術が注目されている。この技術は、携帯電話、ナビゲーション装置などの音声インタフェースとして利用されている。従来の基本的な方法として、例えば装置が、予め想定される音声認識結果と操作との対応関係を記憶しておき、ユーザが発話した音声の認識結果が想定されたものの場合にその認識結果に対応する操作を実行するという方法がある。
この方法は、ユーザが手動で操作する場合と比べると、音声の発話によって直接操作ができるため、ショートカット機能として有効に働く。一方で、ユーザは操作を実行するために、装置が待ち受けている言葉を発話する必要があり、装置が扱う機能が増えていくとユーザが覚えておかなくてはならない言葉が増えていく。また一般には、取り扱い説明書を十分に理解した上で装置を使用するユーザは少なく、理解していないユーザは操作のために何をどう言えばいいのかが分からないので、実際には覚えている機能のコマンド以外、音声で操作できないという問題があった。【０００３】
そこで、上記の問題を改良した技術として、ユーザが目的を達成するためのコマンドを覚えていなくても、対話によって装置がユーザを誘導して目的を達成に導く方法が提案されている。その実現の方法の一つの重要な技術として、ユーザの発話から正しくそのユーザの意図を推定する技術が、例えば特許文献１に開示されている。【０００４】
特許文献１の音声処理装置は、複数の意図のそれぞれを示す複数の意図情報ごとに、言語的な辞書データベースおよび文法データベースを持ち、さらには、それまでに実行されたコマンドの情報を事前スコアとして保持する。この音声処理装置は、ユーザの発話に基づいて入力された音声信号の意図情報に対する適合度を示すスコアとして、複数の意図情報ごとに音響スコア、言語スコア、および事前スコアを算出し、これらのスコアを総合して得られる総合スコアが最大となる意図情報を選択する。さらに、音声処理装置が総合スコアに基づき、選択した意図情報を実行、ユーザに確認後実行、または棄却することについて開示されている。【０００５】
ただし、特許文献１では、定義される意図が「天気を教えてください」、「時間を教えてください」のような形の一意に決定される意図であって、例えばナビゲーション装置の目的地設定で必要となる多用な施設名を含むような意図を想定した処理については言及されていない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−３３６８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に係る音声処理装置では音声認識結果が意図ごとに設計されるため、複数の異なる意図の中からの選択と、最終的に選択された意図情報の実行と棄却の判定が行われるだけで、音声認識結果の次候補を扱わない。
例えば、ユーザが音楽を聴いている状態で「音楽を聴かない」といった発話をした場合に、「音楽を聴きたい」という第１候補と、「音楽を聴かない」という第２候補の意図が結果として求まったときには、第１候補の「音楽を聴きたい」が選択される。
さらに、ナビゲーション装置の目的地に既に「○○センター」が設定されている状態で、ユーザが経由地を追加するために「○×センターに立ち寄る」といった発話をした結果、「○○センターに立ち寄る」が第１候補、「○×センターに立ち寄る」が第２候補の意図であった場合にも、第１候補の「○○センターに立ち寄る」が選択される。【０００８】
このように、従来の装置は次候補を扱わないのでユーザの意図を正しく理解することが難しいという課題があった。その結果として、ユーザが選択された第１候補をキャンセルして、再度発話しなければならなかった。【０００９】
この発明は、上記のような課題を解決するためになされたもので、入力音声を用いて、ユーザの意図を正しく理解する意図理解装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
この発明に係る意図理解装置は、ユーザが自然言語で発話した一の音声を認識して複数の音声認識結果を生成する音声認識部と、音声認識結果それぞれを形態素列に変換する形態素解析部と、形態素列に基づいてユーザの発話の意図を推定し、一の形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力する意図理解部と、意図理解結果候補ごとの重みを計算する重み計算部と、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアに基づいて意図理解結果候補の中から意図理解結果を選択する意図理解補正部とを備えるものである。【００１１】
この発明に係る意図理解方法は、ユーザが自然言語で発話した一の音声を認識して複数の音声認識結果を生成する音声認識ステップと、音声認識結果それぞれを形態素列に変換する形態素解析ステップと、形態素列に基づいてユーザの発話の意図を推定し、一の形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力する意図理解ステップと、意図理解結果候補ごとの重みを計算する重み計算ステップと、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアに基づいて意図理解結果候補の中から意図理解結果を選択する意図理解補正ステップとを備えるものである。
【発明の効果】
【００１２】
この発明によれば、一の音声から複数の音声認識結果を生成し、音声認識結果のそれぞれから意図理解結果候補を生成し、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアに基づいて複数の意図理解結果候補の中から意図理解結果を選択するようにしたので、入力音声に対する音声認識結果の第１候補だけでなく次候補も含めた中から最終的な意図理解結果を選択することができる。従って、ユーザの意図を正しく理解可能な意図理解装置を提供することができる。【００１３】
この発明によれば、一の音声から複数の音声認識結果を生成し、音声認識結果のそれぞれから意図理解結果候補を生成し、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアに基づいて複数の意図理解結果候補の中から意図理解結果を選択するようにしたので、入力音声に対する音声認識結果の第１候補だけでなく次候補も含めた中から最終的な意図理解結果を選択することができる。従って、ユーザの意図を正しく理解可能な意図理解方法を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】この発明の実施の形態１に係る意図理解装置の構成を示すブロック図である。
【図２】実施の形態１に係る意図理解装置を音声インタフェースとして組み込んだナビゲーション装置の構成を示すブロック図である。
【図３】実施の形態１に係る意図理解装置の動作を説明する図であり、図３（ａ）は設定情報の例、図３（ｂ）は対話の例である。
【図４】実施の形態１に係る意図理解装置の各部の出力結果を示す図であり、図４（ａ）は音声認識結果の例、図４（ａ）〜図４（ｄ）は音声認識結果１位〜３位に対する意図理解結果候補などの例である。
【図５】実施の形態１に係る意図理解装置の重み計算部が使用する、制約条件と待ち受け重みとの対応関係を定義したテーブルである。
【図６】実施の形態１に係る意図理解装置の動作を示すフローチャートである。
【図７】この発明の実施の形態２に係る意図理解装置の構成を示すブロック図である。
【図８】実施の形態２に係る意図理解装置の動作を説明する図であり、対話の例を示す。
【図９】実施の形態２に係る意図理解装置の各部の出力結果を示す図であり、図９（ａ）は音声認識結果の例、図９（ｂ）〜図９（ｄ）は音声認識結果１位〜３位に対する意図理解結果候補などの例である。
【図１０】実施の形態２に係る意図理解装置の階層木の例を示す図である。
【図１１】図１０の階層木の各ノードの意図のリストである。
【図１２】実施の形態２に係る意図理解装置の重み計算部が計算した待ち受け重みの例を示す図である。
【図１３】実施の形態２に係る意図理解装置の動作を示すフローチャートである。
【図１４】図１３のステップＳＴ２０の具体的な動作を示すフローチャートである。
【図１５】この発明の実施の形態３に係る意図理解装置の構成を示すブロック図である。
【図１６】実施の形態３に係る意図理解装置のキーワードテーブルの例を示す図である。
【図１７】実施の形態３に係る意図理解装置のキーワード対応意図の例を示す図である。
【図１８】実施の形態３に係る意図理解装置の各部の出力結果を示す図であり、図１８（ａ）は音声認識結果の例、図１８（ｂ）〜図１８（ｄ）は音声認識結果１位〜３位に対する意図理解結果候補などの例である。
【図１９】実施の形態３に係る意図理解装置の動作を示すフローチャートである。
【図２０】図１９のステップＳＴ３１の具体的な動作を示すフローチャートである。
【図２１】この発明に係る意図理解装置の変形例を示すブロック図である。
【図２２】この発明に係る意図理解装置の動作を説明する図であり、対話の例を示す。
【発明を実施するための形態】
【００１５】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１に示すように、本発明の実施の形態１に係る意図理解装置１は、ユーザが発話した入力音声２を音声認識してテキストに変換する音声認識部３と、音声認識部３が音声認識に用いる音声認識辞書４と、音声認識結果を形態素に分解する形態素解析部５と、形態素解析部５が形態素解析に用いる形態素解析辞書６と、形態素解析結果から意図理解結果の候補を生成する意図理解部７と、意図理解部７がユーザの意図を推定するために用いる意図理解モデル８と、制御対象機器の設定情報９を記憶する設定情報記憶部１０と、設定情報記憶部１０の設定情報９を用いて重みを計算する重み計算部１１と、重みを用いて意図理解結果の候補を補正しその中から最終的な意図理解結果１３を選択して出力する意図理解補正部１２とを備えている。
【００１６】
意図理解装置１は、不図示のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で構成されており、このＣＰＵが内部メモリに格納されたプログラムを実行することによって、音声認識部３、形態素解析部５、意図理解部７、重み計算部１１、および意図理解補正部１２としての機能を実現する。
音声認識辞書４、形態素解析辞書６、意図理解モデル８、および設定情報記憶部１０は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、メモリ等によって構成されている。
【００１７】
図２は、意図理解装置１を音声インタフェースとして組み込んだナビゲーション装置１００の構成を示すブロック図である。このナビゲーション装置１００が、音声による制御対象である。音声入力部１０１は、マイクロフォン等から構成され、ユーザが発話した音声を信号に変換し、入力音声２として意図理解装置１に出力する。ナビ制御部１０２は、ＣＰＵ等から構成され、現在地から目的地までの経路の探索および誘導などの機能を実行する。目的地などの設定情報９は、ナビ制御部１０２から意図理解装置１に出力される。また、このナビ制御部１０２は、意図理解装置１から意図理解結果１３を受け付けて、意図理解結果１３が示す操作を実行したり、意図理解結果１３に関する音声信号を音声出力部１０３に出力したりする。音声出力部１０３は、スピーカ等から構成され、ナビ制御部１０２から入力された音声信号を再生する。
なお、意図理解装置１とナビ制御部１０２を、別々のＣＰＵを用いて構成してもよいし、１個のＣＰＵを用いて構成してもよい。
【００１８】
意図は、例えば、『＜主意図＞［＜スロット名＞＝＜スロット値＞，・・・］』のような形で表現される。具体的には、『目的地設定［施設＝？］』、および『目的地設定［施設＝＄施設＄（＝○○店）］』のように表現される。『目的地設定［施設＝？］』は、ユーザが目的地を設定したいけれど、具体的な施設名が決定していない状態を示す。『目的地設定［施設＝＄施設＄（＝○○店）］』は、ユーザが「○○店」という具体的な施設を目的地に設定した状態を示す。
【００１９】
意図理解部７が行う意図理解方法として、例えば、最大エントロピ法などの方法が利用できる。具体的には、意図理解モデル８は、「目的地、設定」という自立語単語（以下、素性と呼ぶ）と、『目的地設定［施設＝？］』のような正解意図との組を、大量に保持している。意図理解部７は、例えば「目的地を設定したい」という入力音声２の形態素解析結果から、「目的地、設定」という素性を抽出し、統計的手法によって意図理解モデル８の中から、どの意図がどれだけ尤もらしいかを推定する。意図理解部７は、意図理解結果の候補として、意図とその意図の尤もらしさを表すスコアとの組のリストを出力する。
以下では、意図理解部７が最大エントロピ法を利用した意図理解方法を実行するものとして説明する。
【００２０】
図３（ａ）は、実施の形態１における設定情報９の例、図３（ｂ）は対話の例である。
音声による制御対象がナビゲーション装置１００の場合、設定情報９には、目的地および経由地の設定の有無、設定されている場合にはその目的地または経由地の名前、その外にも、表示している地図のタイプなどの情報が含まれる。意図理解装置１の設定情報記憶部１０は、ナビゲーション装置１００のナビ制御部１０２が出力した設定情報９を記憶する。図３（ａ）の例では、設定情報９に、「目的地：△△」と「経由地：○○」の情報が含まれている。
【００２１】
図３（ｂ）は、ナビゲーション装置１００とユーザとの間で、上から順番に対話が進んでいることを示している。対話内容の中で、各行の行頭の「Ｕ：」はユーザが発話した入力音声２を表し、「Ｓ：」はナビゲーション装置１００からの応答を表している。
【００２２】
図４は、意図理解装置１の各部の出力結果の例である。
図４（ａ）は、音声認識部３が出力する音声認識結果の例を示す。音声認識結果は、「○○は行き先で」といった音声認識結果と、その音声認識結果の尤もらしさを表す尤度との組のリストであり、尤度が高い順に並んでいる。
【００２３】
図４（ｂ）は、図４（ａ）の音声認識結果のうち、１位の音声認識結果「○○は行き先で」に対する意図理解結果候補、スコア、待ち受け重み、および最終スコア、図４（ｃ）は２位の音声認識結果「○○は行かないで」に対するもの、図４（ｄ）は３位の音声認識結果「○△探して」対するものである。意図理解部７は、『経由地設定［施設＝＄施設＄］』といった意図とスコアとの組のリストを、意図理解結果の候補として出力する。これらの意図理解結果候補はスコアが高い順に並んでいる。重み計算部１１は、意図理解部７が出力する意図理解結果候補ごとに、待ち受け重みを計算する。意図理解補正部１２は、意図理解部７が出力する意図理解結果候補ごとに、待ち受け重みを用いて最終スコアを計算する。
【００２４】
図５は、制約条件と待ち受け重みとの対応関係を定義したテーブルである。
例えば、ナビゲーション装置１００の目的地が既に「△△」に設定されている場合、ユーザが次の発話でもう一回「目的地を△△に設定する」という意図の発話をする可能性は低いと考えられる。よって、この制約条件に対して、意図『目的地設定［施設＝＄施設＄（＝△△）］』の待ち受け重みが「０．０」に設定されている。一方、ユーザが目的地を「？」（△△以外の場所）に変更する可能性があるので、意図『目的地設定［施設＝施設＝＄施設＄（＝？）］』の待ち受け重みは「１．０」に設定されている。また、ユーザが目的地と同じ「○○」を経由地に設定する意図の発話をする可能性は低いので、意図『経由地設定［施設＝＄施設＄（＝○○）］』の待ち受け重みは「０．０」に設定されている。さらに、既に設定済みの経由地「○○」をユーザが削除する場合があるため、意図『経由地削除［施設＝＄施設＄（＝○○）］』の待ち受け重みは「１．０」に設定されている。
重み計算部１１は、上記のように意図の発生可能性から事前に定義された待ち受け重みの情報を保持しており、設定情報９に基づいて意図に対応する待ち受け重みを選択する。
【００２５】
意図理解補正部１２は、下記の式（１）を用いて、意図理解部７の意図理解結果の候補を補正する。具体的には、意図理解補正部１２が、音声認識部３から得た音声認識結果の尤度と意図理解部７から得た意図理解結果候補の意図理解スコアとを掛け算してスコアを計算し（図４（ｂ）等に示す「スコア」に相当する）、このスコアと重み計算部１１から得た待ち受け重みとを掛け算して最終スコア（図４（ｂ）等に示す「最終スコア」に相当する）を得る。本実施の形態１では、式（１）のように掛け算を利用した意図理解補正を行うが、この方法に限定されるものではない。
【００２６】
（尤度）×（意図理解スコア）＝（スコア）
（スコア）×（待ち受け重み）＝（最終スコア）
・・・（１）
【００２７】
次に、図６のフローチャートを参照して、意図理解装置１の動作を説明する。
ここで、意図理解装置１は、制御対象であるナビゲーション装置１００に組み込まれており、明示しない対話開始ボタンをユーザが押下すると、対話が開始されるものとする。また、設定情報記憶部１０には、図３（ａ）に示した設定情報９が記憶されているものとして、図３（ｂ）の対話内容について意図理解過程の詳しい説明をする。
【００２８】
ナビ制御部１０２は、ユーザがナビゲーション装置１００の対話開始ボタンを押下したことを検知すると、対話開始を促す応答「ピッと鳴ったらお話ください」を音声出力部１０３から音声出力させ、続けてビープ音を鳴らさせる。また、意図理解装置１は、音声認識部３を認識可能状態にして、ユーザの発話待ち状態になる。
【００２９】
続いて図３（ｂ）のように、ユーザが「○○は行かないで」と発話したとすると、音声入力部１０１がこの発話を音声データに変換し、意図理解装置１の音声認識部３に出力する。意図理解装置１の音声認識部３は、音声認識辞書４を用いて入力音声２をテキストに変換すると共に尤度を算出して、形態素解析部５に出力する（ステップＳＴ１１）。
【００３０】
続いて、形態素解析部５が、形態素解析辞書６を用いて、音声認識結果を形態素解析して、意図理解部７に出力する（ステップＳＴ１２）。例えば、音声認識結果「○○は行き先で」の形態素解析結果は、「○○／名詞、は／助詞、行き先／名詞、で／助詞」のようになる。
【００３１】
続いて、意図理解部７が、意図理解モデル８を用いて、形態素解析結果から意図を推定すると共にスコアを算出して、意図理解結果候補として意図理解補正部１２に出力する（ステップＳＴ１３）。このとき、意図理解部７は、形態素解析結果から意図理解に使う素性を抽出し、その素性を意図理解モデル８と照合して意図を推定する。図４（ａ）の音声認識結果「○○は行き先で」の形態素解析結果からは、「○○、行き先」という素性のリストが抽出され、図４（ｂ）の意図理解結果候補『経由地設定［施設＝＄施設＄（＝○○）］』とそのスコア「０．６２３」、および意図理解結果候補『施設検索［施設＝＄施設＄（＝○○）］』とそのスコア「０．２８６」が得られる。
【００３２】
続いて、重み計算部１１が、設定情報記憶部１０から設定情報９を読み込み、この設定情報９と図５に示したようなテーブルとに基づいて意図ごとの待ち受け重みを選択し、意図理解補正部１２に出力する（ステップＳＴ１４）。
【００３３】
続いて、意図理解補正部１２は、音声認識部３が計算した音声認識結果の尤度と、意図理解部７が計算した意図理解結果候補のスコアと、重み計算部１１が選択した待ち受け重みとを用いて、上式（１）より意図理解結果候補の最終スコアを算出する（ステップＳＴ１５）。このとき、意図理解補正部１２は、音声認識結果の尤度が上位のものから順番に、かつ、同一音声認識結果の中の意図理解結果候補のスコアが上位のものから順番に、最終スコアを計算していき、計算の都度、その最終スコアを評価する。意図理解補正部１２は、例えば最終スコアＸ＝０．５以上のものが見つかった時点で、その意図理解結果候補を最終的な意図理解結果１３にする。
【００３４】
図４の例では、入力音声２「○○は行かないで」に対する１位の音声認識結果「○○は行き先で」について、図４（ｂ）の意図理解結果候補１位『経由地設定［施設＝＄施設＄（＝○○）］』の最終スコアが「０．０」、２位『施設検索［施設＝＄施設＄（＝○○）］』の最終スコアが「０．２８６」となり、いずれの意図理解結果候補も最終スコアがＸ以上の条件を満足しない（ステップＳＴ１６“ＮＯ”）。
【００３５】
そのため、意図理解装置１は、２位の音声認識結果「○○は行かないで」に対して、ステップＳＴ１２〜ＳＴ１５の処理を繰り返し、その結果として、図４（ｃ）の意図理解結果候補１位『経由地削除［施設＝＄施設＄（＝○○）］』の最終スコア「０．５８９」と、２位『施設検索［施設＝＄施設＄（＝○○）］』の最終スコア「０．２３２」を得ることとなる。音声認識結果２位かつ意図理解結果候補１位の『経由地削除［施設＝＄施設＄（＝○○）］』の最終スコア「０．５８９」がＸ以上を満足するので（ステップＳＴ１６“ＹＥＳ”）、この時点で、意図理解補正部１２は、『経由地削除［施設＝＄施設＄（＝○○）］』を最終的な意図理解結果１３としてナビ制御部１０２に返して、処理を終了する。
【００３６】
ナビ制御部１０２は、意図理解結果１３の『経由地削除［施設＝＄施設＄（＝○○）］』を意図理解装置１から受け取ると、音声出力部１０３に指示して、図３（ｂ）のように「経由地○○を削除します。よろしいですか」と音声出力させる。それに対してユーザが「はい」と発話した場合、意図理解装置１は、音声入力部１０１を通じてその発話の入力音声２を受け付け、正しく音声認識および意図理解したと判断する。また、意図理解装置１は、「はい」の入力音声２に対して音声認識および意図理解を行い、意図理解結果１３をナビ制御部１０２に出力する。ナビ制御部１０２は、この意図理解結果１３に従って、経由地「○○」を削除する操作を実行する。
【００３７】
これにより、ナビ制御部１０２において、音声認識結果の最大の尤度および意図理解結果の最大のスコアをもつ『経由地設定［施設＝＄施設＄（＝○○）］』ではなく、『経由地削除［施設＝＄施設＄（＝○○）］』が実行されることになり、誤認識の影響を排除できる。
【００３８】
以上より、実施の形態１によれば、意図理解装置１は、ユーザが自然言語で発話した一の入力音声２を認識して複数の音声認識結果を生成する音声認識部３と、音声認識結果それぞれを形態素列に変換する形態素解析部５と、形態素列に基づいてユーザの発話の意図を推定し一の形態素列から一以上の意図理解結果候補とスコアとを出力する意図理解部７と、意図理解結果候補ごとの待ち受け重みを計算する重み計算部１１と、待ち受け重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し当該最終スコアに基づいて意図理解結果候補の中から意図理解結果１３を選択する意図理解補正部１２とを備える構成にした。このため、入力音声２に対する１位の音声認識結果だけでなく２位以降の音声認識結果も含めた中から最終的な意図理解結果１３を選択することができる。従って、ユーザの意図を正しく理解可能な意図理解装置１を提供することができる。
【００３９】
また、実施の形態１によれば、意図理解部７は、複数の音声認識結果のうちの尤もらしいものから順番に意図理解結果候補を生成していき、意図理解補正部１２は、意図理解部７が意図理解結果候補を生成するつど最終スコアを算出していき当該最終スコアが予め設定された条件Ｘを満足した意図理解結果候補を意図理解結果１３として選択するように構成した。このため、意図理解装置１の演算量を抑えることができる。
【００４０】
また、実施の形態１によれば、重み計算部１１は、意図理解補正部１２が選択した意図理解結果１３に基づいて動作する制御対象機器（例えば、ナビゲーション装置１００）の設定情報９を用いて、待ち受け重みを計算するように構成した。具体的には、重み計算部１１が、制約条件と当該制約条件を満足した場合の待ち受け重みとを定義した図５のようなテーブルを有し、設定情報９に基づいて制約条件を満足するか否かを判断して待ち受け重みを選択するように構成した。このため、制御対象機器の状況に応じた適切な意図を推定可能である。
【００４１】
実施の形態２．
図７は、実施の形態２に係る意図理解装置２０の構成を示すブロック図である。図７において図１と同一または相当の部分については同一の符号を付し説明を省略する。この意図理解装置２０は、意図を階層的に表現した階層木２１と、階層木２１の意図のうちの活性化している意図に基づいて待ち受け重みを計算する重み計算部２２とを備える。
【００４２】
図８は、実施の形態２における対話の例である。図３（ｂ）と同様に、行頭の「Ｕ：」はユーザ発話、「Ｓ：」は制御対象の装置（例えば、図２に示すナビゲーション装置１００）からの応答を表している。
【００４３】
図９は、意図理解装置１の各部の出力結果の例である。図９（ａ）は、音声認識部３が出力する音声認識結果とその尤度である。図９（ｂ）〜図９（ｄ）は、意図理解部７が出力する意図理解結果の候補とそのスコア、重み計算部２２が出力する待ち受け重み、および意図理解補正部１２が出力する最終スコアである。図９（ａ）の１位の音声認識結果「○○を行かないって」の意図理解結果候補を図９（ｂ）に、２位の音声認識結果「○○を経由して」の意図理解結果候補を図９（ｃ）に、３位の音声認識結果「○○を行き先にして」の意図理解結果候補を図９（ｄ）に示す。
【００４４】
図１０および図１１は、階層木２１の例である。図１０に示すように、階層木２１は、意図を表すノードが階層構造になっており、根（上の階層）に行くほど抽象的な意図を表すノードになり、葉（下の階層）に行くほど具体的な意図を表すノードになる。例えば第３階層のノード＃９の『目的地設定［施設＝？］』と、第４階層のノード＃１６の『目的設定［施設＝＄施設＄（＝○○店）］』の２つの意図を見比べると、上位の階層により抽象的な意図を表すノード＃９が存在し、その下に具体的なスロット値（例えば、○○店）が埋まった意図を表すノード＃１６が位置付けられている。
第１階層に位置付けられているノード＃１の意図『ナビ』は、ナビ制御部１０２のナビゲーション機能のまとまりを表す抽象的なノードであり、その下の第２階層に、個別のナビゲーション機能を表すノード＃２〜＃５が位置付けられている。例えばノード＃４の意図『目的地設定［］』は、ユーザが目的地を設定したいが具体的な場所については決まっていない状態を表している。目的地が設定された状態になると、ノード＃４からノード＃９またはノード＃１６へ遷移することとなる。図１０の例では、図８に示した「行き先を設定する」というユーザの発話に従って、ノード＃４が活性化している状態を示している。
階層木２１は、ナビゲーション装置１００が出力した情報に応じて、意図ノードを活性化させる。
【００４５】
図１２は、重み計算部２２が計算した待ち受け重みの例である。
「行き先を設定する」というユーザ発話によって、階層木２１のノード＃４の意図『目的地設定［］』が活性化したため、ノード＃４の枝葉方向のノード＃９，＃１０の意図の待ち受け重みが１．０になり、他の意図ノードの待ち受け重みが０．５になっている。
重み計算部２２による待ち受け重みの計算方法は後述する。
【００４６】
図１３は、意図理解装置２０の動作を示すフローチャートである。図１３のステップＳＴ１１〜ＳＴ１３，ＳＴ１５，ＳＴ１６は、図６のステップＳＴ１１〜ＳＴ１３，ＳＴ１５，ＳＴ１６の処理と同じである。
ステップＳＴ２０では、重み計算部２２が階層木２１を参照して、意図理解部７の意図理解結果候補の待ち受け重みを計算し、意図理解補正部１２に出力する。
【００４７】
図１４は、図１３のステップＳＴ２０の具体的な動作を示すフローチャートである。ステップＳＴ２１では、重み計算部２２が、意図理解部７の意図理解結果候補と、階層木２１の活性化された意図とを比較する。意図理解部７の意図理解結果候補が、階層木２１の活性化された意図の枝葉方向に位置する場合（ステップＳＴ２２“ＹＥＳ”）、重み計算部２２は待ち受け重みを第１の重みａにする（ステップＳＴ２３）。一方、意図理解部７の意図理解結果候補が、階層木２１の活性化された意図の枝葉方向以外に位置する場合（ステップＳＴ２２“ＮＯ”）、重み計算部２２は待ち受け重みを第２の重みｂにする（ステップＳＴ２４）。本実施の形態２では、ａ＝１，０、ｂ＝０．５とする。また、活性化された意図ノードが存在しない場合、待ち受け重みを１．０にする。
【００４８】
次に、意図理解装置２０の動作を説明する。
意図理解装置２０の動作の基本は、上記実施の形態１の意図理解装置１の動作と同じである。本実施の形態２と上記実施の形態１との違いは、待ち受け重みの計算方法である。
【００４９】
以下では、図８に示した対話内容について意図理解過程を詳しく説明する。上記実施の形態１と同様に、制御対象であるナビゲーション装置１００（図２に示す）の中に意図理解装置２０が組み込まれている場合を想定する。また、不図示の発話開始ボタンがユーザにより押下されると、対話が開始されるものとする。図８の最初のユーザ発話「行き先を設定する」の時点では、ナビゲーション装置１００がユーザからの情報を何も取得していないので、意図理解装置２０の階層木２１には活性化した意図ノードが無い状態である。
なお、階層木２１は、意図理解補正部１２が出力した意図理解結果１３に基づいて意図ノードを活性化している。
【００５０】
対話開始後、ユーザが「行き先を設定する」と発話したとすると、その発話の入力音声２が意図理解装置２０に入力される。この入力音声２が、音声認識部３で認識され（ステップＳＴ１１）、形態素解析部５で形態素に分解され（ステップＳＴ１２）、意図理解部７で意図理解結果候補が算出される（ステップＳＴ１３）。ここでは、ユーザ発話「行き先を設定する」が誤認識無く正しく認識され、その意図が正しく理解されたものとして、意図理解補正部１２が『目的地設定［］』の意図理解結果１３を得る。ナビ制御部１０２は、目的地に設定する施設を具体的にするために、音声出力部１０３に指示して「目的地を設定します。場所をお話ください」と音声出力させる。また、階層木２１は、意図理解結果１３の『目的地設定［］』に該当するノード＃４を活性化する。
【００５１】
ナビゲーション装置１００が次の発話を促す応答をしたので、ユーザとの対話が継続し、図８のようにユーザが「○○を行き先にして」と発話したとする。意図理解装置２０は、そのユーザ発話「○○を行き先にして」に対してステップＳＴ１１，ＳＴ１２の処理を行う。その結果、図９（ａ）の音声認識結果「○○を行かないって」、「○○を経由して」、「○○を行き先にして」のそれぞれの形態素解析結果が得られたとする。続いて、意図理解部７が、形態素解析結果から意図を推定する（ステップＳＴ１３）。ここで、意図理解結果の候補が、図９（ｂ）の『経由地削除［施設＝＄施設＄（＝○○）］』と『目的地設定［施設＝＄施設＄（＝○○）］』になったこととする。
【００５２】
続いて、重み計算部２２が、階層木２１を参照して待ち受け重みを計算する（ステップＳＴ２０）。この時点では、階層木２１のノード＃４が活性化状態であり、この状態に応じて重み計算部２２で重みが計算される。
まずステップＳＴ２１で、活性化したノード＃４の情報が階層木２１から重み計算部２２に渡されると共に、意図理解結果候補『経由地削除［施設＝＄施設＄（＝○○）］』と『目的地設定［施設＝＄施設＄（＝○○）］』が意図理解部７から重み計算部２２に渡される。重み計算部２２は、活性化したノード＃４の意図と意図理解結果候補とを比較し、意図理解結果候補が活性化ノード＃４の枝葉方向に位置する（つまり、ノード＃９およびノード＃１０）の場合（ステップＳＴ２２“ＹＥＳ”）、待ち受け重みを第１の重みａにする（ステップＳＴ２３）。一方、意図理解結果候補が活性化ノード＃４の枝葉方向以外に位置する場合（ステップＳＴ２２“ＮＯ”）、重み計算部２２は、待ち受け重みを第２の重みｂにする（ステップＳＴ２４）。
第１の重みａは、第２の重みｂより大きい値とする。例えばａ＝１．０、ｂ＝０．５とした場合、待ち受け重みは図９（ｂ）に示すとおりになる。
【００５３】
続いて、意図理解補正部１２は、音声認識部３が計算した音声認識結果の尤度と、意図理解部７が計算した意図理解結果候補のスコアと、重み計算部２２が計算した待ち受け重みとを用いて、上式（１）より意図理解結果候補の最終スコアを算出する（ステップＳＴ１５）。最終スコアは、図９（ｂ）に示すとおりである。
【００５４】
続いて、意図理解補正部１２は、上記実施の形態１と同様に、最終スコアが条件Ｘ以上を満足するかどうかを判定する（ステップＳＴ１６）。ここでもＸ＝０．５を条件とすると、音声認識結果１位「○○を行かないって」に対する図９（ｂ）の意図理解結果候補『経由地削除［施設＝＄施設＄（＝○○）］』の最終スコア「０．３１４」と『目的地設定［施設＝＄施設＄（＝○○）］』の最終スコア「０．１２７」は、どちらも条件を満足しない。
【００５５】
そのため、意図理解装置２０は、音声認識結果２位の「○○を経由して」に対して、ステップＳＴ１２〜ＳＴ１４，ＳＴ２０，ＳＴ１５の処理を繰り返す。その結果として、図９（ｃ）のように意図理解結果候補『経由地削除［施設＝＄施設＄（＝○○）］』の最終スコア「０．２９５」と、『施設検索［施設＝＄施設＄（＝○○）］』の最終スコア「０．１１６」が求まるが、これらもＸ以上の条件を満足しない。
【００５６】
そのため、意図理解装置２０は、音声認識結果３位の「○○を行き先にして」に対して、ステップＳＴ１２，ＳＴ１３，ＳＴ２０，ＳＴ１５の処理を繰り返し、その結果として、図９（ｄ）のように意図理解結果候補『目的地設定［施設＝＄施設＄（＝○○）］』の最終スコア「０．５３８」が求まる。この最終スコアはＸ以上の条件を満足するので、意図理解補正部１２は、『目的地設定［施設＝＄施設＄（＝○○）］』を最終的な意図理解結果１３として出力する。階層木２１は、意図理解結果１３に基づいてノード＃１６を活性化する。
【００５７】
ナビ制御部１０２は、意図理解結果１３の『目的地設定［施設＝＄施設＄（＝○○）］』を意図理解装置２０から受け取ると、音声出力部１０３に指示して、図８のように「○○を目的地に設定します。よろしいですか」と音声出力させる。それに対してユーザが「はい」と発話した場合、意図理解装置２０は、音声入力部１０１を通じてその発話の入力音声２を受け付け、正しく音声認識および意図理解したと判断する。また、意図理解装置２０は、「はい」の入力音声２に対して音声認識および意図理解を行い、意図理解結果１３をナビ制御部１０２に出力する。ナビ制御部１０２は、この意図理解結果１３に従って「○○」を目的地に設定して、音声出力部１０３から「○○を目的地にしました」と音声出力させ、ユーザに目的地設定がなされたことを通知する。
【００５８】
以上より、実施の形態２によれば、重み計算部２２は、ユーザとの対話の流れから期待される意図に該当する意図理解結果候補が意図理解補正部１２において選択されやすくなるよう重み付けする構成にした。このため、ユーザと制御対象機器との対話の状況に応じた適切な意図を推定可能である。
【００５９】
また、実施の形態２によれば、意図理解装置２０は、ユーザの意図を根に行くほど抽象的な意図、葉に行くほど具体的な意図になる木構造で表現した階層木２１を備え、重み計算部２２は、階層木２１に基づいて、直前に選択された意図理解結果１３に該当する意図から枝葉の方向に位置する意図理解結果候補が選択されやすくなるよう重み付けする構成にした。このように、意図の階層性を利用してユーザ発話に対する意図を補正することで、適切な音声認識結果および意図理解結果を元に制御対象機器を動作させることが可能となる。
【００６０】
実施の形態３．
図１５は、実施の形態３に係る意図理解装置３０の構成を示すブロック図である。図１５において図１および図５と同一または相当の部分については同一の符号を付し説明を省略する。この意図理解装置３０は、意図と対応するキーワードを記憶しているキーワードテーブル３１と、形態素解析結果に対応する意図をキーワードテーブル３１から検索するキーワード検索部３２と、キーワードに対応する意図を階層木２１の活性化した意図と比較して待ち受け重みを計算する重み計算部３３とを備える。
【００６１】
図１６は、キーワードテーブル３１の一例である。キーワードテーブル３１は、意図とキーワードの組を記憶している。例えば、意図『目的地設定［］』に対して、「行き先」、「行く」、「目的地」など、意図の特徴的な表現となるキーワードが付与されている。キーワードは、階層木２１の第１階層のノード＃１を除く、第２階層以下の各ノードの意図に対して付与されている。
以下では、キーワードに対応する意図をキーワード対応意図と呼ぶ。また、階層木２１の活性化した意図ノードに対応する意図を階層木対応意図と呼ぶ。
【００６２】
図１７は、音声認識部３が出力する音声認識結果、音声認識結果に含まれるキーワード、キーワード検索部３２が検索したキーワード対応意図の例である。音声認識結果「○○を行かないって」のキーワード「行かない」に対応するキーワード対応意図は『経由地削除［］』、音声認識結果「○○を経由して」のキーワード「経由」に対応するキーワード対応意図は『経由地設定［］』、音声認識結果「○○を行き先にして」のキーワード「行き先」に対応するキーワード対応意図は『目的地設定［］』となる。
【００６３】
図１８（ａ）は、音声認識部３が出力する音声認識結果とその尤度の例である。図１８（ｂ）〜図１８（ｄ）は、意図理解部７が出力する意図理解結果候補とそのスコア、重み計算部３３が出力する待ち受け重み、および意図理解補正部１２が出力する最終スコアである。図１８（ａ）の１位の音声認識結果「○○を行かないって」の意図理解結果候補を図１８（ｂ）に、２位の音声認識結果「○○を経由して」の意図理解結果候補を図１８（ｃ）に、３位の音声認識結果「○○を行き先にして」の意図理解結果候補を図１８（ｄ）に示す。
【００６４】
図１９は、意図理解装置３０の動作を示すフローチャートである。図１９のステップＳＴ１１〜ＳＴ１３，ＳＴ１５，ＳＴ１６は、図６のステップＳＴ１１〜ＳＴ１３，ＳＴ１５，ＳＴ１６の処理と同じである。
ステップＳＴ３０では、キーワード検索部３２が形態素解析結果に該当するキーワードをキーワードテーブル３１の中から検索し、検索したキーワードに対応付けられたキーワード対応意図を取得する。キーワード検索部３２は、取得したキーワード対応意図を重み計算部３３へ出力する。
【００６５】
図２０は、図１９のステップＳＴ３１の具体的な動作を示すフローチャートである。ステップＳＴ３２では、重み計算部３３が、意図理解部７の意図理解結果候補と、階層木２１の活性化された階層木対応意図と、キーワード検索部３２のキーワード対応意図とを比較する。意図理解結果候補が、キーワード対応意図と階層木対応意図のどちらとも一致しない場合（ステップＳＴ３２“ＮＯ”）、重み計算部３３は待ち受け重みを第３の重みｃにする。
意図理解結果候補が階層木対応意図に一致する場合（ステップＳＴ３２“ＹＥＳ”かつステップＳＴ３４“ＹＥＳ”）、重み計算部３３は待ち受け重みを第４の重みｄにする（ステップＳＴ３５）。なお、ステップＳＴ３４“ＹＥＳ”では意図理解結果候補が階層木対応意図とキーワード対応意図の両方に一致している場合も有り得る。
意図理解結果候補が階層木対応意図に一致せずキーワード対応意図のみに一致する場合（ステップＳＴ３４“ＮＯ”）、重み計算部３３は待ち受け重みを第５の重みｅにする（ステップＳＴ３６）。
【００６６】
本実施の形態３では、ｃ＝０．０、ｄ＝１．０、ｅ＝０．５とする。つまり、意図理解結果候補が階層木対応意図に一致するなら待ち受け重みは１．０になり、階層木対応意図に一致せずキーワード対応意図に一致するなら０．５になり、階層木対応意図にもキーワード対応意図にも一致しないなら０．０になる。
【００６７】
次に、意図理解装置３０の動作を説明する。
意図理解装置３０の動作の基本は、上記実施の形態１，２の意図理解装置１，２０の動作と同じである。本実施の形態３と上記実施の形態１，２との違いは、待ち受け重みの計算方法である。
【００６８】
以下では、図８に示した対話内容のうち、ユーザ発話「○○を行き先にして」の意図理解過程を詳しく説明する。上記実施の形態１，２と同様に、制御対象であるナビゲーション装置１００（図２に示す）の中に意図理解装置３０が組み込まれている場合を想定する。
また、階層木２１は、図１０および図１１を援用する。
【００６９】
ユーザ発話「○○を行き先にして」の入力音声２は、音声認識部３で認識され（ステップＳＴ１１）、形態素解析部５で形態素に分解され（ステップＳＴ１２）、意図理解部７で意図理解結果の候補が算出される（ステップＳＴ１３）。そして、図１８（ｂ）のような意図理解結果候補『経由地削除［施設＝＄施設＄（＝○○）］』とそのスコア「０．６２３」、および『目的地設定［施設＝＄施設＄（＝○○）］』とそのスコア「０．１２７」が得られる。
【００７０】
続いて、キーワード検索部３２は、形態素解析部５の形態素解析結果に該当するキーワードをキーワードテーブル３１の中から検索し、検索したキーワードに対応するキーワード対応意図を取得する。「○○を行かないって」の形態素解析結果には、図１６の「行かない」というキーワードが存在するため、キーワード対応意図は『経由地削除［］』となる。
【００７１】
続いて、重み計算部３３が、待ち受け重みを計算する（ステップＳＴ３１）。この時点では、階層木２１のノード＃４が活性化状態であり、ノード＃４の階層木対応意図は『目的地設定［］』である。
まずステップＳＴ３２で、階層木２１が重み計算部３３に対して、活性化したノード＃４の階層木対応意図『目的地設定［］』を出力する。また、意図理解部７が重み計算部３３に対して、ユーザ発話「○○を行かないって」の意図理解結果候補１位『経由地削除［施設＝＄施設＄（＝○○）］』を出力する。さらに、キーワード検索部３２が重み計算部３３に対して、キーワード対応意図『経由地削除［］』を出力する。
【００７２】
意図理解結果候補１位『経由地削除［施設＝＄施設＄（＝○○）］』は、キーワード対応意図『経由地削除［］』と一致しているので（ステップＳＴ３２“ＹＥＳ”かつステップＳＴ３４“ＮＯ”）、重み計算部３３は、意図理解結果候補１位の待ち受け重みを第５の重みｅ（＝０．５）にする（ステップＳＴ３５）。
ここでは、重み計算部３３が階層木２１の親子関係も含めて一致を判断しており、『経由地削除［施設＝＄施設＄（＝○○）］』は『経由地削除［］』の子供なので一致と判断される。
【００７３】
一方、意図理解結果候補２位『目的地設定［施設＝＄施設＄（＝○○）］』は、階層木対応意図『目的地設定［］』と一致するので（ステップＳＴ３２“ＹＥＳ”かつステップＳＴ３４“ＹＥＳ”）、重み計算部３３は、意図理解結果候補２位の待ち受け重みを第４の重みｄ（＝１．０）にする（ステップＳＴ３６）。
【００７４】
最終的に、図１８（ｂ）のように、１位の音声認識結果「○○を行かないって」に対する１位の意図理解結果候補『経由地削除［施設＝＄施設＄（＝○○）］』の最終スコア「０．３１２」、２位の意図理解結果候補『目的地設定［施設＝＄施設＄（＝○○）］』の最終スコア「０．１２７」が求まる。１位、２位ともに最終スコアがＸ以上の条件を満足しないので、意図理解装置３０は、２位の音声認識結果「○○を経由して」に対してステップＳＴ１２，ＳＴ１３，ＳＴ３０，ＳＴ３１，ＳＴ１５の処理を行う。
その結果、図１８（ｃ）のように、「○○を経由して」の意図理解結果候補１位『経由地削除［施設＝＄施設＄（＝○○）］』および２位『施設検索［施設＝＄施設＄（＝○○）］』はそれぞれ待ち受け重み「０．０」（＝ｃ）が設定され、最終スコアはそれぞれ「０．０」となり、ここでもＸ以上の条件を満足しない。
そのため、処理対象が３位の音声認識結果「○○を行き先にして」に移り、図１８（ｄ）のように、意図理解結果候補１位『目的地設定［施設＝＄施設＄（＝○○）］』の最終スコアがＸ以上の条件を満足するので意図理解結果１３として出力される。よって、上記実施の形態２と同様に「○○」が目的地に設定される。
【００７５】
以上より、実施の形態３によれば、意図理解装置３０は、意図とキーワードとの対応関係が定義されたキーワードテーブル３１の中から形態素列に一致するキーワードを検索し、当該検索したキーワードに対応するキーワード対応意図を取得するキーワード検索部３２を備え、重み計算部３３は、階層木対応意図とキーワード対応意図とを用いて待ち受け重みを計算するように構成した。このため、意図の階層性と意図の特徴的な表現となるキーワードとを利用してユーザ発話に対する意図を補正でき、適切な音声認識結果および意図理解結果を元に制御対象機器を動作させることが可能となる。
【００７６】
なお、上記実施の形態１〜３では、日本語の例を説明したが、意図理解に関する素性抽出方法をそれぞれの言語ごとに変更することで、英語、ドイツ語、および中国語など様々な言語に対して適用することが可能である。
【００７７】
また、単語が特定のシンボル（例えば、スペース）で区切られる言語の場合に、言語的な構造を解析することが難しければ、入力音声２の自然言語テキストに対してパターンマッチのような方法で「＄施設＄」、「＄住所＄」などのスロット値を抽出したあと、直接意図理解処理を実行することも可能である。
【００７８】
さらに、上記実施の形態１〜３では、音声認識結果のテキストを形態素解析部５で解析することで意図理解処理の準備をしたが、音声認識部３の認識方法によっては音声認識結果自体が形態素解析結果を含む場合があり、その場合は形態素解析部５と形態素解析辞書６を省略して、音声認識処理のあと直接意図理解処理を実行することが可能である。
【００７９】
また、上記実施の形態１〜３では意図理解の方法として、最大エントロピ法による学習モデルを想定した例で説明したが、意図理解の方法を限定するものではない。
【００８０】
加えて、上記実施の形態３では、重み計算部３３が階層木対応意図とキーワード対応意図とを使用して待ち受け重みを計算する構成にしたが、階層木２１を使用せずに、形態素解析結果の中にキーワードテーブル３１のキーワードが出現する回数に応じて意図理解結果候補のスコアを変更することによっても、待ち受け重みを計算することが可能である。
例えば「行かない」、「経由」といった意図を特定するのに重要な単語がユーザ発話に現われた場合、意図理解部７は通常はユーザ発話「○○へは行かない」に対して「○○、行かない」という素性を使って意図理解処理を行う。これに代えて、「○○、行かない、行かない」という風にキーワードテーブル３１にあるキーワードを重ねることにより、意図理解部７が意図を推定する際に「行かない」の個数に応じて重み付けしたスコアを算出することが可能となる。
【００８１】
また、上記実施の形態１〜３では、複数の音声認識結果のうちの尤度が高いものから順番に意図理解処理を行っていき、最終スコアがＸ以上の条件を満足する意図理解結果候補が見つかった時点で処理を終了したが、意図理解装置の演算処理に余裕がある場合は、全ての音声認識結果に対して意図理解処理を行って意図理解結果１３を選択する方法も可能である。
【００８２】
さらに、上記実施の形態１〜３では、意図理解結果１３に対応する操作を実行する前にユーザに実行してよいか確認していたが（例えば、図３（ｂ）の「経由地○○を削除します。よろしいですか」）、意図理解結果１３の最終スコアに応じて確認するかしないかを変更することも可能である。
また例えば、音声認識結果１位の意図理解結果候補が意図理解結果１３として選択された場合には確認せず、２位以降の意図理解結果候補が意図理解結果１３として選択された場合には確認するなど、順位に応じて確認するかしないかを変更することも可能である。
また例えば、待ち受け重みで補正する前のスコアが最も高い意図理解結果候補が意図理解結果１３として選択された場合には確認せず、それより低いスコアの意図理解結果候補が意図理解結果１３として選択された場合には確認するなど、スコアの大小に応じて確認するかしないかを変更することも可能である。
【００８３】
ここで、図２１に意図理解装置４０の変形例を示す。意図理解装置４０は、ユーザが発話した音声を信号に変換して入力音声として取得する音声入力部４１と、意図理解補正部１２が最も尤もらしい意図理解結果候補（つまり、待ち受け重みで補正する前のスコアが大きい意図理解結果候補）を排除しそれ以外の意図理解結果候補を意図理解結果１３として選択した場合に当該意図理解結果１３を採用するか否かをユーザに確認して採用可否を決定する意図確認処理部４２と、意図確認処理部４２が生成した意図理解結果確認用の音声信号を出力する音声出力部４３とを備える。これら音声入力部４１、意図確認処理部４２、および音声出力部４３は、図２に示した音声入力部１０１、ナビ制御部１０２、および音声出力部１０３と同じ役割を果たし、例えば図３（ｂ）のような「経由地○○を削除します。よろしいですか」という音声出力により、意図理解結果１３の採用可否をユーザに確認する。
なお、ユーザへの確認方法は音声出力の他、画面表示などでもよい。
【００８４】
加えて、上記実施の形態２，３では、意図の階層性を階層木２１の木構造で表現したが、必ずしも完全な木構造である必要は無く、ループ構造を含まないグラフ構造であれば同様の処理が可能である。
【００８５】
さらに、上記実施の形態２，３では、意図理解処理に今回のユーザ発話のみを利用しているが、階層木２１の階層遷移途中での発話の場合には、今回より前のユーザ発話を含めた複数の発話から抽出した素性を使用して意図理解処理を行ってもよい。これにより、複数の部分発話によって得られた部分的な情報からは推定することが難しい意図を推定することができる。
【００８６】
ここで、図２２に示す対話内容を例に用いて説明する。
上記実施の形態２の場合、最初のユーザ発話「行き先を設定する」からは「行き先、設定」が素性として抽出される。また、２番目の発話「○○」からは「＄施設＄（＝○○）」が素性として抽出される。結果として、通常は２番目の発話では「＄施設＄（＝○○）」だけを使用して意図理解処理が行われることになる（図１３のステップＳＴ１３）。
一方、階層遷移途中か否かを考慮した場合、最初の発話「行き先を設定する」が階層木２１のノード＃４であり、２番目の発話はノード＃４と親子関係になる可能性が高いので、２番目の発話に対して「行き先、設定、＄施設＄（＝○○）」の３素性を使用して意図理解処理を行うことで、より適切な意図理解結果が得られるようになる。
【００８７】
また、上記実施の形態１〜３では、意図理解装置の制御対象機器として図２のナビゲーション装置１００を例に挙げたが、ナビゲーション装置に限定されるものではない。また、図２では意図理解装置が制御対象機器に内蔵されているが、外付けでもよい。
【００８８】
上記以外にも、本発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【産業上の利用可能性】
【００８９】
以上のように、この発明に係る意図理解装置は、入力音声を使用してユーザの意図を推定するようにしたので、手動で操作しにくいカーナビゲーション装置などの音声インタフェースに用いるのに適している。
【符号の説明】
【００９０】
１，２０，３０，４０  意図理解装置、２  入力音声、３  音声認識部、４  音声認識辞書、５  形態素解析部、６  形態素解析辞書、７  意図理解部、８  意図理解モデル、９  設定情報、１０  設定情報記憶部、１１，２２，３３  重み計算部、１２  意図理解補正部、１３  意図理解結果、２１  階層木、３１  キーワードテーブル、３２  キーワード検索部、４１，１０１  音声入力部、４３，１０３  音声出力部、４２  意図確認処理部、１００  ナビゲーション装置、１０２  ナビ制御部。
【図１】
2015151157.tif 000003
【図２】
2015151157.tif 000004
【図３】
2015151157.tif 000005
【図４】
2015151157.tif 000006
【図５】
2015151157.tif 000007
【図６】
2015151157.tif 000008
【図７】
2015151157.tif 000009
【図８】
2015151157.tif 000010
【図９】
2015151157.tif 000011
【図１０】
2015151157.tif 000012
【図１１】
2015151157.tif 000013
【図１２】
2015151157.tif 000014
【図１３】
2015151157.tif 000015
【図１４】
2015151157.tif 000016
【図１５】
2015151157.tif 000017
【図１６】
2015151157.tif 000018
【図１７】
2015151157.tif 000019
【図１８】
2015151157.tif 000020
【図１９】
2015151157.tif 000021
【図２０】
2015151157.tif 000022
【図２１】
2015151157.tif 000023
【図２２】
2015151157.tif 000024
【手続補正書】
【提出日】平成28年3月8日(2016.3.8)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
この発明に係る意図理解装置は、ユーザが自然言語で発話した一の音声を認識して、認識スコアの高い上位の複数の音声認識結果を生成する音声認識部と、音声認識結果それぞれを形態素列に変換する形態素解析部と、形態素列に基づいてユーザの発話の意図を推定し、一の形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力し、複数の音声認識結果のうちの尤もらしいものから順番に意図理解結果候補を生成する意図理解部と、意図理解結果候補ごとの重みを計算する重み計算部と、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアが予め設定された条件を最初に満足した前記意図理解結果候補を前記意図理解結果として選択する意図理解補正部とを備えるものである。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
この発明に係る意図理解方法は、ユーザが自然言語で発話した一の音声を認識して、認識スコアの高い上位の複数の音声認識結果を生成する音声認識ステップと、音声認識結果それぞれを形態素列に変換する形態素解析ステップと、形態素列に基づいてユーザの発話の意図を推定し、一の形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力し、複数の音声認識結果のうちの尤もらしいものから順番に意図理解結果候補を生成する意図理解ステップと、意図理解結果候補ごとの重みを計算する重み計算ステップと、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアが予め設定された条件を最初に満足した意図理解結果候補を意図理解結果として選択する意図理解補正ステップとを備えるものである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
この発明によれば、一の音声から認識スコアの高い上位の複数の音声認識結果を生成し、複数の音声認識結果のうちの尤もらしいものから順番に意図理解結果候補を生成し、重みを用いて意図理解結果候補のスコアを補正して最終スコアを算出し、当該最終スコアが予め設定された条件を最初に満足した意図理解結果候補を意図理解結果として選択するようにしたので、入力音声に対する音声認識結果の第１候補だけでなく次候補も含めた中から最終的な意図理解結果を選択することができる。従って、ユーザの意図を正しく理解可能な意図理解装置を提供することができる。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザが自然言語で発話した一の音声を認識して、認識スコアの高い上位の複数の音声認識結果を生成する音声認識部と、
前記音声認識結果それぞれを形態素列に変換する形態素解析部と、
前記形態素列に基づいて前記ユーザの発話の意図を推定し、一の前記形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力し、前記複数の音声認識結果のうちの尤もらしいものから順番に前記意図理解結果候補を生成する意図理解部と、
前記意図理解結果候補ごとの重みを計算する重み計算部と、
前記重みを用いて前記意図理解結果候補の前記スコアを補正して最終スコアを算出し、当該最終スコアが予め設定された条件を最初に満足した前記意図理解結果候補を前記意図理解結果として選択する意図理解補正部を備える意図理解装置。
【請求項２】
前記重み計算部は、前記意図理解補正部が選択した前記意図理解結果に基づいて動作する制御対象機器の設定情報を用いて、前記重みを計算することを特徴とする請求項１記載の意図理解装置。
【請求項３】
前記重み計算部は、制約条件と当該制約条件を満足した場合の前記重みとを定義した情報を有し、前記制御対象機器の設定情報に基づいて前記制約条件を満足するか否かを判断して前記重みを選択することを特徴とする請求項２記載の意図理解装置。
【請求項４】
前記重み計算部は、前記ユーザとの対話の流れから期待される意図に該当する前記意図理解結果候補が前記意図理解補正部において選択されやすくなるよう重み付けすることを特徴とする請求項１記載の意図理解装置。
【請求項５】
前記ユーザの意図を、根に行くほど抽象的な意図、葉に行くほど具体的な意図になる木構造で表現した階層木を備え、
前記重み計算部は、前記階層木に基づいて、直前に選択された前記意図理解結果に該当する意図から枝葉の方向に位置する前記意図理解結果候補が選択されやすくなるよう重み付けすることを特徴とする請求項４記載の意図理解装置。
【請求項６】
前記意図理解部は、今回の発話から生成された前記形態素列に加えて、今回より前の発話から生成された前記形態素列も用いて前記ユーザの意図を推定することを特徴とする請求項５記載の意図理解装置。
【請求項７】
意図とキーワードとの対応関係が定義されたキーワードテーブルの中から、前記形態素列に一致するキーワードを検索し、当該検索したキーワードに対応する前記意図を取得するキーワード検索部を備え、
前記重み計算部は、前記階層木と前記キーワード検索部が取得した前記意図とを用いて前記重みを計算することを特徴とする請求項５の意図理解装置。
【請求項８】
前記意図理解補正部が最も尤もらしい前記意図理解結果候補を排除しそれ以外の前記意図理解結果候補を前記意図理解結果として選択した場合に、当該意図理解結果を採用するか否かを前記ユーザに確認して採用可否を決定する意図確認処理部を備えることを特徴とする請求項１記載の意図理解装置。
【請求項９】
ユーザが自然言語で発話した一の音声を認識して、認識スコアの高い上位の複数の音声認識結果を生成する音声認識ステップと、
前記音声認識結果それぞれを形態素列に変換する形態素解析ステップと、
前記形態素列に基づいて前記ユーザの発話の意図を推定し、一の前記形態素列から一以上の意図理解結果候補と尤もらしさの度合いを表すスコアとを出力し、前記複数の音声認識結果のうちの尤もらしいものから順番に前記意図理解結果候補を生成する意図理解ステップと、
前記意図理解結果候補ごとの重みを計算する重み計算ステップと、
前記重みを用いて前記意図理解結果候補の前記スコアを補正して最終スコアを算出し、当該最終スコアが予め設定された条件を最初に満足した前記意図理解結果候補を前記意図理解結果として選択する意図理解補正ステップとを備える意図理解方法。
【国際調査報告】
2015151157.tif 000025
2015151157.tif 000026
2015151157.tif 000027
2015151157.tif 000028