JP2020154269A - 複数人対話システムおよび複数人対話方法 - Google Patents
複数人対話システムおよび複数人対話方法 Download PDFInfo
- Publication number
- JP2020154269A JP2020154269A JP2019055669A JP2019055669A JP2020154269A JP 2020154269 A JP2020154269 A JP 2020154269A JP 2019055669 A JP2019055669 A JP 2019055669A JP 2019055669 A JP2019055669 A JP 2019055669A JP 2020154269 A JP2020154269 A JP 2020154269A
- Authority
- JP
- Japan
- Prior art keywords
- dialogue
- user
- unit
- voice
- input unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback of the input speech
Abstract
【課題】複数人の利用者を前提とした環境において、既存の単独の利用者との対話を想定したシステムを用いて、適切に対話を行う複数人対話システムを提供する。【解決手段】利用者と、利用者が属するグループに対応するセッションとが関連付けられた情報を記憶する記憶部と、利用者の対話の内容を、セッションごとに対話可能な対話システムの入力形式に変換する入力部と、入力部により変換された利用者の対話の内容を、記憶部に記憶されている情報を用いて利用者が属するグループに対応するセッションを指定して対話システムに送信し、対話システムから返信された対話に対する応答を受信する制御部と、制御部が受信した応答を出力形式に変換して出力する出力部と、を設けるようにした。【選択図】図1
Description
本発明は複数人対話システムおよび複数人対話方法に関し、例えば複数人と対話する複数人対話システムおよび複数人対話方法に適用して好適なものである。
近年、公共空間において利用者と音声による会話を行いながらサービスを提供する対話エージェントが開発されている。対話エージェントは、機動可能な機構を備えたロボット、ディスプレイ内に表示されるキャラクタ等として実装される。対話エージェントは、マイクロフォン、カメラなどの入力装置により、利用者の要求と周囲の状況とを検知し、スピーカ、ディスプレイなどの出力装置により、利用者が求める情報を提示する。この際、入力装置から得られる各種の情報から、出力装置に出力すべき情報を計算する必要がある。この一連のシステムを対話システムと称する。また、主に音声による入出力を想定した対話システムを音声対話システムと称する。
ここで、利用者の満足度が高い対話を行う音声対話システムを実現するには、様々な技術が必要となる。
基本的な要素技術としては、高精度な音声認識技術、高品質な音声合成技術、対話の状況を管理して適切な応答を生成する対話制御技術などがある。
対話エージェントが音声出力している最中にユーザが割り込んで発言した音声に対してもそれを受け付ける機能(バージイン機能)もよく用いられる。その際、対話制御部は、その割り込みのタイミングに応じた適切な応答を生成することが望ましい。
また、特に公共空間における対話エージェントは、複数人の利用者と対峙するケースが多く、そのような状況下で適切に行動することが求められる。
例えば、特許文献1では、画像データから親と子とを判別し、親子が対話しているかを判別し、過去に検出した子の活動内容に基づく最新の話題を提供する音声対話プログラムが開示されている。
また、例えば、特許文献2では、利用者の数、各利用者の人間関係などを音声および画像から推定し、ある利用者との対話中に別の利用者から注目を受ければ、その利用者に話しかけたり、別の利用者と相談したりするマルチモーダル対話装置が開示されている。
一方で、一対一の音声対話、テキスト対話を想定した自動応答システム、スマートスピーカ向け対話システム、チャットボットシステムなどが現在広く普及している。対応するコンテンツ生成システムも提供され、数多くのシステム(サービス)が利用可能な状態となっている。
複数人の利用者を前提とした環境において、対話エージェントを動作させる場合、特許文献1および特許文献2に記載の方法では、それぞれ独自の方法で対話コンテンツを作成する必要があり、導入にいたるまでに時間を要したり、コストが大きくなったりする。このようなことから、既存の単独の利用者との対話を想定したシステムを用いて、適切に対話を行う複数人対話システムが求められている。しかしながら、既存の単独の利用者との対話を想定したシステムを用いると、複数人の利用者を前提とした環境においては、対話が混線してしまう問題がある。
本発明は以上の点を考慮してなされたもので、複数人の利用者を前提とした環境において、既存の単独の利用者との対話を想定したシステムを用いて、適切に対話を行う複数人対話システムを提案しようとするものである。
かかる課題を解決するため本発明においては、利用者と、前記利用者が属するグループに対応するセッションとが関連付けられた情報を記憶する記憶部と、利用者の対話の内容を、セッションごとに対話可能な対話システムの入力形式に変換する入力部と、前記入力部により変換された利用者の対話の内容を、前記記憶部に記憶されている情報を用いて前記利用者が属するグループに対応するセッションを指定して前記対話システムに送信し、前記対話システムから返信された前記対話に対する応答を受信する制御部と、前記制御部が受信した応答を出力形式に変換して出力する出力部と、を設けるようにした。
上記構成によれば、グループに対応するセッションを指定して利用者の対話の内容を対話システムに送信するので、例えば、複数人の利用者を前提とした環境において、既存の単独の利用者との対話を想定したシステムを用いた場合であっても、対話を混戦させることなく、対話を適切に制御することができる。
本発明によれば、対話の混線を回避することができる。
以下図面について、本発明の一実施の形態を詳述する。本実施の形態は、複数人の利用者と主に音声を用いてコミュニケーションを取りながらサービスを提供する対話システムに関するものである。本実施の形態の複数人対話システムでは、複数人の利用者を前提とした環境において、既存の単独の利用者との対話を想定したシステムを用いて、適切に対話を行う構成を備える。以下では、かかる構成について説明する。
なお、以下の説明では、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分(枝番を除く部分)を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、利用者を特に区別しないで説明する場合には、「利用者130」と記載し、個々の利用者を区別して説明する場合には、「利用者130−1」、「利用者13−2」のように記載することがある。
(1)第1の実施の形態
図1において、100は全体として第1の実施の形態による複数人対話システムを示す。
図1において、100は全体として第1の実施の形態による複数人対話システムを示す。
図1は、複数人対話システム100に係る構成の一例を示す図である。複数人対話システム100は、対話エージェント110を含んで構成される。なお、複数人対話システム100には、対話システム120などの他の構成要素が含まれていてもよい。
対話エージェント110は、ロボット等であり、複数の利用者130(利用者130−1、利用者130−2、利用者130−3等)と同一の空間に配置される。対話エージェント110は、無線アクセスポイント140と無線LAN(Local Area Network)接続で通信し、対話システム120と任意のデータを送受信することができる。
図2は、対話エージェント110に係る構成の一例を示す図である。
対話エージェント110は、一般的なコンピュータの構成と同様の構成を有する。より具体的には、対話エージェント110は、CPU(Central Processing Unit)210、記憶装置220、およびNIC(Network Interface Card)230を備える。また、対話エージェント110は、入出力デバイスとして、マイク240、カメラ250、スピーカ260、およびモータ270を備える。それぞれのコンポーネントは、バス280を通してデータを送受信することができる。
記憶装置220(記憶部の一例)は、RAM(Random Access Memory)、HDD(Hard Disk Drive)等であり、プログラムとして音声認識プログラム221(入力部の一例)、音声合成プログラム222(出力部の一例)、対話制御プログラム223(制御部の一例)、モータ制御プログラム224(動作部の一例)、利用者グループ検出プログラム225(検出部の一例)を備える。これらのプログラムは、対話エージェント110の起動時に、記憶装置220内に存在する図示しないOS(Operating System)により、CPU210に読み込まれて実行される。
なお、対話エージェント110の機能(入力部、出力部、制御部、動作部、検出部など)は、例えば、CPU210がプログラムを記憶装置220に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、対話エージェント110の機能の一部は、対話エージェント110と通信可能な他のコンピュータにより実現されてもよい。
音声認識プログラム221は、マイク240から音声波形を受信し、音声を検出したとき、検出した音声をテキストに変換し、その音声が発せられた音源の方向を計測し、計測した音源の方向をテキストとともに音声認識結果として対話制御プログラム223に送信する。
音源の方向を計測するためには、マイク240を複数搭載し、GCC−PHAT(Generalized Cross Correlation with Phase Transform)法、MUSIC(Multiple Signal
Classification)法などにより計算を行う。音声をテキストに変換する手段としては、市販の音声認識の製品、オープンソースソフトウェア等を搭載したり、インターネット上に公開されている音声認識API(Application Programming Interface)に音声波形をNIC230を通して送信したりすることで実現できる。
Classification)法などにより計算を行う。音声をテキストに変換する手段としては、市販の音声認識の製品、オープンソースソフトウェア等を搭載したり、インターネット上に公開されている音声認識API(Application Programming Interface)に音声波形をNIC230を通して送信したりすることで実現できる。
音声合成プログラム222は、対話制御プログラム223からテキストを受信し、受信したテキストに従って音声波形を生成し、スピーカ260に送信する。音声合成プログラム222は、市販の製品、オープンソースソフトウェアなどを利用することができる。
対話制御プログラム223は、利用者130の対話を制御する。対話制御プログラム223の詳細については図4を用いて後述する。
モータ制御プログラム224は、対話制御プログラム223からモータ270に関する指示を受信し、モータ270の制御を行う。モータ270は、対話エージェント110の位置、向きを変更したり、マイク240、カメラ250などの入力装置の位置、向きを変更したり、対話エージェント110に搭載された図示しない腕、目などを動かして利用者130とのコミュニケーションを円滑にしたりするという目的で利用される。
利用者グループ検出プログラム225は、例えば、カメラ250で撮影された利用者130の画像から利用者130を検出する。
また、記憶装置220は、DB(Database)として、利用者グループDB226を備える。利用者グループDB226については図5を用いて後述する。
図3は、対話システム120に係る構成の一例を示す図である。
対話システム120は、サーバ装置などであり、ネットワーク内のクライアント装置(例えば、対話エージェント110)に対してテキスト対話サービスを提供する。対話システム120は、一般的なコンピュータの構成と同様の構成を有する。より具体的には、対話システム120は、CPU310、記憶装置320、およびNIC330を備える。それぞれのコンポーネントは、バス340を通してデータを送受信することができる。
記憶装置320は、プログラムとして、対話制御プログラム321(制御部の一例)およびセッション推定プログラム322(推定部の一例)を備える。これらのプログラムは、対話システム120の起動時に、記憶装置320内に存在する図示しないOSにより、CPU310に読み込まれて実行される。
対話システム120の機能(制御部、推定部など)は、例えば、CPU310がプログラムを記憶装置320に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、対話システム120の機能の一部は、対話システム120と通信可能な他のコンピュータにより実現されてもよい。
また、記憶装置320は、対話コンテンツDB323およびセッション管理DB324を備える。対話コンテンツDB323には、想定入力テキスト、現状態ID、出力テキスト、次状態IDの組からなるレコードがサービス開発者により複数登録されている。セッション管理DB324では、セッションIDとセッションIDに対応する状態IDとの組からなるレコードを管理する。
対話制御プログラム321は、対話エージェント110からのテキスト(以下では、入力テキストと適宜称する。)とセッションIDとをNIC330を介して受信する。対話制御プログラム321は、入力テキストを解析し、対話コンテンツDB323を用いて、テキスト(以下では、出力テキストと適宜称する。)を生成し、生成した出力テキストをNIC330を介して対話エージェント110に送信する。
また、対話制御プログラム321は、セッションIDからセッション管理DB324を参照して現状態IDを取得し、対話コンテンツDB323において現状態IDが一致し、さらに入力テキストに一番近い想定入力テキストを持つ出力テキストを選択する。また、対話制御プログラム321は、同レコードの次状態IDをセッション管理DB324に書き出す。
セッション推定プログラム322は、対話エージェント110からの入力テキストを「セッション推定モード」として受信する。この場合、セッション推定プログラム322は、セッションIDからセッション管理DB324を参照して現状態IDを取得し、対話コンテンツDB323において現状態IDが一致し、さらに入力テキストに一番近い想定入力テキストを持つ出力テキストを選択する。このときの入力テキストと想定入力テキストとの一致度を推定信頼度とし、最も推定信頼度が高いセッションIDとその推定信頼度とを、セッション推定結果として対話エージェント110に送信する。入力テキストと想定入力テキストとの一致度を得る方法としては、編集距離に基づく既存技術、ElasticSearchなどのソフトウェアを用いる。
対話システム120においては、以上で述べた、セッション管理、単独話者との対話機能などを備えている一般のテキスト対話サービスを用いることができる。このことは、本発明の効果の1つとして挙げられる。
図4は、対話制御プログラム223の処理に係るフローチャートの一例を示す図である。
ステップS410では、対話制御プログラム223は、システムを終了するか否かを判定する。対話制御プログラム223は、システムを終了すると判定した場合、処理を終了し、システムを終了しないと判定した場合、ステップS420に処理を移す。
ステップS420では、対話制御プログラム223は、音声認識プログラム221から音声認識結果を受信したか否かを判定する。対話制御プログラム223は、受信したと判定した場合、ステップS430に処理を移し、受信していないと判定した場合、ステップS410に処理を移す。換言するならば、対話制御プログラム223は、音声認識プログラム221から音声認識結果を受信するまで待機する。なお、音声認識結果には、上述したように、音声が変換されたテキストおよび音源の方向の情報が含まれる。
ステップS430では、対話制御プログラム223は、利用者グループDB226を更新する。より具体的には、対話制御プログラム223は、音声認識プログラム221から音声認識結果を受信すると、利用者グループDB226の各利用者IDの方向情報と照合し、最も方向が近い利用者IDを取得する。ここで、取得した方向と音声認識結果の方向との差が一定の閾値を超えた場合、新しい利用者130であると判定し、新しい利用者IDを付与し、利用者グループDB226を更新する。なお、この際、新しい利用者130が属するグループは、不明であるので、対話制御プログラム223は、セッションIDについては、後述するセッション推定モードのセッション推定結果を受けて登録する。
ステップS440では、対話制御プログラム223は、音声認識結果を対話システム120に「セッション推定モード」として送信する。対話システム120のセッション推定プログラム322は、セッション管理DB324に存在しているすべてのセッションに対して、そのセッションの現状態IDにおいて受信したテキストの一致度から計算される推定信頼度を計算し、最大の推定信頼度とそれを出力したセッションIDとをセッション推定結果として出力する。対話制御プログラム223は、推定信頼度が一定の閾値以上である場合、セッションIDを更新する。他方、対話制御プログラム223は、推定信頼度が一定の閾値より低い場合、利用者グループDB226の利用者IDのうち最も方向情報が近い利用者IDとの方向の差分が一定の閾値以下である場合、最も方向情報が近い利用者IDと同じグループに属しているとみなし、当該利用者のセッションIDを付与する。セッションIDが未付与となった場合、新しいセッションIDを割り当てる。このように、音声認識結果を受信するごと(発話ごと)に、グループが適切に形成されているかを判定し、利用者グループDB226のセッションIDを更新する。
ステップS450では、対話制御プログラム223は、音声認識結果とセッションIDとを対話システム120に送信する。なお、対話システム120の対話制御プログラム321は、上述したように、出力テキストを生成し、生成した出力テキストを対話エージェント110に送信する。
ステップS460では、対話制御プログラム223は、受信した出力テキストを音声合成プログラム222に送信する。このとき、出力テキストには、音声合成するテキスト以外にモータ制御情報を含むことができる。その場合、対話制御プログラム223は、モータ制御プログラム224にモータ制御情報を送信する。
例えば、対話制御プログラム223は、対話を行う利用者130が属するグループに属する全ての利用者130に対して同時または逐次的に出力を行うように、出力テキストを音声合成プログラム222に送信する。
また、例えば、対話制御プログラム223は、当該セッションIDと同じ値を持つすべての利用者の方向情報を利用者グループDB226から取得し、各方向情報が示す方向に対話エージェント110が対面するようなモータ制御情報をモータ制御プログラム224に送信する。より具体的には、対話制御プログラム223は、出力テキストから変換される音声の発話区間全体(T)を方向情報の数(N)で等分割し、各分割点の時刻(Tn=T・n/N、n=1、・・・,N)に対して対話エージェント110全体を回転させるモータ270の目標位置を、それぞれの方向に設定する。
図5は、利用者グループDB226に係る構成の一例(利用者グループDB500)を示す図である。
利用者グループDB500は、利用者ID、方向情報、およびセッションIDを含んで構成されるレコードを複数格納する。対話制御プログラム223によりレコードの追加、参照、変更、削除が行われる。
なお、利用者130が入れ替わった場合、古いレコードの情報が残っていると正しく動作しないケースがある。その場合、例えば、カメラ250などのセンサにより利用者130が立ち去ったことを検出した場合、一定時間の情報更新がないなどの状況が発生した場合、対話制御プログラム223は、必要に応じてレコードを削除する。
以上により説明した内容で例えば音声対話システムを構成すれば、利用者の位置関係および会話内容に基づいて識別されたグループごとに、対話システムのセッションが自動的に作成され、それぞれの会話が混線することを防止することができる。
本実施の形態によれば、複数人の利用者がいる環境で、単独利用者との対話を想定したシステムを利用することができるので、導入にいたるまでに時間を削減したり、サービス開発コストを大幅に削減したりすることができる。
(2)第2の実施の形態
本実施の形態では、利用者の画像を用いることでグループ化の精度を高めている点が、第1の実施の形態と主に異なる。本実施の形態では、第1の実施の形態と異なる点について主に説明する。
本実施の形態では、利用者の画像を用いることでグループ化の精度を高めている点が、第1の実施の形態と主に異なる。本実施の形態では、第1の実施の形態と異なる点について主に説明する。
図6は、本実施の形態の対話エージェント110に係る構成の一例を示す図である。
記憶装置220は、さらに、利用者管理DB610を備える。利用者管理DB610は、利用者130の位置および利用者130が発話している区間(発話区間)を管理するためのDBである。より具体的には、利用者管理DB610は、利用者130の位置、利用者130の利用者ID、および発話区間を含んで構成されるレコードを複数格納する。
図7は、本実施の形態の利用者グループ検出プログラム225の処理に係るフローチャートの一例を示す図である。
ステップS710では、利用者グループ検出プログラム225は、システムを終了するか否かを判定する。利用者グループ検出プログラム225は、システムを終了すると判定した場合、処理を終了し、システムを終了しないと判定した場合、ステップS720に処理を移す。
ステップS720では、利用者グループ検出プログラム225は、カメラ250から画像を取得する。
ステップS730では、利用者グループ検出プログラム225は、画像内の人物および当該人物の位置(利用者130および利用者130の位置)を検出する。人物の検出には、一般的な顔検出技術、人物検出技術などを用いる。また、利用者グループ検出プログラム225は、画像内の人物と利用者管理DB610に登録済みの情報とを用いたトラッキングを行い、画像内の人物の利用者IDを特定する。トラッキングは、画像特徴量、バウンディングボックスの距離に基づく一般的な方法を用いることができる。当てはまる情報が利用者管理DB610にない場合、新規の利用者IDを付与する。
ステップS740では、利用者グループ検出プログラム225は、検出した画像内の人物が発話中であるかどうかを検出する。発話中の検出には、唇の動き検出、顔画像の動き特徴量からの検出、人物画像全体の動き特徴量からの検出などの一般的な手法を用いる。
ステップS750では、利用者グループ検出プログラム225は、検出結果として、利用者130の位置、利用者ID、および発話区間の情報を利用者管理DB610に登録する。
図8は、本実施の形態の対話制御プログラム223の処理に係るフローチャートの一例を示す図である。
ステップS810では、対話制御プログラム223は、音声認識結果に対応する音声の発話区間と、利用者管理DB610の発話区間とをマッチさせ(照合し)、一致した利用者管理DB610のレコードに紐付けられた利用者130の位置(位置情報)を音声認識結果に対応する音声の方向情報として用いる。または、発話区間が一致した利用者130の利用者IDを音声認識結果に対応する音声の利用者IDとして用いる。この場合、一致する利用者IDがないときは、新しい利用者130であると判定し、新しい利用者IDを付与し、利用者グループDB226を更新する。
なお、音声の発話区間(発話時間)については、音声認識結果に含まれていてもよいし、利用者IDと対応付けられて記憶装置220に記憶されていてもよい。
本実施の形態では、発話区間により、音声を発した利用者と画像の利用者との対応付けを行うことで、利用者をより正確に識別でき、グループ化の精度を更に高めることができる。
(3)第3の実施の形態
既存の対話システムでは、単独の利用者との対話を想定しているため、複数人の利用者を前提とした環境で各利用者の音声を認識し、その認識結果を入力すると、想定外の入力に対応できないという事態が生じ得る。本実施の形態によれば、このような事態を回避することができる点が第1の実施の形態と主に異なる。本実施の形態では、第1の実施の形態と異なる点について主に説明する。
既存の対話システムでは、単独の利用者との対話を想定しているため、複数人の利用者を前提とした環境で各利用者の音声を認識し、その認識結果を入力すると、想定外の入力に対応できないという事態が生じ得る。本実施の形態によれば、このような事態を回避することができる点が第1の実施の形態と主に異なる。本実施の形態では、第1の実施の形態と異なる点について主に説明する。
図9は、本実施の形態の対話エージェント110に係る構成の一例を示す図である。
記憶装置220は、さらに、入力変換プログラム910および入力変換ルールDB920を備える。
図10は、本実施の形態の対話制御プログラム223の処理に係るフローチャートの一例を示す図である。
ステップS1010では、対話制御プログラム223は、音声認識結果を対話システム120に送信する前に、音声認識結果が対話エージェント110に向けて発話されたものであるか否かを判定する。
より具体的には、対話制御プログラム223は、利用者130の発話区間においてカメラ250から得られた画像から対話エージェント110に対する顔または体全体の姿勢を検出し、対話エージェント110の方向を向いているかどうかを数値化する。具体的な手法としては、既存の画像処理技術である人物検出、顔検出、姿勢推定などで得られる特徴量を入力とし、数値を出力とする推定器を機械学習したものを用いる。
さらに、対話制御プログラム223は、利用者の発話区間において、マイク240から得られた音声から対話エージェント110に対する発話であるかどうかを数値化する。具体的な手法としては、所定の時間(例えば、20ミリ秒)ごとの音声区間ごとに、音声の特徴量をフーリエ変換により周波数領域に変換した特徴ベクトルを入力とし、それが時系列で入力されたときに数値を出力する推定器を機械学習したものを用いる。
対話制御プログラム223は、両者の数値の平均値が一定の閾値を超えたかどうかで、音声認識結果が対話エージェント110に向けて発話されたものか否かを判定する。
対話制御プログラム223は、音声認識結果が対話エージェント110に向けて発話されたものであると判定した場合、ステップS450に処理を移し、音声認識結果が対話エージェント110に向けて発話されたものでないと判定した場合、ステップS1020に処理を移す。
ステップS1020では、対話制御プログラム223は、音声認識結果を入力変換プログラム910に送信する。かかる入力変換プログラム910の処理については、図11を用いて後述する。対話制御プログラム223は、入力変換プログラム910から受信する内容(変更されたテキスト)で音声認識結果を上書きする。
図11は、本実施の形態の入力変換プログラム910の処理に係るフローチャートの一例を示す図である。
ステップS1110では、入力変換プログラム910は、システムを終了するか否かを判定する。入力変換プログラム910は、システムを終了すると判定した場合、処理を終了し、システムを終了しないと判定した場合、ステップS1120に処理を移す。
ステップS1120では、入力変換プログラム910は、対話制御プログラム223から入力テキストを受信したか否かを判定する。入力変換プログラム910は、受信したと判定した場合、ステップS1130に処理を移し、受信していないと判定した場合、ステップS1110に処理を移す。
ステップS1130では、入力変換プログラム910は、入力テキストを入力変換ルールDB920の各レコードの変換前と照合し、マッチしたレコードに対して変換後のルールで置き換える。例えば、正規表現を用いて変換前および変換後を記載しておくことにより、入力変換プログラム910は、入力テキストに現れる特定の表現を別の表現に置き換えることができる。
ステップS1140では、入力変換プログラム910は、変換したテキストを対話制御プログラム223に送信する。
図12は、本実施の形態の入力変換ルールDB920に係る構成の一例(入力変換ルールDB1200)を示す図である。
入力変換ルールDB1200は、変換前および変換後のレコードを複数保持する。例えば、正規表現を用いて変換前および変換後が記載されている。
以上により説明した内容で音声対話システムを構成すれば、第1の実施の形態の効果に加え、さらに利用者が対話エージェント向けにではなく他の利用者に話した内容についても、それを対話エージェントは対話システムに対してあたかも単独のユーザが連続して入力したテキストであるかのような変換を行って入力することで、単独ユーザとの対話向けに設計されたシステムは、適切な応答を返すことができる。
本実施の形態によれば、適切な応答を返すことができるので、対話が混線してしまう事態を低減することができる。
(4)他の実施の形態
なお上述の実施の形態においては、本発明を複数人対話システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
なお上述の実施の形態においては、本発明を複数人対話システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
また上述の実施の形態においては、対話として、発話を例に挙げて述べたが、本発明はこれに限らず、テキストの入力であってもよいし、手話であってもよいし、ジェスチャーであってもよいし、その他の意思表示であってもよい。
また上述の実施の形態においては、音源の場所を示す場所情報(音声の地理的情報)として、音源の方向を例に挙げて述べたが、本発明はこれに限らず、音源の位置、音源の距離などを用いてもよい。
また上述の実施の形態においては、画像内の人物(利用者)の場所を示す場所情報(画像の地理的情報)として、利用者の位置を例に挙げて述べたが、本発明はこれに限らず、利用者の方向、利用者の距離などを用いてもよい。
また上述の実施の形態においては、ステップS1010において、対話制御プログラム223が、両者の数値の平均値が一定の閾値を超えたかどうかで、音声認識結果が対話エージェント110に向けて発話されたものか否かを判定する場合について述べたが、本発明はこれに限らず、対話制御プログラム223が、何れか一方の数値が一定の閾値を超えたかどうかで、音声認識結果が対話エージェント110に向けて発話されたものか否かを判定するようにしてもよい。
また、上述の実施の形態において、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ部によって実行されることで、定められた処理を、適宜に記憶部(例えばメモリ)及び/又はインターフェース部(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサ部あるいはそのプロセッサ部を有する装置が行う処理としてもよい。また、プロセッサ部は、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit))を含んでもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
また、上述の実施の形態において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部または一部が1つのテーブルであってもよい。
また、上記の説明において、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、本発明は、例えば、下記の特徴的な構成を有する。
利用者(例えば、利用者130)と、上記利用者が属するグループに対応するセッションとが関連付けられた情報(例えば、利用者グループDB226、利用者グループDB500)を記憶する記憶部(例えば、記憶装置220)と、利用者の対話(例えば、発話(音声))の内容(例えば、音声波形)を、セッションごとに対話可能な対話システム(例えば、対話システム120)の入力形式(例えば、入力テキスト)に変換する入力部(例えば、音声認識プログラム221)と、上記入力部により変換された利用者の対話の内容を、上記記憶部に記憶されている情報を用いて上記利用者が属するグループに対応するセッションを指定して上記対話システムに送信し、上記対話システムから返信された上記対話に対する応答(例えば、出力テキスト)を受信する制御部(例えば、対話制御プログラム223)と、上記制御部が受信した応答を出力形式(例えば、音声波形)に変換して出力する出力部(例えば、音声合成プログラム222)と、を備えることを特徴とする。
上記構成によれば、グループに対応するセッションを指定して利用者の対話の内容を対話システムに送信するので、例えば、複数人の利用者を前提とした環境において、既存の単独の利用者との対話を想定したシステムを用いた場合であっても、対話を混戦させることなく、対話を適切に制御することができる。
上記入力部は、音声を受け付け、上記制御部は、上記入力部により受け付けられた音声が発せられた音源の場所から利用者を識別し、識別した利用者と上記場所を示す場所情報(例えば、利用者グループDB226、利用者グループDB500)とを関連付けて記憶し(例えば、ステップS430)、記憶している場所情報から、上記入力部により受け付けられた音声を発した利用者の近くに上記音声に係る対話に関係する人がいないと判定した場合、グループを作成し、上記音声を発した利用者と、作成したグループに対応するセッションとを関連付けて上記記憶部に記憶する(例えば、ステップS440およびステップS450)、ことを特徴とする。
上記構成によれば、例えば、音声の場所情報より利用者を識別し、グループを作成することができる。
カメラ(例えば、カメラ250)で撮影された画像から利用者を検出する検出部(例えば、利用者グループ検出プログラム225)を備え、上記検出部は、上記カメラで撮影された画像から検出した利用者の場所を示す場所情報を生成し、生成した場所情報と、上記利用者とを関連付けて記憶し(例えば、ステップS720〜ステップS750)、上記入力部は、音声を受け付け、上記制御部は、上記入力部で受け付けられた音声を発した利用者の場所を示す場所情報から利用者を識別し、識別した利用者の場所の近くに上記音声に係る対話に関係する人がいないと判定した場合、グループを作成し、上記音声を発した利用者と、作成したグループに対応するセッションとを関連付けて上記記憶部に記憶する(例えば、ステップS810、ステップS440)、ことを特徴とする。
上記構成によれば、例えば、画像の場所情報を用いて利用者を識別するので、利用者をより正確に識別でき、グループ化の精度を高めることができる。
上記検出部は、上記カメラで撮影された画像の利用者から音声が発せられた区間を検出し(例えば、ステップS740)、上記制御部は、上記入力部により受け付けられた音声が発せられた区間と、上記検出部により画像から検出された区間との一致度に基づいて、上記入力部で受け付けられた音声を発した利用者と、上記カメラで撮影された画像の利用者とを関連付け、上記音声を発した利用者を識別する(例えば、ステップS810)、ことを特徴とする。
上記構成によれば、例えば、発話区間により、音声を発した利用者と画像の利用者との対応付けを行うことで、利用者をより正確に識別でき、グループ化の精度を更に高めることができる。
上記出力部は、上記入力部で受け付けられた対話を行う利用者が属するグループに属する全ての利用者に対して出力を行う(例えば、ステップS460)、ことを特徴とする。
上記構成では、例えば、音声を発した利用者が属するグループに属する利用者に向けて出力が行われることで、他のグループが存在していたとしても、対話が混線してしまう事態を回避することができる。
上記入力部、上記制御部、および上記出力部が設けられる対話エージェント(例えば、対話エージェント110)を動作させる動作部(例えば、モータ制御プログラム224)を備え、上記動作部は、上記出力部により利用者の対話に対する応答が出力される間、上記利用者が属するグループに属する全ての利用者に対して上記対話エージェントを逐次的に対面させる(例えば、ステップS460)、ことを特徴とする。
上記構成では、例えば、利用者が属するグループに属する全ての利用者に対して対話エージェントを逐次的に対面させて出力が行われるので、他のグループの利用者が混じって存在していたとしても、対話が混線してしまう事態を回避できる。
上記入力部、上記制御部、および上記出力部は、対話エージェント(例えば、対話エージェント110)に設けられ、上記入力部で受け付けられた利用者の対話が上記対話エージェントに向けられていない発話の内容を、上記対話エージェントに向けた内容に変換する目的で作成された変換情報(例えば、入力変換ルールDB920、入力変換ルールDB1200)を用いて、上記対話の内容を上記対話エージェントに向けた内容に変換する変換部(例えば、入力変換プログラム910)を備え、上記制御部は、上記入力部で受け付けられた利用者の対話が上記対話エージェントに向けた対話でない場合、上記入力部により変換された利用者の対話の内容を上記変換部に送信し、上記変換部により変換された内容を上記対話システムに送信する(例えば、ステップS1010、ステップS1020)、ことを特徴とする。
上記構成では、例えば、人同士の対話については、対話エージェントに向けた内容に変換されるので、対話システムに対して、あたかも一人の人間と話しているように見せることができる。これにより、人同士の対話をそのまま入力してしまうことにより不自然な対話になってしまう事態を回避できる。
上記入力部は、音声を受け付け、上記変換部は、上記入力部により利用者の音声が受け付けられているとき、上記対話エージェントに対する上記利用者の顔または体全体の姿勢から、上記利用者の音声が上記対話エージェントに向けた音声であるか否かを判定する(例えば、ステップS1010)、ことを特徴とする。
上記構成によれば、例えば、既存の画像処理技術を用いて、対話エージェントに向けた発話であるか否かを判定できる。
上記入力部は、音声を受け付け、上記変換部は、上記入力部により受け付けられた利用者の音声の特徴から、上記利用者の音声が上記対話エージェントに向けた音声であるか否かを判定する(例えば、ステップS1010)、ことを特徴とする。
上記構成によれば、例えば、既存の音声処理技術を用いて、対話エージェントに向けた発話であるか否かを判定できる。
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
100……複数人対話システム、110……対話エージェント、120……対話システム、130……利用者。
Claims (10)
- 利用者と、前記利用者が属するグループに対応するセッションとが関連付けられた情報を記憶する記憶部と、
利用者の対話の内容を、セッションごとに対話可能な対話システムの入力形式に変換する入力部と、
前記入力部により変換された利用者の対話の内容を、前記記憶部に記憶されている情報を用いて前記利用者が属するグループに対応するセッションを指定して前記対話システムに送信し、前記対話システムから返信された前記対話に対する応答を受信する制御部と、
前記制御部が受信した応答を出力形式に変換して出力する出力部と、
を備えることを特徴とする複数人対話システム。 - 前記入力部は、音声を受け付け、
前記制御部は、前記入力部により受け付けられた音声が発せられた音源の場所から利用者を識別し、識別した利用者と前記場所を示す場所情報とを関連付けて記憶し、記憶している場所情報から、前記入力部により受け付けられた音声を発した利用者の近くに前記音声に係る対話に関係する人がいないと判定した場合、グループを作成し、前記音声を発した利用者と、作成したグループに対応するセッションとを関連付けて前記記憶部に記憶する、
ことを特徴とする請求項1に記載の複数人対話システム。 - カメラで撮影された画像から利用者を検出する検出部を備え、
前記検出部は、前記カメラで撮影された画像から検出した利用者の場所を示す場所情報を生成し、生成した場所情報と、前記利用者とを関連付けて記憶し、
前記入力部は、音声を受け付け、
前記制御部は、前記入力部で受け付けられた音声を発した利用者の場所を示す場所情報から利用者を識別し、識別した利用者の場所の近くに前記音声に係る対話に関係する人がいないと判定した場合、グループを作成し、前記音声を発した利用者と、作成したグループに対応するセッションとを関連付けて前記記憶部に記憶する、
ことを特徴とする請求項1に記載の複数人対話システム。 - 前記検出部は、前記カメラで撮影された画像の利用者から音声が発せられた区間を検出し、
前記制御部は、前記入力部により受け付けられた音声が発せられた区間と、前記検出部により画像から検出された区間との一致度に基づいて、前記入力部で受け付けられた音声を発した利用者と、前記カメラで撮影された画像の利用者とを関連付け、前記音声を発した利用者を識別する、
ことを特徴とする請求項3に記載の複数人対話システム。 - 前記出力部は、前記入力部で受け付けられた対話を行う利用者が属するグループに属する全ての利用者に対して出力を行う、
ことを特徴とする請求項1に記載の複数人対話システム。 - 前記入力部、前記制御部、および前記出力部が設けられる対話エージェントを動作させる動作部を備え、
前記動作部は、前記出力部により利用者の対話に対する応答が出力される間、前記利用者が属するグループに属する全ての利用者に対して前記対話エージェントを逐次的に対面させる、
ことを特徴とする請求項1に記載の複数人対話システム。 - 前記入力部、前記制御部、および前記出力部は、対話エージェントに設けられ、
前記入力部で受け付けられた利用者の対話が前記対話エージェントに向けられていない発話の内容を、前記対話エージェントに向けた内容に変換する目的で作成された変換情報を用いて、前記対話の内容を前記対話エージェントに向けた内容に変換する変換部を備え、
前記制御部は、前記入力部で受け付けられた利用者の対話が前記対話エージェントに向けた対話でない場合、前記入力部により変換された利用者の対話の内容を前記変換部に送信し、前記変換部により変換された内容を前記対話システムに送信する、
ことを特徴とする請求項1に記載の複数人対話システム。 - 前記入力部は、音声を受け付け、
前記変換部は、前記入力部により利用者の音声が受け付けられているとき、前記対話エージェントに対する前記利用者の顔または体全体の姿勢から、前記利用者の音声が前記対話エージェントに向けた音声であるか否かを判定する、
ことを特徴とする請求項7に記載の複数人対話システム。 - 前記入力部は、音声を受け付け、
前記変換部は、前記入力部により受け付けられた利用者の音声の特徴から、前記利用者の音声が前記対話エージェントに向けた音声であるか否かを判定する、
ことを特徴とする請求項7に記載の複数人対話システム。 - 利用者と、前記利用者が属するグループに対応するセッションとが関連付けられた情報を記憶する記憶部を備える複数人対話システムにおける複数人対話方法であって、
入力部が、利用者の対話の内容を、セッションごとに対話可能な対話システムの入力形式に変換する第1のステップと、
制御部が、前記入力部により変換された利用者の対話の内容を、前記記憶部に記憶されている情報を用いて前記利用者が属するグループに対応するセッションを指定して前記対話システムに送信し、前記対話システムから返信された前記対話に対する応答を受信する第2のステップと、
出力部が、前記制御部が受信した応答を出力形式に変換して出力する第3のステップと、
ことを特徴とする複数人対話方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019055669A JP2020154269A (ja) | 2019-03-22 | 2019-03-22 | 複数人対話システムおよび複数人対話方法 |
CN202010090569.7A CN111724776A (zh) | 2019-03-22 | 2020-02-13 | 多人对话系统和多人对话方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019055669A JP2020154269A (ja) | 2019-03-22 | 2019-03-22 | 複数人対話システムおよび複数人対話方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020154269A true JP2020154269A (ja) | 2020-09-24 |
Family
ID=72558914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019055669A Pending JP2020154269A (ja) | 2019-03-22 | 2019-03-22 | 複数人対話システムおよび複数人対話方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2020154269A (ja) |
CN (1) | CN111724776A (ja) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5149737B2 (ja) * | 2008-08-20 | 2013-02-20 | 株式会社ユニバーサルエンターテインメント | 自動会話システム、並びに会話シナリオ編集装置 |
JP5049934B2 (ja) * | 2008-09-22 | 2012-10-17 | 株式会社東芝 | 対話文生成装置及び方法 |
JP5221713B2 (ja) * | 2011-06-29 | 2013-06-26 | ヤフー株式会社 | 対話エージェント装置、対話方法及び対話プログラム |
JP6257368B2 (ja) * | 2014-02-18 | 2018-01-10 | シャープ株式会社 | 情報処理装置 |
CN106057205B (zh) * | 2016-05-06 | 2020-01-14 | 北京云迹科技有限公司 | 一种智能机器人自动语音交互方法 |
JP6477958B2 (ja) * | 2018-06-15 | 2019-03-06 | 株式会社セガゲームス | 情報処理装置、コミュニケーションサーバおよびゲームシステム |
CN109065051B (zh) * | 2018-09-30 | 2021-04-09 | 珠海格力电器股份有限公司 | 一种语音识别处理方法及装置 |
-
2019
- 2019-03-22 JP JP2019055669A patent/JP2020154269A/ja active Pending
-
2020
- 2020-02-13 CN CN202010090569.7A patent/CN111724776A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN111724776A (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3791390B1 (en) | Voice identification enrollment | |
US11250383B2 (en) | Automated clinical documentation system and method | |
US10083006B1 (en) | Intercom-style communication using multiple computing devices | |
CN108351872B (zh) | 用于响应用户语音的方法和系统 | |
US20190318757A1 (en) | Multi-microphone speech separation | |
US20200335128A1 (en) | Identifying input for speech recognition engine | |
JP5724125B2 (ja) | 音源定位装置 | |
US9293133B2 (en) | Improving voice communication over a network | |
JP2014153663A (ja) | 音声認識装置、および音声認識方法、並びにプログラム | |
US20190325865A1 (en) | Managing voice interface devices | |
US11430437B2 (en) | Information processor and information processing method | |
US11721338B2 (en) | Context-based dynamic tolerance of virtual assistant | |
WO2018173252A1 (ja) | 重要単語抽出装置、及び関連会議抽出システム | |
JP2018171683A (ja) | ロボットの制御プログラム、ロボット装置、及びロボットの制御方法 | |
US11862168B1 (en) | Speaker disambiguation and transcription from multiple audio feeds | |
WO2019150708A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
JP2021076715A (ja) | 音声取得装置、音声認識システム、情報処理方法、及び情報処理プログラム | |
JP2020154269A (ja) | 複数人対話システムおよび複数人対話方法 | |
Panek et al. | Challenges in adopting speech control for assistive robots | |
CN115516553A (zh) | 用于多麦克风自动临床文档化的系统和方法 | |
JP2020024310A (ja) | 音声処理システム及び音声処理方法 | |
JP2022050924A (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
US20210193152A1 (en) | Correlating Audio Signals For Authentication | |
WO2024085986A1 (en) | Joint acoustic echo cancellation (aec) and personalized noise suppression (pns) | |
JP2019208215A (ja) | 推定装置、推定方法、およびプログラム |