KR101134450B1 - Method for speech recognition - Google Patents

Method for speech recognition Download PDF

Info

Publication number
KR101134450B1
KR101134450B1 KR1020090057224A KR20090057224A KR101134450B1 KR 101134450 B1 KR101134450 B1 KR 101134450B1 KR 1020090057224 A KR1020090057224 A KR 1020090057224A KR 20090057224 A KR20090057224 A KR 20090057224A KR 101134450 B1 KR101134450 B1 KR 101134450B1
Authority
KR
South Korea
Prior art keywords
value
speech recognition
speech
reliability
voice
Prior art date
Application number
KR1020090057224A
Other languages
Korean (ko)
Other versions
KR20100138623A (en
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 KR1020090057224A priority Critical patent/KR101134450B1/en
Publication of KR20100138623A publication Critical patent/KR20100138623A/en
Application granted granted Critical
Publication of KR101134450B1 publication Critical patent/KR101134450B1/en

Links

Images

Classifications

    • 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/02Feature extraction for speech recognition; Selection of recognition unit
    • 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]
    • G10L15/142Hidden 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
    • 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/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech

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)
  • Computer Vision & Pattern Recognition (AREA)
  • Probability & Statistics with Applications (AREA)
  • Artificial Intelligence (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명은 음성인식 방법에 관한 것으로, 개시된 실시예에 의하면 음성신호의 각 구간별로 신뢰도를 반영하여 인식 수준을 달리함으로써 잡음이 일부 구간에 집중되어 있거나 잡음이 시간에 따라 가변적인 경우 등에 있어 음성인식의 성능 저하를 방지할 수 있으며, 잡음이 없는 경우라도 음성인식의 특정 단어 또는 구가 존재하는 일부 구간에 대해서 보다 세밀한 음성인식의 중간 결과를 볼 수 있는 이점이 있다.The present invention relates to a speech recognition method, and according to the disclosed embodiments, the recognition level is reflected by reflecting the reliability for each section of the speech signal, so that the speech recognition is performed when noise is concentrated in some sections or the noise is variable with time. It is possible to prevent the degradation of the performance, and even in the absence of noise, there is an advantage that the intermediate result of the finer speech recognition can be seen for some sections in which the specific words or phrases of the speech recognition exist.

음성인식, 격자, 세그먼트, 잡음, 가변 n-best, 신뢰도 Speech Recognition, Lattice, Segment, Noise, Variable n-best, Reliability

Description

음성인식 방법{METHOD FOR SPEECH RECOGNITION}Speech Recognition Method {METHOD FOR SPEECH RECOGNITION}

본 발명은 음성인식 방법에 관한 것으로, 더욱 상세하게는 입력 음성신호에 대해 구간에 따라 세밀도(Level-Of-Detail; LOD)를 다르게 하여 음성인식 결과를 획득하는 음성인식 방법에 관한 것이다.The present invention relates to a speech recognition method, and more particularly, to a speech recognition method for obtaining a speech recognition result by varying the level-of-detail (LOD) of an input speech signal according to a section.

본 발명은 지식경제부의 IT성장동력기술개발 사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호 : 2008-S-019-02, 과제명 : 휴대형 한/영 자동통역 기술개발].The present invention is derived from a study conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy [Task Management Number: 2008-S-019-02, Task name: Portable Korean / English automatic interpretation technology development].

음성인식 기술(Automatic Speech Recognition; ASR)은 입력 음성신호를 음성신호처리 기술에 의해 문자열로 변환하는 기술로서, 음성합성과 더불어 음성신호처리의 가장 핵심적인 기술 분야 가운데 하나이다. 음성인식 기술은 수십 단어 규모의 독립적으로 발성된 단어를 인식하는 고립 단어 인식에서부터 연속 단어 인식, 연속적인 문장에서 핵심어만 검출하고 인식하는 핵심어 검출(keyword spotting), 그리고 문장단위의 발화를 인식하는 연속 음성인식 등으로 발전되어 왔으며, 최근에는 사람과 사람 사이의 자연스럽게 발성하는 대화체 음성을 인식할 수 있도록 하는 대화체 인식 기술이 활발히 연구되고 있다.Automatic Speech Recognition (ASR) is a technology that converts an input speech signal into a string by a speech signal processing technique, and is one of the most important technical fields of speech signal processing along with speech synthesis. Speech recognition technology consists of isolated word recognition that recognizes independently spoken words of tens of words, continuous word recognition, key word spotting that detects and recognizes only key words in consecutive sentences, and continuous speech recognition of sentence-level speech. The speech recognition technology has been developed, and recently, a conversational recognition technology for recognizing a conversational voice naturally spoken between people has been actively studied.

음성인식 기술은 상용화 수준에 근접하여, 수십 만 단어급의 단어인식 응용 시스템이 차량용 네비게이터 등에 적용되고 있으나, 여전히 실제 응용 환경에 존재하는 다양한 잡음에 의해 성능이 저하된다. 따라서, 신호에 존재하는 잡음을 직접적으로 제거하거나, 잡음을 제거하지 않더라도 잡음에 영향을 받지 않도록 하는 강인한 음성인식(robust ASR) 기법들이 오랜 기간 동안 연구되어 왔다. 그럼에도 불구하고, 응용 환경에 존재하는 수많은 형태의 잡음은 음성인식기의 성능을 저하시키는 주된 요인이 되고 있다.Speech recognition technology is approaching the commercialization level, hundreds of thousands of word-level word recognition application system is applied to a vehicle navigator, etc., but the performance is still degraded by various noise present in the actual application environment. Therefore, robust ASR techniques have been studied for a long time to directly remove noise present in a signal or not to be affected by noise even if the noise is not removed. Nevertheless, many types of noise present in the application environment have become a major factor in the performance of speech recognition.

잡음신호는 시간에 따라 일정한 정적 잡음(stationary noise), 음악과 같이 시간에 따라 특성이 변하는 비정적 잡음(non-stationary noise), 아주 짧은 시간 발생하여 음성의 일부만 왜곡시키는 충격 잡음(impulse noise) 등과 같은 가산 잡음(additive noise), 실내 반향(room reverberation)과 에코(echo) 및 마이크 변이 등 채널 특성이 바뀌는 콘볼루션 잡음(convolution noise) 등 잡음이 음성을 왜곡시키는 특성에 따라 분류하더라도 매우 다양하다.Noise signals include stationary noise that is constant with time, non-stationary noise that changes with time, such as music, and impulse noise that generates a very short time and distorts only part of the voice. Even if the noise is distorted according to characteristics such as addition noise, room reverberation, and convolution noise, which changes channel characteristics such as echo and microphone variation, the noise varies widely.

도 1은 정상적인 음성신호와 잡음 혼입 음성신호를 비교하기 위한 도면으로서, (a)는 정상적인 음성신호의 파형 예이며, (b)는 일부 구간에 잡음이 섞인 잡음 혼입 음성신호의 파형 예이고, (c)는 (b)에 나타낸 잡음 혼입 음성신호에 대한 신 뢰도 궤적이다.1 is a diagram for comparing a normal voice signal with a noise mixed voice signal, (a) is a waveform example of a normal voice signal, (b) is a waveform example of a noise mixed voice signal in which noise is mixed in some section, ( c) is the reliability trajectory for the noise mixed speech signal shown in (b).

음성인식을 위한 음성인식 시스템에는 도 1 (a)와 같은 정상적인 음성신호가 입력되기도 하며, 도 1 (b)와 같이 잡음에 의한 음성 손상구간(10)을 가지는 잡음 혼입 음성신호가 입력되기도 한다. 도 1 (b)와 같이 잡음에 의해 손상된 음성신호를 수십 밀리초 수준의 작은 구간들로 나누고, 각각의 구간들(이하 음성 프레임이라고 함)에 대해 신뢰도를 측정한 후, 이 신뢰도 값을 0에서 1사이의 값으로 표현하면 도 1 (c)와 같은 형태의 곡선을 나타낸다. 즉, 도 1 (b)의 음성 손상구간(10)에 해당하는 구간에서 신뢰도가 떨어지므로 음성 손상구간(10)에 대응하는 위치에서 낮은 신뢰도 값을 나타내는 신뢰도 저하구간(20)을 가진다.In the voice recognition system for voice recognition, a normal voice signal as shown in FIG. 1 (a) may be input, or a noise mixed voice signal having a voice damage section 10 due to noise may be input as shown in FIG. 1 (b). After dividing the speech signal damaged by noise into small sections of several tens of milliseconds as shown in FIG. 1 (b) and measuring the reliability of each section (hereinafter referred to as a voice frame), the reliability value is set to 0. When expressed as a value between 1 shows a curve of the form as shown in Fig. 1 (c). That is, since the reliability is lowered in the section corresponding to the speech damage section 10 of FIG. 1 (b), it has a reliability lowering section 20 showing a low reliability value at the position corresponding to the speech damage section 10.

도 1에서는 잡음이 음성신호의 일부분에만 존재하는 경우에 대한 예를 들었으나, 잡음신호는 음성신호 전체 구간에 대해 존재할 수 있으며, 이 경우 음성신호의 전체 구간에서 신뢰도가 가변적인 값을 가진다.1 illustrates an example in which noise exists only in a part of a voice signal, but a noise signal may exist in an entire voice signal section, and in this case, the reliability is variable in the entire voice signal section.

도 2는 종래 기술에 따른 음성인식 방법과 본 발명의 실시예에 따른 음성인식 방법을 비교하기 위한 도면으로서, (a)는 도 1 (c)와 마찬가지로 잡음 혼입 음성신호에 대한 신뢰도의 궤적을 나타낸 것이며, (b)는 종래 기술에 따른 음성인식 방법에 의한 도 1 (b)의 잡음 혼입 음성신호에 대한 1-best 인식 결과에 해당하는 격자(lattice) 출력결과를 나타낸 것이다. 여기서, 도 2 (c)에 대해서는 추후 설명하기로 한다.2 is a view for comparing the speech recognition method according to the prior art and the speech recognition method according to an embodiment of the present invention, (a) shows the trajectory of the reliability of the noise mixed speech signal as in Figure 1 (c) (B) shows a lattice output result corresponding to the 1-best recognition result for the noise mixed speech signal of FIG. 1 (b) by the speech recognition method according to the prior art. 2 (c) will be described later.

도 2 (b)에는 전체 입력 신호의 각 음성구간에 가장 근사하다고 여겨지는 음 소 후보들이 원으로 표현된 노드 안에 표기되어 있다. 도 2 (b)를 통해 알 수 있듯이 종래 기술에 따른 음성인식 방법에 의하면 신뢰도가 높은 정상 구간이거나 신뢰도 저하구간(20)임이 상관없이 동일한 정도의 격자 정보를 생성한다. 즉 모든 음성구간에 대해 동일한 세밀도로 음성인식이 수행된다.In (b) of FIG. 2, phoneme candidates considered to be closest to each voice section of the entire input signal are indicated in a node represented by a circle. As shown in FIG. 2 (b), according to the speech recognition method according to the related art, the grid information of the same degree is generated regardless of whether it is a normal section having high reliability or a section having low reliability 20. That is, speech recognition is performed with the same granularity for all speech sections.

따라서, 종래 기술에 의하면 잡음 혼입 음성신호에 대한 음성인식을 수행할 때에 전체 음성 프레임 중에서 잡음이 포함되지 않은 구간에 대한 음성인식 결과는 만족할만한 수준을 나타내더라도 잡음이 포함된 음성 손상구간에 대한 음성인식 결과는 만족스러운 수준을 나타내지 못한다. 즉 음성 손상구간에 대한 음성인식 결과는 낮은 신뢰도를 가지기에 음성인식 성능이 안정화되지 못한 문제점이 있었다.Therefore, according to the prior art, when performing speech recognition on a noise mixed speech signal, the speech recognition result of the speech damage section including the noise even though the speech recognition result for the section containing no noise is satisfactory. The recognition result does not represent a satisfactory level. That is, the speech recognition result for the speech damage section has a problem that the speech recognition performance is not stabilized because it has a low reliability.

본 발명은 상술한 바와 같은 종래 기술의 문제점을 해결하기 위해 제안한 것이다. 사람의 뇌는 잡음에 의해 손상된 음성 구간이라도 인지한 음성인식 단서(clue)들을 기반으로 복수 개의 후보들을 가정한 뒤, 이 구간의 전후 문맥 또는 발화 상황 등의 활용 가능한 모든 정보를 기반으로 손상된 구간에 대한 음성인식 결과를 극대화한다고 알려졌다. 본 발명은 이러한 사람의 뇌 기능을 일부 모델링하는 방법으로서, 잡음이 음성신호의 시간영역에서의 순차적 구간들을 다른 수준으로 오염시키는 경우가 많으므로, 입력 음성신호에 대해 구간에 따라 세밀도를 다르게 하여 음성인식 결과를 획득한다. 즉 신뢰도가 낮은 음성 구간에 대해서 더 많은 음 소 또는 단어 후보들의 정보를 활용, 즉 신뢰도가 낮은 음성 구간에 대해서는 보다 풍부한 격자 정보를 생성함과 아울러 신뢰도가 높은 음성 구간에 대해서는 최소한의 격자 정보를 생성 및 사용함으로써 음성인식 성능을 안정화하고자 한다.The present invention has been proposed to solve the problems of the prior art as described above. The human brain assumes a plurality of candidates based on speech recognition clues that recognize even a speech section damaged by noise, and then, based on all available information such as context and speech situation of the section, It is known to maximize the speech recognition results. The present invention is a method of partially modeling the human brain function, and since noise often contaminates the sequential sections in the time domain of the voice signal to different levels, the fineness of the input voice signal varies depending on the section. Acquire voice recognition result. In other words, more phonetic or word candidate information is used for the low confidence speech section, that is, richer grid information is generated for the low reliability speech section, and minimum grid information is generated for the high confidence speech section. And by using it to stabilize the speech recognition performance.

이를 위해 본 발명의 실시예에 의하면 음성신호의 매 구간마다 신뢰도를 추정하고, 신뢰도 정보에 따라 음성인식의 디코딩 시에 신호의 구간별로 비교 후보들의 생성 정도를 다르게 변화시킴으로써 음성인식이 잡음에 대해 강인한 특성을 가지도록 한다.To this end, according to an embodiment of the present invention, the speech recognition is robust against noise by estimating the reliability in every section of the speech signal and varying the generation degree of the comparison candidates for each section of the signal when decoding the speech recognition according to the reliability information. Have a characteristic.

본 발명의 다른 실시예에 의하면 입력되는 음성신호의 전체 구간 중에서 관심의 대상이 되는 특정 구간에 대해서 다른 구간보다 상대적으로 더욱 세밀한 격자 정보를 생성해 내고, 음성인식의 후처리 과정에서 이 정보를 활용함으로써 음성인식이 잡음에 대해 강인한 특성을 가지도록 한다.According to another exemplary embodiment of the present invention, more detailed grid information is generated for a specific section of interest among all sections of the input voice signal, and the information is used in post-processing of voice recognition. This makes the speech recognition robust to noise.

본 발명의 일 실시예로서 음성인식 방법은, 입력된 음성신호를 특정 단위의 복수 구간으로 구분하는 단계와, 상기 복수 구간 중에서 적어도 어느 한 구간과 다른 구간에 대해 격자 생성의 세밀도를 다르게 결정하는 단계와, 상기 복수 구간을 대상으로 하여 상기 세밀도에 따라 음성인식을 위한 격자를 생성하는 단계와, 생성한 상기 음성인식을 위한 격자를 탐색공간으로 제한하는 디코딩을 수행하여 음성인식 결과를 획득하는 단계를 포함할 수 있다.According to an embodiment of the present invention, a voice recognition method includes dividing an input voice signal into a plurality of sections of a specific unit, and differently determining the granularity of the grid generation for at least one section and another section among the plurality of sections. Generating a lattice for speech recognition according to the granularity of the plurality of sections; and performing decoding to limit the generated lattice for speech recognition to a search space to obtain speech recognition results. It may include a step.

여기서, 상기 구분하는 단계는, 상기 음성신호를 세그먼트 단위로 구분할 수 있다.The dividing may be performed by dividing the voice signal into segments.

상기 결정하는 단계는, 상기 음성신호에 대해 세그먼트별로 신뢰도 값을 추정하는 단계와, 추정한 상기 신뢰도 값을 정규화하는 단계와, 정규화한 상기 신뢰도 값을 기준으로 하여 세그먼트별로 n-best 값을 상이하게 결정하는 단계를 포함할 수 있다.The determining may include estimating a reliability value for each segment of the voice signal, normalizing the estimated reliability value, and differently n-best values for each segment based on the normalized reliability value. Determining may include.

상기 정규화하는 단계는, 세그먼트별 신뢰도 추정 방식의 종류에 상관없이 획득된 신뢰도 정보를 신뢰도의 최저치에 해당하는 0과 최고치에 해당하는 1 사이의 실수값으로 정규화할 수 있다.In the normalizing step, regardless of the type of the reliability estimation method for each segment, the obtained reliability information may be normalized to a real value between 0 corresponding to the lowest value of confidence and 1 corresponding to the highest value.

상기 정규화하는 단계는, 세그먼트별로 0과 1 사이의 값으로 표현된 신뢰도 값을 선형 또는 비선형 함수를 사용하여 1부터 자연수 V까지의 값으로 변환할 수 있다.In the normalizing step, the reliability value expressed as a value between 0 and 1 for each segment may be converted into a value from 1 to a natural number V using a linear or nonlinear function.

상기 구분하는 단계는, 지정된 적어도 어느 한 관심 구간을 구분할 수 있다.The dividing may distinguish one or more specified interest intervals.

상기 결정하는 단계는, 상기 관심 구간에 대해 n-best 값을 다른 구간과는 상이하게 지정할 수 있다.In the determining, the n-best value may be specified differently from the other sections for the interest section.

상기 생성하는 단계는, 상기 n-best 값을 이용하여 은닉 마르코프 모델(hidden Markov model; HMM) 기반의 음성인식을 위한 전향 확률 계산을 수행하는 단계와, 상기 전향 확률 계산의 완료 후에 역추적 과정을 통하여 상기 격자의 정보를 추출하는 단계를 포함할 수 있다.The generating may include performing a forward probability calculation for hidden recognition based on Hidden Markov model (HMM) using the n-best value, and performing a backtracking process after completion of the forward probability calculation. It may include extracting the information of the grid through.

상기 수행하는 단계는, 현재 프레임의 상기 전향 확률 계산의 대상이 되는 HMM 상태로 천이 가능한 모든 이전 프레임의 HMM 상태들에서 n-best 전향 확률값과 상태 천이 확률을 곱한 값들을 큰 값으로부터 감소하는 순서로 정렬한 후, 그 중에서 현재 HMM 상태의 n-best 개수에 해당하는 값들을 저장할 수 있다.The performing of the step may be performed by decreasing the value obtained by multiplying the n-best forward probability value and the state transition probability from the large value in the HMM states of all previous frames capable of transitioning to the HMM state that is the target of the forward probability calculation of the current frame. After sorting, values corresponding to the n-best number of the current HMM state can be stored.

상기 수행하는 단계는, 현재 프레임의 상기 전향 확률 계산의 대상이 되는 HMM 상태에서 각 n-best 값들이 이전 프레임의 어떤 HMM 모델의 어떤 상태에서 천이하였는지에 해당하는 정보를 저장할 수 있다.The performing may include storing information corresponding to which state each n-best value has transitioned in which HMM model of the previous frame in the HMM state that is the target of the forward probability calculation of the current frame.

상기 추출하는 단계는, 추출한 상기 격자 정보를 음성인식의 탐색 네트워크로 적용해서 상기 입력된 음성신호에 대해 2차적인 음성인식을 수행하여 최종 인식결과를 얻을 수 있다.The extracting may be performed by applying the extracted grid information to a speech recognition search network to perform secondary speech recognition on the input speech signal to obtain a final recognition result.

본 발명의 실시예에 의하면, 음성신호에 대해 구간에 따라 세밀도를 다르게 하여 음성인식 결과를 획득할 수 있다.According to the exemplary embodiment of the present invention, the speech recognition result may be obtained by varying the details of the speech signal according to the section.

예컨대, 음성신호의 각 구간별로 신뢰도를 반영하여 인식 수준을 달리함으로써, 잡음이 일부 구간에 집중되어 있거나 잡음이 시간에 따라 가변적인 경우 등에 있어 음성인식의 성능 저하를 방지할 수 있다. 즉 음성신호가 잡음, 패킷 손실 등에 의해 손상된 경우라도 음성인식의 급격한 성능저하 없이 보다 안정적으로 동작할 수 있다.For example, by varying the recognition level by reflecting the reliability of each section of the speech signal, it is possible to prevent performance degradation of speech recognition in the case where the noise is concentrated in some section or the noise is variable over time. In other words, even if the voice signal is damaged by noise, packet loss, etc., the voice signal can operate more stably without a sudden deterioration in voice recognition.

또한, 잡음이 없는 경우라도 음성인식의 특정 단어 또는 구(phrase)가 존재하는 일부 구간에 대해서 보다 세밀한 음성인식의 중간 결과를 볼 수 있어, 이를 음성인식 후처리 등 다양한 용도로 활용할 수 있는 이점이 있다. 즉 왜곡이 없는 경우라도 입력 음성신호의 관심의 대상이 되는 특정 구간에 대해 보다 정밀한 수준의 음성인식이 가능하다.In addition, even in the absence of noise, it is possible to see intermediate results of more detailed speech recognition for some sections in which a specific word or phrase of speech recognition exists, which can be used for various purposes such as post-processing of speech recognition. have. In other words, even in the absence of distortion, a more precise level of speech recognition is possible for a specific section of interest of the input speech signal.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various different forms, and only the embodiments make the disclosure of the present invention complete, and the general knowledge in the art to which the present invention belongs. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims. Like numbers refer to like elements throughout.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. In describing the embodiments of the present invention, if it is determined that a detailed description of a known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, terms to be described below are terms defined in consideration of functions in the embodiments of the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be based on the contents throughout this specification.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프 로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Each block of the accompanying block diagrams and combinations of steps of the flowchart may be performed by computer program instructions. These computer program instructions may be embedded in the processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that the instructions executed by the processor of the computer or other programmable data processing equipment may be executed in each block or flowchart of the block diagram. It will create means for performing the functions described in each step of. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in each block or flowchart of each step of the block diagram. Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions that perform processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions noted in the blocks or steps may occur out of order. For example, the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.

도 3은 본 발명의 실시예에 따른 음성인식 방법을 수행할 수 있는 음성인식 장치를 예시한 블록 구성도이다.3 is a block diagram illustrating a voice recognition device capable of performing a voice recognition method according to an embodiment of the present invention.

이에 나타낸 바와 같이 음성인식 장치(100)는, 구간 구분부(110), 세밀도 결정부(120), 격자 생성부(130), 디코딩부(140) 등을 포함하여 구성된다.As shown in the drawing, the speech recognition apparatus 100 includes a section divider 110, a fineness determiner 120, a grid generator 130, a decoder 140, and the like.

구간 구분부(110)는 입력된 음성신호를 특정 단위의 복수 구간으로 구분하여 세밀도 결정부(120)에게 제공할 수 있다. 예컨대, 음성신호를 세그먼트 단위로 구분하거나 사용자에 의해 지정된 적어도 어느 한 관심 구간을 다른 구간과 구분할 수 있다.The section divider 110 may divide the input voice signal into a plurality of sections of a specific unit and provide the same to the detail determiner 120. For example, the voice signal may be divided in units of segments or at least one interest section designated by the user may be distinguished from other sections.

세밀도 결정부(120)는 구간 구분부(110)에 의해 구분된 복수 구간 중에서 적어도 어느 한 구간과 다른 구간에 대해 격자 생성의 세밀도를 다르게 결정할 수 있다. 즉, 가변 n-best를 적용할 수 있다. 예컨대, 음성신호에 대해 세그먼트별로 신뢰도 값을 추정하여 정규화한 후에 신뢰도 값을 기준으로 하여 세그먼트별로 n-best 값을 상이하게 결정할 수 있다. 또는, 사용자에 의해 지정된 관심 구간에 대해 n-best 값을 다른 구간과는 상이하게 지정할 수 있다.The fineness determining unit 120 may differently determine the fineness of the grid generation for at least one section and the other section among the plurality of sections divided by the section separator 110. That is, the variable n-best can be applied. For example, after estimating and normalizing a reliability value for each segment of a voice signal, the n-best value may be differently determined for each segment based on the reliability value. Alternatively, the n-best value may be specified differently from other sections in the interest section designated by the user.

격자 생성부(130)는 복수 구간을 대상으로 하여 세밀도 결정부(120)가 결정한 세밀도에 따라 음성인식을 위한 격자를 생성할 수 있다. 예컨대, 세밀도 결정부(120)가 결정 또는 지정한 n-best 값을 이용하여 은닉 마르코프 모델(HMM) 기반의 음성인식을 위한 전향 확률(forward probability) 계산을 수행하며, 전향 확률 계산의 완료 후에 역추적(back-tracking) 과정을 통하여 격자의 정보를 추출할 수 있다.The grid generating unit 130 may generate a grid for speech recognition according to the fineness determined by the fineness determining unit 120 for a plurality of sections. For example, the fineness determining unit 120 performs forward probability calculation for hidden recognition based on Hidden Markov Model (HMM) using the determined or designated n-best value, and after completion of the forward probability calculation, The grid information can be extracted through a back-tracking process.

디코딩부(140)는 격자 생성부(130)가 생성한 음성인식을 위한 격자를 탐색공간으로 제한하는 디코딩을 수행하여 음성인식 결과를 획득할 수 있다. 예컨대, 현재 프레임의 전향 확률 계산 대상이 되는 HMM 상태로 천이(transition) 가능한 모든 이전 프레임의 HMM 상태들에서 n-best 전향 확률값과 상태 천이 확률을 곱한 값들을 큰 값으로부터 감소하는 순서로 정렬한 후에 그 중에서 현재 HMM 상태의 n-best 개수에 해당하는 값들을 저장하며, 현재 프레임의 전향 확률 계산 대상이 되는 HMM 상태에서 각 n-best 값들이 이전 프레임의 어떤 HMM 모델의 어떤 상태에서 천이하였는지에 해당하는 정보를 저장할 수 있다. 그리고, 추출한 격자 정보를 음성인식의 탐색 네트워크로 적용해서 입력된 음성신호에 대해 2차적인 음성인식을 수행하여 최종 인식결과를 얻을 수 있다.The decoder 140 may obtain a speech recognition result by performing decoding to limit the grid for speech recognition generated by the grid generator 130 to a search space. For example, after multiplying the n-best forward probability value by the state transition probability in the HMM states of all previous frames capable of transitioning to the HMM state that is the target of the forward probability calculation of the current frame, they are arranged in decreasing order from the large value. Among them, values corresponding to the n-best number of the current HMM state are stored, and each n-best value corresponding to which state of which HMM model of the previous frame has transitioned in the HMM state that is a target for calculating the forward probability of the current frame. Information can be stored. The extracted grid information is applied to a speech recognition search network to perform secondary speech recognition on the input speech signal to obtain a final recognition result.

이와 같이 구성된 본 발명의 실시예에 따른 음성인식 장치에 의한 음성인식 방법에 대해 도 4 내지 도 6을 추가로 참고하여 보다 상세히 설명하면 다음과 같다.The voice recognition method by the voice recognition device according to the embodiment of the present invention configured as described above will be described in more detail with reference to FIGS. 4 to 6 as follows.

도 4는 본 발명의 실시예에 따른 음성인식 방법을 설명하기 위한 흐름도이다. 먼저, 도 4의 단계 S211 내지 단계 S215까지의 실시예에 대해 설명하기로 한다.4 is a flowchart illustrating a voice recognition method according to an embodiment of the present invention. First, the embodiment from step S211 to step S215 of FIG. 4 will be described.

구간 구분부(110)는 입력된 음성신호를 세그먼트 단위로 구분하여 세밀도 결 정부(120)에게 제공하며, 세밀도 결정부(120)는 입력된 음성신호에 대해 세그먼트별로 신뢰도를 추정한다(S211). 음성신호의 세그먼트는 수십 밀리 초 길이의 음성 프레임(speech frame)이거나 또는 더 긴 구간에 대한 세그먼트일 수 있다. 본 발명에서는 음성 프레임을 예로 들어 기술하기로 한다. 임의의 음성 프레임의 신뢰도는 통계모델을 이용하여 계산하거나, 해당 신호 구간에 대한 신호대잡음비(Signal-to-Noise Ratio; SNR)를 계산하여 얻을 수 있다.The section divider 110 divides the input voice signal into segments and provides the fineness determination unit 120, and the fineness determiner 120 estimates the reliability of each input segment for each segment (S211). ). The segment of the speech signal may be a speech frame of several tens of milliseconds in length or may be a segment for longer intervals. In the present invention, a voice frame will be described as an example. The reliability of an arbitrary speech frame can be obtained by using a statistical model or by calculating a signal-to-noise ratio (SNR) for a corresponding signal section.

음성신호의 t 번째 프레임에서 추정된 SNR을 snr(t)라고 하면, 예를 들어 수학식 1과 같은 비선형 함수

Figure 112009038731656-pat00001
에 의해서 SNR 0dB 이하값은 0에 가깝고, SNR 25dB 이상은 1에 가깝도록 정규화할 수 있다(S213).If the SNR estimated in the t-th frame of the speech signal is snr (t), for example, a nonlinear function such as
Figure 112009038731656-pat00001
By SNR, the value below 0dB is close to 0, and SNR 25dB or more can be normalized to 1 (S213).

Figure 112009038731656-pat00002
Figure 112009038731656-pat00002

여기에서 t 번째 프레임의 정규화된 신뢰도 값

Figure 112009038731656-pat00003
의 값이 1에 가까울수록 왜곡이 심하지 않은 프레임이며, 0에 가까울수록 잡음에 의해 손실이 크게 발생하여 신뢰도가 떨어지는 프레임을 의미한다. 도 1 (c)에서 실선으로 표시된 그래프는 도 1 (b)의 잡음 혼입 음성신호에 대한
Figure 112009038731656-pat00004
값의 일례를 보인다.Where the normalized confidence value of the t th frame
Figure 112009038731656-pat00003
The closer the value is to 1, the less distortion the frame is, and the closer to 0, the less loss of noise is caused by noise. The graph indicated by the solid line in FIG. 1 (c) shows the noise mixed speech signal of FIG. 1 (b).
Figure 112009038731656-pat00004
An example of a value is shown.

아울러, 세밀도 결정부(120)는 세그먼트별 신뢰도값

Figure 112009038731656-pat00005
를 기준으로 프레임 t에서의 n-best 값 v(t)를 결정한다(S215). 여기서는 신뢰도가 낮을수록 n-best 값을 크게 하여 보다 많은 후보들을 생성하므로,
Figure 112009038731656-pat00006
와 v(t)는 반비례 관계이며, 다음과 같이 1개에서 V개까지의 n-best 후보값으로 사상(mapping)된다. 이 때, V는 1보다 큰 정수이다.In addition, the fineness determination unit 120 has a reliability value for each segment.
Figure 112009038731656-pat00005
The n-best value v (t) in the frame t is determined based on (S215). In this case, the lower the reliability, the larger the n-best value, which generates more candidates.
Figure 112009038731656-pat00006
And v (t) are inversely proportional and are mapped to one to V n-best candidate values as follows. At this time, V is an integer greater than one.

Figure 112009038731656-pat00007
Figure 112009038731656-pat00007

v(t)는 용도에 따라 0에서 1 사이 값으로 정규화된 신뢰도 정보

Figure 112009038731656-pat00008
를 1에서 V 사이의 값으로 수학식 2와 다른 방법으로 사상할 수 있다. 즉 다른 선형 또는 비선형 함수를 사용하여 1부터 자연수 V까지의 값으로 변환할 수 있다.v (t) is reliability information normalized to a value between 0 and 1 depending on the purpose
Figure 112009038731656-pat00008
Can be mapped to a value between 1 and V in a different way from Equation 2. In other words, other linear or nonlinear functions can be used to convert values from 1 to the natural number V.

도 4의 단계 S221 및 단계 S223의 실시예에 의하면, 사용자가 관심을 갖는 특정 구간(Interval Of Interest; IOI)을 지정하면 구간 구분부(110)는 사용자에 의해 지정된 적어도 어느 한 관심 구간과 다른 구간을 구분하여 세밀도 결정부(120)에게 제공하며, 세밀도 결정부(120)는 해당 구간들, 즉 관심 구간 및 다른 구간에 대한 n-best 후보의 개수를 지정해 줄 수 있다. 이 경우에도 프레임 t(t=1, 2, …, T)에 대해 v(t) 값은 1부터 V까지의 정수값으로 n-best 후보 개수를 지정한다. V값이 클수록 해당 구간에 대해 보다 다양한 n-best 후보들을 생성할 수 있다.According to the exemplary embodiment of step S221 and step S223 of FIG. 4, if the user specifies an interval of interest (IOI), the section divider 110 is different from at least one interest section specified by the user. Are provided to the detail determining unit 120, and the detail determining unit 120 may designate the number of n-best candidates for the corresponding sections, that is, the section of interest and the other section. Also in this case, for the frame t (t = 1, 2, ..., T), the value of v (t) is an integer value from 1 to V, which specifies the number of n-best candidates. The larger the V value, the more various n-best candidates can be generated for the interval.

다음으로, 격자 생성부(130)는 입력된 음성신호의 프레임들에 대해 v(t)를 구한 후, 실제 음성인식을 위한 디코딩 및 격자를 생성하게 된다(S230). 이 과정은 아래에서 도 5를 참조하여 보다 상세히 기술하기로 한다.Next, the grid generating unit 130 obtains v (t) for the frames of the input voice signal, and then generates a decoding and grid for real speech recognition (S230). This process will be described in more detail with reference to FIG. 5 below.

마지막으로, 디코딩부(140)는 격자 생성부(130)에 의해 생성된 격자 정보를 활용한 2차 디코딩, 즉 생성된 격자를 탐색공간으로 제한하여 최종적인 음성인식 결과를 얻는다(S240).Finally, the decoding unit 140 obtains the final speech recognition result by limiting the second decoding, that is, the generated grid by using the grid information generated by the grid generator 130, to the search space (S240).

도 5는 은닉 마르코프 모델 기반의 음성인식에서 바이터비(Viterbi) 디코딩 알고리즘의 동작 원리를 설명하기 위한 전향 확률 계산 및 바이터비 디코딩의 예이다.5 is an example of forward probability calculation and biter ratio decoding for explaining the operation principle of the Viterbi decoding algorithm in the speech recognition based on the hidden Markov model.

도 5에서 X축은 음성신호의 일정한 간격에서 단위 구간(음성 세그먼트 또는 프레임)마다 추출한 T개의 특징벡터들을 의미하며, Y축은 N개의 음소(phoneme)들에 대한 HMM들을 나타낸 것으로 각각의 음소는 3개의 상태(state)로 구성된다. 각각의 상태는 가우시안 혼합 밀도 함수(gaussian mixture density function)를 모델링하고 있으며, 예를 들어 특징벡터

Figure 112009038731656-pat00009
의 HMM의 상태
Figure 112009038731656-pat00010
에서의 출력 확률값
Figure 112009038731656-pat00011
은 수학식 3과 같이 표현할 수 있다.In FIG. 5, the X-axis denotes T feature vectors extracted for each unit section (voice segment or frame) at a constant interval of the voice signal, and the Y-axis represents HMMs for N phonemes, each phoneme being three It consists of states. Each state models a Gaussian mixture density function, for example a feature vector.
Figure 112009038731656-pat00009
State of HMM
Figure 112009038731656-pat00010
Output Probability at
Figure 112009038731656-pat00011
Can be expressed as in Equation 3.

Figure 112009038731656-pat00012
Figure 112009038731656-pat00012

수학식 3에서 M은 가우시안 분포의 개수를 의미하며, N은 일반적인 가우시안 분포 함수를 의미한다.In Equation 3, M denotes the number of Gaussian distributions, and N denotes a general Gaussian distribution function.

도 5에서 바이터비 디코딩 알고리즘은 X축 상의 왼쪽에서 오른쪽 방향으로 하나의 프레임씩(또는 하나의 특징벡터) 진행하며, Y축에 표현된 모든 HMM들의 모든 상태에 대해 전향 확률값 등의 필요한 정보를 계산하면서, 최적의 인식경로를 탐색한다. t번째 프레임에서 음소 p에 대한 j번째 HMM 상태의 전향 확률값

Figure 112009038731656-pat00013
는 다음 수학식 4와 같이 계산된다.In FIG. 5, the Viterbi decoding algorithm proceeds one frame (or one feature vector) from left to right on the X axis, and calculates necessary information such as a forward probability value for all states of all HMMs represented on the Y axis. Search for the best recognition path. Forward probability value of the j th HMM state for the phoneme p in the t th frame
Figure 112009038731656-pat00013
Is calculated as in Equation 4 below.

Figure 112009038731656-pat00014
Figure 112009038731656-pat00014

이 때, HMM의 첫 번째 상태(j=1)인 경우는 음소 r에서 음소 p로의 모델 간 천이확률, 즉 언어모델 확률값을 포함하여 다음 수학식 5와 같이 계산한다.In this case, the first state of the HMM (j = 1) is calculated as shown in Equation 5 including a probability of transition between models from phoneme r to phoneme p, that is, a language model probability value.

Figure 112009038731656-pat00015
Figure 112009038731656-pat00015

예를 들어, 도 5의 노드(301)는 4번째 프레임에서 음소 2의 마지막 상태에서의

Figure 112009038731656-pat00016
값을 계산 및 저장한다(p=2, j=3, t=4). 노드(301)는 이전 프레임에서 음소 2의 상태 2번 노드(302) 또는 3번 노드(303)에서 천이하였으며, 탐색 경로의 역추적을 위해서 이전 프레임의 노드들 중에서 현재 노드까지의 최적 경로 정보를 수학식 6에서처럼 계산하여 저장한다.For example, the node 301 of FIG. 5 is in the last state of phoneme 2 in the fourth frame.
Figure 112009038731656-pat00016
Compute and store the value (p = 2, j = 3, t = 4). Node 301 has transitioned from node 2 302 or node 3 303 of phoneme 2 in the previous frame. Calculate and store as in Equation 6.

Figure 112009038731656-pat00017
Figure 112009038731656-pat00017

바이터비 디코딩 알고리즘은 입력 음성의 마지막 프레임 T까지

Figure 112009038731656-pat00018
Figure 112009038731656-pat00019
를 계산한 후에,
Figure 112009038731656-pat00020
값이 최고인 p를 선택하고, 여기에서부터
Figure 112009038731656-pat00021
를 이용하여 최적의 인식결과를 역추적 과정을 통해 얻게 된다. The Viterbi decoding algorithm uses the last frame T of the input speech.
Figure 112009038731656-pat00018
Wow
Figure 112009038731656-pat00019
After calculating
Figure 112009038731656-pat00020
Select p with the highest value, and from here
Figure 112009038731656-pat00021
The optimal recognition result is obtained through the backtracking process.

본 발명에서는 임의의 프레임 인덱스 t에서

Figure 112009038731656-pat00022
의 개념을 보다 확장하여, 매 노드마다 N개의 n-best 값들을 저장한다. 이 때, n-best의 N 값은 프레임의 신뢰도 정보에 관련된 값으로 프레임 별로 다른 값을 가질 수 있다.
Figure 112009038731656-pat00023
의 확장된 값은
Figure 112009038731656-pat00024
로 표기하며 수학식 7과 같다.In the present invention, at any frame index t
Figure 112009038731656-pat00022
To extend the notion of, we store N n-best values in every node. In this case, N value of n-best is a value related to reliability information of a frame and may have a different value for each frame.
Figure 112009038731656-pat00023
The expanded value of
Figure 112009038731656-pat00024
It is expressed as Equation (7).

Figure 112009038731656-pat00025
Figure 112009038731656-pat00025

여기서

Figure 112009038731656-pat00026
는 t번째 프레임의 신뢰도를 이용하여 계산한 n-best 후보들의 개수로서 1보다 큰 정수값이다.
Figure 112009038731656-pat00027
함수는 괄호 안의 값들을 큰 값으로부터 작은 값의 순서로 정렬하는 함수이며, 이 함수의 괄호 안의 값은 특정 p 값에 대해 변수 i와 w가 정해진 범위 내에서 변함에 따라 각 경우에 대한 값들을 갖게 된다.
Figure 112009038731656-pat00028
함수는 u번째 큰 값을 출력하는 함수이다. 도 6은 이 과정을 개념적으로 도식화한 것으로 도 6에서 t번째 프레임에서 노드(401)의 n-best 값들은 이전 프레임 t-1에서 노드(401)로 천이될 수 있는 각 상태들(402, 403)에 저장된 n-best 값들을 대상으로
Figure 112009038731656-pat00029
값들을 계산한 후, 이로부터 n-best를 선택하여 저장하게 된다.here
Figure 112009038731656-pat00026
Is an integer value greater than 1 as the number of n-best candidates calculated using the reliability of the t-th frame.
Figure 112009038731656-pat00027
A function is a function that sorts the values in parentheses in order from large to small, and the values in parentheses have values for each case as the variables i and w vary within a specified range for a particular p value. do.
Figure 112009038731656-pat00028
The function prints the uth largest value. FIG. 6 conceptually illustrates this process, where n-best values of node 401 in the t-th frame of FIG. 6 are transitioned to states 402 and 403 that may transition to node 401 in previous frame t-1. For n-best values stored in
Figure 112009038731656-pat00029
After calculating the values, we choose n-best from it and store it.

또,

Figure 112009038731656-pat00030
계산 과정에서 j가 HMM의 첫 번째 상태(j=1)인 경우는 음소 r에서 음소 p로의 모델 간 천이를 고려하여, 다음 수학식 8과 같이 계산한다.In addition,
Figure 112009038731656-pat00030
In the calculation process, when j is the first state of the HMM (j = 1), the equation is calculated as shown in Equation 8 in consideration of the transition between the models from the phoneme r to the phoneme p.

Figure 112009038731656-pat00031
Figure 112009038731656-pat00031

즉, 위 수학식 8은 현재 프레임 t를 기준으로 이전 프레임 t-1에서 전체 R개의 음소 모델들의 마지막 상태(end-state)에 저장된 v(t-1)개 만큼의 n-best 값,

