(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-04
(45)【発行日】2022-10-13
(54)【発明の名称】マルチデバイスシステムにおける音声コマンドの実行
(51)【国際特許分類】
G10L 15/28 20130101AFI20221005BHJP
H04R 3/00 20060101ALI20221005BHJP
G10L 15/00 20130101ALI20221005BHJP
【FI】
G10L15/28 400
H04R3/00 320
G10L15/00 200F
(21)【出願番号】P 2018045126
(22)【出願日】2018-03-13
【審査請求日】2021-02-17
(32)【優先日】2017-03-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】592051453
【氏名又は名称】ハーマン インターナショナル インダストリーズ インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(72)【発明者】
【氏名】キム ソン マン
【審査官】中村 天真
(56)【参考文献】
【文献】米国特許出願公開第2015/0228274(US,A1)
【文献】特開平11-052976(JP,A)
【文献】国際公開第2017/044629(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-15/34
G06F 3/16
H04R 3/00- 3/14
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
命令を含む非一時的コンピュータ可読記憶媒体であって、前記命令は、1つまたは複数のプロセッサにより実行されると、前記1つまたは複数のプロセッサ
を、
言語発声に応じて第1マイクにより生成される第1音声信号と、前記言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、
前記第1音声信号を、時間分節の第1配列に分割することと、
前記第2音声信号を、時間分節の第2配列に分割することと、
前記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較するこ
とに基づいて、前記第1配列の前記第1時間分節及び前記第2配列の前記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと
、
前記第1配列の最終時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の最終時間分節に対応付けられた音響エネルギーレベルと比較することに基づいて、前記言語発声に対応付けられたユーザに最も近いマイクが前記第1マイクであるか、前記第2マイクであるかを判断することと、
前記発話認識音声信号を、発話認識アプリケーションへ送信すること、もしくは、前記発話認識音声信号に対し発話認識を行うこと
と、
前記発話認識アプリケーションまたは前記発話認識から音声信号を受信することと、
前記最も近いマイクと共に配置されたデバイスから、前記音声信号を再生させることと
のステップを実行することによりマルチデバイスシステムにおいて発話認識を実行するように構成する
、非一時的コンピュータ可読記憶媒体。
【請求項2】
命令であって、前記命令は、1つまたは複数のプロセッサにより実行されると、前記1つまたは複数のプロセッサ
を、
前記第1配列の第2時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の第2時間分節に対応付けられた音響エネルギーレベルと比較することと、
前記第1配列の前記第2時間分節に対応付けられた前記音響エネルギーレベルを、前記第2配列の前記第2時間分節に対応付けられた前記音響エネルギーレベルと比較することに基づいて、前記第1配列の前記第2時間分節または前記第2配列の前記第2時間分節のうちの1つを、前記発話認識音声信号の第2時間分節として選択すること
と
のステップを実行するように構成する
、命令をさらに含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項3】
前記発話認識音声信号を前記発話認識アプリケーションへ送信することは、前記発話認識音声信号の前記第1時間分節及び前記発話認識音声信号の前記第2時間分節を前記発話認識アプリケーションへ送信することを含む、請求項2に記載の非一時的コンピュータ可読記憶媒体。
【請求項4】
前記最も近いマイクと共に配置された前記デバイスから前記音声信号を再生させることは、前記最も近いマイクと共に配置された前記デバイスへ前記音声信号を送信することを含む、請求項
1に記載の非一時的コンピュータ可読記憶媒体。
【請求項5】
前記第1配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第1配列の前記第1時間分節の平均音響エネルギーレベル及び前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、前記第2配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第2配列の前記第1時間分節の平均音響エネルギーレベル及び前記第2配列の前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項6】
前記第1配列の前記第1時間分節または前記第2配列の前記第1時間分節のうちの1つを、前記発話認識音声信号の前記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項7】
命令であって、前記命令は、1つまたは複数のプロセッサにより実行されると、前記1つまたは複数のプロセッサ
を、
前記発話認識音声信号の第2時間分節と、前記発話認識音声信号の第3時間分節との間の不連続音強を検出することと、
前記発話認識音声信号の前記第2時間分節及び前記発話認識音声信号の前記第3時間分節のうちの少なくとも1つに対し、音強整合プロセスを実行すること
と
のステップを実行するように構成する
、命令をさらに含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項8】
前記発話認識音声信号の前記第2時間分節は、前記第1音声信号に含まれる時間分節を含み、前記発話認識音声信号の前記第3時間分節は、前記第2音声信号に含まれる時間分節を含む、請求項
7に記載の非一時的コンピュータ可読記憶媒体。
【請求項9】
残響環境に配置される拡声器と、
命令を格納するメモリと、
前記メモリに接続された1つまたは複数のプロセッサであって、
前記1つまたは複数のプロセッサは、前記
命令を実行すると、
言語発声に応じて第1マイクにより生成される第1音声信号と、前記言語発声に応じて第2マイクにより生成される第2音声信号とを受信
することと、
前記第1音声信号を、時間分節の第1配列に分割
することと、
前記第2音声信号を、時間分節の第2配列に分割
することと、
前記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較
することと、
前記第1配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルを、前記第2配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルと比較することに基づいて、前記第1配列の前記第1時間分節及び前記第2配列の前記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択
することと、
前記第1配列の最終時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の最終時間分節に対応付けられた音響エネルギーレベルと比較することに基づいて、前記言語発声に対応付けられたユーザに最も近いマイクが前記第1マイクであるか、前記第2マイクであるかを判断することと、
前記発話認識音声信号を、発話認識アプリケーションへ送信する
こと、もしくは
、前記発話認識音声信号に対し発話認識を行う
ことと、
前記発話認識アプリケーションまたは前記発話認識から音声信号を受信することと、
前記最も近いマイクと共に配置されたデバイスから、前記音声信号を再生させることと
を行うように構成される
、1つまたは複数のプロセッサと
を含むシステム。
【請求項10】
前記第1配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第1配列の前記第1時間分節の平均音響エネルギーレベル及び前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、前記第2配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第2配列の前記第1時間分節の平均音響エネルギーレベル及び前記第2配列の前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、請求項
9に記載のシステム。
【請求項11】
前記第1配列の前記第1時間分節または前記第2配列の前記第1時間分節のうちの1つを、前記発話認識音声信号の前記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、請求項
9に記載のシステム。
【請求項12】
前記発話認識音声信号の第2時間分節と、前記発話認識音声信号の第3時間分節との間の不連続音強を検出することと、
前記発話認識音声信号の前記第2時間分節及び前記発話認識音声信号の前記第3時間分節のうちの少なくとも1つに対し、音強整合プロセスを実行すること
と
をさらに含む請求項
9に記載のシステム。
【請求項13】
前記発話認識音声信号の前記第2時間分節は、前記第1音声信号に含まれる時間分節を含み、前記発話認識音声信号の前記第3時間分節は、前記第2音声信号に含まれる時間分節を含む、請求項
12に記載のシステム。
【請求項14】
前記発話認識アプリケーションから音声コマンドを受信することであって、前記音声コマンドは、前記音声コマンドを実行する予定のスマートデバイスを示す位置情報を含まない
、ことと、
前記ユーザに最も近いスマートデバイ
スを特定することと、
前記ユーザに最も近い前記スマートデバイスへ、前記音声コマンドを転送すること
と
をさらに含む請求項
9に記載のシステム。
【請求項15】
前記ユーザに最も近い前記スマートデバイ
スを特定することは、複数のスマートデバイスが配置されている領域のトポロジー表現を調べることを含む、請求項
14に記載のシステム。
【請求項16】
マルチデバイス
システムにおいて発話認識を実行する方法であって、
言語発声に応じて第1マイクにより生成される第1音声信号と、前記言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、
前記第1音声信号を、時間分節の第1配列に分割することと、
前記第2音声信号を、時間分節の第2配列に分割することと、
前記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較するこ
とに基づいて、前記第1配列の前記第1時間分節及び前記第2配列の前記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと
、
前記第1配列の最終時間分節に対応付けられた音響エネルギーレベルを、前記第2配列の最終時間分節に対応付けられた音響エネルギーレベルと比較することに基づいて、前記言語発声に対応付けられたユーザに最も近いマイクが前記第1マイクであるか、前記第2マイクであるかを判断することと、
前記発話認識音声信号を、発話認識アプリケーションへ送信すること、もしくは
、前記発話認識音声信号に対し発話認識を行うこと
と、
前記発話認識アプリケーションまたは前記発話認識から音声信号を受信することと、
前記最も近いマイクと共に配置されたデバイスから、前記音声信号を再生させることと
を含む
、方法。
【請求項17】
前記第1配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第1配列の前記第1時間分節の平均音響エネルギーレベル及び前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、前記第2配列の前記第1時間分節に対応付けられた前記音響エネルギーレベルは、前記第2配列の前記第1時間分節の平均音響エネルギーレベル及び前記第2配列の前記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、請求項
16に記載の方法。
【請求項18】
前記第1配列の前記第1時間分節または前記第2配列の前記第1時間分節のうちの1つを、前記発話認識音声信号の前記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、請求項
16に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
請求実施形態の分野
本発明の実施形態は、概して発話処理デバイスに関し、より具体的には、マルチデバイスシステムにおける音声コマンドの実行に関する。
【背景技術】
【0002】
関連技術の説明
特に、スマートフォン、電子タブレット等のモバイルコンピューティングデバイスには通常、マイク及び高性能プロセッサが装備されていることから、近年、発話認識ソフトウェアが幅広く使用されるようになった。例えば、発話の記録された音声表現を解釈して、発話に対応するテキスト表現を生成可能な発話テキスト化ソフトウェアアプリケーションが、数多く開発されている。このようなソフトウェアが、好適に装備されたコンピューティングデバイスと併せて使用されると、ユーザは、コンピューティングデバイスのマイクに単語または句を発声することで、ソフトウェアアプリケーションにテキスト投入可能となる。このようなソフトウェアの一例として、インテリジェントパーソナルアシスタント(IPA)が存在する。
【0003】
IPAは、ユーザにより提供される言語入力に基づいて、ユーザのためにタスクまたはサービスを実行可能なソフトウェアエージェントまたは他のアプリケーションである。IPAの例には、Microsoft Cortana(商標)、Apple Siri(商標)、Google Home(商標)、及びAmazon Alexa(商標)が含まれる。コンピューティングデバイスに実装されたIPAにより、発話要求に基づいて特定のタスクがユーザのために実行可能となり得、よって、ユーザがタッチスクリーン、キーボード、マウス、または他の入力デバイスを介して手動入力を提供する必要は回避される。例えば、IPAを介して多様なオンライン情報源から、ユーザのために情報がアクセス可能である(例えば、天気、交通状態、ニュース、株価、ユーザのスケジュール、小売値等)。さらに、IPAにより、ユーザのために情報ベースタスクが完了可能である(例えば、電子メール、カレンダー予定行事、ファイル、及びTo‐doリスト等の管理)。
【0004】
しかしながら、IPA対応デバイスの使用が次第に普及するにつれ、問題が生じ得る。具体的には、複数のIPA対応デバイスが互いに近接して配置された場合(例えば同じ部屋または隣接した部屋において)、1つのIPA対応デバイスを対象としたユーザ音声コマンドは、別のIPA対応デバイスにより受信、解釈、及び実行され得る。例えば、照明スイッチを制御するように構成されたホームオートメーションデバイスに対し、1つの部屋において発せられた音声コマンドは、隣接した部屋に配置された同様の構成のスマートスピーカによっても受信及び実行され得、これにより不要な照明の点灯または消灯が生じる。このように、いくつかの状況下において、互いに近接に配置されたIPA対応デバイス間の衝突は、このようなデバイスによりもたらされ得る利便性及び効率性を低減し得る。
【発明の概要】
【発明が解決しようとする課題】
【0005】
従って、複数のIPA対応デバイスを含むシステムにおいて、音声コマンドを実行する改良技術が有用である。
【課題を解決するための手段】
【0006】
様々な実施形態が、命令を含む非一時的コンピュータ可読媒体を明記し、当命令は、1つまたは複数のプロセッサにより実行されると、1つまたは複数のプロセッサがステップを実行することによりマルチデバイスシステムにおいて発話認識を実行するように構成し、当ステップには、言語発声に応じて第1マイクにより生成される第1音声信号と、言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、第1音声信号を、時間分節の第1配列に分割することと、第2音声信号を、時間分節の第2配列に分割することと、第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較することと、比較に基づいて、第1配列の第1時間分節及び第2配列の第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと、発話認識音声信号を、発話認識アプリケーションへ送信すること、または、発話認識音声信号に対し発話認識を行うことが含まれる。
【0007】
開示される実施形態の少なくとも1つの利点は、ユーザが複数のスマートデバイスにより検出可能な音声コマンドを発しても、1つのスマートデバイスから1つの応答のみを受信可能なことである。さらなる利点は、複数のスマートデバイスのシステムは、ユーザに対し音声コマンドに具体的な位置情報を含めるよう要求することなく、スマートデバイスのうちのどれが音声コマンドの実行を見込まれているかを、状況的に判断可能なことである。
【0008】
様々な実施形態の上記の特徴が詳細に理解可能なように、上に簡約された様々な実施形態のより詳しい説明は、実施形態を参照することにより行われ得、そのうちのいくつかは添付図面において例示される。しかしながら、様々な実施形態は他の同等に有効な実施形態も容認し得るため、添付の図面は代表的な実施形態のみを例示し、よってその範囲の限定としてみなされるべきではないことに留意されたい。
例えば、本願は以下の項目を提供する、
(項目1)
命令を含む非一時的コンピュータ可読記憶媒体であって、上記命令は、1つまたは複数のプロセッサにより実行されると、上記1つまたは複数のプロセッサが、
言語発声に応じて第1マイクにより生成される第1音声信号と、上記言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、
上記第1音声信号を、時間分節の第1配列に分割することと、
上記第2音声信号を、時間分節の第2配列に分割することと、
上記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、上記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較することと、
上記比較に基づいて、上記第1配列の上記第1時間分節及び上記第2配列の上記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと、並びに、
上記発話認識音声信号を、発話認識アプリケーションへ送信すること、もしくは、
上記発話認識音声信号に対し発話認識を行うこと
のステップを実行することによりマルチデバイスシステムにおいて発話認識を実行するように構成する、上記非一時的コンピュータ可読記憶媒体。
(項目2)
さらに命令を含む上記非一時的コンピュータ可読記憶媒体であって、上記命令は、1つまたは複数のプロセッサにより実行されると、上記1つまたは複数のプロセッサが、
上記第1配列の第2時間分節に対応付けられた音響エネルギーレベルを、上記第2配列の第2時間分節に対応付けられた音響エネルギーレベルと比較することと、
上記第1配列の上記第2時間分節に対応付けられた上記音響エネルギーレベルを、上記第2配列の上記第2時間分節に対応付けられた上記音響エネルギーレベルと比較することに基づいて、上記第1配列の上記第2時間分節または上記第2配列の上記第2時間分節のうちの1つを、上記発話認識音声信号の第2時間分節として選択すること
のステップを実行するように構成する、上記項目に記載の非一時的コンピュータ可読記憶媒体。
(項目3)
上記発話認識音声信号を上記発話認識アプリケーションへ送信することは、上記発話認識音声信号の上記第1時間分節及び上記発話認識音声信号の上記第2時間分節を上記発話認識アプリケーションへ送信することを含む、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目4)
さらに命令を含む上記非一時的コンピュータ可読記憶媒体であって、上記命令は、1つまたは複数のプロセッサにより実行されると、上記1つまたは複数のプロセッサが、
上記第1配列の最終時間分節に対応付けられた音響エネルギーレベルを、上記第2配列の最終時間分節に対応付けられた音響エネルギーレベルと比較することと、
上記第1配列の上記最終時間分節に対応付けられた上記音響エネルギーレベルを、上記第2配列の上記最終時間分節に対応付けられた上記音響エネルギーレベルと比較することに基づいて、上記言語発声に対応付けられたユーザに最も近いマイクは上記第1マイクであるか、上記第2マイクであるかを判断すること
のステップを実行するように構成する、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目5)
さらに命令を含む上記非一時的コンピュータ可読記憶媒体であって、上記命令は、1つまたは複数のプロセッサにより実行されると、上記1つまたは複数のプロセッサが、
上記発話認識アプリケーションから音声信号を受信することと、
上記最も近いマイクと共に配置されたデバイスから、上記音声信号を再生させること
のステップを実行するように構成する、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目6)
上記最も近いマイクと共に配置された上記デバイスから上記音声信号を再生させることは、上記最も近いマイクと共に配置された上記デバイスへ上記音声信号を送信することを含む、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目7)
上記第1配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第1配列の上記第1時間分節の平均音響エネルギーレベル及び上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、上記第2配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第2配列の上記第1時間分節の平均音響エネルギーレベル及び上記第2配列の上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目8)
上記第1配列の上記第1時間分節または上記第2配列の上記第1時間分節のうちの1つを、上記発話認識音声信号の上記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目9)
さらに命令を含む上記非一時的コンピュータ可読記憶媒体であって、上記命令は、1つまたは複数のプロセッサにより実行されると、上記1つまたは複数のプロセッサが、
上記発話認識音声信号の第2時間分節と、上記発話認識音声信号の第3時間分節との間の不連続音強を検出することと、
上記発話認識音声信号の上記第2時間分節及び上記発話認識音声信号の上記第3時間分節のうちの少なくとも1つに対し、音強整合プロセスを実行すること
のステップを実行するように構成する、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目10)
上記発話認識音声信号の上記第2時間分節は、上記第1音声信号に含まれる時間分節を含み、上記発話認識音声信号の上記第3時間分節は、上記第2音声信号に含まれる時間分節を含む、上記項目のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
(項目11)
残響環境に配置される拡声器と、
発話認識アプリケーション及び信号マージアプリケーションを格納するメモリと、
上記メモリに接続された1つまたは複数のプロセッサであって、上記発話認識アプリケーションまたは上記信号マージアプリケーションを実行すると、
言語発声に応じて第1マイクにより生成される第1音声信号と、上記言語発声に応じて第2マイクにより生成される第2音声信号とを受信し、
上記第1音声信号を、時間分節の第1配列に分割し、
上記第2音声信号を、時間分節の第2配列に分割し、
上記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、上記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較し、
上記第1配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルを、上記第2配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルと比較することに基づいて、上記第1配列の上記第1時間分節及び上記第2配列の上記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択し、並びに、
上記発話認識音声信号を、発話認識アプリケーションへ送信する、もしくは、
上記発話認識音声信号に対し発話認識を行う
ように構成される上記1つまたは複数のプロセッサと
を含むシステム。
(項目12)
上記第1配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第1配列の上記第1時間分節の平均音響エネルギーレベル及び上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、上記第2配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第2配列の上記第1時間分節の平均音響エネルギーレベル及び上記第2配列の上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、上記項目に記載のシステム。
(項目13)
上記第1配列の上記第1時間分節または上記第2配列の上記第1時間分節のうちの1つを、上記発話認識音声信号の上記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、上記項目のいずれか一項に記載のシステム。
(項目14)
上記発話認識音声信号の第2時間分節と、上記発話認識音声信号の第3時間分節との間の不連続音強を検出することと、
上記発話認識音声信号の上記第2時間分節及び上記発話認識音声信号の上記第3時間分節のうちの少なくとも1つに対し、音強整合プロセスを実行すること
をさらに含む上記項目のいずれか一項に記載のシステム。
(項目15)
上記発話認識音声信号の上記第2時間分節は、上記第1音声信号に含まれる時間分節を含み、上記発話認識音声信号の上記第3時間分節は、上記第2音声信号に含まれる時間分節を含む、上記項目のいずれか一項に記載のシステム。
(項目16)
上記発話認識アプリケーションから音声コマンドを受信することであって、上記音声コマンドは、上記音声コマンドを実行する予定のスマートデバイスを示す位置情報を含まない、受信することと、
上記ユーザに最も近いスマートデバイスの位置を特定することと、
上記ユーザに最も近い上記スマートデバイスへ、上記音声コマンドを転送すること
をさらに含む上記項目のいずれか一項に記載のシステム。
(項目17)
上記スマートデバイスの上記位置を特定することは、複数のスマートデバイスが配置されている領域のトポロジー表現を調べることを含む、上記項目のいずれか一項に記載のシステム。
(項目18)
マルチデバイスにおいて発話認識を実行する方法であって、
言語発声に応じて第1マイクにより生成される第1音声信号と、上記言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、
上記第1音声信号を、時間分節の第1配列に分割することと、
上記第2音声信号を、時間分節の第2配列に分割することと、
上記第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、上記第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較することと、
上記比較に基づいて、上記第1配列の上記第1時間分節及び上記第2配列の上記第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと、並びに、
上記発話認識音声信号を、発話認識アプリケーションへ送信すること、もしくは、
上記発話認識音声信号に対し発話認識を行うこと
を含む上記方法。
(項目19)
上記第1配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第1配列の上記第1時間分節の平均音響エネルギーレベル及び上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含み、上記第2配列の上記第1時間分節に対応付けられた上記音響エネルギーレベルは、上記第2配列の上記第1時間分節の平均音響エネルギーレベル及び上記第2配列の上記第1時間分節のピーク音響エネルギーレベルのうちの1つを含む、上記項目に記載の方法。
(項目20)
上記第1配列の上記第1時間分節または上記第2配列の上記第1時間分節のうちの1つを、上記発話認識音声信号の上記第1時間分節として選択することは、最大音響エネルギーレベルを有する時間分節を選択することを含む、上記項目のいずれか一項に記載の方法。
(摘要)
マルチデバイスシステムにおいて発話認識を行うことは、言語発声に応じて第1マイクにより生成される第1音声信号と、言語発声に応じて第2マイクにより生成される第2音声信号とを受信することと、第1音声信号を、時間分節の第1配列に分割することと、第2音声信号を、時間分節の第2配列に分割することと、第1配列の第1時間分節に対応付けられた音響エネルギーレベルを、第2配列の第1時間分節に対応付けられた音響エネルギーレベルと比較することと、比較に基づいて、第1配列の第1時間分節及び第2配列の第1時間分節のうちの1つを、発話認識音声信号の第1時間分節として選択することと、発話認識音声信号に対し発話認識を行うことを含む。
【図面の簡単な説明】
【0009】
【
図1】様々な実施形態の1つまたは複数の態様を実施するように構成されるマルチデバイスインテリジェントパーソナルアシスタント(IPA)システムを例示する概要図である。
【
図2】本開示の1つまたは複数の態様を実行するように構成されるコンピューティングデバイスを例示する。
【
図3】様々な実施形態による、
図1のマルチデバイスIPAシステムにおけるマスタスマートデバイスにより受信され、そして処理される音声信号を、図式的に例示する。
【
図4】様々な実施形態による、マルチデバイスシステムにおいて発話認識を実行する方法ステップのフローチャートを明記する。
【
図5A】本開示の様々な実施形態による、
図4の方法ステップの異なる段階を図式的に例示する。
【
図5B】本開示の様々な実施形態による、
図4の方法ステップの異なる段階を図式的に例示する。
【
図5C】本開示の様々な実施形態による、
図4の方法ステップの異なる段階を図式的に例示する。
【
図5D】本開示の様々な実施形態による、
図4の方法ステップの異なる段階を図式的に例示する。
【
図6A】任意の音強整合の前の発話認識音声信号における時間分節を図式的に例示する。
【
図6B】実施形態による、音強整合アプリケーションが時間分節のうちの1つに対し音強整合を行った後の
図6Aの時間分節を図式的に例示する。
【
図6C】別の実施形態による、音強整合アプリケーションが時間分節のうちの1つに対し音強整合を行った後の
図6Aの時間分節を図式的に例示する。
【
図6D】別の実施形態による、音強整合アプリケーションが両時間分節に対し音強整合を行った後の
図6Aの時間分節を図式的に例示する。
【
図7】様々な実施形態による、
図1におけるマルチデバイスIPAシステムと類似するマルチデバイスIPAシステムが機能する領域のトポロジー表現を、図式的に例示する。
【
図8】様々な実施形態による、マルチデバイスシステムにおいて発話認識を実行する方法ステップのフローチャートを明記する。
【0010】
明確化のため、図間で共通の同一要素を指すのに、適用可能な場合には、同一参照番号が使用されている。一実施形態の特徴は、さらなる詳述なしに他の実施形態に組み込まれ得ると考えられる。
【発明を実施するための形態】
【0011】
図1は、様々な実施形態の1つまたは複数の態様を実施するように構成されるマルチデバイスインテリジェントパーソナルアシスタント(IPA)システム100を例示する概要図である。マルチデバイスIPAシステム100は、マスタスマートデバイス120と、スレーブスマートデバイス130と、スレーブスマートデバイス140とを含み、これらの全てが通信ネットワーク150を介して互いに通信可能に接続されている。また、言語発声91を介してユーザ要求を生成するユーザ90が、
図1において図示される。いくつかの実施形態において、マルチデバイスIPAシステム100は、3つ以上のスレーブスマートデバイスを含む。
【0012】
通信ネットワーク150は、マスタスマートデバイス120、スレーブスマートデバイス130、スレーブスマートデバイス140、及び/または、ウェブサーバもしくは別のネットワークコンピューティングデバイス等の他のエンティティもしくはデバイスの間でデータ交換を可能にする、任意の技術的に実行可能な種類の通信ネットワークであり得る。例えば、通信ネットワーク150は、数ある中でも、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、無線(WiFi)ネットワーク、無線パーソナルエリアネットワーク(WPAN)(ブルートゥース(登録商標)ネットワーク等)、及び/またはインターネットを含み得る。従って、いくつかの実施形態において、通信ネットワーク150は、WiFiルーターといった、
図1に図示されない1つまたは複数の追加ネットワークデバイスを含み得る。別の実施形態において、通信ネットワーク150は、マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140に限定され得る。
【0013】
マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140のそれぞれは、ユーザから特定の音声コマンドを受信し、それに基づいて行動するように構成されるIPA対応コンピューティングデバイスである。作動中、マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140のうちの1つまたは複数は、言語発声91を検出し、言語発声91をデジタル音声信号等の各自の音声信号に変換する。このように、スレーブスマートデバイス130は、例えばマイク132を介して、言語発声91に応じて音声信号131を生成し、音声信号131をマスタスマートデバイス120へ送信する。同様に、スレーブスマートデバイス140は、例えばマイク142を介して、言語発声91に応じて音声信号141を生成し、音声信号141をマスタスマートデバイス120へ送信する。より詳しく後述されるように、マスタスマートデバイス120も、マイク122を介して、言語発声91に応じて音声信号121を生成し、そして音声信号131、音声信号141、及び/または音声信号121の部分に基づいて、発話認識音声信号を作成する。発話認識音声信号はそれから、評価のために発話認識アプリケーションへ転送される。発話認識アプリケーションにより応答音声信号125が返されると、マスタスマートデバイス120は、マルチデバイスIPAシステム100内のどのスマートデバイスがユーザ90に最も近いかを判断し、当該スマートデバイスへ応答音声信号125を送信して、好適な拡声器123、133、または143により音響エネルギーへ変換する。このように、マルチデバイスIPAシステム100内の複数のスマートデバイスが、音声コマンドを含む言語発声91を受信し得るが、マルチデバイスIPAシステム100内の1つのスマートデバイスのみが、音声コマンドへの応答に対応付けられた音響を生成する。
【0014】
マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140のそれぞれは、通信ネットワーク150を介して通信し、かつIPAアプリケーション及びIPAアプリケーションに対応付けられたアプリケーションを実行するように作動可能な任意のスタンドアローンのコンピューティングデバイスであり得る。マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140として使用するのに好適なコンピューティングデバイスの例には、スマートスピーカ、スマートフォン、ホームオートメーションハブ、電子タブレット、ラップトップコンピュータ、及びデスクトップコンピュータ等が、非限定的に含まれる。代替的に、または追加的に、マスタスマートデバイス120、スレーブスマートデバイス130、及び/またはスレーブスマートデバイス140のうちの1つまたは複数は、通信ネットワーク150を介して通信するように作動可能であり、かつビデオゲーム機、セットトップコンソール、デジタルビデオレコーダ、及びホームオートメーションデバイス等を非限定的に含む電子デバイス、消費者製品、または他の機器に組み込まれたコンピューティングデバイスであり得る。このようなコンピューティングデバイスの一実施形態が、
図2と合わせて後述される。
【0015】
図2は、本開示の1つまたは複数の態様を実行するように構成されるコンピューティングデバイス200を例示する。コンピューティングデバイス200は、マルチデバイスIPAシステム100におけるマスタスマートデバイス120、スレーブスマートデバイス130、及び/またはスレーブスマートデバイス140として用いられ得る。故に、コンピューティングデバイス200は、メモリ210にそれぞれ存在し得る発話認識プログラム211、音声信号マージアプリケーション212、及び/またはトポロジーアプリケーション216のうちの1つまたは複数を実行するように構成される。いくつかの実施形態において、音声信号マージアプリケーション212は、音強整合アプリケーション213、時間整列アプリケーション214、及びマスタ選択アプリケーション215のうちの1つまたは複数を含み得る。コンピューティングデバイス200はさらに、例えば応答音声信号125(
図1に図示)を音響エネルギーに変換することで、拡声器282により音響を生成させるように構成される。本明細書において説明されるコンピューティングデバイスは例示であり、その他の技術的に実行可能な構成も本発明の範囲に含まれることに留意されたい。
【0016】
示されるように、コンピューティングデバイス200は、処理ユニット250と、入出力(I/O)デバイス280に接続された入出力(I/O)デバイスインタフェース260と、メモリ210と、ストレージ230と、ネットワークインタフェース270とを接続するインタコネクト(バス)240を、非限定的に含む。処理ユニット250は、中央処理装置(CPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、その他の種類の処理装置、またはデジタル信号プロセッサ(DSP)と共に作動するように構成されるCPUといった異なる処理装置の組み合わせとして実装される任意の好適なプロセッサであり得る。例えば、いくつかの実施形態において、処理ユニット250は、CPU及びDSPを含む。一般に、処理ユニット250は、データを処理し、及び/または発話認識プログラム211、音声信号マージアプリケーション212、音強整合アプリケーション213、時間整列アプリケーション214、マスタ選択アプリケーション215、及び/またはトポロジーアプリケーション216を含むソフトウェアアプリケーションを実行することが可能な任意の技術的に実行可能なハードウェアユニットであり得る。さらに、本開示の文脈において、コンピューティングデバイス200内に示されるコンピューティング構成要素は、物理的コンピューティングシステム(例えばデータセンタ内のシステム)に対応し得る、あるいはコンピューティングクラウド内で作動する仮想コンピューティングインスタンスであり得る。このような実施形態において、発話認識プログラム211は、コンピューティングクラウドまたはサーバ内で作動する仮想コンピューティングインスタンスを介して実施され得る。
【0017】
I/Oデバイス280は、キーボード、マウス、タッチ感応スクリーン、及びマイク281等の入力提供可能なデバイス、並びに拡声器282、及び表示スクリーン等の出力提供可能なデバイスを含み得る。表示スクリーンは、コンピュータモニタ、映像表示スクリーン、ハンドヘルドデバイスに組み込まれた表示機器、またはその他の技術的に実行可能な表示スクリーンであり得る。
図1内のマイク281の個々の例には、言語発声91等の音響エネルギーを、音声信号121、131、141等の音声信号に変換するように構成されるマイク122、132、及び142が含まれる。
図1内の拡声器282の個々の例には、発話認識アプリケーション211により返された応答音声信号125等の音声信号を、音響エネルギーに変換するように構成される拡声器123、133、及び143が含まれる。
【0018】
I/Oデバイス280は、タッチスクリーン、及びユニバーサルシリアルバス(USB)ポート等、入力受信及び出力提供の両方が可能な追加デバイスを含み得る。このようなI/Oデバイス280は、コンピューティングデバイス200のエンドユーザから様々な種類の入力を受信し、同様に、表示デジタル画像またはデジタル映像等の様々な種類の出力をコンピューティングデバイス200のエンドユーザへ提供するように構成され得る。いくつかの実施形態において、I/Oデバイス280のうちの1つまたは複数は、コンピューティングデバイス200を通信ネットワーク150へ接続するように構成される。
【0019】
I/Oインタフェース260により、I/Oデバイス280の処理ユニット250との通信が可能となる。I/Oインタフェースは一般に、処理ユニット250により生成されるI/Oデバイス280の対応アドレスを解釈する必須論理を含む。I/Oインタフェース260はまた、処理ユニット250とI/Oデバイス280との間のハンドシェーキングを実施し、及び/またはI/Oデバイス280に対応付けられた割り込みを生成するように構成され得る。I/Oインタフェース260は、任意の技術的に実行可能なCPU、ASIC、FPGA、その他の種類の処理装置またはデバイスとして実装され得る。
【0020】
ネットワークインタフェース270は、処理ユニット250を通信ネットワーク150へ接続するコンピュータハードウェアコンポーネントである。ネットワークインタフェース270は、スタンドアローンカード、プロセッサ、または他のハードウェアデバイスとして、コンピューティングデバイス200内に実装され得る。通信ネットワーク150がWiFiネットワークまたはWPANを含む実施形態において、ネットワークインタフェース270は、好適な無線送受信器を含む。代替的に、または追加的に、ネットワークインタフェース270は、セルラー通信機能、衛星電話通信機能、無線WAN通信機能、または通信ネットワーク150及びマルチデバイスIPAシステム100に含まれる他のコンピューティングデバイス200との通信を可能にする他の種類の通信機能で構成され得る。
【0021】
メモリ210は、ランダムアクセスメモリ(RAM)モジュール、フラッシュメモリユニット、もしくはその他の種類のメモリユニット、またはこれらの組み合わせを含み得る。処理ユニット250、I/Oデバイスインタフェース260、及びネットワークインタフェース270は、メモリ210からデータを読み出し、メモリ210へデータを書き込みように構成される。メモリ210は、プロセッサ250により実行可能な様々なソフトウェアプログラム、及び当該ソフトウェアプログラムに対応付けられたアプリケーションデータを含み、これには、発話認識アプリケーション211、音声信号マージアプリケーション212、音強整合アプリケーション213、時間整列アプリケーション214、マスタ選択アプリケーション215、及び/またはトポロジーアプリケーション216が含まれる。
図2に例示される実施形態において、メモリ210及びストレージ230は、コンピューティングデバイス200に組み込まれた物理的コンポーネントとして例示される。別の実施形態において、メモリ210及び/またはストレージ230は、コンピューティングクラウド等の分散コンピューティング環境に含まれ得る。
【0022】
発話認識アプリケーション211は、
図1における言語発声91等の発話を、テキストに変換するように構成される任意のアプリケーションであり得る。加えて、発話認識アプリケーションは、1つまたは複数の別個のアプリケーションに対する音声インタフェースとして機能するように構成され得る。いくつかの実施形態において、発話認識アプリケーション211は、コンピューティングデバイス200に対応付けられたIPAシステムに組み込まれたソフトウェアアプリケーションまたはモジュールである。
【0023】
音声信号マージアプリケーション212は、音声信号121、音声信号131、または音声信号141等の複数の入力音声信号から、発話認識音声信号を生成するように構成される。そのため、音声信号マージアプリケーション212は、音声信号を複数の連続時間分節に分割するように構成される。加えて、時間分節の配列に分割された複数の音声信号に関して、音声信号マージアプリケーション212は、特定のタイムスタンプに対応付けられたそれぞれの複数の音声信号からの時間分節を比較し、最良の音声信号強度を有する時間分節を選択し、選択した時間分節を用いて発話認識音声信号の一部を作成するように構成される。複数の音声信号に対応付けられたタイムスタンプごとに当プロセスを繰り返すことにより、音声信号マージアプリケーション212は、発話認識アプリケーション211により使用される1つの発話認識音声信号を生成する。このように、発話認識アプリケーション211のために生成される発話認識音声信号は、最強の音声信号強度を有する複数の音声信号の部分を含む。
【0024】
いくつかの実施形態において、音声信号マージアプリケーション212は、音強整合アプリケーション213、及び/または時間整列アプリケーション214を含む。音声信号マージアプリケーション212、音強整合アプリケーション213、時間整列アプリケーション214、及びトポロジーアプリケーション216の動作は、より詳しく後述される。
【0025】
マスタ選択アプリケーション215は、マルチデバイスIPAシステム100に含まれるスマートデバイスのうち、どれがマスタスマートデバイスとして作動し、どれがスレーブスマートデバイスとして作動するかを判断するように構成される。いくつかの実施形態において、通信ネットワーク150内で追加のIPA対応スマートデバイスの電源が入れられた場合等、マルチデバイスIPAシステム100に新たなスマートデバイスが追加された場合、マスタ選択アプリケーション215は、マスタスマートデバイスが選択されるように、マルチデバイスIPAシステム100内の様々なスマートデバイス間の通信を調整する。このように、マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140は同様または同一のデバイスであっても、1つのマスタスマートデバイスが選択される。
【0026】
マスタスマートデバイスを選択するために、マスタ選択アプリケーション215において任意の技術的に実行可能なアルゴリズム(複数可)が用いられ得る。例えば、いくつかの実施形態において、マルチデバイスIPAシステム100において最大計算能力を有するスマートデバイスが、マスタスマートデバイス120として選択される。あるいは、いくつかの実施形態において、マルチデバイスIPAシステム100において最大バッテリ残量を有するスマートデバイスが、マスタスマートデバイス120として選択される。さらに別の実施形態において、マルチデバイスIPAシステム100において最も中央に配置されているスマートデバイスが、マスタスマートデバイス120として選択される。このような実施形態において、どのスマートデバイスが最も中央に配置されているかを決定するために、マルチデバイスIPAシステム100と一致する生活空間を表す部屋のトポロジーが用いられ得る。このようなトポロジーの実施形態は、
図7と合わせて後述される。
【0027】
前述のように、本開示の実施形態によれば、マスタスマートデバイス120は、音声信号131、音声信号141、及び/または音声信号151(
図1に全て図示)の部分に基づいて、発話認識音声信号を作成し、発話認識音声信号を、評価及び解釈のために、発話認識アプリケーションへ転送するように構成される。マスタスマートデバイス120はさらに、マルチデバイスIPAシステム100内のどのスマートデバイスがユーザ90に最も近いかを判断し、そのスマートデバイスに対し、発話認識アプリケーション211により返された任意の応答音声信号125を提供するように構成される。その結果、マルチデバイスIPAシステム100内の好適なスマートデバイスが、任意の来たる音声応答をユーザ90に提供する。このような実施形態は、
図3~5と合わせて後述される。
【0028】
図3は、様々な実施形態による、マスタスマートデバイス120により受信され、そして処理される音声信号300を、図式的に例示する。音声信号300は、マスタスマートデバイス120により生成された音声信号121、スレーブスマートデバイス130により生成された音声信号131、またはスレーブスマートデバイス140により生成された音声信号141を表し得る。示されるように、音声信号300は、時間分節301A~301Nの配列に分割される。それぞれの時間分節301A~301Nは、特定の時間間隔に対応付けられた音声信号300からの音声データの特定部分、すなわち音声信号分節データ303A~303Nのうちの1つをそれぞれ含む。加えて、それぞれの時間分節301A~301Nは、音声信号300及びその特定時間間隔に対応付けられたメタデータ、すなわち分節メタデータ302A~302Nを含む。例えば、時間分節301Aは、音声信号分節データ303A、及び分節メタデータ302Aを含む。同じく、時間分節301Bは、音声信号分節データ303B及び分節メタデータ302Bを含み、時間分節301Cは、音声信号分節データ303C及び分節メタデータ302Cを含み、以降同様に続く。
【0029】
本明細書において集合的に時間分節301と称される時間分節301A~301Nはそれぞれ、特有の時間間隔の音声信号データを含み、各時間分節301の時間間隔は、約50ミリ秒から約2秒の間である。非常に短持続の時間分節301は一般に、より大きい計算リソースを必要とするため、マスタスマートデバイス120、スレーブスマートデバイス130、またはスレーブスマートデバイス140のうちのいくつかの構成において実施することが難しくあり得る。さらに、後述されるように、より長持続の音声分節301は、異なる音声信号からの時間分節を発話認識音声信号へ効果的にマージするのに、音声信号内131において十分な時間粒度を提供し損ない得る。その結果、いくつかの実施形態において、各時間分節301の時間間隔は、約100ミリ秒から約500ミリ秒の間である。本明細書において集合的に音声信号分節データ303と称される音声信号分節データ303A~303Nはそれぞれ、音声信号強度または音響エネルギーレベルが対応付けられ、示されるように、時間に対して図示される。
【0030】
本明細書において集合的に分節メタデータ302と称される分節メタデータ302A~302Nはそれぞれ、音声信号300及び特定の時間分節303に対応付けられたメタデータを含む。例えば、いくつかの実施形態において、特定の時間分節301に対応付けられた分節メタデータ302の例には、その時間分節301の音声信号分節データ303がマルチデバイスIPAシステム100内のスマートデバイスにより生成された時間を示すタイムスタンプまたは他の識別子が含まれる。いくつかの実施形態において、特定の時間分節301に対応付けられた分節メタデータ302の例には、時間分節301はマルチデバイスIPAシステム100内のどのスマートデバイスから生じたかを示す情報が含まれる。さらに、いくつかの実施形態において、特定の時間分節301に対応付けられた分節メタデータ302の例には、時間分節301にわたる平均音声信号強度、及び時間分節内の音声信号分節データのピーク音声信号強度等、その時間分節301に含まれる音声信号分節データ303に関連するメタデータが含まれる。
【0031】
いくつかの実施形態において、音声信号300は、音声信号300を生成するスマートデバイスにより、時間分節301に分割される。このような実施形態において、分節メタデータ302の一部または全ても、音声信号300を生成するスマートデバイスにより生成される。あるいは、いくつかの実施形態において、音声信号300は、スレーブスマートデバイス130またはスレーブスマートデバイス140から受信された場合、マスタスマートデバイス120により時間分節301に分割され得る。同様に、いくつかの実施形態において、分節メタデータ302の一部または全ては、時間分節301が一旦生成されると、マスタスマートデバイス120により生成され得る。
【0032】
図4は、様々な実施形態による、マルチデバイスシステムにおいて発話認識を実行する方法ステップのフローチャートを明記する。
図5A~Dは、本開示の様々な実施形態による、
図4の方法ステップの異なる段階を図式的に例示する。方法ステップは
図1~3のシステムに関して説明されるが、方法ステップを任意の順序で行うように構成される任意のシステムは、様々な実施形態の範囲に含まれることが、当業者には理解されよう。
【0033】
示されるように、方法400は、マスタスマートデバイス120がマルチデバイスIPAシステム100に含まれる各スマートデバイスから1つずつ、複数の音声信号を受信するステップ401から始まる。音声信号は、ユーザ90からの言語発声91に応じて生成される。例えば、一実施形態において、マスタスマートデバイス120は、
図5Aに示されるように、マイク122からの音声信号121、スレーブスマートデバイス130からの音声信号131、及びスレーブスマートデバイス140からの音声信号141を受信する。スレーブスマートデバイス130はスレーブスマートデバイスとして選択されているため、スレーブスマートデバイス130がマイク132から音声信号131を受信すると、音声信号131は、スレーブスマートデバイス130にローカルに含まれる任意の発話認識アプリケーションにより処理されるのではなく、マスタスマートデバイス120へ送信される。同様に、スレーブスマートデバイス140は、ローカルで音声信号141を処理するのではなく、音声信号141をマスタスマートデバイス120へ送信する。
【0034】
ステップ402において、マスタスマートデバイス120は、ステップ401において受信した音声信号を、
図5Bに示されるように、タイムスタンプ時間分節501A~501Nの配列に分割する。他の音声信号に関して、ステップ401において受信された音声信号のうちの1つの相対信号強度は、時間分節501A~501Nを通して変わり得ることに留意されたい。例えば、音声信号131は、時間分節510において最も強い音声信号強度を有し、一方、音声信号141は、時間分節520において最も強い音声信号強度を有する。このような相対音声信号強度の変化は、マスタスマートデバイス120、スレーブスマートデバイス130、またはスレーブデバイス140のうちの1つまたは複数に関するユーザ90の位置または配向の変化により生じ得る。このように、時間分節510により表される時間間隔の間、ユーザ90はスレーブスマートデバイス130に近接または直面し得、一方、時間分節520により表される時間間隔において、ユーザ90はスレーブスマートデバイス140に対しより直面または接近し得る。
【0035】
音声信号121、131、及び141を時間分節の配列に分割することに加えて、いくつかの実施形態において、マスタスマートデバイス120はまた、音声信号121、131、及び141の時間分節501A~501Nごとに、分節メタデータ302の一部または全てを生成する。代替実施形態において、音声信号131及び141の時間分節への分割は、マスタスマートデバイス120へ転送される前に、ローカルで行われる。このような実施形態において、スレーブスマートデバイス130は音声信号131を時間分節301に分割し、時間分節301ごとに分節メタデータ302を生成し、一方、スレーブスマートデバイス140は、音声信号141を時間分節301に分割し、時間分節301ごとに分節メタデータ302を生成する。
【0036】
ステップ403において、マスタスマートデバイス120は、ステップ401において受信した各音声信号から、対応時間分節501を選択する。いくつかの実施形態において、時間分節は経時的に選択され、従って、ステップ403の各反復時に、後の時間分節501が、各音声信号121、131、及び141から選択される。例えば、このような実施形態において、ステップ403の第1反復時において、マスタスマートデバイス120は、それぞれの音声信号121、131、及び141から時間分節501Aを選択し、ステップ403の次の反復時において、マスタスマートデバイス120は、各音声信号から時間分節501Bを選択し、以降同様に続く。各音声信号からの対応時間分節501は、タイムスタンプに基づいてステップ403において選択可能である。すなわち、各音声信号における同じタイムスタンプ情報を有する時間分節が、ステップ403において一緒に選択される。
【0037】
ステップ404において、マスタスマートデバイス120は、
図5Cにおいて例示されるように、ステップ403において選択された時間分節501の音声信号強度を比較する。例示のために、
図5Cは、同時に比較される音声信号121、131、及び141の全ての時間分節501の比較を示す。実際には、マスタスマートデバイス120は一般に、ステップ404の各反復時に、それぞれの音声信号121、131、及び141から、1つの時間分節501を比較する。例えば、ステップ404の一反復時において、マスタスマートデバイス120は、音声信号121の時間分節501Aの音声信号強度を、音声信号131の時間分節501A及び音声信号141の時間分節501Aの音声信号強度と比較する。それぞれの音声信号121、131、及び141の時間分節501Bの音声信号強度は、ステップ404の次の反復時において比較され、以降同様に続く。
【0038】
いくつかの実施形態において、音声信号強度の比較は、ステップ403において選択された時間分節501ごとの分節メタデータ302に含まれる情報に基づく。いくつかの実施形態において、マスタスマートデバイス120は、時間分節501ごとの平均音声信号強度を比較する。別の実施形態において、マスタスマートデバイス120は、時間分節501ごとのピーク音声信号強度を比較する。
【0039】
ステップ405において、マスタスマートデバイス120は、最大音声信号強度または音響エネルギーレベルを有する時間分節501を選択する。
【0040】
ステップ406において、マスタスマートデバイス120は、ステップ405において選択した時間分節501を、
図5Dに示されるように、発話認識音声信号530に加える。
図5Dは、方法400が完了し、同時に比較された音声信号121、131、及び141から全ての時間分節531が追加された後の発話認識音声信号530を示す。実際には、マスタスマートデバイス120は一般に、ステップ406の各反復時に、それぞれの音声信号121、131、及び141から、1つの時間分節501を追加する。例えば、ステップ406の一反復時において、マスタスマートデバイス120は、発話認識音声信号530に、音声信号131の時間分節501Aを、時間分節531Aとして選択する。その後、ステップ406の次の反復時において、マスタスマートデバイス120は、発話認識音声信号530に、音声信号131の時間分節501Bを、時間分節531Bとして選択し、以降同様に続く。
図5Dに例示される実施形態において、時間分節510にて音声信号131が最大音声信号強度を有するため、ステップ406の複数の反復時の間に、音声信号131からの時間分節510が発話認識音声信号530に追加される。同様に、時間分節520において音声信号141が最大音声信号強度を有するため、ステップ406の複数の反復時の間に、音声信号141からの時間分節520が発話認識音声信号530に追加される。
【0041】
ステップ407において、マスタスマートデバイス120は、ステップ401において受信した音声信号の任意の時間分節が未処理で残っているか否かを判定する。残っている場合、方法400はステップ403に戻り、残っていない場合、方法400はステップ408へ進む。
【0042】
ステップ408において、マスタスマートデバイス120は、発話認識音声信号530を、処理及び解釈のために、発話認識アプリケーション211へ転送する。いくつかの実施形態において、発話認識アプリケーション211は、発話認識音声信号530をテキストに変換し、その後、テキスト内から、発話認識アプリケーション211またはマルチデバイスIPAシステム100に関連する他のアプリケーションに対応付けられた音声コマンドを検出する。例えば、いくつかの実施形態において、検出された音声コマンドは、マスタスマートデバイス120により実施され、一方、別の実施形態において、検出された音声コマンドは、マスタスマートデバイス120または通信ネットワーク150に通信可能に接続された他のコンピューティングデバイスにおいて作動する任意の好適なアプリケーションへ送信される。一般に、検出される音声コマンドは、会話式質問またはコマンド等、従来のIPAシステムにより用いられる任意の好適なコマンドを含み得る。
【0043】
ステップ409において、マスタスマートデバイス120は、
図1における応答音声信号125等、応答音声信号を発話認識アプリケーション211から受信する。例えば、応答音声信号125は、ステップ408において検出された音声コマンド(複数可)に対する発話ベース応答を含み得る。
【0044】
ステップ410において、マスタスマートデバイス120は、マルチデバイスIPAシステム100に含まれるスマートデバイスのうち、どれがユーザ90に最も近いか判断する。いくつかの実施形態において、マスタスマートデバイス120は、分節メタデータ302に基づいて、どのスマートデバイスがユーザ90に最も近いか判断する。具体的には、ユーザ90に最も近いスマートデバイスは、発話認識音声信号530の最後の時間分節531Nが生じたスマートデバイスであると、マスタスマートデバイス120は判断し得る。
【0045】
ステップ411において、マスタスマートデバイス120は、ステップ410においてユーザ90に最も近いと判断されたスマートデバイスへ、応答音声信号125を送信する。従って、ユーザ90に最も近くに配置されたスマートデバイスが、言語発声91に含まれる音声コマンドに対する可聴応答を提供する。さらに、マルチデバイスIPAシステム100内のそれ以外のスマートデバイスは、可聴応答を提供しない。よって、方法400の実施により、複数のIPA対応デバイスが同じ口頭コマンドに同時に応答してユーザ90に混乱が生じることは、回避される。
【0046】
発話認識音声信号530を形成するために複数の情報源からの時間分節501が結合されるため、いくつかの状況において、方法400で生成される発話認識音声信号530内に、不連続性が存在し得る。例えば、
図5Dに示されるように、音声信号131といった第1情報源からの発話認識音声信号530内の時間分節501が、音声信号141といった第2情報源からの時間分節501と隣接する場合、音声信号強度に大幅な不連続性が生じ得る。発話認識音声信号530内の時間分節501Jは、音声信号131から取り込まれ、音声信号141から取り込まれた時間分節501Kよりも大きい音声信号強度を有する。このような不連続性は、可聴のカチカチとした音を生じ得、これは発話認識アプリケーション211の口頭コマンドを認識する能力に作用し得る。いくつかの実施形態によれば、音強整合アプリケーション213は、
図6A~Dに例示されるように、このような不連続性を平滑化するように構成される。
【0047】
図6Aは、任意の音強整合の前の発話認識音声信号530における時間分節501J及び501Kを図式的に例示する。示されるように、時間分節501Jと時間分節501Kとの間の遷移時601に、不連続音強602が起こる。
【0048】
図6Bは、実施形態による、音強整合アプリケーション213が時間分節501Jに対し音強整合を行った後の時間分節501J及び501Kを図式的に例示する。具体的には、音強整合アプリケーション213は、遷移時601の時間分節501Jの音声信号レベルが、遷移時601の時間分節501Kの音声信号レベルと等しくなるように、時間分節501Jの少なくとも一部に関する音声信号強度を低減させた。このようにして、音強整合アプリケーション213により、拡張発話認識音声信号630が生成される。示されるように、いくつかの実施形態において、音声信号強度における低減は、時間分節501Jにより表される時間間隔の一部または全体にわたって段階的であり得る。
図6Bに描かれる音声信号強度における低減は、従来のデジタル信号処理技術により容易に実行可能である。代替的に、または追加的に、時間分節501J及び501Kの間の遷移を可聴に平滑化するために、時間分節501Jに対応付けられた音声信号を時間分節501Kに対応付けられた音声信号と調和させる任意の技術的に実行可能な技術、例えばエコー除去技術、及びデコンボリューションアルゴリズム等が用いられ得る。
【0049】
図6Cは、別の実施形態による、音強整合アプリケーション213が時間分節501Kに対し音強整合を行った後の時間分節501J及び501Kを図式的に例示する。具体的には、音強整合アプリケーション213は、遷移時601の時間分節501Kの音声信号レベルが、遷移時601の時間分節501Jの音声信号レベルと等しくなるように、時間分節501Kの少なくとも一部に関する音声信号強度を増大させた。このようにして、音強整合アプリケーション213により、拡張発話認識音声信号631が生成される。示されるように、いくつかの実施形態において、音声信号強度における増大は、時間分節501Kにより表される時間間隔の一部または全体にわたって段階的であり得る。
図6Cに描かれる音声信号強度における増大は、
図6Bに関連して前述されたデジタル信号処理技術のうちのいずれかにより、容易に実行可能である。
【0050】
図6Dは、別の実施形態による、音強整合アプリケーション213が時間分節501Jに対し、及び時間分節501Kに対し音強整合を行った後の時間分節501J及び501Kを図式的に例示する。具体的には、音強整合アプリケーション213は、遷移時601の時間分節501Kの音声信号レベルが、遷移時601の時間分節501Jの音声信号レベルと等しくなるように、時間分節501Jの少なくとも一部に関する音声信号強度を低減させ、時間分節501Kの少なくとも一部に関する音声信号強度を増大させた。このようにして、音強整合アプリケーション213により、拡張発話認識音声信号632が生成される。音声信号強度におけるこのような変化は、
図6Bに関連して前述されたデジタル信号処理技術のうちのいずれかにより、容易に実行可能である。
【0051】
いくつかの実施形態において、時間分節501J及び501Kの間の音声信号強度における不連続性は、時間整列アプリケーション214により対処される。例えば、1つの音声信号(例えば音声信号131)に対応付けられた時間分節501のうちの1つまたは複数の分節のタイムスタンプと、別の音声信号(例えば音声信号141)に対応付けられた時間分節501のうちの1つまたは複数の分節のタイムスタンプとの間に、小さい時間不整列が存在する場合、時間分節501J及び501Kにおける波形は、既知のデジタル信号処理技術を使用して整列可能である。このようにして、例えば異なる位置に配置されたスマートデバイスに特有の微小遅延により生じる音声信号間の可聴不連続性は、最小化あるいは低減可能である。
【0052】
いくつかの実施形態において、マルチデバイスIPAシステムに含まれるスマートデバイスのうちの一部または全ては、住宅またはオフィス空間における特定の部屋等、通信ネットワーク150に対応付けられた特定位置にそれぞれリンクされる。このような実施形態において、マスタスマートデバイス120、スレーブスマートデバイス130、及びスレーブスマートデバイス140は、位置認識スマートデバイスである。すなわち、それぞれが、生活空間等の包括的領域内の特定の部屋または他の位置に対応付けられている。従って、マルチデバイスIPAシステム100内の特定のスマートデバイスにより受信されたコマンドは、スマートデバイスがユーザ、生活空間内の他のデバイス、及びスマートデバイス自身の位置を認識しているという位置認識状況にあるスマートデバイスにより、理解可能である。このような実施形態において、トポロジーアプリケーション216は、ユーザがマルチデバイスIPAシステム100内の各スマートデバイスを、マルチデバイスIPAシステム100が機能する領域のトポロジー表現における特定の位置に対応付けることを可能にするように構成される。このようなトポロジー表現の一実施形態は、
図7において例示される。
【0053】
図7は、様々な実施形態による、
図1におけるマルチデバイスIPAシステム100と類似するマルチデバイスIPAシステムが機能する領域のトポロジー表現700を、図式的に例示する。トポロジー表現700は、マルチデバイスIPAシステム100に対応付けられた生活空間の様々な部屋の間の位置関係を捉える。よって、トポロジー表現700は、部屋710と、様々な部屋710の間にどのようなアクセスが存在するかを示す接続720とを含む。加えて、トポロジー表現700は、互いに近接する複数の部屋をそれぞれ含む1つまたは複数の区域731及び732も含み得る。トポロジー表現700は一般に、例えばトポロジーアプリケーション216により提供されるグラフィカルユーザインタフェースを介して、ユーザにより入力され、通常、マルチデバイスIPAシステム100にスマートデバイスが追加される度に修正される。
【0054】
図7に例示される実施形態において、部屋710には、キッチン701、ダイニングルーム702、中央廊下703、リビングルーム704、玄関廊下705、風呂場706、玄関707、及び寝室708が含まれる。接続720には、特定の部屋710との間のドアアクセス接続721と、特定の部屋710との間の開放領域アクセス接続722とが含まれる。従って、接続720は、どの部屋が音声制御の対象空間であり得るかを示すことが可能であり、開放領域アクセス接続722を介して接続されている部屋は対象候補であり、ドアアクセス接続721によりユーザから隔てられた部屋は非対象であるとみなされる。加えて、トポロジー表現700は、音声コマンドにより制御可能なデバイスといったスマートデバイスの位置を含む。
図7に例示される実施形態において、トポロジー表現700におけるスマートデバイスには、照明701A、702A、702B、703A、703B、704A、704B、705A、706A、707A、及び708Aが含まれる。
【0055】
区域731~733はそれぞれ、複数の部屋と、音声コマンドに用いられ得る一意的識別子とを含む。従って、区域731がトポロジー表現700において「家族領域」と定義された場合、家族領域に対し音声コマンドを発することが可能であり、これは、この区域に含まれる全ての部屋の全てのスマートデバイスに作用する。例えば、ユーザが「家族領域内の照明を点灯」という音声コマンドを与えると、結果として、照明701A、702A、702B、703A、703B、704A、及び704Bが点灯される。
【0056】
図8は、様々な実施形態による、マルチデバイスシステムにおいて発話認識を実行する方法ステップのフローチャートを明記する。方法ステップは
図1~3のシステムに関して説明されるが、方法ステップを任意の順序で行うように構成される任意のシステムは、様々な実施形態の範囲に含まれることが、当業者には理解されよう。
【0057】
示されるように、方法800は、トポロジー表現700に対応付けられたマルチデバイスIPAシステム内のマスタスマートデバイスが、1つまたは複数の音声信号を受信するステップ801から始まる。マスタスマートデバイスは、ユーザの言語発声を検出したマルチデバイスIPAシステムに含まれるスマートデバイスそれぞれから、そのような1つの音声信号を受信する。例えば、1つまたは複数の音声信号は、
図1における通信ネットワーク150に類似したWiFiネットワークまたは他のネットワークを介して、マスタスマートデバイスにより受信され得、ユーザの言語発声に応じて生成される。
【0058】
ステップ802において、マスタスマートデバイスは、例えば前述の方法400を介して、ステップ801において受信された1つまたは複数の音声信号から、発話認識音声信号を作成する。
【0059】
ステップ803において、マスタスマートデバイスは、発話認識音声信号を、処理及び解釈のために、発話認識アプリケーション211といった発話認識アプリケーションへ転送する。いくつかの実施形態において、発話認識アプリケーションは、発話認識音声信号をテキストに変換し、それからマルチデバイスIPAシステムにより実行可能な音声コマンドを検出する。
【0060】
ステップ804において、マスタスマートデバイスは、発話認識アプリケーションにより検出された音声コマンドを通常、テキスト形式で受信する。
【0061】
ステップ805において、マスタスマートデバイスは、ステップ804において受信した音声コマンドがマルチデバイスIPAシステムに含まれる1つまたは複数のスマートデバイスにより実行可能であるか否かを判定する。実行不可能である場合、方法800はステップ806へ進み、実行可能である場合、方法800はステップ807へ進む。
【0062】
ステップ806において、マスタスマートデバイスは、音声コマンドを、実行のために好適なアプリケーションへ転送する。
【0063】
ステップ807において、マスタスマートデバイスは、マルチデバイスIPAシステム内のどのスマートデバイスに音声コマンドを実行させる予定かを示す位置情報を、ステップ804において受信した音声コマンドが含むか否かを判定する。例えば、音声コマンドは、「リビングルーム内の照明」または「リビングルームの照明」といった句を含み得る。含む場合、方法はステップ808へ進み、含まない場合、方法はステップ809へ進む。
【0064】
ステップ808において、マスタスマートデバイスは、音声コマンドにおいて指示された位置における、マルチデバイスIPAシステムの1つまたは複数のスマートデバイスへ、音声コマンドを転送する。例えば、音声コマンドが「リビングルーム内の照明」という句を含む実施形態において、マスタスマートデバイスは、音声コマンドの実行のために、トポロジー表現700内の照明704A及び704Bに対応するスマートデバイスへ、音声コマンドを転送する。
【0065】
ステップ809において、マスタスマートデバイスは、どのデバイスがマルチデバイスIPAシステム内で最もユーザに近いスマートデバイスであるかに基づいて、ユーザの現在の位置を特定する。例えば、いくつかの実施形態において、前述の方法400に明記されるように、ユーザに最も近いスマートデバイスは、発話認識音声信号の最後の時間分節が生じたスマートデバイスであると、マスタスマートデバイスは判断する。
【0066】
ステップ810において、マスタスマートデバイスは、音声コマンドを実行するように構成され、かつユーザの現行位置に配置された1つまたは複数のスマートデバイスへ、音声コマンドを転送する。
【0067】
要するに、方法800の実施により、ユーザは、音声コマンドが位置特有のコマンドであっても、位置情報を含まない音声コマンドを用いることが可能となる。従って、好適に構成された多室空間のトポロジー表現を仮定すると、ユーザは、「照明の点灯」といった単純な音声コマンドを発して、正しくコマンドを実行させることが可能となる。マルチデバイスIPAシステムに含まれる位置認識スマートデバイスにより、ユーザが特定の音声コマンドを実行させたいスマートデバイス(複数可)の位置は、状況的に特定可能であり、よってユーザにより発せられる音声コマンドは簡略化される。
【0068】
要するに、様々な実施形態は、複数のスマートデバイスから受信される複数の音声信号の部分に基づいて発話認識音声信号を作成し、発話認識音声信号を、評価及び解釈のために、発話認識アプリケーションへ転送し、複数のスマートデバイスのうちどれがユーザに最も近いかを判断するシステム及び技術を明記する。発話認識アプリケーションにより返される応答音声信号は、実行及び/または再生のために、ユーザに最も近いと判断されたスマートデバイスへ転送される。開示される実施形態の少なくとも1つの利点は、ユーザが複数のスマートデバイスにより検出可能な音声コマンドを発しても、1つの応答のみを受信可能なことである。
【0069】
様々な実施形態の説明は、例示目的で提示されているが、開示される実施形態に関して包括的または限定的である意図はない。説明される実施形態の範囲及び趣旨から逸脱することなく、数多くの変更及び変形が当業者には明らかであろう。
【0070】
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具現化され得る。従って、本開示の態様は、完全なハードウェア実施形態、完全なソフトウェア実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、または本明細書において全て「モジュール」もしくは「システム」と一般に称され得るソフトウェア及びハードウェア態様を組み合わせた実施形態の形を取り得る。さらに、本開示の態様は、コンピュータ可読プログラムコードが取り込まれた1つまたは複数のコンピュータ可読媒体(複数可)に具現化されたコンピュータプログラム製品の形を取り得る。
【0071】
1つまたは複数のコンピュータ可読媒体の任意の組み合わせが使用され得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、もしくは半導体のシステム、機器、もしくは装置、または前述の任意の好適な組み合わせであり得るが、これに限定されない。コンピュータ可読記憶媒体のより具体的な例(非包括的一覧)には、1つまたは複数の有線を有する電気接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読出専用メモリ(ROM)、消去可能プログラマブル読出専用メモリ(EPROMもしくはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読出専用メモリ(CD‐ROM)、光学記憶装置、磁気記憶装置、または前述の任意の好適な組み合わせ、以上が含まれ得る。本文書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、機器、もしくは装置により使用される、またはこれと接続するプログラムを包含もしくは記憶可能な任意の有形媒体であり得る。
【0072】
本開示の実施形態による方法、機器(システム)、及びコンピュータプログラム製品のフローチャート図解及び/またはブロック図を参照して、本開示の態様が前述された。フローチャート図解及び/またはブロック図の各ブロック、並びにフローチャート図解及び/またはブロック図内のブロックの組み合わせは、コンピュータプログラム命令により実施可能であることは理解されよう。これらのコンピュータプログラム命令は、マシンを生じさせるために汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理機器のプロセッサに提供され得、よって、コンピュータまたは他のプログラマブルデータ処理機器のプロセッサを介して実行される当該命令により、フローチャート及び/またはブロック図のブロック(複数可)において指定される機能/活動の実施が可能となる。このようなプロセッサは、汎用プロセッサ、専用プロセッサ、特定用途向けプロセッサ、またはフィールドプログラマブルプロセッサもしくはゲートアレイであり得るが、これに限定されない。
【0073】
図におけるフローチャート及びブロック図は、本開示の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の可能な実施態様のアーキテクチャ、機能、及び動作を例示する。その際、フローチャートまたはブロック図における各ブロックは、指定される論理機能(複数可)を実行するための1つまたは複数の実行可能命令を備えるモジュール、セグメント、またはコード部分を表し得る。いくつかの代替実施態様において、ブロックに記される機能は、図に記される順番外でも起こり得ることにも留意されたい。例えば、連続して示される2つのブロックは実際には、実質的に同時に実行され得る、あるいは関与する機能によっては、ブロックは時に逆の順序で実行され得る。ブロック図及び/またはフローチャート図解の各ブロック、並びにブロック図及び/またはフローチャート図解内のブロックの組み合わせは、指定される機能もしくは活動を実行する専用ハードウェアベースシステム、または専用ハードウェア及びコンピュータ命令の組み合わせにより実行可能であることにも留意されたい。
【0074】
前述は本開示の実施形態を対象とするが、本開示の他及びさらなる実施形態は、その基本範囲から逸脱することなく考案され得、その範囲は以下の特許請求の範囲により特定される。