JP2023552855A - 話者依存フォローアップアクションおよびウォームワード - Google Patents

話者依存フォローアップアクションおよびウォームワード Download PDF

Info

Publication number
JP2023552855A
JP2023552855A JP2023535766A JP2023535766A JP2023552855A JP 2023552855 A JP2023552855 A JP 2023552855A JP 2023535766 A JP2023535766 A JP 2023535766A JP 2023535766 A JP2023535766 A JP 2023535766A JP 2023552855 A JP2023552855 A JP 2023552855A
Authority
JP
Japan
Prior art keywords
warm
user
speaker
words
utterance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023535766A
Other languages
English (en)
Inventor
マシュー・シャリフィ
ヴィクター・カルブネ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2023552855A publication Critical patent/JP2023552855A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • G10L15/07Adaptation to the speaker
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/06Decision making techniques; Pattern matching strategies
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

方法(500)が、デジタルアシスタント(105)が長期にわたる動作を実施するためのコマンド(118)を含むユーザ(102)によって話された発話(106)に対応するオーディオデータ(402)を受信することと、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられる1つまたは複数のウォームワード(112)のセットを活動化することと、活動化された1つまたは複数のウォームワードのセットをユーザのみに関連付けることとを含む。デジタルアシスタントが長期にわたる動作を実施している間に、方法は、追加の発話に対応する追加のオーディオデータを受信することと、活動化されたウォームワードのセットからのウォームワードのうちの1つを識別することと、追加のオーディオデータに関する話者検証(400)を実施することを含む。方法は、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたとき、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションを実施することをさらに含む。

Description

本開示は、話者依存フォローアップアクションおよびウォームワードに関する。
音声対応環境は、ユーザが照会またはコマンドを大声で言うことだけを可能にし、デジタルアシスタントが、照会を処理して照会に回答し、かつ/またはコマンドを実施させる。音声対応環境(たとえば、自宅、職場、学校など)は、環境の様々な部屋および/またはエリア全体にわたって分散した、接続されたマイクロフォンデバイスのネットワークを使用して実装され得る。マイクロフォンのそのようなネットワークを通じて、ユーザは、コンピュータまたは他のデバイスをユーザの前に、さらには近くに置くことを必要とせずに、環境内の本質的にどこからでもデジタルアシスタントに口頭で照会する能力を有する。たとえば、台所で調理中に、ユーザは、デジタルアシスタントに「20分のタイマを設定してください」と要請し得、それに応答して、デジタルアシスタントは、タイマが設定されたことを(たとえば、合成音声出力の形で)確認し、次いで、タイマが20分経過した後にユーザに(たとえば、音響スピーカからのアラームまたは他の可聴アラームの形で)警報する。多くの場合、所与の環境内には、様々なアクションを実施するようにデジタルアシスタントに照会/指令する多くのユーザがいる。こうしたユーザは、ユーザを識別してユーザごとのよりパーソナライズされた体験を実現することができるように、デジタルアシスタントで音声プロファイルを登録し得る。たとえば、デジタルアシスタントの複数の異なるユーザのうちの1人は、「私の音楽プレイリストを再生してください」というコマンドを話し得、それに応答して、デジタルアシスタントは、音声特徴をそのユーザについての音声プロファイルと突き合わせることによって特定のユーザを識別し、次いで音響スピーカを通じてその特定のユーザについての音楽プレイリストをストリーミングし得る。
本開示の一態様は、話者依存ウォームワードを活動化するための方法を提供する。方法は、データ処理ハードウェアにおいて、ユーザによって話され、ユーザに関連するアシスタント対応デバイスによって取り込まれた発話に対応するオーディオデータを受信することを含む。発話は、デジタルアシスタントが長期にわたる動作を実施するためのコマンドを含む。発話に対応するオーディオデータを受信した後、方法は、データ処理ハードウェアにより、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられる1つまたは複数のウォームワードのセットを活動化することと、データ処理ハードウェアにより、活動化された1つまたは複数のウォームワードのセットを、発話を話したユーザのみに関連付けることとを含む。デジタルアシスタントが長期にわたる動作を実施している間に、方法はまた、データ処理ハードウェアにおいて、アシスタント対応デバイスによって取り込まれた追加の発話に対応する追加のオーディオデータを受信することと、データ処理ハードウェアにより、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することと、データ処理ハードウェアにより、追加のオーディオデータに関する話者検証を実施して、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたかどうかを判定することとを含む。方法は、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたとき、データ処理ハードウェアにより、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションを実施することをさらに含む。
本開示の実装は、以下の任意選択の特徴のうちの1つまたは複数を含み得る。いくつかの実装では、1つまたは複数のウォームワードのセットを活動化することは、活動化された1つまたは複数のウォームワードのセット内のそれぞれの対応するウォームワードについて、それぞれのウォームワードモデルを活動化して、ユーザに関連付けられるアシスタント対応デバイス上で実行することを含む。こうした実装では、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することは、ウォームワードのうちの対応する1つについて活動化されたそれぞれのウォームワードモデルを使用して、追加のオーディオデータに関する音声認識を実施することなく、追加のオーディオデータ内のウォームワードのうちの1つを検出することを含む。追加のオーディオデータ内のウォームワードのうちの1つを検出することは、追加のオーディオデータのオーディオ特徴を抽出することと、ウォームワードのうちの対応する1つについて活動化されたそれぞれのウォームワードモデルを使用して、抽出されたオーディオ特徴を処理することによってウォームワード信頼スコアを生成することと、ウォームワード信頼スコアがウォームワード信頼しきい値を満たすとき、追加の発話に対応する追加のオーディオデータがウォームワードのうちの対応する1つを含むと判定することとを含み得る。
いくつかの例では、1つまたは複数のウォームワードのセットを活動化することは、アシスタント対応デバイス上で音声認識器を実行することを含む。音声認識器は、活動化された1つまたは複数のウォームワードのセット内の1つまたは複数のウォームワードを認識するようにバイアスされる。こうした例では、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することは、アシスタント対応デバイス上で実行中の音声認識器を使用して、追加のオーディオデータ内のウォームワードのうちの1つを認識することを含む。
いくつかの実装では、ユーザによって話された発話に対応するオーディオデータを受信した後、方法はまた、データ処理ハードウェアにより、オーディオデータに関する話者識別を実施して、発話を話したユーザを識別することをも含む。話者識別は、ユーザによって話された発話に対応するオーディオデータから、ユーザによって話された発話の特徴を表す第1の話者弁別ベクトルを抽出することと、抽出された話者弁別ベクトルが、アシスタント対応デバイス上に記憶された何らかの登録済み話者ベクトルに合致するかどうかを判定することとを含む。各登録済み話者ベクトルは、アシスタント対応デバイスの異なるそれぞれの登録済みユーザに関連付けられる。第1の話者弁別ベクトルが登録済み話者ベクトルのうちの1つに合致するとき、方法は、発話を話したユーザを、抽出された話者弁別ベクトルに合致する登録済み話者ベクトルのうちの1つに関連付けられるそれぞれの登録済みユーザとして識別することを含む。こうした実装では、ユーザによって話された発話は、デジタルアシスタントが長期にわたる動作を実施するためのコマンドに先行するホットワードをさらに含み、第1の話者弁別ベクトルは、ホットワードを含むオーディオデータの部分から抽出されたテキスト依存話者弁別ベクトルを含み、各登録済み話者ベクトルは、ホットワードを話すそれぞれの登録済みユーザの1つまたは複数のオーディオサンプルから抽出されたテキスト依存登録済み話者ベクトルを含む。追加の実装では、追加のオーディオデータに関する話者検証を実施することは、ウォームワードのうちの1つの追加の発話に対応する追加のオーディオデータから、追加の発話の特徴を表す第2の話者弁別ベクトルを抽出することと、抽出された第2の話者弁別ベクトルが、発話を話したユーザとして識別されたそれぞれの登録済みユーザについての基準話者ベクトルに合致するかどうかを判定することとを含む。ここでは、抽出された第2の話者弁別ベクトルが基準話者ベクトルに合致するとき、方法は、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたと判定することを含む。こうした実装では、基準話者ベクトルは、それぞれの登録済みユーザに関連付けられる登録済み話者ベクトルを含み得る。追加または代替として、基準話者ベクトルは、ウォームワードのうちの識別された1つを話すそれぞれの登録済みユーザの1つまたは複数のオーディオサンプルから抽出されたテキスト依存話者ベクトルを含む。
いくつかの例では、第1の話者弁別ベクトルが登録済み話者ベクトルのいずれにも合致しないとき、発話を話したユーザをアシスタント対応デバイスのゲストユーザとして識別すること、および追加のオーディオデータに関する話者検証を実施することは、追加のオーディオデータから、追加の発話の特徴を表す第2の話者弁別ベクトルを抽出することと、第2の話者弁別ベクトルが、特徴を表す第1の話者弁別ベクトルに合致するかどうかを判定することとを含む。こうした例では、方法は、第1の話者弁別ベクトルおよび抽出された第2の話者弁別ベクトルが合致するとき、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたと判定することを含む。追加の実装では、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザとは異なるユーザによって話されたとき、方法は、データ処理ハードウェアにより、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションの実施を抑制することを含む。
いくつかの例では、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザとは異なるユーザによって話されたとき、方法は、データ処理ハードウェアにより、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザに、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションの実施を許可するようにプロンプト指示することを含む。方法はまた、データ処理ハードウェアにおいて、それぞれのアクションの実施を許可するユーザからの確認を受信することと、データ処理ハードウェアにより、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションを実施することとを含む。ユーザにプロンプト指示することは、追加の発話を話した異なるユーザを識別することを含み得る。いくつかの実装では、方法は、データ処理ハードウェアにより、デジタルアシスタントが長期にわたる動作を実施することを停止したときを判定することと、データ処理ハードウェアにより、1つまたは複数のウォームワードのセットを非活動化することとをさらに含む。
本開示の別の態様は、話者依存ウォームワードを活動化するためのシステムを提供する。システムは、データ処理ハードウェアと、データ処理ハードウェアと通信しているメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェアによって実行されるとき、ユーザによって話され、ユーザに関連するアシスタント対応デバイスによって取り込まれた発話に対応するオーディオデータを受信することを含む動作をデータ処理ハードウェアに実施させる命令を記憶する。発話は、デジタルアシスタントが長期にわたる動作を実施するためのコマンドを含む。発話に対応するオーディオデータを受信した後、動作は、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられる1つまたは複数のウォームワードのセットを活動化することと、活動化された1つまたは複数のウォームワードのセットを、発話を話したユーザのみに関連付けることとを含む。デジタルアシスタントが長期にわたる動作を実施している間に、動作はまた、アシスタント対応デバイスによって取り込まれた追加の発話に対応する追加のオーディオデータを受信することと、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することと、追加のオーディオデータに関する話者検証を実施して、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたかどうかを判定することとを含む。動作は、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたとき、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションを実施することをさらに含む。
本開示の実装は、以下の任意選択の特徴のうちの1つまたは複数を含み得る。いくつかの実装では、1つまたは複数のウォームワードのセットを活動化することは、活動化された1つまたは複数のウォームワードのセット内のそれぞれの対応するウォームワードについて、それぞれのウォームワードモデルを活動化して、ユーザに関連付けられるアシスタント対応デバイス上で実行することを含む。こうした実装では、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することは、ウォームワードのうちの対応する1つについて活動化されたそれぞれのウォームワードモデルを使用して、追加のオーディオデータに関する音声認識を実施することなく、追加のオーディオデータ内のウォームワードのうちの1つを検出することを含む。追加のオーディオデータ内のウォームワードのうちの1つを検出することは、追加のオーディオデータのオーディオ特徴を抽出することと、ウォームワードのうちの対応する1つについて活動化されたそれぞれのウォームワードモデルを使用して、抽出されたオーディオ特徴を処理することによってウォームワード信頼スコアを生成することと、ウォームワード信頼スコアがウォームワード信頼しきい値を満たすとき、追加の発話に対応する追加のオーディオデータがウォームワードのうちの対応する1つを含むと判定することとを含み得る。
いくつかの例では、1つまたは複数のウォームワードのセットを活動化することは、アシスタント対応デバイス上で音声認識器を実行することを含む。音声認識器は、活動化された1つまたは複数のウォームワードのセット内の1つまたは複数のウォームワードを認識するようにバイアスされる。こうした例では、追加のオーディオデータ内で、活動化された1つまたは複数のウォームワードのセットからのウォームワードのうちの1つを識別することは、アシスタント対応デバイス上で実行中の音声認識器を使用して、追加のオーディオデータ内のウォームワードのうちの1つを認識することを含む。
いくつかの実装では、動作は、ユーザによって話された発話に対応するオーディオデータを受信した後、オーディオデータに関する話者識別を実施して、発話を話したユーザを識別することをさらに含む。話者識別は、ユーザによって話された発話に対応するオーディオデータから、ユーザによって話された発話の特徴を表す第1の話者弁別ベクトルを抽出することと、抽出された話者弁別ベクトルが、アシスタント対応デバイス上に記憶された何らかの登録済み話者ベクトルに合致するかどうかを判定することとを含む。各登録済み話者ベクトルは、アシスタント対応デバイスの異なるそれぞれの登録済みユーザに関連付けられる。第1の話者弁別ベクトルが登録済み話者ベクトルのうちの1つに合致するとき、動作は、発話を話したユーザを、抽出された話者弁別ベクトルに合致する登録済み話者ベクトルのうちの1つに関連付けられるそれぞれの登録済みユーザとして識別することを含む。こうした実装では、ユーザによって話された発話は、デジタルアシスタントが長期にわたる動作を実施するためのコマンドに先行するホットワードをさらに含み、第1の話者弁別ベクトルは、ホットワードを含むオーディオデータの部分から抽出されたテキスト依存話者弁別ベクトルを含み、各登録済み話者ベクトルは、ホットワードを話すそれぞれの登録済みユーザの1つまたは複数のオーディオサンプルから抽出されたテキスト依存登録済み話者ベクトルを含む。追加の実装では、追加のオーディオデータに関する話者検証を実施することは、ウォームワードのうちの1つの追加の発話に対応する追加のオーディオデータから、追加の発話の特徴を表す第2の話者弁別ベクトルを抽出することと、抽出された第2の話者弁別ベクトルが、発話を話したユーザとして識別されたそれぞれの登録済みユーザについての基準話者ベクトルに合致するかどうかを判定することとを含む。ここで、抽出された第2の話者弁別ベクトルが基準話者ベクトルに合致するとき、動作は、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたと判定することを含む。こうした実装では、基準話者ベクトルは、それぞれの登録済みユーザに関連付けられる登録済み話者ベクトルを含み得る。追加または代替として、基準話者ベクトルは、ウォームワードのうちの識別された1つを話すそれぞれの登録済みユーザの1つまたは複数のオーディオサンプルから抽出されたテキスト依存話者ベクトルを含む。
いくつかの例では、第1の話者弁別ベクトルが登録済み話者ベクトルのいずれにも合致しないとき、発話を話したユーザをアシスタント対応デバイスのゲストユーザとして識別すること、および追加のオーディオデータに関する話者検証を実施することは、追加のオーディオデータから、追加の発話の特徴を表す第2の話者弁別ベクトルを抽出することと、第2の話者弁別ベクトルが、特徴を表す第1の話者弁別ベクトルに合致するかどうかを判定することとを含む。こうした例では、動作は、第1の話者弁別ベクトルおよび抽出された第2の話者弁別ベクトルが合致するとき、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザによって話されたと判定することを含む。追加の実装では、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザとは異なるユーザによって話されたとき、動作は、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションの実施を抑制することを含む。
いくつかの例では、追加の発話が、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザとは異なるユーザによって話されたとき、動作は、活動化された1つまたは複数のウォームワードのセットに関連付けられるユーザに、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションの実施を許可するようにプロンプト指示することを含む。動作はまた、それぞれのアクションの実施を許可するユーザからの確認を受信することと、長期にわたる動作を制御するためのウォームワードのうちの識別された1つに関連付けられるそれぞれのアクションを実施することとを含む。ユーザにプロンプト指示することは、追加の発話を話した異なるユーザを識別することを含み得る。いくつかの実装では、動作は、デジタルアシスタントが長期にわたる動作を実施することを停止したときを判定することと、1つまたは複数のウォームワードのセットを非活動化することとをさらに含む。
本開示の1つまたは複数の実装の詳細が、添付の図面および以下の説明で述べられる。説明および図面、ならびに特許請求の範囲から、他の態様、特徴、および利点が明らかとなるであろう。
話者依存ウォームワードを使用して長期にわたる動作を制御するユーザを含む例示的システムの概略図である。 話者依存ウォームワードを使用して長期にわたる動作を制御するユーザを含む例示的システムの概略図である。 話者依存ウォームワードを使用して長期にわたる動作を制御するユーザを含む例示的システムの概略図である。 登録済みユーザデータを記憶する例示的データストアである。 ユーザデバイスの画面上にレンダリングされた例示的GUIである。 話者識別プロセスの概略図である。 話者検証プロセスの概略図である。 話者依存ウォームワードを活動化するための方法についての動作の例示的構成のフローチャートである。 本明細書において説明されるシステムおよび方法を実装するために使用され得る例示的コンピューティングデバイスの概略図である。
様々な図面内の同様の参照符号は同様の要素を示す。
アシスタント対応デバイスと対話するユーザの方式は、限定はしないが、主に音声入力によるものとなるように設計される。したがって、アシスタント対応デバイスは、周囲の環境内の所与の発話が、環境内の個人に向けられるのではなく、人間ではない音源(たとえば、テレビジョンまたは音楽プレーヤ)から生じているのでもなく、デバイスに向けられるときを区別する何らかの方式を有さなければならない。これを達成するための一方式は、環境内のユーザ間の合意によって、デバイスの注意を呼び起こすために話される所定のワードとして予約されるホットワードを使用することである。例示的環境では、アシスタントの注意を呼び起こすために使用されるホットワードは、「OKコンピュータ」というワードである。したがって、「OKコンピュータ」というワードが話される度に、ワードがマイクロフォンによって捕らえられ、ホットワード検出器に伝達され、ホットワード検出器は音声理解技法を実施して、ホットワードが話されたかどうかを判定し、そうである場合、続くコマンドまたは照会を待つ。したがって、アシスタント対応デバイスに向けられる発話は、[HOTWORD][QUERY]という一般形式を取り、ただし「HOTWORD」は、この例では「OKコンピュータ」であり、「QUERY」は、システム単独で、またはネットワークを介してサーバと共に音声認識され、解析され、それに基づいて行動され得る任意の質問、コマンド、宣言、または他の要求であり得る。
ユーザが携帯電話やスマートスピーカなどのアシスタント対応デバイスにいくつかのホットワードベースのコマンドを与えるケースでは、ユーザと電話またはスピーカとの対話はぎこちないものとなり得る。ユーザは、「okコンピュータ、私の宿題プレイリストを再生して」と話し得る。電話またはスピーカは、プレイリスト上の最初の歌の再生を開始し得る。ユーザは、次の歌に進むことを望み、「okコンピュータ、次」と話し得る。さらに別の歌に進むために、ユーザは、再び「okコンピュータ、次」と話し得る。コマンドを話す前にホットワードを繰り返し続ける必要を軽減するために、アシスタント対応デバイスは、限られたホットフレーズまたはウォームワードのセットを認識/検出して、それぞれのアクションを直接的にトリガするように構成され得る。この例では、「次」というウォームワードが、ホットワードとコマンドの2重の目的を果たし、したがってユーザは、「okコンピュータ、次」と発話する代わりに、単に「次」を発話してアシスタント対応デバイスを呼び起こし、それぞれのアクションの実施をトリガし得る。
ウォームワードのセットは、長期にわたる動作を制御するためにアクティブとなり得る。本明細書では、長期にわたる動作とは、デジタルアシスタントが延長された持続時間にわたって実施するアプリケーションまたはイベント、およびアプリケーションまたはイベントが進行中にユーザによって制御され得るものを指す。たとえば、デジタルアシスタントが30分間のタイマを設定したとき、タイマは、タイマを設定する時刻から、タイマが終了するまで、または生じる警報がタイマが終了した後に確認されるまでの長期にわたる動作である。この場合、ホットワードを最初に話すことなく単に「タイマを停止して」と話すことによってユーザがタイマを停止することを可能にするように、「タイマを停止して」などのウォームワードがアクティブとなり得る。同様に、デジタルアシスタントが再生デバイスを通じてストリーミング音楽サービスから音楽をストリーミングしている間、ストリーミング音楽サービスから音楽を再生するようにデジタルアシスタントに指令するコマンドが、長期にわたる動作である。この場合、ウォームワードのアクティブなセットは、デジタルアシスタントが再生デバイスを通じてストリーミングしている音楽の再生を制御するための「一時停止」、「音楽を一時停止」、「音量を上げて」、「音量を下げて」、「次」、「前」などであり得る。長期にわたる動作は、「レストランを予約して」などの複数ステップの対話照会を含み得、複数ステップの対話照会では、複数ステップの対話の所与の段階に応じて、ウォームワードの異なるセットがアクティブとなる。たとえば、デジタルアシスタント105は、ユーザに、レストランのリストから選択するようにプロンプト指示し得、それによってリストからレストランを選択するためのそれぞれの識別子(たとえば、レストラン名またはリスト中の番号)を含むウォームワードのセットがアクティブとなり得、そのレストランの予約を行うアクションを完了するようにプロンプト指示し得る。
ウォームワードに伴う1つの課題は、品質および効率が低下しないように、同時にアクティブとなるワード/フレーズの数を制限することである。たとえば、アシスタント対応デバイスがアクティブなワードのうちの1つを誤って検出/認識したときを示すいくつかの偽陽性が、同時にアクティブであるウォームワードの数を大幅に増加させる。さらに、長期にわたる動作を開始するためのコマンドを与えるユーザは、長期にわたる動作を制御するためのアクティブなウォームワードを他の人が話すことを妨げることはできない。
本明細書の実装は、デジタルアシスタントが長期にわたる動作を実施するためのコマンドを話したユーザに話者依存する、進行中の長期にわたる動作に関連する1つまたは複数のウォームワードのセットを活動化することを対象とする。すなわち、アクティブであるウォームワードが、長期にわたる動作を制御するための初期コマンドの後、ユーザによって話されている可能性が高いことに関連付けられる。したがって、デジタルアシスタントが、ユーザによって命令された長期にわたる動作を実施している間、そのユーザだけが、長期にわたる動作を制御するためのそれぞれのアクションをトリガするためのアクティブなウォームワードのいずれかを話すことを許可される。すなわち、そのユーザ以外の誰かがウォームワードのうちの1つを話す場合、長期にわたる動作を制御するためのそれぞれのアクションの実施が抑制され、またはユーザによる承認を必要とする。換言すれば、ストリーミングオーディオで取り込まれるウォームワードのどんな処理も、デジタルアシスタントが長期にわたる動作を実施するための初期コマンドを発したユーザの声に限定される。ウォームワード検出器および話者識別がアシスタント対応デバイス上で動作し、低電力消費であり得る。
ウォームワードが話者依存となるように、アクティブなウォームワードを特定のユーザの声に関連付けることにより、特定のユーザだけがウォームワードを話すことを許可されるので、ウォームワードの検出時のそれぞれのアクションをトリガする精度が改善される。さらに、アシスタント対応デバイスが起動し、潜在的にはサーバに接続する回数が削減され、偽陽性の数が削減されるので、処理コストが改善される。さらに、ユーザによる明示的な許可が与えられない限り、長期にわたる動作の実施を開始するためのユーザのコマンドを他の人が無効にすることはできないので、デジタルアシスタントに伴うユーザの体験が改善される。
図1Aおよび図1Bは、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられるウォームワードを活動化し、長期にわたる動作を制御するための初期コマンドを話したユーザ102にウォームワード112を関連付けるための例示的システム100、100a、100bを示す。簡潔には、以下でより詳細に説明されるように、ユーザ102によって話された「okコンピュータ、音楽を再生して」という発話106に応答して、アシスタント対応デバイス104が音楽122の再生を開始する。アシスタント対応デバイス104がスピーカ18からの再生オーディオとして音楽122の長期にわたる動作を実施している間、アシスタント対応デバイス104は、長期にわたる動作を制御するためのアクション、たとえば音楽122に関連付けられるプレイリスト中の次の歌に進むための命令として、ユーザ102によって話される「次」というアクティブなウォームワード112を検出/認識することができる。
システム100a、100bは、ユーザ102が音声を通じて対話し得るデジタルアシスタント105を実行中のアシスタント対応デバイス(AED)104を含む。図示されるこの例では、AED104はスマートスピーカに対応する。しかしながら、AED104は、限定はしないが、スマートフォン、タブレット、スマートディスプレイ、デスクトップ/ラップトップ、スマートウォッチ、スマートアプライアンス、ヘッドフォン、または車両インフォテインメントデバイスなどの他のコンピューティングデバイスを含み得る。AED104は、データ処理ハードウェア10と、データ処理ハードウェア10上で実行されるとき、データ処理ハードウェア10に動作を実施させる命令を記憶するメモリハードウェア12とを含む。AED104は、AED104に向けられる音声などの音響音を取り込むように構成された1つまたは複数のマイクロフォン16のアレイを含む。AED104はまた、デジタルアシスタント105からの音楽122および/または合成音声などのオーディオを出力し得るオーディオ出力デバイス(たとえば、スピーカ)18を含み、またはオーディオ出力デバイス18と通信し得る。
図1Aは、ユーザ102がAED104の近傍で「okコンピュータ、音楽を再生して」という発話106を話すことを示す。AED104のマイクロフォン16は発話106を受け取り、発話106に対応するオーディオデータ402を処理する。オーディオデータ402の初期処理は、オーディオデータ402をフィルタリングし、オーディオデータ402をアナログ信号からデジタル信号に変換することを含み得る。AED104がオーディオデータ402を処理した後、AEDは、追加の処理のためにメモリハードウェア12のバッファ内にオーディオデータ402を記憶し得る。バッファ内のオーディオデータ402と共に、AED104は、ホットワード検出器108を使用して、オーディオデータ402がホットワードを含むかどうかを検出し得る。ホットワード検出器108は、オーディオデータ402に関する音声認識を実施することなく、オーディオデータ402含まれるホットワードを識別するように構成される。
いくつかの実装では、ホットワード検出器108は、発話106の最初の部分にあるホットワードを識別するように構成される。この例では、ホットワード検出器108がオーディオデータ402内でホットワード110に特有の音響特徴を検出した場合、ホットワード検出器108は、「okコンピュータ、音楽を再生して」という発話106が「okコンピュータ」というホットワード110を含むと判定し得る。音響特徴は、発話106の短期パワースペクトルの表現であるメル周波数ケプストラム係数(MFCC)であり得、または発話106についてのメル尺度フィルタバンクエネルギーであり得る。たとえば、ホットワード検出器108は、オーディオデータ402からMFCCを生成することと、MFCCがホットワード検出器108のホットワードモデル内に記憶された「okコンピュータ」というホットワードに特有のMFCCと類似のMFCCを含むと分類することとに基づいて、「okコンピュータ、音楽を再生して」という発話106が「okコンピュータ」というホットワード110を含むことを検出し得る。別の例として、ホットワード検出器108は、オーディオデータ402からメル尺度フィルタバンクエネルギーを生成することと、メル尺度フィルタバンクエネルギーがホットワード検出器108のホットワードモデル内に記憶された「okコンピュータ」というホットワードに特有のメル尺度フィルタバンクエネルギーに類似のメル尺度フィルタバンクエネルギーを含むと分類することとに基づいて、「okコンピュータ、音楽を再生して」という発話106が「okコンピュータ」というホットワード110を含むことを検出し得る。
発話106に対応するオーディオデータ402がホットワード110を含むとホットワード検出器108が判定したとき、AED104は、起動プロセスをトリガして、発話106に対応するオーディオデータ402に関する音声認識を開始し得る。たとえば、AED104上で動作中の音声認識器116が、発話106に対応するオーディオデータ402に関する音声認識または意味解釈を実施し得る。音声認識器116は、ホットワード110に続くオーディオデータ402の部分に関する音声認識を実施し得る。この例では、音声認識器116は、コマンド118内の「音楽を再生して」というワードを識別し得る。
いくつかの実装では、音声認識器116は、AED104に加えて、またはAED104の代わりにサーバ120上に配置される。発話106内のホットワード110を検出したことに応答して、ホットワード検出器108がAED104をトリガして起動したとき、AED104は、ネットワーク132を介して、発話106に対応するオーディオデータ402をサーバ120に送信し得る。AED104は、サーバ120がホットワード110の存在を確認するために、ホットワード110を含むオーディオデータ402の部分を送信し得る。代替として、AED104は、ホットワード110の後の発話106の部分に対応するオーディオデータ402の部分のみをサーバ120に送信し得る。サーバ120は、音声認識器116を実行して音声認識を実施し、オーディオデータ402のトランスクリプションをAED104に返す。AED104は発話106内のワードを識別し、AED104は意味解釈を実施して、音声コマンドがある場合にはそれを識別する。AED104(および/またはサーバ120)は、デジタルアシスタント105が「音楽を再生して」という長期にわたる動作を実施するためのコマンドを識別し得る。図示される例では、デジタルアシスタント105は、AED104のスピーカ18からの再生オーディオとして音楽122を再生するという長期にわたる動作の実施を開始する。デジタルアシスタント105は、ストリーミングサービス(図示せず)から音楽122をストリーミングし得、またはデジタルアシスタント105は、AED104上に記憶された音楽を再生するようにAED104に指令し得る。
AED104(および/またはサーバ120)は、動作識別器124およびウォームワードセレクタ126を含み得る。動作識別器124は、デジタルアシスタント105が現在実施している1つまたは複数の長期にわたる動作を識別するように構成され得る。デジタルアシスタント105が現在実施しているそれぞれの長期にわたる動作について、ウォームワードセレクタ126は、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられる、対応する1つまたは複数のウォームワード112のセットを選択し得る。いくつかの例では、ウォームワードセレクタ126は、識別された長期にわたる動作を、長期にわたる動作と高い相関がある、対応する1つまたは複数のウォームワード112のセットに関連付ける(たとえば、メモリハードウェア12上に記憶された)レジストリまたはテーブルにアクセスする。たとえば、長期にわたる動作がタイマ設定機能に対応する場合、ウォームワードセレクタ126が活動化するのに利用可能な、関連する1つまたは複数のウォームワード112のセットは、デジタルアシスタント105にタイマを停止するように指令するための「タイマを停止して」というウォームワード112を含む。同様に、「[連絡先名]に電話をかけて」という長期にわたる動作では、関連するウォームワード112のセットは、進行中の電話を終了するための「電話を切って」および/または「電話を終了して」というウォームワード112を含む。図示される例では、音楽122を再生するという長期にわたる動作では、ウォームワードセレクタ126が活動化するのに利用可能な、関連する1つまたは複数のウォームワード112のセットは、AED104のスピーカ18からの音楽122の再生を制御するためのそれぞれのアクションに関連付けられる、「次」、「一時停止」、「前」、「音量を上げて」、および「音量を下げて」というウォームワード112を含む。したがって、デジタルアシスタント105が長期にわたる動作を実施している間、ウォームワードセレクタ126はこうしたウォームワード112を活動化し、長期にわたる動作が終了した後は、こうしたウォームワード112を非活動化し得る。同様に、進行中の長期にわたる動作の状態に応じて、異なるウォームワード112が活動化/非活動化され得る。たとえば、ユーザが音楽122の再生を一時停止するために「一時停止」と話した場合、ウォームワードセレクタ126は、音楽122の再生を再開するために、「再生」のためのウォームワード112を活動化し得る。いくつかの構成では、レジストリにアクセスする代わりに、ウォームワードセレクタ126は、長期にわたる動作のアプリケーション(たとえば、AED104のフォアグラウンドまたはバックグラウンドで動作中の音楽アプリケーション)に関連するコードを検査して、アプリケーションの開発者が、アプリケーションと対話するためにユーザ102が話すことができることを望むウォームワード112がある場合はそのウォームワード112と、各ウォームワード112についてのそれぞれのアクションとを識別する。レジストリ内のウォームワード112はまた、所与の照会に続いてユーザ102(または典型的なユーザ)が発する傾向のあるフォローアップ照会、たとえば「okコンピュータ、次のトラック」に関係する。
いくつかの実装では、長期にわたる動作に相関する1つまたは複数のウォームワード112のセットを活動化した後、AED104(またはサーバ120)上で実行中の関連付け器160が、活動化された1つまたは複数のウォームワード112のセットを、デジタルアシスタント105が長期にわたる動作を実施するためのコマンド118を伴う発話106を話したユーザ102のみに関連付ける。すなわち、関連付け器160は、長期にわたる動作を開始するために最初のコマンド118を与えた特定のユーザ102の音声に依存するように、活動化されたウォームワード112のセットを構成する。後で明らかになるように、活動化されたウォームワード112のセットを特定のユーザ102の音声に依存させることにより、アクティブなウォームワードが特定のユーザ102によって話されたとき、AED104は(たとえば、デジタルアシスタント105を介して)、アクティブなウォームワード112のうちの1つに関連付けられるそれぞれのアクションのみを実施することになり、それによって、ウォームワード112が異なる話者によって話されたとき、それぞれのアクションの実施を抑制する(または特定のユーザ102からの承認を少なくとも必要とする)。
関連付け器160が、活動化された1つまたは複数のウォームワード112のセットを、コマンド118を開始する発話106を話したユーザ102のみに関連付けるために、関連付け器160はまず、発話106を話したユーザ102の識別を解決しなければならない。いくつかのシナリオでは、ユーザ102が、AED104およびデジタルアシスタント105の様々な機能にアクセスし、またはそれを制御するように許可されるAED104の登録済みユーザ200として識別される。AED104は、AED104の機能に関する特定の許可または権利を示す登録済みユーザアカウントをそれぞれ有する複数の異なる登録済みユーザ200を有し得る。たとえば、AED104は、複数の家族の構成員を有する家庭などのマルチユーザ環境で動作し得、それによってそれぞれの家族の構成員は、異なるそれぞれのリソースのセットにアクセスするための許可を有する登録済みユーザ200に対応する。例示のために、父親が「私の音楽プレイリストを再生して」というコマンドを話すことにより、そのプレイリストがポップミュージックを含む十代の娘などの家庭の別の登録済みユーザ200によって作成され、そのユーザ200に関連付けられる異なる音楽プレイリストではなく、デジタルアシスタント105が父親に関連付けられるロックミュージックプレイリストから音楽をストリーミングすることになる。
図2は、AED104の複数の登録済みユーザ200a~nのそれぞれについての登録済みユーザデータ/情報を記憶する例示的データストアを示す。ここでは、AED104の各登録済みユーザ200は、登録済みユーザ200によって話された複数の登録フレーズのオーディオサンプルからそれぞれの登録済み話者ベクトル154を取得するための音声登録プロセスに同意し得る。たとえば、話者弁別モデル410(図4Aおよび図4B)が、各登録済みユーザ200によって話された登録フレーズのオーディオサンプルから1つまたは複数の登録済み話者ベクトル154を生成し得、1つまたは複数の登録済み話者ベクトル154が組み合わされ、たとえば平均され、あるいは累積されて、それぞれの登録済み話者ベクトル154が形成される。登録済みユーザ200のうちの1人または複数は、AED104を使用して音声登録プロセスを実施し得、マイクロフォン16が、登録発話を話すこうしたユーザのオーディオサンプルを取り込み、話者弁別モデル410が、オーディオサンプルからそれぞれの登録済み話者ベクトル154を生成する。モデル410は、AED104、サーバ120、またはそれらの組合せの上で実行され得る。さらに、登録済みユーザ200のうちの1人または複数は、既存のユーザアカウントに対する権限および認証証明をAED104に与えることによって、AED104で登録し得る。ここでは、既存のユーザアカウントは、ユーザアカウントにやはりリンクされた別のデバイスに伴う前の音声登録プロセスから取得された登録済み話者ベクトル154を記憶し得る。
いくつかの例では、登録済みユーザ200についての登録済み話者ベクトル154は、テキスト依存登録済み話者ベクトルを含む。たとえば、テキスト依存登録済み話者ベクトルは、AED104を呼び起こしてスリープ状態から起動するために使用されるホットワード110(たとえば、「okコンピュータ」)などの所定の用語を話すそれぞれの登録済みユーザ200の1つまたは複数のオーディオサンプルから抽出され得る。他の例では、登録済みユーザ200についての登録済み話者ベクトル154は、異なる用語/ワードを有する、異なる長さのフレーズを話すそれぞれの登録済みユーザ200の1つまたは複数のオーディオサンプルから取得されたテキスト独立のものである。こうした例では、テキスト独立登録済み話者ベクトルは、ユーザ102がAED104または同一のアカウントにリンクされた他のデバイスと行う音声対話から取得されたオーディオサンプルから経時的に取得され得る。
図2はまた、任意選択でAED104(および/またはサーバ120)が、特定の用語またはフレーズを話すそれぞれの登録済みユーザ200の1つまたは複数のオーディオサンプルからそれぞれ抽出された1つまたは複数の他のテキスト依存話者ベクトル158を記憶することを示す。たとえば、登録済みユーザ200aは、アクティブなときにAED104に長期にわたる動作を制御するためのそれぞれのアクションを実施させ、または何らかの他のコマンドを実施させるために話され得る1つまたは複数のウォームワード112のそれぞれについてのテキスト依存話者ベクトル158を含み得る。したがって、それぞれの登録済みユーザ200についてのテキスト依存話者ベクトル158は、特定のウォームワード112を話すそれぞれの登録済みユーザ200の音声特徴を表す。図4Bを参照しながら以下でより詳細に説明されるように、特定のウォームワード112に関連付けられる、それぞれの登録済みユーザ200について記憶されたテキスト依存話者ベクトル158は、長期にわたる動作を制御するためのアクションを実施するようにAED104に命令するために特定のウォームワード112を話すそれぞれの登録済みユーザ200を検証するために使用され得る。
図4Aを参照すると、いくつかの例では、関連付け器160は、話者識別プロセス400aを実施することにより、発話106を話したユーザ102の識別を解決する。話者識別プロセス400aはAED104のデータ処理ハードウェア12上で実行され得る。プロセス400aはまた、サーバ120上で実行され得る。話者識別プロセス400aは、ユーザ102によって話された発話106に対応するオーディオデータ402から、発話106の特徴を表す第1の話者弁別ベクトル411をまず抽出することにより、発話106を話したユーザ102を識別する。ここでは、話者識別プロセス400aは、オーディオデータ402を入力として受信し、第1の話者弁別ベクトル411を出力として生成するように構成された話者弁別モデル410を実行し得る。話者弁別モデル410は、話者弁別ベクトル411を出力するように機械または人間の監視下でトレーニングされたニューラルネットワークモデルであり得る。話者弁別モデル410によって出力された話者弁別ベクトル411は、ユーザ102に関連付けられる発話106の音声特徴に対応する値を有するN次元ベクトルを含み得る。いくつかの例では、話者弁別ベクトル411はdベクトルである。いくつかの例では、第1の話者弁別ベクトル411は、活動化されたウォームワードのセットを話すようにやはり許可される異なるユーザにそれぞれ関連付けられる話者弁別ベクトルのセットを含む。たとえば、発話106を話したユーザ102を除いて、他の許可されたユーザには、ユーザ102が長期にわたる動作を発する発話106を話したときに居合わせた他の個人、および/または許可されているとユーザ102が追加/指定した個人が含まれ得る。
第1の話者弁別ベクトル411がモデル410から出力された後は、話者識別プロセス400aは、抽出された話者弁別ベクトル411が、AED104の登録済みユーザ200a~n(図2)についての、AED104上に(たとえば、メモリハードウェア12内に)記憶された登録済み話者ベクトル154のいずれかに合致するかどうかを判定する。図2を参照しながら上記で説明されたように、話者弁別モデル410は、音声登録プロセスの間に、登録済みユーザ200についての登録済み話者ベクトル154を生成し得る。各登録済み話者ベクトル154は、それぞれの登録済みユーザ200の音声の特徴を表す声紋または一意識別子に対応する基準ベクトルとして使用され得る。
いくつかの実装では、話者識別プロセス400aは、第1の話者弁別ベクトル411を、AED104の各登録済みユーザ200a~nに関連付けられるそれぞれの登録済み話者ベクトル154と比較する比較器420を使用する。ここでは、比較器420は、発話106がそれぞれの登録済みユーザ200の識別に対応する可能性を示す各比較についてのスコアを生成し得、スコアがしきい値を満たすとき、識別が受け入れられる。スコアがしきい値を満たさないとき、比較器は識別を拒否し得る。いくつかの実装では、比較器420は、第1の話者弁別ベクトル411と各登録済み話者ベクトル154との間のそれぞれのコサイン距離を計算し、それぞれのコサイン距離がコサイン距離しきい値を満たすとき、第1の話者弁別ベクトル411が登録済み話者ベクトル154のうちの1つに合致すると判定する。
いくつかの例では、第1の話者弁別ベクトル411は、ホットワード110を含むオーディオデータの一部から抽出されたテキスト依存話者弁別ベクトルであり、各登録済み話者ベクトル154も、同一のホットワード110にテキスト依存する。テキスト依存話者ベクトルの使用は、第1の話者弁別ベクトル411が登録済み話者ベクトル154のいずれかに合致するかどうかを判定する際の精度を改善し得る。他の例では、第1の話者弁別ベクトル411は、ホットワード110とコマンド118の両方を含むオーディオデータ全体から、またはコマンド118を含むオーディオデータの部分から抽出されたテキスト独立話者弁別ベクトルである。
第1の話者弁別ベクトル411が登録済み話者ベクトル154のうちの1つに合致すると話者識別プロセス400aが判定したとき、プロセス400aは、抽出された話者弁別ベクトル411に合致する登録済み話者ベクトル154のうちの1つに関連付けられるそれぞれの登録済みユーザ200として、発話106を話したユーザ102を識別する。図示される例では、比較器420は、第1の話者弁別ベクトル411と、第1の登録済みユーザ200aに関連付けられる登録済み話者ベクトル154との間のそれぞれのコサイン距離がコサイン距離しきい値を満たすことに基づいて合致を判定する。いくつかのシナリオでは、比較器420は、第1の話者弁別ベクトル411から最短のそれぞれのコサイン距離を有する登録済み話者ベクトル154に関連付けられるそれぞれの第1の登録済みユーザ200aとしてユーザ102を識別する。ただし、この最短のそれぞれのコサイン距離もコサイン距離しきい値を満たすことを条件とする。
逆に、第1の話者弁別ベクトル411が登録済み話者ベクトル154のうちのいずれにも合致しないと話者識別プロセス400aが判定したとき、プロセス400aは、発話106を話したユーザ102をAED104のゲストユーザとして識別し得る。したがって、関連付け器160は、活動化された1つまたは複数のウォームワード112のセットをゲストユーザに関連付け、ゲストユーザの音声の音声特徴を表す基準話者ベクトルとして第1の話者弁別ベクトル411を使用し得る。いくつかの例では、ゲストユーザはAED104に登録し得、AED104は、新しく登録されたユーザについてのそれぞれの登録済み話者ベクトル154として第1の話者弁別ベクトル411を記憶し得る。
図1Aに示される例では、関連付け器160が、活動化された1つまたは複数のウォームワード112のセットを、バーブという名前の第1の登録済みユーザ200aに関連付ける。いくつかの例では、AED104は、活動化された1つまたは複数のウォームワード112のセットに関連付けられる、識別されたユーザ102(たとえば、バーブ)に、ウォームワード112がアクティブであること、および長期にわたる動作を制御するためのそれぞれのアクションを実施するようにAED104に指令するために、ユーザ102がウォームワード112のいずれかを話すことができることを通知する。たとえば、デジタルアシスタント105は、「バーブ、あなたは「okコンピュータ」と言わずに音楽再生制御を話すことができます」と述べる、AED104のスピーカ18からの可聴出力のための合成音声123を生成し得る。追加の例では、デジタルアシスタント105は、長期にわたる動作を制御するためにどのウォームワード112が現在アクティブであるかを識別されたユーザ102(たとえば、バーブ)に通知するために、識別されたユーザのユーザアカウントにリンクされるユーザデバイス50(たとえば、スマートフォン)に通知を提供し得る。
ユーザデバイス50上で実行中のグラフィカルユーザインターフェース(GUI)300(図3)が、長期にわたる動作を制御するためのアクティブなウォームワード112および関連するそれぞれのアクションを表示し得る。各ウォームワード自体は、それぞれのアクションを識別する記述子として働き得る。図3は、長期にわたる動作を制御するためにそのユーザ102が話すためのどのウォームワード112がアクティブであり、どのウォームワード113が非アクティブであるか、したがってユーザ102によって話されるときに長期にわたる動作を制御するために利用不能であるかをユーザ102に通知するために、ユーザデバイス50の画面上に表示される例示的GUI300を示す。具体的には、GUI300は、「次」、「一時停止」、「前」、「音量を上げて」、「音量を下げて」というアクティブなウォームワード112、および「再生」という非アクティブなウォームワード113をレンダリングする。ユーザ102が音楽の再生を一時停止するとした場合、「再生」についてのウォームワードがアクティブなウォームワード112となり得、「一時停止」についてのウォームワードが非アクティブなウォームワード113となり得る。各ウォームワード112は、AED104のスピーカ18からの音楽122の再生を制御するためのそれぞれのアクションに関連付けられる。
さらに、GUI300は、長期にわたる動作の識別子(たとえば、「トラック1を再生中」)、長期にわたる動作を現在実施しているAED104(たとえば、スマートスピーカ)の識別子、および/または長期にわたる動作を開始したアクティブなユーザ102(たとえば、バーブ)の識別を表示するためにレンダリングし得る。いくつかの実装では、アクティブなユーザ102の識別は、アクティブなユーザ102のイメージ304を含む。したがって、アクティブなユーザ102およびアクティブなウォームワード112を識別することによって、GUI300は、長期にわたる動作を制御するためのそれぞれのアクションを実施するために、GUI300内に表示されたアクティブなウォームワード112のいずれかを話し得る、長期にわたる動作の「コントローラ」として、アクティブなユーザ102を明らかにする。前述のように、バーブ102が、長期にわたる動作を開始するために「音楽を再生して」という初期コマンド118を与えたので、アクティブなウォームワード112のセットは、バーブ102の音声に依存する。アクティブなウォームワード112のセットをバーブ102の音声に依存させることにより、アクティブなウォームワード112がバーブ102によって話されたとき、AED104は(たとえば、デジタルアシスタント105を介して)アクティブなウォームワード112のうちの1つに関連付けられるそれぞれのアクションのみを実施することになり、アクティブなウォームワード112が異なる話者によって話されたとき、それぞれのアクションの実施を抑制する(またはバーブ102からの承認を少なくとも必要とする)。
ユーザデバイス50はまた、AED104のスピーカ18から音楽122を再生するために、それぞれのアクティブなウォームワード112に関連付けられるそれぞれのアクションを実施するための、GUI300内に表示されるグラフィカル要素302をレンダリングし得る。図示される例では、グラフィカル要素302は、選択されたとき、デバイス50にそれぞれのアクションを実施させる、音楽122を再生するという長期にわたる動作のための再生制御に関連付けられる。たとえば、グラフィカル要素302は、「次」というウォームワード112に関連付けられるアクションを実施し、「一時停止」というウォームワード112に関連付けられるアクションを実施し、「前」というウォームワード112に関連付けられるアクションを実施し、「音量を上げて」というウォームワード112に関連付けられるアクションを実施し、「音量を下げて」というウォームワード112に関連付けられるアクションを実施するための再生制御を含み得る。GUI300は、AED104のスピーカ18からの音楽122の再生を制御するために、タッチ、音声、ジェスチャ、凝視、および/または入力デバイス(たとえば、マウスまたはスタイラス)のいずれか1つを介してユーザ入力指示を受け取り得る。たとえば、ユーザ102は、音楽122に関連付けられるプレイリスト中の次の歌に進むアクションをAED104に実施させるために、(たとえば、「次」を普遍的に表すGUI300内のグラフィカルボタンをタッチすることによって)「次」制御の選択を示すユーザ入力指示を与え得る。
図1Aおよび図1Bに戻ると、ウォームワードセレクタ126によってウォームワードのセットを活動化することにより、AED104は、活動化された1つまたは複数のウォームワード112のセット内のそれぞれの対応するウォームワード112について、それぞれのウォームワードモデル114を活動化してAED104上で実行する。ここで、ウォームワードモデル114は、AED104のメモリハードウェア12上に、またはサーバ120上に記憶され得る。サーバ上に記憶される場合、AED104がウォームワードモデル114を活動化し得るように、AED104は、対応するウォームワード112についてのウォームワードモデル114を検索して、検索されたウォームワードモデル114を提供するようにサーバ120に要求し得る。以下でより詳細に説明されるように、AED104上で動作中のアクティブなウォームワードモデル114が、取り込まれたオーディオに関する音声認識を実施することなく、AED104によって取り込まれたストリーミングオーディオ中の対応するアクティブなウォームワード112の発話146を検出し得る。さらに、単一のウォームワードモデル114が、ストリーミングオーディオ中のアクティブなウォームワード112のすべてを検出することができ得る。したがって、ウォームワードモデル114が、アクティブなウォームワードのセットを検出し得、異なるウォームワードモデル114が、異なるアクティブなウォームワードのセットを検出し得る。
追加の実装では、ウォームワードセレクタ126によってウォームワード112のセットを活動化することにより、AED104は、低電力かつ低忠実度状態でAED104上の音声認識器116を実行する。ここで、音声認識器116は、AED104によって取り込まれた発話で話されたときにアクティブである1つまたは複数のウォームワード112のみを認識するように制限またはバイアスされる。音声認識器116は限られた数の用語/フレーズのみを認識しているので、音声認識器116のパラメータの数が劇的に削減され得、それによって、音声内のアクティブなウォームワードを認識するために必要なメモリ要件および計算数が削減される。したがって、音声認識器116の低電力かつ低忠実度の特性は、デジタル信号プロセッサ(DSP)上での実行に適し得る。こうした実装では、AED104上で実行中の音声認識器116は、ウォームワードモデル114を使用する代わりに、AED104によって取り込まれたストリーミングオーディオ中のアクティブなウォームワード112の発話146を認識し得る。
図1Bを参照すると、デジタルアシスタント105が音楽122を再生するという長期にわたる動作を実施している間に、ユーザ102は、活動化された1つまたは複数のウォームワード112のセットからのウォームワード112のうちの1つを含む発話146を話す。図示される例では、ユーザ102は「次」というアクティブなウォームワード112を発話する。取り込まれたオーディオに関する音声認識を実施することなく、AED104は、活動化された1つまたは複数のウォームワード112のセットについて活動化されたウォームワードモデル114を適用して、発話146が何らかのアクティブなウォームワード112を含むかどうかを識別し得る。アクティブなウォームワード112は、「次」、「一時停止」、「前」、「音量を上げて」、および「音量を下げて」であり得る。AED104は、発話146に対応するオーディオデータを、「次」、「一時停止」、「前」、「音量を上げて」、および「音量を下げて」というアクティブなウォームワード112に対応する、活動化されたウォームワードモデル114と比較し、オーディオデータに関する音声認識を実施することなく、「次」というウォームワード112について活動化されたウォームワードモデル114が、発話146内の「次」というウォームワード112を検出したと判定する。次の歌に進むための命令に対応する「次」というウォームワード112を識別したことに基づいて、AED104は、発話146に対応するオーディオデータに関する話者検証プロセス400bを実施して、活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって発話146が話されたかどうかを判定する。発話146に対応するオーディオデータに関する話者検証プロセス400bが、活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって発話146が話されたことを示す場合、AED104は、長期にわたる動作を制御するための識別されたウォームワード112に関連付けられるそれぞれのアクションを実施することに進み得る。逆に、発話146に対応するオーディオデータに関する話者検証プロセス400bが、活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって発話146が話されたのではないことを示す場合、AED104は、ウォームワード112が異なる話者によって話されたとき、それぞれのアクションの実施を抑制する(または(たとえば、図1Cで)特定のユーザ102からの承認を少なくとも必要とする)場合がある。
いくつかの実装では、AED104は、活動化された1つまたは複数のウォームワード112のセットの中にないが、そのモデルがまだウォームワードモデル114内に記憶されるウォームワード112を識別する。この場合、AED104は、ウォームワードが活動化された1つまたは複数のウォームワード112のセットの中にない(たとえば、非アクティブである)ことをGUI300内で表示するように、ユーザデバイス50に指示を与え得る。たとえば、ユーザ102は、音楽122が再生中であるときに「再生」と話し得る。AED104は「再生」というウォームワード112を識別し得る。「再生」というウォームワード112は活動化された1つまたは複数のウォームワード112のセットの中にないので、AED104はアクションを実施しない。しかしながら、ユーザデバイス50は、「再生」というウォームワードは非アクティブなウォームワード113であるという指示をGUI300内に表示し、アクティブなウォームワード112が「次」、「一時停止」、「前」、「音量を上げて」、および「音量を下げて」であることを示し得る。
ウォームワードモデル114は、発話146に関連付けられるオーディオデータのオーディオ特徴を抽出することにより、関連する発話146が、活動化された1つまたは複数のウォームワード112のセットからのウォームワード112のうちの1つを含むことを検出し得る。活動化されたウォームワードモデル114はそれぞれ、抽出されたオーディオ特徴を処理し、対応するウォームワード信頼スコアをウォームワード信頼しきい値と比較することによって、対応するウォームワード信頼スコアを生成し得る。たとえば、ウォームワードモデル114は、「再生」、「次」、「一時停止」、「前」、「音量を上げて」、および「音量を下げて」というアクティブなウォームワード112のそれぞれについての対応するウォームワード信頼スコアを集合的に生成し得る。いくつかの実装では、音声認識器116は、発話146に関連付けられる、処理されたオーディオデータの各部分についてのウォームワード信頼スコアを生成する。ウォームワード信頼スコアがしきい値を満たす場合、ウォームワードモデル114は、発話146に対応するオーディオデータが、活動化された1つまたは複数のウォームワード112のセットの中のウォームワード112を含むと判定する。たとえば、ウォームワードモデル114(または音声認識器116)によって生成されたウォームワード信頼スコアが0.9であり、ウォームワード信頼しきい値が0.8である場合、AED104は、発話146に対応するオーディオデータがウォームワード112を含むと判定する。
いくつかの実装では、ウォームワード信頼スコアがしきい値未満の範囲内にある場合、デジタルアシスタント105は、ユーザ102がウォームワード112を確認または反復することを要求する、AED104のスピーカ18からの可聴出力のための合成音声123を生成し得る。こうした実装では、ユーザ102がウォームワード112を話したことをユーザ102が確認した場合、AEDは、オーディオデータを使用して、対応するウォームワードモデル114を更新し得る。
図4Bを参照すると、追加の発話146に対応する追加のオーディオデータ402が活動化されたウォームワード112のセットからのウォームワード112のうちの1つを含むとの識別に応答して、関連付け器160が、話者検証プロセス400bを実施することにより、発話146を話したユーザ102の識別を解決する。話者検証プロセス400bは、AED104のデータ処理ハードウェア12上で実行され得る。プロセス400bはまた、AED104上で実行される代わりに、またはAED104上で実行されることと共に、サーバ120上でも実行され得る。話者検証プロセス400bは、ユーザ102によって話された発話146に対応するオーディオデータ402から、発話146の特徴を表す第2の話者弁別ベクトル412をまず抽出することにより、発話146を話したユーザ102を識別する。ここでは、話者識別プロセス400bは、オーディオデータ402を入力として受信し、第2の話者弁別ベクトル412を出力として生成するように構成された話者弁別モデル410を実行し得る。上記で図4Aにおいて論じられたように、話者弁別モデル410は、話者弁別ベクトル412を出力するように機械または人間の監視下でトレーニングされたニューラルネットワークモデルであり得る。話者弁別モデル410によって出力された第2の話者弁別ベクトル412は、ユーザ102に関連付けられる発話146の音声特徴に対応する値を有するN次元ベクトルを含み得る。いくつかの例では、話者弁別ベクトル412はdベクトルである。
第2の話者弁別ベクトル412が話者弁別器モデル410から出力された後は、話者識別プロセス400bは、抽出された話者弁別ベクトル412が、AED104上に(たとえば、メモリハードウェア12内に)記憶された第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155に合致するかどうかを判定する。第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155は、第1の登録済みユーザ200aに関連付けられるそれぞれの登録済み話者ベクトル154を含み得る。他の例では、基準話者ベクトル155は、発話146に対応する追加のオーディオデータ402内で識別されたアクティブなウォームワード112を話すそれぞれの登録済みユーザ200aの1つまたは複数のオーディオサンプルから抽出されたテキスト依存話者ベクトル158を含む。
図2を参照しながら上記で説明されたように、話者弁別モデル410は、音声登録プロセスの間に、登録済みユーザ200についての登録済み話者ベクトル154を生成し得る。各登録済み話者ベクトル154は、それぞれの登録済みユーザ200の音声の特徴を表す声紋または一意識別子に対応する基準ベクトルとして使用され得る。さらに、登録の間、登録済みユーザ200aは、アクティブであるとき、長期にわたる動作を制御するためのそれぞれのアクションをAED104に実施させ、または何らかの他のコマンドを実施させるために話され得る1つまたは複数のウォームワード112のそれぞれについてのテキスト依存話者ベクトル158をトレーニングし得る。たとえば、登録済みユーザ200aについてのテキスト依存話者ベクトル158は、「再生」、「一時停止」、「次」、「前」、「音量を上げて」、および「音量を下げて」というそれぞれのウォームワード112を話す登録済みユーザ200aの音声特徴を表す。
いくつかの実装では、話者識別プロセス400bは、第2の話者弁別ベクトル412を、登録済みユーザ200のうちの第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155と比較する比較器420を使用する。ここでは、比較器420は、発話146が第1の登録済みユーザ200aの識別に対応する可能性を示す比較についてのスコアを生成し得、スコアがしきい値を満たすとき、識別が受け入れられる。スコアがしきい値を満たさないとき、比較器420は識別を拒否し得る。いくつかの実装では、比較器420は、第2の話者弁別ベクトル412と、第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155との間のそれぞれのコサイン距離を計算し、それぞれのコサイン距離がコサイン距離しきい値を満たすとき、第2の話者弁別ベクトルが基準話者ベクトル155に合致すると判定する。
第2の話者弁別ベクトル412が第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155に合致すると話者検証プロセス400bが判定したとき、プロセス400bは、発話146を話したユーザ102を、基準話者ベクトル155に関連付けられる第1の登録済みユーザ200aとして識別する。図示される例では、比較器420は、第2の話者弁別ベクトル412と、第1の登録済みユーザ200aに関連付けられる基準話者ベクトル155との間のそれぞれのコサイン距離がコサイン距離しきい値を満たすことに基づいて合致を判定する。いくつかのシナリオでは、比較器420は、第2の話者弁別ベクトル412から最短のそれぞれのコサイン距離を有する基準話者ベクトル155に関連付けられるそれぞれの第1の登録済みユーザ200aとしてユーザ102を識別する。ただし、この最短のそれぞれのコサイン距離もコサイン距離しきい値を満たすことを条件とする。
上記の図4Aを参照すると、いくつかの実装では、話者識別プロセス400aは、第1の話者弁別ベクトル411が登録済み話者ベクトル154のいずれにも合致しないと判定し、発話106を話したユーザ102をAED104のゲストユーザとして識別し、活動化された1つまたは複数のウォームワード112のセットをユーザ102に関連付ける。したがって、話者検証プロセス400bは、発話106を話したユーザ102が、話者識別プロセス400aによって登録済みユーザ200として識別されたか、それともゲストユーザとして識別されたかをまず判定し得る。ユーザ102がゲストユーザであるとき、比較器420は、第2の話者弁別ベクトル412を、話者識別プロセス400aの間に取得された第1の話者弁別ベクトル411と比較する。ここでは、第1の話者弁別ベクトル411は、ゲストユーザ102によって話された発話106の特徴を表し、したがって、発話146がゲストユーザ102または別のユーザによって話されたか否かを検証するために基準ベクトルとして使用される。ここでは、比較器420は、発話146がゲストユーザ102の識別に対応する可能性を示す比較についてのスコアを生成し得、スコアがしきい値を満たすとき、識別が受け入れられる。スコアがしきい値を満たさないとき、比較器420は、発話146を話したゲストユーザの識別を拒否し得る。いくつかの実装では、比較器420は、第1の話者弁別ベクトル411と第2の話者弁別ベクトル412との間のそれぞれのコサイン距離を計算し、それぞれのコサイン距離がコサイン距離しきい値を満たすとき、第1の話者弁別ベクトル411が第2の話者弁別ベクトル412に合致すると判定する。
図1Bに戻ると、話者検証プロセス400bが発話146の話者を検証したとき、AED104は(たとえば、デジタルアシスタント105を介して)、「次」というアクティブなウォームワード112に関連付けられる次の歌/トラックに進むそれぞれのアクションを実施することに進むだけである。言い換えれば、「次」というワード112が追加の発話146に対応する追加のオーディオ402内で検出された後、AEDは、音楽122に関連付けられるプレイリスト中の次の歌に進む、検出された「次」というウォームワード112に関連付けられるそれぞれのアクションを実施する前に、追加の発話146が、活動化された1つまたは複数のウォームワードのセットに関連付けられる同一のユーザ102によって話されたことを検証しなければならない。話者検証プロセス400bが、追加の発話146が発話106を話した同一の話者によって話されたことを検証することができない場合、「次」というウォームワード112が異なる話者によって話されたとき、AEDは、それぞれのアクションの実施を抑制する(またはユーザ102からの承認を少なくとも必要とする)。
次に図1Cを参照すると、別の例示的システム100cが、デジタルアシスタント105が音楽122を再生するという長期にわたる動作を実施している間に、活動化された1つまたは複数のウォームワード112のセットからの「停止」というアクティブなウォームワード112を含む発話147を別のユーザ103が話すことを示す。発話147に対応するオーディオデータに関する音声認識を実施することなく、AED104は、活動化された1つまたは複数のウォームワード112のセットについて活動化されたウォームワードモデル114とオーディオデータを比較して、発話147が何らかのアクティブなウォームワード112を含むかどうかを識別し得る。アクティブなウォームワード112は、「再生」、「次」、「停止」、「前」、「音量を上げて」、および「音量を下げて」を含み得る。図示される例では、AED104は、オーディオデータ402に関する音声認識を実施することなく、「停止」というウォームワード112について活動化されたウォームワードモデル114が、発話147内の「停止」というウォームワード112を検出したと判定する。「停止」というウォームワード112を識別したことに基づいて、AED104は、発話147に対応するオーディオデータに関する話者検証プロセス400bを実施して、活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102(たとえば、バーブ)によって発話147が話されたかどうかを判定する。
図示される例では、発話147に対応するオーディオデータ402に関する話者検証プロセス400bを実施することにより、発話147がバーブ102によって話されたのではないことが示される。たとえば、図4Bの話者検証プロセス400bの弁別話者ベクトルモデル410が、発話147の特徴を表す第2の話者弁別ベクトル412を生成し得、比較器420は、第2の話者弁別ベクトル412が第1の登録済みユーザ200a(たとえば、バーブ)に関連付けられる基準話者ベクトル155に合致しないと判定し得る。したがって、話者検証プロセス400bは、活動化された1つまたは複数のウォームワード112のセットに関連付けられるユーザ102(たとえば、バーブ)以外の異なるユーザ103によって発話147が話されたと判定する。いくつかの実装では、発話147がその異なるユーザ103によって話されたとき、AED104は、音楽122を再生するという長期にわたる動作を制御するための「停止」という識別されたウォームワード112に関連付けられるそれぞれのアクションの実施を抑制する。別の実装では、発話147がバーブ102以外の誰かによって話されたとの検証プロセス400bの判定に応答して、AED104は、「停止」という識別されたウォームワード112に関連付けられるそれぞれのアクションを実施するためにバーブ102からの承認を要求する。一例として、デジタルアシスタント105は、「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可または拒否するようにバーブ102にプロンプト指示する、AED104のスピーカ18からの可聴出力のための合成音声123を生成することにより、バーブ102からの承認を要求する。たとえば、デジタルアシスタント105は、「バーブ、歌の再生を停止するためのアクションが他の誰かによって要求されましたが、受け入れますか?」と尋ねる、AED104のスピーカ18からの可聴出力のための合成音声123を生成し得る。それに応答して、バーブ112は、確認119を含む発話148を話す。ユーザ102による確認119は、それぞれのアクションの実施を許可する「はい」、またはそれぞれのアクションの実施を拒否する「いいえ」であり得る。
図示される例では、バーブ102は、「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可することに対応する「はい」という確認119を発話する。いくつかの実装では、AED104はまた、発話148に対応するオーディオデータに関する話者検証プロセス400bを実施して、活動化された1つまたは複数のウォームワード112のセットに関連付けられる、許可されたユーザ102(たとえば、バーブ)によって確認119が話されたことを検証する。「停止」というそれぞれのアクションの実施を許可するバーブ102からの「はい」という確認119を受け取ったこと、および発話148に対応するオーディオデータに関して実施された話者検証プロセス400bが、発話148がバーブ102によって話されたことを示すことに基づいて、AED104は、長期にわたる動作を制御するための、異なるユーザ103によって話された、識別されたウォームワード「停止」112に関連付けられるそれぞれのアクションを実施することに進み得る。逆に、発話148に対応するオーディオデータに関して実施された話者検証プロセス400bが、発話148がバーブ102によって話されたのではないことを示すとき、またはその代わりに、バーブ102によって話された確認119が「いいえ」であったとき、AED104は、AED104からの音楽再生122が停止することなく続行されるように、「停止」というそれぞれのアクションの実施を抑制し得る。
追加または代替として、デジタルアシスタント105は、バーブ102のユーザアカウントにリンクされたユーザデバイス50に、「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可または拒否するようにバーブ102にプロンプト指示する通知を提供し得る。たとえば、ユーザデバイス50上に表示されるGUI300は、バーブ102が「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可または拒否することを可能にするための通知としてプロンプトをレンダリングし得る。一例として、GUI300は、バーブ102がそれぞれのアクションの実施を許可または拒否することを選択し得るグラフィカル要素/ボタンをレンダリングする。たとえば、バーブ102は、(たとえば、GUI300内の「はい」についてのグラフィカル要素をタッチすることによって)「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可することに対応する「はい」という確認119についてのグラフィカル要素/ボタンの選択を示すユーザ入力指示を与え得る。バーブ102による「はい」という確認119についてのグラフィカル要素/ボタンの選択を示すユーザ入力指示の受取りに応答して、AED104は、長期にわたる動作を制御するための、異なるユーザ103によって話された、識別された「停止」というウォームワード112に関連付けられるそれぞれのアクションを実施することに進み得る。逆に、バーブ102は、(たとえば、GUI300内の「いいえ」についてのグラフィカル要素をタッチすることによって)「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を拒否するために、「いいえ」という確認119についてのグラフィカル要素/ボタンの選択を示すユーザ入力指示を与え、それによってAED104にそれぞれのアクションの実施を抑制させ得る。
いくつかの実装では、どのユーザ102、103が発話147を話したかを識別することは、バーブ102がアクションを許可するか、それとも拒否するかを決定する助けとなり得る(たとえば、1人または複数のユーザ102がバーブ102と共に部屋の中にいるとき)。図1Cに示される例を続けると、「停止」というウォームワード112に関連付けられるそれぞれのアクションの実施を許可または拒否するようにバーブ102にプロンプト指示することは、発話147を話した異なるユーザ103を識別することをさらに含む。ここで、AED104が発話147に対応するオーディオデータ402に関する話者検証プロセス400bを実施するとき、話者検証プロセス400bは、ユーザ103を第2の登録済みユーザ200b(たとえば、エド)として識別し得る。たとえば、プロセス400bは、ユーザ103によって話された発話147の特徴を表す話者弁別ベクトル412が、第2の登録済みユーザ200bについてのAED104上に記憶されたそれぞれの登録済み話者ベクトル154に合致すると判定し得る。したがって、ユーザ103が登録済みユーザ200のうちの1人として識別されるとき、デジタルアシスタント105は、「バーブ、音楽を停止するようにとのエドの要求を許可しますか?エドは音楽再生設定を制御することを許可されていますか?」とユーザ102にプロンプト指示する、AED104のスピーカ18からの可聴出力のための合成音声123を同様に生成し得る。それに応答して、バーブ102は、「はい」という確認119を含む発話148を話す。いくつかの実装では、バーブ102は、音楽122の再生を停止するようにとのエド103の要求を許可するが、エド103による長期にわたる動作の将来の制御を拒否する。バーブ102はまた、所定の期間(たとえば、1時間、1日など)にエド102が長期にわたる動作を制御することを許可する能力を有し得る。
図5は、長期にわたる動作に関連付けられる1つまたは複数のウォームワード112のセットを活動化するための方法500についての動作の例示的構成のフローチャートである。動作510において、方法500は、データ処理ハードウェア10において、ユーザ102によって話され、ユーザ102に関連するアシスタント対応デバイス(AED)104によって取り込まれた発話106に対応するオーディオデータ402を受信することを含む。発話106は、デジタルアシスタント105が長期にわたる動作を実施するためのコマンドを含む。長期にわたる動作は、指定の時間量にわたるタイマを設定すること、またはストリーミングサービスから音楽を再生することを含み得る。AED104は、話者識別プロセス400aを実施することにより、発話106を話したユーザ102を識別し得る。
動作520において、方法500は、発話106に対応するオーディオデータ402を受信した後、データ処理ハードウェア10により、1つまたは複数のウォームワード112のセットを活動化することと、データ処理ハードウェア10により、活動化された1つまたは複数のウォームワード112のセットを、発話106を話したユーザ102のみに関連付けることとを含む。1つまたは複数のウォームワード112のセット内の各ウォームワード112は、長期にわたる動作を制御するためのそれぞれのアクションに関連付けられる。たとえば、AED104のスピーカ18からの再生オーディオとして音楽122を再生するという長期にわたる動作についてのそれぞれのアクションは、プレイリスト中の前の歌に戻ること、音楽プレイリストを再生すること、音楽プレイリストを一時停止すること、プレイリスト中の次の歌にスキップすること、およびスピーカ18の音量レベルを調節することのうちの1つまたは複数を含み得る。
動作530において、方法500はまた、デジタルアシスタント105が長期にわたる動作を実施している間に、データ処理ハードウェア10において、AED104によって取り込まれた追加の発話146に対応する追加のオーディオデータ402を受信することをも含む。AED104は、データ処理ハードウェア10により、追加のオーディオデータ402内で、活動化された1つまたは複数のウォームワード112のセットからのウォームワード112のうちの1つを識別する。AED104は、取り込まれたオーディオに関する音声認識を実施することなく、活動化された1つまたは複数のウォームワード112のセットからのウォームワード112のうちの1つが追加のオーディオデータ402内にあることを識別し得る。たとえば、AED104は、発話106に対応するオーディオデータ402を、活動化された1つまたは複数のウォームワード112のセットに対応する、活動化されたウォームワードモデル114と比較し得る。
動作540において、方法500は、データ処理ハードウェア10により、追加のオーディオデータ402に関する話者検証400bを実施して、活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって追加の発話146が話されたかどうかを判定することをさらに含む。活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって追加の発話146が話されたとき、方法500は、データ処理ハードウェア10により、長期にわたる動作を制御するためのウォームワード112のうちの識別された1つに関連付けられるそれぞれのアクションを実施することを含む。追加の発話146が活動化された1つまたは複数のウォームワード112のセットに関連付けられる同一のユーザ102によって話されたのではないことを話者検証400が示すとき、AED104は、それぞれのアクションの実施を抑制し得る。
図6は、本文書で説明されるシステムおよび方法を実装するために使用され得る例示的コンピューティングデバイス600の概略図である。コンピューティングデバイス600は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことが意図される。ここで示される構成要素、その接続および関係、ならびにその機能は、例示的なものに過ぎないことを意味し、本文書で説明および/または特許請求される本発明の実装を限定することを意味しない。
コンピューティングデバイス600は、プロセッサ610と、メモリ620と、記憶デバイス630と、メモリ620および高速拡張ポート650に接続する高速インターフェース/コントローラ640と、低速バス670および記憶デバイス630に接続する低速インターフェース/コントローラ660とを含む。構成要素610、620、630、640、650、および660のそれぞれは、様々なバスを使用して相互接続され、共通マザーボード上に、または他の方式で適宜取り付けられ得る。プロセッサ610は、高速インターフェース640に結合されたディスプレイ680などの外部入力/出力デバイス上のグラフィカルユーザインターフェース(GUI)のためのグラフィカル情報を表示するために、メモリ620内に、または記憶デバイス630上に記憶された命令を含む、コンピューティングデバイス600内で実行される命令を処理し得る。別の実装では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数のタイプのメモリと共に適宜使用され得る。さらに、複数のコンピューティングデバイス600が接続され得、各デバイスが必要な動作の各部分を実現する(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)。
メモリ620は、コンピューティングデバイス600内の情報を非一時的に記憶する。メモリ620は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであり得る。非一時的メモリ620は、プログラム(たとえば、命令のシーケンス)またはデータ(たとえば、プログラム状態情報)をコンピューティングデバイス600によって使用する目的で一時的または永続的に記憶するために使用される物理デバイスであり得る。不揮発性メモリの例には、限定はしないが、(たとえば、一般にブートプログラムなどのファームウェアのために使用される)フラッシュメモリおよび読取り専用メモリ(ROM)/プログラマブル読取り専用メモリ(PROM)/消去可能プログラマブル読取り専用メモリ(EPROM)/電気消去可能プログラマブル読取り専用メモリ(EEPROM)が含まれる。揮発性メモリの例には、限定はしないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、静的ランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープが含まれる。
記憶デバイス630は、コンピューティングデバイス600用のマスストレージを提供することができる。いくつかの実装では、記憶デバイス630はコンピュータ可読媒体である。様々な異なる実装では、記憶デバイス630は、フロッピィディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の類似のソリッドステートメモリデバイス、あるいはストレージエリアネットワークまたは他の構成内のデバイスを含むデバイスのアレイであり得る。追加の実装では、コンピュータプログラム製品は情報キャリアで有形に具体化される。コンピュータプログラム製品は、実行されるとき、前述のような1つまたは複数の方法を実施する命令を含む。情報キャリアは、メモリ620、記憶デバイス630、プロセッサ610上のメモリなどの、コンピュータ可読または機械可読媒体である。
高速コントローラ640は、コンピューティングデバイス600についての帯域幅集約的動作を管理し、低速コントローラ660はより低い帯域幅集約的動作を管理する。そのような責務の割振りは例示的なものに過ぎない。いくつかの実装では、高速コントローラ640は、メモリ620に、(たとえば、グラフィックスプロセッサまたはアクセラレータを通じて)ディスプレイ680に、および様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート650に結合される。いくつかの実装では、低速コントローラ660は、記憶デバイス630および低速拡張ポート690に結合される。低速拡張ポート690は、様々な通信ポート(たとえば、USB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含み得、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入力/出力デバイスに結合され、またはたとえばネットワークアダプタを通じてスイッチやルータなどのネットワーキングデバイスに結合され得る。
コンピューティングデバイス600は、図に示されるように、いくつかの異なる形態で実装され得る。たとえば、コンピューティングデバイス600は、標準サーバ600aとして実装され、もしくはそのようなサーバ600aのグループ内で複数回実装され、ラップトップコンピュータ600bとして実装され、またはラックサーバシステム600cの部分として実装され得る。
本明細書において説明されるシステムおよび技法の様々な実装は、デジタル電子および/または光学回路、集積回路、専用に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せとして実現され得る。これらの様々な実装は、専用または汎用であり、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスとの間でデータおよび命令を受け取り、データおよび命令を送るように結合され得る少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムとしての実装を含み得る。
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実施させるコンピュータソフトウェアを指すことがある。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「app」、または「プログラム」と呼ばれることがある。例示的アプリケーションには、限定はしないが、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションが含まれる。
こうしたコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとも呼ばれる)は、プログラマブルプロセッサのための機械語命令を含み、高水準手続型および/またはオブジェクト指向プログラミング言語、ならびに/あるいはアセンブリ/機械語で実装され得る。本明細書では、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械語命令を機械可読信号として受け取る機械可読媒体を含む、プログラマブルプロセッサに機械語命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置、および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械語命令および/またはデータを提供するために使用される任意の信号を指す。
本明細書において説明されるプロセスおよび論理フローは、入力データに対して作用して出力を生成することによって機能を実施するように1つまたは複数のコンピュータプログラムを実行する、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサによって実施され得る。プロセスおよび論理フローはまた、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実施され得る。コンピュータプログラムの実行に適したプロセッサには、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが含まれる。一般には、プロセッサは、読取り専用メモリまたはランダムアクセスメモリあるいはその両方から命令およびデータを受け取る。コンピュータの不可欠な要素は、命令を実施するためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般には、コンピュータはまた、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば磁気ディスク、光磁気ディスク、または光ディスクをも含み、あるいは大容量記憶デバイスからデータを受け取り、もしくは大容量記憶デバイスにデータを転送し、またはその両方を行うように動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体には、例として半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば内蔵ハードディスクまたは取外し可能ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスが含まれる。プロセッサおよびメモリは、専用論理回路によって補足され、または専用論理回路内に組み込まれ得る。
ユーザとの対話を実現するために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイデバイス、たとえばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーンと、任意選択で、ユーザがそれによってコンピュータに入力を与え得るキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実装され得る。ユーザとの対話を実現するために他の種類のデバイスも使用され得、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであり得、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受け取られ得る。さらに、コンピュータは、ユーザによって使用されるデバイスに文書を送り、デバイスから文書を受け取ることによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受け取った要求に応答してウェブブラウザにウェブページを送ることによってユーザと対話し得る。
いくつかの実装が説明された。それでも、本開示の趣旨および範囲から逸脱することなく様々な修正が行われ得ることを理解されよう。したがって、他の実装は以下の特許請求の範囲内にある。
10 データ処理ハードウェア
12 メモリハードウェア
16 マイクロフォン
18 スピーカ
50 ユーザデバイス
100 システム
100a システム
100b システム
102 ユーザ
104 アシスタント対応デバイス(AED)
105 デジタルアシスタント
106 発話
108 ホットワード検出器
110 ホットワード
112 ウォームワード
114 ウォームワードモデル
116 音声認識器
118 コマンド
120 サーバ
122 音楽
123 合成音声
124 動作識別器
126 ウォームワードセレクタ
132 ネットワーク
154 登録済み話者ベクトル
158 テキスト依存話者ベクトル
160 関連付け器
200 登録済みユーザ
300 グラフィカルユーザインターフェース(GUI)
400a 話者識別プロセス
400b 話者検証プロセス
402 オーディオデータ
410 話者弁別モデル
411 第1の話者弁別ベクトル
412 第2の話者弁別ベクトル
420 比較器
600 コンピューティングデバイス
600a 標準サーバ
600b ラップトップコンピュータ
600c ラックサーバシステム
610 プロセッサ
620 メモリ
630 記憶デバイス
640 高速インターフェース/コントローラ
650 高速拡張ポート
660 低速インターフェース/コントローラ
670 低速バス
680 ディスプレイ
690 低速拡張ポート

Claims (28)

  1. 話者依存ウォームワード(112)を活動化するための方法(500)であって、
    データ処理ハードウェア(10)において、ユーザによって話され、前記ユーザに関連するアシスタント対応デバイス(104)によって取り込まれた発話に対応するオーディオデータ(402)を受信するステップであって、前記発話が、デジタルアシスタント(105)が長期にわたる動作を実施するためのコマンド(118)を含む、ステップと、
    前記発話に対応する前記オーディオデータ(402)を受信した後、
    前記データ処理ハードウェア(10)により、前記長期にわたる動作を制御するためのそれぞれのアクションにそれぞれ関連付けられる1つまたは複数のウォームワード(112)のセットを活動化するステップと、
    データ処理ハードウェア(10)により、活動化された1つまたは複数のウォームワード(112)のセットを、前記発話を話した前記ユーザのみに関連付けるステップと、
    前記デジタルアシスタント(105)が前記長期にわたる動作を実施している間に、
    前記データ処理ハードウェア(10)において、前記アシスタント対応デバイス(104)によって取り込まれた追加の発話に対応する追加のオーディオデータ(402)を受信するステップと、
    前記データ処理ハードウェア(10)により、前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの1つを識別するステップと、
    前記データ処理ハードウェア(10)により、前記追加のオーディオデータ(402)に関する話者検証を実施して、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる同一のユーザ(102)によって話されたかどうかを判定するステップと、
    前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたとき、データ処理ハードウェア(10)により、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられる前記それぞれのアクションを実施するステップと
    を含む方法(500)。
  2. 1つまたは複数のウォームワード(112)の前記セットを活動化する前記ステップが、前記活動化された1つまたは複数のウォームワード(112)のセット内のそれぞれの対応するウォームワード(112)について、それぞれのウォームワードモデル(114)を活動化して、前記ユーザに関連付けられる前記アシスタント対応デバイス(104)上で実行するステップを含み、
    前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの前記1つを識別する前記ステップが、前記ウォームワード(112)のうちの対応する1つについて活動化された前記それぞれのウォームワードモデル(114)を使用して、前記追加のオーディオデータ(402)に関する音声認識を実施することなく、前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを検出するステップを含む、請求項1に記載の方法(500)。
  3. 前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを検出する前記ステップが、
    前記追加のオーディオデータ(402)のオーディオ特徴を抽出するステップと、
    前記ウォームワード(112)のうちの対応する1つについて活動化された前記それぞれのウォームワードモデル(114)を使用して、抽出されたオーディオ特徴を処理することによってウォームワード信頼スコアを生成するステップと、
    前記ウォームワード信頼スコアがウォームワード信頼しきい値を満たすとき、前記追加の発話に対応する前記追加のオーディオデータ(402)が前記ウォームワード(112)のうちの対応する1つを含むと判定するステップと
    を含む、請求項2に記載の方法(500)。
  4. 1つまたは複数のウォームワード(112)の前記セットを活動化する前記ステップが、前記アシスタント対応デバイス(104)上で音声認識器(116)を実行するステップを含み、前記音声認識器(116)が、前記活動化された1つまたは複数のウォームワード(112)のセット内の前記1つまたは複数のウォームワード(112)を認識するようにバイアスされ、
    前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの前記1つを識別する前記ステップが、前記アシスタント対応デバイス(104)上で実行中の前記音声認識器(116)を使用して、前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを認識するステップを含む、請求項1から3のいずれか一項に記載の方法(500)。
  5. 前記ユーザによって話された前記発話に対応する前記オーディオデータ(402)を受け取った後、前記データ処理ハードウェア(10)により、
    前記ユーザによって話された前記発話に対応する前記オーディオデータ(402)から、前記ユーザによって話された前記発話の特徴を表す第1の話者弁別ベクトル(411)を抽出するステップと、
    抽出された前記話者弁別ベクトルが、前記アシスタント対応デバイス(104)上に記憶された何らかの登録済み話者ベクトル(154)に合致するかどうかを判定するステップであって、各登録済み話者ベクトル(154)が、前記アシスタント対応デバイス(104)の異なるそれぞれの登録済みユーザ(200)に関連付けられる、ステップと、
    前記第1の話者弁別ベクトル(411)が前記登録済み話者ベクトル(154)のうちの1つに合致するとき、前記発話を話した前記ユーザを、抽出された前記話者弁別ベクトルに合致する前記登録済み話者ベクトル(154)のうちの1つに関連付けられるそれぞれの登録済みユーザ(200)として識別するステップと
    によって、前記オーディオデータ(402)に関する話者識別を実施して、前記発話を話した前記ユーザを識別することを実施するステップをさらに含む、請求項1から4のいずれか一項に記載の方法(500)。
  6. 前記ユーザによって話された前記発話が、前記デジタルアシスタント(105)が前記長期にわたる動作を実施するための前記コマンド(118)に先行するホットワード(110)をさらに含み、
    前記第1の話者弁別ベクトル(411)が、前記ホットワード(110)を含む前記オーディオデータ(402)の部分から抽出されたテキスト依存話者弁別ベクトルを含み、
    各登録済み話者ベクトル(154)が、前記ホットワード(110)を話す前記それぞれの登録済みユーザ(200)の1つまたは複数のオーディオサンプルから抽出されたテキスト依存登録済み話者ベクトル(154)を含む、請求項5に記載の方法(500)。
  7. 前記追加のオーディオデータ(402)に関する前記話者検証を実施する前記ステップが、
    前記ウォームワード(112)のうちの前記1つの前記追加の発話に対応する前記追加のオーディオデータ(402)から、前記追加の発話の特徴を表す第2の話者弁別ベクトルを抽出するステップと、
    抽出された前記第2の話者弁別ベクトルが、前記発話を話した前記ユーザとして識別された前記それぞれの登録済みユーザ(200)についての基準話者ベクトル(155)に合致するかどうかを判定するステップと、
    抽出された前記第2の話者弁別ベクトルが前記基準話者ベクトル(155)に合致するとき、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたと判定するステップと
    を含む、請求項5または6に記載の方法(500)。
  8. 前記基準話者ベクトル(155)が、前記それぞれの登録済みユーザ(200)に関連付けられる前記登録済み話者ベクトル(154)を含む、請求項7に記載の方法(500)。
  9. 前記基準話者ベクトル(155)が、前記ウォームワード(112)のうちの識別された1つを話す前記それぞれの登録済みユーザ(200)の1つまたは複数のオーディオサンプルから抽出されたテキスト依存話者ベクトル(158)を含む、請求項7に記載の方法(500)。
  10. 前記第1の話者弁別ベクトル(411)が前記登録済み話者ベクトル(154)のいずれにも合致しないとき、前記発話を話した前記ユーザを前記アシスタント対応デバイス(104)のゲストユーザ(102)として識別するステップ、および
    前記追加のオーディオデータ(402)に関する前記話者検証を実施する前記ステップが、
    前記追加のオーディオデータ(402)から、前記追加の発話の特徴を表す第2の話者弁別ベクトル(412)を抽出するステップと、
    前記第2の話者弁別ベクトル(412)が、前記特徴を表す前記第1の話者弁別ベクトル(411)に合致するかどうかを判定するステップと、
    前記第1の話者弁別ベクトルおよび抽出された前記第2の話者弁別ベクトルが合致するとき、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたと判定するステップと
    を含む、請求項5から9のいずれか一項に記載の方法(500)。
  11. 前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザとは異なるユーザ(103)によって話されたとき、前記データ処理ハードウェア(10)により、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションの実施を抑制するステップをさらに含む、請求項1から10のいずれか一項に記載の方法(500)。
  12. 前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザとは異なるユーザ(103)によって話されたとき、
    前記データ処理ハードウェア(10)により、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザに、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションの実施を許可するようにプロンプト指示するステップと、
    前記データ処理ハードウェア(10)において、前記それぞれのアクションの実施を許可する前記ユーザからの確認(119)を受信するステップと、
    前記データ処理ハードウェア(10)により、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションを実施するステップと
    をさらに含む、請求項1から11のいずれか一項に記載の方法(500)。
  13. 前記ユーザにプロンプト指示する前記ステップが、前記追加の発話を話した前記異なるユーザ(103)を識別するステップを含む、請求項12に記載の方法(500)。
  14. 前記データ処理ハードウェア(10)により、前記デジタルアシスタント(105)が前記長期にわたる動作を実施することを停止したときを判定するステップと、
    前記データ処理ハードウェア(10)により、1つまたは複数のウォームワード(112)の前記セットを非活動化するステップと
    をさらに含む、請求項1から13のいずれか一項に記載の方法(500)。
  15. データ処理ハードウェア(10)と、
    前記データ処理ハードウェア(10)と通信しているメモリハードウェア(12)であって、前記データ処理ハードウェア(10)上で実行されるとき、前記データ処理ハードウェア(10)に、
    ユーザによって話され、前記ユーザに関連するアシスタント対応デバイス(104)によって取り込まれた発話に対応するオーディオデータ(402)を受信することであって、前記発話が、デジタルアシスタント(105)が長期にわたる動作を実施するためのコマンド(118)を含むことと、
    前記発話に対応する前記オーディオデータ(402)を受け取った後、
    前記長期にわたる動作を制御するためのそれぞれのアクションにそれぞれ関連付けられる1つまたは複数のウォームワード(112)のセットを活動化することと、
    活動化された1つまたは複数のウォームワード(112)のセットを、前記発話を話した前記ユーザのみに関連付けることと、
    前記デジタルアシスタント(105)が前記長期にわたる動作を実施している間に、
    前記アシスタント対応デバイス(104)によって取り込まれた追加の発話に対応する追加のオーディオデータ(402)を受信することと、
    前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの1つを識別することと
    前記追加のオーディオデータ(402)に関する話者検証を実施して、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる同一のユーザ(102)によって話されたかどうかを判定することと、
    前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたとき、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションを実施することと
    を含む動作を実施させる命令を記憶する、メモリハードウェア(12)と
    を備えるシステム(100)。
  16. 1つまたは複数のウォームワード(112)の前記セットを活動化することが、前記活動化された1つまたは複数のウォームワード(112)のセット内のそれぞれの対応するウォームワード(112)について、それぞれのウォームワードモデル(114)を活動化して、前記ユーザに関連付けられる前記アシスタント対応デバイス(104)上で実行することを含み、
    前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの前記1つを識別することが、前記ウォームワード(112)のうちの対応する1つについて活動化された前記それぞれのウォームワードモデル(114)を使用して、前記追加のオーディオデータ(402)に関する音声認識を実施することなく、前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを検出することを含む、請求項15に記載のシステム(100)。
  17. 前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを検出することが、
    前記追加のオーディオデータ(402)のオーディオ特徴を抽出することと、
    前記ウォームワード(112)のうちの対応する1つについて活動化された前記それぞれのウォームワードモデルを使用して、抽出されたオーディオ特徴を処理することによってウォームワード信頼スコアを生成することと、
    前記ウォームワード信頼スコアがウォームワード信頼しきい値を満たすとき、前記追加の発話に対応する前記追加のオーディオデータ(402)が前記ウォームワード(112)のうちの対応する1つを含むと判定することと
    を含む、請求項16または17に記載のシステム(100)。
  18. 1つまたは複数のウォームワード(112)の前記セットを活動化することが、前記アシスタント対応デバイス(104)上で音声認識器(116)を実行することを含み、前記音声認識器(116)が、前記活動化された1つまたは複数のウォームワード(112)のセット内の前記1つまたは複数のウォームワード(112)を認識するようにバイアスされ、
    前記追加のオーディオデータ(402)内で、前記活動化された1つまたは複数のウォームワード(112)のセットからの前記ウォームワード(112)のうちの前記1つを識別することが、前記アシスタント対応デバイス(104)上で実行中の前記音声認識器(116)を使用して、前記追加のオーディオデータ(402)内の前記ウォームワード(112)のうちの前記1つを認識することを含む、請求項15から17のいずれか一項に記載のシステム(100)。
  19. 前記動作が、前記ユーザによって話された前記発話に対応する前記オーディオデータ(402)を受け取った後、
    前記ユーザによって話された前記発話に対応する前記オーディオデータ(402)から、前記ユーザによって話された前記発話の特徴を表す第1の話者弁別ベクトル(411)を抽出することと、
    抽出された前記話者弁別ベクトルが、前記アシスタント対応デバイス(104)上に記憶された何らかの登録済み話者ベクトル(154)に合致するかどうかを判定することであって、各登録済み話者ベクトル(154)が、前記アシスタント対応デバイス(104)の異なるそれぞれの登録済みユーザ(200)に関連付けられることと、
    前記第1の話者弁別ベクトル(411)が前記登録済み話者ベクトル(154)のうちの1つに合致するとき、前記発話を話した前記ユーザを、抽出された前記話者弁別ベクトルに合致する前記登録済み話者ベクトル(154)のうちの1つに関連付けられるそれぞれの登録済みユーザ(200)として識別することと
    によって、前記オーディオデータ(402)に関する話者識別を実施して、前記発話を話した前記ユーザを識別することをさらに含む、請求項15から18のいずれか一項に記載のシステム(100)。
  20. 前記ユーザによって話された前記発話が、前記デジタルアシスタント(105)が前記長期にわたる動作を実施するための前記コマンド(118)に先行するホットワード(110)をさらに含み、
    前記第1の話者弁別ベクトル(411)が、前記ホットワード(110)を含む前記オーディオデータ(402)の部分から抽出されたテキスト依存話者弁別ベクトルを含み、
    各登録済み話者ベクトル(154)が、前記ホットワード(110)を話す前記それぞれの登録済みユーザ(200)の1つまたは複数のオーディオサンプルから抽出されたテキスト依存登録済み話者ベクトル(154)を含む、請求項19に記載のシステム(100)。
  21. 前記追加のオーディオデータ(402)に関する前記話者検証を実施することが、
    前記ウォームワード(112)のうちの前記1つの前記追加の発話に対応する前記追加のオーディオデータ(402)から、前記追加の発話の特徴を表す第2の話者弁別ベクトル(412)を抽出することと、
    抽出された前記第2の話者弁別ベクトルが、前記発話を話した前記ユーザとして識別された前記それぞれの登録済みユーザ(200)についての基準話者ベクトル(155)に合致するかどうかを判定することと、
    抽出された前記第2の話者弁別ベクトル(412)が前記基準話者ベクトル(155)に合致するとき、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたと判定することと
    を含む、請求項19または20に記載のシステム(100)。
  22. 前記基準話者ベクトル(155)が、前記それぞれの登録済みユーザ(200)に関連付けられる前記登録済み話者ベクトル(154)を含む、請求項21に記載のシステム(100)。
  23. 前記基準話者ベクトル(155)が、前記ウォームワード(112)のうちの識別された1つを話す前記それぞれの登録済みユーザ(200)の1つまたは複数のオーディオサンプルから抽出されたテキスト依存話者ベクトル(158)を含む、請求項21に記載のシステム(100)。
  24. 前記第1の話者弁別ベクトル(411)が前記登録済み話者ベクトル(154)のいずれにも合致しないとき、前記発話を話した前記ユーザを前記アシスタント対応デバイス(104)のゲストユーザ(102)として識別すること、および
    前記追加のオーディオデータ(402)に関する前記話者検証を実施することが、
    前記追加のオーディオデータ(402)から、前記追加の発話の特徴を表す第2の話者弁別ベクトル(412)を抽出することと、
    前記第2の話者弁別ベクトル(412)が、前記特徴を表す前記第1の話者弁別ベクトル(411)に合致するかどうかを判定することと、
    前記第1の話者弁別ベクトルおよび抽出された前記第2の話者弁別ベクトルが合致するとき、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記同一のユーザ(102)によって話されたと判定することと
    を含む、請求項19から23のいずれか一項に記載のシステム(100)。
  25. 前記動作が、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザとは異なるユーザ(103)によって話されたとき、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションの実施を抑制することをさらに含む、請求項15から24のいずれか一項に記載のシステム(100)。
  26. 前記動作が、前記追加の発話が、前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザとは異なるユーザ(103)によって話されたとき、
    前記活動化された1つまたは複数のウォームワード(112)のセットに関連付けられる前記ユーザに、前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションの実施を許可するようにプロンプト指示することと、
    前記それぞれのアクションの実施を許可する前記ユーザからの確認(119)を受信することと、
    前記長期にわたる動作を制御するための前記ウォームワード(112)のうちの識別された1つに関連付けられるそれぞれのアクションを実施することと
    をさらに含む、請求項15から25のいずれか一項に記載のシステム(100)。
  27. 前記ユーザにプロンプト指示することが、前記追加の発話を話した前記異なるユーザ(103)を識別することを含む、請求項26に記載のシステム(100)。
  28. 前記動作が、
    前記デジタルアシスタントが前記長期にわたる動作を実施することを停止したときを判定することと、
    1つまたは複数のウォームワード(112)の前記セットを非活動化することと
    をさらに含む、請求項15から27のいずれか一項に記載のシステム(100)。
JP2023535766A 2020-12-10 2021-11-17 話者依存フォローアップアクションおよびウォームワード Pending JP2023552855A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/117,799 US11557278B2 (en) 2020-12-10 2020-12-10 Speaker dependent follow up actions and warm words
US17/117,799 2020-12-10
PCT/US2021/059693 WO2022125279A1 (en) 2020-12-10 2021-11-17 Speaker dependent follow up actions and warm words

Publications (1)

Publication Number Publication Date
JP2023552855A true JP2023552855A (ja) 2023-12-19

Family

ID=78918666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023535766A Pending JP2023552855A (ja) 2020-12-10 2021-11-17 話者依存フォローアップアクションおよびウォームワード

Country Status (6)

Country Link
US (1) US11557278B2 (ja)
EP (1) EP4248440A1 (ja)
JP (1) JP2023552855A (ja)
KR (1) KR20230118643A (ja)
CN (1) CN116848582A (ja)
WO (1) WO2022125279A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240119088A1 (en) * 2022-10-06 2024-04-11 Google Llc Handling Contradictory Queries on a Shared Device
US20240161741A1 (en) * 2022-11-14 2024-05-16 Google Llc Short-Lived Repeat Voice Commands
US20240161740A1 (en) * 2022-11-14 2024-05-16 Google Llc Multi-Assistant Warm Words
US20240169995A1 (en) * 2022-11-17 2024-05-23 Google Llc Multi-User Warm Words

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8121895B2 (en) * 2005-07-21 2012-02-21 Adknowledge, Inc. Method and system for delivering electronic communications
US8386251B2 (en) * 2009-06-08 2013-02-26 Microsoft Corporation Progressive application of knowledge sources in multistage speech recognition
DE102009051508B4 (de) * 2009-10-30 2020-12-03 Continental Automotive Gmbh Vorrichtung, System und Verfahren zur Sprachdialogaktivierung und -führung
US9576572B2 (en) * 2012-06-18 2017-02-21 Telefonaktiebolaget Lm Ericsson (Publ) Methods and nodes for enabling and producing input to an application
CN103064530B (zh) * 2012-12-31 2017-03-08 华为技术有限公司 输入处理方法和装置
US20140343949A1 (en) * 2013-05-17 2014-11-20 Fortemedia, Inc. Smart microphone device
WO2015008162A2 (en) * 2013-07-15 2015-01-22 Vocavu Solutions Ltd. Systems and methods for textual content creation from sources of audio that contain speech
US8719039B1 (en) * 2013-12-05 2014-05-06 Google Inc. Promoting voice actions to hotwords
US9959863B2 (en) * 2014-09-08 2018-05-01 Qualcomm Incorporated Keyword detection using speaker-independent keyword models for user-designated keywords
US9940929B2 (en) * 2015-12-09 2018-04-10 Lenovo (Singapore) Pte. Ltd. Extending the period of voice recognition
US10365887B1 (en) * 2016-03-25 2019-07-30 Amazon Technologies, Inc. Generating commands based on location and wakeword
US10242673B2 (en) * 2016-12-07 2019-03-26 Google Llc Preventing of audio attacks using an input and an output hotword detection model
US10276161B2 (en) * 2016-12-27 2019-04-30 Google Llc Contextual hotwords
DE112018002857T5 (de) * 2017-12-26 2020-02-27 Robert Bosch Gmbh Sprecheridentifikation mit ultrakurzen Sprachsegmenten für Fern- und Nahfeld-Sprachunterstützungsanwendungen
US10580414B2 (en) * 2018-05-07 2020-03-03 Microsoft Technology Licensing, Llc Speaker recognition/location using neural network
KR102498811B1 (ko) * 2018-08-21 2023-02-10 구글 엘엘씨 자동화된 어시스턴트를 호출하기 위한 다이내믹 및/또는 컨텍스트 특정 핫워드
JP7322076B2 (ja) * 2018-08-21 2023-08-07 グーグル エルエルシー 自動アシスタントを起動させるための動的および/またはコンテキスト固有のホットワード
US10978059B2 (en) * 2018-09-25 2021-04-13 Google Llc Speaker diarization using speaker embedding(s) and trained generative model
US11217254B2 (en) * 2018-12-24 2022-01-04 Google Llc Targeted voice separation by speaker conditioned on spectrogram masking
US11349834B2 (en) * 2019-01-30 2022-05-31 Ncr Corporation Multi-factor secure operation authentication
US10897508B2 (en) * 2019-03-08 2021-01-19 International Business Machines Corporation Personal call center assistant
US20200312315A1 (en) * 2019-03-28 2020-10-01 Apple Inc. Acoustic environment aware stream selection for multi-stream speech recognition
EP3726856B1 (en) * 2019-04-17 2022-11-16 Oticon A/s A hearing device comprising a keyword detector and an own voice detector
US11232800B2 (en) * 2019-04-23 2022-01-25 Google Llc Personalized talking detector for electronic device
EP3888084A4 (en) * 2019-05-16 2022-01-05 Samsung Electronics Co., Ltd. METHOD AND DEVICE FOR PROVIDING A VOICE RECOGNITION SERVICE
US11189279B2 (en) * 2019-05-22 2021-11-30 Microsoft Technology Licensing, Llc Activation management for multiple voice assistants
US12001754B2 (en) * 2019-11-21 2024-06-04 Motorola Mobility Llc Context based media selection based on preferences setting for active consumer(s)
US11295741B2 (en) * 2019-12-05 2022-04-05 Soundhound, Inc. Dynamic wakewords for speech-enabled devices
US11341954B2 (en) * 2019-12-17 2022-05-24 Google Llc Training keyword spotters
KR20210079060A (ko) * 2019-12-19 2021-06-29 엘지전자 주식회사 화자 음성 위조 검사 방법 및 장치
US11328733B2 (en) * 2020-09-24 2022-05-10 Synaptics Incorporated Generalized negative log-likelihood loss for speaker verification
US20220165275A1 (en) * 2020-10-01 2022-05-26 Pindrop Security, Inc. Enrollment and authentication over a phone call in call centers
US11830486B2 (en) * 2020-10-13 2023-11-28 Google Llc Detecting near matches to a hotword or phrase
US11468900B2 (en) * 2020-10-15 2022-10-11 Google Llc Speaker identification accuracy

Also Published As

Publication number Publication date
KR20230118643A (ko) 2023-08-11
WO2022125279A1 (en) 2022-06-16
CN116848582A (zh) 2023-10-03
US11557278B2 (en) 2023-01-17
EP4248440A1 (en) 2023-09-27
US20220189465A1 (en) 2022-06-16

Similar Documents

Publication Publication Date Title
US10796702B2 (en) Method and system for controlling home assistant devices
US10861444B2 (en) Systems and methods for determining whether to trigger a voice capable device based on speaking cadence
US11289100B2 (en) Selective enrollment with an automated assistant
US11557278B2 (en) Speaker dependent follow up actions and warm words
US10255922B1 (en) Speaker identification using a text-independent model and a text-dependent model
KR20180050365A (ko) 화자 검증
US11170787B2 (en) Voice-based authentication
US20230362026A1 (en) Output device selection
US20240046935A1 (en) Generating and/or utilizing voice authentication biasing parameters for assistant devices
US20230377580A1 (en) Dynamically adapting on-device models, of grouped assistant devices, for cooperative processing of assistant requests
JP2024510798A (ja) ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証
US20240169995A1 (en) Multi-User Warm Words
US20240184867A1 (en) Adaptive Guest Mode for Portable Speakers
US20240119088A1 (en) Handling Contradictory Queries on a Shared Device
US20240161741A1 (en) Short-Lived Repeat Voice Commands
US20240119944A1 (en) Voice Query Handling in an Environment with Multiple Users
US20240161740A1 (en) Multi-Assistant Warm Words
KR20240096889A (ko) 자동화 어시스턴트 디바이스 사이의 웜 워드 중재
KR20240033006A (ko) 소프트 핫워드로 자동 스피치 인식
EP4217845A1 (en) Selecting between multiple automated assistants based on invocation properties

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230809

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230809

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230809

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20231121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240516