Figure 112009038731656-pat00032
들에 대해서 모델 p의 첫 번째 상태로 천이하는 경우에 대해서 v(t)개 만큼의 n-best를 계산하여 저장한다. 이 방식의 역추적 과정은 수학식 6에서 설명한 바와 같은 원리로 이루어지며, 프레임 t에서의 n-best 각각에 대해
Figure 112009038731656-pat00033
를 대신하여
Figure 112009038731656-pat00034
를 계산 및 저장한다.That is, the above Equation 8 is based on the current frame t, n-best values of v (t-1) stored in the end-state of the entire R phoneme models in the previous frame t-1,
Figure 112009038731656-pat00032
For the case of transitioning to the first state of the model p, we calculate and store as many as v (t) n-bests. The traceback process of this method is based on the same principle as described in Equation 6, for each n-best in frame t.
Figure 112009038731656-pat00033
On behalf of
Figure 112009038731656-pat00034
Calculate and store

한편, HMM 기반의 음성인식에 대한 기술 중에서 앞서 설명하지 않은 기술들은 주지 또는 관용의 기술에 따르기에 그 상세한 설명은 생략하였다.On the other hand, the description of the HMM-based speech recognition technology that has not been described above according to well-known or tolerant technology, the detailed description thereof is omitted.

앞서 설명한 바와 같이 도 2는 종래 기술에 따른 음성인식 방법과 본 발명의 실시예에 따른 음성인식 방법을 비교하기 위한 도면이며, (c)는 본 발명의 실시예에 따른 음성인식 방법에 의한 도 1 (b)의 잡음 혼입 음성신호에 대한 n-best 인식 결과에 해당하는 격자 출력결과를 나타낸 것이다. 예컨대, 신뢰도가 낮은 음성 구 간에 대해서 더 많은 음소 또는 단어 후보들의 격자 정보를 활용함으로써 음성인식 성능의 안정화를 꾀한다. 이는 도 2 (c)에 나타난 바와 같이 신뢰도가 낮은 음성 구간에 대응하는 위치에서 보다 풍부한 격자 정보를 생성하여 고밀도 격자구간(30)을 가지며, 신뢰도가 높은 음성 구간에 대해서는 최소한의 격자 정보를 생성 및 사용하는 것이 가능하게 된다.As described above, Figure 2 is a view for comparing the speech recognition method according to an embodiment of the present invention and the speech recognition method according to the prior art, (c) is a view of Figure 1 by the speech recognition method according to an embodiment of the present invention The lattice output result corresponding to the n-best recognition result for the noise mixed speech signal of (b) is shown. For example, the speech recognition performance is stabilized by utilizing the grid information of more phonemes or word candidates for speech sections with low reliability. As shown in FIG. 2 (c), it generates richer grid information at a position corresponding to a voice section with low reliability and has a high density grid section 30, and generates minimum grid information for a voice section with high reliability. It becomes possible to use.

도 1은 정상적인 음성신호와 잡음 혼입 음성신호를 비교하기 위한 도면,1 is a diagram for comparing a normal speech signal and a noise mixed speech signal;

도 2는 종래 기술에 따른 음성인식 방법과 본 발명의 실시예에 따른 음성인식 방법을 비교하기 위한 도면,2 is a view for comparing the speech recognition method according to an embodiment of the present invention with the speech recognition method according to the prior art,

도 3은 본 발명의 실시예에 따른 음성인식 방법을 수행할 수 있는 음성인식 장치를 예시한 블록 구성도,3 is a block diagram illustrating a voice recognition device capable of performing a voice recognition method according to an embodiment of the present invention;

도 4는 본 발명의 실시예에 따른 음성인식 방법을 설명하기 위한 흐름도,4 is a flowchart illustrating a voice recognition method according to an embodiment of the present invention;

도 5는 은닉 마르코프 모델 기반의 음성인식에서 바이터비 디코딩 알고리즘의 동작 원리를 설명하기 위한 전향 확률 계산 및 바이터비 디코딩의 예,5 is an example of a forward probability calculation and a biter ratio decoding for explaining the operation principle of the biter ratio decoding algorithm in speech recognition based on hidden Markov model;

도 6은 본 발명의 실시예에 따라 가변 n-best를 적용할 경우 전향 확률 계산 및 바이터비 디코딩 예.6 is an example of forward probability calculation and bitter ratio decoding when the variable n-best is applied according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100 : 음성인식 장치 110 : 구간 구분부100: voice recognition device 110: section separator

120 : 세밀도 결정부 130 : 격자 생성부120: fineness determination unit 130: grid generation unit

140 : 디코딩부140: decoding unit

Claims (11)

