KR102109874B1 - 화자 검증 - Google Patents

화자 검증 Download PDF

Info

Publication number
KR102109874B1
KR102109874B1 KR1020187009479A KR20187009479A KR102109874B1 KR 102109874 B1 KR102109874 B1 KR 102109874B1 KR 1020187009479 A KR1020187009479 A KR 1020187009479A KR 20187009479 A KR20187009479 A KR 20187009479A KR 102109874 B1 KR102109874 B1 KR 102109874B1
Authority
KR
South Korea
Prior art keywords
vector
user
neural network
speech
speaker
Prior art date
Application number
KR1020187009479A
Other languages
English (en)
Other versions
KR20180050365A (ko
Inventor
익나시오 로페즈 모레노
리 완
콴 왕
Original Assignee
구글 엘엘씨
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 구글 엘엘씨 filed Critical 구글 엘엘씨
Publication of KR20180050365A publication Critical patent/KR20180050365A/ko
Application granted granted Critical
Publication of KR102109874B1 publication Critical patent/KR102109874B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • 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
    • 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/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)

Abstract

언어-독립적 화자 검증을 용이하게 하기 위해, 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램들을 포함하는 방법들, 시스템들, 장치들. 하나의 양태에서, 방법은 사용자의 발언을 표현하는 오디오 데이터를, 사용자 디바이스에 의해 수신하는 액션들을 포함한다. 다른 액션들은 사용자 디바이스에 저장된 신경 네트워크에 오디오 데이터 및 언어 식별자로부터 도출된 입력 데이터를 제공하는 것을 포함할 수 있다. 신경 네트워크는 상이한 언어들 또는 방언들의 스피치를 표현하는 스피치 데이터를 사용하여 트레이팅될 수 있다. 이 방법은 신경 네트워크의 출력에 기초하여, 화자 표현을 생성하고, 화자 표현 및 제2 표현에 기초하여 발언이 사용자의 발언임을 결정하는 추가 액션들을 포함할 수 있다. 상기 방법은 상기 발언이 사용자의 발언임을 결정하는 것에 기초하여 사용자 장치에 대한 액세스를 사용자에게 제공할 수 있다.

Description

화자 검증
본 명세서는 일반적으로 화자 검증과 관련이 있다.
음성 인증(voice authentication)은 사용자 디바이스의 사용자가 사용자 디바이스에 대한 액세스를 얻기 위한 쉬운 방법을 제공한다. 음성 인증은 사용자가 암호를 기억하거나 입력하지 않고도 사용자의 디바이스를 잠금 해제하고, 액세스할 수 있게 한다. 그러나, 다수의 상이한 언어들, 방언들, 억양들, 그리고 그와 같은 것의 존재는 음성 인증 분야에서 일정 과제들을 제시한다.
하나의 구현예에서, 화자 검증 모델은 화자의 언어, 방언 또는 억양에 관계없이 화자 검증을 용이하게 함으로써 종래의 시스템들을 개선한다. 화자 검증 모델은 신경 네트워크에 기초할 수 있다. 신경 네트워크는 발언 및 언어 식별자를 포함하는 입력들을 사용하여 트레이닝될 수 있다. 트레이닝을 받으면, 신경 네트워크의 숨겨진 레이어(hidden layer)에 의한 활성화들 출력이 성문(voiceprint)으로 사용될 수 있으며, 사용자의 디바이스 상에서 레퍼런스 표현과 비교될 수 있다. 상기 성문 및 레퍼런스 표현이 미리 결정된 유사성 임계치를 만족하면 화자가 인증될 수 있다.
하나의 구현예에서, 본 명세서의 발명은 언어-독립적 화자 검증을 용이하게 하기 위한 방법으로 구현될 수 있다. 상기 방법은 액션들을 포함할 수 있는데, 상기 액션들은: 사용자 디바이스에 의해, 사용자의 발언을 표현하는 오디오 데이터를 수신하는 것; 사용자 디바이스와 연관된 언어 식별자를 결정하는 것; 상기 오디오 데이터 및 상기 결정된 언어 식별자로부터 도출된 입력 데이터의 세트를, 상기 사용자 디바이스에 저장된 신경 네트워크에 제공하는 것, 상기 신경 네트워크는 상이한 언어들 또는 상이한 방언들의 스피치(speech)를 표현하는 스피치 데이터를 사용하여 트레이닝된 파라미터들을 가지며; 입력 데이터의 상기 세트를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 것; 상기 화자 표현 및 제2 표현에 기초하여, 상기 발언이 상기 사용자의 발언임을 결정하는 것; 및 상기 발언이 상기 사용자의 발언임을 결정하는 것에 기초하여, 상기 사용자 디바이스에 상기 사용자 액세스를 제공하는 것이다.
다른 버전들은 컴퓨터 저장 디바이스들에 암호화 되어있는 방법들의 액션들을 수행하기 위해, 대응하는 시스템들, 장치, 및 컴퓨터 프로그램들을 포함한다.
이들 및 다른 버전들은 선택적으로 하나 이상의 다음 피쳐(feature)들을 포함할 수 있다. 예를 들어, 일부 구현예들에서, 오디오 데이터 및 결정된 언어 식별자로부터 도출된 입력 데이터의 세트는 오디오 데이터로부터 도출된 제1 벡터 및 결정된 언어 식별자로부터 도출된 제2 벡터를 포함한다.
일부 구현예들에서, 상기 방법은 상기 제1 벡터 및 상기 제2 벡터를 단일 연결 벡터로 연결함으로써 입력 벡터를 생성하는 것, 상기 생성된 입력 벡터를 신경 네트워크에 제공하는 것, 및 상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 방법은 (i) 상기 제1 벡터, (ii) 상기 제2 벡터, 또는 (iii) 상기 제1 벡터 및 상기 제2 벡터 둘 모두에 기초하여 출력들을 각각 생성하는 적어도 두 개의 다른 신경 네트워크들의 상기 출력들을 연결함으로써 입력 벡터를 생성하는 것, 상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 것; 및 상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 방법은 상기 제1 벡터와 상기 제2 벡터의 상기 가중 합에 기초하여 입력 벡터를 생성하는 것; 상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 것; 및 상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 것을 포함할 수 있다.
일부 구현예들에서, 입력 데이터의 상기 세트를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 상기 출력은 상기 신경 네트워크의 숨겨진 레이어에 의해 생성된 활성화들의 세트를 포함한다.
일부 구현예들에서, 상기 화자 표현 및 제2 표현에 기초하여, 상기 발언이 상기 사용자의 발언임을 결정하는 것은 상기 제1 표현과 상기 제2 표현 사이의 거리를 결정하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 발언이 상기 사용자의 발언임을 결정하는 것에 기초하여 상기 사용자 디바이스에 상기 사용자 액세스를 제공하는 것은 상기 사용자 디바이스를 잠금 해제하는 것을 포함한다.
본 명세서에 기술된 발명의 다른 구현예들은 언어-독립적 화자 검증을 위한 방법을 포함하며, 상기 방법은 수신된 오디오 데이터가 다수의 언어-특정적 핫워드들 중 하나의 발언을 포함할 가능성이 있는지 여부를 결정하도록 구성된 언어-독립적 화자 검증 모델을 구현하는 모바일 디바이스에 의해, (i) 사용자의 특정한 발언에 대응하는 특정한 오디오 데이터, 및 (ii) 상기 사용자에 의해 발화된 특정한 언어를 표시하는 데이터를 수신하는 것, 및 (i) 사용자의 특정한 발언에 대응하는 특정한 오디오 데이터, 및 (ii) 상기 사용자에 의해 발화된 특정한 언어를 표시하는 데이터를 수신하는 것에 응답하여, 출력을 위해, 언어-독립적 화자 검증 모델이 상기 특정한 오디오 데이터가 상기 사용자에 의해 발화된 상기 특정한 언어에 대해 지정된 핫워드의 발언을 포함할 가능성이 있다고 결정했다는 표시를 제공하는 것을 포함한다.
이들 및 다른 버전들은 선택적으로 하나 이상의 다음 피쳐들을 포함할 수 있다. 예를 들어, 하나의 구현예에서, 출력을 위해, 상기 표시를 제공하는 것은 상기 모바일 디바이스의 리소스에 대한 액세스를 제공하는 것을 포함할 수 있다. 대안적으로 또는 추가로, 출력을 위해, 상기 표시를 제공하는 것은 상기 모바일 디바이스를 잠금 해제하는 것을 포함할 수 있다. 대안적으로 또는 추가로, 출력을 위해, 상기 표시를 제공하는 것은 상기 모바일 디바이스를 저전력 상태로부터 깨우는 것을 포함할 수 있다. 대안적으로 또는 추가로, 출력을 위해, 상기 표시를 제공하는 것은 언어-독립적 화자 검증 모델이 상기 특정한 오디오 데이터가 상기 모바일 디바이스와 연관된 특정한 사용자의 상기 발언을 포함하는 것으로 결정했다는 표시를 제공하는 것을 포함한다.
일부 구현예들에서, 상기 언어-독립적 화자 검증 모델은 상기 사용자의 발언들을 사용하지 않고 트레이닝된 신경 네트워크를 포함할 수 있다.
본 명세서의 발명은 종래의 방법들에 비해 다수의 이점들을 제공한다. 예를 들어, 본 출원의 발명은 쉽게 배포될 수 있는 화자 검증 모델을 제공한다. 화자 검증 모델은 언어, 방언 및 억양 독립적이므로 동일한 화자 검증 모델이 사용자 디바이스들에 넓게 배포될 수 있다. 이것은 디바이스 사용자의 언어에 기초하여 상이한 디바이스들에 상이한 화자 검증 모델들을 제공하는 것보다 훨씬 효율적이다. 대안적으로, 동일한 디바이스에 사용자가 하나를 선택할 수 있는 다수의 화자 검증 모델을 배치할 필요가 없다.
본 출원에 의해 제공되는 화자 검증 모델은 화자 언어, 방언 또는 억양에 독립적인 화자 검증을 수행하기 위하여 동일한 모델을 사용할 때 개선된 정확도를 나타낸다. 예를 들어, 언어, 방언 또는 억양의 변화들은 특정한 사용자가 다른 사용자들보다 상이한 방식으로 미리 결정된 핫워드를 발음 하게할 수 있다. 상기 발음 차이는 종래 시스템들 내의 정확성 문제를 일으킬 수 있다. 본 개시의 화자 검증 모델은 종래 시스템들의 이러한 약점을 개선한다.
본 출원에 의해 제공된 화자 검증 모델은 또한 업데이트의 용이성을 제공한다. 예를 들어, 새롭게 트레이닝된 모델은 사용자 디바이스의 운영 시스템에 대한 일상적인 소프트웨어 업데이트의 일부로서 쉽게 배치될 수 있다. 이렇게 업데이트된 화자 검증 모델들은 새로운 언어들, 방언들, 및/또는 억양이 발생할 때, 이들을 설명하기 위해 쉽게 트레이닝될 수 있다. 대안적으로, 알려진 언어들, 방언들, 및/또는 억양들에 기초하여 화자 검증 모델의 기존 버전에 대한 업데이트들이 제작될 수 있다. 이렇게 업데이트된 화자 검증 모델은 특정 지리적 지역 내의 특정 디바이스들에게 특정한 화자 검증 모델들을 제공할 필요 없이, 보편적으로 배치될 수 있다.
본 명세서에 기술된 발명의 하나 이상의 실시예들의 세부 사항들은 첨부된 도면 및 아래의 설명에서 기술되어 있다. 발명의 다른 피쳐들, 양태들, 및 장점들은 설명, 도면 및 청구항들로부터 명백해질 것이다.
도 1은 화자 검증을 수행하기 위해 언어-독립적 화자 검증 모델을 사용하기 위한 시스템의 예시적인 문맥 다이어그램(contextual diagram)을 도시한다.
도 2는 언어-독립적 화자 검증 모델을 트레이닝 시키기 위한 시스템의 예시이다.
도 3은 복수의 개별 언어 식별 벡터의 개념적 표현 예시이다.
도 4는 언어-독립적 화자 검증을 수행하는 시스템의 예시이다.
도 5는 언어-독립적 화자 검증을 수행하기 위한 프로세스의 흐름도이다.
일부 구현예들에서, 시스템은 신경 네트워크에 기초한 모델일 수 있는, 언어-독립적 화자 검증 모델을 사용자 디바이스에 제공한다. 언어-독립적 화자 검증 모델은, 사용자 디바이스 상에 설치되기 전에, (i) 다수의 상이한 사용자들로부터의 발언들 및 (ii) 각각의 발언들에 대응하는 언어들 또는 위치들을 표시하는 벡터들을 포함하는 트레이닝 데이터에 기초하여 트레이닝된다. 일단 사용자 디바이스 상에 설치되면, 언어-독립적 화자 검증 모델은 언어-독립적 화자 검증 모델의 후속적인 트레이닝 없이 사용자 디바이스의 사용자의 신원을 검증하기 위해 사용될 수 있다. 사용자 디바이스는 사용자를 등록시키기 위해 사용자의 발언들을 획득하고 사용할 수 있는 반면에, 상기 모델 자체는 사용자 디바이스의 사용자의 임의의 발언들에 기초하여 트레이닝될 필요가 없다.
본 명세서에 사용된 것처럼, "언어-독립적" 화자 검증 모델은 상이한 언어들 또는 방언들을 발화하는 화자들의 신원들을 정확하게 검증하는데 사용될 수 있는 단일 모델을 지칭한다. 즉, 상기 모델은 특정 단일 언어로 되어있는 스피치에 의존하거나 국한되지 않는다. 결과적으로, 상이한 언어들, 방언들, 또는 억양들에 대해 다른 모델들을 사용하는 대신, 단일 언어-독립적 모델이 사용될 수 있다. 일부 구현예들에서, 텍스트-의존적 모델은, 예를 들어, 미리 결정된 핫워드 또는 주의 단어처럼, 특정 단어 또는 구문의 발언에 기초하여 화자를 식별하도록 트레이닝된다. 언어-독립적 모델은 단일 핫워드에 기초하거나, 상이한 언어들에 대한 상이한 핫워드들 또는 위치들에 기초하여 상이한 언어들의 화자들을 구별하도록 트레이닝될 수 있다. 동일한 핫워드가 상이한 언어들로 또는 위치들에서 사용될 때, 상이한 언어들, 방언들, 억양들 또는 위치들을 가진 사용자들은 핫워드를 상이하게 발음할 수 있다. 이러한 변화들은 이전 모델의 정확성을 떨어뜨렸으며, 이것은 화자-구별적 특성으로서 지역의 언어 또는 억양에 의한 가변성에 부적절하게 기인한 것이었다. 예를 들어, 이전 모델은 지역 억양의 일반적인 피쳐들을 특정한 화자 음성의 주된 구별적 요소들로 해석하는 경우, 하지만 사실상 상기 피쳐들은 실제로는 매우 유사한 억양을 가진 많은 다른 사용자들에게 공통적인 경우에, 검증의 긍정 오류 비율(rate of false positive)이 증가된다. 본 어플리케이션은 사용자의 언어 또는 위치에 관한 정보를 획득하고 상기 정보를 모델에 제공하며, 상기 모델이 예를 들어, 동일한 언어, 방언, 억양 또는 위치를 갖는 다른 사용자들로부터 사용자를 더 잘 구별하는 성문들 같은 화자 표현들을 제작하도록 한다.
도 1은 신원 검증을 수행하기 위해 언어-독립적 화자 검증 모델을 사용하기 위한 시스템(100)의 예시에 대한 문맥 다이어그램을 도시한다. 시스템(100)은 사용자 디바이스(110), 사용자 디바이스(120), 네트워크(130), 서버(140), 신경 네트워크(150) 및 화자 검증 모델(180)을 포함한다.
시스템(100)은 신경 네트워크(150)를 저장하는 서버(140)를 포함한다. 신경 네트워크(150)는 상이한 언어들, 상이한 방언들, 또는 둘 모두의 스피치 샘플들을 표현하는 스피치 데이터를 사용하여 트레이닝 되었다. 서버(140)는 신경 네트워크(150)에 기초하여 화자 검증 모델(180)을 생성한다. 그 후, 서버(150)는 화자 검증 모델(180)의 사본을 네트워크(130)를 통해 제1 사용자 디바이스(110) 및 제2 사용자 디바이스(120)로 전송한다. 화자 검증 모델(180)의 사본은 그 후 각 사용자 디바이스(110, 120)에 저장된다.
사용자, 예를 들어, "Joe"는 음성 인증을 사용하여 사용자 장치(110)에 대한 액세스를 시도할 수 있다. 예를 들어, Joe 영어로 "Ok Google"과 같은 미리 결정된 핫워드(105a)를 발언할 수 있다. 미리 결정된 발언에 대응하는 오디오(105b)는 사용자 디바이스(110)의 마이크로폰(111)에 의해 탐지될 수 있다. 사용자 디바이스(110)는 저장된 화자 검증 모델(180)에 대하여 마이크로폰(111)에 의해 탐지된 오디오(105b)로부터 도출된 제1 입력을 생성할 수 있다. 추가로, 사용자 디바이스(110)는 Joe가 영어로 핫워드(105a) 또는 구문을 발언했었다는 결정에 기초하여 저장된 화자 검증 모델(180)에 대한 제2 입력을 도출할 수 있다. 사용자 디바이스(110)는 디바이스의 언어 셋팅을 획득함으로써 Joe가 영어로 핫워드(105a) 또는 구문를 발언했었다고 결정할 수 있다. Joe의 사용자 디바이스(110)에 저장된 화자 검증 모델(180)은 그 후 오디오(105b)로부터 도출된 제1 입력 및 Joe의 영어 사용으로부터 도출된 제2 입력을 프로세싱하는 것에 기초하여 Joe에 대한 성문을 생성할 수 있다. 생성된 성문의 분석에 기초하여, 사용자 디바이스(110)는 Joe가 디바이스(110)에 액세스하도록 권한이 부여(authorize)되었는지를 결정할 수 있다. Joe가 사용자 디바이스(110)에 액세스하도록 권한이 부여되었다고 결정한 것에 응답하여, 사용자 디바이스(110)는 사용자 디바이스(110)를 잠금 해제하는 프로세싱을 개시할 수 있다. 일부 경우들에서, 사용자 디바이스(110)는 그래픽 사용자 인터페이스(112) 상에 예를 들어, "화자 신원 검증됨"(113)을 나열하는 메시지를 디스플레이할 수 있다. 대안적으로 또는 추가로, 사용자 디바이스(110)가 잠금 해제될 때, 사용자 디바이스(110)의 스피커는 "Welcome Joe"를 나열하는 오디오 인사말(115)을 출력할 수 있다.
도 1의 예시에서, 다른 사용자, 예를 들어, "Wang"은 동일한 화자 검증 모델(180)의 사본을 또한 저장하는 사용자 디바이스(120)를 갖는다. 중국어가 유창한 화자인, Wang은 음성 인증을 사용하여 사용자 디바이스(120)에 대한 액세스를 시도할 수 있다. 예를 들어, Wang은 중국어로
Figure 112018033230307-pct00001
와 같은 미리 결정된 핫워드(115a) 또는 구문을 발언할 수 있다. (영어로 "Hello Android"로 대략 번역됨). 미리 결정된 발언에 대응하는 오디오(115b)는 사용자 디바이스(120)의 마이크로폰(121)에 의해 탐지될 수 있다. 추가로, 사용자 디바이스(120)는 Wang이 중국어로 핫워드(115a) 또는 구문을 발언했던 결정에 기초하여 저장된 화자 검증 모델(180)에 대한 제2 입력을 도출할 수 있다. 사용자 디바이스(120)는 디바이스의 언어 셋팅을 획득함으로써 Joe가 중국어로 핫워드(115a) 또는 구문을 발언했었다고 결정할 수 있다. Wang의 사용자 디바이스(120)에 저장된 화자 검증 모델(180)은 그 후 오디오(115b)로부터 도출된 제1 입력 및 Wang의 중국어 사용으로부터 도출된 제2 입력의 프로세싱에 기초하여, Wang에 대한 성문을 생성할 수 있다. 생성된 성문의 분석에 기초하여, 사용자 디바이스(120)는 Wang이 디바이스(120)에 액세스하도록 권한이 부여되었는지를 결정할 수 있다. Wang이 사용자 디바이스(120)에 액세스하도록 권한이 부여되었다고 결정한 것에 응답하여, 사용자 디바이스(120)는 사용자 디바이스(120)를 잠금 해제하는 프로세싱을 개시할 수 있다. 일부 경우들에서, 사용자 디바이스(120)는 그래픽 사용자 인터페이스(122) 상에 예를 들어,
Figure 112018033230307-pct00002
(123) (영어로 "화자 신원 검증됨"으로 대략 번역됨)을 나열하는 메시지를 디스플레이할 수 있다. 대안적으로 또는 추가로, 사용자 디바이스(120)가 잠금 해제될 때, 사용자 디바이스(120)의 스피커는
Figure 112018033230307-pct00003
(영어로 "Welcome Wang"으로 대략 번역됨)을 나열하는 오디오 인사말(125)을 출력할 수 있다.
도 1의 예시에 도시된 바와 같이, 단일 텍스트-의존적 화자 인식 모델(180)은 상이한 언어들 또는 위치들에 대해 상이한 미리 결정된 핫워드들을 사용하도록 구성될 수 있다. 추가로 또는 대안으로서, 모델(180)은 다수의 언어들 또는 위치들에 대해 동일한 핫워드를 사용할 수 있지만, 모델(180)은 예를 들어, 상이한 언어들 또는 지역 억양들로 인하여, 핫워드 발음의 상이한 변화들과 관련된 화자 표현들을 생성할 수 있다. 아래에서 논의되는 바와 같이, 모델(180)은 오디오 정보와 함께 모델(180)의 신경 네트워크에 언어 또는 위치에 대한 식별자를 입력함으로써 검증 프로세스를 미세-조정할 수 있다.
도 2는 언어-독립적 화자 검증 모델(280)을 트레이닝 시키기 위한 시스템(200)의 예시이다. 시스템(200)은 사용자 디바이스(210), 네트워크(230), 서버(240) 및 신경 네트워크(250)를 포함한다. 일반적으로, 언어-독립적 화자 검증 모델(280)의 트레이닝은 모델(280)이 사용자 디바이스(210)에 배포되고 화자 인식을 수행하기 위해 사용되기 전에, 서버(240)에서 발생하는 프로세싱을 통하여 발생한다. 이런 트레이닝은 사용자 디바이스(210)가 네트워크(230)에 접속될 것을 요구하지 않는다.
트레이닝이 시작될 수 있기 전에, 서버(240)는 트레이닝 발언들(210a 및 210b)의 세트를 획득한다. 트레이닝 발언들은 다수의 상이한 트레이닝 화자에 의해 각각 발언되었고, 기록되었으며, 서버(240)가 이용 가능하도록 만들어진 트레이닝 발언들 저장소에 저장된 하나 이상의 스피치 샘플들을 포함할 수 있다. 각각의 트레이닝 발언(210a, 210b)은 사용자가 트레이닝 발언을 발언할 때 결과로서 일어나는 오디오 신호의 적어도 일부를 포함할 수 있다.
음성 인증을 용이하게 하도록, 신경 네트워크(250)는 음성 인증 동안 사용자 디바이스(210)의 사용자에 의해 발언될 수 있는 미리 결정된 핫워드에 대응하는 트레이닝 발언들을 사용하여 트레이닝될 수 있다. 트레이닝 발언들은 상이한 언어, 상이한 방언, 상이한 억양 또는 그와 같은 것의 동일한 핫워드를 각각 발언하는 다수의 상이한 사용자들로부터의 발언들을 포함할 수 있다. 하나의 구현예에서, 다수의 트레이닝 데이터 세트들은 특정한 언어, 방언, 억양 또는 그와 같은 것의 특정한 키워드 발언에 대응하는 각각의 트레이닝 데이터 세트로 신경 네트워크(250)를 트레이닝 시키는데 사용될 수 있다. 예를 들어, 단일 신경 네트워크(250)는 미국 영어로 "Ok Google"을 발언하는 다수의 상이한 사용자들로부터의 트레이닝 발언들의 세트 및 영국 영어로 "Ok Google"을 발언하는 다수의 상이한 사용자들의 다른 트레이닝 테이터의 세트로 트레이닝될 수 있다. 하나의 구현예에서, 단일 신경 네트워크(250)는 신경 네트워크(250)가 모든 알려진 언어들, 방언들, 억양들, 또는 그와 같은 것을 위하여 트레이닝될 때까지 상이한 언어들, 상이한 방언들, 상이한 억양들, 또는 그와 같은 것으로 발언되는 핫워드 "Ok Google"을 포함하는 다른 트레이닝 데이터 세트들로 유사하게 트레이닝될 수 있다. 대안적으로, 신경 네트워크(250)는 신경 네트워크(250)가 신경 네트워크(250)에 기초한 화자 검증 모델이 배치될 지역들 내의 모든 언어들, 방언들, 억양들, 또는 그와 같은 것을 위하여 트레이닝될 때까지 상이한 언어들, 상이한 방언들, 상이한 또는 그와 같은 것으로 발언되는 핫워드 "Ok Google"을 포함하는 다른 트레이닝 데이터 세트들로 유사하게 트레이닝될 수 있다. 본 명세서에서 사용되는 바와 같이, 핫워드는 단일 단어 또는 다수의 단어들을 포함하는 구문일 수 있다. 일부 구현예들에서, 각 언어에 대한 핫워드가 상기 모델의 트레이닝 동안 고정되어, 특정한 위치에서 상기 모델을 사용하는 각 사용자는 동일한 핫워드를 사용한다.
발언된 트레이닝 구문들에 대응하는 오디오 신호들이 캡쳐되고 기록될 수 있다. 여기서 제공되는 미리 결정된 핫워드에 대응하는 트레이닝 발언들의 예시가 "Ok Google" 및
Figure 112018033230307-pct00004
를 포함하지만, 본 개시는 그렇게 제한될 필요는 없다. 대신에, 임의의 언어 또는 임의의 방언의 임의의 미리 결정된 핫워드에 대응하는 트레이닝 발언들이 신경 네트워크(250)를 트레이닝 시키기 위해 사용될 수 있다. 추가로, 신경 네트워크(250)는 모든 알려진 언어들, 방언들, 억양들 또는 그와 같은 것을 수용하도록 쉽게 트레이닝될 수 있는 것으로 고려된다.
일부 경우들에서, 동일한 트레이닝 단어 또는 구문에 대한 다수의 상이한 트레이닝 발언들을 생성하기 위해, 트레이닝 화자는 동일한 트레이닝 구문을 여러 번 발언 및 기록하도록 요구될 수 있다. 이러한 방식으로, 다수의 상이한 언어들, 다수의 상이한 방언들, 또는 그와 같은 것의 트레이닝 단어 또는 구문을 발언하는 다수의 상이한 화자들을 사용하여 트레이닝 발언들이 획득될 수 있다. 일단 트레이닝 발언들(210a, 210b)이 획득되면, 시스템(200)은 관련된 트레이닝 발언의 음향 피쳐들에 대응하는 각각의 트레이닝 발언에 대한 각각의 피쳐 벡터를 도출할 수 있다(212a, 212b). 각각의 트레이닝 발언에 대한 각각의 피쳐 벡터는, 예를 들어, 트레이닝 발언으로부터 도출되고 발언의 음향 피쳐들에 대응하는 N×1 벡터를 포함할 수 있다. N×1 벡터는 N 개 값들의 단일 열을 사용하여 개념적으로 모델링될 수 있다. 하나의 구현예에서, N×1 벡터의 N 개 값들 각각은 "0" 또는 "1"의 값을 포함할 수 있다.
시스템(200)은 또한 다수의 상이한 언어 ID들(215a, 215b)을 획득할 수 있다. 언어 ID들은 특정한 언어를 식별하는 데이터를 포함할 수 있다. 하나의 구현예에서, 언어 ID는 1-핫 언어 벡터를 포함할 수 있다. 이러한 1-핫 언어 벡터들은 N×1 벡터를 포함할 수 있으며, 여기서 언어 벡터의 하나의 피쳐만이 활성화된다. 언어 벡터의 특정한 피쳐는 예를 들어, 상기 피쳐를 "1" 값으로 셋팅함으로써 활성화될 수 있다. 유사하게, 임의의 주어진 1-핫 언어 벡터에 대하여, 1-핫 언어 벡터의 다른 모든 피쳐들은 비활성화될 것이다. 예를 들어, 피쳐를 "0"으로 셋팅함으로써 언어 벡터의 상기 피쳐는 비활성화될 수 있다.
도 3은 복수의 1-핫 언어 벡터들(305, 310, 315, 320)의 개념적 표현의 예시이다. 각각의 1-핫 언어 벡터(305,310,315,310)에서, 다른 모든 피쳐들이 비활성화된 반면, 하나의 피쳐만은 활성화되었다. 시스템(200)은 각각의 1-핫 언어 벡터(305, 310, 315, 320)를 특정한 언어와 연관시킬 수 있다. 예를 들어, 시스템(200)은 언어 식별 벡터(305)와 관련된 경우와 같이 활성화된 언어 벡터의 제1 피쳐를 갖는 1-핫 언어 벡터가 "영어"와 연관될 수 있다고 결정할 수 있다. 유사하게, 시스템(200)은 언어 식별 벡터(305)와 관련된 경우와 같이 활성화된 언어 벡터의 제2 피쳐를 갖는 1-핫 언어 벡터(310)가 "중국어"와 연관될 수 있다고 결정할 수 있다. 유사한 언어 연관들이 언어 식별 벡터들(315 및 320) 및 다른 언어들간에 만들어질 수 있다.
화자 검증 모델(280)의 트레이닝은 트레이닝 데이터의 세트들을 신경 네트워크(250)에 제공함으로써 시작될 수 있다. 하나의 구현예에서, 신경 네트워크(250)는 쌍방향 트레이닝 기법을 사용하여 트레이닝될 수 있다. 예를 들어, 트레이닝 발언 벡터(214a) 및 언어 ID(215a)를 포함한 제2 입력을 포함하는 트레이닝 데이터(213a)의 제1 세트는 신경 네트워크(250)에 입력된다. 언어 ID(215a)는 예를 들어, 트레이닝 발언 벡터(214a)가 도출되었던 트레이닝 발언(210a)을 제공했던 트레이닝 화자에 의해 사용된 언어 또는 방언을 식별하는 1-핫 언어 벡터를 포함할 수 있다. 신경 네트워크(250)는 트레이닝 데이터(213a)의 제1 세트를 프로세스하고 출력(260a)을 생성한다. 이어서, 트레이닝 데이터(213b)의 제2 세트가 신경 네트워크(250)에 입력된다. 신경 네트워크(250)는 트레이닝 데이터(213b)의 제2 세트를 프로세스하고 출력(260b)을 생성한다. 출력들(260a, 260b)은 그 후 비교기(270)를 사용하여 비교된다. 비교기(270)는 트레이닝 벡터들(214a, 214b)이 동일한 화자에 의해 발언되었던 트레이닝 발언들(210a, 210b)로부터 도출되었었는지 여부를 결정하기 위해 출력들(260a, 260b)을 분석한다. 하나의 구현예에서, 비교 모듈(440)은 출력들(260a, 260b) 간의 거리를 계산함으로써 동일한 화자에 의해 발언되었던 트레이닝 발언들(210a, 210b)로부터 트레이닝 벡터들(214a, 214b)이 도출되었었는지를 결정할 수 있다. 이러한 거리는 예를 들어, 코사인 유사도를 사용하여 계산될 수 있다.
비교 모듈의 출력(272)은 트레이닝 발언들(210a, 210b)이 동일한 화자에 의해 발언되었었는지 여부에 대한 표시를 제공한다. 하나의 구현예에서, 예를 들어, 출력(272)은 '0' 또는 '1' 중 하나로 구성된 이진 값일 수 있다. 그러한 구현예에서, '0'은 발언이 동일한 화자로부터 발언되었던 것이 아님을 표시할 수 있다. 반면에 '1'은 발언이 동일한 화자로부터 발언되었던 것임을 표시할 수 있다. 대안적으로, 출력(272)은 '0' 또는 '1'과 같은 이진 값에 매핑(map)될 수 있는 값일 수 있다. 예를 들어, 출력(272)은 트레이닝 발언들(210a, 210b)이 동일한 화자에 의해 발언되었었는지 여부를 표시하는 확률을 포함할 수 있다. 신경 네트워크(250)의 파라미터들은 비교 모듈(270)의 출력(272)에 기초하여 조정될 수 있다. 일부 구현예들에서, 신경 네트워크(250)의 파라미터들은 출력(272)에 기초하여 자동으로 조정될 수 있다. 대안적으로, 일부 구현예들에서, 신경 네트워크의 하나 이상의 파라미터들은 출력(272)에 기초하여 수동으로 조정될 수 있다. 두 출력들(260a, 260b)의 비교가 동일한 화자에 의해 발언된 발언들(210a, 210b)로부터 (214a, 214b) 와 같은 한 쌍의 트레이닝 벡터가 도출되었었는지 여부를 일관되게 표시할 때까지 이러한 방식으로 다수의 트레이닝 데이터 세트들이 프로세스될 수 있다.
신경 네트워크(250)는 트레이닝 데이터의 세트들을 입력하기 위한 입력 레이어(252), 트레이닝 데이터의 세트들을 프로세스하기 위한 다수의 숨겨진 레이어들(254a, 254b, 254c), 및 출력을 제공하기 위한 출력 레이어(256)를 포함할 수 있다. 각각의 숨겨진 레이어(254a, 254b, 254c)는 하나 이상의 가중치들 또는 다른 파라미터들을 포함할 수 있다. 각각의 숨겨진 레이어(254a, 254b, 254c)의 가중치들 또는 다른 파라미터들은 트레이닝된 신경 네트워크가 트레이닝 데이터의 각 세트에 대응하는 원하는 타겟 벡터를 생산하도록 조정될 수 있다. 각각의 숨겨진 레이어(254a, 254b, 254c)의 출력은 M×1 활성화 벡터를 생성할 수 있다. (254c)와 같은 마지막 숨겨진 레이어의 출력은 출력 레이어(256)에 제공될 수 있으며, 출력 레이어(256)는 신경 네트워크 출력을 생성하기 위해 수신된 활성화 벡터의 추가 계산들을 수행한다. 신경 네트워크(250)가 원하는 수준의 성능에 도달하면, 신경 네트워크(250)는 트레이닝된 신경 네트워크로 지정될 수 있다. 예를 들어, 신경 네트워크(250)는 네트워크(250)가 상이한 화자들의 스피치를 구별할 수 있고, 동일한 화자의 스피치 간에 일치들을 최대 오류율보다 작은 비율로 식별할 수 있을 때까지 트레이닝될 수 있다.
트레이닝 발언 벡터(214a) 및 언어 ID(215a)를 포함하는 (213a)와 같은 트레이닝 데이터의 세트는 신경 네트워크(250)에 트레이닝 입력으로서 제공되기 전에 여러가지의 상이한 방식들로 사전 프로세싱될 수 있다. 예를 들어, 트레이닝 발언 벡터(214a) 및 1-핫 언어 벡터와 같은 언어 ID(215a)가 연결될 수 있다. 이러한 경우들에서, 연결된 벡터는 트레이닝 동안 신경 네트워크(250)에 대한 입력으로서 제공될 수 있다. 대안적으로, 시스템(200)은 트레이닝 발언 벡터(214a), 1-핫 언어 벡터, 또는 트레이닝 발언 벡터(214a) 및 1-핫 언어 벡터 둘 모두에 대한 각각의 신경 네트워크의 프로세싱에 기초하여, 각각 생성된 출력들을 갖는 적어도 두개의 다른 신경 네트워크들의 출력들을 연결함으로써 신경 네트워크(250)에 대한 입력을 생성할 수 있다. 이러한 경우들에서, 둘 이상의 다른 신경 네트워크들의 연결된 출력은 신경 네트워크(250)를 트레이닝 시키는데 사용될 수 있다. 대안적으로, 시스템(200)은 트레이닝 발언 벡터(214a) 및 1-핫 언어 벡터의 가중 합에 기초하여 입력 벡터를 생성할 수 있다. 트레이닝 발언 벡터(214a) 및 1-핫 언어 벡터에 기초하여 트레이닝 데이터의 세트를 생성하는 다른 방법들이 사용될 수 있다.
신경 네트워크(250)의 부분(258)은 트레이닝된 것으로 신경 네트워크(250)가 지정되면 획득될 수 있으며, 화자 검증 모델(280)을 생성하는데 사용될 수 있다. 신경 네트워크(250)의 획득된 부분(258)은 신경 네트워크(250)의 입력 레이어(252) 및 신경 네트워크(254a)의 하나 이상의 숨겨진 레이어들을 포함할 수 있다. 그러나, 일부 구현예들에서, 신경 네트워크(250)의 획득된 부분은 출력 레이어(256)를 포함하지 않는다. 일단 트레이닝되면, 신경 네트워크(250)는 화자에 대한 성문으로 사용될 수 있는 획득된 부분(258)의 마지막 숨겨진 레이어의 출력으로써, 활성화 벡터를 생산할 수 있다. 상기 성문은 사용자 디바이스에 핫워드의 발언을 제공하는 사람의 신원을 확인하기 위해 사용자 디바이스에 의해 사용될 수 있다.
서버(240)는 화자 검증 모델(280)의 복사본을 네트워크(230)를 통해 사용자 디바이스(210)와 같은 하나 이상의 각각의 사용자 디바이스들로 전송한다. 화자 검증 모델(280)의 사본은 그 후 각각의 사용자 디바이스(110)에 저장되고, 언어-독립적 화자 신원 검증을 용이하게 하는데 사용될 수 있다. 다른 예시로서, 화자 검증 모델(280)은 사용자 디바이스(210) 상에, 예를 들어 사용자 디바이스(210)의 운영 시스템과 함께 사전 설치될 수 있다.
도 4는 언어-독립적 화자 신원 검증을 수행하는 시스템(400)의 예시이다. 시스템(400)은 사용자 디바이스(210), 화자 검증 모델(280), 비교 모듈(440), 및 검증 모듈(450)을 포함한다.
도 4에 도시된 예시에서, 사용자(402)는 음성 검증을 이용하여 사용자 디바이스(210)에 대한 액세스를 시도한다. 사용자 디바이스(210)는 네트워크(230)를 통해 서버(240)에 의해 제공된 화자 검증 모델(280)을 이전에 수신하고 저장하였다. 음성 검증을 사용하여 사용자 디바이스(210)에 액세스하기 위해, 사용자(402)는 "Ok Google"과 같은 미리 결정된 핫워드(410a) 또는 구문를 발언한다. 미리 결정된 핫워드(410a) 또는 구문 "Ok Google"에 대응하는 오디오(410b)는 사용자 디바이스(210)의 마이크로폰(211)에 의해 탐지된다. 사용자 디바이스(210)는 오디오(410b)로부터 오디오(410b)의 음향 피쳐들을 표현하는 음향 피쳐 벡터를 도출(413)할 수 있다.
추가로, 시스템(400)은 사용자 디바이스(210)의 언어 ID 저장 영역에 저장된 언어 ID(415)를 획득할 수 있다. 언어 ID는 사용자와 연관된 특정한 언어 또는 방언을 식별하는 데이터를 포함할 수 있다. 하나의 구현예에서, 언어 ID는 1-핫 언어 벡터를 포함할 수 있다. 임의의 특정한 사용자 디바이스(210)에 저장된 언어 ID(415)는 여러가지 상이한 방식으로 알려진 언어들 및 방언들에 대응하는 다수의 상이한 언어 ID들의 세트로부터 특정한 언어 ID로 셋팅될 수 있다. 예를 들어, 사용자는 사용자 디바이스(210)의 구입 후에 처음으로 사용자 디바이스(210)를 켜고 구성할 때, 특정한 언어 또는 방언을 선택할 수 있다. 대응하는 언어 ID는 사용자에 의해 선택된 특정한 언어 또는 방언에 기초하여 선택되고, 사용자 디바이스(210)에 저장될 수 있다.
대안적으로 또는 추가로, 디바이스의 위치에 기초하여, 특정한 언어 ID가 선택되고 사용자 디바이스(210)에 저장될 수 있다. 예를 들어, 사용자 디바이스(210)는 디바이스가 처음 활성화 되었던 위치, 디바이스의 현재 위치, 또는 그와 같은 것에 기초하여 언어 ID에 대한 디폴트 셋팅을 확립할 수 있다. 대안적으로 또는 추가로, 사용자 디바이스(210)는 사용자로부터 획득된 스피치 샘플들에 기초하여 사용자와 연관된 특정 언어 또는 방언을 동적으로 탐지할 수 있다. 사용자와 연관된 특정한 언어 또는 방언의 동적 탐지는 예를 들어, 화자 인증 동안 사용자가 미리 결정된 핫워드를 발언할 때 결정될 수 있다. 그러한 경우들에서, 대응하는 언어 ID가 사용자의 스피치 샘플들로부터 탐지된 언어 또는 방언에 기초하여, 선택될 수 있고 사용자 디바이스(210)에 저장될 수 있다. 선택적으로 또는 추가로, 사용자는 언제든지 특정한 언어 또는 방언을 선택하기 위해 사용자 디바이스(210)와 연관된 언어 또는 방언 셋팅을 수정할 수 있다. 그러한 경우들에서, 대응하는 언어 ID는 사용자 디바이스(210) 언어 또는 방언 셋팅들의 사용자의 수정에 기초하여 선택될 수 있고 사용자 디바이스(210)에 저장될 수 있다.
음향 피쳐 벡터(414) 및 언어 ID(415)는 트레이닝된 신경 네트워크(250)의 적어도 일부에 기초하는 스피치 검증 모델(280)에 대한 입력으로서 제공될 수 있다. 예를 들어, 스피치 검증 모델(280)은 예를 들어, 입력 레이어(252) 및 하나 이상의 숨겨진 레이어들(254a, 254b, 254)과 같은 트레이닝된 신경 네트워크(250)의 하나 이상의 레이어들을 포함할 수 있다. 그러나, 하나의 구현예에서, 스피치 검증 모델(280)은 신경 네트워크(250)의 출력 레이어(256)를 활용하지 않는다.
음향 피쳐 벡터(414) 및 언어 ID(415)는 여러가지 상이한 방식들로 스피치 검증 모델(280)에 입력으로서 제공될 수 있다. 예를 들어, 음향 피쳐 벡터(414) 및 1-핫 언어 벡터와 같은 언어 ID(415)가 연결될 수 있다. 이러한 경우들에서, 연결된 벡터는 스피치 검증 모델에 대한 입력으로서 제공될 수 있다. 대안적으로, 시스템(400)은 음향 피쳐 벡터(414), 1- 핫 언어 벡터와 같은 언어 ID(415), 또는 음향 피쳐 벡터(414) 및 언어 ID(415) 둘 모두의 각각의 신경 네트워크의 프로세싱에 기초하여 각각 출력들을 생성한 두개의 다른 신경 네트워크들의 출력들을 연결시킬 수 있다. 그러한 경우들에서, 둘 이상의 다른 신경 네트워크들의 연결된 출력은 스피치 검증 모델(280)에 제공될 수 있다. 대안적으로, 시스템(400)은 음향 피쳐 벡터(414) 및 언어 ID(415)로서 사용되고 있는 1-핫 언어 벡터의 가중된 합에 기초하여 입력 벡터를 생성할 수 있다. 음향 피쳐 벡터(414) 및 언어 ID(415)에 기초하여 스피치 검증 모델(280)에 입력 데이터를 생성하는 다른 방법들이 사용될 수 있다.
스피치 검증 모델의(280) 음향 피쳐 벡터(414) 및 언어 ID(415)에 기초하여 제공된 입력 데이터의 프로세싱은 스피치 검증 모델의(280) 신경 네트워크의 하나 이상의 숨겨진 레이어들에서 활성화들 세트가 생성되도록 할 수 있다. 예를 들어, 제공된 입력에 대한 스피치 검증 모델들의(280) 프로세싱은 제1 숨겨진 레이어(254a), 제2 숨겨진 레이어(255b), 제3 숨겨진 레이어(254c), 또는 그와 같은 것에 활성화들 세트가 생성되도록 할 수 있다. 하나의 구현예에서, 시스템(400)은 스피치 검증 모델의(280) 신경 네트워크의 최종 숨겨진 레이어(254c)에 의에 출력된 활성화들을 획득할 수 있다. 최종 숨겨진 레이어(254c)에 의해 출력된 활성화들은 화자 벡터(420)를 생성하는데 사용될 수 있다. 이 화자 벡터(420)는 사용자 음성의 특성들을 표시하는 표현을 제공한다. 이 화자 벡터는 성문으로 지칭될 수 있다. 성문은 사용자 음성의 특성들에 기초하여 화자의 신원을 고유하게 검증하는데 사용될 수 있다.
비교 모듈(440)은 화자 벡터(420) 및 레퍼런스 벡터(430)를 수신하도록 구성될 수 있다. 레퍼런스 벡터(430)는 디바이스에 의해 캡쳐된 이전의 사용자 발언으로부터, 예를 들어 디바이스로 사용자를 등록하는 동안 제공된 발언, 도출된 벡터일 수 있다. 예를 들어, 음성 인증을 사용하여 사용자 디바이스(210)를 잠금 해제하기 위해 사용자(402)가 시스템(400)을 사용하기 전에 어떤 시점에서, 사용자(402)는 "Ok Google"과 같은 구문을 한번, 또는 여러 번 발언할 수 있다. 사용자 디바이스(210)는 마이크로폰(211)을 사용하여 사용자의 발언들에 대응하는 오디오 신호들을 캡쳐하도록 구성될 수 있다. 사용자 디바이스(210)는 그 후 음성 인증을 사용하여 사용자 디바이스를(210)를 잠금 해제하기 위해 사용자(402)가 시스템(400)을 사용하기 이전의 어떤 시점에서 캡쳐된 발언된 구문들 중 적어도 하나에 대응하는 오디오 신호들로부터 레퍼런스 피쳐 벡터(430)를 도출할 수 있다. 레퍼런스 벡터(430)는 생성된 성문이 비교될 수 있는 사용자(402) 음성의 특성들의 베이스라인(baseline) 표현을 제공할 수 있다. 하나의 구현예에서, 레퍼런스 벡터(430)는 미리 결정된 핫워드의 사용자(402) 발언에 기초하여 생성될 수 있으며, 상기 핫워드는 음성 인증 동안 폰을 잠금 해제하기 위해 발언될 수 있다.
비교 모듈(440)은 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 유사성 정도를 결정할 수 있다. 하나의 구현예에서, 비교 모듈(440)은 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 유사도를 계산할 수 있다. 일부 경우들에서, 비교 모듈(440)은 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 유사도가 미리 결정된 임계치를 초과 하는지 여부를 결정할 수 있다. 유사도가 미리 결정된 임계치를 초과하는 경우들에서, 비교 모듈(440)은 유사도가 미리 결정된 임계치를 초과했었다는 것을 표시하는 출력 데이터를 검증 모듈(450)에 제공할 수 있다. 대안적으로, 비교 모듈(440)은 유사도가 미리 결정된 임계치를 초과하지 않는다고 결정할 수 있다. 그러한 경우들에서, 비교 모듈(440)은 유사도가 미리 결정된 임계치를 초과하지 않았었다는 것을 표시하는 출력 데이터를 검증 모듈(450)에 제공할 수 있다.
일부 구현예들에서, 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 유사도는 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 거리에 기초하여 계산될 수 있다. 비교 모듈(440)은 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 거리를 결정하도록 구성될 수 있다. 하나의 구현예에서, 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 거리는 예를 들어, 코사인 함수를 사용하여 결정될 수 있다. 코사인 함수는 두 벡터들 사이의 각도를 측정함으로써 화자 벡터(420)와 레퍼런스 벡터(430) 사이의 거리를 결정할 수 있다.
검증 모듈(450)은 검증 모듈(450)이 비교 모듈(440)로부터 수신한 출력 데이터를 수신하고 해석한다. 비교 모듈(440)로부터 수신된 출력 데이터에 기초하여, 검증 모듈은 화자 벡터(420)가 도출되었던 구문(410a)을 발언했던 사용자(402)가 이전에 레퍼런스 벡터(430)가 도출되었던 구문를 발언했던 사용자와 동일한 사용자인지 여부를 결정할 수 있다. 화자 벡터(420)가 도출되었던 구문(410a)을 발언했던 사용자(402)가 이전에 레퍼런스 벡터(430)가 도출되었던 구문를 발언했던 사용자와 동일한 사용자로 결정되면, 검증 모듈(450)은 사용자 디바이스(210) 상에서 실행중인 어플리케이션에게 사용자(402)에게 디바이스(420)에 대한 액세스를 제공하도록 명령할 수 있다. 선택적으로 또는 추가로, 화자 벡터(420)가 도출되었던 구문(410a)을 발언했던 사용자(402)가 이전에 레퍼런스 벡터(430)가 도출되었던 구문를 발언했던 사용자와 동일한 사용자로 결정되면, 검증 모듈(450)은 디바이스 상의 특정한 리소스에 대한 액세스를 제공하거나, 디바이스를 잠금 해제하거나, 저전력 상태로부터 디바이스를 깨우거나(wake up), 또는 그와 같은 것을 할 수 있다.
비교 모듈(440)로부터의 출력 데이터가 유사도가 미리 결정된 임계치를 초과한다는 것을 표시하면, 검증 모듈(450)은, 비교 모듈(440)로부터의 출력 데이터에 기초하여, 문구(410a)를 발언했던 사용자가 레퍼런스 벡터(430)가 도출된 문구를 발언했던 사용자와 동일하다고 결정할 수 있다. 그러한 경우들에서, 검증 모듈은 사용자 디바이스(210)를 사용하기 위해 사용자가 완전히 인증되고 권한이 부여되었다고 결정할 수 있다. 대안적으로, 검증 모듈(450)은 비교 모듈(440)로부터의 출력 데이터에 기초하여, 검증 모듈(450)이 구문(410a)를 발언했던 사용자(402)가 레퍼런스 벡터(430)를 발언했던 사용자와 동일하다고 결론 지을 수 없다고 결정할 수 있다. 이러한 경우들에서, 사용자(402)는 인증되지 않고 디바이스에 대한 액세스는 제공되지 않는다. 대신에, 시스템(400), 사용자 디바이스(210), 하나 이상의 다른 어플리케이션들, 또는 이들의 조합은 사용자 디바이스(210)에 액세스하기 위한 대안적인 옵션들을 제공할 수 있다. 예를 들어, 사용자 디바이스(210)는 비밀 패스코드를 입력하도록 사용자(402)에게 촉구할 수 있다.
사용자(402)가 인증되었을 때, 구문(410a)를 발언했던 사용자(402)가 레퍼런스 벡터(430)가 도출된 구문을 발언했던 사용자와 동일하다고 결정함으로써, 사용자 디바이스(210)는 잠금 해제하고 "화자의 신원이 검증됨"(460)을 표시하는 메시지를 사용자에게 출력할 수 있다. 이 메시지는 사용자 디바이스(210)의 그래픽 사용자 인터페이스 상에 디스플레이된 텍스트 메시지, 사용자 디바이스(210)의 스피커에 의해 출력된 오디오 메시지, 사용자 디바이스(210)의 그래픽 사용자 인터페이스 상에 디스플레이된 비디오 메시지, 또는 전술한 메시지들의 유형들 중 하나 이상의 조합일 수 있다.
도 5는 언어-독립적 화자 신원 검증을 수행하기 위한 프로세스(500)의 흐름도다. 편의상, 프로세스(500)는 시스템에 의해 수행되는 것으로 기술될 것이다. 예를 들어, 전술한 시스템(400)은 사용자 디바이스(210)에 액세스를 시도하는 사용자를 인증하도록 프로세스(500)를 수행할 수 있다.
프로세스(500)는 사용자 디바이스(210)가 디바이스의 사용자로부터 음성 인증을 수행하기 위한 요청을 수신할 때(510) 시작될 수 있다. 일부 구현예들에서, 사용자의 음성 인증을 시작하도록 폰에 명령하기 위해, 사용자는 사용자 디바이스 상의 버튼을 선택해야 하거나, 사용자 디바이스의 사용자 인터페이스 상에서 제스처를 수행해야 하거나, 사용자 디바이스의 카메라의 시야에 있는 공중에서 제스처를 수행해야 하거나, 또는 그와 같은 것을 수행해야 한다. 그러한 경우들에서, 음성 인증을 개시하라는 명령이 수신된 후, 사용자는 사용자의 신원을 검증하는데 사용될 수 있는 임의의 언어 또는 방언의 미리 결정된 핫워드를 발언할 수 있다. 선택적으로 또는 추가로, 사용자 디바이스(210)는 사용자의 음성 인증을 개시하는데 사용될 수 있는 임의의 언어 또는 방언의 미리 결정되고 발언된 핫워드의 탐지를 수동적으로 "청취"하기 위해 마이크로폰을 사용할 수 있다. 미리 결정된 핫워드는, 예를 들어, “Hello Phone,"“Ok Google,"
Figure 112018033230307-pct00005
또는 그와 같은 것을 포함할 수 있다. 일부 구현예들에서, 특정한 위치 내의 모든 사용자들 또는 특정한 언어를 발화하는 모든 사용자들에 대한 단일 고정 핫워드가 있다.
프로세스는 시스템(400)이 사용자 디바이스(210)의 사용자에 의해 입력된 발언을 획득할 때 (520)에서 계속될 수 있다. 발언은 예를 들어, 사용자의 음성 인증을 개시하는데 사용될 수 있는 임의의 언어 또는 방언의 미리 결정된 핫워드를 포함할 수 있다. 시스템(400)은 획득된 발언에 대응하는 오디오 신호들로부터 음향 피쳐 벡터를 도출할 수 있다.
시스템(400)은 사용자 디바이스(210)와 연관된 언어 식별자를 결정(530)할 수 있다. 언어 식별자는 사용자와 연관된 특정한 언어 또는 방언을 식별하는 데이터를 포함할 수 있다. 하나의 구현예에서, 언어 식별자는 1-핫 언어 벡터를 포함할 수 있다. 임의의 특정한 사용자 디바이스(210)에 저장된 언어 식별자는 예를 들어 상술한 바와 같이, 여러가지 상이한 방식들로 알려진 언어들 및 방언들에 대응하는 다수의 상이한 언어 식별자들의 풀(pool)로부터 특정한 언어 식별자로 셋팅될 수 있다. 그러나, 본 명세서의 발명은 현재 알고 있는 언어들 또는 방언들로만 제한되지 않는다. 예를 들어, 화자 검증 모델은 새로운 언어들, 방언들, 또는 억양들을 수용할 수 있도록 트레이닝될 수 있다. 화자 검증 모델이 다시 트레이닝되면, 예를 들어, 새로운 위치들 또는 언어들을 추가하도록 언어들 또는 위치들과 식별자들 사이의 매핑들이 조정될 수 있다.
시스템(400)은 음향 피쳐 벡터 및 언어 식별자에 기초하여 화자 검증 모델에 입력 데이터를 제공(540)할 수 있다. 입력은 여러가지 상이한 방식들로 화자 검증 모델에 제공될 수 있다. 예를 들어, 음향 피쳐 벡터 및 1-핫 언어 벡터와 같은 언어 식별자가 연결될 수 있다. 이러한 경우들에서, 연결된 벡터는 화자 검증 모델에 대한 입력으로서 제공될 수 있다. 대안적으로, 시스템(400)은 음향 피쳐 벡터, 1-핫 언어 벡터와 같은 언어 식별자, 또는 음향 피쳐 벡터 및 언어 식별자 둘 모두의 각각의 신경 네트워크의 프로세싱에 기초하여 각각 출력들을 생성한 적어도 두개의 다른 신경 네트워크들의 출력들을 연결시킬 수 있다. 그러한 경우들에서, 둘 이상의 다른 신경 네트워크들의 연결된 출력이 스피치 검증 모델에 제공될 수 있다. 대안적으로, 시스템(400)은 음향 피쳐 벡터 및 언어 식별자로 사용되고 있는 1-핫 언어 벡터의 가중된 합에 기초하여 입력 벡터를 생성할 수 있다. 음향 피쳐 벡터 및 언어 식별자에 기초하여 스피치 검증 모델(280)에 대한 입력 데이터를 생성하는 다른 방법들이 사용될 수 있다.
시스템(400)은 (540)에서 제공된 입력에 기초하여 화자 표현을 생성할 수 있다. 예를 들어, 화자 검증 모델은 (540)에서 제공된 입력을 프로세스하고 하나 이상의 숨겨진 레이어들에서 활성화들의 세트를 생성하는 신경 네트워크를 포함할 수 있다. 화자 표현은 그 후 신경 네트워크의 적어도 하나의 숨겨진 레이어로부터 획득된 특정한 활성화들의 세트로부터 도출될 수 있다. 하나의 구현예에서, 활성화들은 신경 네트워크의 마지막 숨겨진 레이어로부터 획득될 수 있다. 화자 표현은 사용자의 음성의 특성들을 표시하는 피쳐 벡터를 포함할 수 있다.
(560)에서, 시스템(400)은 단계(520)에서 획득된 발언의 화자가 사용자 디바이스(210)에 액세스할 수 있는지 여부를 결정할 수 있다. 이러한 결정은 예를 들어, 화자 표현과 레퍼런스 표현의 비교에 기초할 수 있다. 상기 레퍼런스는 사용자가 음성 인증을 사용하여 사용자 디바이스에 액세스하기를 요청하기 이전의 어떤 시점에서 사용자 디바이스(210)에 입력되었던 사용자 발언으로부터 도출되었던 피쳐 벡터일 수 있다. 화자 표현과 레퍼런스 표현의 비교는 화자 표현과 레퍼런스 표현 사이의 유사성을 나타내는 유사도를 결정하도록 한다. 유사도는 화자 표현과 레퍼런스 표현 사이의 거리를 포함할 수 있다. 하나의 구현예에서, 상기 거리는 코사인 함수를 사용하여 계산될 수 있다. 유사도가 미리 결정된 임계치를 초과하는 것으로 결정되면, 시스템(400)은 사용자 디바이스(210)에 대한 액세스를 사용자에게 제공(570) 하는 것을 결정할 수 있다.
본 명세서에서 기술된 발명의 실시예들, 기능 동작들 및 프로세스들은 디지털 전자 회로, 실체적으로 구현된 컴퓨터 소프트웨어 또는 펌웨어, 컴퓨터 하드웨어로 구현될 수 있으며, 상기 컴퓨터 하드웨어는 본 명세서에 개시된 구조들 및 그들의 구조적 등가물들, 또는 그들 중 하나 이상의 조합들을 포함한다. 본 명세서에서 기술된 발명의 실시예들은 하나 이상의 컴퓨터 프로그램, 즉 데이터 프로세싱 장치에 의해 실행되거나 또는 데이터 프로세싱 장치의 동작을 제어하도록 유형의 비휘발성 프로그램 캐리어 상에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들로 구현될 수 있다. 선택적으로 또는 추가로, 프로그램 명령어들은 예를 들어, 데이터 프로세싱 장치에 의한 실행에 적합한 수신기 장치로의 전송을 위한 정보를 인코딩하도록 생성된 기계-생성 전기, 광학, 또는 전자기 신호 같은, 인위적으로 생성되고 전파된 신호이다. 컴퓨터 저장 매체는 기계 판독가능 저장 디바이스, 기계 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 그들 중 하나 이상의 조합일 수 있다.
"데이터 처리 장치"라는 용어는 데이터 프로세싱을 위한 모든 종류의 장치들, 디바이스들 및 기계들 예를 들어, 프로그램 가능한 프로세서, 컴퓨터, 또는 다수의 프로세서들 또는 컴퓨터들을 포함한다. 상기 장치는 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)을 포함할 수 있다. 상기 장치는 하드웨어 이외에, 문제의 컴퓨터 프로그램을 위한 실행 환경을 제작하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 그들 중 하나 이상의 조합을 구성하는 코드를 또한 포함할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 모듈, 소프트웨어 모듈, 스크립트, 또는 코드로 또한 지칭되거나 기술될 수 있음)은 컴파일된 또는 해석된 언어들, 또는 선언적 또는 절차적 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 상기 컴퓨터 프로그램은 독립형 프로그램 또는 모듈, 컴포넌트, 서브루틴, 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛을 포함하여, 임의의 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내의 파일에 대응할 수 있지만, 반드시 그런 것은 아니다. 프로그램은 다른 프로그램들 또는 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트들)를 보유한 파일의 일부분, 문제의 프로그램 전용 단일 파일, 또는 다수의 조정된 파일들(예를 들어, 하나 이상의 모듈들, 하위 프로그램들, 또는 코드의 일부들을 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 사이트에 있거나 여러 사이트에 걸쳐서 분산되어 있고 통신 네트워크로 상호접속된 다수의 컴퓨터들에서 실행되도록 배치될 수 있다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 조작하고 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그램 가능한 컴퓨터들에 의해 수행될 수 있다. 상기 프로세스들 및 논리 흐름들은 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)과 같은 특수 목적 논리 회로에 의해 또한 수행될 수 있고, 장치는 특수 목적 논리 회로로 또한 구현될 수 있다.
컴퓨터 프로그램의 실행에 적합한 컴퓨터들은 예를 들어, 범용 또는 전용 목적 마이크로프로세서들, 또는 둘 모두, 또는 임의의 다른 종류의 중앙 프로세싱 유닛에 기초할 수 있다. 일반적으로, 중앙 프로세싱 유닛은 읽기-전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들을 수행하거나 실행하기 위한 중앙 프로세싱 유닛 및 명령어들과 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 일반적으로, 컴퓨터는 데이터(예를 들어, 자기, 광 자기 디스크 또는 광학 디스크)를 저장하기 위한 하나 이상의 대용량 저장 장치로부터 데이터를 수신하거나 하나 이상의 대용량 저장 장치로 데이터를 전송, 또는 둘 모두를 하기 위해 동작 가능하게 결합될 것이다. 그러나, 컴퓨터는 그러한 디바이스들을 가질 필요가 없다. 게다가, 컴퓨터는 다른 디바이스, 몇 가지 예를 들자면, 모바일 전화기, 개인 휴대 정도 단말기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, 위성 위치 확인 시스템(GPS) 수신기, 또는 휴대용 저장 디바이스에 내장될 수 있다(예를 들어, 범용 직렬 버스(USB) 플래시 드라이브).
컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독 가능 매체는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스들을 포함하며, 상기 디바이스들은 반도체 메모리 디바이스들, 예를 들어, EPROM, EEPROM, 및 플래시 메모리 디바이스; 자기 디스크들, 예를 들어, 내부 하드 디스크들 또는 이동식 디스크들; 광 자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 또는 그 안에 포함될 수 있다.
사용자와의 인터랙션을 제공하기 위해, 본 명세서에 기술된 발명의 실시예들은 예를 들면, CRT(cathode ray tube) 또는 LCD(liquid crystal display)모니터와 같은 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스 및 키보드 및 예를 들면, 사용자가 컴퓨터에 입력을 제공할 수 있는 마우스 또는 트랙볼과 같은 포인팅 디바이스를 갖는 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 인터랙션을 제공하는데 또한 사용될 수 있다; 예를 들어, 사용자에게 제공되는 피드백은 시각 피드백, 청각 피드백, 또는 촉각 피드백과 같은 감각 피드백일 수 있다; 그리고 사용자로부터의 입력은 음향, 스피치, 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 컴퓨터는 사용자에 의해 사용되는 디바이스와 문서들을 전송하고 상기 디바이스로부터 문서들을 수신함으로써 예를 들어, 웹 브라우저로부터 수신된 요청들에 응답하여 사용자 디바이스 상의 웹 브라우저에 웹 페이지들을 전송함으로써, 사용자와 인터랙팅할 수 있다.
본 명세서에 기술된 발명의 실시예들은 컴퓨팅 시스템에서 구현될 수 있으며, 상기 컴퓨팅 시스템은 백 엔드 컴포넌트, 예를 들어, 데이터 서버를 포함하거나, 또는 미들웨어 컴포넌트, 예를 들어, 어플리케이션 서버를 포함하거나, 또는 프런트 엔드 컴포넌트, 예를 들어, 그래픽 사용자 인터페이스 또는 사용자가 본 명세서에 기술된 발명의 구현과 인터랙팅할 수 있는 웹 브라우저를 가진 클라이언트 컴퓨터, 또는 그러한 백 엔드, 미들웨어 또는 프런트 엔드 컴포넌트들의 하나 이상의 임의의 조합을 포함한다. 시스템의 컴포넌트들은 예를 들어, 통신 네트워크와 같은 디지털 데이터 통신의 매체 또는 임의의 형태에 의해 상호접속될 수 있다. 통신 네트워크들의 예시들은 근거리 통신망("LAN") 및 광역 통신망("WAN"), 예를 들어, 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며 전형적으로 통신 네트워크를 통해 인터랙팅 한다. 클라이언트와 서버의 관계는 각각의 컴퓨들 상에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들에 의해서 발생한다.
본 명세서는 많은 특정 구현 세부사항들을 포함하지만, 이들이 청구될 수 있는 범위에 대한 제한들로 해석되어서는 안되며, 오히려 특정한 실시예들에서 특정될 수 있는 구성들의 기술들로 해석되어야 한다. 별도 실시예들의 상황 속에서 본 명세서에 기술된 일정 피쳐들은 또한 단일 실시예 내의 조합으로 구현될 수 있다. 반대로, 단일 실시예의 상황 속에서 기술된 다양한 피쳐들은 다수의 실시예들에서 개별적으로 구현되거나 또는 임의의 적합한 하위조합으로 구현될 수 있다. 추가로, 구성들은 일정 조합들로 동작하는 것으로서 상기 기술되었고 심지어 초기적으로는 그와 같이 청구되었지만, 청구된 조합으로부터의 하나 이상의 구성들은 일부 경우들에서는 상기 조합으로부터 제거될 수 있고, 청구된 조합은 하위조합 또는 하위조합의 변형으로 유도될 수 있다.
유사하게, 동작들이 특정한 순서로 도면들에 도시되어 있지만, 바람직한 결과들을 달성하기 위해, 그러한 동작들이 도시된 특정한 순서 또는 순차적 순서로 수행되거나, 또는 도시된 모든 동작들이 수행될 것을 요구하는 것으로 이해되어서는 안된다. 일정 상황들에서는, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술된 실시예들에서 다양한 시스템 컴포넌트들의 분리는 모든 실시예들에서 그러한 분리를 요구하는 것으로 이해되어서는 안된다. 상기 기술된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품에 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것을 이해하여야 한다.
발명의 특정한 실시예가 기술되었다. 다른 실시예들은 다음의 청구항들의 범위 내에 있다. 예를 들어, 청구 범위에 열거된 액션들은 상이한 순서로 수행될 수 있으며 여전히 바람직한 결과들을 달성한다. 하나의 예시로서, 첨부된 도면에 도시된 프로세스들은 바람직한 결과들을 달성하기 위해 반드시 도시된 특정한 순서, 또는 순차적 순서를 요구하지 않는다. 일정 구현예들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 상기 기술된 프로세스들로부터, 다른 스텝들 또는 단계들이 제공되거나, 스텝들 또는 단계들이 제거될 수 있다. 따라서, 다른 구현예들은 다음의 청구항들의 범위 내에 있다.

Claims (20)

  1. 화자 검증을 위한 시스템으로서,
    하나 이상의 컴퓨터들 및 동작가능한 명령어들을 저장하는 하나 이상의 저장 디바이스들을 포함하며, 상기 명령어들은 하나 이상의 컴퓨터들에 의해 실행시, 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
    사용자 디바이스에 의해, 사용자의 발언을 표현하는 오디오 데이터를 수신하는 동작;
    상기 사용자 디바이스에 저장된 신경 네트워크에, 상기 오디오 데이터와 상기 사용자 디바이스와 연관된 언어 식별자 또는 위치 식별자로부터 도출된 입력 데이터의 세트를 제공하는 동작, 상기 신경 네트워크는 상이한 언어들 또는 상이한 방언들의 스피치(speech)를 표현하는 스피치 데이터를 사용하여 트레이닝된 파라미터들을 가지며;
    상기 입력 데이터의 세트를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 음성(voice)의 특성들을 표시하는 화자 표현을 생성하는 동작;
    상기 화자 표현 및 제2 표현에 기초하여, 상기 발언이 상기 사용자의 발언임을 결정하는 동작; 및
    상기 발언이 상기 사용자의 발언임을 결정하는 것에 기초하여, 상기 사용자 디바이스에 사용자 액세스를 제공하는 동작을 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  2. 청구항 1에 있어서, 상기 오디오 데이터 및 상기 결정된 언어 식별자로부터 도출된 입력 데이터의 상기 세트는 상기 오디오 데이터로부터 도출된 제1 벡터 및 상기 사용자 디바이스와 연관된 언어 식별자로부터 도출된 제2 벡터를 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  3. 청구항 2에 있어서,
    상기 제1 벡터 및 상기 제2 벡터를 단일 연결 벡터로 연결함으로써 입력 벡터를 생성하는 동작;
    상기 생성된 입력 벡터를 신경 네트워크에 제공하는 동작; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 동작을 더 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  4. 청구항 2에 있어서,
    (i) 상기 제1 벡터, (ii) 상기 제2 벡터, 또는 (iii) 상기 제1 벡터 및 상기 제2 벡터 둘 모두에 기초하여 출력들을 각각 생성하는 적어도 두 개의 다른 신경 네트워크들의 상기 출력들을 연결함으로써 입력 벡터를 생성하는 동작;
    상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 동작; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 동작을 더 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  5. 청구항 2에 있어서,
    상기 제1 벡터와 상기 제2 벡터의 가중 합에 기초하여 입력 벡터를 생성하는 동작;
    상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 동작; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생산된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 동작을 더 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서,
    입력 데이터의 상기 세트를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 상기 출력은 상기 신경 네트워크의 숨겨진 레이어(hidden layer)에 의해 생성된 활성화(activation)들의 세트를 포함하는 것을 특징으로 하는 화자 검증을 위한 시스템.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 화자 검증을 위한 방법으로서,
    사용자 디바이스에 의해, 사용자의 발언을 표현하는 오디오 데이터를 수신하는 단계;
    상기 사용자 디바이스에 저장된 신경 네트워크에, 상기 오디오 데이터와 상기 사용자 디바이스와 연관된 언어 식별자 또는 위치 식별자로부터 도출된 입력 데이터의 세트를 제공하는 단계, 상기 신경 네트워크는 상이한 언어들 또는 상이한 방언들의 스피치(speech)를 표현하는 스피치 데이터를 사용하여 트레이닝된 파라미터들을 가지며;
    입력 데이터의 상기 세트를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 음성(voice)의 특성들을 표시하는 화자 표현을 생성하는 단계;
    상기 화자 표현 및 제2 표현에 기초하여, 상기 발언이 상기 사용자의 발언임을 결정하는 단계; 및
    상기 발언이 상기 사용자의 발언임을 결정하는 것에 기초하여, 상기 사용자 디바이스에 사용자 액세스를 제공하는 단계를 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  14. 청구항 13에 있어서, 상기 오디오 데이터 및 상기 결정된 언어 식별자로부터 도출된 입력 데이터의 상기 세트는 상기 오디오 데이터로부터 도출된 제1 벡터 및 상기 사용자 디바이스와 연관된 언어 식별자로부터 도출된 제2 벡터를 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  15. 청구항 14에 있어서,
    상기 제1 벡터 및 상기 제2 벡터를 단일 연결 벡터로 연결함으로써 입력 벡터를 생성하는 단계;
    상기 생성된 입력 벡터를 신경 네트워크에 제공하는 단계; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 단계를 더 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  16. 청구항 14에 있어서,
    (i) 상기 제1 벡터, (ii) 상기 제2 벡터, 또는 (iii) 상기 제1 벡터 및 상기 제2 벡터 둘 모두에 기초하여 출력들을 각각 생성하는 적어도 두 개의 다른 신경 네트워크들의 상기 출력들을 연결함으로써 입력 벡터를 생성하는 단계;
    상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 단계; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 단계를 더 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  17. 청구항 14에 있어서,
    상기 제1 벡터와 상기 제2 벡터의 가중 합에 기초하여 입력 벡터를 생성하는 단계;
    상기 생성된 입력 벡터를 상기 신경 네트워크에 제공하는 단계; 및
    상기 입력 벡터를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 출력에 기초하여, 상기 사용자의 상기 음성의 특성들을 표시하는 화자 표현을 생성하는 단계 더 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  18. 청구항 13에 있어서,
    입력 데이터의 상기 세트를 수신하는 것에 응답하여 생성된 상기 신경 네트워크의 상기 출력은 상기 신경 네트워크의 숨겨진 레이어에 의해 생성된 활성화들의 세트를 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  19. 청구항 13에 있어서, 상기 화자 표현 및 제2 표현에 기초하여, 상기 발언이 상기 사용자의 발언임을 결정하는 단계는:
    제1 표현과 상기 제2 표현 사이의 거리를 결정하는 단계를 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
  20. 청구항 13 내지 청구항 19 중 어느 한 항에 있어서, 상기 발언이 상기 사용자의 발언임을 결정하는 것에 기초하여 상기 사용자 디바이스에 상기 사용자 액세스를 제공하는 단계는 상기 사용자 디바이스를 잠금 해제하는 단계를 포함하는 것을 특징으로 하는 화자 검증을 위한 방법.
KR1020187009479A 2016-07-15 2017-07-06 화자 검증 KR102109874B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/211,317 US20180018973A1 (en) 2016-07-15 2016-07-15 Speaker verification
US15/211,317 2016-07-15
PCT/US2017/040906 WO2018013401A1 (en) 2016-07-15 2017-07-06 Speaker verification

Publications (2)

Publication Number Publication Date
KR20180050365A KR20180050365A (ko) 2018-05-14
KR102109874B1 true KR102109874B1 (ko) 2020-05-12

Family

ID=59366524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009479A KR102109874B1 (ko) 2016-07-15 2017-07-06 화자 검증

Country Status (7)

Country Link
US (4) US20180018973A1 (ko)
EP (2) EP3373294B1 (ko)
JP (1) JP6561219B1 (ko)
KR (1) KR102109874B1 (ko)
CN (1) CN108140386B (ko)
RU (1) RU2697736C1 (ko)
WO (1) WO2018013401A1 (ko)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
BR112015018905B1 (pt) 2013-02-07 2022-02-22 Apple Inc Método de operação de recurso de ativação por voz, mídia de armazenamento legível por computador e dispositivo eletrônico
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US11676608B2 (en) * 2021-04-02 2023-06-13 Google Llc Speaker verification using co-location information
CN106469040B (zh) * 2015-08-19 2019-06-21 华为终端有限公司 通信方法、服务器及设备
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US20180018973A1 (en) 2016-07-15 2018-01-18 Google Inc. Speaker verification
CN106251859B (zh) * 2016-07-22 2019-05-31 百度在线网络技术(北京)有限公司 语音识别处理方法和装置
CN111971742A (zh) * 2016-11-10 2020-11-20 赛轮思软件技术(北京)有限公司 与语言无关的唤醒词检测的技术
US11276395B1 (en) * 2017-03-10 2022-03-15 Amazon Technologies, Inc. Voice-based parameter assignment for voice-capturing devices
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
AU2017425736A1 (en) * 2017-07-31 2020-01-23 Beijing Didi Infinity Technology And Development Co., Ltd. System and method for language-based service hailing
US11817103B2 (en) * 2017-09-15 2023-11-14 Nec Corporation Pattern recognition apparatus, pattern recognition method, and storage medium
CN108305615B (zh) * 2017-10-23 2020-06-16 腾讯科技(深圳)有限公司 一种对象识别方法及其设备、存储介质、终端
US10916252B2 (en) 2017-11-10 2021-02-09 Nvidia Corporation Accelerated data transfer for latency reduction and real-time processing
KR102486395B1 (ko) * 2017-11-23 2023-01-10 삼성전자주식회사 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법
US10593321B2 (en) * 2017-12-15 2020-03-17 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for multi-lingual end-to-end speech recognition
US10783873B1 (en) * 2017-12-15 2020-09-22 Educational Testing Service Native language identification with time delay deep neural networks trained separately on native and non-native english corpora
CN111630934B (zh) * 2018-01-22 2023-10-13 诺基亚技术有限公司 隐私保护的声纹认证装置和方法
CN108597525B (zh) * 2018-04-25 2019-05-03 四川远鉴科技有限公司 语音声纹建模方法及装置
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11152006B2 (en) * 2018-05-07 2021-10-19 Microsoft Technology Licensing, Llc Voice identification enrollment
GB2573809B (en) 2018-05-18 2020-11-04 Emotech Ltd Speaker Recognition
JP6980603B2 (ja) * 2018-06-21 2021-12-15 株式会社東芝 話者モデル作成システム、認識システム、プログラムおよび制御装置
US10991379B2 (en) * 2018-06-22 2021-04-27 Babblelabs Llc Data driven audio enhancement
CN110634489B (zh) * 2018-06-25 2022-01-14 科大讯飞股份有限公司 一种声纹确认方法、装置、设备及可读存储介质
KR20200011796A (ko) * 2018-07-25 2020-02-04 엘지전자 주식회사 음성 인식 시스템
CN110874875B (zh) * 2018-08-13 2021-01-29 珠海格力电器股份有限公司 门锁控制方法及装置
US10978059B2 (en) * 2018-09-25 2021-04-13 Google Llc Speaker diarization using speaker embedding(s) and trained generative model
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
CN110289003B (zh) 2018-10-10 2021-10-29 腾讯科技(深圳)有限公司 一种声纹识别的方法、模型训练的方法以及服务器
KR102623246B1 (ko) * 2018-10-12 2024-01-11 삼성전자주식회사 전자 장치, 전자 장치의 제어 방법 및 컴퓨터 판독 가능 매체.
US11144542B2 (en) * 2018-11-01 2021-10-12 Visa International Service Association Natural language processing system
US11031017B2 (en) * 2019-01-08 2021-06-08 Google Llc Fully supervised speaker diarization
TW202029181A (zh) * 2019-01-28 2020-08-01 正崴精密工業股份有限公司 語音識別用於特定目標喚醒的方法及裝置
US10978069B1 (en) * 2019-03-18 2021-04-13 Amazon Technologies, Inc. Word selection for natural language interface
US11948582B2 (en) * 2019-03-25 2024-04-02 Omilia Natural Language Solutions Ltd. Systems and methods for speaker verification
WO2020223122A1 (en) * 2019-04-30 2020-11-05 Walmart Apollo, Llc Systems and methods for processing retail facility-related information requests of retail facility workers
US11132992B2 (en) 2019-05-05 2021-09-28 Microsoft Technology Licensing, Llc On-device custom wake word detection
US11222622B2 (en) 2019-05-05 2022-01-11 Microsoft Technology Licensing, Llc Wake word selection assistance architectures and methods
US11158305B2 (en) * 2019-05-05 2021-10-26 Microsoft Technology Licensing, Llc Online verification of custom wake word
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11031013B1 (en) 2019-06-17 2021-06-08 Express Scripts Strategic Development, Inc. Task completion based on speech analysis
CN110400562B (zh) * 2019-06-24 2022-03-22 歌尔科技有限公司 交互处理方法、装置、设备及音频设备
CN110415679B (zh) * 2019-07-25 2021-12-17 北京百度网讯科技有限公司 语音纠错方法、装置、设备和存储介质
CN110379433B (zh) * 2019-08-02 2021-10-08 清华大学 身份验证的方法、装置、计算机设备及存储介质
US11238847B2 (en) 2019-12-04 2022-02-01 Google Llc Speaker awareness using speaker dependent speech model(s)
RU2723902C1 (ru) * 2020-02-15 2020-06-18 Илья Владимирович Редкокашин Способ верификации голосовых биометрических данных
JP7388239B2 (ja) * 2020-02-21 2023-11-29 日本電信電話株式会社 照合装置、照合方法、および、照合プログラム
CN111370003B (zh) * 2020-02-27 2023-05-30 杭州雄迈集成电路技术股份有限公司 一种基于孪生神经网络的声纹比对方法
US11443748B2 (en) * 2020-03-03 2022-09-13 International Business Machines Corporation Metric learning of speaker diarization
US11651767B2 (en) 2020-03-03 2023-05-16 International Business Machines Corporation Metric learning of speaker diarization
US20210287681A1 (en) * 2020-03-16 2021-09-16 Fidelity Information Services, Llc Systems and methods for contactless authentication using voice recognition
JPWO2021187146A1 (ko) * 2020-03-16 2021-09-23
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11508380B2 (en) * 2020-05-26 2022-11-22 Apple Inc. Personalized voices for text messaging
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
KR102277422B1 (ko) * 2020-07-24 2021-07-19 이종엽 음성 단말기의 음성 검증 및 제한 방법
US11676572B2 (en) * 2021-03-03 2023-06-13 Google Llc Instantaneous learning in text-to-speech during dialog
US11776550B2 (en) * 2021-03-09 2023-10-03 Qualcomm Incorporated Device operation based on dynamic classifier
US11798562B2 (en) * 2021-05-16 2023-10-24 Google Llc Attentive scoring function for speaker identification
US20230137652A1 (en) * 2021-11-01 2023-05-04 Pindrop Security, Inc. Cross-lingual speaker recognition

Family Cites Families (160)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4799262A (en) 1985-06-27 1989-01-17 Kurzweil Applied Intelligence, Inc. Speech recognition
US4868867A (en) 1987-04-06 1989-09-19 Voicecraft Inc. Vector excitation speech or audio coder for transmission or storage
JP2733955B2 (ja) 1988-05-18 1998-03-30 日本電気株式会社 適応型音声認識装置
US5465318A (en) 1991-03-28 1995-11-07 Kurzweil Applied Intelligence, Inc. Method for generating a speech recognition model for a non-vocabulary utterance
JP2979711B2 (ja) 1991-04-24 1999-11-15 日本電気株式会社 パターン認識方式および標準パターン学習方式
US5680508A (en) 1991-05-03 1997-10-21 Itt Corporation Enhancement of speech coding in background noise for low-rate speech coder
EP0576765A1 (en) 1992-06-30 1994-01-05 International Business Machines Corporation Method for coding digital data using vector quantizing techniques and device for implementing said method
US5636325A (en) 1992-11-13 1997-06-03 International Business Machines Corporation Speech synthesis and analysis of dialects
US5627939A (en) 1993-09-03 1997-05-06 Microsoft Corporation Speech recognition system and method employing data compression
US5689616A (en) * 1993-11-19 1997-11-18 Itt Corporation Automatic language identification/verification system
US5509103A (en) 1994-06-03 1996-04-16 Motorola, Inc. Method of training neural networks used for speech recognition
US5542006A (en) 1994-06-21 1996-07-30 Eastman Kodak Company Neural network based character position detector for use in optical character recognition
US5729656A (en) 1994-11-30 1998-03-17 International Business Machines Corporation Reduction of search space in speech recognition using phone boundaries and phone ranking
US5839103A (en) * 1995-06-07 1998-11-17 Rutgers, The State University Of New Jersey Speaker verification system using decision fusion logic
US6067517A (en) 1996-02-02 2000-05-23 International Business Machines Corporation Transcription of speech data with segments from acoustically dissimilar environments
US5729694A (en) 1996-02-06 1998-03-17 The Regents Of The University Of California Speech coding, reconstruction and recognition using acoustics and electromagnetic waves
US5745872A (en) 1996-05-07 1998-04-28 Texas Instruments Incorporated Method and system for compensating speech signals using vector quantization codebook adaptation
US6038528A (en) 1996-07-17 2000-03-14 T-Netix, Inc. Robust speech processing with affine transform replicated data
EP0954854A4 (en) * 1996-11-22 2000-07-19 T Netix Inc PARTIAL VALUE-BASED SPEAKER VERIFICATION BY UNIFYING DIFFERENT CLASSIFIERS USING CHANNEL, ASSOCIATION, MODEL AND THRESHOLD ADAPTATION
US6260013B1 (en) 1997-03-14 2001-07-10 Lernout & Hauspie Speech Products N.V. Speech recognition system employing discriminatively trained models
KR100238189B1 (ko) 1997-10-16 2000-01-15 윤종용 다중 언어 tts장치 및 다중 언어 tts 처리 방법
WO1999023643A1 (en) * 1997-11-03 1999-05-14 T-Netix, Inc. Model adaptation system and method for speaker verification
US6188982B1 (en) 1997-12-01 2001-02-13 Industrial Technology Research Institute On-line background noise adaptation of parallel model combination HMM with discriminative learning using weighted HMM for noisy speech recognition
US6397179B2 (en) 1997-12-24 2002-05-28 Nortel Networks Limited Search optimization system and method for continuous speech recognition
US6381569B1 (en) 1998-02-04 2002-04-30 Qualcomm Incorporated Noise-compensated speech recognition templates
US6434520B1 (en) 1999-04-16 2002-08-13 International Business Machines Corporation System and method for indexing and querying audio archives
US6665644B1 (en) 1999-08-10 2003-12-16 International Business Machines Corporation Conversational data mining
GB9927528D0 (en) 1999-11-23 2000-01-19 Ibm Automatic language identification
DE10018134A1 (de) 2000-04-12 2001-10-18 Siemens Ag Verfahren und Vorrichtung zum Bestimmen prosodischer Markierungen
US6631348B1 (en) 2000-08-08 2003-10-07 Intel Corporation Dynamic speech recognition pattern switching for enhanced speech recognition accuracy
DE10047172C1 (de) 2000-09-22 2001-11-29 Siemens Ag Verfahren zur Sprachverarbeitung
US6876966B1 (en) 2000-10-16 2005-04-05 Microsoft Corporation Pattern recognition training method and apparatus using inserted noise followed by noise reduction
JP4244514B2 (ja) 2000-10-23 2009-03-25 セイコーエプソン株式会社 音声認識方法および音声認識装置
US7280969B2 (en) 2000-12-07 2007-10-09 International Business Machines Corporation Method and apparatus for producing natural sounding pitch contours in a speech synthesizer
GB2370401A (en) 2000-12-19 2002-06-26 Nokia Mobile Phones Ltd Speech recognition
US7062442B2 (en) 2001-02-23 2006-06-13 Popcatcher Ab Method and arrangement for search and recording of media signals
GB2375673A (en) 2001-05-14 2002-11-20 Salgen Systems Ltd Image compression method using a table of hash values corresponding to motion vectors
GB2375935A (en) 2001-05-22 2002-11-27 Motorola Inc Speech quality indication
GB0113581D0 (en) 2001-06-04 2001-07-25 Hewlett Packard Co Speech synthesis apparatus
US7668718B2 (en) 2001-07-17 2010-02-23 Custom Speech Usa, Inc. Synchronized pattern recognition source data processed by manual or automatic means for creation of shared speaker-dependent speech user profile
US20030033143A1 (en) 2001-08-13 2003-02-13 Hagai Aronowitz Decreasing noise sensitivity in speech processing under adverse conditions
US7571095B2 (en) 2001-08-15 2009-08-04 Sri International Method and apparatus for recognizing speech in a noisy environment
US7043431B2 (en) 2001-08-31 2006-05-09 Nokia Corporation Multilingual speech recognition system using text derived recognition models
US6950796B2 (en) 2001-11-05 2005-09-27 Motorola, Inc. Speech recognition by dynamical noise model adaptation
WO2004003887A2 (en) 2002-06-28 2004-01-08 Conceptual Speech, Llc Multi-phoneme streamer and knowledge representation speech recognition system and method
US20040024582A1 (en) 2002-07-03 2004-02-05 Scott Shepard Systems and methods for aiding human translation
US6756821B2 (en) * 2002-07-23 2004-06-29 Broadcom High speed differential signaling logic gate and applications thereof
JP4352790B2 (ja) 2002-10-31 2009-10-28 セイコーエプソン株式会社 音響モデル作成方法および音声認識装置ならびに音声認識装置を有する乗り物
US7593842B2 (en) 2002-12-10 2009-09-22 Leslie Rousseau Device and method for translating language
US20040111272A1 (en) 2002-12-10 2004-06-10 International Business Machines Corporation Multimodal speech-to-speech language translation and display
KR100486735B1 (ko) 2003-02-28 2005-05-03 삼성전자주식회사 최적구획 분류신경망 구성방법과 최적구획 분류신경망을이용한 자동 레이블링방법 및 장치
US7571097B2 (en) 2003-03-13 2009-08-04 Microsoft Corporation Method for training of subspace coded gaussian models
US8849185B2 (en) 2003-04-15 2014-09-30 Ipventure, Inc. Hybrid audio delivery system and method therefor
US7275032B2 (en) 2003-04-25 2007-09-25 Bvoice Corporation Telephone call handling center where operators utilize synthesized voices generated or modified to exhibit or omit prescribed speech characteristics
JP2004325897A (ja) 2003-04-25 2004-11-18 Pioneer Electronic Corp 音声認識装置及び音声認識方法
US7499857B2 (en) 2003-05-15 2009-03-03 Microsoft Corporation Adaptation of compressed acoustic models
US20040260550A1 (en) 2003-06-20 2004-12-23 Burges Chris J.C. Audio processing system and method for classifying speakers in audio data
JP4548646B2 (ja) 2003-09-12 2010-09-22 株式会社エヌ・ティ・ティ・ドコモ 音声モデルの雑音適応化システム、雑音適応化方法、及び、音声認識雑音適応化プログラム
US20050144003A1 (en) 2003-12-08 2005-06-30 Nokia Corporation Multi-lingual speech synthesis
FR2865846A1 (fr) 2004-02-02 2005-08-05 France Telecom Systeme de synthese vocale
FR2867598B1 (fr) 2004-03-12 2006-05-26 Thales Sa Procede d'identification automatique de langues, en temps reel, dans un signal audio et dispositif de mise en oeuvre
US20050228673A1 (en) 2004-03-30 2005-10-13 Nefian Ara V Techniques for separating and evaluating audio and video source data
FR2868586A1 (fr) 2004-03-31 2005-10-07 France Telecom Procede et systeme ameliores de conversion d'un signal vocal
US20050267755A1 (en) 2004-05-27 2005-12-01 Nokia Corporation Arrangement for speech recognition
US7406408B1 (en) 2004-08-24 2008-07-29 The United States Of America As Represented By The Director, National Security Agency Method of recognizing phones in speech of any language
US7418383B2 (en) 2004-09-03 2008-08-26 Microsoft Corporation Noise robust speech recognition with a switching linear dynamic model
EP1854095A1 (en) 2005-02-15 2007-11-14 BBN Technologies Corp. Speech analyzing system with adaptive noise codebook
US20060253272A1 (en) 2005-05-06 2006-11-09 International Business Machines Corporation Voice prompts for use in speech-to-speech translation system
US8073696B2 (en) 2005-05-18 2011-12-06 Panasonic Corporation Voice synthesis device
EP1889255A1 (en) 2005-05-24 2008-02-20 Loquendo S.p.A. Automatic text-independent, language-independent speaker voice-print creation and speaker recognition
US20070088552A1 (en) 2005-10-17 2007-04-19 Nokia Corporation Method and a device for speech recognition
US20070118372A1 (en) 2005-11-23 2007-05-24 General Electric Company System and method for generating closed captions
US7991770B2 (en) 2005-11-29 2011-08-02 Google Inc. Detecting repeating content in broadcast media
US7539616B2 (en) * 2006-02-20 2009-05-26 Microsoft Corporation Speaker authentication using adapted background models
US20080004858A1 (en) 2006-06-29 2008-01-03 International Business Machines Corporation Apparatus and method for integrated phrase-based and free-form speech-to-speech translation
US7996222B2 (en) 2006-09-29 2011-08-09 Nokia Corporation Prosody conversion
CN101166017B (zh) 2006-10-20 2011-12-07 松下电器产业株式会社 用于声音产生设备的自动杂音补偿方法及装置
CA2676380C (en) 2007-01-23 2015-11-24 Infoture, Inc. System and method for detection and analysis of speech
US7848924B2 (en) 2007-04-17 2010-12-07 Nokia Corporation Method, apparatus and computer program product for providing voice conversion using temporal dynamic features
US20080300875A1 (en) 2007-06-04 2008-12-04 Texas Instruments Incorporated Efficient Speech Recognition with Cluster Methods
CN101359473A (zh) 2007-07-30 2009-02-04 国际商业机器公司 自动进行语音转换的方法和装置
GB2453366B (en) 2007-10-04 2011-04-06 Toshiba Res Europ Ltd Automatic speech recognition method and apparatus
JP4944241B2 (ja) * 2008-03-14 2012-05-30 名古屋油化株式会社 離型性シートおよび成形物
US8615397B2 (en) 2008-04-04 2013-12-24 Intuit Inc. Identifying audio content using distorted target patterns
WO2009129315A1 (en) 2008-04-15 2009-10-22 Mobile Technologies, Llc System and methods for maintaining speech-to-speech translation in the field
CN101562013B (zh) * 2008-04-15 2013-05-22 联芯科技有限公司 一种自动识别语音的方法和装置
US8374873B2 (en) 2008-08-12 2013-02-12 Morphism, Llc Training and applying prosody models
WO2010025460A1 (en) 2008-08-29 2010-03-04 O3 Technologies, Llc System and method for speech-to-speech translation
US8239195B2 (en) 2008-09-23 2012-08-07 Microsoft Corporation Adapting a compressed model for use in speech recognition
US8332223B2 (en) * 2008-10-24 2012-12-11 Nuance Communications, Inc. Speaker verification methods and apparatus
US9059991B2 (en) 2008-12-31 2015-06-16 Bce Inc. System and method for unlocking a device
US20100198577A1 (en) 2009-02-03 2010-08-05 Microsoft Corporation State mapping for cross-language speaker adaptation
US8380507B2 (en) 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
EP2406787B1 (en) 2009-03-11 2014-05-14 Google, Inc. Audio classification for information retrieval using sparse features
US9009039B2 (en) 2009-06-12 2015-04-14 Microsoft Technology Licensing, Llc Noise adaptive training for speech recognition
US20110238407A1 (en) 2009-08-31 2011-09-29 O3 Technologies, Llc Systems and methods for speech-to-speech translation
US8886531B2 (en) 2010-01-13 2014-11-11 Rovi Technologies Corporation Apparatus and method for generating an audio fingerprint and using a two-stage query
US8700394B2 (en) 2010-03-24 2014-04-15 Microsoft Corporation Acoustic model adaptation using splines
US8234111B2 (en) 2010-06-14 2012-07-31 Google Inc. Speech and noise models for speech recognition
US20110313762A1 (en) 2010-06-20 2011-12-22 International Business Machines Corporation Speech output with confidence indication
US8725506B2 (en) 2010-06-30 2014-05-13 Intel Corporation Speech audio processing
ES2540995T3 (es) 2010-08-24 2015-07-15 Veovox Sa Sistema y método para reconocer un comando de voz de usuario en un entorno con ruido
US8782012B2 (en) 2010-08-27 2014-07-15 International Business Machines Corporation Network analysis
US8972253B2 (en) 2010-09-15 2015-03-03 Microsoft Technology Licensing, Llc Deep belief network for large vocabulary continuous speech recognition
EP2431969B1 (de) 2010-09-15 2013-04-03 Svox AG Spracherkennung mit kleinem Rechenaufwand und reduziertem Quantisierungsfehler
US9318114B2 (en) 2010-11-24 2016-04-19 At&T Intellectual Property I, L.P. System and method for generating challenge utterances for speaker verification
US20120143604A1 (en) 2010-12-07 2012-06-07 Rita Singh Method for Restoring Spectral Components in Denoised Speech Signals
TWI413105B (zh) 2010-12-30 2013-10-21 Ind Tech Res Inst 多語言之文字轉語音合成系統與方法
US9286886B2 (en) 2011-01-24 2016-03-15 Nuance Communications, Inc. Methods and apparatus for predicting prosody in speech synthesis
US8594993B2 (en) 2011-04-04 2013-11-26 Microsoft Corporation Frame mapping approach for cross-lingual voice transformation
US8260615B1 (en) 2011-04-25 2012-09-04 Google Inc. Cross-lingual initialization of language models
WO2012089288A1 (en) 2011-06-06 2012-07-05 Bridge Mediatech, S.L. Method and system for robust audio hashing
US8768707B2 (en) * 2011-09-27 2014-07-01 Sensory Incorporated Background speech recognition assistant using speaker verification
US9235799B2 (en) 2011-11-26 2016-01-12 Microsoft Technology Licensing, Llc Discriminative pretraining of deep neural networks
CN103562993B (zh) * 2011-12-16 2015-05-27 华为技术有限公司 说话人识别方法及设备
US9137600B2 (en) 2012-02-16 2015-09-15 2236008 Ontario Inc. System and method for dynamic residual noise shaping
US9042867B2 (en) 2012-02-24 2015-05-26 Agnitio S.L. System and method for speaker recognition on mobile devices
JP5875414B2 (ja) 2012-03-07 2016-03-02 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 雑音抑制方法、プログラム及び装置
US9524730B2 (en) 2012-03-30 2016-12-20 Ohio State Innovation Foundation Monaural speech filter
US9368104B2 (en) 2012-04-30 2016-06-14 Src, Inc. System and method for synthesizing human speech using multiple speakers and context
US20130297299A1 (en) 2012-05-07 2013-11-07 Board Of Trustees Of Michigan State University Sparse Auditory Reproducing Kernel (SPARK) Features for Noise-Robust Speech and Speaker Recognition
US9489950B2 (en) 2012-05-31 2016-11-08 Agency For Science, Technology And Research Method and system for dual scoring for text-dependent speaker verification
US9123338B1 (en) 2012-06-01 2015-09-01 Google Inc. Background audio identification for speech disambiguation
US9704068B2 (en) 2012-06-22 2017-07-11 Google Inc. System and method for labelling aerial images
US9536528B2 (en) * 2012-07-03 2017-01-03 Google Inc. Determining hotword suitability
US9153230B2 (en) * 2012-10-23 2015-10-06 Google Inc. Mobile speech recognition hardware accelerator
US9336771B2 (en) 2012-11-01 2016-05-10 Google Inc. Speech recognition using non-parametric models
US9477925B2 (en) 2012-11-20 2016-10-25 Microsoft Technology Licensing, Llc Deep neural networks training for speech and pattern recognition
US9263036B1 (en) 2012-11-29 2016-02-16 Google Inc. System and method for speech recognition using deep recurrent neural networks
US20140156575A1 (en) 2012-11-30 2014-06-05 Nuance Communications, Inc. Method and Apparatus of Processing Data Using Deep Belief Networks Employing Low-Rank Matrix Factorization
US9230550B2 (en) * 2013-01-10 2016-01-05 Sensory, Incorporated Speaker verification and identification using artificial neural network-based sub-phonetic unit discrimination
US9502038B2 (en) * 2013-01-28 2016-11-22 Tencent Technology (Shenzhen) Company Limited Method and device for voiceprint recognition
US9454958B2 (en) 2013-03-07 2016-09-27 Microsoft Technology Licensing, Llc Exploiting heterogeneous data in deep neural network-based speech recognition systems
US9361885B2 (en) 2013-03-12 2016-06-07 Nuance Communications, Inc. Methods and apparatus for detecting a voice command
US9728184B2 (en) 2013-06-18 2017-08-08 Microsoft Technology Licensing, Llc Restructuring deep neural network acoustic models
JP5734354B2 (ja) * 2013-06-26 2015-06-17 ファナック株式会社 工具クランプ装置
US9311915B2 (en) 2013-07-31 2016-04-12 Google Inc. Context-based speech recognition
US9679258B2 (en) 2013-10-08 2017-06-13 Google Inc. Methods and apparatus for reinforcement learning
US9401148B2 (en) * 2013-11-04 2016-07-26 Google Inc. Speaker verification using neural networks
US9620145B2 (en) 2013-11-01 2017-04-11 Google Inc. Context-dependent state tying using a neural network
US9514753B2 (en) * 2013-11-04 2016-12-06 Google Inc. Speaker identification using hash-based indexing
US9715660B2 (en) 2013-11-04 2017-07-25 Google Inc. Transfer learning for deep neural network based hotword detection
CN104700831B (zh) * 2013-12-05 2018-03-06 国际商业机器公司 分析音频文件的语音特征的方法和装置
US8965112B1 (en) 2013-12-09 2015-02-24 Google Inc. Sequence transcription with deep neural networks
US9195656B2 (en) 2013-12-30 2015-11-24 Google Inc. Multilingual prosody generation
US9589564B2 (en) 2014-02-05 2017-03-07 Google Inc. Multiple speech locale-specific hotword classifiers for selection of a speech locale
US20150228277A1 (en) 2014-02-11 2015-08-13 Malaspina Labs (Barbados), Inc. Voiced Sound Pattern Detection
US10102848B2 (en) 2014-02-28 2018-10-16 Google Llc Hotwords presentation framework
US9412358B2 (en) * 2014-05-13 2016-08-09 At&T Intellectual Property I, L.P. System and method for data-driven socially customized models for language generation
US9728185B2 (en) 2014-05-22 2017-08-08 Google Inc. Recognizing speech using neural networks
US20150364129A1 (en) 2014-06-17 2015-12-17 Google Inc. Language Identification
CN104008751A (zh) * 2014-06-18 2014-08-27 周婷婷 一种基于bp神经网络的说话人识别方法
CN104168270B (zh) * 2014-07-31 2016-01-13 腾讯科技(深圳)有限公司 身份验证方法、服务器、客户端及系统
US9378731B2 (en) 2014-09-25 2016-06-28 Google Inc. Acoustic model training corpus selection
US9299347B1 (en) 2014-10-22 2016-03-29 Google Inc. Speech recognition using associative mapping
US9418656B2 (en) * 2014-10-29 2016-08-16 Google Inc. Multi-stage hotword detection
CN104732978B (zh) * 2015-03-12 2018-05-08 上海交通大学 基于联合深度学习的文本相关的说话人识别方法
EP3067884B1 (en) * 2015-03-13 2019-05-08 Samsung Electronics Co., Ltd. Speech recognition system and speech recognition method thereof
US9978374B2 (en) * 2015-09-04 2018-05-22 Google Llc Neural networks for speaker verification
US20180018973A1 (en) 2016-07-15 2018-01-18 Google Inc. Speaker verification

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Amitava Das et al., ‘Multilingual spoken-password based user authentication in emerging economies using cellular phone networks’, IEEE, SLT 2008, pp. 5~8, December 2008.*
Oldrich Plchot et al., ‘Developing a speaker identification system for the DARPA RATA Project’, ICASSP 2013, pp.6768~6772, May 2013.*
R. Rajeswara Rao et al., ‘Text-dependent speaker recognition system for Indian languages’, IJCSNS International Journal of Computer Science and Network Security, Vol.7, No.11, November 2007.*

Also Published As

Publication number Publication date
RU2697736C1 (ru) 2019-08-19
US20190385619A1 (en) 2019-12-19
CN108140386A (zh) 2018-06-08
KR20180050365A (ko) 2018-05-14
JP6561219B1 (ja) 2019-08-14
WO2018013401A1 (en) 2018-01-18
CN108140386B (zh) 2021-11-23
EP3373294A1 (en) 2018-09-12
US20210256981A1 (en) 2021-08-19
US20180018973A1 (en) 2018-01-18
JP2019530888A (ja) 2019-10-24
EP3345181A1 (en) 2018-07-11
US20180277124A1 (en) 2018-09-27
EP3345181B1 (en) 2019-01-09
US11017784B2 (en) 2021-05-25
US11594230B2 (en) 2023-02-28
EP3373294B1 (en) 2019-12-18
US10403291B2 (en) 2019-09-03

Similar Documents

Publication Publication Date Title
KR102109874B1 (ko) 화자 검증
US10255922B1 (en) Speaker identification using a text-independent model and a text-dependent model
US10476872B2 (en) Joint speaker authentication and key phrase identification
US10446141B2 (en) Automatic speech recognition based on user feedback
US8010367B2 (en) Spoken free-form passwords for light-weight speaker verification using standard speech recognition engines
EP3392880B1 (en) Speaker verification using dynamically generated phrases
US20170236520A1 (en) Generating Models for Text-Dependent Speaker Verification
JP7339116B2 (ja) 音声認証装置、音声認証システム、および音声認証方法
JPWO2018088534A1 (ja) 電子機器、電子機器の制御方法及び電子機器の制御プログラム
US20180068102A1 (en) User authentication using prompted text
KR20230156145A (ko) 하이브리드 다국어 텍스트 의존형 및 텍스트 독립형 화자 검증
AU2019100034B4 (en) Improving automatic speech recognition based on user feedback

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant