KR20170063037A - 음성 인식 장치 및 방법 - Google Patents
음성 인식 장치 및 방법 Download PDFInfo
- Publication number
- KR20170063037A KR20170063037A KR1020150168967A KR20150168967A KR20170063037A KR 20170063037 A KR20170063037 A KR 20170063037A KR 1020150168967 A KR1020150168967 A KR 1020150168967A KR 20150168967 A KR20150168967 A KR 20150168967A KR 20170063037 A KR20170063037 A KR 20170063037A
- Authority
- KR
- South Korea
- Prior art keywords
- word
- class
- candidate
- prediction model
- name
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000009826 distribution Methods 0.000 claims description 25
- 238000013528 artificial neural network Methods 0.000 claims description 20
- 230000000306 recurrent effect Effects 0.000 claims description 14
- 238000010801 machine learning Methods 0.000 claims description 11
- 239000013598 vector Substances 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 230000015654 memory Effects 0.000 description 7
- 238000013480 data collection Methods 0.000 description 6
- 230000002068 genetic effect Effects 0.000 description 6
- 238000012706 support-vector machine Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000003066 decision tree Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 235000013372 meat Nutrition 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000010409 thin film 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- 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/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/274—Converting codes to words; Guess-ahead of partial word inputs
-
- 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/18—Speech classification or search using natural language modelling
- G10L15/1815—Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- 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/16—Speech classification or search using artificial neural networks
-
- 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/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- 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/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/193—Formal grammars, e.g. finite state automata, context free grammars or word networks
-
- 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/26—Speech to text 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/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
음성 인식 장치 및 방법이 개시된다. 일 양상에 따른 음성 인식 장치는, 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 예측부와, 음성 신호에 대응하는 후보 단어를 탐색하여 상기 이전에 탐색된 단어열을 확장하고, 상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 디코더를 포함할 수 있다.
Description
음성 인식 기술에 관한 것으로, 특히 음성 인식 장치 및 방법과 관련된다.
최근의 음성 인식 기술은 과거와 비교하여 많은 주목을 받고 있는 상황이다. 그 이유는 음성 인식 기술이 구현될 경우, 인터넷 정보 이용이나 전자 상거래, 각종 유비쿼터스 환경을 보다 편리하게 음성을 통하여 조작할 수 있을 뿐만 아니라, 손을 사용하기 어려운 차량 운행 등과 같은 경우에도 인터넷을 액세스한다든가 사무나 기타 서비스를 이용할 수 있게 되어, 사용자의 다양한 니즈(needs)를 충족 시켜줄 수 있기 때문이다.
따라서, 오류 없이 효과적으로 음성을 인식하는 기술의 필요성이 대두된다.
음성 인식 장치 및 방법을 제공하는 것을 목적으로 한다.
일 양상에 따른 음성 인식 장치는, 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 예측부와, 음성 신호에 대응하는 후보 단어를 탐색하여 상기 이전에 탐색된 단어열을 확장하고, 상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 디코더를 포함할 수 있다.
상기 클래스는 개체명 또는 품사이고, 상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명일 수 있다.
상기 예측부는, 단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측할 수 있다.
상기 단어 클래스 예측 모델은, 사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축될 수 있다.
상기 단어 클래스 예측 모델은, RNN(Recurrent Neural Network) 기반 모델일 수 있다.
상기 디코더는, WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색할 수 있다.
상기 디코더는, 상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외할 수 있다.
상기 디코더는, 상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시킬 수 있다.
상기 디코더는, 상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시킬 수 있다.
상기 예측부는 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하고, 상기 디코더는 각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정할 수 있다.
다른 양상에 따른 음성 인식 방법은, 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 단계와, 음성 신호에 대응하는 후보 단어를 탐색하는 단계와, 상기 탐색된 후보 단어를 이용하여 상기 이전에 탐색된 단어열을 확장하는 단계와, 상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 단계를 포함할 수 있다.
상기 클래스는 개체명 또는 품사이고, 상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명일 수 있다.
상기 단어 클래스를 예측하는 단계는, 단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측할 수 있다.
상기 단어 클래스 예측 모델은, 사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축될 수 있다.
상기 단어 클래스 예측 모델은, RNN(Recurrent Neural Network) 기반 모델일 수 있다.
상기 후보 단어를 탐색하는 단계는, WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색할 수 있다.
음성 인식 방법은, 상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외하는 단계를 더 포함할 수 있다.
상기 확장된 단어열의 확률 값을 조정하는 단계는, 상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시키는 단계를 포함할 수 있다.
상기 확장된 단어열의 확률 값을 조정하는 단계는, 상기 탐색된 후보 단어 중 상기 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시키는 단계를 포함할 수 있다.
상기 단어 클래스를 예측하는 단계는, 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하는 단계를 포함하고, 상기 확장된 단어열의 확률 값을 조정하는 단계는, 각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정하는 단계를 포함할 수 있다.
또 다른 양상에 따른 단어 클래스 예측 모델 생성 장치는, 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집하는 학습 데이터 수집부와, 상기 수집된 학습 데이터를 기반으로 학습을 통해 단어 클래스 예측 모델을 생성하는 모델 생성부를 포함할 수 있다.
상기 클래스는, 개체명 또는 품사이고, 상기 개체명은, 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명일 수 있다.
상기 모델 생성부는, 상기 수집된 학습 데이터를 기반으로 RNN(Recurrent Neural Network)을 학습시켜 단어 클래스 예측 모델을 생성할 수 있다.
상기 모델 생성부는, 단어를 입력으로 하고, 상기 단어의 다음 단어의 단어 클래스를 정답(target)으로 하여 상기 RNN을 학습시킬 수 있다.
또 다른 양상에 따른 단어 클래스 예측 모델 생성 방법은, 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집하는 단계와, 상기 수집된 학습 데이터를 기반으로 학습을 통해 단어 클래스 예측 모델을 생성하는 단계를 포함할 수 있다.
상기 클래스는, 개체명 또는 품사이고, 상기 개체명은, 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명일 수 있다.
상기 단어 클래스 예측 모델을 생성하는 단계는, 상기 수집된 학습 데이터를 기반으로 RNN(Recurrent Neural Network)을 학습시켜 단어 클래스 예측 모델을 생성할 수 있다.
상기 단어 클래스 예측 모델을 생성하는 단계는, 단어를 입력으로 하고, 상기 단어의 다음 단어의 단어 클래스를 정답(target)으로 하여 상기 RNN을 학습시키는 단계를 포함할 수 있다.
이전에 탐색된 후보 단어열을 기반으로 다음에 올 단어 클래스를 예측하고 그에 따라 후보 단어열의 확률값을 조정함으로써, 음성 인식 오류를 감소시키고 인식의 정확도를 증가시킬 수 있다.
예측된 단어 클래스에 기반하여 가능성이 없는 단어들은 탐색 범위에서 제거함으로써 음성 인식 속도를 증가시킬 수 있다.
도 1은 음성 인식 장치의 일 실시예를 도시한 블록도이다.
도 2는 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하는 과정을 설명하기 위한 예시도이다.
도 3은 품사를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 4는 개인화 정보를 적용하여 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 5는 예측된 단어 클래스 확률 분포를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 6은 음성 인식 장치의 다른 실시예를 도시한 블록도이다.
도 7은 단어 클래스 예측 모델 생성 장치의 일 실시예를 도시한 블록도이다.
도 8은 단어 클래스 예측 모델을 생성하는 방법을 설명하기 위한 예시도이다.
도 9는 음성 인식 방법의 일 실시예를 도시한 흐름도이다.
도 10은 음성 인식 방법의 다른 실시예를 도시한 흐름도이다.
도 11은 단어 클래스 예측 모델 생성 방법의 일 실시예를 도시한 흐름도이다.
도 2는 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하는 과정을 설명하기 위한 예시도이다.
도 3은 품사를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 4는 개인화 정보를 적용하여 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 5는 예측된 단어 클래스 확률 분포를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도이다.
도 6은 음성 인식 장치의 다른 실시예를 도시한 블록도이다.
도 7은 단어 클래스 예측 모델 생성 장치의 일 실시예를 도시한 블록도이다.
도 8은 단어 클래스 예측 모델을 생성하는 방법을 설명하기 위한 예시도이다.
도 9는 음성 인식 방법의 일 실시예를 도시한 흐름도이다.
도 10은 음성 인식 방법의 다른 실시예를 도시한 흐름도이다.
도 11은 단어 클래스 예측 모델 생성 방법의 일 실시예를 도시한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 음성 인식 장치의 일 실시예를 도시한 블록도이다. 음성 인식 장치(100)는 소프트웨어 모듈로 구현되거나 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 이때 전자 장치는 TV, 내비게이션, 자동차 전자 장치, 스마트폰, 태블릿 PC, 데스크탑 컴퓨터, 노트북 PC, 웨어러블 기기(예컨대, 스마트 와치, 스마트 글라스, 스마트 헤드셋, 스마트 이어폰 등) 등을 포함하나 이에 제한되는 것은 아니다.
도 1을 참조하면, 음성 인식 장치(100)는 예측부(110) 및 디코더(120)를 포함할 수 있다.
예측부(110)는 이전에 탐색된 후보 단어열을 기반으로 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다. 이때, 단어 클래스는 문맥에 따라 위치할 수 있는 단어인지 여부를 판단하기 위해 정의되는 것으로서 해당 단어의 타입을 나타낼 수 있다, 예컨대, 단어 클래스는 개체명 또는 품사(예컨대, 명사, 동사, 형용사, 부사 등) 등이 될 수 있다.
개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, TV프로그램명 등 문장에서 핵심적인 의미를 지닌 고유명사나 미등록어 등을 의미할 수 있다. 한편, 개체명은 "New Work", "United States Patents and Trademark Office" 등과 같이 여러 가지 단어들이 묶여 구문으로 표현될 수도 있다.
일 실시예에 따르면, 예측부(110)는 단어 클래스 예측 모델을 이용하여 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다. 이때, 단어 클래스 예측 모델은 단어열을 기반으로 단어열의 다음 단어의 단어 클래스 또는 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 예컨대, 단어 클래스 예측 모델은 사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되어 단어 클래스를 예측하도록 구현될 수 있고, 개체명 인식(named entity recognition) 기법, 품사 태깅(part of speech tagging) 기법 등을 이용하여 기계 학습을 통해 구축되어 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 즉, 예측부(110)는 룰 셋 형태로 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스를 예측하는 것도 가능하며, 기계 학습을 통해 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스 확률 분포를 예측한 후, 예측된 단어 클래스 확률 분포를 기반으로 단어 클래스를 예측하는 것도 가능하다.
한편, 기계 학습 알고리즘은 신경망(neural network), 결정 트리(decision tree), 유전 알고리즘(Genetic Algorithm: GA), 유전자 프로그래밍(Genetic Programming: GP), 가우스 과정 회귀, 선형 분별 분석, K 근접 이웃(K-Nearest Neighbor: K-NN), 퍼셉트론, 방사 기저 함수 네트워크, 서포트 벡터 머신(Support Vector Machine: SVM), 및 딥러닝(deep-learning)(예컨대, RNN(Recurrent Neural Network) 등) 중 하나일 수 있다.
디코더(120)는 음성 신호에 대응하는 후보 단어를 탐색하고, 탐색된 후보 단어를 이용하여 이전에 탐색된 후보 단어열을 확장할 수 있다. 다시 말하면, 디코더(120)는 음성 신호를 기반으로, 앞서 인식된 후보 단어열 다음에 올 가능성이 높은 단어를 후보 단어열 다음에 추가하여 후보 단어열을 점진적으로 확장할 수 있다.
일 실시예에 따르면, 디코더(120)는 음향 모델, 발음 사전 및 언어 모델을 이용하여 음성 신호에 대응하는 후보 단어를 탐색할 수 있다.
여기서, 음향 모델은 음성 신호를 입력받아 그에 대한 음소(phone 또는 subphone) 확률 벡터(probability vector)를 출력하는 모델로서, HMM(Hidden Markov Model), GMM(Gaussian Mixture Model), RNN(Recurrent Neural Network), DNN(Deep Neural Network), BLSTM(Bidirectional Long Short Term Model), LSTM(Long Short Term Memory) 등을 이용하여 미리 구축될 수 있다.
여기서, 발음 사전은 음성 인식을 위한 단어들을 정의하고 이에 대한 발음 기호들을 기록한 모델로서, 코퍼스 또는 사전으로부터 수집된 단어를 기반으로 미리 구축될 수 있다.
여기서, 언어 모델은 단어와 단어 사이의 말의 규칙을 정해둔 것으로, 일종의 문법을 정의한 모델이다. 언어 모델은 단어열을 구성하는 단어 리스트를 보고 단어열의 확률을 결정하도록 n-gram, RNN(Recurrent Neural Network), DNN(Deep Neural Network), BLSTM(Bidirectional Long Short Term Model), LSTM(Long Short Term Memory) 등을 이용하여 미리 구축될 수 있다.
일 실시예에 따르면, 발음 사전 및 언어 모델은 WFST(weighted finite state transducer) 형태의 데이터 구조로 구축될 수 있다. 여기서, WFST(weighted finite state transducer) 형태의 데이터 구조는 음소열에 대한 가능한 모든 단어열을 포함하는 축약된 데이터 구조일 수 있다. 발음 사전 및 언어 모델이 WFST 형태의 데이터 구조로 구축되는 경우, 디코더(120)는 WFST 형태의 데이터 구조를 기반으로 음성 신호에 대응한 가능한 단어열을 탐색할 수 있다.
디코더(120)는 확장된 후보 단어열의 확률 값을 산출할 수 있다. 예컨대, 디코더(120)는 음향 모델 및 언어 모델을 이용하여 탐색된 후보 단어의 확률 값을 산출하고 산출된 후보 단어의 확률 값을 기반으로 확장된 후보 단어열의 확률 값을 산출할 수 있다.
또한, 디코더(120)는 예측부(110)에서 예측된 단어 클래스를 기반으로 확장된 후보 단어열의 확률 값을 조정할 수 있다.
일 실시예에 따르면, 디코더(120)는 탐색된 후보 단어 중 예측부(110)에서 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다. 예컨대, 예측부(110)가 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스로 지명(location)을 예측한 경우로서 디코더(120)가 음성 신호에 대응하는 후보 단어로 인명(person)과 관련된 "A", 지명과 관련된 "B" 및 "C"를 탐색한 경우, 디코더(120)는 탐색된 후보 단어 "A", "B", "C"중에서 지명(location)에 속하는 후보 단어 "B" 및 "C"에 높은 가중치를 부여하여 후보 단어 "B" 및 "C"의 확률 값을 증가시킬 수 있다. 이때, 가중치를 부여하는 방식은 언어 모델 및/또는 음향 모델의 가중치를 조정하는 방식을 이용할 수 있으나, 이에 한정되는 것은 아니며 다양한 방식으로 가중치를 부여할 수 있다.
다른 실시예에 따르면, 디코더(120)는 탐색된 후보 단어 중 예측부(110)에서 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다. 예컨대, 예측부(110)가 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스로 지명(location)을 예측하고 디코더(120)가 음성 신호에 대응하는 후보 단어로서 인명(person)과 관련된 "A", 지명과 관련된 "B" 및 "C"를 탐색한 경우로서 개인화된 언어 모델에 지명 "C", "D" 및 "E"를 포함하고 있는 경우, 디코더(120)는 탐색된 후보 단어 "A", "B", "C" 중에서 지명(location)에 속하며 개인화된 언어 모델에 포함되어 있는 후보 단어 "C"에 높은 가중치를 부여하여 후보 단어 "C"의 확률 값을 증가시킬 수 있다.
한편, 개인화된 언어 모델은 개인화된 코퍼스를 기반으로 n-gram, RNN(Recurrent Neural Network), DNN(Deep Neural Network), BLSTM(Bidirectional Long Short Term Model), LSTM(Long Short Term Memory) 등을 이용하여 미리 구축될 수 있다.
또 다른 실시예에 따르면, 디코더(120)는 예측된 각 단어 클래스의 확률 값을 해당 클래스에 속하는 후보 단어의 확률 값에 반영하여 확장된 후보 단어열의 확률 값을 조정할 수 있다. 예컨대, 예측부(110)가 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스 확률로서 지명(location) 0.6, 인명(person) 0.4라고 예측한 경우로서 디코더(120)가 음성 신호에 대응하는 후보 단어로서 인명과 관련된 "A", 지명과 관련된 "B" 및 "C"를 후보 단어로 탐색한 경우, 디코더(120)는 후보 단어 "A"의 확률 값에 0.4를 곱하고, 후보 단어 "B" 및 "C"의 확률 값에 0.6을 곱하여 후보 단어 "A", "B" 및 "C"의 확률 값을 조정할 수 있다.
한편, 디코더(120)는 탐색된 후보 단어 중 예측부(110)에서 예측된 단어 클래스에 속하지 않는 단어에 대해 전지 작업(pruning)을 통해 향후 탐색 범위를 줄일 수 있다. 다시 말하면, 디코더(120)는 탐색된 후보 단어 중 예측부(110)에서 예측된 단어 클래스에 속하지 않는 단어를 추후 탐색 대상에서 제거할 수 있다.
또한, 디코더(120)는 후보 단어열의 확률 값 조정 결과를 기반으로 최대 확률값을 가지는 후보 단어열을 선택하고 선택된 후보 단어열을 음성 인식 결과로서 출력할 수 있다.
또한, 디코더(120)는 입력된 음성 신호에 대한 음성 인식이 완료되지 않은 경우, 확장/생성된 후보 단어열 중에서 확률 값이 높은 소정 개수의 후보 단어열을 선택하고 나머지 후보 단어열은 추후 탐색 범위에서 제거할 수 있다.
도 2는 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하는 과정을 설명하기 위한 예시도이다. 이때, 단어 클래스 예측 모델은 단어 클래스 확률 분포를 예측하도록 구현된 RNN 기반 모델이라고 가정한다.
예측부(110)는 미리 구축된 단어 클래스 예측 모델을 이용하여 단어열 "How do I get to"의 다음 단어의 단어 클래스 확률 분포를 예측한다. 즉, 예측부(110)는 t5 시점에 "to"를 입력 받으면, 미리 구축된 단어 클래스 예측 모델을 이용하여 후보 단어열 "How do I get to"의 다음 단어의 단어 클래스 확률 분포를 예측한다. 도시된 예의 경우, "How do I get to" 다음에 올 단어 클래스 확률은 소유격 0.2, 지명 0.4, 인명 0.3 등이 될 수 있으며, 본 예에서는 지명이 확률 0.4로 가장 높을 수 있다.
도 3은 품사를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도로서 음성 인식 과정의 특정 시점(t4)의 스냅샷을 도시한 도면이다. 이때, 도시된 바와 같이 디코더(120)가 t1 에서 t3로 시간이 흐름에 따라 음성 신호에 대응하는 후보 단어열 "I'm going to"를 생성하였다고 가정한다.
도시된 예의 경우, 문맥 상 "I'm going to" 다음에 동사(Verb)가 나타날 가능성이 높으므로, 예측부(110)는 후보 단어열 "I'm going to"를 기반으로 "I'm going to"의 다음 단어의 단어 클래스로서 동사(Verb)를 예측한다. 이때, 예측부(110)는 단어열을 기반으로 단어열의 다음 단어의 단어 클래스를 예측하도록 미리 구축된 단어 클래스 예측 모델을 이용할 수 있다.
디코더(120)는 t4 시점에 음향 모델, 발음 사전 및 언어 모델을 기반으로 후보 단어열 "I'm going to" 다음에 올 후보 단어 "meet", "meat" 및 "minjung"을 탐색하고, 후보 단어열 "I'm going to"을 확장하여 확장된 후보 단어열 "I'm going to meet", "I'm going to meat" 및 "I'm going to minjung"을 생성한다.
그 후, 디코더(120)는 후보 단어 "meet", "meat" 및 "minjung" 중 동사에 속하는 "meet"의 확률 값을 증가시켜 "I'm going to meet"의 확률 값을 증가시킨다.
도 4는 개인화 정보를 적용하여 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도로서 음성 인식 과정의 특정 시점(t5)의 스냅샷을 도시한 도면이다. 이때, 도시된 바와 같이 디코더(120)가 t1 에서 t4로 시간이 흐름에 따라 음성 신호에 대응하는 후보 단어열 "I'm going to meet"를 생성하였다고 가정한다.
도시된 예의 경우, 문맥 상 "I'm going to meet" 다음에 인명(person)이 나타날 가능성이 높으므로, 예측부(110)는 후보 단어열 "I'm going to meet"을 기반으로 "I'm going to meet"의 다음 단어의 단어 클래스로서 인명(person)을 예측한다. 이때, 예측부(110)는 단어열을 기반으로 단어열의 다음 단어의 단어 클래스를 예측하도록 미리 구축된 단어 클래스 예측 모델을 이용할 수 있다.
디코더(120)는 t5 시점에 음향 모델, 발음 사전 및 언어 모델을 기반으로 후보 단어열 "I'm going to meet" 다음에 올 후보 단어 "heejong", "heeja", "minjung" 및 "heejung"을 탐색하고, 후보 단어열 "I'm going to meet"을 확장하여 확장된 후보 단어열 "I'm going to meet heejong", "I'm going to meet heeja", "I'm going to meet minjung" 및 "I'm going to meet heejung"을 생성한다.
그 후, 디코더(120)는 인명과 관련된 개인화된 언어 모델(PLM)을 탐색하여 후보 단어 "heejong", "heeja", "minjung" 및 "heejung" 중 개인화된 언어 모델(PLM)에 속한 "heejung"의 확률 값을 증가시켜 "I'm going to meet heejung"의 확률 값을 증가시킨다.
도 5는 예측된 단어 클래스 확률 분포를 기반으로 후보 단어열의 확률값을 조정하는 과정을 설명하기 위한 예시도로서 음성 인식 과정의 특정 시점(t9)의 스냅샷을 도시한 도면이다. 이때, 도시된 바와 같이 디코더(120)가 t1 에서 t8로 시간이 흐름에 따라 음성 신호에 대응하는 후보 단어열 "I want to make a call to david's" 및 "I want to make a call to david"를 생성하였다고 가정한다.
예측부(110)는 후보 단어열 "I want to make a call to david's"을 기반으로 후보 단어열 "I want to make a call to david's"의 다음 단어의 단어 클래스 확률 분포를 예측하고, 후보 단어열 "I want to make a call to david"을 기반으로 후보 단어열 "I want to make a call to david"의 다음 단어의 단어 클래스 확률 분포를 예측한다. 도시된 예의 경우, 예측부(110)는 후보 단어열 "I want to make a call to david's"의 다음 단어의 단어 클래스 확률로서 명사 0.8, 소유격 0.1 등을 예측하고, 후보 단어열 "I want to make a call to david"의 다음 단어의 단어 클래스 확률로서 동사 0.01, 인명 0.5, 소유격 0.3 등을 예측한다.
그 다음, 디코더(120)는 t9 시점에 음향 모델, 발음 사전 및 언어 모델을 기반으로 후보 단어열 "I want to make a call to david's" 다음에 올 후보 단어 "office"(확률 값 0.3)와, 후보 단어열 "I want to make a call to david" 다음에 올 후보 단어 "is"(확률 값 0.6)를 탐색하고, 탐색된 후보 단어를 기반으로 각 후보 단어열을 확장하여 확장된 후보 단어열 "I want to make a call to david's office" 및 "I want to make a call to david is"를 생성한다.
그 다음, 디코더(120)는 "office"의 확률 값 0.3에 명사 클래스 확률 값 0.8을 곱하여 확장된 후보 단어열 "I want to make a call to david's office"의 확률 값을 조정하고, "is"의 확률 값 0.6에 동사 클래스 확률 값 0.01을 곱하여 확장된 후보 단어열 "I want to make a call to david is"의 확률 값을 조정한다.
도 6은 음성 인식 장치의 다른 실시예를 도시한 블록도이다.
도 6을 참조하면, 도 6의 음성 인식 장치(600)는 도 1의 음성 인식 장치(100)에 비하여 단어 클래스 예측 모델 저장부(610), 음향 모델 저장부(620), 발음 사전 저장부(630), 언어 모델 저장부(640), 개인화된 언어 모델 저장부(650), 입력부(660), 특징 벡터 추출부(670) 및 출력부(680)를 선택적으로 더 포함할 수 있다.
단어 클래스 예측 모델 저장부(640)는 단어 클래스 예측 모델을 저장하고, 음향 모델 저장부(620)는 음향 모델을 저장하고, 발음 사전 저장부(630)는 발음 사전을 저장하고, 언어 모델 저장부(640)는 언어 모델을 저장하고, 개인화된 언어 모델 저장부(650)는 개인화된 언어 모델을 저장할 수 있다.
일 실시예에 따르면, 단어 클래스 예측 모델 저장부(610), 음향 모델 저장부(620), 발음 사전 저장부(630), 언어 모델 저장부(640), 개인화된 언어 모델 저장부(650)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어, SD 또는 XD 메모리 등), 램(Random Access Memory: RAM) SRAM(Static Random Access Memory), 롬(Read-Only Memory: ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
한편, 도시된 예의 경우 각 저장부(610 내지 650)가 별개의 구성인 것으로 도시되어 있으나, 하나의 저장부로 통합되어 구성될 수도 있다.
입력부(660)는 사용자의 음성 신호를 입력 받을 수 있다. 이를 위해 입력부(660)는 마이크 등을 포함할 수 있다.
특징 벡터 추출부(670)는 입력된 음성 신호를 단위 프레임으로 분할하여 분할된 프레임 영역에 대응되는 특징 벡터를 추출할 수 있다.
일 실시예에 따르면, 특징 벡터 추출부(670)는 음성 구간 검출(Voice Activity Detection: VAD)을 통하여 입력된 음성 신호에서 음성 구간을 검출하고, 검출된 음성 구간에 대하여 음성 신호로부터 음성 인식에 적합한 정보를 획득하기 위해 음성의 특징을 추출할 수 있다. 이때, 특징 벡터 추출부(670)는 음성 신호의 주파수 특성을 단위 프레임 별로 계산하여 음성 신호에 포함된 특징 벡터를 추출할 수 있다. 이를 위해, 특징 벡터 추출부(670)는 아날로그 음성 신호를 디지털로 변환하는 아날로그-디지털 변환 수단(A/D Converter)를 포함할 수 있으며, 디지털로 변환된 음성 신호를 약 10ms 단위의 프레임으로 나누어 처리할 수 있다.
한편, 특징 벡터 추출부(670)는 멜-주파수 켑스트럼 계수(Mel-Frequency Cepstrum Coefficients, MFCC) 특징 추출 방식을 이용하여 특징 벡터를 추출할 수 있다. 멜-주파수 켑스트럼 계수 특징 추출 방식은 멜-켑스트럼 계수, 로그 에너지, 그리고 이들의 1차, 2차 미분을 결합한 형태의 특징 벡터를 사용할 수 있다.
또한, 특징 벡터 추출부(670)는 단위 프레임 영역에서 음성 신호의 특징을 추출하는데 있어서, 선형 예측 부호화(Linear Predictive Coding, LPC), 선형 예측 부호화에 의한 켑스트럼(LPC derived Cepstrum), 인지 성형 예측(Perceptive Linear Prediction, PLP), 청각 모델(Audio Model) 특징 추출 및 필터 뱅크(Filter Bank) 등의 방법을 사용할 수도 있다.
출력부(680)는 음성 인식 결과를 출력할 수 있다. 일 실시예에 따르면, 출력부(680)는 청각적 방식 또는 시각적 방식으로 음성 인식 결과를 출력할 수 있다. 이를 위해, 출력부(680)는 스피커, 디스플레이 등을 포함할 수 있다. 여기서, 디스플레이는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor liquid crystal display), 유기 발광 다이오드(organic light emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 안경형 디스플레이(예컨대, HMD(Head Mounted Display), FMD(Face Mounted Display), EMD(Eye Mounted Display), EGD(Eye Glass Display)) 등을 포함할 수 있다.
도 7은 단어 클래스 예측 모델 생성 장치의 일 실시예를 도시한 블록도이다.
도 7을 참조하면, 단어 클래스 예측 모델 생성 장치(700)는 학습 데이터 수집부(710) 및 모델 생성부(720)를 포함할 수 있다.
학습 데이터 수집부(710)는 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집할 수 있다.
한편, 학습 데이터 수집부(710)가 학습 데이터를 수집하는 방법에 대해서는 특별한 제한은 없다. 즉, 학습 데이터 수집부(710)는 외부 장치로부터 다수의 단어열과 각 단어열에 대응하는 클래스열을 단순히 수신하여 수집하는 것도 가능하며, 외부 장치로부터 다수의 단어열을 수신하여 사전 등을 이용하여 개체명 인식(named entity recognition) 기법, 품사 태깅(part of speech tagging) 기법 등을 통해 각 단어열에 대응하는 클래스열을 생성하는 것도 가능하다.
모델 생성부(720)는 수집된 학습 데이터를 기반으로 기계 학습을 통해 단어 클래스 예측 모델을 생성할 수 있다. 이때, 기계 학습 알고리즘은 신경망(neural network), 결정 트리(decision tree), 유전 알고리즘(Genetic Algorithm: GA), 유전자 프로그래밍(Genetic Programming: GP), 가우스 과정 회귀, 선형 분별 분석, K 근접 이웃(K-Nearest Neighbor: K-NN), 퍼셉트론, 방사 기저 함수 네트워크, 서포트 벡터 머신(Support Vector Machine: SVM), 및 딥러닝(deep-learning)(예컨대, RNN(Recurrent Neural Network) 등) 중 하나일 수 있다.
이하, 도 8을 참조하여, 단어 클래스 예측 모델을 생성하는 방법을 구체적으로 설명한다.
도 8은 단어 클래스 예측 모델을 생성하는 방법을 설명하기 위한 예시도이다. 이때, 단어 클래스 예측 모델은 시퀀스 패턴 학습에 효과적인 RNN 기반 모델이라고 가정한다. 모델 생성부(720)는 매 시점마다 단어와, 다음 단어의 단어 클래스를 RNN의 입력과 정답(target)으로 하여 RNN을 학습시킨다. 이때, 입력과 정답은 one-hot 벡터로 표현될 수 있다. 예컨대, 입력은 단어 사전의 크기를 갖는 one-hot 벡터로서 해당 단어 위치 값은 1, 나머지는 0이며, 정답은 취급하는 클래스 크기를 갖는 one-hot 벡터로서 해당 클래스 위치의 값은 1, 나머지는 0일 수 있다.
도 8을 참조하면, 모델 생성부(720)는 t1 시점에 단어열의 시작을 나타내는 단어 "<s>"를 입력으로 하고, 첫번째 단어의 단어 클래스 "부사"를 정답으로 하여 RNN을 학습시킨다.
그 다음, 모델 생성부(720)는 t2 시점에 첫번째 단어인 "how"를 입력으로 하고, 두번째 단어의 단어 클래스 "동사원형"을 정답으로 하여 RNN을 학습시킨다.
모델 생성부(720)는 이러한 방식으로 t3 시점 내지 t5 시점의 각 시점에 RNN을 학습시키고, t6시점에는 다섯번째 단어인 "to"를 입력으로 하고, 여섯번째 단어의 단어 클래스 "지명"을 정답으로 하여 RNN을 학습시킨다.
모델 생성부(720)는 이러한 방식으로 다수의 학습 데이터를 학습하여 단어 클래스 예측 모델을 생성할 수 있다.
도 9는 음성 인식 방법의 일 실시예를 도시한 흐름도이다.
도 1 및 도 9를 참조하면, 음성 인식 장치(100)는 이전에 탐색된 후보 단어열을 기반으로 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다(910). 예컨대, 음성 인식 장치(100)는 단어 클래스 예측 모델을 이용하여 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다. 여기서, 단어 클래스 예측 모델은 단어열을 기반으로 단어열의 다음 단어의 단어 클래스 또는 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 예컨대, 단어 클래스 예측 모델은 사전 및 문법을 기반으로 룰 셋 형태로 구축되어 단어 클래스를 예측하도록 구현될 수 있고, 개체명 인식(named entity recognition) 기법, 품사 태깅(part of speech tagging) 기법 등을 이용하여 기계 학습을 통해 구축되어 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 즉, 음성 인식 장치(100)는 룰 셋 형태로 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스를 예측하는 것도 가능하며, 기계 학습을 통해 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스 확률 분포를 예측한 후, 예측된 단어 클래스 확률 분포를 기반으로 단어 클래스를 예측하는 것도 가능하다.
음성 인식 장치(100)는 음성 신호에 대응하는 후보 단어를 탐색할 수 있다(920). 예컨대, 음성 인식 장치(100)는 음향 모델, 발음 사전 및 언어 모델을 이용하여 음성 신호에 대응하는 후보 단어를 탐색할 수 있다. 이때, 발음 사전 및 언어 모델은 WFST(weighted finite state transducer) 형태의 데이터 구조로 구축될 수 있으며 이 경우, 음성 인식 장치(100)는 WFST를 기반으로 음성 신호에 대응한 가능한 단어열을 탐색할 수 있다.
음성 인식 장치(100)는 탐색된 후보 단어를 이용하여 이전에 탐색된 후보 단어열을 확장할 수 있다(930). 예컨대, 음성 인식 장치(100)는 후보 단어열 다음에 올 가능성이 높은 단어, 즉 탐색된 후보 단어를 후보 단어열 다음에 추가하여 후보 단어열을 점진적으로 확장할 수 있다.
음성 인식 장치(100)는 예측된 단어 클래스를 기반으로 확장된 후보 단어열의 확률 값을 조정할 수 있다(940).
일 실시예에 따르면, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다.
다른 실시예에 따르면, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다.
또 다른 실시예에 따르면, 음성 인식 장치(100)는 예측된 각 단어 클래스의 확률 값을 해당 클래스에 속하는 후보 단어의 확률 값에 반영하여 확장된 후보 단어열의 확률 값을 조정할 수 있다.
도 10은 음성 인식 방법의 다른 실시예를 도시한 흐름도이다.
도 1 및 도 10을 참조하면, 음성 인식 장치(100)는 음성 신호를 입력 받아(1010), 음성 신호에 대응하는 후보 단어를 탐색할 수 있다(1020). 예컨대, 음성 인식 장치(100)는 음향 모델, 발음 사전 및 언어 모델을 이용하여 음성 신호에 대응하는 후보 단어를 탐색할 수 있다. 이때, 발음 사전 및 언어 모델은 WFST(weighted finite state transducer) 형태의 데이터 구조로 구축될 수 있고, 이 경우, 음성 인식 장치(100)는 WFST를 기반으로 음성 신호에 대응한 가능한 단어열을 탐색할 수 있다.
음성 인식 장치(100)는 탐색된 후보 단어를 이용하여 이전에 탐색된 후보 단어열을 확장할 수 있다(1030). 예컨대, 음성 인식 장치(100)는 앞서 인식된 후보 단어열 다음에 올 가능성이 높은 단어를 후보 단어열 다음에 추가하여 후보 단어열을 점진적으로 확장할 수 있다.
음성 인식 장치(100)는 확장된 후보 단어열의 확률 값을 산출할 수 있다(1040). 예컨대, 음성 인식 장치(100)는 음향 모델 및 언어 모델을 이용하여 확장된 후보 단어열의 확률 값을 산출할 수 있다.
음성 인식 장치(100)은 이전에 탐색된 후보 단어열을 기반으로 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다(1050). 예컨대, 음성 인식 장치(100)는 단어 클래스 예측 모델을 이용하여 이전에 탐색된 후보 단어열의 다음 단어의 단어 클래스를 예측할 수 있다. 이때, 단어 클래스 예측 모델은 단어열을 기반으로 단어열의 다음 단어의 단어 클래스 또는 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 예컨대, 단어 클래스 예측 모델은 사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되어 단어 클래스를 예측하도록 구현될 수 있고, 개체명 인식(named entity recognition) 기법, 품사 태깅(part of speech tagging) 기법 등을 이용하여 기계 학습을 통해 구축되어 단어 클래스 확률 분포를 예측하도록 구현될 수 있다. 즉, 음성 인식 장치(100)는 룰 셋 형태로 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스를 예측하는 것도 가능하며, 기계 학습을 통해 구축된 단어 클래스 예측 모델을 이용하여 단어 클래스 확률 분포를 예측한 후, 예측된 단어 클래스 확률 분포를 기반으로 단어 클래스를 예측하는 것도 가능하다.
음성 인식 장치(100)는 예측된 단어 클래스를 기반으로 확장된 후보 단어열의 확률 값을 조정할 수 있다(1060).
일 실시예에 따르면, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다.
다른 실시예에 따르면, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시켜 확장된 후보 단어열의 확률 값을 조정할 수 있다.
또 다른 실시예에 따르면, 음성 인식 장치(100)는 예측된 각 단어 클래스의 확률 값을 해당 클래스에 속하는 후보 단어의 확률 값에 반영하여 확장된 후보 단어열의 확률 값을 조정할 수 있다.
음성 인식 장치(100)는 음성 인식 완료 여부를 판단하고(1070), 음성 인식이 완료된 경우 최대 확률값을 가지는 후보 단어를 음성 인식 결과로서 출력할 수 있다(1080).
음성 인식 장치(100)는 음성 인식이 완료되지 않은 경우, 확률 값이 높은 소정 개수의 후보 단어열을 선택하고 나머지 후보 단어열은 추후 탐색 범위에서 제거할 수 있다(1090).
한편, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하지 않는 단어에 대해 전지 작업(pruning)을 통해 향후 탐색 범위를 줄일 수 있다. 다시 말하면, 음성 인식 장치(100)는 탐색된 후보 단어 중 예측된 단어 클래스에 속하지 않는 단어를 추후 탐색 대상에서 제거할 수 있다.
도 11은 단어 클래스 예측 모델 생성 방법의 일 실시예를 도시한 흐름도이다.
도 7 및 도 11을 참조하면, 단어 클래스 예측 모델 생성 장치(700)는 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집할 수 있다(1110).
단어 클래스 예측 모델 생성 장치(700)는 수집된 학습 데이터를 기반으로 기계 학습을 통해 단어 클래스 예측 모델을 생성할 수 있다. 이때, 기계 학습 알고리즘은 신경망(neural network), 결정 트리(decision tree), 유전 알고리즘(Genetic Algorithm: GA), 유전자 프로그래밍(Genetic Programming: GP), 가우스 과정 회귀, 선형 분별 분석, K 근접 이웃(K-Nearest Neighbor: K-NN), 퍼셉트론, 방사 기저 함수 네트워크, 서포트 벡터 머신(Support Vector Machine: SVM), 및 딥러닝(deep-learning)(예컨대, RNN(Recurrent Neural Network) 등) 중 하나일 수 있다. 단어 클래스 예측 모델 생성 장치(700)가 단어 클래스 예측 모델을 생성하는 구체적인 방법은 도 8을 참조하여 전술한 바와 같으므로 그 상세한 설명은 생략한다.
본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 작성되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
100, 600: 음성 인식 장치
110: 예측부
120: 디코더
610: 단어 클래스 예측 모델 저장부
620: 음향 모델 저장부
630: 발음 사전 저장부
640: 언어 모델 저장부
650: 개인화된 언어 모델 저장부
660: 입력부
670: 특징 벡터 추출부
680: 출력부
700: 단어 클래스 예측 모델 생성 장치
710: 학습 데이터 수집부
720: 모델 생성부
110: 예측부
120: 디코더
610: 단어 클래스 예측 모델 저장부
620: 음향 모델 저장부
630: 발음 사전 저장부
640: 언어 모델 저장부
650: 개인화된 언어 모델 저장부
660: 입력부
670: 특징 벡터 추출부
680: 출력부
700: 단어 클래스 예측 모델 생성 장치
710: 학습 데이터 수집부
720: 모델 생성부
Claims (28)
- 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 예측부; 및
음성 신호에 대응하는 후보 단어를 탐색하여 상기 이전에 탐색된 단어열을 확장하고, 상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 디코더; 를 포함하는,
음성 인식 장치. - 제1항에 있어서,
상기 클래스는 개체명 또는 품사이고,
상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인,
음성 인식 장치. - 제1항에 있어서,
상기 예측부는,
단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는,
음성 인식 장치. - 제3항에 있어서,
상기 단어 클래스 예측 모델은,
사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축되는,
음성 인식 장치. - 제3항에 있어서,
상기 단어 클래스 예측 모델은,
RNN(Recurrent Neural Network) 기반 모델인,
음성 인식 장치. - 제1항에 있어서,
상기 디코더는,
WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색하는,
음성 인식 장치. - 제1항에 있어서,
상기 디코더는,
상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외하는,
음성 인식 장치. - 제1항에 있어서,
상기 디코더는,
상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시키는,
음성 인식 장치. - 제1항에 있어서,
상기 디코더는,
상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시키는,
음성 인식 장치. - 제1항에 있어서,
상기 예측부는 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하고,
상기 디코더는 각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정하는,
음성 인식 장치. - 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 단계;
음성 신호에 대응하는 후보 단어를 탐색하는 단계;
상기 탐색된 후보 단어를 이용하여 상기 이전에 탐색된 단어열을 확장하는 단계; 및
상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 단계; 를 포함하는,
음성 인식 방법. - 제11항에 있어서,
상기 클래스는 개체명 또는 품사이고,
상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인,
음성 인식 방법. - 제11항에 있어서,
상기 단어 클래스를 예측하는 단계는,
단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는,
음성 인식 방법. - 제13항에 있어서,
상기 단어 클래스 예측 모델은,
사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축되는
음성 인식 방법. - 제13항에 있어서,
상기 단어 클래스 예측 모델은,
RNN(Recurrent Neural Network) 기반 모델인,
음성 인식 방법. - 제11항에 있어서,
상기 후보 단어를 탐색하는 단계는,
WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색하는,
음성 인식 방법. - 제11항에 있어서,
상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외하는 단계; 를 더 포함하는,
음성 인식 방법. - 제11항에 있어서,
상기 확장된 단어열의 확률 값을 조정하는 단계는,
상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시키는 단계; 를 포함하는,
음성 인식 방법. - 제11항에 있어서,
상기 확장된 단어열의 확률 값을 조정하는 단계는,
상기 탐색된 후보 단어 중 상기 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시키는 단계; 를 포함하는,
음성 인식 방법. - 제11항에 있어서,
상기 단어 클래스를 예측하는 단계는,
상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스 확률 분포를 예측하는 단계; 를 포함하고,
상기 확장된 단어열의 확률 값을 조정하는 단계는,
각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정하는 단계; 를 포함하는,
음성 인식 방법. - 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집하는 학습 데이터 수집부; 및
상기 수집된 학습 데이터를 기반으로 학습을 통해 단어 클래스 예측 모델을 생성하는 모델 생성부; 를 포함하는,
단어 클래스 예측 모델 생성 장치. - 제21항에 있어서,
상기 클래스는, 개체명 또는 품사이고,
상기 개체명은, 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인.
단어 클래스 예측 모델 생성 장치. - 제21항에 있어서,
상기 모델 생성부는,
상기 수집된 학습 데이터를 기반으로 RNN(Recurrent Neural Network)을 학습시켜 단어 클래스 예측 모델을 생성하는,
단어 클래스 예측 모델 생성 장치. - 제23항에 있어서,
상기 모델 생성부는,
단어를 입력으로 하고, 상기 단어의 다음 단어의 단어 클래스를 정답(target)으로 하여 상기 RNN을 학습시키는,
단어 클래스 예측 모델 생성 장치. - 다수의 단어열과 각 단어열에 대응하는 클래스열로 구성된 학습 데이터를 수집하는 단계; 및
상기 수집된 학습 데이터를 기반으로 학습을 통해 단어 클래스 예측 모델을 생성하는 단계; 를 포함하는,
단어 클래스 예측 모델 생성 방법. - 제25항에 있어서,
상기 클래스는, 개체명 또는 품사이고,
상기 개체명은, 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인,
단어 클래스 예측 모델 생성 방법. - 제25항에 있어서,
상기 단어 클래스 예측 모델을 생성하는 단계는,
상기 수집된 학습 데이터를 기반으로 RNN(Recurrent Neural Network)을 학습시켜 단어 클래스 예측 모델을 생성하는,
단어 클래스 예측 모델 생성 방법. - 제27항에 있어서,
상기 단어 클래스 예측 모델을 생성하는 단계는,
단어를 입력으로 하고, 상기 단어의 다음 단어의 단어 클래스를 정답(target)으로 하여 상기 RNN을 학습시키는 단계; 를 포함하는,
단어 클래스 예측 모델 생성 방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150168967A KR102450853B1 (ko) | 2015-11-30 | 2015-11-30 | 음성 인식 장치 및 방법 |
US15/331,311 US10606947B2 (en) | 2015-11-30 | 2016-10-21 | Speech recognition apparatus and method |
EP16201074.8A EP3174047B1 (en) | 2015-11-30 | 2016-11-29 | Speech recognition |
CN201611078946.5A CN106816148B (zh) | 2015-11-30 | 2016-11-30 | 语音识别设备和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150168967A KR102450853B1 (ko) | 2015-11-30 | 2015-11-30 | 음성 인식 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170063037A true KR20170063037A (ko) | 2017-06-08 |
KR102450853B1 KR102450853B1 (ko) | 2022-10-04 |
Family
ID=57421753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150168967A KR102450853B1 (ko) | 2015-11-30 | 2015-11-30 | 음성 인식 장치 및 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10606947B2 (ko) |
EP (1) | EP3174047B1 (ko) |
KR (1) | KR102450853B1 (ko) |
CN (1) | CN106816148B (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11036926B2 (en) | 2018-05-21 | 2021-06-15 | Samsung Electronics Co., Ltd. | Generating annotated natural language phrases |
KR20220026325A (ko) * | 2020-08-25 | 2022-03-04 | 주식회사 카카오엔터프라이즈 | 음성 인식에 관한 빔 서치 방법 및 장치 |
US11574190B2 (en) | 2019-10-15 | 2023-02-07 | Samsung Electronics Co., Ltd. | Method and apparatus for determining output token |
Families Citing this family (138)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US10255566B2 (en) | 2011-06-03 | 2019-04-09 | Apple Inc. | Generating and processing task items that represent tasks to perform |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
EP4138075A1 (en) | 2013-02-07 | 2023-02-22 | Apple Inc. | Voice trigger for a digital assistant |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
US10748529B1 (en) | 2013-03-15 | 2020-08-18 | Apple Inc. | Voice activated device for use with a voice-based digital assistant |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
CN110442699A (zh) | 2013-06-09 | 2019-11-12 | 苹果公司 | 操作数字助理的方法、计算机可读介质、电子设备和*** |
US10791216B2 (en) | 2013-08-06 | 2020-09-29 | Apple Inc. | Auto-activating smart responses based on activities from remote devices |
US10296160B2 (en) | 2013-12-06 | 2019-05-21 | Apple Inc. | Method for extracting salient dialog usage from live data |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9966065B2 (en) | 2014-05-30 | 2018-05-08 | Apple Inc. | Multi-command single utterance input method |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10152299B2 (en) | 2015-03-06 | 2018-12-11 | Apple Inc. | Reducing response latency of intelligent automated assistants |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US10460227B2 (en) | 2015-05-15 | 2019-10-29 | Apple Inc. | Virtual assistant in a communication session |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10200824B2 (en) | 2015-05-27 | 2019-02-05 | Apple Inc. | Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US20160378747A1 (en) | 2015-06-29 | 2016-12-29 | Apple Inc. | Virtual assistant for media playback |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10740384B2 (en) | 2015-09-08 | 2020-08-11 | Apple Inc. | Intelligent automated assistant for media search and playback |
US10331312B2 (en) | 2015-09-08 | 2019-06-25 | Apple Inc. | Intelligent automated assistant in a media environment |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10956666B2 (en) | 2015-11-09 | 2021-03-23 | Apple Inc. | Unconventional virtual assistant interactions |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US11227589B2 (en) | 2016-06-06 | 2022-01-18 | Apple Inc. | Intelligent list reading |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
US9984683B2 (en) * | 2016-07-22 | 2018-05-29 | Google Llc | Automatic speech recognition using multi-dimensional models |
US11341413B2 (en) * | 2016-08-29 | 2022-05-24 | International Business Machines Corporation | Leveraging class information to initialize a neural network language model |
US10474753B2 (en) | 2016-09-07 | 2019-11-12 | Apple Inc. | Language identification using recurrent neural networks |
US10593346B2 (en) * | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
US10529324B1 (en) * | 2016-12-27 | 2020-01-07 | Cognistic, LLC | Geographical based voice transcription |
US11204787B2 (en) | 2017-01-09 | 2021-12-21 | Apple Inc. | Application integration with a digital assistant |
KR20180092582A (ko) * | 2017-02-10 | 2018-08-20 | 삼성전자주식회사 | Wfst 디코딩 시스템, 이를 포함하는 음성 인식 시스템 및 wfst 데이터 저장 방법 |
DK201770383A1 (en) | 2017-05-09 | 2018-12-14 | Apple Inc. | USER INTERFACE FOR CORRECTING RECOGNITION ERRORS |
US10417266B2 (en) | 2017-05-09 | 2019-09-17 | Apple Inc. | Context-aware ranking of intelligent response suggestions |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
US10726832B2 (en) | 2017-05-11 | 2020-07-28 | Apple Inc. | Maintaining privacy of personal information |
US10395654B2 (en) | 2017-05-11 | 2019-08-27 | Apple Inc. | Text normalization based on a data-driven learning network |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
US11301477B2 (en) | 2017-05-12 | 2022-04-12 | Apple Inc. | Feedback analysis of a digital assistant |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770429A1 (en) | 2017-05-12 | 2018-12-14 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
DK201770411A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | MULTI-MODAL INTERFACES |
US10303715B2 (en) | 2017-05-16 | 2019-05-28 | Apple Inc. | Intelligent automated assistant for media exploration |
US10311144B2 (en) | 2017-05-16 | 2019-06-04 | Apple Inc. | Emoji word sense disambiguation |
US20180336892A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Detecting a trigger of a digital assistant |
DK179549B1 (en) | 2017-05-16 | 2019-02-12 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
CN107293288B (zh) * | 2017-06-09 | 2020-04-21 | 清华大学 | 一种残差长短期记忆循环神经网络的声学模型建模方法 |
CN107341462A (zh) * | 2017-06-28 | 2017-11-10 | 电子科技大学 | 一种基于注意力机制的视频分类方法 |
KR102369416B1 (ko) * | 2017-09-18 | 2022-03-03 | 삼성전자주식회사 | 복수의 사용자 각각에 대응하는 개인화 레이어를 이용하여 복수의 사용자 각각의 음성 신호를 인식하는 음성 신호 인식 시스템 |
US11755834B2 (en) * | 2017-12-22 | 2023-09-12 | Google Llc | Selective text prediction for electronic messaging |
CN107993651B (zh) * | 2017-12-29 | 2021-01-19 | 深圳和而泰数据资源与云技术有限公司 | 一种语音识别方法、装置、电子设备及存储介质 |
US10733375B2 (en) | 2018-01-31 | 2020-08-04 | Apple Inc. | Knowledge-based framework for improving natural language understanding |
CN108418744A (zh) * | 2018-02-06 | 2018-08-17 | 国网浙江省电力有限公司信息通信分公司 | 一种用于提升电力服务质量的电子坐席*** |
CN108305605A (zh) * | 2018-03-06 | 2018-07-20 | 吟飞科技(江苏)有限公司 | 基于计算机音视频的人机交互数字乐器*** |
US10592604B2 (en) | 2018-03-12 | 2020-03-17 | Apple Inc. | Inverse text normalization for automatic speech recognition |
US10818288B2 (en) | 2018-03-26 | 2020-10-27 | Apple Inc. | Natural assistant interaction |
CN110389668A (zh) * | 2018-04-20 | 2019-10-29 | 北京搜狗科技发展有限公司 | 一种输入方法、装置和用于输入的装置 |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US10984780B2 (en) | 2018-05-21 | 2021-04-20 | Apple Inc. | Global semantic word embeddings using bi-directional recurrent neural networks |
CN110600032A (zh) * | 2018-05-23 | 2019-12-20 | 北京语智科技有限公司 | 一种语音识别方法及装置 |
CN108694939B (zh) * | 2018-05-23 | 2020-11-03 | 广州视源电子科技股份有限公司 | 语音搜索优化方法、装置和*** |
CN108682415B (zh) * | 2018-05-23 | 2020-09-29 | 广州视源电子科技股份有限公司 | 语音搜索方法、装置和*** |
EP3576019A1 (en) | 2018-05-29 | 2019-12-04 | Nokia Technologies Oy | Artificial neural networks |
DK201870355A1 (en) | 2018-06-01 | 2019-12-16 | Apple Inc. | VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS |
US11386266B2 (en) | 2018-06-01 | 2022-07-12 | Apple Inc. | Text correction |
DK179822B1 (da) | 2018-06-01 | 2019-07-12 | Apple Inc. | Voice interaction at a primary device to access call functionality of a companion device |
US10892996B2 (en) | 2018-06-01 | 2021-01-12 | Apple Inc. | Variable latency device coordination |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
US10496705B1 (en) | 2018-06-03 | 2019-12-03 | Apple Inc. | Accelerated task performance |
CN108922513B (zh) * | 2018-06-04 | 2023-03-17 | 平安科技(深圳)有限公司 | 语音区分方法、装置、计算机设备及存储介质 |
WO2020003928A1 (ja) * | 2018-06-28 | 2020-01-02 | 株式会社Nttドコモ | エンティティ特定システム |
CN110764422A (zh) * | 2018-07-27 | 2020-02-07 | 珠海格力电器股份有限公司 | 电器的控制方法和装置 |
CN109274845A (zh) * | 2018-08-31 | 2019-01-25 | 平安科技(深圳)有限公司 | 智能语音自动回访方法、装置、计算机设备及存储介质 |
US11010561B2 (en) | 2018-09-27 | 2021-05-18 | Apple Inc. | Sentiment prediction from textual data |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US10839159B2 (en) | 2018-09-28 | 2020-11-17 | Apple Inc. | Named entity normalization in a spoken dialog system |
US11170166B2 (en) | 2018-09-28 | 2021-11-09 | Apple Inc. | Neural typographical error modeling via generative adversarial networks |
CN109472020B (zh) * | 2018-10-11 | 2022-07-01 | 重庆邮电大学 | 一种特征对齐中文分词方法 |
US11475898B2 (en) | 2018-10-26 | 2022-10-18 | Apple Inc. | Low-latency multi-speaker speech recognition |
KR20200056001A (ko) * | 2018-11-14 | 2020-05-22 | 삼성전자주식회사 | 인공신경망에서의 디코딩 방법 및 그 장치 |
KR20200059703A (ko) | 2018-11-21 | 2020-05-29 | 삼성전자주식회사 | 음성 인식 방법 및 음성 인식 장치 |
US11638059B2 (en) | 2019-01-04 | 2023-04-25 | Apple Inc. | Content playback on multiple devices |
KR102346026B1 (ko) * | 2019-02-11 | 2021-12-31 | 삼성전자주식회사 | 전자 장치 및 이의 제어 방법 |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
CN110069612B (zh) * | 2019-04-28 | 2022-02-01 | 河北省讯飞人工智能研究院 | 一种回复生成方法及装置 |
US11423908B2 (en) | 2019-05-06 | 2022-08-23 | Apple Inc. | Interpreting spoken requests |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11475884B2 (en) | 2019-05-06 | 2022-10-18 | Apple Inc. | Reducing digital assistant latency when a language is incorrectly determined |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
CN110164020A (zh) * | 2019-05-24 | 2019-08-23 | 北京达佳互联信息技术有限公司 | 投票创建方法、装置、计算机设备及计算机可读存储介质 |
DK180129B1 (en) | 2019-05-31 | 2020-06-02 | Apple Inc. | USER ACTIVITY SHORTCUT SUGGESTIONS |
US11496600B2 (en) | 2019-05-31 | 2022-11-08 | Apple Inc. | Remote execution of machine-learned models |
US11289073B2 (en) | 2019-05-31 | 2022-03-29 | Apple Inc. | Device text to speech |
DK201970511A1 (en) | 2019-05-31 | 2021-02-15 | Apple Inc | Voice identification in digital assistant systems |
US11360641B2 (en) | 2019-06-01 | 2022-06-14 | Apple Inc. | Increasing the relevance of new available information |
US11468890B2 (en) | 2019-06-01 | 2022-10-11 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11074909B2 (en) | 2019-06-28 | 2021-07-27 | Samsung Electronics Co., Ltd. | Device for recognizing speech input from user and operating method thereof |
CN110322884B (zh) * | 2019-07-09 | 2021-12-07 | 科大讯飞股份有限公司 | 一种解码网络的插词方法、装置、设备及存储介质 |
US11488406B2 (en) | 2019-09-25 | 2022-11-01 | Apple Inc. | Text detection using global geometry estimators |
US11482214B1 (en) * | 2019-12-12 | 2022-10-25 | Amazon Technologies, Inc. | Hypothesis generation and selection for inverse text normalization for search |
CN111177403B (zh) * | 2019-12-16 | 2023-06-23 | 恩亿科(北京)数据科技有限公司 | 样本数据的处理方法和装置 |
US11043220B1 (en) | 2020-05-11 | 2021-06-22 | Apple Inc. | Digital assistant hardware abstraction |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11755276B2 (en) | 2020-05-12 | 2023-09-12 | Apple Inc. | Reducing description length based on confidence |
CN111651599B (zh) * | 2020-05-29 | 2023-05-26 | 北京搜狗科技发展有限公司 | 一种语音识别候选结果的排序方法及装置 |
US11688394B1 (en) * | 2020-06-01 | 2023-06-27 | Amazon Technologies, Inc. | Entity language models for speech processing |
US11704460B2 (en) * | 2020-06-10 | 2023-07-18 | University Of Florida Research Foundation, Incorporated | System and method for fast and accurate netlist to RTL reverse engineering |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
US11829720B2 (en) | 2020-09-01 | 2023-11-28 | Apple Inc. | Analysis and validation of language models |
CN112287678A (zh) * | 2020-11-03 | 2021-01-29 | 沈阳雅译网络技术有限公司 | 一种基于预训练模型的古体诗自动生成方法 |
CN112530421B (zh) * | 2020-11-03 | 2023-04-07 | 科大讯飞股份有限公司 | 语音识别方法、电子设备及存储装置 |
CN112599128B (zh) * | 2020-12-31 | 2024-06-11 | 百果园技术(新加坡)有限公司 | 一种语音识别方法、装置、设备和存储介质 |
CN112927679B (zh) * | 2021-02-07 | 2023-08-15 | 虫洞创新平台(深圳)有限公司 | 一种语音识别中添加标点符号的方法及语音识别装置 |
US11232793B1 (en) * | 2021-03-30 | 2022-01-25 | Chief Chief Technologies Oy | Methods, systems and voice managing servers for voice recognition to perform action |
CN113096642A (zh) * | 2021-03-31 | 2021-07-09 | 南京地平线机器人技术有限公司 | 语音识别方法和装置、计算机可读存储介质、电子设备 |
CN113192501B (zh) * | 2021-04-12 | 2022-04-22 | 青岛信芯微电子科技股份有限公司 | 一种指令词识别方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150332673A1 (en) * | 2014-05-13 | 2015-11-19 | Nuance Communications, Inc. | Revising language model scores based on semantic class hypotheses |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1133766B1 (en) * | 1998-11-25 | 2004-01-21 | Entropic Limited | Network and language models for use in a speech recognition system |
US7457750B2 (en) * | 2000-10-13 | 2008-11-25 | At&T Corp. | Systems and methods for dynamic re-configurable speech recognition |
KR100657267B1 (ko) * | 2003-10-30 | 2006-12-14 | 삼성전자주식회사 | 검색을 위한 메타 정보가 포함된 저장 매체, 재생 장치 및그 재생 방법 |
US7111248B2 (en) * | 2002-01-15 | 2006-09-19 | Openwave Systems Inc. | Alphanumeric information input method |
JP4171323B2 (ja) | 2003-02-27 | 2008-10-22 | 日本電信電話株式会社 | 認識誤り訂正方法、装置、およびプログラム |
GB2407657B (en) | 2003-10-30 | 2006-08-23 | Vox Generation Ltd | Automated grammar generator (AGG) |
DE102007037567A1 (de) * | 2007-08-09 | 2009-02-12 | Volkswagen Ag | Verfahren zur multimodalen Bedienung mindestens eines Gerätes in einem Kraftfahrzeug |
US8676577B2 (en) * | 2008-03-31 | 2014-03-18 | Canyon IP Holdings, LLC | Use of metadata to post process speech recognition output |
KR101537078B1 (ko) * | 2008-11-05 | 2015-07-15 | 구글 인코포레이티드 | 사용자 정의 언어 모델들 |
US8108214B2 (en) | 2008-11-19 | 2012-01-31 | Robert Bosch Gmbh | System and method for recognizing proper names in dialog systems |
KR101217524B1 (ko) * | 2008-12-22 | 2013-01-18 | 한국전자통신연구원 | 고립어 엔베스트 인식결과를 위한 발화검증 방법 및 장치 |
JP2010154397A (ja) | 2008-12-26 | 2010-07-08 | Sony Corp | データ処理装置、データ処理方法、及び、プログラム |
CN101604520A (zh) * | 2009-07-16 | 2009-12-16 | 北京森博克智能科技有限公司 | 基于统计模型和语法规则的口语语音识别方法 |
US8589163B2 (en) | 2009-12-04 | 2013-11-19 | At&T Intellectual Property I, L.P. | Adapting language models with a bit mask for a subset of related words |
CN102682763B (zh) * | 2011-03-10 | 2014-07-16 | 北京三星通信技术研究有限公司 | 修正语音输入文本中命名实体词汇的方法、装置及终端 |
CN103187052B (zh) * | 2011-12-29 | 2015-09-02 | 北京百度网讯科技有限公司 | 一种建立用于语音识别的语言模型的方法及装置 |
KR101394253B1 (ko) | 2012-05-16 | 2014-05-13 | 광주과학기술원 | 음성 인식 오류 보정 장치 |
JP2013250379A (ja) | 2012-05-31 | 2013-12-12 | Alpine Electronics Inc | 音声認識装置、音声認識方法およびプログラム |
CN104823135B (zh) * | 2012-08-31 | 2018-01-30 | 微软技术许可有限责任公司 | 用于输入法编辑器的个人语言模型 |
CN103076893B (zh) * | 2012-12-31 | 2016-08-17 | 百度在线网络技术(北京)有限公司 | 一种用于实现语音输入的方法与设备 |
KR101892734B1 (ko) | 2013-01-04 | 2018-08-28 | 한국전자통신연구원 | 음성 인식 시스템에서의 오류 수정 방법 및 그 장치 |
US9305545B2 (en) | 2013-03-13 | 2016-04-05 | Samsung Electronics Co., Ltd. | Speech recognition vocabulary integration for classifying words to identify vocabulary application group |
US9558743B2 (en) * | 2013-03-15 | 2017-01-31 | Google Inc. | Integration of semantic context information |
US9613619B2 (en) * | 2013-10-30 | 2017-04-04 | Genesys Telecommunications Laboratories, Inc. | Predicting recognition quality of a phrase in automatic speech recognition systems |
JP2015102805A (ja) | 2013-11-27 | 2015-06-04 | アルパイン株式会社 | 音声認識システム、電子装置、サーバー、音声認識方法および音声認識プログラム |
KR102204395B1 (ko) | 2013-12-06 | 2021-01-19 | 주식회사 케이티 | 개체명 인식을 이용한 음성인식 띄어쓰기 보정 방법 및 시스템 |
US20150370787A1 (en) * | 2014-06-18 | 2015-12-24 | Microsoft Corporation | Session Context Modeling For Conversational Understanding Systems |
CN104036010B (zh) * | 2014-06-25 | 2017-05-24 | 华东师范大学 | 一种基于半监督cbow的用户搜索词主题分类的方法 |
KR102380833B1 (ko) * | 2014-12-02 | 2022-03-31 | 삼성전자주식회사 | 음성 인식 방법 및 음성 인식 장치 |
US9607616B2 (en) * | 2015-08-17 | 2017-03-28 | Mitsubishi Electric Research Laboratories, Inc. | Method for using a multi-scale recurrent neural network with pretraining for spoken language understanding tasks |
US10740384B2 (en) * | 2015-09-08 | 2020-08-11 | Apple Inc. | Intelligent automated assistant for media search and playback |
US10366158B2 (en) * | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US10896681B2 (en) * | 2015-12-29 | 2021-01-19 | Google Llc | Speech recognition with selective use of dynamic language models |
WO2017213709A1 (en) * | 2016-06-08 | 2017-12-14 | Google Llc | Scalable dynamic class language modeling |
-
2015
- 2015-11-30 KR KR1020150168967A patent/KR102450853B1/ko active IP Right Grant
-
2016
- 2016-10-21 US US15/331,311 patent/US10606947B2/en active Active
- 2016-11-29 EP EP16201074.8A patent/EP3174047B1/en active Active
- 2016-11-30 CN CN201611078946.5A patent/CN106816148B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150332673A1 (en) * | 2014-05-13 | 2015-11-19 | Nuance Communications, Inc. | Revising language model scores based on semantic class hypotheses |
Non-Patent Citations (3)
Title |
---|
(INCORPORATING GRAMMATICAL FEATURES IN THE MODELING OF THE SLOVAK LANGUAGE FOR CONTINUOUS SPEECH RECOGNITION)* * |
(RNN LANGUAGE MODEL WITH WORD CLUSTERING AND CLASS_BASED OUTPUT LAYER)* * |
(WEIGHTED FINITE_STATE TRANSDUCERS IN SPEECH RECOGNITION)* * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11036926B2 (en) | 2018-05-21 | 2021-06-15 | Samsung Electronics Co., Ltd. | Generating annotated natural language phrases |
US11574190B2 (en) | 2019-10-15 | 2023-02-07 | Samsung Electronics Co., Ltd. | Method and apparatus for determining output token |
KR20220026325A (ko) * | 2020-08-25 | 2022-03-04 | 주식회사 카카오엔터프라이즈 | 음성 인식에 관한 빔 서치 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US10606947B2 (en) | 2020-03-31 |
EP3174047B1 (en) | 2021-08-04 |
KR102450853B1 (ko) | 2022-10-04 |
CN106816148A (zh) | 2017-06-09 |
CN106816148B (zh) | 2022-04-22 |
EP3174047A1 (en) | 2017-05-31 |
US20170154033A1 (en) | 2017-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102450853B1 (ko) | 음성 인식 장치 및 방법 | |
CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
US10027662B1 (en) | Dynamic user authentication | |
US10134388B1 (en) | Word generation for speech recognition | |
US10121467B1 (en) | Automatic speech recognition incorporating word usage information | |
CN107195296B (zh) | 一种语音识别方法、装置、终端及*** | |
CN108831439B (zh) | 语音识别方法、装置、设备和*** | |
US9934777B1 (en) | Customized speech processing language models | |
US9477753B2 (en) | Classifier-based system combination for spoken term detection | |
KR100755677B1 (ko) | 주제 영역 검출을 이용한 대화체 음성 인식 장치 및 방법 | |
US11043214B1 (en) | Speech recognition using dialog history | |
KR20210150497A (ko) | 음성 인식을 위한 컨텍스트 바이어싱 | |
EP3433761A1 (en) | Fine-grained natural language understanding | |
Chen et al. | Strategies for Vietnamese keyword search | |
JP2005165272A (ja) | 多数の音声特徴を利用する音声認識 | |
US10152298B1 (en) | Confidence estimation based on frequency | |
US11705105B2 (en) | Speech synthesizer for evaluating quality of synthesized speech using artificial intelligence and method of operating the same | |
CN112420026A (zh) | 优化关键词检索*** | |
Bai et al. | End-to-end keywords spotting based on connectionist temporal classification for mandarin | |
Hu et al. | Phoneme-based contextualization for cross-lingual speech recognition in end-to-end models | |
Yan et al. | CRNN-CTC based mandarin keywords spotting | |
Moyal et al. | Phonetic search methods for large speech databases | |
Ananthakrishnan et al. | Improved speech recognition using acoustic and lexical correlates of pitch accent in a n-best rescoring framework | |
Zhang et al. | Wake-up-word spotting using end-to-end deep neural network system | |
US11887583B1 (en) | Updating models with trained model update objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |