KR20110033749A - 부단위 인식을 이용한 핵심어 검출 방법 - Google Patents

부단위 인식을 이용한 핵심어 검출 방법 Download PDF

Info

Publication number
KR20110033749A
KR20110033749A KR1020090091362A KR20090091362A KR20110033749A KR 20110033749 A KR20110033749 A KR 20110033749A KR 1020090091362 A KR1020090091362 A KR 1020090091362A KR 20090091362 A KR20090091362 A KR 20090091362A KR 20110033749 A KR20110033749 A KR 20110033749A
Authority
KR
South Korea
Prior art keywords
subunit
penalty
key word
array
recognition
Prior art date
Application number
KR1020090091362A
Other languages
English (en)
Other versions
KR101037801B1 (ko
Inventor
김남수
한창우
강신재
Original Assignee
서울대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울대학교산학협력단 filed Critical 서울대학교산학협력단
Priority to KR1020090091362A priority Critical patent/KR101037801B1/ko
Publication of KR20110033749A publication Critical patent/KR20110033749A/ko
Application granted granted Critical
Publication of KR101037801B1 publication Critical patent/KR101037801B1/ko

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/08Speech classification or search
    • 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/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • 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
    • G10L2015/088Word spotting

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)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 부단위 인식심어 검출 방법에 따르면, 부단위 인식을 이용하여 사용자가 발화한 음성을 이용한 핵심어 검출 방법에 관한 것으로서, 보다 구체적으로는 (1) 사용자가 발화한 음성에 대하여 부단위 배열을 추출하는 단계; (2) 핵심어를 부단위 배열로 표현하는 단계; 및 (3) 상기 단계 (2)에서 표현된 부단위 배열과, 상기 단계 (1)에서 추출된 부단위 배열을 비교하여, 상기 핵심어가 사용자가 발화한 상기 음성에 포함되어 있는지 여부를 결정하는 단계를 포함하는 것을 그 구성상의 특징으로 한다.
본 발명의 부단위 인식을 이용한 핵에 핵심어가 포함되어 있는지 여부를 판단함으로써, 기존의 핵심어 검출 방법과 비교하여 계산 용량 및 메모리 사용량을 대폭 줄일 수 있다.
핵심어 검출, 부단위, 페널티 행렬

Description

부단위 인식을 이용한 핵심어 검출 방법{KEYWORD SPOTTING METHOD USING SUBUNIT SEQUENCE RECOGNITION}
본 발명은 사용자가 발화한 음성에 핵심어가 포함되어 있는지 여부를 결정하는 핵심어 검출 방법에 관한 것으로서, 보다 구체적으로는 부단위 인식을 이용한 핵심어 검출 방법에 관한 것이다.
핵심어 검출의 목적은, 사용자가 발화한 음성 내용에 핵심어가 포함되어 있는지의 여부를 판단하는 것이다. 핵심어란 사용자가 중요하게 생각하여 검출하기 원하는 단어를 미리 설정해 놓은 것을 말한다. 기존의 핵심어 검출 기법은 음성 인식과 유사한 방식으로 쓰이고 있으며, 대부분 은닉 마르코프 모델(hidden Markov model, HMM) 기반 음성인식 알고리즘을 이용하여 핵심어의 유무를 판단한다. 이 방식에 의하면 사전에 수많은 음성 데이터로부터 음소 단위로 모델링하며, 이 음소 단위 모델을 이용하여 핵심어에 해당하는 핵심어 모델과 비 핵심어 모델을 만들어내게 된다. 발음을 음소 단위로 모델링을 하게 되면 핵심어가 바뀌는 경우에도 다시 트레이닝 과정을 거쳐 단어 단위 핵심어 모델을 만들어 낼 필요 없이, 핵심어가 발음 나는 대로 음소의 배열만 만들어주면, 음소 단위 모델들을 조합하여 단어 단 위 핵심어 모델을 만들어낼 수 있다는 장점이 있다. 또한 사전에 수많은 사람으로부터 얻어진 데이터를 이용하여 모델을 학습하면 일반성이 커지기 때문에, 학습 시와 다른 화자의 발음에도 비교적 정확하게 인식을 수행할 수 있다. 이를 화자 독립 시스템이라고 한다.
실제로 음성 입력이 들어오면 여기에 핵심어가 포함되어 있는지 여부를 확률 기반 수학 모델을 통하여 계산하게 된다. 앞서 언급한 것과 같이 핵심어 검출 기법은 음성 인식의 일종이므로 확률 기반 수학 모델 역시 음성 인식에서 널리 쓰이는 기법과 유사하다. 현재 음성 인식에서 가장 강인하고 유용하게 사용되고 있는 것은 은닉 마르코프 모델이다. 마르코프 모델은 현재 상태의 신호 특징이 이전 상태의 신호 특징과 확률적으로 연관되어 있음을 수학적으로 모델링 한 것이며, 특히 은닉 마르코프 모델은 매시간에 따른 상태 정보가 은닉된 상태로 관찰자가 확인할 수 없으며, 단지 최종적으로 출력된 신호 특징 결과만을 보고 원래의 상태를 추측해 내야 하는 상태를 모델링 한 것이다.
도 1은 일반적인 은닉 마르코프 모델 기반의 핵심어 검출 시스템의 흐름을 나타내는 도면이다. 도 1에 도시된 바와 같이, 일반적인 은닉 마르코프 모델 기반의 핵심어 검출 시스템은, 사전에 사용자가 핵심어 목록을 선정하면 이를 발음 표기 변환을 하여 각 핵심어에 해당하는 확률 모델을 생성하여 핵심어 모델로 보유한 후, 음성 신호가 입력되면 이 신호로부터 음성 특징 파라미터를 추출하게 되고, 이 특징 파라미터와 사전에 보유하고 있는 핵심어 모델을 비교하여 핵심어를 검출하게 된다. 물론 그 유사도가 낮을 경우에는 실제로 핵심어가 아닐 가능성이 매우 높으므로 비핵심어 모델과의 비교 결과를 이용하는 후처리 과정을 통과하여 최종적으로 핵심어 검출 결과를 출력하게 된다.
그러나 이와 같은 기존의 핵심어 검출 방법은, 그 구조가 복잡할 뿐만 아니라, 계산 용량이 크고 메모리 사용량이 많아, 특히 휴대용 단말기와 같은 계산 능력이 한정된 경우에 효율적으로 사용되기 어렵다는 문제점이 있다.
본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, 부단위 인식을 이용하여 사용자가 발화한 음성에 핵심어가 포함되어 있는지 여부를 판단함으로써, 기존의 핵심어 검출 방법과 비교하여 계산 용량 및 메모리 사용량을 대폭 줄인 핵심어 검출 방법을 제공하는 것을 그 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른, 사용자가 발화한 음성에 핵심어가 포함되어 있는지 여부를 결정하는 부단위 인식을 이용한 핵심어 검출 방법은,
(1) 사용자가 발화한 음성에 대하여 부단위 배열을 추출하는 단계;
(2) 핵심어를 부단위 배열로 표현하는 단계; 및
(3) 상기 단계 (2)에서 표현된 부단위 배열과, 상기 단계 (1)에서 추출된 부단위 배열을 비교하여, 상기 핵심어가 사용자가 발화한 상기 음성에 포함되어 있는지 여부를 결정하는 단계를 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 단계 (1) 이전에,
사용자가 발화한 음성에 대하여 특징 파라미터 추출을 포함하는 전처리를 수행하는 단계를 더 포함할 수 있다.
바람직하게는, 상기 단계 (1)은, 부단위 인식기에 의해 수행될 수 있다.
바람직하게는, 상기 단계 (3)은,
a. 에러 패턴에 관한 페널티를 정의하는 단계;
b. 상기 단계 a에서 정의된 페널티를 이용하여, 상기 단계 (2)에서 표현된 부단위 배열과 상기 단계 (1)에서 추출된 부단위 배열을 비교할 경우의 최소 페널티를 갖는 경로를 구하는 단계; 및
c. 상기 단계 b에서 구해진 경로의 페널티 합을 문턱 값과 비교하여 핵심어 포함 여부를 결정하는 단계를 포함할 수 있다.
더욱 바람직하게는, 상기 단계 a에서,
상기 에러 패턴으로서, 치환(substitution), 삽입(insertion), 삭제(deletion) 에러에 대한 페널티를 정의할 수 있다.
더욱 바람직하게는, 상기 단계 b에서,
다음 수학식을 이용하여 최소 페널티를 갖는 경로를 찾기 위한 코스트 값을 구할 수 있다.
Figure 112009059217412-PAT00001
여기서, C(i,j)는 상기 단계 (1)에서 추출된 부단위 배열의 i번째 원소 qi와 상기 단계 (2)에서 표현된 부단위 배열의 j번째 원소 pj에 대한 코스트 값을 나타내며, PM치환(qi,pj), PM삽입(qi,pj), PM삭제(qi,pj)는 각각 정답에 해당하는 pj가 인식 결과 qi로 치환된 경우에 해당하는 치환 페널티 값, 인식 결과에서 정답에 해당하는 pj 뒤에 추가로 qi가 삽입된 경우에 해당하는 삽입 페널티 값, 인식 결과에서 정답에 해당하는 qi 뒤에 있어야 할 pj가 삭제된 경우에 해당하는 삭제 페널티 값을 나타냄.
더더욱 바람직하게는, 상기 구해진 코스트 값을, 역추적 결과 얻어진 경로의 길이 등으로 정규화 할 수 있다.
더더욱 바람직하게는, 상기 단계 c에서,
다음의 수학식을 이용하여 핵심어 포함 여부를 결정할 수 있다.
Figure 112009059217412-PAT00002
여기서, (Q(1),Q(2),,Q(K))는 인식결과 얻어진 가능한 모든 부단위 배열, P는 어떤 핵심어의 부단위 배열을 의미하며, H0과 H1은 각각 핵심어가 존재하지 않는 경우와 핵심어가 존재하는 경우를 나타내고, γ는 문턱 값, m(k)과 n은 각각 상기 단계 (1)에서 추출된 k번째 부단위 배열의 원소의 개수 및 상기 단계 (2)에서 표현된 부단위 배열의 원소의 개수를 나타내며, l(i,n)은 (i,n)으로부터 역추적 결과 얻어진 경로의 길이 등 정규화를 위해 계산된 값을 나타냄.
본 발명의 부단위 인식을 이용한 핵심어 검출 방법에 따르면, 부단위 인식을 이용하여 사용자가 발화한 음성에 핵심어가 포함되어 있는지 여부를 판단함으로써, 기존의 핵심어 검출 방법과 비교하여 계산 용량 및 메모리 사용량을 대폭 줄일 수 있다. 즉, 사용자가 미리 부단위 인식을 수행해 놓을 수 있기 때문에, 음성 자체 파일 또는 특징 파라미터를 저장해둔 파일을 모두 저장하고 있을 필요 없이, 인식된 부단위 배열만 저장하고 있으면 되므로 저장용량 면에서 매우 유리하다.
또한 텍스트 정보만을 가지고 덧셈, 뺄셈 등의 간단한 계산만을 처리하면 되 므로, 계산 속도가 매우 빠르며, 특히 휴대용 단말기와 같이 계산 능력이 한정된 경우에도 효율적으로 사용될 수 있다. 특히, 대부분의 계산은 부단위 인식에 소비되기 때문에 인식하고자 하는 핵심어의 개수가 늘어나더라도 인식 속도에는 큰 차이가 없으므로 핵심어가 많은 경우에 기존의 방식에 비해 계산속도 면에서 더욱 장점이 있다.
이하에서는 첨부된 도면들을 참조하여, 본 발명에 따른 실시예에 대하여 상세하게 설명하기로 한다.
도 2는 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법의 구성을 나타내는 도면이다. 도 2에 도시된 바와 같이, 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법은, 사용자가 발화한 음성에 대하여 부단위 배열을 추출하는 단계(S20), 핵심어를 부단위 배열로 표현하는 단계(S30), 및 단계 S30에서 표현된 부단위 배열과 단계 S20에서 추출된 부단위 배열을 비교하여 핵심어 검출 여부를 결정하는 단계를 포함한다. 또한, 도 2에 도시된 바와 같이, 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법은, 단계 S20 이전에, 사용자가 발화한 음성에 대하여 특징 파라미터 추출을 포함하는 전처리를 수행하는 단계(S10)를 더 포함할 수 있다.
단계 S10에서는, 추후 부단위 인식을 수행하기 위하여, 먼저 입력된 음성으 로부터 특징 파라미터를 추출한다. 여기서, 특징 파라미터로서는, LPC cepstrum, PLP cepstrum, Mel frequency cepstral coefficient(MFCC), 필터뱅크 에너지 등 어떤 것을 사용해도 상관없다.
단계 S20에서는, 부단위 인식기를 이용하여, 사용자가 발화한 음성에 대하여 부단위 배열을 추출한다. 여기서, 부단위란 단어 또는 문장 단위의 핵심어보다 작은 단위로서, 음소, 발음열, 음절과 같은 토큰들이 해당된다. 부단위 인식기로는 은닉 마르코프 모델, 신경망(Neural network) 등 어떤 것을 사용하여도 상관없다. 단계 S10에서 사용된 방법에 상관없이, 부단위 배열을 인식 결과로 얻어낼 수 있으면, 인식된 부단위 배열을 이용하여 핵심어 검출을 수행할 수 있다. 물론 부단위 인식 결과가 우수하다면 핵심어 검출 성능도 향상되게 되며, 따라서 좀 더 안정적인 성능을 위해 N-best 결과 또는 lattice 구조, confusion network 등을 이용할 수 있다. 특히, 단계 S20은 핵심어가 설정되기 전에 입력된 음성에 대하여 미리 수행될 수 있으므로, 앞서 설명한 바와 같이, 음성 자체 파일 또는 특징 파라미터를 저장해둔 파일을 모두 저장하고 있을 필요 없이, 인식된 부단위 배열만 저장하고 있으면 되므로 저장용량 면에서 매우 유리하게 된다.
단계 S30에서는, 핵심어를 부단위 배열로 표현한다. 본 발명에서 제안한 핵심어 검출 방법을 이용하여 핵심어를 검출하기 위해서는, 핵심어를 부단위의 배열로 표현할 수 있어야 한다. S30에서 표현된 핵심어에 대한 부단위 배열은, 단계 S20에서 추출된 입력 음성에 대한 부단위 배열과 비교되어 핵심어 검출 여부를 결정하는데 이용된다.
단계 S40에서는, 단계 S30에서 표현된 부단위 배열과 단계 S20에서 추출된 부단위 배열을 비교하여 핵심어 검출 여부를 결정한다. 즉, 단계 S40에서는, 단계 S30에서 표현된 핵심어에 대한 부단위 배열을, 단계 S20에서 추출된 입력 음성에 대한 부단위 배열과 비교하여, 핵심어가 입력 음성에 포함되어 있는지 여부를 결정하게 된다. 단계 S40에 대해서는, 도 3을 이용하여 더욱 상세하게 설명하기로 한다.
도 3은 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법에서, 핵심어에 대한 부단위 배열을 입력 음성에 대한 부단위 배열과 비교하여 핵심어 검출 여부를 결정하는 단계의 세부 구성을 나타내는 도면이다. 도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법에서, 핵심어에 대한 부단위 배열을 입력 음성에 대한 부단위 배열과 비교하여 핵심어 검출 여부를 결정하는 단계는, 에러 패턴에 대한 페널티를 정의하는 단계(S42), 단계 S42에서 정의된 페널티를 이용하여, 핵심어에 대한 부단위 배열과 입력 음성에 대한 부단위 배열을 비교할 경우의 최소 페널티를 갖는 경로를 구하는 단계(S44), 및 단계 S44에서 구해진 경로의 페널티 합을 문턱 값과 비교하여 핵심어 포함 여부를 결정하는 단계(S48)를 포함할 수 있으며, 특히 단계 S44와 단계 S48 사이에, 입력 음성에 대한 부단위 배열에 대하여 역추적 결과 얻어진 경로의 길이 등으로 정규화하는 단계(S46)를 더 포함할 수 있다.
단계 S42에서는, 에러 패턴에 대한 페널티를 정의한다. 부단위 인식기의 경우 우수한 인식기를 사용하더라도 인식률이 70%정도에 불과하기 때문에 핵심어가 포함된 문장을 발음한 경우라도 핵심어에 해당하는 부단위 배열이 실제 인식 결과 얻어진 부단위 배열 안에 존재하지 않는 경우가 많다. 에러의 종류에는 치환(substitution), 삽입(insertion), 삭제(deletion)가 있다. 치환이란 정답에 해당하는 어떤 부단위가 인식 결과에서 다른 부단위로 치환된 경우이고, 삽입이란 정답에는 없던 어떤 부단위가 인식 결과에 삽입된 경우이며, 삭제란 정답에는 있었던 어떤 부단위가 인식 결과에는 삭제된 경우이다. 이렇게 인식 결과와 정답 사이에 불일치가 발생하기 때문에 이러한 각각의 에러 패턴에 대하여 페널티를 정의하고, 핵심어에 해당하는 부단위 배열과 인식 결과 얻어진 부단위 배열을 비교했을 때 최소 페널티를 갖는 경로를 찾아낸 후, 해당 구간의 페널티 합과 문턱 값의 비교를 통해 핵심어 포함 여부를 검출하게 된다. 부단위의 개수를 N이라고 하면, 치환, 삽입, 삭제 에러에 대한 페널티를 정의할 때 이전에 인식된 1개 데이터만을 이용할 경우 N×N 행렬의 형태로 표현할 수 있다. 즉, 부단위의 목록을 {φ12,…,φN}라 하면, 치환 페널티 행렬의 (i,j)번째 원소 PM치환ij)는, 정답에 해당하는 φj가 인식 결과 φi로 치환된 경우에 해당하는 페널티 값으로 정의하고(i=j인 경우, 즉 PM치환ii)=PM정답ii)는 치환된 경우가 아니라 정답에 해당하기 때문에 페널티 값을 0으로 정의함), 삽입 페널티 행렬의 (i,j)번째 원소 PM삽입ij)는, 인식 결과에서 정답에 해당하는 φj 뒤에 추가로 φi가 삽입될 경우 페널티 값으로 정의하며, 삭제 페널티 행렬의 (i,j)번째 원소 PM삭제ij)는, 인식 결과에서 정답에 해당하는 φj 뒤에 있어야 할 φi가 삭제된 경우 페널티 값으로 정의한다. 페널티 행렬의 값을 정의하는 방법에는 실험을 통해 결정하는 방법, 통계적 방법을 이용하는 방법 등 여러 가지가 있을 수 있다. 물론, 단계 S42는 사전에 미리 수행될 수 있다.
단계 S44에서는, 단계 S42에서 정의된 페널티를 이용하여, 핵심어에 대한 부단위 배열과 입력 음성에 대한 부단위 배열을 비교할 경우의 최소 페널티를 갖는 경로를 구한다. 즉, 단계 S44에서는, 구체적으로 치환, 삽입, 삭제 에러에 대한 페널티가 정의되었을 때, 입력 음성에 대하여 인식된 부단위 배열과 핵심어에 대응하는 부단위 배열과의 비교를 통해 최소 페널티에 해당하는 경로를 다음과 같은 알고리즘을 이용하여 구한다.
Q={q1,q2,…,qm}을 어떤 인식된 부단위 배열, P={p1,p2,…,pn}을 어떤 핵심어의 부단위 배열, {φ12,…,φN}을 부단위의 목록이라고 하면 각각의 원소는 다음 수학식 1과 같은 제약조건을 가진다.
Figure 112009059217412-PAT00003
또한, 실제로 페널티 행렬을 이용하여 최소 페널티를 갖는 경로를 찾기 위한 코스트 C 값은 다음 수학식 2와 같이 dynamic time warping(DTW)과 비슷한 방식으로 구할 수 있다. 이 과정을 그림으로 표현하면 도 4와 같다.
Figure 112009059217412-PAT00004
위의 수학식 2에서 일반적으로 핵심어가 부단위 배열 중 어디에서부터 시작되는 것인지 모르기 때문에 j=1, i≠1인 경우, (C(i-1,j)+PM삽입(qi,pj))를 사용하는 대신에 (min[PM치환(qi,pj), C(i-1,j)+PM삽입(qi,pj)])을 사용하였다. 이를 통해 핵심어가 어느 시점에서 시작되더라도 상관없이 최소 코스트 값을 구할 수 있도록 하였다. 인식된 부단위 배열이 N-best, Lattice 구조, confusion network 등으로 인식 된 부단위 배열 Q가 하나가 아닌 경우에도, 수학식 2의 qi에 가능한 모든 경로만 추가해 주면 비슷한 방법으로 코스트 값을 구할 수 있다.
단계 S46에서는, 입력 음성에 대한 부단위 배열에 대하여 역추적 결과 얻어진 경로의 길이 등으로 정규화한다. 즉, 단계 S46은, 역추적(trace back) 결과 경로의 길이 등 정규화를 위한 l(i,n) 값을 얻어내고, 이를 최종적으로 얻어진 코스트 값에 반영해 주는 단계이다. 본 단계는 핵심어의 길이, 발음시간 등이 서로 다를 경우, 공정한 비교가 불가능하기 때문에 이것을 보정해주기 위한 과정이다. 즉, C(i,n), (1≤i≤m)를 그대로 이용하는 대신에, 역추적 결과 얻어진 경로의 길이 등으로 정규화를 해주는 C(i,n)/l(i,n)를 이용함으로써, 일반적으로 길이가 다른 경우라도 공정한 비교가 가능해진다.
단계 S48에서는, 단계 S44에서 구해진 경로의 페널티 합을 문턱 값과 비교하여 핵심어 포함 여부를 결정한다. 핵심어가 존재하지 않는 경우를 H0, 핵심어가 존재하는 경우를 H1이라 하고, 문턱 값을 γ라고 할 때, 결정 과정은 다음의 수학식 3과 같이 표현할 수 있다.
Figure 112009059217412-PAT00005
본 발명에서 제안하고 있는 핵심어 검출 방법의 성능을 평가하기 위하여, 오경보(false alarm) 확률 PFA과 검출(detection) 확률 PD를 계산하여 보았다. 오경보 확률 PFA과 검출 확률 PD는 다음 수학식 4와 같이 계산할 수 있으며, 이 두 값 사이에는 문턱 값 γ를 조절하여 오경보 확률을 줄이면 검출 확률도 줄어들고, 검출 확률을 높이려면 오경보 확률도 늘어나는 trade-off 관계가 있다.
Figure 112009059217412-PAT00006
도 5는 본 발명에서 제안하고 있는 부단위 인식을 이용한 핵심어 검출 방법과 일반적인 방식을 적용한 핵심어 검출을 실제로 수행한 결과에 대한, 오경보와 검출 확률 간의 상관관계를 나타내는 ROC(Receiver-Operator Characteristic) 곡선이다. 실험을 위해, 데이터베이스는 SiTEC의 낭독문장 음성 DB(Dict02)를 사용하였고, 부단위 인식기로는 은닉 마르코프 모델에 기반한 20-best에서 72.67%의 인식 률을 보이는 것을 사용하였으며, 핵심어는 임의로 500개를 선정하여 1,384개의 문장 단위 테스트 파일에 대해 페널티를 이용한 핵심어 검출 알고리즘을 적용하였다. 일반적인 방식은 단일음소(monophone)를 filler 모델로 사용하고, 삼중음소(triphone)를 핵심어 모델로 사용한 HMM 기반의 핵심어 검출 시스템이다. 제안된 방식이 수행속도에서뿐만 아니라, 도 5에서 볼 수 있듯이 검출 성능에서도 모든 구간에서 우수한 성능을 보임을 확인할 수 있다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
도 1은 일반적인 은닉 마르코프 모델 기반의 핵심어 검출 시스템의 흐름을 나타내는 도면.
도 2는 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법의 구성을 나타내는 도면.
도 3은 본 발명의 일실시예에 따른 부단위 인식을 이용한 핵심어 검출 방법에서, 핵심어에 대한 부단위 배열을 입력 음성에 대한 부단위 배열과 비교하여 핵심어 검출 여부를 결정하는 단계의 세부 구성을 나타내는 도면.
도 4는 페널티 행렬에서 최소 페널티 경로를 찾기 위한 코스트 C 값을 찾는 과정을 나타내는 도면.
도 5는 본 발명에서 제안하고 있는 부단위 인식을 이용한 핵심어 검출 방법을 실제로 수행한 결과에 대한, 오경보 확률과 검출 확률간의 상관관계를 나타내는 ROC 곡선.
<도면 중 주요 부분에 대한 부호의 설명>
S10: 사용자가 발화한 음성에 대하여 특징 파라미터 추출을 포함하는 전처리를 수행하는 단계
S20: 사용자가 발화한 음성에 대하여 부단위 배열을 추출하는 단계
S30: 핵심어를 부단위 배열로 표현하는 단계
S40: 단계 S30에서 표현된 부단위 배열과 단계 S20에서 추출된 부단위 배열을 비교하여 핵심어 검출 여부를 결정하는 단계

