KR102450853B1 - 음성 인식 장치 및 방법 - Google Patents

음성 인식 장치 및 방법 Download PDF

Info

Publication number
KR102450853B1
KR102450853B1 KR1020150168967A KR20150168967A KR102450853B1 KR 102450853 B1 KR102450853 B1 KR 102450853B1 KR 1020150168967 A KR1020150168967 A KR 1020150168967A KR 20150168967 A KR20150168967 A KR 20150168967A KR 102450853 B1 KR102450853 B1 KR 102450853B1
Authority
KR
South Korea
Prior art keywords
word
class
candidate
probability value
speech recognition
Prior art date
Application number
KR1020150168967A
Other languages
English (en)
Other versions
KR20170063037A (ko
Inventor
이지현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150168967A priority Critical patent/KR102450853B1/ko
Priority to US15/331,311 priority patent/US10606947B2/en
Priority to EP16201074.8A priority patent/EP3174047B1/en
Priority to CN201611078946.5A priority patent/CN106816148B/zh
Publication of KR20170063037A publication Critical patent/KR20170063037A/ko
Application granted granted Critical
Publication of KR102450853B1 publication Critical patent/KR102450853B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/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
    • G10L15/197Probabilistic grammars, e.g. word n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/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
    • G10L15/193Formal grammars, e.g. finite state automata, context free grammars or word networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

음성 인식 장치 및 방법이 개시된다. 일 양상에 따른 음성 인식 장치는, 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 예측부와, 음성 신호에 대응하는 후보 단어를 탐색하여 상기 이전에 탐색된 단어열을 확장하고, 상기 예측된 단어 클래스를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 디코더를 포함할 수 있다.

Description

음성 인식 장치 및 방법{Apparatus and method for speech recognition}
음성 인식 기술에 관한 것으로, 특히 음성 인식 장치 및 방법과 관련된다.
최근의 음성 인식 기술은 과거와 비교하여 많은 주목을 받고 있는 상황이다. 그 이유는 음성 인식 기술이 구현될 경우, 인터넷 정보 이용이나 전자 상거래, 각종 유비쿼터스 환경을 보다 편리하게 음성을 통하여 조작할 수 있을 뿐만 아니라, 손을 사용하기 어려운 차량 운행 등과 같은 경우에도 인터넷을 액세스한다든가 사무나 기타 서비스를 이용할 수 있게 되어, 사용자의 다양한 니즈(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은 단어 클래스 예측 모델 생성 방법의 일 실시예를 도시한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 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: 모델 생성부

Claims (28)

  1. 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 예측부; 및
    음성 신호에 대응하는 후보 단어를 탐색하여 상기 이전에 탐색된 단어열을 확장하고, 상기 예측된 단어 클래스의 확률 분포를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 디코더; 를 포함하고,
    상기 디코더는
    상기 예측된 단어 클래스의 확률 분포 및 개인화된 언어 모델을 기초로 확장된 후보 단어열의 확률 값을 조정하고, 조정 결과를 기초로 최대 확률 값을 가지는 후보 단어열을 선택하고, 선택된 후보 단어열을 음성 인식 결과로 출력하는,
    음성 인식 장치.
  2. 제1항에 있어서,
    상기 클래스는 개체명 또는 품사이고,
    상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인,
    음성 인식 장치.
  3. 제1항에 있어서,
    상기 예측부는,
    단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는,
    음성 인식 장치.
  4. 제3항에 있어서,
    상기 단어 클래스 예측 모델은,
    사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축되는,
    음성 인식 장치.
  5. 제3항에 있어서,
    상기 단어 클래스 예측 모델은,
    RNN(Recurrent Neural Network) 기반 모델인,
    음성 인식 장치.
  6. 제1항에 있어서,
    상기 디코더는,
    WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색하는,
    음성 인식 장치.
  7. 제1항에 있어서,
    상기 디코더는,
    상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외하는,
    음성 인식 장치.
  8. 제1항에 있어서,
    상기 디코더는,
    상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시키는,
    음성 인식 장치.
  9. 제1항에 있어서,
    상기 디코더는,
    상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시키는,
    음성 인식 장치.
  10. 제1항에 있어서,
    상기 디코더는 각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정하는,
    음성 인식 장치.
  11. 이전에 탐색된 단어열을 기반으로 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는 단계;
    음성 신호에 대응하는 후보 단어를 탐색하는 단계;
    상기 탐색된 후보 단어를 이용하여 상기 이전에 탐색된 단어열을 확장하는 단계; 및
    상기 예측된 단어 클래스의 확률 분포를 기반으로 상기 확장된 단어열의 확률 값을 조정하는 단계; 를 포함하고,
    상기 확률 값을 조정하는 단계는
    상기 예측된 단어 클래스의 확률 분포 및 개인화된 언어 모델을 기초로 확장된 후보 단어열의 확률 값을 조정하는 단계;
    조정 결과를 기초로 최대 확률 값을 가지는 후보 단어열을 선택하는 단계; 및
    선택된 후보 단어열을 음성 인식 결과로 출력하는 단계를 포함하는,
    음성 인식 방법.
  12. 제11항에 있어서,
    상기 클래스는 개체명 또는 품사이고,
    상기 개체명은 인명, 지명, 기관명, 날짜, 시간, 도서명, 영화명, 음악명, 또는 TV 프로그램명인,
    음성 인식 방법.
  13. 제11항에 있어서,
    상기 단어 클래스를 예측하는 단계는,
    단어 클래스 예측 모델을 이용하여 상기 이전에 탐색된 단어열의 다음 단어의 단어 클래스를 예측하는,
    음성 인식 방법.
  14. 제13항에 있어서,
    상기 단어 클래스 예측 모델은,
    사전 및 문법을 기반으로 룰 셋(rule set) 형태로 구축되거나, 개체명 인식(named entity recognition) 기법 및 품사 태깅(part of speech tagging) 기법 중 적어도 하나를 이용하여 기계 학습을 통해 구축되는
    음성 인식 방법.
  15. 제13항에 있어서,
    상기 단어 클래스 예측 모델은,
    RNN(Recurrent Neural Network) 기반 모델인,
    음성 인식 방법.
  16. 제11항에 있어서,
    상기 후보 단어를 탐색하는 단계는,
    WFST(weighted finite state transducer) 형태의 데이터 구조로 구축된 발음 사전 및 언어 모델을 이용하여 상기 후보 단어를 탐색하는,
    음성 인식 방법.
  17. 제11항에 있어서,
    상기 탐색된 후보 단어 중에서 상기 예측된 단어 클래스에 속하지 않는 단어는 추후 탐색 대상에서 제외하는 단계; 를 더 포함하는,
    음성 인식 방법.
  18. 제11항에 있어서,
    상기 확장된 단어열의 확률 값을 조정하는 단계는,
    상기 탐색된 후보 단어 중 예측된 단어 클래스에 속하는 후보 단어의 확률 값을 증가시키는 단계; 를 포함하는,
    음성 인식 방법.
  19. 제11항에 있어서,
    상기 확장된 단어열의 확률 값을 조정하는 단계는,
    상기 탐색된 후보 단어 중 상기 예측된 단어 클래스에 속하며 개인화된 언어 모델에 포함되는 후보 단어의 확률 값을 증가시키는 단계; 를 포함하는,
    음성 인식 방법.
  20. 제11항에 있어서,
    상기 확장된 단어열의 확률 값을 조정하는 단계는,
    각 후보 단어의 확률 값에 해당 후보 단어가 속하는 단어 클래스의 예측된 확률 값을 곱하여 각 후보 단어의 확률 값을 조정하는 단계; 를 포함하는,
    음성 인식 방법.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR1020150168967A 2015-11-30 2015-11-30 음성 인식 장치 및 방법 KR102450853B1 (ko)

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 KR20170063037A (ko) 2017-06-08
KR102450853B1 true 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)

Families Citing this family (139)

* Cited by examiner, † Cited by third party
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
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks 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
EP3809407A1 (en) 2013-02-07 2021-04-21 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
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
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
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
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
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
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
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 데이터 저장 방법
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
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
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
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
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
US11036926B2 (en) 2018-05-21 2021-06-15 Samsung Electronics Co., Ltd. Generating annotated natural language phrases
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 北京语智科技有限公司 一种语音识别方法及装置
CN108682415B (zh) * 2018-05-23 2020-09-29 广州视源电子科技股份有限公司 语音搜索方法、装置和系统
CN108694939B (zh) * 2018-05-23 2020-11-03 广州视源电子科技股份有限公司 语音搜索优化方法、装置和系统
EP3576019A1 (en) 2018-05-29 2019-12-04 Nokia Technologies Oy Artificial neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
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
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 河北省讯飞人工智能研究院 一种回复生成方法及装置
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
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
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
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
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 科大讯飞股份有限公司 一种解码网络的插词方法、装置、设备及存储介质
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
KR20210044559A (ko) * 2019-10-15 2021-04-23 삼성전자주식회사 출력 토큰 결정 방법 및 장치
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 恩亿科(北京)数据科技有限公司 样本数据的处理方法和装置
US11038934B1 (en) 2020-05-11 2021-06-15 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
KR102386627B1 (ko) * 2020-08-25 2022-04-14 주식회사 카카오엔터프라이즈 음성 인식에 관한 빔 서치 방법 및 장치
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 科大讯飞股份有限公司 语音识别方法、电子设备及存储装置
CN112599128A (zh) * 2020-12-31 2021-04-02 百果园技术(新加坡)有限公司 一种语音识别方法、装置、设备和存储介质
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6668243B1 (en) * 1998-11-25 2003-12-23 Microsoft Corporation 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
JP5475795B2 (ja) * 2008-11-05 2014-04-16 グーグル・インコーポレーテッド カスタム言語モデル
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 音声認識装置、音声認識方法およびプログラム
CN108052489A (zh) * 2012-08-31 2018-05-18 微软技术许可有限责任公司 用于输入法编辑器的个人语言模型
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
비특허문헌1(INCORPORATING GRAMMATICAL FEATURES IN THE MODELING OF THE SLOVAK LANGUAGE FOR CONTINUOUS SPEECH RECOGNITION)*
비특허문헌2(RNN LANGUAGE MODEL WITH WORD CLUSTERING AND CLASS_BASED OUTPUT LAYER)*
비특허문헌3(WEIGHTED FINITE_STATE TRANSDUCERS IN SPEECH RECOGNITION)*

Also Published As

Publication number Publication date
CN106816148B (zh) 2022-04-22
CN106816148A (zh) 2017-06-09
EP3174047B1 (en) 2021-08-04
EP3174047A1 (en) 2017-05-31
US20170154033A1 (en) 2017-06-01
KR20170063037A (ko) 2017-06-08
US10606947B2 (en) 2020-03-31

Similar Documents

Publication Publication Date Title
KR102450853B1 (ko) 음성 인식 장치 및 방법
US11854545B2 (en) Privacy mode based on speaker identifier
CN111933129B (zh) 音频处理方法、语言模型的训练方法、装置及计算机设备
US11062694B2 (en) Text-to-speech processing with emphasized output audio
US10027662B1 (en) Dynamic user authentication
CN107195296B (zh) 一种语音识别方法、装置、终端及系统
US10365887B1 (en) Generating commands based on location and wakeword
US9934777B1 (en) Customized speech processing language models
US10121467B1 (en) Automatic speech recognition incorporating word usage information
US11990120B2 (en) Non-speech input to speech processing system
US11823678B2 (en) Proactive command framework
US10176809B1 (en) Customized compression and decompression of audio data
KR20210150497A (ko) 음성 인식을 위한 컨텍스트 바이어싱
US20160379638A1 (en) Input speech quality matching
US11862174B2 (en) Voice command processing for locked devices
US10832668B1 (en) Dynamic speech processing
US11074909B2 (en) Device for recognizing speech input from user and operating method thereof
JP2015180966A (ja) 音声処理システム
CN112420026A (zh) 优化关键词检索系统
US10515637B1 (en) Dynamic speech processing
US11289075B1 (en) Routing of natural language inputs to speech processing applications
US11430434B1 (en) Intelligent privacy protection mediation
US11756538B1 (en) Lower latency speech processing
US11328713B1 (en) On-device contextual understanding
KR20190094310A (ko) 인공 지능을 이용한 음성 합성 장치, 음성 합성 장치의 동작 방법 및 컴퓨터로 판독 가능한 기록 매체

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