IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

<>
  • 特許-マルチチャネル音声アクティビティ検出 図1
  • 特許-マルチチャネル音声アクティビティ検出 図2
  • 特許-マルチチャネル音声アクティビティ検出 図3A
  • 特許-マルチチャネル音声アクティビティ検出 図3B
  • 特許-マルチチャネル音声アクティビティ検出 図4A
  • 特許-マルチチャネル音声アクティビティ検出 図4B
  • 特許-マルチチャネル音声アクティビティ検出 図5
  • 特許-マルチチャネル音声アクティビティ検出 図6
  • 特許-マルチチャネル音声アクティビティ検出 図7
  • 特許-マルチチャネル音声アクティビティ検出 図8
  • 特許-マルチチャネル音声アクティビティ検出 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-03
(45)【発行日】2024-09-11
(54)【発明の名称】マルチチャネル音声アクティビティ検出
(51)【国際特許分類】
   G10L 15/22 20060101AFI20240904BHJP
   G10L 15/28 20130101ALI20240904BHJP
   G10L 15/04 20130101ALI20240904BHJP
【FI】
G10L15/22 300Z
G10L15/28 400
G10L15/04 300Z
【請求項の数】 26
(21)【出願番号】P 2023524808
(86)(22)【出願日】2021-10-21
(65)【公表番号】
(43)【公表日】2023-11-07
(86)【国際出願番号】 US2021056031
(87)【国際公開番号】W WO2022087251
(87)【国際公開日】2022-04-28
【審査請求日】2023-06-09
(31)【優先権主張番号】17/077,679
(32)【優先日】2020-10-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ノーラン・アンドリュー・ミラー
(72)【発明者】
【氏名】ラミン・メヘラーン
【審査官】山下 剛史
(56)【参考文献】
【文献】特開2020-34597(JP,A)
【文献】特表2015-526767(JP,A)
【文献】特開2018-165759(JP,A)
【文献】特開2011-215842(JP,A)
【文献】特表2013-543987(JP,A)
【文献】米国特許出願公開第2020/0279561(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-99/00
(57)【特許請求の範囲】
【請求項1】
ユーザデバイス(102)のデータ処理ハードウェア(103)において、前記データ処理ハードウェア(103)と通信するマイクロホン(106)のアレイによって取得されたストリーミングマルチチャネルオーディオ(118)を特徴付ける入力フレーム(164)のシーケンスを受け取るステップであって、
前記ストリーミングマルチチャネルオーディオ(118)の各チャネル(119)が、マイクロホン(106)の前記アレイ内の別々の専用マイクロホン(106)によって取得されたそれぞれのオーディオ特徴(162)を含む、ステップと、
前記データ処理ハードウェア(103)によって、位置指紋モデル(120)を使用して、前記マルチチャネルオーディオ(118)の各チャネル(119)の前記それぞれのオーディオ特徴(162)に基づいて、前記ユーザデバイス(102)に対する前記マルチチャネルオーディオ(118)の音源の位置を示す位置指紋(124)を決定するステップと、
前記データ処理ハードウェア(103)によって、前記位置指紋(124)を入力として受け取るように構成されたアプリケーション固有の分類器(130)からの出力として、特定のアプリケーション(150)が処理するように構成されている特定のオーディオタイプに前記マルチチャネルオーディオ(118)が対応する可能性を示す第1のスコア(134)を生成するステップと、
前記データ処理ハードウェア(103)によって、前記アプリケーション固有の分類器(130)からの出力として生成された前記第1のスコア(134)に基づいて、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定するステップと
を含む、方法(800)。
【請求項2】
前記データ処理ハードウェア(103)によって、音声アクティビティ検出器(VAD)モデル(230)を使用して、前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する可能性を示す第2のスコア(136)を生成するステップ
をさらに含み、
前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定するステップが、前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する前記可能性を示す前記第2のスコア(136)にさらに基づく、請求項1に記載の方法(800)。
【請求項3】
前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定するステップが、
前記第1のスコア(134)と前記第2のスコア(136)を合算して、合算スコアにするステップと、
前記合算スコアが受入れしきい値を満足させるかどうかを判定するステップと、
前記合算スコアが前記受入れしきい値を満足させるとき、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるステップ、または
前記合算スコアが前記受入れしきい値を満足させないとき、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を拒否するステップ
のうちの一方と
を含む、請求項2に記載の方法(800)。
【請求項4】
前記データ処理ハードウェア(103)によって、前記位置指紋(124)および1つまたは複数の以前の位置指紋(124)に基づいて、集約された指紋を生成するステップと、
前記データ処理ハードウェア(103)によって、前記集約された指紋を入力として受け取るように構成されたビームフォーマ(222)を使用して、前記マルチチャネルオーディオ(118)からオーディオデータの単一チャネル(119)を抽出するステップであって、オーディオデータの前記抽出された単一チャネル(119)が、前記位置指紋(124)によって示された前記音源の前記位置に対応するそれぞれのオーディオ特徴(162)のみを含む、ステップと
をさらに含み、
前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する前記可能性を示す前記第2のスコア(136)を生成するステップが、前記VADモデル(230)への入力として受け取られたオーディオデータの前記抽出された単一チャネル(119)に基づいて、前記VADモデル(230)からの出力としての前記第2のスコア(136)を生成するステップを含む、請求項2または3に記載の方法(800)。
【請求項5】
前記データ処理ハードウェア(103)によって、前記ビームフォーマ(222)の信頼度レベルに基づいて、前記第2のスコア(136)を調整するステップをさらに含む、請求項4に記載の方法(800)。
【請求項6】
前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプが、単一音源位置を有するオーディオ(320)または複数音源位置を有するオーディオ(310)のうちの一方を含む、請求項1から5のいずれか一項に記載の方法(800)。
【請求項7】
前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプが、移動音源位置を有するオーディオ(420)または静止音源位置を有するオーディオ(410)のうちの一方を含む、請求項1から6のいずれか一項に記載の方法(800)。
【請求項8】
前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプが、近距離音源オーディオまたは遠距離音源オーディオのうちの一方を含む、請求項1から7のいずれか一項に記載の方法(800)。
【請求項9】
前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプが、点音源オーディオまたはスピーカシステムオーディオのうちの一方を含む、請求項1から8のいずれか一項に記載の方法(800)。
【請求項10】
前記ユーザデバイス(102)に対する前記マルチチャネルオーディオ(118)の前記音源の前記位置を示す前記位置指紋(124)を決定するステップが、前記マルチチャネルオーディオ(118)の各チャネル(119)を到達時間差および利得モデルを使用して処理するステップを含む、請求項1から9のいずれか一項に記載の方法(800)。
【請求項11】
前記ユーザデバイス(102)に対する前記マルチチャネルオーディオ(118)の前記音源の前記位置を示す前記位置指紋(124)を決定するステップが、前記マルチチャネルオーディオ(118)の各チャネル(119)を空間的確率モデルを使用して処理するステップを含む、請求項1から10のいずれか一項に記載の方法(800)。
【請求項12】
前記データ処理ハードウェア(103)によって、前記アプリケーション固有の分類器(130)からの出力として、前記位置指紋(124)に基づいて、前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプとは異なるオーディオタイプに前記マルチチャネルオーディオ(118)が対応する可能性を示す第2のスコア(136)を生成するステップと、
前記データ処理ハードウェア(103)によって、同じ位置指紋(124)を有する後続のストリーミングマルチチャネルオーディオ(118)を無視するステップと
をさらに含む、請求項1から11のいずれか一項に記載の方法(800)。
【請求項13】
前記アプリケーション固有の分類器(130)が、
前記特定のアプリケーション(150)が処理するように構成されている前記特定のオーディオタイプに対応するマルチチャネルオーディオ(118)を含む、正トレーニングサンプル(712a)、および
前記特定のアプリケーション(150)が処理するように構成されていない1つまたは複数の他のオーディオタイプに対応するマルチチャネルオーディオ(118)を含む、負トレーニングサンプル(712b)
に対してトレーニングされる、請求項1から12のいずれか一項に記載の方法(800)。
【請求項14】
ユーザデバイス(102)のデータ処理ハードウェア(103)と、
前記データ処理ハードウェア(103)と通信するメモリハードウェア(105)であって、命令を記憶し、前記命令が、前記データ処理ハードウェア(103)上で実行されると、前記データ処理ハードウェア(103)に動作を実施させ、前記動作が、
前記データ処理ハードウェア(103)と通信するマイクロホン(106)のアレイによって取得されたストリーミングマルチチャネルオーディオ(118)を特徴付ける入力フレーム(164)のシーケンスを受け取ることであって、前記ストリーミングマルチチャネルオーディオ(118)の各チャネル(119)が、マイクロホン(106)の前記アレイ内の別々の専用マイクロホン(106)によって取得されたそれぞれのオーディオ特徴(162)を含む、受け取ること、
位置指紋モデル(120)を使用して、前記マルチチャネルオーディオ(118)の各チャネル(119)の前記それぞれのオーディオ特徴(162)に基づいて、前記ユーザデバイス(102)に対する前記マルチチャネルオーディオ(118)の音源の位置を示す位置指紋(124)を決定すること、
前記位置指紋(124)を入力として受け取るように構成されたアプリケーション固有の分類器(130)からの出力として、特定のアプリケーション(150)が処理するように構成されている特定のオーディオタイプに前記マルチチャネルオーディオ(118)が対応する可能性を示す第1のスコア(134)を生成すること、および
前記アプリケーション固有の分類器(130)からの出力として生成された前記第1のスコア(134)に基づいて、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定すること
を含む、メモリハードウェア(105)と
を備える、システム(100)。
【請求項15】
前記動作が、
音声アクティビティ検出器(VAD)モデル(230)を使用して、前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する可能性を示す第2のスコア(136)を生成すること
をさらに含み、
前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定することが、前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する前記可能性を示す前記第2のスコア(136)にさらに基づく、請求項14に記載のシステム(100)。
【請求項16】
前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れるべきか、拒否すべきかを判定することが、
前記第1のスコア(134)と前記第2のスコア(136)を合算して、合算スコアにすることと、
前記合算スコアが受入れしきい値を満足させるかどうかを判定することと、
前記合算スコアが前記受入れしきい値を満足させるとき、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を受け入れること、または
前記合算スコアが前記受入れしきい値を満足させないとき、前記特定のアプリケーション(150)によって処理するための前記マルチチャネルオーディオ(118)を拒否すること
のうちの一方と
を含む、請求項15に記載のシステム(100)。
【請求項17】
前記動作が、
前記位置指紋(124)および1つまたは複数の以前の位置指紋(124)に基づいて、集約された指紋を生成することと、
前記集約された指紋を入力として受け取るように構成されたビームフォーマ(222)を使用して、前記マルチチャネルオーディオ(118)からオーディオデータの単一チャネル(119)を抽出することであって、オーディオデータの前記抽出された単一チャネル(119)が、前記位置指紋(124)によって示された前記音源の前記位置に対応するそれぞれのオーディオ特徴(162)のみを含む、抽出することと
をさらに含み、
前記マルチチャネルオーディオ(118)が人間由来のスピーチに対応する前記可能性を示す前記第2のスコア(136)を生成することが、前記VADモデル(230)への入力として受け取られたオーディオデータの前記抽出された単一チャネル(119)に基づいて、前記VADモデル(230)からの出力としての前記第2のスコア(136)を生成することを含む、請求項15または16に記載のシステム(100)。
【請求項18】
前記動作が、前記ビームフォーマ(222)の信頼度レベルに基づいて、前記第2のスコア(136)を調整することをさらに含む、請求項17に記載のシステム(100)。
【請求項19】
前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプが、単一音源位置を有するオーディオ(320)または複数音源位置を有するオーディオ(310)のうちの一方を含む、請求項14から18のいずれか一項に記載のシステム(100)。
【請求項20】
前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプが、移動音源位置を有するオーディオ(420)または静止音源位置を有するオーディオ(410)のうちの一方を含む、請求項14から19のいずれか一項に記載のシステム(100)。
【請求項21】
前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプが、近距離音源オーディオまたは遠距離音源オーディオのうちの一方を含む、請求項14から20のいずれか一項に記載のシステム(100)。
【請求項22】
前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプが、点音源オーディオまたはスピーカシステムオーディオのうちの一方を含む、請求項14から21のいずれか一項に記載のシステム(100)。
【請求項23】
前記ユーザデバイス(102)に対する前記マルチチャネルオーディオの前記音源の前記位置を示す前記位置指紋(124)を決定することが、前記マルチチャネルオーディオの各チャネルを到達時間差および利得モデルを使用して処理することを含む、請求項14から22のいずれか一項に記載のシステム(100)。
【請求項24】
前記ユーザデバイス(102)に対する前記マルチチャネルオーディオの前記音源の前記位置を示す前記位置指紋(124)を決定することが、前記マルチチャネルオーディオの各チャネルを空間的確率モデルを使用して処理することを含む、請求項14から23のいずれか一項に記載のシステム(100)。
【請求項25】
前記動作が、
前記アプリケーション固有の分類器からの出力として、前記位置指紋(124)に基づいて、前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプとは異なるオーディオタイプに前記マルチチャネルオーディオが対応する可能性を示す第2のスコア(136)を生成することと、
同じ位置指紋(124)を有する後続のストリーミングマルチチャネルオーディオを無視することと
をさらに含む、請求項14から24のいずれか一項に記載のシステム(100)。
【請求項26】
前記アプリケーション固有の分類器が、
前記特定のアプリケーションが処理するように構成されている前記特定のオーディオタイプに対応するマルチチャネルオーディオを含む、正トレーニングサンプル(712a)、および
前記特定のアプリケーションが処理するように構成されていない1つまたは複数の他のオーディオタイプに対応するマルチチャネルオーディオを含む、負トレーニングサンプル(712b)
に対してトレーニングされる、請求項14から25のいずれか一項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、マルチチャネル音声アクティビティ検出(multi-channel voice activity detection)に関する。
【背景技術】
【0002】
スピーチ対応デバイス(speech-enabled device)は、過去数年にわたって人気が高まっている。スピーチ対応デバイスにとっての1つの課題は、周囲環境からの背景雑音とデバイスに向けられたスピーチとを識別することのできる能力である。この能力があると、受信したオーディオ入力によりデバイスが、オーディオをさらに処理するように(例えばコマンドまたはクエリを処理するように)求められているか、単に、受信したオーディオを無視するように求められているかを、デバイスが判定することが可能になる。デバイスが背景雑音とデバイスに向けられたスピーチとを識別することのできる能力は、オーディオのさまざまな音源が背景雑音の一因となっている環境の影響をデバイスが受けるとき、困難となる。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の一態様は、マルチチャネル音声アクティビティ検出のための方法を提供する。方法は、ユーザデバイスのデータ処理ハードウェアにおいて、データ処理ハードウェアと通信するマイクロホンのアレイによって取得されたストリーミングマルチチャネルオーディオを特徴付ける入力フレームのシーケンスを受け取ることを含む。ストリーミングマルチチャネルオーディオの各チャネルが、マイクロホンのアレイ内の別々の専用マイクロホンによって取得されたそれぞれのオーディオ特徴を含むことができる。方法は、データ処理ハードウェアによって、位置指紋モデルを使用して、マルチチャネルオーディオの各チャネルのそれぞれのオーディオ特徴に基づいて、ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することも含む。方法は、データ処理ハードウェアによって、位置指紋を入力として受け取るように構成されたアプリケーション固有の分類器からの出力として、特定のアプリケーションが処理するように構成されている特定のオーディオタイプにマルチチャネルオーディオが対応する可能性を示す第1のスコアを生成することも含む。方法は、データ処理ハードウェアによって、アプリケーション固有の分類器からの出力として生成された第1のスコアに基づいて、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することも含む。
【0004】
本開示の実装形態は、次の選択的な特徴のうちの1つまたは複数を含むことができる。いくつかの実装形態では、方法は、データ処理ハードウェアによって、音声アクティビティ検出器(VAD)モデルを使用して、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することをさらに含む。この実装形態では、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することが、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアにさらに基づく。
【0005】
いくつかの例では、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することは、第1のスコアと第2のスコアを合算して、合算スコアにすることと、合算スコアが受入れしきい値を満足させるかどうかを判定することとを含む。この例では、方法は、合算スコアが受入れしきい値を満足させるとき、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れること、または合算スコアが受入れしきい値を満足させないとき、特定のアプリケーションによって処理するためのマルチチャネルオーディオを拒否することのうちの一方も含む。
【0006】
任意選択で、方法は、データ処理ハードウェアによって、上記位置指紋および1つまたは複数の以前の位置指紋に基づいて、集約された指紋を生成することをさらに含む。方法は、データ処理ハードウェアによって、集約された指紋を入力として受け取るように構成されたビームフォーマを使用して、マルチチャネルオーディオからオーディオデータの単一チャネルを抽出することも含むことができる。オーディオデータの抽出された単一チャネルは、上記位置指紋によって示された音源の位置に対応するそれぞれのオーディオ特徴のみを含む。ここで、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することは、VADモデルへの入力として受け取られたオーディオデータの抽出された単一チャネルに基づいて、VADモデルからの出力としての第2のスコアを生成することを含むことができる。
【0007】
方法は、データ処理ハードウェアによって、ビームフォーマの信頼度レベルに基づいて、第2のスコアを調整することを含むことができる。いくつかの実装形態では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、単一音源位置を有するオーディオ(audio with a single source location)または複数音源位置を有するオーディオ(audio with a multiple source location)のうちの一方を含むことができる。いくつかの例では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、移動音源位置を有するオーディオ(audio with a moving source location)または静止音源位置を有するオーディオ(audio with a static source location)のうちの一方を含むことができる。任意選択で、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、近距離音源オーディオ(near source audio)または遠距離音源オーディオ(far source audio)のうちの一方を含むことができる。特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、点音源オーディオ(point source audio)またはスピーカシステムオーディオのうちの一方を含むことができる。
【0008】
いくつかの実装形態では、ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することは、マルチチャネルオーディオの各チャネルを到達時間差および利得モデル(time difference of arrival and gain model)を使用して処理することを含む。ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することは、マルチチャネルオーディオの各チャネルを空間的確率モデル(spatial probability model)を使用して処理することを含むことができる。
【0009】
いくつかの例では、方法は、データ処理ハードウェアによって、アプリケーション固有の分類器からの出力として、位置指紋に基づいて、特定のアプリケーションが処理するように構成されている特定のオーディオタイプとは異なるオーディオタイプにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することと、データ処理ハードウェアによって、同じ位置指紋を有する後続のストリーミングマルチチャネルオーディオを無視することとをさらに含む。任意選択で、アプリケーション固有の分類器は、特定のアプリケーションが処理するように構成されている特定のオーディオタイプに対応するマルチチャネルオーディオを含む、正トレーニングサンプル、および特定のアプリケーションが処理するように構成されていない1つまたは複数の他のオーディオタイプに対応するマルチチャネルオーディオを含む、負トレーニングサンプルに対してトレーニングされる。
【0010】
本開示の別の態様は、マルチチャネル音声アクティビティ検出のためのシステムを提供する。システムは、ユーザデバイスのデータ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは命令を記憶し、この命令は、データ処理ハードウェア上で実行されると、データ処理ハードウェアに動作を実施させる。動作は、データ処理ハードウェアと通信するマイクロホンのアレイによって取得されたストリーミングマルチチャネルオーディオを特徴付ける入力フレームのシーケンスを受け取ることを含む。ストリーミングマルチチャネルオーディオの各チャネルが、マイクロホンのアレイ内の別々の専用マイクロホンによって取得されたそれぞれのオーディオ特徴を含むことができる。動作は、位置指紋モデルを使用して、マルチチャネルオーディオの各チャネルのそれぞれのオーディオ特徴に基づいて、ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することも含む。動作は、位置指紋を入力として受け取るように構成されたアプリケーション固有の分類器からの出力として、特定のアプリケーションが処理するように構成されている特定のオーディオタイプにマルチチャネルオーディオが対応する可能性を示す第1のスコアを生成することも含む。動作は、アプリケーション固有の分類器からの出力として生成された第1のスコアに基づいて、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することも含む。
【0011】
この態様は、次の選択的な特徴のうちの1つまたは複数を含むことができる。いくつかの実装形態では、動作は、音声アクティビティ検出器(VAD)モデルを使用して、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することをさらに含む。この実装形態では、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することが、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアにさらに基づく。
【0012】
いくつかの例では、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れるべきか、拒否すべきかを判定することが、第1のスコアと第2のスコアを合算して、合算スコアにすることと、合算スコアが受入れしきい値を満足させるかどうかを判定することとを含む。この例では、動作は、合算スコアが受入れしきい値を満足させるとき、特定のアプリケーションによって処理するためのマルチチャネルオーディオを受け入れること、または合算スコアが受入れしきい値を満足させないとき、特定のアプリケーションによって処理するためのマルチチャネルオーディオを拒否することのうちの一方も含む。
【0013】
任意選択で、動作は、上記位置指紋および1つまたは複数の以前の位置指紋に基づいて、集約された指紋を生成することと、集約された指紋を入力として受け取るように構成されたビームフォーマを使用して、マルチチャネルオーディオからオーディオデータの単一チャネルを抽出することとをさらに含む。オーディオデータの抽出された単一チャネルは、上記位置指紋によって示された音源の位置に対応するそれぞれのオーディオ特徴のみを含む。ここで、人間由来のスピーチにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することは、VADモデルへの入力として受け取られたオーディオデータの抽出された単一チャネルに基づいて、VADモデルからの出力としての第2のスコアを生成することを含むことができる。
【0014】
動作は、ビームフォーマの信頼度レベルに基づいて、第2のスコアを調整することを含むことができる。いくつかの実装形態では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、単一音源位置を有するオーディオまたは複数音源位置を有するオーディオのうちの一方を含むことができる。いくつかの例では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、移動音源位置を有するオーディオまたは静止音源位置を有するオーディオのうちの一方を含むことができる。任意選択で、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、近距離音源オーディオまたは遠距離音源オーディオのうちの一方を含むことができる。特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、点音源オーディオまたはスピーカシステムオーディオのうちの一方を含むことができる。
【0015】
いくつかの実装形態では、ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することは、マルチチャネルオーディオの各チャネルを到達時間差および利得モデルを使用して処理することを含む。ユーザデバイスに対するマルチチャネルオーディオの音源の位置を示す位置指紋を決定することは、マルチチャネルオーディオの各チャネルを空間的確率モデルを使用して処理することを含むことができる。
【0016】
いくつかの例では、動作は、アプリケーション固有の分類器からの出力として、位置指紋に基づいて、特定のアプリケーションが処理するように構成されている特定のオーディオタイプとは異なるオーディオタイプにマルチチャネルオーディオが対応する可能性を示す第2のスコアを生成することと、同じ位置指紋を有する後続のストリーミングマルチチャネルオーディオを無視することとをさらに含む。任意選択で、アプリケーション固有の分類器は、特定のアプリケーションが処理するように構成されている特定のオーディオタイプに対応するマルチチャネルオーディオを含む、正トレーニングサンプル、および特定のアプリケーションが処理するように構成されていない1つまたは複数の他のオーディオタイプに対応するマルチチャネルオーディオを含む、負トレーニングサンプルに対してトレーニングされる。
【0017】
本開示の1つまたは複数の実装形態の詳細については、添付の図面および下の説明において記載される。他の態様、特徴、および利点が、説明および図面から、また特許請求の範囲から明らかとなろう。
【図面の簡単な説明】
【0018】
図1】マルチチャネル音声アクティビティ検出器の例示的なシステムの概略図である。
図2図1のマルチチャネル音声アクティビティ検出器の例示的なコンポーネントの概略図である。
図3A】例示的な複数音源オーディオ信号の概略図である。
図3B】例示的な単一音源オーディオ信号の概略図である。
図4A】例示的な静止音源オーディオ信号の概略図である。
図4B】例示的な移動音源オーディオ信号の概略図である。
図5】ユーザデバイスのニアフィールド領域(near field region)およびファーフィールド領域(far field region)の一例の概略図である。
図6】位置指紋の方向ベクトルの概略図である。
図7】マルチチャネル音声アクティビティ検出器の位置分類器モデルのトレーニングの概略図である。
図8】マルチチャネル音声アクティビティ検出の方法の、例示的な配列の動作のフローチャートである。
図9】本明細書において説明するシステムおよび方法を実装するために使用することのできる例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0019】
さまざまな図面中の同様の参照符号は、同様の要素を示す。
【0020】
スピーチ対応デバイスおよび/または音声対応デバイスは、周囲環境からのオーディオの影響を受ける。しばしば、これらのデバイスは、デバイスに向けられたのではない(例えば周囲の会話、テレビなどからの)背景雑音を含むオーディオ入力を受信する。一般には、スピーチ対応デバイスが、そのデバイスに向けられたのではないオーディオを無視する(例えばそのオーディオに応答しないかまたはそのオーディオをさらに処理しない)ことが望ましい。例えば、テレビからのオーディオ入力を受信するスピーチ対応デバイスは、一般に、受信したオーディオを無視することが期待される。しかし、ユーザがスピーチ対応デバイスに直接話しかけるとき(例えばコマンドまたはクエリ)、デバイスはユーザに応答しなければならない。著しい背景雑音のある環境では、スピーチ対応デバイスに向けられたオーディオを分離することは困難となる。
【0021】
本明細書の実装形態は、スピーチ対応デバイスに向けられた人間のスピーチをストリーミングオーディオ入力が含むときを判定するマルチチャネル音声アクティビティ検出器(VAD)を含んだシステムを対象とする。システムは、オーディオ音源(audio source)から受け取ったストリーミングマルチチャネルオーディオに基づいて位置指紋を決定し、位置指紋がスピーチ対応デバイスのアプリケーションに対応するオーディオのタイプと適合するかどうかを判定する。任意選択で、ビームフォーマが、マルチチャネルストリーミングオーディオからオーディオチャネルを抽出し、抽出したオーディオチャネルを、抽出したオーディオチャネルが人間のスピーチと整合するかどうかを判定するためにVADに渡す。システムは、位置指紋およびVADの判定に基づいて、特定のアプリケーション(例えばホットワード検出、自動スピーチ認識(ASR)など)によって処理するためのマルチチャネルストリーミングオーディオを受け入れるかまたは拒否する。
【0022】
次に図1を参照すると、いくつかの実装形態では、例示的なシステム100が、それぞれがそれぞれのユーザ10に関連し、ネットワーク104を介してリモートシステム110と通信する、1つまたは複数のユーザデバイス102を含む。各ユーザデバイス102は、モバイル電話、コンピュータ、ウェアラブルデバイス、スマートアプライアンス、オーディオインフォテインメントシステム、スマートスピーカなどのコンピューティングデバイスに対応してよく、また各ユーザデバイス102には、データ処理ハードウェア103およびメモリハードウェア105が装備されている。リモートシステム110は、単一のコンピュータとすることもでき、複数のコンピュータとすることもでき、あるいはスケーラブルな/エラスティックなコンピューティングリソース112(例えばデータ処理ハードウェア)および/またはストレージリソース114(例えばメモリハードウェア)を有する分散システム(例えばクラウド環境)とすることもできる。ユーザデバイス102は、リモートシステム110と通信するマイクロホン106、106a~nのアレイによって取得されたストリーミングマルチチャネルオーディオ118を特徴付ける入力フレーム164、164a~nのシーケンスを取得する。
【0023】
ストリーミングマルチチャネルオーディオ118の各チャネル119、119a~nが、マイクロホン106、106a~nのアレイ内の別々の専用マイクロホン106によって取得されたそれぞれのオーディオ特徴162を含む。ユーザデバイス102は、ユーザ10からの発話116を取得するための2つ以上のマイクロホン106を含む(か、またはそれと通信する)。各マイクロホン106は発話116を、マルチチャネルストリーミングオーディオ118の別々の専用チャネル119上に別々に録音することができる。例えば、ユーザデバイス102は2つのマイクロホン106を含み、それらがそれぞれ発話116を録音し、2つのマイクロホン106からの録音は、組み合わせて2チャネルストリーミングオーディオ118(すなわち立体音響オーディオまたはステレオ)にすることができる。それに加えてまたはその代わりに、ユーザデバイス102は、ユーザデバイス102から分離した/リモートにある1つまたは複数のマイクロホンと通信することができる。例えば、ユーザデバイス102は、車両内に配設された、車両の2つ以上のマイクロホンと有線で、またはワイヤレスで(例えばBluetooth)通信する、モバイルデバイスである。いくつかの構成では、ユーザデバイス102は、別個のデバイス101上に存在する少なくとも1つのマイクロホン106と通信し、別個のデバイス101は、限定はしないが、車両内オーディオシステム、コンピューティングデバイス、スピーカ、または別のユーザデバイスを含むことができる。これらの構成では、ユーザデバイス102は、別個のデバイス101上に存在する1つまたは複数のマイクロホンとも通信することができる。
【0024】
ユーザデバイス102は、位置指紋モデル120を実行する。位置指紋モデル120は、マルチチャネルストリーミングオーディオ118の各チャネル119を受け取り、マルチチャネルオーディオ118の各チャネル119のそれぞれのオーディオ特徴162に基づいて、ユーザデバイス102に対するマルチチャネルオーディオ118の1つの音源(または複数音源)の位置を示す位置指紋124を決定する。すなわち、位置指紋124は、マルチチャネルストリーミングオーディオ118から得られた位置埋め込み(location embedding)を含むことができる。いくつかの例では、位置指紋124は、ユーザデバイス102に対するマルチチャネルオーディオ118の音源の方向を表す。
【0025】
いくつかの実装形態では、位置指紋モデル120は、マルチチャネルオーディオ118の各チャネル119を到達時間差および利得モデルを使用して処理することによって、位置指紋124を決定する。すなわち、位置指紋モデル120は、マルチストリーミングオーディオ118のそれぞれのチャネル119における到達時間の差および利得を使用する。他の実装形態では、位置指紋モデル120は、マルチチャネルオーディオ118の各チャネル119を空間的確率モデル(例えばステアード応答パワー位相変換(Steered-Response Power Phase Transform)(SRP-PHAT)アルゴリズム)を使用して処理することによって、位置指紋124を決定する。
【0026】
ユーザデバイス102は、(本明細書においてはアプリケーション固有の分類器モデルとも呼ばれる)位置分類器モデル130も実行する。下でより詳細に説明するように、位置分類器モデル130は、ユーザデバイス102によって実行される特定のアプリケーションに基づいて、位置指紋124を分類する。位置分類器モデルは、特定のアプリケーションが処理するように構成されている特定のオーディオタイプにマルチチャネルオーディオ118が対応する可能性を示す第1のスコア134を生成する。すなわち、ユーザデバイス102および/またはリモートシステム110は、位置指紋モデル120がそのために構成されている特定のアプリケーション(例えばホットワード検出器、自動スピーチ認識器など)を実行する。出力スコアラ(output scorer)140が、第1のスコア134を受け取る。いくつかの実装形態では、出力スコアラ140は、位置分類器モデル130からの出力として生成された第1のスコア134に基づいて、特定のアプリケーションによって処理するためのマルチチャネルオーディオ118を受け入れるべきか、拒否すべきかを判定する。例えば、出力スコアラ140は、第1のスコア134が第1のスコアしきい値を満足させるかどうかを判定する。
【0027】
ここで、第1のスコアが第1のスコアしきい値を満足させると出力スコアラ140が判定したとき、出力スコアラ140は、マルチストリーミングオーディオ118のオーディオ特徴162を、特定のアプリケーションに基づくさらなる処理のために、リモートシステム110上で実行されているオーディオプロセッサ150に送信する。他の例では、ユーザデバイス102がオーディオプロセッサ150を実行し、出力スコアラ140がオーディオ特徴162(または他の任意の形態のストリーミングオーディオ118)をローカルのオーディオプロセッサ150(例えばホットワード検出器、自動スピーチ認識器など)に渡す。それに加えてまたはその代わりに、位置指紋モデル120および位置分類器モデル130もオーディオプロセッサ150と同様に、リモートシステム110および/またはユーザデバイス102によって実行されることが可能である。
【0028】
図示の例では、ユーザ10がホットワード(例えば「ヘイグーグル」)を含む発話116を話すとき、ユーザデバイス102が、入力フレーム164のシーケンスによって特徴付けられるストリーミングオーディオ118を取得する。位置指紋モデル120が、口頭による発話(spoken utterance)116(例えば「ヘイグーグル」)に基づいて位置指紋124を生成し、位置指紋124を位置分類器モデル130に送信する。位置分類器モデル130は、位置指紋124に基づいて、特定のアプリケーション(すなわちオーディオプロセッサ150)が処理するように構成されている特定のタイプのオーディオにチャネル119が対応する可能性を示す第1のスコア134を生成する。オーディオプロセッサ150は、特定のアプリケーションに従って、ストリーミングオーディオのチャネル119(例えばオーディオ特徴162)に対してさらなる処理を実施する。いくつかの例では、オーディオプロセッサ150は、発話116内のホットワードの存在を検出して、ホットワードおよび/または発話116内でホットワードの後に続く1つもしくは複数の他の語(例えばクエリもしくはコマンド)を処理するための、ユーザデバイス102上でのウェークアッププロセスを開始するように構成されている。
【0029】
次に図2を参照すると、いくつかの実装形態では、ユーザデバイス102がビームフォーマ222を実行する。ビームフォーマ222は、ストリーミングオーディオの各チャネル119を受け取り、マルチチャネルストリーミングオーディオ118から単一チャネル119Bを抽出する。オーディオの抽出された単一チャネル119Bは、ストリーミングオーディオ118の音源(例えば位置指紋124によって示された音源)の位置に対応するそれぞれのオーディオ特徴162のみを含むことができる。すなわち、いくつかの例では、ビームフォーマ222は、マイクロホン106のアレイ内のマイクロホン106によって取得されたマルチチャネルオーディオ118から、オーディオデータの単一チャネル119Bを抽出する。ビームフォーマ222は、位置指紋124を使用して、マルチチャネルオーディオ118に対してビームフォーミング(すなわち指向性信号受信のための空間フィルタリング)を実施し、位置指紋124によって示された位置と整合するオーディオを抽出することができる。すなわち、ビームフォーマ222は、位置指紋124によって示された方向において受信したオーディオを強調し、他の方向から受信したオーディオを強調しない(すなわちマルチストリーミングオーディオ118と同じ方向から生じたのではない背景雑音を低減させる)ことができる。いくつかの実装形態では、ビームフォーマ222は、確実にオーディオの抽出されたチャネル119Bが時間的に安定しているようにするために、ステートフルである。
【0030】
任意選択で、ビームフォーマ222は、位置指紋124の代わりにまたは位置指紋124に加えて、集約された指紋を受け取ることができる。例えば、集約器モデル(またはその代わりにビームフォーマ222自体)が、位置指紋モデル120によって以前に生成された位置指紋124のシーケンスを処理することを含む、位置指紋124のステートフルな処理を実施する。集約器モデル(またはビームフォーマ222)は、以前に生成された任意数の位置指紋124を維持するためのストレージを含むことができる。
【0031】
いくつかの例では、ユーザデバイス102は、ビームフォーマ222の代わりにダウンマクサ(down muxer)224(すなわちマルチプレクサ)を実行する。ダウンマクサ224は、位置指紋124によって示されたオーディオ音源と最も整合する、マルチチャネルストリーミングオーディオ118のチャネル119Sを選択することができる。ダウンマクサ224は、ビームフォーマ222の複雑さおよび/または計算能力が特定のアプリケーションには不要であるが、それでもなお音声アクティビティ検出にオーディオの単一チャネル119Sが必要である場合に、有益となることがある。ビームフォーマ222(またはダウンマクサ224)は、オーディオの単一チャネル119B、119Sを、音声アクティビティ検出器(VAD)モデル230に送信する。ビームフォーマ222/ダウンマクサ224は、VADモデル230が処理するための、オーディオの高品質単一チャネル119S、119Bを提供する。VADモデル230は、オーディオの単一チャネル119B、119Sに基づいて、人間のスピーチにオーディオの単一チャネル119B、119Sが対応する(すなわちオーディオが人間の話し声(speaking)を収容している)可能性を示す第2のスコア234を生成する。VADモデル230は、音声アクティビティ検出にどんな従来技法を使用することもできる。いくつかの例では、VADモデル230は、深層ニューラルネットワーク(DNN)や畳み込みニューラルネットワーク(CNN)などのニューラルネットワークを含む。
【0032】
引き続き図2を参照すると、出力スコアラ140が、位置分類器モデル130からの第1のスコア134とVADモデル230からの第2のスコア234の両方を受け取る。出力スコアラ140は、(オーディオプロセッサ150の特定のオーディオタイプにマルチチャネルオーディオ118が対応する可能性を示す)第1のスコア134、および(人間由来のスピーチにマルチチャネルオーディオ118が対応する可能性を示す)第2のスコア234に基づいて、特定のアプリケーション(すなわちオーディオプロセッサ150)によって処理するためのマルチチャネルオーディオ118を受け入れるべきか、拒否すべきかを判定する。
【0033】
いくつかの実装形態では、オーディオプロセッサ150は、特定のアプリケーションによって処理するためのマルチチャネルオーディオ118を受け入れるべきか、拒否すべきかを、1つまたは複数のしきい値に基づいて判定する。例えば、出力スコアラ140は、第1のスコア134と第2のスコア234を合算し、合算スコアが受入れしきい値を満足させるかどうかを判定する。このシナリオでは、出力スコアラ140は、(例えば位置指紋124および/またはビームフォーマ222の信頼度レベル、信頼度乗算(confidence multiplication)などに基づいて)第1のスコア134および/または第2のスコア234に加重することができる。合算スコアが受入れしきい値を満足させるとき、出力スコアラ140は、特定のアプリケーション(すなわちオーディオプロセッサ150)によってさらに処理するためのマルチチャネルオーディオ118を受け入れることができる。合算スコアが受入れしきい値を満足させないとき、出力スコアラ140は、特定のアプリケーション(すなわちオーディオプロセッサ150)によって処理するためのマルチチャネルオーディオ118を拒否することができる。ユーザデバイス102が受入れしきい値を、ユーザ10からの入力、ユーザデバイス102の環境、および/またはリモートシステム110から受信した命令に基づいて、チューニングまたは調整することができる。
【0034】
その代わりに、出力スコアラ140は、第1のスコア134が第1のスコアしきい値を満足させるかどうかを判定し、かつ第2のスコア234が第2のスコアしきい値を満足させるかどうかを判定することもできる(すなわち論理積)。ユーザデバイス102が各しきい値を、ユーザ10からの入力、ユーザデバイス102の環境、および/またはリモートシステム110から受信した命令に基づいて、チューニングまたは調整することができる。第1のスコア134が第1のスコアしきい値を満足させ、かつ第2のスコア234が第2のスコアしきい値を満足させるとき、出力スコアラ140は、特定のアプリケーションによって処理するためのマルチチャネルオーディオ118を受け入れ、オーディオ特徴162(またはマルチストリーミングオーディオ118の他の態様)を、(ユーザデバイス102またはリモートシステム110において実行されている)オーディオプロセッサ150に送出する。第1のスコア134が第1のスコアしきい値を満足させず、かつ/または第2のスコア234が第2のスコアしきい値を満足させないとき、出力スコアラ140は、特定のアプリケーションによって処理するためのマルチチャネルオーディオ118を拒否する。
【0035】
次に図3Aおよび図3Bを参照すると、いくつかの実装形態では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプが、マルチチャネルストリーミングオーディオ118の音源の属性に基づく。例えば、特定のアプリケーションが処理するように構成されている特定のオーディオタイプは、単一音源位置を有するオーディオ320または複数音源位置を有するオーディオ310のうちの一方を含む。図3Aでは、テレビ312が2つ以上のスピーカ314を含む。各スピーカがオーディオ316を放出して、複数音源ストリーミングオーディオ118を形成する。この例では、位置指紋モデル120は、テレビ312からのマルチチャネルオーディオ118が複数音源を有すると判定する。図3Bでは、ユーザ10が発話116を行って、単一音源オーディオ信号320を有するストリーミングオーディオ118を形成する。図3Aの例とは対照的に、位置指紋モデル120は、図3Bのユーザ10からの発話116が単一音源オーディオ信号320であると判定することができる。したがって、位置分類器モデル130は(位置指紋124に基づいて)ストリーミングオーディオ118が単一音源320から生じたか、複数音源310から生じたかを判定することができる。いくつかの特定のアプリケーションでは、出力スコアラ140が、単一音源から生じたストリーミングオーディオ118または複数音源310から生じたストリーミングオーディオ118を拒否する。例えば、特定のアプリケーションが、ユーザからのスピーチ内のホットワードの存在を検出するように構成されたホットワード検出器であるとき、(例えばテレビ312からの)複数音源を有するストリーミングオーディオ118は、オーディオプロセッサ150が処理するように構成されているオーディオ(すなわちこの場合はユーザからのホットワード)である可能性が低い。
【0036】
いくつかの実装形態では、位置分類器モデル130は、位置指紋124に基づいて、特定のアプリケーションが処理するように構成されている特定のオーディオタイプとは異なるオーディオタイプにマルチチャネルオーディオ118が対応する可能性を示すための第2のスコア234を生成する。例えば、位置分類器モデル130は、特定のアプリケーションが単一音源オーディオ320を処理するように構成されているときに複数音源オーディオ310にマルチチャネルオーディオ118が対応する可能性を示す第2のスコア234を生成する。このシナリオでは、ユーザデバイス102および/またはリモートシステム110は、同じ位置指紋124を有する後続のストリーミングマルチチャネルオーディオ118を無視することができる。すなわち、先の例を続けると、位置分類器モデル130が、ストリーミングオーディオ118が複数音源オーディオ310(例えばテレビ312)からのものであることを示す第2のスコア136を生成したとき、出力スコアラ140は、ストリーミングオーディオ118を拒否するが、それは、オーディオプロセッサ150が単一音源オーディオ320を処理するように構成されているためである。出力スコアラ140は、同じ位置指紋124を有する後続のマルチチャネルオーディオ118を無視することができるが、それは、そのストリーミングオーディオ118が、以前に拒否された同じ音源(すなわちテレビ312)から到来する可能性があるためである。いくつかの例では、アプリケーションが処理するように構成されている特定のオーディオタイプは、点音源オーディオまたはスピーカシステムオーディオのうちの一方を含む。
【0037】
次に図4A図4Bを参照すると、いくつかの実装形態では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプが、移動音源位置を有するオーディオ420または静止音源位置を有するオーディオ410のうちの一方を含む。図4Aでは、ラジオ412がストリーミングオーディオ118をユーザデバイス102に送信する。ラジオ412は、この例では、定位置に固定されており、ストリーミングオーディオ118の静止(すなわち非移動)音源となっている。対照的に、図4Bは、ユーザデバイス102によって受信されるストリーミングオーディオ118を発しながら移動しているユーザ10を示す。ここで、ストリーミングオーディオ118は移動音源位置を有する。いくつかの実装形態では、位置分類器モデル130は、位置指紋124に基づいて、ストリーミングオーディオ118を静止音源または移動音源と分類する。出力スコアラ140は、ストリーミングオーディオ118の音源が移動しているか、静止しているかに少なくとも一部基づいて、ストリーミングオーディオを受け入れるかまたは拒否することができる。例えば、ユーザデバイス102がセル式電話であるとき、典型的には、ユーザはユーザデバイス102に、ユーザデバイス102に対して静止した位置から問合せする。例えば、ユーザ10は、ユーザデバイス102をユーザ10の正面に保持し、ユーザデバイス102にクエリをサブミットする。この例では、ユーザデバイス102は、移動音源を有するストリーミングオーディオ118を拒否する可能性がより高いが、それは、移動音源がユーザデバイス102に向けられたのではない周囲の会話である可能性がより高いためである。
【0038】
次に図5を参照すると、いくつかの実装形態では、特定のアプリケーションが処理するように構成されている特定のオーディオタイプが、近距離音源オーディオまたは遠距離音源オーディオのうちの一方を含む。例えば、位置分類器モデル130は、ユーザデバイス102がユーザデバイス102の電磁界のニアフィールド領域510内に位置するか、ユーザデバイス102の周りの電磁界のファーフィールド領域520内に位置するかに少なくとも一部基づいて、第1のスコア134を決定する。例えば、図5では、ユーザ10は、ユーザデバイス102のニアフィールド領域510内で生じるストリーミングオーディオ118をもたらしている。対照的に、テレビ312は、ユーザデバイス102のファーフィールド領域520内で生じるストリーミングオーディオ118を放出している。出力スコアラ140は、ストリーミングオーディオの音源がユーザデバイス102のニアフィールド領域510内にあるか、ユーザデバイス102のファーフィールド領域520内にあるかに少なくとも一部基づいて、(例えば第1のスコア134を介して)ストリーミングオーディオ118を受け入れるかまたは拒否することができる。例えば、ユーザデバイス102がセル式電話であるとき、ユーザ10は、典型的には、ユーザ10がユーザデバイス102のニアフィールド領域510内にいるときにスピーチ対応ユーザデバイス102と関わり合う。したがって、ユーザデバイス102は、ユーザデバイス102のファーフィールド領域520内から(すなわちセル式電話の近距離にない音源から)生じたストリーミングオーディオ118を拒否する可能性がより高い場合がある。いくつかの実装形態では、ユーザデバイス102は、ストリーミングオーディオ118をそれぞれが受信した複数のスピーチ対応ユーザデバイス102間の調停を、ニアフィールド領域510およびファーフィールド領域520に少なくとも一部基づいて実施する。例えば、2つの異なるユーザデバイス102がそれぞれ、音声クエリを受信したとき、ユーザデバイス102は、ニアフィールド領域510およびファーフィールド領域520を使用して、どちらのユーザデバイス102のほうがストリーミングオーディオ118の音源に近いかを判定し、近いほうのユーザデバイス102が音声クエリに応答することができる。
【0039】
次に図6を参照すると、いくつかの実装形態では、位置指紋モデル120が、音源ベクトル610を含む位置指紋124を生成する。音源ベクトル610は、ユーザデバイス102に対するストリーミングオーディオ118の音源の方向(例えばデカルト座標)を示す。ここで、ユーザ10は、ユーザデバイス102によって複数のマイクロホン106において受信されるストリーミングオーディオ118をもたらす。位置指紋モデル120は、オーディオデータのそれぞれのチャネル119に基づいて、ユーザデバイス102に対するユーザ10の方向を示すベクトル610を含む位置指紋124を決定する。
【0040】
図7は、システム100のユーザデバイス102内の位置分類器モデル130の例である。位置分類器モデル130は、ユーザデバイス102またはリモートシステム110の特定のアプリケーションが処理するように構成されている特定のオーディオタイプに、(ストリーミングオーディオ118に基づく)位置指紋124が対応するかどうかを判定するように構成されている。図7の例では、位置分類器モデル130は、ストリーミングオーディオ118が単一音源(すなわち点音源)を有するか、複数音源(例えばスピーカシステムオーディオ)を有するかを判定するように構成されている。
【0041】
位置分類器トレーナ710を、単一音源オーディオ320のオーディオ表現を含む位置指紋124を収容した正トレーニング例712、712bに対してトレーニングすることに加えて、複数音源オーディオ310による位置指紋124からなる負トレーニング例712、712aに対してもトレーニングし、それにより、位置分類器モデル130に、人間が発した単一音源発話320と、(例えばテレビ312によって生成された)人間が発した複数音源発話310とを識別するように教えることができる。いくつかの実装形態では、位置分類器モデル130は、負トレーニング例712aおよび正トレーニング例712bを使用してトレーニングされる。負トレーニング例712aは、位置分類器モデル130が無視すべき(例えば低い第1のスコア134をもたらすべき)オーディオのサンプルである。ここで、ユーザ10について生じた可能性の低いストリーミングオーディオ118の追加処理を妨げるために、負トレーニング例712aは、複数音源オーディオ310に対応するオーディオのサンプルである。1つまたは複数の負トレーニング例712aのオーディオは、普通なら追加処理(例えばホットワード)を開始することのできるスピーチを含むことができる。位置分類器モデル130は、複数音源オーディオ310を考慮に入れないことによって(例えば低い第1のスコア134を出力スコアラ140に提供することによって)、オーディオプロセッサ150によるストリーミングオーディオ180のさらなる処理の開始を妨げる。
【0042】
対照的に、正トレーニング例712bは、人間のスピーチの単一音源発話320のオーディオサンプルとすることができる。位置分類器モデル130は、正トレーニング例712bを受け取って、位置分類器モデル130が追加処理を開始すべきときを学習する。正トレーニング例712bは、さらなる処理を目的とした、特定のアプリケーションに対応する発話を含む(例えばホットワード、クエリ、コマンドなどを含む)ことができる。
【0043】
位置分類器モデル130は、位置指紋124の任意数の態様を検出するようにトレーニングすることができる。例えば、位置分類器モデル130は、ストリーミングオーディオ118が単一音源であるか、複数音源であるか、ストリーミングオーディオ118の音源が移動しているか、静止しているか、またストリーミングオーディオ118の音源が、ユーザデバイス102の近距離にあるか、ユーザデバイス102から遠距離にあるか、のうちの一部または全てを判定することができる。位置分類器モデル130は、ストリーミングオーディオ118の音源が、以前のストリーミングオーディオ118の音源と同じ方向または類似の方向にあるかどうかを判定することができる。いくつかの例では、位置分類器モデル130および/または位置指紋モデル120が、第1の発話と第2の発話が異なる音源から生じたと判定する。例えば、システムを開始させるためのホットワードを含む発話が、第1の位置から生じることがあり、後続のクエリが第2の位置から生じることがある。この場合、システム100は、クエリを無視するかまたはその他の方法で考慮に入れないことができ、それは、システムはホットワードが別のユーザによって「乗っ取られた」と判定することができるためである。
【0044】
位置分類器モデル130は、オーディオプロセッサ150の特定のアプリケーションに関連するストリーミングオーディオ118の音源の他の任意の態様を決定することができる。位置分類器モデル130は、ニューラルネットワークとすることができる。例えば、位置分類器モデル130は、CNNまたはDNNまたはそれらの任意の組合せである。位置分類器モデル130は、いくつかの例では、位置指紋124が受け入れられるか(すなわち位置指紋124が特定のアプリケーションの使用に対応するか)、拒否されるか(すなわち位置指紋124が特定のアプリケーションのユーザに対応しないか)を示す、ブール値を生成する。
【0045】
図8は、マルチチャネル音声アクティビティ検出のための方法800の、例示的な配列の動作のフローチャートである。方法800は、ステップ802において、ユーザデバイス102のデータ処理ハードウェア103において、データ処理ハードウェア103と通信するマイクロホン106のアレイによって取得されたストリーミングマルチチャネルオーディオ118を特徴付ける入力フレーム164のシーケンスを受け取ることを含む。ストリーミングマルチチャネルオーディオ118の各チャネル119が、マイクロホン106のアレイ内の別々の専用マイクロホン106によって取得されたそれぞれのオーディオ特徴162を含む。ステップ804において、方法800は、データ処理ハードウェア103によって、位置指紋モデル120を使用して、マルチチャネルオーディオ118の各チャネル119のそれぞれのオーディオ特徴162に基づいて、ユーザデバイス102に対するマルチチャネルオーディオ118の音源の位置を示す位置指紋124を決定することを含む。位置指紋124は、ユーザデバイス102に対するマルチチャネルオーディオ118の音源の方向を表すことができる。
【0046】
ステップ806において、方法800は、データ処理ハードウェア103によって、位置指紋124を入力として受け取るように構成されたアプリケーション固有の分類器モデル130からの出力、すなわち第1のスコア134を生成することも含む。第1のスコア134は、特定のアプリケーションが処理するように構成されている特定のオーディオタイプにマルチチャネルオーディオ118が対応する可能性を示す。ステップ808において、方法800は、データ処理ハードウェア103によって、アプリケーション固有の分類器モデル130からの出力として生成された第1のスコア134に基づいて、特定のアプリケーションによって処理するためのマルチチャネルオーディオ118を受け入れるべきか、拒否すべきかを判定することも含む。
【0047】
図9は、本文献において説明するシステムおよび方法を実装するために使用することのできる例示的なコンピューティングデバイス900の概略図である。コンピューティングデバイス900は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、さまざまな形態のデジタルコンピュータを表すことが意図されている。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は、単なる例示であることが意図されており、本文献において説明および/または特許請求する発明の実装形態を限定することは意図されていない。
【0048】
コンピューティングデバイス900は、プロセッサ910、メモリ920、ストレージデバイス930、メモリ920および高速拡張ポート950に接続する高速インターフェース/コントローラ940、ならびに低速バス970およびストレージデバイス930に接続する低速インターフェース/コントローラ960を含む。コンポーネント910、920、930、940、950、および960はそれぞれ、さまざまなバスを使用して相互接続されており、共通のマザーボード上に、または必要に応じて他の様式で、取り付けることができる。プロセッサ910は、コンピューティングデバイス900内で実行するための命令を処理することができ、これには、グラフィカルユーザインターフェース(GUI)用のグラフィカル情報を、高速インターフェース940に結合されたディスプレイ980などの外部入力/出力デバイス上に表示するための、メモリ920内またはストレージデバイス930上に記憶された命令が含まれる。他の実装形態では、複数のプロセッサおよび/または複数のバスを、必要に応じて、複数のメモリおよびメモリのタイプとともに使用することができる。また、(例えばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の部分を各デバイスが提供した状態で、複数のコンピューティングデバイス900を接続することができる。
【0049】
メモリ920は、情報をコンピューティングデバイス900内に非一時的に記憶する。メモリ920は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットとすることができる。非一時的メモリ920は、プログラム(例えば命令のシーケンス)またはデータ(例えばプログラム状態情報)をコンピューティングデバイス900によって使用するにあたり一時的にまたは永久に記憶するために使用される、物理デバイスとすることができる。不揮発性メモリの例としては、限定はしないが、(例えば典型的にはブートプログラムなどのファームウェア用に使用される)フラッシュメモリおよび読出し専用メモリ(ROM)/プログラマブル読出し専用メモリ(PROM)/消去可能なプログラマブル読出し専用メモリ(EPROM)/電気的消去可能なプログラマブル読出し専用メモリ(EEPROM)がある。揮発性メモリの例としては、限定はしないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープがある。
【0050】
ストレージデバイス930は、コンピューティングデバイス900に大容量ストレージを提供することが可能である。いくつかの実装形態では、ストレージデバイス930はコンピュータ可読媒体である。異なるさまざまな実装形態では、ストレージデバイス930は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくは他の類似のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成内のデバイスを含むデバイスのアレイとすることができる。さらなる実装形態では、コンピュータプログラム製品が、情報担体内に有形に具現化される。コンピュータプログラム製品は、実行されると上述したような1つまたは複数の方法を実施する命令を含む。情報担体は、メモリ920、ストレージデバイス930、またはプロセッサ910上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0051】
高速コントローラ940は、コンピューティングデバイス900の帯域幅を多用する動作を管理し、一方、低速コントローラ960は、より狭い帯域幅を多用する動作を管理する。役割のそのような割振りは、単なる例示である。いくつかの実装形態では、高速コントローラ940は、メモリ920に、(例えばグラフィックプロセッサまたはアクセラレータを通じて)ディスプレイ980に、またさまざまな拡張カード(図示せず)を受け入れることのできる高速拡張ポート950に、結合される。いくつかの実装形態では、低速コントローラ960は、ストレージデバイス930および低速拡張ポート990に結合される。さまざまな通信ポート(例えばUSB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含むことのできる低速拡張ポート990は、キーボード、ポインティングデバイス、スキャナなどの1つもしくは複数の入力/出力デバイスに、または例えばネットワークアダプタを通じてスイッチやルータなどのネットワーキングデバイスに、結合することができる。
【0052】
コンピューティングデバイス900は、図中に示すいくつかの異なる形態で実装することができる。例えば、コンピューティングデバイス900は、標準的なサーバ900aとして実装することもでき、そのようなサーバ900aのグループ内に複数回実装することもでき、ラップトップコンピュータ900bとして実装することもでき、あるいはラックサーバシステム900cの部分として実装することもできる。
【0053】
本明細書において説明するシステムおよび技法のさまざまな実装形態は、デジタル電子回路および/もしくは光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはそれらの組合せとして、実現することができる。これらのさまざまな実装形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、それらにデータおよび命令を送信するように結合された、専用または汎用とすることのできる少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な、1つまたは複数のコンピュータプログラムとしての実装を含むことができる。
【0054】
ソフトウェアアプリケーション(すなわちソフトウェアリソース)とは、コンピューティングデバイスにタスクを実施させるコンピュータソフトウェアを指すことがある。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることがある。例示的なアプリケーションとしては、限定はしないが、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションがある。
【0055】
(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)これらのコンピュータプログラムは、プログラマブルプロセッサ用の機械命令を含み、また高級手続き型プログラミング言語および/もしくはオブジェクト指向プログラミング言語で、かつ/またはアセンブリ言語/機械語で、実装することができる。本明細書では、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械可読信号としての機械命令を受け取る機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、非一時的なコンピュータ可読媒体、装置および/またはデバイス(例えば磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0056】
本明細書において説明するプロセスおよび論理フローは、入力データに作用し出力を生成することによって機能を実施するための1つまたは複数のコンピュータプログラムを実行する、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサによって実施することができる。プロセスおよび論理フローは、専用論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実施することもできる。コンピュータプログラムの実行に適したプロセッサとしては、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータのいずれか1つまたは複数のプロセッサがある。一般に、プロセッサは、読出し専用メモリまたはランダムアクセスメモリまたは両方から、命令およびデータを受け取る。コンピュータの不可欠な要素は、命令を実施するためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量ストレージデバイス、例えば磁気ディスク、光磁気ディスク、または光ディスクを含むか、またはそこからデータを受け取り、もしくはそこにデータを転送するように動作可能に結合されるか、またはその両方である。しかし、コンピュータはそのようなデバイスを有している必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体としては、例として、半導体メモリデバイス、例えばEPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、例えば内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD ROMディスクおよびDVD-ROMディスクを含む、あらゆる形態の不揮発性のメモリ、媒体、およびメモリデバイスがある。プロセッサおよびメモリは、専用論理回路によって補完することもでき、あるいは専用論理回路に組み込むこともできる。
【0057】
ユーザとの対話を可能にするために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイデバイス、例えばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーンと、任意選択で、ユーザがそれによってコンピュータに入力することのできるキーボードおよびポインティングデバイス、例えばマウスまたはトラックボールとを有するコンピュータ上に、実装することができる。他の種類のデバイスを使用して、ユーザとの対話を可能にすることもでき、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、例えば視覚フィードバック、聴覚フィードバック、または触覚フィードバックとすることができ、ユーザからの入力は、音響入力、スピーチ入力、または触覚入力を含む、任意の形態で受け取ることができる。それに加えて、コンピュータはユーザと、ユーザによって使用されているデバイスにドキュメントを送出し、そこからドキュメントを受信することによって、例えばユーザのクライアントデバイス上のウェブブラウザから受信した要求に応答して、そのウェブブラウザにウェブページを送出することによって、対話することができる。
【0058】
以上、いくつかの実装形態について説明してきた。しかし、本開示の趣旨および範囲から逸脱することなくさまざまな修正を加えることができることが理解されよう。したがって、他の実装形態が、以下の特許請求の範囲内に含まれる。
【符号の説明】
【0059】
10 ユーザ
100 システム
101 別個のデバイス
102 ユーザデバイス
103 データ処理ハードウェア
104 ネットワーク
105 メモリハードウェア
106 マイクロホン
106a~n マイクロホン
110 リモートシステム
112 コンピューティングリソース
114 ストレージリソース
116 発話
118 ストリーミングマルチチャネルオーディオ、マルチチャネルストリーミングオーディオ、2チャネルストリーミングオーディオ、マルチストリーミングオーディオ、複数音源ストリーミングオーディオ
119 チャネル、ストリーミングオーディオのチャネル、ストリーミングオーディオの各チャネル、オーディオデータのそれぞれのチャネル、単一チャネル
119a~n チャネル
119B オーディオの抽出された単一チャネル、オーディオデータの単一チャネル、オーディオの抽出されたチャネル、オーディオの単一チャネル、オーディオの高品質単一チャネル
119S オーディオの単一チャネル、オーディオの高品質単一チャネル
120 位置指紋モデル
124 位置指紋
130 位置分類器モデル、アプリケーション固有の分類器モデル、アプリケーション固有の分類器
134 第1のスコア
136 第2のスコア
140 出力スコアラ
150 オーディオプロセッサ、特定のアプリケーション
162 オーディオ特徴
164 入力フレーム
164a~n 入力フレーム
222 ビームフォーマ
224 ダウンマクサ
230 音声アクティビティ検出器(VAD)モデル
234 第2のスコア
310 複数音源位置を有するオーディオ、複数音源、複数音源オーディオ、人間が発した複数音源発話
312 テレビ
314 スピーカ
316 オーディオ
320 単一音源位置を有するオーディオ、単一音源オーディオ信号、単一音源、単一音源オーディオ、人間が発した単一音源発話
410 静止音源位置を有するオーディオ
412 ラジオ
420 移動音源位置を有するオーディオ
510 ニアフィールド領域
520 ファーフィールド領域
610 音源ベクトル
710 位置分類器トレーナ
712 正トレーニング例、負トレーニング例
712a 負トレーニング例、正トレーニングサンプル
712b 正トレーニング例、負トレーニングサンプル
800 方法
900 コンピューティングデバイス
900a 標準的なサーバ
900b ラップトップコンピュータ
900c ラックサーバシステム
910 プロセッサ、コンポーネント
920 メモリ、非一時的メモリ、コンポーネント
930 ストレージデバイス、コンポーネント
940 高速インターフェース/コントローラ、高速インターフェース、高速コントローラ、コンポーネント
950 高速拡張ポート、コンポーネント
960 低速インターフェース/コントローラ、低速コントローラ、コンポーネント
970 低速バス
980 ディスプレイ
990 低速拡張ポート
図1
図2
図3A
図3B
図4A
図4B
図5
図6
図7
図8
図9