Claims (8)

  1. 사용자가 발화한 음성에 핵심어가 포함되어 있는지 여부를 결정하는 핵심어 검출 방법에 있어서,
    (1) 사용자가 발화한 음성에 대하여 부단위 배열을 추출하는 단계;
    (2) 핵심어를 부단위 배열로 표현하는 단계; 및
    (3) 상기 단계 (2)에서 표현된 부단위 배열과, 상기 단계 (1)에서 추출된 부단위 배열을 비교하여, 상기 핵심어가 사용자가 발화한 상기 음성에 포함되어 있는지 여부를 결정하는 단계
    를 포함하는 것을 특징으로 하는, 부단위 인식을 이용한 핵심어 검출 방법.
  2. 제1항에 있어서, 상기 단계 (1) 이전에,
    사용자가 발화한 음성에 대하여 특징 파라미터 추출을 포함하는 전처리를 수행하는 단계를 더 포함하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
  3. 제1항에 있어서, 상기 단계 (1)은, 부단위 인식기에 의해 수행되는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
  4. 제1항에 있어서, 상기 단계 (3)은,
    a. 에러 패턴에 관한 페널티를 정의하는 단계;
    b. 상기 단계 a에서 정의된 페널티를 이용하여, 상기 단계 (2)에서 표현된 부단위 배열과 상기 단계 (1)에서 추출된 부단위 배열을 비교할 경우의 최소 페널티를 갖는 경로를 구하는 단계; 및
    c. 상기 단계 b에서 구해진 경로의 페널티 합을 문턱 값과 비교하여 핵심어 포함 여부를 결정하는 단계를 포함하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
  5. 제4항에 있어서, 상기 단계 a에서,
    상기 에러 패턴으로서, 치환(substitution), 삽입(insertion), 삭제(deletion) 에러에 대한 페널티를 정의하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
  6. 제4항에 있어서, 상기 단계 b에서,
    다음 수학식을 이용하여 최소 페널티를 갖는 경로를 찾기 위한 코스트 값을 구하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
    Figure 112009059217412-PAT00007
    여기서, C(i,j)는 상기 단계 (1)에서 추출된 부단위 배열의 i번째 원소 qi와 상기 단계 (2)에서 표현된 부단위 배열의 j번째 원소 pj에 대한 코스트 값을 나타내며, PM치환(qi,pj), PM삽입(qi,pj), PM삭제(qi,pj)는 각각 정답에 해당하는 pj가 인식 결과 qi로 치환된 경우에 해당하는 치환 페널티 값, 인식 결과에서 정답에 해당하는 pj 뒤에 추가로 qi가 삽입된 경우에 해당하는 삽입 페널티 값, 인식 결과에서 정답에 해당하는 qi 뒤에 있어야 할 pj가 삭제된 경우에 해당하는 삭제 페널티 값을 나타냄.
  7. 제6항에 있어서,
    상기 구해진 코스트 값을, 상기 단계 (1)에서 추출된 부단위 배열에서 역추적 결과 얻어진 경로의 길이 등으로 정규화하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
  8. 제6항에 있어서, 상기 단계 c에서,
    다음의 수학식을 이용하여 핵심어 포함 여부를 결정하는 것을 특징으로 하는 부단위 인식을 이용한 핵심어 검출 방법.
    Figure 112009059217412-PAT00008
    여기서, (Q(1),Q(2),,Q(K))는 인식결과 얻어진 가능한 모든 부단위 배열, P는 어떤 핵심어의 부단위 배열을 의미하며, H0과 H1은 각각 핵심어가 존재하지 않는 경우와 핵심어가 존재하는 경우를 나타내고, γ는 문턱 값, m(k)과 n은 각각 상기 단계 (1)에서 추출된 k번째 부단위 배열의 원소의 개수 및 상기 단계 (2)에서 표현된 부단위 배열의 원소의 개수를 나타내며, l(i,n)은 (i,n)으로부터 역추적 결과 얻어진 경로의 길이 등 정규화를 위해 계산된 값을 나타냄.
