상기의 목적을 이루기 위한 본 발명에 따른 인식 신뢰도 측정 방법은, 입력 음성 신호의 특징 벡터로부터 음소열을 추출하는 단계와, 추출된 음소열과 소정의 단어집합(dictionary)에 등록된 어휘의 음소열을 매칭하여 인식 후보를 추출하는 단계와, 추출된 인식 후보간의 사전적 거리(lexical distance)를 추정하는 단계, 및 상기 사전적 거리에 기초하여 등록 어휘 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 기술적 구성으로서 인식 신뢰도 측정 시스템은, 입력 음성 신호의 특징 벡터로부터 음소열을 추출하는 음소열 추출부와, 추출된 음소열과 소정의 단어집합(dictionary)에 등록된 어휘의 음소열을 매칭하여 인식 후보를 추출하는 인식 후보 추출부와, 추출된 인식 후보간의 사전적 거리를 추정하는 거리 추정부, 및 상기 사전적 거리에 기초하여 등록 어휘 여부를 결정하는 등록 여부 판단부를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여, 본 발명에 따른 인식 후보의 사전적 거리를 이용한 인식 신뢰도 측정 방법 및 인식 신뢰도 측정 시스템에 대하여 설명한다.
도 2는 본 발명의 일실시예에 따른 인식 신뢰도 측정 시스템을 나타내는 구성도이다.
본 발명의 인식 신뢰도 측정 시스템(200)은 입력 음성 신호로부터 추출한 음소열을 이용하여 최적수의 인식 후보를 검색하고, 검색된 인식 후보간의 사전적 거리(Lexical Distance)의 추정을 통해 음성 신호를 등록 어휘 또는 비등록 어휘로 판단하는 역할을 한다. 이러한 과정을 통해 인식 신뢰도 측정 시스템(200)은 비등록 어휘로 판단된 음성 신호에 대한 오인식 거절을, 낮은 에러율로서 수행할 수 있고, 더불어 사용자에게 보여줄 인식 후보의 개수를 축소시켜 사용자의 편의를 향상시킬 수 있다.
본 발명의 인식 신뢰도 측정 시스템(200)은 음소열 추출부(210), 인식 후보 추출부(220), 거리 추정부(230), 및 등록 여부 판단부(240)를 포함할 수 있다.
음소열 추출부(210)는 입력 음성 신호의 특징 벡터로부터 음소열을 추출한다. 즉, 음소열 추출부(210)는 음성 신호에 대한 특징 정보를 포함하는 특징 벡터를 검출하고, 검출된 특징 벡터를 활용하여 상기 음성 신호를 구성하는 음소열을 추출하는 역할을 한다.
우선, 도 3을 참조하여, 음소열 추출부(210)가 입력 음성 신호로부터 특징 벡터를 검출하는 일례에 대해 설명한다.
도 3은 본 발명의 음소열 추출부에 의해 입력 음성 신호에서 특징 벡터를 검출하는 방법의 일례를 도시하는 도면이다.
도 3을 참조하면, 단계 S310에서 음소열 추출부(210)는 음성 신호에 대한 특징 벡터를 추출하기 위해, 입력되는 음성 신호를 소정의 프레임 단위로 구획한다.
단계 S320에서 음소열 추출부(210)는 음성 신호를 주파수 영역에서 분석하기 위해 상기 단계 S310에서 프레임 단위로 구획한 음성 신호 각각에 대해 FFT(Fast Fourier Transform)을 수행한다.
단계 S330에서 음소열 추출부(210)는 상기 FFT를 수행한 음성 신호에 대해 청각의 섬모 세포 신호 처리를 모방하여 주파수 영역 필터링을 수행한다.
단계 S340에서 음소열 추출부(210)는 상기 필터링된 음성 신호에 대한 동적 범위를 줄이기 위해 Log 압축, 각 밴드 내 신호들 사이의 상관성을 없애기 위해 DCT(Discrete Cosine Transform), 상기 각 밴드 내 신호들이 제로 평균(zero mean), 단위 분산(unit variance)이 되도록 평균 분산 정규화(Mean Variance Normalization)를 수행한다.
단계 S350에서 음소열 추출부(210)는 히스토그램(histogram)의 정규화를 통해 입력 음성 신호에 대한 특징 벡터를 검출한다. 즉, 단계 S350에서 음소열 추출부(210)는 음성 신호의 통계적 특성이 모델 벡터와 유사해지도록 하기 위해 히스토그램을 정규화한다. 예컨대, 음소열 추출부(210)는 상기 일련의 단계(S310 내지 S340)를 거친 음성 신호에 대해, 스태틱 히스토그램 정규화, 델타 히스토그램 정규화 및 액셀레이션 히스토그램 정규화를 수행하여 13차의 스태틱 계수, 13차의 델타 계수 및 13차의 액셀레이션 계수를 획득함으로써 입력 음성 신호에 대한 39차 cepstrum을 검출할 수 있다.
상기 검색된 39차 특징 벡터는 입력 음성 신호와 가장 유사한 음소열을 추출하는 데에 활용될 수 있다.
즉, 음소열 추출부(210)는 소정의 언어별 음소 결합법칙을 이용하여, 상기 검출된 특징 벡터로부터 각 언어에 따른 최적화된 음소열을 추출한다. 예컨대, 음소열 추출부(210)는 검출된 특징 벡터를 스칼라(scalar) 값으로 변경하여 39차 cepstrum 벡터열을 분석하여 알파벳 중 최적한 하나의 문자(예, /a/)로 인지할 수 있다. 또한, 한글의 초/중/종성의 결합법칙을 소정의 음소 문법기(phone grammar)에 저장해 놓은 환경에서, 음소열 추출부(210)는 한글이라는 언어적 특성을 고려하여 검출된 특징 벡터를 소정의 한글 음소로 인지할 수 있다. 이러한 과정을 통해, 음소열 추출부(210)는 한글의 경우, 45개 내외의 음소열을 추출할 수 있다.
음소열 추출의 다른 예로서, 음소열 추출부(210)는 음소 인식률이 비교적 높은 acoustic HMM(Hidden Markov Model)을 이용하여 음소열을 추출할 수도 있다. 상기 acoustic HMM은 음소를 모델링하는 기법으로, 소정의 음성인식 엔진으로 들어오는 음소와 음성인식 엔진내의 DB에 보유되는 음소를 결합하여 단어와 문장을 만드는 방식이다. 특히, 본 실시예에서의 acoustic HMM은 음소의 인식률을 높이기 위해 triphone을 사용하고 있으며, 또한 긴 모음에 대한 모델링의 경우 삽입(insertion)이 잘 발생하기 때문에 페널티(penalty)를 부여하여 모델링에 대한 보정이 가능하도록 한다.
즉, 음소열 추출부는 입력 음성 신호에서 검출한 특징 벡터를 이용하여, 소정길이의 음소열을 추출한다.
인식 후보 추출부(220)는 추출된 음소열과 소정의 단어집합(dictionary)에 등록된 어휘의 음소열을 매칭하여 인식 후보를 추출한다. 즉, 인식 후보 추출부(220)는 사전에 단어집합에 등록되어 유지되는 복수 어휘의 음소열 중에서, 음성 신호의 음소열과 연관되는 음소열을 인식 후보로서 선별하는 역할을 한다. 상기 인식 후보의 추출에 있어서, 인식 후보 추출부(220)는 단어집합 내에 존재하는 어휘의 음소열 및, 음소인식 결과로 추출된 음성 신호의 음소열과의 유사도를 계산하고, 계산된 유사도에 기초하여 인식 후보를 추출한다.
상기 유사도 계산에 있어서, 인식 후보 추출부(220)는 단어집합 내에 존재하는 어휘의 음소열과 음소인식 결과로 추출된 음성 신호의 음소열의 길이가 상이하다는 조건하에서, 유사도를 비교할 음소의 쌍을 결정할 필요에 따라 동적 정합을 수행한다.
즉, 동적 정합은 음성 인식으로 추출된 음소열의 임의 음소에 대해 상기 유사도를 비교할 단어집합 내 어휘의 특정 음소를 결정하는 과정을 지칭할 수 있다. 예컨대, 음성 신호의 음소열이 「a0, a1, a2, a2', a3, a4」이고, 어휘의 음소열이 「a0, a0', a1, a2, a2', a3」일 경우, 인식 후보 추출부(220)는 음성 신호의 음소열 중 3번째 음소인 「a2」에 대한 동적 정합을 통해, 동일하게 3번째 음소인 「a1」이나 형태가 일치하는 「a2」를 비교할 음소의 쌍으로 결정할 수 있다. 즉, 인식 후보 추출부(220)는 상기 「a2」에 대한 동적 조합을 수행하여 (a2, a1) 및 (a2, a2)를 정합쌍(matching pair)으로 결정할 수 있다.
이후, 인식 후보 추출부(220)는 결정된 정합쌍을 음소 혼동 행렬(phone confusion matrix)에 대입시켜, 어휘의 음소열과 음성 신호의 음소열 간의 유사도를 계산한다. 여기서, 음소 혼동 행렬은 정합쌍으로 포함되는 음소간의 일치 정도에 따라 거리(distance)를 수치로 설정하는 것으로, 예컨대 음소간의 일치 정도 높을수록 상기 거리가 비례하여 작아지도록 설정할 수 있다.
인식 후보 추출부(220)는 상기 음소 혼동 행렬에 의해, 음성 신호의 음소열과 소정 어휘의 음소열과의 거리에 관한 정보로 획득하며, 획득된 거리 정보를 통해 높은 유사도를 갖는(음성 신호와의 거리가 상대적으로 작은) 어휘의 음소열을 인식 후보로서 단어집합에서 추출할 수 있다.
도 4 및 도 5는 본 발명에 따른 음소 혼동 행렬을 추정하는 일례를 설명하기 위한 작업 흐름도이다.
상술한 바와 같이, 음소 혼동 행렬은 일치 정도에 따라 두 음소 간의 거리를 결정하기 위한 것이다. 음소 혼동 행렬은 예컨대 본 시스템을 구현하는 설계자 또는 본 발명의 인식 신뢰도 측정 시스템(200)에 의해 추정될 수 있으며, 본 실시예에서는 인식 신뢰도 측정 시스템(200)에 의해 음소 혼동 행렬이 추정되는 것을 예시하여 설명한다.
음소 혼동 행렬을 추정하는 일례로서, 도 4의 실시예에서는 음소 혼동 행렬로의 거리 설정에 있어서, 지속적인 업데이트 과정을 통해 음소간의 거리를 보다 정확히 하여 음소 혼동 행렬을 추정하는 것을 예시한다.
단계 S410에서 인식 신뢰도 측정 시스템(200)은 음소 대 음소(Phone-by-phone) 유사도에 초기치를 할당한다. 즉, 단계 S410에서 인식 신뢰도 측정 시스템(200)은 임의 두 음소 간의 거리에 대한 초기값을 부여한다.
단계 S420에서 인식 신뢰도 측정 시스템(200)은 훈련 DB에 대해서 음소 인식을 수행하여, 상기 초기치를 정확한 값으로 보정한다. 상기 초기치의 보정에 있어서, 인식 신뢰도 측정 시스템(200)은 후술하는 단계 S432 내지 S436을 반복 수행함에 따라 수렴되는 일정한 값을 이용하여 초기치를 보정할 수 있다.
즉, 인식 신뢰도 측정 시스템(200)은 단계 S432에서, 음소 인식의 결과와 상기 훈련 DB의 어휘에 해당하는 음소열과의 동적 정합을 시행한다.
또한, 인식 신뢰도 측정 시스템(200)은 단계 S434에서, 역추적(back tracking)으로 최적의 정합쌍(matching pair)을 추정함으로써 비교 대상이 되는 음소를 각각 음소열 중에서 결정한다.
단계 S436에서 인식 신뢰도 측정 시스템(200)은 상기 음소 대 음소의 정합 횟수 추정 및 유사도를 갱신한다. 즉, 단계 S436에서 인식 신뢰도 측정 시스템(200)은 정합쌍에 대한 유사도를 복수 회 산출하고, 산출되는 유사도의 수치가 일정한 값으로 수렴되는 것을 확인한다. 이후, 인식 신뢰도 측정 시스템(200)은 상기 수렴된 일정한 값을 이용하여 최초 설정한 초기치에 대한 갱신처리를 수행함으로써 본 발명의 음소 혼동 행렬로의 거리 설정을 추정할 수 있다.
음소 혼동 행렬을 추정하는 다른 일례로서, 도 5의 실시예에서는 HMM을 이용하여 음소간의 거리를 설정하고 음소 혼동 행렬을 추정하는 것을 예시한다.
단계 S510에서 인식 신뢰도 측정 시스템(200)은 훈련 DB를 이용하여 음소별 연속 HMM(Continuous HMM) 또는 준연속 HMM(Semi-Continuous HMM)를 추정한다.
이후, 인식 신뢰도 측정 시스템(200)은 단계 S520에서 상기 추정된 HMM 속성에 따라 음소 대 음소(Phone-by-phone) 거리를 추정한다. 즉, 단계 S520에서 인식 신뢰도 측정 시스템(200)은 상기 음소 대 음소 거리 추정에 있어서, 추정된 HMM가 연속 HMM인지 또는 준연속 HMM인지를 식별하고 식별된 HMM의 속성에 따라 상이하게 도출되는 결과 정보를 이용하여 음소 대 음소 거리를 추정할 수 있다.
만약, 상기 단계 S510에서 식별된 HMM의 속성이 연속 HMM일 경우, 인식 신뢰도 측정 시스템(200)은 Bhattacharya distance를 음소 대 음소의 거리로 사용하여, 음소 혼동 행렬로의 거리(유사도)를 설정할 수 있다(S522).
반면, 상기 단계 S510에서 식별된 HMM의 속성이 준연속 HMM일 경우, 인식 신뢰도 측정 시스템(200)은 단계 S524에서와 같이, 정보 손실량을 예측하고 이를 활용하여 음소 혼동 행렬로의 거리(유사도)를 설정할 수 있다.
인식 후보 추출부(220)는 상술의 방법으로 추정된 음소 혼동 행렬을 통해 음성 신호의 음소열과 일정 수준의 유사도를 갖는 어휘의 음소열을 인식 후보로서 복수 개 추출할 수 있다. 예컨대, 음성 신호 '삼성'에 대해 음소열 'ㅅ, ㅏ, ㅁ, ㅅ, ㅓ, ㅇ'이 추출되는 경우, 인식 후보 추출부(220)는 단어집합 중에서 상기 추출된 음소열과 높은 유사도를 갖는 어휘 '삼성', '삼송', '상성' 등의 음소열들을 인식 후보로서 단어집합에서 추출할 수 있다.
특히, 본 발명의 인식 후보 추출부(220)는 인식 후보의 추출에 있어서, 상 기 거리에 소정의 가중치를 부여하여 보다 정확한 유사도의 계산이 이루어지도록 할 수 있다. 음성 인식시, 어휘간의 변별도가 모든 음소(음소열의 음소)에서 균일하다 할 수 없고, 이러한 판단하에서 인식 후보 추출부(220)는 음소별 상이한 변별도를 상기 유사도의 계산에 반영되도록 하기 위해 소정 크기의 가중치를 부가한다.
즉, 인식 후보 추출부(220)는 훈련 DB를 음성 인식기의 입력으로 하여 후보간의 음소 대 음소의 정합쌍을 추정한 후, 정합되는 음소별로 가중치를 기 설정된 거리에 곱하여 상기 정합쌍의 거리를 다시 계산할 수 있다. 예컨대, 인식 후보 추출부(220)는 자음보다 모음에 더 많은 정보가 있다고 판단하고, 상기 모음의 정합쌍과 관련하여 설정된 거리에 가중치를 부가할 수 있다. 이에 따라, 상기 모음의 정합쌍과 관련하여 설정된 거리가, 상기 자음의 정합쌍과 관련하여 설정된 거리보다 정보로서 가치가 높게 평가되도록 할 수 있다.
또한, 인식 후보 추출부(220)는 같은 모음이더라도 변별도에 차이가 있다는 판단하에서, 모음에 따라 부가되는 가중치를 상이하게 할 수도 있다. 예컨대, 이중모음이 단모음 보다 높은 변별도가 있다고 판단할 수 있으며, 인식 후보 추출부(220)는 상기 이중 모음의 정합쌍과 관련하여 설정된 거리에 부과되는 가중치가, 상기 단모음의 정합쌍과 관련하여 설정된 거리에 부과되는 가중치가 보다 높게 되도록 설정할 수 있다.
이하, 수학식 1을 참조하여, Steepest descent rule을 이용한 최적 가중치(weight)의 추정에 대해 설명한다.
상기 수학식 1의 cost function을 최대화 한 이후, 각 음소별 또는 음속 대 음소에 대해서 가중치를 정의하였다면, 수학식 2와 같다.
상기 수학식 2는 time n에서 k-th 가중치에 대한 update rule로 정의할 수 있다.
수학식 1 및 수학식 2에서, 초기 가중치는 균일하게 1로 설정할 수 있다.
또한, cost function J는 Equal-error-rate와 연관성이 큰 함수이므로 그 값이 충분히 수렴하였을 때의 가중치를 최적한 값으로 사용할 수 있다.
거리 추정부(230)는 추출된 인식 후보간의 사전적 거리(Lexical distance)를 추정한다. 즉, 거리 추정부(230)는 인식 후보로 추출된 어휘의 음소열 중에서 복수 개의 음소열(인식 후보쌍)에 대한 동적 정합을 수행하여 인식 후보쌍에 대한 스코어를 연산한다. 또한, 거리 추정부(230)는 상기 인식 후보쌍에 대해 연산된 스코어를 이용하여 사전적 거리를 추정하는 역할을 한다.
여기서 거리 추정부(230)의 상기 동적 정합은 인식 후보 추출부(220)에서 수행한 동적 정합과 유사하거나 동일한 방식으로 수행될 수 있다. 단, 거리 추정부(230)의 동적 정합에서는 음성 인식으로 검출된 음성 신호의 음소열은 사용하지 않고, 인식 후보로 추출된 어휘의 음소열 만을 이용하여 인식 후보 간의 거리(distance)를 추정한다. 즉, 거리 추정부(230)는 음소 혼동 행렬을 이용하여 인식 후보쌍에 대한 스코어를 연산한다.
등록 여부 판단부(240)는 거리 추정부(230)에서 추정한 상기 사전적 거리에 기초하여 등록 어휘 여부를 결정한다. 즉, 등록 여부 판단부(240)는 연산된 스코어가 설정된 수치를 만족하는 경우, 상기 입력 음성 신호를 등록 어휘로 판단한다. 이때, 등록 여부 판단부(240)는 상기 등록 어휘로 판단되는 인식 후보쌍만을 제시함으로써 음성 인식 과정에서의 사용자 편의성을 크게 향상시킬 수 있다.
반면, 연산된 스코어가 설정된 수치를 만족하지 않는 경우, 등록 여부 판단부(240)는 상기 입력 음성 신호를 비등록 어휘로 판단한다. 상기 판단 과정에서 등록 여부 판단부(240)는 상기 비등록 어휘를 판단하는 입력 음성 신호에 대해 오인식 거절을 수행한다.
따라서 본 발명의 인식 신뢰도 측정 시스템(200)에 따르면, 검출되는 인식 후보의 개수를 적게 제시할 수 있으며, 또한 오인식 거절을 명확하게 수행되도록 함으로써 사용자의 편의성을 재고시킬 수 있다.
또한, 음성 신호 등록 여부 판단에 있어서, 등록 여부 판단부(240)는 인식 후보쌍에 대해 산출된 스코어에 소정의 가중치를 부가하여 보다 정확한 인식 후보간의 거리 추정이 가능하도록 할 수 있다.
등록 여부 판단부(240)의 동적 정합에 따라 최적한 음소 정합쌍(phone matching pair)이 검출되는 경우, 인식 후보쌍에 대한 스코어는 수학식 3과 같이 산출될 수 있다.
상술한 바와 같이, 인식 후보쌍에 대한 최초 스코어 xi는 음소 혼동 행렬(PCM)을 이용하여 산출될 수 있다.
이후, 등록 여부 판단부(240)는 산출된 스코어에 가중치를 적용하여 수학식 4와 같은 보정된 스코어를 산출할 수 있다.
수학식 4에서 W는 정합된 음소 사이의 최적한 가중치 값(weight value)으로 정의할 수 있다.
따라서, 본 발명에 따르면, 스코어의 보정을 통해 인식 후보간에 사전적 거리를 정확하게 추정하고 이를 통해 음성 신호에 대한 등록 여부를 보다 명확하게 판단하는 환경을 마련할 수 있다.
이하, 본 발명의 실시예에 따른 인식 후보의 사전적 거리를 이용한 인식 신뢰도 측정 시스템의 작업 흐름을 상세히 설명한다.
도 6은 본 발명의 일실시예에 따른 인식 신뢰도 측정 방법을 구체적으로 도시한 작업 흐름도이다.
본 발명의 인식 신뢰도 측정 방법은 상술한 인식 신뢰도 측정 시스템에 의해 수행될 수 있다.
우선, 인식 신뢰도 측정 시스템(200)은 음성 신호의 특징을 추출한다(S610). 본 단계(S610)는 입력된 음성 신호에 대한 특징 벡터를 검출하는 과정이다. 단계 S610에서의 인식 신뢰도 측정 시스템(200)은 FFT(Fast Fourier Transform) 등을 이용하여 입력 음성 신호의 특징 정보를 포함하는 39차의 cepstrum을 검출할 수 있다.
또한, 인식 신뢰도 측정 시스템(200)은 추출된 음성 신호의 특징을 이용하여 음소열을 추출한다(S620). 본 단계(S620)는 입력 음성 신호의 특징 벡터로부터 음소열을 추출하는 과정(Phonetic decoding)으로, 예컨대 특징 벡터를 스칼라 값으로 바뀌어 음성의 발음과 연관되는 음소를 특정함으로써 음소열을 추출할 수 있다. 단계 S620에서 인식 신뢰도 측정 시스템(200)은 음소 문법기(phone grammar)에 의한 소정의 언어별 음소 결합법칙, HMM(Hidden Markov Model), acoustic knowledge 등을 이용하여 각 언어에 따른 최적화된 음소열을 추출할 수 있다.
다음으로 인식 신뢰도 측정 시스템(200)은 추출된 음소열과 소정의 단어집합(dictionary)에 등록된 어휘의 음소열을 매칭하여 인식 후보를 추출한다(S630). 본 단계(S630)는 추출된 음성 신호의 음소열과 어휘의 음소열 간의 유사도를 계산하고, 상기 계산된 유사도에 기초하여 단어집합에서 어휘의 음소열을 추출하는 과정(Lexical decoding)이다. 상기 유사도 계산에 있어서, 인식 신뢰도 측정 시스템(200)은 음성 신호의 음소열과 어휘의 음소열에 대한 동적 정합을 수행하여 매칭할 음소의 쌍(정합쌍)을 결정하며, 결정된 음소의 쌍(정합쌍)을 음소 혼동 행렬에 대입시켜 음성 신호의 음소열과 어휘의 음소열 간의 거리를 추정함으로써 상기 유사도를 계산할 수 있다.
또한, 인식 신뢰도 측정 시스템(200)은 추출된 인식 후보간의 사전적 거리(Lexical distance)를 추정한다(S640). 본 단계(S640)는 추출된 인식 후보 중에서 인식 후보쌍을 선별하고, 선별된 인식 후보쌍에 대한 동적 정합을 수행하는 과정이 다. 예컨대, 인식 후보로 추출된 어휘의 음소열 중에서 음성 신호와 유사도가 가장 높은 최상위 음소열 및 차상위 음소열을 선별하고, 선별된 두 음소열에 대한 동적 정합을 통해 비교할 음소 정합쌍(phone matching pair)을 결정한다. 이후, 인식 신뢰도 측정 시스템(200)은 결정된 음소 정합쌍을 음소 혼동 행렬에 대입시켜 두 인식 후보에 대한 스코어를 연산하고, 연산된 스코어를 이용하여 인식 후보간의 사전적 거리를 추정한다.
계속해서, 인식 신뢰도 측정 시스템(200)은 상기 연산된 스코어에 대해 소정의 가중치를 반영하여 스코어를 보정한다(S650). 본 단계(S650)는 인식 후보간의 거리를 보다 정확하게 계산하기 위해 이전에 계산된 스코어를 보정하는 과정으로, 예컨대 음소간의 변별도를 고려하여 수학식 4와 같은 가중치(Phone matching weight)를 음소 마다 곱하여 스코어를 다시 계산할 수 있다.
또한, 인식 신뢰도 측정 시스템(200)은 사전적 거리에 기초하여 등록 어휘 여부를 결정한다(S660). 본 단계(S660)는 연산된 스코어를 이용하여 음성 신호의 등록 여부(예, 단어집합(dictionary)에 음성 신호와 관련된 어휘가 등록되어 있는지에 대한 여부)를 판단하는 과정이다.
즉, 단계 S660에서의 인식 신뢰도 측정 시스템(200)은 상기 연산된 스코어가 설정된 수치를 만족하는 경우(S660의 Yes 방향), 입력 음성 신호를 등록 어휘로 판단하고, 반면 상기 연산된 스코어가 설정된 수치를 만족하지 않는 경우(S660의 No 방향), 상기 입력 음성 신호를 비등록 어휘로 판단한다. 이를 통해, 인식 신뢰도 측정 시스템(200)은 비등록 어휘로 판단되는 음성 신호에 대해 오인식 거절을 명확하기 수행할 수 있는 환경을 마련한다.
따라서, 본 발명에 의하면, 입력 음성 신호에 대해 추출된 음소열과 음소 혼동 행렬을 이용한 어휘를 검색할 수 있고, 인식 후보 간의 사전적 거리 추정을 통해 오인식 거절을 명확하게 수행하며, 더불어 사용자에게 보여줄 인식 후보의 개수를 축소시키는 효과를 얻을 수 있다.
도 7은 본 발명에 따른 인식 신뢰도 측정 방법의 일례를 계략적으로 도시한 도면이다.
우선, 인식 신뢰도 측정 시스템(200)은 입력 음성 신호로부터 특징 벡터를 추출하고, 추출된 특징 벡터 및 acoustic knowledge를 참조하여 phonetic decoder에서 음성 신호의 음소열을 추출한다. 도 7에서는 입력 음성 신호의 특징 벡터로부터 소정의 알파벳을 추출하는 것을 예시한다.
이후, 인식 신뢰도 측정 시스템(200)은 추출된 음소열과 매칭되는 어휘의 음소열을 단어집합(dictionary)에서 검색하여 인식 후보로서 추출한다. 이러한 인식 후보의 추출은 Lexical decoder에서 음성 신호의 음소열 및 어휘의 음소열간의 유사도 비교를 통해 이루어질 수 있다. 상기 유사도 비교는 동적 정합을 통해 결정된 정합쌍(음성 신호의 소정 음소 및 어휘의 소정 음소간의 쌍)에 대한 사전적 거리를 추정하는 음소 혼동 행렬을 이용하여 수행될 수 있다. 인식 신뢰도 측정 시스템(200)은 음성 신호의 음소열과 소정 수준의 유사도를 갖는 어휘의 음소열을 인식 후보로 추출한다.
또한, 인식 신뢰도 측정 시스템(200)은 추출된 인식 후보 중에서 선별된 두 인식 후보에 대한 동적 정합을 통해 음소 정합쌍을 결정한다. 즉, 인식 신뢰도 측정 시스템(200)은 유사도가 최상위인 인식 후보 및 차상위인 인식 후보를 선별하고, 두 인식 후보의 음소들을 최적하게 매칭시키는 동적 정합을 수행한다.
또한, 인식 신뢰도 측정 시스템(200)은 상기 동적 정합으로 결정된 음소 정합쌍을 음소 혼동 행렬에 대입시켜, 인식 후보 간의 사전적 거리(Lexical distance)에 관한 스코어를 연산하고, 연산된 스코어가 설정된 수치를 만족하는지 여부에 따라 상기 입력 음성 신호를 등록 어휘(IV: In-Vocabulary) 또는 비등록 어휘(OOV: Out-Of-Vocabulary)로 판단한다.
이에 따라, 본 발명은 입력 음성 신호와 관련하여 추출된 인식 후보의 개수를 감소시켜 제시할 수 있고, 더불어 제시된 인식 후보 간의 사전적 거리의 추정을 통해 비등록 어휘에 대한 오인식 거절을 명확하게 수행할 수 있다.
본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명 령, 로컬 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.