KR101700466B1 - 재인식 및 통계적 분류를 이용하는 인식 기법 - Google Patents

재인식 및 통계적 분류를 이용하는 인식 기법 Download PDF

Info

Publication number
KR101700466B1
KR101700466B1 KR1020117028895A KR20117028895A KR101700466B1 KR 101700466 B1 KR101700466 B1 KR 101700466B1 KR 1020117028895 A KR1020117028895 A KR 1020117028895A KR 20117028895 A KR20117028895 A KR 20117028895A KR 101700466 B1 KR101700466 B1 KR 101700466B1
Authority
KR
South Korea
Prior art keywords
recognition
context
computer
recognition result
grammar
Prior art date
Application number
KR1020117028895A
Other languages
English (en)
Other versions
KR20120029413A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=43298454&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101700466(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20120029413A publication Critical patent/KR20120029413A/ko
Application granted granted Critical
Publication of KR101700466B1 publication Critical patent/KR101700466B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/70Machine learning, data mining or chemometrics
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Abstract

입력의 인식을 위해 전체 문법을 컨텍스트-특정 문법들의 집합으로서 사용하는 구조로서, 각각의 컨텍스트-특정 문법은 서브작업 카테고리, 지리적 영역 등과 같은 특정 컨텍스트를 담당한다. 문법들은 함께 전체 도메인을 커버한다. 또한, 같은 입력에 대해 여러 인식기술이 병렬로 실행될 수 있으며, 이때 각각의 인식기술은 컨텍스트-특정 문법들 중 하나 이상을 이용한다. 다양한 인식기-문법들로부터 비롯되는 여러 중간 인식 결과들은 그 여러 인식 결과들 및 가능한 다른 도메인 지식에 기반하여 동적으로 구성된 문법을 이용하여 재인식을 실행하거나, 여러 인식 결과들 및 다른 도메인 지식으로부터 추출된 분류 특성들에 대해 작용하는 통계적 분류자를 사용하여 승자를 선택함으로써 조정된다.

Description

재인식 및 통계적 분류를 이용하는 인식 기법{RECOGNITION USING RE-RECOGNITION AND STATISTICAL CLASSIFICATION}
많은 수의 상호, 웹 검색 조회, 음성 다이얼링 요청 등을 커버하는 음성 검색 작업과 같이 넓은 문법 검색 공간이 연루될 때 음성 인식 성능은 종종 최적에 미치지 못한다. 종종 나타나는 세 가지 주요한 최적 미도달 사항은 긴 인식 대기시간, 조악한 인식 정확도, 및 불충분한 문법 적용성을 포함한다.
기존의 한 모바일 음성 검색 애플리케이션은 최초 단계에서 국내 전역의 사업 목록화 문법에 지역성(locality) 문법을 더한 것을 이용하며, 두 번째 단계에서 지역성 특정 사업 목록화 문법을 이용해 동일한 발화(utterance)를 재인식한다(최초 단계에서 지역성이 결정된 경우). 이러한 접근법은 대기시간 문제를 처리하지는 않지만, 매우 특정한 상황에서 적용성 및 정확도를 개선할 수 있다. 또 다른 접근법은 서브 발화(sub-utterance) 레벨에서 개별 인식기들의 출력들 사이의 선택을 행함으로써 단어 에러율을 줄이고자 시도한다. 이 접근법 및 그 확장들은 일반적으로 각각의 인식기가 전체 작업에 대해 완전한 문법을 가지고 인식을 시도한다고 가정한다.
이하의 설명은 여기에 기술되는 일부 신규한 실시예들에 대한 기본적 이해를 제공하기 위해 간략화된 요약을 제시한다. 이 요약은 광범위한 개괄이 아니고, 핵심/중요 구성요소들을 식별한다거나 그 범위를 명확히 경계짓는 것으로 의도되어 있지 않다. 그 유일한 목적은 나중에 제시되는 보다 상세한 설명에 대한 서설로서 몇몇 개념들을 단순화된 형식으로 제시하는 것이다.
개시된 구조는 인식을 위한 입력을 취하며, 인식 프로세싱을 위해 그 입력으로 컨텍스트-특정 제약들(constraints)의 여러 인스턴스들을 적용한다. 함께 취해진 별개의 제약 인스턴스들은 주어진 입력에 대해 전체적인 컨텍스트 도메인을 제공한다. 예컨대, 그러한 제약 인스턴스들에 대해 인식을 병렬로 수행함으로써, 인식 대기시간, 인식 정확도, 및 인식 도메인 적용성이 개선된다. 또한 시스템이 결과가 도출될 때까지 얼마나 오래 기다릴 것인지에 관해 시간 제한을 부과함으로써 별개의 인식 경로들의 인식 프로세싱이 관리될 수 있다.
음성 인식과 관련하여, 이 구조는 전체 문법을 발화(utterance) 입력의 인식을 위해 분리된 보다 작은 개별 컨텍스트-특정 문법들의 형식으로 사용하며, 각각의 컨텍스트-특정 문법은 서브작업 카테고리, 지리적 영역 등과 같은 특정 컨텍스트를 담당한다. 문법들은 함께 전체 도메인을 커버한다. 또한, 같은 입력에 대해 여러 인식(기술)이 병렬로 실행될 수 있고, 이때 각각의 인식 경로는 컨텍스트-특정 문법들 중 하나 이상을 이용한다.
다양한 인식기-문법들의 경로들로부터 비롯되는 여러 중간 인식 결과들은 그 여러 인식 결과들 및 가능한 다른 도메인 지식에 기반하여 동적으로 구성된 문법을 이용하여 재인식을 실행하거나, 여러 인식 결과 및 다른 도메인 지식으로부터 추출된 분류 특성들에 대해 작용하는 통계적 분류자를 사용하여 승자를 선택함으로써 조정된다.
상기 관련 목적의 달성을 위해, 이하의 설명 및 첨부된 도면과 관련하여 소정의 예시적 양태들이 여기에 기술된다. 이 양태들은 여기 개시된 원리가 실시되고 그 양태들 및 균등물이 청구된 주요 대상의 범위 안에 있도록 의도되는 다양한 방식들을 나타낸다. 도면과 연계하여 고려되는 이하의 상세한 설명으로부터 기타의 이점 및 신규한 특징이 자명하게 드러날 것이다.
도 1은 개시된 구조에 따라 컴퓨터 구현 인식 시스템을 예시한다.
도 2는 한 개의 인식 결과의 결정을 위해 규칙들을 이용하는 시스템의 대안적 실시예를 예시한다.
도 3은 재인식을 이용하는 컨텍스트-특정 제약 인식 시스템을 예시하며, 여기서 제약들은 음성 인식을 위한 문법들이다.
도 4는 통계적 분류를 이용하는 컨텍스트-특정 제약 인식 시스템을 예시하며, 여기서 제약들은 병렬 음성 인식을 위한 문법들이다.
도 5는 컴퓨터 구현 인식 방법을 예시한다.
도 6은 도 5의 방법의 추가 양태들을 예시한다.
도 7은 도 5의 방법의 추가 양태들을 예시한다.
도 8은 개시된 구조에 따라 인식을 실행하도록 동작되는 컴퓨팅 시스템의 블록도를 예시한다.
도 9는 개시된 구조에 따라 병렬 인식을 제공하는 컴퓨팅 환경의 개략적 블록도를 예시한다.
개시된 구조는 먼저 컨텍스트-특정 제약들을 사용하여 동일한 입력(가령, 발화(utterance))에 대한 독립적 인식을 수행하는 인식 시스템이다. 이러한 독립적 인식들은 직렬 또는 병렬로 수행될 수 있다. 컨텍스트-특정 제약들 각각은 모든 도메인 지식을 일체화하도록 시도하는 제약보다 작다. 여러 인식 결과들의 조정은 이어지는 인식(재인식) 이용 및/또는 통계적 분류를 통해 수행될 수 있다.
이 구조는 전통적 단일 문법, 단일 인식 접근법과 관련되는 인식 대기시간, 인식 정확도, 및 불충분한 문법 적용성 문제를 해소시킨다. 인식 대기시간과 관련해, 병렬 인식 시의 각 인식 인스턴스는 같은 작업들을 커버할 수 있는 하나의 대문법보다 소문법을 배경으로 한다. 또한 재인식 단계는 작은 동적 문법을 배경으로 한다. 병렬 인식들의 최대 대기시간에 가령 재인식 대기시간이 더해진 두 결합된 인식 단계들은 특히 비(non)스트리밍 케이스들에서 하나의 대문법을 이용한 인식보다 작은 대기시간을 가질 수 있다.
단일한 인식에 관련하여, 가정 검색(hypothesis search) 중의 가지치기로 인해 종종 인식 정확도를 잃게 된다. 훨씬 더 많은 가정 집합이 보유될 수 있기 때문에 여러 인식기술을 가지는 것이 이러한 한계를 완화시킨다. 또한 문법들 같은 컨텍스트-특정 제약들은 가령 많은 컨텍스트들을 커버하는 하나의 일반 문법보다 타깃 컨텍스트으로부터 발화에 대한 보다 우수한 정확도를 가질 가능성이 높다. 따라서, 여러 인식기술로부터의 결과들이 정확한 결과를 포함할 기회가 더 많고, 여러 인식 결과들을 재인식이나 분류자를 이용해 조정하는 것이 하나의 문법, 단일 인식 접근법보다 정확한 결과를 발생할 가능성이 더 크다.
불충분한 문법 적용성과 관련해, 예컨대 하나의 문법이 얼마나 클 수 있는지 및/또는 하나의 인식기술에 얼마나 큰 문법들이 있을 수 있는지에 대한 실질적 한계(가령, 하드웨어, 소프트웨어)가 종종 존재한다. 여러 인식을 병렬로 실행하는 것은 이를테면 총 문법 적용성을 크게 개선시킬 수 있는데, 이는 각각의 인식이 별개의 소프트웨어 프로세스들 및/또는 하드웨어 자원들 상에서 잠정 실행될 수 있기 때문이다.
개시된 구조를 큰 스케일의 음성 인식 작업에 적용하는 것을 고려할 수 있다. 이하의 예는 웹의 전면적(open-ended) 서치, 로컬 비즈니스, 개인 연락처 등을 포함할 수 있는 음성 검색 작업을 예로 들어 개념을 설명한다. 해법의 다양한 부분들에 대한 변형 및 개선이 가능하다.
인식 문법은 다수의 보다 작고 겹칠 가능성이 있는 컨텍스트-특정 문법들로서 제공되며, 각각의 컨텍스트-특정 문법은 오리지널 작업 공간의 특정 부분집합을 커버한다. 분할할 컨텍스트는 서브작업 카테고리(가령, 상호 대 영화 제목), 지리적 위치(가령, 캘리포니아 주 대 뉴욕 주 안에 있는 사업체들), 인구통계학적 출신(가령, 젊은 층 지향 콘텐츠 대 성년층 콘텐츠)에 기반할 수 있다. 각각의 콘텐츠-특정 문법은 따로따로 생성되어, 각 컨텍스트로부터 예상되는 사용자 입력의 성공율을 극대화하기 위해 각 컨텍스트과 관련된 지식, 구조 및 다른 가용 정보를 이용할 수 있다.
지금부터 도면에 대한 참조가 이뤄지며, 이때 유사한 참조 부호는 전체적으로 유사한 구성요소들을 가리키기 위해 사용된다. 이하의 설명에서, 설명의 목적상 철저한 이해를 제공하기 위해 수많은 특정 세부사항들이 언급된다. 그러나 신규 실시예들은 이러한 세부사항들 없이도 실시될 수 있다. 다른 예에서 잘 알려진 구조와 장치들이 그에 대한 설명을 돕기 위해 블록도의 형태로 도시된다. 그 의도는 청구된 주제의 개념 및 범위 안에 들어오는 모든 변형, 균등물, 및 대안을 포괄하는 데 있다.
도 1은 개시된 구조에 따라 컴퓨터 구현 인식 시스템(100)을 예시한다. 시스템(100)은 입력(106)을 인식 결과들(108)로 인식 프로세싱하기 위한 컨텍스트-특정 제약들(104)의 제약 구성요소(102), 및 인식 결과들(108)을 한 개의 인식 결과(112)로 조정하기 위한 조정 구성요소(110)를 포함한다.
시스템(100)은 해당 컨텍스트-특정 제약들(104)을 병렬 경로 및/또는 직렬 방식으로 개별 인식 프로세싱하기 위한 인식 구성요소(114)를 더 포함할 수 있다. 예를 들어, 컨텍스트-특정 제약들(104)은 입력(106)에 대한 문법들의 병렬 경로 및/또는 직렬 인식 처리를 위한 문법들을 포함할 수 있다. 컨텍스트-특정 제약들(104)의 개별 집합은 분리된 컨텍스트 적용범위 및 상호 교차하는 컨텍스트 적용범위를 포함할 수 있다. 즉, 제약들의 한 집합은 다른 제약 집합의 제약들과 일부 중복을 가질 수 있다. 일부 제약 집합들이 다른 제약 집합들의 제약들과 중복되지 않는 경우도 있다.
조정 구성요소(110)는 인식 결과들(108)에 기초하여 동적으로 작성된 문법을 이용함으로써 하나의 조정 결과(112)를 생성하도록 재인식을 이용하여 인식 결과들(108)을 조정할 수 있다.
다른 대안으로서 조정 구성요소(110)는 하나의 인식 결과(112)를 생성하기 위해 인식 결과들(108)로부터 추출된 분류 특성들에 대해 작용하는 통계적 분류자를 사용해 결과들(108)을 조정할 수 있다.
조정 프로세싱은 하나의 인식 결과(112)에 도달하기 위해 관련 작업 데이터를 처리할 수도 있다. 관련 작업 데이터는 인식된 스트링, 발화 수준 및 서브 발화 수준 신뢰도 점수, 음성 적용범위, 동시발생적 인식들 사이의 상대적 대기시간, 컨텍스트들의 사전 확률, 각 인식의 상대적 난이도, 또는 인식 결과들 사이의 일치도 가운데 적어도 한 개를 포함할 수 있다. 또한, 작업에 대한 특정 요건들을 반영하여 다수의 수작업 및/또는 자동으로 도출된 규칙들이 다수의 인식 가설에 대한 조정 프로세스에 영향을 미칠 수 있다.
도 2는 한 개의 인식 결과(112)의 결정을 위해 규칙들을 이용하는 시스템(200)의 대안적 실시예를 예시한다. 시스템(200)은 입력(106)을 인식 결과들(108)로 인식 프로세싱하기 위한 컨텍스트-특정 제약들(104)의 제약 구성요소(102), 그리고 인식 결과들(108)을 한 개의 인식 결과(112)로 조정하기 위한 조정 구성요소(110), 및 해당 컨텍스트-특정 제약들(104)의 병렬 경로 및/또는 직렬방식의 개별 인식 처리를 위한 인식 구성요소(114)를 포함한다.
인식 결과들(108) 및/또는 하나의 인식 결과(112)(가령, 최종 결과) 중 하나 이상을 선언하기 위한 규칙들(가령, 우선순위)을 적용하기 위해 규칙 구성요소(202)가 제공된다. 예를 들어, 특정 인식기가 충분히 높은 신뢰도 점수를 가진 특정 결과를 리턴하는 경우, 그 결과가 해당 인식기 프로세스나 심지어 단일 인식 결과(112)에 있어 최종으로 받아들여질 수 있도록 결정하는 규칙이 생성 및 적용될 수 있다.
도 3은 재인식을 이용하는 컨텍스트-특정 제약 인식 시스템(300)을 예시하며, 여기서 제약들은 음성 인식을 위한 문법들이다. 시스템(300)은 병렬로 작용하는 N 개의 인식기술-문법 쌍들을 포함하는데, 여기서 각 쌍은 하나 이상의 컨텍스트-특정 문법들 및 인식기(인식 N이라 표기됨)를 포함한다. 예시된 바와 같이, 문법들은 서로 상이하다; 그러나 반드시 그런 것은 아니더라도 한 문법과 다른 문법 사이에 일부 중복이 있을 수 있다. 기존 인식 시스템에서와 같이 하나의 대문법을 생성하여 사용하기 보다, 시스템(300)은 (하나의 대문법으로 병합하지 않는 대신에)각각의 문법들을 보유하고 그 각각의 문법들 상에서 음성 발화 입력(302)의 인식을 실행한다.
즉, 발화 입력(302)은 제1인식기(304) 및 관련된 제1컨텍스트-특정 문법(306)을 통해 프로세싱되어 제1결과(들)(308)을 도출할 뿐 아니라 제2인식기(310) 및 관련된 제2컨텍스트-특정 문법(312)을 통해 처리되어 제2결과(들)(314)을 도출하며, 그런 식으로 요망된 개수 N의 인식기들 및 문법들을 통해 N 개의 결과(들)을 도출한다. 그 결과(들)은 동적 문법(316)을 생성하는데 활용될 수 있고, 이어서 동적 문법은 재인식(318)을 위해 사용되어 최종 인식 결과(320)를 도출하도록 할 수 있다.
다르게 말하면, 사용자 발화 입력(302)이 있을 때, 컨텍스트-특정 문법들 각각에 대해 별개의 인식이 실행된다. 이것은 동시에, 혹은 거의 동시에 병렬 방식으로 일어나는 것으로 예시된다. 병렬 인식 각각은 같은 종류나 다른 종류의 인식기(가령, 내장형 인식기 대 네트워크 인식기, 다양한 음향 모델을 이용하는 네트워크 인식기들 등)를 이용할 수 있고, 같거나 상이한 인식 파라미터들을 사용할 수 있다. 최대 대기 주기까지, 시스템(300)은 모든 가용 인식 결과들(가령, 결과(들)(308), 결과(들)(314) 등)을 수집하고 재인식을 통해 최종 인식 결과(320)를 결정한다.
동적 문법(316)은 N 개의 최선의 인식 결과들의 인식 스트링, 해석, 및 신뢰도 점수, 및/또는 사용 가능한 경우 인식 격자(lattice)를 포함할 수 있는 모든 인식 결과로부터 도출된 경쟁 엔트리들을 포함하도록 구성된다. 오리지널 발화 입력(302)의 재인식은 이 동적 문법(316)을 배경으로 수행된다. 신뢰도 점수를 포함하는 재인식(318)의 결과(320)는 최종 인식 결과(320)로서 받아들여진다.
선택사항으로서, 소정 인식기가 충분히 높은 신뢰도 점수를 가진 특정 결과를 리턴하는 경우 그 결과를 최종으로 받아들일 수 있는 것과 같이, 모든 인식들이 완료되기 전에 최종 인식 결과(320)를 선언하도록 규칙 구성요소(202)에 의해 소정 우선순위 규칙이 포함될 수 있다. 선택사항으로서, 보다 집중된 인식 프로세스를 제공하기 위해 작업과 관련된 다른 도메인 지식(322)이 동적 문법에 대한 입력으로서 주어질 수 있다. 그 지식(322)은 사용자 선호사항, 발화시 말해지는 것과 관련된 콘텐츠, 하드웨어/소프트웨어 고려사항, 지역성 등을 포함할 수 있다.
도 4는 통계적 분류를 이용하는 컨텍스트-특정 제약 인식 시스템(400)을 예시하며, 여기서 제약들은 병렬 음성 인식을 위한 문법들이다. 여러 수치 및/또는 카테고리적 특징들(402)이 모든 인식 결과들(가령, 결과(들)(308), 결과(들)(314) 등), 및 가능하다면 인식 작업과 관련된 다른 도메인 지식(322)으로부터 도출될 수 있다. 통계적 분류자는 각각의 결과가 실제 사용자 입력을 반영하는 것이 얼마나 가능한지를 판단하는데 사용된다. 가장 높은 분류 점수를 가진 결과가 최종 인식 결과(320)로서 선택될 수 있고, 그 분류 점수는 최종 인식 신뢰도가 되도록 정규화될 수 있다.
시스템(400)은 병렬로 동작하는 N 개의 인식-문법 쌍들을 포함하는데, 여기서 각 쌍은 컨텍스트-특정 문법(컨텍스트-특정 문법 N으로 표기됨) 및 인식기(인식기술 N이라 표기됨)를 포함한다. 앞에서 예시된 바와 같이, 문법들은 서로 상이하다; 그러나 반드시 그런 것은 아니더라도 한 문법과 다른 문법 사이에 일부 중복이 있을 수 있다. 기존 인식 시스템에서와 같이 하나의 대문법을 생성하여 사용하기 보다, 시스템(400)은 (하나의 대문법으로 병합하는 대신) 각각의 문법들을 보유하고 그 각각의 문법들 상에서 음성 발화 입력(302)의 인식을 실행한다.
즉, 발화 입력(302)은 제1인식기(304) 및 관련된 제1컨텍스트-특정 문법(306)을 통해 프로세싱되어 제1결과(들)(308)을 도출할 뿐 아니라 제2인식기(310) 및 관련된 제2컨텍스트-특정 문법(312)을 통해 처리되어 제2결과(들)(314)을 도출하며, 그런 식으로 요망된 개수 N의 인식기들 및 문법들을 통해 N 개의 결과(들)을 도출한다. 결과(들)(결과(들)(308), 결과(들)(314),..., 결과(들) N)은 특성들(402)을 생성하는데 활용되고, 그런 다음 그 특성들(402)은 최종 인식 결과(302)를 위해 통계적 분류(404)로 보내진다.
앞서 도 3에 도시되고 기술된 바와 같이, 선택사항으로서, 소정 인식기가 충분히 높은 신뢰도 점수를 가진 특정 결과를 리턴하는 경우 그 결과를 최종으로 받아들일 수 있는 것과 같이, 모든 인식들이 완료되기 전에 최종 인식 결과(320)를 선언하도록 규칙 구성요소(202)에 의해 소정 우선순위 규칙이 포함될 수 있다. 선택사항으로서, 보다 집중된 인식 프로세스를 제공하기 위해 작업과 관련된 다른 도메인 지식(322)이 동적 문법에 대한 입력으로서 주어질 수 있다. 그 지식(322)은 사용자 선호사항, 발화시 말해지는 것과 관련된 콘텐츠, 하드웨어/소프트웨어 고려사항, 지역성 등을 포함할 수 있다.
여기서의 설명은 사용자 입력 발화를 온라인으로 수신할 때 이 구조가 얼마나 유효한가를 다룬다는 것을 알아야 한다. 본 해법의 또 다른 양태는 특히 여러 인식 결과들의 조정 중에, 시스템에 의해 사용되는 적절한 설정사항, 특성 등을 선택하는 데 있다. 재인식 및 통계적 분류자 둘 모두의 접근법들에 있어서, 트레이닝(training) 데이터가 활용될 수 있고, 오프라인 트레이닝 프로세스가 사용되어 최적 구성 및 매개변수화를 선택하도록 할 수 있다.
재인식 접근법에 있어서, 재인식을 위한 동적 문법에서 경로들에 상대적 가중치(relative weight)를 할당하기 위해 회귀(regression) 같은 통계적 분석을 선택적으로 수행하는 것이 가능할 수도 있다. 각각의 재인식 프로세스를 위한 동적 문법(316)에 영향을 미치도록 다른 도메인 지식(322)의 출력이 제어될 수 있다.
어느 접근법에서든, 이하의 특성들(402) 중 하나 이상이 사용될 수 있으며, 일부 특성들은 병렬 인식 결과들로부터 직접 얻어지고, 다른 특성들은 관련 작업 기술로부터 도출된다. 특성들(402)은 인식된 스트링, 발화 레벨 및 서브 발화 레벨 신뢰 점수, 음성 적용성(가령, 음성으로 추정된 발화의 비), 인식들 사이의 상대적 대기시간(가령, 병렬), 컨텍스트들의 사전 확률(가령, 사용자가 상호 대 스포츠 스코어를 묻는 빈도), 각각의 컨텍스트-특정 인식의 상대적 난이도(가령, 컨텍스트 인식 정확도 안에서 컨텍스트-특정 문법들의 곤란성), 각각의 문법의 허용성(가령, 웹 검색 문법은 광범위한 조회를 수용할 수 있음), 및 인식 결과들 사이의 일치함을 포함할 수 있으나, 여기에 국한되는 것은 아니다.
개별 인식 프로세스들은 서버, 클라이언트, 또는 서버 및 클라이언트 조합 같은 각종 기계장치들에 걸쳐 분산될 수 있다는 것을 알아야 한다. 이것은 분류 및 재인식 상황 모두에 있어서 병렬 인식 뿐 아니라 직렬 인식에도 적용된다.
다르게 표현하면, 개시된 구조는 발화 입력을 인식 결과들로 인식 처리하기 위한 컨텍스트-특정 문법들의 제약 구성요소, 해당하는 컨텍스트-특정 문법들을 사용해 발화 입력을 병렬 경로로 개별 인식 처리하는 인식 구성요소, 및 인식 결과들을 최종 인식 결과로 조정하는 조정 구성요소를 포함하는 컴퓨터 구현 인식 시스템이다.
조정 구성요소는 인식 결과들의 동적 구성 문법을 사용하고, 최종 인식 결과를 생성하기 위해 재인식을 이용해 인식 결과들을 조정한다. 선택사항으로서, 조정 구성요소는 최종 인식 결과를 결정하기 위해 재인식 하기 전에 회귀 같은 통계적 분석을 활용하여 인식 결과들을 조정한다. 다른 대안으로서 조정 구성요소는 최종 인식 결과를 생성하기 위해 인식 결과들로부터 추출된 특성들에 대해 작용하는 통계적 분류를 이용해 인식 결과들을 조정한다. 또한, 규칙 구성요소는 최종 인식 결과에 대한 판단을 정의하는 하나 이상의 규칙들을 부과하고, 다른 도메인 지식이 통계적 분류 조정을 위한 특성들 및 재인식 조정을 위한 동적 문법에 영향을 미칠 수 있다.
개시된 구조의 신규한 양태들을 수행하기 위한 전형적인 방법론들을 나타내는 일련의 플로 차트들이 여기에 포함된다. 설명의 단순성을 위해 여기에서 예컨대 플로 차트나 플로 다이어그램 형태로 보여진 하나 이상의 방법들은 일련의 행위들로서 보여지고 기술되지만, 일부 행위들은 그에 따라 다른 순서 및/또는 여기 도시되고 기술된 것과 다른 행위들과 동시적으로 일어날 수 있듯이 이 방법들이 상기 일련의 행위들의 순서에 따라 제한되는 것은 아니라는 것을 알아야 한다. 예를 들어 당업자라면 방법이 대안적으로, 상태도에서처럼 일련의 상호관련된 상태들 또는 이벤트들로서 표현될 수도 있다는 것을 이해하고 예상할 것이다. 또한 방법에 나타낸 모든 행위들이 새로운 구현예에 다 필요하지 않을 것이다.
도 5는 컴퓨터 구현 인식 방법을 예시한다. 500에서, 발화 입력을 처리하기 위해 개별 컨텍스트-특정 문법들이 수신된다. 502에서, 발화 입력은 각 경로에 대한 해당 컨텍스트-특정 문법을 사용해 병렬 경로들에서 인식된다. 504에서, 각 경로부터 중간 인식 결과가 생성된다. 506에서, 중간 인식 결과들이 최종 인식 결과로 조정된다.
도 6은 도 5의 방법의 추가 양태들을 예시한다. 600에서, 중간 인식 결과들은 인식 결과들로부터 생성된 동적 문법의 재인식을 이용해 조정된다. 602에서, 재인식에 의한 중간 인식 결과들의 조정 중에 다른 도메인 지식이 입력된다. 604에서, 최종 인식 결과를 생성하기 위해 하나 이상의 규칙들이 부과된다. 606에서, 통계적 분류에 의한 중간 인식 결과들의 조정 중에 다른 도메인 지식이 입력된다. 608에서, 최종 인식 결과를 생성하기 위해 하나 이상의 규칙들이 부과된다.
도 7은 도 5의 방법의 추가 양태들을 예시한다. 700에서 회귀 같은 통계적 분석이 수행된다. 그 분석은 모든 경로들 상에서 동시 발생적으로 수행된다. 702에서, 재인식을 위한 동적 문법에서 각 경로에 상대적 가중치들이 할당된다. 704에서, 어떤 경로의 중간 인식 결과 생성을 위해 소정 시간이 대기된다. 706에서, 최종 인식 결과는 상기 소정 시간 안에 생성된 중간 인식 결과들에 기초해 생성된다.
이 출원에서 사용되는 것 같은 "구성요소" 및 "시스템"이라는 용어들은 컴퓨터 관련 개체인 하드웨어, 하드웨어 및 소프트웨어의 조합, 소프트웨어 또는 실행중인 소프트웨어를 의미하도록 의도된다. 예를 들어, 구성요소는 프로세서 상에서 실행되는 프로세스, 프로세서, 하드 디스크 드라이브, (광, 도체 상태, 및/또는 마그네틱 저장 매체의) 여러 저장 드라이브들, 오브젝트, 실행 파일, 실행의 스레드, 프로그램, 및/또는 컴퓨터가 될 수 있으나, 이들에 국한되는 것은 아니다. 예로서 서버 상에서 실행되는 애플리케잉션 및 서버 둘 모두가 구성요소가 될 수 있다. 하나 이상의 구성요소가 프로세스 및/또는 실행의 스레드 안에 상주할 수 있고, 하나의 구성요소가 한 대의 컴퓨터 상에 있도록 제한되고/거나 둘 이상의 컴퓨터들 사이에 분산될 수 있다. "전형적인"이라는 말은 여기에서 예, 경우, 또는 예시로서 기능한다는 것을 의미하기 위해 사용될 수 있다. 여기에 "전형적인" 것이라고 기술된 어떤 양태나 디자인이 반드시 다른 양태들이나 디자인들에 비해 바람직하거나 유리한 것으로 간주되는 것은 아니다.
이제 도 8을 참조하면, 개시된 구조에 따라 인식을 실행하도록 동작되는 컴퓨팅 시스템의 블록도(800)가 예시된다. 그 다양한 양태들을 위한 추가적 컨텍스트을 제공하기 위해, 도 8 및 이하의 설명은 다양한 양태들이 구현될 수 있는 알맞은 컴퓨팅 시스템(800)에 대한 간결하고 일반적인 내용을 제공하도록 의도된다. 상기 내용은 하나 이상의 컴퓨터 상에서 실행될 수 있는 컴퓨터 실행가능 명령어들에 대한 일반적 맥락 안에 있지만, 당업자라면 새로운 실시예들이 다른 프로그램 모듈과의 결합 및/또는 하드웨어 및 소프트웨어의 조합을 통해 구현될 수도 있다는 것을 알 것이다.
다양한 양태들을 구현하기 위한 컴퓨팅 시스템(800)은 프로세싱 유닛(들)(804), 시스템 메모리(806), 및 시스템 버스(808)를 가진 컴퓨터(802)를 포함한다. 프로세싱 유닛(들)(804)은 싱글 프로세서, 멀티 프로세서, 싱글 코어 유닛 및 멀티 코어 유닛 같은 다양한 상용 프로세서들 중 어느 하나일 수 있다. 또한 당업자라면 이 새로운 방법들이 각각이 하나 이상의 관련 장치들에 유효하게 연결될 수 미니컴퓨터, 메인프레임 컴퓨터뿐 아니라 퍼스널 컴퓨터(가령, 데스크탑, 랩탑 등), 핸드헬드 컴퓨터 장치, 마이크로프로세서 기반 또는 프로그래머블 가전기기 등을 포함하는 다른 컴퓨터 시스템 구성과 함께 실시될 수 있다는 것을 예상할 것이다.
시스템 메모리(806)는 휘발성(VOL) 메모리(810)(가령, RAM(random access memory)) 및 비휘발성 메모리(NON-VOL)(812)(가령, ROM, EPROM, EEPROM 등)을 포함할 수 있다. 기본 입출력 시스템(BIOS)은 비휘발성 메모리(812)에 저장될 수 있으며, 가령 시동 중에 컴퓨터(802) 내 구성요소들 사이에서 데이터 및 신호의 통신을 돕는 기본 루틴들을 포함한다. 휘발성 메모리(810)는 또한 데이터를 캐싱하기 위해 고정 RAM 같은 고속 RAM을 포함할 수도 있다.
시스템 버스(808)는 메모리 서브시스템(806)에서 프로세싱 유닛(들)을 포함하지만 그에 국한하는 것은 아닌 시스템 구성요소들에 인터페이스를 제공한다. 시스템 버스(808)는 다양한 상용 버스 구조들 중 어느 하나를 이용해 (메모리 제어기가 있거나 없이) 메모리 버스, 그리고 주변기기 버스(가령, PCI, PCIe, AGP, LPC 등)에 더 상호연결할 수 있는 여러 종류의 버스 구조 중 어느 하나일 수 있다.
컴퓨터(802)는 저장 서브시스템(들)(814) 및 저장 서브시스템(들)(814)을 시스템 버스(808) 및 다른 요망되는 컴퓨터 구성요소들에 인터페이스하기 위한 저장 인터페이스(들)(816)를 더 포함한다. 저장 서브시스템(들)(814)은 예컨대 하드 디스크 드라이브(HDD), 마그네틱 플로피 디스크 드라이브(FDD), 및/또는 광 디스크 저장 드라이브(가령, CD-ROM 드라이브, DVD 드라이브) 중 하나 이상을 포함할 수 있다. 저장 인터페이스(들)(816)은 예컨대 EIDE, ATA, SATA, 및 IEEE 1394 같은 인터페이스 기술들을 포함할 수 있다.
운영체계(820), 하나 이상의 애플리케이션 프로그램(822), 다른 프로그램 모듈들(824) 및 프로그램 데이터(826)을 포함하는 하나 이상의 프로그램 및 데이터가 메모리 서브시스템(806), 착탈형 메모리 서브시스템(818)(가령, 플래시 드라이브 폼 팩터 기술), 및/또는 저장 서브시스템(들)(814)(가령, 광, 마그네틱, 고체 상태)에 저장될 수 있다.
하나 이상의 애플리케이션 프로그램(822), 다른 프로그램 모듈들(824), 및 프로그램 데이터(826)는 도 1의 시스템(100)의 결과들, 개체들, 및 컴포넌트들, 도 2의 시스템(200)의 결과들, 개체들, 및 컴포넌트들, 도 3의 시스템(300)의 결과들, 개체들, 및 컴포넌트들, 도 4의 시스템(100)의 결과들, 개체들, 및 컴포넌트들을 포함할 수 있다.
일반적으로, 프로그램은 특정 작업들을 수행하거나 특정한 추상 데이터 유형들을 구현하는 루틴, 방법, 데이터 구조, 기타 소프트웨어 컴포넌트 등을 포함한다. 운영체계(820), 애플리케이션(822), 모듈(824), 및/또는 데이터(826)의 전부나 일부가 예컨대 휘발성 메모리(810) 같은 메모리 안에 캐싱될 수도 있다. 개시된 구조는 다양한 상용 운영체계나 운영체계들의 조합(가령, 가상 머신들 같은 것)을 이용해 구현될 수 있다는 것을 알아야 한다.
저장 서브시스템(들)(814) 및 메모리 서브시스템들(806 및 818)은 데이터, 데이터 구조, 컴퓨터 실행가능 명령어들 등의 휘발성 및 비휘발성 저장을 위한 컴퓨터 판독가능 매체로서 기능한다. 컴퓨터 판독가능 매체는 컴퓨터(802)에 의해 액세스될 수 있는 어떤 가용 매체일 수 있으며, 휘발성 및 비휘발성 매체와 착탈형 및 비착탈형 매체를 포함한다. 컴퓨터(802)를 위해 매체들은 어떤 적절한 디지털 포맷으로 데이터 저장을 도모한다. 당업자라면 개시된 구조의 신규 방법들을 수행하기 위한 컴퓨터 실행가능 명령어들을 저장하기 위해, 집(zip) 드라이브, 마그네틱 테이프, 플래시 메모리 카드, 카트리지 등과 같은 다른 유형의 컴퓨터 판독가능 매체가 사용될 수도 있다는 것을 예상할 수 있을 것이다.
사용자는 키보드 및 마우스 같은 외부의 사용자 입력 장치들(828)을 사용해 프로그램 및 데이터를 컴퓨터(802)와 상호교류할 수 있다. 다른 외부의 사용자 입력 장치들(828)에 마이크로폰, IR(infrared) 리모컨, 조이스틱, 게임 패드, 카메라 인식 시스템, 스타일러스 펜, 터치 스크린, 동작인식 시스템(가령, 눈의 움직임, 머리의 움직임 등) 등이 포함될 수 있다. 사용자는 터치패드, 마이크로폰, 키보드 등과 같은 온보드 사용자 입력 장치들(830)을 사용해 휴대형 컴퓨터 등인 컴퓨터(802)와 프로그램과 데이터를 상호교류할 수 있다. 이들 및 기타 입력 장치들은 시스템 버스(808)를 통해 입출력(I/O) 장치 인터페이스(들)(832)을 거쳐 프로세싱 유닛(들)(804)과 연결되너, 병렬 포트, IEEE 1394, 직렬 포트, 게임 포트, USB 포트, IR 인터페이스 등과 같은 다른 인터페이스들에 의해 연결될 수도 있다. I/O 장치 인터페이스(들)(832)은 프린터, 오디오 장치, 카메라기 등과 같은 출력 주변기기(834), 사운드 카드 같은 것 및/또는 온보드 오디오 프로세싱 사양의 이용 역시 돕는다.
하나 이상의 그래픽 인터페이스(들)(836)(전형적으로 그래픽 프로세싱 유닛(GPU)이라고도 칭함)는 컴퓨터(802) 및 외부 디스플레이(들)(838)(가령, LCD, 플라즈마) 및/또는 온보드 디스플레이들(840)(가령, 휴대형 컴퓨터용)을 제공한다. 그래픽 인터페이스(들)(836)은 컴퓨터 시스템 보드의 일부로서 제조될 수도 있다.
컴퓨터(802)는 유무선 통신 서브시스템(842)을 통한 하나 이상의 네트워크 및/또는 다른 컴퓨터들로 논리적 접속을 이용해 네트워킹 환경(가령, IP)에서 동작할 수 있다. 다른 컴퓨터들은 워크스테이션, 서버, 라우터, 퍼스널 컴퓨터, 마이크로프로세서 기반 오락기, 피어 장치 또는 다른 전형적 네트워크 노드를 포함할 수 있으며, 통상적으로 컴퓨터(802)와 관련해 기술된 구성요소들 중 다수나 전부를 포함한다. 논리적 접속은 LAN(local area network), WAN(wide area network), 핫스팟 등으로의 유무선 접속을 포함할 수 있다. LAN 및 WAN 네트워킹 환경은 사무소 및 회사에서 일상적인 것으로, 전부가 인터넷 같은 글로벌 통신 네트워크에 연결될 수 있는 인트라넷 같은 기업내 컴퓨터 네트워크들을 도모한다.
네트워킹 환경에서 사용될 때, 컴퓨터(802)는 유무선 서브시스템(842)(가령, 네트워크 인터페이스 어댑터, 온보드 트랜시버 서브시스템 등)을 통해 유무선 네트워크, 유무선 프린터, 유무선 입력 장치(844) 등과 통신하도록 네트워크에 연결된다. 컴퓨터(802)는 모뎀을 포함할 있고, 아니면 네트워크를 통해 통신을 설정하기 위한 다른 수단을 가진다. 네트워킹 환경에서, 컴퓨터(802)와 관련된 프로그램 및 데이터는 분산형 시스템과 연관되는 것처럼, 원격 메모리/저장 장치에 저장될 수 있다. 도시된 네트워크 접속은 본보기적인 것이며 컴퓨터들 사이에 통신 링크를 설정하는 다른 수단 역시 사용될 수 있다는 것을 알 수 있을 것이다.
컴퓨터(802)는 가령 프린터, 스캐너, 데스크탑 및/또는 휴대형 컴퓨터, PDA(personal digital assistant), 통신 위성, 무선 검출 태그와 관련된 장치나 위치(가령, 키오스크, 신문 가판대, 화장실) 및 전화기와 무선 통신(가령, IEEE 802.11 OTA(over-the-air) 변조 기법)하도록 유효하게 배치된 무선 장치들 같이, IEEE 802.xx 표준 패밀리 같은 무선 기술을 이용해 유무선 장치나 개체와 통신하도록 동작할 수 있다. 그것은 적어도 핫스팟을 위한 Wi-Fi(또는 Wireless Fidelity), WiMax, 및 블루투스(TM) 무선 기술들을 포함한다. 따라서, 통신은 종래의 네트워크 같은 소정 구조이거나 적어도 두 장치들 사이에서의 애드호크 통신일 수 있다. Wi-Fi 네트워크는 IEEE 802.11x(a, b, g 등)이라 불리는 무선 기술들을 사용해 안전하고 신뢰성 있으며 빠른 무선 접속을 제공한다. Wi-Fi 네트워크는 컴퓨터들을 서로 연결시키거나 인터넷에 연결시키거나 유선 네트워크들(IEEE 802.3 관련 매체 및 기능 사용)에 연결시키는데 사용될 수 있다.
이제 도 9를 참조하면, 개시된 구조에 따라 병렬 인식을 제공하는 컴퓨팅 환경(900)의 개략적 블록도가 예시된다. 이 환경(900)은 하나 이상의 클라이언트(들)(902)을 포함한다. 클라이언트(들)(902)은 하드웨어 및/또는 소프트웨어(가령, 스레드, 프로세스, 컴퓨팅 장치)일 수 있다. 클라이언트(들)(902)은 이를테면 쿠키(들) 및/또는 관련 정황 정보를 가지고 있을 수 있다.
이 환경(900)은 하나 이상의 서버(들)(904)를 포함한다. 서버(들)(904) 또한 하드웨어 및/또는 소프트웨어(가령, 스레드, 프로세스, 컴퓨팅 장치)일 수 있다. 서버들(904)은 가령 상기 구조를 활용함으로써 변환을 수행하는 스레드들을 가질 수 있다. 클라이언트(902) 및 서버(904) 사이에 가능한 하나의 통신은 둘 이상의 컴퓨터 프로세스 사이에 전송되도록 조정된 데이터 패킷의 형식으로 되어 있을 수 있다. 데이터 패킷은 이를테면 쿠키(들) 및/또는 관련 정황 정보를 포함할 수 있다. 이 환경(900)은 클라이언트(들)(902) 및 서버(들)(904) 사이의 통신을 도모하는데 사용될 수 있는 통신 프레임워크(906)(가령, 인터넷 같은 글로벌 통신 네트워크)를 포함한다.
통신은 유선(광 섬유 포함) 및/또는 무선 기술을 통해 도모될 수 있다. 클라이언트(들)(902)은 클라이언트(들)(902) 안에 있는 정보(가령, 쿠키(들) 및/또는 관련 정황 정보)를 저장하는데 사용될 수 있는 하나 이상의 클라이언트 데이터 저장부(들)(908)에 유효하게 연결된다. 마찬가지로, 서버(들)(904)은 서버(들)(904) 안에 있는 정보를 저장하는데 사용될 수 있는 하나 이상의 서버 데이터 저장부(들)(910)에 유효하게 연결된다.
클라이언트(들)(902)은 서버(들)(904)이나 다른 클라이언트(들)(902)에 의해 인식 프로세싱을 위한 음성 신호들이 수신될 수 있게 하는 클라이언트를 포함할 수 있다. 문법들은 클라이언트 데이터저장부(들)(908) 및/또는 서버 데이터저장부(들)(910)에 저장될 수 있다.
위에서 기술된 내용은 상기 개시된 구조의 예들을 포함한다. 당연히 구성요소들 및/또는 방법들의 모든 인지가능한 조합을 기술하는 것은 불가능하지만, 당업자라면 많은 추가적인 조합과 치환이 가능하다는 것을 알 수 있을 것이다. 따라서, 상기 신규 구조는 첨부된 청구범위의 개념과 범위 안에 들어오는 그러한 모든 변형, 수정 및 변경들을 포괄하도록 의도된다. 또한, "포함한다"는 용어가 상세한 설명이나 청구범위에 사용될 때, 그 용어는 청구범위에 사용되는 "구비한다"는 용어와 비슷한 방식으로 포괄적인 것으로 의도된다.

Claims (22)

  1. 컴퓨터 구현 인식 시스템으로서,
    동일한 입력에 대해 다수의 인식 경로를 따라 독립적인 인식 프로세싱을 수행하여 제각기의 다수의 인식 결과를 생성하도록 구성된 다수의 컨텍스트-특정 제약(context-specific constraints)의 제약 컴포넌트- 함께 취급된 개별적인 제약 인스턴스들이 상기 입력에 대한 전체적인 컨텍스트 도메인을 제공함 -와,
    상기 다수의 인식 결과를 사용하여 동적 문법(dynamic grammar)을 생성하도록 구성되고, 상기 동적 문법에서 상기 인식 경로 각각에 상대적 가중치를 할당하고 최종 인식 결과를 결정하기 위해 회귀 분석(regression analysis)을 수행하도록 구성된 조정 컴포넌트(reconciliation component)와,
    상기 제약 컴포넌트 및 상기 조정 컴포넌트와 연관된 메모리 내의 컴퓨터 실행가능 명령어들을 실행하도록 구성된 마이크로프로세서
    를 포함하는 컴퓨터 구현 인식 시스템.
  2. 제1항에 있어서,
    상기 제약은 병렬 경로(parallel paths) 상에서의 상기 입력의 인식 프로세싱을 위한 문법을 포함하는
    컴퓨터 구현 인식 시스템.
  3. 제1항에 있어서,
    상기 조정 컴포넌트는 상기 최종 인식 결과를 생성하기 위해, 재인식을 이용하여 상기 결과를 조정하는
    컴퓨터 구현 인식 시스템.
  4. 제3항에 있어서,
    상기 재인식은 상기 인식 결과에 기초하여 동적으로 구성된 문법을 사용하는
    컴퓨터 구현 인식 시스템.
  5. 제1항에 있어서,
    상기 조정 컴포넌트는 상기 최종 인식 결과를 생성하기 위해, 상기 인식 결과로부터 추출된 분류 특성에 대해 작용하는 통계적 분류자를 이용해 상기 결과를 조정하는
    컴퓨터 구현 인식 시스템.
  6. 제1항에 있어서,
    상기 다수의 컨텍스트-특정 제약은 중복되지 않는 컨텍스트 적용범위와 중복되는 컨텍스트 적용범위(disjointed and intersecting context coverage)를 포함하는
    컴퓨터 구현 인식 시스템.
  7. 제1항에 있어서,
    상기 인식 프로세싱은 상기 최종 인식 결과에 도달하기 위해 관련 작업 데이터를 처리하고, 상기 관련 작업 데이터는 인식된 스트링, 발화 수준 및 서브 발화 수준 신뢰도 점수(utterance level and sub-utterance level confidence scores), 음성 적용범위(speech coverage), 동시발생적 인식들 간의 상대적 대기시간, 컨텍스트의 사전 확률, 각 인식의 상대적 난이도, 및 인식 결과 간의 일치성(consensus) 중 적어도 하나를 포함하는
    컴퓨터 구현 인식 시스템.
  8. 제1항에 있어서,
    병렬 경로 각각에서 해당 컨텍스트-특정 제약을 이용하여 상기 입력에 대해 별개의 인식 프로세싱을 수행하도록 구성된 인식 컴포넌트를 더 포함하는
    컴퓨터 구현 인식 시스템.
  9. 제1항에 있어서,
    상기 최종 인식 결과에 대한 판단을 규정하는 하나 이상의 규칙을 부과하도록 구성된 규칙 컴포넌트를 더 포함하는
    컴퓨터 구현 인식 시스템.
  10. 프로세서에 의해 실행되는 경우 인식 시스템을 구현하는 컴퓨터 실행가능 명령어들을 포함하는 컴퓨터 판독가능 저장 장치로서,
    상기 인식 시스템은,
    동일한 입력에 대해 다수의 인식 경로에 따라 독립적인 인식 프로세싱을 수행하여 제각기의 다수의 인식 결과를 생성하도록 구성된 다수의 컨텍스트-특정 제약의 제약 컴포넌트- 함께 취급된 개별적인 제약 인스턴스들이 상기 입력에 대한 전체적인 컨텍스트 도메인을 제공함 -와,
    상기 다수의 인식 결과를 사용하여 동적 문법을 생성하도록 구성되고, 상기 동적 문법에서 상기 인식 경로 각각에 상대적 가중치를 할당하고 최종 인식 결과를 결정하기 위해 회귀 분석을 수행하도록 구성된 조정 컴포넌트
    를 포함하는 컴퓨터 판독가능 저장 장치.
  11. 제10항에 있어서,
    상기 조정 컴포넌트는 상기 인식 결과의 동적으로 구성된 문법을 이용하고 상기 최종 인식 결과를 생성하기 위해 재인식을 사용하여 상기 인식 결과를 조정하는
    컴퓨터 판독가능 저장 장치.
  12. 제10항에 있어서,
    상기 조정 컴포넌트는 상기 최종 인식 결과를 생성하기 위해, 상기 인식 결과로부터 추출된 특성에 대해 작용하는 분류를 이용해 상기 인식 결과를 조정하는
    컴퓨터 판독가능 저장 장치.
  13. 제10항에 있어서,
    상기 인식 시스템은 상기 최종 인식 결과에 대한 판단을 규정하는 하나 이상의 규칙을 부과하는 규칙 컴포넌트, 및 분류 조정을 위한 특성들 및 재인식 조정을 위한 동적 문법에 영향을 미치는 다른 도메인 지식을 더 포함하는
    컴퓨터 판독가능 저장 장치.
  14. 제10항에 있어서,
    상기 조정 컴포넌트는 상기 최종 인식 결과를 결정하기 위해 재인식 이전에 회귀 분석을 이용함으로써 상기 인식 결과를 조정하는
    컴퓨터 판독가능 저장 장치.
  15. 머신 판독가능 명령어들을 실행하는 컴퓨터 시스템에 의해 수행되는, 컴퓨터 구현 인식 방법으로서,
    발화 입력을 프로세싱하기 위해 개별적인 컨텍스트-특정 문법으로 구성된 인식 문법을 수신하는 단계- 각각의 컨텍스트-특정 문법은 오리지널 작업 공간의 특정 부분집합을 커버함 -와,
    각 경로에 대해 해당 컨텍스트-특정 문법을 사용하여, 병렬 경로 상에서 상기 발화 입력을 인식하는 단계와,
    각 경로로부터 중간 인식 결과를 생성하는 단계와,
    각 경로로부터의 상기 중간 인식 결과를 이용하여 동적 문법을 생성하는 단계와,
    상기 동적 문법에서 상기 경로 각각에 상대적 가중치를 할당하고 최종 인식 결과를 결정하기 위해 회귀 분석을 수행하는 단계와,
    상기 수신하는 단계, 상기 인식하는 단계, 상기 중간 인식 결과를 생성하는 단계, 상기 동적 문법을 생성하는 단계 및 상기 수행하는 단계와 연관된 메모리 내의 명령어들을 실행하도록 마이크로프로세서를 구성하는 단계
    를 포함하는 컴퓨터 구현 인식 방법.
  16. 제15항에 있어서,
    상기 중간 인식 결과로부터 생성된 상기 동적 문법의 재인식을 이용하여 상기 중간 인식 결과를 조정하는 단계를 더 포함하는
    컴퓨터 구현 인식 방법.
  17. 제15항에 있어서,
    재인식에 의한 상기 중간 인식 결과의 조정 동안 다른 도메인 지식을 입력하는 단계와,
    상기 최종 인식 결과를 생성하기 위해 하나 이상의 규칙을 부과하는 단계를 더 포함하는
    컴퓨터 구현 인식 방법.
  18. 제15항에 있어서,
    분류에 의한 상기 중간 인식 결과의 조정 동안 다른 도메인 지식을 입력하는 단계와,
    상기 최종 인식 결과를 생성하기 위해 하나 이상의 규칙을 부과하는 단계를 더 포함하는
    컴퓨터 구현 인식 방법.
  19. 제15항에 있어서,
    분류 분석을 수행하는 단계
    를 더 포함하는 컴퓨터 구현 인식 방법.
  20. 제15항에 있어서,
    경로의 중간 인식 결과의 생성을 위해 소정 시간을 기다리는 단계와,
    상기 시간 내에 생성된 중간 인식 결과에 기초하여 상기 최종 인식 결과를 생성하는 단계
    를 더 포함하는 컴퓨터 구현 인식 방법.
  21. 컴퓨터 구현 인식 시스템으로서,
    입력에 대해 다수의 인식 경로에 따라 독립적인 인식 프로세싱을 수행하여 제각기의 다수의 인식 결과를 생성하도록 구성된 다수의 컨텍스트-특정 제약의 제약 컴포넌트- 함께 취급된 개별적인 제약 인스턴스들이 상기 입력에 대한 전체적인 컨텍스트 도메인을 제공함 -와,
    상기 다수의 인식 결과를 사용하여 동적 문법을 생성하도록 구성되고, 상기 동적 문법에서 상기 인식 경로 각각에 상대적 가중치를 할당하고 최종 인식 결과를 결정하기 위해 통계적 분석을 수행하도록 구성된 조정 컴포넌트와,
    상기 최종 인식 결과를 생성하기 위해 상기 동적 문법을 사용하여 상기 입력을 처리하도록 구성된 재인식 컴포넌트와,
    상기 제약 컴포넌트, 상기 조정 컴포넌트 및 상기 재인식 컴포넌트와 연관된 메모리 내의 컴퓨터 실행가능 명령어들을 실행하도록 구성된 마이크로프로세서
    를 포함하는 컴퓨터 구현 인식 시스템.
  22. 머신 판독가능 명령어들을 실행하는 컴퓨터 시스템에 의해 수행되는, 컴퓨터 구현 인식 방법으로서,
    각 경로에 대해 상이한 또는 상호교차하는 컨텍스트-특정 문법을 포함하는 인식 문법을 사용하여 병렬 경로 상에서 발화 입력을 인식하는 단계와,
    상기 경로의 하나 이상으로부터의 중간 인식 결과를 이용하여 동적 문법을 생성하는 단계와,
    상기 동적 문법에서 상기 경로 각각에 상대적 가중치를 할당하기 위해 통계적 분석을 수행하는 단계와,
    최종 인식 결과를 생성하기 위해 상기 동적 문법을 사용하여 상기 발화 입력에 대해 재인식 프로세싱을 수행하는 단계와,
    상기 인식하는 단계, 상기 생성하는 단계, 상기 통계적 분석을 수행하는 단계 및 상기 재인식 프로세싱을 수행하는 단계와 연관된 메모리 내의 명령어들을 실행하도록 마이크로프로세서를 구성하는 단계
    를 포함하는 컴퓨터 구현 인식 방법.
KR1020117028895A 2009-06-04 2010-06-01 재인식 및 통계적 분류를 이용하는 인식 기법 KR101700466B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/477,918 US8930179B2 (en) 2009-06-04 2009-06-04 Recognition using re-recognition and statistical classification
US12/477,918 2009-06-04
PCT/US2010/036964 WO2010141513A2 (en) 2009-06-04 2010-06-01 Recognition using re-recognition and statistical classification

Publications (2)

Publication Number Publication Date
KR20120029413A KR20120029413A (ko) 2012-03-26
KR101700466B1 true KR101700466B1 (ko) 2017-01-26

Family

ID=43298454

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117028895A KR101700466B1 (ko) 2009-06-04 2010-06-01 재인식 및 통계적 분류를 이용하는 인식 기법

Country Status (10)

Country Link
US (1) US8930179B2 (ko)
EP (1) EP2438533B1 (ko)
JP (2) JP2012529080A (ko)
KR (1) KR101700466B1 (ko)
CN (1) CN102460423B (ko)
AU (1) AU2010256788B2 (ko)
BR (1) BRPI1014550B1 (ko)
CA (1) CA2760992C (ko)
RU (1) RU2571519C2 (ko)
WO (1) WO2010141513A2 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011033680A (ja) * 2009-07-30 2011-02-17 Sony Corp 音声処理装置及び方法、並びにプログラム
US9711167B2 (en) * 2012-03-13 2017-07-18 Nice Ltd. System and method for real-time speaker segmentation of audio interactions
US9093076B2 (en) * 2012-04-30 2015-07-28 2236008 Ontario Inc. Multipass ASR controlling multiple applications
US9431012B2 (en) 2012-04-30 2016-08-30 2236008 Ontario Inc. Post processing of natural language automatic speech recognition
KR20140082157A (ko) * 2012-12-24 2014-07-02 한국전자통신연구원 다중 음향 모델을 이용하여 음성을 인식하기 위한 장치 및 그 방법
CN103077718B (zh) * 2013-01-09 2015-11-25 华为终端有限公司 语音处理方法、系统和终端
US9894312B2 (en) 2013-02-22 2018-02-13 The Directv Group, Inc. Method and system for controlling a user receiving device using voice commands
US20140365218A1 (en) * 2013-06-07 2014-12-11 Microsoft Corporation Language model adaptation using result selection
US9728184B2 (en) 2013-06-18 2017-08-08 Microsoft Technology Licensing, Llc Restructuring deep neural network acoustic models
US9589565B2 (en) 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
US9311298B2 (en) 2013-06-21 2016-04-12 Microsoft Technology Licensing, Llc Building conversational understanding systems using a toolset
US9324321B2 (en) 2014-03-07 2016-04-26 Microsoft Technology Licensing, Llc Low-footprint adaptation and personalization for a deep neural network
US9529794B2 (en) 2014-03-27 2016-12-27 Microsoft Technology Licensing, Llc Flexible schema for language model customization
EP2933067B1 (en) * 2014-04-17 2019-09-18 Softbank Robotics Europe Method of performing multi-modal dialogue between a humanoid robot and user, computer program product and humanoid robot for implementing said method
US9614724B2 (en) 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
US9520127B2 (en) 2014-04-29 2016-12-13 Microsoft Technology Licensing, Llc Shared hidden layer combination for speech recognition systems
US9384335B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content delivery prioritization in managed wireless distribution networks
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US10111099B2 (en) 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US9786276B2 (en) * 2014-08-25 2017-10-10 Honeywell International Inc. Speech enabled management system
KR102365757B1 (ko) * 2015-09-09 2022-02-18 삼성전자주식회사 인식 장치, 인식 방법 및 협업 처리 장치
US20180366123A1 (en) * 2015-12-01 2018-12-20 Nuance Communications, Inc. Representing Results From Various Speech Services as a Unified Conceptual Knowledge Base
KR102019757B1 (ko) * 2015-12-15 2019-09-10 한국전자통신연구원 언어 분석 오류 보정 장치 및 방법
DE102016005629B4 (de) * 2016-05-06 2020-06-25 Audi Ag Kraftfahrzeug-Bedienvorrichtung und Verfahren zum Ermitteln zumindest eines Erkennungsergebnisses zu einem Sprachsignal
JP2018191145A (ja) * 2017-05-08 2018-11-29 オリンパス株式会社 収音装置、収音方法、収音プログラム及びディクテーション方法
CN107437414A (zh) * 2017-07-17 2017-12-05 镇江市高等专科学校 基于嵌入式gpu系统的并行化游客识别方法
CN107943452B (zh) * 2017-11-20 2020-07-14 中国运载火箭技术研究院 一种多用户协同开发的体系结构设计平台
EP3756085A4 (en) * 2018-10-18 2021-10-27 Hewlett-Packard Development Company, L.P. CREATION OF STATISTICAL ANALYZES OF DATA FOR TRANSMISSION TO SERVERS
JP7038919B2 (ja) * 2019-08-01 2022-03-18 三菱電機株式会社 多言語音声認識装置および多言語音声認識方法
US11238884B2 (en) * 2019-10-04 2022-02-01 Red Box Recorders Limited Systems and methods for recording quality driven communication management
US11961511B2 (en) * 2019-11-08 2024-04-16 Vail Systems, Inc. System and method for disambiguation and error resolution in call transcripts
JP6786005B1 (ja) * 2020-04-09 2020-11-18 日鉄エンジニアリング株式会社 情報出力装置、情報出力システム、情報出力方法、プログラム、サーバ装置及びデータ出力方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070050413A1 (en) 2000-03-21 2007-03-01 Kominek John M System and Method for the Transformation and Canonicalization of Semantically Structured Data

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6265089A (ja) 1985-09-18 1987-03-24 株式会社リコー 音声認識装置
JPS6346496A (ja) 1986-04-04 1988-02-27 株式会社リコー 音声認識装置
US5390279A (en) 1992-12-31 1995-02-14 Apple Computer, Inc. Partitioning speech rules by context for speech recognition
US5677990A (en) 1995-05-05 1997-10-14 Panasonic Technologies, Inc. System and method using N-best strategy for real time recognition of continuously spelled names
US6122613A (en) * 1997-01-30 2000-09-19 Dragon Systems, Inc. Speech recognition using multiple recognizers (selectively) applied to the same input sample
US7082391B1 (en) * 1998-07-14 2006-07-25 Intel Corporation Automatic speech recognition
US6434524B1 (en) 1998-09-09 2002-08-13 One Voice Technologies, Inc. Object interactive user interface using speech recognition and natural language processing
JP2000181487A (ja) 1998-12-14 2000-06-30 Toshiba Tec Corp 音声認識装置
DE19910234A1 (de) 1999-03-09 2000-09-21 Philips Corp Intellectual Pty Verfahren mit mehreren Spracherkennern
US6526380B1 (en) 1999-03-26 2003-02-25 Koninklijke Philips Electronics N.V. Speech recognition system having parallel large vocabulary recognition engines
JP2001249684A (ja) 2000-03-02 2001-09-14 Sony Corp 音声認識装置および音声認識方法、並びに記録媒体
US6973429B2 (en) 2000-12-04 2005-12-06 A9.Com, Inc. Grammar generation for voice-based searches
US7409349B2 (en) 2001-05-04 2008-08-05 Microsoft Corporation Servers for web enabled speech recognition
JP2003029783A (ja) 2001-07-17 2003-01-31 Oki Electric Ind Co Ltd 音声認識制御方式
US20030149566A1 (en) 2002-01-02 2003-08-07 Esther Levin System and method for a spoken language interface to a large database of changing records
US7184957B2 (en) 2002-09-25 2007-02-27 Toyota Infotechnology Center Co., Ltd. Multiple pass speech recognition method and system
CN101228577B (zh) 2004-01-12 2011-11-23 语音信号技术公司 自动化语音识别通道归一化方法及系统
JP2006039382A (ja) 2004-07-29 2006-02-09 Nissan Motor Co Ltd 音声認識装置
US7747437B2 (en) 2004-12-16 2010-06-29 Nuance Communications, Inc. N-best list rescoring in speech recognition
US8364481B2 (en) * 2008-07-02 2013-01-29 Google Inc. Speech recognition with parallel recognition tasks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070050413A1 (en) 2000-03-21 2007-03-01 Kominek John M System and Method for the Transformation and Canonicalization of Semantically Structured Data

Also Published As

Publication number Publication date
CN102460423B (zh) 2015-09-09
WO2010141513A3 (en) 2011-03-03
EP2438533B1 (en) 2019-01-23
BRPI1014550A2 (pt) 2016-04-05
AU2010256788B2 (en) 2014-09-11
CA2760992C (en) 2017-04-25
JP2012529080A (ja) 2012-11-15
US20100312546A1 (en) 2010-12-09
CA2760992A1 (en) 2010-12-09
EP2438533A2 (en) 2012-04-11
KR20120029413A (ko) 2012-03-26
CN102460423A (zh) 2012-05-16
RU2571519C2 (ru) 2015-12-20
US8930179B2 (en) 2015-01-06
EP2438533A4 (en) 2016-05-11
WO2010141513A2 (en) 2010-12-09
BRPI1014550B1 (pt) 2020-05-05
JP2016026326A (ja) 2016-02-12
AU2010256788A1 (en) 2011-11-17
RU2011149321A (ru) 2013-06-10

Similar Documents

Publication Publication Date Title
KR101700466B1 (ko) 재인식 및 통계적 분류를 이용하는 인식 기법
US10726833B2 (en) System and method for rapid customization of speech recognition models
JP7362851B2 (ja) 話者検証のためのニューラルネットワーク
Kannan et al. Large-scale multilingual speech recognition with a streaming end-to-end model
JP6317111B2 (ja) ハイブリッド型クライアントサーバ音声認識
CN102592595B (zh) 语音识别方法及系统
US20190333499A1 (en) Pronunciation analysis and correction feedback
US20130159000A1 (en) Spoken Utterance Classification Training for a Speech Recognition System
KR102385851B1 (ko) 음성 인식 및 번역 시스템,방법 및 컴퓨터 프로그램
US20120143591A1 (en) Integrative and discriminative technique for spoken utterance translation
CN109801634A (zh) 一种声纹特征的融合方法及装置
CN110164416B (zh) 一种语音识别方法及其装置、设备和存储介质
WO2020156342A1 (zh) 语音识别方法、装置、电子设备及存储介质
US10861453B1 (en) Resource scheduling with voice controlled devices
US10140981B1 (en) Dynamic arc weights in speech recognition models
Lojka et al. Multi-thread parallel speech recognition for mobile applications
JP2023162265A (ja) テキストエコー消去
US11645468B2 (en) User data processing
TW202301080A (zh) 輔助系統的多裝置調解
Kurpukdee et al. Enhance run-time performance with a collaborative distributed speech recognition framework
KR102186866B1 (ko) 로그 데이터를 이용한 자동 번역 장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
N231 Notification of change of applicant
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191217

Year of fee payment: 4