KR20170046291A - 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 - Google Patents
전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 Download PDFInfo
- Publication number
- KR20170046291A KR20170046291A KR1020150146417A KR20150146417A KR20170046291A KR 20170046291 A KR20170046291 A KR 20170046291A KR 1020150146417 A KR1020150146417 A KR 1020150146417A KR 20150146417 A KR20150146417 A KR 20150146417A KR 20170046291 A KR20170046291 A KR 20170046291A
- Authority
- KR
- South Korea
- Prior art keywords
- hypothesis
- converter
- user
- electronic device
- optimal
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000006978 adaptation Effects 0.000 title abstract description 62
- 238000006243 chemical reaction Methods 0.000 claims abstract description 61
- 238000003860 storage Methods 0.000 claims abstract description 18
- 230000002860 competitive effect Effects 0.000 claims description 13
- 230000011664 signaling Effects 0.000 claims 1
- 230000006872 improvement Effects 0.000 abstract description 3
- 230000005236 sound signal Effects 0.000 abstract 1
- 230000008569 process Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 8
- 238000009826 distribution Methods 0.000 description 6
- 238000005457 optimization Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012417 linear regression Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000001902 propagating effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 206010010219 Compulsions Diseases 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/065—Adaptation
- G10L15/07—Adaptation to the speaker
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/10—Speech classification or search using distance or distortion measures between unknown speech and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
- G10L2015/025—Phonemes, fenemes or fenones being the recognition units
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템이 제공된다. 본 발명의 일 실시 예에 따른 전자 기기는, 사용자의 음성 신호를 수신하는 음성 입력부, 복수의 변환 파라미터를 가지는 변환기 및 변환기에 의해 변환된 파라미터를 가지는 음향 모델이 저장된 저장부, 음향 모델을 이용하여 수신된 음성 신호로부터 가설을 생성하고, 가설을 이용하여 사용자의 음성 특성이 반영된 최적 변환 파라미터를 갖는 최적 변환기를 추정하며, 추정된 최적 변환기 및 변환기를 조합하여 저장부에 저장된 변환기의 복수의 변환 파라미터를 업데이트하는 제어부를 포함한다.
Description
본 발명은 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템에 관한 것으로, 더욱 구체적으로는, 극소량의 사용자 음성을 이용하여 특정 사용자나 환경에 고속으로 음향 모델을 적응시킬 수 있는 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템에 관한 것이다.
사용자가 모바일 기기나 디스플레이 기기와 같은 다양한 전자 기기를 이용할 때 기존에는 키보드, 리모컨과 같은 도구를 이용하여 사용자 명령을 입력하였다. 하지만, 최근 사용자 명령의 입력 방식이 다변화됨에 따라 음성 인식에 대한 관심이 높아지고 있다.
종래 모바일이나 디스플레이 기기에서 사용되는 음성 인식기는 특정 사용자나 주변 잡음에 따라 큰 성능 차이를 보였다. 음성 인식기의 음향 모델(acoustic model, AM)이 다중 화자에게서 수집된 대용량 음성 데이터를 기반으로 생성되었기 때문에, 특정 화자나 환경에 대해서는 고성능의 음성 인식을 제공하기 어려웠다. 이에 따라, 실사용자 음원을 기반으로 종래의 화자 독립형(speaker-independent) 음향 모델을 화자 종속형(speaker-dependent) 음향 모델로 적응시켜, 각 사용자에게 최적화된 음향 모델을 제공하는 개인화 서비스가 전자 기기에 적용되고 있다.
하지만, 종래의 음향 모델 적응 방법은 사용자가 반드시 정해진 단어나 문장을 읽어야 하는 등록 과정에서의 강제성이 존재하였다. 또한, 음성 인식 성능의 향상을 보장하기 위해서는 대략 30초에서 2분 가량의 사용자 음성이 필요하였다. 음성 인식 서비스를 이용하는 사용자의 초반 이탈률이 매우 높다는 최근 보고와 같이, 즉각적인 성능 향상이 느껴지지 않을 경우 사용자의 재사용률이 낮다는 점에서 극소량의 실사용자 데이터만으로도 음향 모델 적응시킬 필요성이 존재한다. 따라서, 강제적으로 다량의 데이터를 입력하도록 하는 종래의 음향 모델 적응 방법은 사용자의 이탈을 방지할 수 없다는 문제점을 갖는다.
극소량의 실사용자 데이터를 이용하는 경우에도 음향 모델 파라미터 추정에 있어 최적화된 해법을 찾기가 어렵다는 문제점이 존재한다. 적절치 않은 적응 알고리즘을 사용할 경우, 오버피팅(over-fitting)으로 특정 파라미터에만 적응성이 높아지게 되어, 전체적으로는 성능 저하가 야기된다.
이러한 문제점을 줄이기 위해 선형회귀변환(linear-regression transform) 기반의 적응 방법들이 널리 사용되고 있으나, 제품 적용이 가능할 정도의 성능을 갖는 적응 방법은 개발되지 않았다.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 극소량의 실사용자 음원을 기반으로 고속으로 음향 모델을 적응시켜, 사용자가 인식 성능 개선을 실시간으로 체감할 수 있는 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템을 제공함을 목적으로 한다.
이를 위해 본 발명은 무등록(unsupervised) 사용자 발화를 획득하여 가설 생성에 이용하며, structural regularized minimum classification error linear regression (SR-MCELR) 알고리즘을 이용하여 최적 변환기를 추정하고, 현재 추정된 변환기를 다음 단계에 증분적으로 연결시킨다. 이를 통해, 본 발명은 오버 피팅을 방지하고, 실시간으로 체감 인식률을 향상시킬 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 전자 기기는, 사용자의 음성 신호를 수신하는 음성 입력부, 복수의 변환 파라미터를 가지는 변환기 및 상기 변환기에 의해 변환된 파라미터를 가지는 음향 모델이 저장된 저장부 및 상기 음향 모델을 이용하여, 상기 수신된 음성 신호로부터 가설(hypothesis)을 생성하고, 상기 가설을 이용하여 상기 사용자의 음성 특성이 반영된 최적 변환 파라미터를 갖는 최적 변환기를 추정하는 제어부를 포함하며, 상기 제어부는, 상기 추정된 최적 변환기 및 상기 변환기를 조합하여, 상기 저장부에 저장된 상기 변환기의 복수의 변환 파라미터를 업데이트할 수 있다.
그리고, 상기 제어부는, 상기 사용자의 음성 입력이 최초 입력이면, 범용(global) 변환기 및 상기 생성된 가설을 이용하여 상기 최적 변환기를 추정할 수 있다.
또한, 상기 제어부는, 상기 사용자의 이전 음성 입력이 존재하면, 상기 이전 음성 입력에 대한 최적 변환기 및 상기 생성된 가설을 이용하여 현재 음성 입력에 대한 최적 변환기를 추정할 수 있다.
그리고, 상기 제어부는, 상기 수신된 음성 신호에 대해 상기 가설을 복수 개로 생성하고, 복수의 가설들 중 상기 음성 신호와의 매칭 확률이 가장 높은 가설을 기준 가설로 설정하고, 나머지 가설을 경쟁 가설로 설정할 수 있다.
또한, 상기 제어부는, 상기 이전 음성 입력에 대한 최적 변환기의 변환 파라미터 중 상기 기준 가설에 대응되는 변환 파라미터를 증가시키고, 상기 경쟁 가설에 대응되는 변환 파라미터를 감소시켜, 상기 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다.
그리고, 상기 제어부는, 상기 생성된 가설의 신뢰도를 측정하고, 상기 측정된 신뢰도를 바탕으로, 상기 변환기와 상기 최적 변환기의 조합 비율을 결정할 수 있다.
또한, 상기 제어부는, 사용자의 자유 발화를 이용하여 가설을 생성할 수 있다.
그리고, 상기 수신된 사용자의 음성 신호의 음소 단위마다, 상기 변환기의 변환 파라미터를 업데이트할 수 있다.
한편, 상기 목적을 달성하기 위한 본 발명의 다른 실시 예에 따른 전자 기기의 음향 모델 적응 방법은, 사용자의 음성 신호를 수신하는 단계, 복수의 변환 파라미터를 가지는 변환기에 의해 파라미터가 변환된 음향 모델을 이용하여, 상기 수신된 음성 신호로부터 가설을 생성하는 단계, 상기 가설을 이용하여 상기 사용자의 음성 특성이 반영된 최적 변환 파라미터를 갖는 최적 변환기를 추정하는 단계 및 상기 추정된 최적 변환기 및 상기 변환기를 조합하여, 상기 변환기의 복수의 변환 파라미터를 업데이트하는 단계를 포함한다.
그리고, 상기 추정하는 단계는, 상기 사용자의 음성 입력이 최초 입력이면, 범용(global) 변환기 및 상기 생성된 가설을 이용하여 상기 최적 변환기를 추정할 수 있다.
또한, 상기 추정하는 단계는, 상기 사용자의 이전 음성 입력이 존재하면, 상기 이전 음성 입력에 대한 최적 변환기 및 상기 생성된 가설을 이용하여 현재 음성 입력에 대한 최적 변환기를 추정할 수 있다.
그리고, 상기 생성하는 단계는, 수신된 음성 신호에 대해 상기 가설을 복수 개로 생성하는 단계 및 복수의 가설들 중 상기 음성 신호와의 매칭 확률이 가장 높은 가설을 기준 가설로 설정하고, 나머지 가설을 경쟁 가설로 설정하는 단계를 포함할 수 있다.
또한, 상기 추정하는 단계는, 상기 이전 음성 입력에 대한 최적 변환기의 변환 파라미터 중 상기 기준 가설에 대응되는 변환 파라미터를 증가시키고, 상기 경쟁 가설에 대응되는 변환 파라미터를 감소시켜, 상기 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다.
그리고, 상기 업데이트하는 단계는, 상기 생성된 가설의 신뢰도를 측정하는 단계 및 상기 측정된 신뢰도를 바탕으로, 상기 변환기와 상기 최적 변환기의 조합 비율을 결정하는 단계를 포함할 수 있다.
또한, 상기 생성하는 단계는, 사용자의 자유 발화를 이용하여 가설을 생성할 수 있다.
그리고, 상기 수신된 사용자의 음성 신호의 음소 단위마다, 상기 변환기의 변환 파라미터를 업데이트할 수 있다.
한편, 상기 목적을 달성하기 위한 본 발명의 또 다른 실시 예에 따른 음성 인식 시스템은, 음향 모델을 저장하는 클라우드 서버 및 사용자의 음성 신호를 수신하고, 상기 수신된 음성 신호를 이용하여 가설을 생성하며, 상기 사용자의 음성 특성이 반영된 변환기를 추정하고, 상기 추정된 변환기를 상기 클라우드 서버에 전송하는 전자 기기를 포함하고, 상기 클라우드 서버는, 상기 저장된 음향 모델 및 상기 수신된 변환기를 이용하여 상기 사용자의 음성을 인식하고, 상기 인식된 결과를 상기 전자 기기로 전송할 수 있다.
이상과 같은 본 발명의 다양한 실시 예에 따르면, 극소량의 실사용자 데이터만을 활용하여 고속으로 사용자 및 사용자 환경의 음향 특성(acoustic characteristic)에 음향 모델을 적응시킴으로써, 음성 인식 성능 및 사용성이 극대화되는 효과가 발생한다. 또한, 빠른 최적화로 전자 기기를 이용하는 사용자의 음성 인식 서비스 이용에의 이탈을 방지할 수 있으며, 음성 인식 기능의 재사용을 지속적으로 유도할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 전자 기기의 구성을 설명하기 위한 개략적인 블럭도,
도 2는 본 발명의 일 실시 예에 따른 전자 기기의 구성을 상세히 설명하기 위한 상세한 블럭도,
도 3 및 도 4는 본 발명의 일 실시 예에 따른 전자 기기의 기능을 설명하기 위한 개념도,
도 5는 본 발명의 일 실시 예에 따른 전자 기기에서 유한 상태 트랜스듀서(Finite State Transducer, FST) 기반 격자(lattice)를 이용하여 가설을 생성하는 것을 설명하기 위한 도면,
도 6은 본 발명의 일 실시 예에 따른 전자 기기에서 변환기 선택을 설명하기 위한 도면,
도 7은 본 발명의 일 실시 예에 따른 전자 기기에서, 사용자의 음성 입력에 따라 증분적으로 음향 모델이 적응됨을 설명하기 위한 도면,
도 8은 본 발명의 일 실시 예에 따른 음성 인식 시스템을 도시한 개념도,
도 9 및 도 10은 본 발명의 다양한 실시 예에 따른 전자 기기의 음향 모델 적응 방법을 설명하기 위한 흐름도, 그리고,
도 11은 본 발명의 일 실시 예에 따른 음성 인식 시스템의 동작을 설명하기 위한 시퀀스도이다.
도 2는 본 발명의 일 실시 예에 따른 전자 기기의 구성을 상세히 설명하기 위한 상세한 블럭도,
도 3 및 도 4는 본 발명의 일 실시 예에 따른 전자 기기의 기능을 설명하기 위한 개념도,
도 5는 본 발명의 일 실시 예에 따른 전자 기기에서 유한 상태 트랜스듀서(Finite State Transducer, FST) 기반 격자(lattice)를 이용하여 가설을 생성하는 것을 설명하기 위한 도면,
도 6은 본 발명의 일 실시 예에 따른 전자 기기에서 변환기 선택을 설명하기 위한 도면,
도 7은 본 발명의 일 실시 예에 따른 전자 기기에서, 사용자의 음성 입력에 따라 증분적으로 음향 모델이 적응됨을 설명하기 위한 도면,
도 8은 본 발명의 일 실시 예에 따른 음성 인식 시스템을 도시한 개념도,
도 9 및 도 10은 본 발명의 다양한 실시 예에 따른 전자 기기의 음향 모델 적응 방법을 설명하기 위한 흐름도, 그리고,
도 11은 본 발명의 일 실시 예에 따른 음성 인식 시스템의 동작을 설명하기 위한 시퀀스도이다.
이하에서는 본 발명의 바람직한 실시 예가 첨부된 도면을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되지는 않는다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 항목들의 조합 또는 복수의 관련된 항목들 중의 어느 하나의 항목을 포함한다.
본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 본 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원서에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 숫자, 동작, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명의 일 실시 예에 따른 전자 기기(100)의 구성을 개략적으로 도시한 블럭도이다. 도 1을 참조하면, 전자 기기(100)는 음성 입력부(110), 저장부(160) 및 제어부(105) 를 포함할 수 있다.
본 발명의 일 실시 예에 따른 전자 기기(100)는 스마트 TV와 같은 디스플레이 장치, 스마트 폰, 타블렛 피씨, 오디오 장치, 네비게이션 등 음성 인식이 가능한 모든 전자 기기로 구현될 수 있다.
음성 입력부(110)는 사용자의 음성 신호를 수신할 수 있다. 예를 들어, 음성 입력부(110)는 사용자의 음성 신호를 수신하기 위한 마이크로 구현될 수 있다. 음성 입력부(110)는 전자 기기(100)에 내장되어 일체형을 이루거나, 분리된 형태로 구현될 수 있다.
저장부(160)에는 제어부(105)에서 사용하는 변환기(transform), 음향 모델(acoustic model, AM), 언어 모델(language model, LM)등을 포함할 수 있다.
제어부(105)는 음향 모델을 이용하여 수신된 음성 신호로부터 가설(hypothesis)를 생성할 수 있다. 그리고, 제어부(105)는 생성된 가설을 이용하여 사용자의 음성 특성이 반영된 최적 변환 파라미터를 추정할 수 있다. 최적 변환 파라미터를 갖는 변환기를 최적 변환기라 부른다.
제어부(105)는 추정된 최적 변환기 및 현재 음성 인식 단계에서 음향 모델의 파라미터를 변환하는데 사용된 변환기를 조합하여, 저장부(160)에 저장된 변환기의 복수의 변환 파라미터를 업데이트 할 수 있다.
제어부(105)는 저장부(160) 또는 내부 메모리에 저장된 프로그램 및 데이터를 이용하여 다양한 동작을 수행할 수 있다. 도 2의 실시 예에 따르면, 제어부(105)는 가설 생성부(120), 추정부(130), 적응부(140)와 같은 기능 모듈을 포함할 수 있다. 각 기능 모듈은 저장부(160) 또는 내부 메모리에 저장된 프로그램의 형태로 구현될 수도 있고, 각각 별도의 하드웨어 모듈로 구현될 수도 있다.
프로그램의 형태로 구현되는 경우, 제어부(105)는 RAM 또는 ROM 과 같은 메모리 및 이러한 메모리에 저장된 각 기능 모듈을 실행시켜, 가설 생성, 파라미터 추정, 변환기 업데이트 등과 같은 동작을 수행하는 프로세서를 포함할 수 있다.
이하에서는 설명의 편의를 위하여, 제어부(105)의 동작을 가설 생성부(120), 추정부(130) 및 적응부(140)의 동작으로 설명하기로 한다. 하지만, 반드시 각 기능 모듈로 구분되어 동작되는 것으로 한정되는 것은 아니다.
가설 생성부(120)는 수신된 사용자의 음성 신호로부터 가설(Hypotheses)를 생성할 수 있다. 예를 들어, 가설 생성부(120)는 매 사용자의 발화를 디코딩하여 가설을 생성할 수 있다. 본 발명의 일 실시 예에 따른 가설 생성부(120)는 사용자에게 특정 문장의 발화를 강요하는 등록 적응(supervised adaptation) 방식 대신, 사용자의 자유 발화를 이용하여 가설을 생성하는 무등록 적응(unsupervised adaptation) 방식을 사용한다.
예를 들어, 가설 생성부(120)는 사용자의 자유 발화된 음성 신호를 가중 유한 상태 트랜스듀서(Weighted Finite State Transducer, WFST) 기반 격자(lattice)로 디코딩할 수 있다. 또한, 가설 생성부(120)는 WFST 기반 격자를 이용하여 복수의 가설을 생성할 수 있다. 가설 생성부(120)는 생성된 복수의 가설 중 가장 확률이 높은 경로, 또는 one-best path를 따르는 경우를 기준 가설로 설정할 수 있다. 그리고, 가설 생성부(120)는 나머지 가설들은 경쟁 가설로 설정하여 향후 최적 변환기 추정에 이용할 수 있다.
변환기(transform)란 음향 모델(acoustic model, AM) 내부의 파라미터를 변환하는데 사용된다. 음향 모델은 수만에서 수천만개의 파라미터들로 구성되어 있다. 특정 화자나 특정 환경에 음향 모델을 적응시킬 시, 이러한 많은 수의 파라미터 전부를 직접 변경시키는 것은 효율적이지 못하다. 따라서, 전자 기기(100)는 변환기를 사용하여 적은 계산 량만을 가지고도 음향 모델을 적응시킬 수 있다.
예를 들어, 변환기는 음향 모델을 적게는 16개에서 1024개(그 이상도 가능)로 군집화(clustering)시킬 수 있다. 변환기는 군집화된 개수만큼 내부에 변화 파라미터를 갖게 된다. 즉, 변환기는 수천만개의 파라미터를 직접 변경하는 대신 천여개의 변환 파라미터를 변환시키는 것만으로 음향 모델을 적응시킬 수 있다.
본 발명의 일 실시 예에 따르면, 전자 기기(100)는 SR-MCELR 알고리즘을 이용하여 변환기의 최적 변환 파라미터를 추정할 수 있다. 추정된 최적 변환 파라미터를 갖는 변환기를 최적 변환기라 정의할 수 있다.
추정부(130)는 생성된 가설을 이용하여 사용자의 음성 특성(acoustic characteristic)이 반영된 최적 변환기(optimal transform)의 최적 변환 파라미터를 추정할 수 있다. 본 발명의 일 실시 예에 따른 전자 기기(100)는 10초 가량의 극소량의 사용자 음성 신호만을 이용하기 때문에 오버 피팅 문제가 발생할 수 있다. 이를 해결하기 위하여 추정부(130)는 이전 단계의 최적 변환기를 조정자(regularizer)로 사용할 수 있다.
예를 들어, 사용자의 이전 음성 입력이 존재하면, 이전 음성 입력에 대한 최적 변환기 및 생성된 가설을 이용하여, 추정부(130)는 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다. 이러한 과정을 통하여, 추정부(130)는 증분적으로 다음 음성 인식 단계에 현재의 최적 변환기의 정보를 전파(propagation)할 수 있다.
다른 예로, 최초로 사용자의 음성이 입력되는 경우라면, 이전 음성 입력에 대한 최적 변환기가 추정되지 않았기 때문에, 추정부(130)는 범용(global) 변환기를 이용하여 사용자의 최초 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다. 범용 변환기는 개발 단계에서 여러 화자(예를 들어, 수천 ~ 수만명)에 대해 추정한 변환기를 의미한다. 범용 변환기가 없으면 음향 모델 파라미터를 변환하는데 사용하는 축(pivot)이 없어 성능하락이 발생할 수 있다. 이러한 이유에서, 추정부(130)는 최초 음성 입력에 대해서는 여러 화자에 대한 평균치에 해당하는 범용 변환기를 사용할 수 있다. 범용 변환기는 전자 기기(100)의 제조 단계에서 기저장될 수도 있고, 대용량 음향 모델을 갖고 있는 클라우드 서버(200)와 같은 외부 기기로부터 수신할 수도 있다.
본 발명의 일 실시 예에 따른 추정부(130)는 트리구조 기반 선형변환 적응 알고리즘을 이용할 수 있다. 예를 들어, 추정부(130)는 SR-MCELR(structural regularized minimum classification error linear regression) 알고리즘을 이용할 수 있다. SR-MCELR 알고리즘은 기존의 적응 알고리즘(예를 들어, MLLR, MAPLR, MCELR, SMAPLR)과 비교할 때, 음성 인식 정확도 등에 있어 월등히 우수한 적응 성능을 보여주는 알고리즘이다.
SR-MCELR 알고리즘은 등록 적응 방식에 이용되도록 개발되었으며, 증분적 적응 시나리오가 고려되지 않은 static prior 방식으로 사용되었다. 하지만, 본 발명의 일 실시 예에 따른 전자 기기(100)는 SR-MCELR 알고리즘을 개선하여 미등록 적응 방식에 사용될 수 있도록 하였으며, 증분적 적응(incremental adaptation)이 가능하도록 하였다. 즉, 본 발명의 일 실시 예에 따른 전자 기기(100)에서는 dynamic prior 방식이 사용된다.
추정부(130)는 사용자의 최초 음성 입력인지 여부에 따라 선택된 변환기(예를 들어, 범용 변환기 또는 이전 음성 입력에 대한 최적 변환기)의 변환 파라미터 중 기준 가설에 대응되는 변환 파라미터를 증가시킬 수 있다. 또한, 추정부(130)는 선택된 변환기의 변환 파라미터 중 경쟁 가설에 대응되는 변환 파라미터를 감소시킬 수 있다.
적응부(140)는 증분적으로 현재 적응 단계에서 추정된 최적 변환기와 음원을 다음 적응 단계로 전파(propagation)할 수 있다. 예를 들어, 적응부(140)는 현재 사용되고 있는 변환기와 현재 음성 입력을 이용하여 추정된 최적 변환기를 조합하여, 다음 음성 인식 단계에서 사용될 변환기를 생성함으로써 변환기를 업데이트할 수 있다. 적응부(140)는 다음 적응 단계로 전파하는 과정에서 가중치(weight)를 추가하여 적응 밸런스(balance)를 조절할 수 있다. 예를 들어, 적응부(140)는 가설의 신뢰도를 측정하고, 측정된 신뢰도를 바탕으로, 현재 사용되고 있는 변환기와 현재 음성 입력을 이용하여 추정된 최적 변환기의 조합 비율을 결정할 수 있다. 이러한 과정을 통하여, 적응부(140)는 오버 피팅을 방지할 수 있다.
상술한 바와 같은 본 발명의 다양한 실시 예에 따른 전자 기기(100)를 통하여, 극소량의 실사용자 데이터만을 활용하더라도 고속으로 사용자의 음향 특성에 최적화된 음성인식이 가능할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 전자 기기(100)의 구성을 상세히 설명하기 위한 블럭도이다. 도 2를 참조하면, 전자 기기(100)는 음성 입력부(110), 제어부(105), 통신부(150), 저장부(160), 디스플레이부(170), 음성 출력부(180)을 포함할 수 있다. 그리고, 제어부(105)는 가설 생성부(120), 추정부(130), 적응부(140)를 포함할 수 있다.
음성 입력부(110)는 사용자의 음성 신호를 수신할 수 있다. 예를 들어, 음성 입력부(110)는 사용자의 음성 신호를 수신하기 위한 마이크로 구현될 수 있다. 음성 입력부(110)는 전자 기기(100)에 내장되어 일체형을 이루거나, 분리된 형태로 구현될 수 있다.
또한, 음성 인식부(110)는 수신된 사용자의 음성 신호를 처리할 수 있다. 예를 들어, 음성 인식부(110)는 사용자의 음성에서 노이즈를 제거할 수 있다.
구체적으로, 음성 인식부(110)는 아날로그 형태의 사용자 음성이 입력되면, 이를 샘플링하여 디지털 신호로 변환할 수 있다. 그리고, 음성 인식부(110)는 변환된 디지털 신호의 에너지를 계산하여, 디지털 신호의 에너지가 기설정된 값 이상인지 여부를 판단할 수 있다.
디지털 신호의 에너지가 기설정된 값 이상인 경우, 음성 인식부(110)는 디지털 신호에서 노이즈 성분을 제거하여 가설 생성부(120), 추정부(130) 등에 전달할 수 있다. 예를 들어, 노이즈 성분은 가정 환경에서 발생할 수 있는 돌발성 잡음로써, 에어컨 소리, 청소기 소리, 음악 소리 등이 포함될 수 있다. 한편, 디지털 신호의 에너지가 기설정된 값 미만인 경우, 음성 입력부(110)는 디지털 신호에 별다른 처리 과정을 수행하지 않고, 다른 입력을 기다린다. 이에 의해, 사용자 발화 음성이 아닌 다른 소리에 의해 전체 오디오 처리 과정이 활성화되지 않아, 불필요한 전력 소모를 방지할 수 있다.
가설 생성부(120), 추정부(130) 및 적응부(140)에 대한 설명은 이하에서 도 3 내지 도 7을 참조하여 다시 설명하기로 한다.
통신부(150)는 클라우드 서버(200)와 같은 외부 기기와 통신을 수행한다. 예를 들어, 통신부(150)는 클라우드 서버(200)에 변환기 및 사용자의 음성 신호를 전송하고, 대응되는 응답 정보를 클라우드 서버(200)로부터 수신할 수 있다.
이를 위해, 통신부(150)는 근거리 무선 통신 모듈(미도시), 무선 통신 모듈(미도시) 등과 같은 다양한 통신 모듈을 포함할 수 있다. 여기에서, 근거리 무선 통신 모듈이란 블루투스, 지그비 방식 등과 같은 근거리 무선 통신 방식에 따라, 근거리에 위치한 외부 기기와 통신을 수행하기 위한 모듈이다. 또한, 무선 통신 모듈이란 WiFi, IEEE 등과 같은 무선 통신 프로토콜에 따라 외부 네트워크에 연결되어 통신을 수행하는 모듈이다. 이 밖에 무선 통신 모듈은 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution), LTE-A(LTE Advanced) 등과 같은 다양한 이동 통신 규격에 따라 이동 통신망에 접속하여 통신을 수행하는 이동 통신 모듈을 더 포함할 수도 있다.
저장부(160)는 가설 생성부(120) 등에서 사용하는 음향 모델(AM), 언어 모델(language model, LM)등을 포함할 수 있다. 저장부(160)는 전자 기기(100)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로서, 메모리, HDD(Hard Disk Drive) 등으로 구현 가능하다. 예를 들어, 저장부(160)는 전자 기기(100)의 동작 수행을 위한 프로그램을 저장하기 위한 ROM, 전자 기기(100)의 동작 수행에 따른 데이터를 일시적으로 저장하기 위한 RAM 등을 구비할 수 있다. 또한, 각종 참조 데이터를 저장하기 위한 EEROM(Electrically Erasable and Programmable ROM) 등을 더 구비할 수 있다.
다른 예로, 저장부(160)는 사용자의 음성에 대응되는 각종 응답 메시지를 음성 또는 텍스트 데이터로 기저장하고 있을 수 있다. 전자 기기(100)는 수신된 사용자 음성(특히, 사용자 제어 명령)에 대응되는 음성 및 텍스트 데이터 중 적어도 하나를 저장부(160)로부터 독출하여 디스플레이부(170) 또는 음성 출력부(180)로 출력할 수도 있다.
본 발명의 다른 실시 예에 따른 전자 기기(100)는 대화형 음성 인식 기능을 제공하기 위한 출력부로 디스플레이부(170) 또는 음성 출력부(180)를 포함할 수 있다.
디스플레이부(170)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현되어, 전자 기기(100)를 통해 제공 가능한 다양한 디스플레이 화면을 제공할 수 있다. 특히, 디스플레이부(170)는 사용자의 음성에 대응되는 응답 메시지를 텍스트 또는 이미지로 디스플레이할 수 있다.
오디오 출력부(180)는 잭 등과 같은 출력 포트 또는 스피커로 구현되어, 사용자 음성에 대응되는 응답 메시지를 음성으로 출력할 수 있다.
가설 생성부(120)는 매 사용자의 발화에 대해 음소 단위로 가설을 생성할 수 있다. 생성된 가설은 이후의 적응 수행 과정에서 사용된다. 적응 수행 과정에서 사용되는 가설의 질은 최종 적응 성능을 결정하는 매우 중요한 정보에 해당한다.
추정부(130)는 증분적 적응(incremental adaptation)을 위하여 이전 적응 단계의 최적 변환기를 이용한다. 만일 사용자의 발화가 처음 입력되는 경우(예를 들어, 최초로 전자 기기(100)에 전원 인가한 경우, 사용자 추가 등록의 경우)에 해당하면, 추정부(130)는 범용 변환기를 대신 이용할 수 있다. 예를 들어, 추정부(130)는 사용자의 음성 입력이 최초로 이루어진 것인지 판단하여, 현재 음성 입력에서의 최적 변환기 추정에 이용할 변환기를 선택할 수 있다. 추정부(130)는 선택된 변환기를 선행 정보(prior information)로 이용할 수 있다.
또한, 추정부(130)는 선행 정보 및 트리구조 알고리즘을 이용하여 오버 피팅을 방지하면서 최적 변환기를 추정할 수 있다. 예를 들어, 추정부(130)는 자유 발화를 통해 추출된 특징 파라미터를 기설정된 기준 파라미터와 비교하여 적응 파라미터를 추정할 수 있다.
적응부(140)는 현재 적응 단계의 최적 변환기와 적응 발화를 증분적으로 다음 적응 단계로 연결해주는 기능을 수행한다. 예를 들어, 적응부(140)는 전파 가중치를 산출하여 적응 속도를 조절할 수 있다.
이하에서는 도 3 내지 도 7을 참조하여, 가설 생성부(120), 추정부(130) 및 적응부(140)의 동작을 보다 상세히 설명하기로 한다.
도 3 및 도 4는 본 발명의 일 실시 예에 따른 전자 기기(100)의 기능을 설명하기 위한 개념도이다.
도 3을 참조하여, 본 발명의 일 실시 예에 따른 전자 기기(100)의 한 사이클의 음향 모델 적응 과정을 개략적으로 설명하기로 한다.
우선 음성 입력부(110)는 특정 사용자의 음성 신호를 수신한다. 그리고, 음성 입력부(110)는 프론트엔드(Front-End, FE) 처리하여, 음성 신호 X를 추출할 수 있다. 예를 들어, X는 단일 음소일 수 있다.
이후, 가설 생성부(120)는 음향 모델(AM) 및 변환기(W1)를 이용하여 가설을 생성할 수 있다. 구체적으로, 가설 생성부(120)는 변환기(W1)의 변환 파라미터에 의해 파라미터가 변환된 음향 모델을 이용하여 가설을 생성할 수 있다. 만일, 사용자의 음성 입력이 최초로 이루어진 경우라면, 추정부(130)에서 선택한 변환기(W1)은 범용 변환기일 수 있다. 반대로, 이전 사용자의 음성 입력이 존재하면, 추정부(130)에서 선택한 변환기(W1)는 이전 음성 신호에서 추정한 최적 변환기일 수 있다. 전자 기기(100)는 이렇게 선택된 변환기(W1)를 조정자(regularizer)로 사용하여 오버 피팅을 방지할 수 있다.
추정부(130)는 선택된 변환기(W1) 및 생성된 가설을 이용하여 현재 음성 입력에서의 최적 변환기(W1')의 최적 변환 파라미터를 추정할 수 있다.
적응부(140)는 이전 단계의 변환기(W1)와 현재 음성 입력에 대해 추정된 최적 변환기(W1')에 각각 가중치(μ1, μ1')를 부여하여, 증분적으로 변환기를 업데이트할 수 있다(W1 -> W2).
다음에 재차 사용자의 음성이 입력되면, 전자 기기(100)는 음향 모델 및 업데이트된 변환기(W2)를 이용하여 음성 인식을 수행하게 된다.
상술한 바와 같은 음향 모델 적응 과정을 통하여, 도 4에 도시된 것과 같이, 전자 기기(100)는 범용 음향 모델을 화자 종속형 음향 모델로 적응시킬 수 있다. 이를 통해, 사용자 별 발음 습관이나 특성을 반영할 수 있게 되므로, 사용자별로 인식률이 상이하게 나타나는 문제점을 해결할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 전자 기기(100)가 WFST 기반 격자(lattice)를 이용하여 가설을 생성하는 것을 설명하기 위한 도면이다. WFST 기반 음성 인식 디코더는 통합된 트랜스듀서로부터 가중치 기반 확률이 가장 높은 경로(path)를 찾고, 이 경로로부터 최종적인 인식 단어열을 얻게 된다. 예를 들어, 격자의 원형이 되는 각 FST는 음소로 구성될 수 있다. 이에 따라, 가설을 생성하는 적응 과정에서 음소 단위의 격자가 사용될 수 있다.
통합된 트랜스듀서를 얻기 위해서는 결합(composition), 결정화(determination), 최소화(minimization) 알고리즘이 적용될 수 있다. 도 5는 통합된 트랜스듀서를 도시한 일 예이다. 가설 생성부(120)는 통합된 트랜스듀서의 경로들로부터 복수의 가설을 생성할 수 있다. 가설 생성부(120)는 복수의 가설 중 가장 확률이 높은 가설을 기준 가설로 설정할 수 있다. 그리고, 가설 생성부(120)는 나머지 가설들을 폐기하는 대신에 경쟁 가설로 설정하여 이후의 적응 과정에 이용할 수 있다.
도 6은 본 발명의 일 실시 예에 따른 전자 기기(100)에서의 변환기 선택을 설명하기 위한 도면이다. 예를 들어, 추정부(130)는 트리 구조의 SR-MCELR 알고리즘을 이용하여 선행 정보(prior information)으로 이용할 이전 단계의 변환기를 선택할 수 있다. 특정 노드에서 측정된 변환기는 이들의 자녀 노드들(child nodes)의 측정을 제약(constrain)하는 유용한 정보를 제공할 수 있다. 예를 들어, 부모 노드(parent node)의 사후 분포(posterior distribution)은 자녀 노드들(child node)의 사전 분포(prior distribution)으로 이용될 수 있다. 도 6을 예로 들면, 노드 ①의 사후 분포 P(W1|X1)은 노드 ②의 사전 분포 P(W2)에 해당한다. 마찬가지로, 노드 ④의 사전 분포 P(W4)는 노드 ②의 사후 분포 P(W2|X2)에 해당한다.
추정부(130)는 기설정된 임계 값(threshold)와 각 적응 데이터의 사후 확률 값을 비교하여, 선행 변환기(prior transform)의 전파(propagation) 여부를 결정할 수 있다. 예를 들어, 기설정된 임계 값보다 사후 확률 값이 큰 것으로 판단된 노드 ①, ②, ④, ⑤의 경우에, 추정부(130)는 전 단계의 선행 변환기를 전파시켜 조정자(regularizer)로 이용할 수 있다. 반대로, 노드 ⑥의 경우에, 추정부(130)는 노드 ①의 W1을 선행 변환기로 이용하게 된다.
한편, 추정부(130)는 각 노드에서 MCE(minimum classification error) 알고리즘을 이용하여 변환기의 파라미터 값을 추정할 수 있다. 추정부(130)는 선행 변환기의 변환 파라미터 중 기준 가설에 대응되는 변환 파라미터는 증가시키고, 경쟁 가설에 대응되는 변환 파라미터는 감소시킴으로써, 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다. 즉, 가설 생성부(120)에서 생성된 기준 가설 및 경쟁 가설은 MCE 최적화 과정에서 입력으로 들어가 변별성을 높이는 방향으로 변환 파라미터를 추정하는데 이용된다.
적응부(140)는 증분적으로 현재 적응 단계에서 추정된 최적 변환기와 음원을 다음 적응 단계로 전파시킬 수 있다. 또한, 적응부(140)는 다음 적응 단계로 전파시킬 때 가중치를 부가하여 음향 모델 적응 과정의 밸런스를 조정할 수 있다. 즉, 적응부(140)는 현재 단계의 솔루션이 다음 단계의 솔루션에 어느 정도 영향을 미칠지를 결정하는 역할을 수행한다.
적응부(140)는 전파 가중치 임계 값(propagation weight threshold)을 통해, 생성된 가설의 신뢰도를 측정할 수 있다. 그리고, 적응부(140)는 측정된 신뢰도를 바탕으로 전파 가중치(propagation weight)를 부가하여, 선행 변환기와 추정된 최적 변환기의 조합 비율을 결정할 수 있다.
예를 들어, 적응부(140)는 다음의 3가지 방식의 스코어를 조합하여 신뢰도를 측정할 수 있다. 첫째로, 인식 결과의 각 음소마다 타겟 모델 스코어와 배경 모델 스코어의 차이를 구할 수 있다. 둘째로, WFST 격자에서 각 음소마다의 사후 확률 값을 측정할 수 있다. 셋째로, 인식에 사용된 격자를 혼돈 네트워크(confusion network)로 변환하여 음소별 혼돈 스코어를 부여할 수 있다. 이들 세가지 측정된 스코어를 조합하고 정규화(normalization)하여 최종적으로 0에서 1사이의 음소별 신뢰도 값을 측정할 수 있다. 신뢰도 값이 클수록 특정 사용자의 발화와 음소가 일치하는 것이며, 신뢰도 값이 낮을수록 특정 사용자의 발화와 음소의 차이가 크다는 것을 의미한다.
도 7은 본 발명의 일 실시 예에 따른 전자 기기(100)에서, 사용자의 음성 입력에 따라 증분적으로 음향 모델이 적응됨을 설명하기 위한 도면이다. 도 7에서는 사용자의 첫 발화 및 두번째 발화까지만을 도시하였다.
사용자의 최초 음성 발화 전에는 제조 단계에서 기 저장된 음향 모델(AM0)과 범용 변환기(W0)가 존재하는 것을 알 수 있다. 사용자의 첫 발화가 입력되면, 전자 기기(100)는 사용자의 현재 발화로부터 최적 변환기(W1)의 최적 변환 파라미터를 추정할 수 있다. 그리고, 가중치(μ0, μ1)를 결정하여 다음 적응 단계에서 사용할 변환기(W2)를 결정할 수 있다. 그리고, 전자 기기(100)는 결정된 변환기(W2)를 통해, 음향 모델의 파라미터 역시 업데이트 할 수 있다(AM0 -> AM1).
사용자의 두 번째 발화가 입력되면, 전자 기기(100)는 전 단계에서 증분적으로 적응된 음향 모델(AM1) 및 전 단계의 최적 변환기(W2)를 이용하여 적응 과정을 수행할 수 있다. 마찬가지로, 사용자의 현재 발화(두번째 발화)로부터 최적 변환기 W3의 최적 변환 파라미터를 추정할 수 있다. 그리고, 가중치(μ2, μ3)를 결정하여 다음 적응 단계에서 사용할 변환기(W4)를 결정할 수 있다. 그리고, 전자 기기(100)는 결정된 변환기(W4)를 통해, 음향 모델의 파라미터 역시 업데이트 할 수 있다(AM1 -> AM2).
상술한 바와 같은 다양한 실시 예에 따른 전자 기기(100)를 통하여, 극소량의 실사용자 데이터만을 활용하여 고속으로 사용자 및 사용자 환경의 음향 특성(acoustic characteristic)에 음향 모델을 적응시킬 수 있다. 이를 통하여, 음성 인식 성능 및 사용성이 극대화되는 효과가 발생한다. 또한, 빠른 최적화로 전자 기기를 이용하는 사용자의 음성 인식 서비스 이용에의 이탈을 방지할 수 있으며, 음성 인식 기능의 재사용을 지속적으로 유도할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 음성 인식 시스템(1000)을 도시한 개념도이다. 도 8을 참조하면, 음성 인식 시스템(1000)은 디스플레이 기기, 모바일 기기 등으로 구현될 수 있는 전자 기기(100) 및 클라우드 서버(200)를 포함할 수 있다.
본 발명의 일 실시 예에 따른 음성 인식 시스템(1000)에서는 음향 모델을 직접 변경하는 것이 아닌, 소용량(예를 들어, 100 kB 이하)의 변환기를 생성하여 사용자별로 음향 모델을 최적화시키는 방법을 이용한다.
예를 들어, 음성 인식 시스템(1000)은 소용량의 어휘를 인식하는데 사용되는 엠베디드 음성 인식 엔진 및 사용자의 최적 변환기를 생성하고 업데이트하는 구성을 포함하는 전자 기기(100)를 포함할 수 있다. 또한, 음성 인식 시스템(1000)은 대용량의 어휘를 인식하는데 사용되는 서버 음성인식 엔진을 포함하는 클라우드 서버(200)를 포함할 수 있다.
본 발명의 일 실시 예에 따른 음성 인식 시스템(1000)에서는, 전자 기기(100)에서 입력받은 사용자의 음성 특성을 반영한 변환기를 생성하여 클라우드 서버(200)로 전송하고, 클라우드 서버(200)에서는 전송받은 변환기를 저장된 대용량의 음향 모델(AM), 언어 모델(LM) 등을 이용하여 음성 인식을 수행할 수 있다. 이를 통해, 음성 인식 시스템(1000)은 전자 기기(100)와 클라우드 서버(200)를 각각 사용할 때의 장점만을 취할 수 있다. 음성 인식 시스템(1000)의 구체적인 동작에 대해서는 아래에서 도 11을 참조하여 다시 설명하기로 한다.
이하에서는 도 9 및 도 10을 참조하여, 본 발명의 다양한 실시 예에 따른 전자 기기(100)의 음향 모델 적응 방법을 설명하기로 한다.
도 9는 본 발명의 일 실시 예에 따른 전자 기기(100)의 음향 모델 적응 방법을 설명하기 위한 흐름도이다. 우선 전자 기기(100)는 사용자의 음성 신호를 수신한다(S910). 정해진 단어나 문장을 읽어 등록을 하는 방식을 사용하지 않고, 전자 기기(100)는 사용자의 자유 발화를 이용하여 무등록 적응(unsupervised adaptation) 방식으로 음향 모델을 적응시킬 수 있다.
그리고, 전자 기기(100)는 변환기의 변환 파라미터에 의해 파라미터가 변환된 음향 모델을 이용하여, 수신된 음성 신호로부터 가설을 생성한다(S920). 예를 들어, 전자 기기(100)는 WFST 격자 기반에서 가장 확률이 높은 경로로부터 기준 가설을 생성할 수 있다. 또한, 전자 기기(100)는 기준 가설 이외의 경로를 경쟁 가설로 생성하여 이후의 적응 과정에 이용할 수도 있다.
이어서, 전자 기기(100)는 선행 변환기와 생성된 가설을 이용하여 사용자의 음성 특성이 반영된 최적 변환기의 최적 변환 파라미터를 추정할 수 있다(S930). 이전 단계의 선행 변환기를 이용함으로써, 전자 기기(100)는 변환 파라미터 추정 시에 오버 피팅의 우려를 극복할 수 있다.
그리고, 전자 기기(100)는 선행 변환기와 현재 음성 입력에 대해 추정된 최적 변환기에 가중치를 부가하는 방식으로 두 변환기를 조합하여 변환기의 변환 파라미터를 업데이트 할 수 있다(S940).
도 10은 본 발명의 다른 실시 예에 따른 전자 기기(100)의 음향 모델 적응 방법을 설명하기 위한 흐름도이다. 우선 전자 기기(100)는 사용자가 인지되었는지 판단한다(S1010). 예를 들어, 전자 기기(100)가 처음으로 동작하는 경우나 사용자 추가 등록과 같은 경우가 사용자를 인지한 경우에 해당할 수 있다.
사용자가 인지되면(S1010-Y), 전자 기기(100)는 사용자의 자유 발화된 음성 신호를 수신한다(S1020). 즉, 본 발명의 일 실시 예에 따른 전자 기기(100)의 음향 모델 적응 방법은 강제 등록 단계를 거치지 않게 된다.
그리고, 전자 기기(100)는 변환기의 변환 파라미터에 의해 파라미터가 변환된 음향 모델을 이용하여 가설을 생성할 수 있다(S1030). 예를 들어, 전자 기기(100)는 수신된 음성 신호에 대응되는 복수의 가설을 생성할 수 있다. 그리고, 전자 기기(100)는 생성된 복수의 가설 중 가장 확률이 높은 가설을 기준 가설로 설정할 수 있다. 또한, 전자 기기(100)는 나머지 가설들은 폐기하지 않고 경쟁 가설로 설정하여 이후의 과정에서 이용할 수 있다.
전자 기기(100)는 사용자의 음성 입력이 처음 이루어진 것인지 판단한다(S1040). 예를 들어, 사용자를 추가 등록하고 처음 발화하는 경우가 사용자의 음성 입력이 처음 이루어진 경우에 해당할 수 있다. 만일, 사용자의 음성 입력이 처음 이루어진 것이라면(S1040-Y), 해당 사용자의 참고할만한 선행 정보(prior information)이 존재하지 않기 때문에, 전자 기기(100)는 조정자(regularizer)로서 범용 변환기를 선택할 수 있다(S1050). 반대로, 사용자의 이전 음성 입력이 존재한다면(S1040-N), 전자 기기(100)는 이전 음성 입력에 대한 최적 변환기를 선택할 수 있다(S1060).
이어서, 전자 기기(100)는 선택된 변환기 및 생성된 가설들을 이용하여, 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수 있다(S1070). 예를 들어, 전자 기기(100)는 이전 음성 입력에 대한 최적 변환기의 변환 파라미터 중 기준 가설에 대응되는 변환 파라미터를 증가시키고, 경쟁 가설에 대응되는 변환 파라미터는 감소시키는 방식으로, 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정할 수도 있다.
최적 변환기를 추정한 이후, 전자 기기(100)는 신뢰도를 측정하여 선행 변환기(prior transform)와 추정된 최적 변환기의 조합 비율을 결정할 수 있다(S1080). 전파 가중치를 부여함으로써, 전자 기기(100)는 최적화 알고리즘의 수렴 퀄리티를 향상시키고, 모델의 오버 피팅 문제를 완화시킬 수 있다.
전자 기기(100)는 이와 같은 과정을 통하여 변환기의 변환 파라미터를 업데이트시킬 수 있다(S1090). 전자 기기(100)는 업데이트된 변환기를 다음 사용자의 음성 신호를 분석하는데 사용함으로써 증분적으로 음향 모델을 특정 사용자에 적합하도록 적응시킬 수 있다.
도 11은 본 발명의 일 실시 예에 따른 음성 인식 시스템(1000)의 동작을 설명하기 위한 시퀀스도이다.
전자 기기(100) 및 클라우드 서버(200)는 각각 사용자의 음성 신호를 수신할 수 있다(S1110, S1120). 다른 예로, 전자 기기(100)에서 사용자의 음성 신호를 수신하여 클라우드 서버(200)로 전송할 수도 있다.
전자 기기(100)는 수신된 사용자의 음성을 이용하여 가설을 생성하고(S1130), 사용자의 특성이 반영된 변환기를 생성할 수 있다(S1140). 즉, 전자 기기(100)는 사용자별로 사용자의 음향 특성이 반영된 변환기를 생성하고 변환기의 변환 파라미터를 업데이트 할 수 있다. 전자 기기(100)는 생성한 변환기를 클라우드 서버(200)로 전송할 수 있다(S1150).
클라우드 서버(200)는 대용량의 음향 모델을 저장하고 있을 수 있다. 클라우드 서버(200)는 저장된 음향 모델 및 수신된 변환기를 이용하여 사용자의 음성을 인식할 수 있다(S1160). 클라우드 서버(200)는 대용량의 음성 인식 엔진을 가질 수 있고, 처리 능력이 전자 기기(100)에 비해 뛰어나기 때문에, 음성 인식 기능을 클라우드 서버(200)에서 수행하는 것이 장점이 될 수 있다.
이어서, 클라우드 서버(200)는 음성 인식 결과를 전자 기기(100)로 전송하여 사용자의 음성 입력에 대응되는 동작을 수행하도록 할 수 있다(S1170).
상기에서 설명된 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기의 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시 예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시 예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 전자 기기
105: 제어부
110: 음성 입력부 120: 가설 생성부
130: 추정부 140: 적응부
150: 통신부 160: 저장부
200: 클라우드 서버 1000: 음성 인식 시스템
110: 음성 입력부 120: 가설 생성부
130: 추정부 140: 적응부
150: 통신부 160: 저장부
200: 클라우드 서버 1000: 음성 인식 시스템
Claims (17)
- 전자 기기에 있어서,
사용자의 음성 신호를 수신하는 음성 입력부;
복수의 변환 파라미터를 가지는 변환기 및 상기 변환기에 의해 변환된 파라미터를 가지는 음향 모델이 저장된 저장부; 및
상기 음향 모델을 이용하여, 상기 수신된 음성 신호로부터 가설(hypothesis)을 생성하고, 상기 가설을 이용하여 상기 사용자의 음성 특성이 반영된 최적 변환 파라미터를 갖는 최적 변환기를 추정하는 제어부;를 포함하며,
상기 제어부는,
상기 추정된 최적 변환기 및 상기 변환기를 조합하여, 상기 저장부에 저장된 상기 변환기의 복수의 변환 파라미터를 업데이트하는 전자 기기. - 제1항에 있어서,
상기 제어부는,
상기 사용자의 음성 입력이 최초 입력이면, 범용(global) 변환기 및 상기 생성된 가설을 이용하여 상기 최적 변환기를 추정하는 것을 특징으로 하는 전자 기기. - 제1항에 있어서,
상기 제어부는,
상기 사용자의 이전 음성 입력이 존재하면, 상기 이전 음성 입력에 대한 최적 변환기 및 상기 생성된 가설을 이용하여 현재 음성 입력에 대한 최적 변환기를 추정하는 것을 특징으로 하는 전자 기기. - 제3항에 있어서,
상기 제어부는,
상기 수신된 음성 신호에 대해 상기 가설을 복수 개로 생성하고, 복수의 가설들 중 상기 음성 신호화의 매칭 확률이 가장 높은 가설을 기준 가설로 설정하고, 나머지 가설을 경쟁 가설로 설정하는 것을 특징으로 하는 전자 기기. - 제4항에 있어서,
상기 제어부는,
상기 이전 음성 입력에 대한 최적 변환기의 변환 파라미터 중 상기 기준 가설에 대응되는 변환 파라미터를 증가시키고, 상기 경쟁 가설에 대응되는 변환 파라미터를 감소시켜, 상기 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정하는 것을 특징으로 하는 전자 기기. - 제1항에 있어서,
상기 제어부는,
상기 생성된 가설의 신뢰도를 측정하고,
상기 측정된 신뢰도를 바탕으로, 상기 변환기와 상기 최적 변환기의 조합 비율을 결정하는 것을 특징으로 하는 전자 기기. - 제1항에 있어서,
상기 제어부는,
사용자의 자유 발화를 이용하여 가설을 생성하는 것을 특징으로 하는 전자 기기. - 제1항에 있어서,
상기 수신된 사용자의 음성 신호의 음소 단위마다, 상기 변환기의 변환 파라미터를 업데이트하는 것을 특징으로 하는 전자 기기. - 전자 기기의 음향 모델 적응 방법에 있어서,
사용자의 음성 신호를 수신하는 단계;
복수의 변환 파라미터를 가지는 변환기에 의해 파라미터가 변환된 음향 모델을 이용하여, 상기 수신된 음성 신호로부터 가설을 생성하는 단계;
상기 가설을 이용하여 상기 사용자의 음성 특성이 반영된 최적 변환 파라미터를 갖는 최적 변환기를 추정하는 단계; 및
상기 추정된 최적 변환기 및 상기 변환기를 조합하여, 상기 변환기의 복수의 변환 파라미터를 업데이트하는 단계;를 포함하는 적응 방법. - 제9항에 있어서,
상기 추정하는 단계는,
상기 사용자의 음성 입력이 최초 입력이면, 범용(global) 변환기 및 상기 생성된 가설을 이용하여 상기 최적 변환기를 추정하는 것을 특징으로 하는 적응 방법. - 제9항에 있어서,
상기 추정하는 단계는,
상기 사용자의 이전 음성 입력이 존재하면, 상기 이전 음성 입력에 대한 최적 변환기 및 상기 생성된 가설을 이용하여 현재 음성 입력에 대한 최적 변환기를 추정하는 것을 특징으로 하는 적응 방법. - 제11항에 있어서,
상기 생성하는 단계는,
수신된 음성 신호에 대해 상기 가설을 복수 개로 생성하는 단계; 및
복수의 가설들 중 상기 음성 신호와의 매칭 확률이 가장 높은 가설을 기준 가설로 설정하고, 나머지 가설을 경쟁 가설로 설정하는 단계;를 포함하는 것을 특징으로 하는 적응 방법. - 제12항에 있어서,
상기 추정하는 단계는,
상기 이전 음성 입력에 대한 최적 변환기의 변환 파라미터 중 상기 기준 가설에 대응되는 변환 파라미터를 증가시키고, 상기 경쟁 가설에 대응되는 변환 파라미터를 감소시켜, 상기 현재 음성 입력에 대한 최적 변환기의 최적 변환 파라미터를 추정하는 것을 특징으로 하는 적응 방법. - 제9항에 있어서,
상기 업데이트하는 단계는,
상기 생성된 가설의 신뢰도를 측정하는 단계; 및
상기 측정된 신뢰도를 바탕으로, 상기 변환기와 상기 최적 변환기의 조합 비율을 결정하는 단계;를 포함하는 것을 특징으로 하는 적응 방법. - 제9항에 있어서,
상기 생성하는 단계는,
사용자의 자유 발화를 이용하여 가설을 생성하는 것을 특징으로 하는 적응 방법. - 제9항에 있어서,
상기 수신된 사용자의 음성 신호의 음소 단위마다, 상기 변환기의 변환 파라미터를 업데이트하는 것을 특징으로 하는 적응 방법. - 음성 인식 시스템에 있어서,
음향 모델을 저장하는 클라우드 서버; 및
사용자의 음성 신호를 수신하고, 상기 수신된 음성 신호를 이용하여 가설을 생성하며, 상기 사용자의 음성 특성이 반영된 변환기를 추정하고, 상기 추정된 변환기를 상기 클라우드 서버에 전송하는 전자 기기;를 포함하고,
상기 클라우드 서버는,
상기 저장된 음향 모델 및 상기 수신된 변환기를 이용하여 상기 사용자의 음성을 인식하고, 상기 인식된 결과를 상기 전자 기기로 전송하는 음성 인식 시스템.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150146417A KR20170046291A (ko) | 2015-10-21 | 2015-10-21 | 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 |
PCT/KR2016/011885 WO2017069554A1 (ko) | 2015-10-21 | 2016-10-21 | 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 |
US15/765,842 US20180301144A1 (en) | 2015-10-21 | 2016-10-21 | Electronic device, method for adapting acoustic model thereof, and voice recognition system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150146417A KR20170046291A (ko) | 2015-10-21 | 2015-10-21 | 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170046291A true KR20170046291A (ko) | 2017-05-02 |
Family
ID=58557297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150146417A KR20170046291A (ko) | 2015-10-21 | 2015-10-21 | 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20180301144A1 (ko) |
KR (1) | KR20170046291A (ko) |
WO (1) | WO2017069554A1 (ko) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018086033A1 (en) * | 2016-11-10 | 2018-05-17 | Nuance Communications, Inc. | Techniques for language independent wake-up word detection |
US10831366B2 (en) | 2016-12-29 | 2020-11-10 | Google Llc | Modality learning on mobile devices |
CN108389577B (zh) * | 2018-02-12 | 2019-05-31 | 广州视源电子科技股份有限公司 | 优化语音识别声学模型的方法、系统、设备及存储介质 |
CN108831484A (zh) * | 2018-05-29 | 2018-11-16 | 广东声将军科技有限公司 | 一种离线的且与语言种类无关的声纹识别方法及装置 |
KR102225984B1 (ko) * | 2018-09-03 | 2021-03-10 | 엘지전자 주식회사 | 음성 인식 서비스를 제공하는 서버 |
US11004454B1 (en) * | 2018-11-06 | 2021-05-11 | Amazon Technologies, Inc. | Voice profile updating |
US11200884B1 (en) * | 2018-11-06 | 2021-12-14 | Amazon Technologies, Inc. | Voice profile updating |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3216565B2 (ja) * | 1996-08-02 | 2001-10-09 | 日本電信電話株式会社 | 音声モデルの話者適応化方法及びその方法を用いた音声認識方法及びその方法を記録した記録媒体 |
US6112175A (en) * | 1998-03-02 | 2000-08-29 | Lucent Technologies Inc. | Speaker adaptation using discriminative linear regression on time-varying mean parameters in trended HMM |
KR100307623B1 (ko) * | 1999-10-21 | 2001-11-02 | 윤종용 | 엠.에이.피 화자 적응 조건에서 파라미터의 분별적 추정 방법 및 장치 및 이를 각각 포함한 음성 인식 방법 및 장치 |
JP2002366187A (ja) * | 2001-06-08 | 2002-12-20 | Sony Corp | 音声認識装置および音声認識方法、並びにプログラムおよび記録媒体 |
US7693713B2 (en) * | 2005-06-17 | 2010-04-06 | Microsoft Corporation | Speech models generated using competitive training, asymmetric training, and data boosting |
US7725316B2 (en) * | 2006-07-05 | 2010-05-25 | General Motors Llc | Applying speech recognition adaptation in an automated speech recognition system of a telematics-equipped vehicle |
US8301449B2 (en) * | 2006-10-16 | 2012-10-30 | Microsoft Corporation | Minimum classification error training with growth transformation optimization |
US9043209B2 (en) * | 2008-11-28 | 2015-05-26 | Nec Corporation | Language model creation device |
KR20130059476A (ko) * | 2011-11-28 | 2013-06-07 | 한국전자통신연구원 | 음성 인식용 탐색 공간 생성 방법 및 장치 |
-
2015
- 2015-10-21 KR KR1020150146417A patent/KR20170046291A/ko unknown
-
2016
- 2016-10-21 WO PCT/KR2016/011885 patent/WO2017069554A1/ko active Application Filing
- 2016-10-21 US US15/765,842 patent/US20180301144A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20180301144A1 (en) | 2018-10-18 |
WO2017069554A1 (ko) | 2017-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11676575B2 (en) | On-device learning in a hybrid speech processing system | |
KR20170046291A (ko) | 전자 기기, 그의 음향 모델 적응 방법 및 음성 인식 시스템 | |
US11475881B2 (en) | Deep multi-channel acoustic modeling | |
US12125483B1 (en) | Determining device groups | |
US12014726B2 (en) | Language model adaptation | |
US11132509B1 (en) | Utilization of natural language understanding (NLU) models | |
CN107660303B (zh) | 使用远程源对本地语音识别系统的语言模型修改 | |
US9070367B1 (en) | Local speech recognition of frequent utterances | |
JP6317111B2 (ja) | ハイブリッド型クライアントサーバ音声認識 | |
US8554559B1 (en) | Localized speech recognition with offload | |
US8589164B1 (en) | Methods and systems for speech recognition processing using search query information | |
US10984799B2 (en) | Hybrid speech interface device | |
US8996366B2 (en) | Multi-stage speaker adaptation | |
US11258671B1 (en) | Functionality management for devices | |
US11158307B1 (en) | Alternate utterance generation | |
US10685664B1 (en) | Analyzing noise levels to determine usability of microphones | |
US11705116B2 (en) | Language and grammar model adaptation using model weight data | |
US11727926B1 (en) | Systems and methods for noise reduction | |
US12125489B1 (en) | Speech recognition using multiple voice-enabled devices | |
US20240013784A1 (en) | Speaker recognition adaptation | |
US11044567B1 (en) | Microphone degradation detection and compensation | |
US10923122B1 (en) | Pausing automatic speech recognition | |
JP2021033051A (ja) | 情報処理装置、情報処理方法およびプログラム | |
Loh et al. | Speech recognition interactive system for vehicle | |
CN112863496A (zh) | 一种语音端点检测方法以及装置 |