KR1020090091362A 2009-09-25 2009-09-25 부단위 인식을 이용한 핵심어 검출 방법 KR101037801B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090091362A KR101037801B1 (ko) 2009-09-25 2009-09-25 부단위 인식을 이용한 핵심어 검출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090091362A KR101037801B1 (ko) 2009-09-25 2009-09-25 부단위 인식을 이용한 핵심어 검출 방법

Publications (2)

Publication Number Publication Date
KR20110033749A true KR20110033749A (ko) 2011-03-31
KR101037801B1 KR101037801B1 (ko) 2011-05-31

Family

ID=43938105

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090091362A KR101037801B1 (ko) 2009-09-25 2009-09-25 부단위 인식을 이용한 핵심어 검출 방법

Country Status (1)

Country Link
KR (1) KR101037801B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10311874B2 (en) 2017-09-01 2019-06-04 4Q Catalyst, LLC Methods and systems for voice-based programming of a voice-controlled device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4887264B2 (ja) * 2007-11-21 2012-02-29 株式会社日立製作所 音声データ検索システム

Also Published As

Publication number Publication date
KR101037801B1 (ko) 2011-05-31

Similar Documents

Publication Publication Date Title
US11270685B2 (en) Speech based user recognition
US20200380987A1 (en) User recognition for speech processing systems
JP4195428B2 (ja) 多数の音声特徴を利用する音声認識
JP5229478B2 (ja) 統計モデル学習装置、統計モデル学習方法、およびプログラム
US20080312926A1 (en) Automatic Text-Independent, Language-Independent Speaker Voice-Print Creation and Speaker Recognition
US20220343895A1 (en) User-defined keyword spotting
WO2008100971A1 (en) Text-dependent speaker verification
JP4340685B2 (ja) 音声認識装置及び音声認識方法
Lugosch et al. DONUT: CTC-based query-by-example keyword spotting
Nasereddin et al. Classification techniques for automatic speech recognition (ASR) algorithms used with real time speech translation
US20220223066A1 (en) Method, device, and computer program product for english pronunciation assessment
Kurian et al. Speech recognition of Malayalam numbers
Williams Knowing what you don't know: roles for confidence measures in automatic speech recognition
US6662158B1 (en) Temporal pattern recognition method and apparatus utilizing segment and frame-based models
Mary et al. Searching speech databases: features, techniques and evaluation measures
Aradilla Acoustic models for posterior features in speech recognition
KR101037801B1 (ko) 부단위 인식을 이용한 핵심어 검출 방법
Chou et al. Minimum classification error (MCE) approach in pattern recognition
Tabibian A survey on structured discriminative spoken keyword spotting
JP6852029B2 (ja) ワード検出システム、ワード検出方法及びワード検出プログラム
US20220005462A1 (en) Method and device for generating optimal language model using big data
US20210398521A1 (en) Method and device for providing voice recognition service
JP4749990B2 (ja) 音声認識装置
Gabriel Automatic speech recognition in somali
Herbig et al. Adaptive systems for unsupervised speaker tracking and speech recognition

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140507

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150430

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160128

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170421

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180425

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 9