JP2018010110A - サーバ装置、制御システム、方法、情報処理端末、および制御プログラム - Google Patents
サーバ装置、制御システム、方法、情報処理端末、および制御プログラム Download PDFInfo
- Publication number
- JP2018010110A JP2018010110A JP2016138220A JP2016138220A JP2018010110A JP 2018010110 A JP2018010110 A JP 2018010110A JP 2016138220 A JP2016138220 A JP 2016138220A JP 2016138220 A JP2016138220 A JP 2016138220A JP 2018010110 A JP2018010110 A JP 2018010110A
- Authority
- JP
- Japan
- Prior art keywords
- user
- speaker
- users
- information processing
- processing terminal
- 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
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
【課題】ユーザに負担をかけることなく、登録された複数のユーザから発話者を特定できるサーバ装置を提供する。
【解決手段】サーバ装置410は、音声情報が入力可能な情報処理端末440(家電)と通信するための通信インターフェイス520と、情報処理端末440から受信した音声情報から特徴量を算出して、特徴量に基づいて情報処理端末440に対する発話者を決定するための制御部510と、複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置530とを備える。制御部510は、情報処理端末440から入力される音声情報に基づく特徴量と、記憶装置530に記憶された複数のユーザの特徴量とを比較し、比較した結果に基づいて、複数のユーザから発話者を決定する。
【選択図】図5
【解決手段】サーバ装置410は、音声情報が入力可能な情報処理端末440(家電)と通信するための通信インターフェイス520と、情報処理端末440から受信した音声情報から特徴量を算出して、特徴量に基づいて情報処理端末440に対する発話者を決定するための制御部510と、複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置530とを備える。制御部510は、情報処理端末440から入力される音声情報に基づく特徴量と、記憶装置530に記憶された複数のユーザの特徴量とを比較し、比較した結果に基づいて、複数のユーザから発話者を決定する。
【選択図】図5
Description
この開示は、話者認識技術に関し、より特定的には、音声に基づいて登録された複数のユーザから一のユーザを決定する話者識別技術に関する。
従来、人間の声から個人を認証する話者認識技術が知られている。たとえば、特開2001−265385号公報(特許文献1)に開示される話者認識装置は、入力された音声データと、音声データ格納部に格納された基準となる登録音声データとを音声照合部にて比較し、似ている度合いを示す照合一致度を求める。同装置は、照合一致度が低かったり、前回との差が大きい場合に、話者からの更新の同意があることを条件に、登録音声データを今回入力された音声データに更新する([要約]参照)。
また、特開2004−101901号公報(特許文献2)に開示される音声対話装置は、話者認識用ユーザ音声データベース及び個人情報データベース12を記憶するユーザデータベース記憶部を用意しておき、ユーザとの間で音声対話をするに際して、話者認識部により入力した音声信号から話者識別をし、対話制御部により、識別した話者に対応したユーザ情報を読み出し、読み出したユーザ情報に基づいて、複数の対話シナリオのうち、ユーザに対応した対話シナリオを選択する([要約]参照)。
近年、対話機能を有する電気製品が増えている。これら電気製品の中には、複数のユーザによって使用されるものもある。
しかしながら、特許文献1に開示される話者認識装置は、発話者が特定の人物であるか否かを照合するものであって、複数の人間から発話者を決定するものではない。
また、特許文献2に開示される音声対話装置は、ユーザに自身の名前を発話させ、テキストとして名前を抽出して、発話者を決定する。そのため、ユーザは音声対話装置に対して毎回自身の名前を発話しなくてはならず、音声対話装置に対して愛着を持ちにくい。
本開示は、上記のような問題を解決するためになされたものであって、ある局面における目的は、ユーザに負担をかけることなく、登録された複数のユーザから発話者を決定できるサーバ装置、および当該サーバ装置の制御方法を提供することである。他の局面における目的は、ユーザに負担をかけることなく、登録された複数のユーザから発話者を決定できる情報処理端末、および当該情報処理端末に使用される制御プログラムを提供することである。さらに他の局面における目的は、ユーザに負担をかけることなく、登録された複数のユーザから発話者を決定できる制御システムを提供することである。
この発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
ある実施形態に従うサーバ装置は、音声情報が入力可能な情報処理端末と通信するための通信インターフェイスと、情報処理端末から受信した音声情報から特徴量を算出して、当該特徴量に基づいて情報処理端末に対する発話者を決定するための制御部と、複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置とを備える。制御部は、情報処理端末から入力される音声情報に基づく特徴量と、記憶装置に記憶された複数のユーザの特徴量とを比較し、比較した結果に基づいて、複数のユーザから発話者を決定する。
ある実施形態に従うサーバ装置は、ユーザに負担をかけることなく、登録された複数のユーザから発話者を決定できる。そのため、ユーザは、発話対象と自然な対話を楽しむことができる。これにより、発話対象は、ユーザに愛着を沸かせることができる。
以下、この発明の実施形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
[技術思想]
図1は、ある実施形態に従う発話者を決定するための制御システムについて説明する図である。制御システムは、家庭用電気製品(以下、「家電」とも称する)190と、サーバ195とを備える。図1に示される例において、家電190は、冷蔵庫である。家電190は、家電190のユーザと対話可能に構成される。家電190は、複数のユーザによって使用される。図1に示される例において、ユーザ150〜180が、家電190を使用する。
図1は、ある実施形態に従う発話者を決定するための制御システムについて説明する図である。制御システムは、家庭用電気製品(以下、「家電」とも称する)190と、サーバ195とを備える。図1に示される例において、家電190は、冷蔵庫である。家電190は、家電190のユーザと対話可能に構成される。家電190は、複数のユーザによって使用される。図1に示される例において、ユーザ150〜180が、家電190を使用する。
ステップS110において、ユーザ150は、家電190に対して発話(たとえば、「おはよう」)する。ステップS115において、家電190は、マイク(図示しない)からユーザ150の音声を取り込み、取り込んだ音声情報をサーバ195に送信する。
ステップS120において、サーバ195は、受信した音声情報から特徴量を算出する。同ステップにおいて、サーバ195は、算出した特徴量と、メモリに保持されるユーザ150〜180の特徴量の各々とを比較して、各ユーザごとに発話者らしさを示す一致度を算出する。図1に示される例において、一致度は0〜1に正規化された値であって、値が大きいほど発話者である確率が高い。同ステップにおいて、サーバ195は、ユーザ150〜180のうち、一致度が最も大きいユーザ150の一致度が第1のしきい値(たとえば、0.8)以上である判断し、ユーザ150が発話者であると決定する。
ステップS125において、サーバ195は、決定したユーザ150の名前(お兄さん)を含む発話内容を生成して、発話内容を家電190に送信する。ステップS130において、家電190は、受信した発話内容を、スピーカなどの音声出力装置(図示しない)から出力する。これにより、ユーザ150は、家電190がユーザ150を識別していることを理解して、家電190に対して愛着を持ちやすい。
上記によれば、ある実施形態に従う制御システムは、ユーザとの自然な対話の中で、家電190に対する発話者を決定することができる。このとき、ユーザは、発話内容に制限を受けることがないため、家電190と自然な対話を楽しむことができる。また、ユーザは、自然な対話の中で、家電190がユーザ150を識別していることを理解する。そのため、ユーザ150は家電190に対して愛着を持ちやすい。
図2は、他の局面に従う制御システムについて説明する図である。なお、図1と同じ符号を付している部分については同じであるため、その部分についての説明は繰り返さない。
ステップS220において、サーバ195は、受信した音声情報から特徴量を算出する。同ステップにおいて、サーバ195は、算出した特徴量と、メモリに保持されるユーザ150〜180の特徴量の各々とを比較して、各ユーザごとに一致度を算出する。同ステップにおいて、サーバ195は、ユーザ150〜180のうち、一致度が最も大きいユーザ150を特定する。サーバ195は、特定したユーザ150の一致度が第1のしきい値未満であって、第2のしきい値(たとえば0.5)以上であると判断する。換言すれば、サーバ195は、ユーザ150の一致度が微妙な値であると判断する。
ステップS225において、サーバ195は、発話者を問い合わせる発話内容(たとえば「誰かな?」)を生成する。ある局面において、サーバ195は、ステップS220で最も大きい一致度であると特定したユーザ150が発話者であるか否かを問い合わせる発話内容(たとえば「もしかして、お兄さんかな?」)を生成して、家電190に送信する。
ステップS230において、家電190は、受信した発話内容を、音声出力装置(図示しない)から出力する。ステップS235において、ユーザ150は、家電190からの問い合わせに対して肯定する回答(たとえば「そうだよ」)を発話する。
ステップS240において、家電190は、取り込んだ音声情報をサーバ195に送信する。ステップS245において、サーバ195は、受信した音声情報を解析して、ステップS230の問い合わせに対する回答が肯定であると判断し、ステップS220で一致度が最も大きいと特定したユーザ150が家電190に対する発話者であると決定する。換言すれば、サーバ195は、家電190から入力される音声情報に基づく特徴量と、サーバ195のメモリに記憶される複数のユーザの特徴量とを比較し、比較した結果に基づいて、当該複数のユーザの中から発話者を決定する。同ステップにおいて、サーバ195は、決定したユーザ150に応じた発話内容(たとえば「やっぱり。ジュースが入ってるよ」)を生成して家電190に送信する。ステップS250において、家電190は、受信した発話内容を音声出力装置から出力する。
図3は、さらに他の局面に従う制御システムについて説明する図である。
ステップS310において、ユーザ170は、家電190に対して発話する。ステップS315において、家電190は、マイク(図示しない)からユーザ170の音声を取り込み、取り込んだ音声情報をサーバ195に送信する。
ステップS310において、ユーザ170は、家電190に対して発話する。ステップS315において、家電190は、マイク(図示しない)からユーザ170の音声を取り込み、取り込んだ音声情報をサーバ195に送信する。
ステップS320において、サーバ195は、受信した音声情報から特徴量を算出する。同ステップにおいて、サーバ195は、算出した特徴量と、メモリに保持されるユーザ150〜180の特徴量の各々とを比較して、各ユーザごとに一致度を算出する。同ステップにおいて、サーバ195は、ユーザ150〜180のうち、一致度が最も大きいユーザ150を特定する。サーバ195は、特定したユーザ150の一致度が第1のしきい値未満であって、第2のしきい値以上であると判断する。
ステップS325において、サーバ195は、最も大きい一致度であると特定したユーザ150が発話者であるか否かを問い合わせる発話内容(たとえば「もしかして、お兄さんかな?」)を生成して、家電190に送信する。
ステップS230において、家電190は、受信した発話内容を、音声出力装置(図示しない)から出力する。ステップS235において、ユーザ170は、家電190からの問い合わせに対して否定する回答(たとえば「違うよ。お父さんだよ。」)を発話する。
ステップS340において、家電190は、取り込んだ音声情報をサーバ195に送信する。ステップS345において、サーバ195は、受信した音声情報を解析して、ステップS330の問い合わせに対する回答が否定であると判断し、ステップS320で一致度が最も大きいと特定したユーザ150が家電190に対する発話者ではないと判断する。同ステップにおいて、サーバ195は、音声情報を解析した結果、ユーザ170が家電190に対する発話者であると決定する。同ステップにおいて、サーバ195は、決定したユーザ170の名前を含む発話内容(たとえば「ごめんね、お父さん。ビールが入ってるよ」)を生成して家電190に送信する。ステップS350において、家電190は、受信した発話内容を、音声出力装置から出力する。
上記によれば、ある実施形態に従う制御システムは、特定したユーザの一致度が発話者と決定するには微妙な値である場合であっても、問い合わせの回答に応じて、発話者を特定できる。そのため、家電190のユーザは、家電190に対して愛着を持ちやすい。
ところで、特定したユーザの一致度を1つのしきい値に基づいて発話者であるか否かを決定する場合、確実に発話者であると決定するために当該しきい値は高めに設定される。この場合、何らかの要因(たとえば、騒音、声の大きさ)で特定したユーザの一致度が当該しきい値を下回ることがある。かかる場合、制御システムは発話者を決定できないため、ユーザは家電190に対する愛着を持ちにくい。
これに対して、ある実施形態に従うサーバ195は、特定したユーザの一致度を2つのしきい値に基づいて、発話者であるか否かを決定する。そのため、特定したユーザの一致度が微妙な値であったとしても、発話者を問い合わせることによって、発話者を決定できる。したがって、ユーザはある実施形態に従う家電190に対して愛着を持ちやすい。以下、上記の制御システムを実現するための構成および制御の詳細を説明する。
[実施形態1]
(制御システム400の構成)
図4は、実施形態1に従う制御システム400の構成例について説明する図である。図4を参照して、制御システム400は、サーバ410と、ネットワーク420と、ルータ430−1〜430−3と、家電440−1〜440−9とを備える。以下、ルータ430−1〜430−3を総称して、「ルータ430」とも言う。家電440−1〜440−9を総称して、「家電440」とも言う。
(制御システム400の構成)
図4は、実施形態1に従う制御システム400の構成例について説明する図である。図4を参照して、制御システム400は、サーバ410と、ネットワーク420と、ルータ430−1〜430−3と、家電440−1〜440−9とを備える。以下、ルータ430−1〜430−3を総称して、「ルータ430」とも言う。家電440−1〜440−9を総称して、「家電440」とも言う。
家電440−1〜440−3はそれぞれ、ルータ430−1と接続される。家電440−4〜440−6はそれぞれ、ルータ430−2と接続される。家電440−7〜440−9はそれぞれ、ルータ430−3と接続される。家電440とルータ430とは、有線または無線で接続される。
サーバ410は、ネットワーク420を介してルータ430と接続される。家電440は、間接的にサーバ410と接続される。
なお、図4に示される例では、ルータ430に家電440が3個ずつ接続される構成であるが、ルータ430に接続される家電440の数はこれに限られない。ルータ430がローカルIP(Internet Protocol)アドレスを割り当てることができる範囲内で、ルータ430に接続される家電440の数は変更可能である。
(サーバ410および家電440の構成)
図5は、実施形態1に従うサーバ410および家電440のハードウェア構成の一例を説明する図である。図5を参照して、サーバ410は、制御部510と、通信インターフェイス(I/F)520と、タイマ525と、記憶装置530とを有する。
図5は、実施形態1に従うサーバ410および家電440のハードウェア構成の一例を説明する図である。図5を参照して、サーバ410は、制御部510と、通信インターフェイス(I/F)520と、タイマ525と、記憶装置530とを有する。
制御部510は、サーバ410の全体動作を制御する。制御部510は、CPU(Central Processor Unit)512と、RAM(Random Access Memory)514と、ROM(Read Only Memory)516とを含む。
CPU512は、ROM514に格納される制御プログラムを読み出して実行することで、サーバ410の各種処理を実現する。他の局面において、制御プログラムは、記憶装置530に格納され得る。
RAM516は、典型的には、DRAM(Dynamic Random Access Memory)などであり、CPU512が制御プログラムを動作するために必要なデータを一時的に記憶するワーキングメモリとして機能する。
ROM514は、典型的には、フラッシュメモリなどであり、CPU512で実行される制御プログラムや、サーバ410の動作にかかる各種設定情報を記憶する。
通信インターフェイス520は、後述する家電440の通信インターフェイス570と通信し、各種信号のやりとりを行なう。タイマ525は、時刻を計時可能に構成される。
記憶装置530は、典型的には、ハードディスクドライブなどであり、家テーブル531と、機器テーブル533と、ユーザテーブル535と、機器−ユーザ関連テーブル537と、待ちフラグ539とを保持する。これら記憶装置530が保持する内容については後述する。
家電440は、制御部550と、スピーカ560と、マイク565と、通信インターフェイス(I/F)570とを含む。
制御部550は、家電440の全体動作を司る。制御部550は、CPU552と、RAM554と、ROM556とを含む。CPU552は、ROM556に格納される制御プログラムを読み出して実行することで、家電440の全体処理を実現する。
RAM554は、CPU552が制御プログラムを動作するために必要なデータを一時的に記憶するワーキングメモリとして機能する。ROM556は、CPU552で実行される制御プログラムや、家電440の動作にかかる各種設定情報を記憶する。
スピーカ560は、サーバ410から入力された音声情報を音声に変換して出力する。他の局面において、家電440は、スピーカ560に替えて、またはスピーカ560に加えて、ヘッドフォン,イヤホンその他の音声出力装置を含む構成であってもよい。
マイク565は、家電440の周囲の音声を電気信号としての音声情報に変換して家電440に入力する。
(記憶装置530が保持する各種テーブルのデータ構造)
図6は、実施形態1に従う家テーブル531、機器テーブル533、ユーザテーブル535、および機器−ユーザ関連テーブル537を説明する図である。
図6は、実施形態1に従う家テーブル531、機器テーブル533、ユーザテーブル535、および機器−ユーザ関連テーブル537を説明する図である。
家テーブル531は、家ID610と、家の名前615とを関連付けて保持する。家ID610は、サーバ410に接続される家庭を識別するための情報である。ある局面において、家ID610は、ルータ430に割り当てられるグローバルIPアドレスであり得る。ある局面において、家の名前615は、サーバ410に接続される家庭に属する人間の名字であり得る。家の名前615は、ユーザが家電440との対話の中で登録し得る。
機器テーブル533は、機器ID620と、家ID610と、機器の種類625とを関連付けて保持する。機器ID620は、異なる家電440を互いに識別するための情報である。ある局面において、機器ID620は、ルータ430が家電440に割り当てるローカルIPアドレス(プライベートIPアドレスとも言う)であり得る。機器の種類625は、家電440の種類(たとえば、冷蔵庫、オーブン、洗濯機など)を識別するための情報である。ある局面において、ユーザは、家電440またはパソコン(図示しない)などによってサーバ410にアクセスし、機器テーブル533に機器の種類625を登録し得る。
ユーザテーブル535は、ユーザID630と、ユーザネーム632と、特徴量634とを関連付けて保持する。ユーザID630は、家電440の複数のユーザを互いに識別するための情報である。ユーザネーム632は、家電440のユーザが家電440に対して発話した、自身を識別するための名称である。特徴量634は、ユーザの音声を変換した音声情報から抽出される特徴である。特徴量の算出方法は、LPC(Linear Predictive Coding)ケプストラム係数や、MFCC(Mel-Frequency Cepstrum Coefficient)等の既知の手法を用いることができる。
機器−ユーザ関連テーブル537は、機器ID620と、ユーザID630とを関連付けて保持する。CPU512は、機器−ユーザ関連テーブル537を参照して、機器ID620に対応する家電440を使用するユーザを特定できる。
図6に示される例において、機器テーブル533には、家ID610が「H00001」の家庭(鈴木家)には、家電440として冷蔵庫とオーブンとが関連付けられる。
機器−ユーザ関連テーブル537は、機器ID「D00001」の冷蔵庫を、ユーザID「U00001」、「U00002」、「U00003」、「U00004」のユーザ(お兄さん、お姉さん、お父さん、お母さん)が使用することを示す。また、機器−ユーザ関連テーブル537は、機器ID「D00002」のオーブンを、ユーザID「U00002」および「U00004」のユーザ(お姉さん、お母さん)が使用することを示す。
サーバ410は、図6に示される各テーブルの情報に基づいて、家と機器(家電440)とユーザとの関係が図7に示される階層構造になっていると、把握できる。
(CPU512の機能構成)
図8は、実施形態1に従うCPU512の機能構成を説明する機能ブロック図である。CPU512は、ROM514に格納される制御プログラムを実行することにより、話者認識部810、音声認識部840、および会話生成部860として機能する。話者認識部810は、関連ユーザ特定モジュール815と、一致度算出モジュール820と、ユーザ特定モジュールと、一致度判定モジュール830と、話者学習モジュール835とを含む。
図8は、実施形態1に従うCPU512の機能構成を説明する機能ブロック図である。CPU512は、ROM514に格納される制御プログラムを実行することにより、話者認識部810、音声認識部840、および会話生成部860として機能する。話者認識部810は、関連ユーザ特定モジュール815と、一致度算出モジュール820と、ユーザ特定モジュールと、一致度判定モジュール830と、話者学習モジュール835とを含む。
音声認識部840は、入力受付モジュール845と、テキスト生成モジュール850と、特徴量計算モジュール855とを含む。会話生成部860は、待ちフラグ制御モジュール865と、発話内容生成モジュール870と、音声合成モジュール875と、回答解析モジュール880とを含む。
入力受付モジュール845は、通信インターフェイス520を介して家電440から音声情報と機器ID620とを受信する。テキスト生成モジュール850は、家電440から受信した音声情報に基づいてテキストデータを生成する。一例として、テキスト生成モジュール850は、HMM(Hidden Markov Model)に従い音声情報からテキストデータを生成する。特徴量計算モジュール855は、家電440から受信した音声情報に基づいて特徴量を算出する。
関連ユーザ特定モジュール815は、機器−ユーザ関連テーブル537を参照して、家電440から受信した機器ID620に関連付けられるユーザID630を特定する。
一致度算出モジュール820は、家電440から受信した音声情報に基づく特徴量と、ユーザテーブル535に格納される特徴量634の各々とを比較(マッチング)して、各ユーザごとの一致度を算出する。
ユーザ特定モジュール825は、各ユーザごとの一致度に基づいて、一のユーザID630を特定する。実施形態1従うユーザ特定モジュール825は、最も一致度の高いユーザID630を特定する。
一致度判定モジュール830は、特定したユーザID630の一致度がどの範囲にあるかを判定する。一例として、一致度判定モジュール830は、特定したユーザID630の一致度が0.5未満か、0.5以上0.8未満か、0.8以上かを判定する。一例として、一致度判定モジュール830は、特定したユーザID630の一致度が0.8以上であると判定した場合、当該特定したユーザID630に対応するユーザを家電440に対する発話者であると決定する。
話者学習モジュール835は、発話者であると決定したユーザID630に関連付けられる特徴量634を、家電440から受信した音声情報に基づいて更新する。ある局面において、話者学習モジュール835は、現在ユーザテーブル535に登録されている特徴量634に対して、家電440から受信した音声情報に基づく特徴量を上書き保存し得る。他の局面において、話者学習モジュール835は、現在ユーザテーブル535に登録されている特徴量634と、家電440から受信した音声情報に基づく特徴量との平均値を、新たな特徴量634として更新し得る。さらに他の局面において、話者学習モジュール835は、予め定められた期間(たとえば、1か月)に家電440から受信した音声情報に基づく特徴量を算出し得る。かかる場合、話者学習モジュール835は、予め定められた期間を経過した音声情報を削除し、直近家電440から受信した音声情報を用いて特徴量634を算出して更新する。
待ちフラグ制御モジュール865は、記憶装置530に保持される待ちフラグ539を制御する。待ちフラグ539は、家電440がユーザ(発話者)に対して、質問を行なった場合に、ユーザからの回答を受け付けている状態か否かを示す情報である。ある局面において、待ちフラグ539は1bitの情報であって、「1」を示している状態において、ユーザからの回答を受け付けている状態を示す。一方、待ちフラグ539が「0」を示している状態において、ユーザからの回答を受け付けていない状態を示す。待ちフラグ制御モジュール865は、家電440がユーザに対して質問を行なってから一定時間、待ちフラグ539を「1」にして、一定時間が経過後、またはユーザからの回答を受け付けたときに、待ちフラグ539を「0」にする。
発話内容生成モジュール870は、家電440から発話者に対する発話内容をテキスト形式で生成する。音声合成モジュール875は、テキスト形式で生成された発話内容を、電気信号(音声情報)に変換して家電440に送信する。
回答解析モジュール880は、家電440が発話者に対して質問を行なった場合において、当該質問に対する発話者の回答が、質問を肯定する回答か、否定する回答かを判断する。
(発話者を決定するための制御)
図9および10は、実施形態1に従うサーバ410の、家電440に対する発話者を決定する制御について説明するフローチャートである。図9および10に示される処理は、CPU512がROM514に格納される制御プログラムを実行し、図8に示される各モジュールとして機能することにより実現される。他の局面において、処理の一部または全部が、回路素子その他のハードウェアによって実行されてもよい。なお、これらの条件は、以降に説明するフローチャートにおいても同様とする。図9および10に示される一連の処理は、家電440に対してユーザが発話を行なうことにより実行される。
図9および10は、実施形態1に従うサーバ410の、家電440に対する発話者を決定する制御について説明するフローチャートである。図9および10に示される処理は、CPU512がROM514に格納される制御プログラムを実行し、図8に示される各モジュールとして機能することにより実現される。他の局面において、処理の一部または全部が、回路素子その他のハードウェアによって実行されてもよい。なお、これらの条件は、以降に説明するフローチャートにおいても同様とする。図9および10に示される一連の処理は、家電440に対してユーザが発話を行なうことにより実行される。
ステップS905において、サーバ410のCPU512は、家電440から音声情報および機器ID620を受信する。
ステップS910において、CPU512は、家電440が前回ユーザと会話を行なってから所定の時間(たとえば、30秒)が経過しているか否かを判断する。CPU512は、前回ユーザと会話を行なってから所定の時間が経過していると判断した場合(ステップS910においてYES)、処理をステップS915に進める。そうでない場合(ステップS910においてNO)、CPU512は、処理をステップS920に進める。
ステップS915において、CPU512は、待ちフラグ539を外す(待ちフラグ539を「0」に設定する)。
ステップS920において、CPU512は、待ちフラグ539が立っているか否か(待ちフラグ539が「1」であるか否か)を判断する。CPU512は、待ちフラグ539が立っていないと判断すると(ステップS920においてNO)、処理をステップS925に進める。そうでない場合(ステップS920においてYES)、CPU512は処理をステップS935に進める。ステップS935〜ステップS955までの一連の処理は後述する。
ステップS925において、CPU512は、機器−ユーザ関連テーブル537を参照して、家電440から受信した機器ID620に関連付けられるユーザID630を特定する。
ステップS930において、CPU512は、家電440から受信した音声情報から特徴量を算出する。同ステップにおいて、CPU512は、算出した特徴量と、ユーザテーブル535に格納されるユーザID630のうち、ステップS925で特定したユーザID630に関連付けられる特徴量の各々とを比較(マッチング)して、各ユーザID630ごとの一致度を算出する。CPU512は、ステップS930の後、処理を図10のステップS1005に進める。
図10のステップS1005において、CPU512は、ステップS930で算出した各ユーザID630の一致度のうち、最も一致度の大きいユーザID630を特定する。
ステップS1010において、CPU512は、特定したユーザID630の一致度SCがどの範囲であるかを判定する。CPU512は、一致度SCが0.5未満であると判定した場合(ステップS1010においてSC<0.5)、処理をステップS1015に進める。CPU512は、一致度SCが0.5以上0.8未満であると判定した場合(ステップS1010において0.5≦SC<0.8)、処理をステップS1025に進める。CPU512は、一致度SCが0.8以上であると判定した場合(ステップS1010においてSC>0.8)、処理をステップS1035に進める。
ステップS1015において、CPU512は、一致度が低いため、発話者を含まない発話内容(たとえば、「おはよう。今日も頑張ろう」)を生成して、家電440に送信する。ステップS1020において、CPU512は、待ちフラグ539を外して、一連の処理を終了する。
ステップS1025において、CPU512は、一致度SCが発話者を決定するには微妙な値であるとして、発話者を問い合わせる発話内容を生成して、家電440に送信する。一例として、CPU512は、ユーザテーブル535を参照して、ステップS1005で特定したユーザID630に対応するユーザネーム632が発話者であるか否かを問い合わせる発話内容を生成して家電440に送信する。ステップS1030において、CPU512は、待ちフラグ539を立てて(待ちフラグ539を「1」に設定して)、一連の処理を終了する。
ステップS1035において、CPU512は、ステップS1005で特定したユーザIDに対応するユーザが家電440に対する発話者であると決定する。
ステップS1037において、CPU512は、ステップS905で受信した音声情報に基づいて、ユーザテーブル535に格納される、特定したユーザID630に関連付けられる特徴量を更新する。換言すれば、CPU512は、ステップS905で受信した音声情報に基づいて、話者学習を行なう。これにより、特定したユーザID630についての次回以降の一致度算出精度が向上する。ステップS1040において、CPU512は、特定したユーザを含む発話内容を生成する。ステップS1045において、CPU512は、待ちフラグ539を外して、一連の処理を終了する。
図9を再び参照して、ステップS935において、CPU512は、前回の会話時にステップS1025で行なった発話者を問い合わせる質問(たとえば、「もしかしてお兄さん?」)に対する回答が、当該質問を肯定する回答であるか否かを判断する。
CPU512は、ステップS1025で行なった質問を肯定する回答であると判断した場合(ステップS935においてYES)、処理をステップS940に進める。一方、CPU512は、ステップS1025で行なった質問を否定する回答であると判断した場合(ステップS935においてNO)、処理をステップS955に進める。
ステップS940において、CPU512は、前回の会話時にステップS1005で特定したユーザIDに対応するユーザを、家電440に対する発話者であると決定する。ステップS945において、CPU512は、一連の会話を話者学習にフィードバックする。より具体的には、CPU512は、今回ステップS905で受信した音声情報および前回ステップS905で受信した音声情報に基づいて、ユーザテーブル535に格納される、特定したユーザID630に関連付けられる特徴量を更新する。
ステップS950において、CPU512は、質問を肯定する回答に応じた発話内容(たとえば「やっぱりお兄さんだった」)を生成して、家電440に送信する。
ステップS955において、CPU512は、質問を否定する回答に応じた発話内容(たとえば、「ごめんね。まちがえちゃった」)を生成して、家電440に送信する。
CPU512は、ステップS950およびステップS955の後、ステップS1045において待ちフラグ539を外して、一連の処理を終了する。
上記によれば、実施形態1に従う制御システム400は、ユーザとの自然な対話の中で、家電440に対する発話者を決定することができる。このとき、ユーザは、発話内容に制限を受けることがないため、負担を感じることなく家電440と自然な対話を楽しむことができる。また、ユーザは、自然な対話の中で、家電440がユーザを識別していることを理解する。そのため、ユーザは、家電440に対して愛着を持ちやすい。
また、実施形態1に従う制御システム400は、特定したユーザの一致度が発話者と決定するには微妙な値である場合であっても、問い合わせの回答に応じて、発話者を決定できる。そのため、ユーザは、家電440に対して愛着を持ちやすい。
なお、他の局面において、ステップS1025において、CPU512は、特定したユーザの一致度SCに応じて、異なる口調の発話者と問い合わせる発話内容を生成してもよい。一例として、一致度SCが0.65以上0.80未満である場合、特定したユーザが発話者である可能性が高くないため、CPU512は、「もしかして、お兄さんかな?」のように疑問形で自信なく伺うように、特定したユーザが発話者であるかを問い合わせる発話内容を生成する。また、一致度SCが0.5以上0.65未満である場合、当該可能性がより低くなるため、CPU512は、「あれ、お兄さんかな?間違ってたらごめんね」のように、謝罪を含むように、特定したユーザが発話者であるかを問い合わせる発話内容を生成する。
さらに他の局面において、CPU512は、ステップS1040においても、特定したユーザが発話者であるかを問い合わせる発話内容を生成してもよい。この場合、特定したユーザが発話者である可能性が高いため、CPU512は、「あ、お兄さんだね」のように、断定的に特定したユーザが発話者であるかを問い合わせる発話内容を生成する。この場合、CPU512は、ステップS1045において待ちフラグを外すのではなく、立ててもよい。これにより、CPU512は、確実に発話者を特定できる。
上記のように、CPU512は、一致度SCに応じて、特定したユーザが発話者であるかの問い合わせ方が異なる発話内容を生成し得る。これにより、ユーザは、家電440がどの程度発話者を特定できているのかを直感的に理解できる。
(CPU512の各機能構成の関係)
図11は、図9および10に示される制御とCPU512の機能構成との関係を説明する図である。図11を参照して、入力受付モジュール845は、家電440から音声情報および機器ID620を受信すると、その旨を知らせる信号を特徴量計算モジュール855および待ちフラグ制御モジュール865に出力する。
図11は、図9および10に示される制御とCPU512の機能構成との関係を説明する図である。図11を参照して、入力受付モジュール845は、家電440から音声情報および機器ID620を受信すると、その旨を知らせる信号を特徴量計算モジュール855および待ちフラグ制御モジュール865に出力する。
特徴量計算モジュール855は、受信した音声情報から特徴量を算出して、算出した特徴量を一致度算出モジュール820に出力する。
待ちフラグ制御モジュール865は、入力受付モジュール845から信号を受信すると、記憶装置530に格納される待ちフラグ539にアクセスして、待ちフラグ539が立っているのか、外れているのかを確認する。待ちフラグ制御モジュール865は、待ちフラグ539が外れている場合、その旨を知らせる信号を関連ユーザ特定モジュール815に出力する。
関連ユーザ特定モジュール815は、待ちフラグ制御モジュール865から信号を受信すると、機器−ユーザ関連テーブル537を参照して、受信した機器ID620に関連付けられるユーザID630を特定して、特定したユーザID630を一致度算出モジュール820に出力する。
一致度算出モジュール820は、ユーザテーブル535を参照して、関連ユーザ特定モジュール815が特定したユーザID630に関連付けられる特徴量を取得する。一致度算出モジュール820は、取得した各ユーザの特徴量の各々と、特徴量計算モジュール855から受信した特徴量とを比較して、各ユーザごとの一致度を算出する。一致度算出モジュール820は、算出した一致度の各々と、当該一致度に対応するユーザID630とを関連付けてユーザ特定モジュール825に出力する。
ユーザ特定モジュール825は、一致度が最も高いユーザID630を特定し、特定したユーザID630と、当該ユーザID630に対応する一致度SCとを一致度判定モジュール830に出力する。
一致度判定モジュール830は、一致度SCが0.5未満か、0.5以上0.8未満か、0.8以上かを判定する。一致度判定モジュール830は、判定結果を発話内容生成モジュール870に出力する。
一致度判定モジュール830は、一致度SCが0.8以上であると判定した場合、一致度SCに対応するユーザID630を話者学習モジュール835に出力する。話者学習モジュール835は、ユーザテーブル535にアクセスして、特定したユーザID630に関連付けられる特徴量634を、特徴量計算モジュール855が算出した特徴量に基づいて更新する。
一致度判定モジュール830は、一致度SCが0.5以上0.8未満であると判定した場合、その旨を知らせる信号を待ちフラグ制御モジュール865に出力する。待ちフラグ制御モジュール865は、当該信号の受信に応答して待ちフラグ539を立てる。また、待ちフラグ制御モジュール865は、タイマ525に基づいて、待ちフラグ539を立ててから一定時間(たとえば30秒)が経過したと判断した場合、待ちフラグ539を外す。
発話内容生成モジュール870は、受信した判定結果に基づいて、家電440の発話内容をテキスト形式で生成する。発話内容生成モジュール870は、生成したテキスト形式の発話内容を、音声合成モジュール875に出力する。
ある局面において、発話内容生成モジュール870は、一致度SCが0.5以上0.8未満であるとする判定結果を受信した場合、ユーザ特定モジュール825が特定したユーザID630に対応するユーザネーム632が発話者であるか否かを問い合わせる発話内容を生成する。
音声合成モジュール875は、受信したテキスト形式の発話内容を、家電440のスピーカ560が出力可能な音声情報に変換して、当該音声情報を通信インターフェイス520を介して家電440に出力する。
一方、待ちフラグ制御モジュール865は、待ちフラグ539が立っている場合、その旨を知らせる信号をテキスト生成モジュール850に出力する。テキスト生成モジュール850は、家電440から受信した音声情報からテキストデータを生成して、回答解析モジュール880に出力する。
回答解析モジュール880は、受信したテキストデータに基づいて、発話内容生成モジュール870が生成した発話者を問い合わせる質問に対する回答が、当該質問を肯定する回答であるか、否定する回答であるかを判断する。一例として、回答解析モジュール880は、受信したテキストデータに、「はい」、「そう」、「うん」などの予め定められた文字列が含まれる場合、質問を肯定する回答であると判断する。回答解析モジュール880は、発話者を問い合わせる質問に対する回答が、質問を肯定する回答であると判断した場合、その旨を知らせる信号を一致度判定モジュール830に出力する。一致度判定モジュール830は、当該信号の受信に応じて、ユーザ特定モジュール825が特定したユーザID630を話者学習モジュール835に出力する。
回答解析モジュール880は、発話者を問い合わせる質問に対する回答が、肯定であるか否定であるか示す信号を発話内容生成モジュール870に出力する。発話内容生成モジュール870は、回答解析モジュール880から受信した信号に応じた発話内容をテキスト形式で生成して、音声合成モジュール875に出力する。
上記によれば、実施形態1に従うサーバ410は、家電440から入力される音声情報に基づく特徴量と、ユーザテーブル535に保持される複数のユーザの特徴量との比較結果に基づいて、家電440に対する発話者を決定できる。
図11に示される例において、各種機能は、1つのCPU512によって実現されるものとしてあるが、これに限られない。これらの各種機能は、少なくとも1つのプロセッサのような半導体集積回路、少なくとも1つの特定用途向け集積回路ASIC(Application Specific Integrated Circuit)、少なくとも1つのDSP(Digital Signal Processor)、少なくとも1つのFPGA(Field Programmable Gate Array)、および/またはその他の演算機能を有する回路を含む回路によって実装され得る。
これらの回路は、有形の読取可能な少なくとも1つの媒体から、1以上の命令を読み出すことにより図11に示される各種機能を実現し得る。
このような媒体は、磁気媒体(たとえば、ハードディスク)、光学媒体(たとえば、コンパクトディスク(CD)、DVD)、揮発性メモリ、不揮発性メモリの任意のタイプのメモリなどの形態をとるが、これらの形態に限定されるものではない。
揮発性メモリはDRAMおよびSRAM(Static Random Access Memory)を含み得る。不揮発性メモリは、ROM、NVRAMを含み得る。半導体メモリは、少なくとも1つのプロセッサとともに半導体回路の1部分であり得る。
[実施形態2]
実施形態1に従うサーバ410は、最も一致度の大きいユーザを特定する構成であった。しかし、最も大きい一致度が0.6で、次に大きい一致度が0.59という場合もあり得る。かかる場合、最も一致度が大きいユーザよりも、次に大きい一致度のユーザを、発話者の候補として特定した方が、良い場合もあり得る。一例として、最も一致度が大きいユーザの利用頻度よりも、次に大きい一致度の利用頻度が高い場合などが挙げられる。
実施形態1に従うサーバ410は、最も一致度の大きいユーザを特定する構成であった。しかし、最も大きい一致度が0.6で、次に大きい一致度が0.59という場合もあり得る。かかる場合、最も一致度が大きいユーザよりも、次に大きい一致度のユーザを、発話者の候補として特定した方が、良い場合もあり得る。一例として、最も一致度が大きいユーザの利用頻度よりも、次に大きい一致度の利用頻度が高い場合などが挙げられる。
実施形態2に従う制御システムは、このように、発話者と思われる候補が複数現れた場合に、一の候補者を特定する。以下、実施形態2に従う制御システムの構成および制御について説明する。なお、実施形態2に従う制御システムの基本構成は、実施形態1に従う制御システムの基本構成と略同じであるため、相違する点についてのみ説明する。
図12は、実施形態2に従うユーザテーブル1200について説明する図である。実施形態2に従う記憶装置530は、ユーザテーブル1200を保持する。図12を参照して、実施形態2に従うユーザテーブル1200は、実施形態1に従うユーザテーブル535に比して、決定回数履歴1210の項目をさらに有する点が異なる。
決定回数履歴1210は、サーバ410(の発話者決定モジュール690)によって、過去に家電440に対する発話者であると決定された回数の履歴情報である。すなわち、決定回数履歴1210は、各ユーザごとの家電440に対して発話を行なう頻度を示す。ある局面において、当該決定された回数は、一定期間(たとえば、過去1か月)の間に発話者であると決定された回数であり得る。
図13は、実施形態2に従うサーバ410の、家電440に対する発話者を決定する制御について説明するフローチャートである。なお、実施形態2に従うサーバ410は、図9および13の処理を実行することによって、家電440に対する発話者を決定する。また、図13において図10と同一符号を付している処理については同じであるため、その部分についての説明は繰り返さない。
ステップS1310において、CPU512は、図9のステップS930で算出した各ユーザID630の一致度の中から最も高い一致度(以下、「最高一致度」とも称する)を抽出する。同ステップにおいて、CPU512は、最高一致度から予め定められた一致度範囲内(たとえば、0.1)に他の一致度が存在するか否かを判断する。
CPU512は、最高一致度から予め定められた一致度範囲内に他の一致度が存在すると判断した場合(ステップS1310においてYES)、処理をステップS1320に進める。そうでない場合(ステップS1310においてNO)、処理をステップS1330に進める。
ステップS1320において、CPU512は、最高一致度のユーザID630および他の一致度のユーザID630の中から、一のユーザID630を特定する。図13に示される例において、CPU512は、決定回数履歴1210が最も多いユーザID630を特定する。他の局面において、CPU512は、予め定められた優先順位に基づいて、一のユーザID630を特定し得る。さらに他の局面において、最高一致度のユーザID630が複数存在する場合、CPU512は、ランダムに一のユーザID630を特定し得る。
ステップS1330において、CPU512は、最高一致度のユーザID630および他の一致度のユーザID630の中から、最高一致度のユーザID630を特定する。
以下、具体例を説明する。一例として、ユーザID「U00001」(お兄さん)の一致度が0.57、ユーザID「U00003」(お父さん)の一致度が0.6であって、お父さんの一致度が最高一致度の場合について説明する。
ステップS1310において、CPU512は、最高一致度が0.6であって、当該一致度から0.1以内に他の一致度(0.57)が存在すると判断して、処理をステップS1320に進める。
ステップS1320において、CPU512は、ユーザテーブル1200を参照して、ユーザID「U00001」およびユーザID「U00003」に対応する決定回数履歴1210のうち、ユーザID「U00001」に対応する決定回数履歴1210が最も多いことから、一のユーザID630として「U00001」を特定する。
上記によれば、実施形態2に従う制御システムは、発話者と思われる候補が複数現れた場合に、より高い確率で発話者と思われる一の候補者を特定できる。
[実施形態3]
上記の実施形態では、家電440がサーバ410に音声情報を送信して、サーバ410が音声情報を解析して発話者を決定する構成であった。しかしながら、ネットワーク環境がない家庭などでは、サーバ410によって家電440に対する発話者を決定することが難しい場合もあり得る。そこで、実施形態3では、ユーザと対話を行なう家電が発話者を決定する。
上記の実施形態では、家電440がサーバ410に音声情報を送信して、サーバ410が音声情報を解析して発話者を決定する構成であった。しかしながら、ネットワーク環境がない家庭などでは、サーバ410によって家電440に対する発話者を決定することが難しい場合もあり得る。そこで、実施形態3では、ユーザと対話を行なう家電が発話者を決定する。
図14は、実施形態3に従う家電1400の構成例について説明する図である。図14を参照して、家電1400は、記憶装置1410を有する点において、図5に示される家電440と相違する。
記憶装置1410は、ユーザテーブル535と、待ちフラグ539を保持する。これらのテーブルは、記憶装置530に格納されるユーザテーブル535と、待ちフラグ539とそれぞれ同じデータ構造である。
図15は、実施形態3に従うCPU552の機能構成を説明するブロック図である。CPU552は、ROM556に格納される制御プログラムを実行することにより、話者認識部1510、音声認識部840、および会話生成部1560として機能する。なお、図8と同一符号を付している部分については、同じ機能であるため、その機能についての説明は繰り返さない。
話者認識部1510は、関連ユーザ特定モジュール815を有さない点において、サーバ410の機能構成である話者認識部810と相違する。家電1400は、サーバ410によらず自身で発話者を特定するため、自身に関連付けられるユーザのみ管理すればよいためである。
そのため、待ちフラグ制御モジュール1565は、マイク565が音声情報を入力された場合において、待ちフラグ539が外れているときに、関連ユーザ特定モジュール815ではなく、一致度算出モジュール1520に信号を出力する。
一致度算出モジュール1520は、当該信号の受信に応じて、ユーザテーブル535に登録されるすべてのユーザの各々について、一致度の計算を行ない、その結果をユーザ特定モジュール825に出力する。
図16は、実施形態3に従う家電1400が発話者を決定する制御について説明するフローチャートである。なお、実施形態3に従う家電1400は、図16および10の処理を実行することによって、家電1400に対する発話者を決定する。また、図16において図9と同一符号を付している処理については同じであるため、その部分についての説明は繰り返さない。
ステップS1610において、マイク565は、発話者による音声を音声情報に変換して、制御部550に出力する。
ステップS1620において、CPU552は、一致度算出モジュール1520として機能し、ユーザテーブル535に登録される各ユーザID630の各々の特徴量634を取得する。
ステップS1630において、CPU512は、特徴量計算モジュール855として機能し、ステップS1610で取得した音声情報から特徴量を算出する。同ステップにおいて、CPU512は、一致度算出モジュール1520として機能し、当該算出した特徴量と、ステップS1620で取得した特徴量の各々とを比較して、各ユーザID630ごとに一致度を算出する。
上記によれば、実施形態3に従う家電1400は、サーバによらず、家電1400に対する発話者を決定できる。
[他の構成]
上記の実施形態1〜3では、ユーザ特定モジュール825が一のユーザを特定し、一致度判定モジュール830によって発話者であるか否かを決定する構成であったが、特定した一のユーザを発話者として決定する構成であってもよい。
上記の実施形態1〜3では、ユーザ特定モジュール825が一のユーザを特定し、一致度判定モジュール830によって発話者であるか否かを決定する構成であったが、特定した一のユーザを発話者として決定する構成であってもよい。
上記実施形態1〜3では、発話者と対話する対象は家庭用電気製品であるとしたが、当該対象はこれに限られない。当該対象は、マイクおよび音声出力装置(たとえば、スピーカ、イヤホン、およびヘッドフォン)を備える情報処理端末であればよく、特に家庭用に限定されるものではない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
190,440,1400 家電、195,410 サーバ、400 制御システム、420 ネットワーク、430 ルータ、510,550 制御部、514,556 ROM、516,554 RAM、520,570 通信インターフェイス、525 タイマ、530,1410 記憶装置、531 家テーブル、533 機器テーブル、535,1200 ユーザテーブル、537 ユーザ関連テーブル、539 待ちフラグ、560 スピーカ、565 マイク。
Claims (17)
- サーバ装置であって、
音声情報が入力可能な情報処理端末と通信するための通信インターフェイスと、
前記情報処理端末から受信した音声情報から特徴量を算出して、当該特徴量に基づいて前記情報処理端末に対する発話者を決定するための制御部と、
複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置とを備え、
前記制御部は、
前記情報処理端末から入力される音声情報に基づく特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、比較した結果に基づいて、前記複数のユーザから前記発話者を決定する、サーバ装置。 - 前記制御部は、
前記情報処理端末から入力される音声情報に基づく特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、当該複数のユーザごとに前記発話者らしさを示す一致度を算出し、
前記算出した一致度に基づいて、前記複数のユーザから前記発話者を決定する、請求項1に記載のサーバ装置。 - 前記制御部は、
前記算出した一致度に基づいて前記複数のユーザの中から一のユーザを特定し、
前記特定したユーザの一致度が予め定められた条件を満たす場合に、当該特定したユーザを前記発話者として決定する、請求項2に記載のサーバ装置。 - 前記制御部は、前記特定したユーザの前記一致度が予め定められた範囲内にある場合に、前記発話者を問い合わせるための発話情報を、前記通信インターフェイスを介して前記情報処理端末に送信する、請求項3に記載のサーバ装置。
- 前記発話者を問い合わせるための発話情報は、前記特定したユーザが前記発話者であるかを問い合わせる内容を含む、請求項4に記載のサーバ装置。
- 前記発話者を問い合わせるための発話情報は、前記特定したユーザの前記一致度に応じて前記特定したユーザが前記発話者であるかの問い合わせ方が異なる、請求項5に記載のサーバ装置。
- 前記制御部は、前記発話者を問い合わせるための発話情報に対するユーザの回答が、当該発話内容の問い合わせを肯定する回答である場合に、前記特定したユーザを前記発話者として決定する、請求項5または6に記載のサーバ装置。
- 前記制御部は、前記複数のユーザのうち、前記一致度が最も大きいユーザを前記一のユーザとして特定する、請求項3〜7のいずれか1項に記載のサーバ装置。
- 前記制御部は、
前記複数のユーザの一致度において最も大きい一致度から予め定められた範囲内に他の一致度が存在する場合に、前記最も大きい一致度のユーザまたは前記予め定められた範囲内の他の一致度のユーザを前記一のユーザとして特定し、
前記複数のユーザの一致度において最も大きい一致度から予め定められた範囲内に他の一致度が存在しない場合に、前記最も大きい一致度のユーザを前記一のユーザとして特定する、請求項3〜7のいずれか1項に記載のサーバ装置。 - 前記予め定められた条件は、前記特定したユーザの一致度が、予め定められた一致度以上であることを含む、請求項3〜9のいずれか1項に記載のサーバ装置。
- 前記記憶装置は、前記複数のユーザについて、前記発話者であると決定された回数の履歴情報を保持し、
前記制御部は、前記複数のユーザの一致度において最も大きい一致度から予め定められた範囲内に他の一致度が存在する場合に、前記最も大きい一致度のユーザおよび前記予め定められた範囲内の他の一致度のユーザのうち、前記履歴情報に基づいて前記決定された回数が最も多いユーザを前記一のユーザとして特定する、請求項9に記載のサーバ装置。 - 前記制御部は、前記情報処理端末から入力された音声情報に基づいて、前記記憶装置に記憶される前記発話者として決定したユーザの特徴量を更新する、請求項1〜11のいずれか1項に記載のサーバ装置。
- 前記サーバ装置は、前記通信インターフェイスを介して複数の情報処理端末と通信し、
前記記憶装置は、
前記複数の情報処理端末に関連付けられる1以上のユーザを管理するための関連テーブルを保持し、
前記制御部は、
前記関連テーブルを参照して、前記音声情報の送信元の情報処理端末に関連付けられる1以上のユーザを特定し、
前記情報処理端末から入力される音声情報に基づく特徴量と、前記特定した1以上のユーザの特徴量とを比較して、前記特定した1以上のユーザごとに前記一致度を算出する、請求項2〜12のいずれか1項に記載のサーバ装置。 - サーバ装置と、音声情報が入力可能な情報処理端末とを備え、前記情報処理端末に対する発話者を特定するための制御システムであって、
前記サーバ装置は、
前記情報処理端末と通信するための通信インターフェイスと、
前記情報処理端末から受信した音声情報から特徴量を算出して、当該特徴量に基づいて前記情報処理端末に対する発話者を決定するための制御部と、
複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置とを含み、
前記制御部は、
前記情報処理端末から入力される音声情報に基づく特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、比較した結果に基づいて、前記複数のユーザから前記発話者を決定する、制御システム。 - サーバ装置が、音声情報が入力可能な情報処理端末に対する発話者を決定するため方法であって、
前記サーバ装置は、複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置を含み、
前記情報処理端末から受信した音声情報から特徴量を算出するステップと、
前記算出した特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、比較した結果に基づいて、前記複数のユーザから前記発話者を決定するステップとを備える、方法。 - 情報処理端末であって、
ユーザの音声情報を取得するためのマイクと、
前記マイクから取得した音声情報から特徴量を算出して、当該特徴量に基づいて前記マイクに対する発話者を決定するための制御部と、
複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置とを備え、
前記制御部は、
前記マイクから入力される音声情報に基づく特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、比較した結果に基づいて、前記複数のユーザから前記発話者を決定する、情報処理端末。 - 情報処理端末のコンピュータによって実行される、前記情報処理端末に対する発話者を決定するためのプログラムであって、
前記情報処理端末は、
ユーザの音声情報を取得するためのマイクと、
複数のユーザの発話に基づく特徴量をユーザごとに記憶するための記憶装置を含み、
前記プログラムは、前記コンピュータに、
前記マイクから取得した音声情報から特徴量を算出するステップと、
前記算出した特徴量と、前記記憶装置に記憶された前記複数のユーザの特徴量とを比較し、比較した結果に基づいて、前記複数のユーザから前記発話者を決定するステップとを実行させる、制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016138220A JP2018010110A (ja) | 2016-07-13 | 2016-07-13 | サーバ装置、制御システム、方法、情報処理端末、および制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016138220A JP2018010110A (ja) | 2016-07-13 | 2016-07-13 | サーバ装置、制御システム、方法、情報処理端末、および制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018010110A true JP2018010110A (ja) | 2018-01-18 |
Family
ID=60995552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016138220A Pending JP2018010110A (ja) | 2016-07-13 | 2016-07-13 | サーバ装置、制御システム、方法、情報処理端末、および制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018010110A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019172046A1 (ja) * | 2018-03-09 | 2019-09-12 | パナソニックIpマネジメント株式会社 | 機器管理方法、及び、機器管理システム |
US11430448B2 (en) | 2018-11-22 | 2022-08-30 | Samsung Electronics Co., Ltd. | Apparatus for classifying speakers using a feature map and method for operating the same |
US11580988B2 (en) | 2019-01-07 | 2023-02-14 | Samsung Electronics Co., Ltd. | Electronic apparatus and control method thereof |
-
2016
- 2016-07-13 JP JP2016138220A patent/JP2018010110A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019172046A1 (ja) * | 2018-03-09 | 2019-09-12 | パナソニックIpマネジメント株式会社 | 機器管理方法、及び、機器管理システム |
US11430448B2 (en) | 2018-11-22 | 2022-08-30 | Samsung Electronics Co., Ltd. | Apparatus for classifying speakers using a feature map and method for operating the same |
US11580988B2 (en) | 2019-01-07 | 2023-02-14 | Samsung Electronics Co., Ltd. | Electronic apparatus and control method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11875820B1 (en) | Context driven device arbitration | |
US10878815B2 (en) | Processing spoken commands to control distributed audio outputs | |
US11138977B1 (en) | Determining device groups | |
CN107623614B (zh) | 用于推送信息的方法和装置 | |
US11763808B2 (en) | Temporary account association with voice-enabled devices | |
US10714085B2 (en) | Temporary account association with voice-enabled devices | |
JP4369132B2 (ja) | 話者音声のバックグランド学習 | |
JP6084654B2 (ja) | 音声認識装置、音声認識システム、当該音声認識システムで使用される端末、および、話者識別モデルを生成するための方法 | |
KR102097710B1 (ko) | 대화 분리 장치 및 이에서의 대화 분리 방법 | |
JP6469252B2 (ja) | アカウント追加方法、端末、サーバ、およびコンピュータ記憶媒体 | |
US10838954B1 (en) | Identifying user content | |
JPH096390A (ja) | 音声認識対話処理方法および音声認識対話装置 | |
JP2010102254A (ja) | 話者テンプレートを更新する装置及び方法 | |
US11862153B1 (en) | System for recognizing and responding to environmental noises | |
JP7347217B2 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
JP2004101901A (ja) | 音声対話装置及び音声対話プログラム | |
JP2020003774A (ja) | 音声を処理する方法及び装置 | |
JP2018004976A (ja) | 音声対話方法、音声対話装置及び音声対話プログラム | |
JP2018010110A (ja) | サーバ装置、制御システム、方法、情報処理端末、および制御プログラム | |
JP6696803B2 (ja) | 音声処理装置および音声処理方法 | |
JP2018155980A (ja) | 対話装置および対話方法 | |
JP6571587B2 (ja) | 音声入力装置、その方法、及びプログラム | |
JP2018022086A (ja) | サーバ装置、制御システム、方法、情報処理端末、および制御プログラム | |
CN112513845A (zh) | 与语音使能设备的暂时账户关联 | |
KR20210098250A (ko) | 전자 장치 및 이의 제어 방법 |