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

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

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

特許7723744パーソナライズされた否定語に基づいてホットワード認識を適応させること
<>
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図1
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図2
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図3
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図4
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図5
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図6
  • 特許-パーソナライズされた否定語に基づいてホットワード認識を適応させること 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-05
(45)【発行日】2025-08-14
(54)【発明の名称】パーソナライズされた否定語に基づいてホットワード認識を適応させること
(51)【国際特許分類】
   G10L 15/28 20130101AFI20250806BHJP
   G10L 15/10 20060101ALI20250806BHJP
   G10L 15/06 20130101ALI20250806BHJP
【FI】
G10L15/28 230K
G10L15/10 200W
G10L15/06 300Z
【請求項の数】 28
(21)【出願番号】P 2023530712
(86)(22)【出願日】2021-11-11
(65)【公表番号】
(43)【公表日】2023-11-30
(86)【国際出願番号】 US2021059039
(87)【国際公開番号】W WO2022108830
(87)【国際公開日】2022-05-27
【審査請求日】2023-07-13
(31)【優先権主張番号】16/953,510
(32)【優先日】2020-11-20
(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/0184966(US,A1)
【文献】中国特許出願公開第111640426(CN,A)
【文献】特表2015-520409(JP,A)
【文献】国際公開第2016/157782(WO,A1)
【文献】特開2014-092750(JP,A)
【文献】特開2020-016784(JP,A)
【文献】特表2016-505888(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-15/34
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
データ処理ハードウェア(710)上で実行されると、前記データ処理ハードウェア(710)に、
ユーザデバイス(102)によって捕捉されたストリーミングオーディオ(118)内の、第1段階ホットワード検出器(210)によって検出されたホットワードイベントを特徴付けるオーディオデータ(120)を受信する動作と、
前記オーディオデータ(120)の第1のセグメント(121)内で第2段階ホットワード検出器(220)によってホットワードが検出されるかどうかを判定するために、前記第2段階ホットワード検出器(220)を使用して、前記オーディオデータ(120)を処理する動作と、
前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されない場合、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記第1段階ホットワード検出器(210)による前記ストリーミングオーディオ(118)内の前記ホットワードイベントの誤検出を引き起こした否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作とを実行させる、コンピュータ実装方法(600)であって、
前記動作が、前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されない場合、
前記ストリーミングオーディオ(118)内の前記ホットワードおよび/または前記ホットワードに続く1つもしくは複数の他の用語を処理するための前記ユーザデバイス(102)におけるウェイクアッププロセスを抑制する動作と、
前記ユーザデバイス(102)における前記ウェイクアッププロセスを抑制した後、前記ユーザデバイス(102)のユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作と
をさらに含み
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、前記ウェイクアッププロセスを抑制した後に、フォローアップクエリが前記ユーザデバイス(102)の前記ユーザによって提供されなかったと判定することにさらに基づく、
コンピュータ実装方法(600)
【請求項2】
記動作は、前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出された場合、
前記オーディオデータ(120)の第2のセグメント(122)が口頭のクエリタイプの発話を示すかどうかを判定するために、前記オーディオデータ(120)の前記第1のセグメント(121)に続く前記オーディオデータ(120)の前記第2のセグメント(122)を処理する動作と、
前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示していない場合、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作と
をさらに含む、
請求項1に記載の方法(600)。
【請求項3】
前記動作は、前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示していない場合、
前記ユーザデバイス(102)のユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作をさらに含み、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、フォローアップクエリが前記ユーザデバイス(102)の前記ユーザによって提供されなかったと判定することにさらに基づく、
請求項2に記載の方法(600)。
【請求項4】
前記動作は、前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示す場合、
前記ユーザデバイス(102)に提供された前記口頭のクエリタイプの発話の結果(192)に対して前記ユーザデバイス(102)のユーザが否定的な対話を行ったことを示す否定的対話結果(162)を受信する動作と、
前記受信した否定的対話結果(162)に基づいて、前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントを検出することを防止するために、前記第1段階ホットワード検出器(210)を更新する動作と
をさらに含む、
請求項2または3に記載の方法(600)。
【請求項5】
前記動作が、前記第1段階ホットワード検出器(210)によって検出された前記ホットワードイベントを特徴付ける前記オーディオデータ(120)を受信した後、
前記ユーザデバイス(102)におけるウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話(162)を受信する動作をさらに含み、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、前記ウェイクアッププロセスのユーザの抑制を示す前記否定的ユーザ対話(162)にさらに基づく、
請求項1から4のいずれか一項に記載の方法(600)。
【請求項6】
後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を前記ユーザデバイス(102)に提供する動作を含み、前記ユーザデバイス(102)が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を使用して、前記第1段階ホットワード検出器(210)を再トレーニングするように構成される、請求項1から5のいずれか一項に記載の方法(600)。
【請求項7】
前記ユーザデバイス(102)が、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の各インスタンスを前記ユーザデバイス(102)のメモリハードウェア(720)内に記憶し、
前記メモリハードウェア(720)内に記憶された前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)のインスタンスの数の集計に基づいて前記第1段階ホットワード検出器(210)を再トレーニングする
ことによって、前記第1段階ホットワード検出器(210)を再トレーニングするように構成される、請求項6に記載の方法(600)。
【請求項8】
前記ユーザデバイス(102)が、前記第1段階ホットワード検出器(210)を再トレーニングする前に、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の各インスタンスに関連付けられた対応する信頼性スコアが否定的ホットワードしきい値スコアを満たさないと判定し、
インスタンスの数がインスタンスのしきい値数を超えると判定する
ようにさらに構成される、請求項7に記載の方法(600)。
【請求項9】
後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために前記第1段階ホットワード検出器(210)を更新する動作が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を前記ユーザデバイス(102)に提供する動作を含み、前記ユーザデバイス(102)が、
前記オーディオデータ(120)の前記第1のセグメント(121)の埋め込み表現(12)を取得し、
前記ユーザデバイス(102)のメモリハードウェア(720)内に、前記オーディオデータ(120)の前記第1のセグメント(121)の前記埋め込み表現(12)を記憶するように構成され、
前記ユーザデバイス(102)が、
後続のオーディオデータ(120)に関する評価埋め込み表現(18)を計算し、
前記否定的ホットワードとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の前記埋め込み表現(12)と、前記後続のオーディオデータ(120)に関する前記評価埋め込み表現(18)との間の類似度スコア(515)を決定し、
前記類似度スコア(515)が類似度スコアしきい値を満たす場合、前記後続のオーディオデータ(120)が前記否定的ホットワードを含むと判定する
ことによって、
前記第1段階ホットワード検出器(210)によって検出された前記ホットワードイベントを特徴付ける前記後続のオーディオデータ(120)が前記否定的ホットワードを含む場合を判定するように構成される、
請求項1から8のいずれか一項に記載の方法(600)。
【請求項10】
前記データ処理ハードウェア(710)が、前記ユーザデバイス(102)と通信するサーバ(110)上に存在し、
前記第1段階ホットワード検出器(210)が、前記ユーザデバイス(102)のプロセッサ上で実行される、
請求項1から9のいずれか一項に記載の方法(600)。
【請求項11】
前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されるかどうかを判定するために前記オーディオデータ(120)を処理する動作が、前記オーディオデータ(120)の前記第1のセグメント(121)において前記ホットワードが認識されるかどうかを判定するために自動音声認識を実行する動作を含む、請求項10に記載の方法(600)。
【請求項12】
前記データ処理ハードウェア(710)は、前記ユーザデバイス(102)上に存在する、請求項1から9のいずれか一項に記載の方法(600)。
【請求項13】
前記第1段階ホットワード検出器(210)が、前記データ処理ハードウェア(710)のデジタル信号プロセッサ(DSP)(60)上で実行され、
前記第2段階ホットワード検出器(220)が、前記データ処理ハードウェア(710)のアプリケーションプロセッサ(70)上で実行される、
請求項12に記載の方法(600)。
【請求項14】
前記第1段階ホットワード検出器(210)が、
前記ユーザデバイス(102)によって捕捉された前記ストリーミングオーディオ(118)のオーディオ特徴における前記ホットワードの存在を示す確率スコア(171)を生成し、
前記確率スコア(171)が前記第1段階ホットワード検出器(210)のホットワード検出しきい値を満たす場合、前記ストリーミングオーディオ(118)内の前記ホットワードイベントを検出する
ように構成される、
請求項1から13のいずれか一項に記載の方法(600)。
【請求項15】
データ処理ハードウェア(710)と、
前記データ処理ハードウェア(710)と通信するメモリハードウェア(720)と、を備えるシステム(100)であって、前記メモリハードウェア(720)が、前記データ処理ハードウェア(710)上で実行されると、前記データ処理ハードウェア(710)に、
オーディオデータ(120)の第1のセグメント(121)内で第2段階ホットワード検出器(220)によってホットワードが検出されるかどうかを判定するために、前記第2段階ホットワード検出器(220)を使用して、前記オーディオデータ(120)を処理する動作と、
前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されない場合、
前記データ処理ハードウェア(710)によって、前記オーディオデータ(120)の前記第1のセグメント(121)を、第1段階ホットワード検出器(210)によるストリーミングオーディオ(118)内のホットワードイベントの誤検出を引き起こした否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記データ処理ハードウェア(710)によって、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作と
を実行させる命令を記憶し、
前記動作が、前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されない場合、
前記ストリーミングオーディオ(118)内の前記ホットワードおよび/または前記ホットワードに続く1つもしくは複数の他の用語を処理するためのユーザデバイス(102)におけるウェイクアッププロセスを抑制する動作と、
前記ユーザデバイス(102)における前記ウェイクアッププロセスを抑制した後、前記ユーザデバイス(102)のユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作と
をさらに含み
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、前記ウェイクアッププロセスを抑制した後に、フォローアップクエリが前記ユーザデバイス(102)の前記ユーザによって提供されなかったと判定することにさらに基づく、
システム(100)
【請求項16】
記動作が、前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出された場合、
前記オーディオデータ(120)の第2のセグメント(122)が口頭のクエリタイプの発話を示すかどうかを判定するために、前記オーディオデータ(120)の前記第1のセグメント(121)に続く前記オーディオデータ(120)の前記第2のセグメント(122)を処理する動作と、
前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示していない場合、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作と
をさらに含む、
請求項15に記載のシステム(100)。
【請求項17】
前記動作が、前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示していない場合、
前記ユーザデバイス(102)のユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作をさらに含み、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、フォローアップクエリが前記ユーザデバイス(102)の前記ユーザによって提供されなかったと判定することにさらに基づく、
請求項16に記載のシステム(100)。
【請求項18】
前記動作が、前記オーディオデータ(120)の前記第2のセグメント(122)が前記口頭のクエリタイプの発話を示す場合、
前記ユーザデバイス(102)に提供された前記口頭のクエリタイプの発話の結果(192)に対して前記ユーザデバイス(102)のユーザが否定的な対話を行ったことを示す否定的対話結果(162)を受信する動作と、
前記受信した否定的対話結果(162)に基づいて、前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作と、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)に基づいて、前記否定的ホットワードを含む後続のオーディオデータ(120)内で前記ホットワードイベントを検出することを防止するために、前記第1段階ホットワード検出器(210)を更新する動作と
をさらに含む、
請求項16または17に記載のシステム(100)。
【請求項19】
前記動作が、前記第1段階ホットワード検出器(210)によって検出された前記ホットワードイベントを特徴付ける前記オーディオデータ(120)を受信した後、
前記ユーザデバイス(102)におけるウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話(162)を受信する動作をさらに含み、
前記オーディオデータ(120)の前記第1のセグメント(121)を、前記否定的ホットワードを含むものとして分類する動作が、前記ウェイクアッププロセスのユーザの抑制を示す前記否定的ユーザ対話(162)にさらに基づく、
請求項15ら18のいずれか一項に記載のシステム(100)。
【請求項20】
後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために、前記第1段階ホットワード検出器(210)を更新する動作が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を前記ユーザデバイス(102)に提供する動作を含み、前記ユーザデバイス(102)が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を使用して、前記第1段階ホットワード検出器(210)を再トレーニングするように構成される、請求項15ら19のいずれか一項に記載のシステム(100)。
【請求項21】
前記ユーザデバイス(102)が、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の各インスタンスを前記ユーザデバイス(102)のメモリハードウェア(720)内に記憶し、
前記メモリハードウェア(720)内に記憶された前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)のインスタンスの数の集計に基づいて前記第1段階ホットワード検出器(210)を再トレーニングする
ことによって、前記第1段階ホットワード検出器(210)を再トレーニングするように構成される、請求項20に記載のシステム(100)。
【請求項22】
前記ユーザデバイス(102)が、前記第1段階ホットワード検出器(210)を再トレーニングする前に、
前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の各インスタンスに関連付けられた対応する信頼性スコアが否定的ホットワードしきい値スコアを満たさないと判定し、
インスタンスの数がインスタンスのしきい値数を超えると判定する
ようにさらに構成される、請求項21に記載のシステム(100)。
【請求項23】
後続のオーディオデータ(120)内で前記ホットワードイベントをトリガすることを防止するために前記第1段階ホットワード検出器(210)を更新する動作が、前記否定的ホットワードを含むものとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)を前記ユーザデバイス(102)に提供する動作を含み、前記ユーザデバイス(102)が、
前記オーディオデータ(120)の前記第1のセグメント(121)の埋め込み表現(12)を取得し、
前記ユーザデバイス(102)のメモリハードウェア(720)内に、前記オーディオデータ(120)の前記第1のセグメント(121)の前記埋め込み表現(12)を記憶するように構成され、
前記ユーザデバイス(102)が、
後続のオーディオデータ(120)に関する評価埋め込み表現(18)を計算し、
前記否定的ホットワードとして分類された前記オーディオデータ(120)の前記第1のセグメント(121)の前記埋め込み表現(12)と、前記後続のオーディオデータ(120)に関する前記評価埋め込み表現(18)との間の類似度スコア(515)を決定し、
前記類似度スコア(515)が類似度スコアしきい値を満たす場合、前記後続のオーディオデータ(120)が前記否定的ホットワードを含むと判定する
ことによって、
前記第1段階ホットワード検出器(210)によって検出された前記ホットワードイベントを特徴付ける前記後続のオーディオデータ(120)が前記否定的ホットワードを含む場合を判定するように構成される、
請求項15ら22のいずれか一項に記載のシステム(100)。
【請求項24】
前記データ処理ハードウェア(710)が、前記ユーザデバイス(102)と通信するサーバ(110)上に存在し、
前記第1段階ホットワード検出器(210)が、前記ユーザデバイス(102)のプロセッサ上で実行される、
請求項15ら23のいずれか一項に記載のシステム(100)。
【請求項25】
前記オーディオデータ(120)の前記第1のセグメント(121)において前記第2段階ホットワード検出器(220)によって前記ホットワードが検出されるかどうかを判定するために前記オーディオデータ(120)を処理する動作が、前記オーディオデータ(120)の前記第1のセグメント(121)において前記ホットワードが認識されるかどうかを判定するために自動音声認識を実行する動作を含む、請求項24に記載のシステム(100)。
【請求項26】
前記データ処理ハードウェア(710)は、前記ユーザデバイス(102)上に存在する、請求項15ら23のいずれか一項に記載のシステム(100)。
【請求項27】
前記第1段階ホットワード検出器(210)が、前記データ処理ハードウェア(710)のデジタル信号プロセッサ(DSP)(60)上で実行され、
前記第2段階ホットワード検出器(220)が、前記データ処理ハードウェア(710)のアプリケーションプロセッサ(70)上で実行される、
請求項26に記載のシステム(100)。
【請求項28】
前記第1段階ホットワード検出器(210)が、
前記ユーザデバイス(102)によって捕捉された前記ストリーミングオーディオ(118)のオーディオ特徴における前記ホットワードの存在を示す確率スコア(171)を生成し、
前記確率スコア(171)が前記第1段階ホットワード検出器のホットワード検出しきい値を満たす場合、前記ストリーミングオーディオ(118)内の前記ホットワードイベントを検出する
ように構成される、
請求項15ら27のいずれか一項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、パーソナライズされた否定語に基づいてホットワード認識を適応させることに関する。
【背景技術】
【0002】
音声対応環境(例えば、家庭、職場、学校、自動車など)は、ユーザがクエリまたはコマンドをコンピュータベースのシステムに対して声に出して話すことを可能にし、コンピュータベースのシステムは、クエリにうまく答えるもしくは回答する、および/またはコマンドに基づいて機能を実行する。声対応環境は、環境の様々な部屋またはエリアに分散された、接続されているマイクロフォンデバイスのネットワークを使用して実装することができる。これらのデバイスは、環境内に存在する別の個人に向けられた発話とは対照的に、所与の発話がシステムに向けられた場合を識別するのに役立つホットワードを使用し得る。したがって、デバイスは、スリープ状態またはハイバネーション状態において動作し、検出された発話がホットワードを含む場合にのみウェイクアップし得る。典型的には、ストリーミングオーディオ内のホットワードを検出するために使用されるシステムは、ホットワードがストリーミングオーディオ内に存在する確率を示す確率スコアを生成する。確率スコアが所定のしきい値を満たす場合、デバイスは、ウェイクアッププロセスを開始する。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の一態様は、パーソナライズされた否定語に基づいてホットワード認識を適応させるための方法を提供する。方法は、データ処理ハードウェアにおいて、ユーザデバイスによって捕捉されたストリーミングオーディオ内の、第1段階ホットワード検出器によって検出されたホットワードイベントを特徴付けるオーディオデータを受信するステップを含む。方法は、データ処理ハードウェアによって、オーディオデータの第1のセグメント内で第2段階ホットワード検出器によってホットワードが検出されるかどうかを判定するために、第2段階ホットワード検出器を使用して、オーディオデータを処理するステップも含む。オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されない場合、方法は、データ処理ハードウェアによって、オーディオデータの第1のセグメントを、第1段階ホットワード検出器によるストリーミングオーディオ内のホットワードイベントの誤検出を引き起こした否定的ホットワードを含むものとして分類するステップを含む。否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、方法は、データ処理ハードウェアによって、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新するステップを含む。
【0004】
本開示の実装形態は、以下のオプションの特徴のうちの1つまたは複数を含む。いくつかの実装形態において、方法は、オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されない場合、データ消去ハードウェアによって、ストリーミングオーディオ内のホットワードおよびホットワードに続く1つまたは複数の他の用語を処理するためのユーザデバイスにおけるウェイクアッププロセスを抑制するステップと、データ処理ハードウェアによって、ユーザデバイスにおけるウェイクアッププロセスを抑制した後、ユーザデバイスのユーザによって即時のフォローアップクエリが提供されたかどうかを判定するステップとをさらに含む。これらの実装形態において、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類するステップは、ウェイクアッププロセスを抑制した後に、フォローアップクエリがユーザデバイスのユーザによって提供されなかったと判定することにさらに基づく。
【0005】
いくつかの例において、オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出された場合、方法は、データ処理ハードウェアによって、オーディオデータの第2のセグメントが口頭のクエリタイプの発話を示すかどうかを判定するために、オーディオデータの第1のセグメントに続くオーディオデータの第2のセグメントを処理するステップをさらに含む。これらの例において、オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示していない場合、方法はまた、データ処理ハードウェアによって、オーディオデータの第1のセグメントを、否定的ワードを含むものとして分類するステップと、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、データ処理ハードウェアによって、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新するステップとを含む。いくつかの実装形態において、方法は、オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示していない場合、データ処理ハードウェアによって、ユーザデバイスのユーザによって即時のフォローアップクエリが提供されたかどうかを判定するステップをさらに含む。ここで、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類するステップは、フォローアップクエリがユーザデバイスのユーザによって提供されなかったと判定することにさらに基づく。オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示す場合、方法はまた、データ処理ハードウェアにおいて、ユーザデバイスに提供された口頭のクエリタイプの発話の結果に対してユーザデバイスのユーザが否定的な対話を行ったことを示す否定的対話結果を受信するステップと、データ処理ハードウェアによって、受信した否定的対話結果に基づいて、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類するステップと、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、データ処理ハードウェアによって、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントを検出することを防止するために、第1段階ホットワード検出器を更新するステップとを含む。
【0006】
いくつかの例において、第1段階ホットワード検出器によって検出されたホットワードイベントを特徴付けるオーディオデータを受信した後、方法は、データ処理ハードウェアにおいて、ユーザデバイスにおけるウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話を受信するステップをさらに含む。ここで、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類するステップは、ウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話にさらに基づく。
【0007】
オプションで、後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新するステップは、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントをユーザデバイスに提供するステップを含み得る。ユーザデバイスは、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントを使用して、第1段階ホットワード検出器を再トレーニングするように構成される。いくつかの実装形態において、ユーザデバイスは、ユーザデバイスのメモリハードウェアにおいて、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントの各インスタンスをユーザデバイスのメモリハードウェア内に記憶し、メモリハードウェア内に記憶された否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントのインスタンスの数の集計に基づいて第1段階ホットワード検出器を再トレーニングすることによって、第1段階ホットワード検出器を再トレーニングするように構成される。これらの実装形態において、ユーザデバイスは、第1段階ホットワード検出器を再トレーニングする前に、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントの各インスタンスに関連付けられた対応する信頼性スコアが否定的ホットワードしきい値スコアを満たさないと判定し、インスタンスの数がインスタンスのしきい値数を超えると判定するようにさらに構成される。
【0008】
後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために第1段階ホットワード検出器を更新するステップは、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントをユーザデバイスに提供するステップを含み得る。オーディオデータの第1のセグメントの埋め込み表現を取得し、ユーザデバイスのメモリハードウェアに、オーディオデータの第1のセグメントの埋め込み表現を記憶するように構成される。追加的に、ユーザデバイスは、オーディオデータに関する評価埋め込み表現を計算することによって、第1段階ホットワード検出器によって検出されたホットワードイベントを特徴付ける後続のオーディオデータが否定的ホットワードを含む場合を判定し、否定的ホットワードとして分類されたオーディオデータの第1のセグメントの埋め込み表現と、後続のオーディオデータに関する評価埋め込み表現との間の類似度スコアを決定し、類似度スコアが類似度スコアしきい値を満たす場合、後続のオーディオデータが否定的ホットワードを含むと判定するように構成される。
【0009】
いくつかの実装形態において、データ処理ハードウェアは、データ処理ハードウェアと通信するサーバ上に存在し、第1段階ホットワード検出器は、ユーザデバイスのプロセッサ上で実行される。オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されるかどうかを判定するためにオーディオデータを処理するステップは、オーディオデータの第1のセグメントにおいてホットワードが認識されるかどうかを判定するために自動音声認識を実行するステップを含み得る。
【0010】
いくつかの例において、データ処理は、ユーザデバイス上に存在する。これらの例において、第1段階ホットワード検出器は、データ処理ハードウェアのデジタル信号プロセッサ(DSP)上で実行され得、第2段階ホットワード検出器は、データ処理ハードウェアのアプリケーションプロセッサ上で実行される。第1段階ホットワード検出器は、ユーザデバイスによって捕捉されたストリーミングオーディオのオーディオ特徴におけるホットワードの存在を示す確率スコアを生成し、確率スコアが第1段階ホットワード検出器のホットワード検出しきい値を満たす場合、ストリーミングオーディオ内のホットワードイベントを検出するように構成され得る。
【0011】
本開示の別の態様は、パーソナライズされた否定語に基づいてホットワード認識を適応させるためのシステムを提供する。システムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェア上で実行されると、データ処理ハードウェアに動作を実行させる命令を記憶する。動作は、ユーザデバイスによって捕捉されたストリーミングオーディオにおいて第1段階のホットワード検出器によって検出されたホットワードイベントを特徴付けるオーディオデータを受信する動作を含む。動作は、第2段階ホットワード検出器を使用して、オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されるかどうかを判定するために、オーディオデータを処理する動作も含む。オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されない場合、動作は、オーディオデータの第1のセグメントを、第1段階ホットワード検出器によるストリーミングオーディオ内のホットワードイベントの誤検出を引き起こした否定的ホットワードを含むものとして分類する動作を含む。否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、動作は、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新する動作を含む。
【0012】
本開示の実装形態は、以下のオプションの特徴のうちの1つまたは複数を含む。いくつかの実装形態において、動作は、オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されない場合、ストリーミングオーディオ内のホットワードおよびホットワードに続く1つまたは複数の他の用語を処理するためのユーザデバイスにおけるウェイクアッププロセスを抑制する動作と、ユーザデバイスにおけるウェイクアッププロセスを抑制した後、ユーザデバイスのユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作とをさらに含む。これらの実装形態において、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類する動作は、ウェイクアッププロセスを抑制した後に、フォローアップクエリがユーザデバイスのユーザによって提供されなかったと判定することにさらに基づく。
【0013】
いくつかの例において、オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出された場合、動作は、オーディオデータの第2のセグメントが口頭のクエリタイプの発話を示すかどうかを判定するために、オーディオデータの第1のセグメントに続くオーディオデータの第2のセグメントを処理する動作をさらに含む。これらの例において、オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示していない場合、動作はまた、オーディオデータの第1のセグメントを、否定的ワードを含むものとして分類する動作と、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新する動作とを含む。いくつかの実装形態において、動作は、オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示していない場合、ユーザデバイスのユーザによって即時のフォローアップクエリが提供されたかどうかを判定する動作をさらに含む。ここで、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類するステップは、フォローアップクエリがユーザデバイスのユーザによって提供されなかったと判定することにさらに基づく。オーディオデータの第2のオーディオセグメントが口頭のクエリタイプの発話を示す場合、動作はまた、ユーザデバイスに提供された口頭のクエリタイプの発話の結果に対してユーザデバイスのユーザが否定的な対話を行ったことを示す否定的対話結果を受信する動作と、受信した否定的対話結果に基づいて、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類する動作と、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントに基づいて、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントを検出することを防止するために、第1段階ホットワード検出器を更新する動作とを含む。
【0014】
いくつかの例において、第1段階ホットワード検出器によって検出されたホットワードイベントを特徴付けるオーディオデータを受信した後、動作は、ユーザデバイスにおけるウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話を受信する動作をさらに含む。ここで、オーディオデータの第1のセグメントを、否定的ホットワードを含むものとして分類する動作は、ウェイクアッププロセスのユーザの抑制を示す否定的ユーザ対話にさらに基づく。
【0015】
オプションで、後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器を更新する動作は、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントをユーザデバイスに提供する動作を含み得る。ユーザデバイスは、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントを使用して、第1段階ホットワード検出器を再トレーニングするように構成される。いくつかの実装形態において、ユーザデバイスは、ユーザデバイスのメモリハードウェアにおいて、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントの各インスタンスをユーザデバイスのメモリハードウェア内に記憶し、メモリハードウェア内に記憶された否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントのインスタンスの数の集計に基づいて第1段階ホットワード検出器を再トレーニングすることによって、第1段階ホットワード検出器を再トレーニングするように構成される。これらの実装形態において、ユーザデバイスは、第1段階ホットワード検出器を再トレーニングする前に、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントの各インスタンスに関連付けられた対応する信頼性スコアが否定的ホットワードしきい値スコアを満たさないと判定し、インスタンスの数がインスタンスのしきい値数を超えると判定するようにさらに構成される。
【0016】
後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために第1段階ホットワード検出器を更新する動作は、否定的ホットワードを含むものとして分類されたオーディオデータの第1のセグメントをユーザデバイスに提供する動作を含み得る。オーディオデータの第1のセグメントの埋め込み表現を取得し、ユーザデバイスのメモリハードウェアに、オーディオデータの第1のセグメントの埋め込み表現を記憶するように構成される。追加的に、ユーザデバイスは、オーディオデータに関する評価埋め込み表現を計算することによって、第1段階ホットワード検出器によって検出されたホットワードイベントを特徴付ける後続のオーディオデータが否定的ホットワードを含む場合を判定し、否定的ホットワードとして分類されたオーディオデータの第1のセグメントの埋め込み表現と、後続のオーディオデータに関する評価埋め込み表現との間の類似度スコアを決定し、類似度スコアが類似度スコアしきい値を満たす場合、後続のオーディオデータが否定的ホットワードを含むと判定するように構成される。
【0017】
いくつかの実装形態において、データ処理ハードウェアは、データ処理ハードウェアと通信するサーバ上に存在し、第1段階ホットワード検出器は、ユーザデバイスのプロセッサ上で実行される。オーディオデータの第1のセグメントにおいて第2段階ホットワード検出器によってホットワードが検出されるかどうかを判定するためにオーディオデータを処理する動作は、オーディオデータの第1のセグメントにおいてホットワードが認識されるかどうかを判定するために自動音声認識を実行する動作を含み得る。
【0018】
いくつかの例において、データ処理は、ユーザデバイス上に存在する。これらの例において、第1段階ホットワード検出器は、データ処理ハードウェアのデジタル信号プロセッサ(DSP)上で実行され得、第2段階ホットワード検出器は、データ処理ハードウェアのアプリケーションプロセッサ上で実行される。第1段階ホットワード検出器は、ユーザデバイスによって捕捉されたストリーミングオーディオのオーディオ特徴におけるホットワードの存在を示す確率スコアを生成し、確率スコアが第1段階ホットワード検出器のホットワード検出しきい値を満たす場合、ストリーミングオーディオ内のホットワードイベントを検出するように構成され得る。
【0019】
本開示の1つまたは複数の実装形態の詳細は、添付図面および以下の説明において記載されている。他の態様、特徴、および利点は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0020】
図1】否定的ホットワードを分類し、否定的ホットワードを含むオーディオ内でホットワードイベントを検出することを防止するために第1段階ホットワード検出器を更新するための例示的なシステムの概略図である。
図2】ホットワード検出アーキテクチャの概略図である。
図3図1のシステムの例示的な否定的ホットワード分類器の概略図である。
図4】否定的ホットワードを含むものとして分類されたオーディオデータの分類結果を記憶するユーザデバイスの概略図である。
図5】オーディオデータ内でホットワードイベントをトリガすることを防止するために、捕捉されたオーディオデータ内の個人的な否定的ホットワードの存在を識別する例示的なユーザデバイスの概略図である。
図6】パーソナライズされた否定的ホットワードを分類し、パーソナライズされた否定的ホットワードを含むオーディオデータ内でホットワードイベントをトリガすることを防止するために第1段階ホットワード検出器を更新するための動作の例示的な配置のフローチャートである。
図7】本明細書で説明するシステムおよび方法を実装するために使用され得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0021】
様々な図面における同様の参照符号は、同様の要素を示す。
【0022】
デジタルアシスタントなどの音声ベースのインターフェースは、限定はしないが、音声を捕捉するためのマイクロフォンを含む携帯電話およびスマートスピーカ/ディスプレイを含む、様々なデバイスにわたってますます普及しつつある。音声対応デバイスとの音声対話を開始する一般的な方法は、固定されたフレーズ、例えば、ホットワードを話すことであり、この固定されたフレーズは、ストリーミングオーディオにおいて音声対話デバイスによって検出されると、ユーザによって話されたクエリを確認するために後続の音声の記録および処理を開始するために、音声対応デバイスがウェイクアッププロセスを開始するようにトリガする。したがって、音声ベースのインターフェースの主要なエントリーポイントとして、いくつかの誤ったウェイクアップイベントが最小にされるように、ホットワード検出/認識が再現率と精度の両方の点で確実に機能することが重要である。
【0023】
偽陰性(「偽拒否」とも呼ばれる)は、音声ベースのインターフェース(例えば、デジタルアシスタント)と対話しようとしたときにユーザによって話されたストリーミングオーディオ内のホットワードを検出しないことを指す。ここで、音声対応デバイスは、ユーザに反応することができず、ホットワードが検出されることを確実にするために、しばしばより大きな声で、異なる発音でホットワードを再び話すことによってインターフェースを呼び出すことを再び試みることをユーザに要求する。一方、偽陽性(「偽受容」とも呼ばれる)は、一般に、話されたときにホットワードと音声学的に類似する単語/フレーズを含むストリーミングオーディオに起因して、ストリーミングオーディオがホットワードを実際に含まないときに、ストリーミングオーディオ内のホットワードを検出することを指す。偽陽性は、ユーザがシステムを呼び出すことを意図していなかったにもかかわらず、音声対応デバイスにウェイクアッププロセスを開始させ、それによって、音声対応デバイスがスリープ状態のままであるべきであるときに反応して、ユーザを驚かせるおよび/または混乱させる。
【0024】
カスケードホットワード検出アーキテクチャは、ストリーミング内のホットワードの存在を検出するためにデバイス上で実行される第1段階ホットワード検出器と、第1段階ホットワード検出器によって検出されたホットワードの存在を確認する第2段階ホットワード検出器とを組み込む。第2段階ホットワード検出器は、ストリーミングオーディオ内のホットワードの存在を検出する際のより高い精度に関連し、したがって、第1段階ホットワード検出器よりも高い電力要件を含む。しばしば、第2段階ホットワード検出器は、音声対応デバイス上に実装された第1段階ホットワード検出器と通信するサーバ上に実装される。部分的な偽陰性中であっても、第1段階ホットワード検出器がローカルでホットワードの存在を検出するが、サーバ上における第2段階ホットワード検出器がホットワードの存在を拒否する場合は、サーバがウェイクアッププロセスを最終的に抑制しても、ユーザ体験に悪影響を有する。すなわち、第1段階ホットワード検出器によるホットワードの検出は、依然として、ユーザにとって目立つ(例えば、目に見える通知または点滅する光)デバイスのウェイクアップおよびサーバへの接続を引き起こし、プライバシーおよび電力保存の観点からさらに望ましくない。したがって、ユーザ体験を改善するために、部分的な偽陽性のインスタンスの発生を排除することが望ましい。
【0025】
従来、音声対応デバイスは、所与の言語(またはロケール)のすべてのユーザに対して、サーバからデバイスにプッシュされる新しいバージョンで定期的に更新される同じ固定されたホットワードモデルを使用する。すなわち、ユーザの音声、アクセント、語彙、および/または音声対応デバイスが動作する音響環境にわたる大きいばらつきの存在にもかかわらず、すべてのユーザに関するストリーミングオーディオ内のホットワードを検出するために同じホットワードモデルが使用される。結果として、単一のホットワードモデルが所与の言語/ロケールのすべてのユーザにわたって共有される場合、ホットワードを検出するための厳しい精度/再現率要件を実装することは、ほぼ不可能である。
【0026】
所与のユーザおよび/または環境について、ホットワードの偽陽性インスタンスがクラスタ化する可能性が非常に高い。非限定的な例において、特定のユーザが「プードル(poodle)」という用語を話すことは、音声対応デバイス上のホットワード検出モデルに、指定されたホットワード「ヘイ、グーグル(Hey Google)」の存在を誤って検出させる場合があり、一方、異なるユーザが、別の音声対応デバイス上に実装された同じホットワード検出モデルに、そのユーザが「ドゥードル(doodle)」と話したときに、指定されたホットワードを検出させる場合がある。様々なユーザにわたるこれらの偽陽性インスタンスのばらつきは、ユーザの発音の違い、および/またはそれらのユーザのそれぞれの語彙におけるそれらの用語の頻度に起因する可能性がある。同じ偽陽性インスタンスは、同じ環境内の同じユーザに関する類似の音響パターンに基づいて再発する可能性が高いので、ホットワード検出器は、理想的には、ユーザが指定されたホットワードに類似する発音で所定のものを話したときに、同じ偽陽性を何度も繰り返すことを回避するように適応するように学習すべきである。
【0027】
本明細書における実装形態は、ホットワード検出の偽陽性の以前のインスタンスを引き起こした否定的ホットワードとして分類された特定の用語に基づいて、ユーザの音声対応デバイス上のホットワード検出器をパーソナライズすることに向けられている。否定的ホットワードとして分類された特定の用語は、用語を話す特定のユーザから得られたオーディオセグメントがホットワード検出器によって検出されると、任意のホットワード検出が抑制されるようにユーザ固有であり得る。追加的または代替的に、否定的ホットワードとして分類された特定の用語は、用語を話すユーザから得られたオーディオセグメントが、特定のデバイス上に実装されたホットワード検出器によって検出されるが、同じユーザに関連する他の音声対応デバイス上に実装されたホットワード検出器によって検出されない場合、ホットワード検出が抑制されるようにデバイス固有であり得る。これは、いくつかの環境内に位置するデバイスが、音響的な変動、語彙における変動、およびその環境において典型的に話すユーザ間の変動により、他の環境内に位置するデバイスよりもホットワード検出の偽陽性が起こりやすいという考えに従う。
【0028】
図1を参照すると、いくつかの実装形態において、例示的なシステム100は、1人または複数のユーザ10に関連付けられ、ネットワーク104を介してリモートシステムと通信するユーザデバイス102を含む。ユーザデバイス102は、携帯電話、コンピュータ(ラップトップまたはデスクトップ)、タブレット、スマートスピーカ/ディスプレイ、スマート家電、スマートヘッドフォン、ウェアラブル、車両インフォテイメントシステムなどのコンピューティングデバイスに対応し、データ処理ハードウェア103とメモリハードウェア105とを備える。ユーザデバイス102は、それぞれのユーザ10からの発話を捕捉するための1つまたは複数のマイクロフォン106を含むか、またはマイクロフォン106と通信する。リモートシステム110は、スケーラブルな/弾力性のあるコンピューティングリソース112(例えば、データ処理ハードウェア)および/またはストレージリソース114(例えば、メモリハードウェア)を有する単一のコンピュータ、複数のコンピュータ、または分散型システム(例えば、クラウド環境)であり得る。
【0029】
ユーザデバイス102は、ストリーミングオーディオ118に対して意味解析または音声認識処理を実行することなく、ストリーミングオーディオ118内のホットワードの存在を検出するように構成された第1段階ホットワード検出器210(ホットワード検出モデルとも呼ばれる)を含む。いくつかの実装形態において、ユーザデバイス102は、ストリーミングオーディオ118を受信して、ホットワードがストリーミングオーディオ118内で検出されるかどうかを確認するために第1段階(精細)ホットワード検出器210を呼び出す前に、ホットワードの存在を最初に検出するようにトレーニングされた初期粗ホットワード検出器205(図2)も含む。いくつかの実装形態において、第1段階ホットワード検出器210は、ネットワーク104を介してリモートシステム110から受信したトレーニング済みニューラルネットワーク(例えば、記憶されたニューラルネットワーク)を含む。リモートシステム110は、第1段階ホットワード検出器210の更新または新しいバージョンを、所与のローカルのおよび/または特定の言語のユーザに関連するユーザデバイス102の集団にプッシュし得る。すなわち、米国英語を話すユーザに関連するすべてのユーザデバイス102は、同じ第1段階ホットワード検出器210を受け入れ、この第1段階ホットワード検出器210は、米国における英語を話すユーザによって話されたときに、ストリーミングオーディオ118内のホットワードの存在を検出するようにトレーニングされたニューラルネットワークを含み得る。
【0030】
いくつかの例において、ユーザデバイス102上で実行される第1段階ホットワード検出器210は、ストリーミングオーディオ118内のホットワードおよび/またはホットワードに続く1つもしくは複数の他の用語(例えば、クエリまたはコマンド)を処理するためにユーザデバイス102においてウェイクアッププロセスを開始するために、ストリーミングオーディオ118内のホットワード「ヘイ、グーグル(Hey Google)」の存在を検出するように構成される。第1段階ホットワード検出器210は、ユーザデバイス102によって捕捉されたストリーミングオーディオ118のオーディオ特徴におけるホットワードの存在を示す確率スコアを生成し、確率スコアが第1段階ホットワード検出器210のホットワード検出しきい値を満たす場合、ストリーミングオーディオ118内のホットワードを検出するように構成され得る。したがって、第1段階ホットワード検出器210は、ストリーミングオーディオ118のオーディオ特徴に対して生成された確率スコアがホットワード識別しきい値を満たす場合、ユーザデバイス102によって捕捉されたストリーミングオーディオ118内のホットワードイベントを検出し得る。
【0031】
図示の例において、ユーザ10は、第1段階ホットワード検出器210が検出するようにトレーニングされたホットワードとして指定された固定用語/フレーズ(例えば、「ヘイ、グーグル(Hey Google)」)と類似の発音を有する、ユーザデバイス102によってストリーミングオーディオ118として捕捉された用語/フレーズ(例えば、「ヘイ、プードル(Hey Poodle)」)を含む発話119を話す。特に、ユーザ10は、わずかに異なる発音を使用する他のユーザによって話された場合よりも、第1段階ホットワード検出器が指定されたホットワード「ヘイ、グーグル(Hey Google)」と識別するのが困難であるように、「ヘイ、プードル(Hey Poodle)」という用語を発音する場合がある。結果として、ユーザデバイス102上で実行される第1段階ホットワード検出器210は、ホットワード検出しきい値を満たす確率スコアを「ヘイ、プードル(Hey Poodle)」に関連するオーディオ特徴に対して生成することによって、ホットワードの存在を誤って検出し、それによって、ユーザ10によって意図されなかったウェイクアッププロセスの開始をトリガする。
【0032】
「ヘイ、プードル(Hey Poodle)」に関連するオーディオ特徴に関する確率スコアがホットワード検出しきい値を満たす場合、第1段階ホットワード検出器210は、ホットワードイベントを特徴付けるオーディオデータ120を、リモートシステム110上で実行される第2段階ホットワード検出器220にさらに送信する。いくつかの例において、オーディオデータ120は、ストリーミングオーディオ118の直接表現であるが、他の例において、オーディオデータ136は、第1(例えば、ストリーミングオーディオ118の特定のオーディオ特性を識別および/もしくは分離するため、またはストリーミングオーディオ118を第2段階ホットワード検出器220による伝送および/もしくは処理に適したフォーマットに変換するための)段階ホットワード検出器210による処理後のストリーミングオーディオ118を表す。例えば、オーディオデータ120は、第1段階ホットワード検出器210によって検出されたホットワードの存在に関連する関連オーディオ特徴を含む、ストリーミングオーディオ118から切り取られた(chomped)第1のセグメント121を含む。オーディオデータ120は、第1のセグメント121に続く、ストリーミングオーディオ118内のユーザデバイス102によって捕捉されたオーディオ特徴を含む第2のセグメント122も含む。典型的には、第1のセグメント121は、一般に、指定されたホットワードに関連するオーディオ特徴を含むのに十分な固定持続時間のものである。しかしながら、第2のセグメント122は、マイクロフォン106が開いている間にユーザデバイス102によって捕捉されたオーディオを含む可変持続時間を有し得る。第2のセグメント122は、オーディオデータ内のクエリまたはコマンドを識別するために、1つまた複数の用語に対するさらなる処理(例えば、自動音声認識および/または意味解釈)を必要とするクエリタイプの発話を捕捉し得る。例示的なシナリオにおいて、第1のセグメント121は、ホットワードを話すユーザに関連しないが、ユーザ10がホットワードと類似して発音する別の用語/フレーズに関連する、ユーザデバイスによって捕捉されたオーディオ特徴を含むので、ユーザ10は、音声を通じてデバイス102を呼び出すことを意図しておらず、したがって、第2のセグメント122は、クエリタイプの発話を含まない可能性が高く、代わりに、ユーザデバイス102の環境からストリーミングオーディオ118内に捕捉された背景雑音を含む可能性が高い。
【0033】
第1段階ホットワード検出器210および第2段階ホットワード検出器220は、カスケードホットワード検出アーキテクチャ220を形成するように協働し、それによって、第2段階ホットワード検出器220は、第1段階ホットワード検出器210によって検出されたホットワードがオーディオデータ120内に存在するかどうかを確認するように構成される。具体的には、リモートシステム110上で実行される第2段階ホットワード検出器220は、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器によってホットワードが検出されるかどうかを判定するためにオーディオデータ120を処理する。いくつかの例において、第2段階ホットワード検出器220は、ホットワードが存在するかどうかを判定するために、オーディオデータ120の第1のセグメント121に対して音声認識を実行する自動音声認識(ASR)エンジンとして実装される。第2段階ホットワード検出器220は、ホットワードを認識する確率がホットワード検出しきい値を満たす場合、第1のセグメント121内のホットワードの存在を検出し得る。
【0034】
他の例において、第2段階ホットワード検出器220は、第2段階ホットワード検出器220が、意味解析または音声認識処理を実行せずに第1のオーディオセグメント121内のホットワードの存在を検出するように構成されたトレーニング済みニューラルネットワークとして実装されたモデルであるという点で、第1段階ホットワード検出器210と同様である。これらの例において、第2段階ホットワード検出器220は、第1段階ホットワード検出器210によって使用されるホットワード検出モデルのより大きいバージョンに関連付けられ得、第1段階ホットワード検出器210のニューラルネットワークよりも潜在的に計算集約的な異なるニューラルネットワークを含み得、それによって、ユーザデバイス102のリソースによって制限される第1段階ホットワード検出器210よりも向上したホットワード検出精度を提供する。第2段階ホットワード検出器220は、オーディオデータ120の第1のセグメント内のホットワードの存在を示す確率スコアを生成し得、確率スコアが第2段階ホットワード検出器220のホットワード検出しきい値を満たす場合、ホットワードの存在を検出し得る。ここで、第2段階ホットワード検出器220におけるホットワード検出しきい値の値は、第1段階ホットワード検出器210におけるホットワード検出しきい値の値と同じであり得、または異なり得る。いくつかの例において、第2段階ホットワード検出器220におけるホットワード検出しきい値の値は、第1のオーディオセグメント121内にホットワードが存在するかどうかを判定する際に第2段階ホットワード検出器220がより確信することを要求するために、より高く設定される。
【0035】
いくつかの実装形態において、第2段階ホットワード検出器220は、リモートシステム110を使用せずに、カスケードホットワード検出アーキテクチャ200全体をオンデバイスで実装するために、ユーザデバイス102(例えば、データ処理ハードウェア103)上で実行される。第2段階ホットワード検出器220は、ユーザデバイス102上で実行される場合、第1のオーディオセグメント121に対して音声認識を実行することによってホットワードの存在を検出するオンデバイスASRエンジンとして、または音声認識を実行せずに第1のオーディオセグメント121内のホットワードの存在を検出するために第1段階ホットワード検出器210によって実装されるホットワード検出モデルのより大きいバージョンとして実装することができる。
【0036】
図2は、第1段階ホットワード検出器210と、第2段階ホットワード検出器220と、オプションで初期粗ホットワード検出器205とを含む図1のカスケードホットワード検出アーキテクチャ200の一例を提供する。いくつかの例において、ユーザデバイス102がバッテリ駆動デバイスである場合、ユーザデバイス102のデータ処理ハードウェア103は、第1のプロセッサ60(例えば、デジタル信号プロセッサ(DSP))と、第2のプロセッサ70(例えば、アプリケーションプロセッサ(AP))とを集合的に含む。第1のプロセッサ60は、第2のプロセッサ70が動作中に消費するよりも少ない電力を動作中に消費する。本明細書で使用される場合、第1のプロセッサ60は、DSPと互換的に呼ばれる場合があり、第2のプロセッサ70は、「AP」または「デバイスSoC」と互換的に呼ばれる場合がある。初期粗ホットワード検出器205は、第1のプロセッサ60上で実行され得、第1段階ホットワード検出器210は、第2のプロセッサ70上で実行され得る。第2段階ホットワード検出器220は、サーバにおける向上した処理能力を活用するサーバ側のホットワード確認を提供するために、ユーザデバイス102と通信するサーバ(例えば、リモートシステム110)上で実行され得る。代替的には、第2段階ホットワード検出器220は、カスケードホットワード検出アーキテクチャ全体をオンデバイスで実装するために、ユーザデバイス102の第2のプロセッサ70上で実行され得る。
【0037】
一般に、粗ホットワード検出器205は、専用DSP60上に存在し、第1段階ホットワード検出器210に関連するモデルよりも小さいモデルサイズを含み、ホットワード検出のために入力ストリーミングオーディオ118を粗くスクリーニングするために計算上効率的である。したがって、専用DSP60(例えば、第1のプロセッサ)は、粗ホットワード検出器205がマルチチャネルオーディオ118内のホットワード候補を粗くスクリーニングするために常時実行されているように「常時オン」であり得、一方、メインAP70(例えば、第2のプロセッサ)を含むユーザデバイス102の他の構成要素は、バッテリ寿命を節約するためにスリープ状態/モードにある。一方、第1段階ホットワード検出器210は、メインAP70上に存在し、粗ホットワード検出器205によって初期に検出されたホットワードのより正確な検出を提供するために、粗段階ホットワード検出器205よりも大きいモデルサイズを含み、粗段階ホットワード検出器205よりも多くの計算出力を提供する。したがって、第1段階ホットワード検出器210は、オーディオ118内にホットワードが存在するかどうかを判定する際に、より厳格であり得る。DSP60が「常時オン」である間、より多くの電力を消費するメインAP70は、DSP60における粗ホットワード検出器205がストリーミングオーディオ118内の候補ホットワードを検出するまで、バッテリ寿命を確保するためにスリーブモードにおいて動作する。したがって、一度候補ホットワードが検出されると、DSP60は、メインAP70がスリープモードから第1段階ホットワード検出器210を実行するためのホットワード検出モードに移行するようにトリガする。
【0038】
ストリーミングオーディオ118を受信すると、常時オンのDSP60は、ストリーミングオーディオ118のそれぞれのオーディオ特徴においてホットワードが検出されるかどうかを判定するために、粗ホットワード検出器205を実行する(execute)/実行する(run)。特に、AP70は、マルチチャネルオーディオがDSP60において受信されたとき、およびDSP60がストリーミングオーディオ118のそれぞれのオーディオ特徴を処理している間、スリープモードにおいて動作し得る。
【0039】
粗ホットワード検出器205がストリーミングオーディオ118内のホットワードを検出すると、DSP60は、切り取られたオーディオデータ120をAP70に提供する。いくつかの例において、切り取られたオーディオデータ120をAP70に提供するDSP60は、AP70がスリープモードからホットワード検出モードに移行するようにトリガする/呼び出す。いくつかの実装形態において、ストリーミングオーディオ118から切り取られたオーディオデータ120は、ストリーミングオーディオ118内の粗ホットワード検出器205によって検出されたホットワードを特徴付ける第1のセグメント121を含む。すなわち、第1のセグメントは、検出されたホットワードを安全に含むのに十分な持続時間を含む。追加的に、オーディオデータ212は、話されたクエリを含むオーディオの持続時間を含み得る、第1のセグメント121に続く第2のセグメント122を含む。粗ホットワード検出器205は、オプションであり、第1段階ホットワード検出器210は、ストリーミングオーディオ118内のホットワードイベントを最初に検出し、第1および第2のセグメント121、122を含むオーディオデータ120を切り取り、切り取られたオーディオデータ120を第2段階ホットワード検出器220に提供し得る。
【0040】
オーディオデータ120の第1のセグメント121において第1段階ホットワード検出器210によってホットワードが検出されると、AP70は、ユーザデバイス102においてウェイクアッププロセスを開始し、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器220によってホットワードが検出されるかどうかを判定/確認する処理のために、オーディオデータ120を第2段階ホットワード検出器220に提供する。カスケードホットワード検出アーキテクチャ200が完全にオンデバイスで実装される例において、AP70は、オーディオデータ120を、同様にAP70上で実行される第2段階ホットワード検出器220に単純に渡す。第2段階ホットワード検出器220がサーバ110上に実装される他の例において、AP70は、ネットワーク104を介してオーディオデータ120を第2段階ホットワード検出器220に送信するようにユーザデバイス102に指示する。
【0041】
図1に戻って参照すると、いくつかの例において、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器220によってホットワードが検出されない(すなわち、確率スコアがホットワード検出しきい値を満たす)場合、リモートシステム110上で実行される否定的ホットワード分類器300は、オーディオデータ120の第1のセグメント121を、第1段階ホットワード検出器210によるストリーミングオーディオ118内のホットワードイベントの誤検出を引き起こした否定的ホットワード(例えば、ヘイ、プードル(Hey Poodle))を含むものとして分類する。第2段階ホットワード検出器220がユーザデバイス102上で実行される構成において、否定的ホットワード分類器300も、ユーザデバイス102上で実行され得る。否定的ホットワード分類器300は、否定的ホットワードを含むものとしてのオーディオデータ120の第1のセグメント121の分類を示す分類結果170を否定的ホットワード更新器400に提供し得る。分類結果170は、第1のオーディオセグメント121について第2段階ホットワード検出器220によって生成された確率スコア171、および/または否定的ホットワード更新器400が第1段階ホットワード検出器210を更新するのに有用であり得る対応する分類結果170に関連する他の関連情報172を提供し得る。他の関連情報172は、限定はしないが、発話119を話したユーザ10の話者特性を識別する話者識別スコア(例えば、話者埋め込み)、時刻および/または曜日を示すホットワードイベントのタイムスタンプ、ならびに否定的ホットワードとして第1のセグメント121を分類するための信頼度を示す否定的ホットワード信頼度スコア304(図3)を含み得る。図示の例において、否定的ホットワード更新器400は、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器210を更新することによって、ユーザデバイス102におけるホットワード検出をパーソナライズするためにユーザデバイス102において実行される。
【0042】
分類結果170を否定的ホットワード更新器400に送信することは、否定的ホットワード(例えば、ヘイ、プードル(Hey Poodle))を含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、否定的ホットワード更新器400に第1段階ホットワード検出器210を更新させ得る。いくつかの実装形態において、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器220によってホットワードが検出されない場合、リモートシステム110(またはユーザデバイス102)は、ストリーミングオーディオ118内のホットワードおよび/またはホットワードに続く1つもしくは複数の他の用語を処理するためのユーザデバイス102におけるウェイクアッププロセスを抑制する。いくつかの実装形態において、リモートシステム110は、ユーザデバイス102にウェイクアッププロセスを抑制させる抑制命令160をユーザデバイス102に送信することによって、ウェイクアッププロセスを抑制する。他の実装形態において、オーディオデータ120の第1のセグメント121が否定的ホットワードを含むことを示す分類結果170の提供は、ユーザデバイス102にウェイクアッププロセスを抑制させる。さらに他の実装形態において、リモートシステム110は、オーディオデータ120を受信した後、ユーザデバイス102に応答しないことによって(例えば、ネットワーク接続を閉じることによって)ウェイクアッププロセスを抑制する。リモートシステム110からの応答の欠如は、ユーザデバイス102にウェイクアッププロセスを抑制させ得る。すなわち、ユーザデバイス102は、いくつかの例において、ホットワードがストリーミングオーディオ118内に存在したという第2段階ホットワード検出器220からの確認を受信した場合にのみ、ウェイクアッププロセスを開始する。ユーザデバイス102は、ウェイクアッププロセスを独立して抑制し得る。例えば、ホットワードに続くクエリまたはコマンドが空である場合、ユーザデバイス102は、ウェイクアッププロセスを自動的に抑制し得る(すなわち、ホットワードに続くストリーミングオーディオ118は、ユーザデバイス102に向けられたコマンドまたはクエリを含まない)。
【0043】
いくつかのシナリオにおいて、第2段階ホットワード検出器220がオーディオデータ120の第1のセグメント121内のホットワードの存在を検出しないためにウェイクアッププロセスを抑制した後、否定的ホットワード分類器300は、即時のフォローアップクエリがユーザデバイス102のユーザ10によって提供されたかどうかを判定する。この判定は、第1段階ホットワード検出器210によって検出された後続のホットワードイベントが第2段階ホットワード検出器220によって受信されない場合に行われ得る。ここで、ユーザ10が即時のフォローアップクエリを提供しなかったという判定は、ユーザ10が以前に発話119においてホットワードを話すことを意図しておらず、ホットワードとして指定された特定の用語/フレーズ(「ヘイ、グーグル(Hey Google)」)に類似する発音を有する用語(「ヘイ、プードル(Hey Poodle)」)を話したという追加の確認として役立つ。したがって、オーディオデータ120の第1のセグメント121を、否定的ホットワードを含むものとして分類することは、ウェイクアッププロセスを抑制した後にユーザデバイス102からフォローアップクエリが受信されなかったという判定にさらに基づき得る。
【0044】
追加の例において、第2段階ホットワード検出器220が、ユーザ10が別の類似して聞こえるフレーズ(「ヘイ、プードル(Hey Poodle)」)を実際に話したにもかかわらず、オーディオデータ120の第1のセグメント121内のホットワード(「ヘイ、グーグル(Hey Google)」)の存在を検出した(すなわち、確率スコアがホットワード検出しきい値を満たす)場合、オーディオデータ120の第2のセグメント122(およびオプションで第1のセグメント121)は、クエリプロセッサ180に提供される。ここで、クエリプロセッサ180は、オーディオデータ120の第2のセグメント122が口頭のクエリタイプの発話を示すかどうかを判定するために、オーディオデータ120の第2のセグメント122を処理する。第2段階ホットワード検出器220がASRエンジンとして実装される例において、クエリプロセッサ180は、第2のセグメント122がクエリタイプの発話を示すかどうかを判定するために、意味解析を実行することによって、結果として生じる音声認識結果を処理する。他の例において、第2段階ホットワード検出器220がホットワード検出モデルとして実装される場合、クエリプロセッサ180は、音声認識を実行し、次いで音声認識結果に対して意味解析を実行することによってオーディオデータ120の第2のセグメント122を処理するASRエンジンとして実装される。本明細書で使用される場合、クエリタイプの発話は、ユーザデバイス102に向けられた発話、例えば、動作またはアクションを実行するためにデジタルアシスタントに問い合わせるためのデジタルアシスタントインターフェースに向けられた発話に対応する。したがって、オーディオデータ120の第2のセグメント122がクエリタイプの発話を示す場合、第2段階ホットワード検出器220がオーディオデータ120の第1のセグメント121内のホットワードの存在を検出する上で正確であった高い尤度が存在する。そうでなく、クエリプロセッサ180が、第2のセグメント122がクエリタイプの発話を示していないと判定した場合、第2段階ホットワード検出器220が第1のセグメント121内のホットワードの存在を検出する上で不正確であった高い尤度が存在する。
【0045】
クエリプロセッサ180は、第2のセグメント122がクエリタイプの発話を示すかどうかを示すスコア182を提供し得る。いくつかの例において、スコア182は、2値であり、ゼロまたは1のスコア182がクエリタイプの発話を示し、ゼロまたは1のうちの他方のスコア182はクエリタイプの発話を示さない。他の例において、スコア182は、第2のセグメント122がクエリタイプの発話を示す尤度(例えば、確率)を提供する。ここで、スコア182がクエリタイプの発話しきい値を満たさない場合、第2のセグメント122は、クエリタイプの発話を示さない場合がある。図示の例において、否定的ホットワード分類器300は、オーディオデータ120の第1のセグメント121が否定的ホットワードを含むものとして分類されるべきかどうかを判定するために、第2段階ホットワード検出器220によって行われた判定に加えて、スコア182を入力として受信し得る。
【0046】
したがって、否定的ホットワード分類器300が、オーディオデータの第2のオーディオセグメント122が口頭のクエリタイプの発話を示さないという指示をクエリプロセッサ180から受信すると、否定的ホットワード分類器300は、オーディオデータ120の第1のセグメント121を、第2段階ホットワード検出器220が偽受容を提供したことを示す否定的ホットワードを含むものとして分類し得る。否定的ホットワード分類器300は、第1のセグメント121について第2段階ホットワード検出器220によって生成された確率スコア171を追加で受信し得、それによって、ホットワード検出しきい値を狭いマージンで満たすだけの確率スコアが、第1のセグメント121を否定的ホットワードを含むものとして分類するように否定的ホットワード分類器300にさらにバイアスをかける場合がある。さらに、クエリプロセッサ180が、第2のセグメント122がクエリタイプの発話を示していないと判定した後、否定的ホットワード分類器300はまた、即時のフォローアップクエリがユーザデバイスのユーザ10によって提供されたかどうかを判定し得る。上記で論じたように、ユーザ10が即時のフォローアップクエリを提供しなかったという判定は、ユーザが発話119においてホットワードを話すことを意図しておらず、ホットワードとして指定された特定の用語/フレーズ(「ヘイ、グーグル(Hey Google)」)に類似する発音を有する用語(「ヘイ、プードル(Hey Poodle)」)を話したという追加の確認として役立つ。したがって、オーディオデータ120の第1のセグメント121を、否定的ホットワードを含むものとして分類することは、ユーザデバイス102からフォローアップクエリが受信されなかったという判定にさらに基づき得る。
【0047】
いくつかの例において、第1段階ホットワード検出器210によって検出されたホットワードイベントを特徴付けるオーディオデータ120を受信した後、リモートシステム110は、ユーザデバイス102におけるウェイクアッププロセスのユーザ抑制を示す否定的ユーザ対話162を受信する。すなわち、ユーザが否定的ホットワード(「ヘイ、プードル(Hey Poodle)」)を話したときにホットワードイベントを検出する際の第1段階ホットワード検出器210による偽受容インスタンスは、第2段階ホットワード検出器220がホットワードの存在を確認または拒否するのを待つ間に、ユーザデバイス102が最初にウェイクアップするようにトリガし得る。ここで、ユーザデバイス102は、ユーザデバイス102がウェイクアップしていることをユーザに通知するために、可聴通知および/または視覚通知を提供し得、ユーザ10は、ウェイクアッププロセスをトリガすることを意図していなかったので、ユーザ10は、デバイス102をスリープ状態に戻すために、否定的ユーザ対話162を提供し得る。例えば、ユーザ10は、ユーザデバイス上の物理的ボタンを押下するか、ジェスチャを提供するか、またはユーザデバイス102がディスプレイを含む場合、ユーザデバイス102にスリープ状態に戻させるディスプレイ上に表示されたグラフィカルユーザインタフェース内にレンダリングされたグラフィックを選択し得る。いくつかの実装形態において、否定的ホットワード分類器300は、オーディオデータ120の第1のセグメント121を否定的ホットワードを含むものとして分類するための入力として、ユーザデバイスにおけるウェイクアッププロセスのユーザ抑制を示す否定的ユーザ対話162を使用する。
【0048】
いくつかの追加の例において、クエリプロセッサ180が、オーディオデータ120の第2のセグメント122が口頭のクエリタイプの発話を示していると判定した場合、クエリプロセッサ180は、オーディオデータ120の第2のセグメント122の転写を含むクエリ185を検索エンジン190(または他の下流アプリケーション)に提供する。ここで、検索エンジン190は、クエリ185に応答する結果192をユーザデバイス102に提供し戻す。ここで、ユーザが「ヘイ、プードル(Hey Poodle)」と話したときに第1段階ホットワード検出器210が偽陽性ホットワードインベントを検出した後、オーディオデータ120の第2のセグメント122がストリーミングオーディオ118においてユーザデバイス102によって捕捉された背景音声または他の背景オーディオに対応したとしても、クエリプロセッサ180は、第2のセグメント122を、クエリタイプの発話を示すものとして識別した場合がある。この背景オーディオは、ストリーミングオーディオ118において捕捉され得、クエリプロセッサ180は、クエリタイプの発話を識別し得、結果192を取得するために、対応するクエリ185を検索エンジン190に提供し得る。結果192は、ユーザ10がユーザデバイス102を呼び出すことを決して意図していなかったとしても、ユーザデバイス102によって可聴的および/または視覚的にユーザ10に出力され得る。結果として、ユーザ10は、ユーザ10が結果192に対して否定的に対話したことを示す否定的ユーザ対話162を提供し得る。例えば、ユーザ10は、ユーザ10が結果に困惑されていることを示す口頭の入力、またはユーザ10がクエリを提供しなかったという声明を提供し得る。追加的または代替的に、ユーザ10は、結果192を却下するための命令/コマンドを示す入力指示を提供し得る。
【0049】
他のシナリオにおいて、結果192は、ユーザ10がアクションを実行するための確認を提供する必要があることをデバイス102からの可聴出力のために述べるデジタルアシスタントからのプロンプト、例えば、「あなたは、現在の天気を尋ねました、それは正しいですか(You asked for the current weather, is that correct?)」であり、それによって、否定的ユーザ対話は、ユーザ10が「いいえ、私は、天気について尋ねませんでした(No, I did not ask about the weather)」と話すことである可能性がある。同様に、結果192は、クエリプロセッサ180がクエリに自信がなかったので、クエリを繰り返すようにユーザに要求するプロンプト、例えば、「私は、あなたの質問が理解できません、繰り返してください(I did not understand your question, please repeat?)」である可能性があり、それによって、否定的ユーザ対話は、ユーザ10が「えっ(Huh)」と発することによって混乱を表現すること、ユーザ10が「私は、なにも尋ねなかった(I did not ask anything)」と話すことによってプロンプトを肯定的に却下すること、または単にユーザが所定の時間期間内に応答しないことである可能性がある。したがって、オーディオデータ120の第1のセグメントにおいて第2段階ホットワード検出器220によってホットワードが検出されなかったことの指示、オーディオデータ120の第2のセグメント122がクエリタイプの発話に関連付けられていないことの指示、またはウェイクアッププロセスが抑制された後、ユーザ10が即時のフォローアップクエリを提供しなかったことの指示などの、上記で論じた他の入力のうちの1つまたは複数に加えて、否定的ユーザ対話162は、否定的ホットワード分類器300に提供され得る。
【0050】
図3は、オーディオデータ120の第1のセグメント121が否定的ホットワードとして分類されるべきかどうかの判定を行うための1つまた複数の入力特徴302を受信する図1の否定的ホットワード分類器300の一例を示す。否定的ホットワード分類器300が、1つまたは複数の入力特徴302に基づいて、オーディオの第1のセグメント121が否定的ホットワードとして分類されるべきであると判定した場合、否定的ホットワード分類器300は、図1において上記で論じたように、否定的ホットワードとしてのオーディオデータ120の第1のセグメント121の分類を示す分類結果170を生成する。否定的ホットワード分類器300によって受信される1つまたは複数の入力特徴302は、限定はしないが、第2のホットワード検出器220がオーディオデータ120の第1のセグメント121内のホットワードの存在を検出したかどうかおよび/または確率スコア171、即時のフォローアップクエリがユーザデバイス102から受信されたかどうか、オーディオデータ120の第2のセグメント122が、(例えば、第2のセグメント122がクエリタイプの発話を示すかどうかを示すスコア182を提供することによって)第2のセグメント122がクエリタイプの発話を含むかどうかを示すスコア182の指示を提供されたかどうか、オーディオデータ120の第1のセグメント121および/または第2のセグメント122の転写、ならびにユーザデバイス102におけるウェイクアッププロセスのユーザ抑制を示す否定的ユーザ対話162、および/または(例えば、クエリ185を検索エンジン190または他の下流アプリケーションに提供して)ユーザ10がクエリタイプの発話としてオーディオデータ120の第2のセグメント122(および/またはオプションで第1のセグメント121)を処理することに応答した結果192と否定的に対話したことを示す否定的ユーザ対話162が受信されたかどうかを含む。
【0051】
いくつかの入力特徴302は、オーディオデータ120の第1のセグメント121が否定的ホットワードとして分類されるべきであると判定した場合、より重く重み付けされ得る。例えば、第2段階ホットワード検出器220が第1のセグメント121内のホットワードの存在を検出できないことは、第1のセグメント121が第1段階ホットワード検出器210において偽受容を引き起こした否定的ホットワードを含むことを強く示す。確率スコア171の大きさは、分類結果170にバイアスをかける場合がある。例えば、確率スコア171が第2段階ホットワード検出器220におけるホットワード検出しきい値を広いマージンで満たさないことは、確率スコア171がホットワード検出しきい値を小さいマージンで満たさない場合よりも、否定的ホットワードのより高い尤度を提供する。
【0052】
いくつかの構成において、否定的ホットワード分類器300は、オーディオデータ120の第1のセグメント121が否定的ホットワードを含む尤度を示す否定的ホットワード信頼度スコア304を生成するように構成された(機械学習を介してトレーニングされたニューラルネットワークモデルを含み得る)トレーニング済み分類器を含む。分類器300は、否定的ホットワード信頼度スコア304が信頼度しきい値を満たす場合、第1のセグメント121を、否定的ホットワードを含むものとして分類し得る。否定的ホットワード信頼度スコア304は、否定的ホットワードを含む後続のオーディオ内のホットワードイベントを検出しないように第1段階ホットワード検出器210を更新する際に使用するために、図1の否定的ホットワード更新器400によって受信される分類結果170内に含まれ得る。いくつかの例において、否定的ホットワード信頼度スコア304は、オーディオデータ120の第1のセグメント121が否定的ホットワードを含み、したがって、否定的ホットワードとして分類されるべきであること、または第1のセグメント121が否定的ホットワードを含まないことを示す2値スコアである。
【0053】
図1および図4を参照すると、いくつかの例において、否定的ホットワード更新器400は、オーディオデータ120の第1のセグメント121を含む分類結果170をユーザデバイス102に提供することによって、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器210を更新する。ここで、ユーザデバイス102は、否定的ホットワードを含むものとして分類されたオーディオデータ120の第1のセグメント121を使用して、第1段階ホットワード検出器210を保持するように構成され得る。例えば、オーディオデータ120の第1のセグメント121は、否定的ホットワードとしてラベル付けされ得、第1段階ホットワード検出器210が否定的ホットワード(「ヘイ、プードル(Hey Poodle)」)を含む後続のオーディオデータ内のホットワード(「ヘイ、グーグル(Hey Google)」)の存在を検出しないように学習するように、第1段階ホットワード検出器210へのトレーニング入力として提供され得る。本明細書で使用される場合、第1段階ホットワード検出器210を再トレーニングすることは、最初にホットワードイベントを誤って検出したユーザデバイス102上で実行される既存のホットワード検出器210を再トレーニングすることを含み得、または後にユーザデバイス102にプッシュされる新しい第1段階ホットワード検出器210を含み得る。
【0054】
さらに、第1段階ホットワード検出器210を更新することは、ユーザデバイス102がバッテリ駆動デバイスを含む場合、DSP60(図2)上で実行されるオプションの初期粗ホットワード検出器205を更新することも含み得る。第1段階ホットワード検出器210と同様に、初期粗ホットワード検出器205を更新することは、否定的ホットワードを含むオーディオデータに関するホットワードイベントをトリガすることを防止するために、初期粗ホットワード検出器205を再トレーニングすることを含み得る。いくつかの例において、否定的ホットワードを含む後続のオーディオデータ内でホットワードイベントをトリガすることを防止するために、初期粗ホットワード検出器205のみが更新される。
【0055】
図4に示すように、ユーザデバイス102上で実行される否定的ホットワード更新器400は、否定的ホットワード分類器300によって対応する否定的ホットワードを含むものとして分類されたオーディオデータ120の第1のセグメント121の各インスタンスを、メモリハードウェア105内に記憶する。図示の例において、ユーザデバイス102は、各インスタンスについて対応する分類結果170を記憶することによって、オーディオデータ120の第1のセグメント121が否定的ホットワードとして分類された各インスタンスを記憶する。ここで、分類結果170は、否定的ホットワードを含むものとして分類された第1のセグメント121と、第1のセグメント121が実際のホットワードを含む尤度を示す確率スコア171と、発話119の転写、発話119を話したユーザ10の話者特性を識別する話者識別スコア(例えば、スピーカ埋め込み)、時刻および/または曜日を示すホットワードイベントのタイムスタンプ、ならびに第1のセグメント121を否定的ホットワードとして分類するための信頼度を示す否定的ホットワード信頼度スコア304(図3)などの他の関連情報172とを含む。図示の例において、ユーザデバイス102は、各々が異なる対応する否定的ホットワードに関連付けられた1つまたは複数の分類結果170を記憶する。例えば、ユーザ10によって話されたとき、指定されたホットワード「ヘイ、グーグル(Hey Google)」と類似して発音される否定的ホットワード「プードル(Poodle)」、「ドゥードル(Doodle)」、および「ヌードル(Noodle)」の各々について、もう1つの分類結果170Aa~n、170Ba~n、170Ca~nが記憶され得る。
【0056】
いくつかの実装形態において、ユーザデバイス102は(否定的ホットワード更新器400を介して)、メモリハードウェア105内に記憶された否定的ホットワードを含むものとして分類されたオーディオデータ120の第1のセグメント121のインスタンスの数(例えば、分類結果170の数)の集計に基づいて、第1段階ホットワード検出器210を再トレーニングするように構成される。ここで、しきい値インスタンス数を満たす同じホットワードを含むものとして分類されたオーディオデータのインスタンスの数は、第1段階ホットワード検出器210によって、指定されたホットワードとして誤って検出された否定的ホットワードをユーザ10が定期的に話しているというパターンを確立し得る。いくつかの例において、ユーザデバイス102は、スコアに関連付けられた否定的ホットワード信頼度スコア304が比較的低い場合、例えば、否定的ホットワード信頼度スコア304が狭いマージンしきい値を満たすだけの場合、ユーザ10が同じ用語を話すことから結果として生じる、指定された数の偽受容インスタンスを要求する。
【0057】
図4への参照を続けると、いくつかの例において、否定的ホットワード更新器400は、メモリハードウェア105内に記憶された各分類結果170に埋め込み表現12を付加し得る。ここで、第1段階ホットワード検出器210は、第1段階ホットワード検出器210によって検出されたホットワードイベントを特徴付ける任意のオーディオデータについて埋め込み表現12を計算し得、オーディオデータ120がその後、否定的ホットワード分類器300によって否定的ホットワードを含むものとして分類されると、否定的ホットワード更新器400は、分類結果170の対応するインスタンスに埋め込み表現12を付加し得る。いくつかの実装形態において、否定的ホットワード更新器400は、各対応する否定的ホットワードについて参照埋め込み15を生成するために、各対応する否定的ホットワードについてメモリハードウェア105内に記憶された埋め込み表現12を集約/平均する。例えば、対応する参照埋め込み15は、否定的ホットワード「プードル(Poodle)」、「ヌードル(Noodle)」、および「ドゥードル(Doodle)」の各々について生成され得る。
【0058】
図5は、ユーザデバイス102が、用語「マイプードル(My Poodle)」を含み、第1段階ホットワード検出器210に別のホットワードイベントを誤検出させる、ユーザ10によって話された別の発話519に対応する後続のオーディオデータ120を捕捉する例を示す概略図500を示す。ユーザデバイス102で実行される第1段階ホットワード検出器210は、後続のオーディオデータ120(例えば、ホットワードイベントを特徴付ける後続のオーディオデータ120の部分)について評価埋め込み表現18を計算する。ユーザデバイス102は、否定的ホットワード(例えば、「プードル(Poodle)」、「ヌードル(Noodle)」、および「ドゥードル(Doodle)」)のうちの1つとして分類されたオーディオデータ120の対応する第1のセグメント121の埋め込み表現12を各々が含み得る、メモリハードウェア105内に記憶された分類結果170に同時にアクセスし得る。追加的または代替的に、ユーザデバイス102は、図4を参照して上記で説明したように、否定的ホットワードの各々について生成された対応する参照埋め込み15にアクセスし得る。
【0059】
いくつかの実装形態において、スコアラ510は、後続のオーディオデータ120について計算された評価埋め込み表現18を、否定的ホットワードの各々について生成および記憶された参照埋め込み15のすべてと比較する。これらの実装形態において、各否定的ホットワード「プードル(Poodle)」、「ヌードル(Noodle)」、および「ドゥードル(Doodle)」に関連付けられた参照埋め込み表現12、15は、他の否定的ホットワードに関連付けられた参照埋め込みのクラスタとは異なる埋め込み表現空間においてすべて一緒にクラスタ化される。したがって、スコアラ510は、否定的ホットワードのいずれかとして分類されたオーディオデータ120の各第1のセグメント121について計算された参照埋め込み表現12と、後続のオーディオデータ120に関する評価埋め込み表現18との間の類似度スコア515を決定し得る。追加的または代替的に、スコアラ510は、否定的ホットワード(例えば、「プードル(Poodle)」、「ドゥードル(Doodle)」、および「ヌードル(Noodle)」)のうちの対応する1つに関する集約/平均埋め込み表現を表す各対応する参照埋め込み表現15間の類似度スコア515を決定し得る。いくつかの例において、各類似度スコア515は、埋め込み表現空間内の評価埋め込み表現18と参照埋め込み表現12、15との間の距離(例えば、コサイン距離)に関連付けられる。
【0060】
スコアラ510が類似度スコア515を決定/生成した後、分類器520は、各類似度スコア515を類似度スコアしきい値と比較し得、類似度スコア515が類似度スコアしきい値を満たす場合、後続のオーディオデータ120を、否定的ホットワードを含むものとして決定/分類し得る。いくつかの例において、類似度スコアしきい値は、同じ否定的ホットワードに関連付けられた埋め込み表現間の最大許容コサイン距離を表す。いくつかのシナリオにおいて、類似度スコア515が後続のオーディオに関する評価埋め込み18と否定的ホットワードとして分類されているオーディオデータ120の第1のセグメント121の各インスタンスについて計算された対応する参照埋め込み表現12との間で計算される場合、複数の類似度スコア515が類似度スコアしきい値を満たす場合がある。例示するために、図示の例において、評価埋め込み18と否定的ホットワード「プードル(Poodle)」として分類された対応する参照埋め込み表現12との間の類似度スコア515は、評価埋め込み18が否定的ホットワードプードル(Poodle)として分類された埋め込み表現12のクラスタに入り、他の否定的ホットワード「ドゥードル(Doodle)」および「ヌードル(Noodle)」として分類された埋め込み表現12のクラスタの外部にあることを示すために、類似度スコアしきい値を満たす。したがって、分類器520が、類似度スコア515が類似度しきい値を満たすと判定した場合、分類器520は、後続のオーディオデータ120が否定的ホットワードを含むと判定する。結果として、分類器520は、第1段階ホットワード検出器210がホットワードイベントを肯定的に誤検出し、ユーザデバイスにおけるウェイクアッププロセスの開始をトリガした場合、後続のオーディオデータ内のホットワードイベントを検出することを抑制するように第1段階ホットワード検出器210に指示し得、またはユーザデバイス102にスリープ状態に戻るように指示し得る。
【0061】
図6は、ホットワード検出器によるホットワード検出偽陽性の以前のインスタンスを引き起こした特定の用語を否定的ホットワードとして分類することに基づいて、ユーザデバイス上のホットワード検出器をパーソナライズする方法600の例示的な動作のフローチャートを提供する。動作602において、方法600は、データ処理ハードウェア103、112において、ユーザデバイス102によって捕捉されたストリーミングオーディオ118において第1段階ホットワード検出器210によって検出されたホットワードイベントを特徴付けるオーディオデータ120を受信するステップを含む。第1段階ホットワード検出器210は、ユーザデバイス102のデータ処理ハードウェア103のデジタル信号プロセッサ(DSP)上で実行され得、またはユーザデバイス102のデータ処理ハードウェア103のアプリケーションプロセッサ上で実行され得る。
【0062】
動作604において、方法600は、データ処理ハードウェア103、112によって、第2段階ホットワード検出器220を使用して、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器220によってホットワードが検出されるかどうかを判定するために、オーディオデータ120を処理するステップを含む。第2段階ホットワード検出器220は、第1のセグメント121内でホットワードが認識されるかどうかを判定するために自動音声認識を実行するASRエンジンとして実装され得る。第2段階ホットワード検出器220は、他の構成におけるホットワード検出モデルとして実装され得、それによって、ホットワード検出モデルは、音声認識を実行することなく、第1のセグメント121においてホットワードが検出されるかどうかを判定する。
【0063】
動作606において、オーディオデータ120の第1のセグメント121において第2段階ホットワード検出器220によってホットワードが検出されない場合、方法600は、データ処理ハードウェア103、112によって、オーディオデータ120の第1のセグメント121を、第1段階ホットワード検出器210によるストリーミングオーディオ118内のホットワードイベントの誤検出を引き起こした否定的ホットワードを含むものとして分類するステップを含む。動作608において、方法600は、データ処理ハードウェア103、112によって、否定的ホットワード含む後続のオーディオデータ120内でホットワードイベントをトリガすることを防止するために、第1段階ホットワード検出器210を更新するステップを含む。
【0064】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指す場合がある。いくつかの例において、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれる場合がある。例示的なアプリケーションは、限定はしないが、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションを含む。
【0065】
図7は、本開示において説明するシステムおよび方法を実装するために使用され得る例示的なコンピューティングデバイス700の概略図である。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを意図している。ここに示す構成要素、それらの接続および関係、ならびにそれらの機能は、例示的であることのみを意図しており、本文書で説明および/または特許請求する発明の実装を限定することを意図していない。
【0066】
コンピューティングデバイス700は、プロセッサ710と、メモリ720と、記憶デバイス730と、メモリ720および高速拡張ポート750に接続する高速インターフェース/コントローラ740と、低速バス770および記憶デバイス730に接続する低速インターフェース/コントローラ760とを含む。構成要素710、720、730、740、750、および760の各々は、様々なバスを使用して相互接続され、共通のマザーボード上に取り付けられ得、または必要に応じて他の方法において取り付けられ得る。プロセッサ(例えば、データ処理ハードウェア)710は、高速インターフェース740に結合されたディスプレイ780などの外部入力/出力デバイス上にグラフィカルユーザインタフェース(GUI)のためのグラフィカル情報を表示するための、メモリ720(例えば、メモリハードウェア)内または記憶デバイス730上に記憶された命令を含む、コンピューティングデバイス700内で実行するための命令を処理することができる。他の実装形態において、複数のプロセッサおよび/または複数のバスが複数のメモリおよびメモリのタイプとともに、必要に応じて使用され得る。また、複数のコンピューティングデバイス700が接続され得、各デバイスが必要な動作の一部を提供する(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステム)。プロセッサ710は、図1のユーザデバイス102上に存在するデータ処理ハードウェア103、または図1のリモートシステム110上に存在するデータ処理ハードウェア112を含み得る。
【0067】
メモリ720は、コンピューティングデバイス700内に情報を非一時的に記憶する。メモリ720は、図1のユーザデバイス102上に存在するメモリハードウェア105、または図1のリモートシステム110上に存在するメモリハードウェア114を含み得る。メモリ720は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであり得る。非一時的メモリ720は、プログラム(例えば、命令のシーケンス)またはデータ(プログラム状態情報)を、コンピューティングデバイス700によって使用するために一時的または永続的に記憶するために使用される物理デバイスであり得る。不揮発性メモリの例は、限定はしないが、フラッシュメモリおよび読み取り専用メモリ(ROM)/プログラム可能読み取り専用メモリ(PROM)/消去可能プログラム可能読み取り専用メモリ(EPROM)/電気的消去可能プログラム可能読み取り専用メモリ(EEPROM)(例えば、典型的には、ブートプログラムなどのファームウェアに使用される)を含む。揮発性メモリの例は、限定はしないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープを含む。
【0068】
記憶デバイス730は、コンピューティングデバイス700のための大容量ストレージを提供することができる。いくつかの実装形態において、記憶デバイス730は、コンピュータ可読媒体である。様々な異なる実装形態において、記憶デバイス730は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであり得る。追加の実装形態において、コンピュータプログラム製品は、情報キャリア内に明白に具体化される。コンピュータプログラム製品は、実行されると、上記で説明されている方法などの、1つまたは複数の方法を実行する命令を含む。情報キャリアは、メモリ720、記憶デバイス730、またはプロセッサ710上のメモリなどの、コンピュータ可読媒体または機械可読媒体である。
【0069】
高速コントローラ740は、コンピューティングデバイス700のための帯域幅を消費する動作を管理し、低速コントローラ760は、より帯域幅を消費しない動作を管理する。そのような役割の割り当ては、単なる例示である。いくつかの実装形態において、高速コントローラ740は、メモリ720、(例えば、グラフィックスプロセッサまたはアクセラレータを介して)ディスプレイ780、および様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート750に結合される。いくつかの実装形態において、低速コントローラ760は、記憶デバイス730および低速拡張ポート790に結合される。様々な通信ポート(例えば、USB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含み得る低速拡張ポート790は、キーボード、ポインティングデバイス、スキャナ、または、例えば、ネットワークアダプタを介してスイッチもしくはルータなどのネットワーキングデバイスなどの、1つまたは複数の入力/出力デバイスに結合され得る。
【0070】
コンピューティングデバイス700は、図に示すように、いくつかの異なる形態において実装され得る。例えば、それは、標準的なサーバ700aとして、もしくはサーバ700aのグループ内で複数回、ラップトップコンピュータ700bとして、またはラックサーバシステム700cの一部として実装され得る。
【0071】
本明細書で説明されているシステムおよび技法の様々な実装形態は、デジタル電気および/もしくは光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはそれらの組合せにおいて実現することができる。これらの様々な実装形態は、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスにデータおよび命令を送信するように結合された、専用または汎用であり得る少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装形態を含むことができる。
【0072】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械語を含み、高級手続き型および/もしくはオブジェクト指向言語、ならびに/またはアセンブリ/機械語において実装することができる。本明細書で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置、および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0073】
本明細書で説明されているプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによって機能を実行するために1つまたは複数のコンピュータプログラムを実行する、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサによって実行することができる。プロセスおよび論理フローは、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行することもできる。コンピュータプログラムの実行に適したプロセッサは、例として、汎用および専用の両方のマイクロプロセッサ、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読み取り専用メモリ、またはランダムアクセスメモリ、またはその両方から命令とデータとを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサ、および命令とデータとを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを記憶するための1つまたは複数の大容量記憶デバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクも含むか、またはそれらからデータを受信、もしくはそれらにデータを送信、もしくはその両方を行うように動作可能に結合される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令とデータとを記憶するのに適したコンピュータ可読媒体は、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、例えば、内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完することができ、または専用論理回路の中に組み込むことができる。
【0074】
ユーザとの対話を提供するために、本開示の1つまたは複数の態様は、ユーザに情報を表示するための表示デバイス、例えば、CRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーンと、オプションで、ユーザがコンピュータに入力を提供することができるキーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールとを有するコンピュータ上に実装することができる。他の種類のデバイスも同様にユーザとの対話を提供するために使用することができ、ユーザに提供されるフィードバックは、任意の形態の感覚的フィードバック、例えば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックとすることができ、ユーザからの入力は、音響的入力、音声入力、または触覚的入力を含む任意の形態で受信することができる。それに加えて、コンピュータは、ユーザによって使用されるデバイスにドキュメントを送信し、そのデバイスからドキュメントを受信することによって、例えば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答して、ウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
【0075】
いくつかの実装形態について説明してきた。それにもかかわらず、本開示の要旨および範囲から逸脱することなく、様々な修正が行われ得ることが理解されよう。したがって、他の実装形態は、以下の特許請求の範囲内にある。
【符号の説明】
【0076】
10 ユーザ
12 埋め込み表現、参照埋め込み表現
15 参照埋め込み、参照埋め込み表現
18 評価埋め込み表現、評価埋め込み
60 第1のプロセッサ、専用DSP、DSP
70 第2のプロセッサ、メインAP
100 システム
102 ユーザデバイス
103 データ処理ハードウェア
104 ネットワーク
105 メモリハードウェア
106 マイクロフォン
110 リモートシステム
112 コンピューティングリソース、データ処理ハードウェア
114 ストレージリソース、メモリハードウェア
118 ストリーミングオーディオ、入力ストリーミングオーディオ、マルチチャネルオーディオ、オーディオ
119 発話
120 オーディオデータ
121 第1のセグメント、第1のオーディオセグメント
122 第2のセグメント
136 オーディオデータ
160 抑制命令
162 否定的ユーザ対話
170 分類結果
172 関連情報
180 クエリプロセッサ
182 スコア
185 クエリ
190 検索エンジン
192 結果
200 カスケードホットワード検出アーキテクチャ
205 初期粗大ホットワード検出器、粗ホットワード検出器、粗段階ホットワード検出器
210 第1段階ホットワード検出器、第1段階(精細)ホットワード検出器、ホットワード検出器
220 第2段階ホットワード検出器、第2のホットワード検出器
300 否定的ホットワード分類器、分類器
302 入力特徴
304 否定的ホットワード信頼度スコア
400 否定的ホットワードアップローダ
500 概略図
510 スコアラ
515 類似度スコア
519 発話
520 分類器
700 コンピューティングデバイス
700a サーバ
700b ラップトップコンピュータ
700c ラックサーバシステム
710 プロセッサ、構成要素
720 メモリ、構成要素、非一時的メモリ
730 記憶デバイス、構成要素
740 高速インターフェース/コントローラ、構成要素、高速インターフェース
750 高速拡張ポート、構成要素
760 低速インターフェース/コントローラ、構成要素
770 低速バス
780 ディスプレイ
図1
図2
図3
図4
図5
図6
図7