입력된 음성신호를 특정 단위의 복수 구간으로 구분하는 단계와,Dividing the input voice signal into a plurality of sections of a specific unit; 상기 복수 구간 중에서 적어도 어느 한 구간과 다른 구간에 대해 격자 생성의 세밀도를 다르게 결정하는 단계와,Determining the granularity of the grid generation differently for at least one of the plurality of sections from another section; 상기 복수 구간을 대상으로 하여 상기 세밀도에 따라 음성인식을 위한 격자를 생성하는 단계와,Generating a lattice for speech recognition according to the fineness of the plurality of sections; 생성한 상기 음성인식을 위한 격자를 탐색공간으로 제한하는 디코딩을 수행하여 음성인식 결과를 획득하는 단계Acquiring a speech recognition result by performing decoding to limit the generated grid for speech recognition to a search space 를 포함하는 음성인식 방법.Speech recognition method comprising a. 제 1 항에 있어서,The method of claim 1, 상기 구분하는 단계는, 상기 음성신호를 세그먼트 단위로 구분하는The dividing may include dividing the voice signal into segments. 음성인식 방법.Voice recognition method. 제 2 항에 있어서,The method of claim 2, 상기 결정하는 단계는,The determining step, 상기 음성신호에 대해 세그먼트별로 신뢰도 값을 추정하는 단계와,Estimating a confidence value for each segment of the speech signal; 추정한 상기 신뢰도 값을 정규화하는 단계와,Normalizing the estimated reliability value; 정규화한 상기 신뢰도 값을 기준으로 하여 세그먼트별로 n-best 값을 상이하 게 결정하는 단계Determining the n-best value differently for each segment based on the normalized confidence value 를 포함하는 음성인식 방법.Speech recognition method comprising a. 제 3 항에 있어서,The method of claim 3, wherein 상기 정규화하는 단계는, 세그먼트별 신뢰도 추정 방식의 종류에 상관없이 획득된 신뢰도 정보를 신뢰도의 최저치에 해당하는 0과 최고치에 해당하는 1 사이의 실수값으로 정규화하는The normalizing may include normalizing the obtained reliability information to a real value between 0 corresponding to the lowest value of confidence and 1 corresponding to the highest value regardless of the type of reliability estimation method for each segment. 음성인식 방법.Voice recognition method. 제 4 항에 있어서,The method of claim 4, wherein 상기 정규화하는 단계는, 세그먼트별로 0과 1 사이의 값으로 표현된 신뢰도 값을 선형 또는 비선형 함수를 사용하여 1부터 자연수 V까지의 값으로 변환하는The normalizing may include converting a reliability value expressed as a value between 0 and 1 for each segment into a value from 1 to a natural number V using a linear or nonlinear function. 음성인식 방법.Voice recognition method. 제 1 항에 있어서,The method of claim 1, 상기 구분하는 단계는, 지정된 적어도 어느 한 관심 구간을 구분하는The dividing may include dividing at least one specified interest region. 음성인식 방법.Voice recognition method. 제 6 항에 있어서,The method of claim 6, 상기 결정하는 단계는, 상기 관심 구간에 대해 n-best 값을 다른 구간과는 상이하게 지정하는The determining may include specifying an n-best value differently from another interval for the interval of interest. 음성인식 방법.Voice recognition method. 제 3 항 또는 제 7 항에 있어서,The method according to claim 3 or 7, 상기 생성하는 단계는,The generating step, 상기 n-best 값을 이용하여 은닉 마르코프 모델(HMM) 기반의 음성인식을 위한 전향 확률 계산을 수행하는 단계와,Performing a forward probability calculation for speech recognition based on Hidden Markov Model (HMM) using the n-best value; 상기 전향 확률 계산의 완료 후에 역추적 과정을 통하여 상기 격자의 정보를 추출하는 단계Extracting information of the grid through a backtracking process after completion of the forward probability calculation; 를 포함하는 음성인식 방법.Speech recognition method comprising a. 제 8 항에 있어서,The method of claim 8, 상기 수행하는 단계는, 현재 프레임의 상기 전향 확률 계산의 대상이 되는 HMM 상태로 천이 가능한 모든 이전 프레임의 HMM 상태들에서 n-best 전향 확률값과 상태 천이 확률을 곱한 값들을 큰 값으로부터 감소하는 순서로 정렬한 후, 그 중에서 현재 HMM 상태의 n-best 개수에 해당하는 값들을 저장하는The performing of the step may be performed by decreasing the value obtained by multiplying the n-best forward probability value and the state transition probability from the large value in the HMM states of all previous frames capable of transitioning to the HMM state that is the target of the forward probability calculation of the current frame. After sorting, the values corresponding to the n-best number of the current HMM state are stored. 음성인식 방법.Voice recognition method. 제 9 항에 있어서,The method of claim 9, 상기 수행하는 단계는, 현재 프레임의 상기 전향 확률 계산의 대상이 되는 HMM 상태에서 각 n-best 값들이 이전 프레임의 어떤 HMM 모델의 어떤 상태에서 천이하였는지에 해당하는 정보를 저장하는The performing of the step may include storing information corresponding to which state of each H-model of the previous frame has transitioned to each n-best value in the HMM state that is the target of the forward probability calculation of the current frame. 음성인식 방법.Voice recognition method. 제 8 항에 있어서,The method of claim 8, 상기 추출하는 단계는, 추출한 상기 격자 정보를 음성인식의 탐색 네트워크로 적용해서 상기 입력된 음성신호에 대해 2차적인 음성인식을 수행하여 최종 인식결과를 얻는The extracting may include applying the extracted grid information to a speech recognition search network to perform secondary speech recognition on the input speech signal to obtain a final recognition result. 음성인식 방법.Voice recognition method.
KR1020090057224A 2009-06-25 2009-06-25 Method for speech recognition KR101134450B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090057224A KR101134450B1 (en) 2009-06-25 2009-06-25 Method for speech recognition

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090057224A KR101134450B1 (en) 2009-06-25 2009-06-25 Method for speech recognition

Publications (2)

Publication Number Publication Date
KR20100138623A KR20100138623A (en) 2010-12-31
KR101134450B1 true KR101134450B1 (en) 2012-04-09

Family

ID=43512075

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090057224A KR101134450B1 (en) 2009-06-25 2009-06-25 Method for speech recognition

Country Status (1)

Country Link
KR (1) KR101134450B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102069693B1 (en) * 2016-11-08 2020-01-23 한국전자통신연구원 Apparatus and method for recognizing natural language dialogue speech

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050010412A1 (en) 2003-07-07 2005-01-13 Hagai Aronowitz Phoneme lattice construction and its application to speech recognition and keyword spotting
EP1912205A2 (en) 2006-10-12 2008-04-16 QNX Software Systems (Wavemakers), Inc. Adaptive context for automatic speech recognition systems
KR20080068844A (en) * 2005-11-08 2008-07-24 마이크로소프트 코포레이션 Indexing and searching speech with text meta-data
KR20090035944A (en) * 2007-10-08 2009-04-13 삼성전자주식회사 Method and apparatus for speech registration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050010412A1 (en) 2003-07-07 2005-01-13 Hagai Aronowitz Phoneme lattice construction and its application to speech recognition and keyword spotting
KR20080068844A (en) * 2005-11-08 2008-07-24 마이크로소프트 코포레이션 Indexing and searching speech with text meta-data
EP1912205A2 (en) 2006-10-12 2008-04-16 QNX Software Systems (Wavemakers), Inc. Adaptive context for automatic speech recognition systems
KR20090035944A (en) * 2007-10-08 2009-04-13 삼성전자주식회사 Method and apparatus for speech registration

Also Published As

Publication number Publication date
KR20100138623A (en) 2010-12-31

Similar Documents

Publication Publication Date Title
US5937384A (en) Method and system for speech recognition using continuous density hidden Markov models
JP4195428B2 (en) Speech recognition using multiple speech features
US5625749A (en) Segment-based apparatus and method for speech recognition by analyzing multiple speech unit frames and modeling both temporal and spatial correlation
US6236963B1 (en) Speaker normalization processor apparatus for generating frequency warping function, and speech recognition apparatus with said speaker normalization processor apparatus
US20110077943A1 (en) System for generating language model, method of generating language model, and program for language model generation
US20220262352A1 (en) Improving custom keyword spotting system accuracy with text-to-speech-based data augmentation
US20140025379A1 (en) Method and System for Real-Time Keyword Spotting for Speech Analytics
KR101120765B1 (en) Method of speech recognition using multimodal variational inference with switching state space models
US7877256B2 (en) Time synchronous decoding for long-span hidden trajectory model
US7734460B2 (en) Time asynchronous decoding for long-span trajectory model
Mitra et al. Articulatory trajectories for large-vocabulary speech recognition
JP4836076B2 (en) Speech recognition system and computer program
Szoke et al. Hybrid word-subword decoding for spoken term detection
AU2018271242A1 (en) Method and system for real-time keyword spotting for speech analytics
KR101134450B1 (en) Method for speech recognition
Herbig et al. Evaluation of two approaches for speaker specific speech recognition
Rasipuram et al. Integrated pronunciation learning for automatic speech recognition using probabilistic lexical modeling
Wang et al. Improved Mandarin speech recognition by lattice rescoring with enhanced tone models
Chung et al. Fast speech recognition to access a very large list of items on embedded devices
Chung et al. Fast speech recognition for voice destination entry in a car navigation system
Vasquez et al. Extending the Hierarchical Scheme: Inter and Intra Phonetic Information
CN116524912A (en) Voice keyword recognition method and device
JP2006235298A (en) Speech recognition network forming method, and speech recognition device, and its program
Kim et al. An approach to robust unsupervised speaker adaptation
Vaásquez et al. On speeding phoneme recognition in a hierarchical MLP structure

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee