KR20200120765A - 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증 - Google Patents

동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증 Download PDF

Info

Publication number
KR20200120765A
KR20200120765A KR1020207029347A KR20207029347A KR20200120765A KR 20200120765 A KR20200120765 A KR 20200120765A KR 1020207029347 A KR1020207029347 A KR 1020207029347A KR 20207029347 A KR20207029347 A KR 20207029347A KR 20200120765 A KR20200120765 A KR 20200120765A
Authority
KR
South Korea
Prior art keywords
phrase
user
registered
voice data
verification
Prior art date
Application number
KR1020207029347A
Other languages
English (en)
Other versions
KR102298583B1 (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 구글 엘엘씨
Priority to KR1020217027875A priority Critical patent/KR102491993B1/ko
Publication of KR20200120765A publication Critical patent/KR20200120765A/ko
Application granted granted Critical
Publication of KR102298583B1 publication Critical patent/KR102298583B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/04Training, enrolment or model building
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/20Pattern transformations or operations aimed at increasing system robustness, e.g. against channel noise or different working conditions
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

사용자의 신원을 검증하기 위해, 컴퓨터 저장 매체 상에 인코드된 컴퓨터 프로그램들을 포함하는 방법들, 시스템들, 및 장치가 개시된다. 방법들, 시스템들, 및 장치는 사용자의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 동작들을 포함한다. 추가의 동작들은 사용자의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 것에 응답하여, 검증 어구에 포함될 서브워드들을 식별하고 검증 어구에 포함될 서브워드들을 식별하는 것에 응답하여, 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것을 포함한다. 추가 동작들은 사용자의 신원을 검증하기 위한 검증 어구의 요구에 대한 응답으로서 검증 어구를 제공하는 것을 포함한다.

Description

동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증{SEGMENT-BASED SPEAKER VERIFICATION USING DYNAMICALLY GENERATED PHRASES}
본 개시내용은 일반적으로 화자 검증에 관한 것이다.
컴퓨터는 화자의 신원을 검증하기 위해 화자 검증을 수행할 수 있다. 예를 들어, 컴퓨터는 화자의 음성을 나타내는 음향 데이터가 특정한 사용자의 음성을 나타내는 음향 데이터와 일치하는 것을 검증한 것에 기초하여 특정한 사용자로서 화자의 신원을 검증할 수 있다.
일반적으로, 본 명세서에 설명된 주제의 양태는 화자의 신원을 검증하는 프로세스를 포함할 수 있다. 화자 검증은 특정한 사용자로부터의 발언을 나타내는 음향 데이터와 화자로부터의 발언을 나타내는 음향 데이터를 일치시킴으로써 발생한다.
시스템은 항상 동일한 어구, 예를 들어, "FIXED VERIFICATION PHRASE"를 화자에게 말하라고 요청함으로써 화자 검증을 수행할 수 있다. 이 방식은 정확할 수 있지만 위조하기 쉬울 수 있다. 예를 들어, 특정한 사용자가 말한 어구의 기록이 재생될 수 있다. 대안적으로, 시스템은 화자가 어구, 예를 들어, "RANDOM VERIFICATION PHRASE"를 독립적으로 말하게 할 수 있다. 그러나, 이 방식은 덜 정확할 수 있다. 예를 들어, 시스템은 화자가 말한 어구가 어떤 것인지를 결정할 수 없다.
시스템은 특정한 사용자에 대해 저장된 트레이닝 음향 데이터에 기초하여 동적으로 발생된 검증 어구를 제공함으로써 화자 검증에서 생기는 상기 문제들을 해결할 수 있다. 예를 들어, 시스템은 시스템이 특정한 사용자가 말한 서브워드 "HAM"을 나타내는 트레이닝 음향 데이터를 저장하고 있다고 결정한 것에 기초하여 특정한 사용자로서 검증될 화자에 검증 어구, 예를 들어, "HAMMER"를 제공할 수 있다.
검증 어구를 제공하는 것에 응답하여, 시스템은 화자가 말한 검증 어구를 나타내는 음향 데이터를 획득할 수 있고 획득된 음향 데이터를 사용하여 특정한 사용자로서 화자의 신원을 검증할 수 있다. 예를 들어, 시스템은 화자가 말한 서브워드 "HAMMER' 내의 서브워드 "HAM"을 나타내는 획득된 음향 데이터가 특정한 사용자가 말한 서브워드 "HAM"을 나타내는 트레이닝 음향 데이터와 일치한다고 결정한 것에 기초하여 특정한 사용자로서 화자의 신원을 검증할 수 있다.
시스템이 특정한 사용자로서 화자의 신원을 검증하면, 시스템은 특정한 사용자에 대한 트레이닝 음향 데이터로서 획득된 음향 데이터를 저장할 수 있다. 예를 들어, 시스템은 특정한 사용자가 말한 서브워드 "MER"을 나타내는 음향 데이터로서 화자가 말한 서브워드 "MER"을 나타내는 음향 데이터를 저장할 수 있다. 앞으로 특정한 사용자로서 화자의 신원을 검증할 때, 시스템은 화자가 말한 서브워드 "MER"을 나타내는 음향 데이터를 특정한 사용자가 말한 서브워드 "MER"을 나타내는 새롭게 저장된 트레이닝 음향 데이터와 비교할 수 있다. 예를 들어, 시스템이 특정한 사용자로서 화자를 검증하기 위한 화자 검증을 수행하는 다음 시간에, 시스템은 특정한 사용자가 말한 서브워드 "MER"을 나타내는 트레이닝 음향 데이터를 시스템이 저장하고 있다고 결정한 것에 기초하여 상이한 검증 어구, 예를 들어, "JAMMER"을 제공할 수 있다.
일부 양태들에서, 본 명세서에 설명된 주제는 사용자의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 동작들을 포함할 수 있는 방법들에서 실시될 수 있다. 추가의 동작들은 사용자의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 것에 응답하여, 검증 어구에 포함될 서브워드들을 식별하고 검증 어구에 포함될 서브워드들을 식별하는 것에 응답하여, 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것을 포함한다. 추가 동작들은 사용자의 신원을 검증하기 위한 검증 어구의 요구에 대한 응답으로서 검증 어구를 제공하는 것을 포함한다.
다른 버전들은 컴퓨터 저장 디바이스들 상에서 인코드된, 방법들의 동작들을 수행하도록 구성된, 대응하는 시스템들, 장치, 및 컴퓨터 프로그램들을 포함한다.
이들 및 다른 버전들은 각각 다음의 특징들 중 하나 이상을 선택적으로 포함할 수 있다. 예를 들어, 일부 구현들에서, 검증 어구에 포함될 서브워드들을 식별하는 것은 검증 어구에 포함될 서브워드들 중 하나 이상으로서, 저장된 음향 데이터가 사용자와 관련된 후보 서브워드들을 식별하는 것을 포함한다.
소정의 양태들에서, 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것은 특정한 식별된 서브워드가 특정하게 사운드 구별된다는 것을 결정하는 것과 특정한 식별된 서브워드가 특정하게 사운드 구별된다고 결정하는 것에 응답하여, 특정하게 사운드 구별되는 것으로 결정된 특정한 식별된 서브워드를 포함하는 후보 어구를 획득하는 것을 포함한다.
일부 양태들에서, 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것은 식별된 서브워드들 중 적어도 일부를 포함하는 후보를 포함하는 다중 후보 어구들을 획득하고, 후보 어구가 식별된 서브워드들 중 적어도 일부를 포함하는 것을 결정하고, 후보 어구가 식별된 서브워드들 중 적어도 일부를 포함한다고 결정하는 것에 응답하여, 다중 후보 어구들 중에서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구로서 결정된 후보 어구를 선택하는 것을 포함한다.
일부 구현들에서, 동작들은 사용자가 말한 검증 어구를 나타내는 음향 데이터를 획득하고, 획득된 음향 데이터가 사용자에 대한 저장된 음향 데이터와 일치한다는 것을 결정하고, 획득된 음향 데이터가 사용자에 대한 저장된 음향 데이터와 일치한다고 결정하는 것에 응답하여, 사용자로서 사용자를 분류하는 것을 포함한다.
소정의 양태들에서, 획득된 음향 데이터가 사용자에 대한 저장된 음향 데이터와 일치하는 것은 결정하는 것은 검증 어구 내의 식별된 서브워드들 중 적어도 일부에 대한 저장된 음향 데이터가 검증 어구 내의 식별된 서브워들 중 적어도 일부에 대응하는 획득된 음향 데이터와 일치하는 것을 결정하는 것을 포함한다.
일부 양태들에서, 검증 어구에 포함될 서브워드들을 식별하는 것은 검증 어구에 포함될 서브워드들 중 하나 이상으로서, 저장된 음향 데이터가 사용자와 관련되지 않은 후보 서브워드들을 식별하는 것을 포함한다. 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것은 저장된 음향 데이터가 사용자와 관련된 적어도 하나의 후보 서브워드 및 저장된 음향 데이터가 사용자와 관련되지 않은 적어도 하나의 후보 서브워드를 포함하는 후보 어구를 획득하는 것을 포함한다.
일부 구현들에서, 동작들은 사용자와 관련하여, 저장된 음향 데이터가 사용자와 관련되지 않은 식별된 후보 서브워드들에 대응하는 획득된 음향 데이터로부터 음향 데이터를 저장하는 것을 포함한다.
본 명세서에 설명된 주제의 하나 이상의 구현의 상세들이 첨부 도면 및 아래의 설명에 기술된다. 주제의 다른 잠재적인 특징들, 양태들, 및 장점들이 설명, 도면, 및 청구범위로부터 분명해질 것이다.
도 1은 화자의 신원을 검증하는 예시적인 프로세스의 플로우차트.
도 2는 음성 검증 등록을 위한 시스템의 블록도.
도 3은 검증 어구를 획득하는 시스템의 블록도.
도 4는 화자의 신원을 검증하는 시스템의 블록도.
도 5는 화자의 신원을 검증하는 예시적인 프로세스의 또 하나의 플로우차트.
여러 도면에서의 유사한 참조 기호들은 유사한 요소들을 표시한다.
도 1은 화자의 신원을 검증하는 예시적인 프로세스(100)의 플로우차트이다. 일반적으로, 프로세스(100)는 음성 검증 등록 스테이지(110)를 포함할 수 있다. 예를 들어, 시스템은 특정한 사용자에게 등록 어구를 말하라고 프롬프트할 수 있고 특정한 사용자가 말한 등록 어구를 나타내는 트레이닝 음향 데이터를 저장할 수 있다. 서브워드들 각각에 대한 음향 데이터는 예를 들어, 특정한 사용자가 말한 서브워드들 각각을 나타내는 MFCC 계수들 또는 필터뱅크 에너지들일 수 있다. 서브워드들은 음소 또는 2개 이상의 음소들, 예를 들어, 트리폰(triphone)의 순차일 수 있다. 음성 검증 등록 스테이지는 도 2에 예시된다.
프로세스(100)는 검증 어구의 동적 발생 스테이지(120)를 포함할 수 있다. 예를 들어, 검증 어구의 요구에 응답하여, 시스템은 화자의 신원을 검증하기 위한 검증 어구를 동적으로 발생할 수 있다. 검증 어구의 동적 발생 스테이지는 도 3에 예시된다.
프로세스(100)는 검증 스테이지(130)를 포함할 수 있다. 예를 들어, 시스템은 화자가 말한 검증 어구를 나타내는 음향 데이터를 수신할 수 있고 획득된 음향 데이터에 기초하여 특정한 사용자로서 화자를 검증할 수 있다. 검증 스테이지는 도 4에 예시된다.
프로세스(100)는 데이터 수집 스테이지(140)를 포함할 수 있다. 예를 들어, 특정한 사용자로서 화자를 검증한 후에, 시스템은 특정한 사용자가 말한 것을 나타내는 음향 데이터로서 획득된 음향 데이터를 저장할 수 있다. 데이터 수집 스테이지는 도 4에 예시된다.
도 2는 음성 검증 등록을 위한 시스템(200)의 블록도이다. 시스템은 등록 인터페이스(210) 및 특정한 사용자(220)에 대한 음향 데이터 데이터베이스(230)를 포함할 수 있다. 시스템(200)은 컴퓨팅 디바이스(212), 예를 들어 이동 전화일 수 있다. 등록 인터페이스(210)는 음성 검증을 위해 특정한 사용자(220)를 등록하기 위해 특정한 사용자(220)에게 등록 어구를 말하라고 프롬프트할 수 있다. 예를 들어, 등록 인터페이스(210)는 특정한 사용자(220)에게 미리 정해진 등록 어구 "DONUT"을 말하라고 프롬프트할 수 있다.
시스템(200)은 특정한 사용자(220)의 말에 기초하여 트레이닝 음향 데이터를 획득할 수 있다. 시스템(200)은 예를 들어, 특정한 사용자(220)로부터의 말의 부분들을 등록 어구 내의 서브워드들과 정렬시키기 위한 동적 시간 워핑(warping)을 수행함으로써, 트레이닝 음향 데이터를 획득할 수 있다. 예를 들어, 시스템(200)은 특정한 사용자(220)로부터의 말의 제1 부분을 서브워드 "DO"와 그리고 특정한 사용자(220)로부터의 말의 제2 부분을 서브워드 "NUT"와 정렬시킬 수 있다.
시스템(200)은 특정한 사용자(220)가 말한 등록 어구 내의 서브워드들 각각을 나타내는 트레이닝 음향 데이터를 음향 데이터 데이터베이스(230) 내에 저장할 수 있다. 예를 들어, 시스템(200)은 특정한 사용자(220)가 말한 등록 어구 "DONUT" 내의 서브워드들 "DO" 및 "NUT"을 나타내는 트레이닝 음향 데이터를 저장할 수 있다.
등록 목적들을 위해, 시스템(200)은 하나 이상의 상이한 등록 어구를 사용할 수 있다. 예를 들어, 시스템(200)은 특정한 사용자(220)에게 등록 어구, "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"을 말하라고 프롬프트할 수 있고 다음에 특정한 사용자(220)에게 "COMPUTER PLEASE LEARN MY VOICE FROM THIS PHRASE I'M CURRENTLY SPEAKING"을 말하라고 프롬프트할 수 있다.
시스템(200)은 미리 정해진 등록 어구들, 또는 동적으로 발생된 등록 어구들을 사용할 수 있다. 예를 들어, 시스템(200)은 주어진 현장 또는 언어와 관련된 사용자에게 초기에 항상 등록 어구 "DONUT" 다음에, 미리 정해진 순차의 추가 등록 단어들을 말하라고 프롬프트할 수 있다. 부가적으로 또는 대안적으로, 시스템(200)은 저장된 음향 데이터를 보충하는 하나 이상의 등록 어구를 동적으로 발생할 수 있다. 예를 들어, 시스템(200)은 특정한 사용자(220)가 말한 서브워드들을 나타내는 트레이닝 음향 데이터를 시스템(200)이 저장하지 않은 서브워드들을 포함하는 후보 등록 어구들을 식별할 수 있다.
시스템(200)은 시스템(200)이 특정한 사용자(220)가 최소 임계 횟수로 말한 적어도 최소 임계량의 서브워드들을 나타내는 트레이닝 음향 데이터를 가질 때까지 특정한 사용자(220)에게 상이한 등록 어구들을 계속 말하라고 계속 프롬프트할 수 있다. 예를 들어, 시스템(200)은 시스템(200)이 특정한 사용자(220)가 적어도 2번 각각 말한 적어도 10개의 상이한 서브워드들을 나타내는 트레이닝 음향 데이터를 가질 때까지 상이한 등록 어구들을 계속 말하라고 계속 프롬프트할 수 있다. 부가적으로 또는 대안적으로, 시스템(200)이 특정한 등록 어구가 임계 발언 품질을 만족하기에 충분한 트레이닝 음향 데이터를 가질 때까지 시스템(200)은 특정한 사용자(220)에게 특정한 등록 어구를 계속 말하라고 계속 프롬프트할 수 있다.
일부 구현들에서, 시스템(200)은 시스템(200)이 등록 어구에 응답하여 획득하지 않은 트레이닝 음향 데이터를 음향 데이터 데이터베이스(230) 내에 또한 저장할 수 있다. 예를 들어, 시스템(200)은 특정한 사용자(220)가 말한 음성 명령들 또는 음성 문의들을 나타내는 트레이닝 음향 데이터를 식별할 수 있고, 음향 데이터 데이터베이스(230) 내에 식별된 트레이닝 음향 데이터를 저장할 수 있다.
도 3은 검증 어구를 획득하는 시스템(300)의 블록도이다. 시스템(300)은 화자 검증 개시기(304), 서브워드 식별기(310), 음향 데이터 데이터베이스(230), 검증 어구 획득기(320), 후보 어구들 데이터베이스(330), 및 검증 인터페이스(340)를 포함할 수 있다.
핫워드 검출기일 수 있는 화자 검증 개시기(304)는 음성 명령을 수신할 수 있고 음성 명령에 기초하여 화자 검증을 개시할 수 있다. 예를 들어, 화자 검증 개시기(304)는 음성 명령 "OK COMPUTER, UNLOCK"을 수신할 수 있고, 음성 명령이 화자 검증을 포함한다는 것을 결정할 수 있고, 화자 검증을 개시할 수 있다. 화자 검증 개시기(304)는 서브워드 식별기(310)에 화자 검증 요구를 제공함으로써 화자 검증을 개시할 수 있다.
화자 검증의 요구에 응답하여, 서브워드 식별기(310)는 검증 어구에 포함될 서브워드들을 식별할 수 있다. 예를 들어, 화자 검증 개시기(304)로부터 화자 검증의 요구를 수신하는 것에 응답하여, 서브워드 식별기(310)는 서브워드 "NUT"가 검증 어구에 포함되어야 하는 것을 식별할 수 있다.
서브워드 식별기(310)는 음향 데이터 데이터베이스(230) 내에 저장된 트레이닝 음향 데이터에 기초하여 검증 어구에 포함될 특정한 서브워드들을 식별할 수 있다. 예를 들어, 서브워드 식별기(310)는 음향 데이터 데이터베이스(230)가 특정한 사용자(200)가 말한 서브워드 "DO" 및 서브워드 "NUT"을 나타내는 트레이닝 음향 데이터를 저장하고 있다고 결정한 것에 기초하여 검증 어구에 포함될 서브워드들 "DO" 및 "NUT"을 식별할 수 있다.
검증 어구 획득기(320)는 특정한 사용자(220)가 말한 서브워드를 나타내는 트레이닝 음향 데이터가 음향 데이터 데이터베이스(230) 내에 저장되어 있지 않은서브워드들을 결정한 것에 기초하여 검증 어구에 포함될 서브워드들을 부가적으로 또는 대안적으로 식별할 수 있다. 예를 들어, 검증 어구 획득기(320)는 특정한 사용자(220)가 말한 서브워드 "PEA"를 나타내는 트레이닝 음향 데이터가 거의 또는 전혀 저장되어 있지 않다고 결정한 것에 기초하여 검증 어구에 포함될 서브워드 "PEA"를 식별할 수 있다.
검증 어구 획득기(320)는 식별된 서브워드들에 기초하여 검증 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 식별된 서브워드들 "DO", "NUT", 및 "PEA"에 기초하여 검증 어구 "PEANUT"을 획득할 수 있다. 검증 어구 획득기(320)는 후보 어구들 데이터베이스(330)로부터 다중 후보 어구들을 획득하고, 식별된 서브워드들 중 하나 이상을 포함하는 획득된 후보 어구를 식별하고, 검증 어구로서 식별된 후보 어구를 선택한 것에 기초하여 검증 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 후보 어구들 데이터베이스(330)로부터 후보 어구들 "KITE", "BEAR", "PEANUT", 및 "DONUT"을 획득할 수 있고, 후보 어구 "PEANUT"이 식별된 서브워드들 "NUT" 및 "PEA"를 포함한다는 것을 식별할 수 있고, 검증 어구로서 식별된 후보 어구 "PEANUT"을 선택할 수 있다.
검증 어구 획득기(320)는 어떤 식별된 서브워드들이 특정한 사용자(220)에 대한 트레이닝 음향 데이터를 갖고 어떤 식별된 서브워드들이 특정한 사용자(220)에 대한 트레이닝 음향 데이터를 갖지 않는지에 기초하여 검증 어구를 부가적으로 또는 대안적으로 획득할 수 있다. 검증 어구 획득기(320)는 트레이닝 음향 데이터를 갖는 적어도 하나의 식별된 서브워드 및 트레이닝 음향 데이터를 갖지 않는 적어도 하나의 식별된 서브워드 둘 다를 갖는 검증 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 후보 어구 "PEANUT"이 트레이닝 음향 데이터를 갖는 식별된 서브워드 "NUT"을 포함하고 트레이닝 음향 데이터를 갖지 않는 식별된 서브워드 "PEA"를 포함한다고 결정한 것에 기초하여 검증 어구로서 후보 어구 "PEANUT"을 선택할 수 있다.
일부 구현들에서, 검증 어구 획득기(320)는 후보 어구가 최소 임계량의 서브워드들을 포함하고 후보 어구에서의 서브워드들의 퍼센티지가 특정한 사용자(220)에 대한 트레이닝 음향 데이터를 갖는 서브워드들이라고 결정한 것에 기초하여 후보 어구들로부터 검증 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 후보 어구가 적어도 10개의 서브워드들을 포함하고 후보 어구에서의 서브워드들의 거의 90%가 특정한 사용자(220)에 대한 트레이닝 음향 데이터를 갖는 서브워드들이라고 결정한 것에 기초하여 검증 어구로서 후보 어구 "I ATE SIX PEANUT BUTTER SANDWICHES TODAY"를 선택할 수 있다.
검증 어구로서 후보 어구를 선택하는데 있어서, 검증 어구 획득기(320)는 트레이닝 음향 데이터가 저장된 각각의 후보 어구 내의 서브워드들의 수로 획득된 후보 어구들의 리스트를 정렬할 수 있다. 정렬된 리스트로부터, 검증 어구 획득기(320)는 최소 임계 수의 서브워드들 및 특정한 사용자(220)에 대한 트레이닝 음향 데이터를 갖는 서브워드들의 최소 퍼센티지를 갖는 후보 어구를 선택할 수 있다.
일부 구현들에서, 검증 어구 획득기(320)는 식별된 서브워드들의 사운드 구별의 표시에 기초하여 검증 어구를 획득할 수 있다. 검증 어구 획득기(320)는 보다 잘 사운드 구별되는 서브워드들을 포함하는 후보 어구를 일반적으로 선택할 수 있다. 검증 어구 획득기(320)는 (ⅰ) 특정하게 사운드 구별되고 특정한 사용자(220)에 대한 저장된 음향 데이터를 갖는 서브워드인 적어도 하나의 식별된 서브워드 및 (ⅱ) 특정하게 사운드 구별되고 특정한 사용자(220)에 대한 저장된 음향 데이터를 갖지 않는 서브워드인 적어도 하나의 식별된 서브워드를 포함하는 후보 어구를 선택한 것에 기초하여 각각의 식별된 서브워드의 사운드 구별의 표시를 결정할 수 있고 검증 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 후보 어구 "PEANUT"이 저장된 음향 데이터를 갖고 특정하게 사운드 구별되는 식별된 서브워드 "NUT"을 포함하고, 저장된 음향 데이터를 갖지 않고 또한 특정하게 사운드 구별되는 식별된 서브워드 "PEA"를 포함한다고 결정한 것에 기초하여 검증 어구로서 후보 어구 "PEANUT"을 선택할 수 있다.
일부 구현들에서, 검증 어구 획득기(320)는 후보 어구들 데이터베이스(330) 없이 후보 어구를 획득할 수 있다. 예를 들어, 검증 어구 획득기(320)는 (ⅰ) 저장된 음향 데이터를 갖고 특정하게 사운드 구별되는 식별된 서브워드 "NUT" 및 (ⅱ) 저장된 음향 데이터를 갖지 않고 또한 특정하게 사운드 구별되는 식별된 서브워드 "PEA"를 포함하는 후보 어구를 발생한 것에 기초하여 검증 어구로서 후보 어구 "NUT PEA"를 발생할 수 있다.
검증 인터페이스(340)는 화자(302)에게 검증 어구를 말하라고 프롬프트할 수 있다. 예를 들어, 검증 인터페이스(340)는 이동 컴퓨팅 디바이스(202)의 디스플레이 상에 "PLEASE SAY 'PEANUT'"을 출력할 수 있다. 부가적으로 또는 대안적으로, 검증 인터페이스(340)는 "PLEASE SAY 'PEANUT'"의 합성된 음성을 출력할 수 있다.
도 4는 화자(302)의 신원을 검증하는 시스템(400)의 블록도이다. 시스템(400)은 서브워드 비교기(420), 화자 분류기(430), 및 웰컴 인터페이스(440)를 포함할 수 있다.
시스템(400)은 화자의 음성에 기초하여 음향 데이터(410)를 획득할 수 있다. 시스템(400)은 화자(302)로부터의 말의 부분들을 검증 어구 내의 서브워드들에 정렬시키기 위한 동적 시간 워핑을 수행함으로써 음향 데이터를 획득할 수 있다. 예를 들어, 시스템(400)은 화자(302)로부터의 말의 제1 부분을 서브워드 "PEA"에 그리고 화자(302)로부터의 말의 제2 부분을 서브워드 "NUT'에 정렬시킬 수 있다. 시스템(400)이 화자의 말로부터 검증 어구에 대한 음향 데이터(410)를 획득할 수 없다면, 시스템(400)은 에러를 발생할 수 있다. 예를 들어, 화자(302)가 완전히 상이하게 어구 "AARDVARK"를 말하면, 시스템(400)은 검증 어구, "PEANUT"을 정렬할 수 없고, 화자에게 검증 어구를 반복하라고 요청하는 에러를 발생할 수 있다.
서브워드 비교기(420)는 화자(302)가 말한 검증 어구의 하나 이상의 서브워드를 나타내는 획득된 음향 데이터(410)를 수신할 수 있다. 예를 들어, 서브워드 비교기(420)는 화자(302)가 말한 검증 어구, "PEANUT"의 서브워드 "PEA" 및 "NUT"을 나타내는 획득된 음향 데이터(410)를 수신할 수 있다.
서브워드 비교기(420)는 획득된 음향 데이터(410)를 특정한 사용자(220)가 말한 서브워드들을 나타내는 음향 데이터 데이터베이스(230) 내의 저장된 트레이닝 음향 데이터와 비교할 수 있다. 예를 들어, 서브워드 비교기(420)는 화자(420)가 말한 서브워드 "NUT"을 나타내는 획득된 음향 데이터(410)와 특정한 사용자(220)가 말한 서브워드 "NUT"을 나타내는 저장된 트레이닝 음향 데이터 간의 거리를 결정할 수 있다.
서브워드 비교기(420)는 서브워드들에 대한 트레이닝 음향 데이터를 갖는 서브워드들에 대한 획득된 음향 데이터 만을 비교할 수 있다. 예를 들어, 서브워드 비교기(420)는 서브워드 "NUT"에 대한 트레이닝 음향 데이터가 저장되어 있다고 결정한 것에 기초하여 서브워드 "NUT"에 대한 획득된 음향 데이터를 비교하기로 결정할 수 있다. 또 하나의 예에서, 서브워드 비교기(420)는 서브워드 "PEA"에 대한 트레이닝 음향 데이터가 저장되어 있지 않다고 결정한 것에 기초하여 서브워드 "PEA"에 대한 획득된 음향 데이터를 비교하지 않기로 결정할 수 있다.
부가적으로 또는 대안적으로, 서브워드 비교기(420)는 올바른 서브워드가 발성되었는다는 것을 검증하기 위해 트레이닝 음향 데이터를 갖지 않는 서브워드에 대한 획득된 음향 데이터를 비사용자 특정 음향 데이터와 비교할 수 있다. 예를 들어, 서브워드 비교기(420)는 서브워드 "PEA"가 발성되었다는 것을 검증하기 위해 서브워드 "PEA"에 대한 획득된 음향 데이터를 서브워드 "PEA"에 대한 비사용자 특정 음향 데이터와 비교할 수 있다. 일부 구현들에서, 서브워드 비교기(420)는 트레이닝 음향 데이터를 갖지 않는 서브워드들에 대한 획득된 음향 데이터를 유사한 사운딩 서브워드들에 대한 저장된 트레이닝 음향 데이터와 비교할 수 있다. 예를 들어, 서브워드 비교기(420)는 서브워드 "PEA"에 대한 획득된 음향 데이터를 서브워드 "PE"에 대한 저장된 트레이닝 음향 데이터와 비교할 수 있다.
서브워드 비교기(420)는 획득된 음향 데이터와 저장된 트레이닝 음향 데이터의 하나 이상의 비교에 기초하여 각각의 비교된 서브워드에 대한 매치 스코어를 발생할 수 있다. 매치 스코어는 특정한 사용자(220)가 획득된 음향 데이터에 대응하는 서브워드를 말할 가능성을 표시할 수 있다. 예를 들어, 서브워드 비교기(420)는 특정한 사용자(220)로서 서브워드 "PEA"의 화자(302)의 신원의 90% 가능성을 표시하는 90%의 매치 스코어 및 특정한 사용자(220)로서 서브워드 "DO"의 화자(302)의 신원의 100% 가능성을 표시하는 100%의 매치 스코어를 결정할 수 있다.
서브워드 비교기(420)는 음향 데이터와 비교된 서브워드에 대한 저장된 트레이닝 음향 데이터 간의 거리를 결정한 것에 기초하여 각각의 비교된 서브워드에 대한 매치 스코어를 발생할 수 있다. 서브워드 비교기(420)는 L2 거리들을 계산하거나 동적 시간 워핑 매칭을 수행하는 것에 기초하여 각각의 서브워드에 대한 거리를 결정할 수 있다. 일부 구현들에서 서브워드 비교기(420)가 트레이닝 음향 데이터를 갖지 않는 서브워드들에 대한 획득된 음향 데이터를 유사한 사운딩 서브워드들에 대한 저장된 트레이닝 음향 데이터와 비교할 때, 화자 분류기(430)는 비교를 보다 관대하게 할 수 있다. 예를 들어, 서브워드 비교기(420)가 서브워드 "PEA"에 대한 획득된 음향 데이터를 서브워드 "PE"에 대한 트레이닝 음향 데이터와 비교할 때, 서브워드 비교기(420)는 임의의 거리들을 반으로 줄일 수 있다.
서브워드 비교기(420)는 매치 스코어들에 기초하여 최종 스코어를 발생할 수 있다. 서브워드 비교기(420)는 매치 스코어들을 평균함으로써 최종 스코어를 발생할 수 있다. 예를 들어, 서브워드 비교기(420)는 서브워드 "NUT"에 대한 90% 매치 스코어와 서브워드 "DO"에 대한 100% 매치 스코어를 평균한 것에 기초하여 95%의 최종 스코어를 발생할 수 있다.
일부 구현들에서, 서브워드 비교기(420)는 획득된 음향 데이터와 저장된 트레이닝 음향 데이터 간의 비교들을 특정한 서브워드들에 대해 상이하게 가중시킬 수 있다. 서브워드 비교기(420)는 보다 잘 사운드 구별되는 것으로 결정된 서브워드들 또는 보다 많은 저장된 음향 데이터가 가용한 서브워드들에 대한 비교들에 보다 큰 가중을 제공할 수 있다. 예를 들어, 서브워드 비교기(420)는 서브워드 "NUT"가 서브워드 "DO"보다 더 잘 사운드 구별된다고 결정할 수 있고 최종 스코어가 97%이도록 서브워드 "NUT"에 대한 100%의 매치 스코어를 2배나 가중할 수 있다. 일부 구현들에서, 서브워드 비교기(420)는 최종 스코어를 발생하기 위해 화자 분류기에 대한 화자 분류기(430)에 매치 스코어들을 제공할 수 있다.
화자 분류기(430)는 화자(302)가 획득된 음향 데이터가 저장된 트레이닝 음향 데이터와 일치한다고 결정한 것에 기초하여 특정한 사용자(220)인지의 분류를 할 수 있다. 예를 들어, 화자 분류기(430)는 서브워드 비교기(420)로부터의 최종 스코어가 90% 이상이기 때문에 획득된 음향 데이터가 저장된 트레이닝 음향 데이터와 일치한다고 결정한 것에 기초하여 화자(302)가 특정한 사용자(220)라는 분류를 할 수 있다. 또 하나의 예에서, 화자 분류기(430)는 서브워드 비교기(420)로부터의 최종 스코어가 90% 미만이기 때문에 획득된 음향 데이터가 저장된 트레이닝 음향 데이터와 일치하지 않는다고 결정한 것에 기초하여 화자(302)가 특정한 사용자(220)가 아니라는 분류를 할 수 있다.
화자 분류기(430)가 화자(302)가 특정한 사용자(220)가 아니라는 분류를 하면, 또 하나의 검증 어구가 요구될 수 있고, 화자(302)는 검증 어구를 말하는 것이 프롬프트될 수 있다. 예를 들어, 로크된 이동 디바이스는 로크된 것으로 남을 수 있고 화자(302)에게 "SORRY VOICE NOT RECOGNIZED, PLEASE TRY SPEAKING INSTEAD 'CHESTNUT'"을 프롬프트할 수 있다. 부가적으로 또는 대안적으로, 화자 분류기(430)가 화자(302)가 특정한 사용자(220)가 아니라는 분류를 하면, 동일한 검증 어구가 요구될 수 있다. 예를 들어, 로크된 이동 디바이스는 로크된 것으로 남을 수 있고 화자(302)에게 "SORRY VOICE NOT RECOGNIZED, PLEASE TRY REPEATING 'PEANUT'"을 프롬프트할 수 있다. 일부 구현들에서, 화자 분류기(430)는 미리 정해진 횟수로, 예를 들어, 2번, 3번, 또는 4번, 특정한 어구에 대해 화자(302)에게 프롬프트할 수 있다.
화자 분류기(430)가 화자(302)가 특정한 사용자(220)라는 분류를 하면, 화자 분류기(430)는 트레이닝 음향 데이터로서 획득된 음향 데이터를 음향 데이터 데이터베이스(230)에 부가할 수 있다. 예를 들어, 화자 분류기(430)는 특정한 사용자(220)가 말한 서브워드 "NUT"의 제2 예를 나타내는 것으로서 서브워드 "NUT"에 대한 획득된 음향 데이터를 저장할 수 있고 특정한 사용자(220)가 말한 서브워드 "PEA"의 제1 예를 나타내는 것으로서 서브워드 "PEA"에 대한 획득된 음향 데이터를 저장할 수 있다. 획득된 음향 데이터를 음향 데이터 데이터베이스(230)에 부가하는데 있어서, 화자 분류기(430)는 특정한 서브워드에 대해 획득된 음향 데이터를 평균할 수 있다. 예를 들어, 화자 분류기(430)는 특정한 사용자(220)가 말한 서브워드 "NUT"의 2개의 예들에 대해 음향 데이터를 평균할 수 있다. 획득된 음향 데이터를 음향 트레이닝 데이터로서 음향 데이터 데이터베이스(230)에 부가함으로써, 화자 분류기(430)는 서브워드들, 예를 들어, NUT에 대한 획득된 음향 데이터와 저장된 트레이닝 음향 데이터의 미래의 비교들을 더욱 정밀하게 할 수 있고, 초기에 저장된 트레이닝 음향 데이터, 예를 들어, "PEA"을 갖지 않는 서브워드들이 저장된 트레이닝 음향 데이터를 이제 가질 수 있음에 따라 미래에 부가적인 서브워드들이 비교되게 할 수 있다.
화자 분류기(430)가 화자(302)가 특정한 사용자(220)라는 분류를 하면, 화자 분류기(430)는 웰컴 인터페이스(430)를 부가적으로 또는 대안적으로 디스플레이할 수 있다. 예를 들어, 웰컴 인터페이스(430)는 이동 디바이스(202)가 언로크된 후에 이동 디바이스(202) 상에 초기에 디스플레이되는 인터페이스일 수 있다.
시스템들(200, 300, 및 400)의 상이한 구성들이 등록 인터페이스(210), 음향 데이터 데이터베이스(230), 화자 검증 개시기(304), 서브워드 식별기(310), 검증 어구 획득기(320), 검증 인터페이스(340), 서브워드 비교기(420), 화자 분류기(430), 및 웰컴 인터페이스(440)의 기능성이 조합, 추가로 분리, 분배, 또는 교환되는 경우에 사용될 수 있다. 시스템들(200, 300, 및 400)은 단일 디바이스, 예를 들어, 이동 디바이스에서 구현될 수 있거나, 다중 디바이스들, 예를 들어 클라이언트 디바이스 및 서버 디바이스에 걸쳐 분배될 수 있다.
도 5는 화자(302)의 신원을 검증하는 예시적인 프로세스(500)의 또 하나의 플로우차트이다. 다음에 도 3 및 4를 참조하여 설명된 시스템들(300 및 400)의 소자들에 의해 수행되는 것으로 프로세스(500)를 설명한다. 그러나, 프로세스(500)는 다른 시스템들 또는 시스템 구성들에 의해 수행될 수 있다.
프로세스(500)는 화자(302)의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 것(510)을 포함할 수 있다. 예를 들어, 시스템(200)은 이동 디바이스(202)를 언로크하기 위해 화자(302)로부터 음성 명령 "OK COMPUTER, UNLOCK"을 수신할 수 있고, 화자 검증 개시기(304)는 서브워드 식별기(310)에 검증 어구의 요구를 제공할 수 있고, 서브워드 식별기(310)는 검증 어구의 요구를 수신할 수 있다.
프로세스(500)는 검증 어구에 포함될 서브워드들을 식별하는 것(520)을 포함할 수 있다. 예를 들어, 화자(302)의 신원을 검증하기 위한 검증 어구의 요구를 수신하는 것에 응답하여, 서브워드 식별기(310)는 서브워드들 "I", "WANT", "TO", "BE", "AN", "ASTRO", "NAUT", "WHEN", "GROW", 및 "UP"이 특정한 사용자(220)가 말한 서브워드들 "I", "WANT", "TO", "BE", "AN", "NAUT", "WHEN", "GROW", 및 "UP"을 나타내는 트레이닝 음향 데이터가 음향 데이터 데이터베이스(230) 내에 저장되었다고 결정한 것 및 서브워드 "ASTRO"가 특정하게 사운드 구별되고 특정한 사용자(220)가 말한 서브워드 "ASTRO"를 나타내는 트레이닝 음향 데이터가 음향 데이터 데이터베이스(230) 내에 저장되어 있지 않다고 결정한 것에 기초하여 검증 어구에 포함되어야 하는 것을 식별할 수 있다.
프로세스(500)는 검증 어구로서 식별된 서브워드들 중 적어도 일부를 포함하는 후보 어구를 획득하는 것(530)을 포함할 수 있다. 예를 들어, 검증 어구에 포함될 서브워드들을 식별하는 것에 응답하여, 검증 어구 획득기(320)는 후보 어구들 데이터베이스(330)로부터 다중 후보 어구들 "I WANT TO BE AT GREAT FALLS PARK TODAY" 및 "I WANT TO BE AN ASTRONAUT WHEN I GROW UP"을 획득할 수 있고, 특정한 후보 어구, "I WANT TO BE AN ASTRONAUT WHEN I GROW UP"이 (ⅰ) 적어도 10개의 서브워드들을 포함하고,(ⅱ) 서브워드들의 적어도 90%가 저장된 트레이닝 음향 데이터를 갖고, (ⅲ) 특정하게 사운드 구별되고 트레이닝 음향 데이터가 저장되지 않은 식별된 서브워드 "ASTRO"를 포함한다는 것을 결정할 수 있고, 이 결정에 기초하여, 검증 어구로서 특정한 후보 어구를 선택할 수 있다.
프로세스(500)는 화자(302)의 신원을 검증하기 위한 검증 어구의 요구에 대한 응답으로서 검증 어구를 제공하는 것(540)을 포함할 수 있다. 예를 들어, 검증 인터페이스(340)는 "PLEASE SAY 'I WANT TO BE AN ASTRONAUT WHEN I GROW UP'"을 디스플레이할 수 있다.
프로세스(500)는 화자(302)가 말한 검증 어구의 서브워드들을 나타내는 음향 데이터를 획득하는 것(550)을 포함할 수 있다. 예를 들어, 서브워드 비교기(420)는 화자(302)가 말한 후보 어구 "I WANT TO BE AN ASTRONAUT WHEN I GROW UP" 내의 각각의 서브워드를 나타내는 음향 데이터를 획득할 수 있다.
프로세스(500)는 획득된 음향 데이터가 저장된 트레이닝 음향 데이터와 일치하는 것을 결정하는 것(560)을 포함할 수 있다. 예를 들어, 서브워드 비교기(420)는 매치 스코어들이 획득된 음향 데이터와 저장된 트레이닝 음향 데이터 간의 서브워드들 각각에 대한 거리를 계산한 것에 기초하여 결정되는 경우에, 서브워드들 "I", "WANT", "TO", "BE", "AN", "NAUT", "WHEN", "GROW", 및 "UP"의 각각에 대해 매치 스코어들을 평균한 것에 기초하여 90%의 최종 스코어를 발생할 수 있다.
프로세스(500)는 특정한 사용자(220)로서 화자(302)를 분류하는 것(570)을 포함할 수 있다. 예를 들어, 화자 분류기(430)는 서브워드 비교기(420)에 의해 발생된 90%의 최종 스코어가 적어도 90%라는 것을 결정할 수 있다. 특정한 사용자(220)로서 화자(302)를 분류하는 것에 응답하여, 화자 분류기(403)는 트레이닝 음향 데이터로서 음향 데이터 데이터베이스(230) 내에 획득된 음향 데이터를 저장할 수 있고 웰컴 인터페이스(440)의 디스플레이를 트리거할 수 있다.
일부 구현들에서, 프로세스(500)의 원리들은 또한 화자 검증을 위해 사용될 수 있다. 예를 들어, 시스템(400)은 다중 사용자들 각각에 대한 최종 스코어들을 발생하기 위해 획득된 음향 데이터를 저장된 트레이닝 음향 데이터와 비교할 수 있고, 특정한 사용자에 대한 최종 스코어가 적어도 90%인 유일한 최종 스코어라는 것을 결정할 수 있고, 특정한 사용자로서 화자를 식별할 수 있다.
본 명세서에 설명된 주제의 실시예들, 기능적 동작들 및 프로세스들이 디지털 전자 회로에서, 실체적으로 실시된 컴퓨터 소프트웨어 또는 펌웨어에서, 본 명세서에 개시된 구조들 및 그들의 구조적 등가물들을 포함하는, 컴퓨터 하드웨어에서, 또는 이들 중 하나 이상의 조합에서 구현될 수 있다. 본 명세서에 설명된 주제의 실시예들은 하나 이상의 컴퓨터 프로그램, 즉 데이터 처리 장치에 의해, 또는 그 동작을 제어하기 위해 실행하기 위한 실체적 비휘발성 프로그램 캐리어 상에 인코드된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈로서 구현될 수 있다. 대안적으로 또는 부가적으로, 프로그램 명령어들은 인공적으로 발생된 전파된 신호, 예를 들어, 데이터 처리 장치에 의해 실행하기에 적합한 수신기 장치에 송신하기 위한 정보를 인코드하도록 발생된 머신-발생된 전기적, 광학적, 또는 전자기적 신호에 대해 인코드될 수 있다. 컴퓨터 저장 매체는 머신 판독가능 저장 디바이스, 머신 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 이들 중 하나 이상의 조합일 수 있다.
용어 "데이터 처리 장치"는 예를 들어 프로그래머블 프로세서, 컴퓨터, 또는 다중 프로세서들 또는 컴퓨터들을 포함하는, 데이터를 처리하는 모든 종류의 장치, 디바이스들, 및 머신들을 포함한다. 장치는 특수 목적 논리 회로, 예를 들어, FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(주문형 집적 회로)을 포함할 수 있다. 장치는 또한 하드웨어에 부가하여, 해당 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다.
(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 모듈, 소프트웨어 모듈, 스크립트, 또는 코드라고 하기도 하거나 설명될 수 있는) 컴퓨터 프로그램은 컴파일되거나 인터프리트되는 언어들, 또는 선언형 또는 절차형 언어들을 포함하는, 임의 형태의 프로그래밍 언어로 작성될 수 있고, 그것은 스탠드얼론 프로그램으로서 또는 모듈, 소자, 서브루틴, 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛으로서 포함하는 임의 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내의 파일에 대응할 수 있지만 반드시 그럴 필요는 없다. 프로그램은 다른 프로그램들 또는 데이터(예를 들어, 마크업 언어 문서 내에 저장된 하나 이상의 스크립트)를 홀드하는 파일의 부분 내에, 해당 프로그램에 전용된 단일 파일 내에, 또는 다중 조정 파일들(예를 들어, 하나 이상의 모듈, 서브 프로그램들, 또는 코드의 부분들을 저장하는 파일들) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에 또는 하나의 사이트에 배치되거나 다중 사이트들에 걸쳐 분배되고 통신 네트워크에 의해 상호 접속된 다중 컴퓨터들 상에서 실행되도록 배치될 수 있다.
본 명세서에 설명된 프로세스들 및 논리 흐름들은 입력 데이터에 대해 동작하고 출력을 발생함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래머블 컴퓨터들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름들은 또한 특수 목적 논리 회로, 예를 들어, FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(주문형 집적 회로)에 의해 수행될 수 있고, 장치가 또한 이들로서 구현될 수 있다.
컴퓨터 프로그램의 실행을 위해 적합한 컴퓨터들은 예를 들어, 일반 또는 특수 목적 마이크로프로세서들 또는 둘 다, 또는 기타 종류의 중앙 처리 장치를 포함하고 이들에 기초할 수 있다. 일반적으로, 중앙 처리 장치는 리드 온리 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들을 수행하거나 실행하는 중앙 처리 장치 및 명령어들 및 데이터를 저장하는 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하는 하나 이상의 대량 저장 디바이스, 예를 들어, 자기, 자기 광학 디스크들, 또는 광학 디스크들로부터 데이터를 수신하거나 그들에 데이터를 전달하고, 또는 둘 다를 하도록 동작 결합되거나 그들을 포함할 수 있다. 그러나, 컴퓨터는 이러한 디바이스들을 가질 필요는 없다. 더구나, 컴퓨터는 다른 디바이스, 예를 들어, 몇가지 예로, 이동 전화, 개인 휴대 단말기(PDA), 이동 오디오 또는 비디오 플레이어, 게임 콘솔, 전지구 위치 파악 시스템(GPS) 수신기, 또는 휴대용 저장 디바이스(예를 들어, 유니버설 시리얼 버스(USB) 플래시 드라이브) 내에 매립될 수 있다.
컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예로서 반도체 메모리 디바이스들, 예를 들어, EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 예를 들어, 내부 하드 디스크들 또는 탈착식 디스크들; 자기 광학 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스를 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 그 안에 포함될 수 있다.
사용자와의 상호 작용을 제공하기 위해, 본 명세서에 설명된 주제의 실시예들은 사용자에게 정보를 디스플레이하기 위한, 디스플레이 디바이스, 예를 들어, CRT(음극선관) 또는 LCD(액정 디스플레이) 및 사용자가 컴퓨터에 입력을 제공할 수 있는, 키보드 및 포인팅 디바이스, 예를 들어, 마우스 또는 트랙볼을 갖는 컴퓨터 상에 구현될 수 있다. 다른 종류의 디바이스들이 역시 사용자와의 상호 작용을 제공하기 위해 사용될 수 있고, 예를 들어, 사용자에 제공된 피드백은 임의 형태의 감지 피드백, 예를 들어, 시각 피드백, 가청 피드백, 또는 촉각 피드백일 수 있고; 사용자로부터의 입력은 음향, 음성, 또는 촉각 입력을 포함하는 임의 형태로 수신될 수 있다. 또한, 컴퓨터는 사용자에 의해 사용된 디바이스에 문서들을 보내고 디바이스로부터 문서를 수신함으로써; 예를 들어, 웹 브라우저로부터 수신된 요구들에 응답하여 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지들을 보냄으로써 사용자와 상호 작용할 수 있다.
본 명세서에 설명된 주제의 실시예들은 예를 들어, 데이터 서버로서 백 엔드 소자를 포함하고, 또는 미들웨어 소자, 예를 들어 애플리케이션 서버를 포함하고, 또는 프론트 엔드 소자, 예를 들어, 그래픽 사용자 인터페이스 또는 사용자가 본 명세서에 설명된 주제의 구현과 상호 작용할 수 있는 웹 브라우저를 갖는 클라이언트 컴퓨터, 또는 하나 이상의 이러한 백 엔드, 미들웨어, 또는 프론트 엔드 소자들의 어떤 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 소자들은 임의의 형태 또는 디지털 데이터 통신, 예를 들어, 통신 네트워크의 매체에 의해 상호 접속될 수 있다. 통신 네트워크들의 예들은 근거리 네트워크("LAN") 및 광역 네트워크("WAN"), 예를 들어, 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 떨어져 있고 전형적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터들 상에 실행하고 서로와의 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들에 의해 생긴다.
본 명세서가 많은 특정한 구현 상세들을 포함하지만, 이들은 청구될 수 있는 범위에 대한 제한으로서가 아니라, 오히려 특정한 실시예들에 특정될 수 있는 특징들의 설명들로서 해석되어야 한다. 별도의 실시예들의 맥락에서 본 명세서에 설명된 소정의 특징들은 또한 단일 실시예의 조합에서 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 설명된 다양한 특징들은 또한 별도로 다중 실시예들에서 또는 임의의 적합한 부조합으로 구현될 수 있다. 게다가, 특징들이 소정의 조합들 및 심지어 이와 같이 초기에 청구된 것으로 동작하는 것으로 위에 설명될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징은 일부 경우들에서 조합으로부터 실시될 수 있고, 청구된 조합은 부조합 또는 부조합의 변형으로 될 수 있다.
유사하게, 동작들이 특정한 순서로 도면에 도시되지만, 이것은 이러한 동작들이 도시한 특정한 순서 또는 순차적 순서로 수행되거나, 모든 도시된 동작들이 원하는 결과들을 달성하기 위해 수행되는 것을 요구하는 것으로 이해되지 않아야 한다. 소정의 상황들에서, 멀티태스킹 및 패러랠 처리가 유리할 수 있다. 더구나, 위에 설명된 실시예들 내의 다양한 시스템 소자들의 분리는 모든 실시예들에서의 이러한 분리를 요구하는 것으로 이해되지 않아야 하고, 설명된 프로그램 소자들 및 시스템들은 일반적으로 단일 소프트웨어 제품 내에 함께 통합될 수 있거나 다중 소프트웨어 제품들 내에 패키지될 수 있다는 것을 이해하여야 한다.
주제의 특정한 실시예들이 설명되었다. 다른 실시예들이 다음의 청구범위 내에 있다. 예를 들어, 청구범위에 나열된 동작들은 상이한 순서로 수행될 수 있고 원하는 결과들을 여전히 달성할 수 있다. 한 예로서, 첨부 도면에 도시된 프로세스들은 원하는 결과들을 발성하기 위해, 반드시 도시한 특정한 순서, 순차적 순서를 요구하지 않는다. 소정의 구현들에서, 멀티태스킹 및 패러랠 처리가 유리할 수 있다. 다른 단계들이 제공될 수 있거나, 단계들은 설명된 프로세스들로부터 제거될 수 있다. 따라서, 다른 구현들은 다음의 청구범위 내에 있다.

Claims (20)

  1. 방법으로서,
    데이터 처리 하드웨어에 의해, 특정 사용자가 등록 어구를 말하는 것을 나타내는 등록 음성 데이터를 획득하는 단계 - 상기 등록 어구는 적어도 하나의 서브워드로서, 이에 대해 상기 사용자가 상기 서브워드를 말하는 것을 나타내는 저장된 등록 음성 데이터가 획득되지 않은 상기 적어도 하나의 서브워드를 포함함 -;
    상기 데이터 처리 하드웨어에서, 검증되지 않은 사용자의 신원을 검증하기 위한 요청을 수신하는 단계;
    상기 검증되지 않은 사용자의 상기 신원을 검증하기 위한 상기 요청을 수신하는 것에 응답하여, 상기 데이터 처리 하드웨어에 의해, 검증 어구를 말하라고 상기 검증되지 않은 사용자에게 프롬프트(prompting)하는 단계;
    상기 데이터 처리 하드웨어에서, 상기 검증되지 않은 사용자가 상기 검증 어구를 말하는 것을 나타내는 검증 음성 데이터를 수신하는 단계;
    상기 데이터 처리 하드웨어에 의해, 상기 등록 음성 데이터 및 상기 검증 음성 데이터에 기초하여, 상기 검증 어구를 말한 상기 검증되지 않은 사용자가 상기 등록 어구를 말한 상기 특정 사용자를 포함하는지 여부를 결정하는 단계; 및
    상기 검증 어구를 말한 상기 검증되지 않은 사용자가 상기 등록 어구를 말한 상기 특정 사용자를 포함한다는 결정에 응답하여, 상기 데이터 처리 하드웨어에 의해, 상기 검증되지 않은 사용자의 신원을 상기 특정 사용자로 검증하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 단계는:
    상기 데이터 처리 하드웨어에서, 상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 수신하는 단계; 및
    상기 데이터 처리 하드웨어에 의해, 상기 수신된 등록 음성 데이터를 상기 데이터 처리 하드웨어와 통신하는 메모리 하드웨어에 저장하는 단계
    를 포함하는, 방법.
  3. 제2항에 있어서, 상기 데이터 처리 하드웨어에 의해, 상기 수신된 등록 음성 데이터가 최소 횟수만큼 상기 특정 사용자에 의해 말해진 최소 개수의 서브워드들을 포함하는지를 결정하는 단계를 더 포함하는, 방법.
  4. 제3항에 있어서, 상기 서브워드들은 음소들(phonemes)을 포함하는, 방법.
  5. 제2항에 있어서, 상기 수신된 등록 음성 데이터를 상기 메모리 하드웨어에 저장하는 단계는 상기 특정 사용자가 상기 등록 어구 내의 서브워드들을 말하는 것을 나타내는 트레이닝 음향 데이터를 저장하는 단계를 포함하는, 방법.
  6. 제1항에 있어서, 상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 단계는 발언 품질 임계값(utterance quality threshold)을 만족하는 등록 음성 데이터가 수신될 때까지 반복되는, 방법.
  7. 제1항에 있어서, 상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 단계에 앞서, 상기 데이터 처리 하드웨어에 의해, 상기 등록 어구를 말하라고 상기 특정 사용자에게 프롬프트하는 단계를 더 포함하는, 방법.
  8. 제7항에 있어서, 상기 등록 어구를 말하라고 상기 특정 사용자에게 프롬프트하는 단계는 상기 등록 어구를 복수 회 말하라고 상기 특정 사용자에게 프롬프트하는 단계를 포함하는, 방법.
  9. 제1항에 있어서, 상기 등록 어구는 사전 결정된 등록 어구를 포함하는, 방법.
  10. 제1항에 있어서, 상기 검증 어구를 말하는 상기 검증되지 않은 사용자가 상기 특정 사용자를 포함하는지 여부를 결정하는 단계는:
    상기 검증 음성 데이터가 상기 등록 음성 데이터와 일치하는지를 결정하는 단계; 및
    상기 검증 음성 데이터가 상기 등록 음성 데이터와 일치한다는 결정에 응답하여, 상기 검증되지 않은 사용자를 상기 특정 사용자로 분류하는 단계
    를 포함하는, 방법.
  11. 시스템으로서,
    데이터 처리 하드웨어; 및
    상기 데이터 처리 하드웨어와 통신하는 메모리 하드웨어를 포함하고, 상기 메모리 하드웨어는 명령어들을 저장하고, 상기 명령어들은 상기 데이터 처리 하드웨어에서 실행되면 상기 데이터 처리 하드웨어가 동작들을 수행하도록 하고, 상기 동작들은:
    특정 사용자가 등록 어구를 말하는 것을 나타내는 등록 음성 데이터를 획득하는 것 - 상기 등록 어구는 적어도 하나의 서브워드로서, 상기 사용자가 상기 서브워드를 말하는 것을 나타내는 저장된 등록 음성 데이터가 획득되지 않은 상기 적어도 하나의 서브워드를 포함함 -;
    검증되지 않은 사용자의 신원을 검증하기 위한 요청을 수신하는 것;
    상기 검증되지 않은 사용자의 상기 신원을 검증하기 위한 상기 요청을 수신하는 것에 응답하여, 검증 어구를 말하라고 상기 검증되지 않은 사용자에게 프롬프트하는 것;
    상기 검증되지 않은 사용자가 상기 검증 어구를 말하는 것을 나타내는 검증 음성 데이터를 수신하는 것;
    상기 등록 음성 데이터 및 상기 검증 음성 데이터에 기초하여, 상기 검증 어구를 말한 상기 검증되지 않은 사용자가 상기 등록 어구를 말한 상기 특정 사용자를 포함하는지 여부를 결정하는 것; 및
    상기 검증 어구를 말한 상기 검증되지 않은 사용자가 상기 등록 어구를 말한 상기 특정 사용자를 포함한다는 결정에 응답하여, 상기 검증되지 않은 사용자의 신원을 상기 특정 사용자로 검증하는 것을 포함하는,
    시스템.
  12. 제11항에 있어서,
    상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 것은:
    상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 수신하는 것; 및
    상기 수신된 등록 음성 데이터를 상기 메모리 하드웨어에 저장하는 것
    을 포함하는, 시스템.
  13. 제12항에 있어서, 상기 동작들은 상기 수신된 등록 음성 데이터가 최소 횟수만큼 상기 특정 사용자에 의해 말해진 최소 개수의 서브워드들을 포함하는지를 결정하는 것을 더 포함하는, 시스템.
  14. 제13항에 있어서, 상기 서브워드들은 음소들을 포함하는, 시스템.
  15. 제12항에 있어서, 상기 수신된 등록 음성 데이터를 상기 메모리 하드웨어에 저장하는 것은 상기 특정 사용자가 상기 등록 어구 내의 서브워드들을 말하는 것을 나타내는 트레이닝 음향 데이터를 저장하는 것을 포함하는, 시스템.
  16. 제11항에 있어서, 상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 것은 발언 품질 임계값을 만족하는 등록 음성 데이터가 수신될 때까지 반복되는, 시스템.
  17. 제11항에 있어서, 상기 동작들은, 상기 특정 사용자가 상기 등록 어구를 말하는 것을 나타내는 상기 등록 음성 데이터를 획득하는 것에 앞서, 상기 등록 어구를 말하라고 상기 특정 사용자에게 프롬프트하는 것을 더 포함하는, 시스템.
  18. 제17항에 있어서, 상기 등록 어구를 말하라고 상기 특정 사용자에게 프롬프트하는 것은 상기 등록 어구를 복수 회 말하라고 상기 특정 사용자에게 프롬프트하는 것을 포함하는, 시스템.
  19. 제11항에 있어서, 상기 등록 어구는 사전 결정된 등록 어구를 포함하는, 시스템.
  20. 제11항에 있어서, 상기 검증 어구를 말하는 상기 검증되지 않은 사용자가 상기 특정 사용자를 포함하는지 여부를 결정하는 것은:
    상기 검증 음성 데이터가 상기 등록 음성 데이터와 일치하는지를 결정하는 것; 및
    상기 검증 음성 데이터가 상기 등록 음성 데이터와 일치한다는 결정에 응답하여, 상기 검증되지 않은 사용자를 상기 특정 사용자로 분류하는 것
    을 포함하는, 시스템.
KR1020207029347A 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증 KR102298583B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217027875A KR102491993B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US14/242,098 US8812320B1 (en) 2014-04-01 2014-04-01 Segment-based speaker verification using dynamically generated phrases
US14/242,098 2014-04-01
US14/447,115 US9424846B2 (en) 2014-04-01 2014-07-30 Segment-based speaker verification using dynamically generated phrases
US14/447,115 2014-07-30
KR1020167022325A KR102167657B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
PCT/US2015/023045 WO2015153351A1 (en) 2014-04-01 2015-03-27 Segment-based speaker verification using dynamically generated phrases

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020167022325A Division KR102167657B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217027875A Division KR102491993B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증

Publications (2)

Publication Number Publication Date
KR20200120765A true KR20200120765A (ko) 2020-10-21
KR102298583B1 KR102298583B1 (ko) 2021-09-06

Family

ID=51301789

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020167022023A KR101763089B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020177020114A KR101874274B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020167022325A KR102167657B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020217027875A KR102491993B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020207029347A KR102298583B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020167022023A KR101763089B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020177020114A KR101874274B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020167022325A KR102167657B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
KR1020217027875A KR102491993B1 (ko) 2014-04-01 2015-03-27 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증

Country Status (6)

Country Link
US (7) US8812320B1 (ko)
EP (5) EP3401906B1 (ko)
JP (4) JP6208375B2 (ko)
KR (5) KR101763089B1 (ko)
CN (2) CN110827833B (ko)
WO (1) WO2015153351A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029875A1 (ko) * 2022-08-05 2024-02-08 삼성전자주식회사 전자 장치, 지능형 서버, 및 화자 적응형 음성 인식 방법

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2305002A4 (en) * 2008-07-20 2015-04-08 Samsung Electronics Co Ltd METHOD AND SYSTEM FOR MANAGING MULTIPLE APPLICATIONS IN NEAR FIELD COMMUNICATION
US8812320B1 (en) 2014-04-01 2014-08-19 Google Inc. Segment-based speaker verification using dynamically generated phrases
US9986075B2 (en) * 2014-06-04 2018-05-29 Qualcomm Incorporated Mobile device including a substantially centrally located earpiece
CN105357006A (zh) * 2014-08-20 2016-02-24 中兴通讯股份有限公司 一种基于声纹特征进行安全认证的方法及设备
CN105575391B (zh) 2014-10-10 2020-04-03 阿里巴巴集团控股有限公司 声纹信息管理方法、装置以及身份认证方法、系统
US9578418B2 (en) * 2015-01-21 2017-02-21 Qualcomm Incorporated System and method for controlling output of multiple audio output devices
US9723406B2 (en) 2015-01-21 2017-08-01 Qualcomm Incorporated System and method for changing a channel configuration of a set of audio output devices
US9978374B2 (en) 2015-09-04 2018-05-22 Google Llc Neural networks for speaker verification
US10373612B2 (en) * 2016-03-21 2019-08-06 Amazon Technologies, Inc. Anchored speech detection and speech recognition
CN105933323B (zh) * 2016-06-01 2019-05-31 百度在线网络技术(北京)有限公司 声纹注册、认证方法及装置
GB2552723A (en) * 2016-08-03 2018-02-07 Cirrus Logic Int Semiconductor Ltd Speaker recognition
CN106209604A (zh) * 2016-08-26 2016-12-07 北京小米移动软件有限公司 添加好友的方法及装置
CN107886955B (zh) * 2016-09-29 2021-10-26 百度在线网络技术(北京)有限公司 一种语音会话样本的身份识别方法、装置及设备
US10490195B1 (en) * 2017-09-26 2019-11-26 Amazon Technologies, Inc. Using system command utterances to generate a speaker profile
KR102595184B1 (ko) * 2018-05-25 2023-10-30 삼성전자주식회사 전자 장치, 전자 장치의 제어 방법 및 컴퓨터 판독 가능 매체
CN109448725A (zh) * 2019-01-11 2019-03-08 百度在线网络技术(北京)有限公司 一种语音交互设备唤醒方法、装置、设备及存储介质
US10923111B1 (en) 2019-03-28 2021-02-16 Amazon Technologies, Inc. Speech detection and speech recognition
KR20200129346A (ko) * 2019-05-08 2020-11-18 삼성전자주식회사 디스플레이 장치 및 이의 제어 방법
CN110808053B (zh) * 2019-10-09 2022-05-03 深圳市声扬科技有限公司 一种驾驶员身份验证方法、装置及电子设备
US11315575B1 (en) * 2020-10-13 2022-04-26 Google Llc Automatic generation and/or use of text-dependent speaker verification features
WO2023091171A1 (en) * 2021-11-16 2023-05-25 Google Llc Shared assistant profiles verified via speaker identification
CN115604008A (zh) * 2022-10-17 2023-01-13 支付宝(杭州)信息技术有限公司(Cn) 职业身份验证方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1020883A (ja) * 1996-07-02 1998-01-23 Fujitsu Ltd ユーザ認証装置
KR20010019772A (ko) * 1999-08-30 2001-03-15 강선미 음성비밀단어를 이용한 사용자 인증 시스템 및 방법
US7289957B1 (en) * 1999-10-28 2007-10-30 Siemens Aktiengesellschaft Verifying a speaker using random combinations of speaker's previously-supplied syllable units
US20120130714A1 (en) * 2010-11-24 2012-05-24 At&T Intellectual Property I, L.P. System and method for generating challenge utterances for speaker verification
US20130132091A1 (en) * 2001-01-31 2013-05-23 Ibiometrics, Inc. Dynamic Pass Phrase Security System (DPSS)

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3812320A (en) 1971-01-13 1974-05-21 Pad B Co Inc Heated ground cover for the dissipation of moisture
US5088097A (en) 1990-04-04 1992-02-11 Canon Kabushiki Kaisha Semiconductor laser element capable of changing emission wavelength, and method of driving the same
CA2105034C (en) * 1992-10-09 1997-12-30 Biing-Hwang Juang Speaker verification with cohort normalized scoring
KR950003389A (ko) * 1993-07-20 1995-02-16 하기주 자동차 문손잡이 구조물용 폴리아미드 수지조성물
US6081782A (en) * 1993-12-29 2000-06-27 Lucent Technologies Inc. Voice command control and verification system
US5797123A (en) * 1996-10-01 1998-08-18 Lucent Technologies Inc. Method of key-phase detection and verification for flexible speech understanding
WO1998022936A1 (en) * 1996-11-22 1998-05-28 T-Netix, Inc. Subword-based speaker verification using multiple classifier fusion, with channel, fusion, model, and threshold adaptation
EP1058926A1 (en) * 1998-03-03 2000-12-13 Lernout & Hauspie Speech Products N.V. Multi-resolution system and method for speaker verification
US6141644A (en) 1998-09-04 2000-10-31 Matsushita Electric Industrial Co., Ltd. Speaker verification and speaker identification based on eigenvoices
JP4557481B2 (ja) 1999-08-03 2010-10-06 富士通株式会社 半導体レーザの駆動回路および駆動方法
JP2003302999A (ja) * 2002-04-11 2003-10-24 Advanced Media Inc 音声による個人認証システム
JP4463526B2 (ja) * 2003-10-24 2010-05-19 株式会社ユニバーサルエンターテインメント 声紋認証システム
US7660487B2 (en) 2003-12-10 2010-02-09 Sony Corporation Image processing method and apparatus with image resolution conversion related to relative movement detection
US20060293898A1 (en) * 2005-06-22 2006-12-28 Microsoft Corporation Speech recognition system for secure information
CN1963917A (zh) * 2005-11-11 2007-05-16 株式会社东芝 评价语音的分辨力、说话人认证的注册和验证方法及装置
US8265341B2 (en) * 2010-01-25 2012-09-11 Microsoft Corporation Voice-body identity correlation
WO2012075641A1 (en) 2010-12-10 2012-06-14 Panasonic Corporation Device and method for pass-phrase modeling for speaker verification, and verification system
US9262612B2 (en) * 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
CN102801530B (zh) * 2012-09-04 2015-08-26 飞天诚信科技股份有限公司 一种基于声音传输的认证方法
US9230550B2 (en) * 2013-01-10 2016-01-05 Sensory, Incorporated Speaker verification and identification using artificial neural network-based sub-phonetic unit discrimination
US20140341593A1 (en) 2013-05-16 2014-11-20 Alcatel-Lucent Usa Inc. Method And Apparatus For Optical Transmission In A Communication Network
US20150063812A1 (en) 2013-08-27 2015-03-05 Calix, Inc. Compensator for wavelength drift due to variable laser injection current and temperature in a directly modulated burst mode laser
EP3044888B1 (en) 2013-10-14 2018-09-19 Huawei Technologies Co., Ltd. Wavelength stabilizer for twdm-pon burst mode dbr laser
US8812320B1 (en) * 2014-04-01 2014-08-19 Google Inc. Segment-based speaker verification using dynamically generated phrases
US9542948B2 (en) * 2014-04-09 2017-01-10 Google Inc. Text-dependent speaker identification

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1020883A (ja) * 1996-07-02 1998-01-23 Fujitsu Ltd ユーザ認証装置
KR20010019772A (ko) * 1999-08-30 2001-03-15 강선미 음성비밀단어를 이용한 사용자 인증 시스템 및 방법
US7289957B1 (en) * 1999-10-28 2007-10-30 Siemens Aktiengesellschaft Verifying a speaker using random combinations of speaker's previously-supplied syllable units
US20130132091A1 (en) * 2001-01-31 2013-05-23 Ibiometrics, Inc. Dynamic Pass Phrase Security System (DPSS)
US20120130714A1 (en) * 2010-11-24 2012-05-24 At&T Intellectual Property I, L.P. System and method for generating challenge utterances for speaker verification

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김유진, 정재호, ‘전화망을 위한 어구 종속 확인 시스템’, 대한전자공학회 추계학술대회 논문집, 제22권, 제2호, pp.663~667, 1999년 11월.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029875A1 (ko) * 2022-08-05 2024-02-08 삼성전자주식회사 전자 장치, 지능형 서버, 및 화자 적응형 음성 인식 방법

Also Published As

Publication number Publication date
US9424846B2 (en) 2016-08-23
US20160307574A1 (en) 2016-10-20
KR20160130223A (ko) 2016-11-10
US20210295850A1 (en) 2021-09-23
KR102491993B1 (ko) 2023-01-26
EP3392880A1 (en) 2018-10-24
EP3401906B1 (en) 2020-01-01
JP6208375B2 (ja) 2017-10-04
US10037760B2 (en) 2018-07-31
JP6208313B2 (ja) 2017-10-04
CN106030702A (zh) 2016-10-12
US20150279374A1 (en) 2015-10-01
KR20170086703A (ko) 2017-07-26
EP3392880B1 (en) 2023-01-25
EP3154056B1 (en) 2018-10-03
EP3664082A1 (en) 2020-06-10
US9741348B2 (en) 2017-08-22
CN110827833B (zh) 2023-08-15
KR101763089B1 (ko) 2017-08-04
JP6258438B2 (ja) 2018-01-10
JP2017049600A (ja) 2017-03-09
US11056120B2 (en) 2021-07-06
US10504524B2 (en) 2019-12-10
CN110827833A (zh) 2020-02-21
KR102167657B1 (ko) 2020-10-19
EP3090428B1 (en) 2018-06-06
JP6586149B2 (ja) 2019-10-02
JP2018036675A (ja) 2018-03-08
JP2017516122A (ja) 2017-06-15
EP3401906A1 (en) 2018-11-14
CN106030702B (zh) 2019-12-06
KR102298583B1 (ko) 2021-09-06
EP3154056A1 (en) 2017-04-12
KR101874274B1 (ko) 2018-07-03
KR20210110414A (ko) 2021-09-07
US20200075029A1 (en) 2020-03-05
EP3090428A1 (en) 2016-11-09
JP2017058689A (ja) 2017-03-23
US20180025734A1 (en) 2018-01-25
US11568879B2 (en) 2023-01-31
KR20160103140A (ko) 2016-08-31
US20180308492A1 (en) 2018-10-25
US8812320B1 (en) 2014-08-19
WO2015153351A1 (en) 2015-10-08

Similar Documents

Publication Publication Date Title
KR102167657B1 (ko) 동적으로 발생된 어구들을 사용하는 세그먼트 기반 화자 검증
US9542948B2 (en) Text-dependent speaker identification
RU2697736C1 (ru) Верификация говорящего

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant