(57)【要約】【課題】ユーザからの音声による指示に対する制御を実行する音声出力装置を提供する。【解決手段】音声出力装置は、ユーザによる発話音声を示す音声情報の入力を受け付ける受付部と、音声情報に基づいて、発話音声に対する返事に相当するロボット発話データを生成する生成部と、ロボット発話データを出力する出力部と、を備え、生成部は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、第２の音声情報に、第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、第２の音声情報に基づいて、ロボット発話データを生成する。【選択図】図１
2020021040.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによる発話音声を示す音声情報の入力を受け付ける受付部と、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成部と、
前記ロボット発話データを出力する出力部と、を備え、
前記生成部は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
情報処理装置。
【請求項２】
前記生成部は、前記第２の音声情報に前記第１の音声情報を否定する単語が含まれる場合に、前記第２の音声情報にのみ基づくロボット発話データを生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記生成部は、前記第２の音声情報に前記第１の音声情報と接続する単語が含まれる場合に、前記第１の音声情報と前記第２の音声情報との双方に対するロボット発話データを生成する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記生成部は、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれている場合に、いずれが正しいのかを問い合わせるロボット発話データを生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記ロボット発話データに基づく音声を出力する音声出力部と、
前記ユーザの発話音声を集音する音声収集部とを更に備え、
前記出力部は、前記音声出力部に前記ロボット発話データを出力し、
前記受付部は、前記音声収集部が収集した発話音声を前記音声情報として入力され、
前記出力部は、第１の音声情報に基づくロボット発話データを出力しているときに、所定時間内に第２の音声情報を受け付けると、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには前記第１の音声情報に対して生成されたロボット発話データの前記音声出力部への出力を中止する
ことを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
前記出力部は、前記音声出力部へのロボット発話データの出力を中止した後に、前記第２の音声情報に基づく新たなロボット発話データを出力する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記出力部は、外部のスピーカーに前記ロボット発話データを出力し、
前記受付部は、外部のマイクが収集した発話音声を前記音声情報として入力を受け付けるものであり、
前記出力部は、前記外部のスピーカーが第１の音声情報に基づくロボット発話データに基づく音声を音声出力しているときに前記ユーザから受け付けた発話音声に基づく第２の音声情報を受け付け、当該第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには前記第１の音声情報に対して生成されたロボット発話データに基づく音声の出力を中止する中止指示を出力する
ことを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項８】
前記出力部は、前記中止指示を出力した後に、前記第２の音声情報に基づく新たなロボット発話データを出力する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記生成部は、前記ユーザに対して問い合わせをするためのロボット発話データを生成するとともに、当該問い合わせに対する回答として望まれる言葉のカテゴリを決定し、
前記生成部は、前記問い合わせに対する回答としての、前記第１の音声情報と前記第２の音声情報とを受け付けた場合に、前記第１の音声情報に前記決定したカテゴリに属する単語が前記第１の単語として含まれており、前記第２の音声情報に前記決定したカテゴリに属する単語が前記第２の単語として含まれていたときに、少なくとも前記第２の音声情報に基づいて、ロボット発話データを生成する
ことを特徴とする請求項１〜８のいずれか一項に記載の情報処理装置。
【請求項１０】
ユーザによる発話音声を示す音声情報の入力を受け付ける受付ステップと、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成ステップと、
前記ロボット発話データを出力する出力ステップと、を含み、
前記生成ステップは、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
コンピュータが実行する音声出力方法。
【請求項１１】
コンピュータに、
ユーザによる発話音声を示す音声情報の入力を受け付ける受付機能と、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成機能と、
前記ロボット発話データを出力する出力機能と、を実現させ、
前記生成機能は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
音声出力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザからの音声指示に基づいて制御を行う情報処理装置、音声出力方法、及び、音声出力プログラムに関する。
【背景技術】
【０００２】
従来、人工知能を利用した機器の開発が目覚ましい。その中には、ユーザからの音声による指示に従って、指示された内容を実行する機器がある。例えば、特許文献１には、ユーザからの音声による指示に従って、音楽を再生したり、アラームを実行したり、計算をしたり、他の機器（例えば、照明装置）の制御を行ったりする情報処理装置（スマートスピーカー）が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−０３２８９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ユーザは指示をする際に言い間違いをしたり、考えを改めたりして、言い直しをすることがある。しかしながら、従来のスマートスピーカーの場合、最初にユーザが発話した内容に対する応答をするので、言い直しをした場合に対する応答をしないという問題がある。また、このような場合に、ユーザには、再度指示をし直すという煩雑さや、最初に指示した内容に対する応答の発話の終了を待たなければ次の指示ができないという問題もあった。
【０００５】
そこで、本発明は上記問題に鑑みて成されたものであり、ユーザが言い直しをした場合であっても、適切に応答をすることができる音声出力装置、音声出力方法及び音声出力プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一態様に係る情報処理装置は、ユーザによる発話音声を示す音声情報の入力を受け付ける受付部と、音声情報に基づいて、発話音声に対する返事に相当するロボット発話データを生成する生成部と、ロボット発話データを出力する出力部と、を備え、生成部は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、第２の音声情報に、第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、第２の音声情報に基づいて、ロボット発話データを生成する。
【０００７】
上記課題を解決するために、本発明の一態様に係る音声出力方法は、ユーザによる発話音声を示す音声情報の入力を受け付ける受付ステップと、音声情報に基づいて、発話音声に対する返事に相当するロボット発話データを生成する生成ステップと、ロボット発話データを出力する出力ステップと、を含み、生成ステップは、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、第２の音声情報に、第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、第２の音声情報に基づいて、ロボット発話データを生成する。
【０００８】
上記課題を解決するために、本発明の一態様に係る音声出力プログラムは、コンピュータに、ユーザによる発話音声を示す音声情報の入力を受け付ける受付機能と、音声情報に基づいて、発話音声に対する返事に相当するロボット発話データを生成する生成機能と、ロボット発話データを出力する出力機能と、を実現させ、生成機能は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、第２の音声情報に、第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、第２の音声情報に基づいて、ロボット発話データを生成する。
【０００９】
上記情報処理装置において、生成部は、第２の音声情報に第１の音声情報を否定する単語が含まれる場合に、第２の音声情報にのみ基づくロボット発話データを生成することとしてもよい。
【００１０】
上記情報処理装置において、生成部は、第２の音声情報に第１の音声情報と接続する単語が含まれる場合に、第１の音声情報と第２の音声情報との双方に対するロボット発話データを生成することとしてもよい。
【００１１】
上記情報処理装置において、生成部は、第２の音声情報に、第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれている場合に、いずれが正しいのかを問い合わせるロボット発話データを生成することとしてもよい。
【００１２】
上記情報処理装置において、ロボット発話データに基づく音声を出力する音声出力部と、ユーザの発話音声を集音する音声収集部とを更に備え、出力部は、音声出力部にロボット発話データを出力し、受付部は、音声収集部が収集した発話音声を音声情報として入力され、出力部は、第１の音声情報に基づくロボット発話データを出力しているときに、所定時間内に第２の音声情報を受け付けると、第２の音声情報に、第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには第１の音声情報に対して生成されたロボット発話データの音声出力部への出力を中止することとしてもよい。
【００１３】
上記情報処理装置において、出力部は、音声出力部へのロボット発話データの出力を中止した後に、第２の音声情報に基づく新たなロボット発話データを出力することとしてもよい。
【００１４】
上記情報処理装置において、出力部は、外部のスピーカーにロボット発話データを出力し、受付部は、外部のマイクが収集した発話音声を音声情報として入力を受け付けるものであり、出力部は、外部のスピーカーが第１の音声情報に基づくロボット発話データに基づく音声を音声出力しているときにユーザから受け付けた発話音声に基づく第２の音声情報を受け付け、当該第２の音声情報に、第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには第１の音声情報に対して生成されたロボット発話データに基づく音声の出力を中止する中止指示を出力することとしてもよい。
【００１５】
上記情報処理装置において、出力部は、中止指示を出力した後に、第２の音声情報に基づく新たなロボット発話データを出力することとしてもよい。
【００１６】
上記情報処理装置において、生成部は、ユーザに対して問い合わせをするためのロボット発話データを生成するとともに、当該問い合わせに対する回答として望まれる言葉のカテゴリを決定し、生成部は、問い合わせに対する回答としての、第１の音声情報と第２の音声情報とを受け付けた場合に、第１の音声情報に決定したカテゴリに属する単語が第１の単語として含まれており、第２の音声情報に決定したカテゴリに属する単語が第２の単語として含まれていたときに、少なくとも第２の音声情報に基づいて、ロボット発話データを生成することとしてもよい。
【発明の効果】
【００１７】
本発明の一態様に係る情報処理装置は、ユーザが言い直しをした場合であっても、適切に応答をすることができる。
【図面の簡単な説明】
【００１８】
【図１】通信システムの構成例を示す図である。
【図２】音声サーバの構成例を示すブロック図である。
【図３】スマートスピーカーの構成例を示すブロック図である。
【図４】制御モデルの構成例を示すデータ概念図である。
【図５】ユーザによる言い直しがない場合の音声サーバとスマートスピーカーとの間のやり取りの例を示すシーケンス図である。
【図６】ユーザによる言い直しが発生した場合の音声サーバとスマートスピーカーとの間のやり取りの例を示すシーケンス図である。
【図７】音声サーバの動作例を示すフローチャートである。
【発明を実施するための形態】
【００１９】
＜実施形態＞
本発明の一実施形態について、図面を参照しながら説明する。
【００２０】
本発明に係る情報処理装置たりえる音声出力装置１００は、ユーザ１０からの音声による指示入力に基づいて、指示入力の内容に対応する回答となる発話音声を出力する装置である。音声出力装置１００は、ユーザからの音声による指示（問い合わせ）があった場合に、その指示に対応する回答となるロボット発話データを生成して出力する。このとき、音声出力装置１００は、ユーザが言い直しをしたかどうかを判定し、適宜、適切と推定される回答を示すロボット発話データを生成する。音声出力装置１００は、どのような態様で実現されてもよく、図１に示すようなサーバ装置やコンピュータシステムとして実現されてもよいし、スマートスピーカーのようなスピーカー、ロボットなどに内包される態様で実現されてもよい。音声出力装置１００は、スマートスピーカー、ロボットまたはＡＩアシスタントを制御するための制御装置であってもよい。
【００２１】
以下、このような音声出力装置１００について説明する。
【００２２】
（システム構成）
図１に示すように、通信システム１は、ユーザ１０からの音声による指示（問い合わせ）を受け付ける機器としてスマートスピーカー２００と、ユーザ１０からの音声による指示に対する応答を示すロボット発話データを生成する音声出力装置１００と、を含む。
【００２３】
スマートスピーカー２００は、マイクを内蔵しており、ユーザの発話音声を含む周囲の音声を逐次集音し、集音して得られる音声データを音声出力装置１００に送信する。また、スマートスピーカー２００は、音声出力装置１００から送信されたロボット発話データに基づく音声を出力する。
【００２４】
音声出力装置１００は、音声データを受信し、受信した音声データからユーザ１０の指示を抽出し、ユーザ１０の指示に応じた回答を示すロボット発話データを生成する。そして、生成したロボット発話データをスマートスピーカー２００に送信する。
【００２５】
図１の例では、ユーザ１０が、「東京の天気を教えて？」と問い合わせをしたあとで、「あ、やっぱり、品川の天気を教えて？」と言い直しをしたことに対して、スマートスピーカー２００が、「品川の天気ですね？今日の品川の天気は…」と回答をしている例を示している。なお、「品川」および「新橋」は日本の地名である。このように、本実施の形態に係るスマートスピーカー２００は、音声出力装置１００からの指示の下、ユーザ１０の言い直しに対応して、言い直された方の指示に従った応答をすることができる。
【００２６】
図１に示すように、音声出力装置１００は、ネットワーク３００を介して、スマートスピーカー２００と通信可能に接続されている。また、図示はしていないが、ネットワーク３００には、音声出力装置１００が情報を収集する情報処理装置が通信可能に接続されていてよい。
【００２７】
ネットワーク３００は、音声出力装置１００と各種の機器との間を相互に接続させるためのネットワークであり、例えば、無線ネットワークや有線ネットワークである。具体的には、ネットワーク３００は、ワイヤレスＬＡＮ（ｗｉｒｅｌｅｓｓ  ＬＡＮ：ＷＬＡＮ）や広域ネットワーク（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ：ＷＡＮ）、ＩＳＤＮｓ（ｉｎｔｅｇｒａｔｅｄ  ｓｅｒｖｉｃｅ  ｄｉｇｉｔａｌ  ｎｅｔｗｏｒｋｓ）、無線ＬＡＮｓ、ＬＴＥ（ｌｏｎｇ  ｔｅｒｍ  ｅｖｏｌｕｔｉｏｎ）、ＬＴＥ−Ａｄｖａｎｃｅｄ、第４世代（４Ｇ）、第５世代（５Ｇ）、ＣＤＭＡ（ｃｏｄｅ  ｄｉｖｉｓｉｏｎ  ｍｕｌｔｉｐｌｅ  ａｃｃｅｓｓ）、ＷＣＤＭＡ（登録商標）、イーサネット（登録商標）などである。
【００２８】
また、ネットワーク３００は、これらの例に限られず、例えば、公衆交換電話網（Ｐｕｂｌｉｃ  Ｓｗｉｔｃｈｅｄ  Ｔｅｌｅｐｈｏｎｅ  Ｎｅｔｗｏｒｋ：ＰＳＴＮ）やブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））、ブルートゥースローエナジー（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）、光回線、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）回線、衛星通信網などであってもよく、どのようなネットワークであってもよい。ネットワーク３００は、ユーザ１０の住居に備えられる場合には、ホームネットワークと呼称されることもある。
【００２９】
また、ネットワーク３００、例えば、ＮＢ−ＩｏＴ（Ｎａｒｒｏｗ  Ｂａｎｄ  ＩｏＴ）や、ｅＭＴＣ（ｅｎｈａｎｃｅｄ  Ｍａｃｈｉｎｅ  Ｔｙｐｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）であってもよい。なお、ＮＢ−ＩｏＴやｅＭＴＣは、ＩｏＴ向けの無線通信方式であり、低コスト、低消費電力で長距離通信が可能なネットワークである。
【００３０】
また、ネットワーク３００は、これらの組み合わせであってもよい。また、ネットワーク３００は、これらの例を組み合わせた複数の異なるネットワークを含むものであってもよい。例えば、ネットワーク３００は、ＬＴＥによる無線ネットワークと、閉域網であるイントラネットなどの有線ネットワークとを含むものであってもよい。
【００３１】
（音声出力装置の構成例）
図２は、音声出力装置１００の構成例を示すブロック図である。図２に示すように、音声出力装置１００は、例えば、受信部１１０と、記憶部１２０と、制御部１３０と、送信部１４０と、を備える。音声出力装置１００は、ユーザが発話した内容について、言い直しかどうかを認識し、その認識に基づいてユーザが求めている回答を特定して、その回答内容を示すロボット発話データを生成、出力するものである。即ち、音声出力装置１００は、ユーザの発話に基づく第１音声情報、その後の発話に基づく第２音声情報とを解析し、第２音声情報に、第１音声情報に含まれる文言と同一カテゴリとなる文言がある場合に言い直しであると認識する。ここで同一カテゴリとは、少なくとも第１音声情報と第２音声情報とに、ユーザが知りたい情報の種別のことをいい、例えば、ユーザがある場所の天気を知りたい場合に、その場所を示す情報がカテゴリとなり、例えば、ユーザが知りたい情報が店舗に係るものであって、店の種類（例えば、紳士服、小物、家具など）を音声により指示する場合に、その店の種類がカテゴリとなるが、カテゴリはこれらの例に限定されるものではない。
【００３２】
受信部１１０は、ネットワーク３００を介して、スマートスピーカー２００から音声データを受信する通信インターフェースである。受信部１１０は、ユーザからの音声による指示入力を示す音声データを受信する。受信部１１０は、音声データを受信すると、制御部１３０に伝達する。また、受信部１１０は、図示しないネットワーク３００に接続されている他の情報処理装置から送信された情報を受信する。
【００３３】
記憶部１２０は、音声出力装置１００が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部１２０は、例えば、ＨＤＤ、ＳＳＤ、フラッシュメモリなど各種の記憶媒体により実現される。なお、音声出力装置１００は、プログラムを記憶部１２０に記憶し、当該プログラムを実行して、制御部１３０が、制御部１３０に含まれる各機能部としての処理を実行してもよい。このプログラムは、音声出力装置１００に、制御部１３０が実行する各機能を実現させる。
【００３４】
記憶部１２０は、受信した受信した音声データに基づいてユーザからの指示内容を推定するための音声解析を行う音声解析プログラムや、解析結果に基づいて、ロボット音声を示すロボット発話データを生成するための音声データ生成プログラムを記憶している。記憶部１２０は、入力された音声について、状況に応じて生成するロボット発話データを生成するための回答モデル情報１２１を記憶している。回答モデル情報１２１の詳細については、後述する。
【００３５】
制御部１３０は、音声出力装置１００の各部を制御するものであり、例えば、中央処理装置（ＣＰＵ）やマイクロプロセッサ、ＡＳＩＣ、ＦＰＧＡなどであってもよい。なお、制御部１３０は、これらの例に限られず、どのようなものであってもよい。
【００３６】
制御部１３０は、音声解析部１３１と、生成部１３２と、を含む。
【００３７】
音声解析部１３１は、受け付けた音声情報に基づく音声を解析する機能を有し、解析結果を生成部１３２に伝達する。音声情報の解析は、従来の音声認識技術を用いてよく、入力された音声をテキストデータに変換し、文脈を解析する。文脈の解析には、例えば、従来の形態素解析を利用することができる。音声解析部１３１は、解析結果を、生成部１３２に伝達する。
【００３８】
生成部１３２は、伝達された音声結果に基づいて、ロボット発話データを生成する機能を有する。生成部１３２は、従来と同様に受け付けている音声情報の解析結果に応じた回答を示すロボット発話データを生成する。また、従来の機能に加えて、生成部１３２は、音声解析部１３１から、解析結果を受け付けた場合に、その所定時間前に別の解析結果を受け付けているかに応じて、ロボット発話データを生成する。即ち、第１の音声情報を解析した第１の解析結果を受け付けてから、所定時間内に、第２の音声情報を解析した解析結果を受け付けた場合に、それまでの発話の流れや、第１の音声情報と第２の音声情報とのうち、いずれを優先するのか、あるいは、いずれに対しても返答するのかなどを判断し、そのうえで、状況に応じた回答となるロボット発話データを生成する。また、生成部１３２は、第１の音声情報から所定時間後に第２の音声情報を受け付けた場合に、第２の音声情報に対応したロボット発話データを作成することとしてよい（しなくともよい）。生成部１３２は、状況に応じてどのような回答をするかについては、記憶部１２０に記憶されている回答モデル情報１２１を参照して決定し、ロボット発話データを生成する。生成部１３２は、生成したロボット発話データを送信部１４０に伝達し、スマートスピーカー２００に送信するように指示する。
【００３９】
送信部１４０は、制御部１３０（生成部１３２）からの指示に従って、スマートスピーカー２００に、スマートスピーカー２００に発声させるためのロボット発話データを送信する機能を有する通信インターフェースである。
【００４０】
以上が、音声出力装置１００の構成例である。
【００４１】
（スマートスピーカーの構成例）
図３は、スマートスピーカー２００の構成例を示すブロック図である。図３に示すように、スマートスピーカー２００は、受信部２１０と、記憶部２２０と、スピーカー２３０と、マイク２４０と、送信部２５０と、を備える。
【００４２】
受信部２１０は、音声出力装置１００から制御信号（音声データ）を受信する通信インターフェースである。受信部２１０は、受信した制御信号（音声データ）をスピーカー２３０に伝達する。
【００４３】
記憶部２２０は、スマートスピーカー２００が動作する上で必要とする各種のプログラムやデータを記憶する機能を有する。記憶部２２０は、例えば、ＨＤＤ、ＳＳＤ、フラッシュメモリなど各種の記憶媒体により実現される。なお、スマートスピーカー２００は、プログラムを記憶部２２０に記憶し、当該プログラムを実行して、図示しない制御部が、スマートスピーカー２００として実現すべき機能を実現することとしてよい。記憶部２２０は、例えば、マイク２４０が集音した音声データを記憶する。
【００４４】
スピーカー２３０は、音声出力装置１００から送信されて受信した制御信号（音声データ）を再生する機能を有する。
【００４５】
マイク２４０は、スマートスピーカー２００の周囲の音声を集音する機能を有する。マイク２４０は、１つのマイクロフォンで構成されてもよいし、複数のマイクロフォンで構成されていてもよい。また、マイクロフォンは、集音の方向が限定された指向性のものであってもよい。マイク２４０は、集音した音声を示す音声データを、記憶部２２０に記憶する。
【００４６】
送信部２５０は、記憶部２２０に記憶されている音声データを、音声出力装置１００に送信する機能を有する通信インターフェースである。送信部２５０は、記憶部２２０に記憶されている音声データを逐次、音声出力装置１００に送信することとしてもよいし、ユーザからの音声による指示入力があったと検出できた場合に、その前後の所定長分の音声データを送信することとしてもよい。
【００４７】
以上が、スマートスピーカー２００の構成例である。
【００４８】
（回答モデル情報１２１の構成例）
次に、回答モデル情報１２１の一例を、図４を用いて説明する。図４は、回答モデル情報１２１のデータ構成例を示すデータ概念図である。
【００４９】
図４に示すように、回答モデル情報１２１は、状況情報４１０と、対応情報４２０とが対応付けられた情報である。
【００５０】
状況情報４１０は、音声情報の入力を受け付けている状況、受け付けた音声情報の解析結果から示される状況を示す情報である。
【００５１】
対応情報４２０は、対応する状況情報４１０に応じて、音声出力装置１００が、どのような基準でロボット音声発話データを生成する（あるいは、生成しない）かを規定する情報である。
【００５２】
例えば、状況情報４１０として、「・第１音声情報受信後、所定時間後に第２音声情報を取得」していること、「第２音声情報に質問に該当する単語なし」である場合に、音声出力装置１００は、対応する対応情報４２０に示すように、「第２音声情報に対応するロボット発話データを生成しない」か、投げかけられた音声がどういう音声であったかを「問い合わせをするロボット発話データを生成する」という対応をする。
【００５３】
また、例えば、状況情報４１０として、「・第１音声情報受信後、所定時間内に第２音声情報を取得」し、「・第２音声情報に第１音声情報に含まれる同じカテゴリの単語があり」、「第２音声情報に第１音声情報を否定する単語が含まれる」場合に、音声出力装置１００は、「第２音声情報に対応するロボット発話データのみを生成する」という対応をする。
【００５４】
このように、音声出力装置１００は、状況情報４１０において設定されている状態になったときに、対応する対応情報４２０で示される対応をして、ロボット発話データを生成する（生成しないこともある）。
【００５５】
（通信システム１のやり取りの例）
図５は、通信システム１において、ユーザによる言い直しが発生しなかった場合の、スマートスピーカー２００と、音声出力装置１００との間のやり取りを示すシーケンス図である。
【００５６】
図５に示すように、スマートスピーカー２００は、ユーザからの音声（以下、第１音声）の入力を受け付ける（ステップＳ５０１）。スマートスピーカー２００は、受け付けた音声をデジタルデータに変換した第１音声情報を、音声出力装置１００に、送信する（ステップＳ５０２）。
【００５７】
音声出力装置１００は、第１音声情報を受信すると、その内容を解析する（ステップＳ５０３）。そして、音声出力装置１００は、解析結果、即ち、第１音声情報に基づく、応答を示すロボット発話データを生成する（ステップＳ５０４）。音声出力装置１００は、生成したロボット発話データをスマートスピーカー２００に送信する（ステップＳ５０５）。
【００５８】
ロボット発話データを受信したスマートスピーカー２００は、そのロボット発話データに基づく音声を出力し（ステップＳ５０６）、ステップＳ５０１で受け付けたユーザからの指示（問い合わせ）に対する応答をする。
【００５９】
図５に示す処理は、従来のスマートスピーカーにおいても実現できている動作になる。
【００６０】
一方、図６は、通信システム１において、ユーザによる言い直しが発生した場合のスマートスピーカー２００と、音声出力装置１００との間のやり取りを示すシーケンス図である。図６に示すシーケンス図において、ステップＳ５０１〜Ｓ５０３に係る処理は、図５に示す処理におけるステップＳ５０１〜Ｓ５０３の処理と同様であるので、説明を省略する。
【００６１】
第１音声情報を送信後、スマートスピーカー２００は、更にユーザから次の音声（以下、第２音声）の入力を受け付ける（ステップＳ６０１）。すると、スマートスピーカー２００は、第２音声をデジタルデータに変換した第２音声情報を音声出力装置１００に送信する（ステップＳ６０２）。
【００６２】
すると、音声出力装置１００は、第２音声情報を解析する（ステップＳ６０３）。この解析の結果、第１音声情報を受信してから、所定時間（言い直しを受け付ける時間として適切な時間であって、例えば、５秒）内に、第２音声情報を受信していること、第２音声情報の中に、第１音声情報の指示に含まれる単語と同じカテゴリの単語が含まれているとする。
【００６３】
このような場合に、音声出力装置１００は、少なくとも第２音声情報に基づいて、ロボット発話データを生成する（ステップＳ６０４）。ここで、少なくとも第２音声情報に基づいて生成するとは、第２音声情報のみに基づいて生成することと、第１音声情報と第２音声情報との双方に基づいて音声データを生成することとの両方の場合を含む。
【００６４】
音声出力装置１００は、生成したロボット発話データを、スマートスピーカー２００に送信する（ステップＳ６０５）。
【００６５】
スマートスピーカー２００は、ロボット発話データを受信すると、そのロボット発話データに基づく音声を出力する（ステップＳ６０６）。
【００６６】
このように、音声出力装置１００は、ユーザが続けざまに発話を行った場合に、それが言い直しかどうかを、その前の発話から所定時間内であるか否か、そして、発話内容に共通するカテゴリの単語が含まれるかによって判定して、適切に応答を行うことができる。
【００６７】
（音声出力装置１００の動作例）
図７は、音声出力装置１００の動作であって、機器の制御を行う際の動作を示すフローチャートである。
【００６８】
図７に示すように、音声出力装置１００の受信部１１０は、スマートスピーカー２００から、ユーザが発話した音声を示す第１音声情報を受信する（ステップＳ７０１）。受信部１１０は、受信した第１音声情報を、制御部１３０に伝達する。
【００６９】
制御部１３０の音声解析部１３１は、伝達された第１音声情報を解析し（ステップＳ７０２）、どのような指示内容（問い合わせ内容）であるかを特定する。当該指示の特定については、予め、記憶部１２０に問い合わせ内容となり得る単語のリストを保持しておくことにより特定することができる。音声解析部１３１は、解析結果を生成部１３２に伝達する。
【００７０】
そして、生成部１３２は、解析結果、即ち、第１音声情報を解析した結果に基づいて、その第１音声情報で示される指示内容（問い合わせ内容）に対する応答となるロボット発話音声データの生成を開始する（ステップＳ７０３）。
【００７１】
ロボット発話音声データの生成開始した後に、制御部１３０は、受信部１１０から新たな音声情報である第２音声情報を受け付けたか否かを判定する（ステップＳ７０４）。
【００７２】
第２音声情報を受け付けていない場合には（ステップＳ７０４のＮＯ）、生成部１３２は、そのまま第１音声情報に対する応答であるロボット発話データを生成し、送信部１４０を介して、スマートスピーカー２００に送信させて（ステップＳ７０５）、処理を終了する。
【００７３】
一方、第２音声情報を受け付けていた場合（ステップＳ７０４のＹＥＳ）、音声解析部１３１は、第１音声情報の受け付けから所定時間内であるか否かを判定する（ステップＳ７０６）。当該判定は、第１音声情報の受信時間と、第２音声情報の受信時間との差分をとり、所定時間となる閾値と比較することにより判定することができる。なお、第２音声情報を受け付けたタイミングにおいて、第１音声情報に対する応答であるロボット発話データの生成、スマートスピーカー２００への送信まで完了していてもよいし、完了していなくてもよい。
【００７４】
第２音声情報の受付が、第１音声情報の受付から、所定時間内であると判定した場合に（ステップＳ７０６のＹＥＳ）、音声解析部１３１は、第２音声情報に、第１音声情報に含まれる単語と同一カテゴリの単語があるか否かを判定する（ステップＳ７０７）。ここで、同一カテゴリの単語があるか否かは、例えば、第１音声情報に含まれる単語であって、問い合わせの目的格となる単語についての属性と、第２音声情報に含まれる単語であって、同一の問い合わせの目的格となる単語についての属性とで一致するものがあるか否かによって判定することができる。一具体例を挙げれば、第１音声情報として、「東京の天気を教えて」という問い合わせがある場合に、「天気」が問い合わせの内容となり、その問い合わせの目的格は「東京」となる。このとき、「東京」には、地名、都市名、場所といった属性を持ち得る。そして、第２音声情報として、「品川の天気を教えて」との問い合わせがある場合に、同様に、「天気」が問い合わせの内容となり、その問い合わせの目的格は「品川」となる。このとき、「品川」には、地名、都市名、場所となった属性を持ち得るので、第２音声情報には、第１音声情報に含まれる単語と同一のカテゴリの単語があると判定することができる。
【００７５】
第２音声情報に、第１音声情報に含まれる単語と同一カテゴリの単語があると判定できた場合に（ステップＳ７０７のＹＥＳ）、音声解析部１３１による第１音声情報と第２音声情報との間の文脈の解析と併せた、第２音声情報の解析結果を生成部１３２に伝達する。そして、生成部１３２は、伝達された解析結果に基づいて、少なくとも、第２音声情報に基づくロボット発話データ、即ち、第２音声情報に対する応答となるロボット発話データを生成する。そして、生成部１３２は、送信部１４０を介して、生成したロボット発話データを、スマートスピーカー２００に送信して（ステップＳ７０９）、処理を終了する。ここで、少なくとも第２音声情報に対する応答となるロボット発話データとは、第２音声情報に含まれる問い合わせに対する応答を含み、場合によっては、第１音声情報に含まれる問い合わせに対する応答を含むことがある。また、このとき生成部１３２は、まだ第１音声情報に基づくロボット発話音声データの生成、送信を完了していない場合には、その生成、送信を中止したうえで、少なくとも第２音声情報に基づくロボット発話データの生成、出力を行う。これは、スマートスピーカー２００が、第１音声情報に基づくロボット発話データを音声として出力している最中に、ユーザ１０が発話を行って第２音声情報が得られた場合であって、第２音声情報と第１音声情報とが同一カテゴリの単語であると判定されたときに、音声出力装置１００は、スマートスピーカー２００に第１音声情報に基づくロボット発話データによる音声出力の中止を指示するものであってもよい。そして、この中止の指示の後に、生成部１３２は、第２音声情報に基づくロボット発話データを生成し、音声衆力装置は、第２音声情報に基づくロボット発話データをスマートスピーカー２００に送信することとしてもよい。
【００７６】
一方、ステップＳ７０６において、音声解析部１３１が第２音声情報を、第１音声情報を受け付けてから所定時間内に受け付けていないと判断した場合（ステップＳ７０６のＮＯ）や、ステップＳ７０７において、音声解析部１３１が第２音声情報に第１音声情報に含まれる単語と同一カテゴリの単語がないと判定した場合（ステップＳ７０７のＮＯ）には、音声解析部１３１は、第２音声情報に質問に該当する単語があるか否かを判定する（ステップＳ７０８）。ここでの、所定時間とは、例えば、スマートスピーカー２００が第１音声情報に基づくロボット発話データを、音声として、出力している間の時間のことであってよい。
【００７７】
第２音声情報に、質問に該当する単語が含まれている場合（ステップＳ７０８のＹＥＳ）、生成部１３２は、その質問内容に対する回答となるロボット発話データを生成し、送信部１４０を介して、スマートスピーカー２００に送信し（ステップＳ７１０）、処理を終了する。
【００７８】
また、第２音声情報に質問に該当する単語がない場合には（ステップＳ７０８のＮＯ）、ステップＳ７０５の処理に移行する。なお、このとき、ステップＳ７０４の処理に移行するのではなく、ユーザに対して、もう一度問い合わせを言い直してもらうためのリクエストをするロボット発話データを生成して、スマートスピーカー２００に送信するように構成されてもよい。
【００７９】
なお、スマートスピーカー２００の動作は、ユーザからの音声をマイク２４０で受け付けて、その音声情報を、送信部２５０から音声出力装置１００に送信し、その音声出力装置１００から出力されたロボット発話データを受信部２１０で受信して、スピーカー２３０から出力（報知）するだけであるので、詳細な説明については省略する。
【００８０】
（応答具体例）
以下には、スマートスピーカー２００が集音した音声データに基づいて、音声出力装置１００が実行する処理について具体的に説明する。以下の具体例では、ユーザが天気を問い合わせる例を用いて説明する。
【００８１】
（例１）ユーザが、「東京の天気を教えて？…あ、やっぱり、品川の天気を教えて？」と発言した場合
【００８２】
例１は、図４に示す回答モデル情報１２１において、状況情報４１０として、欄４１２の状況を満たす場合に該当する。この場合、対応情報４２０としては、欄４２２に示される対応をすることになる。具体的には、この場合、まず、音声出力装置１００には、第１音声情報として、「東京の天気を教えて？」という情報が伝達され、その解析を行うことになる。そして、「天気」という文言から、天気予報サーバにアクセスし、「東京」の天気情報を取得する。そして、その天気情報に基づくロボット発話データを生成する。ここで、音声出力装置１００には、第２音声情報として、「あ、やっぱり、品川の天気を教えて？」という情報が伝達される。
【００８３】
すると、音声出力装置１００は、第２音声情報を、第１音声情報を受信してから所定時間内（例えば、５秒）に受信しているか判断し、所定時間内に受信したと判断したものとする。すると、生成部１３２は、第１音声情報に含まれる「天気」と、第２音声情報に含まれる「天気」というアプリケーションを指定する文言があること、そして、「東京」と「品川」という「地名」という同じカテゴリの単語が双方に含まれていることを検出する。
【００８４】
この場合、生成部１３２は、第２音声情報が言い直しであると判断し、第１音声情報に対するロボット発話データの生成を中止し、第２音声情報に対する回答を示すロボット発話データを生成する。例えば、生成部１３２は、天気予報サーバにアクセスし、品川の天気情報を取得し、その内容に応じたロボット発話データ（例えば、品川の天気は晴れ。気温は○○度。）を生成する。
【００８５】
すると、この場合、スマートスピーカー２００は、品川の天気についてのみのアナウンスを行うことになるので、ユーザは、指示のし直しをすることなく、真に知りたい情報を得ることができる。
【００８６】
なお、このとき、生成部１３２は、更に、ユーザの発言の文脈を解析して、後者が言い直しであるとの判定の確度を向上させてもよい。上記の例で言えば、「やっぱり」という前者を否定する文脈が有ることから、後者が言い直しであるとの判定の確度を向上させることができる。
【００８７】
（例２）ユーザが、「東京の天気を教えて？…あ、それから、大阪も」と発言した場合
【００８８】
例２は、図４に示す回答モデル情報１２１において、状況情報４１０として、欄４１３の状況を満たす場合に該当する。この場合、対応情報４２０としては、欄４２３に示される対応をすることになる。具体的には、この場合、まず、音声出力装置１００には、第１音声情報として、「東京の天気を教えて？」という情報が伝達され、その解析を行うことになる。そして、「天気」という文言から、天気予報サーバにアクセスし、「東京」の天気情報を取得する。そして、その天気情報に基づくロボット発話データを生成する。ここで、音声出力装置１００には、第２音声情報として、「あ、それから、大阪も」という情報が伝達される。
【００８９】
すると、音声出力装置１００は、第２音声情報を、第１音声情報を受信してから所定時間内（例えば、５秒）に受信しているか判断し、所定時間内に受信したと判断したものとする。すると、生成部１３２は、第１音声情報に含まれる「東京」と、第２音声情報に含まれる「大阪」という「地名」という同じカテゴリの単語が双方に含まれていることを検出する。
【００９０】
一方で、この場合、音声解析部１３１は、第２音声情報の文脈を解析し、「それから」や「も」という追加の意味合いを有する語が含まれていると解釈する。このような場合に、生成部１３２は、第２音声情報が言い直しではなく、追加の情報の要求であると判断し、第１音声情報に対するロボット発話データの生成、送信を行うとともに、第２音声情報に対する回答を示すロボット発話データを生成して、送信する。したがって、スマートスピーカー２００には、東京と大阪の双方の天気の情報が伝えられ、スマートスピーカー２００は、双方の天気の情報を報知する。
【００９１】
（例３）ユーザが、「東京の天気を教えて？」と発言し、所定時間経過後に、「あと、大阪も」と発言した場合
【００９２】
例３は、図４に示す回答モデル情報１２１において、状況情報４１０として、欄４１１の状況を満たす場合に該当する。この場合、対応情報４２０としては、欄４２１に示される対応をすることになる。具体的には、この場合、まず、音声出力装置１００には、第１音声情報として、「東京の天気を教えて？」という情報が伝達され、その解析を行うことになる。そして、音声出力装置１００は、その内容から東京の天気に関する情報を含むロボット発話データを生成する。その所定時間経過後に、音声出力装置１００には、第２音声情報として、「あと、大阪も」という情報が伝達された場合、最初の質問から所定時間経過しているため、音声出力装置１００は、双方の関連性がないと判定する。
【００９３】
このような場合には、音声出力装置１００は、第１音声情報に対する応答のロボット発話データのみを生成するか、第１音声情報に対する応答のロボット発話データを生成し、送信しつつ、「もう一度、質問をお願いします」というリクエストをするロボット発話データを生成して、送信する構成にしてよい。このとき、第１音声情報に対する応答のロボット発話データを生成せずに、「もう一度、質問をお願いします」というリクエストをするロボット発話データのみを生成して、送信するように構成してもよい。
【００９４】
（例４）スマートスピーカー２００から「どこの天気が知りたいですか？」と問い合わせをし、ユーザが、「新橋…、品川」と発言した場合
【００９５】
この場合、音声出力装置１００は、第１音声情報として、「新橋」という音声を受け付ける。そして、第２音声情報として、「品川」という音声を受け付ける。ユーザの発言は、スマートスピーカー２００がした質問に対する回答になり、「新橋」も「品川」も共に「地名」という同一カテゴリの単語であると音声解析部１３１は、解析することができる。このような場合に、音声出力装置１００は、上記（例１）に示したように、言い直しであると判断して、後者の「品川」がユーザが知りたい天気の場所であると認定して、「品川」の天気を示すロボット発話データを生成して、送信することとしてもよいが、双方の地名間の距離が所定距離内であれば、その双方の地名が含まれる地域の天気を取得して、その情報を報知するようにしてもよい。この例の場合であれば、音声出力装置１００は、「新橋」及び「品川」が含まれる「東京」という地域の天気の情報を示すロボット発話データを生成して、スマートスピーカー２００に送信するようにしてもよい。この例４の場合についての回答モデル情報１２１は、図４には示していないが、状況情報４１０としては、例えば、
「・第１音声情報受信後、所定時間内に第２音声情報を取得。
・第２音声情報に質問に該当する単語あり」となり、
対応情報４２０としては、
「・第２音声情報に対応するロボット発話データのみを生成する」ということになる。
【００９６】
以上のように、音声出力装置１００は、ユーザからの様々な態様の問い合わせについて、自然な応答をするためのロボット発話データを生成することができる。また、この例４によれば、音声出力装置１００は、ユーザの音声中に、第１音声情報を否定する文言がなくとも、即ち、特定語彙を有する文言がなくとも、ユーザによる言い直しを認識して、自然な応答をするためのロボット発話データを生成することができる。
【００９７】
（例５）スマートスピーカー２００から「どこの天気が知りたいですか？」と問い合わせをし、ユーザが、「新橋、…、品川！品川！品川！」と発言した場合
【００９８】
この場合、音声出力装置１００は、第１音声情報として、「新橋」という音声を受け付ける。そして、第２音声情報として、「品川」という音声を受け付ける。ユーザの発言は、スマートスピーカー２００がした質問に対する回答になり、「新橋」も「品川」も共に「地名」という同一カテゴリの単語であると音声解析部１３１は、解析することができる。一方で、例５の場合、例４とは異なり、ユーザが複数回同じ文言を発声していることを音声出力装置１００は、解析により認識することができる。このような場合に、音声出力装置１００は、質問に対する回答として、所定時間内に、同一カテゴリの文言が複数含まれるような場合には、その複数の文言のうち、ユーザが最も多く発言した文言を、質問に対する回答として特定して、ロボット発話データを生成するようにしてもよい。また、特に、ユーザが連続して、同じ文言を繰り返していることが解析できた場合に、その繰り返しの文言を、質問に対する回答として特定して、ロボット発話データを生成するようにしてもよい。
【００９９】
この例５の場合についての回答モデル情報１２１は、図４には示していないが、状況情報４１０としては、例えば、
「・第１音声情報受信後、所定時間内に第２音声情報を取得。
・第１音声情報と第２音声情報に複数の回答となる文言あり」、となり、
対応情報４２０としては、
「・第１音声情報と第２音声情報とで、回答となる文言のうち最も登場回数の多い文言に対応するロボット発話データのみを生成する」ということとしてよい。
また、あるいは、状況情報４１０としては、例えば、
「・第１音声情報受信後、所定時間内に第２音声情報を取得。
・第２音声情報に複数回繰り返されている文言あり」となり、
対応情報４２０としては、
「・第２音声情報で複数回繰り返されている文言に基づくロボット発話データを生成する」ということとしてよい。
【０１００】
このように複数回強調されたような回答こそ、ユーザが知りたい回答であると推測することができるので、音声出力装置１００は、そのような文言をユーザの知りたい情報の回答であると特定して、自然な応答をするためのロボット発話データを生成することができる。なお、ユーザが強調している回答に基いてロボット発話データを生成する場合に、回答数ではなく、ユーザの声の音量に基づくものであってもよい。即ち、ユーザの声の音量が高い方の回答がユーザが知りたい事項に対する回答であると特定するようにしてもよい。
【０１０１】
（まとめ）
このように、音声出力装置１００は、ユーザが言い直しをした場合に、その言い直しが、言い直しをする前の言葉を発したタイミングから所定時間以内に行われていること、言い直しの中の単語に、言い直しをする前の言葉の中の単語と同じカテゴリを含むか否かによって、第２音声情報が言い直しかどうかを判定することができる。したがって、音声出力装置１００は、第１音声情報と、第２音声情報とについて、その双方についてのロボット発話データを作成する必要があるのか、それとも、第２音声情報に対する回答のみを示すロボット発話データを生成すればいいのかの判断をすることができる。そして、言い直しであると判断できた場合に、音声出力装置１００は、第２音声情報の方が、ユーザが実際に問い合わせたい内容であると判断して応答を行うので、より、自然な会話の応答をすることができる音声出力装置１００を提供することができる。
【０１０２】
（補足）
上記実施形態に係る装置は、上記実施形態に限定されるものではなく、他の手法により実現されてもよいことは言うまでもない。以下、各種変形例について説明する。
【０１０３】
（１）上記実施形態においては、天気に関する問い合わせをする例を示しているが、音声出力装置１００は、天気以外の事例に対しても対応できるのは言うまでもない。ユーザからの天気の問い合わせに限らず、例えば、家電操作、音楽再生、買い物等のリスト管理などにおいても活用できる。家電操作の場合であれば、一例として、「冷房を２４度、…２６度でつけて」という指示を受け付けたとする。このとき、音声出力装置１００は、２４度と発話してから２６度と発話するまでの間の時間が所定時間以内である場合に、「２４度」と「２６度」とが同じ温度というカテゴリに属することから「２６度」の方を、ユーザが指定した情報であると解釈して、音声出力装置１００は、家電を操作する情報処理装置として、冷房を２６度の設定でオンする制御を行うことができる。また、音楽再生の例であれば、ユーザが「Ａをかけて。…Ｂの方がいいかな」という発話をしたとする。この場合、音声出力装置１００は、「Ａをかけて」との発言から「Ｂの方がいいかな」という発言までの間の時間が所定時間以内であれば、「Ａ」と「Ｂ」がどちらも音楽（曲）というカテゴリに属することから、スマートスピーカーに対して、「Ｂ」の曲の再生を指示する。また、買い物等のリスト管理を行うのであれば、「ニンジン、ナス、ジャガイモ、…じゃなくてサツマイモ」という発言をユーザがしたときに、音声出力装置１００は、買い物リストを管理する情報処理装置として、「ジャガイモ」という発言から、「サツマイモ」という発言までの時間が所定時間以内であれば、サツマイモのみを買い物リストに追加する。このように、音声出力装置１００は、天気の問い合わせ以外にも様々な場面におけるユーザによる言い直しに対応して、ユーザにとって望ましいと推定される処理を行うことができる。また、その他の例としては、経路案内における地名などについても、同様のことが言える。
【０１０４】
（２）上記実施の形態において、音声出力装置１００が保持する機能の一部を別の装置が保持し、その別の装置に音声出力装置１００が実行する処理の一部を負担させてもよい。例えば、音声解析機能を有する他の情報処理装置が、まず、スマートスピーカー２００が受け付けたユーザの音声を解析し、その解析結果を音声出力装置１００に転送する。そして、音声出力装置１００は、転送された解析結果に基づくロボット発話データを生成するように構成されていてもよい。
【０１０５】
（３）上記実施の形態において、音声出力装置１００は、実行する処理に応じて複数存在してよい。例えば、天気に関する情報を通知する装置、料理に関する情報を通知する装置、家電を操作する装置など、様々な装置が考えられる。このとき、通信システム１は、更に、スマートスピーカー２００が受け付けた音声を先に解析し、どの装置にその音声に基づく問い合わせを行うのかを決定する情報処理装置が含まれてもよい。そのような構成において、その情報処理装置において、上記実施の形態に示す言い直しの判定と、音声を伝達する装置の指定に役立てることとしてもよい。例えば、ユーザが、「天気…じゃなくて、電車の発車時間を教えて」というような問い合わせをしたい種別についての言い直しをした場合に、回答をする装置を、天気の情報を管理する装置とするか電車の時間を管理する装置とするかについて、同時に実行できないことから、そのうちの一方であって、言い直しであると判定された場合に、後者の方に対応する装置に、音声による問いかけを転送するというように構成されてもよい。
【０１０６】
（４）上記実施の形態においては、スマートスピーカー２００と、音声出力装置１００を別の装置として、説明したが、スマートスピーカー２００と、音声出力装置１００とは、一体に形成されてもよい。即ち、スマートスピーカー２００は、音声出力装置１００が有する機能の一部又は全部を備えることとしてもよい。
【０１０７】
（５）上記実施の形態においては、ユーザとの対話における文脈、質問に対する回答として望ましい文言として、同じカテゴリの単語が、第１の音声情報と第２の音声情報とに含まれるか否かを判定していた。しかしながら、音声出力装置１００側（スマートスピーカー２００側）から、ユーザに対して、何らかの問いかけをする場合には、生成部１３２は、その問いかけためのロボット発話データを生成する際に、その問いかけに対する回答としてふさわしいと想定されるカテゴリをも決定し、その決定したカテゴリを記憶部１２０に記憶する。そして、音声出力装置１００の制御部１３０は、問いかけに対するユーザからの回答として、第１の音声情報と第１の音声情報から所定時間内に第２の音声情報とが得られたときに、第１の音声情報に、決定した（記憶した）カテゴリに属する単語が含まれるか否かを判定する。また、同様に、第２の音声情報に、決定した（記憶した）カテゴリに属する単語が含まれるか否かを判定する。そして、両音声情報に、決定したカテゴリに属する単語が含まれていた場合に、生成部１３２は、少なくとも、第２の音声情報に基づくロボット発話データを生成することとしてもよい。こうすることで、第１の音声情報及び第２の音声情報に同じカテゴリの単語が含まれるか否かを検証する際の絞り込みが容易になり、処理時間を短縮することができる。
【０１０８】
（６）本開示の各実施形態のプログラムは、コンピュータに読み取り可能な記憶媒体に記憶された状態で提供されてもよい。記憶媒体は、「一時的でない有形の媒体」に、プログラムを記憶可能である。記憶媒体は、ＨＤＤやＳＤＤなどの任意の適切な記憶媒体、またはこれらの２つ以上の適切な組合せを含むことができる。記憶媒体は、揮発性、不揮発性、または揮発性と不揮発性の組合せでよい。なお、記憶媒体はこれらの例に限られず、プログラムを記憶可能であれば、どのようなデバイスまたは媒体であってもよい。
【０１０９】
なお、音声出力装置１００は、例えば、記憶媒体に記憶されたプログラムを読み出し、読み出したプログラムを実行することによって、各実施形態に示す複数の機能部の機能を実現することができる。また、当該プログラムは、任意の伝送媒体（通信ネットワークや放送波等）を介して、音声出力装置１００に提供されてもよい。音声出力装置１００は、例えば、インターネット等を介してダウンロードしたプログラムを実行することにより、各実施形態に示す複数の機能部の機能を実現する。
【０１１０】
なお、当該プログラムは、例えば、ＡｃｔｉｏｎＳｃｒｉｐｔ、ＪａｖａＳｃｒｉｐｔ(登録商標)などのスクリプト言語、Ｏｂｊｅｃｔｉｖｅ―Ｃ、Ｊａｖａ(登録商標)などのオブジェクト指向プログラミング言語、ＨＴＭＬ５などのマークアップ言語などを用いて実装できる。
【０１１１】
音声出力装置１００における処理の少なくとも一部は、１以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよい。また、音声出力装置１００の各機能部は、上記実施形態に示した機能を実現する１または複数の回路によって実現されてもよく、１の回路により複数の機能部の機能が実現されることとしてもよい。
【０１１２】
（７）本開示の実施形態を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本開示の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を１つに組み合わせたり、或いは分割したりすることが可能である。また、各実施形態に示す構成を適宜組み合わせることとしてもよい。
【符号の説明】
【０１１３】
１００  音声出力装置
１１０  受信部
１２０  記憶部
１３０  制御部
１３１  音声解析部
１３２  生成部
１４０  送信部
【図１】
2020021040.tif 000003
【図２】
2020021040.tif 000004
【図３】
2020021040.tif 000005
【図４】
2020021040.tif 000006
【図５】
2020021040.tif 000007
【図６】
2020021040.tif 000008
【図７】
2020021040.tif 000009
【手続補正書】
【提出日】令和1年12月23日(2019.12.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザによる発話音声を示す音声情報の入力を受け付ける受付部と、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成部と、
前記ロボット発話データを出力する出力部と、を備え、
前記生成部は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
情報処理装置。
【請求項２】
前記生成部は、前記第２の音声情報に前記第１の音声情報を否定する単語が含まれる場合に、前記第２の音声情報にのみ基づくロボット発話データを生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記生成部は、前記第２の音声情報に前記第１の音声情報と接続する単語が含まれる場合に、前記第１の音声情報と前記第２の音声情報との双方に対するロボット発話データを生成する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記生成部は、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれている場合に、いずれが正しいのかを問い合わせるロボット発話データを生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記ロボット発話データに基づく音声を出力する音声出力部と、
前記ユーザの発話音声を集音する音声収集部とを更に備え、
前記出力部は、前記音声出力部に前記ロボット発話データを出力し、
前記受付部は、前記音声収集部が収集した発話音声を前記音声情報として入力され、
前記出力部は、第１の音声情報に基づくロボット発話データを出力しているときに、所定時間内に第２の音声情報を受け付けると、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには前記第１の音声情報に対して生成されたロボット発話データの前記音声出力部への出力を中止する
ことを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
前記出力部は、前記音声出力部へのロボット発話データの出力を中止した後に、前記第２の音声情報に基づく新たなロボット発話データを出力する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記出力部は、外部のスピーカーに前記ロボット発話データを出力し、
前記受付部は、外部のマイクが収集した発話音声を前記音声情報として入力を受け付け
るものであり、
前記出力部は、前記外部のスピーカーが第１の音声情報に基づくロボット発話データに基づく音声を音声出力しているときに前記ユーザから受け付けた発話音声に基づく第２の音声情報を受け付け、当該第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同種類の第２の単語が含まれているときには前記第１の音声情報に対して生成されたロボット発話データに基づく音声の出力を中止する中止指示を出力する
ことを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項８】
前記出力部は、前記中止指示を出力した後に、前記第２の音声情報に基づく新たなロボ
ット発話データを出力する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記生成部は、前記ユーザに対して問い合わせをするためのロボット発話データを生成するとともに、当該問い合わせに対する回答として望まれる言葉のカテゴリを決定し、
前記生成部は、前記問い合わせに対する回答としての、前記第１の音声情報と前記第２の音声情報とを受け付けた場合に、前記第１の音声情報に前記決定したカテゴリに属する単語が前記第１の単語として含まれており、前記第２の音声情報に前記決定したカテゴリに属する単語が前記第２の単語として含まれていたときに、少なくとも前記第２の音声情報に基づいて、ロボット発話データを生成する
ことを特徴とする請求項１〜８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記情報処理装置は、前記第２の音声情報に対するロボット発話データを生成するにあたり、ロボット発話データを生成するための回答を生成する複数の装置の中から、前記第２の音声情報の内容に適した前記複数の装置の中のいずれかの装置に対して前記第２の音声情報に関する情報を送信する
ことを特徴とする請求項１〜９のいずれか一項に記載の情報処理装置。
【請求項１１】
ユーザによる発話音声を示す音声情報の入力を受け付ける受付ステップと、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成ステップと、
前記ロボット発話データを出力する出力ステップと、を含み、
前記生成ステップは、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
コンピュータが実行する音声出力方法。
【請求項１２】
コンピュータに、
ユーザによる発話音声を示す音声情報の入力を受け付ける受付機能と、
前記音声情報に基づいて、前記発話音声に対する返事に相当するロボット発話データを生成する生成機能と、
前記ロボット発話データを出力する出力機能と、を実現させ、
前記生成機能は、第１の音声情報を受け付けてから、所定時間内に第２の音声情報を受け付けた場合であって、前記第２の音声情報に、前記第１の音声情報に含まれる第１の単語と同じカテゴリの第２の単語が含まれているときに、少なくとも、前記第２の音声情報に基づいて、ロボット発話データを生成する
音声出力プログラム。