KR100883577B1 - 로우메모리 결정트리 - Google Patents

로우메모리 결정트리 Download PDF

Info

Publication number
KR100883577B1
KR100883577B1 KR1020077019768A KR20077019768A KR100883577B1 KR 100883577 B1 KR100883577 B1 KR 100883577B1 KR 1020077019768 A KR1020077019768 A KR 1020077019768A KR 20077019768 A KR20077019768 A KR 20077019768A KR 100883577 B1 KR100883577 B1 KR 100883577B1
Authority
KR
South Korea
Prior art keywords
decision tree
tree
data
nodes
phoneme
Prior art date
Application number
KR1020077019768A
Other languages
English (en)
Other versions
KR20070094984A (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 KR20070094984A publication Critical patent/KR20070094984A/ko
Application granted granted Critical
Publication of KR100883577B1 publication Critical patent/KR100883577B1/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
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Executing Machine-Instructions (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

본 발명은 로우메모리 트리형 데이터구조의 관리에 관한 것이다. 본 발명에 따른 방법은 부모노드와 적어도 하나의 잎노드로 구성된 결정트리를 만드는 단계들, 및 상기 노드들로부터 데이터를 검색하는 단계를 포함한다. 결정트리의 노드들은 노드들이 저장순서에서 부모노드를 뒤따르고 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드와의 링크 없이 도달될 수 있는 방식으로 순차 저장된다. 이 방법은 음성인식시스템들에서 텍스트 대 음소 매핑으로 이용되기에 바람직할 수 있다.
데이터구조, 메모리, 결정트리, 문맥, 노드, 저장순서, 링크

Description

로우메모리 결정트리{Low memory decision tree}
본 발명은 트리형 데이터구조를 관리하기 위한 첨부의 독립청구항 1의 전제부에 따른 방법에 관한 것이다. 본 발명은 또한 전술한 방법을 구현하기 위한 첨부의 독립청구항 13의 전제부에 따른 시스템에 관한 것이다. 또한, 본 발명은 첨부의 독립청구항 23의 전제부에 따른 장치에 관한 것이다. 본 발명은 또한 첨부의 독립청구항 28의 전제부에 따른 트리형 데이터구조뿐 아니라 전술한 트리형 데이터구조를 이용하기 위한 첨부의 독립청구항 32의 전제부에 따른 컴퓨터 프로그램생성물에도 관한 것이다.
다중언어양상들은 자동 음성인식시스템들에서 점점 더 중요해지고 있다. 이 종류의 음성인식시스템은 음성인식엔진을 포함하며 이 엔진은 예를 들면 자동 언어식별, 온라인 발음모델링(텍스트 대 음소) 및 다중언어 음향(acoustic)모델링을 위한 유닛들을 포함한다. 음성인식엔진의 동작은 어휘항목들이 텍스트형태로 주어진다는 가정 하에 작동한다. 먼저, 언어식별모듈이 어휘항목의 기록된 표현에 기초하여 언어를 식별한다. 일단 이것이 결정되면, 적당한 온라인 텍스트 대 음소 모델링체계가 적용되어 어휘항목에 관련된 음소시퀀스가 얻어진다. 음소는 다른 단어의 발음으로부터 단어의 발음을 구별 짓는 최소 항목이다. 임의의 언어에서 임의의 어휘항목은 사람의 음성생성(speech production)시스템에서의 변경들에 대응하는 음소들의 집합으로서 표현될 수 있다.
다중언어 음향모델들은 각 어휘항목에 대해 인식모델을 구성하기 위해 연접된다. 이러한 기본모델들을 이용하면 인식기는 원리적으로는 사용자로부터 어떠한 도움 없이 다중언어 어휘항목들을 자동으로 대처해 나갈 수 있다. 텍스트 대 음소(text-to-phoneme)는 자동 음성인식에서 뿐 아니라 텍스트 대 음성에서도 어휘항목들에 대해 정확한 음소시퀀스들을 제공하는 중심 역할을 한다. 통상 신경망 또는 결정트리(decision tree) 접근법들이 텍스트 대 음소 매핑으로서 이용된다. 언어 독립적 및 화자 독립적 음성인식을 위한 해법들에서, 결정트리 기반 접근법은 가정 정확한 음소시퀀스들을 제공하고 있다. 트리구조를 정렬하기 위한 방법의 일 예가 나타나있는 것은 미국등록특허 제6,411,957호이다.
결정트리 접근법에서, 언어의 자모의 각 글자의 발음은 별개로 모델화되고 개별 결정트리는 각 글자에 대해 훈련된다. 단어의 발음이 찾아진 경우, 그 단어는 한번에 하나의 글자씩 처리되고, 현재 글자의 발음은 현재 글자의 결정트리 텍스트 대 음소 모델에 기초하여 찾아진다.
결정트리의 예는 도 1에 보인다. 결정트리는 노드들로 구성되고 노드들은 내부노드들(I)이나 잎들(L)이 될 수 있다. 가지에는 노드들이 모여 있고 이 노드들은 근(R)에서부터 잎(L)까지 서로 연결된다. 노드는 부모노드나 아이노드가 될 수 있다. 부모노드는 결정트리를 더 가로지를 수 있게 하는 노드이다. 달리 말하면, 부 모노드는 아이노드를 가진다. 결정트리에서 아이노드는 부모노드에서부터 도달될 수 있는 노드이다. 내부노드(I)는 부모노드와 아이노드가 될 수 있지만, 잎은 아이노드만 될 수 있다. 결정트리의 모든 노드는 정보를 저장한다. 저장된 정보는 결정트리의 문맥에 의존하여 변한다.
음성인식시스템들에서 내부노드들(I)은 인식되는 단어 및 그 단어의 발음에 관한 정보를 통상 가진다. 단어의 글자들의 발음들은 어떤 문맥들에서는 음소들(p)에 의해 지정될 수 있다. 문맥(context)은 예를 들면 관심 있는 글자의 우측 및 좌측 단어의 글자들을 말한다. 이 유형의 문맥정보는 결정트리를 타고 올라갈 때 문맥이 고려되는 속성(ai)(속성유형이라고도 불림)에 의해 지정될 수 있다. 결정트리를 타고 올라가는 것은 속성값의 도움으로 구현될 수 있고, 이 속성값은 검색알고리즘이 주어진 글자의 주어진 문맥정보를 처리하는 가지를 정의한다.
트리구조는 근(root) 노드(R)로부터 시작하여 올라가진다. 각 노드에서 속성유형(ai)이 검사될 것이고 해당 정보는 현재 글자의 문맥을 결정하기 위해 취해질 것이다. 이 정보에 의해, 문맥정보에 부합하는 가지는 트리의 다음 노드로 이동될 수 있다. 잎노드(L)가 발견되거나 트리에서 현재 문맥에 부합하는 속성값이 없을 때까지 트리를 타고 올라갈 수 있다.
결정트리 기반 텍스트 대 음소 매핑의 단순화된 예가 도 2에 도시되어 있다. 이 도면의 결정트리는 글자 'a'를 위한 것이고 그 노드들은 글자 'a'의 음소들을 나타낸다. 이 도식은 단순화된 것이고 글자 'a'의 모든 음소들을 포함하지 않는다 는 것에 주의해야 한다. 근 노드에는 속성유형에 관한 정보가 있고, 이 속성유형에 관한 정보는 근 노드 오른쪽에 r1으로 표시된 첫번째 글자다. 두 개의 다른 내부노드들의 경우, 속성유형들은 좌측의 l1으로 표시된 첫번째 글자와 우측의 r2로 표시된 두번째 글자이다. 잎 노드들의 경우, 속성유형들은 할당되지 않는다.
단어 'Ada'에 대해 발음을 검색하는 경우, 이 단어에 대한 음소시퀀스는 예에서 나타낸 결정트리와 글자 'd'에 대한 결정트리를 이용하여 생성될 수 있다. 예에서, 글자 d'에 대한 트리는 근 노드만으로 구성되고 근 노드에 할당된 음소는 음소 /d/이다.
음소시퀀스를 생성할 때, 단어는 한번에 한 글자씩 좌에서 우로 처리된다. 첫번째 글자는 'a'이고 그러므로 글자 'a'에 대한 결정트리가 먼저 고려된다(도 2 참조). 속성 r1은 근 노드에 부착된다. 'a' 뒤의 다음 글자는 'd'이고, 그러므로 근 노드 후에는 속성값 'd'에 대응하는 가지로 진행한다. 이 노드는 속성 r2가 부착되는 내부노드이다. 우측 두번째 글자는 'a'이고, 대응하는 가지로 진행하고, 나아가 잎이 되는 대응 노드로 더 진행한다. 이 잎에 대응하는 음소는 /el/이다. 그러므로 시퀀스에서 첫번째 음소는 /el/이다.
*예의 단어에서 다음 글자는 'd'이다. 글자 'd'에 대한 결정트리는 언급된 바와 같이 근 노드로 구성되고 가장 빈번한 음소는 /d/이다. 그래서 시퀀스에서 두번째 음소는 /d/이다.
단어의 마지막 글자는 'a'이고, 글자 'a'에 대한 결정트리가 다시 한번 고려된다(도 2 참조). 근 노드에 부착된 속성은 r1이다. 단어의 마지막 글자에 대해, 글자 'a'의 우측에 있는 다음 글자는 문자소 엡실론 '_'이다. 잎이 되는 노드에 대응하는 가지를 따라 트리를 올라간다. 잎 노드에 부착된 음소는 /V/이고 이것은 시퀀스에서 마지막 음소이다.
끝으로 단어 'Ada"에 대한 완전한 음소시퀀스는 /el/ /d/ /V/이다. 임의의 단어에 대한 음소시퀀스는 결정트리들이 알파벳의 모든 글자들에 대해 훈련 완료된 후 유사한 형태로 생성될 수 있다.
결정트리 훈련은 단어들과 그것들의 발음들을 담고 있는 발음사전으로 행해진다. 결정트리의 강도는 정보이론원리를 이용하여 훈련 어휘집(lexicon)으로부터 조밀한(compact) 매핑을 배우는 능력에 있다.
언급된 바와 같이, 결정트리 기반 구현예들은 가장 정확한 음소시퀀스들을 제공하고 있지만, 결정트리 해법을 텍스트 대 음소 매핑에 이용할 때 큰 메모리를 낭비하는 단점이 있다. 큰 메모리 낭비는 연결리스트(linked list) 결정트리 접근법에서 이용되는 수많은 포인터들 때문이다. 메모리의 량은 발음 불규칙성이 빈번하게 발생하는 영어 등의 언어들에서 특히 증가한다.
상기 문제에 대한 종래기술의 해법들은 손실 및 무손실 방법들로 분류될 수 있다. 결정트리의 메모리 요구의 감소를 시도할 때, 대부분 손실 방법들이 이용된다. 이러한 접근법들은 예를 들면 결정트리들의 속성값들의 그룹화, 결정트리 훈련 처리의 중단기준의 최적화, 오류 카운트들에 기초한 결정트리의 가지치기, 및 다른 유사한 방법들이다.
종래기술의 로우메모리(low memory) 결정트리 방법들의 경우, 시스템이 메모리에 대해 최적화될 때, 성능은 항상 감소된다. 정확도와 메모리 소비 간에는 항상 흥정관계가 있다. 반면에, 본 발명에 따른 접근법으로 인해, 정확도에서는 어떠한 나빠짐도 거의 없고 메모리 소비는 최적화된다. 메모리 요구는 성능의 나빠짐 없이 상당히 줄어든다.
이 목적을 달성하기 위해, 트리형 데이터구조를 관리하기 위한 방법은, 부모노드 및 적어도 하나의 잎노드로 구성된 결정트리를 만드는 단계들, 및 상기 노드 들로부터 데이터를 검색하는 단계들을 포함한다. 상기 방법은 상기 데이터에 대해 최소의 비트들을 제공하는 부호화방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하는 노드들이 저장순서에서 부모노드를 뒤따르며 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드로부터의 링크 없이 도달될 수 있는 방식으로 노드들을 순차 저장함으로써 만들어진 결정트리가 특징이다.
트리형 데이터구조를 관리하기 위한 시스템의 경우, 상기 데이터에 대해 최소의 비트들을 제공하는 부호화방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하는 노드들이 저장순서에서 부모노드를 뒤따르고 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드로부터의 링크 없이 도달될 수 있는 방식으로 노드들을 순차 저장함으로써 결정트리를 만들기에 적합한 생성기가 특징이다.
본 발명에 따른 장치는 데이터를 트리형 데이터구조로 저장하는 저장매체, 및 상기 데이터구조의 데이터를 처리하기 위한 처리기를 포함하며. 상기 처리기는 결정트리 생성기 및 상기 노트로부터의 데이터를 위한 검색기를 포함한다. 이 장치는 상기 데이터에 대해 최소의 비트들을 제공하는 부호화방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하는 노드들이 저장순서에서 부모노드를 뒤따르고 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드로부터의 링크 없이 도달될 수 있는 방식으로 노드들을 순차 저장함으로써 결정트리를 만들기에 상기 생성기가 적합하게 된다는 것이 특징이다.
상기 트리형 데이터구조는 부모노드와 적어도 하나의 잎노드로 구성되며 상기 노드들은 검색가능한 데이터를 포함하는 것이며, 상기 트리형 데이터구조는 상기 데이터에 대해 최소의 비트들을 제공하는 부호화방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하는 노드들이 저장순서에서 부모노드를 뒤따르고 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드로부터의 링크 없이 도달가능한 방식으로 순차적으로 놓여있는 노드들이 특징이다.
본 발명에 따른 컴퓨터 프로그램생성물은 컴퓨터 저장매체와, 컴퓨터 저장매체 상에 기록되며 상기 저장매체에 저장된 부모노드 및 적어도 하나의 잎노드를 포함하는 트리형 데이터구조를 이용하기 위한 컴퓨터로 읽을 수 있는 코드를 포함한다. 컴퓨터로 읽을 수 있는 코드는 노드로부터 데이터를 검색하기 위한 명령어들을 포함한다. 컴퓨터 프로그램생성물은, 상기 데이터에 대해 최소의 비트들을 제공하는 부호화방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하는 노드들이 저장순서에서 부모노드를 뒤따르고 검색가능한 데이터의 문맥을 다듬는 노드들이 그것들의 부모노드와의 링크 없이 도달가능한 방식으로 노드들을 순차 배치하기 위한 명령어들을 컴퓨터로 읽을 수 있는 코드가 가진다는 것이 특징이다.
발명의 제1부는 결정트리의 훈련 시에 이용되는 클리핑식(clipped) 정렬방법 을 설명한다. 이 방법은 고품질로 정렬된 사전이 어학지식과 조화하여 만들어질 수 있게 한다. 클리핑 방법 없이는, 종래기술의 방법들에서와 같이, 어학지식은 충분히 이용되지 않는다. 또한 현 발명 때문에 잘못된 엔트리들(음소-글자 쌍들)은 쉽게 발견될 수 있다. 결과적으로 불규칙성이 감소되고 정렬된 사전으로 훈련된 결정트리들의 메모리 및 정확도는 개선된다. 마찬가지로, 이 발명은 외국 단어들 및 이름들이 영어와는 다른 발음규칙들에 따른다면 외국 단어들 및 이름들을 위한 엔트리들을 제거할 가능성을 제공한다. 분명히 불규칙성 역시 감소된다. 어느 정도는 클리핑식 정렬방법은 잘못된 옮겨쓰기(transcriptions)를 검출할 수도 있고 그것들을 버릴 수도 있다. 불가능한 매핑쌍들을 담고 있는 엔트리들이 클리핑되므로, 작은 확률을 갖는 가능한 매핑쌍은 올바르게 이용될 수 있다.
본 발명에 따른 방법은 구속형(constrained) 비트비 알고리즘과 결합된 결정트리에 무손실부호화를 적용한다. 이 발명은 하나의 글자가 음소에 대응하지 않거나 하나 또는 두 개의 음소들에 대응할 것인 예컨대 영어와 같은 언어들에 유익하다.
결정트리에 기초한 제안된 발음모델링 접근법의 상위레벨의 설명은 도 4에 나타나 있다. 이 접근법은 클리핑식 정렬방법으로 정렬된 발음사전에 기초한다. 결정트리들의 훈련은 정렬된 발음사전에 기초하고 훈련의 결과는 결정트리 기반 발음모델이다. 훈련 후, 결정트리들은 결정트리들의 메모리 요구들을 최소화하기 위해 로우메모리형식으로 변환된다. 로우메모리 결정트리 표현은 결정트리의 노드들을 적당한 형식으로 변환하는 것과 결정트리들의 변수들을 메모리소비가 최소가 되게 하는 압축체계로써 압축하는 것으로 구성된다. 본 발명은 클리핑식 훈련 정렬을 수행하는 방법과 결정트리들을 로우메모리형식으로 변환하는 방법을 제시한다. 발음사전은 단어들과 그것들의 발음들을 담고 있다. 결정트리는 정보이론원리들을 이용하여 훈련어휘집으로부터 조밀한 매핑을 훈련할 수 있다.
발명의 명료함을 위해 발명은 다음 부분들로 나누어진다:
1. 클리핑식 정렬방법
2. 로우메모리 결정트리법
3. 결정트리 데이터요소들을 위한 비트할당
발명에 따른 제1부의 클리핑식 정렬방법은 제2부에서 더 설명되는 로우메모리 결정트리의 훈련을 위해 설계된다. 제3부에서 결정트리의 데이터요소들을 압축하기 위한 방법들은 최소메모리요구를 달성하도록 표현된다. 그러나 처음에는, 결정트리를 훈련하기 전에, 엔트리들 또는 상세한 설명에서 언급된 바와 같은 발음사전에서의 엔트리들이 글자들 및 발음들 사이에 대응관계를 찾기 위해 정렬된다. 정렬은 발음되지 않는 글자들을 위한 음소시퀀스 및 2개의 음소들을 생성하는 글자들을 위한 의사음소들(pseudophonemes)에 음소 널(null)(음소 엡실론이라 불리며 "_"로 표시됨)들을 삽입함으로써 얻어진다. 의사음소들은 단일 글자에 대응한다고 알려진 두 음소들(/eI/, /oU/, ...)을 연접함으로써 얻어진다.
HMM-비트비 알고리즘은 이 정렬에 이용하기에 적합하다. HMM-비트비 알고리즘의 이용은 정렬이 통계적 느낌에서 최적의 방식으로 수행되는 것을 보장하고 그 러므로 사전 엔트리의 잔존 엔트로피를 최소화한다. 게다가, 정렬에 HMM-비트비 알고리즘을 이용하는 이점은 통계적 느낌에서 최적의 정렬에 도달할 수 있다는 것이다. 정렬된 발음사전의 예는 표 1에 주어진다.
Figure 112007063068543-pat00001
은닉 마르코프모델(HMM)은 예를 들면 음성인식에 적용되고 있는 주지의 폭넓게 이용되는 통계적 방법이다. 이 모델은 마르코프 소스들 또는 확률함수들의 마르코프 체인이라고도 알려져 있다. HMM의 기초가 되는 가정은, 신호가 매개변수 무작위처리로서 잘 특징지어지고 확률적 처리의 매개변수들이 정밀하고 잘 정의된 방식으로 결정/추정될 수 있다는 것이다. HMM은 각 상태에 관련된 관측가능 사건들이 부호어들처럼 이산적인지 아니면 연속적인지에 따라 이산모델들 또는 연속모델들로 분류될 수 있다. 어느 방법으로나, 관측은 확률적이다. 이 모델은, 직접적으로 관측가능하지는 않고(숨겨짐) 연속하는 관측들을 생성하는 다른 집합의 통계처리들을 통해서만 보일 수 있는 기초가 되는 통계처리와 함께한다. HMM은 상태들 간의 전이를 가지는 은닉상태들로 구성된다. 수학적 표현은 3개의 항들, 즉 상태들 간의 상태전이확률, 각 상태의 관측확률 및 초기상태분포를 구비한다. HMM과 관측이 주어지면, 비터비 알고리즘은 추종하는 최선의 경로를 통해 관측상태정렬을 제공하는데 이용된다.
발음사전을 정렬하기 위해, 주어진 글자-음소 쌍들에 대한 페널티들 P(f,l)은, 음소 f가 글자 l에 대해 허용된 음소들의 목록에서 발견될 수 있다면 영으로 초기화되고, 그렇지 않다면 그 페널티들은 큰 양의 값들로 초기화된다. 초기 페널티값들이 주어지면, 사전은 두 단계로 정렬된다. 제1단계에서, 모든 가능한 정렬들이 사전 내의 각 엔트리에 대해 생성된다. 모든 정렬된 엔트리들에 기초하여, 페널티값들은 다시 매겨진다. 제2단계에서, 단일의 최선 정렬만이 각 엔트리마다 찾아진다.
각 엔트리에 대해, 최선의 정렬은 문자소 HMM에 대한 비터비알고리즘에 의해 찾아질 수 있다. 은닉 마르코프모델의 예는 도 3에 보인다. 문자소 HMM은 엔트리 E,출구 X 및 글자 S1, S2, S3 상태들을 가진다. 의사음소들에 매핑될 것인 글자들은 지속상태(D)를 가짐으로써 다루어질 수 있다. 도 3의 상태들(S1~S3)은 단어의 발음되는 글자들에 대응하는 상태들이다. 상태 S2는 의사음소를 생성할 것이고 이것이 상태 S2가 지속상태(D)를 가지는 이유이다. 모든 이전 상태들로부터 현재 상태로의 건너뜀들은 음소 엡실론들을 지원하기 위해 허용된다. 각 상태와 지속상태는 문자소 HMM에 대해 음소시퀀스를 정렬하는 누적페널티와 누적점수에 대응하는 상태시퀀스들을 담고 있는 토큰을 유지한다. 음소시퀀스는 시작 음소로부터 끝 음소까지 음소시퀀스를 한꺼번에 지나감으로써 글자들에 대해 정렬된다. 토큰 통과는 글자들 및 음소들 사이에서 비터비 알고리즘을 찾기 위해 수행된다. 마침내, 최저 누적페널티를 가지는 토큰이 HMM의 모든 상태들에 대해 찾아진다. 토큰의 상태시퀀스에 기초하여, 단어의 글자들 및 음소들 사이의 정렬은 결정될 수 있다.
정렬된 사전은 아래에 열거된 바와 같은 엔트리들을 담고 있을 수 있다:
a) "후안, 씨앙 등"처럼 외국 이름들 및 단어들은 영어 발음사전에 포함되어 있다. 텍스트 대 음소 매핑에서 영어보다는 해당 언어로 그것들을 이용하는 것이 바람직하다. 그러한 단어들은 발음을 더 불규칙하게 만들고 불규칙한 발음은 결정트리가 더 커지고 덜 정확해지게 만든다.
b) 잘못된 옮겨쓰기. 인쇄공들(typos) 및 얼마간의 다른 예측불가능한 이유들 때문에 사전에 얼마간의 잘못 옮겨쓰진 것들을 피할 수 없다. 그것들 역시 발음을 더 불규칙하게 덜 정확해지게 만든다.
c) 잘못된 정렬, 예를 들면,
Figure 112007063068543-pat00002
. 기본 어학지식에 의하면 글자 "p"는 모음 음소 "V"에는 결코 매핑되지 않는다고 알려져 있다. 다시, 이것은 발음을 더 불규칙하고 부정확해지게 만든다.
위에 언급된 문제들을 해결하기 위해 비터비 알고리즘을 이용하는 클리핑식 정렬방법이 제안된다. 이것에 의하면 고품질 정렬된 발음은 더욱 규칙적일 것이라서, 본 발명에 따른 결정트리 기반 텍스트 대 음소 모델들에 대한 메모리 요구를 낮춘다.
1. 로우메모리 결정트리들을 훈련하기 위한 클리핑식 정렬방법
본 발명에 따른 정렬은 위에 기재된 정렬된 사전으로부터 추정되는 재추정된 페널티 P(f,l)에 기초하여 행해진다. 분명하게는 형성된 정렬은 매우 조악한 정렬을 생성하고, 그래서 페널티들인 P(f,l)은 결코 매우 정확하지는 않다. 어학상 가능하지 않는 경우에 P(f,l)에 값을 할당하기도 한다. 예를 들면, P("V", "p")는 값을 가지지만, 이것은 언어지식에 분명히 반한다. 이것을 피하기 위해 그리고 전술한 난점들(a~c)을 극복하기 위해, 구속이 비터리 복호화에 적용되어 클리핑식 방법으로 정해진다.
제안된 클리핑식 정렬알고리즘은 목표언어에 대해 자모집합과 음성(phonetic)집합을 정의하는 것을 필요로 한다. 표 2의 목록은 음소들 및 언어적으로 대응하는 의사음소들을 지정한다(사람의 경험에 의한 언어지식에 기초함). 아래의 표 2는 진정으로 언어에 의존하는 정보를 포함한다.
Figure 112007063068543-pat00003
표 2는 다른 방식들로 구현될 것이지만 그 구현예들은 동일한 목적을 위해 작용한다.
모든 정렬된 엔트리들에 기초하여, 페널티값들은 다시 매겨진다. 이런 식으로, 오직 하나의 최선의 정렬만이 각 엔트리에 대해 찾아진다. P(f,l)이 음소 (f가 표 2에서 발견될 수 있다면 통상적으로 추정되고, 이는 글자 l에 대해 음소 f가 어학적으로 허용됨을 의미한다. 음소 f가 주어진 글자 l에 대해 표 2에서 찾아질 수 있다면, 구속은 P(f,l)를 어떠한 추정도 행하지 않고 가장 높은 값으로 설정하는데 적용된다.
이제 위에서 설명된 테이블에서 발견되는 글자-음소 쌍들만이 결정트리 기반 텍스트 대 음소 매핑을 훈련하기 위해 정렬된 사전에서 허용된다.
이 방법 때문에, 어학정보는 더욱 쉽게 고려될 수 있다. 일부 엔트리들은 정렬 시 클리핑방법으로 인해 클리핑된다. 클리핑된 엔트리 목록을 점검함으로써, 어학정보를 찾거나 어학정보에 맞추는 것이, 예를 들면 새로운 의사음소들을 정의하여, 누락 음소들을 글자 의존 음소 집합에 부가하는 등의 일이 쉬워진다. 더 나은 어학정보를 가짐으로써, 정렬은 개선되고 메모리 사용은 감소될 수 있다.
2. 결정트리모델 구조
주어진 언어에 대한 텍스트 대 음성 모델의 크기는 모든 글자들의 결정트리 텍스트 대 음소 모델들의 메모리 요구들을 최소화함으로써 최소화된다. 그러므로 단일 결정트리 텍스트 대 음소 모델의 메모리 요구가 고려된다.
도 1 및 2에 나타낸 결정트리모델의 직접 연결리스트 구현예는 바람직하게 이용되지는 않는다. 이것은 연결리스트 접근법에서 트리의 각 노드가 포인터테이블을 오버헤드로서 담고 있을 것이라는 사실 때문이다. 이 오버헤드를 제거하기 위해, 트리의 노드들은 메모리 내에 바람직하게는 텍스트 대 음소 변환에 그 노드들을 이용하는 것을 가능케 하는 순서로 저장된다.
이 순서는 올바른 문맥이 글자에 대해 다듬어져 있을 때 다음의 일치 문맥 역시 바로 다음의 레벨의 문맥이 되도록 해야 한다. 달리 말하면, 종래기술에 따른 연결리스트 트리가 메모리에 어느 순서로나 저장될 수 있을지라도, 본 발명에 따른 트리는 그렇게 될 수 없다. 종래기술의 연결리스트 트리의 구조는 올바른 참조를 자동으로 할 수 있어, 다음 레벨의 노드들이 검색될 때, 알고리즘은 노드들에 저장된 링크들(포인터들)을 이용하여 정보를 찾아낸다. 이러한 링크들은 메모리를 이용하고, 그것들의 유일한 목적은 트리를 횡단하는 것을 가능케 하는 것이다. 연결리스트 접근법의 예는 도 5에서 볼 수 있고, 이 도면에서 노드(I0)는 글자들에 대응하는 아이노드들(I1, I2, I3, I4, I5, I6)에 도달되게 하는 포인터테이블을 포함한다. 아이노드들이 잎노드(이를테면 I2, I5)가 아닌 한, 아이노드는 여전히 포인터테이블을 포함한다.
본 발명은 트리 노드들을 메모리에 적당한 순서로 저장하는 것에 의해 링크들 또는 포인터들이 노드들로부터 생략될 수 있음으로써, 메모리를 절약한다는 사실의 깨달음에 기초한다. 이러한 구성은 예컨대 도 6a~6d에 보인 깊이우선(depth-first) 및 폭우선 저장체계들 또는 이것들의 임의의 조합들이다. 달리 말하면, 본 발명은 트리 내용물들을 텍스트 대 음소변환에 적합한 특정 순서로 저장함으로써 트리에 링크가 없는 경우에도 트리를 적절히 검색할 수 있게 하는 것이다.
깊이우선 저장체계에서, 트리의 노드들은 트리구조를 처음부터 내내 마지막의 가장 왼쪽 잎까지 따라감으로써 저장된다. 다음에, 우측의 다음 가지가 마지막 잎까지 횡단된다. 도 6a는 도 1의 결정트리구조의 예를 보이고, 이 도면에서 노드들 및 잎들은 로우메모리 깊이우선 형식으로 변환된다. 깊이우선 저장형식에서 각 노드는 바람직하게는 한 번만 저장된다. 예를 들면 근 노드는 한 번만 저장된다. 각 노드 예를 들면 근 노드는 2번 이상 저장될 수 있다(도 6a에서처럼)는 것이 명백하다.
*폭우선 저장체계에서, 트리의 근(R)이 먼저 저장된 다음, 제1층의 모든 노드들이 저장되고, 그 후 제2층의 모든 노드들이 저장되는 식이다. 도 6b는 도 1의 결정트리구조의 예를 보이며, 이 도면에서 노드들 및 잎들은 로우메모리 폭우선형식으로 변환된다.
혼합 저장체계에서, 깊이우선 및 폭우선 체계는 서로 섞일 수 있다. 도 6c 및 6d는 하위노드층들(M, N, O)로 계속되는 결정트리(1)의 상호혼합식 저장체계의 예들을 보인다. 예를 들면, 도 6c에서처럼, 폭우선체계는 층 3(L)까지 이용될 수 있고, 그 지점부터 깊이우선체계가 이용된다. 대안으로, 도 6d에서처럼, 완전 폭우선체계가 층 3(L)까지 이용될 수 있고, 그 후 층 3(L)의 각 노드에 대한 서브트리들은 개별적으로 폭우선순서로 저장된다. 이것은 어쩌면 필요한 노드들에 대한 고속 메모리액세스를 가능하게 할 수 있다.
이러한 저장체계들의 주목적은 트리구조에 링크들 또는 포인터들을 사용하지 않고서도 트리의 저장을 가능하게 하는 것이다. 올바른 동작을 보장하기 위해, 저장체계는, 링크들의 제거 후에 문맥을 다듬는데 이용될 수 있는 노드들이 항상 저장순서에서 부모노드를 뒤따르는 방식으로 메모리 내에서 노드들이 순차 배치되는 것을 필요로 한다.
트리의 노드들은 가지마다 설명된 방식으로 저장된다. 결정트리로부터의 단일 내부노드(I)는 다음 정보의 데이터요소들을 담고 있다:
- 글자와 같은 속성값
- 내부노드(I)/잎(L) 간을 구별하는 하나의 비트
- 속성유형 ai
- 특정 문맥에 대응하는 음소 pi
단일 잎(L) 노드는 다음 정보의 데이터요소들을 담고 있다:
- 글자와 같은 속성값
- 내부노드(I)/잎(L) 간을 구별하는 하나의 비트
- 특정 문맥에 대응하는 음소 pi
- 부모노드의 마지막 잎인지를 나타내는 하나의 비트
제안된 접근법에서는, 결정트리모델들의 메모리 요구들이 최소화될 수 있다. 나중의 목적들을 위해 결정트리의 데이터요소는 속성유형, 속성값 또는 음소가 되도록 정의될 수 있다.
3. 결정트리의 데이터요소들을 나타내는 방법들
발명의 이 부분은 최소메모리 요구를 달성하기 위해 결정트리의 데이터요소들을 나타내는 3가지 방법들을 설명한다. 제안된 방법들은 고정비트할당, 결정트리 데이터요소들을 위한 가변비트할당, 및 결정트리 데이터요소들의 허프만부호화이다.
결정트리 데이터요소들을 위한 고정비트할당
결정트리의 크기는 모든 내부노드들 및 잎들의 크기들의 합이다. 다음에서 내부노드들 및 잎들의 크기가 분석된다. 여기에 나타낸 숫자들은 영어를 위한 것이다.
a) 속성값들의 수: 26개 글자들, 64개 미만의 음소들 및 16개 미만의 음소 부류(class)들이 있다. 이것들 중의 최대값은 64이므로, 6비트가 속성값들을 위해 할당된다.
b) 속성유형들의 수: 문맥길이 4에 대해 현재 글자의 좌우측의 4 글자, 현재 글자의 좌측의 4 음소들 및 좌측의 4 음소부류들이 있다. 전부 16이므로 4비트가 속성유형들을 위해 할당된다.
c) 음소들의 수: 영어의 경우 그 수는 32와 64 사이이고, 그래서 6비트가 음소들을 위해 할당된다.
d) 내부노드들/잎들을 표시하는 플래그는 한 비트만을 필요로 한다.
e) 주어진 내부노드에 대해 잎들의 끝을 표시하는 플래그는 한 비트만 필요하다.
위에 나타낸 비트할당은 고정비트할당이라 불리는데, 비트수가 미리 정해지고 고정되기 때문이다.
내부노드 및 잎을 위한 크기들은 다음과 같이 결정될 수 있다:
내부노드의 경우, 크기는 항목 a), b), c) 및 d)의 합이다:
Internal _ node _ size = 6 + 4 + 6 + 1 = 17비트
잎의 경우, 크기는 항목 a), b), d) 및 e)의 합이다:
Leave _ size = 6 + 6 + 1 + 1 = 14비트
결정트리 데이터요소들을 위한 가변비트할당
결정트리 기반 텍스트 대 음소 매핑에서, 각 트리는 하나의 글자에 대응한다. 본 발명의 제1부에서, 클리핑법이 제안되어 있다. 주어진 글자에 대해, 표 2에 열거된 대응 음소들만이 정렬된 사전에서 허용된다. 그러므로 각 트리에 대해 음소들의 수는 표 2에 의해 제한된다. 예를 들면, 글자 "a"는 7개의 가능한 음소들을 가지며 모든 음소들에 대해 위의 c)에서 기재된 바와 같은 6비트 대신에 이 음소들에 대해 할당이 필요한 것은 3비트이다. 이것은 7개의 음소들만이 글자 "a"를 위해 이용되고 모든 다른 음소들은 정렬 중에 클리핑되기 때문이다. 이제 비트수는 내부노드들 및 잎들 모두에 대해 3만큼 감소된다. 물론, 음소들에 대해 할당된 비트들의 수는 다른 잎들에 대해 달라질 것이다.
클리핑법에서, 각 글자 l은 글자의존 음소집합에 매핑될 수 있다.
l → p, 여기서 p ∈ {p1, p2, ..., pn}.
음소는 전체 언어의존 음소집합보다는 오히려 글자의존 음소집합에 기초하여 부호화될 수 있다. 이 방법은 가변비트할당이라 부르는데, 음소들에 할당된 비트들의 수가 글자에서 글자로 그리고 트리에서 트리로 변화할 수 있기 때문이다. 예를 들면, 고정비트할당의 방법들에서는 "a"가 전체 집합(40개 음소들)에 매핑되고, 가변비트할당의 방법으로 할 때는 글자 "a"는 글자의존 음소집합(영어에서는 8개 음소들)에 매핑될 수 있다. 이런 식으로 [log2(40)] = 6비트가 고정비트할당에서는 필요하고, [log2(8)] = 3비트가 가변비트할당에서 필요하다.
글자의존 비트할당을 속성유형들 및 속성값들과 같은 다른 데이터요소들에 대해서도 이용하는 것이 가능하다. 그렇게 하기 위해, 주어진 글자에 대해, 모든 가능한 속성유형들 및 속성값들의 집합을 찾을 필요가 있다. 일단 이러한 집합들이 알려진다면, 속성유형들 및 속성값들에 필요한 비트들의 수는 계산될 수 있다.
결정트리 데이터요소들에 대해 가변비트할당을 이용하기 위해서는, 허용된 음소들, 속성유형들 및 속성값들의 집합들이 각 글자에 대해 찾아진다. 일단 이 집합들이 알려진다면, 그것들은 테이블들에 저장된다. 데이터요소를 위한 테이블의 크기가 n이면, 데이터요소를 가변비트할당으로 저장하는데 요구된 비트들의 수는 [log2(n)]비트이다. 테이블은 메모리에 저장되는 것이 필요하여 메모리는 오버헤드를 도입한다. 그러므로 가변비트할당은 가변비트할당으로 인한 절약(Saved _ var _ bits)이 테이블을 저장하는 오버헤드(Overhead _ var _ bits)보다 큰 경우에만 이용된다.
절약된 비트들의 수는 다음의 방식으로 계산된다:
Saved _ var _ bits =
( Num _ bits _ fixed - Num _ bits _ variable ) Count _ occurrence
Num _ bits _ fixed는 데이터요소에 고정비트할당으로 할당되는 비트들의 수에 해당한다. Num _ bits _ variable은 데이터요소에 가변비트할당으로 할당되는 비트들의 수에 해당한다. Count _ occurrence는 결정트리에서 데이터요소가 발생하는 총 횟수이다.
데이터요소를 위해 테이블을 저장하는 오버헤드는 다음의 방식으로 계산된다:
Overhead _ var _ bits = ( Size _ table + 1) Bits _ in _ byte
Size _ table은 테이블 내의 요소들의 수에 해당하고 Bits _ in _ byte는 8이다.
Saved _ var _ bitsOverhead _ var _ bits 간의 비교는 각 데이터요소(속성유형, 속성값 및 음소)에 대해 검사되고 Saved _ var _ bitsOverhead _ var _ bits보다 크다면 가변비트할당이 이용된다. 즉,
if Saved _ var _ bits > Overhead _ var _ bits
이라면 가변비트할당이 이용된다.
결정트리 데이터요소들의 허프만부호화
결정트리 데이터요소들에 대해 이진코드를 할당하기 위해 허프만부호가 이용될 수 있다. 결정트리 데이터요소의 분포가 큰 변동을 가진다면 허프만부호의 이용은 메모리를 절약할 수 있다. 허프만부호화의 기본 개념은 짧은 부호어들을 높은 확률들을 갖는 데이터요소들에 그리고 긴 부호어들을 낮은 확률들을 갖는 데이터요소들에 할당하는 것이다. 허프만부호들은 최선이고 무손실이다. 이 부호는 데이터요소를 부호화하기 위한 비트들의 수가 특정 데이터요소에 대응하는 부호어의 길이에 의해 주어지는 가변장부호이다. 허프만부호는 결정트리 변수들의 각각에 대해 개별적으로 도출되어야 한다.
아래의 표 3은 영어의 글자 "a"의 트리의 음소들에 대한 허프만부호화의 예를 보인다. 음소들에 대한 압축률은 1.2554이다. 이 표에서 "FLC"는 고정길이부호를 나타낸다.
Figure 112007063068543-pat00004
결정트리 데이터요소들에 대해 허프만부호화를 이용하기 위해, 허프만부호어들, 각 부호어의 비트수 및 대응하는 알파벳은 메모리에 저장되는 것이 필요하여 메모리에 오버헤드를 도입한다. 허프만부호화를 이용할 것인지의 결정은 각 데이터요소에 대해 개별적으로 행해진다. 주어진 데이터요소에 대해, 허프만부호화는 허프만부호화로 인한 절약(Saved _ huff _ bits)이 오버헤드(Overhead _ huff _ bits)보다 큰 경우에만 이용될 수 있다.
허프만부호화로 인해 절약된 비트들의 수는 다음으로부터 계산될 수 있다:
Saved _ huff _ bits =
i ( Num _ bits _ fixed - Num _ bits _ CW i )Count_ CW i
Num _ bits _ fixed는 고정비트할당으로 데이터요소에 할당된 비트들의 수이다. Num_bits_CW i 는 허프만부호화된 트리에서 발생하는 i번째 부호어에 할당된 비트들의 수에 해당한다.
허프만부호를 저장하는 오버헤드는 다음으로부터 계산될 수 있다:
Overhead _ huff _ bits = (3 Num _ huff _ CW + l) Bits _ per _ byte
Num _ huff _ CW는 데이터요소에 대한 허프만부호어들의 수이고, Bits _ per _ byte는 8이다. 허프만부호어들, 허프만부호어들에서 비트수를 나타내는 변수들, 및 알파벳의 번호들은 단일 바이트 변수들에 저장된다고 가정되고 있다.
Saved _ huff _ bitsOverhead _ huff _ bits 간의 비교는 각 데이터요소(속성유형, 속성값 및 음소)마다 검사되고 허프만부호화는 결정된 조건이 다음을 만족한다면 그 데이터요소에 적용된다:
if Saved _ huff _ bits > Overhead _ huff _ bits .
결정트리 데이터요소들을 저장하는데 요구된 메모리의 최소화
트리를 저장하는 기본 구조는 제2부의 시작에서 설명된 것처럼 고정되지만, 트리의 데이터요소들은 다양한 방식들로 표현될 수 있다. 비트할당은 고정될 수 있거나, 또는 가변될 수 있거나, 또는 허프만부호화가 이용될 수 있다. 이러한 부호화방법들 사이에서의 결정은 결정트리의 각 데이터요소(속성유형, 속성값 및 음소)에 대해 행해진다. 각 글자에 대해 결정트리 기반 텍스트 대 음소모델이 존재하므로, 선택은 각 글자에 대해 반복된다.
대체 실시예에서, 고정길이부호화 또는 허프만부호화 중의 어느 것을 이용할 지의 결정은 이른바 절단형(truncated) 허프만부호화를 이용하는 가능성으로 보완된다. 이 부호화방법에서, 매우 낮은 확률을 갖는 데이터요소들의 어느 일정한 값들은 함께 그룹화되고 공통 허프만 접두사(prefix) 부호가 그룹에 할당된다. 그 후 값들의 그룹으로부터 데이터요소의 실제 값은 고정길이부호로 부호화된다. 예를 들면, 한 그룹을 이루는 8개의 극히 있을법하지 않은 값들이 7비트의 허프만부호와 그 뒤를 잇는 3비트의 고정길이부호로 부호화될 수 있다.
주어진 트리의 주어진 데이터요소에 대해, 고정비트할당, 가변비트할당 또는 허프만부호화를 이용할 지의 선택은 로우메모리 결정트리모델을 위한 메모리요구들이 최소화되도록 행해진다. 그러므로, 그 결정은 다음의 논리에 기초한다:
a) 초기화: 고정비트할당이 데이터요소를 위해 이용된다고 가정되며;
b) Saved _ var _ bits > Overhead _ var _ bits 라면, 데이터요소를 위해 가변비트할당이 이용되며;
c) 허프만부호화로 인한 절약이 가변비트할당으로 인한 절약보다 크고 허프만부호화에 의해 도입된 오버헤드보다 크다면, 데이터요소를 위해 허프만부호화가 이용된다. 즉 다음과 같으면 허프만부호화가 이용된다:
Saved _ huff _ bits - Overhead _ huff _ bits > Saved _ var _ bits - Overhead_var_bitsSaved _ huff _ bits > Overhead _ huff _ bits.
본 발명은 이 최소화 접근법을 이용하여 모든 결정트리들에서의 각 결정트리 데이터요소에 대해 최소비트할당을 자동으로 결정한다.
실험예:
본 발명은 CMU(카네기멜론대학교) 사전으로부터 추출된 미합중국 인구조사 명부의 발음들에 대해 결정트리들을 훈련시킴으로써 실험되었다. 발음들의 총 수는 40,529개이었다. 기선(baseline) 구현은 결정트리 데이터요소들의 고정비트할당과 함께 원래의 정렬을 이용한다. 아래의 표 4에 보인 것처럼, 결정트리 모델의 크기는 현저히 감소되고(36%) 텍스트 대 음소 성능은 음소 정확성 및 스트링율(string rate)의 점에서 나빠짐이 없다. 이것은 본 발명의 유용성을 검증한다.
Figure 112007063068543-pat00005
다른 혁신적인 기법들인 정렬 시의 클리핑법, 결정트리구조, 결정트리 데이터요소들을 위한 고정비트할당, 결정트리 데이터요소들을 위한 가변비트할당 및 결정트리 데이터요소들을 위한 허프만부호화된 비트가 본 발명에 도입되어 있다. 모든 기법들은 개별적으로 또는 다른 방법들과 조합하여 이용될 수 있어 발명의 설명이 발명을 한정하는 것으로 고려되지 않아야 함은 명백하다.
텍스트 대 음소 시스템은 전자기기의 음성인식시스템의 일부로서 예를 들면 디지털신호처리부로서 구현될 수 있다. 이 전자기기는 예를 들면 셀룰러폰(T, 도 7)에서와 같이 원거리통신을 위한 수단과 같은 다른 기능들 포함할 수 있다. 이 기기는 바람직하게는 스피커(H), 마이크로폰(M)을 포함한다. 텍스트 대 음소 시스템은 또한 전자기기와 함께 사용되는 동시사용(concurrent) 기기 내에 구현하는 것도 가능하다. 셀룰러폰을 전자기기로서 간주하면, 동시사용 기기는 예컨대 헤드셋 또는 비디오구글이 될 수 있다.
텍스트 대 음소 시스템은 부가적으로는 시스템이 집에서의 각종 공간(방)들에서 다양한 가전제품(예컨대, 비디오, 세척기), 가구 또는 착용가능 액세서리들(예컨대, 옷)에 구현될 수 있는 유비쿼터스 환경에서 이용될 수 있다.
위에서 설명된 실시예들은 발명의 한정으로서 해석되지 않아야 하고 다음의 청구범위에 제시된 발명의 특징들의 범위 내에서 변할 수 있다는 것이 명백하다.
발명의 바람직한 실시예가 도면들과, 그 뒤 설명과 첨부의 청구범위에서 보이고 있다. 발명의 추가의 목적들 및 이점들은 상세한 설명에서 검토되기도 한다. 발명 자체는 청구범위에서 특히 한정된다.
도 1은 노드들 및 잎들을 갖는 예시적인 결정트리를 속성들 및 음소와 함께 보이며,
도 2는 텍스트 대 음소 매핑에 이용되는 글자 'a'를 위한 예시적인 결정트리를 보이며,
도 3은 문자소 은닉 마르코프(Markov)모델의 예를 보이며,
도 4는 발명에 따른 방법의 원리 도해를 보이며,
도 5는 노드가 포인터테이블을 포함하는 연결리스트 접근법의 예를 보이며,
도 6a~6d는 결정트리를 저장하기 위한 4가지 방법들의 예들을 보이고,
도 7은 발명에 따른 방법을 이용하는 장치의 매우 원리적인 예를 보인다.

