KR20190032498A - 수정된 용어들을 사용하는 음향 모델 트레이닝 - Google Patents
수정된 용어들을 사용하는 음향 모델 트레이닝 Download PDFInfo
- 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
Links
- 238000012549 training Methods 0.000 title description 8
- 238000013518 transcription Methods 0.000 claims abstract description 134
- 230000035897 transcription Effects 0.000 claims abstract description 134
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000004590 computer program Methods 0.000 claims abstract description 18
- 230000004044 response Effects 0.000 claims description 33
- 238000012545 processing Methods 0.000 description 16
- 238000012986 modification Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 230000009471 action Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/01—Assessment or evaluation of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/10—Speech classification or search using distance or distortion measures between unknown speech and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/32—Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0638—Interactive procedures
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/221—Announcement of recognition results
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback 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은 트레이닝된 음향 모델을 사용하여 검색 결과들을 제공하기 위한 예시적 방법을 도시하는 흐름도이다.
다양한 도면들에서 동일한 참조 번호 및 기호는 동일한 구성요소를 표시한다.
도 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-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-la]"에 대응하는 오디오 데이터를 수신하고, 수정된 트랜스크립션(116)에서 교체된 용어 "Jolla"를 트레이닝 데이터로서 수신한다. 시스템은 선택된 용어 "Zola"에 대응하는 오디오 데이터의 부분을 식별한다. 시스템은 오디오 데이터로부터 "Zola [z-la]"에 대응하는 오디오 데이터의 부분을 분리한다. 오디오 데이터의 분리된 부분과 교체된 용어 "Jolla"를 사용하여, 시스템은 음향 모델을 트레이닝한다. 예를 들면, 시스템은 "Zola [z-la]"의 음성 입력에 응답하여, "Jolla"라는 용어를 인식하도록 음향 모델을 트레이닝할 수 있다.
일부 구현예에서, 시스템은 제1 음성 입력에 대응하는 오디오 데이터 및 전체 수정된 트랜스크립션을 트레이닝 데이터로서 수신한다. 예를 들면, "Directions to La Jolla [z-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-la]"일 수 있다.
시스템은 상기 제1 오디오 데이터의 제1 트랜스크립션을 획득한다(320). 상기 제1 트랜스크립션은 수신된 제1 오디오 데이터의 트랜스크립션(전사)이다. 예를 들면, 제1 오디오 데이터의 트랜스크립션을 제공하고 이를 인식된 텍스트 출력으로 변환하기 위해 언어 모델이 사용될 수 있다. 음성-텍스트 변환 기법은 오디오 신호로부터 음성 또는 다른 언어 단위를 식별하는 음향 모델 및 특정한 단어 또는 단어들의 시퀀스에 대해 확률을 할당하는 언어 모델의 사용을 포함할 수 있다. 일부 구현예에서, 음성-텍스트 변환 기법은 예를 들어, 철자 및/또는 문법 규칙에 기초하여, 음성 입력에서 오류들을 수정하거나 보전할 수 있다.
제1 트랜스크립션은 예를 들어, 특정한 사용자 인터페이스에서 디스플레이하기 위해 사용자 디바이스에 제공된다. 제1 트랜스크립션은 예를 들어, 제1 오디오 데이터 시스템의 인식을 표시하기 위해 디스플레이될 수 있다. 그 다음, 사용자는 제시된 제1 트랜스크립션을 검사하여, 시스템이 제1 오디오 데이터를 정확하게 인식했는지 여부를 결정할 수 있다. 예를 들면, 제1 오디오 데이터는 쿼리 "Directions to La Zola"로 제1 트랜스크립션에서 인식될 수 있는 음성 쿼리 "Directions to La Jolla [z-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-la]"에 대응하는 제1 오디오 데이터인 제1 부분을 획득할 수 있다.
일부 구현예에서, 상기 제1 오디오 데이터의 제1 부분은 제1 오디오 데이터로부터 분리될 수 있다. 제1 부분은 사용자에 의해 선택된 제1 트랜스크립션의 특정한 용어 또는 용어들에 대응한다. 예를 들면, 사용자는 용어 "Zola"를 선택할 수 있다. 시스템은 용어 "Zola"에 대응하는 제1 부분을 제1 오디오 데이터로부터 분리한다. 이 예시에서, 제1 부분의 소리는 [z-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-la]를 분리한 후, 시스템은 제1 부분[z-la]를 사용하여 교체 용어 "Jolla"를 인식하기 위한 음향 모델을 트레이닝할 수 있다.
도 4은 트레이닝된 음향 모델을 사용하여 검색 결과들을 제공하기 위한 예시적 방법을 도시한다. 편의상, 방법(400)은 하나 이상의 위치들에 위치되고 본 명세서에 따라 적절하게 프로그래밍된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다.
시스템은 발언에 대응하는 제2 오디오 데이터를 수신한다(410). 예를 들면, 발언은 음성 입력일 수 있다. 사용자는 음성 입력이 제공될 수 있음을 표시하는 특정한 사용자 인터페이스와 연관된 음성 입력 표시기 예를 들어, 마이크로폰 표시기를 선택할 수 있다. 예를 들면, 사용자 디바이스의 사용자 인터페이스는 마이크로폰 표시자를 포함할 수 있다. 음성 입력이 사용자에 의해 개시되면, 사용자 디바이스의 마이크로폰은 사용자로부터의 음성 입력을 캡처한다. 그 다음 음성 입력은 사용자 디바이스에 의해 시스템으로 전송된다. 음성 입력은 예를 들어, "Directions to La Jolla [z-la]"일 수 있다.
시스템은 상기 제2 오디오 데이터의 제2 트랜스크립션을 획득한다(420). 상기 제2 트랜스크립션은 수신된 제2 오디오 데이터의 트랜스크립션(전사)이다. 예를 들면, 제2 오디오 데이터의 제2 트랜스크립션을 제공하고 이를 인식된 텍스트 출력으로 변환하기 위해 음향 및 언어 모델들이 사용될 수 있다. 예를 들면, 제2 오디오 데이터는 "Directions to La Zola"로 제2 트랜스크립션에서 인식될 수 있는 음성 입력 "Directions to La Jolla [z-la]"일 수 있다.
시스템은 상기 제2 오디오 데이터의 제2 부분을 식별한다(430). 특히, 제2 오디오 데이터의 제2 부분은 도 3을 참조하여 기술된 제1 오디오 데이터의 제1 부분에 대응한다. 예를 들면, 시스템은 제1 오디오 데이터의 제1 부분 [z-la]에 대응하는 제2 오디오 데이터의 제2 부분 [z-la]을 식별 할 수 있다.
시스템은 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득한다. 특히, 트레이닝된 음향 모델은 상기 기술된 기법들을 사용하여 트레이닝된 음향 모델일 수 있다. 예를 들면, 도 3을 참조하여 기술된 예를 참조하면, 음향 모델은 제1 오디오 데이터의 제1 부분 [z-la]을 사용하여 교체 용어 "Jolla"를 인식하도록 트레이닝된다. 제1 부분 [z-la]에 대응하는 식별된 제2 부분 [z-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 트랜스크립션을 획득하는 단계;
(i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 단계;
상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계;
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 단계; 및
상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 단계를 포함하는 것을 특징으로 하는 방법. - 청구항 1에 있어서,
발언에 대응하는 제2 오디오 데이터를 수신하는 단계, 상기 제2 오디오 데이터는 상기 제1 오디오 데이터의 제1 부분에 대응하는 제2 부분을 포함하며;
상기 제2 오디오 데이터의 제2 트랜스크립션을 획득하는 단계;
상기 제2 오디오 데이터로부터 상기 제2 부분을 식별하는 단계;
상기 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득하는 단계; 및
상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득하는 단계를 더 포함하는 것을 특징으로 하는 방법. - 청구항 1 또는 2에 있어서,
상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득하는 단계; 및
상기 검색 결과들 중 하나 이상을 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법. - 임의의 선행하는 청구항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 방법. - 청구항 4에 있어서,
상기 음성적 유사성을 결정하는 것은 상기 선택된 용어들 중 하나 이상의 각각과 상기 교체 용어들 중 하나 이상의 각각 간에 음성적 거리(phonetic distance)를 계산하는 것을 포함하는 것을 특징으로 하는 방법. - 임의의 선행하는 청구항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 방법. - 임의의 선행하는 청구항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 방법. - 임의의 선행하는 청구항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상의 각각이 임계수의 문자들(characters)을 포함함을 결정하는 것을 포함하는 것을 특징으로 하는 방법. - 시스템으로서,
컴퓨터 프로그램 명령어들을 실행하도록 구성된 프로세서; 및
상기 프로세서에 의해 실행될 때, 상기 시스템으로 하여금 동작들을 수행하게 하는 상기 컴퓨터 프로그램 명령어들이 인코딩된 컴퓨터 저장 매체를 포함하며, 상기 동작들은:
발언에 대응하는 제1 오디오 데이터를 수신하는 동작;
상기 제1 오디오 데이터 제1 트랜스크립션을 획득하는 동작; (i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 동작;
상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작;
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 동작; 및
상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 동작을 포함하는 것을 특징으로 하는 시스템. - 청구항 9에 있어서,
발언에 대응하는 제2 오디오 데이터를 수신하는 동작, 상기 제2 오디오 데이터는 상기 제1 오디오 데이터의 제1 부분에 대응하는 제2 부분을 포함하며;
상기 제2 오디오 데이터의 제2 트랜스크립션을 획득하는 동작;
상기 제2 오디오 데이터로부터 상기 제2 부분을 식별하는 동작;
상기 트레이닝된 음향 모델을 사용하여 상기 제2 부분의 수정된 트랜스크립션을 획득하는 동작; 및
상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 트랜스크립션을 획득하는 동작을 더 포함하는 것을 특징으로 하는 시스템. - 청구항 9 또는 10에 있어서,
상기 제2 트랜스크립션과 상기 수정된 트랜스크립션을 병합하는 상기 트랜스크립션에 대한 응답인 검색 결과들을 획득하는 동작; 및
상기 검색 결과들 중 하나 이상을 제공하는 동작을 더 포함하는 것을 특징으로 하는 시스템. - 청구항 9 내지 11 중 어느 한 항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 시스템. - 청구항 12에 있어서,
상기 음성적 유사성을 결정하는 것은 상기 선택된 용어들 중 하나 이상의 각각과 상기 교체 용어들 중 하나 이상의 각각 간에 음성적 거리(phonetic distance)를 계산하는 것을 포함하는 것을 특징으로 하는 시스템. - 청구항 9 내지 13 중 어느 한 항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 시스템. - 청구항 9 내지 14 중 어느 한 항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 시스템. - 청구항 9 내지 15 중 어느 한 항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 단계는 상기 선택된 용어들 중 하나 이상의 각각이 임계수의 문자들(characters)을 포함함을 결정하는 것을 포함하는 것을 특징으로 하는 시스템. - 컴퓨터 프로그램이 인코딩된 컴퓨터 판독가능 저장 디바이스로서, 상기 컴퓨터 프로그램은 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하는 명령어들을 포함하며, 상기 동작들은:
발언에 대응하는 제1 오디오 데이터를 수신하는 동작;
상기 제1 오디오 데이터의 제1 트랜스크립션을 획득하는 동작;
(i) 상기 제1 트랜스크립션 중 하나 이상의 용어들의 선택 및 (ii) 교체 용어들 중 하나 이상을 표시하는 데이터를 수신하는 동작;
상기 교체 용어들 중 하나 이상이 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작;
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작에 응답하여, 상기 제1 트랜스크립션 중 하나 이상의 용어들에 대응하는 상기 제1 오디오 데이터의 제1 부분을 획득하는 동작; 및
상기 교체 용어들 중 하나 이상을 인식하기 위한 음향 모델을 트레이닝하기 위해 상기 제1 트랜스크립션 중 하나 이상의 용어들과 연관된 상기 제1 오디오 데이터의 제1 부분을 사용하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스. - 청구항 17에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상과 상기 교체 용어들 중 하나 이상 간의 음성적 유사성(phonetic similarity)을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스. - 청구항 17 내지 18에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상 가운데에서 연결들(connections)을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스. - 청구항 17 내지 19 중 어느 한 항에 있어서,
상기 교체 용어들 중 하나 이상이 상기 선택된 용어들 중 하나 이상의 수정으로서 분류됨을 결정하는 동작은 상기 선택된 용어들 중 하나 이상이 연속적임을 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장 디바이스.
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)
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)
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)
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 |
-
2016
- 2016-07-29 US US15/224,104 patent/US10019986B2/en active Active
-
2017
- 2017-06-20 KR KR1020197005232A patent/KR102256705B1/ko active IP Right Grant
- 2017-06-20 CN CN202310494102.2A patent/CN116543762A/zh active Pending
- 2017-06-20 EP EP17734604.6A patent/EP3491641B1/en active Active
- 2017-06-20 JP JP2019504861A patent/JP6726354B2/ja active Active
- 2017-06-20 WO PCT/US2017/038336 patent/WO2018022220A1/en unknown
- 2017-06-20 CN CN201780047138.9A patent/CN109791761B/zh active Active
- 2017-06-20 EP EP20183315.9A patent/EP3739575B1/en active Active
-
2018
- 2018-06-29 US US16/023,658 patent/US10643603B2/en active Active
-
2020
- 2020-04-01 US US16/837,393 patent/US11200887B2/en active Active
-
2021
- 2021-12-02 US US17/457,421 patent/US11682381B2/en active Active
-
2023
- 2023-05-04 US US18/312,587 patent/US20230274729A1/en active Pending
Patent Citations (6)
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 |