KR20190032498A - 수정된 용어들을 사용하는 음향 모델 트레이닝 - Google Patents

수정된 용어들을 사용하는 음향 모델 트레이닝 Download PDF

Info

Publication number
KR20190032498A
KR20190032498A KR1020197005232A KR20197005232A KR20190032498A KR 20190032498 A KR20190032498 A KR 20190032498A KR 1020197005232 A KR1020197005232 A KR 1020197005232A KR 20197005232 A KR20197005232 A KR 20197005232A KR 20190032498 A KR20190032498 A KR 20190032498A
Authority
KR
South Korea
Prior art keywords
terms
transcription
determining
audio data
replacement
Prior art date
Application number
KR1020197005232A
Other languages
English (en)
Other versions
KR102256705B1 (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 KR20190032498A publication Critical patent/KR20190032498A/ko
Application granted granted Critical
Publication of KR102256705B1 publication Critical patent/KR102256705B1/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
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/01Assessment or evaluation of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0635Training updating or merging of old and new templates; Mean values; Weighting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0638Interactive procedures
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/221Announcement of recognition results
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

음성 인식을 위한 컴퓨터 저장 매체에 인코딩된 컴퓨터 프로그램들을 포함하는 방법, 시스템 및 장치. 방법들 중 하나는 발언에 대응하는 제1 오디오 데이터를 수신하는 단계; 상기 제1 오디오 데이터의 제1 트랜스크립션을 획득하는 단계; (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 단계; 상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계; 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 단계; 및 상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 단계를 포함한다.

Description

수정된 용어들을 사용하는 음향 모델 트레이닝
본 명세서는 음성 인식에 관한 것이다.
디바이스들은 디바이스의 사용자의 발언에 응답하기 위한 소프트웨어를 포함할 수 있다. 일부 발언들은 디바이스로 하여금 전화 번호로 전화하게 하거나, 전화 번호에 문자를 보내거나, 어플리케이션을 동작하거나 또는 모바일 디바이스 도는 인터넷 상의 정보를 검색하게 하는 명령들을 포함할 수 있다. 디바이스는 사용자로부터의 음성 입력을 인식하기 위해 프로세싱하는 음성-텍스트 변환 또는 자동 음성 인식(ASR)을 이용할 수 있다.
예시적 구현예에서, 용어 또는 용어들의 다양한 발음으로부터 용어 또는 용어들의 개선된 트랜스크립션을 생산할 수 있는 개선된 음성 인식 시스템이 제공된다. 일 구현예에 따르면, 음성 인식 시스템은 사용자로부터 하나 이상의 용어들의 발언을 수신한다. 이에 응답하여, 음성 인식 시스템은 상기 발언의 트랜스크립션을 사용자 디바이스에 제공한다. 상기 제공된 트랜스크립션이 올바르지 않은 경우, 음성 인식 시스템은 상기 트랜스크립션의 특정한 용어 또는 용어들을 수정하기 위한 사용자 입력을 수신할 수 있다. 음성 인식 시스템은 특정한 용어 또는 용어들 및 상기 특정한 용어 또는 용어들에 대응하는 오디오 데이터를 수정하기 위해 사용자 입력을 사용하여 음향 모델을 트레이닝한다.
일반적으로, 본 명세서에 기술된 본 발명의 일 혁신적 양태는 방법들에 포함될 수 있고, 상기 방법들은 발언에 대응하는 제1 오디오 데이터를 수신하는 단계; 상기 제1 오디오 데이터의 제1 트랜스크립션을 획득하는 단계; (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 단계; 상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계; 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 단계; 및 상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 단계를 포함한다. 본 양태의 다른 실시예는 대응하는 컴퓨터 시스템, 장치, 및 하나 이상의 컴퓨터 저장 디바이스들에 기록된 컴퓨터 프로그램들을 포함하며, 그 각각은 방법들의 액션들을 수행하도록 구성된다. 하나 이상의 컴퓨터들의 시스템은 특정한 동작들 또는 액션 수단들을 수행하도록 구성되며, 상기 시스템에 소프트웨어, 펌웨어, 하드웨어 또는 그들의 조합이 설치되어 동작시 상기 시스템으로 하여금 동작들 또는 액션들을 수행하게 한다. 하나 이상의 컴퓨터 프로그램들은 특정한 동작들 또는 액션 수단들을 수행하도록 구성되며, 상기 하나 이상의 프로그램들은 데이터 프로세싱 장치에 의해 실행될 때, 상기 장치로 하여금 동작들 또는 액션들을 수행하게 하는 명령어들을 포함한다.
이들 또는 다른 실시예들은 다음 구성들 중 하나 이상을 단독으로 또는 조합으로, 각각 선택적으로 포함할 수 있다. 특히, 일 실시예는 다음의 모든 구성들을 조합하여 포함한다. 상기 방법은 발언에 대응하는 제2 오디오 데이터를 수신하는 단계, 상기 제2 오디오 데이터는 상기 제1 오디오 데이터의 제1 부분에 대응하는 제2 부분을 포함하며; 상기 제2 오디오 데이터의 제2 트랜스크립션을 획득하는 단계; 상기 제2 오디오 데이터로부터 상기 제2 부분을 식별하는 단계; 상기 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득하는 단계; 및 상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득하는 단계를 더 포함한다. 상기 방법은 상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득하는 단계; 및 상기 검색 결과들 중 하나 이상을 제공하는 단계를 더 포함한다. 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함한다. 상기 음성적 유사성을 결정하는 것은 상기 선택된 용어들 중 하나 이상의 각각과 상기 교체 용어들 중 하나 이상의 각각 간에 음성적 거리(phonetic distance)를 계산하는 것을 포함한다. 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함한다. 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함한다. 상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상의 각각이 임계수의 문자들(characters)을 포함함을 결정하는 것을 포함한다.
본 명세서에 기술된 본 발명은 다음의 이점들을 실현하도록 특정한 실시예들에서 구현될 수 있다. 음향 모델은 특정 용어의 다양한 발음들로부터 특정 용어를 인식하도록 트레이닝된다. 트레이닝된 음향 모델을 사용하는 음성 인식 시스템은 사용자의 수정 입력을 수신하지 않고 특정 용어의 다양한 발음들로부터 특정 용어의 수정 트랜스크립션을 제공할 수 있다.
본 명세서의 발명의 하나 이상의 실시예들의 세부 사항은 첨부 도면과 아래의 설명에서 기술된다. 본 발명의 다른 구성들, 양태들 및 이점들은 설명, 도면 및 청구항으로부터 명백해질 것이다.
도 1a는 음성 검색을 수행하기 위한 예시적 방법을 도시하는 도면이다.
도 1b는 음성 검색을 수행하기 위한 다른 예시적 방법을 도시하는 도면이다.
도 2는 예시적 음성 검색 시스템의 도시하는 도면이다.
도 3은 음향 모델을 트레이닝하기 위한 예시적 방법을 도시하는 흐름도이다.
도 4은 트레이닝된 음향 모델을 사용하여 검색 결과들을 제공하기 위한 예시적 방법을 도시하는 흐름도이다.
다양한 도면들에서 동일한 참조 번호 및 기호는 동일한 구성요소를 표시한다.
도 1a는 예시적 사용자 인터페이스에서 수정 입력을 수신하는 것을 포함하는, 음성 검색을 수행하기 위한 예시적 방법을 도시한다. 검색 시스템은 사용자 디바이스 (106a) 예를 들어, 음성 입력을 수신하도록 구성된 휴대폰, 태블릿, 또는 기타 사용자 디바이스 상에 디스플레이하기 위한 사용자 인터페이스(102a)를 제공한다. 사용자 인터페이스(102a)는 쿼리에 대응하는 타이핑된 입력을 수신하는 검색 상자(104) 및 타이핑된 입력 대신에 사용자(10)로부터 제1 음성 쿼리를 수신하기 위한 음성 인식 세션을 개시하는 마이크로폰 아이콘(108)을 포함한다. 사용자(10)는 예를 들어, 사용자 인터페이스(102a)에서 마이크로폰 아이콘(108)을 선택함으로써, 제1 음성 입력(101)을 입력한다. 일부 구현예에서, 사용자 인터페이스는 검색 상자에 대한 타이핑된 입력을 위해 제시될 수 있는 키보드 레이아웃을 포함한다.
사용자 세션에서, 검색 시스템은 사용자(10)로부터 발언(101)를 수신한다. 예를 들면, 발언(101)는 음성 입력일 수 있다. 특히, 사용자(10)는 사용자 디바이스(106a)에 "Directions to La Jolla"의 음성 입력을 제공한다. 예를 들면, 사용자(10)은 "Jolla"를 [z
Figure pct00001
-la]로 발음할 수 있다. 제1 음성 입력(101)에 응답하여, 사용자 인터페이스(102a)는 검색 상자(104)에 제1 음성 입력(101)으로부터 생성된 제1 트랜스크립션(112)의 디스플레이를 포함하여 제시된다. 제1 트랜스크립션(112)은 "Directions to La Zola"이다. 예를 들면, 음성-텍스트 변환 프로세스는 진술된(purported) 트랜스크립션을 대응 제1 트랜스크립션(112)으로서 생성하기 위해 상기 제1 음성 쿼리에 수행될 수 있다. 검색 시스템은 상기 트랜스크립션을 제1 트랜스크립션(112)로서 사용자 인터페이스(102a)에 디스플레이하기 위해 사용자 디바이스(106a)에 제공할 수 있다.
또한, 제1 트랜스크립션(112)은 검색 시스템에 대한 쿼리로서 사용될 수 있다. 검색 시스템은 사용자 인터페이스(102b)에 디스플레이하기 위해 "Directions to La Zola"라는 쿼리에 대한 응답인 검색 결과들(110)를 제공한다. 예를 들면, 검색 결과들(110)은 쿼리에 대한 응답일 것으로 검색 시스템에 의해 결정된 특정한 리소스들에 대한 링크들을 포함할 수 있다. 그러나, 이 예시에서, 인식된 쿼리는 "Jolla"라는 용어 대신 "Zola"라는 용어로 인식되었다.
인식에 응답하여, 사용자 인터페이스(102b)에 도시된 바와 같이, 사용자(10)는 인식된 용어 "Zola"에 대응하는 제1 트랜스크립션(112)의 부분(114)을 선택하기 위해 사용자 인터페이스(102b)와 인터렉션할 수 있다. 예를 들면, 터치 인터페이스에서, 사용자(10)는 인식된 용어(114)를 손가락 또는 스타일러스로 만질 수 있다. 비-터치 인터페이스에서, 사용자는 인식된 용어로 커서를 이동하고, 예를 들어 마우스 입력으로 인식된 용어를 선택할 수 있다.
사용자 인터페이스(102c)를 참조하면, 사용자(10)는 사용자 디바이스(106a)에 제1 입력(111)을 제공한다. 제1 입력(111)은 제1 트랜스크립션(112)의 선택된 부분(114)을 교체하기 위해 제공된다. 예를 들면, 제1 입력(111)은 타이핑된 입력일 수 있다. 사용자(10)는 선택된 부분(114)을 교체하기 위해 "j-o-l-l-a"라는 용어의 철자를 글자마다 타이핑할 수 있다. 사용자(10)는 용어의 철자를 타이핑하기 위해 사용자 인터페이스에 의해 제공된 키보드 레이아웃을 사용할 수 있다.
사용자 인터페이스(102d)에 도시된 바와 같이, 수정된 트랜스크립션 "Directions to La Jolla"가 검색 상자(104)에 디스플레이된다. 또한, 수정된 트랜스크립션(116)에 응답하여, 검색 시스템은 사용자 인터페이스(102d)에 제시하기 위해 수정된 쿼리 "Directions for La Jolla"에 대한 응답인 검색 결과들(120)을 제공한다. 예를 들면, 검색 결과들(120)은 수정된 쿼리에 대한 응답일 것으로 검색 시스템에 의해 결정된 특정한 리소스들에 대한 링크들을 포함할 수 있다. 일부 구현예에서, 검색 시스템은 쿼리를 특정 유형의 요청으로서, 예를 들어, 길안내로 인식하고, 검색 결과들(120)의 일부로서 또는 그 대신에 지도 인터페이스를 제공한다.
도 1b는 음성 검색을 수행하기 위한 다른 예시적 방법을 도시한다. 이 예시에서, 사용자(10)는 선택된 부분(114)을 교체하기 위해 용어의 철자를 타이핑하지 않고 사용자 디바이스(106a)에 수정 입력을 제공할 수 있다. 사용자 인터페이스(102b)를 참조하면, 사용자(10)는 "Zola"라는 용어를 교체하기 위해 제1 트랜스크립션(112)의 부분(114)을 선택한다. 사용자(10)가 제1 트랜스크립션(112)의 부분(114)을 선택하면, 하나 이상의 제안된 트랜스크립션들이 사용자 디바이스(106a)에 제공된다. 예를 들면, 사용자 인터페이스(102c)에 도시된 바와 같이, "Directions to La Jolla"의 제안된 트랜스크립션(117)가 드롭다운 상자(115)에 디스플레이될 수 있다. 사용자(10)는 제안된 트랜스크립션(117)을 선택하여 제1 트랜스크립션(112)을 교체할 수 있다. 예를 들면, 터치 인터페이스에서, 사용자(10)는 사용자 인터페이스(102c)의 부분(119)을 손가락 또는 스타일러스로 만질 수 있다. 비-터치 인터페이스에서, 사용자(10)는 제안된 트랜스크립션(117)을 선택하기 위해 부분(119)으로 커서를 이동하고 예를 들어 마우스 입력으로 부분(119)을 선택할 수 있다.
사용자 인터페이스(102d)에 도시된 바와 같이, 사용자(10)가 제안된 트랜스크립션(117)을 선택하면, 수정된 트랜스크립션 "Directions to La Jolla"가 검색 상자(104)에 디스플레이된다. 또한, 수정된 트랜스크립션(116)에 응답하여, 검색 시스템은 사용자 인터페이스(102d)에 제시하기 위해 수정된 쿼리 "Directions for La Jolla"에 대한 응답인 검색 결과들(120)을 제공한다. 예를 들면, 검색 결과들(120)은 수정된 쿼리에 대한 응답일 것으로 검색 시스템에 의해 결정된 특정한 리소스들에 대한 링크들을 포함할 수 있다. 일부 구현예에서, 검색 시스템은 쿼리를 특정 유형의 요청으로서, 예를 들어, 길안내로 인식하고, 검색 결과들(120)의 일부로서 또는 그 대신에 지도 인터페이스를 제공한다.
도 1a 및 도 1b를 참조하여 기술된 사용자 세션들로부터, 시스템은 음향 모델을 트레이닝하기 위한 트레이닝 데이터를 수신한다. 특히, 시스템은 (i) 제1 음성 입력(101)의 적어도 일부에 대응하는 오디오 데이터 및 (ii) 수정된 트랜스크립션(116) 내의 하나 이상의 용어들을 트레이닝 데이터로서 수신한다. 일부 구현예에서, 시스템은 "Directions to La Jolla [z
Figure pct00002
-la]"에 대응하는 오디오 데이터를 수신하고, 수정된 트랜스크립션(116)에서 교체된 용어 "Jolla"를 트레이닝 데이터로서 수신한다. 시스템은 선택된 용어 "Zola"에 대응하는 오디오 데이터의 부분을 식별한다. 시스템은 오디오 데이터로부터 "Zola [z
Figure pct00003
-la]"에 대응하는 오디오 데이터의 부분을 분리한다. 오디오 데이터의 분리된 부분과 교체된 용어 "Jolla"를 사용하여, 시스템은 음향 모델을 트레이닝한다. 예를 들면, 시스템은 "Zola [z
Figure pct00004
-la]"의 음성 입력에 응답하여, "Jolla"라는 용어를 인식하도록 음향 모델을 트레이닝할 수 있다.
일부 구현예에서, 시스템은 제1 음성 입력에 대응하는 오디오 데이터 및 전체 수정된 트랜스크립션을 트레이닝 데이터로서 수신한다. 예를 들면, "Directions to La Jolla [z
Figure pct00005
-la]"에 대응하는 오디오 데이터와 전체 수정된 트랜스크립션 "Direction to La Jolla"를 수신한다. 오디오 데이터와 전체 트랜스크립션을 사용하여, 시스템은 음향 모델을 트레이닝한다.
사용자 인터페이스(102e)는 트레이닝된 음향 모델을 사용하여 획득된 제2 트랜스크립션(118)의 디스플레이를 포함하여 제시된다. 이 사용자 세션에서, 검색 시스템은 사용자(20)로부터 제2 음성 입력(121)을 수신한다. 특히, 사용자(20)는 사용자 디바이스(106a)에 "Directions to La Jolla [z-la]"의 음성 입력을 제공한다. 제2 음성 입력(121)에 응답하여, 시스템은 제2 트랜스크립션(118)을 트레이닝된 음향 모델을 사용하여 "Directions to La Zola" 대신에 "Directions to La Jolla"로 제공한다.
또한, 제2 트랜스크립션(118)에 응답하여, 검색 시스템은 사용자 인터페이스(102e)에 제시하기 위해 수정된 쿼리 "Directions for La Jolla"에 대한 응답인 검색 결과들(120)을 제공한다. 예를 들면, 검색 결과들(120)은 수정된 쿼리에 대한 응답일 것으로 검색 시스템에 의해 결정된 특정한 리소스들에 대한 링크들을 포함할 수 있다. 일부 구현예에서, 검색 시스템은 쿼리를 특정 유형의 요청으로서, 예를 들어, 길안내로 인식하고, 검색 결과들(120)의 일부로서 또는 그 대신에 지도 인터페이스를 제공한다.
도 2는 트레이닝된 음향 모델을 사용하는 예시적 음성 검색 시스템(200)을 도시한다. 시스템(200)은 인터넷, 인트라넷, 또는 다른 클라이언트 및 서버 환경에서 구현될 수 있는 것과 같이 제출된 쿼리들에 관련된 검색 결과들을 제공한다. 시스템(200)은 이하에서 설명되는 시스템, 컴포넌트들 및 기법들이 구현될 수 있는 정보 검색 시스템의 예이다.
사용자(202)는 클라이언트 디바이스(204)를 통해 검색 시스템(214)과 인터렉션할 수 있다. 예를 들면, 클라이언트(204)는 근거리 통신망(LAN) 또는 광역 통신망(WAN) 예를 들어, 인터넷을 통해 검색 시스템(214)에 연결된 컴퓨터일 수 있다. 일부 구현예에서, 검색 시스템(214) 및 클라이언트 디바이스(204)는 하나의 기계일 수 있다. 예를 들면, 사용자는 클라이언트 디바이스(204) 상에 데스크톱 검색 어플리케이션을 설치할 수 있다. 클라이언트 디바이스(204)는 일반적으로 랜덤 액세스 메모리(RAM)(206) 및 프로세서(208)를 포함할 것이다.
사용자(202)는 검색 시스템(214) 내의 검색 엔진(230)에 음성 쿼리들(210)을 제출할 수 있다. 사용자(202)가 음성 쿼리(210)를 제출하면, 음성 쿼리(210)는 네트워크를 통해 검색 시스템(214)에 전송된다. 검색 시스템(214)은 예를 들면, 네트워크를 통해 서로 연결된 하나 이상의 위치들에서 하나 이상의 컴퓨터에서 실행되는 컴퓨터 프로그램들로서 구현될 수 있다.
검색 시스템(214)은 음성 인식 엔진(254)을 포함한다. 음성 인식 엔진(254)은 음성 쿼리(210)를 수신하고, 음성 쿼리를 예를 들어 음향 및 언어 모델들을 사용하여 인식된 쿼리로 전사한다. 일부 구현예에서, 인식된 쿼리는 사용자(202)에게 제시하기 위해 클라이언트 디바이스(204)로 리턴된다. 또한, 인식된 쿼리는 검색 엔진(230)에 제공된다.
검색 시스템(214)은 인덱스 데이터베이스(222) 및 검색 엔진(230)을 더 포함한다. 검색 시스템(214)은 검색 결과들(228)을 생성함으로써 입력 쿼리에 응답하고, 검색 결과들(228)은 사용자(202)에게 제시될 수 있는 형태로 네트워크를 통해 클라이언트 디바이스(204)에 전송된다(예를 들어, 클라이언트 디바이스(204)에서 실행되는 웹브라우저에서 디스플레이될 검색 결과들 웹페이지로서).
음성 쿼리(210)로부터 결정된 인식된 쿼리가 검색 엔진(230)에 의해 수신되면, 검색 엔진(230)은 쿼리(210)와 매칭되거나 쿼리(210)에 대한 응답인 리소스들을 식별한다. 검색 엔진(230)은 일반적으로 코퍼스(예를 들어, 콘텐츠의 집합 또는 저장소)에서 발견되는 리소스들(예를 들어, 인터넷상의 웹페이지, 이미지 또는 뉴스 기사)을 색인하는 인덱싱 엔진(220), 인덱스 정보를 저장하는 인덱스 데이터베이스(222) 및 쿼리(210)와 매칭되는 리소스들의 순위를 매기는 랭킹 엔진(252)(또는 다른 소프트웨어)을 포함한다. 리소스들의 인덱싱 및 랭킹은 통상적 기법들을 사용하여 수행될 수 있다. 검색 엔진(130)은 상기 검색 결과들(228)을 사용자(202)에게 제시하기 위해 네트워크를 통해 클라이언트 디바이스(204)에 전송할 수 있다.
또한, 음성 인식 엔진(254)은 음향 모델을 사용하여 인식된 쿼리의 하나 이상의 용어들을 수정한다. 음향 모델은 도 1a 및 도 1b를 참조하여 상기 기술된 기법들을 사용하여 트레이닝될 수 있다. 특히, 음성 인식 엔진(254)은 음성 쿼리(210)의 특정 부분을 식별하고, 음향 모델을 사용하여 음성 쿼리(210)의 상기 부분에 대응하는 하나 이상의 수정된 용어들을 결정한다. 음성 인식 엔진(254)은 음성 쿼리(210)의 상기 부분에 대응하는 인식된 쿼리의 하나 이상의 용어들을 하나 이상의 수정된 용어들로 교체한다. 음성 인식 엔진(254)은 수정된 쿼리를 획득하고, 상기 수정된 쿼리를 사용자 디바이스(204)에 제시한다. 검색 엔진(230)은 수정된 트랜스크립션에 대한 응답인 리소스들을 식별하고, 하나 이상의 검색 결과들을 제공할 수 있다.
도 3은 음향 모델을 트레이닝하기 위한 예시적 방법을 도시한다. 편의상, 방법(300)은 하나 이상의 위치들에 위치되고 본 명세서에 따라 적절하게 프로그래밍된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다.
시스템은 발언에 대응하는 제1 오디오 데이터를 수신한다(310). 예를 들면, 발언은 음성 입력일 수 있다. 사용자는 음성 입력이 제공될 수 있음을 표시하는 특정한 사용자 인터페이스와 연관된 음성 입력 표시기 예를 들어, 마이크로폰 표시기를 선택할 수 있다. 예를 들면, 사용자 디바이스의 사용자 인터페이스는 마이크로폰 표시자를 포함할 수 있다. 음성 입력이 사용자에 의해 개시되면, 사용자 디바이스의 마이크로폰은 사용자로부터의 음성 입력을 캡처한다. 그 다음 음성 입력은 사용자 디바이스에 의해 시스템으로 전송된다. 음성 입력은 예를 들어, "Directions to La Jolla [z
Figure pct00007
-la]"일 수 있다.
시스템은 상기 제1 오디오 데이터의 제1 트랜스크립션을 획득한다(320). 상기 제1 트랜스크립션은 수신된 제1 오디오 데이터의 트랜스크립션(전사)이다. 예를 들면, 제1 오디오 데이터의 트랜스크립션을 제공하고 이를 인식된 텍스트 출력으로 변환하기 위해 언어 모델이 사용될 수 있다. 음성-텍스트 변환 기법은 오디오 신호로부터 음성 또는 다른 언어 단위를 식별하는 음향 모델 및 특정한 단어 또는 단어들의 시퀀스에 대해 확률을 할당하는 언어 모델의 사용을 포함할 수 있다. 일부 구현예에서, 음성-텍스트 변환 기법은 예를 들어, 철자 및/또는 문법 규칙에 기초하여, 음성 입력에서 오류들을 수정하거나 보전할 수 있다.
제1 트랜스크립션은 예를 들어, 특정한 사용자 인터페이스에서 디스플레이하기 위해 사용자 디바이스에 제공된다. 제1 트랜스크립션은 예를 들어, 제1 오디오 데이터 시스템의 인식을 표시하기 위해 디스플레이될 수 있다. 그 다음, 사용자는 제시된 제1 트랜스크립션을 검사하여, 시스템이 제1 오디오 데이터를 정확하게 인식했는지 여부를 결정할 수 있다. 예를 들면, 제1 오디오 데이터는 쿼리 "Directions to La Zola"로 제1 트랜스크립션에서 인식될 수 있는 음성 쿼리 "Directions to La Jolla [z
Figure pct00008
-la]"일 수 있다. 여기서, "Jolla"라는 단어는 "Zola"로 인식되었다.
추가적으로, 시스템은 제1 트랜스크립션에 응답인 액션을 수행할 수 있다. 예를 들면, 시스템은 상기 제1 트랜스크립션을 검색 쿼리로 사용하여 검색 결과들을 획득할 수 있다. 상기 검색 쿼리에 대한 응답인 하나 이상의 검색 결과들이 검색 인터페이스에서 디스플레이하기 위해 사용자 디바이스에 제공될 수 있다. 일부 구현예에서, 액션은 예를 들어, 일정 관리 항목 작성과 같은 특정한 작업의 일부이다. 다른 구현예에서, 제1 트랜스크립션은 텍스트 편집기나 전자 메일에 텍스트를 입력하는 것과 같은 액션에 대응한다.
시스템은 (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 하나 이상의 교체 용어들을 표시하는 데이터를 수신한다(330). 제1 트랜스크립션 중 하나 이상의 용어들의 선택은 예를 들어, 터치 스크린 상의 손가락을 사용하거나 마우스 커서 또는 스타일러스와 같은 특정한 입력 디바이스를 사용하는 직접 입력에 의해 수신될 수 있다. 예를 들면, 사용자는 상기 제1 트랜스크립션 중 특정한 용어 또는 용어들을 만질 수 있다. 이에 응답하여, 선택된 용어 또는 용어들은 선택된 용어 또는 용어들을 표시하는 사용자 디바이스에 의해 강조될 수 있다. 따라서, 제1 트랜스크립션 "Directions to La Zola"에 대해, 사용자는 "Zola"라는 용어를 선택할 수 있다.
일부 구현예에서, 하나 이상의 교체 용어들은 타이핑된 입력에 의해 수신될 수 있다. 사용자 인터페이스는 사용자로부터 타이핑된 입력을 수신하기 위해 제공될 수 있는 키보드 레이아웃을 포함한다. 특히, 사용자는 키보드 레이아웃을 사용하여 선택된 용어 또는 용어들을 교체하기 위해 특정한 용어 또는 용어들을 타이핑할 수 있다. 예를 들면, "Zola"라는 용어를 선택한 후, 사용자는 개별 글자 "j-o-l-l-a"를 타이핑할 수 있다. 상기 타이핑된 입력은 단일 용어에 제한되지 않는다. 예를 들면, "La Zola"라는 용어가 선택되면, 사용자는 "l-a-j-o-l-l-a"라는 글자들을 타이핑할 수 있다.
일부 구현예에서, 하나 이상의 교체 용어들은 사용자 인터페이스에 제시된 제안된 트랜스크립션의 사용자 선택에 의해 수신될 수 있다. 예를 들면, 사용자 인터페이스는 제1 트랜스크립션의 특정한 용어 또는 용어들이 선택된 경우에 제공되는 드롭다운 상자를 포함할 수 있다. 시스템은 드롭다운 상자에 하나 이상의 제안된 트랜스크립션들을 제시한다. 하나 이상의 제안된 트랜스크립션들 각각은 상기 특정한 용어 또는 용어들을 교체하기 위한 교체 용어 또는 용어들을 포함한다. 예를 들면, 제1 트랜스크립션의 "Zola"라는 용어가 선택되면, 시스템은 하나 이상의 제안된 트랜스크립션들이 제공되는 드롭다운 상자를 제공한다. 제안된 트랜스크립션들 중 하나는 "Directions to La Jolla"이다. 여기서, 용어 "Jolla"는 선택된 용어인 "Zola"를 교체하기 위한 교체 용어이다. 사용자는 드롭다운 상자에서 제안된 트랜스크립션 "Directions to La Jolla"를 선택할 수 있고, 시스템은 용어 "Zola"를 교체 용어로서 수신한다.
시스템은 하나 이상의 교체 용어들이 하나 이상의 선택된 용어들의 수정으로 분류되는지 여부를 결정한다(340). 결정은 특정 기준에 기초하여 이루어질 수 있다. 일부 구현예에서, 상기 결정은 각 선택된 용어와 각 교체 용어 간의 음성적 유사성(phonetic similarity)에 기초할 수 있다. 특히, 음성적 유사성은 선택된 용어의 소리가 교체 용어와 얼마나 유사한지를 측정한다. 선택된 용어와 교체 용어 간의 음성 유사성은 거리 측정을 사용하여 결정될 수 있다. 일부 구현예에서, 상기 결정은 선택된 용어와 교체 용어 간의 최소 편집 거리(minimum edit distance)에 기초할 수 있다. 시스템은 교체 용어와 선택된 용어 간의 최소 편집 거리가 임계값(예: 2)보다 크거나 동일하면 교체 용어가 선택된 용어의 수정이라고 결정할 수 있다. 예를 들면, 사용자는 제1 트랜스크립션에서 용어 "Zola"를 선택하고, 용어 "Zola"를 용어 "Jolla"로 교체할 수 있다. 시스템은 "Z"가 "J"로 교체되고 "l"이 추가되었으므로 최소 편집 거리가 2라고 결정할 수 있다. 응답으로, 시스템은 교체 용어 "Jolla"가 선택된 용어 "Zola"의 수정이라고 결정할 수 있다.
다른 예로, 시스템이 "Directions to La Jolla"로 제1 트랜스크립션를 제공하는 경우, 사용자는 제1 트랜스크립션에서 "Directions"를 선택하고, 용어 "Directions"를 "Direction"으로 교체할 수 있다. 시스템은 "s"가 삭제되었으므로 최소 편집 거리가 1이라고 결정할 수 있다. 응답으로, 시스템은 교체 용어 "Direction"이 선택된 용어 "Directions"의 수정이라고 결정할 수 있다. 따라서, 시스템은 음향 모델을 트레이닝하는데 사용되지 않을, 기사 오류들 또는 오타를 수정하는 것과 같은 교체들을 걸러 낼 수 있다. 일부 구현예에서, 최소 편집 거리는 선택된 용어와 교체 용어 간의 다수의 상이한 소리들을 측정한다. 일부 구현예에서, 최소 편집 거리는 음성적 사전들을 사용하여 계산된다. 일부 구현예에서, 최소 편집 거리는 음향 모델(예를 들면, 음향 Hidden-Markov-Models)을 사용하여 계산된다.
일부 구현예에서, 결정은 선택된 용어들 간의 연결들에 기초할 수 있다. 특히, 연결들은 하나의 선택된 용어가 다른 선택된 용어와 얼마나 가까운지 측정한다. 연결들은 연결 거리 측정을 사용하여 결정될 수 있다. 일부 구현예에서, 연결 거리는 하나의 선택된 용어와 다른 선택된 용어들 간의 단어들의 수에 기초하여 결정될 수 있다. 단어들의 수가 임계값(예: 2)보다 크거나 같은 경우, 시스템은 교체 용어가 선택된 용어의 수정이 아니라고 결정할 수 있다. 예를 들면, 사용자는 제1 트랜스크립션에서 2개의 용어들 "Directions"과 "Zola"를 선택하고, 용어 "Zola"를 용어 "Jolla"로 교체할 수 있다. 시스템은 상기 선택된 용어들 "Directions"과 "Zola" 사이에 2개의 용어들 "to"와 "La"가 있으므로 상기 2개의 용어들 간의 연결 거리는 2라고 결정할 수 있다. 응답으로, 시스템은 교체 용어가 선택된 용어의 수정이 아니라고 결정할 수 있다. 따라서, 용어 "Directions"은 터치 오류와 같은 사용자의 실수에 의해 선택되었을 수 있기 때문에, 선택된 용어들 "Directions"과 "Zola"는 음향 모델을 트레이닝하는데 사용되지 않는다.
다른 예로, 사용자는 제1 트랜스크립션에서 2개의 용어들 "La"과 "Zola"를 선택하고, 용어 "Zola"를 용어 "Jolla"로 교체할 수 있다. 상기 2개의 용어들 "La"와 "Zola" 사이에 용어가 없기 때문에, 상기 2개의 용어 간의 연결 거리는 0이다. 시스템은 교체 용어가 선택된 용어의 수정이라고 결정할 수 있다.
일부 구현예에서, 결정은 선택된 용어들의 연속성에 기초할 수 있다. 예를 들면, 사용자는 제1 트랜스크립션에서 용어 Directions"과 용어 "Zola"를 선택할 수 있다. 시스템은 선택된 용어들이 연속적이지 않다고 결정할 수 있다. 응답으로, 시스템은 하나 이상의 교체 용어들이 하나 이상의 선택된 용어들의 수정이 아니라고 결정할 수 있다. 따라서, 용어 "Directions"은 터치 오류와 같은 사용자의 실수에 의해 선택되었을 수 있기 때문에, 선택된 용어들은 음향 모델을 트레이닝하는데 사용되지 않는다.
다른 예로, 사용자는 제1 트랜스크립션에서 용어들 "La"와 "Zola"를 선택하고, 용어 "Zola"를 "Jolla"로 교체할 수 있다. 시스템은 선택된 용어들 "La"와 "Zola"가 연속적이라고 결정할 수 있다. 응답으로, 시스템은 교체 용어가 선택된 용어의 수정이라고 결정할 수 있다.
일부 구현예에서, 결정은 하나 이상의 선택된 용어들 각각에서 문자들의 수에 기초할 수 있다. 예를 들면, 사용자는 제1 트랜스크립션에서 용어 "to"를 선택하고, 용어 "to"를 "from"으로 교체할 수 있다. 시스템은 선택된 용어 "to"에서 문자들의 수, 즉 2개의 문자를 계산할 수 있다. 응답으로, 시스템은 교체 용어가 선택된 용어의 수정이 아니라고 결정할 수 있다. 따라서, 시스템은 음향 모델을 트레이닝하는데 사용되지 않을, 전치사들을 수정하는 것과 같은 교체들을 걸러 낼 수 있다.
다른 예로, 사용자는 제1 트랜스크립션에서 "Zola"를 선택할 수 있다. 시스템은 선택된 용어 "Zola"에서 문자들의 수는 4개라고 결정할 수 있다. 응답으로, 시스템은 교체 용어가 선택된 용어의 수정이라고 결정할 수 있다.
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 것에 응답하여, 시스템은 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득한다(350). 일부 구현예에서, 상기 제1 오디오 데이터의 제1 부분은 전체 제1 오디오 데이터일 수 있다. 예를 들면, 시스템은 사용자의 발언 "Directions to La Jolla [z
Figure pct00009
-la]"에 대응하는 제1 오디오 데이터인 제1 부분을 획득할 수 있다.
일부 구현예에서, 상기 제1 오디오 데이터의 제1 부분은 제1 오디오 데이터로부터 분리될 수 있다. 제1 부분은 사용자에 의해 선택된 제1 트랜스크립션의 특정한 용어 또는 용어들에 대응한다. 예를 들면, 사용자는 용어 "Zola"를 선택할 수 있다. 시스템은 용어 "Zola"에 대응하는 제1 부분을 제1 오디오 데이터로부터 분리한다. 이 예시에서, 제1 부분의 소리는 [z
Figure pct00010
-la]일 수 있다.
일부 구현예에서, 시스템은 제1 트랜스크립션의 각 용어가 시작하고 끝나는 타이밍을 사용하여 제1 오디오 데이터로부터 제1 부분을 분리할 수 있다. 예를 들면, 시스템이 "Directions to La Zola"의 제1 트랜스크립션을 획득하는 경우, 시스템은 오디오의 크기와 주파수와 같은 오디오 구성들에 기초하여 제1 트랜스크립션의 각 용어가 시작하고 끝나는 타이밍을 결정할 수 있다. 이 예시에서, 시스템은 제1 트랜스크립션의 4개의 용어들이 시작하고 끝나는 8개의 구분되는 타이밍을 결정할 수 있다. 제1 오디오 데이터의 제1 부분이 용어 "Zola"에 대응하는 경우, 시스템은 용어 "Zola"가 시작하고 끝나는 타이밍을 식별할 수 있다. 따라서, 시스템은 두 타이밍 사이의 제1 오디오 데이터의 부분이 오디오 데이터의 제1 부분임을 결정할 수 있다.
시스템은 상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용한다(360). 일부 구현예에서, 시스템은 전체 제1 오디오 데이터 및 전체 제1 트랜스크립션을 사용하여 음향 모델을 트레이닝한다. 일부 구현예에서, 시스템은 제1 트랜스크립션의 하나 이상의 용어들과 연관된 분리된 제1 부분을 사용하여 음향 모델을 트레이닝한다. 예를 들면, 제1 오디오 데이터로부터 제1 부분 [z
Figure pct00011
-la]를 분리한 후, 시스템은 제1 부분[z
Figure pct00012
-la]를 사용하여 교체 용어 "Jolla"를 인식하기 위한 음향 모델을 트레이닝할 수 있다.
도 4은 트레이닝된 음향 모델을 사용하여 검색 결과들을 제공하기 위한 예시적 방법을 도시한다. 편의상, 방법(400)은 하나 이상의 위치들에 위치되고 본 명세서에 따라 적절하게 프로그래밍된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다.
시스템은 발언에 대응하는 제2 오디오 데이터를 수신한다(410). 예를 들면, 발언은 음성 입력일 수 있다. 사용자는 음성 입력이 제공될 수 있음을 표시하는 특정한 사용자 인터페이스와 연관된 음성 입력 표시기 예를 들어, 마이크로폰 표시기를 선택할 수 있다. 예를 들면, 사용자 디바이스의 사용자 인터페이스는 마이크로폰 표시자를 포함할 수 있다. 음성 입력이 사용자에 의해 개시되면, 사용자 디바이스의 마이크로폰은 사용자로부터의 음성 입력을 캡처한다. 그 다음 음성 입력은 사용자 디바이스에 의해 시스템으로 전송된다. 음성 입력은 예를 들어, "Directions to La Jolla [z
Figure pct00013
-la]"일 수 있다.
시스템은 상기 제2 오디오 데이터의 제2 트랜스크립션을 획득한다(420). 상기 제2 트랜스크립션은 수신된 제2 오디오 데이터의 트랜스크립션(전사)이다. 예를 들면, 제2 오디오 데이터의 제2 트랜스크립션을 제공하고 이를 인식된 텍스트 출력으로 변환하기 위해 음향 및 언어 모델들이 사용될 수 있다. 예를 들면, 제2 오디오 데이터는 "Directions to La Zola"로 제2 트랜스크립션에서 인식될 수 있는 음성 입력 "Directions to La Jolla [z
Figure pct00014
-la]"일 수 있다.
시스템은 상기 제2 오디오 데이터의 제2 부분을 식별한다(430). 특히, 제2 오디오 데이터의 제2 부분은 도 3을 참조하여 기술된 제1 오디오 데이터의 제1 부분에 대응한다. 예를 들면, 시스템은 제1 오디오 데이터의 제1 부분 [z
Figure pct00015
-la]에 대응하는 제2 오디오 데이터의 제2 부분 [z
Figure pct00016
-la]을 식별 할 수 있다.
시스템은 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득한다. 특히, 트레이닝된 음향 모델은 상기 기술된 기법들을 사용하여 트레이닝된 음향 모델일 수 있다. 예를 들면, 도 3을 참조하여 기술된 예를 참조하면, 음향 모델은 제1 오디오 데이터의 제1 부분 [z
Figure pct00017
-la]을 사용하여 교체 용어 "Jolla"를 인식하도록 트레이닝된다. 제1 부분 [z
Figure pct00018
-la]에 대응하는 식별된 제2 부분 [z
Figure pct00019
-la]에 응답하여, 시스템은 제2 오디오 데이터의 제2 부분에 대한 수정된 트랜스크립션 "Jolla"를 획득할 수 있다.
시스템은 상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득한다(450). 시스템은 제2 부분에 대응하는 제2 트랜스크립션의 특정 용어 또는 용어들을 수정된 트랜스크립션으로 교체하고, 제2 트랜스크립션을 수정된 트랜스크립션과 병합하는 새로운 트랜스크립션을 획득한다. 예를 들면, 시스템은 제2 트랜스크립션의 용어 "Zola"를 수정된 트랜스크립션 "Jolla"로 교체하고, 병합된 트랜스크립션 "Directions to La Jolla"를 획득한다.
시스템은 상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득한다(460). 예를 들면, 시스템은 트랜스크립션 "Directions to La Jolla"에 대한 응답인 검색 결과들을 획득한다. 검색 결과들들은 수정된 쿼리에 대한 응답일 것으로 검색 시스템에 의해 결정된 특정한 리소스들에 대한 링크들을 포함할 수 있다. 일부 구현예에서, 검색 시스템은 쿼리를 특정 유형의 요청으로서, 예를 들어, 길안내로 인식하고, 검색 결과의 일부로서 또는 그 대신에 지도 인터페이스를 제공한다.
시스템은 상기 검색 결과들 중 하나 이상을 제공한다(470). 시스템은 획득된 검색 결과들을 사용자 디바이스에 제공한다. 예를 들면, 시스템은 사용자 디바이스의 사용자 인터페이스에 디스플레이될 검색 결과들을 제공할 수 있다.
본 발명의 실시예들과 본 명세서에 기술된 기능적 동작들은 본 발명에 개시된 구조들 및 그들의 구조적 균등물들 또는 그들 중 하나 이상의 조합들을 포함하는, 디지털 전자회로에서, 유형적으로 수록된 컴퓨터 소프트웨어 또는 펌웨어에서, 컴퓨터 하드웨어에서 구현될 수 있다. 본 명세서에 기술된 본 발명의 실시예들은 하나 이상의 컴퓨터 프로그램들로서 구현될 수 있다. 즉, 데이터 프로세싱 장치에 의해 실행 또는 데이터 프로세싱 장치의 동작을 제어하기 위한 유형적 비일시적인 저장 매체에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들. 컴퓨터 저장 매체는 기계 판독가능 저장 디바이스, 기계 판독가능 저장 기판, 랜덤 또는 직렬 엑세스 메모리 디바이스 또는 그들 중 하나 이상의 조합일 수 있다. 대안적으로 또는 추가로, 프로그램 명령어들은 데이터 프로세싱 장치에 의해 실행하기 위한 적절한 수신기 장치에 전송하기 위한 정보를 인코딩하기 위해 생성된 인공적으로 생성된 전파된 신호 즉, 기계-생성 전기, 광학 또느전자기적 신호에 인코딩될 수 있다.
용어 "데이터 프로세싱 장치"는 데이터 프로세싱 하드웨어를 지칭하며, 예시로서 프로그래머블 프로세서, 컴퓨터, 또는 다수의 프로세서들 또는 컴퓨터들을 포함하는 데이터를 프로세싱하기 위한 모든 종류의 장치, 디바이스들 및 기계들을 포함한다. 상기 장치는 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array) 또는 ASIC (application specific integrated circuit)이거나 특수 목적 논리 회로를 포함할 수 있다. 장치는 하드웨어 이외에 컴퓨터 프로그램들에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 그들 중 하나 이상의 조합을 구성하는 코드를 선택적으로 포함할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로도 참조되거나 기술될 수 있음)은 컴파일된 또는 인터프리트된 언어들, 또는 선언적 또는 절차적 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 독립 실행형 프로그램으로서 또는 모듈, 컴포넌트, 서브루틴으로서 또는 컴퓨팅 환경에서 사용하기에 적합한 기타 단위를 포함하는 임의의 형태로 배포될 수 있다. 프로그램은 파일 시스템의 파일에 대응할 수 있지만, 반드시 그런 것은 아니다. 프로그램은 다른 프로그램들이나 데이터, 예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트들을 가지는 파일의 부분에, 문제되는 프로그램 전용 단일의 파일에 또는 다수의 조정된 파일들, 예를 들어, 하나 이상의 모듈들, 서브프로그램 또는 코드의 일부를 저장하는 파일들에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 사이트에 위치되어 있거나 다수의 사이트들에 걸쳐서 분산되어 있고 데이터 통신 네트워크에 의해 상호연결된 다수의 컴퓨터들에서 실행되도록 배포될 수 있다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 동작하고 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래머블 컴퓨터들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름은 특수 목적 논리 회로, 예를 들어 FPGA 또는 ASIC, 에 의해 또는 특수 목적 논리 회로와 하나 이상의 프로그래밍된 컴퓨터의 조합에 의해 수행될 수 있다.
컴퓨터 프로그램의 실행에 적절한 컴퓨터들은 일반적 또는 특수 목적 마이크로프로세서들 또는 둘 모두, 또는 임의의 기타 종류의 중앙 프로세싱 유닛에 기초할 수 있다. 일반적으로, 중앙 프로세싱 유닛은 읽기-전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 엘리먼트들은 명령어들을 수행하거나 실행하기 위한 중앙 프로세싱 유닛 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 중앙 프로세싱 유닛 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 그 안에 통합될 수 있다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대형 저장 디바이스들 예를 들면, 자기적, 자기-광학 디스크들 또는 광학적 디스크들 또한 포함하거나 또는 그로부터 데이터를 수신하거나 그에 데이터를 전송하기 위해 동작적으로 결합될 수 있다. 그러나, 컴퓨터는 상기 디바이스들을 반드시 가져야하는 것은 아니다. 추가로, 컴퓨터는 다른 디바이스, 예를 들어, 몇 가지만 나열하면, 모바일 전화, 개인 휴대 정보 단말기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, GPS 수신기 또는 휴대용 저장 디바이스 예를 들어, 범용 직렬 버스 (USB) 플래시 드라이브에 내장될 수 있다.
컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스들과 같은 반도체 메모리 디바이스들; 예를 들어, 내부 하드 디스크들 또는 이동식 디스크들과 같은 자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스들을 포함한다.
본 명세서에 기술된 다양한 시스템들 또는 그 일부의 제어는 하나 이상의 비일시적 기계 판독가능 저장 매체에 저장되고 하나 이상의 프로세싱 디바이스들에서 실행가능한 명령어들을 포함하는 컴퓨터 프로그램 제품으로 구현될 수 있다. 본 명세서에서 기술된 시스템 또는 그 일부는 하나 이상의 프로세싱 디바이스들을 포함할 수 있는 장치 방법 또는 전자 시스템 및 본 명세서에 기술된 동작들을 수행하기 위한 실행가능한 명령어들을 저장하는 메모리로서 구현될 수 있다.
사용자와의 인터렉션을 제공하기 위해, 본 명세서에서 기술된 본 발명의 실시예들은 사용자에게 정보를 디스플레이하기 위해 예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터와 같은 디스플레이 디바이스 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스 예를 들어, 마우스 또는 트랙볼을 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 인터렉션을 제공하는데 사용될 수 있다. 예를 들어, 사용자에게 제공되는 피드백은 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각적 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서를 송수신함으로써 예를 들어, 웹 브라우저로부터 수신된 요청에 응답하여, 사용자의 디바이스상의 웹 브라우저에 웹 페이지를 전송함으로써 사용자와 인터렉션할 수 있다.
본 명세서에서 기술된 발명의 실시예는 예를 들어 데이터 서버와 같은 백엔드 컴포넌트, 어플리케이션 서버와 같은 미들웨어 컴포넌트 또는 그래픽 사용자 인터페이스를 가지는 사용자 컴퓨터 또는 사용자가 본 명세서에 기술된 본 발명의 구현예와 인터렉션할 수 있는 웹 브라우저와 같은 프론트엔드 컴포넌트 또는 하나 이상의 상기 백엔드, 미들웨어 또는 프론트엔드 컴포넌트들의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신의 임의의 형태 또는 매체, 예를 들어 통신 네트워크에 의해 상호연결될 수 있다. 통신 네트워크들의 예시들은 LAN(local area network) 및 WAN(wide area network) 예를 들어, 인터넷을 포함한다.
컴퓨팅 시스템은 사용자들 및 서버들을 포함할 수 있다. 사용자와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 인터렉션한다. 사용자와 서버의 관계는 각각의 컴퓨터에서 실행되고 서로 사용자-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다. 일부 실시예에서, 서버는 예를 들어, 사용자 디바이스와 인터렉션하는 사용자에게 데이터를 디스플레이하고 사용자로부터 사용자 입력을 수신하기 위해, 클라이언트로서 동작하는 사용자 디바이스에 데이터(예: HTML 페이지)를 전송한다. 사용자 디바이스에서 생성된 데이터(예를 들어, 사용자 인터렉션의 결과)는 서버에서 사용자 디바이스로부터 수신될 수 있다.
본 명세서는 많은 특정 구현 세부내용을 포함하지만, 이들은 임의의 발명의 범위 또는 청구될 수 있는 범위에 대한 제한으로서 해석되어서는 안되며, 오히려 특정한 발명의 특정한 실시예에 특정적일 수 있는 구성들에 대한 설명으로 해석되어야 한다. 별개의 실시예의 맥락에서 본 명세서에서 기술되는 일정 구성들은 또한 단일 실시예에서 조합하여 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 기술된 다양한 구성들은 또한 다수의 실시예에서 개별적으로 또는 임의의 적합한 서브 조합으로 구현될 수 있다. 게다가, 구성들은 일정 조합으로 동작하고 심지어 초기적으로 그렇게 청구되는 것으로서 상기에서 기술될 수 있지만, 청구된 조합으로부터의 하나 이상의 구성들은 일부 경우, 조합으로부터 제거될 수 있고, 청구된 조합은 서브 조합 또는 서브 조합의 변형으로 안내될 수 있다.
유사하게, 동작들이 특정한 순서로 도면에서 도시되었지만, 이는 상기 동작들이 도시된 특정한 순서로 또는 시계열적 순서로 수행되어야 함을 요구하는 것으로서 또는 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안된다. 특정 환경에서, 멀티태스킹과 병렬 프로세싱은 이점이 있다. 게다가, 상기 기술된 실시예에서 다양한 시스템 모듈들 및 컴포넌트들의 분리는 모든 실시예에서 그러한 분리가 필요한 것으로서 이해되어서는 안되며, 일반적으로 기술된 프로그램 컴포넌트들 및 시스템들은 단일의 소프트웨어 제품에 함께 통합되거나 다수의 소프트웨어 제품들에 패키징될 수 있다고 이해되어야 한다.
본 발명의 특정한 실시예들이 기술되었다. 다른 실시예들도 다음의 청구항들의 범위 내에 있다. 예를 들면, 청구항들에서 기재된 액션들은 상이한 순서로 수행되고 여전히 원하는 결과들을 달성할 수 있다. 일 예시로서, 첨부 도면들에 도시된 프로세스들은 원하는 결과들을 달성하기 위해 특정한 도시된 순서, 또는 시계열적 순서를 반드시 필요로 하지 않는다. 일부 경우에, 멀티태스킹과 병렬 프로세싱은 이점이 있다.

Claims (20)

  1. 컴퓨터로 구현되는 방법으로서,
    발언에 대응하는 제1 오디오 데이터를 수신하는 단계;
    상기 제1 오디오 데이터의 제1 트랜스크립션을 획득하는 단계;
    (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 단계;
    상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계;
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 단계; 및
    상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 청구항 1에 있어서,
    발언에 대응하는 제2 오디오 데이터를 수신하는 단계, 상기 제2 오디오 데이터는 상기 제1 오디오 데이터의 제1 부분에 대응하는 제2 부분을 포함하며;
    상기 제2 오디오 데이터의 제2 트랜스크립션을 획득하는 단계;
    상기 제2 오디오 데이터로부터 상기 제2 부분을 식별하는 단계;
    상기 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득하는 단계; 및
    상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  3. 청구항 1 또는 2에 있어서,
    상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득하는 단계; 및
    상기 검색 결과들 중 하나 이상을 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  4. 임의의 선행하는 청구항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  5. 청구항 4에 있어서,
    상기 음성적 유사성을 결정하는 것은 상기 선택된 용어들 중 하나 이상의 각각과 상기 교체 용어들 중 하나 이상의 각각 간에 음성적 거리(phonetic distance)를 계산하는 것을 포함하는 것을 특징으로 하는 방법.
  6. 임의의 선행하는 청구항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  7. 임의의 선행하는 청구항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  8. 임의의 선행하는 청구항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상의 각각이 임계수의 문자들(characters)을 포함함을 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  9. 시스템으로서,
    컴퓨터 프로그램 명령어들을 실행하도록 구성된 프로세서; 및
    상기 프로세서에 의해 실행될 때, 상기 시스템으로 하여금 동작들을 수행하게 하는 상기 컴퓨터 프로그램 명령어들이 인코딩된 컴퓨터 저장 매체를 포함하며, 상기 동작들은:
    발언에 대응하는 제1 오디오 데이터를 수신하는 동작;
    상기 제1 오디오 데이터 제1 트랜스크립션을 획득하는 동작; (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 동작;
    상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작;
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 동작; 및
    상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 동작을 포함하는 것을 특징으로 하는 시스템.
  10. 청구항 9에 있어서,
    발언에 대응하는 제2 오디오 데이터를 수신하는 동작, 상기 제2 오디오 데이터는 상기 제1 오디오 데이터의 제1 부분에 대응하는 제2 부분을 포함하며;
    상기 제2 오디오 데이터의 제2 트랜스크립션을 획득하는 동작;
    상기 제2 오디오 데이터로부터 상기 제2 부분을 식별하는 동작;
    상기 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득하는 동작; 및
    상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
  11. 청구항 9 또는 10에 있어서,
    상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득하는 동작; 및
    상기 검색 결과들 중 하나 이상을 제공하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
  12. 청구항 9 내지 11 중 어느 한 항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
  13. 청구항 12에 있어서,
    상기 음성적 유사성을 결정하는 것은 상기 선택된 용어들 중 하나 이상의 각각과 상기 교체 용어들 중 하나 이상의 각각 간에 음성적 거리(phonetic distance)를 계산하는 것을 포함하는 것을 특징으로 하는 시스템.
  14. 청구항 9 내지 13 중 어느 한 항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
  15. 청구항 9 내지 14 중 어느 한 항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
  16. 청구항 9 내지 15 중 어느 한 항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상의 각각이 임계수의 문자들(characters)을 포함함을 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
  17. 컴퓨터 프로그램이 인코딩된 컴퓨터 판독가능 저장 디바이스로서, 상기 컴퓨터 프로그램은 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하는 명령어들을 포함하며, 상기 동작들은:
    발언에 대응하는 제1 오디오 데이터를 수신하는 동작;
    상기 제1 오디오 데이터의 제1 트랜스크립션을 획득하는 동작;
    (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 동작;
    상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작;
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 동작; 및
    상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스.
  18. 청구항 17에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스.
  19. 청구항 17 내지 18에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스.
  20. 청구항 17 내지 19 중 어느 한 항에 있어서,
    상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스.
KR1020197005232A 2016-07-29 2017-06-20 수정된 용어들을 사용하는 음향 모델 트레이닝 KR102256705B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/224,104 US10019986B2 (en) 2016-07-29 2016-07-29 Acoustic model training using corrected terms
US15/224,104 2016-07-29
PCT/US2017/038336 WO2018022220A1 (en) 2016-07-29 2017-06-20 Acoustic model training using corrected terms

Publications (2)

Publication Number Publication Date
KR20190032498A true KR20190032498A (ko) 2019-03-27
KR102256705B1 KR102256705B1 (ko) 2021-05-27

Family

ID=59258398

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197005232A KR102256705B1 (ko) 2016-07-29 2017-06-20 수정된 용어들을 사용하는 음향 모델 트레이닝

Country Status (6)

Country Link
US (5) US10019986B2 (ko)
EP (2) EP3491641B1 (ko)
JP (1) JP6726354B2 (ko)
KR (1) KR102256705B1 (ko)
CN (2) CN116543762A (ko)
WO (1) WO2018022220A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9741337B1 (en) * 2017-04-03 2017-08-22 Green Key Technologies Llc Adaptive self-trained computer engines with associated databases and methods of use thereof
US11151986B1 (en) * 2018-09-21 2021-10-19 Amazon Technologies, Inc. Learning how to rewrite user-specific input for natural language understanding
US11004454B1 (en) * 2018-11-06 2021-05-11 Amazon Technologies, Inc. Voice profile updating
US11200884B1 (en) * 2018-11-06 2021-12-14 Amazon Technologies, Inc. Voice profile updating
US10978069B1 (en) * 2019-03-18 2021-04-13 Amazon Technologies, Inc. Word selection for natural language interface
US10830408B1 (en) 2019-07-05 2020-11-10 Honeywell International Inc. Lighting devices with variable beam patterns
US11462208B2 (en) * 2019-09-11 2022-10-04 Oracle International Corporation Implementing a correction model to reduce propagation of automatic speech recognition errors
JP7363307B2 (ja) * 2019-09-30 2023-10-18 日本電気株式会社 音声チャットボットにおける認識結果の自動学習装置及び方法、並びにコンピュータプログラム及び記録媒体
CN110956959B (zh) * 2019-11-25 2023-07-25 科大讯飞股份有限公司 语音识别纠错方法、相关设备及可读存储介质
US11508354B2 (en) * 2020-05-04 2022-11-22 Rovi Guides, Inc. Method and apparatus for correcting failures in automated speech recognition systems
WO2023073887A1 (ja) * 2021-10-28 2023-05-04 日本電気株式会社 情報処理システム、情報処理装置、情報処理方法、及び記録媒体

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000305590A (ja) * 1999-04-16 2000-11-02 Alpine Electronics Inc 音声認識方法
JP2009128675A (ja) * 2007-11-26 2009-06-11 Toshiba Corp 音声を認識する装置、方法およびプログラム
KR20140008835A (ko) * 2012-07-12 2014-01-22 삼성전자주식회사 음성 인식 오류 수정 방법 및 이를 적용한 방송 수신 장치
JP2014134640A (ja) * 2013-01-09 2014-07-24 Nippon Hoso Kyokai <Nhk> 文字起こし装置およびプログラム
US20150243278A1 (en) * 2014-02-21 2015-08-27 Microsoft Corporation Pronunciation learning through correction logs
KR20160066441A (ko) * 2014-12-02 2016-06-10 삼성전자주식회사 음성 인식 방법 및 음성 인식 장치

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6289098A (ja) * 1985-10-15 1987-04-23 株式会社リコー 音声パタ−ン更新方式
AU2001259446A1 (en) 2000-05-02 2001-11-12 Dragon Systems, Inc. Error correction in speech recognition
US6934682B2 (en) 2001-03-01 2005-08-23 International Business Machines Corporation Processing speech recognition errors in an embedded speech recognition system
WO2003025904A1 (en) 2001-09-17 2003-03-27 Koninklijke Philips Electronics N.V. Correcting a text recognized by speech recognition through comparison of phonetic sequences in the recognized text with a phonetic transcription of a manually input correction word
FR2844911B1 (fr) 2002-09-24 2006-07-21 Thales Sa Procede de reconnaissance vocale avec correction automatique
EP1471502A1 (en) 2003-04-25 2004-10-27 Sony International (Europe) GmbH Method for correcting a text produced by speech recognition
JP4189336B2 (ja) * 2004-02-25 2008-12-03 株式会社東芝 音声情報処理システム、音声情報処理方法及びプログラム
US8412521B2 (en) * 2004-08-20 2013-04-02 Multimodal Technologies, Llc Discriminative training of document transcription system
US20080104055A1 (en) * 2006-11-01 2008-05-01 Dininginfo Llc Restaurant review search system and method for automatically providing links to relevant reviews of selected restaurants by use of the internet
US8781833B2 (en) 2008-07-17 2014-07-15 Nuance Communications, Inc. Speech recognition semantic classification training
US8494852B2 (en) * 2010-01-05 2013-07-23 Google Inc. Word-level correction of speech input
JP5271299B2 (ja) * 2010-03-19 2013-08-21 日本放送協会 音声認識装置、音声認識システム、及び音声認識プログラム
US9263034B1 (en) 2010-07-13 2016-02-16 Google Inc. Adapting enhanced acoustic models
US8521526B1 (en) * 2010-07-28 2013-08-27 Google Inc. Disambiguation of a spoken query term
US8719014B2 (en) 2010-09-27 2014-05-06 Apple Inc. Electronic device with text error correction based on voice recognition data
US10354650B2 (en) * 2012-06-26 2019-07-16 Google Llc Recognizing speech with mixed speech recognition models to generate transcriptions
KR20140030361A (ko) * 2012-08-27 2014-03-12 삼성전자주식회사 휴대단말기의 문자 인식장치 및 방법
US8494853B1 (en) 2013-01-04 2013-07-23 Google Inc. Methods and systems for providing speech recognition systems based on speech recordings logs
US9058805B2 (en) * 2013-05-13 2015-06-16 Google Inc. Multiple recognizer speech recognition
US9773499B2 (en) * 2014-06-18 2017-09-26 Google Inc. Entity name recognition based on entity type
US9263033B2 (en) 2014-06-25 2016-02-16 Google Inc. Utterance selection for automated speech recognizer training
US9378731B2 (en) 2014-09-25 2016-06-28 Google Inc. Acoustic model training corpus selection
US20170004120A1 (en) * 2015-06-30 2017-01-05 Facebook, Inc. Corrections for natural language processing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000305590A (ja) * 1999-04-16 2000-11-02 Alpine Electronics Inc 音声認識方法
JP2009128675A (ja) * 2007-11-26 2009-06-11 Toshiba Corp 音声を認識する装置、方法およびプログラム
KR20140008835A (ko) * 2012-07-12 2014-01-22 삼성전자주식회사 음성 인식 오류 수정 방법 및 이를 적용한 방송 수신 장치
JP2014134640A (ja) * 2013-01-09 2014-07-24 Nippon Hoso Kyokai <Nhk> 文字起こし装置およびプログラム
US20150243278A1 (en) * 2014-02-21 2015-08-27 Microsoft Corporation Pronunciation learning through correction logs
KR20160066441A (ko) * 2014-12-02 2016-06-10 삼성전자주식회사 음성 인식 방법 및 음성 인식 장치

Also Published As

Publication number Publication date
JP2019528470A (ja) 2019-10-10
EP3739575B1 (en) 2024-08-28
US20180308471A1 (en) 2018-10-25
US11200887B2 (en) 2021-12-14
EP3491641B1 (en) 2020-10-07
CN109791761B (zh) 2023-04-25
JP6726354B2 (ja) 2020-07-22
KR102256705B1 (ko) 2021-05-27
US20200243070A1 (en) 2020-07-30
EP4425488A2 (en) 2024-09-04
CN109791761A (zh) 2019-05-21
US10643603B2 (en) 2020-05-05
EP3739575A1 (en) 2020-11-18
EP3491641A1 (en) 2019-06-05
CN116543762A (zh) 2023-08-04
WO2018022220A1 (en) 2018-02-01
US11682381B2 (en) 2023-06-20
US20230274729A1 (en) 2023-08-31
US20180033426A1 (en) 2018-02-01
US20220093080A1 (en) 2022-03-24
US10019986B2 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
US11682381B2 (en) Acoustic model training using corrected terms
US11797763B2 (en) Allowing spelling of arbitrary words
US11302305B2 (en) Biasing voice correction suggestions
US9483459B1 (en) Natural language correction for speech input
KR101309042B1 (ko) 다중 도메인 음성 대화 장치 및 이를 이용한 다중 도메인 음성 대화 방법
US11501764B2 (en) Apparatus for media entity pronunciation using deep learning
KR20220004224A (ko) 음성 인식을 위한 컨텍스트 바이어싱
US11170765B2 (en) Contextual multi-channel speech to text
US12019999B2 (en) Providing a well-formed alternate phrase as a suggestion in lieu of a not well-formed phrase

Legal Events

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