JP2023540398A - テキスト依存型話者検証機能の自動生成および/または使用 - Google Patents

テキスト依存型話者検証機能の自動生成および/または使用 Download PDF

Info

Publication number
JP2023540398A
JP2023540398A JP2023517765A JP2023517765A JP2023540398A JP 2023540398 A JP2023540398 A JP 2023540398A JP 2023517765 A JP2023517765 A JP 2023517765A JP 2023517765 A JP2023517765 A JP 2023517765A JP 2023540398 A JP2023540398 A JP 2023540398A
Authority
JP
Japan
Prior art keywords
audio data
user
speaker
utterance
determining
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.)
Granted
Application number
JP2023517765A
Other languages
English (en)
Other versions
JP7457207B2 (ja
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 JP2023540398A publication Critical patent/JP2023540398A/ja
Application granted granted Critical
Publication of JP7457207B2 publication Critical patent/JP7457207B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G10L17/08Use of distortion metrics or a particular distance between probe pattern and reference templates
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • 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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • 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/04Training, enrolment or model building
    • 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
    • G10L17/10Multimodal systems, i.e. based on the integration of multiple recognition engines or fusion of expert systems
    • 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
    • G10L17/14Use of phonemic categorisation or speech recognition prior to speaker recognition or verification
    • 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/18Artificial neural networks; Connectionist approaches
    • 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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • G10L17/24Interactive procedures; Man-machine interfaces the user being prompted to utter a password or a predefined phrase
    • 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/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Collating Specific Patterns (AREA)
  • Telephonic Communication Services (AREA)

Abstract

実装形態は、ユーザの1つまたは複数の特定のテキスト依存話者検証(TD-SV)の各々の話者特徴の自動生成に関する。実装形態は、それぞれが、1つまたは複数のそれぞれのアシスタントデバイスを介して、自動アシスタントとの通常の非登録対話中に、対応するユーザの話された発話をキャプチャするオーディオデータのインスタンスを使用して、特定のTD-SVの話者特徴を生成することができる。たとえば、オーディオデータのインスタンスの部分は、(a)その部分が特定のTD-SVに対応することによってキャプチャされた話された発話について認識された用語を決定すること、および(b)ユーザおよび話された発話に対する認証基準がしきい値を満たすと決定することに応答して使用することができる。追加的または代替的に、実装形態は、ユーザの話された発話を認証するかどうかを決定する際に、ユーザの1つまたは複数の特定のTD-SVの各々について、話者特徴を利用することに関する。

Description

人間は、本明細書で「自動アシスタント」と呼ばれる(「チャットボット」、「対話型パーソナルアシスタント」、「インテリジェントパーソナルアシスタント」、「パーソナル音声アシスタント」、「会話型エージェント」などとも呼ばれる)対話型ソフトウェアアプリケーションを使用して、人間とコンピュータの対話に参加することができる。たとえば、人間(自動アシスタントと対話する場合は「ユーザ」と呼ばれる場合がある)は、音声による自然言語入力(すなわち、話された発話)を使用して自動アシスタントにコマンド/要求を提供し得、それは、場合によっては、テキストに変換してから処理されてもよく、および/またはテキスト(たとえば、タイプ入力された)の自然言語入力を提供することによって処理されてもよい。自動アシスタントは、通常、応答性の高いユーザインターフェース出力(たとえば、可聴および/または視覚的なユーザインターフェース出力)を提供し、スマートデバイスを制御し、および/または他のアクションを実行することによって、コマンドまたは要求に応答する。
一部のユーザコマンドまたは要求は、自動アシスタントが要求元のユーザを認証するときにのみ完全に処理され、応答される。たとえば、個人データのセキュリティを維持するために、応答を生成する際にユーザの個人データにアクセスする要求、および/または応答にユーザの個人データを組み込む要求に対して、ユーザ認証が必要になる場合がある。たとえば、「私のカレンダには明日何がありますか」(要求しているユーザの個人カレンダデータにアクセスし、応答に個人カレンダデータを含める必要がある)および「ビビアンにメッセージ、私は遅れそうです」(要求しているユーザの個人的な連絡先データにアクセスする必要がある)などの要求に適切に応答するために、ユーザ認証が必要になる場合がある。別の例として、スマートデバイス(たとえば、スマートサーモスタット、スマートライト、スマートロック)のセキュリティを維持するために、そのようなスマートデバイスの1つまたは複数を制御する要求に対してユーザ認証が必要になる場合がある。
自動アシスタントのユーザ認証には、様々な技法が利用されている。たとえば、ユーザを認証する際に、一部の自動アシスタントは、アシスタントの呼出しフレーズ(たとえば、「OK、アシスタント」および/または「ヘイ、アシスタント」など)に制限されたテキスト依存型話者検証(TD-SV)を利用する。そのようなTD-SVを用いて、TD-SVが制約される呼出しフレーズの話された発話の1つまたは複数のインスタンスを提供するようにユーザが明示的に促される登録手順が実行される。次いで、オーディオデータのインスタンスの処理を通じて、ユーザの話者特徴(たとえば、話者埋め込みなど)を生成することができ、インスタンスの各々は、話された発話のうちのそれぞれの1つをキャプチャする。たとえば、話者特徴は、発話ごとに対応する話者埋め込みを生成するために、TD-SV機械学習モデルを使用してオーディオデータのインスタンスの各々を処理することによって生成することができる。次いで、話者特徴を話者埋め込みの関数として生成し、TD-SVにおいて使用するために(たとえば、デバイスに)記憶することができる。たとえば、話者特徴は、話者埋め込みの関数(たとえば、平均)である累積話者埋め込みであり得る。
話者特徴が生成された後、話された発話がユーザによって話されたことを検証する際に、話者特徴を使用することができる。たとえば、別の話された発話がユーザによって話されたとき、発話特徴を生成するために話された発話をキャプチャするオーディオデータを処理することができ、それらの発話特徴を話者特徴と比較し、その比較に基づいて話者を認証するかどうかを決定することができる。1つの特定の例として、オーディオデータは、発話埋め込みを生成するために、話者認識モデルを使用して処理することができ、ユーザが話された発話の話者であることを検証するかどうかを決定する際に、発話埋め込みを、ユーザに対して以前に生成された話者埋め込みと比較する。たとえば、生成された発話の埋め込みとユーザの話者埋め込みとの間の距離メトリックがしきい値を満たす場合、そのユーザは話された発話を話したユーザとして検証することができる。そのような検証は、ユーザを認証するための尺度(たとえば、唯一の尺度)として利用することができる。
しかしながら、呼出しフレーズのみに基づくTD-SVの既存の手法には、様々な欠点がある。たとえば、多くの場合、発話特徴と話者特徴を比較しても、十分な信頼を持ってユーザを検証するためには不十分である。たとえば、比較が、発話埋め込みである発話特徴と話者埋め込みである話者特徴との間の距離メトリックを生成することを含む場合、距離メトリックは、ユーザを検証するための近さのしきい値を満たさない可能性がある。その結果、自動アシスタントは、検証を再試行するためにユーザに呼出しフレーズをもう一度話すように促す必要がある場合がある、および/または、ユーザにさらに別の認証データを催促しなければならない場合がある(たとえば、ユーザにPINまたは他のパスコードを提供するように促す、ユーザに指紋センサと対話するように促す、および/またはユーザに顔識別のためにカメラの前に位置するように促す)。これにより、人間とアシスタントの対話が長くなり、その結果、人間とアシスタントの対話を容易にするためのクライアントデバイスリソースおよび/または他のリソースの利用が長くなる。別の例として、ユーザが呼出しフレーズを使用せず、対応するデバイスを絞らず、対応するデバイス(たとえば、対応するデバイスのカメラからの画像に基づいて検出されたもの)を見ずに自動アシスタントを呼び出す場合(たとえば、対応するデバイスのハードウェアボタンとの対話による呼出しの代わりに)、自動アシスタントを呼び出す際に呼出しフレーズが話されなかったため、呼出しフレーズのみに基づくTD-SVは機能しない。したがって、そのような状況では、自動アシスタントは、ユーザに呼出しフレーズを話すように促したり、および/またはユーザに別の認証データを催促する必要がある。これにより、人間とアシスタントの対話が長くなり、その結果、人間とアシスタントの対話を容易にするためのクライアントデバイスリソースおよび/または他のリソースの利用が長くなる。さらに別の例として、TD-SV技法は、登録手順の実行、および登録手順を実行するためのクライアントデバイスリソースおよび/または他のリソースの結果としての利用を必要とする。
本明細書で開示されるいくつかの実装形態は、ユーザの1つまたは複数の特定のテキスト依存型話者検証(TD-SV)の各々についての話者特徴の自動生成に関する。ユーザの特定の各TD-SVは、それが制約される1つまたは複数の特定の単語および/またはフレーズに関連付けられている。たとえば、第1の特定のTD-SVは「ドア(door)」などの単一の単語に限定することができ、第2の特定のTD-SVは「フロントドア(front door)」などの単一のフレーズに限定することができ、第3の特定のTD-SVは、「照明(light)」や「照明(lights)」などの音声的に類似した2つ以上の単語に限定することができる。さらに、ユーザの各特定のTD-SVは、本明細書で開示される実装形態に従って生成される、その特定のTD-SVのための話者特徴に関連付けられる。特定のTD-SVの話者特徴は、たとえば、話者埋め込みであり得る。特定のTD-SVが制約される単語および/またはフレーズは、ユーザ検証が少なくとも選択的に必要とされる対応するアシスタントアクションに関連する単語および/またはフレーズに基づいて選択することができる。
実装形態は、それぞれが、1つまたは複数のそれぞれのアシスタントデバイスを介して、自動アシスタントとの通常の非登録対話中に、対応するユーザの話された発話をキャプチャするオーディオデータのインスタンスを使用して、特定のTD-SVの話者特徴を生成することができる。より具体的には、オーディオデータのインスタンスの部分は、(a)その部分が特定のTD-SVに対応することによってキャプチャされた話された発話について認識された用語(オーディオデータに対して実行される音声認識を使用して決定される)を決定すること、および(b)ユーザおよび話された発話に対する認証基準(authentication measure)が、話された発話を話したのはユーザであるという十分な信頼性を示すしきい値を満たすと決定することに応答して使用することができる。認証基準は、ユーザの指紋検証、ユーザの顔検証、ユーザによって入力された検証コードの分析、話者特徴がすでに生成されている異なる特定のTD-SV、および/または一般的な呼出しTD-SVなどの、1つまたは複数の要素に基づくことができる。一般的な呼出しTD-SVは、オーディオデータ、またはオーディオデータに先行する先行オーディオデータの処理に基づいており、ユーザ用であり、自動アシスタントの1つまたは複数の一般的な呼出しウェイクワード用である。
1つの特定の例として、「キッチンのサーモスタット(kitchen thermostat)」というフレーズに制約されているユーザの特定のTD-SVを仮定する。さらに、ユーザがアシスタントデバイスの自動アシスタントを呼び出し、「キッチンのサーモスタットを72度に設定してください」という話された発話を提供すると仮定する。自動アシスタントは、話された発話について「キッチンのサーモスタットを72度に設定してください」という認識を生成するために、対応するキャプチャされたオーディオデータに基づいて話された発話の音声認識を実行することができる。自動アシスタントは、たとえば、話された発話の前、最中、および/または後にアシスタントデバイスのカメラによってキャプチャされた画像に基づいて実行されるユーザの顔検証に基づいて、発話の認証基準をさらに決定することができる。認証基準は、たとえば、画像がユーザの記憶された顔の埋め込みに対応する顔をキャプチャするという少なくともしきい値の信頼度を示す顔検証に基づいて、しきい値を満たすように決定することができる。
認証基準がしきい値を満たしているという決定に応答して、および認識が用語「キッチンのサーモスタット」という用語を含むという決定(および任意で、その用語の音声認識信頼度がしきい値を満たすこと)に応答して、特定のTD-SVの話者特徴を生成する際に、「キッチンのサーモスタット」に対応するオーディオデータの部分(たとえば、音声認識によって示される)を使用することができる。たとえば、オーディオデータの部分は、オーディオデータの処理後にニューラルネットワークの隠れ層からの値を含む埋め込みなどの埋め込みを生成するために、ニューラルネットワークモデルを使用して処理することができる。その埋め込みは、話者特徴を生成する際に使用することができる。たとえば、埋め込みは話者特徴として使用することができ、または、話者特徴は、ユーザのそれぞれの検証基準(verification measure)がしきい値を満たしたときに、話された発話において「キッチンのサーモスタット」をキャプチャしたそれぞれのオーディオデータのそれぞれの部分に基づいてそれぞれ生成される埋め込みおよび他の埋め込みの関数として生成することができる。さらに、自動アシスタントはまた、発話によって伝えられるアシスタントアクションを実行することができることに留意されたい。すなわち、自動アシスタントは、キッチンのサーモスタットの設定値を72度に調整するアシスタントアクションを実行することができる。
これらおよび他の方法において、「キッチンのサーモスタット」というフレーズに制約された特定のTD-SVの話者特徴は、自動アシスタントとの通常のユーザ対話からの話された発話に基づいて、人間とアシスタントの対話を少しでも中断することなく生成することができる。これにより、特定のTD-SVの話者特徴を生成するために、計算上負担の大きい登録手順を別途行う必要がなくなる。さらに、音声認識が「キッチンのサーモスタット」というフレーズに対応すると決定したオーディオデータの部分を利用することによって(任意で信頼度のしきい値を用いて)、特定のTD-SVのフレーズに対応するオーディオデータの部分を自動的に決定できるようになる。さらに、ユーザの認証基準がしきい値を満たす場合にのみその部分に基づいて話者特徴を生成することにより、ユーザの特定のTD-SVの話者特徴が実際にユーザのために生成され、ユーザの話された発話に基づいていることを確認する。
本明細書で開示されるいくつかの実装形態は、追加的または代替的に、ユーザの話された発話を認証するかどうかを決定する際に、ユーザの1つまたは複数の特定のTD-SVの各々について、話者特徴を利用することに関する。一例として、音声認識は、話された発話の認識を生成するために、話された発話をキャプチャするオーディオデータに基づいて実行することができる。認識の用語が特定のTD-SVの用語に対応する場合、オーディオデータの対応する部分を処理して発話特徴を生成し、ユーザを認証するかどうかを決定する際に、それらの発話特徴を特定のTD-SVの話者特徴と比較する。たとえば、オーディオデータの部分は、埋め込みを生成するためにニューラルネットワークモデル(たとえば、TD-SVの話者特徴を生成する際に使用されるモデル)を使用して処理することができ、埋め込みは発話特徴とすることができる。さらに、埋め込みは、埋め込みであるTD-SVおよびユーザの話者特徴と比較することができる。たとえば、比較は、余弦距離基準(cosine distance measurement)または他の距離メトリックを生成することを含むことができる。ユーザを認証するかどうかの決定は、比較に基づくことができる(たとえば、生成された距離メトリックに基づく)。たとえば、ユーザの認証は、少なくともしきい値の類似度(たとえば、埋め込みが比較されている場合はしきい値の距離未満)を示す比較を条件とすることができる。
様々な実装形態では、話された発話は、少なくとも、第1の特定のTD-SVに対応する第1の用語と、第2の特定のTD-SVに対応する第2の用語を含む。たとえば、話された発話は「ガレージドアを開けてください(open the garage door)」であり得、第1の用語は「開ける(open)」であり得、第2の用語は「ガレージドア(garage door)」であり得る。これらの実装形態では、第1の発話特徴を生成するために、第1の用語に対応するオーディオデータの第1の部分を処理することができ、それらの第1の発話特徴と、第1の特定のTD-SVの第1の話者特徴とが比較される。さらに、第2の発話特徴を生成するために、第2の用語に対応するオーディオデータの第2の部分を処理することができ、それらの第2の発話特徴と、第2の特定のTD-SVの第2の話者特徴とが比較される。ユーザを認証するかどうかの決定は、第1の発話特徴と第1の話者特徴との第1の比較と、第2の発話特徴と第2の話者特徴との第2の比較の両方に基づくことができる。たとえば、ユーザの認証は、少なくともしきい値の類似度を示す第1の比較と、少なくともしきい値の類似度を示す第2の比較の両方を条件とすることができる。別の例として、全体の距離メトリックを生成するために、第1の比較からの第1の距離メトリックおよび第2の比較からの第2の距離メトリックを平均化および/または他の方法で結合することができ、ユーザの認証は、少なくともしきい値の類似度を示す全体的な距離メトリックを条件とすることができる。任意で、第1および第2の距離メトリックは、平均化または他の方法での結合において異なる重み付けをすることができる。たとえば、第1の距離メトリックは、第2の話者特徴の話者特徴よりも、ユーザの過去の話された発話の量が多いことに基づく第1の話者特徴に基づいて、より重く重み付けすることができる。別の例として、第1の距離メトリックは、追加的または代替的に、第2の用語の音声認識信頼度よりも信頼度を示す第1の用語の音声認識信頼度に基づいて、より重く重み付けすることができる。別の例として、追加的または代替的に、第2の距離メトリックは、「開ける」(第2のTD-SVに対応する)よりも多くの文字および/またはより多くの音節を含む「ガレージドア」(第1のTD-SVに対応する)に基づいて、より重く重み付けすることができる。様々な実装形態では、距離メトリックの重み付けは、対応する話者特徴が基づいている話された発話の量、対応する用語の音声認識信頼度、および/または対応する用語の長さ(たとえば、文字、音節、および/または他の長さ)など、2つ以上の特徴の関数であり得る。
ユーザの複数の異なる特定のTD-SVを考慮することによって、およびユーザの単一の発話に基づいて、ユーザを認証するかどうかを決定する実装形態では、認証の精度および/または堅牢性を向上させることができる。これにより、代替認証データを促す(たとえば、ユーザにPINまたは他のパスコードを提供するように促す、ユーザに指紋センサと対話するように促す、および/またはユーザに顔識別のためにカメラの前に位置するように促す)必要がなくなり得る。これにより、人間とアシスタントの対話が長引くのを防ぎ、人間とアシスタントの対話中にユーザによって必要とされる入力の量を減らし、人間とアシスタントの対話を容易にするために必要なクライアントデバイスリソースおよび/または他のリソースの量を減らす。
前述のように、特定のTD-SVは、アシスタントの呼出しウェイクワードではない単語、および/またはユーザ認証が少なくとも選択的に必要なアシスタントアクションに関連付けられている単語に制限することができる。したがって、呼出しホットワードを利用せずに自動アシスタントが呼び出された(たとえば、代わりに、タッチジェスチャ、タッチフリージェスチャ、プレゼンス検出、および/またはユーザの凝視に応答して呼び出された)状況においてユーザを認証するために、特定のTD-SVの話者特徴を利用することができる。これらおよび他の方法で、自動アシスタントは、代替認証データのプロンプトを必要とせずにユーザの認証を有効にすることによって、および/またはユーザが指紋センサ、カメラ、および/または代替認証データを提供するための他のセンサを欠いている可能性があるアシスタントデバイスと対話しているときに堅牢な認証を有効にすることによって、より堅牢になる。さらに、これにより、ユーザが呼出しホットワードを利用せずにアシスタントを呼び出す状況において、代替認証データを要求する必要がなくなり得る。これにより、人間とアシスタントの対話が長引くのを防ぎ、人間とアシスタントの対話中にユーザによって必要とされる入力の量を減らし、人間とアシスタントの対話を容易にするために必要なクライアントデバイスリソースおよび/または他のリソースの量を減らす。
上記は、いくつかの実装形態の概要としてのみ提供されている。これらおよび/または他の実装形態は、本明細書でより詳細に開示される。
本明細書で開示される実装形態が実装され得る例示的なコンピューティング環境のブロック図である。 様々な実装形態による、1つまたは複数の特定のテキスト依存型話者検証の各々について話者特徴を自動的に生成する例示的な方法を示す流れ図である。 ユーザが自動アシスタントを用いて認証されたときにそれぞれ提供された、例示的なユーザの話された発話を示す図である。 複数の異なる特定のテキスト依存型話者検証のための話者特徴を自動的に生成する際に、図3Aの話された発話についてオーディオデータを利用する例を示す図である。 様々な実装形態による、1つまたは複数の特定のテキスト依存型話者検証を使用してユーザを認証する例示的な方法を示すフローチャートである。 話された発話の例を示し、話された発話を、特定のユーザによって話されているものとして検証するかどうかを決定する際に複数の特定のテキスト依存型話者検証を使用する図である。 話された発話の例を示し、話された発話を、特定のユーザによって話されているものとして検証するかどうかを決定する際に複数の特定のテキスト依存型話者検証を使用する図である。 コンピューティングデバイスの例示的なアーキテクチャを示す図である。
最初に図1を参照すると、様々な実装形態を実行することができる例示的な環境が示されている。図1は、自動アシスタントクライアント120のインスタンスを実行するアシスタントデバイス110(すなわち、自動アシスタントクライアントを実行する、および/または他の方法でそれを介して自動アシスタントにアクセスできるクライアントデバイス)を含む。1つまたは複数のクラウドベースの自動アシスタントコンポーネント140は、一般に108において示される1つまたは複数のローカルおよび/またはワイドエリアネットワーク(たとえば、インターネット)を介してアシスタントデバイス110に通信可能に結合された1つまたは複数のコンピューティングシステム(まとめて「クラウド」コンピューティングシステムと呼ばれる)上で実装することができる。
自動アシスタントクライアント120のインスタンスは、任意でクラウドベースの自動アシスタントコンポーネント140のうちの1つまたは複数との対話を介して、ユーザの観点からは、ユーザが人間とコンピュータの対話に参加できる自動アシスタントの論理インスタンスのように見えるものを形成することができる。そのような自動アシスタント100の例が図1に示されている。
アシスタントデバイス110は、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイル電話コンピューティングデバイス、車両のコンピューティングデバイス(たとえば、車載通信システム、車載エンターテインメントシステム、車載ナビゲーションシステム)、スタンドアロンの対話型スピーカ、スマートテレビなどのスマート家電、および/またはコンピューティングデバイスを含むウェアラブル機器(たとえば、コンピューティングデバイスを搭載した時計、コンピューティングデバイスを搭載したメガネ、仮想現実または拡張現実のコンピューティングデバイス)であり得る。
アシスタントデバイス110は、家庭、ビジネス、または他の環境内の1人または複数のユーザによって利用され得る。さらに、1人または複数のユーザがアシスタントデバイス110に登録され、アシスタントデバイス110を介してアクセス可能な対応するユーザアカウントを有し得る。本明細書で説明するテキスト依存型話者検証(TD-SV)は、関連付けられたユーザからの許可によって、登録ユーザごとに(たとえば、対応するユーザプロファイルに関連付けて)生成および記憶することができる。たとえば、「ドア」という用語に制約されたTD-SVは、第1の登録ユーザに関連付けて記憶することができ、第1の登録ユーザに固有の対応する話者特徴を有することができ、「ドア」という用語に制約されたTD-SVは、第2の登録ユーザに関連付けて記憶することができ、第2の登録ユーザに固有の対応する話者特徴を有することができる。発話を(別の登録ユーザまたはゲストユーザからではなく)特定のユーザからのものとして認証するために、本明細書で説明するTD-SV技法を利用することができる。任意で、TI-SV技法、話者検証、顔検証、および/または他の検証技法(たとえば、PIN入力)を、特定のユーザを認証する際に追加的または代替的に利用することができる。
追加および/または代替のアシスタントデバイスが提供されてもよく、それらの実装形態のいくつかでは、ユーザの特定のTD-SVの話者特徴を、ユーザが登録ユーザであるアシスタントデバイス間で共有することができる。様々な実装形態では、アシスタントデバイス110は、自動アシスタントクライアント120に加えて、メッセージ交換クライアント(たとえば、SMS、MMS、オンラインチャット)、ブラウザなどの1つまたは複数の他のアプリケーションを任意で動作することができる。それらの様々な実装形態のいくつかでは、他のアプリケーションのうちの1つまたは複数が、任意で自動アシスタント100と(たとえば、アプリケーションプログラミングインターフェースを介して)インターフェースするか、自動アシスタントアプリケーションの独自のインスタンス(クラウドベースの自動アシスタントコンポーネント140とインターフェースすることもできる)を含むことができる。
自動アシスタント100は、クライアントデバイス110のユーザインターフェース入力および出力デバイスを介して、ユーザとの人間とコンピュータの対話セッションに関与する。ユーザのプライバシを保護し、および/またはリソースを節約するために、多くの状況において、自動アシスタントが話された発話を完全に処理する前に、ユーザは自動アシスタント100を明示的に呼び出さなければならないことがよくある。自動アシスタント100の明示的な呼出しは、アシスタントデバイス110において受信された特定のユーザインターフェース入力に応答して発生することができる。たとえば、アシスタントデバイス110を介して自動アシスタント100を呼び出すことができるユーザインターフェース入力は、任意で、アシスタントデバイス110のハードウェアおよび/または仮想ボタンの作動を含むことができる。さらに、自動アシスタントクライアントは、1つまたは複数の話された一般的な呼出しウェイクワードの存在を検出するように動作可能な呼出しエンジンなどの、1つまたは複数のローカルエンジンを含むことができる。呼出しエンジンは、話された呼出しウェイクワードのうちの1つの検出に応答して、自動アシスタント100を呼び出すことができる。たとえば、呼出しエンジンは、「ヘイ、アシスタント(Hey Assistant)」、「OK、アシスタント(OK Assistant)」、および/または「アシスタント(Assistant)」などの話された呼出しウェイクワードの検出に応答して、自動アシスタント100を呼び出すことができる。呼出しエンジンは、話された呼出しフレーズの発生を監視するために、アシスタントデバイス110の1つまたは複数のマイクからの出力に基づくオーディオデータフレームのストリームを(たとえば、「非アクティブ」モードでない場合)連続的に処理することができる。話された呼出しフレーズの発生を監視している間、呼出しエンジンは、話された呼出しフレーズを含まない任意のオーディオデータフレームを破棄する(たとえば、一時的にバッファに記憶した後)。しかしながら、呼出しエンジンが、処理されたオーディオデータフレーム内で話された呼出しフレーズの発生を検出すると、呼出しエンジンは、自動アシスタント100を呼び出すことができる。本明細書で使用される場合、自動アシスタント100を「呼び出す(invoking)」ことは、自動アシスタント100の1つまたは複数の以前にアクティブでなかった機能をアクティブにすることを含むことができる。たとえば、自動アシスタント100を呼び出すことは、1つまたは複数のローカルエンジンおよび/またはクラウドベースの自動アシスタントコンポーネント140に、どの呼出しフレーズが検出されたかに基づいて、オーディオデータフレーム、および/または1つまたは複数の後続のオーディオデータフレームをさらに処理させることを含むことができる(一方、呼び出す前に、オーディオデータフレームのそれ以上の処理は行われなかった)。たとえば、ローカルおよび/またはクラウドベースのコンポーネントは、自動アシスタント100の呼出しに応答して、ASRモデルを使用してキャプチャされたオーディオデータを処理することができる。
図1における自動アシスタントクライアント120は、自動音声認識(ASR)エンジン122、自然言語理解(NLU)エンジン124、テキスト読上げ(TTS)エンジン126、フルフィルメントエンジン128、および認証エンジン130を含むものとして示されている。いくつかの実装形態では、図示されたエンジンのうちの1つまたは複数を省略することができ(たとえば、代わりにクラウドベースの自動アシスタントコンポーネント140によってのみ実装される)、および/または追加のエンジン(たとえば、上記の呼出しエンジン)を提供することができる。
ASRエンジン122は、話された発話の認識を生成するために、話された発話をキャプチャするオーディオデータを処理することができる。たとえば、ASRエンジン122は、発話に対応する認識されたテキストの予測を生成するために、1つまたは複数のASR機械学習モデルを利用してオーディオデータを処理することができる。それらの実装形態のいくつかでは、ASRエンジン122は、1つまたは複数の認識された用語の各々について、予測された用語が話された発話に対応するという信頼を示す対応する信頼度を生成することができる。
TTSエンジン126は、テキストを合成音声に変換することができ、その際に1つまたは複数の音声合成ニューラルネットワークモデルに依存することができる。TTSエンジン126は、たとえば、テキスト応答を、テキストの合成バージョンを含むオーディオデータに変換するために利用され、合成バージョンは、アシスタントデバイス110のハードウェアスピーカを介して可聴にレンダリングされる。
NLUエンジン124は、オーディオおよび/またはASRエンジンによってオーディオから変換されたテキストの意味論的意味を決定し、それらの意味論的意味に対応するアシスタントアクションを決定する。いくつかの実装形態では、NLUエンジン124は、アシスタントアクションを、ASRエンジン122の認識に基づいて決定されるインテントおよび/またはパラメータとして決定する。ある状況では、NLUエンジン124は、ユーザの単一の発話に基づいてインテントおよび/またはパラメータを解決することができ、他の状況では、プロンプトは、未解決のインテントおよび/またはパラメータ、ユーザにレンダリングされたそれらのプロンプト、ならびにインテントおよび/またはパラメータを解決する際にNLUエンジン124によって利用されたそれらのプロンプトに対するユーザの応答に基づいて生成することができる。そのような状況では、NLUエンジン124は、未解決のインテントおよび/またはパラメータを決定し、かつ/または対応するプロンプトを生成する対話マネージャエンジン(図示せず)と任意に連携して動作することができる。NLUエンジン124は、インテントおよび/またはパラメータを決定する際に1つまたは複数のNLU機械学習モデルを利用することができる。
フルフィルメントエンジン128は、NLUエンジン124によって決定されるアシスタントアクションの実行を引き起こすことができる。たとえば、NLUエンジン124が「キッチンの照明をオンにする(turning on the kitchen lights)」というアシスタントアクションを決定した場合、フルフィルメントエンジン128は、対応するデータを(照明に直接、または照明の製造元に関連付けられるリモートサーバに)送信して、「キッチンの照明」を「オン」にさせることができる。別の例として、NLUエンジン124が「今日のユーザの会議の要約を提供する(provide a summary of the user's meetings for today)」というアシスタントアクションを決定した場合、フルフィルメントエンジン128は、ユーザのカレンダにアクセスし、その日のユーザの会議を要約し、要約をアシスタントデバイス110において視覚的および/または聴覚的にレンダリングさせることができる。
認証エンジン130は、比較モジュール132、発話特徴モジュール134、他のモジュール136、および話者特徴モジュール138を含むものとして図1に示されている。認証エンジン130は、他の実装形態において追加または代替のモジュールを含むことができる。認証エンジン130は、アシスタントデバイス110に登録された特定のユーザの話された発話を認証するかどうかを決定することができる。
話者特徴モジュール138は、ユーザの1つまたは複数の特定のTD-SVの各々について、それぞれが、1つまたは複数のそれぞれのアシスタントデバイスを介して、自動アシスタントとの通常の非登録対話中に、対応するユーザの話された発話をキャプチャするオーディオデータのインスタンスを使用して、話者特徴を生成することができる。たとえば、話者特徴モジュール138は、(a)その部分が特定のTD-SVに対応することによってキャプチャされた話された発話について認識された用語(オーディオデータに対して実行される音声認識を使用して決定される)を決定すること、および(b)ユーザおよび話された発話に対する認証基準が、話された発話を話したのはユーザであるという十分な信頼性を示すしきい値を満たすと決定することに応答して、ユーザのTD-SVの話者特徴を生成する際に、話された発話をキャプチャするオーディオデータのインスタンスの部分を利用することができる。
TD-SVの話者特徴を生成する際に、話者特徴モジュール138は、TD-SVに対応する1つまたは複数のTD-SVモデル152A~Nのうちの1つを使用して、オーディオデータの部分を処理することができる。いくつかの実装形態では、TD-SVモデル152A~Nのうちの1つを、TD-SVおよび複数の追加のTD-SVの各々に使用することができる。たとえば、同じ単一のTD-SVモデルを、すべてのTD-SV、または複数のTD-SVを含むサブセットに利用することができる。いくつかの他の実装形態では、TD-SVモデル152A~Nのうちの1つをTD-SVのみに使用することができる。たとえば、単一のTD-SVモデルは、複数のユーザの発話に基づいてトレーニングすることができ、それらの発話は、TD-SVの用語および/または音声的に類似した用語を含むものに制限される。話者特徴モジュール138は、TD-SVに対して生成された話者特徴を、ユーザに関連付けて、およびTD-SVに関連付けて記憶することができる。たとえば、話者特徴モジュールは、生成された話者特徴および関連付けをTD-SV特徴データベース154に記憶することができ、それは任意でアシスタントデバイス110に対してローカルであることができる。いくつかの実装形態では、話者特徴モジュール138は、図2の方法200の少なくともブロック268、270、および272の少なくともいくつかの態様を実行することができる(後述)。
発話特徴モジュール134は、TD-SVの対応する用語をそれぞれキャプチャするオーディオデータの対応する部分を使用して、話された発話および1つまたは複数の特定のTD-SVの各々に対して、発話特徴を生成することができる。たとえば、その部分が特定のTD-SVに対応することによってキャプチャされた話された発話についての認識された用語(オーディオデータに対して実行される音声認識を使用して決定される)を決定することに応答して、発話特徴モジュール134は、ユーザのTD-SVの話者特徴を生成する際に、話された発話をキャプチャするオーディオデータのインスタンスの部分を利用することができる。
TD-SVの発話特徴を生成する際に、発話特徴モジュール134は、TD-SVに対応する1つまたは複数のTD-SVモデル152A~Nのうちの1つを使用して、オーディオデータの部分を処理することができる。いくつかの実装形態では、発話特徴モジュール134は、図4の方法400の少なくともブロック462、466、およびブロック464の処理部分の少なくとも態様を実行することができる(後述)。
比較モジュール132は、発話について発話特徴モジュール134によって生成された1つまたは複数の発話特徴の各々を、対応するTD-SVについてのそれらの対応する話者特徴と比較することができる。たとえば、3つの発話特徴は、発話について発話特徴モジュール134によって生成することができ、それぞれが異なるTD-SVに対応する。そのような例では、比較モジュール132は、対応する距離メトリックを生成するために、3つの発話特徴の各々を、TD-SV特徴データベース154に記憶された対応する話者特徴のうちの1つと比較することができる。距離メトリックはそれぞれ、発話特徴が対応する話者の特徴とどの程度一致しているかを示すことができる。いくつかの実装形態では、話者比較モジュール132は、図4の方法400のブロック464の少なくとも比較部分の少なくともいくつかの態様を実行することができる(後述)。
認証エンジン130は、比較モジュール132によって実行される比較に少なくとも部分的に基づいて、話された発話についてユーザを認証するかどうかを決定することができる。いくつかの実装形態では、認証エンジン130は、ユーザを認証するかどうかを決定する際に、追加的または代替的に、他の検証のために他のモジュール136によって生成されたメトリックを利用することができる。たとえば、他のモジュールは、テキストに依存しない話者検証、指紋検証、顔検証、および/または他の検証に関連するメトリックを生成することができる。
クラウドベースの自動アシスタントコンポーネント140は任意であり、アシスタントクライアント120の対応するコンポーネントと連携して動作することができ、および/またはアシスタントクライアント120の対応するコンポーネントの代わりに(常にまたは選択的に)利用することができる。いくつかの実装形態では、クラウドベースのコンポーネント140は、自動アシスタントクライアント120の任意の対応物と比較して、オーディオデータおよび/または他のデータのより堅牢および/またはより正確な処理を実行するために、クラウドの事実上無限のリソースを活用することができる。様々な実装形態では、アシスタントデバイス110は、話された呼出しフレーズを検出する呼出しエンジン、または自動アシスタント100の何らかの他の明示的な呼出しを検出する呼出しエンジンに応答して、オーディオデータおよび/または他のデータをクラウドベースの自動アシスタントコンポーネント140に提供することができる。
図示されたクラウドベースの自動アシスタントコンポーネント140は、クラウドベースのASRエンジン142、クラウドベースのNLUエンジン144、クラウドベースのTTSエンジン146、クラウドベースのフルフィルメントエンジン148、およびクラウドベースの認証エンジン150を含む。これらのコンポーネントは、それらの自動アシスタントの対応物(存在する場合)と同様の機能を実行することができる。いくつかの実装形態では、図示されたクラウドベースのエンジンのうちの1つまたは複数を省略することができ(たとえば、代わりに自動アシスタントクライアント120によってのみ実装される)、および/または追加のクラウドベースのエンジンを提供することができる。
図2は、様々な実装形態による、1つまたは複数の特定のテキスト依存型話者検証の各々について話者特徴を自動的に生成する例示的な方法200を示す流れ図である。便宜上、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、自動アシスタント100の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。さらに、方法200の動作は特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられてもよく、省略されてもよく、追加されてもよい。
ブロック252において、システムは、アシスタントデバイスのマイクを介して、ユーザの話された発話をキャプチャするオーディオデータを受信する。
ブロック254において、システムは、話された発話の認識を生成するために、オーディオデータに対して自動音声認識(ASR)を実行する。
ブロック256において、システムは、ブロック254の認識に基づいて、発話に応答して実行するべきアシスタントアクションを決定する。いくつかの実装形態では、ブロック256は、サブブロック257を含むことができる。サブブロック257において、システムは、インテントおよびパラメータを決定するために、認識に対して自然言語理解(NLU)を実行する。それらの実装形態のうちのいくつかでは、システムは、任意で、インテントおよび/またはパラメータを明確にするように(たとえば、視覚的および/または可聴プロンプトを利用して)第1のユーザに促す。たとえば、ユーザは、「音楽を再生する(play music)」インテントと「ビデオを再生する(play video)」インテントとの間のあいまいさを解消するように促される場合がある。別の例として、ユーザは、「スマートデバイス1」パラメータと「スマートデバイス2」パラメータの間のあいまいさを解消するように促される場合がある。
ブロック258において、システムは、ブロック252においてキャプチャされた発話および/または他のデータに基づいて、ユーザの認証基準を決定する。たとえば、システムは、発話をキャプチャしたオーディオデータに基づいて特定のTD-Sを実行することができ、また、特定のTD-SVがユーザの対応する話者特徴と一致するかどうか、および/または一致する程度に基づいて認証基準を生成することができる。別の例として、システムは、追加的または代替的に、話された発話に先行するオーディオデータに基づいて一般的な呼出しTD-SVを実行することができ、また、特定のTD-SVがユーザの対応する話者特徴と一致するかどうか、および/または一致する程度に基づいて認証基準を生成することができる。別の例として、システムは、発話をキャプチャしたオーディオデータに基づいて、テキストに依存しない話者検証(TI-SV)を追加的または代替的に実行することができ、また、TD-SVがユーザの対応する話者特徴と一致するかどうか、および/または一致する程度に基づいて認証基準を生成することができる。別の例として、システムは、追加的または代替的に、顔検証(たとえば、アシスタントデバイスのカメラからの画像に基づく)および/または指紋検証(たとえば、アシスタントデバイスの指紋センサからのデータに基づく)に基づいて、認証基準を決定することができる。
様々な実装形態では、システムは、対応する検証が、ユーザの対応するデータとどの程度一致するか(すなわち、一致する検証がより近いほど、認証基準が認証をより示すものになる)、いくつの異なる検証が行われたか(すなわち、より多くの検証が行われるほど、認証基準が認証をより示すものになる)、および/またはどの検証が行われたか(すなわち、いくつかの検証は他の検証より重く重み付けすることができる)のうちの1つまたは複数に基づいて認証基準を決定することができる。
いくつかの実装形態では、ブロック258はサブブロック259を含み、ブロック256において決定された1つまたは複数のアシスタントアクションによってそのようなさらなる認証が必要とされる場合、システムはさらなる認証を実行する。たとえば、アシスタントアクションが、ブロック252の発話および/または現在利用可能な他のデータによって示されるものよりも高度な認証を必要とする場合、システムは、さらなる検証を可能にする発話および/またはデータを提供するようにユーザを促すことができる。たとえば、発話および/または現在利用可能な他のデータに基づいて検証を実行できない可能性があり、システムは、ユーザに一般的な呼出しウェイクワードを話す、および/またはPINまたは他のパスコードを話す(または、その他の方法で入力する)ように促すことができる。また、たとえば、発話および/または現在利用可能な他のデータに基づいて、一般的な呼出しTD-SV検証のみが実行可能である場合があり、アクションは、追加の形式の検証(たとえば、顔または指紋の検証)を必要とする場合があり、システムはそのような追加の形式の検証を促すことができる。
ブロック260において、システムはアシスタントアクションを実行する。たとえば、アシスタントアクションは、発話に応答する可聴および/または視覚的なユーザインターフェース出力の生成とレンダリング、スマートデバイスの制御、電話の発信(たとえば、VoIPを使用して)、別のユーザへのメッセージの送信、および/または他のアクションの実行を含むことができる。
ブロック262において、システムは、ブロック258の認証基準がしきい値を満たすかどうかを決定する。いくつかの実装形態では、ブロック259においていずれかが必要な場合、ブロック262のしきい値は、ブロック259におけるアシスタントアクションによって必要とされるしきい値と同じである可能性があることに留意されたい(たとえば、認証基準を引き続き決定することができ、アシスタントアクションが認証を必要としない場合でも、しきい値を満たすことができる)。いくつかの他の実装形態では、ブロック262のしきい値は、ブロック259において必要とされる場合、ブロック259においてアシスタントアクションによって必要とされるしきい値とは異なる場合がある。
ブロック262において、認証基準がしきい値を満たさないとシステムが決定した場合、システムはブロック264に進むことができ、方法200は終了する。
ブロック262において、システムが認証基準はしきい値を満たすと決定した場合、システムはブロック266に進み、システムは、認識の用語がユーザの1つまたは複数のTD-SVに対応するかどうかを決定する。たとえば、発話は「キッチンのサーモスタットを上げてください(turn up the kitchen thermostat)」であり得、システムは、「上げてください(turn up)」がユーザの第1の特定のTD-SVに対応し、「キッチン」がユーザの第2の特定のTD-SVに対応し、「サーモスタット」がユーザの第3の特定のTD-SVに対応し、「キッチンサーモスタット」がユーザの第4の特定のTD-SVに対応すると決定することができる。別の例として、発話は「何時ですか(what time is it)」であり得、システムは、ユーザの任意の特定のTD-SVに対応する用語がないと決定することができる。
ブロック264において、ユーザの1つまたは複数のTD-SVに対応する認識の用語がないとシステムが決定した場合、システムはブロック264に進み、方法200は終了する。
ブロック264において、認識の用語がユーザの1つまたは複数のTD-SVに対応するとシステムが決定した場合、システムはブロック268に進む。
ブロック268において、システムは、特定のTD-SVの用語を含むオーディオデータの部分を選択する。たとえば、ブロック254のASRに基づいてその部分を選択することができ、その部分が特定のTD-SVの用語を含むことを示す。
ブロック270において、システムは、特定のTD-SVの話者特徴を生成する際にオーディオデータの部分を処理する。たとえば、システムは、その処理に直接基づいて、オーディオデータの部分の所与の話者特徴を生成するために、オーディオデータの部分を処理することができる。特定のTD-SVの話者特徴は、生成された所与の話者特徴に基づいて、また任意で、ユーザからのオーディオデータの前の部分の処理からの、特定のTD-SVの用語を含み、認証しきい値を満たす、以前に生成された話者特徴に基づいて生成することができる。話者特徴が所与の話者特徴に適合する場合、たとえば、特定のTD-SVの用語を含む、および、認証しきい値を満たしている、ユーザからの第1の部分であるオーディオデータの部分の結果である可能性がある。ブロック270において、システムは、特定のTD-SVと関連付けて、およびユーザと関連付けて、話者特徴をさらに記憶する。話者特徴は、たとえばアシスタントデバイスにローカルに記憶することができる。いくつかの実装形態では、話者特徴は、追加的または代替的に、リモートアシスタントサーバに記憶することができるが、ユーザと関連付けて使用する、および/または、ユーザも登録ユーザである他のアシスタントデバイスと(ローカルWi-Fiまたは他のローカル接続などを介して)共有する場合にのみアクセスが制限される。
いくつかの実装形態では、ブロック270は、サブブロック271Aおよび/またはサブブロック271Bを含む。
サブブロック271Aにおいて、システムは、オーディオデータの部分を処理する際に、特定のTD-SVのためのTD-SVモデルを使用する。次いで、オーディオデータの部分について、所与の話者特徴は、オーディオデータの処理後のTD-SVモデルの層のアクティベーションのセットからの値に基づくことができる(たとえば、厳密に対応する)。特定のTD-SVのためのTD-SVモデルは、ニューラルネットワークモデルであることができ、特定のTD-SVのためにのみ利用することができ、または代わりに複数の追加の(たとえば、すべての)特定のTD-SVのためにも使用することができる。
サブブロック271Bにおいて、システムは、オーディオデータの部分の処理から生成された所与の話者特徴を、ユーザの特定のTD-SVの以前に生成された話者特徴と組み合わせる。たとえば、ユーザの特定のTD-SV用に以前に生成された話者特徴は、平均化する、および/またはその他の方法で所与の話者特徴と組み合わせることができる。
ブロック272において、システムは、ブロック266において識別された用語のうち、まだ処理されていない用語がさらに存在するかどうかを決定する。存在する場合、システムは、ユーザの別の特定のTD-SVに対して、ブロック268および270の別の反復を実行し、それらの用語を含むオーディオデータの部分を使用する。
次に図3Aを参照すると、5つの例示的な話された発話300A、300B、300C、300D、および300Eが示されている。例示的な話された発話300A~Eの各々は、同じユーザからのものであり、ユーザが自動アシスタントを用いて認証されたときにそれぞれ提供された。また、図3Aに示されているのは、話された発話300A~Eのオーディオデータの部分の様々な表現であり、オーディオデータの部分の各々は、ユーザの特定のTD-SVに対応する用語に対応する。より具体的には、部分301A、301D、および301Eは、「ロックを解除してください(unlock)」という用語に対応し、部分303A、303B、303C、および303Dは、「フロントドア」という用語に対応し、部分305A、305B、305C、305D、および305Eは、「ドア」という用語に対応し、部分307A、307B、307C、および307Dは、「フロント(front)」という用語に対応し、部分309Aおよび309Dは、「フロントドアのロックを解除してください(unlock the front door)」という用語に対応する。
次に図3Bを参照すると、複数の異なる特定のTD-SVの話者特徴を自動的に生成する際に、図3Aに示されるオーディオデータの部分を利用する例が示されている。
図3Bにおいて、「ドア」に対応するオーディオデータの部分305A~Eは、ユーザの特定のTD-SV用の話者特徴306を生成するために利用され、「ドア」に制約される。より具体的には、部分305Aは、部分305Aに対応する所与の話者特徴306Aを生成するために処理されるものとして示され、部分305Bは、部分305Bに対応する所与の話者特徴306Bを生成するために処理されるものとして示され、部分305Cは、部分305Cに対応する所与の話者特徴306Cを生成するために処理されるものとして示され、部分305Dは、部分305Dに対応する所与の話者特徴306Dを生成するために処理されるものとして示され、部分305Eは、部分305Eに対応する所与の話者特徴306Eを生成するために処理されるものとして示される。部分305A~Eの処理は、たとえば、特定のTD-SVのみに利用されるTD-SVモデルを使用するか、または特定のTD-SVおよび複数の追加の(たとえば、すべての)特定のTD-SVにも利用されるTD-SVモデルを使用することができる。話者特徴306を生成するために、所与の話者特徴306A~Eを組み合わせることができる。たとえば、話者特徴306は、所与の話者特徴306A~Eの平均とすることができる。任意で、所与の話者特徴306A~Eを平均化またはその他の方法で組み合わせる際に、所与の話者特徴306A~Eを1つまたは複数の要因に基づいて重み付けすることができる。たとえば、任意の外れ値はあまり重み付けされていない(たとえば、外側の範囲に比例して重量が減少する)か、考慮されていない場合さえある(すなわち、実質的に重み付けが「0」)。別の例として、所与の話者特徴306Aは、対応する認証基準に基づいて重み付けすることができる。たとえば、所与の話者特徴306Aは、所与の話者特徴306Aが話された発話300Aに基づいていることと、所与の話者特徴306Bが話された発話300Bに基づいていることとに基づいて、所与の話者特徴306Bより重く重み付けすることができ、話された発話300Bが提供されたときに決定された認証基準と比較して、より大きな認証基準が決定されたときに話された発話300Aが提供されている。
図3Bにおいて、「フロント」に対応するオーディオデータの部分307A~Dは、ユーザの特定のTD-SV用の話者特徴306を生成するために利用され、「フロント」に制約される。より具体的には、部分307Aは、部分307Aに対応する所与の話者特徴308Aを生成するために処理されるものとして示され、部分307Bは、部分307Bに対応する所与の話者特徴308Bを生成するために処理されるものとして示され、部分307Cは、部分307Cに対応する所与の話者特徴308Cを生成するために処理されるものとして示され、部分307Dは、部分307Dに対応する所与の話者特徴308Dを生成するために処理されるものとして示される。部分307A~Dの処理は、たとえば、特定のTD-SVのみに利用されるTD-SVモデルを使用するか、または特定のTD-SVおよび複数の追加の(たとえば、すべての)特定のTD-SVにも利用されるTD-SVモデルを使用することができる。話者特徴308を生成するために、所与の話者特徴308A~Dを組み合わせることができる。たとえば、話者特徴308は、所与の話者特徴308A~Dの平均とすることができ、任意で、所与の話者特徴308A~Dの任意の外れ値を破棄する。
図3Bにおいて、「フロントドア」に対応するオーディオデータの部分303A~Dは、ユーザの特定のTD-SV用の話者特徴304を生成するために利用され、「フロントドア」に制約される。特に、話者特徴304は「フロントドア」に制約されている特定のTD-SV用であるが、話者特徴306は、独立型の「ドア」に制約されている別個の特定のTD-SV用であり、話者特徴308は、独立型の「フロント」に制約されている、さらに別個の特定のTD-SV用である。図3Bにおいて、部分303Aは、部分303Aに対応する所与の話者特徴304Aを生成するために処理されるものとして示され、部分303Bは、部分303Bに対応する所与の話者特徴304Bを生成するために処理されるものとして示され、部分303Cは、部分303Cに対応する所与の話者特徴304Cを生成するために処理されるものとして示され、部分303Dは、部分303Dに対応する所与の話者特徴304Dを生成するために処理されるものとして示される。部分303A~Dの処理は、たとえば、特定のTD-SVのみに利用されるTD-SVモデルを使用するか、または特定のTD-SVおよび複数の追加の(たとえば、すべての)特定のTD-SVにも利用されるTD-SVモデルを使用することができる。話者特徴304を生成するために、所与の話者特徴304A~Dを組み合わせることができる。たとえば、話者特徴304は、所与の話者特徴304A~Dの平均とすることができ、任意で、所与の話者特徴304A~Dの任意の外れ値を破棄する。
図3Bにおいて、「フロントドアのロックを解除してください」に対応するオーディオデータの部分309Aおよび309Bは、ユーザの特定のTD-SV用の話者特徴310を生成するために利用され、「フロントドアのロックを解除してください」に制約される。より具体的には、部分309Aは、部分309Aに対応する所与の話者特徴310Aを生成するために処理されるものとして示され、部分309Bは、部分309Bに対応する所与の話者特徴310Bを生成するために処理されるものとして示される。部分309Aおよび309Bの処理は、たとえば、特定のTD-SVのみに利用されるTD-SVモデルを使用するか、または特定のTD-SVおよび複数の追加の(たとえば、すべての)特定のTD-SVにも利用されるTD-SVモデルを使用することができる。話者特徴310を生成するために、所与の話者特徴310Aおよび310Bを組み合わせることができる。たとえば、話者特徴310は、所与の話者特徴310Aおよび310Bの平均とすることができる。
図3Bにおいて、「ロックを解除する」に対応するオーディオデータの部分301A、301D、および301Eは、ユーザの特定のTD-SV用の話者特徴302を生成するために利用され、「ロックを解除する」に制約される。より具体的には、部分301Aは、部分301Aに対応する所与の話者特徴302Aを生成するために処理されるものとして示され、部分301Dは、部分301Dに対応する所与の話者特徴302Dを生成するために処理されるものとして示され、部分301Eは、部分301Eに対応する所与の話者特徴302Eを生成するために処理されるものとして示される。部分301A、301D、および301Eの処理は、たとえば、特定のTD-SVのみに利用されるTD-SVモデルを使用するか、または特定のTD-SVおよび複数の追加の(たとえば、すべての)特定のTD-SVにも利用されるTD-SVモデルを使用することができる。話者特徴302を生成するために、所与の話者特徴302A、302D、および302Eを組み合わせることができる。たとえば、話者特徴302は、所与の話者特徴302A、302D、および302Eの平均とすることができ、任意で、任意の外れ値を破棄する。
いくつかの実装形態では、5つの別個の特定のTD-SVはそれぞれ、特定のTD-SVがユーザを認証する際に利用されているときに利用される対応する重み付けに関連付けることができる。別の言い方をすれば、特定のTD-SVのうちのいくつかは、特定のTD-SVの他のものよりも大きな重みを与えることができる。これらの実装形態のいくつかでは、特定のTD-SVに与えられる重みは、対応する話者特徴が基づいているオーディオデータの部分の量、対応するシーケンス内の用語の数(たとえば、単一の用語のみに制約されているかどうか、2つの用語の各々のシーケンスのみ)、および/または他の要因の関数である可能性がある。一例として、「ドア」のTD-SVは、少なくともオーディオデータの5つの部分に基づく「ドア」のTD-SVの話者特徴に基づいて、「フロント」のTD-SVよりも強い重み付けを有することができ、一方、「フロント」のTD-SVの話者特徴は、オーディオデータの4つの部分のみに基づいている。別の例として、「フロントドア」のTD-SVは、少なくとも「フロントドア」のTD-SVが2つの用語のシーケンスに制約されていることに基づいて、「フロント」のTD-SVよりも強い重み付けを有することができ、一方、「フロント」のTD-SVは1つの用語のみに制限される。
図4は、様々な実装形態による、1つまたは複数の特定のテキスト依存型話者検証を使用してユーザを認証する例示的な方法400を示すフローチャートである。便宜上、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、自動アシスタント100の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。さらに、方法400の動作は特定の順序で示されているが、これは限定を意味するものではない。1つまたは複数の動作が並べ替えられてもよく、省略されてもよく、追加されてもよい。
ブロック452において、システムは、アシスタントデバイスのマイクを介して、ユーザの話された発話をキャプチャするオーディオデータを受信する。
ブロック454において、システムは、話された発話の認識を生成するために、オーディオデータに対して自動音声認識(ASR)を実行する。
ブロック456において、システムは、ブロック454の認識に基づいて、発話に応答して実行するべきアシスタントアクションを決定する。いくつかの実装形態では、ブロック456は、サブブロック457を含むことができる。サブブロック457において、システムは、インテントおよびパラメータを決定するために、認識に対して自然言語理解(NLU)を実行する。それらの実装形態のうちのいくつかでは、システムは、任意で、インテントおよび/またはパラメータを明確にするように(たとえば、視覚的および/または可聴プロンプトを利用して)第1のユーザに促す。
ブロック458において、システムは、ブロック456において決定されたアシスタントアクションに基づいて、発話を話したユーザを認証するかどうか、および/またはどの程度まで認証するかを決定する。たとえば、アシスタントアクションが、任意の個人データの実行を必要としない(または、任意の特定の種類の個人データを必要としない)インテントおよび/またはパラメータに制限されている場合、システムは、アシスタント認証が不要であると決定することができる。一方、他のタイプのアシスタントアクションの場合、システムは認証が必要であると決定することができ、必要な認証の範囲を任意で決定することができる。たとえば、システムは、一部またはすべてのスマートデバイス制御アシスタントアクションが認証を必要とすると決定することができる。さらに、システムは、特定のスマートデバイス制御アシスタントアクション(たとえば、スマートロックのロック解除、および/またはキッチン家電の制御)が、他のスマートデバイス制御アシスタントアクション(たとえば、照明をオンにする)よりも高度な認証を必要とすることを決定することができる。認証が必要なアシスタントアクションおよび/または認証の範囲は、アシスタントデバイスおよび/またはリモートアシスタントサーバに記憶することができ、ユーザの母集団に対して手動で設定することも、ユーザごとに設定することもできる(たとえば、必要な認証を指示するユーザによる入力に基づいて)。
ブロック459において、システムが認証は不要であると決定した場合、システムは任意でブロック460に進み、認証なしでアシスタントアクション460を実行することができる。
ブロック459において、システムが認証は必要であると決定した場合、システムはブロック462に進み、ユーザの特定のTD-SVの用語を含むオーディオデータの部分を選択する。たとえば、その部分は、ブロック454のASRに基づいて選択することができ、その部分が特定のTD-SVの用語を含むことを示す。
ブロック464において、システムは、特定のTD-SVの発話特徴を生成する際にオーディオデータの部分を処理し、生成された発話特徴を、特定のTD-SVの以前に生成された話者特徴(たとえば、図3の方法300に基づいて生成された)と比較する。
いくつかの実装形態では、ブロック464は、サブブロック465Aおよび/またはサブブロック465Bを含む。サブブロック465Aにおいて、システムは、オーディオデータの部分を処理する際に、特定のTD-SV用のTD-SVモデルを使用する。次いで、オーディオデータの部分の発話特徴は、オーディオデータの処理後のTD-SVモデルの層のアクティベーションのセットからの値(たとえば、埋め込み)に基づく(たとえば、厳密に対応する)ことができる。特定のTD-SVのためのTD-SVモデルは、ニューラルネットワークモデルであることができ、特定のTD-SVのためにのみ利用することもでき、代わりに複数の追加の(たとえば、すべての)特定のTD-SVのために使用することもできる。
サブブロック465Bにおいて、システムは、生成された発話特徴を、特定のTD-SVについて以前に生成された話者特徴と比較する際に、距離基準(distance measure)を生成する。たとえば、発話特徴は埋め込みであり、やはり埋め込みであるTD-SVおよびユーザの話者特徴と比較することができる。比較は、2つの埋め込み間の余弦距離基準または他の距離メトリックを生成することを含むことができる。
ブロック466において、システムは、ユーザの関連付けられた特定のTD-SVに対応する、まだ処理されていない用語がさらに存在するかどうかを決定する。存在する場合、システムは、ユーザの別の特定のTD-SVに対して、ブロック462および464の別の反復を実行し、それらの用語を含むオーディオデータの部分を使用する。
ブロック466において、処理されていない用語がこれ以上ないとシステムが決定した場合、システムはブロック468に進む。ブロック468において、システムは、ブロック464の1つまたは複数の反復の比較に応じて、ユーザを認証するかどうかを決定する。たとえば、ユーザの3つの別個のTD-SVに対してブロック464の3つの反復があった場合、システムは、3つすべての比較に応じて認証するかどうかを決定することができる。たとえば、ユーザの認証は、少なくともしきい値の類似度を示す比較の各々を条件とすることができ、および/または少なくともしきい値の類似度を示す全体的な比較を条件とすることができ、全体的な比較は、3つの個別の比較の平均または他の組合せに基づいている。任意で、3つの個別の比較が平均であるか、または他の方法で組み合わされる場合、本明細書で説明するように、それらは、ユーザの対応するTD-SVに任意に割り当てられる任意の重み付けに基づいてそれぞれ重み付けすることができる。ブロック468において、システムは、比較に基づいて、また任意で、利用可能なデータに基づいて実行可能な任意の追加の検証に基づいて、ユーザを認証するかどうかを決定することができる。たとえば、システムはまた、ブロック468において認証するかどうかを決定する際にTI-SVを利用することができる。
ブロック468において、ユーザを認証することが決定された場合、システムはアシスタントアクションも実行する。システムがユーザを認証しないと決定した場合、システムはアシスタントアクションの実行を防止し、任意でユーザに認証できないことを通知することができる。任意で、アシスタントが、比較および/または他の利用可能なデータに応じてユーザを認証しないと決定した場合、アシスタントは、検証のためにさらに入力を提供するようにユーザに促すことができる(たとえば、パスコードの提供を促す)。
いくつかの実装形態では、ブロック468は、サブブロック469Aおよび/または469Bを含む。
サブブロック469Aにおいて、システムは、比較から任意で生成された距離メトリックに基づいて、比較に基づいて認証するかどうかを決定する。たとえば、比較の各々について距離メトリックを生成することができ、ユーザの認証は、しきい値の類似度を示す距離メトリックの1つまたは複数(たとえば、すべて)を条件とすることができる。別の例として、距離メトリックは比較の各々について生成することができ、システムは、全体の距離メトリックを生成するために、個別の距離メトリックを平均化および/または他の方法で結合することに基づいて、全体の距離メトリックを決定することができ、ユーザの認証は、追加的または代替的に、少なくともしきい値の類似度を示す全体の距離メトリックを条件とすることができる。任意で、および比較の各々が重み付けされるサブブロック469Bによって示されるように、距離メトリックの各々は、平均化、および/または他の方法で結合する際に異なる重み付けをすることができる。たとえば、第1の距離メトリックは、第2の距離メトリックを生成する際に利用される話者特徴よりも多くの量の過去のユーザの話された発話に基づく第1の距離メトリックを生成する際に利用される第1の話者特徴に基づいて、第2の距離メトリックより重く重み付けすることができる。別の例として、追加的または代替的に、第1の距離メトリックは、第1の距離メトリックの特定のTD-SVに対応する用語について、音声認識信頼度に基づいて第2の距離メトリックより重く重み付けすることができ、第2の距離メトリックの特定のTD-SVの第2の用語の音声認識信頼度よりも信頼度を示している。別の例として、第1の距離メトリックは、追加的または代替的に、第2の距離メトリックを生成する際に利用されるTD-SVのものよりも多くの用語を含む用語のシーケンスのためのTD-SVについて生成される第1の距離メトリックに基づいて、第2の距離メトリックより重く重み付けすることができる。
次に図5Aを参照すると、「フロントドアのロックを解除してください」というユーザの例示的な話された発話500Aが示されている。また、図5Aに示されているのは、話された発話500Aをキャプチャし、「ロックを解除してください」に対応するオーディオデータの部分501A、「フロントドア」に対応するオーディオデータの部分503A、「ドア」に対応するオーディオデータの部分505A、「フロント」に対応するそのオーディオデータの部分507A、および「フロントドアのロックを解除してください」に対応するそのオーディオデータの部分509Aである。その部分は、それを示すオーディオデータのASRに基づいて、対応する用語に対応すると決定することができる。
また、図5Aに示されているのは、対応する発話特徴502A、504A、506A、および508Aを生成するために、部分501A、503A、505A、507A、および509Aを処理する例である。さらに図5Aに示されているのは、第1の距離メトリック512Aを生成するために、「ロックを解除してください」という用語に制約されたユーザのTD-SVについて、発話特徴502Aと対応する話者特徴302(図3B)との第1の比較5A1と、第2の距離メトリック516Aを生成するために、「ドア」という用語に制約されたユーザのTD-SVについて、発話特徴505Aと対応する話者特徴306(図3B)との第2の比較5A2と、第3の距離メトリック518Aを生成するために、「フロント」という用語に制約されたユーザのTD-SVについて、発話特徴508Aと対応する話者特徴308(図3B)との第3の比較5A3と、第4の距離メトリック514Aを生成するために、「ロックを解除してください」という用語に制約されたユーザのTD-SVについて、発話特徴504Aと対応する話者特徴302(図3B)との第4の比較5A4と、第5の距離メトリック520Aを生成するための、「フロントドア」という用語に制約されたユーザのTD-SVについて、発話特徴510Aと対応する話者特徴310(図3B)との第5の比較5A5である。
さらに図5Aに示されているのは、第1の距離メトリック512A、第2の距離メトリック516A、第3の距離メトリック518A、第4の距離メトリック514A、および第5の距離メトリック520Aに応じて(6A)ユーザを認証するための決定590Aである。たとえば、ユーザを認証すると決定することは、しきい値を満たすメトリックのうちの少なくともN個(たとえば、2個)、および/またはしきい値を満たすメトリックのうちの少なくともN個(たとえば、2個)の測定基準の平均(任意で、本明細書で説明されるように重み付けされる)を条件とすることができる。図5Aは、発話500Aについて、重複するTD-SVに基づく発話特徴の生成および利用を示している。たとえば、「フロント」に制約されたTD-SVは「フロントドア」に制約されたTD-SVと重複し、「ドア」に制約されたTD-SVも「フロントドア」と重複し、「フロントドアのロックを解除してください」に制約されたTD-SVは、他のすべての関連するTD-SVと重複し、部分507Aは部分503Aと重複し、部分505Aは部分503Aと重複し、部分509Aは他のすべての部分と重複する。しかしながら、いくつかの実装形態は、発話についてユーザを認証するかどうかを決定する際に、TD-SVの重複を防止または制限することができる。たとえば、実装形態は、発話について、互いに重複せず、クエリ全体に対して最大のカバレッジ(たとえば、単語数ベース、文字数ベース、および/または音節数ベースでの最大カバレッジ)を集合的に提供するTD-SVのセットのみを利用することができる。TD-SVの複数のセットが重複せず、クエリに対して同じ量のカバレッジを提供する場合、任意で、過去の発話の量が多いことに基づいて、TD-SVが少ない、および/またはTD-SVのセットを利用することができる。
次に図5Bを参照すると、「ヘイ、アシスタント、地下室のドアのロックを解除してください(hey assistant, unlock the basement door)」というユーザの話された発話の例500Bが示されている。また、図5Bに示されているのは、「ロックを解除する」に対応するオーディオデータの部分501B(話された発話500Bをキャプチャする)、「ドア」に対応するそのオーディオデータの部分505B、および「ヘイ、アシスタント」に対応するそのオーディオデータ(または、前のオーディオデータ)の部分520Bである。オーディオデータの部分は、そのようなことを示すASRに基づいて、対応する用語に対応すると決定することができる。いくつかの実装形態では、「ヘイ、アシスタント」は自動アシスタントの呼出しウェイクワードである。それらの実装形態のいくつかでは、部分520Bは、ウェイクワード検出器のトリガを引き起こす部分520Bに基づいて(たとえば、部分520Bの処理に基づくウェイクワードニューラルネットワークモデルを使用して生成された出力に基づいて)、「ヘイ、アシスタント」に対応すると決定することができる。
また、図5Bに示されているのは、対応する発話特徴521B、502B、および506Bを生成するために、部分520B、501B、および505Bを処理する例である。さらに図5Bに示されているのは、発話特徴502Aと、ユーザのTD-SVの対応する話者特徴530との第1の比較5B1であり、第1の距離メトリック522Bを生成するために、「ヘイ、アシスタント」という用語および任意で他のウェイクワード(たとえば、「OK、アシスタント」も)に制約される。任意で、対応する話者特徴530は、明示的な登録手続き中にプロンプトに応答してユーザによって提供された発話に基づいて生成することができる。さらに図5Bに示されているのは、第2の距離メトリック512Bを生成するための、「ロックを解除する」という用語に制約されたユーザのTD-SVについて、発話特徴502Bと対応する話者特徴303(図3B)との第2の比較5B2であり、第3の距離メトリック516Bを生成するための、「ドア」という用語に制約されたユーザのTD-SVについて、発話特徴506Bと対応する話者特徴306(図3B)との第3の比較5B3である。
さらに図5Bに示されているのは、第1の距離メトリック522B、第2の距離メトリック512B、および第3の距離メトリック516Bに応じて(6B)ユーザを認証するための決定590Bである。たとえば、ユーザを認証すると決定することは、しきい値を満たすメトリックのうちの少なくともN個(たとえば、2個)、および/またはしきい値を満たすメトリックのうちの少なくともN個(たとえば、2個)の平均(任意で、本明細書で説明されるように重み付けされる)を条件とすることができる。
図6は、本明細書で説明する技法の1つまたは複数の態様を実行するために任意で利用され得る例示的なコンピューティングデバイス610のブロック図である。いくつかの実装形態では、クライアントコンピューティングデバイスの1つまたは複数、および/あるいは他のコンポーネントは、例示的なコンピューティングデバイス610の1つまたは複数のコンポーネントを備え得る。
コンピューティングデバイス610は、通常、バスサブシステム612を介して多数の周辺デバイスと通信する少なくとも1つのプロセッサ614を含む。これらの周辺デバイスは、たとえば、メモリサブシステム625およびファイルストレージサブシステム626を含むストレージサブシステム624、ユーザインターフェース出力デバイス620、ユーザインターフェース入力デバイス622、ならびにネットワークインターフェースサブシステム616を含み得る。入力および出力デバイスにより、ユーザはコンピューティングデバイス610と対話することができる。ネットワークインターフェースサブシステム616は、外部ネットワークへのインターフェースを提供し、他のコンピューティングデバイス内の対応するインターフェースデバイスに結合される。
ユーザインターフェース入力デバイス622は、キーボード、マウス、トラックボール、タッチパッド、またはグラフィックタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクなどのオーディオ入力デバイス、および/あるいは他のタイプの入力デバイスを含み得る。一般に、「入力デバイス(input device)」という用語の使用は、コンピューティングデバイス610または通信ネットワーク上に情報を入力するためのすべての可能なタイプのデバイスおよび方法を含むことを意図している。
ユーザインターフェース出力デバイス620は、ディスプレイサブシステム、プリンタ、ファックス機、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(「CRT」)、液晶ディスプレイ(「LCD」)などのフラットパネルデバイス、投影デバイス、または可視画像を作成するための何らかの他のメカニズムを含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスなどを介して、非視覚的ディスプレイを提供し得る。一般に、「出力デバイス(output device)」という用語の使用は、コンピューティングデバイス610からユーザ、または別の機械、あるいはコンピューティングデバイスに情報を出力するためのすべての可能なタイプのデバイスおよび方法を含むことを意図している。
ストレージサブシステム624は、本明細書で説明するモジュールの一部またはすべての機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム624は、本明細書に記載の方法のうちの1つまたは複数の選択された態様を実行するため、および/あるいは本明細書に示される様々なコンポーネントを実装するためのロジックを含み得る。
これらのソフトウェアモジュールは、一般に、プロセッサ614単独で、または他のプロセッサと組み合わせて実行される。ストレージサブシステム624において使用されるメモリ625は、プログラム実行中に命令およびデータを記憶するためのメインランダムアクセスメモリ(「RAM」)630、および固定命令が記憶される読取り専用メモリ(「ROM」)632を含むいくつかのメモリを含むことができる。ファイルストレージサブシステム626は、プログラムおよびデータファイルのための持続的なストレージを提供することができ、ハードディスクドライブ、関連付けられるリムーバブルメディアとともにフロッピーディスクドライブ、CD-ROMドライブ、光学ドライブ、またはリムーバブルメディアカートリッジを含み得る。特定の実装形態の機能を実装するモジュールは、ストレージサブシステム624内のファイルストレージサブシステム626によって、またはプロセッサ614によってアクセス可能な他の機械内に記憶され得る。
バスサブシステム612は、コンピューティングデバイス610の様々なコンポーネントおよびサブシステムが意図したとおりに互いに通信できるようにするメカニズムを提供する。バスサブシステム612は、単一のバスとして概略的に示されているが、バスサブシステムの代替の実装形態は、複数のバスを使用し得る。
コンピューティングデバイス610は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、あるいは任意の他のデータ処理システムまたはコンピューティングデバイスを含む様々なタイプのものとすることができる。コンピュータおよびネットワークの性質は絶え間なく変化するため、図6に示されるコンピューティングデバイス610の説明は、いくつかの実装形態を説明するための特定の例としてのみ意図されている。コンピューティングデバイス610の多くの他の構成が可能であり、図6に示されるコンピューティングデバイスよりも多いまたは少ないコンポーネントを有する。
本明細書に記載されているシステムがユーザ(または本明細書で「参加者」と呼ばれることが多い)に関する個人情報を収集する状況、または個人情報を利用する可能性がある状況では、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、ソーシャルアクションまたはアクティビティ、職業、ユーザの好み、あるいはユーザの現在の地理的位置に関する情報)を収集するかどうかを制御する機会、またはコンテンツサーバからユーザにとってより関連性の高い可能性のあるコンテンツを受信するかどうかおよび/または受信する方法を制御する機会が提供される場合がある。また、特定のデータは、個人を特定できる情報が削除されるように、記憶または使用される前に1つまたは複数の方法で処理される場合がある。たとえば、ユーザのアイデンティティは、そのユーザの個人を特定できる情報を決定できないように処理される場合があり、または、ユーザの特定の地理的な場所を決定できないように、ユーザの地理的位置が、地理的位置情報が取得される場所(都市、郵便番号、または州レベルなど)に一般化される場合がある。したがって、ユーザは、ユーザに関する情報が収集される方法および/または使用される方法を制御し得る。
いくつかの実装形態では、ユーザの話された発話をキャプチャするオーディオデータを受信するステップと、話された発話の認識を生成するために、オーディオデータに対して音声認識を実行するステップとを含む、プロセッサによって実装される方法が提供される。オーディオデータは、ユーザのアシスタントデバイスの1つまたは複数のマイクを介して検出される。本方法は、音声認識に基づいて、話された発話によって伝えられるアシスタントアクションを決定するステップと、話された発話の受信に応答してアシスタントアクションを実行するステップとをさらに含む。本方法は、認識の1つまたは複数の用語が、ユーザの特定のテキスト依存型話者検証(TD-SV)に対応することを決定するステップと、ユーザおよび話された発話に対する認証基準がしきい値を満たすと決定するステップとをさらに含む。1つまたは複数の用語は、アシスタントデバイスの任意の一般的な呼出しウェイクワードとは別個のものである。本方法は、認識の1つまたは複数の用語がユーザの特定のTD-SVに対応するという決定に応答して、および認証基準がしきい値を満たしているという決定に応答して、ユーザの特定のTD-SVの話者特徴を生成する際に、1つまたは複数の用語に対応するオーディオデータの部分を処理するステップをさらに含む。
本明細書で開示されるこれらおよび他の実装形態は、以下の特徴のうちの1つまたは複数を含むことができる。
いくつかの実装形態では、本方法は、ユーザの特定のTD-SVの話者特徴を生成する際にオーディオデータを処理した後、ユーザの追加の話された発話をキャプチャする追加のオーディオデータを受信するステップであって、追加の話された発話が、1つまたは複数の用語を含む、ステップと、追加のオーディオデータの部分の発話特徴を生成する際に、1つまたは複数の用語に対応する追加のオーディオデータの所与の部分を処理するステップと、ユーザの特定のTD-SVについて、発話特徴を話者特徴と比較するステップと、比較に基づいて、追加の話された発話についてユーザを認証するかどうかを決定するステップとをさらに含む。それらの実装形態のいくつかのバージョンでは、本方法は、追加の話された発話の追加の認識を生成するために、追加のオーディオデータに対して音声認識を実行するステップと、1つまたは複数の用語が追加の認識に含まれ、追加のオーディオデータの所与の部分に対応することを決定するステップとをさらに含む。それらのバージョンでは、追加のオーディオデータの所与の部分を処理し、発話特徴を特定のTD-SVの話者特徴と比較するステップは、1つまたは複数の用語が追加の認識に含まれ、追加のオーディオデータの所与の部分に対応することを決定するステップに応答する。それらのバージョンのいくつかでは、比較するステップは、発話特徴と話者特徴との間の距離基準を決定するステップと、任意で、比較に基づいて、追加の話された発話についてユーザを認証するかどうかを決定するステップであって、追加の話された発話によって伝えられる追加のアシスタントの対話に依存するしきい値を決定するステップと、距離基準がしきい値を満たすことを決定することにのみ応答して、追加の話された発話についてユーザを認証するステップとを含む、決定するステップとを含む。
いくつかの実装形態では、本方法は、オーディオデータを受信する前に、1つまたは複数の用語を含むとそれぞれ決定され、ユーザに対して認証されているとそれぞれ決定されたオーディオデータの1つまたは複数の以前のインスタンスに基づいて、ユーザの特定のTD-SVの初期の話者特徴を生成するステップをさらに含む。それらの実装形態のいくつかでは、ユーザの特定のTD-SVの話者特徴を生成する際にオーディオデータの一部を処理することは、オーディオデータの一部を処理することに基づいて初期の話者特徴を修正することを含むことができる。
いくつかの実装形態では、本方法は、オーディオデータ、またはオーディオデータに先行する先行オーディオデータの処理に基づく一般的な呼出しTD-SVと、ユーザの指紋検証と、ユーザの顔検証と、および/またはユーザによって入力された検証コードの分析とに基づいて認証基準を決定するステップをさらに含む。一般的な呼出しTD-SVはユーザ用であり、アシスタントデバイス用の1つまたは複数の一般的な呼出しウェイクワード用である。
いくつかの実装形態では、所与のユーザの話された発話をキャプチャするオーディオデータを受信するステップと、第1の発話特徴を生成するために、オーディオデータの第1の部分を処理するステップとを含む、プロセッサによって実装される方法が提供される。オーディオデータは、所与のユーザのアシスタントデバイスの1つまたは複数のマイクを介して検出される。本方法は、ユーザの第1のテキスト依存型話者検証(TD-SV)のために、第1の発話特徴と第1の話者特徴との第1の比較を実行するステップであって、第1のTD-SVが、1つまたは複数の用語の第1のセットに依存する、ステップをさらに含む。本方法は、第2の発話特徴を生成するために、オーディオデータの第2の部分を処理するステップであって、オーディオデータの第2の部分が、オーディオデータの第1の部分とは異なる、ステップをさらに含む。本方法は、ユーザの第2のTD-SVについて、第2の発話特徴と第2の話者特徴との第2の比較を実行するステップであって、第2のTD-SVが、1つまたは複数の用語の第1のセットとは異なる、1つまたは複数の用語の第2のセットに依存している、ステップをさらに含む。本方法は、第1の比較と第2の比較の両方に基づいて、話された発話についてユーザを認証することを決定するステップをさらに含む。本方法は、話された発話についてユーザを認証することを決定することに応じて、話された発話に基づく1つまたは複数のアクションを実行するステップをさらに含む。
本明細書で開示されるこれらおよび他の実装形態は、以下の特徴のうちの1つまたは複数を含むことができる。
いくつかの実装形態では、オーディオデータの第1の部分は、アシスタントデバイスの一般的な呼出しウェイクワードをキャプチャし、第1のTD-SVが依存する1つまたは複数の用語の第1のセットは、アシスタントデバイスの1つまたは複数の一般的な呼出しウェイクワードで構成される。一般的な呼出しウェイクワードは、アシスタントデバイスの1つまたは複数の一般的な呼出しウェイクワードのうちの1つである。それらの実装形態のいくつかのバージョンでは、オーディオデータを受信する前に、一般的な呼出しウェイクワードを話すようにという1つまたは複数のプロンプトに応答して、ユーザの複数の発話が収集される登録手順を実行するステップと、複数の発話に応じて第1の話者特徴を生成するステップとをさらに含む。それらの実装形態のいくつかの追加または代替バージョンでは、オーディオデータの第2の部分は、オーディオデータの第1の部分と重複せず、オーディオデータの第2の部分には、アシスタントデバイスの1つまたは複数の一般的な呼出しウェイクワードのうちの任意のものがない。これらの追加または代替バージョンのいくつかでは、本方法は、オーディオデータを受信する前に、前のオーディオデータの複数のインスタンスに基づいて、第2の話者特徴を生成するステップであって、前のオーディオデータの複数のインスタンスに基づいて第2の話者の特徴を生成するステップが、前のオーディオデータの複数のインスタンスが、1つまたは複数の用語の第2のセットのうちの少なくともいくつかをキャプチャし、ユーザが認証されたときにキャプチャされることを決定することに基づく。
いくつかの実装形態では、オーディオデータの第2の部分には、アシスタントデバイスの任意の一般的な呼出しウェイクワードがない。それらの実装形態のいくつかのバージョンでは、本方法は、オーディオデータを受信する前に、前のオーディオデータの複数のインスタンスに基づいて、第2の話者特徴を生成するステップをさらに含む。前のオーディオデータの複数のインスタンスに基づいて第2の話者特徴を生成するステップは、前のオーディオデータの複数のインスタンスが、1つまたは複数の用語の第2のセットのうちの少なくともいくつかをキャプチャし、ユーザが認証されたときにキャプチャされることを決定することに基づく。
いくつかの実装形態では、本方法は、話された発話の認識を生成するために、オーディオデータに対して音声認識を実行するステップと、1つまたは複数の用語の第2のセットが認識に含まれ、オーディオデータの第2の部分に対応することを決定するステップとをさらに含む。それらの実装形態のいくつかでは、オーディオデータの第2の部分を処理し、第2の発話特徴と第2のTD-SVの第2の話者特徴との第2の比較を実行することは、1つまたは複数の用語の第2のセットが認識に含まれ、オーディオデータの第2の部分に対応することを決定することに応答する。
いくつかの実装形態では、第1の発話特徴を生成するためにオーディオデータの第1の部分を処理するステップは、ニューラルネットワークモデルを使用してオーディオデータの第1の部分を第1の処理するステップを含み、第1の発話特徴は、第1の処理の後の、ニューラルネットワークモデルの活性化の第1のセットに基づく。それらの実装形態のいくつかのバージョンでは、第2の発話特徴を生成するためにオーディオデータの第2の部分を処理するステップは、ニューラルネットワークモデルを使用してオーディオデータの第2の部分を第2の処理するステップを含み、第2の発話特徴は、第2の処理の後の、ニューラルネットワークモデルの活性化の第2のセットに基づく。それらの実装形態のいくつかの代替バージョンでは、第2の発話特徴を生成するためにオーディオデータの第2の部分を処理するステップは、第2のニューラルネットワークモデルを使用してオーディオデータの第2の部分を第2の処理するステップを含み、第2の発話特徴は、第2の処理の後の、第2のニューラルネットワークモデルの活性化の第2のセットに基づく。
いくつかの実装形態では、第1の比較を実行するステップが、第1の発話特徴と第1の話者特徴との間の第1の距離基準を決定するステップを含み、第2の比較を実行するステップが、第2の発話特徴と第2の話者特徴との間の第2の距離基準を決定するステップを含む。それらの実装形態のいくつかのバージョンでは、第1の比較と第2の比較の両方に基づいて、話された発話についてユーザを認証することを決定するステップが、第1の距離基準と第2の距離基準の両方に基づく全体的な基準に基づいて、ユーザを認証することを決定するステップを含む。それらのバージョンのいくつかでは、第1の距離基準と第2の距離基準の両方に基づく全体的な基準に基づいて、ユーザを認証することを決定するステップは、話された発話によって伝えられるアシスタントの対話に依存するしきい値を決定するステップと、全体の距離基準がしきい値を満たすことを決定することにのみ応答して、追加の話された発話についてユーザを認証するステップとを含む。
さらに、いくつかの実装形態は、1つまたは複数のユーザデバイスであって、それぞれが、1つまたは複数のプロセッサと、1つまたは複数のプロセッサと動作可能に結合されたメモリとを備えるユーザデバイスを含み、1つまたは複数のユーザデバイスのメモリが、1つまたは複数のユーザデバイスの1つまたは複数のプロセッサによる命令の実行に応答して、1つまたは複数のプロセッサに本明細書で説明する方法のうちのいずれかを実行させる命令を記憶する、システムを含み得る。いくつかの実装形態はまた、1つまたは複数のプロセッサによる命令の実行に応答して、1つまたは複数のプロセッサに本明細書で説明する方法のうちのいずれかを実行させる命令を含む、少なくとも1つの非一時的コンピュータ可読媒体を含む。
100 自動アシスタント
110 アシスタントデバイス
120 自動アシスタントクライアント
122 自動音声認識(ASR)エンジン
124 自然言語理解(NLU)エンジン
126 テキスト読上げ(TTS)エンジン
128 フルフィルメントエンジン
130 認証エンジン
132 比較モジュール
134 発話特徴モジュール
136 他のモジュール
138 話者特徴モジュール
140 自動アシスタントコンポーネント
142 クラウドベースのASRエンジン
144 クラウドベースのNLUエンジン
146 クラウドベースのTTSエンジン
148 クラウドベースのフルフィルメントエンジン
150 クラウドベースの認証エンジン
152A~N TD-SVモデル
154 TD-SV特徴データベース
200 方法
300A 話された発話
300B 話された発話
300C 話された発話
300D 話された発話
300E 話された発話
301A 部分
301D 部分
301E 部分
302 話者特徴
302A 話者特徴
302D 話者特徴
302E 話者特徴
303A 部分
303B 部分
303C 部分
303D 部分
304 話者特徴
304A 話者特徴
304B 話者特徴
304C 話者特徴
304D 話者特徴
305A 部分
305B 部分
305C 部分
305D 部分
305E 部分
306 話者特徴
306A 話者特徴
306B 話者特徴
306C 話者特徴
306D 話者特徴
306E 話者特徴
307A 部分
307B 部分
307C 部分
307D 部分
308 話者特徴
308A 話者特徴
308B 話者特徴
308C 話者特徴
308D 話者特徴
309A 部分
309B 部分
309D 部分
310 話者特徴
310A 話者特徴
310B 話者特徴
400 方法
500A 話された発話
500B 話された発話
501A オーディオデータの部分
501A 部分
502A 発話特徴
502B 発話特徴
503A オーディオデータの部分
503A 部分
504A 発話特徴
505A オーディオデータの部分
505A 部分
505A 発話特徴
506A 発話特徴
506B 発話特徴
507A オーディオデータの部分
507A 部分
508A 発話特徴
509A オーディオデータの部分
509A 部分
510A 発話特徴
512A 第1の距離メトリック
512B 第2の距離メトリック
514A 第4の距離メトリック
516A 第2の距離メトリック
516B 第3の距離メトリック
518A 第3の距離メトリック
520A 第5の距離メトリック
520B 部分
521B 発話特徴
522B 第1の距離メトリック
530 話者特徴
610 コンピューティングデバイス
612 バスサブシステム
614 プロセッサ
616 ネットワークインターフェースサブシステム
620 ユーザインターフェース出力デバイス
622 ユーザインターフェース入力デバイス
624 ストレージサブシステム
625 メモリサブシステム
626 ファイルストレージサブシステム
630 メインランダムアクセスメモリ(「RAM」)
632 読取り専用メモリ(「ROM」)

Claims (24)

1つまたは複数のプロセッサによって実装される方法であって、
ユーザの話された発話をキャプチャするオーディオデータを受信するステップであって、前記オーディオデータが、前記ユーザのアシスタントデバイスの1つまたは複数のマイクを介して検出される、ステップと、
前記話された発話の認識を生成するために、前記オーディオデータに対して音声認識を実行するステップと、
前記音声認識に基づいて、前記話された発話によって伝えられるアシスタントアクションを決定するステップと、
前記話された発話の受信に応答して前記アシスタントアクションを実行するステップと、
前記認識の1つまたは複数の用語が、前記ユーザの特定のテキスト依存型話者検証(TD-SV)に対応することを決定するステップであって、前記1つまたは複数の用語が、前記アシスタントデバイスの任意の一般的な呼出しウェイクワードとは別個のものである、ステップと、
前記ユーザおよび前記話された発話に対する認証基準がしきい値を満たすと決定するステップと、
前記認識の前記1つまたは複数の用語が前記ユーザの特定のTD-SVに対応するという決定に応答して、および前記認証基準が前記しきい値を満たしているという決定に応答して、
前記ユーザの前記特定のTD-SVの話者特徴を生成する際に、前記1つまたは複数の用語に対応する前記オーディオデータの部分を処理するステップと
を含む、方法。
前記ユーザの前記特定のTD-SVの前記話者特徴を生成する際に前記オーディオデータを処理した後、
前記ユーザの追加の話された発話をキャプチャする追加のオーディオデータを受信するステップであって、前記追加の話された発話が、前記1つまたは複数の用語を含む、ステップと、
前記追加のオーディオデータの部分の発話特徴を生成する際に、前記1つまたは複数の用語に対応する前記追加のオーディオデータの所与の部分を処理するステップと、
前記ユーザの前記特定のTD-SVについて、前記発話特徴を前記話者特徴と比較するステップと、
前記比較に基づいて、前記追加の話された発話について前記ユーザを認証するかどうかを決定するステップと
をさらに含む、請求項1に記載の方法。
前記追加の話された発話の追加の認識を生成するために、前記追加のオーディオデータに対して音声認識を実行するステップと、
前記1つまたは複数の用語が前記追加の認識に含まれ、前記追加のオーディオデータの所与の部分に対応することを決定するステップと
をさらに含み、
前記追加のオーディオデータの前記所与の部分を処理し、前記発話特徴を前記特定のTD-SVの前記話者特徴と比較するステップが、前記1つまたは複数の用語が前記追加の認識に含まれ、前記追加のオーディオデータの前記所与の部分に対応することを決定するステップに応答する、請求項2に記載の方法。
比較する前記ステップが、前記発話特徴と前記話者特徴との間の距離基準を決定するステップを含む、請求項2に記載の方法。
前記比較に基づいて、前記追加の話された発話について前記ユーザを認証するかどうかを決定するステップが、
前記追加の話された発話によって伝えられる追加のアシスタントの対話に依存するしきい値を決定するステップと、
前記距離基準が前記しきい値を満たすことを決定することにのみ応答して、前記追加の話された発話について前記ユーザを認証するステップと
を含む、請求項4に記載の方法。
前記オーディオデータを受信する前に、前記1つまたは複数の用語を含むとそれぞれ決定され、前記ユーザに対して認証されているとそれぞれ決定されたオーディオデータの1つまたは複数の以前のインスタンスに基づいて、前記ユーザの前記特定のTD-SVの初期の話者特徴を生成するステップをさらに含み、
前記ユーザの前記特定のTD-SVの前記話者特徴を生成する際に前記オーディオデータの前記一部を処理することが、前記オーディオデータの前記一部を処理することに基づいて前記初期の話者特徴を修正することを含む、請求項1から5のいずれか一項に記載の方法。
前記オーディオデータ、または前記オーディオデータに先行する先行オーディオデータの処理に基づく一般的な呼出しTD-SVであって、前記一般的な呼出しTD-SVが前記ユーザ用であり、前記アシスタントデバイス用の前記一般的な呼出しウェイクワードのうちの1つまたは複数用である、一般的な呼出しTD-SVと、
前記ユーザの指紋検証と、
前記ユーザの顔検証と、
前記ユーザによって入力された検証コードの分析と
のうちの1つまたは複数に基づいて前記認証基準を決定するステップをさらに備える、請求項1から6のいずれか一項に記載の方法。
1つまたは複数のプロセッサによって実装される方法であって、
所与のユーザの話された発話をキャプチャするオーディオデータを受信するステップであって、前記オーディオデータが、前記所与のユーザのアシスタントデバイスの1つまたは複数のマイクを介して検出される、ステップと、
第1の発話特徴を生成するために、前記オーディオデータの第1の部分を処理するステップと、
前記ユーザの第1のテキスト依存型話者検証(TD-SV)のために、前記第1の発話特徴と第1の話者特徴との第1の比較を実行するステップであって、前記第1のTD-SVが、1つまたは複数の用語の第1のセットに依存する、ステップと、
第2の発話特徴を生成するために、前記オーディオデータの第2の部分を処理するステップであって、前記オーディオデータの前記第2の部分が、前記オーディオデータの前記第1の部分とは異なる、ステップと、
前記ユーザの第2のTD-SVについて、前記第2の発話特徴と第2の話者特徴との第2の比較を実行するステップであって、前記第2のTD-SVが、1つまたは複数の用語の前記第1のセットとは異なる、1つまたは複数の用語の第2のセットに依存している、ステップと、
前記第1の比較と前記第2の比較の両方に基づいて、前記話された発話について前記ユーザを認証することを決定するステップと、
前記話された発話について前記ユーザを認証することを決定することに応じて、
前記話された発話に基づく1つまたは複数のアクションを実行するステップと
を含む、方法。
前記オーディオデータの前記第1の部分が、前記アシスタントデバイスの一般的な呼出しウェイクワードをキャプチャし、前記第1のTD-SVが依存する1つまたは複数の用語の前記第1のセットは、前記アシスタントデバイスの1つまたは複数の一般的な呼出しウェイクワードで構成され、前記一般的な呼出しウェイクワードが、前記アシスタントデバイスの1つまたは複数の一般的な呼出しウェイクワードのうちの1つである、請求項8に記載の方法。
前記オーディオデータを受信する前に、
前記一般的な呼出しウェイクワードを話すようにという1つまたは複数のプロンプトに応答して、前記ユーザの複数の発話が収集される登録手順を実行するステップと、
前記複数の発話に応じて前記第1の話者特徴を生成するステップと
をさらに含む、請求項9に記載の方法。
前記オーディオデータの前記第2の部分は、前記オーディオデータの前記第1の部分と重複せず、前記オーディオデータの前記第2の部分には、前記アシスタントデバイスの前記1つまたは複数の一般的な呼出しウェイクワードのうちの任意のものがない、請求項9に記載の方法。
前記オーディオデータを受信する前に、
前のオーディオデータの複数のインスタンスに基づいて、前記第2の話者特徴を生成するステップであって、前のオーディオデータの前記複数のインスタンスに基づいて前記第2の話者の特徴を生成するステップが、前のオーディオデータの前記複数のインスタンスが、
1つまたは複数の用語の前記第2のセットのうちの少なくともいくつかをキャプチャし、
前記ユーザが認証されたときにキャプチャされることを決定することに基づくステップをさらに含む、請求項11に記載の方法。
前記オーディオデータの前記第2の部分には、前記アシスタントデバイスの任意の一般的な呼出しウェイクワードがない、請求項8から12のいずれか一項に記載の方法。
前記オーディオデータを受信する前に、
前のオーディオデータの複数のインスタンスに基づいて、前記第2の話者特徴を生成するステップであって、前のオーディオデータの前記複数のインスタンスに基づいて前記第2の話者の特徴を生成するステップが、前のオーディオデータの前記複数のインスタンスが、
1つまたは複数の用語の前記第2のセットのうちの少なくともいくつかをキャプチャし、
前記ユーザが認証されたときにキャプチャされることを決定することに基づくステップをさらに含む、請求項13に記載の方法。
前記話された発話の認識を生成するために、前記オーディオデータに対して音声認識を実行するステップと、
1つまたは複数の用語の前記第2のセットが前記認識に含まれ、前記オーディオデータの前記第2の部分に対応することを決定するステップと
をさらに含み、
前記オーディオデータの前記第2の部分を処理し、前記第2の発話特徴と前記第2のTD-SVの前記第2の話者特徴との前記第2の比較を実行することが、1つまたは複数の用語の前記第2のセットが前記認識に含まれ、前記オーディオデータの前記第2の部分に対応することを決定することに応答する、請求項8から14のいずれか一項に記載の方法。
前記第1の発話特徴を生成するために前記オーディオデータの前記第1の部分を処理するステップが、ニューラルネットワークモデルを使用して前記オーディオデータの前記第1の部分を第1の処理するステップを含み、前記第1の発話特徴が、前記第1の処理の後の、前記ニューラルネットワークモデルの活性化の第1のセットに基づき、
前記第2の発話特徴を生成するために前記オーディオデータの前記第2の部分を処理するステップが、前記ニューラルネットワークモデルを使用して前記オーディオデータの前記第2の部分を第2の処理するステップを含み、前記第2の発話特徴が、前記第2の処理の後の、前記ニューラルネットワークモデルの活性化の第2のセットに基づく、請求項8から15のいずれか一項に記載の方法。
前記第1の発話特徴を生成するために前記オーディオデータの前記第1の部分を処理するステップが、第1のニューラルネットワークモデルを使用して前記オーディオデータの前記第1の部分を第1の処理するステップを含み、前記第1の発話特徴が、前記第1の処理の後の、前記第1のニューラルネットワークモデルの活性化の第1のセットに基づき、
前記第2の発話特徴を生成するために前記オーディオデータの前記第2の部分を処理するステップが、第2のニューラルネットワークモデルを使用して前記オーディオデータの前記第2の部分を第2の処理するステップを含み、前記第2の発話特徴が、前記第2の処理の後の、前記第2のニューラルネットワークモデルの活性化の第2のセットに基づく、請求項8から15のいずれか一項に記載の方法。
前記第1の比較を実行するステップが、前記第1の発話特徴と前記第1の話者特徴との間の第1の距離基準を決定するステップを含み、
前記第2の比較を実行するステップが、前記第2の発話特徴と前記第2の話者特徴との間の第2の距離基準を決定するステップを含む、請求項8から17のいずれか一項に記載の方法。
前記第1の比較と前記第2の比較の両方に基づいて、前記話された発話について前記ユーザを認証することを決定するステップが、
前記第1の距離基準と前記第2の距離基準の両方に基づく全体的な基準に基づいて、前記ユーザを認証することを決定するステップを含む、請求項18に記載の方法。
前記第1の距離基準と前記第2の距離基準の両方に基づく前記全体的な基準に基づいて、前記ユーザを認証することを決定するステップが、
前記話された発話によって伝えられるアシスタントの対話に依存するしきい値を決定するステップと、
前記全体の距離基準が前記しきい値を満たすことを決定することにのみ応答して、前記追加の話された発話について前記ユーザを認証するステップと
を含む、請求項19に記載の方法。
1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、請求項1から20のいずれか一項に記載の方法を実行させる命令を備える、コンピュータプログラム製品。
1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、請求項1から20のいずれか一項に記載の方法を実行させる命令を備える、コンピュータ可読ストレージ媒体。
請求項1から20のいずれか一項に記載の方法を実行するための1つまたは複数のプロセッサを備える、クライアントデバイス。
請求項1から20のいずれか一項に記載の方法を実行するための1つまたは複数のプロセッサを備える、クライアントデバイス。
JP2023517765A 2020-10-13 2020-12-15 テキスト依存型話者検証機能の自動生成および/または使用 Active JP7457207B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/069,565 2020-10-13
US17/069,565 US11315575B1 (en) 2020-10-13 2020-10-13 Automatic generation and/or use of text-dependent speaker verification features
PCT/US2020/064984 WO2022081185A1 (en) 2020-10-13 2020-12-15 Automatic generation and/or use of text-dependent speaker verification features

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024039147A Division JP2024083355A (ja) 2020-10-13 2024-03-13 テキスト依存型話者検証機能の自動生成および/または使用

Publications (2)

Publication Number Publication Date
JP2023540398A true JP2023540398A (ja) 2023-09-22
JP7457207B2 JP7457207B2 (ja) 2024-03-27

Family

ID=74003962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023517765A Active JP7457207B2 (ja) 2020-10-13 2020-12-15 テキスト依存型話者検証機能の自動生成および/または使用

Country Status (5)

Country Link
US (2) US11315575B1 (ja)
EP (2) EP4235654A1 (ja)
JP (1) JP7457207B2 (ja)
KR (2) KR20230137496A (ja)
WO (1) WO2022081185A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11315575B1 (en) * 2020-10-13 2022-04-26 Google Llc Automatic generation and/or use of text-dependent speaker verification features
US20220189501A1 (en) * 2020-12-16 2022-06-16 Truleo, Inc. Audio analysis of body worn camera
WO2022173962A1 (en) * 2021-02-11 2022-08-18 Nuance Communications, Inc. Communication system and method

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393305B1 (en) * 1999-06-07 2002-05-21 Nokia Mobile Phones Limited Secure wireless communication user identification by voice recognition
KR100297833B1 (ko) * 1999-07-07 2001-11-01 윤종용 비고정 연속 숫자음을 이용한 화자 검증 시스템 및 그 방법
US6691089B1 (en) * 1999-09-30 2004-02-10 Mindspeed Technologies Inc. User configurable levels of security for a speaker verification system
US8812319B2 (en) * 2001-01-31 2014-08-19 Ibiometrics, Inc. Dynamic pass phrase security system (DPSS)
US7636855B2 (en) * 2004-01-30 2009-12-22 Panasonic Corporation Multiple choice challenge-response user authorization system and method
US8099288B2 (en) * 2007-02-12 2012-01-17 Microsoft Corp. Text-dependent speaker verification
US9536528B2 (en) * 2012-07-03 2017-01-03 Google Inc. Determining hotword suitability
US9711148B1 (en) * 2013-07-18 2017-07-18 Google Inc. Dual model speaker identification
US20160293167A1 (en) * 2013-10-10 2016-10-06 Google Inc. Speaker recognition using neural networks
US9401148B2 (en) * 2013-11-04 2016-07-26 Google Inc. Speaker verification using neural networks
US9767787B2 (en) * 2014-01-01 2017-09-19 International Business Machines Corporation Artificial utterances for speaker verification
US8812320B1 (en) * 2014-04-01 2014-08-19 Google Inc. Segment-based speaker verification using dynamically generated phrases
US9542948B2 (en) * 2014-04-09 2017-01-10 Google Inc. Text-dependent speaker identification
US20150302856A1 (en) * 2014-04-17 2015-10-22 Qualcomm Incorporated Method and apparatus for performing function by speech input
US9792899B2 (en) * 2014-07-15 2017-10-17 International Business Machines Corporation Dataset shift compensation in machine learning
US10580401B2 (en) * 2015-01-27 2020-03-03 Google Llc Sub-matrix input for neural network layers
US10438593B2 (en) * 2015-07-22 2019-10-08 Google Llc Individualized hotword detection models
CN106373575B (zh) 2015-07-23 2020-07-21 阿里巴巴集团控股有限公司 一种用户声纹模型构建方法、装置及系统
US9978374B2 (en) * 2015-09-04 2018-05-22 Google Llc Neural networks for speaker verification
US20170236520A1 (en) * 2016-02-16 2017-08-17 Knuedge Incorporated Generating Models for Text-Dependent Speaker Verification
US10373612B2 (en) * 2016-03-21 2019-08-06 Amazon Technologies, Inc. Anchored speech detection and speech recognition
US10152974B2 (en) * 2016-04-15 2018-12-11 Sensory, Incorporated Unobtrusive training for speaker verification
GB2552082A (en) * 2016-06-06 2018-01-10 Cirrus Logic Int Semiconductor Ltd Voice user interface
EP3287921B1 (en) * 2016-08-26 2020-11-04 Nxp B.V. Spoken pass-phrase suitability determination
US9990926B1 (en) * 2017-03-13 2018-06-05 Intel Corporation Passive enrollment method for speaker identification systems
US10354656B2 (en) * 2017-06-23 2019-07-16 Microsoft Technology Licensing, Llc Speaker recognition
US10325602B2 (en) * 2017-08-02 2019-06-18 Google Llc Neural networks for speaker verification
US10515640B2 (en) * 2017-11-08 2019-12-24 Intel Corporation Generating dialogue based on verification scores
US10789959B2 (en) * 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
JP6980603B2 (ja) * 2018-06-21 2021-12-15 株式会社東芝 話者モデル作成システム、認識システム、プログラムおよび制御装置
US10832671B2 (en) * 2018-06-25 2020-11-10 Intel Corporation Method and system of audio false keyphrase rejection using speaker recognition
US11150866B2 (en) * 2018-11-13 2021-10-19 Synervoz Communications Inc. Systems and methods for contextual audio detection and communication mode transactions
US10923111B1 (en) * 2019-03-28 2021-02-16 Amazon Technologies, Inc. Speech detection and speech recognition
US10650824B1 (en) * 2019-05-10 2020-05-12 Fmr Llc Computer systems and methods for securing access to content provided by virtual assistants
US11282500B2 (en) * 2019-07-19 2022-03-22 Cisco Technology, Inc. Generating and training new wake words
US11315575B1 (en) * 2020-10-13 2022-04-26 Google Llc Automatic generation and/or use of text-dependent speaker verification features

Also Published As

Publication number Publication date
EP4235654A1 (en) 2023-08-30
KR102582022B1 (ko) 2023-09-22
EP4010898A1 (en) 2022-06-15
US20220215845A1 (en) 2022-07-07
EP4010898B1 (en) 2023-05-03
WO2022081185A1 (en) 2022-04-21
US11984128B2 (en) 2024-05-14
KR20230070523A (ko) 2023-05-23
US11315575B1 (en) 2022-04-26
JP7457207B2 (ja) 2024-03-27
US20220115022A1 (en) 2022-04-14
KR20230137496A (ko) 2023-10-04

Similar Documents

Publication Publication Date Title
US11289100B2 (en) Selective enrollment with an automated assistant
JP7457207B2 (ja) テキスト依存型話者検証機能の自動生成および/または使用
US11704940B2 (en) Enrollment with an automated assistant
US20240005924A1 (en) Transient personalization mode for guest users of an automated assistant
US20230298583A1 (en) Suggesting an alternative interface when environmental interference is expected to inhibit certain automated assistant interactions
JP2022539674A (ja) 特定話者スピーチモデルを使用した話者認識
JP2024079788A (ja) アシスタントリクエストの協調的処理のための、グループ化されたアシスタントデバイスの、オンデバイスモデルを動的に適応させること
KR20230147157A (ko) 어시스턴트 명령(들)의 컨텍스트적 억제
US20220094650A1 (en) Asynchronous resumption of dialog session(s) between a user and an automated assistant based on intermediate user interaction(s)
JP2024083355A (ja) テキスト依存型話者検証機能の自動生成および/または使用
JP7507885B2 (ja) アシスタントリクエストの協調的処理のための、グループ化されたアシスタントデバイスの、オンデバイスモデルを動的に適応させること
US20230223031A1 (en) User authentication, for assistant action, using data from other device(s) in a shared environment
US20230186909A1 (en) Selecting between multiple automated assistants based on invocation properties
US20230409277A1 (en) Encrypting and/or decrypting audio data utilizing speaker features
WO2023113877A1 (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: 20230516

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230516

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240314

R150 Certificate of patent or registration of utility model

Ref document number: 7457207

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150