Claims (32)

  1. 전자 장치의 전자 메모리에 효율적 표현을 위한 발음 모델링 애플리케이션에 대한 결정 트리를 생성하는 단계를 포함하고,
    상기 결정 트리는 부모노드 및 적어도 하나의 잎노드를 포함하고,
    상기 결정 트리 생성 단계는,
    상기 노드들을 상기 결정 트리에 배열하여, 상기 노드들이 데이터를 나타내는 비트들의 수를 감소시키는 코딩 방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하도록 하는 단계,
    노드들이 그 노드들의 부모 노드로부터의 링크 없이 저장순서에서 상기 부모 노드를 뒤따르는 방식으로, 상기 전자 장치의 상기 전자 메모리에 상기 노드들을 순차 저장하는 단계, 및
    상기 결정 트리로부터 무효 데이터 요소들(invalid data elements)을 제거하는 클리핑 정렬 방법을 사용하여 상기 결정 트리를 감소시키는 단계를 포함하는 것을 특징으로 하는, 트리형 데이터구조 관리 방법.
  2. 제1항에 있어서, 결정트리의 노드들은 깊이우선체계, 폭우선체계 또는 상기 체계들의 복합체계 중의 하나에 의해 저장되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  3. 제1항에 있어서, 저장 전에, 결정트리는 데이터요소들의 정렬된 집합으로 훈련되며, 상기 데이터요소들은 상기 데이터요소의 유효성에 의존하는 페널티로써 초기화되고, 페널티는 무효 데이터요소들에 대해 구속을 부가함으로써 추가로 다시 초기화되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 결정 트리를 생성하는 상기 방법은 텍스트 대 음소 매핑을 위한 것이고, 상기 데이터는 글자들 및 음소들과 같은 데이터요소들을 포함하며, 상기 결정트리는 하나의 글자에 대해 만들어지고 상기 노드들은 상기 글자의 음소들을 포함하는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  5. 제4항에 있어서, 노드들은 주변 글자들과 같은 상기 글자의 문맥에 관한 정보를 더 포함하는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  6. 제4항에 있어서, 음소의 유효성은 그 음소가 허용된 음소들 중의 하나인지, 또는 그 음소가 허용되지 않는 음소인지로 검사되며, 그 음소가 허용된 음소들 중의 하나인 경우 상기 페널티가 0으로 초기화되고 그 음소가 허용되지 않는 음소인 경우 상기 페널티가 큰 양의 값으로 초기화되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  7. 제6항에 있어서, 음소의 유효성은 그 음소가 어학상 허용되는지, 또는 그 음소가 어학상 허용되지 않는 음소인지로 점검되며, 그 음소가 어학상 허용되는 경우 페널티는 영으로 다시 초기화되고 그 음소가 어학상 허용되지 않는 음소인 경우 페널티는 큰 양의 값으로 다시 초기화되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  8. 제1항에 있어서, 노드의 데이터는 고정비트형식, 가변비트형식 또는 허프만부호 형식 중의 하나로 저장되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  9. 제8항에 있어서, 가변비트형식으로 인한 절약이 데이터요소들에 의해 구성된 테이블을 저장하는 오버헤드보다 크다면 데이터요소들이 존재하는 것은 가변비트형식이거나, 또는 허프만부호화로 인한 절약이 가변비트형식으로 인한 절약보다 크고 허프만코드에 의해 도입된 오버헤드보다 크다면 데이터요소들은 허프만부호화되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  10. 제9항에 있어서, 가변비트형식으로 인한 절약은 고정비트형식으로 데이터요소에 할당된 비트수(Num_bits_fixed) 및 가변비트형식으로 데이터요소에 할당된 비트수(Num_bits_variable)의 합과 데이터요소가 결정트리에서 발생하는 총 횟수(Count_occurrence)를 곱함으로써 결정되는 것을 특징으로 하는 방법.
  11. 제9항에 있어서, 허프만부호화로 인한 절약은 부호어에 할당된 비트수(Num_bits_CW) 및 고정비트형식으로 데이터요소에 할당된 비트수(Num_bits_fixed)의 합과 부호어가 허프만부호화된 트리에서 발생하는 횟 수(Count_CW)를 곱함으로써 계산되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  12. 제8항에 있어서, 저장 형식은 실질적으로 모든 데이터요소에 대해 개별적으로 선택되는 것을 특징으로 하는 트리형 데이터구조 관리 방법.
  13. 트리형 데이터구조를 관리하기 위한 시스템으로서,
    부모노드 및 적어도 하나의 잎노드로 구성된 결정트리 생성기로서, 전자 장치의 전자 메모리에 효율적 표현을 위한 발음 모델링 애플리케이션에 대한 결정 트리를 생성하기 위해 저장 매체에 임베드되어 실행되는 결정트리 생성기를 포함하고,
    상기 결정 트리 생성기는, 상기 노드들을 상기 결정 트리에 배열하여, 상기 노드들이 상기 데이터를 나타내는 비트들의 수를 감소시키는 코딩 방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하도록 하며,
    상기 결정 트리 생성기는, 노드들이 그 노드들의 부모 노드로부터의 링크 없이 저장순서에서 상기 부모 노드를 뒤따르는 방식으로, 상기 전자 장치의 상기 전자 메모리에 상기 노드들을 순차 저장하며,
    상기 결정 트리 생성기는, 상기 결정 트리로부터 무효 데이터 요소들(invalid data elements)을 제거하는 클리핑 정렬 방법을 사용하여 상기 결정 트리를 감소시키는 것을 특징으로 하는, 트리형 데이터구조 관리 시스템.
  14. 제13항에 있어서, 저장순서는 깊이우선체계, 폭우선체계 또는 상기 체계들의 복합체계 중의 하나인 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  15. 제13항에 있어서, 결정트리를 데이터요소들의 정렬된 집합으로써 훈련하는 수단을 더 포함하며, 상기 수단은 상기 데이터요소의 유효성에 의존하는 페널티로써 상기 데이터요소들을 초기화할 수 있고, 무효 데이터요소들에 대해 구속을 부가함으로써 페널티를 다시 초기화할 수 있는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  16. 제13항 내지 제15항 중 어느 한 항에 있어서, 상기 트리형 데이터구조 관리 시스템은 텍스트 대 음소 매핑을 적용하며, 상기 데이터는 글자들 및 음소들과 같은 데이터요소들을 포함하며, 결정트리는 하나의 글자에 대응하고 상기 노드들은 상기 글자의 음소들을 포함하는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  17. 제16항에 있어서, 노드들은 상기 글자의 문맥에 관해 주변 글자들과 같은 정보를 포함하는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  18. 제16항에 있어서, 상기 트리형 데이터구조 관리 시스템은 음소가 허용된 음소들 중의 하나인지로 음소의 유효성을 점검하되, 음소가 허용된 음소들 중의 하나라면, 상기 트리형 데이터구조 관리 시스템은 상기 페널티를 영으로 초기화하거나, 또는 음소가 허용되지 않은 음소라면, 상기 트리형 데이터구조 관리 시스템은 상기 페널티를 큰 양의 값으로 초기화하는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  19. 제18항에 있어서, 상기 트리형 데이터구조 관리 시스템은 음소가 어학상 허용되는지로 음소의 유효성을 점검하되, 음소가 어학상 허용된다면, 상기 트리형 데이터구조 관리 시스템은 상기 페널티를 영으로 초기화하거나, 또는 음소가 어학상 허용되지 않는 음소라면, 상기 트리형 데이터구조 관리 시스템은 상기 페널티를 큰 양의 값으로 초기화하는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  20. 제13항에 있어서, 노드들의 데이터는 가변 또는 고정 또는 허프만 부호화된 이진숫자들 중의 하나의 형식으로 표현되는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  21. 제20항에 있어서, 상기 트리형 데이터구조 관리 시스템은 상기 형식들 중의 어느 것이 다른 것들보다 큰 절약을 산출하는지를 상기 형식들을 서로 비교함으로써 점검하고, 상기 트리형 데이터구조 관리 시스템은 그 이진형식을 이용하는 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  22. 제13항 또는 제14항에 있어서, 상기 트리형 데이터구조 관리 시스템은 음성인식시스템인 것을 특징으로 하는 트리형 데이터구조 관리 시스템.
  23. 결정트리 생성기 프로그램을 저장하는 저장 매체;
    전자 장치의 메모리에 효율적 표현을 위한 발음 모델링 애플리케이션에 대한 결정 트리를 생성하기 위한 결정 트리 생성기 프로그램을 실행하는 프로세서를 포함하고,
    상기 결정 트리는 부모노드 및 적어도 하나의 잎노드를 포함하고,
    상기 결정 트리 생성기는, 상기 노드들을 상기 결정 트리에 배열하여,
    상기 노드들이 데이터를 나타내는 비트들의 수를 감소시키는 코딩 방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하도록 하며,
    상기 결정 트리 생성기는, 노드들이 그 노드들의 부모 노드로부터의 링크 없이 저장순서에서 상기 부모 노드를 뒤따르는 방식으로, 상기 전자 장치의 상기 메모리에 상기 노드들을 순차 저장하며,
    상기 결정 트리 생성기는, 상기 결정 트리로부터 무효 데이터 요소들(invalid data elements)을 제거하는 클리핑 정렬 방법을 사용하여 상기 결정 트리를 감소시키는 것을 특징으로 하는, 트리형 데이터구조 관리 장치.
  24. 제23항에 있어서, 저장순서는 깊이우선체계, 폭우선체계 또는 상기 체계들의 복합체계 중의 하나인 것을 특징으로 하는 트리형 데이터구조 관리 장치.
  25. 제23항에 있어서, 상기 장치는 텍스트 대 음소 매핑을 적용하며, 상기 데이터는 글자들 및 음소들과 같은 데이터요소들을 포함하며, 결정트리는 하나의 글자에 대한 것이고 노드들은 상기 글자의 음소들을 포함하는 것을 특징으로 하는 트리형 데이터구조 관리 장치.
  26. 제23항에 있어서, 상기 프로세서는 음성인식기능을 수행하는 것을 특징으로 하는 트리형 데이터구조 관리 장치.
  27. 제23항에 있어서, 상기 트리형 데이터구조 관리 장치는 원격통신기능을 수행하는 것을 특징으로 하는 트리형 데이터구조 관리 장치.
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 전자 장치 내의 프로세서에 의해 실행가능한 컴퓨터 프로그램을 저장한 컴퓨터로 독출가능한 기록매체로서, 상기 컴퓨터 프로그램은,
    발음 모델링 애플리케이션에 대한 결정 트리를 생성하기 위한 컴퓨터로 독출가능한 코드 명령들로서, 상기 결정 트리는 부모노드 및 적어도 하나의 잎노드를 포함하는, 컴퓨터 독출가능 코드 명령들,
    상기 노드들을 상기 결정 트리에 배열하여, 상기 노드들이 데이터를 나타내는 비트들의 수를 감소시키는 코딩 방법에 따라 부모 또는 조부모 노드의 적어도 하나의 데이터에 관한 정보를 이용하여 부호화된 적어도 하나의 데이터를 포함하도록 하는 컴퓨터 독출가능 코드 명령들,
    노드들이 그 노드들의 부모 노드로부터의 링크 없이 저장순서에서 상기 부모 노드를 뒤따르는 방식으로, 상기 전자 장치의 메모리에 상기 노드들을 순차 저장하여 상기 매체에 상기 데이터를 저장하도록 요구되는 메모리를 감소시키는, 컴퓨터 독출가능 코드 명령들, 및
    상기 결정 트리로부터 무효 데이터 요소들(invalid data elements)을 제거하는 클리핑 정렬 방법을 사용하여 상기 결정 트리를 감소시키는, 컴퓨터 독출가능 코드 명령들을 포함하는 것을 특징으로 하는, 컴퓨터로 독출가능한 기록매체.
KR1020077019768A 2003-04-30 2004-04-22 로우메모리 결정트리 KR100883577B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FI20035055 2003-04-30
FI20035055A FI118062B (fi) 2003-04-30 2003-04-30 Pienimuistinen päätöspuu
PCT/FI2004/050044 WO2004097673A1 (en) 2003-04-30 2004-04-22 Low memory decision tree

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020057020316A Division KR20060016758A (ko) 2003-04-30 2004-04-22 로우메모리 결정트리

Publications (2)

Publication Number Publication Date
KR20070094984A KR20070094984A (ko) 2007-09-27
KR100883577B1 true KR100883577B1 (ko) 2009-02-13

Family

ID=8566389

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020057020316A KR20060016758A (ko) 2003-04-30 2004-04-22 로우메모리 결정트리
KR1020077019768A KR100883577B1 (ko) 2003-04-30 2004-04-22 로우메모리 결정트리

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020057020316A KR20060016758A (ko) 2003-04-30 2004-04-22 로우메모리 결정트리

Country Status (8)

Country Link
US (1) US7574411B2 (ko)
EP (1) EP1618498B1 (ko)
KR (2) KR20060016758A (ko)
CN (1) CN1781102B (ko)
AT (1) ATE442642T1 (ko)
DE (1) DE602004023072D1 (ko)
FI (1) FI118062B (ko)
WO (1) WO2004097673A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421453B2 (en) * 2005-08-16 2008-09-02 International Business Machines Corporation Asynchronous linked data structure traversal
KR100748720B1 (ko) 2006-02-09 2007-08-13 삼성전자주식회사 다중 계층 중심 어휘 목록에 기초하여 대규모 단어 음성인식 방법 및 그 장치
JP4379894B2 (ja) * 2006-11-28 2009-12-09 株式会社エスグランツ カップルドノードツリーの分割/結合方法及びプログラム
DE102007015535A1 (de) * 2007-03-30 2008-10-02 Siemens Ag Verfahren zur digitalen Speicherung von Daten auf einem Datenspeicher mit beschränktem verfügbarem Speicherplatz
US8266090B2 (en) * 2007-08-31 2012-09-11 Fair Isaac Corporation Color-coded visual comparison of decision logic
US8200609B2 (en) * 2007-08-31 2012-06-12 Fair Isaac Corporation Construction of decision logic with graphs
US8730241B2 (en) * 2008-09-08 2014-05-20 Fair Isaac Corporation Techniques for drawing curved edges in graphs
US8280836B2 (en) * 2008-09-08 2012-10-02 Fair Isaac Corporation Converting unordered graphs to oblivious read once ordered graph representation
JP2010152081A (ja) * 2008-12-25 2010-07-08 Toshiba Corp 話者適応装置及びそのプログラム
GB2473197A (en) 2009-09-02 2011-03-09 Nds Ltd Advert selection using a decision tree
JP5032602B2 (ja) * 2010-01-21 2012-09-26 株式会社東芝 認識装置
US8543517B2 (en) 2010-06-09 2013-09-24 Microsoft Corporation Distributed decision tree training
CN101950307B (zh) * 2010-09-26 2012-10-10 南威软件股份有限公司 一种面向用户资源的自定义方法
US9171264B2 (en) 2010-12-15 2015-10-27 Microsoft Technology Licensing, Llc Parallel processing machine learning decision tree training
US8488888B2 (en) 2010-12-28 2013-07-16 Microsoft Corporation Classification of posture states
US8984246B2 (en) * 2011-04-04 2015-03-17 Texas Instruments Incorporated Method, system and computer program product for reading a decision tree
US10671841B2 (en) 2011-05-02 2020-06-02 Microsoft Technology Licensing, Llc Attribute state classification
US9280575B2 (en) * 2012-07-20 2016-03-08 Sap Se Indexing hierarchical data
US9336192B1 (en) * 2012-11-28 2016-05-10 Lexalytics, Inc. Methods for analyzing text
CN103854643B (zh) * 2012-11-29 2017-03-01 株式会社东芝 用于合成语音的方法和装置
US9305036B2 (en) 2014-03-27 2016-04-05 International Business Machines Corporation Data set management using transient data structures
US10108608B2 (en) * 2014-06-12 2018-10-23 Microsoft Technology Licensing, Llc Dialog state tracking using web-style ranking and multiple language understanding engines
US10339465B2 (en) * 2014-06-30 2019-07-02 Amazon Technologies, Inc. Optimized decision tree based models
US20160063099A1 (en) * 2014-08-29 2016-03-03 Lexmark International Technology, SA Range Map and Searching for Document Classification
US9619165B1 (en) * 2015-10-30 2017-04-11 Sandisk Technologies Llc Convertible leaf memory mapping
CN110555205B (zh) * 2018-05-31 2024-04-19 北京京东尚科信息技术有限公司 否定语义识别方法及装置、电子设备、存储介质
US10997083B2 (en) * 2018-09-04 2021-05-04 Arm Limited Parallel page table entry access when performing address translations
KR20210033258A (ko) 2019-09-18 2021-03-26 삼성전자주식회사 시퀀스 처리 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5033087A (en) 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
GB2277387A (en) 1993-04-21 1994-10-26 Ibm Natural language processing system
EP0586086B1 (en) 1992-08-07 1999-06-23 AT&T Corp. Storing trees in navigable form
US6163769A (en) 1997-10-02 2000-12-19 Microsoft Corporation Text-to-speech using clustered context-dependent phoneme-based units

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4571679A (en) * 1983-09-06 1986-02-18 The United States Of America As Represented By The Secretary Of The Navy Fault tree data array
US5619615A (en) * 1994-07-22 1997-04-08 Bay Networks, Inc. Method and apparatus for identifying an agent running on a device in a computer network
TW422967B (en) * 1998-04-29 2001-02-21 Matsushita Electric Ind Co Ltd Method and apparatus using decision trees to generate and score multiple pronunciations for a spelled word
US6411957B1 (en) * 1999-06-30 2002-06-25 Arm Limited System and method of organizing nodes within a tree structure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5033087A (en) 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
EP0586086B1 (en) 1992-08-07 1999-06-23 AT&T Corp. Storing trees in navigable form
GB2277387A (en) 1993-04-21 1994-10-26 Ibm Natural language processing system
US6163769A (en) 1997-10-02 2000-12-19 Microsoft Corporation Text-to-speech using clustered context-dependent phoneme-based units

Also Published As

Publication number Publication date
FI118062B (fi) 2007-06-15
EP1618498A1 (en) 2006-01-25
CN1781102A (zh) 2006-05-31
WO2004097673A1 (en) 2004-11-11
US7574411B2 (en) 2009-08-11
CN1781102B (zh) 2010-05-05
FI20035055A0 (fi) 2003-04-30
DE602004023072D1 (de) 2009-10-22
KR20070094984A (ko) 2007-09-27
KR20060016758A (ko) 2006-02-22
ATE442642T1 (de) 2009-09-15
FI20035055A (fi) 2004-10-31
US20040267785A1 (en) 2004-12-30
EP1618498B1 (en) 2009-09-09

Similar Documents

Publication Publication Date Title
KR100883577B1 (ko) 로우메모리 결정트리
Teahan et al. A compression-based algorithm for Chinese word segmentation
CA1242028A (en) Speech recognition system with efficient storage and rapid assembly of phonological graphs
US6501833B2 (en) Method and apparatus for dynamic adaptation of a large vocabulary speech recognition system and for use of constraints from a database in a large vocabulary speech recognition system
US5835888A (en) Statistical language model for inflected languages
US20030046078A1 (en) Supervised automatic text generation based on word classes for language modeling
KR20080069990A (ko) 음성 세그먼트 색인 및 검색 방법과 컴퓨터 실행 가능명령어를 갖는 컴퓨터 판독 가능 매체
JPH08194719A (ja) 検索装置および辞書/テキスト検索方法
CN112199945A (zh) 一种文本纠错的方法和装置
JP2002531892A (ja) テキストの自動区分
WO2004027752A1 (en) Method and apparatus to facilitate correlating symbols to sounds
WO2004066594A2 (en) Word recognition consistency check and error correction system and method
US20110320464A1 (en) Retrieval device
CN106776548A (zh) 一种文本的相似度计算的方法和装置
JPWO2009016729A1 (ja) 音声認識用照合ルール学習システム、音声認識用照合ルール学習プログラムおよび音声認識用照合ルール学習方法
US20030088416A1 (en) HMM-based text-to-phoneme parser and method for training same
Bahl et al. Recognition of continuously read natural corpus
Pereira et al. Beyond word n-grams
US20030105633A1 (en) Speech recognition with a complementary language model for typical mistakes in spoken dialogue
Sorensen et al. Unary data structures for language models
KR20120052591A (ko) 연속어 음성인식 시스템에서 오류수정 장치 및 방법
US6757647B1 (en) Method for encoding regular expressions in a lexigon
M Noaman et al. A hybrid approach for automatic morphological diacritization of Arabic text
KR100908444B1 (ko) 음소 인식 기반의 탐색공간 제한을 이용한 연속음성인식장치 및 방법
Suontausta et al. Low memory decision tree method for text-to-phoneme mapping

Legal Events

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

Payment date: 20130117

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140120

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150119

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160119

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee