KR20170134115A - Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 - Google Patents
Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 Download PDFInfo
- Publication number
- KR20170134115A KR20170134115A KR1020160065908A KR20160065908A KR20170134115A KR 20170134115 A KR20170134115 A KR 20170134115A KR 1020160065908 A KR1020160065908 A KR 1020160065908A KR 20160065908 A KR20160065908 A KR 20160065908A KR 20170134115 A KR20170134115 A KR 20170134115A
- Authority
- KR
- South Korea
- Prior art keywords
- speech recognition
- graph
- uni
- decoding
- weight
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000005457 optimization Methods 0.000 title abstract description 10
- 230000007704 transition Effects 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 9
- 239000000470 constituent Substances 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000013138 pruning Methods 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
-
- 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
-
- 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
-
- 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/08—Speech classification or search
- G10L15/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Machine Translation (AREA)
- Probability & Statistics with Applications (AREA)
Abstract
본 발명은 WFST의 그래프 생성시 단일 언어 모델을 이용하여 최적화하는 음성 인식 장치 및 음성 인식 방법을 개시한다. 본 발명에 따르는 WFST의 최적화를 이용하는 음성 인식 장치는, 음성을 입력받는 음성 입력부; 입력된 음성을 음성 인식 처리하는 음성 인식 처리부; 및 음성 인식 처리된 음성의 문자열을 출력하는 문자열 출력부를 포함하고, 상기 음성 인식 처리는 WFST(Weighted Finite State Transducer) 기반의 디코딩 그래프 N을 생성하는 처리로서, 유니 그램 언어 모델인 G uni 및 유니 그램 가중치를 보상한 트라이그램 언어 모델인 G tri / uni 을 이용하여 입력받은 음성에 대해 가장 높은 확률의 문자열을 인식한다. 본 발명에 따르면, WFST 기반의 디코딩을 처리하는 과정에서 음성 인식의 성능을 유지하면서 처리 속도를 개선시킨다.
Description
본 발명은 음성 인식 기술에 관한 것으로서, 보다 상세하게는 WFST의 최적화를 이용하여 음성 인식의 데이터 처리량을 줄이고 처리 속도를 개선한 음성 인식 장치 및 음성 인식 방법에 관한 것이다.
음성 인식 기술은 음성을 텍스트로 변환하는 STT(Speech-To-Text) 기술이 적용된다. 음성 인식 시스템은 대다수 WFST(Weighted Finite State Transducer, 가중 유한 상태 변환기)의 처리에 기반한다. WFST 기반의 음성 인식 시스템의 장점으로는 WFST 그래프를 생성하는 과정에서 불필요한 경로들이 삭제되어 검색망(Search network) 기반의 타 음성 인식 시스템과 대비될 때 인식 시간이 감소한다.
하지만, 근래 LVCSR(Large Vocabulary Continuous Speech Recognition) 추세에 따라 음향 모델 및 언어 모델의 크기가 급격히 증가하는 것으로 인해, 상기 모델 기반의 WFST 그래프를 생성하면 대용량의 그래프가 생성되어 디코딩(Decoding) 시간이 여전히 오래 걸리는 문제가 발생한다. 예를 들어, 콜 센터의 STT와 같이 고객이 상담한 음성을 녹취하여 음성 인식 처리를 하는 경우, 하루에도 대량의 고객 음성 데이터가 생성되어 더욱 빠른 처리 속도를 요하는 콜 센터의 상황에 문제가 되었다.
도 1 내지 도 5는 종래의 WFST 기반의 음성 인식 처리에서 이용되는 대용량의 디코딩 그래프를 도시한다.
종래 기술의 WFST 기반의 디코딩 과정은 다음과 같다. 음성 인식이란 음성 O가 주어졌을 때, 모든 문자열 W 중에서 O에 해당하는 가장 높은 확률(P)의 문자열 를 구하는 기술이며 수학식 1과 같다.
베이즈 정리(Bayes' theorem)에 의하면, 수학식 1은 수학식 2와 같이 표현된다.
수학식 2를 음소열 단위 V로 나타내면 수학식 3과 같다.
수학식 3을 로그 형태로 나타내면 수학식 4와 같다.
수학식 4를 semiring 연산하면 수학식 5와 같다.
수학식 5를 WFST 그래프로 해석하자면 다음과 같다. 는 WFST 구조의 HMM(Hidden Markov Model) 변환 그래프를 나타내며 H라고 표기하며, 는 WFST 구조의 발음 사전(Lexicon) 변환 그래프를 나타내며 L이라고 표기하며, 는 WFST 구조의 트라이그램(Tri-gram) 언어 모델 변환 그래프를 나타내며 G로 표기한다. 여기서 H는 도 1에 도시되고, L은 도 2에 도시되고, G는 도 3에 도시된 바 있다.
최종적으로 생성된 디코딩 그래프 N은 도 5와 같으며 이를 이용하여 음성 인식 디코딩을 수행한다.
여기서, compoosition 후 생성되는 디코딩 그래프 N이 상당히 큰 크기를 가진다. 예를 들어, 10만 단어 크기의 WFST 그래프 생성시 표 1과 같은 수치를 보인다. 이 중 트라이그램 언어 모델인 G로 인해 최종적으로 생성되는 N의 크기가 커지는 것을 볼 수 있다.
상태 개수 | 천이 개수 | |
H | 6,518 | 2,634 |
C | 1,894 | 85,185 |
L | 501,759 | 602,566 |
G | 220,773 | 1,177,625 |
N | 736,221 | 1,704,447 |
따라서 N의 크기를 감소시키기 위해서는 위 4가지 그래프 H, C, L, G를 최적화시키는 방법이 요구된다. 하지만, 그래프 H, C, L 그래프 크기를 줄이면 성능 감소로 이어지는 경우가 많다. 이에 반해 G의 경우, 음향 모델과 독립적인 언어 모델이므로 그래프 최적화를 수행하는 데 비교적 수월하다. 따라서 성능을 유지하면서 크기를 줄이기 위해 G의 최적화 방법이 요구된다.
본 발명은 상기와 같은 종래 기술의 인식 하에 창출된 것으로서, WFST의 디코딩 그래프 생성시 단독으로 단어열에 대한 언어 모델을 사용하지 않고, 단일 단어의 언어모델을 사용한 WFST 디코딩 그래프를 생성하고 따로 단어열에 해당하는 언어 모델의 WFST 그래프를 생성함으로써 가중치를 보완하여 디코딩하는 최적화 알고리즘을 제시하는 음성 인식 장치 및 음성 인식 방법을 제공하는 것을 목적으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 WFST의 최적화를 이용하는 음성 인식 장치는, 음성을 입력받는 음성 입력부; 입력된 음성에 대해 WFST(Weighted Finite State Transducer) 기반의 디코딩 그래프 N을 생성하는 과정에서, 유니 그램 언어 모델인 G uni 및 유니 그램 가중치를 보상한 트라이그램 언어 모델인 G tri / uni 을 적용하여 입력된 음성에 대해 가장 높은 확률의 문자열을 인식하는 음성 인식을 처리하는 음성 인식 처리부; 및 음성 인식 처리된 음성의 문자열을 출력하는 문자열 출력부를 포함한다.
본 발명에 있어서, 상기 음성 인식 처리부는, 하기의 수학식
을 통해 언어 모델의 그래프 G 대신에 N uni 과 G tri / uni 의 그래프 각각을 생성하여 그래프 크기를 줄인다.
여기서, 상기 음성 인식 처리부는, 천이 e가 있을 때, i[e]는 e의 입력 심볼, o[e]는 e의 출력 심볼, w[e]는 e의 가중치 값으로 정의하고, p[e]는 e의 근원(origin) 상태, n[e]는 e의 도달(destination) 상태를 나타내어, 두 심볼 사이의 관계는 p[ e j -1 ] = p[ e j ] (j= 2, 3, ..., k )이고, 임의의 경로 h는 천이 e를 통해, h= (e 1, e 2, ..., e k )라 가정하여, 하기의 수학식
을 확장하는 것을 특징으로 하는 음성 인식 장치.
또한, 상기 음성 인식 처리부는, 그래프 T에서 입력이 X, 출력이 Y일 때, 경로는 로 정의하고, 전체 가중치는 로 정의하고. 그래프 N uni 를 그래프 A, 그래프 G tri/uni 를 그래프 B라고 정의하면, 하기의 수학식
으로 N uni 및 G tri / uni 기반의 음성 인식 디코딩을 처리하고, 상기 수학식에 의해, 입력 X(음성 특징 벡터)에 대해 출력 (가장 확률이 높은 출력 단어열 Z)를 출력하여 음성 인식의 디코딩을 처리한다.
바람직하게, 상기 음성 인식 처리부는, 모든 가능한 경우의 수를 고려하여 변형된 하기의 수학식
으로 음성 인식의 디코딩을 처리한다.
여기서, 음성 인식 처리부는, 그래프 B의 가정 f에 대한 최소 가중치를 먼저 구하는 방법으로 연산량을 감소시키는 하기의 수학식
으로 음성 인식의 디코딩을 처리한다.
또한, 상기 음성 인식 처리부는, 최소 가중치를 먼저 구하는 방법으로 연산량을 감소시키는 하기의 수학식
으로 음성 인식의 디코딩을 처리한다.
나아가, 상기 음성 인식 처리부는, X의 모든 경우의 수를 가정하게 되면 많은 경로가 발생하는 연산량이 증가하여 디코딩 시간이 오래 걸리는 것을 방지하고자 비터비 검색(Viterbi search) 기법을 이용하고, 그래프 A에서 가정 h는 끝 상태(Final state)에 도달하지 않은 일부 경로라 할 때, n A [h]로부터 나가는 천이 e로 인해 새로운 가정 h' 및 새로운 가중치를 생성하는 하기의 수학식
으로 음성 인식의 디코딩을 처리한다.
여기서, 상기 음성 인식 처리부는, 가정 h에 대해 그래프 B에서 가능한 경우의 가정들을 g[h]라고 하고, g[h] 중 임의의 하나를 가정 f라고 하면. 가정 h에 의해서 그래프 B에서 천이 r로 인해 새로운 가정 f' 및 새로운 가중치를 생성하는 수학식
으로 음성 인식의 디코딩을 처리한다.
또한, 상기 음성 인식 처리부는, 가정 h'에 대한 가중치는 가정 f'의 가중치를 반영하여 α[·]로 표기하는 수학식
으로 음성 인식의 디코딩을 처리한다.
바람직하게, 상기 음성 인식 처리부는, 상기 디코딩 처리에 의해 끝 상태에 도달할 때 최적의 가중치를 가진 가정 h와 가정 f를 각각 수학식
본 발명의 WFST의 최적화를 이용하는 음성 인식 방법에 따르면, 음성 인식 장치가 음성을 음성 인식 처리하여 음성의 문자열을 출력하는 음성 인식 방법에 있어서, (a)음성을 입력받는 음성 입력 단계; (b)입력된 음성에 대해 WFST(Weighted Finite State Transducer) 기반의 디코딩 그래프 N을 생성하는 과정에서, 유니 그램 언어 모델인 G uni 및 유니 그램 가중치를 보상한 트라이그램 언어 모델인 G tri / uni 을 적용하여 입력된 음성에 대해 가장 높은 확률의 문자열을 인식하는 음성 인식을 처리하는 음성 인식 처리 단계; 및 (c)음성 인식 처리된 음성의 문자열을 출력하는 문자열 출력 단계를 포함한다.
본 발명의 일 측면에 따르면, WFST의 음성 인식 처리의 성능이 유지되면서 시간이 비약적으로 감소한다. 본 발명에 따른 디코딩 그래프를 생성하면 기존 알고리즘의 그래프와 대비하여 그 크기가 크게 줄어들고 전체 연산량이 감소하기 때문에 가능하다.
본 발명의 다른 측면에 따르면, 콜센터 음성 녹취의 경우 고객의 음성 내용은 몇몇 어휘들이 반복 발화되는 특성을 보이는데 이로 인해 특정 트라이그램의 가중치가 높아지게 된다. 트라이그램 가중치가 낮은 것들은 pruning 과정을 통해 그래프에서 삭제되고, 그로 인해 가정 경로가 줄어들어 인식 속도가 비약적으로 개선된다.
본 발명의 또 다른 측면에 따르면, 언어 모델의 갱신시 WFST 그래프를 재생성할 필요가 없다. 기존 G 그래프의 경우, 언어 모델이 변경되면 다시 처음부터 WFST 그래프를 생성해야 되는 불편함이 있었고, 그래프 자체의 크기가 크기 때문에 생성시 오랜 시간이 소요되었다. 하지만 본 발명을 이용하면 매번 그래프를 생성하는 것이 아니라 Gtri / nui 트라이그램 그래프에서 가중치가 갱신되는 단어열이 있으면 해당하는 부분만 업데이트하면 되어 유지 보수에 용이하다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술한 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되지 않아야 한다.
도 1 내지 도 5는 종래의 WFST 기반의 음성 인식 처리에서 이용되는 대용량의 디코딩 그래프의 예시이다.
도 6은 본 발명의 일 실시예에 따른 음성 인식 장치의 개략적 구조도이다.
도 7은 도 6의 음성 인식 장치가 생성하는 유니그램 언어 모델 기반의 디코딩 그래프 N uni 의 예시도이다.
도 8은 도 6의 음성 인식 장치가 생성하는 유니 그램 가중치를 보상한 트라이그램 언어 모델 그래프 G tri / uni 의 예시도이다.
도 9는 도 6의 음성 인식 장치가 그래프 N uni 및 G tri / uni 에서 최적의 가중치를 이용하여 디코딩 처리하는 예시도이다.
도 10은 본 발명의 일 실시예에 따른 WFST의 최적화를 이용하는 음성 인식 방법의 개략적 순서도이다.
도 1 내지 도 5는 종래의 WFST 기반의 음성 인식 처리에서 이용되는 대용량의 디코딩 그래프의 예시이다.
도 6은 본 발명의 일 실시예에 따른 음성 인식 장치의 개략적 구조도이다.
도 7은 도 6의 음성 인식 장치가 생성하는 유니그램 언어 모델 기반의 디코딩 그래프 N uni 의 예시도이다.
도 8은 도 6의 음성 인식 장치가 생성하는 유니 그램 가중치를 보상한 트라이그램 언어 모델 그래프 G tri / uni 의 예시도이다.
도 9는 도 6의 음성 인식 장치가 그래프 N uni 및 G tri / uni 에서 최적의 가중치를 이용하여 디코딩 처리하는 예시도이다.
도 10은 본 발명의 일 실시예에 따른 WFST의 최적화를 이용하는 음성 인식 방법의 개략적 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구 범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상에 모두 대변하는 것은 아니므로, 본 출원 시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 6은 본 발명의 일 실시예에 따른 음성 인식 장치(1)의 개략적 구조도이다. 도 7은 도 6의 음성 인식 장치(1)가 생성하는 유니그램 언어 모델 기반의 디코딩 그래프 N uni 의 예시도이고, 도 8은 도 6의 음성 인식 장치(1)가 생성하는 유니 그램 가중치를 보상한 트라이그램 언어 모델 그래프 G tri / uni 의 예시도이다. 도 9는 도 9는 도 6의 음성 인식 장치(1)가 그래프 N uni 및 G tri / uni 에서 최적의 가중치를 이용하여 디코딩 처리하는 예시도이다. 이하에서는 도 7 내지 도 9를 참조하여 설명한다.
본 발명의 일 실시예에 따른 음성 인식 장치(1)는 음성을 입력받는 음성 입력부(11), 입력된 음성에 대해 음성 인식의 처리를 수행하는 음성 인식 처리부(12) 및 처리된 음성으로부터 인식된 문자열을 출력하는 문자열 출력부(13)를 포함하여 구성된다.
상기 음성 인식 장치(1)는 컴퓨터 단말로 구현될 수 있다. 또한, 네트워크를 이용하는 클라이언트 서버 환경에서 구축되어 클라이언트가 입력 음성을 서버로 전송하고, 서버가 음성 인식을 처리하여 문자열을 클라이언트로 응답할 수 있다.
상기 음성 입력부(11)는 다양한 형태로 인식 대상의 음성을 입력받을 수 있으며 특별한 제한을 두지 않는다. 음성 입력부(11)가 기록된 사용자의 음성 파일을 읽어들이는 것으로 음성을 입력받아도 무방하다. 물론, 실시간 발생되는 사용자의 음성 데이터를 입력받는 것도 가능하다.
상기 문자열 출력부(13)는 다양한 형태로 인식된 문자열을 출력할 수 있으며 특별한 제한을 두지 않는다. 문자열 출력부(11)가 읽어들인 음성 인식된 문자열을 파일로 저장하여도 무방하다. 물론, 문자열 출력부(11)는 사용자 인터페이스를 통해 문자열을 화면 출력하는 것도 가능하다.
상기 음성 인식 처리부(12)는 그래프 N을 생성하는 WFST 기반의 음성 인식 디코딩시, 수학식 7의 단독으로 트라이그램 언어 모델인 G를 결합한 N을 사용하는 방법 대신 수학식 8에 따른 유니그램(Uni-gram) 언어 모델인 G uni 를 결합한 N uni 와 유니그램 가중치를 보상한 트라이그램 언어 모델인 G tri / uni 을 동시에 사용하는 것으로 음성 인식을 처리한다. G uni 와 G tri / uni 의 관계는 수학식 8과 같이 G의 decomposition 형태를 가진다.
수학식 8의 Decomposition 형태의 언어 모델 그래프 G를 이용해 수학식 7의 디코딩 그래프 N을 수학식 9와 같이 표현할 수 있다.
여기서, 라고 한다면 N은 N uni 과 G tri / uni 두 부분으로 구성되는 것을 알 수 있다. 여기서, 주목할 점은 수학식 7의 N을 단독으로 쓰는 것 보다 수학식 9를 따라 N uni 및 G tri / uni 각각을 생성하는 것이 훨씬 작은 크기의 그래프를 가진다는 것이다. 그 이유는 N을 생성시 이용되는 G가 큰 크기를 가지기 때문이다. 음성 인식 처리부(12)가 수학식 9에 따른 디코딩을 처리하므로 그래프의 작은 크기로 인해 처리 속도가 빨라진다.
참고로, 트라이그램 언어 모델인 G는 3개 단어의 조합에 따른 경우의 수를 고려하기 때문에 그래프의 크기가 3!에 해당되는 6의 크기를 갖는다. 이 상태에서 composition하게 되면, 유니 그램 그래프에 대비하여 6배 이상의 그래프 크기를 갖는다. 하지만, 유니 그램의 언어 모델인 G uni 는 1개 단어만 고려되므로 그래프의 크기가 줄어든다.
도 7은 N uni 의 그래프를 예시하고, 도 8은 G tri / uni 의 그래프를 예시한다.
N uni 의 그래프를 통해 입력 음성에 대해 문자열이 출력되고, G tri / uni 의 그래프를 통해 가중치가 구해지고, 구해진 가중치는 N uni 의 가중치를 갱신한다.
우선 본 발명의 개념을 설명하기 위해서 몇 가지 용어를 정의할 필요가 있다. 천이 e가 있을 때, i[e]는 e의 입력 심볼, o[e]는 e의 출력 심볼, w[e]는 e의 가중치값을 나타낸다. 또한 p[e]는 e의 근원(Origin) 상태, n[e]는 e의 도달(Destination) 상태를 나타내며, 두 심볼 사이의 관계는 n[ e j -1 ] = n[ e j ] ()와 같다. 는 임의의 경로를 가정(Hypothesis) 하는 데 사용된다. 또한, 위 심볼을 확장하여 수학식 10, 수학식 11, 수학식 12과 같이 사용된다.
상기 개념과 수학식 10 내지 12를 그래프 구조에 적용하면, 천이 e는 그래프의 링크에 대응된다. 입력 심볼은 링크의 입력값, 상태는 노드에 대응된다. 가중치 값은 링크의 가중치 값에 대응된다.
한편, 그래프 T에서 입력이 X, 출력이 Y일 때 경로는 로 표기하며, 전체 가중치는 로 표기하기로 하자. 설명의 편의상 그래프 N uni 를 그래프 A, 그래프 G tri / uni 를 그래프 B라고 하자. 그러면 WFST 기반의 음성 인식 디코딩은 수학식 13과 같이 나타낼 수 있다.
수학식 13에 따르면, 음성 인식 디코딩은 음성 인식 장치(1)가 입력 X(음성 특징 벡터)에 대해 출력 (가장 확률이 높은 출력 단어열 Z)를 찾는 것이라고 할 수 있다. 가중치를 최소화하는 것은 최적의 단어열을 찾기 위함이다. 참고로, 가중치는 음향/언어 모델의 합산된 확률값으로서 가중치가 낮다고 무조건 인식률이 높은 것은 아니나 대체로 높은 경향을 보인다. 수학식 13에서 모든 가능한 경우의 수를 나타낸다면 수학식 14와 같이 변형 가능하다.
수학식 14는 그래프 A에서 가정 경로 h 및 그래프 B에서 가정 경로 f를 포함하는 모든 가능한 경로의 수를 고려하는 수학식이다.
하지만 그래프 B의 가정 f에 대한 최소 가중치를 먼저 구하는 방법으로 연산량을 감소시킬 수 있다. 이는 수학식 15와 같으며 수학식 13을 일부 수정한 것이다.
마찬가지로 수학식 14 역시 수학식 16과 같은 형태로 쓸 수 있다.
위 디코딩에서 X의 모든 경우의 수를 가정하게, 되면 수많은 경로가 발생하므로 연산량이 증가하여 디코딩 시간이 오래 걸린다. 여기서 이를 방지하고자 비터비 검색(Viterbi search) 기법을 이용한다. 비터비 검색은 일종의 greedy algorithm으로 항상 기존의 가정 경로 중 최선의 1개를 선택하며, 새로운 가정 경로들에 대해서도 최선의 1개를 선택하게 된다. 그래프 A에서 가정 h는 끝 상태(Final state)에 도달하지 않은 일부 경로를 가리킨다고 하자. 그러면 n A [h]로부터 나가는 천이 e로 인해 새로운 가정 h'가 생성된다. 이로 인해 새로운 가중치가 생성되며 수학식 17과 같다.
이 때, 그래프 A의 가정 h에 대해 그래프 B에서 가능한 경우의 가정들을 g[h]라고 하자. 그 중 임의의 하나를 가정 f라고 한다. 가정 h에 의해서 그래프 B에서는 천이 r로 인해 새로운 가정 f'이 생성된다. 이로 인해 새로운 가중치가 생성되며 수학식 18과 같다.
가정 h'에 대한 가중치는 가정 f'의 가중치를 반영하여 α[·]로 표기하며 수학식 19와 같다.
음성 인식 처리부(12)는 수학식 19의 연산을 처리한다. 이런 연산 처리의 방식으로 계속 디코딩을 진행하면 어느 순간 끝 상태에 도달한다. 이 때 최적의 가중치를 가진 가정 h와 가정 f는 각각 수학식 20, 수학식 21과 같다. 음성 인식 처리부(12)는 수학식 20 및 21의 연산을 처리한다.
수학식 20에서 FA는 그래프 A의 모든 끝 상태의 집합을 나타낸다.
이 때 가장 확률값이 높은 문자열은 그래프 B의 출력 심볼열, 즉 와 같다. 이를 도로 나타내면 도 8의 Gtri / uni 그래프와 같다. 도 8의 가정 경로는 도 7 Nuni 그래프의 가정 경로의 output symbol에 mapping되는 input symbol에 따라 설정된다. 도 9의 input symbol들(s1, s2, ...., s9)이 음성에 mapping되며, 문자열은 output symbol들(a, b, c,...)이 문자열에 mapping 된다.
도 10은 본 발명의 일 실시예에 따른 WFST의 최적화를 이용하는 음성 인식 방법의 개략적 순서도이다.
음성 인식 장치(1)가 인식 대상의 음성을 입력받는다(S11).
음성이 입력되면, 음성 인식 장치(1)는 WFST 기반의 디코딩을 처리한다(S12). 여기서, 음성 인식 장치(1)는 수학식 9에 의해 N uni 그래프를 이용하는 디코딩 처리를 수행한다(S13). 또한, 음성 인식 장치(1)는 수학식 9에 의해 G tri / uni 그래프를 이용하는 디코딩 처리를 수행한다(S14).
본 발명에서 제공되는 N uni 및 G tri / uni 의 2개 디코딩 그래프는 단일 언어 모델의 그래프를 이용하기 때문에 데이터 량이 줄어 들어 처리 시간이 줄어든다.
디코딩 그래프가 생성되면, N uni 및 G tri / uni 의 최적 가중치가 계산된다(S15).
음성 인식 장치는 최적 가중치의 문자열을 출력한다(S16).
상술한 실시예에서, "~부"라는 용어는 음성 인식 장치(1)의 하드웨어적 구분을 의미하는 용어로 사용된 것이 아니다. 따라서 복수의 구성부가 하나의 구성부로 통합될 수도 있고, 하나의 구성부가 복수의 구성부로 분할될 수도 있다. 또한, 구성부는 하드웨어의 구성부를 의미할 수도 있지만, 소프트웨어의 구성부를 의미할 수도 있다. 따라서 본 발명은 "~부"라는 용어에 의해 특별히 한정되지 않음을 이해하여야 할 것이다.
본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
1 : 음성 인식 장치 11 : 음성 입력부
12 : 음성 인식 처리부 13 : 문자열 처리부
12 : 음성 인식 처리부 13 : 문자열 처리부
Claims (22)
- 음성을 입력받는 음성 입력부;
입력된 음성에 대해 WFST(Weighted Finite State Transducer) 기반의 디코딩 그래프 N을 생성하는 과정에서, 유니 그램 언어 모델인 G uni 및 유니 그램 가중치를 보상한 트라이그램 언어 모델인 G tri/uni 을 적용하여 입력된 음성에 대해 가장 높은 확률의 문자열을 인식하는 음성 인식을 처리하는 음성 인식 처리부; 및
음성 인식 처리된 음성의 문자열을 출력하는 문자열 출력부
를 포함하는 것을 특징으로 하는 음성 인식 장치. - 제 1항에 있어서,
상기 음성 인식 처리부는,
천이 e가 있을 때, i[e]는 e의 입력 심볼, o[e]는 e의 출력 심볼, w[e]는 e의 가중치 값으로 정의하고,
p[e]는 e의 근원(origin) 상태, n[e]는 e의 도달(destination) 상태를 나타내어,
두 심볼 사이의 관계는 p[ e j -1 ] = p[ e j ] (j= 2, 3, ..., k )이고,
임의의 경로 h는 천이 e를 통해, h= (e 1, e 2, ..., e k )라 가정하여,
하기의 수학식
, 가정 경로 h의 입력 심볼 열(array)
, 가정 경로 h의 출력 심볼 열
, 가정 경로 h의 가중치 값의 합
을 확장하는 것을 특징으로 하는 음성 인식 장치. - 음성 인식 장치가 음성을 음성 인식 처리하여 음성의 문자열을 출력하는 음성 인식 방법에 있어서,
(a)음성을 입력받는 음성 입력 단계;
(b)입력된 음성에 대해 WFST(Weighted Finite State Transducer) 기반의 디코딩 그래프 N을 생성하는 과정에서, 유니 그램 언어 모델인 G uni 및 유니 그램 가중치를 보상한 트라이그램 언어 모델인 G tri / uni 을 적용하여 입력된 음성에 대해 가장 높은 확률의 문자열을 인식하는 음성 인식을 처리하는 음성 인식 처리 단계; 및
(c)음성 인식 처리된 음성의 문자열을 출력하는 문자열 출력 단계
를 포함하는 것을 특징으로 하는 음성 인식 방법. - 제 12항에 있어서,
단계(b)는,
천이 e가 있을 때, i[e]는 e의 입력 심볼, o[e]는 e의 출력 심볼, w[e]는 e의 가중치 값으로 정의하고,
p[e]는 e의 근원(origin) 상태, n[e]는 e의 도달(destination) 상태를 나타내어,
두 심볼 사이의 관계는 p[ e j -1 ] = p[ e j ] (j= 2, 3, ..., k )이고,
임의의 경로 h는 천이 e를 통해, h= (e 1, e 2, ..., e k )라 가정하여,
하기의 수학식
, 가정 경로 h의 입력 심볼 열(array)
, 가정 경로 h의 출력 심볼 열
, 가정 경로 h의 가중치 값의 합
을 확장하는 단계인 것을 특징으로 하는 음성 인식 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160065908A KR20170134115A (ko) | 2016-05-27 | 2016-05-27 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
KR1020220169594A KR20230006625A (ko) | 2016-05-27 | 2022-12-07 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160065908A KR20170134115A (ko) | 2016-05-27 | 2016-05-27 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220169594A Division KR20230006625A (ko) | 2016-05-27 | 2022-12-07 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170134115A true KR20170134115A (ko) | 2017-12-06 |
Family
ID=60922205
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160065908A KR20170134115A (ko) | 2016-05-27 | 2016-05-27 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
KR1020220169594A KR20230006625A (ko) | 2016-05-27 | 2022-12-07 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220169594A KR20230006625A (ko) | 2016-05-27 | 2022-12-07 | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR20170134115A (ko) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10388272B1 (en) | 2018-12-04 | 2019-08-20 | Sorenson Ip Holdings, Llc | Training speech recognition systems using word sequences |
US10573312B1 (en) | 2018-12-04 | 2020-02-25 | Sorenson Ip Holdings, Llc | Transcription generation from multiple speech recognition systems |
CN112151020A (zh) * | 2019-06-28 | 2020-12-29 | 北京声智科技有限公司 | 语音识别方法、装置、电子设备及存储介质 |
CN112466293A (zh) * | 2020-11-13 | 2021-03-09 | 广州视源电子科技股份有限公司 | 解码图优化方法、装置及存储介质 |
US11017778B1 (en) | 2018-12-04 | 2021-05-25 | Sorenson Ip Holdings, Llc | Switching between speech recognition systems |
US11170761B2 (en) | 2018-12-04 | 2021-11-09 | Sorenson Ip Holdings, Llc | Training of speech recognition systems |
US11488604B2 (en) | 2020-08-19 | 2022-11-01 | Sorenson Ip Holdings, Llc | Transcription of audio |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101578766B1 (ko) | 2011-09-06 | 2015-12-22 | 한국전자통신연구원 | 음성 인식용 탐색 공간 생성 장치 및 방법 |
-
2016
- 2016-05-27 KR KR1020160065908A patent/KR20170134115A/ko not_active Application Discontinuation
-
2022
- 2022-12-07 KR KR1020220169594A patent/KR20230006625A/ko not_active Application Discontinuation
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10388272B1 (en) | 2018-12-04 | 2019-08-20 | Sorenson Ip Holdings, Llc | Training speech recognition systems using word sequences |
US10573312B1 (en) | 2018-12-04 | 2020-02-25 | Sorenson Ip Holdings, Llc | Transcription generation from multiple speech recognition systems |
US10672383B1 (en) | 2018-12-04 | 2020-06-02 | Sorenson Ip Holdings, Llc | Training speech recognition systems using word sequences |
US10971153B2 (en) | 2018-12-04 | 2021-04-06 | Sorenson Ip Holdings, Llc | Transcription generation from multiple speech recognition systems |
US11017778B1 (en) | 2018-12-04 | 2021-05-25 | Sorenson Ip Holdings, Llc | Switching between speech recognition systems |
US11145312B2 (en) | 2018-12-04 | 2021-10-12 | Sorenson Ip Holdings, Llc | Switching between speech recognition systems |
US11170761B2 (en) | 2018-12-04 | 2021-11-09 | Sorenson Ip Holdings, Llc | Training of speech recognition systems |
US11594221B2 (en) | 2018-12-04 | 2023-02-28 | Sorenson Ip Holdings, Llc | Transcription generation from multiple speech recognition systems |
US11935540B2 (en) | 2018-12-04 | 2024-03-19 | Sorenson Ip Holdings, Llc | Switching between speech recognition systems |
CN112151020A (zh) * | 2019-06-28 | 2020-12-29 | 北京声智科技有限公司 | 语音识别方法、装置、电子设备及存储介质 |
US11488604B2 (en) | 2020-08-19 | 2022-11-01 | Sorenson Ip Holdings, Llc | Transcription of audio |
CN112466293A (zh) * | 2020-11-13 | 2021-03-09 | 广州视源电子科技股份有限公司 | 解码图优化方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20230006625A (ko) | 2023-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20170134115A (ko) | Wfst의 최적화를 이용하는 음성 인식 장치 및 음성 인식 방법 | |
US10210862B1 (en) | Lattice decoding and result confirmation using recurrent neural networks | |
Hori et al. | Efficient WFST-based one-pass decoding with on-the-fly hypothesis rescoring in extremely large vocabulary continuous speech recognition | |
JP5459214B2 (ja) | 言語モデル作成装置、言語モデル作成方法、音声認識装置、音声認識方法、プログラム、および記録媒体 | |
US8423351B2 (en) | Speech correction for typed input | |
JP6614639B2 (ja) | 音声認識装置及びコンピュータプログラム | |
JP5062171B2 (ja) | 音声認識システム、音声認識方法および音声認識用プログラム | |
JP2006058899A (ja) | 発話検索のためのラティス・ベースの検索システムおよび方法 | |
US9972314B2 (en) | No loss-optimization for weighted transducer | |
JPH0772840B2 (ja) | 音声モデルの構成方法、音声認識方法、音声認識装置及び音声モデルの訓練方法 | |
JP6095588B2 (ja) | 音声認識用wfst作成装置、音声認識装置、音声認識用wfst作成方法、音声認識方法及びプログラム | |
US11145296B1 (en) | Language and grammar model adaptation | |
US5706397A (en) | Speech recognition system with multi-level pruning for acoustic matching | |
CN116670757A (zh) | 用于简化的流式和非流式语音识别的级联编码器 | |
US9449598B1 (en) | Speech recognition with combined grammar and statistical language models | |
CN112420050B (zh) | 一种语音识别方法、装置和电子设备 | |
KR20130059476A (ko) | 음성 인식용 탐색 공간 생성 방법 및 장치 | |
Mohri et al. | Integrated context-dependent networks in very large vocabulary speech recognition. | |
JP2010091675A (ja) | 音声認識装置 | |
JP2013125144A (ja) | 音声認識装置およびそのプログラム | |
US20040006469A1 (en) | Apparatus and method for updating lexicon | |
US20230103382A1 (en) | Training for long-form speech recognition | |
JP2015087556A (ja) | 音声認識用wfst作成装置と音声認識装置とそれらの方法とプログラムと記録媒体 | |
JP5875569B2 (ja) | 音声認識装置とその方法とプログラムとその記録媒体 | |
JP3873418B2 (ja) | 音声スポッティング装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |