KR100749289B1 - 텍스트의 자동 세그멘테이션 방법 및 시스템 - Google Patents

텍스트의 자동 세그멘테이션 방법 및 시스템 Download PDF

Info

Publication number
KR100749289B1
KR100749289B1 KR1020007008357A KR20007008357A KR100749289B1 KR 100749289 B1 KR100749289 B1 KR 100749289B1 KR 1020007008357 A KR1020007008357 A KR 1020007008357A KR 20007008357 A KR20007008357 A KR 20007008357A KR 100749289 B1 KR100749289 B1 KR 100749289B1
Authority
KR
South Korea
Prior art keywords
word
words
string
sequence
input string
Prior art date
Application number
KR1020007008357A
Other languages
English (en)
Other versions
KR20010040499A (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 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20010040499A publication Critical patent/KR20010040499A/ko
Application granted granted Critical
Publication of KR100749289B1 publication Critical patent/KR100749289B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/53Processing of non-Latin text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Character Discrimination (AREA)

Abstract

시스템(100)은 일본어 또는 중국어 문장과 같은 연결된 텍스트를 단어로 세그멘팅할 수 있다. 시스템은 연결된 텍스트를 나타내는 입력 스트링을 판독하기 위한 수단(110)을 포함한다. 세그멘테이션 수단(120)은 입력 스트링 내에 단어 시퀀스를 나타내는 트리 구조를 반복적인 방식으로 구성함으로써 연결된 텍스트 내의 적어도 하나의 단어 시퀀스를 식별한다. 초기에, 입력 스트링은 워킹 스트링으로서 취해진다. 사전(122)의 각각의 단어는 워킹 스트링의 시작과 비교된다. 매칭은 트리 내의 노드에 의해 나타내어지고, 처리는 입력 스트링의 나머지 부분으로 이어진다. 더욱이, 시스템은 식별된 단어 시퀀스들 중 적어도 하나를 출력시키기 위한 수단(130)을 포함한다. 언어 모델은 후보 시퀀스들 사이에서 선택하는데 이용될 수 있다. 양호하게는, 시스템은 대표적인 텍스트에 기초하여 어휘를 갱신하기 위한 음성 인식 시스템에 이용된다.
링크, 입력 스트링, 워킹 스트링, 단어 시퀀스

Description

텍스트의 자동 세그멘테이션 방법 및 시스템{Automatic segmentation of a text}
본 발명은 연결된 텍스트(connected text)를 나타내는 입력 스트링을 판독하는 단계, 입력 스트링을 사전에서의 단어들과 비교함으로써 입력 스트링내의 분리된 단어의 적어도 하나의 시퀀스를 식별하는 단계, 및 식별된 단어 시퀀스들 중 적어도 하나의 시퀀스를 출력하는 단계를 포함하는 연결된 텍스트를 단어들로 세크멘팅(segment)하는 방법에 관한 것이다.
더욱이, 본 발명은 연결된 텍스트를 나타내는 입력 스트링을 판독하기 위한 수단, 입력 스트링을 사전에서의 단어들과 비교함으로써 입력 스트링내의 분리된 단어의 적어도 하나의 시퀀스를 식별하기 위한 수단, 및 식별된 단어 시퀀스들 중 적어도 하나의 시퀀스를 출력하기 위한 수단을 포함하는 연결된 텍스트를 단어들로 세크멘팅하기 위한 시스템에 관한 것이다.
점증적으로 개량된 자연 언어 처리 기술들은 음성 처리 시스템(speech processing system), 수기/광학 문자 인식 시스템, 자동 번역 시스템 또는 스펠/문법 검사용 단어 처리 시스템과 같은 데이터 처리 시스템에 이용된다. 이러한 시스템은 개별 단어 또는 단어 순서에 관련된 통계 정보를 주로 이용한다. 통계 정보는 대형 텍스트 언어 자료(corpus)를 분석함으로써 얻어진다. 분석에 있어서, 개별 단어는 텍스트에서 식별되는데 필요하다. 서양의 언어들을 포함하여 다수의 언어들에 있어서, 단어들은 식별을 용이하게 하는 공간 또는 다른 구두 마커(punctuation marker)와 같은 경계 마커(boundary marker)들에 의해 분리된다. 그러나, 여러 가지 다른 언어는 단어들 사이에 경계 마커를 가지고 있지 않다. 이러한 언어의 예로는 중국어, 일본어 및 한글과 같은 여러 가지 아시아 언어이다. 이러한 언어를 때로는 교착 언어들(agglutinative language)이라 칭한다. 전형적으로, 이러한 언어들은 한가지 이상의 음절 및 통상적인 개념 또는 의미 심장한 유닛을 각각 나타내는 특정한 문자("표의 문자")를 이용하여 기록한다. 단어는 하나 이상의 이러한 문자들로 구성된다. 이러한 언어에서 텍스트의 판독기는 텍스트의 뜻을 알기 위해 이러한 단어의 경계를 식별하여야 한다. 다수의 응용에 있어서, 단어들의 단 한가지 시퀀스가 식별되어야 한다.
미합중국 특허 제 5,448,474 호로부터, 연결된 중국어 텍스트에서 중국어 단어의 분리 방법 및 시스템이 공지되어 있다. 이러한 시스템에 있어서, 사전 룩업 처리(dictionary lookup process)가 수행되어 모든 텍스트의 서브스트링(substring)이 식별된다. 텍스트의 각각의 문자에 있어서, 단어가 이 위치에서 텍스트 스트링과 매칭(match)하는지의 여부를 사전의 각각의 단어에 대해 검사된다. 예를 들어, 위치(0)(텍스트의 제 1 문자)에서 텍스트 "software"에 대해, 단어 "so", "soft", 및 "software"; 위치(1)에서 단어 "of" 및 "oft", 위치(4)에서 "war" 및 "ware"; 위치(5)에서 "a" 및 "are", 위치(6)에서 "re"와의 매칭이 발견된다. 각각의 매칭에 대해 엔트리(entry)가 테이블내에 발생된다. 엔트리는 매칭하는 단어, 매칭이 시작하는 텍스트의 위치 및 단어의 길이를 포함한다. 단어가 어느 위치에서, 어떠한 매칭도 발견되지 않는 경우, 엔트리가 개별 문자를 포함하고 있는 테이블에 작성된다. 이러한 방식으로, 모든 가능한 단어 및 매칭하지 않은 문자들은 테이블에 추가된다. 그 다음, 테이블내의 엔트리수는 단어가 앞의 단어의 끝에 인접하여 시작하는 것과 같은 기준에 기초하여 감소된다. 이러한 방식으로, 중첩 단어(인접하고 있지 않은)가 제어되기 때문에, 텍스트 부분들은 식별된 단어로 커버될(cover)수 없다. 최장 매치 중복 단어를 유지하도록 기준에 기초하여 중복 단어의 바람직하지 못한 삭제를 바로잡기 위해 별도의 복원 처리가 수행된다. 최종적으로, 텍스트 또는 다른 비삭제된 단어의 끝 및 시작에 인접해 있지 않은 모든 단어가 또 다시 제거된다. 최종 결과는 몇 가지 가능한 단어 시퀀스를 포함할 수 있다. 일반적인 텍스트내의 단어 발생 빈도에 관련된 정보는 시퀀스들 중 하나의 시퀀스를 선택하는데 이용될 수 있다. 예를 들어, 2 문자 중국어 단어를 가지고 있는 시퀀스는 2 문자 단어가 단일 문자 단어보다 더 일반적이기 때문에 2개의 단일 문자 단어에 의해 나타내어진 2문자와 동일한 시퀀스에 관해 선택될 수 있다.
공지된 분리 절차는 복잡하고, 잘못된 삭제를 정정하기 위한 복원 처리를 필요로 한다.
본 발명의 목적은 보다 효과적인 후술한 종류의 방법 및 시스템을 제공하기 위한 것이다.
본 발명의 목적을 충족시키기 위해, 방법은 적어도 하나의 단어 시퀀스를 식별하는 단계가,
입력 스트링을 워킹(working) 스트링으로서 취하는 단계와,
사전의 각각의 단어에 대해;
단어를 워킹 스트링의 시작과 비교하여
단어가 워킹 스트링의 시작과 매칭하는 경우;
단어를 나타내는 트리내에 노드(node)를 형성하고,
단어의 끝에 바로 인접한 위치에서 시작하는 입력 스트링의 부분을 노드와 관련시키고,
관련된 부분을 워킹 스트링으로서 이용함으로써 노드에 관련된 입력 스트링 부분내에서 단어 시퀀스를 나타내는, 노드에 링크된 서브 트리(sub-tree)를 형성함으로써 반복적인 방식으로 입력 스트링내에 단어 시퀀스를 나타내는 트리 구조(tree structure)를 구성(build)하는 단계를 포함하는 것을 특징으로 한다.
트리 구조를 구성함으로써, 입력 스트링을 분석하는 것이 선행하는 단어에 인접한 단어만을 자동적으로 식별할 수 있다. 최종 단어가 입력 스트링의 끝에서 종료하는 모든 식별된 단어 시퀀스는 기본적으로 가능하다. 이러한 방식으로, 가능하지 않은(선행 단어에 비추어 보아) 단어는 후보들(candidates)로서 고려되지 않는다. 이것은 처리될 데이터량을 감소시킨다. 더욱이, 단어를 삭제하고 중첩을 재도입(reintroduce)하는 복잡한 과정이 불필요하다. 본 발명에 따른 샘플 스트링 "software"의 세그멘팅은 2가지 주요 분기(branch), 즉 단어"software"를 나타내는 단일 노드를 가지고 있는 하나의 분기 및 단어 "soft" 및 "ware"를 각각 나타내는 2개의 링크 노드를 가지고 있는 하나의 분기를 가지는 논리 트리 구조를 발생시킨다. 따라서, 종래의 시스템내에서 10개 대신에 단지 3개의 엔트리만이 필요하다.
청구 범위 2 항에 기재된 본 발명에 따른 실시예에 있어서, 복수의 새로운 단어는 미리 결정된 기준이 충족되는 경우 상이한 길이로 추가된다. 단일 문자로서가 아닌 문자의 알려지지 않은 시퀀스를 데이터 구조에 추가함으로써, 다중 문자의 새로운 단어를 간단한 방식으로 식별하는 것이 가능하다. 이것은 일본어와 같은 언어에 적절한 과정을 형성하는데, 다수의 단일 문자들은 단어를 나타내지 못한다. 더욱이, 이것은 다중 문자 단어를 양호한 새로운 단어로서 식별할 수 있는데, 이러한 경우 단일 문자 단어가 사전에 입력될 필요가 없다. 이러한 방식으로, 사전은 단일 문자 단어로 "오염"되게 되는 것을 방지한다. 다수의 단일 문자를 사전에 등록하는 것은 단어로의 텍스트의 정확한 세그멘테이션의 기회를 감소시킨다. 예를 들어, 텍스트 "thisbook"은 단일 문자"t"가 사전에 있는 경우 단어 "t", "his" 및 "book"의 시퀀스로 세그멘팅되게 된다.
청구 범위 3항에 기재된 본 발명에 따른 실시예에 있어서, 이러한 기준은 단어 시퀀스가 기존의 사전을 이용하여 식별되는지의 여부에 기초하는 총체적인 판단(grobal decision)이다. 어떠한 시퀀스도 식별되지 않은 경우, 새로운 단어가 추가된다. 이러한 테스트는 기존 사전의 알려진 단어만을 이용하여 트리 구조를 먼저 구성함으로써 수행될 수 있고, 트리가 구성된 후에는 적어도 하나의 경로(path)가 전체 입력 스트링과 매칭하는 단어 시퀀스를 나타내는지의 여부를 검증한다. 검증은 트리를 관통하는 제 1 경로가 입력 스트링의 끝에 도달하면 파라미터(end-of-string-reached)를 세팅함으로서 트리 구조의 구성중에 매우 간단해질 수 있다.
청구 범위 4항에 기재된 실시예에 있어서, 새로운 단어는 대응하는 단어 시퀀스가 전체 입력 스트링과 매칭하지 않은 경로의 하나 이상의 끝 노드들(end nodes)에 추가된다. 이러한 노드는 트리를 관통하는 경로에 후속하고, 경로의 끝 노드가 입력 스트링의 끝에 대응하는지를 검증함으로써 간단하게 배치될 수 있다(즉, 단어 매칭뿐만 아니라 스트링내의 위치 이것은 매칭하는 단어가 전체 스트링을 따라 발견되는 것을 나타내는, 끝 노드에 관련된 입력 스트링 부분이 비워져 있는지의 여부를 검증함으로써 간단한 방식으로 검사될 수 있다). 양호한 실시예에 있어서, 총체적인 판단은 새로운 단어(상술함)를 추가하였는지 여부로 취해진다. 새로운 단어가 추가된 경우, 트리 구조는 "리구성(rebuild)"된다. 트리의 리구성중에, 새로운 단어를 추가하기 위한 노드는, 사전의 어떠한 단어도 입력 스트링의 나머지 부분과 매칭하지 않는(및 전체 스트링의 아직까지 처리되지 않은) 트리내에 위치들에서 발견된다.
청구 범위 5항에 기재된 실시예에 있어서, 다수의 단어가 워킹 스트링의 시작에 얼마나 매칭하는지를 계산한다. 이러한 수가 임계값 이하일 경우, 새로운 단어가 추가된다. 다수의 새로운 단어가 얼마나 추가되는지는 발견된 매칭하는 단어의 수에 의존될 수 있다. 보다 새로운 단어는, 매칭이 거의 발견되지 않은 경우 양호하게 추가된다. 이러한 방식으로, 단어 시퀀스내의 요구된 수의 대안이 발생될 수 있다. 청구 범위 6항에 기재된 실시예에 있어서, 극단적으로 임계값이 1일 수 있고, 기존의 사전의 단일 단어가 워킹 스트링의 시작과 매칭하지 않는 경우 새로운 단어가 추가될 수 있다. 청구 범위 5항 및 6항의 실시예는 트리내의 국부 판단들(local decisions)을 취하는데 양호하게 이용되는데, 이러한 의미에서 트리내의 각각의 분기에 있어서, 새로운 단어를 (더)추가할 것인지의 여부를 판단한다.
청구 범위 7항에 기재된 국부 판단을 취하기 위한 대안적인 실시예에 있어서, 경로내의 기존의 새로운 단어의 수는 새로운 단어가 추가될 필요가 있는지의 여부를 결정하기 위한 측정으로서 취해진다. "이상적인" 시나리오에 있어서, 첫 번째로 경로내에 새로운 단어가 단 하나만이 필요하거나 소수의 새로운 단어가 추가된다는 것은 실제로 가능하다(독자의 관점에서). 실제로, 상이한 길이를 각각 가지고 있는 다수의 후보들은 테스트될 필요가 있을 수 있다. 다소 틀린 후보 단어가 스트링의 나머지내의 단어를 식별시 오정렬(misalignment)을 야기시킬 수 있다. 특별한 측정없이도 이러한 오정렬은 다른 새로운 단어들(가능한 다른 새로운 단어 등에 뒤이어)를 추가하는 것을 초래할 것이다. 예를 들어, 경로내에 2개 또는 3개의 새로운 단어를 허용함으로써 트리가, 잘못된 새로운 단어에 의해 야기되는 다수의 시퀀스를 갖고 신속하게 확장하는 것을 방지한다.
청구 범위 8항에 기재된 국부 판단을 취하기 위한 대안적인 실시예에 있어서, 단어 시퀀스의 가능성(및 트리를 관통하는 대응하는 경로)이 계산된다. 가능성이 매우 낮게 떨어지는 경우, 경로는 더 이상 확장하지 않는다. 이러한 방식으로, 새로운 단어를 포함할 수 있는 비현실적인 세그멘테이션이 더 이상 고려되지 않는다. 유리하게, 임계값은 상대적인 랭킹(ranking)을 보장하도록 동적으로 설정된다. 이미 하나 이상의 시퀀스가 식별된 경우(계산된 가능성을 갖고), 다른 시퀀스들은 상기 시퀀스가 최고 가능성을 가지고 있는 이상 처리되기만 한다. 양호하게는, 새로운 단어에게 상대적으로 낮은 가능성이 주어지는데, 가능성은 새로운 단어의 길이에 의존한다. 이러한 방식으로, 단어 시퀀스의 가능성은 청구 범위 9항에 기재된 바와 같이 새로운 단어의 수에 관련하여 시퀀스를 감소시킨다. 이러한 방식으로, 새로운 단어의 잘못된 선택(오정렬되기도 하고, 다른 새로운 단어를 필요로 하는 스트링의 나머지를 발생시킴)이 다수의 새로운 단어로 트리를 연속적으로 확장하는 것을 방지할 수 있다.
청구 범위 10항에 기재된 실시예에 따르면, 새로운 단어의 길이는 K(K 〉1)개의 문자로 제한된다. 양호하게는, K는 5와 같으므로, 양호하게는 주로 짧은 단어를 가지고 있는 아시아 언어에 대해 대부분의 단어는 상당히 큰 트리를 구성하지 않고 식별될 수 있다.
청구 범위 11항에 기재된 실시예에 따르면, 트리내의 경로는, 경로의 마지막 단어가 입력 스트링의 끝에 정렬되어 끝나는 경우 유효 세그멘테이션을 나타내도록 고려된다. 이것은 관련된 단어가 입력 스트링의 끝에 정렬되는 트리내의 이러한 끝 노드(말미)로부터 시작을 역추적함으로써 유효 시퀀스를 식별할 수 있다.
청구 범위 12항에 기재된 실시예에 따르면, 통계적 N-그램(N-gram) 언어 모델은 트리를 통해 가장 가능성 있는 경로를 결정하는데 이용된다. 이러한 방식으로, 발견된 판단은 몇가지 가능한 시퀀스로부터 가장 가능성 있는 시퀀스를 선택하도록 취해진다. 이러한 시퀀스의 단어는 세그멘팅된 텍스트를 나타냄으로써 출력된다. 특히, 방법이 음성 인식 시스템용의 어휘(lexicon)(단어집(vocabulary) 및/또는 언어 모델)를 설정하는데 이용되는 경우, 이것의 N-그램 언어 모델을 가지고 있는 이미 제공된 디폴트 어휘가 이용되는 것이 양호하다. 양호하게, 2-그램 또는 3-그램은 단어집이 큰(예를 들어, 10,000 엔트리 이상) 경우 이용된다.
본 발명의 목적을 충족시키기 위해서 시스템은, 적어도 하나의 단어 시퀀스를 식별하기 위한 수단이,
입력 스트링을 워킹 스트링으로 취하고,
사전의 각각의 단어에 대해,
단어를 워킹 스트링의 시작과 비교하며,
단어가 워킹 스트링의 시작과 매칭하는 경우,
단어를 나타내는 트리내에 노드를 형성하고,
단어의 끝 위치에 바로 인접한 위치에서 시작하는 입력 스트링 부분을 노드와 관련시키며,
워킹 스트링으로서 관련된 부분을 이용함으로써 노드와 관련된 입력 스트링 부분내에 단어 시퀀스를 나타내는 노드에 링크된 서브 트리를 형성함으로써 반복적인 방식으로 입력 스트링내에 단어 시퀀스를 나타내는 트리 구조를 구성하도록 동작하는 것을 특징으로 한다.
본 발명의 이러한 특징 및 다른 특징은 도면에 도시된 실시예를 참조하면 명백하게 알 수 있다.
삭제
삭제
도 1은 본 발명에 따른 시스템의 블록도.
도 2는 음성 인식 시스템의 블록도.
도 3은 단어 또는 서브 단어 단위를 모델링하기 위한 히든 마르코프 모델(hidden Markov Model)을 도시한 도면.
도 4는 알려진 단어만 및 새로운 단어를 가지고 행하는 2단계 세그멘팅 단계의 흐름도.
도 5는 알려진 단어를 갖는 트리 기반 세그멘팅의 흐름도.
도 6은 새로운 단어를 갖는 트리 기반 세그멘팅의 흐름도.
텍스트를 단어들로 세그멘팅하기 위해 많은 예들이 설명을 용이하게 하기 위해, 라틴 문자들로 표현된 텍스트에 제공된다. 실제로, 포함된 언어는 가다카나 또는 히라가나와 같은 상이한 문자 기호를 이용한다.
도 1은 본 발명에 따른 시스템(100)의 블록도를 도시한 것이다. 시스템(100)은 연결된 텍스트를 나타내는 입력 스트링을 수신하기 위한 입력 수단(110)을 포함한다. 스트링은 구, 문장 또는 다수의 문장으로 이루어진 큰 텍스트를 포함한다. 일본어 또는 중국어 문장과 같은 아시아 언어에서, 문장들은 별도의 문자에 의해 분리된다. 이러한 언어에 있어서, 보다 큰 텍스트는 문장에 기초하여 양호하게 세그멘팅된다. 이를 위해, 보다 큰 텍스트는 문장을 식별하기 위해 문장 분리기를 이용하여 문장으로 먼저 세그멘팅되고, 각각의 문장은 본 발명에 따른 방법을 이용하여 세그멘팅된다. 전형적으로, 입력 스트링은 텍스트 파일로부터 판독된다. 양호한 경우, 파일은 내장 또는 외부 변환기를 이용하여 공통 포멧으로 변환될 수 있다. 또한, 텍스트는 문자 스트링을 인식하기 위해 OCR 기술을 이용하고 문서를 스캔함으로써 하드 카피 문서(hard-copy document)로부터 검색될 수 있다.
더욱이, 시스템은 입력 스트링을 하나 이상의 단어 시퀀스들로 세그멘팅하기 위한 식별 수단(120)을 포함한다. 전형적으로, 식별 수단(120)은 소프트웨어로 구현되어 PC 또는 워크스테이션 프로세서와 같은 적절한 프로세서로 실행된다. 식별 수단(120)은 어휘집(사전)(122)을 이용하고, 세그멘팅을 위한 언어 모델(124)을 선택적으로 이용한다. 어휘집(122) 및 언어 모델(124)에 대한 단어집은 특정 언어의 분리된 단어에 기초한다고 가정한다. 시스템은 상이한 언어에 대한 상이한 단어집을 지원할 수 있다. 단어집의 크기는 시스템의 크기 및 복잡도에 따라서 변할 수 있다. 출력 수단(130)은 식별된 단어 시퀀스들 중 적어도 하나의 시퀀스를 출력하는데 이용된다. 여러 가지 상황에 있어서, 단 하나의(또는 소수) 단어 시퀀스를 출력시키는 것이 양호할 수 있다. 본 발명에 따른 방법 및 시스템은 예를 들어 자동 인덱스를 생성하기 위해 몇 가지 또는 모든 가능한 단어 후보들을 분석하는 것이 양호한 어플리케이션들에 대해 이용될 수 있다는 것을 이해할 수 있다.
양호하게는, 방법 및 시스템은 큰 단어집 연속 음성 인식(large vocabulary continuous speech recognition) 또는 수기 인식 시스템과 같은 패턴 인식용으로 이용되는데, 여기서 단어집은 단어를 인식하는데 이용되고, 언어 모델은 기초 인식 결과를 개선하는데 이용될 수 있다. 패턴 인식용으로 이용된 기술이 본 발명에 따른 세그멘팅을 위해서도 이용될 수 있기 때문에, 패턴 인식 시스템에 대한 설명이 먼저 제공된다. 도 2는 스펙트럼 분석 서브시스템(210) 및 유닛 매칭 서브시스템(220)[L. Rabiner, B-H, Juang, "Fundamentals of speech recognition", Prentice Hall 1993, page 434를 참조]를 포함하는 연속 음성 인식 시스템(200)을 도시한 것이다. 스펙트럼 분석 서브시스템(210)에 있어서, 음성 입력 신호(SIS)는 특징들의 대표적인 벡터(관측 벡터. OV)를 계산하기 위해 스펙트럼으로 및/또는 일시적으로 분석된다. 전형적으로, 음성 신호는, 예를 들어 고역 강조(pre-emphasis)를 적용함으로써 디지털화(6.67 ㎑의 속도로 샘플링됨) 및 선처리된다. 연속적인 샘플들은, 예를 들어, 음성 신호의 32 msec에 대응하는 프레임들로 그룹(블록)을 이룬다. 연속 프레임은 예를 들어 16 msec로 부분적으로 중복된다. 때로는, 선형 예상 코딩(Linear predictive Coding : LPC) 스펙트럼 분석 방법이 각각의 프레임에 대해 특징들의 대표적인 벡터(관측 벡터)를 계산하는데 이용된다. 특징 벡터는, 예를 들어 24, 32 또는 63 성분을 가질 수 있다. 유닛 매칭 서브시스템(220)에 있어서, 관측 벡터는 음성 인식 유닛의 목록(inventory)에 대해 매칭된다. 음성 인식 유닛은 음향 기준의 시퀀스에 의해 나타내어질 수 있다. 여러 가지 형태의 음성 인식 유닛들이 이용될 수 있다. 예를 들어, 전체 단어 또는 단어 그룹 조차도 하나의 음성 인식 유닛에 의해 나타내어진다. 단어 모델(WM)은 제공된 단어집의 각각의 단어에 음향 기준의 시퀀스로 전사(transcription)를 제공한다. 전체 단어가 음성 인식 유닛에 의해 나타내어지는 시스템에 있어서, 직접 관계는 단어 모델과 음성 인식 유닛 사이에 존재한다. 다른 시스템에서, 특히 큰 단어집 시스템에서, 페네네스(fenenes) 및 페노네스(fenones)와 같은 미분 유닛뿐 아니라 단음, 양음(diphore) 또는 음절과 같은 서브 단어 유닛에 언어학적으로 기초한 음성 인식 유닛용으로 이용할 수 있다. 이러한 시스템에 있어서, 단어 모델은 단어집의 단어에 관련하여 서브 단어 장치의 시퀀스를 설명하는 어휘집(234), 및 포함된 음성 인식 유닛의 음향 기준의 시퀀스를 설명하는 서브 단어 모델(232)에 의해 제공된다. 단어 모델 구성기(236)는 서브 단어 모델(232) 및 어휘집(234)에 기초하여 단어 모델을 구성한다. 도 3a는 전체 단어 음성 인식 유닛에 기초한 시스템의 단어 모델(300)을 도시한 것인데, 도시된 단어의 음성 인식 유닛이 10개의 음향 기준(301 내지 310)의 시퀀스를 이용하여 모델링된다. 도 3b는 서브 단어 유닛에 기초한 시스템에 대한 단어 모델(320)을 도시한 것인데,여기서 도시된 단어가 4개의 음향 기준(351, 352, 253, 354; 361내지 364; 371 내지 374)을 각각 가지고 있는 3개의 서브 단어 모델(350, 360 및 370)의 시퀀스에 의해 모델링된다. 도 3에 도시된 단어 모델은 음성 및 수기 신호를 확률적으로 모델링하는데 폭넓게 이용되는 히든 마르코프 모델들(Hidden Markov Models)에 기초한다. 이러한 모델을 이용하여, 각각의 인식 유닛(단어 모델 또는 서브 단어 모델)은 전형적으로 파라미터가 데이터의 트레이닝 세트(tranning set of data)로부터 추정되는 HMM에 의해 특징지워진다. 예를 들어 10,000 내지 60,000개 단어를 포함하는 큰 단어집 음성 인식 시스템에 있어서, 통상적으로 제한된 세트 예컨대, 40개 서브 단어 유닛은 보다 큰 유닛을 위한 HMM을 적절하게 트레인하기 위한 다수의 트레이닝 데이터를 필요로 하기 때문에 이용된다. HMM 상태는 음향 기준(음성 인식에 대해) 또는 이서 기준(수기 인식에 대해)(allographic reference)에 대응한다. 이산 또는 연속 확률 밀도들(discret or continuous probability densities)을 포함하는 기준을 모델링하기 위한 여러 가지 기술이 공지되어 있다.
도 2에 도시된 바와 같은 단어 레벨 매칭 시스템(230)은 관측 벡터를 음성 인식 유닛의 모든 시퀀스에 매칭하고, 벡터와 시퀀스 사이의 매칭 가능성을 제공한다. 서브 단어 유닛이 이용되는 경우, 어휘집(234) 내의 시퀀스로 서브 단어 유닛의 가능한 시퀀스를 제한하기 위해 어휘집(234)을 이용함으로써 매칭에 대한 제약들이 배열된다. 이것은 단어의 가능한 시퀀스에 대한 결과를 감소시킨다. 시퀀스 레벨 매칭 시스템(240)은 조사된 경로가 언어 모델에 의해 지정된 바와 같은 적절한 시퀀스인 단어 시퀀스에 대응하는 것이 되도록 매칭에 대한 제약을 배열하도록 언어 모델(LM)을 이용한다. 이러한 방식으로, 유닛 매칭 서브시스템(220)의 결과는 인식된 문장(RS)이다. 패턴 인식에 이용된 언어 모델은 언어 및 인식 임무(recongnition task)의 구문론적 및/또는 의미론적 제약(242)을 포함할 수 있다. 구문론 구속력에 기초한 언어 모델은 통상적으로 문법(244)이라 칭한다.
이와 유사한 시스템은 수기를 인식하는 것으로 공지되어 있다. 수기 인식 시스템용으로 이용된 언어 모델은 단어 시퀀스 외에 선택적으로 단어 시퀀스를 특정한 문자 시퀀스로 지정할 수 있다.
언어 모델에 의해 이용된 문법(244)은 기본적으로,
P(W) = P(w1)P(w1|w1), P(w3|w1 w2) ... P(wq|w1 w2 w3 ... wq)에 의해 제공되는 단어 시퀀스 W = w1 w2 w3 ... wq의 가능성을 제공한다. 실제로, 모든 단어에 대한 조건부 단어 확률(conditional word probabilities) 및 제공된 언어내의 모든 시퀀스 길이를 믿을 수 있게 추정하는 것이 실행불가능하기 때문에, N-그램 단어 모델이 폭넓게 이용된다. N-그램 모델에 있어서, P(wj|w1 w2 w3 ... Wj-1)는 P(wj|wj-N+1 ... Wj-1)에 의해 근사된다. 실제로, 바이그램(bigram) 또는 트리그램(trigram)이 이용된다. 트리그램에 있어서, P(wj|w1 w2 w3 ... Wj-1)항은 P(wj|wj-2 wj-1)에 의해 근사된다. N-그램 언어 모델을 자동적으로 구성하는 방식은 단순히 상대적인 빈도(F(wj-N+1 ... wj-1wj)/F(wj-N+1 ... wj-1))에 의해 조건부 가능성P(wj|wj-N+1 ... wj-1)을 추정하기 위한 것이며, 여기서, F는 제공된 텍스트 트레이닝 언어 자료내의 인수로서 스트링 발생 수이다. 믿을 수 있는 추정을 위해, F(wj-N+1 ... wj-1wj)는 제공된 언어 자료에서 실질적이어야 한다.
패턴 인식에 있어서, 사전 및 어휘가 인식될 텍스트를 대표하는 단어에 기초하는 것이 양호하다. 이것은 대표적인 텍스트를 분석하고 텍스트로부터 단어를 추출하고, 단어 또는 단어 시퀀스 빈도에 기초하여 언어 모델을 구성함으로써 달성될 수 있다. 본 발명에 따른 세그멘팅은 단어를 연결된 텍스트에서 추출하는데 유리하게 이용될 수 있다. 패턴 인식 시스템의 사전 또는 어휘집을 트레이닝하기 위해서는 세그멘팅이 단어의 단 하나의 출력 시퀀스를 초래하는 것으로도 충분하다. 패턴 인식 시스템에 이용된 경우, 세그멘팅 시스템(100)은 출력 단어 시퀀스 내의 새로운 단어(즉, 어휘집(122) 내에는 아직까지 없는 단어들)를 어휘집(122) 내에 통합하기 위한 갱신 수단(140)도 포함하는 것이 또한 바람직하다. 양호하게, 언어 모델도, 예를 들어 새로운 단어 뿐 아니라 알려진 단어의 가능성 또는 단어 시퀀스를 포함하는 새로운 단어의 가능성 또는 단어 시퀀스를 반영하도록 갱신된다.
본 발명에 따르면, 세그멘팅은 입력 스트링의 분리된 단어를 나타내는 트리 구조를 구성함으로써 수행된다. 사전이 세그멘팅될 텍스트의 모든 단어를 이미 포함하고 있는 경우, 기본적으로 어떠한 새로운 단어도 추가될 필요가 없다. 따라서, 단어 시퀀스는 하나 이상의 새로운 단어를 포함하거나 포함하지 않을 것이다. 세그멘팅이 보다 어렵고 복잡하므로, 새로운 단어가 추가될 필요가 있는 경우, 텍스트가 알려진 단어만을 이용하여 세그멘팅될 수 있는지의 여부를 먼저 결정하는 것이 양호하다. 일반적으로 처리는 도 4에 도시되어 있다. 단계(410)에서, 입력 스트링은 텍스트 언어 자료(420)로부터 검색된다. 상술한 바와 같이, 스트링은 구, 문장 또는 다수의 문장 텍스트를 나타낼 수 있다. 단계(430)에서, 전체 언어 자료가 아직까지 세그멘팅되었는지 여부가 검증된다. 만약 그렇다면(스트링이 비워져 있는), 처리가 단계(440)에서 나간다. 그렇지 않은 경우, 단계(450)에서, 텍스트는 제공된 어휘집(알려진 단어만)을 이용하여 세그멘팅된다. 이것은, 각각의 노드가 알려진 단어를 나타내는 트리 구조를 구성함으로써 양호하게 행해진다. 완전할 수 없는 트리(단어 시퀀스를 나타내는)를 관통하는 경로는 종료된다. 단계(450)는 도 5를 참조하여 이하에서 보다 상세하게 설명할 것이다. 단계(460)에서, 텍스트가 알려진 단어만으로 세그멘팅될 수 있었는지 여부가 검사된다. 이것은 구성된 트리를 관통하는 적어도 하나의 경로가 완료(즉, 경로의 끝 노드에 대응하는 단어가 스트링의 끝 문자(들)와 매칭하고, 스트링의 끝에 배치되는)하는지의 여부를 검증함으로써 검사될 수 있다. 이를 위해서, 트리를 관통하는 경로는, 경로가 전체 스트링에 대응하여 발견될 때까지 선행될 수 있다. 양호하게, 트리의 구성중에 스트링의 끝이 도달되었을 때, 이러한 사실은 예를 들어 "end-of-string-reached" 파라미터로서 저장된다. 이러한 방식으로, 경로가 완료되었는지의 여부를 검증하는 것은 저장된 정보를 체크하는 것을 포함한다. 단계(460)의 테스트는 텍스트가 세그멘팅되었다는 것을 나타내는 경우, 식별된 단어 시퀀스는 단계(470)에서 출력되고, 처리는 단계(410)로 계속된다. 그렇지 않은 경우, 처리는 스트링을 다시 세그멘팅하지만, 새로운 단어가 추가될 수 있는 단계(480)로 계속된다. 단계(480)는 도 6을 참조하여 보다 상세하게 후술할 것이다. 실제로, 알려진 단어로 세그멘팅할 수 있는 단계(460)에서 식별된 스트링은 새로운 단어를 이용하여서도 세그멘팅할 수 있다. 텍스트 독자는 새로운 단어를 포함하는 세그멘테이션을 선호할 수 있다. 즉, 이러한 새로운 단어를 가지는 단어 시퀀스는 알려진 단어를 가지고 있는 식별된 시퀀스보다 가능성 있게 나타난다. 이러한 상황은 거의 발생하지 않을 것이다. 그럼에도 불구하고, 스트링을 가능한 새로운 단어로 항상 세그멘팅하지 않고 이러한 상황을 다루기 위해서는, 단계(460)의 일부분으로서 알려진 단어 시퀀스의 가능성이 선택적으로 결정되고(예를 들어, N-그램 언어 모델을 이용), 가능성이 주어진 임계값 이상인 경우, 텍스트는 알려진 단어로 세그멘팅할 수 있는 것으로서 식별되며, 그렇지 않은 경우, 새로운 단어를 갖는 세그멘테이션들이 시작되는 것이 양호하다.
도 5는 스트링을 알려진 단어만으로 세그멘팅하는 흐름도를 도시한 것이다. 본 발명에 따르면, 트리 구조가 구성된다. 기본적으로, 트리 구조를 구성 및 나타내기 위한 임의의 적절한 기술이 이용될 수 있다. 도 5의 예에 있어서, 트리는 요소들(트리 노드들을 나타내는)(elements)의 리스트를 이용함으로써 나타내어지고, 요소들(포인터)(노드들 사이의 경로를 나타냄) 사이를 링크한다. 이 예에 있어서, 2개의 리스트가 이용된다. 종료 리스트는 입력 스트링의 끝에 정렬되고 매칭하는 단어에 대응하는 요소들을 포함한다. 대기 리스트(wait-list)는 스트링과 매칭하지만, 입력 스트링의 끝에 정렬되지 않는 단어에 대응하는 요소를 포함한다. 각각의 요소가 사전의 기존 단어에 관련된다. 관련은 임의의 적절한 방식으로 수행될 수 있다(예를 들어, 단어를 복사하여 이를 요소의 데이터 구조내에 저장하거나 사전내에 등록하기 위해 기준(포인터 또는 수)을 저장 한다). 더욱이, 각각의 요소는 요소에 관련된 단어에 이어지는 입력 스트링 부분과 관련된다. 특별 요소는 전체 입력 스트링에 관련되지만, 임의의 단어에는 관련되지 않는 루트(root) 요소이다. 루트 요소는 모든 가능한 단어 시퀀스를 합병(unite)하도록 역할한다. 실제로, 별도의 루트 요소를 갖는 것은 불필요하다. 대신에, 입력 스트링의 시작과 매칭하는 사전의 각각의 단어에 대해, 새로운 요소가 생성될 수 있다. 이렇게 생성된 요소는 단어 시퀀스의 제 1 요소로서 역할한다. 단계(510 및 511)는 처리 루프를 초기화하는 것을 포함한다. 단계(510)에서, 루트 요소가 생성되고, 입력 스트링이 루트 요소에 관련된다. 단계(511)에서 루트 요소가 대기 리스트내에 더해진다. 단계(512)에서, 대기 리스트의 요소가 활성 요소로서 선택된다(따라서, 루트 요소가 초기 활성 요소로서 선택된다). 단계(512)에서, 워킹 스트링이 로딩된다. 대기 리스트의 현재 활성 요소에 관련된 스트링은 워킹 스트링으로서 이용된다. 그러므로, 초기에 전체 입력 스트링은, 입력 스트링이 초기에 활성 대기 리스트 요소인 루트 요소와 관련되기 때문에 워킹 스트링으로서 이용된다. 루프에 있어서, 단계(514 및 516)에서, 사전의 모든 단어들은 사전으로부터 연속으로 검색된다. 다음 단어 검색이 단계(514)에서 발생한다. 단계(516)에서, 단어가 검색되는지의(모든 단어가 아직까지 검사되지 않았는지) 여부가 검사된다. 만약 그렇다면, 단계(518)에서, 단어가 워킹 스트링의 시작과 매칭하는지의 여부가 검증된다. 그렇지 않은 경우, 다음 단어가 단계(514)에서 검색된다. 매칭이 발생된 경우, 단계(520)에서, 새로운 요소가 생성된다. 요소는 단어(예를 들어, 단어가 요소에 관련하여 저장된다), 즉 워킹 스트링의 나머지(워킹 스트링의 시작부로부터 매칭된 단어를 제거한 후)에 결합되고, 부모 요소(parent)(즉, 입력 스트링내의 선행 단어에 관련된 요소)에 링크된다. 입력 스트링의 시작과 매칭하는 단어에 있어서, 루트 요소는 시작 단어에 관련된 요소의 부모 요소로서 역할한다. 단계(522)에서, 입력 스트링의 끝이 도달되었는지의 여부(즉, 워킹 스트링의 나머지가 비워져 있는지의 여부)가 검사된다. 만약 그렇다면, 트리를 관통하는 경로는 종료되고, 단어 시퀀스가 발견된다. 이러한 시퀀스가 용이하게 검색될 수 있도록 하기 위해, 요소는 단계(524)에서 종료 리스트내에 저장된다. 하나의 단어 시퀀스만을 식별하기에 충분한 시스템에 있어서(대부분이 필수적이지 않은), 절차는 스트링의 끝이 1회 도달하자마자 나갈 수 있다. 스트링의 끝이 아직까지 검색되지 않은 경우, 요소는 대기 리스트내에 저장된다(단계 526). 스트링의 나머지는 후에 세그멘팅될 것이다. 양자의 경우, 단어는 처리되고(워킹 스트링의 시작과 비교됨), 다음 단어가 단계(514)에서 검색된다. 워킹 스트링에 대해, 사전의 모든 단어가 스트링의 시작과 비교된 경우, 루프는 단계(516)에서 나간다. 대기 리스트의 현재 선택된 요소는 요소가 완전히 처리되기 때문에 대기 리스트에서 제거된다. 순환 루프에서, 아직까지 완전히 처리되지 않은 모든 워킹 스트링이 처리된다. 이러한 스트링의 각각은 대기 리스트내의 요소에 의해 나타내어진다. 그러므로, 단계(530)에서, 대기 리스트가 비워져 있는지의 여부가 검사된다. 비워져 있지 않은 경우, 대기 리스트의 다음 요소가 단계(512)에서 현재 활성 요소로서 선택된다. 대기 리스트가 비워져 있는 경우, 원 입력 스트링(orignal input string)은 완전히 세그멘팅되었다(알려진 단어만으로 가능한 한). 단계(534)에서, 종료 리스트가 임의의 엔트리를 포함하고 있는지 여부가 검사된다. 그렇지 않은 경우, 단계(536)에서, 알려진 단어만으로의 세그멘테이션이 성공하지 못하여 복귀한다. 종료 리스트가 비워져 있지 않은 경우, 종료 리스트상의 각각의 요소들은 단어 시퀀스를 나타낸다. 실제로, 요소는 단어 시퀀스의 최종 단어와 관련되고, 시퀀스의 이전 단어에 링크된다. 이것은 종료 리스트상의 요소로부터 시작하는 링크된 요소를 단계(540)에서 역추적함으로써 단어 시퀀스를 검색할 수 있다. 모든 식별된 단어 시퀀스를 리턴(return)하는 대신에, 선택적으로, 단계(538)에서, 하나 이상의 단어 시퀀스가 선택되고, 단계(542)에서 복귀된다. 양호하게, 선택은 경로의 가능성에 기초한다. 이를 위해서, 유리하게 통계적 N-그램 언어 모델은 가장 가능한 단어 시퀀스를 결정하는데 이용된다. 특히, 세그멘팅이 어휘집 및/또는 패턴 식별 시스템의 언어 모델을 개선하기 위해 발생하는 경우, 기존의 언어 모델이 이용될 수 있다. 양호하게, 바이그램 또는 트리그램 언어 모델은 큰 단어집 패턴 인식 시스템(예를 들어, 10,000 엔트리 이상) 용으로 이용된다.
본 발명에 따르면, 상이한 길이를 가지고 있는 복수의 새로운 단어는 미리 결정된 기준이 충족하는 경우 트리 구조에 추가된다. 실시예에 있어서, 새로운 단어는 대응하는 단어 시퀀스가 전체 입력 스트링과 매칭하지 않은 경로의 하나 이상의 노드들에 추가된다. 도 5에 도시된 방법은 기본 트리 구조를 구성하는데 이용될 수 있다. 예를 들어, 적절한 세그멘팅이 알려진 단어를 이용하여 발견되지 않은 것으로 나타난 이후에, 새로운 단어가 추가될 필요가 있는 노드는 트리를 관통하는 경로에 이어지고, 경로의 끝 노드가 입력 스트링의 끝에 대응(즉, 단어가 매칭하고, 세그멘테이션이 입력 스트링의 끝에 도달하는)하는지를 검증함으로써 간단하게 배치될 수 있다. 도 5의 기술을 이용하여, 2중 링크는 요소들 사이에 유지될 수 있는데, 하나의 링크는 자식 링크를 부모 링크(전과 같이)에 링크하고, 부수적인 링크는 부모 링크를 자식 링크에 링크한다. 이러한 방식으로, 경로는 루트로부터 시작하는 트리를 관통하여 이어질 수 있다. 경로의 끝 노드에 대해, 경로의 끝 노드가 종료 리스트에 있는지의 여부가 검사된다. 그렇지 않은 경우, 새로운 단어가 끝 노드에 추가될 수 있다. 트리를 통해 경로를 추적하는 대신에, 끝 노드에 대응하는 스트링이 비워져 있지 않는(즉, 알려진 단어가 입력 스트링의 나머지 시작과 매칭하는) 경로의 끝 노드를 나타내는 제 3 리스트가 도입된다. 이것은 적어도 하나의 매칭이 발견되었는지의 여부를 단계(528)에서 검증함으로써 달성될 수 있다. 그렇지 않은 경우, 요소가 불완전한 세그멘테이션을 나타내는 제 3 리스트 상에 대기 리스트로부터 더해진다. 일단 노드가 배치되면, 새로운 단어는, 도 6을 참조하여 보다 상세하게 기술된 바와 같이 트리 내에 요소로서 생성되고 나타내어진다. 대기 리스트 상에 요소를 더함으로써, 트리의 나머지 부분은 알려진 단어 세그멘테이션에 대해 도 5에 기재된 것과 동일한 방식으로 생성될 수 있다.
도 6은 입력 스트링을 세그멘팅하기 위한 양호한 방식을 도시한 것이다. 본 발명의 실시예에 있어서, 알려진 단어의 식별 및 새로운 단어의 추가는 일체화된 방식(integrated manner)으로 행해진다. 도 5의 동일 항목에 대응하는 항목은 도 5에 이용된 것과 동일한 참조 번호로 나타낸다. 이러한 항목은 더 이상 상세하게 설명하지 않겠다. 단계(516) 이후의 경우, 모든 단어는 워킹 스트링의 시작에 대해 매칭하고, 단계(610)에서 미리 결정된 기준은 새로운 단어가 추가되는 것이 필요한지의 여부를 결정하는데 이용된다. 새로운 단어가 추가될 필요가 있는 경우, 단계(612)에서 새로운 단어의 길이는 초기화된다(예로서, 1로). 단계(614)에서, 이러한 길이의 단어는 스트링 시작으로부터 상기 수를 복사함으로써 발생된다. 단계(520, 522, 524 및 526)에 기재된 것과 동일한 방식으로, 대응하는 요소는 단계(616)에서 생성되고, 단어, 부모 노드 및 스트링의 나머지에 관련된다. 요소는 스트링의 종료가 도달되는지의 여부에 의존하여 대기 리스트(단계 622) 또는 종료 리스트(단계 620) 내에 더해진다. 단계(624)에서, 최대 길이(K)까지의 모든 양호한 새로운 단어가 생성되는지의 여부가 검사되는데, 여기서 K는 적어도 2이다. 그렇지 않은 경우, 단계(626)에서, 길이는 증가되고, 단계(614)에서 새로운 단어가 생성된다. 모든 새로운 단어가 생성되는 경우, 도 5에서와 같이 처리는 단계(528)로 계속된다. 아시아 언어에 있어서, K는 3과 6 사이에서 양호하게 선택된다. 이것이 성공적인 세그멘테이션을 발생시키지 못하는 경우, K가 유리하게 증가된다.
본 발명에 따른 실시예에 있어서, 단계(610)에서 테스트되는 기준은 다수의 단어가 워킹 스트링의 시작과 어떻게 매칭하는지에 관한 것이다. 이것은 단계(512 또는 513) 부분으로서 리셋되는 단계(520)에서 카운터를 증가시킴으로써 실시될 수 있다. 매칭 단어의 수가 임계값 이하일 경우, 새로운 단어가 추가된다. 얼마나 많은 새로운 단어가 추가되는지는 발견된 매칭 단어의 수에 의존할 수 있는데, 양호하게 보다 새로운 단어는, 매칭이 발견되는 경우 추가된다. 극단적으로, 기존 사전의 단일 단어가 이러한 노드에 관련된 워킹 스트링의 시작에 매칭하지 않는 경우 트리의 노드에 부착되는 새로운 단어를 발생시키는 임계값이 1일 수 있다는 것을 알 수 있다.
대안적인 실시예에 있어서, 기준은 경로 내의 새로운 단어의 수에 기초한다. 이것은 새로운 단어가 경로 내에 더해질 때 마다 카운터를 증가시키고, 카운터를 경로의 마지막 요소에 관련시킴으로써 구현될 수 있다. 양호하게, 경로가 경로 내의 2개 또는 3개의 새로운 단어를 이미 포함하는 경우 새로운 단어는 경로에 추가되지 않는다. 그러나, 이러한 방식으로, 어떠한 성공적인 세그멘테이션이 달성되지 않은 경우, 경로 내의 허용가능한 새로운 단어의 수가 증가될 수 있다.
대안적인 실시예에 있어서, 기준은 단어 시퀀스(트리를 관통하는 대응하는 경로)의 가능성에 기초한다. 양호하게, 각각의 단어 시퀀스의 가능성은 대응 경로가 생성됨으로써 계산된다. 누산된 스코어는 경로의 마지막 요소와 관련하여 저장된다. 단계(610)의 테스트 부분으로서, 가능성이 임계값 이하인 경우, 경로는 더 이상 확장되지 않고, 어떠한 새로운 단어도 이러한 경로 더 이상 추가하지 않는다. 유리하게, 가능한 임계값은 상태 랭킹(ranking)을 보장하도록 동적으로 설정된다. 하나 이상의 시퀀스가 이미 식별된 경우(계산된 가능성으로), 다른 시퀀스는 시퀀스가 최고 또는 최소 가능성을 가지고 있는 한 처리된다. 양호하게, 새로운 단어는 상대적으로 낮은 임계값을 제공하고, 가능성은 새로운 단어의 길이에 의존하여 변한다. 이러한 방식으로, 단어 시퀀스의 가능성은 새로운 단어의 수를 시퀀스에서 감소시킨다. 임의의 적절한 가능한 계산이 이용될 수 있다. 새로운 단어에 대한 다음 가능한 스코어는;
Unknown_word_score=penalty + weight *[min_unigram*char_no*unigram_weight+Length_prob*length_weight]가 양호한데 여기서,
- penalty는 각각의 새로운 단어에 대한 고정된 패널티값이다.
- weight은 새로운 단어 스코어에 대한 총체적 가중 인자이다.
- min_unigram은 모든 알려진 단어의 최소 발생 빈도(유니그램 모델)이다.
- char_no는 새로운 단어의 문자의 수이다.
- unigram_weight은 유니그램 스코어에 대한 국부 가중 인자이다.
- length_prob는 이러한 길이의 단어의 가능성(길이 분배 가능성)이다.
- length_weigth는 길이 가능성에 대한 국부 가중 인자이다.
패널티 및 가중 파라미터는 새로운 단어가 알려진 단어 보다 낮은 스코어를 얻도록 보장한다.
본 발명에 따른 또 다른 실시예에 있어서, 단계(610)에서, 어떠한 단어도 워킹 스트링의 시작과 매칭하지 않는다고 결정된 경우, 이것은 앞선 지점에서, 잘못된 세그멘테이션이 발생되었을 수 있다는 것을 나타낸다. 예를 들어, 매칭하는 알려진 단어가 존재하는 반면에, 실제로는 문자들이 새로운 단어 부분이 된다. 이러한 목적을 달성하기 위해서, 트리는, 양호하게 단 하나의 단계에서 역추적되고, 하나 이상의 단어는 역추적중에 배치되는 노드에 추가된다. 명백하게, 어떠한 새로운 단어도 이러한 단어가 이미 추가된 경우 추가되지 않는다. 어떠한 새로운 단어도 상기 위치에서 몇 가지 매칭하는 알려진 단어가 이미 발견된 경우도 추가될 필요가 없다. 후자의 경우, 이러한 단어들 중 적어도 하나의 단어가 성공적인 시퀀스로 유도할 수 있다고 가정한다.

Claims (13)

  1. 연결된 텍스트를 단어들로 세그멘팅하는 방법으로서,
    - 상기 연결된 텍스트를 나타내는 입력 스트링을 판독하는 단계;
    - 상기 입력 스트링을 사전 내의 단어들과 비교함으로써 상기 입력 스트링 내의 분리된 단어들의 적어도 하나의 시퀀스를 식별하는 단계; 및
    - 상기 식별된 단어 시퀀스들 중 적어도 하나를 출력하는 단계를 포함하는 상기 세그멘팅 방법에 있어서,
    적어도 하나의 단어 시퀀스를 식별하는 상기 단계는,
    상기 입력 스트링을 워킹 스트링(working string)으로서 취함으로써 반복적인 방식으로 상기 입력 스트링 내에 단어 시퀀스(들)을 나타내는 트리 구조를 구성(build)하는 단계로서,
    사전의 각각의 단어에 대해;
    상기 단어를 상기 워킹 스트링의 선두(beginning)와 비교하고,
    상기 단어가 상기 워킹 스트링의 선두와 매칭하는 경우,
    상기 단어를 나타내는 트리 내의 노드를 형성하고,
    상기 단어의 끝 위치에 바로 인접한 위치에서 시작하는 상기 입력 스트링의 부분을 상기 노드와 관련시키고,
    상기 관련된 부분을 상기 워킹 스트링으로서 이용함으로써 상기 노드와 관련된 상기 입력 스트링의 부분 내에 단어 시퀀스(들)을 나타내는, 상기 노드에 링크된 서브 트리를 형성하는, 상기 트리 구조를 구성하는 단계;
    상기 트리 구조를 관통하는 적어도 하나의 경로가 상기 입력 스트링 전체와 매칭하는 단어 시퀀스를 나타내는지를 체크하는 단계; 및
    만약 그렇다면, 발견된 경로에 의해 나타내어지는 단어 시퀀스를 식별된 단어 시퀀스로서 사용하는 단계를 포함하는 것을 특징으로 하는, 세그멘팅 방법.
  2. 제 1 항에 있어서,
    상기 방법은, 새로운 단어가 상기 트리 구조에 추가되었는지 여부를 결정하는 미리 결정된 기준에 의존하여,
    새로운 단어들이 추가되는 경우,
    관련된 단어가 새로운 단어에 앞서는, 상기 트리 내에 적어도 하나의 노드를 선택하는 단계;
    복수의 새로운 단어를 형성하는 단계로서, 새로운 단어들 각각은 상기 선택된 노드에 관련된 상기 입력 스트링의 선두와 매칭하고, 상이한 수의 문자들로 구성되는, 상기 새로운 단어를 형성하는 단계; 및
    각각의 형성된 새로운 단어에 대해, 선택된 노드에 링크된 각각의 서브 트리를 형성하는 단계로서, 각각의 서브 트리는 상기 선택된 노드와 관련된 상기 입력 스트링 부분 내의 상기 각각의 새로운 단어로 시작하는 단어 시퀀스(들)을 나타내는, 상기 서브 트리를 형성하는 단계를 더 포함하는, 세그멘팅 방법.
  3. 제 2 항에 있어서,
    상기 방법은, 상기 트리 구조를 관통하는 적어도 하나의 경로가 상기 입력 스트링 전체와 매칭하는 단어 시퀀스를 나타내는지 여부를 체크하는 단계로서, 상기 단어 시퀀스는 상기 사전의 단어만을 포함하는, 상기 체크하는 단계; 및
    상기 결과가 부정인 경우 새로운 단어들을 추가하기 위해 상기 미리 결정된 기준을 이용하는 단계를 더 포함하는, 세그멘팅 방법.
  4. 제 3 항에 있어서,
    관련된 단어가 새로운 단어에 앞서는, 트리 내의 적어도 하나의 노드를 선택하는 상기 단계는 상기 입력 스트링 전체와 매칭하는 것은 아닌 단어 시퀀스를 나타내는 트리를 관통하는 적어도 하나의 경로를 식별하고, 상기 식별된 경로의 끝 노드를 선택된 노드로서 이용하는 단계를 포함하는, 세그멘팅 방법.
  5. 제 2 항에 있어서,
    상기 방법은, 각각의 워킹 스트링에 대해,
    상기 사전의 다수의 단어가 상기 워킹 스트링의 선두와 얼마나 매칭하는지를 결정하는 단계;
    상기 워킹 스트링의 선두와 매칭하는 상기 사전의 단어들의 수가 미리 결정된 임계값보다 낮은 새로운 단어를 추가하기 위해 상기 미리 결정된 기준을 이용하는 단계; 및
    관련된 단어가 새로운 단어에 앞서는 상기 트리내의 노드로서 상기 워킹 스트링과 관련된 노드를 선택하는 단계를 포함하는, 세그멘팅 방법.
  6. 제 5 항에 있어서,
    상기 임계값이 1 인, 세그멘팅 방법.
  7. 제 2 항에 있어서,
    상기 방법은, 트리 구조를 구성하는 중에 각각의 단어 시퀀스에 대해 상기 시퀀스내의 새로운 단어들의 수를 카운트하고, 새로운 단어의 상기 카운트된 수가 미리 결정된 임계값을 초과하는 경우 상기 단어 시퀀스를 나타내는 경로를 따라 상기 트리 구조를 확장하는 것을 종료하는 단계를 더 포함하는, 세그멘팅 방법.
  8. 제 2 항에 있어서,
    상기 방법은, 상기 트리 구조를 구성하는 중에 각각의 단어 시퀀스에 대한 가능성(likelihood)을 계산하고, 상기 대응하는 단어 시퀀스의 상기 가능성이 미리 결정된 임계값 보다 낮은 경우 상기 단어 시퀀스를 나타내는 경로를 따라 상기 트리 구조를 확장하는 것을 종료하는 단계를 더 포함하는, 세그멘팅 방법.
  9. 제 8 항에 있어서,
    상기 단어 시퀀스의 가능성은 상기 단어 시퀀스에서 새로운 단어의 수의 함수로서 감소시키는, 세그멘팅 방법.
  10. 제 2 항에 있어서,
    새로운 단어를 형성하는 상기 단계는 K 단어들(K>1)까지 형성하는 단계를 포함하며, 각각의 단어는 상기 워킹 스트링의 선두 문자로 각각 시작하고, 워킹 스트링의 상기 선두 문자들의 1 내지 K를 각각 포함하는 것을 특징으로 하는, 세그멘팅 방법.
  11. 제 1 항에 있어서,
    상기 트리에 의해 나타내어진 상기 단어 시퀀스 중 적어도 하나를 출력하는 상기 단계는, 상기 트리를 관통하는 상기 경로들 중 하나를 선택하는 단계를 포함하고, 경로들은 상기 경로의 끝 노드에 의해 나타내어진 단어가 상기 입력 스트링의 끝과 매칭하는지를 고려하는 것을 특징으로 하는, 세그멘팅 방법.
  12. 삭제
  13. 연결된 텍스트를 단어들로 세그멘팅하는 시스템으로서,
    - 상기 연결된 텍스트를 나타내는 입력 스트링을 판독하는 수단;
    - 상기 입력 스트링을 사전 내의 단어들과 비교함으로써 상기 입력 스트링 내의 분리된 단어들의 적어도 하나의 시퀀스를 식별하는 수단; 및
    - 상기 식별된 단어 시퀀스들 중 적어도 하나를 출력하는 수단을 포함하는, 상기 세그멘팅 시스템에 있어서,
    적어도 하나의 단어 시퀀스를 식별하는 상기 수단은,
    상기 입력 스트링을 워킹 스트링으로서 취함으로써 반복적인 방식으로 상기 입력 스트링 내에 단어 시퀀스(들)을 나타내는 트리 구조를 구성(build)하고, 사전의 각각의 단어에 대해;
    상기 단어를 상기 워킹 스트링의 선두와 비교하고,
    상기 단어가 상기 워킹 스트링의 선두와 매칭하는 경우,
    상기 단어를 나타내는 트리 내의 노드를 형성하고,
    상기 단어의 끝 위치에 바로 인접한 위치에서 시작하는 상기 입력 스트링의 부분을 상기 노드와 관련시키고,
    상기 관련된 부분을 상기 워킹 스트링으로서 이용함으로써 상기 노드와 관련된 상기 입력 스트링 부분 내에 단어 시퀀스를 나타내는, 상기 노드에 링크된 서브 트리를 형성하며;
    상기 트리 구조를 관통하는 적어도 하나의 경로가 상기 입력 스트링 전체와 매칭하는 단어 시퀀스를 나타내는지를 체크하고;
    만약 그렇다면, 발견된 경로에 의해 나타내어지는 단어 시퀀스를 식별된 단어 시퀀스로서 사용하도록 동작하는 것을 특징으로 하는, 세그멘팅 시스템.
KR1020007008357A 1998-11-30 1999-11-18 텍스트의 자동 세그멘테이션 방법 및 시스템 KR100749289B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP98204038.8 1998-11-30
EP98204038 1998-11-30

Publications (2)

Publication Number Publication Date
KR20010040499A KR20010040499A (ko) 2001-05-15
KR100749289B1 true KR100749289B1 (ko) 2007-08-14

Family

ID=8234407

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007008357A KR100749289B1 (ko) 1998-11-30 1999-11-18 텍스트의 자동 세그멘테이션 방법 및 시스템

Country Status (7)

Country Link
US (1) US6374210B1 (ko)
JP (1) JP4302326B2 (ko)
KR (1) KR100749289B1 (ko)
CN (1) CN1143232C (ko)
BE (1) BE1012417A3 (ko)
TW (1) TW448381B (ko)
WO (1) WO2000033211A2 (ko)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6694055B2 (en) 1998-07-15 2004-02-17 Microsoft Corporation Proper name identification in chinese
US6904402B1 (en) * 1999-11-05 2005-06-07 Microsoft Corporation System and iterative method for lexicon, segmentation and language model joint optimization
US7403888B1 (en) * 1999-11-05 2008-07-22 Microsoft Corporation Language input user interface
US6848080B1 (en) 1999-11-05 2005-01-25 Microsoft Corporation Language input architecture for converting one text form to another text form with tolerance to spelling, typographical, and conversion errors
US7165019B1 (en) 1999-11-05 2007-01-16 Microsoft Corporation Language input architecture for converting one text form to another text form with modeless entry
US6678409B1 (en) * 2000-01-14 2004-01-13 Microsoft Corporation Parameterized word segmentation of unsegmented text
JP4632384B2 (ja) * 2000-03-31 2011-02-16 キヤノン株式会社 音声情報処理装置及びその方法と記憶媒体
US7047493B1 (en) 2000-03-31 2006-05-16 Brill Eric D Spell checker with arbitrary length string-to-string transformations to improve noisy channel spelling correction
JP2002032770A (ja) * 2000-06-23 2002-01-31 Internatl Business Mach Corp <Ibm> 文書処理方法、文書処理システムおよび媒体
JP4105841B2 (ja) * 2000-07-11 2008-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声認識方法、音声認識装置、コンピュータ・システムおよび記憶媒体
US7092871B2 (en) * 2000-07-20 2006-08-15 Microsoft Corporation Tokenizer for a natural language processing system
US7092870B1 (en) * 2000-09-15 2006-08-15 International Business Machines Corporation System and method for managing a textual archive using semantic units
US6934683B2 (en) * 2001-01-31 2005-08-23 Microsoft Corporation Disambiguation language model
DE10200704A1 (de) * 2001-08-24 2003-03-20 Jong Won Park Elektronisches Wörterbuchsystem mit Baumstruktur und dessen Ausgabe
JP4215418B2 (ja) * 2001-08-24 2009-01-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 単語予測方法、音声認識方法、その方法を用いた音声認識装置及びプログラム
US7136803B2 (en) 2001-09-25 2006-11-14 Apple Computer, Inc. Japanese virtual dictionary
US7613601B2 (en) * 2001-12-26 2009-11-03 National Institute Of Information And Communications Technology Method for predicting negative example, system for detecting incorrect wording using negative example prediction
AU2002320280A1 (en) * 2002-07-03 2004-01-23 Iotapi., Com, Inc. Text-machine code, system and method
US7003516B2 (en) * 2002-07-03 2006-02-21 Word Data Corp. Text representation and method
US7024408B2 (en) 2002-07-03 2006-04-04 Word Data Corp. Text-classification code, system and method
US7181451B2 (en) * 2002-07-03 2007-02-20 Word Data Corp. Processing input text to generate the selectivity value of a word or word group in a library of texts in a field is related to the frequency of occurrence of that word or word group in library
US7016895B2 (en) 2002-07-05 2006-03-21 Word Data Corp. Text-classification system and method
US20040006547A1 (en) * 2002-07-03 2004-01-08 Dehlinger Peter J. Text-processing database
US7386442B2 (en) * 2002-07-03 2008-06-10 Word Data Corp. Code, system and method for representing a natural-language text in a form suitable for text manipulation
US20040006459A1 (en) * 2002-07-05 2004-01-08 Dehlinger Peter J. Text-searching system and method
US20040054520A1 (en) * 2002-07-05 2004-03-18 Dehlinger Peter J. Text-searching code, system and method
US7493253B1 (en) * 2002-07-12 2009-02-17 Language And Computing, Inc. Conceptual world representation natural language understanding system and method
US7092567B2 (en) * 2002-11-04 2006-08-15 Matsushita Electric Industrial Co., Ltd. Post-processing system and method for correcting machine recognized text
US6823493B2 (en) * 2003-01-23 2004-11-23 Aurilab, Llc Word recognition consistency check and error correction system and method
US7493251B2 (en) * 2003-05-30 2009-02-17 Microsoft Corporation Using source-channel models for word segmentation
US7890852B2 (en) 2003-06-26 2011-02-15 International Business Machines Corporation Rich text handling for a web application
US20050060150A1 (en) * 2003-09-15 2005-03-17 Microsoft Corporation Unsupervised training for overlapping ambiguity resolution in word segmentation
US20060101018A1 (en) * 2004-11-08 2006-05-11 Mazzagatti Jane C Method for processing new sequences being recorded into an interlocking trees datastore
US20070162272A1 (en) * 2004-01-16 2007-07-12 Nec Corporation Text-processing method, program, program recording medium, and device thereof
US7424421B2 (en) * 2004-03-03 2008-09-09 Microsoft Corporation Word collection method and system for use in word-breaking
US7783476B2 (en) * 2004-05-05 2010-08-24 Microsoft Corporation Word extraction method and system for use in word-breaking using statistical information
JP4301102B2 (ja) * 2004-07-22 2009-07-22 ソニー株式会社 音声処理装置および音声処理方法、プログラム、並びに記録媒体
US20060047656A1 (en) * 2004-09-01 2006-03-02 Dehlinger Peter J Code, system, and method for retrieving text material from a library of documents
US7539611B1 (en) * 2004-11-19 2009-05-26 Wyckoff Richard O Method of identifying and highlighting text
CN100530171C (zh) * 2005-01-31 2009-08-19 日电(中国)有限公司 字典学习方法和字典学习装置
US9471566B1 (en) * 2005-04-14 2016-10-18 Oracle America, Inc. Method and apparatus for converting phonetic language input to written language output
US7584093B2 (en) * 2005-04-25 2009-09-01 Microsoft Corporation Method and system for generating spelling suggestions
US8170289B1 (en) * 2005-09-21 2012-05-01 Google Inc. Hierarchical alignment of character sequences representing text of same source
US9009046B1 (en) * 2005-09-27 2015-04-14 At&T Intellectual Property Ii, L.P. System and method for disambiguating multiple intents in a natural language dialog system
US20070078644A1 (en) * 2005-09-30 2007-04-05 Microsoft Corporation Detecting segmentation errors in an annotated corpus
US20070083357A1 (en) * 2005-10-03 2007-04-12 Moore Robert C Weighted linear model
US7957953B2 (en) 2005-10-03 2011-06-07 Microsoft Corporation Weighted linear bilingual word alignment model
US8321220B1 (en) * 2005-11-30 2012-11-27 At&T Intellectual Property Ii, L.P. System and method of semi-supervised learning for spoken language understanding using semantic role labeling
MX2008010554A (es) 2006-02-17 2008-10-29 Lumex As Metodo y sistema para la verificacion de palabras reconocidas de manera incierta en un sistema ocr.
US7831911B2 (en) 2006-03-08 2010-11-09 Microsoft Corporation Spell checking system including a phonetic speller
US9772981B2 (en) * 2006-03-29 2017-09-26 EMC IP Holding Company LLC Combined content indexing and data reduction
CN101075230B (zh) * 2006-05-18 2011-11-16 中国科学院自动化研究所 一种基于语块的中文机构名翻译方法及装置
US20080065370A1 (en) * 2006-09-11 2008-03-13 Takashi Kimoto Support apparatus for object-oriented analysis and design
US8428932B2 (en) * 2006-12-13 2013-04-23 Nathan S. Ross Connected text data stream comprising coordinate logic to identify and validate segmented words in the connected text
JP4446313B2 (ja) * 2006-12-15 2010-04-07 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声処理用の辞書に登録するべき新規語句を検索する技術
US8631005B2 (en) * 2006-12-28 2014-01-14 Ebay Inc. Header-token driven automatic text segmentation
KR20100029221A (ko) * 2007-06-01 2010-03-16 구글 인코포레이티드 명칭 엔터티와 신규 단어를 검출하는 것
CN101114282B (zh) * 2007-07-12 2010-05-26 华为技术有限公司 一种分词处理方法及设备
US8014604B2 (en) * 2008-04-16 2011-09-06 International Business Machines Corporation OCR of books by word recognition
US8666729B1 (en) * 2010-02-10 2014-03-04 West Corporation Processing natural language grammar
US8738360B2 (en) 2008-06-06 2014-05-27 Apple Inc. Data detection of a character sequence having multiple possible data types
US8311806B2 (en) * 2008-06-06 2012-11-13 Apple Inc. Data detection in a sequence of tokens using decision tree reductions
EP2144189A3 (en) 2008-07-10 2014-03-05 Samsung Electronics Co., Ltd. Method for recognizing and translating characters in camera-based image
KR101588890B1 (ko) * 2008-07-10 2016-01-27 삼성전자주식회사 카메라 기반 영상의 문자 인식 및 번역 방법
US8301437B2 (en) 2008-07-24 2012-10-30 Yahoo! Inc. Tokenization platform
CN101676898B (zh) * 2008-09-17 2011-12-07 中国科学院自动化研究所 一种借助网络知识辅助的汉英机构名翻译方法及装置
US20140372119A1 (en) * 2008-09-26 2014-12-18 Google, Inc. Compounded Text Segmentation
US8296125B2 (en) * 2008-10-17 2012-10-23 International Business Machines Corporation Translating source locale input string to target locale output string
CN101430680B (zh) 2008-12-31 2011-01-19 阿里巴巴集团控股有限公司 一种无词边界标记语言文本的分词序列选择方法及系统
US8527270B2 (en) 2010-07-30 2013-09-03 Sri International Method and apparatus for conducting an interactive dialogue
US9576570B2 (en) * 2010-07-30 2017-02-21 Sri International Method and apparatus for adding new vocabulary to interactive translation and dialogue systems
US8977538B2 (en) 2010-09-13 2015-03-10 Richard Salisbury Constructing and analyzing a word graph
CN102819524B (zh) * 2011-09-08 2015-06-03 金蝶软件(中国)有限公司 基于关键字的字符序列分割方法及装置
US8843845B2 (en) 2012-10-16 2014-09-23 Google Inc. Multi-gesture text input prediction
US8850350B2 (en) 2012-10-16 2014-09-30 Google Inc. Partial gesture text entry
US8819574B2 (en) * 2012-10-22 2014-08-26 Google Inc. Space prediction for text input
CN103870442A (zh) * 2012-12-17 2014-06-18 鸿富锦精密工业(深圳)有限公司 中文简繁体转换系统及方法
US8832589B2 (en) 2013-01-15 2014-09-09 Google Inc. Touch keyboard using language and spatial models
CN104076940A (zh) * 2013-03-27 2014-10-01 北京千橡网景科技发展有限公司 一种辅助输入方法和设备
US9779722B2 (en) * 2013-11-05 2017-10-03 GM Global Technology Operations LLC System for adapting speech recognition vocabulary
US10216783B2 (en) * 2014-10-02 2019-02-26 Microsoft Technology Licensing, Llc Segmenting data with included separators
KR102167719B1 (ko) * 2014-12-08 2020-10-19 삼성전자주식회사 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치
JP6631930B2 (ja) * 2017-02-07 2020-01-15 パナソニックIpマネジメント株式会社 翻訳装置および翻訳方法
CN107451127B (zh) * 2017-07-04 2020-11-06 广东小天才科技有限公司 一种基于图像的单词翻译方法及系统、移动设备
US10866928B2 (en) * 2018-09-10 2020-12-15 Netapp, Inc. Methods for optimized variable-size deduplication using two stage content-defined chunking and devices thereof
CN110020422B (zh) * 2018-11-26 2020-08-04 阿里巴巴集团控股有限公司 特征词的确定方法、装置和服务器
US10943143B2 (en) * 2018-12-28 2021-03-09 Paypal, Inc. Algorithm for scoring partial matches between words
CN110069624B (zh) * 2019-04-28 2021-05-04 北京小米智能科技有限公司 文本处理方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268840A (en) * 1992-04-30 1993-12-07 Industrial Technology Research Institute Method and system for morphologizing text

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5448474A (en) 1993-03-03 1995-09-05 International Business Machines Corporation Method for isolation of Chinese words from connected Chinese text
JP2583386B2 (ja) * 1993-03-29 1997-02-19 日本電気株式会社 キーワード自動抽出装置
US5806021A (en) * 1995-10-30 1998-09-08 International Business Machines Corporation Automatic segmentation of continuous text using statistical approaches
US5963893A (en) * 1996-06-28 1999-10-05 Microsoft Corporation Identification of words in Japanese text by a computer system
JP2001505330A (ja) * 1996-08-22 2001-04-17 ルノー・アンド・オスピー・スピーチ・プロダクツ・ナームローゼ・ベンノートシャープ テキストストリーム中の単語の切れ目を与える方法及び装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268840A (en) * 1992-04-30 1993-12-07 Industrial Technology Research Institute Method and system for morphologizing text

Also Published As

Publication number Publication date
KR20010040499A (ko) 2001-05-15
JP2002531892A (ja) 2002-09-24
WO2000033211A3 (en) 2000-09-08
BE1012417A3 (nl) 2000-10-03
WO2000033211A2 (en) 2000-06-08
CN1328672A (zh) 2001-12-26
CN1143232C (zh) 2004-03-24
US6374210B1 (en) 2002-04-16
TW448381B (en) 2001-08-01
JP4302326B2 (ja) 2009-07-22

Similar Documents

Publication Publication Date Title
KR100749289B1 (ko) 텍스트의 자동 세그멘테이션 방법 및 시스템
US10552533B2 (en) Phrase-based dialogue modeling with particular application to creating recognition grammars for voice-controlled user interfaces
Ward et al. Recent improvements in the CMU spoken language understanding system
US7937262B2 (en) Method, apparatus, and computer program product for machine translation
US6983239B1 (en) Method and apparatus for embedding grammars in a natural language understanding (NLU) statistical parser
EP0830668B1 (en) Systems and methods for word recognition
US6823307B1 (en) Language model based on the speech recognition history
EP0950240B1 (en) Selection of superwords based on criteria relevant to both speech recognition and understanding
WO2007097176A1 (ja) 音声認識辞書作成支援システム、音声認識辞書作成支援方法及び音声認識辞書作成支援用プログラム
Hakkinen et al. N-gram and decision tree based language identification for written words
EP2315134A1 (en) Search device, search index creating device, and search system
Bazzi et al. Learning units for domain-independent out-of-vocabulary word modelling.
EP0425291A2 (en) Word recognition process and apparatus
KR20040018008A (ko) 품사 태깅 장치 및 태깅 방법
EP0469485B1 (en) Language processing system using an expanded LR parser
KR100908444B1 (ko) 음소 인식 기반의 탐색공간 제한을 이용한 연속음성인식장치 및 방법
US20060206301A1 (en) Determining the reading of a kanji word
Jardino et al. A first evaluation campaign for language models
JPH01114976A (ja) 文書処理装置の辞書構造
Hatazaki et al. A linguistic processor for Japanese continuous speech recognition
Marek Phonological changes between Old and Middle English (an algorithmic approach)
JPH0546612A (ja) 文章誤り検出装置
JPH11175522A (ja) 自然言語処理方法及び装置

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: 20120727

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130723

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140722

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160727

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170726

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee