KR20230156145A - 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 - Google Patents
하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 Download PDFInfo
- Publication number
- KR20230156145A KR20230156145A KR1020237035935A KR20237035935A KR20230156145A KR 20230156145 A KR20230156145 A KR 20230156145A KR 1020237035935 A KR1020237035935 A KR 1020237035935A KR 20237035935 A KR20237035935 A KR 20237035935A KR 20230156145 A KR20230156145 A KR 20230156145A
- Authority
- KR
- South Korea
- Prior art keywords
- text
- dependent
- model
- independent
- utterance
- Prior art date
Links
- 230000001419 dependent effect Effects 0.000 title claims abstract description 130
- 238000012795 verification Methods 0.000 title claims abstract description 108
- 239000013598 vector Substances 0.000 claims abstract description 115
- 238000000034 method Methods 0.000 claims abstract description 91
- 238000011156 evaluation Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims abstract description 39
- 230000009471 action Effects 0.000 claims abstract description 29
- 238000012549 training Methods 0.000 claims description 129
- 230000015654 memory Effects 0.000 claims description 55
- 230000008569 process Effects 0.000 claims description 40
- 230000004044 response Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 238000013528 artificial neural network Methods 0.000 description 22
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 5
- 238000012216 screening Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000007958 sleep Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006266 hibernation Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/635—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
화자 검증 방법(400)은 발화(119)에 대응하는 오디오 데이터(120)를 수신하는 동작, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분(121)을 처리하여 텍스트 의존형 평가 벡터(214)를 생성하는 동작, 및 하나 이상의 텍스트 의존형 신뢰도 점수(215)를 생성하는 동작을 포함한다. 텍스트 의존형 신뢰도 점수들 중 하나가 임계값을 충족시키는 경우, 동작들은 발화의 화자를 임계값을 충족시키는 텍스트 의존형 신뢰도 점수와 연관된 각각의 등록된 사용자로서 식별하는 동작, 및 화자 검증을 수행하지 않고 액션의 수행을 개시하는 동작을 포함한다. 텍스트 의존형 신뢰도 점수들 중 어느 것도 임계값을 충족시키지 못할 때, 동작들은 쿼리를 특성화하는 오디오 데이터의 제2 부분(122)을 처리하여 텍스트 독립형 평가 벡터(224)를 생성하는 동작, 하나 이상의 텍스트 독립형 신뢰도 점수(225)를 생성하는 동작, 및 발화의 화자의 아이덴티티가 등록된 사용자들 중 임의의 것을 포함하는지를 결정하는 동작을 포함한다.
Description
본 개시는 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증에 관한 것이다.
가정 또는 자동차와 같은 스피치 인에이블드 환경(speech-enabled environment)에서, 사용자는 음성 입력을 사용하여 정보에 액세스하고/하거나 다양한 기능들을 제어할 수 있다. 정보 및/또는 기능들은 주어진 사용자에 대해 개인화될 수 있다. 따라서, 스피치 인에이블드 환경과 연관된 화자들의 그룹 중에서 주어진 화자를 식별하는 것이 유리할 수 있다.
화자 검증(예를 들어, 음성 인증)은 사용자 디바이스의 사용자가 사용자 디바이스에 대한 액세스를 획득하기 위한 쉬운 방법을 제공한다. 화자 검증은 사용자가 사용자 디바이스에 대한 액세스를 획득하기 위해 암호를 수동으로 (예를 들어, 타이핑을 통해) 입력할 필요 없이 사용자로 하여금 발화를 말함으로써 사용자 디바이스를 잠금 해제하고 액세스할 수 있게 한다. 그러나 다수의 상이한 언어, 방언, 억양 등의 존재는 화자 검증에 대한 소정의 과제들을 제시한다.
본 개시의 일 양태는 데이터 처리 하드웨어 상에서 실행될 때 데이터 처리로 하여금 사용자 디바이스에 의해 캡처된 발화에 대응하는 오디오 데이터를 수신하는 동작을 포함하는 동작들을 수행하게 하는 화자 검증을 위한 컴퓨터 구현 방법(computer-implemented method)을 제공한다. 발화는 미리 결정된 핫워드(hotword)에 이어서, 수행할 액션을 지정하는 쿼리를 포함한다. 동작들은 또한, 텍스트 의존형 화자 검증(TD-SV) 모델을 사용하여, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분을 처리하여, 핫워드의 발화의 음성 특성들을 표현하는 텍스트 의존형 평가 벡터를 생성하고, 하나 이상의 텍스트 의존형 신뢰도 점수를 생성하는 동작을 포함한다. 각각의 텍스트 의존형 신뢰도 점수는 텍스트 의존형 평가 벡터가 하나 이상의 텍스트 의존형 기준 벡터 각각과 매칭될 가능성을 나타내고, 각각의 텍스트 의존형 기준 벡터는 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각과 연관된다. 동작들은 하나 이상의 텍스트 의존형 신뢰도 점수 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정하는 동작을 더 포함한다. 텍스트 의존형 신뢰도 점수들 중 하나가 신뢰도 임계값을 충족시킬 때, 동작들은 발화의 화자를 신뢰도 임계값을 충족시키는 텍스트 의존형 신뢰도 점수에 대응하는 상기 텍스트 의존형 기준 벡터와 연관되는 각각의 등록된 사용자로서 식별하는 동작, 및 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터의 제2 부분에 대해 화자 검증을 수행하지 않고 쿼리에 의해 지정된 액션의 수행을 개시하는 동작을 포함한다. 하나 이상의 텍스트 의존형 신뢰도 점수 중 어느 것도 신뢰도 임계값을 충족시키지 않을 때, 동작들은 텍스트 독립형 화자 검증기에 명령어를 제공하는 동작을 포함한다. 명령어는 텍스트 독립형 화자 검증기에 의해 수신될 때, 텍스트 독립형 화자 검증기로 하여금, 텍스트 독립형 화자 검증(TI-SV) 모델을 사용하여, 쿼리를 특성화하는 오디오 데이터의 제2 부분을 처리하여, 텍스트 독립형 평가 벡터를 생성하게 한다. 동작들은 텍스트 독립형 평가 벡터가 하나 이상의 텍스트 독립형 기준 벡터 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 독립형 신뢰도 점수를 생성하는 동작을 더 포함한다. 각각의 텍스트 독립형 기준 벡터는 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각과 연관된다. 동작들은 또한 하나 이상의 텍스트 의존형 신뢰도 점수 및 하나 이상의 텍스트 독립형 신뢰도 점수에 기초하여, 발화를 말한 화자의 아이덴티티가 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 중 임의의 것을 포함하는지를 결정하는 동작을 포함한다.
본 개시의 구현들은 다음의 선택적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각은 개인 자원들의 상이한 각각의 세트에 액세스하기 위한 허가들을 가지며, 쿼리에 의해 지정된 액션의 수행은 발화의 화자로서 식별된 각각의 등록된 사용자와 연관된 개인 자원들의 각각의 세트에 대한 액세스를 요구한다. 일부 예들에서, 데이터 처리 하드웨어는 TD-SV 모델을 실행하고, 사용자 디바이스 상에 상주하며, 텍스트 독립형 화자 검증기는 TI-SI 모델을 실행하고, 네트워크를 통해 사용자 디바이스와 통신하는 분산 컴퓨팅 시스템 상에 상주한다. 이 예들에서, 하나 이상의 텍스트 의존형 신뢰도 점수 중 어느 것도 신뢰도 임계값을 충족시키지 않을 때, 텍스트 독립형 화자 검증기에 명령어를 제공하는 것은 명령어 및 하나 이상의 텍스트 의존형 신뢰도 점수를 사용자 디바이스로부터 분산 컴퓨팅 시스템으로 송신하는 것을 포함한다.
일부 구현들에서, 데이터 처리 하드웨어는 네트워크를 통해 사용자 디바이스와 통신하는 사용자 디바이스 또는 분산 컴퓨팅 시스템 중 하나 상에 상주한다. 여기서, 데이터 처리 하드웨어는 TD-SV 모델과 TI-SV 모델 둘 다를 실행한다. 일부 예들에서, TI-SV 모델은 TD-SV 모델보다 더 계산 집약적이다. 일부 구현들에서, 동작들은 핫워드 검출 모델을 사용하여, 쿼리에 선행하는 오디오 데이터 내의 미리 결정된 핫워드를 검출하는 동작을 더 포함하고, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분은 핫워드 검출 모델에 의해 추출된다.
일부 예들에서, TD-SV 모델 및 TI-SV 모델은 복수의 훈련 데이터 세트에 대해 훈련된다. 각각의 훈련 데이터 세트는 상이한 각각의 언어 또는 방언과 연관되며, 상이한 화자들에 의해 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들을 포함한다. 각각의 대응하는 훈련 발화는 미리 결정된 핫워드를 특성화하는 텍스트 의존형 부분 및 미리 결정된 핫워드에 이어지는 쿼리 문장을 특성화하는 텍스트 독립형 부분을 포함한다. 여기서, TD-SV 모델은 복수의 훈련 데이터 세트 중 각각의 훈련 데이터 세트 내의 각각의 대응하는 훈련 발화의 텍스트 의존형 부분에 대해 훈련되고, TI-SV 모델은 복수의 훈련 데이터 세트 중 각각의 훈련 데이터 세트 내의 각각의 대응하는 훈련 발화의 텍스트 독립형 부분에 대해 훈련된다. 이러한 예들에서, 훈련 데이터 세트들 중 적어도 하나와 연관된 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들은 미리 결정된 핫워드를 다른 훈련 데이터 세트들의 대응하는 훈련 발화들과 상이하게 발음할 수 있다. 일부 추가적인 예들에서, TI-SV 모델은 복수의 훈련 데이터 세트 중 하나 이상 내의 적어도 하나의 대응하는 훈련 발화의 텍스트 의존형 부분에 대해 훈련된다. 추가적으로 또는 대안적으로, 훈련 발화들의 텍스트 독립형 부분들에 의해 특성화되는 쿼리 문장들은 가변적인 언어 콘텐츠를 포함한다.
일부 구현들에서, 텍스트 독립형 평가 벡터를 생성할 때, 텍스트 독립형 화자 검증기는 TI-SV 모델을 사용하여, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분 및 쿼리를 특성화하는 오디오 데이터의 제2 부분 둘 다를 처리한다. 추가적으로 또는 대안적으로, 하나 이상의 텍스트 의존형 기준 벡터 각각은 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각에 의해 말해진 미리 결정된 핫워드의 하나 이상의 이전 발화를 수신하는 것에 응답하여 TD-SV 모델에 의해 생성될 수 있다. 하나 이상의 텍스트 독립형 기준 벡터 각각은 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각에 의해 말해진 하나 이상의 이전 발화를 수신하는 것에 응답하여 TI-SV 모델에 의해 생성될 수 있다.
본 개시의 다른 양태는 화자 검증을 위한 시스템을 제공한다. 시스템은 데이터 처리 하드웨어 및 데이터 처리 하드웨어와 통신하는 메모리 하드웨어를 포함한다. 메모리 하드웨어는 데이터 처리 하드웨어 상에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령어들을 저장한다. 동작들은 사용자 디바이스에 의해 캡처된 발화에 대응하는 오디오 데이터를 수신하는 동작을 포함한다. 발화는 미리 결정된 핫워드에 이어서, 수행할 액션을 지정하는 쿼리를 포함한다. 동작들은 또한, 텍스트 의존형 화자 검증(TD-SV) 모델을 사용하여, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분을 처리하여, 핫워드의 발화의 음성 특성들을 나타내는 텍스트 의존형 평가 벡터를 생성하고, 하나 이상의 텍스트 의존형 신뢰도 점수를 생성하는 동작을 포함한다. 각각의 텍스트 의존형 신뢰도 점수는 텍스트 의존형 평가 벡터가 하나 이상의 텍스트 의존형 기준 벡터 각각과 매칭될 가능성을 나타내고, 각각의 텍스트 의존형 기준 벡터는 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각과 연관된다. 동작들은 하나 이상의 텍스트 의존형 신뢰도 점수 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정하는 동작을 더 포함한다. 텍스트 의존형 신뢰도 점수들 중 하나가 신뢰도 임계값을 충족시키는 경우, 동작들은 발화의 화자를 신뢰도 임계값을 충족시키는 텍스트 의존형 신뢰도 점수에 대응하는 텍스트 의존형 기준 벡터와 연관되는 각각의 등록된 사용자로서 식별하는 동작, 및 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터의 제2 부분에 대해 화자 검증을 수행하지 않고 쿼리에 의해 지정된 액션의 수행을 개시하는 동작을 포함한다. 하나 이상의 텍스트 의존형 신뢰도 점수 중 어느 것도 신뢰도 임계값을 충족시키지 않을 때, 동작들은 텍스트 독립형 화자 검증기에 명령어를 제공하는 동작을 포함한다. 명령어는 텍스트 독립형 화자 검증기에 의해 수신될 때, 텍스트 독립형 화자 검증기로 하여금 텍스트 독립형 화자 검증(TI-SV) 모델을 사용하여, 쿼리를 특성화하는 오디오 데이터의 제2 부분을 처리하여, 텍스트 독립형 평가 벡터를 생성하게 한다. 동작들은 텍스트 독립형 평가 벡터가 하나 이상의 텍스트 독립형 기준 벡터 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 독립형 신뢰도 점수를 생성하는 동작을 더 포함한다. 각각의 텍스트 독립형 기준 벡터는 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각과 연관된다. 동작들은 또한, 하나 이상의 텍스트 의존형 신뢰도 점수 및 하나 이상의 텍스트 독립형 신뢰도 점수에 기초하여 발화를 말한 화자의 아이덴티티가 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 중 어느 것을 포함하는지를 결정하는 동작을 포함한다.
이 양태는 다음의 선택적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각은 개인 자원들의 상이한 각각의 세트에 액세스하기 위한 허가들을 가지며, 쿼리에 의해 지정된 액션의 수행은 발화의 화자로서 식별된 각각의 등록된 사용자와 연관된 개인 자원들의 각각의 세트에 대한 액세스를 요구한다. 일부 예들에서, 데이터 처리 하드웨어는 TD-SV 모델을 실행하고, 사용자 디바이스 상에 상주하며, 텍스트 독립형 화자 검증기는 TI-SI 모델을 실행하고, 네트워크를 통해 사용자 디바이스와 통신하는 분산 컴퓨팅 시스템 상에 상주한다. 이 예들에서, 하나 이상의 텍스트 의존형 신뢰도 점수 중 어느 것도 신뢰도 임계값을 충족시키지 않을 때, 텍스트 독립형 화자 검증기에 명령어를 제공하는 것은 명령어 및 하나 이상의 텍스트 의존형 신뢰도 점수를 사용자 디바이스로부터 분산 컴퓨팅 시스템으로 송신하는 것을 포함한다.
일부 구현들에서, 데이터 처리 하드웨어는 네트워크를 통해 사용자 디바이스와 통신하는 사용자 디바이스 또는 분산 컴퓨팅 시스템 중 하나 상에 상주한다. 여기서, 데이터 처리 하드웨어는 TD-SV 모델과 TI-SV 모델 둘 다를 실행한다. 일부 예들에서, TI-SV 모델은 TD-SV 모델보다 더 계산 집약적이다. 일부 구현들에서, 동작들은 핫워드 검출 모델을 사용하여, 쿼리에 선행하는 오디오 데이터 내의 미리 결정된 핫워드를 검출하는 동작을 더 포함하고, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분은 핫워드 검출 모델에 의해 추출된다.
일부 예들에서, TD-SV 모델 및 TI-SV 모델은 복수의 훈련 데이터 세트에 대해 훈련된다. 각각의 훈련 데이터 세트는 상이한 각각의 언어 또는 방언과 연관되며, 상이한 화자들에 의해 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들을 포함한다. 각각의 대응하는 훈련 발화는 미리 결정된 핫워드를 특성화하는 텍스트 의존형 부분 및 미리 결정된 핫워드에 이어지는 쿼리 문장을 특성화하는 텍스트 독립형 부분을 포함한다. 여기서, TD-SV 모델은 복수의 훈련 데이터 세트 중 각각의 훈련 데이터 세트 내의 각각의 대응하는 훈련 발화의 텍스트 의존형 부분에 대해 훈련되고, TI-SV 모델은 복수의 훈련 데이터 세트 중 각각의 훈련 데이터 세트 내의 각각의 대응하는 훈련 발화의 텍스트 독립형 부분에 대해 훈련된다. 이러한 예들에서, 훈련 데이터 세트들 중 적어도 하나와 연관된 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들은 미리 결정된 핫워드를 다른 훈련 데이터 세트들의 대응하는 훈련 발화들과 상이하게 발음할 수 있다. 일부 추가적인 예들에서, TI-SV 모델은 복수의 훈련 데이터 세트 중 하나 이상 내의 적어도 하나의 대응하는 훈련 발화의 텍스트 의존형 부분에 대해 훈련된다. 추가적으로 또는 대안적으로, 훈련 발화들의 텍스트 독립형 부분들에 의해 특성화되는 쿼리 문장들은 가변적인 언어 콘텐츠를 포함한다.
일부 구현들에서, 텍스트 독립형 평가 벡터를 생성할 때, 텍스트 독립형 화자 검증기는 TI-SV 모델을 사용하여, 미리 결정된 핫워드를 특성화하는 오디오 데이터의 제1 부분 및 쿼리를 특성화하는 오디오 데이터의 제2 부분 둘 다를 처리한다. 추가적으로 또는 대안적으로, 하나 이상의 텍스트 의존형 기준 벡터 각각은 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각에 의해 말해진 미리 결정된 핫워드의 하나 이상의 이전 발화를 수신하는 것에 응답하여 TD-SV 모델에 의해 생성된다. 하나 이상의 텍스트 독립형 기준 벡터 각각은 사용자 디바이스의 하나 이상의 상이한 등록된 사용자 각각에 의해 말해진 하나 이상의 이전 발화를 수신하는 것에 응답하여 TI-SV 모델에 의해 생성될 수 있다.
본 개시의 하나 이상의 구현의 상세들은 첨부 도면들 및 아래의 설명에 제시되어 있다. 다른 양태들, 특징들, 및 이점들은 설명 및 도면들로부터 그리고 청구항들로부터 명백할 것이다.
도 1은 다국어 화자 검증 시스템을 갖는 예시적인 스피치 환경의 개략도이다.
도 2는 도 1의 다국어 화자 검증 시스템의 개략도이다.
도 3은 도 1의 다국어 화자 검증 시스템을 훈련시키기 위한 예시적인 훈련 프로세스의 개략도이다.
도 4는 화자 검증 시스템을 사용하여 화자의 아이덴티티를 검증하는 방법을 위한 동작들의 예시적인 배열의 흐름도이다.
도 5는 본 명세서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스의 개략도이다.
다양한 도면들에서 유사한 참조 부호들은 유사한 요소들을 나타낸다.
도 2는 도 1의 다국어 화자 검증 시스템의 개략도이다.
도 3은 도 1의 다국어 화자 검증 시스템을 훈련시키기 위한 예시적인 훈련 프로세스의 개략도이다.
도 4는 화자 검증 시스템을 사용하여 화자의 아이덴티티를 검증하는 방법을 위한 동작들의 예시적인 배열의 흐름도이다.
도 5는 본 명세서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스의 개략도이다.
다양한 도면들에서 유사한 참조 부호들은 유사한 요소들을 나타낸다.
가정, 자동차, 직장 또는 학교와 같은 스피치 인에이블드 환경에서, 사용자는 쿼리 또는 커맨드를 말할 수 있고, 디지털 어시스턴트는 쿼리에 응답하고/하거나 커맨드가 수행되게 할 수 있다. 이러한 스피치 인에이블드 환경은 환경의 다양한 공간들 또는 영역들을 통해 분산된, 접속된 마이크 디바이스들의 네트워크를 사용하여 구현될 수 있다. 마이크들의 네트워크를 통해, 사용자는 그들 앞에 컴퓨터 또는 다른 인터페이스를 가질 필요 없이 말해진 발화를 통해 디지털 어시스턴트에 쿼리할 수 있다. 일부 사례들에서, 스피치 인에이블드 환경은 다수의 등록된 사용자들, 예를 들어 한 가정에 사는 사람들과 연관된다. 이러한 사례들은 스마트폰, 스마트 스피커, 스마트 디스플레이, 태블릿 디바이스, 스마트 텔레비전, 스마트 기기, 차량 인포테인먼트 시스템 등과 같은 단일 디바이스가 여러 사용자에 의해 공유하는 경우에 적용될 수 있다. 여기서, 스피치 인에이블드 환경은 제한된 수의 사용자, 예를 들어 스피치 인에이블드 가정, 사무실 또는 자동차에서 2명 내지 6명의 사람을 가질 수 있다. 따라서, 쿼리를 말하고 있는 특정 사용자의 아이덴티티를 결정하는 것이 바람직하다. 특정 화자들/사용자들의 아이덴티티들을 결정하는 프로세스는 화자 검증, 화자 인식, 화자 식별 또는 음성 인식으로 지칭될 수 있다.
화자 검증은 사용자가 특정 사용자를 대신하여 행동하는 쿼리들을 발행할 수 있게 하고/하거나 다중 사용자 환경들에서 개인화된 응답들을 트리거할 수 있게 한다. 화자 검증(예를 들어, 음성 인증)은 사용자 디바이스의 사용자가 사용자 디바이스에 대한 액세스를 획득할 수 있는 쉬운 방법을 제공한다. 화자 검증은 사용자가 사용자 디바이스에 대한 액세스를 획득하기 위해 암호를 수동으로 (예를 들어, 타이핑을 통해) 입력할 필요 없이 사용자로 하여금 발화를 말함으로써 사용자 디바이스를 잠금 해제하고 액세스할 수 있게 한다. 그러나 다수의 상이한 언어, 방언, 억양 등의 존재는 화자 검증에 대한 소정의 과제들을 제시한다.
일부 시나리오들에서, 사용자는 사용자의 개인 정보에 관련되는 디지털 어시스턴트에 쿼리하고/하거나, 사용자와 연관된 개인 자원들의 세트로부터의 자원에 대한 액세스를 요구한다. 예를 들어, 특정 사용자(예를 들어, 디지털 어시스턴트에 등록된 사용자)는 디지털 어시스턴트에게 "매트와의 나의 미팅이 언제인지"를 묻거나 디지털 어시스턴트에게 "내 뮤직 재생목록 재생해줘"라고 쿼리할 수 있다. 여기서, 사용자는 하나 이상의 다수의 등록된 사용자 중 하나일 수 있으며, 그들은 각각이 그들 자신의 각각의 세트의 개인 자원들(예를 들면, 캘린더, 뮤직 플레이어, 이메일, 메시징, 연락처 목록 등)에 액세스하기 위한 허가를 가지며, 다른 등록된 사용자들의 개인 자원들에 액세스하는 것이 제한된다. 예를 들어, 존과 메그가 둘 다 디지털 어시스턴트의 등록된 사용자들인 경우, 디지털 어시스턴트는 적절한 등록된 사용자의 캘린더에 액세스하여 매트와의 미팅이 스케줄링되는 시기를 결정하고 매트와의 스케줄링된 미팅에 대한 미팅 상세들로 응답하기 위해 존 또는 메그가 "매트와의 나의 미팅은 언제인가"라는 발화를 말했는지를 식별할 필요가 있을 것이다. 유사하게, 디지털 어시스턴트는 존 및 메그가 고유한 뮤직 재생목록들을 가지고 있기 때문에 뮤직 플레이어에 액세스하고 궁극적으로 적절한 뮤직 재생목록으로부터 트랙들을 가청 출력하기 위해 존 또는 메그 중 누가 "내 뮤직 재생목록 재생"이라는 발화를 말했는지를 식별해야 한다.
다중 사용자 스피치 인에이블드 환경에서 어떤 사용자가 말하고 있는지를 결정하기 위해, 스피치 인에이블드 시스템들은 화자 검증 시스템들(예를 들어, 화자 식별 시스템들 또는 음성 인증 시스템들)을 포함할 수 있다. 화자 검증 시스템들은 화자를 검증하기 위해 두 가지 유형의 모델들을 사용할 수 있다. 발화의 핫워드(예를 들면, 키워드, 깨우기 워드, 트리거 문구) 부분에 대해, 시스템은 하나 이상의 텍스트 의존형 모델을 사용할 수 있고, 전형적으로 쿼리를 특성화하는 발화의 나머지에 대해, 시스템은 하나 이상의 텍스트 독립형 모델을 사용할 수 있다. 이 두 가지 유형의 모델들을 조합하는 것은 화자를 검증하기 위해, 특히 화자 검증 시스템의 초기 사용들 동안에 향상된 정확도를 제공할 수 있다.
발화에서 하나 이상의 용어의 특정 핫워드(예를 들면, "헤이 구글" 또는 "오케이 구글")를 말함으로써, 사용자 디바이스 상에서 실행되는 디지털 어시스턴트는 특정 핫워드에 이어지는 발화에서 말한 쿼리를 (예를 들면, 자동화된 스피치 인식(ASR)을 통해) 처리하고 이행하도록 트리거/호출될 수 있다. 사용자 디바이스 상에서 실행되는 핫워드 검출기는 사용자 디바이스에 의해 캡처된 스트리밍 오디오에서 특정 핫워드의 존재를 검출할 수 있고, 사용자 디바이스가 수면 상태로부터 깨어나서, 발화의 쿼리 부분을 특성화하는 후속 오디오 데이터에 대한 처리(예를 들어, ASR)를 개시하도록 트리거할 수 있다. 핫워드 검출기는 핫워드를 특성화하는 오디오 데이터의 제1 부분을 추출할 수 있으며, 이는 텍스트 의존형 화자 검증을 수행하기 위한 기초로서 사용될 수 있다. 오디오 데이터의 제1 부분은 오디오 데이터의 약 500밀리초(ms)의 고정 길이 오디오 세그먼트를 포함할 수 있다.
일반적으로, 발화의 핫워드를 특성화하는 오디오 데이터의 제1 부분으로부터 화자의 아이덴티티를 검증하기 위한 텍스트 의존형 모델은 스피치 인에이블드 디바이스 상에서 실행되는 반면, 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터의 제2 부분으로부터 화자를 식별하기 위한 텍스트 독립형 모델은 스피치 인에이블드 디바이스와 통신하는 원격 서버 상에서 실행된다. 텍스트 의존형 모델은 발화를 말한 화자가 특정 등록된 사용자에 대응할 제1 가능성에 대응하는 제1 신뢰도 점수를 결정하기 위해 사용자 디바이스의 하나 이상의 상이한 등록된 사용자와 각각 연관된 하나 이상의 기준 벡터와 비교될 수 있는 각각의 텍스트 의존형 화자 벡터를 출력할 수 있다. 텍스트 독립형 모델은 또한 발화를 말한 화자가 특정 등록된 사용자에 대응할 제2 가능성에 대응하는 제2 신뢰도 점수를 결정하기 위해 하나 이상의 상이한 등록된 사용자와 각각 연관된 하나 이상의 기준 벡터와 비교될 수 있는 각각의 텍스트 독립형 화자 벡터를 출력할 수 있다. 제1 및 제2 신뢰도 점수들은 발화를 말한 화자가 특정 등록된 사용자에 대응하는지 여부를 궁극적으로 결정하기 위해 조합될 수 있다.
특히, 다수의 상이한 언어 및 방언에 걸쳐 사용자들의 광범위한 베이스에 대한 스케일에서 화자 검증 시스템들에서 이러한 텍스트 독립형 및 텍스트 의존형 모델을 훈련시키는 데에는 어려움이 있다. 특히, 각각의 언어 및 방언에 대한 모델들을 개별적으로 훈련시키기 위한 스피치 데이터의 훈련 샘플들을 획득하는 것은 어렵고 시간 소모적이다. 자원이 적은 언어들은 어려운 과제들을 제시하는데, 이는 이러한 언어들에서의 스피치 데이터의 충분한 훈련 샘플들이 부족하기 때문이다. 또한, 각각의 언어에 대해 별개의 텍스트 독립형 및 텍스트 의존형 모델들을 사용하는 것은 생성 중에 유지 관리 및 업데이트를 위해 상당한 인적 및 계산적 노력을 필요로 하며, 이전에 지원되지 않았던 새로운 언어들에 대한 새로운 모델들의 훈련을 필요로 한다. 예를 들어, 추가될 새로운 언어에 대한 새로운 텍스트 의존형 및 텍스트 독립형 모델들을 훈련시키기 위해, 화자 라벨들을 갖는 스피치 데이터의 훈련 샘플들이 관심 있는 언어에 대해 이용가능해야 한다.
다수의 상이한 언어에 걸쳐 다수의 화자 검증 시스템을 구축하고 지원하는 것의 어려움을 완화하기 위해, 본 명세서에서의 구현들은 상이한 언어들 및 방언들에 대해 훈련된 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 모델들을 갖는 다국어 화자 검증 시스템을 지향한다. 다국어 화자 검증 시스템은 다수의 언어 및 방언에 대해 텍스트 의존형 및 텍스트 독립형 화자 검증 모델들 각각을 훈련시킴으로써, 훈련에 사용되지 않은 처음 보는 언어들에 대해 일반화될 수 있고, 훈련에 사용된 자원이 많은 언어 및 자원이 적은 언어 모두에 대해 화자 검증 성능을 유지할 수 있다. 본 명세서에서 사용되는 바와 같이, 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 모델들은 각각 상이한 언어들 또는 방언들을 말하는 화자들의 아이덴티파이들(identifies)을 정확하게 검증하기 위해 사용될 수 있는 단일의 각각의 모델을 지칭한다. 즉, 텍스트 의존형 화자 검증 모델도 텍스트 독립형 화자 검증 모델도 특정 단일 언어 또는 방언으로 된 스피치에 의존하거나 이에 한정되지 않는다. 그 결과, 상이한 언어들, 방언들, 및/또는 억양들에 대해 상이한 모델들을 사용하는 것이 아니라, 각각의 단일 모델이 텍스트 의존형 및 텍스트 독립형 화자 검증 모델들 각각에 대해 훈련될 수 있다.
텍스트 의존형 및 텍스트 독립형 화자 검증 모델들의 조합을 이용하는 것은 화자 검증 시스템의 화자 검증 성능/정확도를 최적화하지만, 텍스트 독립형 화자 검증 모델을 이용하는 것은 계산 비용을 증가시킨다. 즉, 텍스트 의존형 화자 검증 모델들은 일반적으로 사용자 디바이스에서 실행되는 경량 모델들인 반면, 텍스트 독립형 화자 검증 모델들은 텍스트 의존형 화자 검증 모델들보다 더 계산 집약적이고 더 큰 메모리 풋프린트를 필요로 하며, 따라서 텍스트 독립형 화자 검증 모델들은 원격 서버에서의 실행에 더 적합하다. 텍스트 독립형 화자 검증 모델을 실행함으로써 발생하는 증가된 계산 비용에 더하여, 쿼리 이행에 대한 레이턴시도 텍스트 의존형 및 텍스트 독립형 화자 검증 모델들 둘 다에 의해 계산들을 수행하는 데 필요한 시간의 지속기간에 비례하여 증가한다. 전체적인 계산 부담을 감소시키고 화자 검증 시스템의 최적의 화자 검증 성능/정확도를 여전히 유지하기 위해, 본 명세서의 구현들은 텍스트 의존형 화자 검증과 연관된 텍스트 의존형 신뢰도 점수들이 신뢰도 임계값을 충족시키지 못할 때만 텍스트 독립형 화자 검증 모델이 텍스트 독립형 화자 검증을 수행하게 하는 화자 검증 선별 스테이지를 더 지향한다. 이와 달리, TD-SV 모델에 의해 생성된 텍스트 의존형 평가 벡터가 각각의 텍스트 의존형 기준 벡터와 매칭될 가능성을 나타내는 텍스트 의존형 신뢰도 점수가 신뢰도 임계값을 충족시킬 때, 선별 시스템은 화자 검증 시스템이 텍스트 독립형 화자 검증을 수행하기 위해 텍스트 독립형 화자 검증 모델에 대한 필요성을 바이패스하는 것을 허용할 수 있다.
도 1을 참조하면, 일부 구현들에서, 스피치 인에이블드 환경에서의 예시적인 시스템(100)은 하나 이상의 사용자(10)와 연관되고 네트워크(104)를 통해 원격 시스템(111)과 통신하는 사용자 디바이스(102)를 포함한다. 사용자 디바이스(102)는 모바일 폰, 컴퓨터(랩탑 또는 데스크탑), 태블릿, 스마트 스피커/디스플레이, 스마트 기기, 스마트 헤드폰, 웨어러블, 차량 인포테인먼트 시스템 등과 같은 컴퓨팅 디바이스에 대응할 수 있으며, 데이터 처리 하드웨어(103) 및 메모리 하드웨어(107)가 장착되어 있다. 사용자 디바이스(102)는 각각의 사용자(10)로부터의 발화를 캡처하기 위한 하나 이상의 마이크(106)를 포함하거나 그와 통신한다. 원격 시스템(111)은 단일 컴퓨터, 다수의 컴퓨터, 또는 스케일링 가능한/탄력적인 컴퓨팅 자원들(113)(예를 들어, 데이터 처리 하드웨어) 및/또는 저장 자원들(115)(예를 들어, 메모리 하드웨어)을 갖는 분산 시스템(예를 들어, 클라우드 환경)일 수 있다.
사용자 디바이스(102)는 스트리밍 오디오(118)에 대한 의미론적 분석 또는 스피치 인식 처리를 수행하지 않고 스트리밍 오디오(118)에서 핫워드의 존재를 검출하도록 구성된 핫워드 검출기(110)(핫워드 검출 모델로도 지칭됨)를 포함한다. 사용자 디바이스(102)는 핫워드 검출기(110)의 일부로서 또는 발화들(119)로부터 오디오 데이터(120)를 추출하기 위한 별개의 컴포넌트로서 구현될 수 있는 음향 특징 추출기(도시되지 않음)를 포함할 수 있다. 예를 들어, 음향 특징 추출기는 사용자(10)에 의해 말해진 발화(119)에 대응하는 사용자 디바이스(102)의 하나 이상의 마이크(106)에 의해 캡처된 스트리밍 오디오(118)를 수신하고 오디오 데이터(120)를 추출할 수 있다. 오디오 데이터(120)는 오디오 신호의 윈도우들에 걸쳐 계산된 필터 뱅크 에너지들 또는 멜-주파수 켑스트럼 계수(MFCC)들과 같은 음향 특징들을 포함할 수 있다. 도시된 예에서, 사용자(10)에 의해 말해진 발화(119)는 "오케이 구글, 내 뮤직 재생목록 재생해줘"를 포함한다.
핫워드 검출기(110)는 오디오 데이터(120)를 수신하여, 발화(119)가 사용자(10)가 말한 특정 핫워드(예를 들어, 오케이 구글)를 포함하는지 여부를 결정할 수 있다. 즉, 핫워드 검출기(110)는 오디오 데이터(120)에서 핫워드(예를 들어, 오케이 구글) 또는 핫워드의 하나 이상의 변형(예를 들어, 헤이 구글)의 존재를 검출하도록 훈련되어, 사용자 디바이스(102)로 하여금 수면 상태 또는 동면 상태로부터 깨어나게 하고, 자동화된 스피치 인식(ASR) 시스템(180)을 트리거하여, 핫워드 및/또는 핫워드에 이어지는 하나 이상의 다른 용어, 예를 들어 핫워드에 이어지고 수행할 액션을 지정한 음성 쿼리에 대해 스피치 인식을 수행하게 할 수 있다. 도시된 예에서, 스트리밍 오디오에 캡처된 발화(119)에서 핫워드에 이어지는 쿼리는, 디지털 어시스턴트로 하여금 특정 사용자(예를 들어, 존)(10)와 연관된 뮤직 재생목록에 액세스하고, 사용자 디바이스(10)(및/또는 하나 이상의 지정된 오디오 출력 디바이스)가 스피커로부터의 가청 출력을 위해 재생할 존의 뮤직 재생목록으로부터의 오디오 트랙을 포함하는 응답(160)을 제공하게 하는 액션을 지정하는 "내 뮤직 재생목록 재생"을 포함한다. 핫워드들은 스피치 인에이블드 사용자 디바이스(102)를 향하지 않는 사운드들을 잠재적으로 픽업할 수 있는 "항상 온(always on)" 시스템들에 유용할 수 있다. 예를 들어, 핫워드들의 사용은 환경이나 배경 발화에 존재하는 다른 개인에게 지향되는 발화와 대조적으로, 주어진 발화(119)가 디바이스(102)를 향할 때를 디바이스(102)가 식별하는 것을 도울 수 있다. 그렇게 함으로써, 디바이스(102)는, 예를 들어 핫워드를 포함하지 않는 사운드들 또는 발화들에 대해 스피치 인식 및 의미론적 해석과 같은 계산적으로 비용이 많이 드는 처리를 트리거링하는 것을 피할 수 있다. 일부 예들에서, 핫워드 검출기(110)는 다수의 상이한 언어 또는 방언에 대해 훈련된 다국어 핫워드 검출기(110)이다.
시스템(100)은 오디오 데이터(120)를 처리함으로써 발화(119)를 말하고 있는 사용자(10)의 아이덴티티를 결정하도록 구성된 다국어 화자 검증 시스템(200)을 포함한다. 다국어 화자 검증 시스템(200)은 식별된 사용자(10)가 허가된 사용자인지를 결정하여, 사용자가 허가된 사용자로서 식별되는 경우에만 쿼리가 이행되게 할 수 있다(예를 들어, 쿼리에 의해 지정된 액션이 수행됨). 유리하게, 다국어 화자 검증 시스템(200)은 사용자가 사용자 디바이스(102)에 대한 액세스를 획득하기 위해 암호를 수동으로 (예를 들어, 타이핑을 통해) 입력하거나 말할 것을 또는 다른 검증 수단(예를 들어, 챌린지 질문에 답하는 것, 생체 검증 데이터를 제공하는 것 등)을 제공할 것을 요구하지 않고 사용자가 발화를 말함으로써 사용자 디바이스(102)를 잠금 해제하고 액세스할 수 있게 한다.
일부 예들에서, 시스템(100)은 다수의 상이한 사용자(10, 10a-n)(도 2)가 각각 사용자 디바이스(102)에 등록되고, 해당 사용자와 연관된 개인 자원들의 각각의 세트(예를 들어, 캘린더, 뮤직 플레이어, 이메일, 메시징, 연락처 목록 등)에 액세스할 수 있는 허가를 갖는 다중 사용자 스피치-인에이블드 환경에서 동작한다. 등록된 사용자들(10)은 다른 등록된 사용자들과 연관된 개인 자원들의 각각의 세트로부터의 개인 자원들에 액세스하는 것이 제한된다. 등록된 각각의 사용자(10)는 해당 사용자와 연관된 개인 자원들의 각각의 세트는 물론, 해당 사용자(10)와 연관된 다른 관련 정보(예를 들어, 사용자 지정 선호 설정들)에 링크되는 각각의 사용자 프로파일을 가질 수 있다. 따라서, 다국어 화자 검증 시스템(200)은 어느 사용자가 다중 사용자 스피치 인에이블드 환경(100)에서 발화(119)를 말하고 있는지를 결정하는 데 사용될 수 있다. 예를 들어, 도시된 예에서, 존 및 메그는 둘 다 사용자 디바이스(102)(또는 사용자 디바이스 상에서 실행되는 디지털 어시스턴트 인터페이스)의 등록된 사용자들(10)일 수 있고, 디지털 어시스턴트는 뮤직 플레이어에 액세스하고 궁극적으로 적절한 뮤직 재생목록으로부터 트랙들을 가청 출력하기 위해 존 또는 메그가 발화(119) "오케이 구글, 내 뮤직 재생목록 재생해줘"를 말했는지를 식별할 필요가 있는데, 이는 메그 및 존이 각각 고유 뮤직 재생목록들을 가질 수 있기 때문이다. 여기서, 다국어 화자 검증 시스템(200)은 발화(119)에 대응하는 오디오 데이터(120)의 하나 이상의 부분(121, 122)을 처리하여, 존이 발화(119)의 화자이었음을 식별한다.
도 1을 계속 참조하면, 핫워드 검출기(110)가 오디오 데이터(120)에서 핫워드(예를 들어, 오케이 구글)의 존재를 검출한 후, 다국어 화자 검증 시스템(200)의 텍스트 의존형(TD) 검증기(210)는 핫워드 검출기(110)에 의해 검출된 핫워드를 특성화하는 오디오 데이터(120)의 제1 부분(121)을 수신한다. 핫워드 검출기(110)는 오디오 데이터(120)로부터, 오디오 데이터(120)의 제1 부분(121)에 대응하는 오디오 세그먼트를 추출할 수 있다. 일부 예들에서, 오디오 데이터(120)의 제1 부분(121)은 핫워드 검출기가 검출하도록 훈련되고 TD 검증기(210)가 화자 검증을 수행하도록 훈련되는 말한 핫워드 또는 다른 용어들/문구들의 오디오 특징들을 포함하기에 충분한 지속기간의 고정-길이 오디오 세그먼트를 포함한다. TD 검증기(210)는 텍스트 의존형 화자 검증(TD-SV) 모델(212)(도 2)을 사용하여, 오디오 데이터(120)의 제1 부분(121)을 처리하고, 오디오 데이터(120)의 제1 부분(121)에 의해 특성화되는 핫워드가 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해졌을 가능성을 각각 나타내는 하나 이상의 TD 신뢰도 점수(215)를 출력하도록 구성된다. 특히, 미리 결정된 핫워드는 발화들에서 말할 때 두 가지 목적을 달성하는데: 사용자(10)가 후속 음성 쿼리를 처리하기 위해 사용자 디바이스(102)를 호출하고 있는지를 결정하고; 발화를 말한 사용자(10)의 아이덴티티를 결정한다. TD 검증기(210)는 사용자 디바이스(102)에서 실행하도록 구성된다. 더욱이, 이하에서 더 상세히 논의되는 바와 같이, TD-SV 모델(212)은 사용자 디바이스들에서의 저장 및 실행에 적합한 경량 모델을 포함한다.
화자 검증 정확도를 증가시키기 위해, 다국어 화자 검증 시스템(200)은 또한 발화(119)를 말한 사용자(10)의 아이덴티티를 검증하기 위해 텍스트 독립형(TI) 검증기(220)를 사용할 수 있다. TI 검증기(220)는 텍스트 독립형 화자 검증(TI-SV) 모델(222)(도 2)을 사용하여, 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)을 처리하고, 오디오 데이터(120)의 제2 부분(122)에 의해 특성화되는 쿼리가 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해졌을 가능성을 각각 나타내는 하나 이상의 TI 신뢰도 점수(225)를 출력하도록 구성될 수 있다. 도시된 예에서, 오디오 데이터(120)의 제2 부분(122)에 의해 특성화되는 쿼리는 "내 뮤직 재생목록 재생해줘"를 포함한다. 일부 예들에서, TI-SV 모델(222)은 오디오 데이터(120)의 제1 부분(121)을 추가적으로 처리하여, 하나 이상의 TI 신뢰도 점수(225)가 오디오 데이터(120)의 제1 및 제2 부분들(121, 122) 모두에 기초하도록 한다. 일부 구현들에서, TI 검증기(220)는 TD 검증기(210)로부터 출력된 하나 이상의 TD 신뢰도 점수(215)를 수신하고, 하나 이상의 TD 신뢰도 점수(215) 및 하나 이상의 TI 신뢰도 점수(225)에 기초하여, 발화(119)를 말한 화자의 아이덴티티가 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 중 임의의 것을 포함하는지를 결정한다. 예를 들어, TI 검증기(220)는 발화(119)의 화자를 등록된 사용자(10a) 존으로서 식별할 수 있다.
TI 검증기(220)는 TD 검증기(210)보다 더 계산 집약적이며, 따라서 TI 검증기(220)는 TD 검증기(210)보다 실행에 있어서 계산적으로 더 많은 비용이 든다. 더욱이, TI 검증기(220)는 TD 검증기(210)보다 훨씬 더 큰 메모리 풋프린트를 필요로 한다. 따라서, TI 검증기(220)는 원격 시스템(111)에서 실행되기에 더 적합하다. 그러나, TI 검증기(220)는 다른 구현들에서 사용자 디바이스(102)에서 실행될 수 있다.
TD 및 TI 검증기들(210, 220)을 조합하는 것은 화자를 검증/식별하기 위한 향상된 정확도를 제공하지만, TI 검증기(220)에서 화자 검증을 수행함으로써 발생하는 증가된 계산 비용으로 인해 트레이드오프가 존재한다. TI 검증기(220)를 실행함으로써 발생하는 증가된 계산 비용에 더하여, 쿼리를 이행하기 위한 레이턴시는 또한 오디오 데이터(120)의 더 긴 지속기간에 대한 TI 검증기(220)에 의한 추가적인 계산을 수행하는 데 필요한 시간의 지속기간에 비례하여 증가한다. 전반적인 계산 부담을 줄이고 레이턴시를 감소시키면서도 다국어 화자 검증 시스템(200)의 화자 검증 성능/정확도를 희생시키지 않기 위해, 다국어 화자 검증 시스템(200)은 다국어 화자 검증 시스템(200)이 TD 검증기(210)로부터 출력되는 하나 이상의 TD 신뢰도 점수(215) 중 어느 것도 신뢰도 임계값을 충족시키지 못하는 경우에만 TI 검증기(220)를 호출하도록 허용하는 중개 화자 검증 선별 스테이지(205)를 포함한다. 즉, SV 선별 스테이지(205)가 TD 검증기(210)로부터 출력된 TD 신뢰도 점수(215)가 신뢰도 임계값을 충족한다(예)고 결정하는 시나리오들에서, 다국어 화자 검증 시스템(200)은 TI 검증기(220)에서의 화자 검증을 바이패스하고, 발화(119)의 화자를 신뢰도 임계값을 충족시킨 말해진 핫워드에 대한 TD 신뢰도 점수(215)와 연관된 각각의 등록된 사용자(10)로서 식별하는 SV 확인(208)을 ASR 시스템(180)에 제공할 수 있다. SV 확인(208)은 ASR 시스템(180)에 의해 수신될 때, TI 검증기(220)가 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)에 대해 화자 검증을 수행할 것을 요구하지 않고, ASR 시스템(180)에게 쿼리에 의해 지정된 액션의 수행을 개시하도록 명령할 수 있다. 도시된 예에서, ASR 시스템(180)은 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)(그리고 선택적으로 제2 부분(122)에 더하여 오디오 데이터(120)의 제1 부분(121))에 대해 스피치 인식을 수행하도록 구성된 ASR 모델(182)을 포함한다.
ASR 시스템(180)은 또한 ASR 모델(182)에 의해 출력된 스피치 인식 결과에 대한 쿼리 해석을 수행하도록 구성된 자연어 이해(NLU) 모듈(184)을 포함한다. 일반적으로, NLU 모듈(184)은 스피치 인식 결과에 대한 의미론적 분석을 수행하여 쿼리에 의해 지정되는 수행할 액션을 식별할 수 있다. 도시된 예에서, NLU 모듈(184)은 쿼리 "내 뮤직 재생목록 재생해줘"에 의해 지정된 액션의 수행이 사용자 디바이스(102)의 각각의 등록된 사용자(10)와 연관된 개인 자원들의 각각의 세트에 대한 액세스를 요구한다고 결정할 수 있다. 따라서, NLU 모듈(184)은 쿼리에 의해 지정된 액션이 액션을 수행하는데 필요한 필수 파라미터, 즉 사용자의 아이덴티티를 누락하고 있다고 결정한다. 따라서, NLU 모듈(184)은 발화(119)의 화자로서 특정 등록된 사용자(예를 들어, 존)(10a)를 식별하는 SV 확인(208)을 사용하고, 따라서 쿼리에 의해 지정된 액션을 수행하기 위한 출력 명령어(185)를 제공함으로써 쿼리의 이행을 개시한다. 도시된 예에서, 출력 명령어(185)는 뮤직 스트리밍 서비스에게 등록된 사용자 존의 뮤직 재생목록으로부터 뮤직 트랙을 스트리밍하도록 명령할 수 있다. 디지털 어시스턴트 인터페이스는 사용자 디바이스(102) 및/또는 사용자 디바이스(102)와 통신하는 하나 이상의 다른 디바이스로부터의 가청 출력을 위한 뮤직 트랙을 포함하는 쿼리에 대한 응답(160)을 제공할 수 있다.
특히, TD 신뢰도 점수(215)가 신뢰도 임계값을 충족시켰기 때문에, NLU 모듈(184)은 쿼리의 이행을 촉진할 수 있었는데, 그 이유는 NLU 모듈(184)이 TI 검증기(220)가 등록된 사용자를 식별하기 위해 추가적인 계산을 수행하기를 기다릴 필요 없이 TD 검증기(210)에 의해 결정된 등록된 사용자의 아이덴티티에 의존할 수 있기 때문이다.
SV 선별 스테이지(205)가 TD 검증기(210)로부터 출력된 하나 이상의 TD 신뢰도 점수(215) 중 어느 것도 신뢰도 임계값을 충족시키지 못하는 것으로 결정하는 시나리오들에서, SV 선별 스테이지(205)는 하나 이상의 TD 신뢰도 점수(215)를 TI 검증기(220)에 전달하고, TI 검증기(220)에게 발화(119)에서 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터(120)의 적어도 제2 부분(122)에 대해 화자 검증을 수행하도록 명령할 수 있다. TI 검증기(220)는 오디오 데이터(120)의 제2 부분(122)을 처리하여 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 쿼리가 말해졌을 가능성을 각각 나타내는 하나 이상의 TI 신뢰도 점수(225)를 생성함으로써 화자 검증을 수행할 수 있다. 일부 구현들에서, TI 검증기(220)는 각각의 등록된 사용자(10)와 연관된 TD 및 TI 신뢰도 점수들(215, 225)의 생성된 쌍을 조합하여, 발화를 말한 화자의 아이덴티티가 각각의 등록된 사용자(10)를 포함하는지를 나타내는 조합된 신뢰도 점수를 결정한다. 예를 들어, 사용자 디바이스의 4명의 등록된 사용자(10a-d)가 있는 경우, TI 검증기(220)는 생성된 TD 및 TI 점수들(215, 225)의 4개의 별개의 쌍을 조합하여, 사용자 디바이스의 4명의 상이한 등록된 사용자(10) 각각에 의해 발화(119)가 말해졌을 가능성을 각각 나타내는 4개의 조합된 신뢰도 점수를 생성할 것이다. 가장 높은 조합된 신뢰도 점수와 연관된 등록된 사용자는 발화(119)의 화자로서 식별될 수 있다.
일부 예들에서, TI 검증기(220)는 TD 및 TI 점수들(215, 225)을 평균함으로써 TD 및 TI 신뢰도 점수들(215, 225)을 조합한다. 일부 예들에서, TI 검증기(220)는 조합된 신뢰도 점수를 획득하기 위해 신뢰도 점수들(215, 225)의 가중 평균을 계산한다. 예를 들어, TD 신뢰도 점수(215)는 TI 신뢰도 점수(225)보다 더 무겁게 가중될 수 있다. 일례로, TD 신뢰도 점수(215)에는 0.75의 가중치를 곱하는 반면, TI 신뢰도 점수(215)에는 0.25의 가중치를 곱한다. 다른 예들에서, TI 신뢰도 점수(225)는 TD 신뢰도 점수(215)보다 더 무겁게 가중된다. 일부 구현들에서, TD 및 TI 신뢰도 점수들(215, 225)에 적용되는 가중은 동적이어서, 적용되는 가중치들이 시간이 지남에 따라 변할 수 있다. 즉, TD 신뢰도 점수(215)는 TI 검증기(220)에 비해 TD 검증기(210)와 연관된 가능한 더 높은 정확도의 반영으로서 초기에 TI 신뢰도 점수(215)보다 더 무겁게 가중될 수 있다. 그러나, 시간이 지남에 따라, TI 검증기(220)는 사용자들의 후속 발화들에 기초하여 업데이트될 수 있고, 결국 화자 검증을 수행하는 데 있어서 TD 검증기(210)보다 더 정확해질 수 있다. 결과적으로, TI 검증기(220)에 의해 출력된 TI 신뢰도 점수들(225)은 결국 TD 검증기(210)에 의해 출력된 TD 신뢰도 점수들(215)보다 더 무겁게 가중될 수 있다.
도 2는 도 1의 다국어 화자 검증 시스템(200)의 개략도를 제공한다. 다국어 화자 검증 시스템(200)은 다국어 TD-SV 모델(212)을 갖는 TD 검증기(210) 및 다국어 TI-SV 모델(222)을 갖는 TI 검증기(220)를 포함한다. 일부 구현들에서, 사용자 디바이스(102)의 각각의 등록된 사용자(10)는 개인 자원들의 상이한 각각의 세트에 액세스할 수 있는 허가들을 가지며, 오디오 데이터(120)의 제2 부분(122)에 의해 특성화되는 쿼리의 수행은 발화(119)의 화자로서 식별된 등록된 사용자(10)와 연관된 개인 자원들의 각각의 세트에 대한 액세스를 요구한다. 여기서, 사용자 디바이스(102)의 각각의 등록된 사용자(10)는 등록된 사용자(10)에 의해 말해진 다수의 등록 문구의 오디오 샘플들로부터 각각의 등록된 사용자 기준 벡터들(252, 254)을 획득하기 위해 음성 등록 프로세스를 수행할 수 있다. 예를 들어, 다국어 TD-SV 모델(212)은 각각의 TD 기준 벡터(252)를 형성하기 위해 조합될 수 있는, 예를 들어 평균 또는 달리 누산될 수 있는 각각의 등록된 사용자(10)에 의해 말해진 등록 문구들 내의 미리 결정된 용어(예를 들어, 핫워드)로부터 하나 이상의 텍스트 의존형(TD) 기준 벡터(252)를 생성할 수 있다. 또한, 다국어 TI-SV 모델(222)은 각각의 TI 기준 벡터(254)를 형성하기 위해 조합될 수 있는, 예를 들어 평균 또는 달리 누산될 수 있는 각각의 등록된 사용자에 의해 말해진 등록 문구들의 오디오 샘플들로부터 하나 이상의 텍스트 독립형(TI) 기준 벡터(254)를 생성할 수 있다.
등록된 사용자들(10) 중 하나 이상은 음성 등록 프로세스를 수행하기 위해 사용자 디바이스(102)를 사용할 수 있으며, 마이크(106)는 등록 발화들을 말하는 이러한 사용자들의 오디오 샘플들을 캡처하고, 다국어 TD-SV 모델(212) 및 다국어 TI-SV 모델(222)은 오디오 샘플들로부터 각각의 TD 기준 벡터(252) 및 TI 기준 벡터(254)를 생성한다. 또한, 등록된 사용자들(10) 중 하나 이상은 사용자 디바이스(102)의 기존 사용자 계정에 대한 인가 및 인증 크리덴셜들을 제공함으로써 사용자 디바이스(102)에 등록할 수 있다. 여기서, 기존 사용자 계정은 사용자 계정에 또한 링크된 다른 디바이스에 대해 각각의 사용자에 의해 수행된 이전 음성 등록 프로세스로부터 획득된 TD 기준 벡터(252) 및 TI 기준 벡터(254)를 저장할 수 있다.
일부 예들에서, 등록된 사용자(10)에 대한 TD 기준 벡터(252)는 사용자 디바이스가 수면 상태로부터 깨어나게 하는 데 사용되는 핫워드(예를 들어, "오케이 구글")와 같은 미리 결정된 용어를 말하는 각각의 등록된 사용자(10)의 하나 이상의 오디오 샘플로부터 추출된다. 일부 구현들에서, TD 기준 벡터(252)는 사용자 디바이스(102)의 각각의 등록된 사용자(10)에 의해 말해진 미리 결정된 핫워드의 하나 이상의 이전 발화를 수신하는 것에 응답하여 다국어 TD-SV 모델(212)에 의해 생성된다. 예를 들어, 핫워드 검출기에 의해 높은 신뢰도로 검출된 미리 결정된 핫워드를 특성화하고, 또한 특정 등록된 사용자에 대해 저장된 TD 기준 벡터(252)와 매칭되는 높은 신뢰도 점수와 연관된 TD 평가 벡터(214)를 초래하는 오디오 데이터는 TD-SV 모델(212)을 정제/업데이트/재훈련시키는데 사용될 수 있다. 또한, 등록된 사용자(10)에 대한 TI 기준 벡터(254)는 상이한 용어들/워드들을 갖는 그리고 상이한 길이들의 문구들을 말하는 각각의 등록된 사용자(10)의 하나 이상의 오디오 샘플로부터 획득될 수 있다. 예를 들어, TI 기준 벡터(254)는 사용자(10)가 사용자 디바이스(102) 또는 동일한 계정에 링크된 다른 디바이스들과 가진 스피치 상호작용들로부터 획득된 오디오 샘플들로부터 시간이 지남에 따라 획득될 수 있다. 즉, TI 기준 벡터(254)는 사용자 디바이스(102)의 등록된 사용자(10)에 의해 말해진 하나 이상의 이전 발화를 수신하는 것에 응답하여 다국어 TI-SV 모델(222)에 의해 생성될 수 있다.
일부 예들에서, 다국어 화자 검증 시스템(200)은 TD 검증기(210)를 사용하여 발화(119)를 말한 사용자(10)의 아이덴티티를 분석한다. TD 검증기(210)는 먼저 사용자에 의해 말해진 미리 결정된 핫워드를 특성화하는 오디오 데이터(120)의 제1 부분(121)으로부터 핫워드의 발화의 음성 특성들을 나타내는 텍스트 의존형(TD) 평가 벡터(214)를 추출함으로써 발화(119)를 말한 사용자(10)를 식별한다. 여기서, TD 검증기(210)는 오디오 데이터(120)의 제1 부분(121)을 입력으로 수신하고, 출력으로서 TD 평가 벡터(214)를 생성하도록 구성된 다국어 TD-SV 모델(212)을 실행할 수 있다. 다국어 TD-SV 모델(212)은 TD 평가 벡터(214)를 출력하기 위해 기계 또는 인간의 감독 하에 훈련된 신경망 모델(예를 들어, 제1 신경망(330))일 수 있다.
TD 평가 벡터(214)가 다국어 TD-SV 모델(212)로부터 출력되면, TD 검증기(210)는 TD 평가 벡터(214)가 사용자 디바이스(102)의 등록된 사용자들(10, 10a-n)에 대해 사용자 디바이스(102)에(예를 들어, 메모리 하드웨어(107)에) 저장된 TD 기준 벡터들(252) 중 어느 하나와 매칭되는지를 결정한다. 전술한 바와 같이, 다국어 TD-SV 모델(212)은 음성 등록 프로세스 동안 등록된 사용자들(10)에 대한 TD 기준 벡터들(252)을 생성할 수 있다. 각각의 TD 기준 벡터(252)는 미리 결정된 핫워드를 말하는 각각의 등록된 사용자(10)의 음성의 특성들을 나타내는 성문 또는 고유 식별자에 대응하는 기준 벡터로 사용될 수 있다.
일부 구현들에서, TD 검증기(210)는 TD 평가 벡터(214)를 사용자 디바이스(102)의 각각의 등록된 사용자(10a-n)와 연관된 각각의 TD 기준 벡터(252)와 비교하는 텍스트 의존형(TD) 채점기(216)를 사용한다. 여기서, TD 채점기(216)는 발화(119)가 각각의 등록된 사용자(10)의 아이덴티티에 대응할 가능성을 나타내는 각각의 비교에 대한 점수를 생성할 수 있다. 구체적으로, TD 채점기(216)는 사용자 디바이스(102)의 각각의 등록된 사용자(10)에 대한 텍스트 의존형(TD) 신뢰도 점수(215)를 생성한다. 일부 구현들에서, TD 채점기(216)는 TD 평가 벡터(214)와 각각의 TD 기준 벡터(252) 사이의 각각의 코사인 거리를 계산하여, 각각의 등록된 사용자(10)에 대한 TD 신뢰도 점수(215)를 생성한다.
TD 채점기(216)가 발화(119)가 각각의 등록된 사용자(10)에 대응할 가능성을 나타내는 TD 신뢰도 점수들(215)을 생성할 때, 화자 검증(SV) 선별 스테이지(205)는 TD 신뢰도 점수들(215) 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정한다. 일부 구현들에서, SV 선별 스테이지(205)는 TD 신뢰도 점수(215)가 신뢰도 임계값을 충족시킨다고 결정한다. 이러한 구현들에서, 다국어 화자 검증 시스템(200)은 TI 검증기(220)에서의 화자 검증을 바이패스하고, 대신에 발화(119)의 화자를 신뢰도 임계값을 충족시킨 TD 신뢰도 점수(215)와 연관된 각각의 등록된 사용자(10)로서 식별하는 SV 확인(208)을 ASR 시스템(108)에 제공한다.
반대로, SV 선별 스테이지(205)가 TD 신뢰도 점수들(215) 중 어느 것도 신뢰도 임계값을 충족시키지 못한다고 결정할 때, SV 선별 스테이지(205)는 TD 검증기(210)에 의해 생성된 TD 신뢰도 점수(215) 및 명령어(207)을 TI 검증기(220)에 제공한다. 여기서, 명령어(207)은 TI 검증기(220)에 의해 수신될 때, TI 검증기(220)로 하여금 발화(119)를 말한 사용자(10)의 아이덴티티를 분석하게 한다. TI 검증기(220)는 먼저 미리 결정된 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)으로부터 발화(119)의 음성 특성들을 나타내는 텍스트 독립형(TI) 평가 벡터(224)를 추출함으로써 발화(119)를 말한 사용자(10)를 식별한다. TI 평가 벡터(224)를 생성하기 위해, TI 검증기(220)는 오디오 데이터(120)의 제2 부분(122)을 입력으로서 수신하고, 출력으로서 TI 평가 벡터(224)를 생성하도록 구성된 다국어 TI-SV 모델(222)을 실행할 수 있다. 일부 구현들에서, 다국어 TI-SV 모델(222)은 오디오 데이터(120)의 제1 부분(121) 및 오디오 데이터(120)의 제2 부분(122) 모두를 수신하고, 제1 부분(121) 및 제2 부분(122) 모두를 처리하여 TI 평가 벡터(224)를 생성한다. 일부 추가 구현들에서, TI-SV 모델(222)은 발화(119)의 쿼리 부분에 이어지는 추가적인 오디오 데이터를 처리할 수 있다. 예를 들어, 발화(119)는 "엄마에게 다음 메시지를 보내줘"라는 쿼리를 포함할 수 있고, 또한 "저녁 먹으러 집에 갈게"라는 메시지의 추가적인 오디오 대응 콘텐츠를 포함할 수 있다. 다국어 TI-SV 모델(222)은 TI 평가 벡터(224)를 출력하기 위해 기계 또는 인간의 감독 하에 훈련된 신경망 모델(예를 들어, 제2 신경망(340))일 수 있다.
TI 평가 벡터(224)가 다국어 TI-SV 모델(222)로부터 출력되면, TI 검증기(220)는 TI 평가 벡터(224)가 사용자 디바이스(102)의 상이한 등록된 사용자들(10, 10a-n)에 대해 사용자 디바이스(102)에(예컨대, 메모리 하드웨어(107)에) 저장된 TI 기준 벡터들(254) 중 임의의 것과 매칭되는지를 결정한다. 전술한 바와 같이, 다국어 TI-SV 모델(222)은 음성 등록 프로세스 동안 등록된 사용자들(10)에 대한 TI 기준 벡터들(254)을 생성할 수 있다. 각각의 TI 기준 벡터(254)는 각각의 등록된 사용자(10)의 음성의 특성들을 나타내는 성문 또는 고유 식별자에 대응하는 기준 벡터로서 사용될 수 있다.
일부 구현들에서, TI 검증기(220)는 TI 평가 벡터(224)를 사용자 디바이스(102)의 각각의 등록된 사용자(10a-n)와 연관된 각각의 TI 기준 벡터(254)와 비교하는 채점기(226)를 사용한다. 여기서, 채점기(226)는 발화(119)가 각각의 등록된 사용자(10)의 아이덴티티에 대응할 가능성을 나타내는 각각의 비교에 대한 점수를 생성할 수 있다. 구체적으로, 채점기(226)는 사용자 디바이스(102)의 각각의 등록된 사용자(10)에 대한 텍스트 독립형(TI) 신뢰도 점수(225)를 생성한다. 일부 구현들에서, 채점기(226)는 TI 평가 벡터(224)와 각각의 TI 기준 벡터(254) 사이의 각각의 코사인 거리를 계산하여, 각각의 등록된 사용자(10)에 대한 TI 신뢰도 점수(225)를 생성한다. 또한, 채점기(226)는 각각의 등록된 사용자(10)에 대해 생성된 TD 및 TI 신뢰도 점수들(215, 225)의 쌍들을 조합하여, 발화(119)를 말한 화자의 아이덴티티가 각각의 등록된 사용자(10)를 포함하는지를 나타내는 조합된 신뢰도 점수를 결정한다. 도 1과 관련하여 위에서 논의된 바와 같이, 조합된 신뢰도 점수를 획득하기 위해 사용되는 TD 신뢰도 점수(215) 및 TI 신뢰도 점수(225)의 가중치들은 상이할 수 있고/있거나 시간이 지남에 따라 동적으로 변할 수 있다.
TI 검증기(220)는 발화(119)를 말한 사용자(10)를 가장 높은 조합된 신뢰도 점수와 연관된 각각의 등록된 사용자로서 식별할 수 있다. 이러한 구현들에서, TI 검증기(220)는 발화(119)의 화자를 가장 높은 조합된 점수와 연관된 각각의 등록된 사용자(10)로서 식별하는 SV 확인(208)을 ASR 시스템(108)에 제공한다. 일부 예들에서, TI 검증기(220)는 가장 높은 조합된 신뢰도 점수가 임계값을 충족시키는지를 결정하고, 조합된 신뢰도 점수가 임계값을 충족시킬 때만 화자를 식별한다. 그렇지 않으면, TI 검증기(220)는 사용자에게 추가적인 검증 발화를 말하고/하거나 인증 질문에 답하도록 프롬프트하기 위해 사용자 디바이스에 명령할 수 있다.
도 3은 다국어 화자 검증 시스템(200)을 훈련시키기 위한 예시적인 다국어 화자 검증 훈련 프로세스(300)를 나타낸다. 훈련 프로세스(300)는 도 1의 원격 시스템(111)에서 실행될 수 있다. 훈련 프로세스(300)는 데이터 저장소(301)에 저장된 복수의 훈련 데이터 세트(310, 310A-N)을 획득하고, 훈련 데이터 세트들(310)에 대해 TD-SV 모델(212) 및 TI-SV 모델(222) 각각을 훈련시킨다. 데이터 저장소(301)는 원격 시스템(111)의 메모리 하드웨어(113) 상에 상주할 수 있다. 각각의 훈련 데이터 세트(310)는 상이한 각각의 언어 또는 방언과 연관되고, 상이한 화자들에 의해 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들(320, 320Aa-Nn)을 포함한다. 예를 들어, 제1 훈련 데이터 세트(310A)는 미국 영어와 연관될 수 있고, 미국 출신의 화자들에 의해 영어로 말해진 대응하는 훈련 발화들(320Aa-An)을 포함할 수 있다. 즉, 제1 훈련 데이터 세트(310A) 내의 훈련 발화들(320Aa-An)은 모두 미국 억양으로 영어로 말해진다. 반면에, 영국 영어와 연관된 제2 훈련 데이터 세트(310B)는 영어로 또한 수행되지만 영국 출신의 화자들에 의해 말해진 대응하는 훈련 발화들(320Ba-Bn)을 포함한다. 따라서, 제2 훈련 데이터 세트(310B) 내의 훈련 발화들(320Ba-Bn)은 영국 억양으로 영어로 말해지며, 따라서 미국 억양 방언과 연관된 훈련 발화들(320Aa-An)과 상이한 방언(즉, 영국 억양)과 연관된다. 특히, 영국 억양을 가진 영어 화자는 미국 억양을 가진 다른 영어 화자와 상이하게 일부 워드들을 발음할 수 있다. 도 3은 또한 한국어 화자들에 의해 말해진 대응하는 훈련 발화들(320Na-Nn)을 포함하는 한국어와 연관된 또 다른 훈련 데이터 세트(310N)를 도시한다.
일부 구현들에서, 훈련 프로세스(300)는 상이한 각각의 언어와 각각 연관된 적어도 12개의 훈련 데이터 세트에 대해 다국어 화자 검증 시스템(200)을 훈련시킨다. 추가적인 구현들에서, 훈련 프로세스(300)는 46개의 상이한 언어 및 63개의 방언을 커버하는 훈련 발화들(320)에 대해 다국어 화자 검증 시스템(200)을 훈련시킨다.
각각의 대응하는 훈련 발화(320)는 텍스트 의존형 부분(321) 및 텍스트 독립형 부분(322)을 포함한다. 텍스트 의존형 부분(321)은 훈련 발화(320)에서 말해진 미리 결정된 핫워드(예를 들어, "헤이 구글") 또는 미리 결정된 핫워드의 변형(예를 들어, "오케이 구글")을 특성화하는 오디오 세그먼트를 포함한다. 텍스트 의존형 부분(321)과 연관된 오디오 세그먼트는 오디오 특징들(예를 들어, 40 차원 로그 멜 필터 뱅크 에너지 특징들 또는 멜-주파수 켑스트럼 계수들)을 포함하는 고정 길이 프레임들의 시퀀스에 의해 표현되는 고정 길이 오디오 세그먼트(예를 들어, 1,175 밀리초의 오디오)를 포함할 수 있다. 여기서, 미리 결정된 핫워드 및 그 변형은 스트리밍 오디오(118)에서 말해질 때 핫워드 검출기(110)에 의해 각각 검출 가능하여, 사용자 디바이스가 깨어나서 미리 결정된 핫워드 또는 그 변형에 이어지는 하나 이상의 용어에 대한 스피치 인식을 개시하도록 트리거할 수 있다. 일부 예들에서, 미리 결정된 핫워드(또는 그 변형)를 특성화하는 대응하는 훈련 발화(320)의 텍스트 의존형 부분(321)과 연관된 고정 길이 오디오 세그먼트는 핫워드 검출기(110)에 의해 추출된다.
동일한 미리 결정된 핫워드가 다수의 상이한 언어에 걸쳐 사용될 수 있지만, 언어들 및 방언들에 걸친 억양들과 같은 상이한 언어적 특성들로 인해, 동일한 미리 결정된 핫워드 또는 그 변형의 발음은 언어들 및 방언들에 걸쳐 다양하다. 특히, 일부 지리적 영역들에 배치된 핫워드 검출기(110)는 스트리밍 오디오에서 상이한 미리 결정된 핫워드를 검출하도록 훈련될 수 있고, 따라서 이러한 지리적 영역들과 연관된 언어들 또는 방언들로 말해진 대응하는 훈련 발화들(320)의 텍스트 의존형 부분(321)은 대신에 상이한 미리 결정된 핫워드를 특성화할 수 있다. 명백해지는 바와 같이, 훈련된 다국어 TD-SV 모델(212)은 미리 결정된 핫워드, 미리 결정된 핫워드의 변형들에 기초하여 또는 특정 언어들 또는 지리적 영역들에 고유한 상이한 핫워드들에 기초하여 상이한 언어들 또는 방언들의 화자들을 구별할 수 있다. 추가적인 구현들에서, 일부 훈련 발화들(320) 내의 텍스트 의존형 부분(321)은 미리 결정된 핫워드 또는 미리 결정된 핫워드의 변형, 예컨대 맞춤형 핫워드들 또는 일반적으로 사용되는 음성 커맨드들(예를 들어, 재생, 일시정지, 볼륨 업/다운, 통화, 메시지, 네비게이션/방향 등)에 더하여 또는 그 대신에 다른 용어들/문구들을 특성화하는 오디오 세그먼트들을 포함한다.
각각의 훈련 발화(320) 내의 텍스트 독립형 부분(322)은 텍스트 의존형 부분(321)에 의해 특성화되는 미리 결정된 핫워드에 이어서 훈련 발화(320)에서 말해진 쿼리 문장을 특성화하는 오디오 세그먼트를 포함한다. 예를 들어, 대응하는 훈련 발화(320)는 "오케이 구글, 바깥 날씨 어때?"를 포함할 수 있으며, 이에 의해 텍스트 의존형 부분(321)은 핫워드 "오케이 구글"을 특성화하고, 텍스트 독립형 부분(322)은 쿼리 문장 "바깥 날씨 어때"를 특성화한다. 각각의 훈련 발화(320) 내의 텍스트 의존형 부분(321)은 동일한 미리 결정된 핫워드 또는 그의 변형에 의해 음성적으로 제한되는 반면, 각각의 텍스트 독립형 부분(322)에 의해 특성화되는 쿼리 문장의 어휘는 각각의 쿼리 문장과 연관된 지속기간 및 음소들이 가변적이도록 제한되지 않는다. 특히, 텍스트 의존형 부분(321)에 의해 특성화되는 말해진 쿼리 문장의 언어는 훈련 데이터 세트(310)와 연관된 각각의 언어를 포함한다. 예를 들어, 영어로 말해진 "바깥 날씨 어때"라는 쿼리 문장은 스페인어로 말해질 때 "Cual es el clima afuera"로 번역된다. 일부 예들에서, 각각의 훈련 발화(320)의 쿼리 문장을 특성화하는 오디오 세그먼트는 0.24초 내지 1.60초 범위의 가변 지속기간을 포함한다.
도 3을 계속 참조하면, 훈련 프로세스(300)는 각각의 훈련 데이터 세트(310, 310A-N)와 연관된 각각의 언어 또는 방언으로 말해진 훈련 발화들(320, 320Aa-Nn)의 텍스트 의존형 부분들(321)에 대해 제1 신경망(330)을 훈련시킨다. 훈련 동안, 텍스트 의존형 부분들(321)에 대한 추가 정보가 제1 신경망(330)에 입력으로서 제공될 수 있다. 예를 들어, 예측 방법을 학습하도록 TD-SV 모델(212)을 훈련시키기 위한 지상 실측 정보 출력 라벨들에 대응하는 TD 타겟 벡터들과 같은 텍스트 의존형(TD) 타겟들(323)이 TD 부분들(321)을 이용하는 훈련 동안에 제1 신경망(330)에 입력으로서 제공될 수 있다. 따라서, 각각의 특정 화자로부터의 미리 결정된 핫워드의 하나 이상의 발화는 특정 TD 타겟 벡터(323)와 페어링될 수 있다.
제1 신경망(330)은 각각의 LSTM(long short-term memory) 계층 뒤에 프로젝션 계층이 있는 다수의 LSTM 계층으로 형성된 심층 신경망을 포함할 수 있다. 일부 예들에서, 제1 신경망은 128개의 메모리 셀을 사용하고, 프로젝션 크기는 64와 동일하다. 다국어 TD-SV 모델(212)은 제1 신경망(330)의 훈련된 버전을 포함한다. TD-SV 모델(212)에 의해 생성된 TD 평가 및 기준 벡터들(214, 252)은 마지막 프로젝션 계층의 프로젝션 크기와 동일한 임베딩 크기를 갖는 d-벡터들을 포함할 수 있다. 훈련 프로세스는 제1 신경망(330)을 훈련시키기 위해 일반화된 종단간 대비 손실을 사용할 수 있다.
훈련 후, 제1 신경망(330)은 다국어 TD-SV 모델(212)을 생성한다. 훈련된 다국어 TD-SV 모델(212)은 다수의 지리적 영역에 걸쳐 분산되고 상이한 언어들, 방언들 또는 둘 다를 말하는 사용자들과 연관된 복수의 사용자 디바이스(102)에 푸시될 수 있다. 사용자 디바이스들(102)은 스트리밍 오디오(118)에서 핫워드 검출기(110)에 의해 검출된 미리 결정된 핫워드를 특성화하는 오디오 세그먼트들에 대해 텍스트 의존형 화자 검증을 수행하기 위해 다국어 TD-SV 모델(212)을 저장 및 실행할 수 있다. 앞서 설명한 바와 같이, 동일한 핫워드가 상이한 언어들 또는 위치들에서 말해질 때에도, 상이한 언어들, 방언들, 억양들, 또는 위치들을 갖는 사용자들은 핫워드를 상이하게 발음할 수 있다. 이전의 화자 검증 모델들의 발음의 이러한 변화들은 하나의 언어에 대해서만 훈련되었으며, 종종 부적절하게, 언어 또는 억양으로 인한 이러한 발음 가변성을 화자 특유의 특성으로 보았다. 예를 들어, 실제로 특징들이 동일하거나 유사한 억양으로 말하는 모든 사용자들에게 사실상 공통적일 때, 이러한 이전 모델들이 지역 억양의 일반적인 특징들을 특정 화자의 음성의 주요 특유 요소들로 해석할 때, 검증에서 거짓 양성들의 레이트가 증가했다. 본 개시의 훈련된 다국어 TD-SV 모델(212)은 동일한 언어, 방언, 억양 또는 위치를 갖는 다른 사용자들로부터 하나의 사용자를 구별할 수 있다.
훈련 프로세스(300)는 또한 각각의 훈련 데이터 세트(310, 310A-N)와 연관된 각각의 언어 또는 방언으로 말해진 훈련 발화들(320, 320Aa-Nn)의 텍스트 독립형(TI) 부분들(322)에 대해 제2 신경망(340)을 훈련시킨다. 여기서, 훈련 발화(320Aa)에 대해, 훈련 프로세스(300)는 미국 영어로 말해진 쿼리 문장 "바깥 날씨 어때"를 특성화하는 TI 부분(322)에 대해 제2 신경망을 훈련시킨다. 선택적으로, 훈련 프로세스는 또한 대응하는 훈련 발화(320)의 TI 부분(322)에 더하여, 훈련 데이터 세트들(310) 중 하나 이상의 내의 적어도 하나의 대응하는 훈련 발화(320)의 TD 부분(321)에 대해 제2 신경망(340)을 훈련시킬 수 있다. 예를 들어, 위의 훈련 발화(320Aa)를 사용하여, 훈련 프로세스(300)는 전체 발화 "오케이 구글, 바깥 날씨 어때?"에 대해 제2 신경망(340)을 훈련시킬 수 있다. 훈련 동안, TI 부분들(322)에 대한 추가적인 정보가 제2 신경망(340)에 입력으로 제공될 수 있다. 예를 들어, 예측 방법을 학습하도록 TI-SV 모델(222)을 훈련시키기 위한 지상 실측 정보 출력 라벨들에 대응하는 TI 타겟 벡터들과 같은 TI 타겟들(324)이 TI 부분들(322)을 이용하는 훈련 동안 제2 신경망(340)에 입력으로 제공될 수 있다. 따라서, 각각의 특정 화자로부터의 하나 이상의 쿼리 문장 발화는 특정 TI 타겟 벡터(324)와 페어링될 수 있다.
제2 신경망(340)은 각각의 LSTM 계층 뒤에 프로젝션 계층이 있는 다수의 LSTM 계층으로 형성된 심층 신경망을 포함할 수 있다. 일부 예들에서, 제2 신경망은 384개의 메모리 셀을 사용하고, 프로젝션 크기는 128과 동일하다. 다국어 TI-SV 모델(222)은 제2 신경망(340)의 훈련된 버전을 포함한다. TI-SV 모델(222)에 의해 생성된 TI 평가 및 기준 벡터들(224, 254)은 마지막 프로젝션 계층의 프로젝션 크기와 동일한 임베딩 크기를 갖는 d-벡터들을 포함할 수 있다. 훈련 프로세스(300)는 제1 신경망(330)을 훈련시키기 위해 일반화된 종단간 대비 손실을 사용할 수 있다. 일부 예들에서, 훈련된 다국어 TD-SV 모델(212)은 사용자 디바이스들(102) 상에서 실행하기에 적합한 작은 메모리 풋프린트(예를 들어, 235k개의 파라미터)와 연관되는 반면, 훈련된 다국어 TI-SV 모델(222)은 더 계산 집약적이고, 원격 시스템 상에서 실행하기에 적합한 훨씬 더 큰 용량(예를 들어, 1,300만 개의 파라미터)을 갖는다.
도 4는 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증의 방법(400)을 위한 동작들의 예시적인 배열의 흐름도를 포함한다. 동작 402에서, 방법(400)은 사용자 디바이스(102)에 의해 캡처된 발화(119)에 대응하는 오디오 데이터(120)를 수신하는 단계를 포함하고, 발화(119)는 미리 결정된 핫워드에 이어서 수행할 액션을 지정하는 쿼리를 포함한다. 방법(400)은 동작 404에서, 텍스트 의존형 화자 검증(TD-SV) 모델(212)을 사용하여, 미리 결정된 핫워드를 특성화하는 오디오 데이터(120)의 제1 부분(121)을 처리하여, 핫워드의 발화(119)의 음성 특성들을 나타내는 텍스트 의존형(TD) 평가 벡터(214)를 생성하는 단계를 더 포함한다.
동작 406에서, 방법(400)은 TD 평가 벡터(214)가 하나 이상의 텍스트 의존형(TD) 기준 벡터(252) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 의존형(TD) 신뢰도 점수(215)를 생성하는 단계를 포함한다. 각각의 TD 기준 벡터(252)는 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관된다. 방법(400)은 동작 406에서, 하나 이상의 TD 신뢰도 점수(215) 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정하는 단계를 더 포함한다.
TD 신뢰도 점수들(215) 중 하나가 신뢰도 임계값을 충족시키는 경우, 방법(400)은 동작 408에서, 발화(119)의 화자를 신뢰도 임계값을 충족시키는 TD 신뢰도 점수(215)에 대응하는 TD 기준 벡터(252)와 연관된 각각의 등록된 사용자(10)로서 식별하는 단계를 포함한다. 방법(400)은, 또한, 동작 410에서, 핫워드에 이어지는 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)에 대해 화자 검증을 수행하지 않고 쿼리에 의해 지정된 액션의 수행을 개시하는 단계를 포함한다. 하나 이상의 TD 신뢰도 점수(215) 중 어느 것도 신뢰도 임계값을 충족시키지 못하는 경우, 방법(400)은 동작 412에서, 텍스트 독립형 화자 검증기(220)에 명령어를 제공하여, 텍스트 독립형 화자 검증(TI-SV) 모델(222)을 사용하여, 쿼리를 특성화하는 오디오 데이터(120)의 제2 부분(122)을 처리하여, 텍스트 독립형(TI) 평가 벡터(224)를 생성하는 단계를 포함한다. 동작 414에서, 방법(400)은 또한 TI 평가 벡터(224)가 하나 이상의 텍스트 독립형(TI) 기준 벡터(254) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 독립형(TI) 신뢰도 점수(225)를 생성하는 단계를 포함한다. 각각의 TI 기준 벡터(254)는 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관된다. 동작 416에서, 방법(400)은 하나 이상의 TD 신뢰도 점수(215) 및 하나 이상의 TI 신뢰도 점수(225)에 기초하여, 발화(119)를 말한 화자의 아이덴티티가 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 중 임의의 것을 포함하는지를 결정하는 단계를 더 포함한다.
도 5는 본 명세서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스(500)의 개략도이다. 컴퓨팅 디바이스(500)는 랩탑, 데스크탑, 워크스테이션, 개인 디지털 어시스턴트, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터들을 나타내기 위한 것이다. 여기에 도시된 컴포넌트들, 이들의 접속들 및 관계들, 및 이들의 기능들은 예시적인 것일 뿐이며 본 명세서에 설명 및/또는 청구된 발명들의 구현들을 제한하기 위한 것이 아니다.
컴퓨팅 디바이스(500)는 프로세서(510), 메모리(520), 저장 디바이스(530), 메모리(520) 및 고속 확장 포트들(550)에 접속되는 고속 인터페이스/컨트롤러(540), 및 저속 버스(570) 및 저장 디바이스(530)에 접속되는 저속 인터페이스/컨트롤러(560)를 포함한다. 컴포넌트들(510, 520, 530, 540, 550, 560) 각각은 다양한 버스들을 사용하여 상호 접속되며, 공통 마더보드 상에 장착되거나 다른 방식으로 적절하게 장착될 수 있다. 프로세서(510)는 고속 인터페이스(540)에 결합된 디스플레이(580)와 같은 외부 입력/출력 디바이스 상에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 디스플레이하기 위해 메모리(520) 또는 저장 디바이스(530)에 저장된 명령어들을 포함하여 컴퓨팅 디바이스(500) 내에서 실행하기 위한 명령어들을 처리할 수 있다. 다른 구현들에서, 다수의 프로세서 및/또는 다수의 버스가 적절한 경우에 다수의 메모리 및 메모리 유형과 함께 사용될 수 있다. 또한, 다수의 컴퓨팅 디바이스(500)가 접속될 수 있으며, 각각의 디바이스는 필요한 동작들의 부분들을 (예를 들어, 서버 뱅크, 블레이드 서버 그룹, 또는 멀티-프로세서 시스템으로서) 제공한다. 프로세서(510)는 사용자 디바이스(102)의 데이터 처리 하드웨어(103) 또는 원격 시스템(111)의 데이터 처리 하드웨어(113)를 포함하는 데이터 처리 하드웨어(510)로 지칭될 수 있다. 메모리(720)는 사용자 디바이스(102)의 메모리 하드웨어(107) 또는 원격 시스템(111)의 메모리 하드웨어(115)를 포함하는 메모리 하드웨어(720)로 지칭될 수 있다.
메모리(520)는 컴퓨팅 디바이스(500) 내에 비일시적으로 정보를 저장한다. 메모리(520)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛(들), 또는 비휘발성 메모리 유닛(들)일 수 있다. 비일시적 메모리(520)는 컴퓨팅 디바이스(500)에 의해 사용하기 위해 일시적으로 또는 영구적으로 프로그램들(예를 들어, 명령어들의 시퀀스들) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 디바이스들일 수 있다. 비휘발성 메모리의 예들은 플래시 메모리 및 판독 전용 메모리(ROM)/프로그래밍 가능 판독 전용 메모리(PROM)/소거 및 프로그래밍 가능 판독 전용 메모리(EPROM)/전자적 소거 및 프로그래밍 가능 판독 전용 메모리(EEPROM)(예를 들어, 부팅 프로그램과 같은 펌웨어에 통상적으로 사용됨)를 포함하지만 이에 한정되지 않는다. 휘발성 메모리의 예들은 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM), 상변화 메모리(PCM)는 물론, 디스크 또는 테이프를 포함하지만 이에 한정되지 않는다.
저장 디바이스(530)는 컴퓨팅 디바이스(500)를 위한 대용량 저장소를 제공할 수 있다. 일부 구현들에서, 저장 디바이스(530)는 컴퓨터 판독 가능 매체이다. 다양한 상이한 구현들에서, 저장 디바이스(530)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 내의 디바이스들을 포함하는 디바이스들의 어레이 또는 다른 구성들일 수 있다. 추가의 구현들에서, 컴퓨터 프로그램 제품은 정보 캐리어에 유형적으로 구현된다. 컴퓨터 프로그램 제품은, 실행될 때, 전술한 것들과 같은 하나 이상의 방법을 수행하는 명령어들을 포함한다. 정보 캐리어는 메모리(520), 저장 디바이스(530), 또는 프로세서(510) 상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 컨트롤러(540)는 컴퓨팅 디바이스(500)에 대한 대역폭 집약적인 동작들을 관리하는 반면, 저속 컨트롤러(560)는 더 낮은 대역폭 집약적인 동작들을 관리한다. 이러한 의무 할당은 예시적일 뿐이다. 일부 구현들에서, 고속 컨트롤러(540)는 (예를 들어, 그래픽 프로세서 또는 가속기를 통해) 메모리(520), 디스플레이(580)에 그리고 다양한 확장 카드들(도시되지 않음)을 수용할 수 있는 고속 확장 포트들(550)에 결합된다. 일부 구현들에서, 저속 컨트롤러(560)는 저장 디바이스(530) 및 저속 확장 포트(590)에 결합된다. 다양한 통신 포트들(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트(590)는 키보드, 포인팅 디바이스, 스캐너 또는 스위치 또는 라우터와 같은 네트워킹 디바이스와 같은 하나 이상의 입력/출력 디바이스에 예를 들어 네트워크 어댑터를 통해 결합될 수 있다.
컴퓨팅 디바이스(500)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 그것은 표준 서버(500a)로서 또는 이러한 서버들(500a)의 그룹에서 여러 번, 랩탑 컴퓨터(500b)로서, 또는 랙 서버 시스템(500c)의 일부로서 구현될 수 있다.
본 명세서에 설명된 시스템들 및 기술들의 다양한 구현들은 디지털 전자 및/또는 광학 회로, 집적 회로, 특별히 설계된 ASIC(주문형 집적회로)들, 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현들은 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령어들을 수신하고, 그들에 데이터 및 명령어들을 송신하도록 결합되는, 특수 목적 또는 범용일 수 있는 적어도 하나의 프로그래밍 가능 프로세서를 포함하는 프로그래밍 가능 시스템에서 실행 및/또는 해석 가능한 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있다.
소프트웨어 애플리케이션(즉, 소프트웨어 자원)은 컴퓨팅 디바이스로 하여금 작업을 수행하게 하는 컴퓨터 소프트웨어를 지칭할 수 있다. 일부 예들에서, 소프트웨어 애플리케이션은 "애플리케이션", "앱", 또는 "프로그램"으로 지칭될 수 있다. 예시적인 애플리케이션들은 시스템 진단 애플리케이션들, 시스템 관리 애플리케이션들, 시스템 유지보수 애플리케이션들, 단어 처리 애플리케이션들, 스프레드시트 애플리케이션들, 메시징 애플리케이션들, 미디어 스트리밍 애플리케이션들, 소셜 네트워킹 애플리케이션들, 및 게이밍 애플리케이션들을 포함하지만, 이에 한정되지 않는다.
비일시적 메모리는 컴퓨팅 디바이스에 의한 사용을 위해 일시적으로 또는 영구적으로 프로그램들(예를 들어, 명령어들의 시퀀스들) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 디바이스들일 수 있다. 비일시적 메모리는 휘발성 및/또는 비휘발성 어드레싱 가능 반도체 메모리일 수 있다. 비휘발성 메모리의 예들은 플래시 메모리 및 판독 전용 메모리(ROM)/프로그래밍 가능 판독 전용 메모리(PROM)/소거 및 프로그래밍 가능 판독 전용 메모리(EPROM)/전자적 소거 및 프로그래밍 가능 판독 전용 메모리(EEPROM)(예를 들어, 부팅 프로그램과 같은 펌웨어에 통상적으로 사용됨)를 포함하지만 이에 한정되지 않는다. 휘발성 메모리의 예들은 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM), 상변화 메모리(PCM)는 물론, 디스크 또는 테이프를 포함하지만 이에 한정되지 않는다.
이러한 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 또는 코드로도 알려짐)은 프로그래밍 가능 프로세서를 위한 기계 명령어들을 포함하고, 고레벨 절차 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계어로 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 용어 "기계-판독가능 매체" 및 "컴퓨터-판독가능 매체"는 기계 명령어들을 기계-판독가능 신호로서 수신하는 기계-판독가능 매체를 포함하여, 기계 명령어들 및/또는 데이터를 프로그래밍 가능 프로세서에 제공하는 데 사용되는 임의의 컴퓨터 프로그램 제품, 비일시적 컴퓨터 판독가능 매체, 장치 및/또는 디바이스(예를 들면, 자기 디스크들, 광 디스크들, 메모리, 프로그래밍 가능 논리 디바이스(PLD)들)를 지칭한다. 용어 "기계-판독가능 신호"는 기계 명령어들 및/또는 데이터를 프로그래밍 가능 프로세서에 제공하기 위해 사용되는 임의의 신호를 지칭한다.
본 명세서에 설명된 프로세스들 및 논리 흐름들은 하나 이상의 컴퓨터 프로그램을 실행하여 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능들을 수행하는 데이터 처리 하드웨어로도 지칭되는 하나 이상의 프로그래밍 가능 프로세서들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름들은 또한 특수 목적 논리 회로, 예를 들어, 필드 프로그래머블 게이트 어레이(FPGA) 또는 주문형 집적 회로(ASIC)에 의해 수행될 수 있다. 컴퓨터 프로그램의 실행에 적합한 프로세서들은 예로서 범용 및 특수 목적 마이크로프로세서들 모두 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들을 수행하기 위한 프로세서와 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한, 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예를 들어 자기, 광자기 디스크들 또는 광 디스크들을 포함하거나, 이들로부터 데이터를 수신하거나 이들에 데이터를 송신하거나 둘 다를 위해 동작 가능하게 결합될 것이다. 그러나 컴퓨터에 이러한 디바이스들을 가질 필요는 없다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하는 데 적합한 컴퓨터 판독 가능 매체들은 예를 들어 반도체 메모리 디바이스들, 예를 들어 EPROM, EEPROM 및 플래시 메모리 디바이스들, 자기 디스크들, 예를 들어 내부 하드 디스크들 또는 이동식 디스크들, 광자기 디스크들, 및 CD ROM 및 DVD-ROM 디스크들을 포함하여, 모든 형태의 비휘발성 메모리, 매체들 및 메모리 디바이스들을 포함한다. 프로세서와 메모리는 특수 목적 논리 회로에 의해 보완되거나 그에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 개시의 하나 이상의 양태는 디스플레이 디바이스, 예를 들어 음극선관(CRT), 액정 디스플레이(LCD) 모니터, 또는 사용자에게 정보를 디스플레이하기 위한 터치 스크린, 및 선택적으로, 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스, 예를 들어 마우스 또는 트랙볼을 갖는 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 상호 작용을 제공하는 데 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백, 예를 들어 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백일 수 있고; 사용자로부터의 입력은 음향, 스피치 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 또한, 컴퓨터는 사용자에 의해 사용되는 디바이스와 문서들을 주고 받음으로써, 예를 들어 웹 브라우저로부터 수신된 요청들에 응답하여 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지들을 송신함으로써 사용자와 상호작용할 수 있다.
다수의 구현이 설명되었다. 그럼에도 불구하고, 본 개시의 사상 및 범위를 벗어나지 않고서 다양한 수정들이 이루어질 수 있음을 이해할 것이다. 따라서, 다른 구현들은 이하의 청구항들의 범위 내에 있다.
Claims (28)
- 데이터 처리 하드웨어(510) 상에서 실행될 때 상기 데이터 처리 하드웨어(510)로 하여금 동작들을 수행하게 하는 화자 검증을 위한 컴퓨터 구현 방법(400)으로서, 상기 동작들은:
사용자 디바이스(102)에 의해 캡처된 발화(119)에 대응하는 오디오 데이터(120)를 수신하는 동작 - 상기 발화(119)는 미리 결정된 핫워드에 이어서, 수행할 액션을 지정하는 쿼리를 포함함 -;
텍스트 의존형 화자 검증(TD-SV) 모델(212)을 사용하여, 상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121)을 처리하여, 상기 핫워드의 발화(119)의 음성 특성들을 나타내는 텍스트 의존형 평가 벡터(214)를 생성하는 동작;
상기 텍스트 의존형 평가 벡터(214)가 하나 이상의 텍스트 의존형 기준 벡터(252) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 의존형 신뢰도 점수(215)를 생성하는 동작 - 각각의 텍스트 의존형 기준 벡터(252)는 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관됨 -;
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정하는 동작; 및
상기 텍스트 의존형 신뢰도 점수(215) 중 하나가 상기 신뢰도 임계값을 충족시킬 때:
상기 발화(119)의 화자를, 상기 신뢰도 임계값을 충족시키는 상기 텍스트 의존형 신뢰도 점수(212)에 대응하는 상기 텍스트 의존형 기준 벡터(252)와 연관되는 상기 각각의 등록된 사용자(10)로서 식별하는 동작; 및
상기 미리 결정된 핫워드에 이어지는 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122)에 대해 화자 검증을 수행하지 않고 상기 쿼리에 의해 지정된 상기 액션의 수행을 개시하는 동작; 또는
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 어느 것도 상기 신뢰도 임계값을 충족시키지 못할 때, 텍스트 독립형 화자 검증기(220)에 명령어를 제공하는 동작
중 하나의 동작
을 포함하며, 상기 명령어는 상기 텍스트 독립형 화자 검증기(220)에 의해 수신될 때 상기 텍스트 독립형 화자 검증기(220)로 하여금:
텍스트 독립형 화자 검증(TI-SV) 모델(222)을 사용하여, 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122)을 처리하여 텍스트 독립형 평가 벡터(224)를 생성하게 하고;
상기 텍스트 독립형 평가 벡터(224)가 하나 이상의 텍스트 독립형 기준 벡터(254) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 독립형 신뢰도 점수(225)를 생성하게 하고 - 각각의 텍스트 독립형 기준 벡터(254)는 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관됨 -;
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 및 상기 하나 이상의 텍스트 독립형 신뢰도 점수(225)에 기초하여, 상기 발화(119)를 말한 상기 화자의 아이덴티티가 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 중 임의의 것을 포함하는지를 결정하게 하는, 컴퓨터 구현 방법(400). - 제1항에 있어서,
상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각은 개인 자원들의 각각의 상이한 세트에 액세스하기 위한 허가들을 가지며;
상기 쿼리에 의해 지정된 상기 액션의 수행은 상기 발화(119)의 화자로서 식별된 상기 각각의 등록된 사용자(10)와 연관된 상기 개인 자원들의 각각의 세트에 대한 액세스를 요구하는, 컴퓨터 구현 방법(400). - 제1항 또는 제2항에 있어서,
상기 데이터 처리 하드웨어(510)는 상기 TD-SV 모델(212)을 실행하고, 상기 사용자 디바이스(102) 상에 상주하며;
상기 텍스트 독립형 화자 검증기(220)는 상기 TI-SI 모델을 실행하고, 네트워크를 통해 상기 사용자 디바이스(102)와 통신하는 분산 컴퓨팅 시스템(111) 상에 상주하는, 컴퓨터 구현 방법(400). - 제3항에 있어서, 상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 어느 것도 상기 신뢰도 임계값을 충족시키지 못할 때, 상기 텍스트 독립형 화자 검증기(220)에 상기 명령어를 제공하는 동작은 상기 사용자 디바이스(102)로부터 상기 분산 컴퓨팅 시스템(111)으로 상기 명령어 및 상기 하나 이상의 텍스트 의존형 신뢰도 점수(215)를 송신하는 동작을 포함하는, 컴퓨터 구현 방법(400).
- 제1항 또는 제2항에 있어서, 상기 데이터 처리 하드웨어(510)는 상기 사용자 디바이스(102) 또는 네트워크를 통해 상기 사용자 디바이스(102)와 통신하는 분산 컴퓨팅 시스템(111) 중 하나 상에 상주하며, 상기 데이터 처리 하드웨어(510)는 상기 TD-SV 모델(212) 및 상기 TI-SV 모델(222) 둘 다를 실행하는, 컴퓨터 구현 방법(400).
- 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 TI-SV 모델(222)은 상기 TD-SV 모델(212)보다 더 계산 집약적인, 컴퓨터 구현 방법(400).
- 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 동작들은:
핫워드 검출 모델(110)을 사용하여, 상기 쿼리에 선행하는 상기 오디오 데이터(120) 내의 상기 미리 결정된 핫워드를 검출하는 동작을 더 포함하고,
상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121)은 상기 핫워드 검출 모델(110)에 의해 추출되는, 컴퓨터 구현 방법(400). - 제1항 내지 제7항 중 어느 한 항에 있어서,
상기 TD-SV 모델(212) 및 상기 TI-SV 모델(222)은 복수의 훈련 데이터 세트(310)에 대해 훈련되고, 각각의 훈련 데이터 세트(310)는 상이한 각각의 언어 또는 방언과 연관되고, 상이한 화자들에 의해 상기 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들(320)을 포함하며, 각각의 대응하는 훈련 발화(320)는 상기 미리 결정된 핫워드를 특성화하는 텍스트 의존형 부분 및 상기 미리 결정된 핫워드에 이어지는 쿼리 문장을 특성화하는 텍스트 독립형 부분을 포함하고;
상기 TD-SV 모델(212)은 상기 복수의 훈련 데이터 세트(310) 중 각각의 훈련 데이터 세트(310) 내의 각각의 대응하는 훈련 발화(320)의 텍스트 의존형 부분에 대해 훈련되고;
상기 TI-SV 모델(222)은 상기 복수의 훈련 데이터 세트(310) 중 각각의 훈련 데이터 세트(310) 내의 각각의 대응하는 훈련 발화(320)의 텍스트 독립형 부분에 대해 훈련되는, 컴퓨터 구현 방법(400). - 제8항에 있어서, 상기 훈련 데이터 세트들(310) 중 적어도 하나와 연관된 상기 각각의 언어 또는 방언으로 말해진 상기 대응하는 훈련 발화들(320)은 다른 훈련 데이터 세트들(310)의 대응하는 훈련 발화들(320)과 상이하게 상기 미리 결정된 핫워드를 발음하는, 컴퓨터 구현 방법(400).
- 제8항 또는 제9항에 있어서, 상기 TI-SV 모델(222)은 상기 복수의 훈련 데이터 세트(310) 중 하나 이상 내의 적어도 하나의 대응하는 훈련 발화(320)의 상기 텍스트 의존형 부분에 대해 훈련되는, 컴퓨터 구현 방법(400).
- 제8항 내지 제10항 중 어느 한 항에 있어서, 상기 훈련 발화들(320)의 텍스트 독립형 부분들에 의해 특성화되는 상기 쿼리 문장들은 가변적인 언어 콘텐츠를 포함하는, 컴퓨터 구현 방법(400).
- 제1항 내지 제11항 중 어느 한 항에 있어서, 상기 텍스트 독립형 평가 벡터(224)를 생성할 때, 상기 텍스트 독립형 화자 검증기(220)는 상기 TI-SV 모델(222)을 사용하여, 상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121) 및 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122) 둘 다를 처리하는, 컴퓨터 구현 방법(400).
- 제1항 내지 제12항 중 어느 한 항에 있어서, 상기 하나 이상의 텍스트 의존형 기준 벡터(252) 각각은 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해진 상기 미리 결정된 핫워드의 하나 이상의 이전 발화(119)를 수신하는 것에 응답(160)하여 상기 TD-SV 모델(212)에 의해 생성되는, 컴퓨터 구현 방법(400).
- 제1항 내지 제13항 중 어느 한 항에 있어서, 상기 하나 이상의 텍스트 독립형 기준 벡터(254) 각각은 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해진 하나 이상의 이전 발화(119)를 수신하는 것에 응답하여 상기 TI-SV 모델(222)에 의해 생성되는, 컴퓨터 구현 방법(400).
- 시스템(100)으로서,
데이터 처리 하드웨어(510); 및
상기 데이터 처리 하드웨어(510)와 통신하는 메모리 하드웨어(720)
를 포함하고, 상기 메모리 하드웨어(720)는 상기 데이터 처리 하드웨어(510) 상에서 실행될 때 상기 데이터 처리 하드웨어(510)로 하여금 동작들을 수행하게 하는 명령어들을 저장하며, 상기 동작들은:
사용자 디바이스(102)에 의해 캡처된 발화(119)에 대응하는 오디오 데이터(120)를 수신하는 동작 - 상기 발화(119)는 미리 결정된 핫워드에 이어서, 수행할 액션을 지정하는 쿼리를 포함함 -;
텍스트 의존형 화자 검증(TD-SV) 모델을 사용하여, 상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121)을 처리하여, 상기 핫워드의 발화(119)의 음성 특성들을 나타내는 텍스트 의존형 평가 벡터(214)를 생성하는 동작;
상기 텍스트 의존형 평가 벡터(214)가 하나 이상의 텍스트 의존형 기준 벡터(252) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 의존형 신뢰도 점수(215)를 생성하는 동작 - 각각의 텍스트 의존형 기준 벡터(252)는 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관됨 -;
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 임의의 것이 신뢰도 임계값을 충족시키는지를 결정하는 동작; 및
상기 텍스트 의존형 신뢰도 점수(215) 중 하나가 상기 신뢰도 임계값을 충족시킬 때:
상기 발화(119)의 화자를, 상기 신뢰도 임계값을 충족시키는 상기 텍스트 의존형 신뢰도 점수에 대응하는 상기 텍스트 의존형 기준 벡터(252)와 연관되는 상기 각각의 등록된 사용자(10)로서 식별하는 동작; 및
상기 미리 결정된 핫워드에 이어지는 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122)에 대해 화자 검증을 수행하지 않고 상기 쿼리에 의해 지정된 상기 액션의 수행을 개시하는 동작; 또는
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 어느 것도 상기 신뢰도 임계값을 충족시키지 못할 때, 텍스트 독립형 화자 검증기(220)에 명령어를 제공하는 동작
중 하나의 동작
을 포함하며, 상기 명령어는 상기 텍스트 독립형 화자 검증기(220)에 의해 수신될 때 상기 텍스트 독립형 화자 검증기(220)로 하여금:
텍스트 독립형 화자 검증(TI-SV) 모델을 사용하여, 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122)을 처리하여 텍스트 독립형 평가 벡터(224)를 생성하게 하고;
상기 텍스트 독립형 평가 벡터(224)가 하나 이상의 텍스트 독립형 기준 벡터(254) 각각과 매칭될 가능성을 각각 나타내는 하나 이상의 텍스트 독립형 신뢰도 점수(225)를 생성하게 하고 - 각각의 텍스트 독립형 기준 벡터는 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각과 연관됨 -;
상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 및 상기 하나 이상의 텍스트 독립형 신뢰도 점수(225)에 기초하여, 상기 발화(119)를 말한 상기 화자의 아이덴티티가 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 중 임의의 것을 포함하는지를 결정하게 하는, 시스템(100). - 제15항에 있어서,
상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각은 개인 자원들의 각각의 상이한 세트에 액세스하기 위한 허가들을 가지며;
상기 쿼리에 의해 지정된 상기 액션의 수행은 상기 발화(119)의 화자로서 식별된 상기 각각의 등록된 사용자(10)와 연관된 상기 개인 자원들의 각각의 세트에 대한 액세스를 요구하는, 시스템(100). - 제15항 또는 제16항에 있어서,
상기 데이터 처리 하드웨어(510)는 상기 TD-SV 모델(212)을 실행하고, 상기 사용자 디바이스(102) 상에 상주하며;
상기 텍스트 독립형 화자 검증기(220)는 상기 TI-SI 모델을 실행하고, 네트워크를 통해 상기 사용자 디바이스(102)와 통신하는 분산 컴퓨팅 시스템(111) 상에 상주하는, 시스템(100). - 제17항에 있어서, 상기 하나 이상의 텍스트 의존형 신뢰도 점수(215) 중 어느 것도 상기 신뢰도 임계값을 충족시키지 못할 때, 상기 텍스트 독립형 화자 검증기(220)에 상기 명령어를 제공하는 동작은 상기 사용자 디바이스(102)로부터 상기 분산 컴퓨팅 시스템(111)으로 상기 명령어 및 상기 하나 이상의 텍스트 의존형 신뢰도 점수(215)를 송신하는 동작을 포함하는, 시스템(100).
- 제15항 또는 제16항에 있어서, 상기 데이터 처리 하드웨어(510)는 상기 사용자 디바이스(102) 또는 네트워크를 통해 상기 사용자 디바이스(102)와 통신하는 분산 컴퓨팅 시스템(111) 중 하나 상에 상주하며, 상기 데이터 처리 하드웨어(510)는 상기 TD-SV 모델(212) 및 상기 TI-SV 모델(222) 둘 다를 실행하는, 시스템(100).
- 제15항 내지 제19항 중 어느 한 항에 있어서, 상기 TI-SV 모델(222)은 상기 TD-SV 모델(212)보다 더 계산 집약적인, 시스템(100).
- 제15항 내지 제20항 중 어느 한 항에 있어서, 상기 동작들은:
핫워드 검출 모델(110)을 사용하여, 상기 쿼리에 선행하는 상기 오디오 데이터(120) 내의 상기 미리 결정된 핫워드를 검출하는 동작을 더 포함하고,
상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121)은 상기 핫워드 검출 모델(110)에 의해 추출되는, 시스템(100). - 제15항 내지 제21항 중 어느 한 항에 있어서,
상기 TD-SV 모델(212) 및 상기 TI-SV 모델(222)은 복수의 훈련 데이터 세트(310)에 대해 훈련되고, 각각의 훈련 데이터 세트(310)는 상이한 각각의 언어 또는 방언과 연관되고, 상이한 화자들에 의해 상기 각각의 언어 또는 방언으로 말해진 대응하는 훈련 발화들(320)을 포함하며, 각각의 대응하는 훈련 발화(320)는 상기 미리 결정된 핫워드를 특성화하는 텍스트 의존형 부분 및 상기 미리 결정된 핫워드에 이어지는 쿼리 문장을 특성화하는 텍스트 독립형 부분을 포함하고;
상기 TD-SV 모델(212)은 상기 복수의 훈련 데이터 세트(310) 중 각각의 훈련 데이터 세트(310) 내의 각각의 대응하는 훈련 발화(320)의 상기 텍스트 의존형 부분에 대해 훈련되고;
상기 TI-SV 모델(222)은 상기 복수의 훈련 데이터 세트(310) 중 각각의 훈련 데이터 세트(310) 내의 각각의 대응하는 훈련 발화(320)의 상기 텍스트 독립형 부분에 대해 훈련되는, 시스템(100). - 제22항에 있어서, 상기 훈련 데이터 세트들(310) 중 적어도 하나와 연관된 상기 각각의 언어 또는 방언으로 말해진 상기 대응하는 훈련 발화들(320)은 다른 훈련 데이터 세트들(310)의 상기 대응하는 훈련 발화들(320)과 상이하게 상기 미리 결정된 핫워드를 발음하는, 시스템(100).
- 제22항 또는 제23항에 있어서, 상기 TI-SV 모델(212)은 상기 복수의 훈련 데이터 세트(310) 중 하나 이상 내의 적어도 하나의 대응하는 훈련 발화(320)의 상기 텍스트 의존형 부분에 대해 훈련되는, 시스템(100).
- 제22항 내지 제24항 중 어느 한 항에 있어서, 상기 훈련 발화들(320)의 텍스트 독립형 부분들에 의해 특성화되는 상기 쿼리 문장들은 가변적인 언어 콘텐츠를 포함하는, 시스템(100).
- 제15항 내지 제25항 중 어느 한 항에 있어서, 상기 텍스트 독립형 평가 벡터를 생성할 때, 상기 텍스트 독립형 화자 검증기(220)는 상기 TI-SV 모델(222)을 사용하여, 상기 미리 결정된 핫워드를 특성화하는 상기 오디오 데이터(120)의 제1 부분(121) 및 상기 쿼리를 특성화하는 상기 오디오 데이터(120)의 제2 부분(122) 둘 다를 처리하는, 시스템(100).
- 제15항 내지 제26항 중 어느 한 항에 있어서, 상기 하나 이상의 텍스트 의존형 기준 벡터 각각은 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해진 상기 미리 결정된 핫워드의 하나 이상의 이전 발화(119)를 수신하는 것에 응답(160)하여 상기 TD-SV 모델(212)에 의해 생성되는, 시스템(100).
- 제15항 내지 제27항 중 어느 한 항에 있어서, 상기 하나 이상의 텍스트 독립형 기준 벡터 각각은 상기 사용자 디바이스(102)의 하나 이상의 상이한 등록된 사용자(10) 각각에 의해 말해진 하나 이상의 이전 발화(119)를 수신하는 것에 응답(160)하여 상기 TI-SV 모델(222)에 의해 생성되는, 시스템(100).
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/211,791 US11942094B2 (en) | 2021-03-24 | 2021-03-24 | Hybrid multilingual text-dependent and text-independent speaker verification |
US17/211,791 | 2021-03-24 | ||
PCT/US2022/019576 WO2023158444A2 (en) | 2021-03-24 | 2022-03-09 | Hybrid multilingual text-dependent and text-independent speaker verification |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230156145A true KR20230156145A (ko) | 2023-11-13 |
Family
ID=83363608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237035935A KR20230156145A (ko) | 2021-03-24 | 2022-03-09 | 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11942094B2 (ko) |
EP (1) | EP4295517A2 (ko) |
JP (1) | JP2024510798A (ko) |
KR (1) | KR20230156145A (ko) |
CN (1) | CN117378006A (ko) |
WO (1) | WO2023158444A2 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2024512071A (ja) * | 2021-03-26 | 2024-03-18 | グーグル エルエルシー | 自動音声認識のための多言語再スコアリングモデル |
US11567935B2 (en) * | 2021-03-30 | 2023-01-31 | Google Llc | Conditional response fulfillment cache for locally responding to automated assistant inputs |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8442824B2 (en) | 2008-11-26 | 2013-05-14 | Nuance Communications, Inc. | Device, system, and method of liveness detection utilizing voice biometrics |
DK2713367T3 (en) | 2012-09-28 | 2017-02-20 | Agnitio S L | Speech Recognition |
US9542948B2 (en) * | 2014-04-09 | 2017-01-10 | Google Inc. | Text-dependent speaker identification |
KR102513297B1 (ko) * | 2018-02-09 | 2023-03-24 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 기능 실행 방법 |
US10818296B2 (en) * | 2018-06-21 | 2020-10-27 | Intel Corporation | Method and system of robust speaker recognition activation |
CN111902865B (zh) | 2018-12-03 | 2024-07-12 | 谷歌有限责任公司 | 文本无关的说话者识别 |
US11615795B2 (en) * | 2020-08-03 | 2023-03-28 | HCL America Inc. | Method and system for providing secured access to services rendered by a digital voice assistant |
-
2021
- 2021-03-24 US US17/211,791 patent/US11942094B2/en active Active
-
2022
- 2022-03-09 KR KR1020237035935A patent/KR20230156145A/ko unknown
- 2022-03-09 EP EP22922578.4A patent/EP4295517A2/en active Pending
- 2022-03-09 CN CN202280037585.7A patent/CN117378006A/zh active Pending
- 2022-03-09 JP JP2023558522A patent/JP2024510798A/ja active Pending
- 2022-03-09 WO PCT/US2022/019576 patent/WO2023158444A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20220310098A1 (en) | 2022-09-29 |
US11942094B2 (en) | 2024-03-26 |
EP4295517A2 (en) | 2023-12-27 |
WO2023158444A3 (en) | 2023-11-23 |
WO2023158444A2 (en) | 2023-08-24 |
JP2024510798A (ja) | 2024-03-11 |
CN117378006A (zh) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11594230B2 (en) | Speaker verification | |
US11887582B2 (en) | Training and testing utterance-based frameworks | |
CN111566729B (zh) | 用于远场和近场声音辅助应用的利用超短语音分段进行的说话者标识 | |
US10255922B1 (en) | Speaker identification using a text-independent model and a text-dependent model | |
US10027662B1 (en) | Dynamic user authentication | |
US10476872B2 (en) | Joint speaker authentication and key phrase identification | |
US20170236520A1 (en) | Generating Models for Text-Dependent Speaker Verification | |
US12080282B2 (en) | Natural language processing using context | |
US11676572B2 (en) | Instantaneous learning in text-to-speech during dialog | |
KR20230156145A (ko) | 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증 | |
CN117321678A (zh) | 用于说话者标识的注意力评分功能 | |
Tsai et al. | Self-defined text-dependent wake-up-words speaker recognition system | |
Asha et al. | Voice activated E-learning system for the visually impaired | |
US11908480B1 (en) | Natural language processing using context | |
KR20240132372A (ko) | 멀티태스크 음성 모델을 이용한 화자 검증 |