KR20160131501A - 문장 경계 인식 장치 및 방법 - Google Patents

문장 경계 인식 장치 및 방법 Download PDF

Info

Publication number
KR20160131501A
KR20160131501A KR1020150063994A KR20150063994A KR20160131501A KR 20160131501 A KR20160131501 A KR 20160131501A KR 1020150063994 A KR1020150063994 A KR 1020150063994A KR 20150063994 A KR20150063994 A KR 20150063994A KR 20160131501 A KR20160131501 A KR 20160131501A
Authority
KR
South Korea
Prior art keywords
sentence boundary
candidate
sentence
candidates
information
Prior art date
Application number
KR1020150063994A
Other languages
English (en)
Other versions
KR102498839B1 (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 KR1020150063994A priority Critical patent/KR102498839B1/ko
Publication of KR20160131501A publication Critical patent/KR20160131501A/ko
Application granted granted Critical
Publication of KR102498839B1 publication Critical patent/KR102498839B1/ko

Links

Images

Classifications

    • G06F17/2705
    • G06F17/2735
    • G06F17/2765
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Abstract

본 발명은 문장 경계 표시가 없는 텍스트에 대한 문장 경계를 인식하기 위한 장치 및 방법 에 관한 것이다. 이를 위한 본 발명의 문장 경계 인식 방법은 입력 텍스트의 엔그램(n-gram) 정보를 포함하는 특징 정보를 추출하는 단계; 문장 경계 정보를 포함하는 학습 코퍼스를 근거로, 문장 경계 임시 후보들에 대한 후보 확률들을 추출하는 단계; 후보 확률들을 근거로 문장 경계 임시 후보들에 대한 후보 점수들을 산출하는 단계; 후보 점수가 기설정된 임계 점수 이상인 문장 경계 임시 후보들을 문장 경계 후보들로 선택하는 단계; 및 문장 경계 후보들의 엔그램 정보를 포함하는 특징 정보와 후보 점수 정보를 사용하여 문장 경계 여부를 최종 분류하는 단계를 포함하는 것을 특징으로 한다.

Description

문장 경계 인식 장치 및 방법{APPARATUS AND METHOD FOR DETECTION OF SENTENCE BOUNDARY}
본 발명은 문장 경계 표시가 없는 텍스트에 대한 문장 경계를 인식하기 위한 장치 및 방법 에 관한 것이다.
문장 경계 인식 기술은 문서 또는 음성 입력된 텍스트를 입력으로 하여 해당 문서에 포함된 텍스트를 문장 단위로 구분하는 기술을 나타낸다. 다만, 기존의 음성 인식 시스템에서는 음성 입력된 텍스트에 대하여 문장 경계에 대한 인식이 존재하지 않는다. 이에 따라, 입력 문장에 대한 정확한 이해가 필요한 자동 통번역 시스템, 대화 시스템, 대화 기능을 기반으로 하는 교육 시스템, 그리고 휴먼-컴퓨터 인터페이스 등 언어 이해가 필요한 응용 시스템의 경우, 사용자가 사용하는 일상적인 발화와 달리, 문장 단위로 발화하는 불편함을 감수해야 하는 문제점이 존재한다. 뿐만 아니라, 상기 시스템들에서는 문장경계 정보의 결여로 인한 시스템의 서비스 오류와 성능 저하를 감수해야 하는 문제점도 존재한다.
음성 인식 시스템뿐만 아니라, 휴대용 컴퓨팅 단말기를 사용하는 많은 사용자들은 문자 전송, 메모 작성 등 텍스트 입력 시 문장경계 부호 없이 입력하는 경우가 많다. 이렇게 입력된 텍스트에 대하여 문장경계를 인식하는 것도 향후 언어 이해가 필요한 응용 시스템에서 해결해야 할 과제이다.
정보검색을 위해 뉴스 텍스트 등 문장 부호가 있는 대용량 텍스트에서 실제 문장경계 부호를 찾는데 관한 연구에서는 ".", "?", "!"과 같은 특정 문장 부호를 문장경계 후보로 하고, 다음 이런 문장 경계 후보의 좌우 n-gram 문맥 정보를 특징으로 학습 기반으로 문장 경계인지 여부를 분류하는 기법을 많이 사용한다. 대용량 학습 코퍼스를 확보 가능하고, 문장경계 후보 선택 용이하며, 모든 문장경계 후보를 문장경계로 분류하는 경우, 즉 베이스라인(baseline) 분류 정확도가 높기에 이 분야의 문장경계 후보 정확도는 코퍼스에 따라 상이하지만 대체적으로 97% 내지 99.8%이다.
대신 음성 입력 텍스트에 대한 문장경계 인식은 그 정확도가 코퍼스에 따라 약 40% 내지 60%로 아직 낮은 편인바, 특히 대용량 학습 코퍼스의 확보가 어려워 실생활 환경에서의 활용이 많이 이루어 지지 않고 있다. 이에서는 규칙 또는 학습 기반으로 문장경계를 인식하는 기술을 사용하는데 규칙 기반 경계 인식 기술은 낮은 성능과, 분야 또는 언어가 바뀔 때마다 사람에 의해 규칙을 새로이 구축해야 한다는 단점이 있고, 종래의 학습기반 방법은 학습 코퍼스로서의 음성 전사 코퍼스 대량 확보가 어려우며, 문장경계 후보가 많고 그 정확도가 낮기에 문장경계 인식의 최종 정확도도 낮은 문제점이 있다.
본 발명과 관련되는 선행기술로는, 대한민국 등록특허 제1259558호(문장경계 인식 장치 및 방법), 그리고 미국 등록특허 제8364485호(Method for automatically identifying sentence boundaries in noisy conversational data)가 있다.
본 발명은 문장 경계가 없는 텍스트에서도, 자동으로 문장 경계를 인식할 수 있는 문장 경계 인식 장치 및 방법을 제공하는데 그 목적이 있다.
상기와 같은 과제를 해결하기 위한 본 발명의 문장 경계 인식 방법은 입력 텍스트의 엔그램(n-gram) 정보를 포함하는 특징 정보를 추출하는 단계; 문장 경계 정보를 포함하는 학습 코퍼스를 근거로, 문장 경계 임시 후보들에 대한 후보 확률들을 추출하는 단계; 후보 확률들을 근거로 문장 경계 임시 후보들에 대한 후보 점수들을 산출하는 단계; 후보 점수가 기설정된 임계 점수 이상인 문장 경계 임시 후보들을 문장 경계 후보들로 선택하는 단계; 및 문장 경계 후보들의 엔그램 정보를 포함하는 특징 정보와 후보 점수 정보를 사용하여 문장 경계 여부를 최종 분류하는 단계를 포함하는 것을 특징으로 한다.
또한, 후보 점수들을 산출하는 단계는 문장 경계 임시 후보 별로 좌측 엔그램과 우측 엔그램을 설정하는 단계; 및 설정된 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률과, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률을 포함하는 후보 확률을 근거로 문장 경계 임시 후보 별로 엔그램 후보 점수를 산출하는 단계를 포함할 수 있다.
또한, 입력 텍스트에 대한 음성 정보가 존재하는 경우, 음성 정보에 포함된 정음 및 정음 길이 정보를 추출하는 단계를 더 포함할 수 있다.
또한, 후보 점수들을 산출하는 단계는 입력 텍스트에 대한 음성 정보가 존재하는 경우, 정음 및 정음 길이 정보를 근거로 가중 후보 점수를 산출하는 단계를 포함할 수 있다.
또한, 후보 점수들을 산출하는 단계는 문장 경계 임시 후보 별로 엔그램 후보 점수와 가중 후보 점수를 합산함으로써 이루어질 수 있다.
또한, 문장 경계 후보들을 분석함으로써, 문장 경계 부호를 선택하는 단계는 설정된 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률, 문장 경계 임시 후보 별 엔그램 후보 점수, 그리고 음성 정보를 근거로 산출된 가중 후보 점수 중 적어도 하나를 포함하는 특징 정보를 이용함으로써 이루어질 수 있다.
또한, 문장 경계 후보들을 분석함으로써, 문장 경계 부호를 선택하는 단계는 SVM(support vector machine) 및 MEM(maximum entropy model)을 포함하는 분류 모델을 통해 이루어질 수 있다.
또한, 엔그램은 유니그램(unigram), 바이그램(bigram) 및 트라이그램(trigram)을 포함할 수 있다.
본 발명의 문장 경계 인식 장치 및 방법에 따르면, 일반 텍스트를 활용함으로써 학습코퍼스 확보가 용이하기에, 음성 입력 등 문장경계 정보가 없는 텍스트에 대한 문장경계 인식에서, 문장 경계 후보 선정에 활용 가능한 통계 정보 확보가 용이한 장점을 갖는다.
또한, 본 발명은 학습 코퍼스에서 추출 계산한 엔그램의 문장경계 확률 점수와 정음의 문장경계 확률 점수를 이용하여 문장경계 후보를 일차적으로 인식하고, 모든 어휘, 음성 특징 및 확률 점수를 모두 특징으로 하여, 학습기반 분류 방법으로 문장 경계를 인식하는 방법을 사용함으로써 문장경계 인식 정확도가 높은 장점을 갖는다.
또한, 본 발명의 일 실시예에 따른 문장 경계 인식 장치 및 방법에 따르면, 음성 입력에서 매번 한 문장씩 발화해야 하는 불편한 사용자 인터페이스 개선이 가능하며, 자연스러운 발화에 대한 문장경계 정확도가 향상되어, 자동 통번역 시스템, 대화 시스템, 휴먼-컴퓨터 인터페이스 등 많은 언어 이해가 필요한 분야에서 활용 가능하다.
도 1은 본 발명의 일 실시예에 따른 문장 경계 인식 장치에 대한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 처리부에 대한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 문장 경계 인식 방법에 대한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 학습 코퍼스를 구축하는 방법에 대한 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명의 실시예에 따른 문장 경계 인식 장치 및 방법에 대하여 설명하도록 한다. 본 발명의 일 실시예에 따른 문장 경계 인식 장치 및 방법은 스마트 폰과 같은 휴대용 컴퓨팅 단말기 또는 PC의 마이크 등을 통한 문장경계 표시가 없는 음성 인식 결과 텍스트, 및 사용자가 휴대용 또는 기타 컴퓨팅 기기의 키보드 등 장치를 통해 문장 경계 부호 없이 입력한 텍스트에 대해, 문장 경계를 자동으로 인식할 수 있는 것을 특징으로 한다.
이를 위해, 본 발명의 일 실시예에 따른 문장 경계 인식 장치 및 방법은 대량 확보 가능한 일반 텍스트 코퍼스를 학습 코퍼스로 활용하고, 문장 경계 임시 후보 별로 엔그램 후보 점수와 가중 후보 점수를 산출함으로써 문장 경계 후보를 선택하며, 특징 기반 분류 기법을 이용하여 해당 위치가 문장 경계가 맞는지의 여부를 확인하는 문장 경계 인식 방법 및 장치를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 문장 경계 인식 장치(100)에 대한 블록도이다. 본 발명의 일 실시예에 따른 문장 경계 인식 장치(100)는 제어부(110) 및 처리부(120)를 포함하여 구성될 수 있다.
제어부(110)는 사용자(10)로부터 입력부(20)를 통해 입력된 텍스트를 처리부(120)로 전달하고, 이하에서 설명되는 처리부(120)를 제어하는 기능을 한다. 여기서, 입력부(20)를 통해 입력되는 텍스트는 문자로 입력된 텍스트뿐만 아니라, 사용자의 발화를 음성 인식함으로써 인식된 텍스트도 포함할 수 있다. 또한, 사용자의 발화를 음성 인식한 경우, 제어부(110)는 정음 및 정음 길이 등과 같은 음성 정보도 함께 처리부(120)로 전달할 수 있다. 또한, 사용자(10)를 통해 입력된 텍스트(이하, 입력 테스트)에는 문장 경계 부호가 없거나, 또는 영어의 경우 대소문자 구분도 없을 수 있다.
처리부(120)는 제어부(110)를 통해 전달된 입력 텍스트와 저장부(30)에 저장된 학습 코퍼스를 근거로, 입력 텍스트의 문장 경계를 인식하는 기능을 한다. 처리부(120)를 통한 문장 경계 인식 방법은 다음과 같다.
먼저, 처리부(120)는 입력 텍스트의 엔그램(n-gram) 정보를 포함하는 특징 정보를 추출한다. 또한, 위에서 언급한 바와 같이, 입력 텍스트가 음성 인식을 통해 생성된 경우, 정음 및 정음 길이를 포함하는 음성 정보도 특징 정보에 포함시킬 수 있다.
그 후, 처리부(120)는 저장부(30)에 저장된 학습 코퍼스를 근거로 입력 텍스트에 대한 문장 경계 임시 후보들과, 이들 문장 경계 임시 후보에 대한 후보 확률들을 추출한다. 여기서, 학습 코퍼스는 특정 분야의 텍스트뿐만 아니라, 대량 확보 가능한 일반 텍스트를 기반으로 사전에 생성되어 저장부(30)에 저장된 코퍼스로 정의된다. 또한, 학습 코퍼스에는 문장 경계 부호의 이전 및 이후에 존재할 확률이 높은 엔그램 데이터와, 각 엔그램 데이터 별로 문장 경계 부호의 이전 및 이후에 존재할 수 있는 확률 정보를 포함할 수 있다. 이에 따라, 처리부(120)는 저장부(30)에 저장된 학습 코퍼스를 이용하여 입력 텍스트에 대한 문장 경계 임시 후보들과, 임시 후보에 대한 후보 확률들을 추출할 수 있다. 여기서, 학습 코퍼스의 생성 방법은 이하에서 다시 설명되므로, 이에 대한 설명은 생략된다.
그 후, 처리부(120)는 학습 코퍼스를 근거로 도출된 후보 확률들을 근거로 문장 경계 임시 후보들에 대한 후보 점수들을 산출한다. 구체적으로, 처리부(120)는 좌우 문맥에 대한 파악을 위해 문장 경계 임시 후보 별로 좌측 엔그램과 우측 엔그램을 설정하고, 설정된 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률과, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률을 포함하는 후보 확률을 근거로 문장 경계 임시 후보 별로 엔그램 후보 점수를 산출할 수 있다. 또한, 처리부(120)는 입력 텍스트에 대한 음성 정보가 존재하는 경우, 정음 및 정음 길이 정보를 근거로 가중 후보 점수를 산출할 수 있다. 그리고, 처리부(120)는 문장 경계 임시 후보 별로 엔그램 후보 점수와 가중 후보 점수를 합산함으로써 후보 점수를 산출할 수 있다. 여기서, 후보 점수들에 대한 산출 방법은 아래의 수학식 1과 같이 표현될 수 있다.
Figure pat00001
수학식 1에서 score는 경계 부호에 대한 후보 점수를, a는 가중치를, Scorei -gram은 엔그램의 좌측 및 우측에 경계 부호가 올 확률 점수를, 그리고 Scorepause는 음성 정보가 있는 경우, 음성 정보를 근거로 산출된 가중 후보 점수(해당 위치에 정음이 있을 경우, 이에 대한 확률 점수)를 나타낸다. 그리고, 수학식 1에서, i-gram에서 i는 1,...,n개를 나타내며, 예를 들어, 유니그램(unigram), 바이그램(bigram) 및 트라이그램(trigram)을 포함할 수 있다. 여기서, Scorei -gram의 산출 방법은 아래의 수학식 2에, 그리고 Scorepause에 대한 산출 방법은 아래의 수학식 3과 같이 표현될 수 있다.
Figure pat00002
수학식 2에서 /는 문장 경계를, Pr(n-gramleft)는 특정 엔그램의 좌측에 문장 경계가 올 확률을, 그리고 Pr(n-gramright)는 특정 엔그램의 우측에 문장 경계가 올 확률을 나타낸다.
Figure pat00003
그리고, 수학식 3에서 c와 d는 가중치를, Pr(pause)와 Pr(silence_length)는 정음이 있을 경우의 확률을 나타내는데, Pr(pause)는 예를 들어, 한 문장 사이의 띄어 쓰기에 해당하는 정음을, 그리고 Pr(silence_length)는 한 문장과 다음 문장 사이의 발화 사이의 정음을 나타낸다.
앞서 언급한 처리부(120)를 통해 후보 점수를 산출하는 예시는 다음과 같다. 여기서, 입력 텍스트는 "i like it very much how about you"인 것으로 가정된다. 또한, 이하의 설명에서는 상기 입력 텍스트가 음성 정보 없이 입력된 것으로 가정된다. 해당 입력 텍스트가 입력된 경우, 처리부(120)는 저장부(30)에 저장된 학습 코퍼스를 근거로 문장 경계 임시 후보(/)를 "i like it / very much / how about you /"로 선정할 수 있다. 앞서 언급한 바와 같이, 저장부(30)에 저장된 학습 코퍼스는 문장 경계 부호의 이전 및 이후에 존재할 확률이 높은 엔그램 데이터와, 각 엔그램 데이터 별로 문장 경계 부호의 이전 및 이후에 존재할 수 있는 확률 정보를 포함할 수 있다. 이에 따라, 상대적으로 문장 경계 부호의 이전 및 이후에 존재할 확률이 낮은 i와 like 사이, 그리고 very와 much 사이가 아닌, it과 very 사이, much와 how 사이, 그리고 you 이후에 문장 경계 임시 후보가 설정될 수 있다.
이에 따라, 위의 예시에서, 좌측 엔그램(문장 경계 /의 좌측에 위치한 엔그램)은 "it", "like it", "i like it", "very much"이고, 우측 엔그램(문장 경계 /의 우측에 위치한 엔그램)은 "how", "how about", "how about you"으로 설정될 확률이 높다. 엔그램은 유니그램, 바이그램 및 트라이그램을 포함하는 것으로 가정되었으므로, 각 문장 경계 임시 후보 별로 상기와 같이 나타날 수 있다. 또한, 위의 예시에서 very much는 우측 엔그램으로 있을 확률이 매우 낮기에, very much의 왼쪽에 문장 경계 임시 후보를 허용할지에 대한 사항은 구체적인 후보 선정 점수 계산 방법 및 후보 선정 점수 임계값(threshold)을 어떻게 정하냐에 따라 달라 질 수 있다.
또한, 본 발명의 설명을 위해 제시한 예에서는 영어를 사용하였으나 본 발명의 방법은 언어와 무관하게 실시 가능하다는 점이 이해되어야 한다.
그 후, 처리부(120)는 위의 수학식 1 내지 3을 근거로 도출된 후보 점수와 기설정된 임계 점수를 비교하는 기능을 수행한다. 여기서, 후보 점수가 기설정된 임계 점수인 문장 경계 임시 후보들은 문장 경계 후보들로 선택될 수 있다.
그 후, 처리부(120)는 문장 경계 후보들을 분석함으로써, 문장 경계 부호를 선택할 수 있다. 구체적으로, 처리부(120)는 문장 경계 임시 후보들을 분석함으로써 특징 정보에 해당 분석 정보를 추가할 수 있다. 여기서 분석 정보는 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률 및 문장 경계 임시 후보 별 엔그램 후보 점수를 포함할 수 있다. 또한, 특징 정보는 음성 정보가 존재하는 경우, 음성 정보를 근거로 산출된 가중 후보 점수를 포함할 수 있다.
즉, 처리부(120)는 상술한 과정을 통해 이미 문장 경계 후보들이 선택되었으나, 보다 높은 정확도로 문장 경계 부호들을 선택할 수 있도록 앞서 언급된 문장 경계 임시 후보들의 좌우 문맥, 전체 문맥 분석을 수행하기 위해 특징 정보에 분석 정보를 추가한다. 여기서, 특징 정보는 문장 경계 임시 후보의 좌우 문맥 파악을 위해 어휘 또는 어간 엔그램과, 품사 엔그램도 포함할 수 있다. 또한, 학습 코퍼스 중 일부가 음성 정보가 있는 코퍼스이고, 입력은 음성 정보가 없는 텍스트인 경우, 정음 특징 관련 파라미터는 0으로, 또는 기설정된 디폴트 값으로 이용될 수 있다.
상술한 분석 정보를 특징 정보에 추가한 이후, 처리부(120)는 상술한 특징 정보를 SVM(support vector machine) 및 MEM(maximum entropy model)을 포함하는 분류 모델에 적용시킴으로써 문장 경계 부호를 선택한다. 여기서, 분류 모델을 상기 2개의 종류로 기재한 이유는 상기 2개의 모델이 다른 분류 모델들에 비해 가볍게 동작될 수 있기 때문이다. 즉, 본 발명은 상기 2개의 모델로 제한되지 않고 다양한 분류 모델이 적용될 수 있다.
처리부(120)는 특징 정보를 상술한 분류 모델에 적용하여, 문장 경계 후보들이 실제 문장 경계 부호인지를 분류한다. 분류 카테고리는 문장경계인 경우는 yes, 아닌 경우는 no로 이진분류(binary classification)에 해당된다. 또한 그 분류 결과로, 문장경계 후보 중 yes로 분류된 후보는 해당 텍스트에 문장 경계 후보를 남겨두고, no로 분류된 후보 위치는 해당 텍스트에서 문장 경계 후보를 삭제하게 된다.
예를 들어, 위에서 언급된 문장 "i like it / very much / how about you /"에서, 처리부(120)를 통한 분류 결과는 첫 번째 후보가 no로, 두 번째와 세 번째 후보가 yes로 분류될 수 있으며, 분류 결과에 따라 문장 경계 후보를 처리한 결과, "i like it very much / how about you /"로 문장경계 정보 있는 텍스트로 출력될 수 있다.
또한, 상기 과정에서, 출력 텍스트의 가독성을 위해, 문장 경계에 대한 정보가 있는 텍스트를 출력시, 영어의 경우 대소문자 처리, 경계 생성 등 후처리로 "I like it very much. How about you?"와 같은 가독성이 높은 텍스트로 출력할 수 있다.
그리고, 처리부(120)는 문장 경계 인식에 이용되는 학습 코퍼스의 구축을 수행할 수 있다. 앞서 언급한 바와 같이, 학습 코퍼스는 특정 분야의 텍스트뿐만 아니라, 일반 분야의 텍스트를 근거로 생성되는 것을 특징으로 한다. 구체적으로, 학습 코퍼스는 음성 전사 코퍼스, 또는 사람에 의해 문장경계 부호가 추가된 음성 인식 결과 코퍼스일 수도 있지만, 음성 정보가 전혀 없는 일반 텍스트 일수도 있으며, 분류 대상 텍스트와 동일 분야인 특정 분야 텍스트 일부와, 일반 분야 대용량 텍스트를 결합한 텍스트 코퍼스일 수도 있다. 이에 따라, 본 발명의 처리부(120)는 다양한 텍스트들을 근거로 학습 코퍼스를 구축할 수 있다. 처리부(120)를 통해 학습 코퍼스를 구축하는 방법은 다음과 같다.
먼저, 처리부(120)는 학습 코퍼스의 구축을 위한 학습 코퍼스의 텍스트에서 엔그램 빈도를 추출한다. 그 후, 처리부(120)는 이들 엔그램이 문장 경계 부호의 좌측에 올 확률 Pr(/|n-gram left), 문장 경계부호의 우측에 위치할 확률 Pr(/|n-gram right)를 계산한다. 또한 학습 코퍼스에 음성 정보 있는 경우, 정음도 엔그램에 포함 시킬 수 있으며, 정음 또는 정음 길이 별로 해당 위치에 문장경계 부호가 올 확률 Pr(/|pause), Pr(/|silence_length)를 계산한다. 처리부(120)는 이렇게 계산된 점수를 저장부(30)에 저장할 수 있다.
그 후, 처리부(120)는 저장부(30)에 저장된 후보 확률을 이용하여, 학습 코퍼스에 대하여 가능한 모든 문장 경계 후보를 인식한다. 문장경계 후보 인식 방법은 수학식 1 내지 3을 참조로 위에서 언급한 입력 텍스트에 대한 문장 경계 후보를 도출하는 방법과 동일하므로, 이에 대한 추가적인 설명은 생략한다. 또한, 앞서 언급한 바와 같이, 이렇게 인식된 문장 경계 후보는 실제로 문장 경계인 경우도 있으나, 아닌 경우도 존재할 수 있다.
그 후, 처리부(120)는 상기 과정을 통해 도출된 문장 경계 후보를 분석함으로써, 문장 경계 부호를 선택할 수 있다. 구체적으로, 처리부(120)는 문장 경계 후보를 분석함으로써 분석 정보를 특징 정보에 추가하고, 특징 정보를 근거로 분류 과정을 수행함으로써, 문장 경계 부호를 선택한다. 이러한 문장 경계 부호를 선택하는 방법도 위에서 상세히 설명하였으므로, 이에 대한 추가적인 설명은 생략한다. 다만, 문장 경계 후보가 실제로 문장 경계인 경우는 분류 카테고리에서 yes인 사건 또는 예문에 해당되며, 실제 문장경계가 아닌 경우 이는 분류카테고리에서 no인 사건 또는 예제에 해당된다. 학습 코퍼스의 일부가 음성 정보가 있는 코퍼스고, 일부가 텍스트인 경우, 일반 텍스트의 정음 특징 관련 파라미터는 0으로, 또는 디폴트 값으로 정할 수 있다. 이들 예제는 분류기의 학습 과정을 통하여 저장부(30)에 저장될 수 있다.
또한, 위에서 설명한 학습 코퍼스의 구축 방법은, 단지 예시일 뿐이고 다양한 방식으로 구축될 수 있다는 점이 이해되어야 한다.
도 2는 본 발명의 일 실시예에 따른 처리부(120)에 대한 블록도이다. 위에서 언급한 바와 같이, 본 발명의 일 실시예에 따른 처리부(120)는 사용자로부터 입력된 입력 텍스트와, 저장부에 저장된 학습 코퍼스를 근거로 입력 텍스트의 문장 경계를 인식하는 기능을 한다. 이를 위해, 처리부(120)는 특징 정보 추출 모듈(121), 후보 확률 추출 모듈(122), 문장 경계 후보 선정 모듈(123), 분석 모듈(124) 및 문장 경계 부호 선택 모듈(125)을 포함하여 구성될 수 있다. 여기서, 처리부(120)에 포함된 각 구성은 명세서의 이해를 돕기 위해 도 1을 참조로 언급한 특징들을 기능별로 나열한 것이므로, 처리부(120)가 이들 구성 모두를 포함하는 것으로 이해되지 않아야 한다. 또한, 아래에서는 위에서 언급된 처리부(120)에 대한 구체적인 설명과 중복되는 사항은 생략되어 서술된다.
특징 정보 추출 모듈(121)은 입력 텍스트의 엔그램(n-gram) 정보를 포함하는 특징 정보를 추출하는 기능을 한다. 또한, 위에서 언급한 바와 같이, 입력 텍스트가 음성 인식을 통해 생성된 경우, 정음 및 정음 길이를 포함하는 음성 정보도 특징 정보에 포함시킬 수 있다.
후보 확률 추출 모듈(122)은 저장부(30)에 저장된 학습 코퍼스를 근거로 입력 텍스트에 대한 문장 경계 임시 후보들과, 이들 문장 경계 임시 후보에 대한 후보 확률들을 추출하는 기능을 한다.
문장 경계 후보 선정 모듈(123)은 후보 확률 추출 모듈(122)을 통해 추출된 문장 경계 임시 후보들에서, 기설정된 알고리즘을 통해 문장 경계 후보를 선정하는 기능을 한다. 구체적으로, 문장 경계 후보 선정 모듈(123)은 후보 확률 추출 모듈(122)에 저장된 후보 확률들을 근거로 문장 경계 임시 후보들에 대한 후보 점수들을 산출한다. 여기서, 후보 점수는 엔그램의 좌측 및 우측에 경계 부호가 올 확률 점수와, 음성 정보가 있는 경우 음성 정보를 근거로 산출된 가중 후보 점수를 포함할 수 있다. 여기서, 후보 점수에 대한 산출 방법은 위에서 수학식 1 내지 수학식 3을 참조로 상세히 설명하였으므로, 이에 대한 추가적인 설명은 생략한다.
분석 모듈(124)은 문장 경계 후보 선정 모듈(123)을 통해 선정된 문장 경계 후보를 분석하는 기능을 한다. 구체적으로, 분석 모듈(124)은 문장 경계 후보를 분석함으로써 분석 정보를 특징 정보에 추가하는 기능을 한다. 이에 따라, 특징 정보는 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률 및 문장 경계 임시 후보 별 엔그램 후보 점수를 더 포함할 수 있다. 또한, 특징 정보는 음성 정보가 존재하는 경우, 음성 정보를 근거로 산출된 가중 후보 점수를 포함할 수 있다.
문장 경계 부호 선택 모듈(125)은 특징 정보를 분류 모델에 적용시킴으로써 문장 경계 부호를 선택하는 기능을 한다. 여기서, 분류 모델은 SVM 및 MEM을 포함할 수 있다.
또한, 처리부(120)는 도 2에는 도시되지 않았으나, 학습 코퍼스를 구축하는 기능을 수행할 수 있다. 여기서 학습 코퍼스를 구축하는 방법에 대한 설명은 도 1을 참조로 상세히 설명되었으므로, 이에 대한 추가적인 설명은 생략한다.
도 3은 본 발명의 일 실시예에 따른 문장 경계 인식 방법에 대한 흐름도이다. 이하에서는 위에서 설명된 부분과 중복되는 사항은 생략하여 설명이 이루어진다.
먼저, 입력 텍스트의 엔그램 정보를 포함하는 특징 정보를 추출하는 단계(S110)가 수행된다. 여기서, 입력 텍스트는 문자로 입력된 텍스트뿐만 아니라, 사용자의 발화를 음성 인식함으로써 인식된 텍스트도 포함할 수 있다. S110 단계는 사용자의 발화를 음성 인식한 경우, 정음 및 정음 길이와 같은 음성 정보도 함께 추출할 수 있다.
그 후, 입력 텍스트에 대한 문장 경계 임시 후보들과 이에 대한 후보 확률들을 추출하는 단계(S120)가 이루어진다. 구체적으로, S120 단계는 문장 경계 정보를 포함하는 학습 코퍼스를 근거로, 입력 텍스트에 대한 문장 경계 임시 후보들과 문장 경계 임시 후보들에 대한 후보 확률들을 추출하는 기능을 한다.
그 후, S120 단계에서 추출된 후보 확률들을 근거로 문장 경계 임시 후보들에 대한 후보 점수들을 산출하는 단계(S130)가 이루어진다. 앞서 언급한 바와 같이, 후보 점수는 엔그램의 좌측 및 우측에 경계 부호가 올 확률 점수와, 음성 정보가 있는 경우 음성 정보를 근거로 산출된 가중 후보 점수를 포함할 수 있다. 이를 위해, S130 단계는 문장 경계 임시 후보 별로 좌측 엔그램과 우측 엔그램을 설정하는 단계 및 설정된 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률과, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률을 포함하는 후보 확률을 근거로 문장 경계 임시 후보 별로 엔그램 후보 점수를 산출하는 단계를 포함할 수 있다. 또한, S130 단계는 입력 텍스트에 대한 음성 정보가 존재하는 경우, 정음 및 정음 길이 정보를 근거로 가중 후보 점수를 산출하는 단계를 포함할 수 있다. 여기서, 후보 점수에 대한 산출 방법은 위에서 수학식 1 내지 수학식 3을 참조로 상세히 설명하였으므로, 이에 대한 추가적인 설명은 생략한다.
그 후, 후보 점수와 기설정된 임계 점수를 비교하는 단계가 수행된다. 비교 결과, 후보 점수가 기설정된 임계 점수를 초과하는 문장 경계 임시 후보들을 문장 경계 후보들로 선택하는 단계(S140)가 이루어진다.
그 후, 문장 경계 후보들을 분석하고(S150), 문장 경계 부호를 선택하는 단계(S160)가 이루어진다. 구체적으로, S160 단계는 문장 경계 후보들을 분석함으로써 분석 정보를 특징 정보에 추가하고, 특징 정보를 근거로 문장 경계 부호를 선택하는 단계이다. 여기서, 특징 정보는 설정된 좌측 엔그램이 문장 경계 임시 후보의 좌측에 올 확률, 우측 엔그램이 문장 경계 임시 후보의 우측에 올 확률, 문장 경계 임시 후보 별 엔그램 후보 점수, 그리고 음성 정보를 근거로 산출된 가중 후보 점수 중 적어도 하나를 더 포함할 수 있다.
S160 단계는 이렇게 생성된 특징 정보를 분류 모델에 적용함으로써 문장 경계 부호를 선택한다. 여기서, 분류 모델은 예를 들어, SVM 및 MEM을 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따른 학습 코퍼스를 구축하는 방법에 대한 흐름도이다.
먼저, 학습 코퍼스의 구축을 위한 학습 코퍼스의 텍스트에서 엔그램 빈도를 추출하는 단계(S210)가 수행된다.
그 후, 엔그램 후보 점수를 산출하는 단계(S220)가 이루어진다. 구체적으로, S220 단계는 엔그램이 문장 경계 부호의 좌측에 올 확률 Pr(/|n-gram left), 문장 경계부호의 우측에 위치할 확률 Pr(/|n-gram right)를 계산하는 단계를 포함한다. 또한, 학습 코퍼스에 음성 정보 있는 경우, S220 단계는 정음도 엔그램에 포함시킬 수 있으며, 정음 또는 정음 길이 별로 해당 위치에 문장경계 부호가 올 확률 Pr(/|pause), Pr(/|silence_length)를 계산하는 단계를 포함할 수 있다.
S230 단계는 S220 단계를 통해 도출된 엔그램 후보 점수를 저장부에 저장하는 단계이다.
그 후, 저장부에 저장된 후보 확률을 근거로, 학습 코퍼스에 대해 가능한 모든 문장 경계 후보들을 추출하는 단계(S240)가 이루어진다, 여기서 S240 단계는 위에서 수학식 1 내지 3을 참조로 설명한 입력 텍스트에 대한 문장 경계 후보를 도출하는 방법과 동일하므로, 이에 대한 추가적인 설명은 생략한다.
그 후, S240 단계를 통해 도출된 문장 경계 후보들을 분석하여(S250), 특징 정보에 분석 정보를 추가하는 단계가 이루어진다, 그 후, 특징 정보를 분류 모델에 적용함으로써, 문장 경계 부호를 선택하고, 이를 저장부에 저장하는 단계(S260)가 이루어진다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100 : 문장 경계 인식 장치 110 : 제어부
120 : 처리부

Claims (1)

  1. 입력 텍스트의 엔그램(n-gram) 정보를 포함하는 특징 정보를 추출하는 단계;
    문장 경계 정보를 포함하는 학습 코퍼스를 근거로, 상기 입력 텍스트에 대한 문장 경계 임시 후보들과 상기 문장 경계 임시 후보들에 대한 후보 확률들을 추출하는 단계;
    상기 후보 확률들을 근거로 상기 문장 경계 임시 후보들에 대한 후보 점수들을 산출하는 단계;
    후보 점수가 기설정된 임계 점수 이상인 문장 경계 임시 후보들을 문장 경계 후보들로 선택하는 단계; 및
    상기 특징 정보와 상기 문장 경계 임시 후보들에 대한 후보 점수들을 근거로 상기 문장 경계 후보들을 분석함으로써, 문장 경계 부호를 선택하는 단계를 포함하는 것을 특징으로 하는, 문장 경계 인식 방법.

KR1020150063994A 2015-05-07 2015-05-07 문장 경계 인식 장치 및 방법 KR102498839B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150063994A KR102498839B1 (ko) 2015-05-07 2015-05-07 문장 경계 인식 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150063994A KR102498839B1 (ko) 2015-05-07 2015-05-07 문장 경계 인식 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160131501A true KR20160131501A (ko) 2016-11-16
KR102498839B1 KR102498839B1 (ko) 2023-02-13

Family

ID=57541167

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150063994A KR102498839B1 (ko) 2015-05-07 2015-05-07 문장 경계 인식 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102498839B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063150A1 (en) * 2007-08-27 2009-03-05 International Business Machines Corporation Method for automatically identifying sentence boundaries in noisy conversational data
KR20100048842A (ko) * 2008-10-31 2010-05-11 한국전자통신연구원 문장 코퍼스에 대한 영역 자동분류 방법 및 장치
KR20110038474A (ko) * 2009-10-08 2011-04-14 한국전자통신연구원 문장경계 인식 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063150A1 (en) * 2007-08-27 2009-03-05 International Business Machines Corporation Method for automatically identifying sentence boundaries in noisy conversational data
KR20100048842A (ko) * 2008-10-31 2010-05-11 한국전자통신연구원 문장 코퍼스에 대한 영역 자동분류 방법 및 장치
KR20110038474A (ko) * 2009-10-08 2011-04-14 한국전자통신연구원 문장경계 인식 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Gotoh and Renals. "Sentence boundary detection in broadcast speech transcripts." ASR2000: Challenges for the new Millenium ISCA Tutorial and Research Workshop. 2000. *
이충희 et al. "웹 문서를 위한 개선된 문장경계인식 방법." 정보과학회논문지: 소프트웨어 및 응용 37.6 (2010): 455-463. *

Also Published As

Publication number Publication date
KR102498839B1 (ko) 2023-02-13

Similar Documents

Publication Publication Date Title
Czech A System for Recognizing Natural Spelling of English Words
JP6066354B2 (ja) 信頼度計算の方法及び装置
US20180137109A1 (en) Methodology for automatic multilingual speech recognition
US7421387B2 (en) Dynamic N-best algorithm to reduce recognition errors
CN109754809B (zh) 语音识别方法、装置、电子设备及存储介质
US8612212B2 (en) Method and system for automatically detecting morphemes in a task classification system using lattices
US7937262B2 (en) Method, apparatus, and computer program product for machine translation
US8577679B2 (en) Symbol insertion apparatus and symbol insertion method
US6681206B1 (en) Method for generating morphemes
KR101590724B1 (ko) 음성 인식 오류 수정 방법 및 이를 수행하는 장치
JP4680714B2 (ja) 音声認識装置および音声認識方法
US11043213B2 (en) System and method for detection and correction of incorrectly pronounced words
US20090265166A1 (en) Boundary estimation apparatus and method
US20160267902A1 (en) Speech recognition using a foreign word grammar
US10360904B2 (en) Methods and apparatus for speech recognition using a garbage model
US20220180864A1 (en) Dialogue system, dialogue processing method, translating apparatus, and method of translation
KR20180062003A (ko) 음성 인식 오류 교정 방법
CN112927679A (zh) 一种语音识别中添加标点符号的方法及语音识别装置
US20150179169A1 (en) Speech Recognition By Post Processing Using Phonetic and Semantic Information
CN110503956B (zh) 语音识别方法、装置、介质及电子设备
US20050187767A1 (en) Dynamic N-best algorithm to reduce speech recognition errors
US20110224985A1 (en) Model adaptation device, method thereof, and program thereof
Rose et al. Integration of utterance verification with statistical language modeling and spoken language understanding
KR101483947B1 (ko) 핵심어에서의 음소 오류 결과를 고려한 음향 모델 변별 학습을 위한 장치 및 이를 위한 방법이 기록된 컴퓨터 판독 가능한 기록매체
JP4595415B2 (ja) 音声検索システムおよび方法ならびにプログラム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant