(57)【要約】  使用者が自然言語により入力したテキストを解析する形態素解析部１０５と、単語と、当該単語から推定される使用者の意図とを対応付けて記憶した意図推定モデルを参照し、形態素解析部１０５のテキスト解析結果から使用者の意図を推定する意図推定処理部１０７と、意図推定処理部１０７において使用者の意図を一意に特定できない場合に、テキスト解析結果から意図推定モデルに記憶されていない単語を未知語として抽出する未知語抽出部１０８と、未知語抽出部１０８が抽出した未知語を含む応答文を生成する応答文生成部１１０とを備える。
2016067418.tif 000002
【特許請求の範囲】
【請求項１】
使用者が自然言語により入力したテキストを解析するテキスト解析部と、
単語と、当該単語から推定される前記使用者の意図とを対応付けて記憶した意図推定モデルを参照し、前記テキスト解析部のテキスト解析結果から前記使用者の意図を推定する意図推定処理部と、
前記意図推定処理部において前記使用者の意図を一意に特定できない場合に、前記テキスト解析結果から前記意図推定モデルに記憶されていない単語を未知語として抽出する未知語抽出部と、
前記未知語抽出部が抽出した前記未知語を含む応答文を生成する応答文生成部とを備えた対話制御装置。
【請求項２】
前記テキスト解析部は、前記入力されたテキストを形態素解析により単語に分割し、
前記未知語抽出部は、前記テキスト解析部が分割した単語のうち、前記意図推定モデルに記憶されていない自立語を前記未知語として抽出することを特徴とする請求項１記載の対話制御装置。
【請求項３】
前記応答文生成部は、前記未知語抽出部が抽出した未知語により前記使用者の意図が一意に特定できなかったことを示す前記応答文を生成することを特徴とする請求項１記載の対話制御装置。
【請求項４】
前記未知語抽出部は、前記自立語のうち特定の品詞のみを前記未知語として抽出することを特徴とする請求項２記載の対話制御装置。
【請求項５】
前記未知語抽出部は、前記テキスト解析部の形態素解析結果を文節単位に分割し、前記分割した複数の文節間の係り受け関係を解析する構文解析を行い、当該構文解析結果を参照して前記自立語のうち、前記意図推定処理部が推定した前記使用者の意図に対して頻出すると定義付けられた単語と係り受け関係を有する自立語を、前記未知語として抽出することを特徴とする請求項２記載の対話制御装置。
【請求項６】
使用者が自然言語により入力したテキストを解析するテキスト解析部と、
単語と、当該単語から推定される前記使用者の意図とを対応付けて記憶した意図推定モデルを参照し、前記テキスト解析部のテキスト解析結果から前記使用者の意図を推定する意図推定処理部と、
前記意図推定処理部において前記使用者の意図を一意に特定できない場合に、前記テキスト解析結果から前記意図推定モデルに記憶されていない単語を未知語として抽出し、１以上の未知語が抽出された場合に、前記テキスト解析結果のうち前記未知語以外の単語を既知語として抽出する既知語抽出部と、
前記既知語抽出部が抽出した前記既知語を含む応答文を生成する応答文生成部とを備えた対話制御装置。
【請求項７】
前記テキスト解析部は、前記入力されたテキストを形態素解析により単語に分割し、
前記既知語抽出部は、前記テキスト解析部が分割した単語のうち、前記未知語以外の自立語を前記既知語として抽出することを特徴とする請求項６記載の対話制御装置。
【請求項８】
前記応答文生成部は、前記既知語抽出部が抽出した既知語以外の単語により前記使用者の意図が一意に特定できなかったことを示す前記応答文を生成することを特徴とする請求項６記載の対話制御装置。
【請求項９】
前記既知語抽出部は、前記自立語のうち特定の品詞のみを前記既知語として抽出することを特徴とする請求項７記載の対話制御装置。
【請求項１０】
使用者が自然言語により入力したテキストを解析するテキスト解析ステップと、
単語と、当該単語から推定される前記使用者の意図とを対応付けて記憶した意図推定モデルを参照し、前記テキストの解析結果から前記使用者の意図を推定する意図推定ステップと、
前記使用者の意図を一意に特定できない場合に、前記テキストの解析結果から前記意図推定モデルに記憶されていない単語を未知語として抽出する未知語抽出ステップと、
前記抽出した未知語を含む応答文を生成する応答文生成ステップとを備えた対話制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば使用者による音声入力やキーボード入力などにより入力されたテキストを認識し、認識した結果に基づき使用者の意図を推定し、使用者の意図する操作を実行するための対話を行う対話制御装置および対話制御方法に関するものである。
【背景技術】
【０００２】
近年、機器の操作を行うために、例えば人間が喋った音声を入力とし、入力された音声の認識結果を用いて、操作を実行する音声認識装置が用いられている。当該音声認識装置において、従来はあらかじめシステムが想定した音声認識結果と操作を対応付けておき、音声認識結果が想定したものと一致する場合に、操作を実行するものであった。そのため使用者は操作を実行するためにシステムが待ち受けている言い回しを憶えておく必要があった。【０００３】
使用者が目的を達成するための言い回しを憶えていなくても、自由な発話で音声認識装置を使用可能とする技術として、使用者の発話の意図を推定し、対話によって装置が誘導して目的の達成に導く方法が開示されている。この方法の場合、使用者の多様な言い回しに対応するためには、音声認識辞書の学習に多様な文例を使用するとともに、発話の意図を推定する意図推定技術で用いられる意図推定辞書も多様な文例を用いて学習することが必要である。【０００４】
しかしながら、音声認識辞書で用いる言語モデルは自動的に収集できるため、文例を増やすことは比較的容易であるが、意図推定辞書は学習データの作成時に、正解を人手で付与する必要があり、音声認識辞書に比べ作成に手間がかかるという問題があった。さらに、使用者は新語や俗語を用いることもあり、語彙数は時間とともに増加するが、そのような多様な語彙に意図推定辞書を対応させるとコストがかかるという問題があった。【０００５】
上記の問題に対し、例えば特許文献１には、一つの文例に対し受理可能な語彙を増やすための同義語辞書を用いた音声入力対応装置が開示されている。同義語辞書を使うことにより、正しい音声認識結果が得られれば、正しい音声認識結果の中で同義語辞書に含まれる語を代表語に置換することができ、意図推定辞書を、代表語を用いた文例だけで学習した場合にも多様な語彙に対応することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１４−１０６５２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した特許文献１の技術では、同義語辞書の更新には人手によるチェックを必要とし、全ての語彙をカバーすることは容易ではなく、使用者が同義語辞書にない語を使用した場合に、使用者の意図を正しく推定することができない場合が発生するという課題があった。さらに、使用者の意図を正しく推定できない場合、システムの応答が使用者の意図したものと異なるが、当該意図したものと異なる原因を使用者にフィードバクしないため、使用者は原因が分からず、同義語辞書にない語を使い続け、対話に失敗する、対話が冗長になるという課題があった。【０００８】
この発明は、上記のような課題を解決するためになされたもので、対話制御装置が認識できない語彙を使用者が使用した場合に、当該語彙が使用できないことを使用者にフィードバックし、使用者にどのように入力し直すべきかを認識させる応答を行うことを目的とする。
【課題を解決するための手段】
【０００９】
この発明に係る対話制御装置は、使用者が自然言語により入力したテキストを解析するテキスト解析部と、単語と、当該単語から推定される使用者の意図とを対応付けて記憶した意図推定モデルを参照し、テキスト解析部のテキスト解析結果から使用者の意図を推定する意図推定処理部と、意図推定処理部において使用者の意図を一意に特定できない場合に、テキスト解析結果から意図推定モデルに記憶されていない単語を未知語として抽出する未知語抽出部と、未知語抽出部が抽出した未知語を含む応答文を生成する応答文生成部とを備えるものである。
【発明の効果】
【００１０】
この発明によれば、使用者はどの語彙を入力し直すべきか容易に認識することができ、対話制御装置との対話を円滑に進めることができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る対話制御装置の構成を示すブロック図である。
【図２】実施の形態１に係る対話制御装置と使用者との対話の一例を示す図である。
【図３】実施の形態１に係る対話制御装置の動作を示すフローチャートである。
【図４】実施の形態１に係る対話制御装置の形態素解析部の形態素解析結果である素性リストの一例を示す図である。
【図５】実施の形態１に係る対話制御装置の意図推定処理部の意図推定結果の一例を示す図である。
【図６】実施の形態１に係る対話制御装置の未知語抽出部の動作を示すフローチャートである。
【図７】実施の形態１に係る対話制御装置の未知語抽出部が抽出する未知語候補リストの一例を示す図である。
【図８】実施の形態１に係る対話制御装置の対話シナリオデータ記憶部が格納する対話シナリオデータの一例を示す図である。
【図９】実施の形態２に係る対話制御装置の構成を示すブロック図である。
【図１０】実施の形態２に係る対話制御装置の意図推定モデル記憶部が格納する頻出語リストの一例を示す図である。
【図１１】実施の形態２に係る対話制御装置と使用者との対話の一例を示す図である。
【図１２】実施の形態２に係る対話制御装置の動作を示すフローチャートである。
【図１３】実施の形態２に係る対話制御装置の未知語抽出部の動作を示すフローチャートである。
【図１４】実施の形態２に係る対話制御装置の構文解析部による構文解析結果の一例を示す図である。
【図１５】実施の形態３に係る対話制御装置の構成を示すブロック図である。
【図１６】実施の形態３に係る対話制御装置と使用者との対話の一例を示す図である。
【図１７】実施の形態３に係る対話制御装置の動作を示すフローチャートである。
【図１８】実施の形態３に係る対話制御装置の意図推定処理部の意図推定結果の一例を示す図である。
【図１９】実施の形態３に係る対話制御装置の既知語抽出処理部の動作を示すフローチャートである。
【図２０】実施の形態３に係る対話制御装置の対話シナリオデータ記憶部が格納する対話シナリオデータの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１は、実施の形態１に係る対話制御装置１００の構成を示すブロック図である。
実施の形態１の対話制御装置１００は、音声入力部１０１、音声認識辞書記憶部１０２、音声認識部１０３、形態素解析辞書記憶部１０４、形態素解析部（テキスト解析部）１０５、意図推定モデル記憶部１０６、意図推定処理部１０７、未知語抽出部１０８、対話シナリオデータ記憶部１０９、応答文生成部１１０、音声合成部１１１および音声出力部１１２を備えている。
以下では、対話制御装置１００をカーナビゲーションシステムに適用した場合を例に説明するが、適用対象はナビゲーションシステムに限定されるものではなく、適宜変更可能である。また、使用者が音声入力により対話制御装置１００と対話する場合を例に説明を行が、対話制御装置１００との対話方法は音声入力に限定されるものではない。
【００１３】
音声入力部１０１は、対話制御装置１００への音声入力を受け付ける。音声認識辞書記憶部１０２は、音声認識を行うための音声認識辞書を格納する領域である。音声認識部１０３は、音声入力部１０１に入力された音声データに対して、音声認識辞書記憶部１０２に格納された音声認識辞書を参照して音声認識を行い、テキストに変換する。形態素解析辞書記憶部１０４は、形態素解析を行うための形態素解析辞書を格納する領域である。形態素解析部１０５は、音声認識により得られたテキストを形態素に分割する。意図推定モデル記憶部１０６は、形態素に基づいて使用者の意図（以下、意図と称する）を推定するための意図推定モデルを格納する領域である。意図推定処理部１０７は、形態素解析部１０５が解析した形態素解析結果を入力とし、意図推定モデルを参照して意図を推定する。推定結果は、推定した意図と当該意図の尤もらしさを表すスコアの組を示したリストとして出力される。
【００１４】
ここで、意図推定処理部１０７の詳細について説明する。
意図推定処理部１０７が推定する意図とは、例えば「＜主意図＞［｛＜スロット名＞＝＜スロット値＞｝，…］」のような形で表現される。例としては、「目的地設定［｛施設＝＜施設名＞｝］」、「ルート変更［｛条件＝一般道優先｝］」のように表現できる。「目的地設定［｛施設＝＜施設名＞｝］」は＜施設名＞に具体的な施設の名前が入る。例えば＜施設名＞＝スカイツリーならば、スカイツリーを目的地に設定したいという意図を示し、「ルート変更［｛条件＝一般道優先｝］」ならばルート探索条件を一般道優先にしたいという意図を示す。
また、スロット値が「ＮＵＬＬ」の場合は、スロット値が不明な意図を示す。例えば、「ルート変更［｛条件＝ＮＵＬＬ｝］」という意図は、ルート探索条件を設定したいが条件は不明という意図を示す。
【００１５】
意図推定処理部１０７における意図推定方式としては、例えば最大エントロピー法などが適用可能である。具体的には、「ルートを一般道優先に変更して」という発話に対して、形態素解析結果から「ルート、一般道、優先、変更」という自立語単語（以下、素性と称する）を抽出したものと、正解意図「ルート変更［｛条件＝一般道優先｝］」の組を与えておき、大量に収集した素性と意図との組から統計的手法によって入力された素性のリストに対して、どの意図がどれだけ尤もらしいかを推定する方法が利用できる。以下では最大エントロピー法を利用した意図推定を行うものとして説明する。
【００１６】
未知語抽出部１０８は、形態素解析部１０５が抽出した素性のうち、意図推定モデル記憶部１０６の意図推定モデルに記憶されていない素性を抽出する。以下では、意図推定モデルに含まれない素性を未知語と呼ぶ。対話シナリオデータ記憶部１０９は、意図推定処理部１０７が推定した意図に対応して次に何を実行すべきかを記述した対話シナリオデータを格納する領域である。応答文生成部１１０は、意図推定処理部１０７で推定した意図と、未知語抽出部１０８で未知語が抽出された場合には当該未知語とを入力として、対話シナリオデータ記憶部１０９に格納された対話シナリオデータを用いて応答文を生成する。音声合成部１１１は、応答文生成部１１０が生成した応答文を入力として、合成音声を生成する。音声出力部１１２は、音声合成部１１１が生成した合成音声を出力する。
【００１７】
次に、実施の形態１に係る対話制御装置１００の動作について説明する。
図２は、実施の形態１に係る対話制御装置１００と使用者との対話の一例を示す図である。
まず、行頭の「Ｕ：」は使用者の発話を表し、「Ｓ：」は対話制御装置１００からの応答を表している。応答２０１、応答２０３、応答２０５は対話制御装置１００からの出力、発話２０２、発話２０４は使用者の発話であり、順番に対話が進んでいることを示している。
【００１８】
図２の対話例に基づいて、図３から図８を参照しながら対話制御装置１００の応答文生成の処理動作について説明する。
図３は、実施の形態１に係る対話制御装置１００の動作を示すフローチャートである。  図４は、実施の形態１に係る対話制御装置１００の形態素解析部１０５の形態素解析結果である素性リストの一例を示す図である。図４の例では、素性４０１から素性４０４で構成されている。
図５は、実施の形態１に係る対話制御装置１００の意図推定処理部１０７の意図推定結果の一例を示す図である。意図推定結果５０１は意図推定スコアの順位が１位の意図推定結果を意図推定スコアと共に示し、意図推定結果５０２は意図推定スコアの順位が２位の意図推定結果を意図推定スコアと共に示している。
【００１９】
図６は、実施の形態１に係る対話制御装置１００の未知語抽出部１０８の動作を示すフローチャートである。
図７は、実施の形態１に係る対話制御装置１００の未知語抽出部１０８が抽出する未知語候補リストの一例を示す図である。図７の例では、未知語候補７０１および未知語候補７０２で構成されている。
図８は、実施の形態１に係る対話制御装置１００の対話シナリオデータ記憶部１０９が格納する対話シナリオデータの一例を示す図である。図８（ａ）の意図用対話シナリオデータは、意図推定結果に対して対話制御装置１００が行う応答が記述されていると共に、対話制御装置１００が制御する機器（不図示）に対して実行するコマンドが記述されている。また、図８（ｂ）の未知語用対話シナリオデータは、未知語に対して対話制御装置１００が行う応答が記述されている。
【００２０】
まず、図３のフローチャートに沿って説明を行う。使用者が対話制御装置１００に設けられた発話開始ボタン（不図示）などを押すと、対話制御装置１００が対話開始を促す応答およびビープ音を出力する。図２の例において、使用者が発話開始ボタンを押すと、対話制御装置１００は応答２０１「ピッと鳴ったらお話ください」を音声出力し、ビープ音を出力する。これらの出力の後、音声認識部１０３が認識可能状態となり、図３のフローチャートのステップＳＴ３０１の処理に移行する。なお、音声出力後のビープ音は適宜変更可能である。
【００２１】
音声入力部１０１が音声の入力を受け付ける（ステップＳＴ３０１）。図２の例において、使用者が検索条件を一般道優先としてルートを検索したいと考え、発話２０２「さくっと、ルートを下道に設定して」と発話した場合、音声入力部１０１はステップＳＴ３０１として当該発話の音声入力を受け付ける。音声認識部１０３は音声認識辞書記憶部１０２に格納された音声認識辞書を参照して、ステップＳＴ３０１で受け付けた音声入力の音声認識を行ってテキストに変換する（ステップＳＴ３０２）。
【００２２】
形態素解析部１０５は、形態素解析辞書記憶部１０４に格納された形態素解析辞書を参照して、ステップＳＴ３０２でテキストに変換された音声認識結果の形態素解析を行う（ステップＳＴ３０３）。図２の例において、発話２０２の音声認識結果「さくっと、ルートを下道に設定して」に対して、形態素改正部１０５はステップＳＴ３０３として「さくっと／副詞、ルート／名詞、を／助詞、下道／名詞、に／助詞、設定／名詞（サ変接続）、し／動詞、て／助詞」のように形態素解析を行う。
【００２３】
次に、意図推定処理部１０７は、ステップＳＴ３０３で得られた形態素解析結果から意図推定処理に用いる素性を抽出し（ステップＳＴ３０４）、意図推定モデル記憶部１０６に格納された意図推定モデルを用いてステップＳＴ３０４で抽出した素性から意図を推定する意図推定処理を実行する（ステップＳＴ３０５）。
図２の例において、形態素解析結果「さくっと／副詞、ルート／名詞、を／助詞、下道／名詞、に／助詞、設定／名詞（サ変接続）、し／動詞、て／助詞」に対して、意図推定処理部１０７はステップＳＴ３０４として素性を抽出して、例えば図４に示す素性リストとしてまとめる。図４の素性リストは、素性４０１「さくっと／副詞」、素性４０２「ルート／名詞」、素性４０３「下道／名詞」および素性４０４「設定／名詞（サ変接続）」で構成されている。
【００２４】
図４で示した素性リストに対して、意図推定処理部１０７はステップＳＴ３０５として意図推定処理を行い、例えば意図推定モデルに「さくっと／副詞」および「下道／名詞」という素性が存在しないとすると、意図推定処理は「ルート／名詞」および「設定／名詞（サ変接続）」という素性に基づいて実行され、図５に示す意図推定結果リストが得られる。意図推定結果リストは、順位、意図推定結果および意図推定スコアで構成され、順位「１」で示した意図推定結果「ルート変更［｛条件＝ＮＵＬＬ｝］」は意図推定スコア０．５８３であることを示している。また、順位「２」で示した意図推定結果「ルート変更［｛条件＝一般道優先｝］」は意図推定スコア０．１７７であることを示している。なお、図５では図示を省略したが、順位「１」、順位「２」以降の意図推定結果および意図推定スコアも設定される。
【００２５】
意図推定処理部１０７は、ステップＳＴ３０５で得られた意図推定結果リストに基づいて、使用者の意図を一意に特定できたか否か判定を行う（ステップＳＴ３０６）。ステップＳＴ３０６の判定処理は、例えば次の二つの条件（ａ），（ｂ）をともに満たす場合に、使用者の意図を一意に特定できたと判定する。
条件（ａ）：順位１位の意図推定結果の意図推定スコアが０．５以上
条件（ｂ）：順位１位の意図推定結果のスロット値がＮＵＬＬでない
条件（ａ）および条件（ｂ）をともに満たす、すなわち使用者の意図を一意に特定できた場合（ステップＳＴ３０６；ＹＥＳ）、ステップＳＴ３０８の処理に進む。この場合、意図推定処理部１０７は、意図推定結果リストを応答文生成部１１０に出力する。
【００２６】
一方、条件（ａ）および条件（ｂ）の少なくとも一方を満たさない、すなわち使用者の意図を一意に特定できない場合（ステップＳＴ３０６；ＮＯ）、ステップＳＴ３０７の処理に進む。この場合、意図推定処理部１０７は、意図推定結果リストおよび素性リストを未知語抽出部１０８に出力する。
図５で示した意図推定結果の場合、順位「１」の意図推定スコアが「０．５８３」で条件（ａ）を満たすが、スロット値がＮＵＬＬであり条件（ｂ）を満たさない。そのため、意図推定処理部１０７はステップＳＴ３０６の判定処理において、使用者の意図を一意に特定できないと判定し、ステップＳＴ３０７の処理に進む。
【００２７】
ステップＳＴ３０７の処理では、未知語抽出部１０８が意図推定処理部１０７から入力された素性リストに基づいて未知語を抽出する処理を行う。ステップＳＴ３０７の未知語抽出処理について、図６のフローチャートを参照しながら詳細に説明を行う。
未知語抽出部１０８は、入力された素性リストから、意図推定モデル記憶部１０６に格納された意図推定モデルに記載のない素性を未知語候補として抽出し、未知語候補リストに追加する（ステップＳＴ６０１）。
図４で示した素性リストの場合、素性４０１「さくっと／副詞」、および素性４０３「下道／名詞」が未知語候補として抽出され、図７で示した未知語候補リストに追加される。
【００２８】
次に、未知語抽出部１０８は、ステップＳＴ６０１において１つ以上の未知語候補が抽出されたか否か判定を行う（ステップＳＴ６０２）。未知語候補が抽出されていない場合（ステップＳＴ６０２；ＮＯ）、未知語抽出処理を終了してステップＳＴ３０８の処理に進む。この場合、未知語抽出部１０８は意図推定結果リストを応答文生成部１１０に出力する。
【００２９】
一方、未知語候補が１つ以上抽出された場合（ステップＳＴ６０２；ＹＥＳ）、未知語抽出部１０８は、未知語候補リストに記載された未知語候補のうち、品詞が動詞、名詞、形容詞以外のものを未知語候補から削除して未知語リストとし（ステップＳＴ６０３）、ステップＳＴ３０８の処理に進む。この場合、未知語抽出部１０８は、意図推定結果リストおよび未知語リストを応答文生成部１１０に出力する。
図７で示した未知語候補リストの場合、未知語候補の数が２であるためステップＳＴ６０２でＹＥＳと判定されてステップＳＴ６０３の処理進み、当該ステップＳＴ６０３において品詞が副詞である未知語候補７０１「さくっと／副詞」が削除され、未知語リストには未知語候補７０２「下道／名詞」のみが記載される。
【００３０】
図３のフローチャートに戻り、動作の説明を続ける。
応答文生成部１１０は、未知語抽出部１０８により未知語リストが入力されたか否か判定を行う（ステップＳＴ３０８）。未知語リストが入力されていない場合（ステップＳＴ３０８；ＮＯ）、応答文生成部１１０は、対話シナリオデータ記憶部１０９に格納された対話シナリオデータを用いて、意図推定結果に対応した応答テンプレートを読み出し、応答文を生成する（ステップＳＴ３０９）。また、対話シナリオデータにコマンドが設定されている場合には、ステップＳＴ３０９において対応するコマンドを実行する。
【００３１】
未知語リストが入力されている場合（ステップＳＴ３０８；ＹＥＳ）、応答文生成部１１０は、対話シナリオデータ記憶部１０９に格納された対話シナリオデータを用いて、意図推定結果に対応した応答テンプレートを読み出し、未知語リストが示す未知語に対応した応答テンプレートを読み出し、応答文を生成する（ステップＳＴ３１０）。応答文の作成では未知語リストに対応する応答文を意図推定結果に対応する応答文の前に挿入する。また、対話シナリオデータにコマンドが設定されている場合には、ステップＳＴ３１０において対応するコマンドを実行する。
【００３２】
上述した例では、ステップＳＴ６０３において未知語「下道／名詞」が記載された未知語リストが生成されたことから、応答文生成部１１０は、ステップＳＴ３０８において未知語リストが入力されたと判定し、ステップＳＴ３１０として意図推定結果および未知語に対応した応答文を生成する。具体的には、図５で示した意図推定結果リストの例において、順位１の意図推定結果「ルート変更［｛条件＝ＮＵＬＬ｝］」に対応した応答テンプレートとして、図８（ａ）の意図用対話シナリオデータのテンプレート８０１が読み出され、応答文『ルートを検索します。検索条件をお話ください。』が生成される。次に、応答文生成部１１０は、図８（ｂ）で示した未知語用対話シナリオデータのテンプレート８０２の＜未知語＞を実際の未知語リストの値に置換して応答文を生成する。上述した例では入力された未知語が「下道」であることから、生成される応答文は『「下道」は知らない単語です』となる。最後に、未知語リストに対応する応答文を、意図推定結果に対応する応答文の前に挿入して『「下道」は知らない単語です。ルートを検索します。検索条件をお話しください。』が生成される。
【００３３】
音声合成部１１１はステップＳＴ３０９またはステップＳＴ３１０で生成された応答文から音声データを生成し、音声出力部１１２へ出力する（ステップＳＴ３１１）。音声出力部１１２は、ステップＳＴ３１１で入力された音声データを音声として出力する（ステップＳＴ３１２）。以上で一つの使用者の発話に対する応答文を生成する処理は終了する。その後フローチャートはステップＳＴ３０１の処理に戻り、使用者の音声入力が行われるのを待機する。
上述した例では、図２に示した応答２０３である『「下道」は知らない単語です。ルートを検索します。検索条件をお話しください。』が音声出力される。
【００３４】
使用者は、応答２０３が音声出力されることにより、「下道」と異なる表現で発話すれば良いと気が付くことができる。例えば、使用者は図２の発話２０４「さくっとルートを一般道に設定して」のように言い直すことができ、対話制御装置１００との対話を進めることができる。
【００３５】
使用者が上述した発話２０４を行うと、対話制御装置１００は当該発話２０４に対して再度図３および図６のフローチャートで示した音声認識処理を実行する。その結果、ステップＳＴ３０４で得られる素性リストは、抽出された４つの素性「さくっと／副詞」、「ルート／名詞」、「一般道／名詞」および「設定／名詞（サ変接続）」で構成される。この素性リストにおいて、未知語は「さくっと」のみである。次に、ステップＳＴ３０５では順位「１」の意図推定結果「｛条件＝一般道優先｝］」が意図推定スコア０．８２２で得られる。
【００３６】
次に、ステップＳＴ３０６の判定処理において、順位「１」の意図推定結果の意図推定スコアが「０．８２２」で条件（ａ）を満たし、且つスロット値がＮＵＬＬでなく条件（ｂ）を満たすことから、使用者の意図を一意に特定できたと判定し、ステップＳＴ３０８の処理に進む。ステップＳＴ３０８では、未知語リストは入力されていないと判定され、ステップＳＴ３０９において「ルート変更［｛条件＝一般道優先｝］」に対応した応答テンプレートとして、図８（ａ）の意図用対話シナリオデータのテンプレート８０３が読み出され、応答文『一般道優先でルートを検索します。』が生成され、一般道優先でルートを検索するコマンドである「Ｓｅｔ（ルートタイプ、一般道優先）」が実行される。次に、ステップＳＴ３１１において応答文から音声データを生成し、ステップＳＴ３１２において音声データを音声出力する。このように、対話制御装置１００との円滑な対話により、使用者の当初の意図「検索条件を一般道優先としてルートを検索したい」に沿ったコマンドを実行することができる。
【００３７】
以上のように、この実施の形態１によれば、音声認識結果を形態素に分割する形態素解析部１０５と、形態素解析結果から使用者の意図を推定する意図推定処理部１０７と、意図推定処理部１０７において使用者の意図を一意に特定できない場合に、意図推定モデルにない素性を未知語として抽出する未知語抽出部１０８と、未知語が抽出された場合に、当該未知語を含む応答文を生成する応答文生成部１１０とを備えるように構成したので、未知語であると抽出された単語を含む応答文を生成することができ、対話制御装置１００が意図を推定することができなかった単語を使用者に提示することができる。これにより、使用者が表現を改めるべき単語を理解することができ、対話を円滑に進めることができる。
【００３８】
実施の形態２．
この実施の形態２では、形態素解析結果をさらに構文解析し、構文解析の結果を用いて未知語抽出を行う構成について示す。
図９は、実施の形態２に係る対話制御装置１００ａの構成を示すブロック図である。
実施の形態２では、未知語抽出部１０８ａがさらに構文解析部１１３を備え、意図推定モデル記憶部１０６ａが意図推定モデルに加えて頻出語リストを格納する。なお、以下では、実施の形態１に係る対話制御装置１００の構成要素と同一または相当する部分には、実施の形態１で使用した符号と同一の符号を付して説明を省略または簡略化する。
【００３９】
構文解析部１１３は、形態素解析部１０５で解析した形態素解析結果に対してさらに構文解析を行う。未知語抽出部１０８ａは、構文解析部１１３の構文解析結果が示す係り受け情報を用いて未知語抽出を行う。意図推定モデル記憶部１０６ａは、実施の形態１で示した意図推定モデルに加えて、頻出語リストを格納する記憶領域である。頻出語リストは、例えば図１０に示すようにある意図推定結果に対して高い頻度で出現する頻出語をリストとして記憶したものであり、意図推定結果１００１「ルート変更[｛条件＝ＮＵＬＬ｝]」に対して頻出語リスト１００２「変更、選択、ルート、コース、道順」が対応付けられている。
【００４０】
次に、実施の形態２に係る対話制御装置１００ａの動作について説明する。
図１１は、実施の形態２に係る対話制御装置１００ａとの対話の一例を示す図である。
実施の形態１の図２と同様に、行頭の「Ｕ：」は使用者の発話を表し、「Ｓ：」は対話制御装置１００ａからの応答を表している。応答１１０１、応答１１０３、応答１１０５は対話制御装置１００ａからの応答、発話１１０２、発話１１０４は使用者の発話であり、順番に対話が進んでいることを示している。
【００４１】
図１１で示した使用者の発話に対応した対話制御装置１００ａの応答文生成の処理動作について図１０、図１２から図１４を参照しながら説明を行う。
図１２は実施の形態２に係る対話制御装置１００ａの動作を示すフローチャートである。図１３は実施の形態２に係る対話制御装置１００ａの未知語抽出部１０８ａの動作を示すフローチャートである。図１２および図１３においては、実施の形態１に係る対話制御装置１００と同一のステップには図３および図６で使用した符号と同一の符号を付し、説明を省略または簡略化する。
図１４は、実施の形態２に係る対話制御装置１００ａの構文解析部１１３による構文解析結果の一例を示す図である。図１４の例では、文節１４０１、文節１４０２、文節１４０３が文節１４０４を修飾していることを示している。
【００４２】
まず、図１２のフローチャートに示す通り実施の形態２の対話制御装置１００ａの基本動作は実施の形態１の対話制御装置１００と同じであり、ステップＳＴ１２０１において未知語抽出部１０８ａが構文解析部１１３の解析結果である係り受け情報を用いて未知語抽出を行う点のみが異なる。未知語抽出部１０８ａによる未知語抽出処理の詳細は図１３のフローチャートに基づいて行われる。
【００４３】
まず、図１１で示した対話制御装置１００ａと使用者との対話の一例に基づいて、図１２のフローチャートに沿って対話制御装置１００ａの基本動作を説明する。
使用者が発話開始ボタンを押すと、対話制御装置１００ａは応答１１０１「ピッと鳴ったらお話ください」を音声出力し、ビープ音を出力する。これらの出力の後、音声認識部１０３が認識可能状態となり、図１２のフローチャートのステップＳＴ３０１の処理に移行する。なお、音声出力後のビープ音は適宜変更可能である。
【００４４】
使用者が検索条件を一般道としてルート検索したいと考え、発話１１０２「金欠なので、ルートは、下道を選択して」と発話した場合、音声入力部１０１はステップＳＴ３０１として音声入力を受け付ける。音声認識部１０３はステップＳＴ３０２として、受け付けた音声入力の音声認識を行ってテキストに変換する。形態素解析部１０５はステップＳＴ３０３として、音声認識結果「金欠なので、ルートは、下道を選択して」に対して、「金欠／名詞、な／助動詞、ので／助詞、ルート／名詞、は／助詞、下道／名詞、を／助詞、選択／名詞（サ変接続）、し／動詞、て／助詞」のように形態素解析を行う。意図推定処理部１０７はステップＳＴ３０４として、ステップＳＴ３０３で得られた形態素解析結果から意図推定処理に用いる素性「金欠／名詞」、「ルート／名詞」、「下道／名詞」、「選択／名詞（サ変接続）」を抽出し、当該４つの素性で構成される素性リストを生成する。
【００４５】
さらに、意図推定処理部１０７はステップＳＴ３０５として、ステップＳＴ３０４で生成された素性リストに対して意図推定処理を行う。ここで例えば、意図推定モデル記憶部６に記憶された意図推定モデルに「金欠／名詞」、「下道／名詞」という素性が存在しないとすると、意図推定処理は「ルート／名詞」、「選択／名詞（サ変接続）」という素性に基づいて実行され、実施の形態１と同様に図５に示す意図推定結果リストが得られる。順位「１」で示した意図推定結果「ルート変更［｛条件＝ＮＵＬＬ｝］」が意図推定スコア０．５８３で得られ、順位「２」で示した意図推定結果「ルート変更［｛条件＝一般道優先｝］」が意図推定スコア０．１７７で得られる。
【００４６】
意図推定結果リストが得られるとステップＳＴ３０６の処理に移行する。上述のように実施の形態１と同一の図５の意図推定結果リストが得られたため、ステップＳＴ３０６の判定結果は実施の形態１と同一で「Ｎｏ」となり、使用者の意図を一意に特定できないと判定し、ステップＳＴ１２０１の処理に進む。この場合、意図推定処理部１０７は、意図推定結果リストおよび素性リストを未知語抽出部１０８ａに出力する。
【００４７】
ステップＳＴ１２０１の処理では、未知語抽出部１０８ａが意図推定処理部１０７から入力された素性リストに基づいて、構文解析部１１３の係り受け情報を利用して未知語を抽出する処理を行う。ステップＳＴ１２０１の係り受け利用未知語抽出処理について、図１３のフローチャートを参照しながら詳細に説明を行う。
未知語抽出部１０８ａは、入力された素性リストから、意図推定モデル記憶部１０６に格納された意図推定モデルに記載のない素性を未知語候補として抽出し、未知語候補リストに追加する（ステップＳＴ６０１）。ステップＳＴ３０４で生成した素性リストの例では、「金欠／名詞」、「ルート／名詞」、「下道／名詞」、「選択／名詞（サ変接続）」の４つの素性のうち、「金欠／名詞」および「下道／名詞」が未知語候補として抽出され、未知語候補リストに追加される。
【００４８】
次に、未知語抽出部１０８ａは、ステップＳＴ６０１において１つ以上の未知語候補が抽出されたか否か判定を行う（ステップＳＴ６０２）。未知語候補が抽出されていない場合（ステップＳＴ６０２；ＮＯ）、未知語抽出処理を終了してステップＳＴ３０８の処理に進む。
【００４９】
一方、未知語候補が１つ以上抽出された場合（ステップＳＴ６０２；ＹＥＳ）、構文解析部１１３は、形態素解析結果を文節単位に分割し、分割した文節に対して係り受け関係を解析し、構文解析結果を得る（ステップＳＴ１３０１）。
上述した形態素解析結果「金欠／名詞、な／助動詞、ので／助詞、ルート／名詞、は／助詞、下道／名詞、を／助詞、選択／名詞（サ変接続）、し／動詞、て／助詞」について、ステップＳＴ１３０１ではまず「金欠／な／ので：動詞句、ルート／は：名詞句、下道／を：名詞句、選択／し／て／動詞句」と文節単位に分割する。さらに、分割した各文節の係り受け関係を解析し、図１４に示す構文解析結果を得る。
【００５０】
図１４に示した構文解析結果の例では、文節１４０１は文節１４０４に係り、文節１４０２は文節１４０４に係り、文節１４０３は文節１４０４に係る。ここで、修飾のタイプは第１の修飾タイプおよび第２の修飾タイプの２つに分けられている。第１の修飾タイプは、名詞、副詞が動詞、形容詞を修飾するような修飾であり、図１４の例の「ルート／は：名詞句」および「下道／を：名詞句」が「選択／し／て／動詞句」を修飾する修飾タイプ１４０５が相当する。一方、第２の修飾タイプは、動詞、形容詞、助動詞が動詞、形容詞、助動詞を修飾するような修飾であり、「金欠／な／ので：動詞句」が「選択／し／て／動詞句」を修飾する修飾タイプ１４０６が相当する。
【００５１】
ＳＴ１３０１の構文解析処理が終了すると、未知語抽出部１０８ａは意図推定結果から頻出単語を抽出する（ステップＳＴ１３０２）。ステップＳＴ１３０２において、例えば図１０で示す意図推定結果１００１「ルート変更[｛条件＝ＮＵＬＬ｝]」が得られている場合、頻出語リスト１００２「変更、選択、ルート、コース、道順」が選択される。
【００５２】
次に、未知語抽出部１０８ａは、ステップＳＴ１３０１で得られた構文解析結果を参照し、ステップＳＴ６０１で抽出された未知語候補のうち、ステップＳＴ１３０２で抽出された頻出語単語と第１の修飾タイプで係り受けする単語を含む文節を抽出し、抽出した文節に含まれる単語を未知語リストに加える（ステップＳＴ１３０３）。
選択された頻出語リスト１００２に記載された頻出語を含む文節は、図１４に示すように文節１４０２「ルートは」と、文節１４０４「選択して」の２つであり、このうち文節１４０４に係り受けする未知語候補「金欠」および「下道」のうち第１の修飾タイプで係り受けするのは未知語候補「下道」を含む文節１４０３「下道を」のみとなる。これにより未知語リストには「下道を」のみが記載される。
未知語抽出部１０８ａは、意図推定結果と、未知語リストがある場合には当該未知語リストとを応答文生成部１１０に出力する。
【００５３】
図１２のフローチャートに戻り、動作の説明を続ける。
応答文生成部１１０は、未知語抽出部１０８ａにより未知語リストが入力されたか否か判定を行い（ステップＳＴ３０８）、以降実施の形態１で示したステップＳＴ３０９からステップＳＴ３１２と同一の処理を行う。図１０および図１４で示した例では、図１１に示した応答１１０３である『「下道」は知らない単語です。別の言い方をしてみてください。』が音声出力される。その後フローチャートはステップＳＴ３０１の処理に戻り、使用者の音声入力が行われるのを待機する。
【００５４】
使用者は応答１１０３の出力により「下道」を異なる言い方に変更すればよいことに気づくことができ、例えば図１１の発話１１０４で示した「金欠なのでルートは一般の道にして」のように言い直すことができる。これにより、発話１１０４に対する意図推定結果として「ルート変更［｛条件＝一般道優先｝］」が得られ、システムが応答１１０５「ルートを一般道優先に変更します。」を音声出力する。このように、対話制御装置１００ａとの円滑な対話により、使用者の当初の意図「一般道をルートとして検索したい」に沿ったコマンドを実行することができる。
【００５５】
以上のように、この実施の形態２によれば、形態素解析部１０５の形態素解析結果に対して構文解析を行う構文解析部１１３と、得られた文節の係り受け関係に基づいて未知語を抽出する未知語抽出部１０８ａを備えるように構成したので、使用者の発話を構文解析した結果から特定の自立語に限定して未知語を抽出して対話制御装置１００ａの応答文に含めることができ、対話制御装置１００ａが理解できなかった単語のうち重要な単語を使用者に提示することができる。これにより、使用者は言い直すべき単語を理解することができ、対話を円滑に進めることができる。
【００５６】
実施の形態３．
この実施の形態３では、形態素解析結果を用いて、上述した実施の形態１および実施の形態２の未知語抽出処理とは逆である既知語抽出を行う構成について示す。
図１５は、実施の形態３に係る対話制御装置１００ｂの構成を示すブロック図である。
実施の形態３では、図１で示した実施の形態１の対話制御装置１００の未知語抽出部１０８に替えて既知語抽出部１１４を設けて構成している。なお、以下では、実施の形態１に係る対話制御装置１００の構成要素と同一または相当する部分には、実施の形態１で使用した符号と同一の符号を付して説明を省略または簡略化する。
【００５７】
既知語抽出部１１４は、形態素解析部１０５が抽出した素性のうち、意図推定モデル記憶部１０６の意図推定モデルに記憶されていない素性を未知語候補として抽出し、抽出した未知語候補以外の素性を既知語として抽出する。
【００５８】
次に、実施の形態３に係る対話制御装置１００ｂの動作について説明する。
図１６は、実施の形態３に係る対話制御装置１００ｂと使用者の対話の一例を示す図である。
実施の形態１の図２と同様に、行頭の「Ｕ：」は使用者の発話を表し、「Ｓ：」は対話制御装置１００ｂからの発話および応答を表している。応答１６０１、応答１６０３、応答１６０５は対話制御装置１００ｂからの応答、発話１６０２、発話１６０４は使用者の発話であり、順番に対話が進んでいることを示している。
【００５９】
図１６の対話例に基づいて、対話制御装置１００ｂの応答文生成の処理動作について図１７から図２０を参照しながら説明を行う。
図１７は、実施の形態３に係る対話制御装置１００ｂの動作を示すフローチャートである。
図１８は、実施の形態３に係る対話制御装置１００ｂの意図推定処理部１０７の意図推定結果の一例を示す図である。意図推定結果１８０１は意図推定スコアの順位が１位の意図推定結果を意図推定スコアと共に示し、意図推定結果１８０２は意図推定スコアの順位が２位の意図推定結果を意図推定スコアと共に示している。
図１９は、実施の形態３に係る対話制御装置１００ｂの既知語抽出処理部１１４の動作を示すフローチャートである。図１７および図１９においては、実施の形態１に係る対話制御装置と同一のステップには図３および図６で使用した符号と同一の符号を付し、説明を省略または簡略化する。
【００６０】
図２０は、実施の形態３に係る対話制御装置１００ｂの対話シナリオデータ記憶部１０９が格納する対話シナリオデータの一例を示す図である。図２０（ａ）の意図用対話シナリオデータは、意図推定結果に対して対話制御装置１００ｂが行う応答が記述されていると共に、対話制御装置１００ｂが制御する機器（不図示）に対して実行するコマンドが記述されている。また、図２０（ｂ）の既知語用対話シナリオデータは、既知語に対して対話制御装置１００ｂが行う応答が記述されている。
【００６１】
図１７のフローチャートに示す通り実施の形態３の対話制御装置１００ｂの基本動作は実施の形態１の対話制御装置１００と同じであり、ステップＳＴ１７０１において既知語抽出部１１４が既知語抽出を行う点のみが異なる。既知語抽出部１１４による既知語抽出処理の詳細は図１９のフローチャートに基づいて行われる。
【００６２】
まず、図１６で示した対話制御装置１００ｂとの対話の一例に基づいて、図１７のフローチャートに沿って対話制御装置１００ｂの基本動作を説明する。
使用者が発話開始ボタンを押すと、対話制御装置１００ｂは応答１６０１「ピッと鳴ったらお話ください」を音声出力し、ビープ音を出力する。これらの出力の後、音声認識部１０３が認識可能状態となり、図１７のフローチャートのステップＳＴ３０１の処理に移行する。なお、音声出力後のビープ音は適宜変更可能である。
【００６３】
ここで、使用者が発話１６０２「○○スタジアムをマイフェイバリット」と発話した場合、音声入力部１０１はステップＳＴ３０１として音声入力を受け付ける。音声認識部１０３はステップＳＴ３０２として、受け付けた音声入力の音声認識を行ってテキストに変換する。形態素解析部１０５はステップＳＴ３０３として、音声認識結果「○○スタジアムをマイフェイバリット」に対して、「○○スタジアム／名詞(施設名）、を／助詞、マイフェイバリット／名詞」のように形態素解析を行う。意図推定処理部１０７はステップＳＴ３０４として、ステップＳＴ３０３で得られた形態素解析結果から意図推定処理に用いる素性「＃施設名（＝○○スタジアム）」、「マイフェイバリット」を抽出し、当該２つの素性で構成される素性リストを生成する。ここで、＃施設名は施設の名称を表す特殊なシンボルである。
【００６４】
さらに意図推定処理部１０７はステップＳＴ３０５として、ステップＳＴ３０４で生成された素性リストに対して意図推定処理を行う。ここで例えば、意図推定モデル記憶部６に記憶された意図推定モデルに「マイフェイバリット」という素性が存在しないとすると、意図推定処理は「＃施設名」という素性に基づいて実行され、図１８に示す意図推定結果リストが得られる。順位「１」で示した意図推定結果１８０１「目的地設定［｛施設＝＜施設名＞｝］」が意図推定スコア０．４６２で得られ、順位「２」で示した意図推定結果１８０２「登録地追加［｛施設＝＜施設名＞｝］」が意図推定スコア０．２４３で得られる。なお、図１８では図示を省略したが、順位「１」、順位「２」以降の意図推定結果および意図推定スコアも設定される。
【００６５】
意図推定結果リストが得られるとステップＳＴ３０６の処理に移行する。意図推定処理部１０７は、ステップＳＴ３０５で得られた意図推定結果リストに基づいて、使用者の意図を一意に特定できたか否か判定を行う（ステップＳＴ３０６）。ステップＳＴ３０６の判定処理は、例えば上述した実施の形態１で示した二つの条件（ａ），（ｂ）に基づいて行われる。条件（ａ）および条件（ｂ）をともに満たす、すなわち使用者の意図を一意に特定できた場合（ステップＳＴ３０６；ＹＥＳ）、ステップＳＴ３０８の処理に進む。この場合、意図推定処理部１０７は、意図推定結果リストを応答文生成部１１０に出力する。
【００６６】
一方、条件（ａ）および条件（ｂ）の少なくとも一方を満たさない、すなわち使用者の意図を一意に特定できない場合（ステップＳＴ３０６；ＮＯ）、ステップＳＴ３０７の処理に進む。この場合、意図推定処理部１０７は、意図推定結果リストおよび素性リストを既知語抽出部１１４に出力する。
図１８で示した順位「１」の意図推定結果の場合、意図推定スコアが「０．４６２」で条件（ａ）を満たさない。そのため、使用者の意図を一意に特定できないと判定し、ステップＳＴ１７０１の処理に進む。
【００６７】
ステップＳＴ１７０１の処理では、既知語抽出部１１４が意図推定処理部１０７から入力された素性リストに基づいて既知語を抽出する処理を行う。ステップＳＴ１７０１の既知語抽出処理について、図１９のフローチャートを参照しながら詳細に説明を行う。
既知語抽出部１１４は、入力された素性リストから、意図推定モデル記憶部１０６に格納された意図推定モデルに記載のない素性を未知語候補として抽出し、未知語候補リストに追加する（ステップＳＴ６０１）。
ステップＳＴ３０４で生成された素性リストの例では、素性「マイフェイバリット」が未知語候補として抽出され、未知語候補リストに追加される。
【００６８】
次に、既知語抽出部１１４は、ステップＳＴ６０１において１つ以上の未知語候補が抽出されたか否か判定を行う（ステップＳＴ６０２）。未知語候補が抽出されていない場合（ステップＳＴ６０２；ＮＯ）、未知語抽出処理を終了してステップＳＴ３０８の処理に進む。
【００６９】
一方、未知語候補が１つ以上抽出された場合（ステップＳＴ６０２；ＹＥＳ）、既知語抽出部１１４は、未知語候補リストに記載された未知語候補以外の素性を既知語候補リストとしてまとめる（ステップＳＴ１９０１）。ステップＳＴ３０４で生成された素性リストの例では「＃施設名」が既知語候補リストとなる。次に、ステップＳＴ１８０１でまとめられた既知語候補リストのうち、品詞が動詞、名詞、形容詞以外のものを既知語候補から削除し、既知語リストとする（ステップＳＴ１９０２）。
ステップＳＴ３０４で生成された素性リストの例では「＃施設名」が既知語候補リストとなり、最終的に既知語リストには「○○スタジアム」のみが記載される。既知語抽出部１１４は、意図推定結果と、既知語リストがある場合には当該既知語リストとを応答文生成部１１０に出力する。
【００７０】
図１７のフローチャートに戻り、動作の説明を続ける。
応答文生成部１１０は、既知語抽出部１１４により既知語リストが入力されたか否か判定を行う（ステップＳＴ１７０２）。既知語リストが入力されていない場合（ステップＳＴ１７０２；ＮＯ）、応答文生成部１１０は、対話シナリオデータ記憶部１０９に格納された対話シナリオデータを用いて、意図推定結果に対応した応答テンプレートを読み出し、応答文を生成する（ステップＳＴ１７０３）。また、対話シナリオデータにコマンドが設定されている場合には、ステップＳＴ１７０３において対応するコマンドを実行する。
【００７１】
既知語リストが入力されている場合（ステップＳＴ１７０２；ＹＥＳ）、応答文生成部１１０は、対話シナリオデータ記憶部１０９に格納された対話シナリオデータを用いて、意図推定結果に対応した応答テンプレートを読み出し、既知語リストが示す既知語に対応した応答テンプレートを読み出し、応答文を生成する（ステップＳＴ１７０４）。応答文の作成では既知語リストに対応する応答文を意図推定結果に対応する応答文の前に挿入する。また、対話シナリオデータにコマンドが設定されている場合には、ステップＳＴ１７０４において対応するコマンドを実行する。
【００７２】
図１８で示した意図推定結果リストの例において、順位１の意図推定結果「目的地設定［｛施設＝＜施設名＞｝］」と順位２の意図推定結果「登録地追加［｛施設＝＜施設名＞｝］」の２つが曖昧であることを示しているため、対応する応答テンプレート２００１が読み出され、応答文『○○スタジアムを目的地にしますか、登録地にしますか？』が生成される。
【００７３】
次に、応答文生成部１１０は、既知語リストが入力されている場合に、図２０（ｂ）で示した既知語用対話シナリオデータのテンプレート２００２の＜既知語＞を実際の既知語リストの値に置換して応答文を生成する。例えば、入力された既知語が「○○スタジアム」の場合、生成される応答文は『○○スタジアム以外は知らない単語です』となる、最後に、既知語リストに対応する応答文を、意図推定結果に対応する応答文の前に挿入して『○○スタジアム以外は知らない単語です。○○スタジアムを目的地にしますか、登録地にしますか？』が生成される。
【００７４】
音声合成部１１１はステップＳＴ１７０３またはステップＳＴ１７０４で生成された応答文から音声データを生成し、音声出力部１１２へ出力する（ステップＳＴ３１１）。音声出力部１１２は、ステップＳＴ３１１で入力された音声データを音声として出力する（ステップＳＴ３１２）。以上で一つの使用者の発話に対する応答文を生成する処理は終了する。図１８、図２０で示した例では、図１６に示した応答１６０３である『○○スタジアム以外は知らない単語です。○○スタジアムを目的地にしますか、登録地にしますか？』が音声出力される。その後フローチャートはステップＳＴ３０１の処理に戻り、使用者の音声入力が行われるのを待機する。
【００７５】
使用者は、応答１６０３が音声出力されることにより、「○○スタジアム」以外は理解してもらえなかったことが分かり、「マイフェイバリット」が理解されず、異なる表現で発話すれば良いと気が付くことができる。例えば、使用者は、図１６の発話１６０４「登録地に追加して」のように言い直すことができ、対話制御装置１００ｂに対して使用可能な言葉を用いて対話を行うことができる。
【００７６】
対話制御装置１００ｂは、発話１６０４に対して再度図１７および図１９のフローチャートで示した音声認識処理を実行する。その結果、ステップＳＴ３０５において意図推定結果「登録地追加［｛条件＝＜施設名＞］」が得られる。
さらにステップＳＴ１７０３において、「登録地追加［｛条件＝＜施設名＞］」に対応した応答テンプレートとして、図２０（ａ）の意図用対話シナリオデータのテンプレート２００３が読み出され、応答文『○○スタジアムを登録地に追加します』が生成され、施設名称を登録地に追加するコマンドである「Ａｄｄ（登録地、＜施設名＞）」が実行される。次に、ステップＳＴ３１１において応答文から音声データを生成し、ステップＳＴ３１２において音声データを音声出力する。このように、対話制御装置１００ｂとの円滑な対話により、使用者の意図に沿ったコマンドを実行することができる。
【００７７】
以上のように、この実施の形態３によれば、音声認識結果を形態素に分割する形態素解析部１０５と、形態素解析結果から使用者の意図を推定する意図推定処理部１０７と、使用者の意図が一意に特定できない場合に形態素解析結果から未知語以外の素性を既知語として抽出する既知語抽出部１１４と、既知語が抽出された場合に、当該既知語を含む応答文、すなわち未知語となった単語以外を含む応答文を生成する応答文生成部１１０とを備えるように構成したので、対話制御装置１００ｂが意図を推定することができた単語を提示することができ、使用者が表現を改める単語を理解することができ、対話を円滑に進めることができる。
【００７８】
上述した実施の形態１−３では、日本語を音声認識する場合を例に説明を行ったが、意図推定処理部１０７の意図推定に関する素性抽出方法を言語ごとに変更することにより、英語、ドイツ語、および中国語など様々な言語に対して当該対話制御装置１００，１００ａ，１００ｂを適用することができる。
【００７９】
また、上述した実施の形態１−３で示した対話制御装置１００，１００ａ，１００ｂを、単語が特定のシンボル（スペースなど）で区切られる言語に適用する場合であって、言語的な構造を解析することが難しい場合には、形態素解析部１０５に替えて入力の自然言語テキストに対して例えばパターンマッチの方法により、＜施設名＞、＜住所＞などの抽出処理を行う構成を設け、抽出した＜施設名＞、＜住所＞などに対して意図推定処理部１０７が意図推定処理を実行するように構成してもよい。
【００８０】
また、上述した実施の形態１−３では、入力として音声入力が行われる音声認識により得られたテキストに対して形態素解析処理を行う場合を例に説明を行ったが、入力として音声認識を用いず、例えばキーボードなどの入力手段を用いたテキスト入力に対して形態素解析処理を実行するように構成してもよい。これにより、音声入力以外の入力テキストに対しても同様の効果を得ることができる。
【００８１】
また、上述した実施の形態１−３では、音声認識結果のテキストに対して形態素解析部１０５が形態素解析処理を行って意図推定を行う構成を示したが、音声認識エンジン結果自体が形態素解析結果を含む場合は、その情報を直接用いて意図推定を実施可能に構成することができる。
【００８２】
また、上述した実施の形態１−３では、意図推定の方法として、最大エントロピー法による学習モデルを想定した例を用いて説明を行ったが、意図推定の方法を限定するものではない。
【産業上の利用可能性】
【００８３】
この発明に係る対話制御装置は、使用者が発話した語彙に対してどの語彙が使用できないかを、使用者にフィードバックすることが可能なため、音声認識システムなどが導入されたカーナビゲーション・携帯電話・携帯端末・情報機器などとの対話の円滑性の向上のために供するのに適している。
【符号の説明】
【００８４】
１００，１００ａ，１００ｂ  対話制御装置、１０１  音声入力部、１０２  音声認識辞書記憶部、１０３  音声認識部、１０４  形態素解析辞書記憶部、１０５  形態素解析部、１０６，１０６ａ  意図推定モデル記憶部、１０７  意図推定処理部、１０８，１０８ａ  未知語抽出部、１０９  対話シナリオデータ記憶部、１１０  応答文生成部、１１１  音声合成部、１１２  音声出力部、１１３  構文解析部、１１４  既知語抽出部。
【図１】
2016067418.tif 000003
【図２】
2016067418.tif 000004
【図３】
2016067418.tif 000005
【図４】
2016067418.tif 000006
【図５】
2016067418.tif 000007
【図６】
2016067418.tif 000008
【図７】
2016067418.tif 000009
【図８】
2016067418.tif 000010
【図９】
2016067418.tif 000011
【図１０】
2016067418.tif 000012
【図１１】
2016067418.tif 000013
【図１２】
2016067418.tif 000014
【図１３】
2016067418.tif 000015
【図１４】
2016067418.tif 000016
【図１５】
2016067418.tif 000017
【図１６】
2016067418.tif 000018
【図１７】
2016067418.tif 000019
【図１８】
2016067418.tif 000020
【図１９】
2016067418.tif 000021
【図２０】
2016067418.tif 000022
【国際調査報告】
2016067418.tif 000023
2016067418.tif 000024
2016067418.tif 000025
2016067418.tif 000026