KR101279676B1 - 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치 - Google Patents

언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치 Download PDF

Info

Publication number
KR101279676B1
KR101279676B1 KR1020077030209A KR20077030209A KR101279676B1 KR 101279676 B1 KR101279676 B1 KR 101279676B1 KR 1020077030209 A KR1020077030209 A KR 1020077030209A KR 20077030209 A KR20077030209 A KR 20077030209A KR 101279676 B1 KR101279676 B1 KR 101279676B1
Authority
KR
South Korea
Prior art keywords
cluster
words
character string
speech
pronunciation
Prior art date
Application number
KR1020077030209A
Other languages
English (en)
Other versions
KR20080021692A (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 KR20080021692A publication Critical patent/KR20080021692A/ko
Application granted granted Critical
Publication of KR101279676B1 publication Critical patent/KR101279676B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • G06F40/129Handling non-Latin characters, e.g. kana-to-kanji conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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

Abstract

종래의 유니그램(unigram)으로의 백오프에 의해 발생하는 품질 저하를 방지할 수 있는 언어 모델을 생성하는 방법이 제공된다. 동일한 표기 및 발음을 가진 품사가 저장 장치(206)로부터 획득된다. 클러스터(204)는 이 획득된 품사를 결합함으로써 생성된다. 이 생성된 클러스터(204)는 저장 장치(206)에 저장된다. 또한, 클러스터를 분리하기 위한 명령어(212)가 입력될 때, 이 입력된 명령어(212)에 따라 저장 장치(206)에 저장된 클러스터가 분리된다(210). 저장 장치에 저장된 클러스터들 중 2개가 결합되고(218), 텍스트 코퍼스에 이 결합된 클러스터들이 발생할 확률이 계산된다(222). 결합된 클러스터는 계산된 확률을 나타내는 바이그램과 연관되고 저장 장치에 저장된다.
Figure R1020077030209
유니그램, 바이그램, 디스플레이, 가나-간지 변환

Description

언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및 그 장치{METHOD AND APPARATUS FOR CREATING A LANGUAGE MODEL AND KANA-KANJI CONVERSION}
본 발명은 언어 모델 생성 방법, 가나-간지(kana-kanji) 변환 방법 및 그 장치에 관한 것으로, 보다 상세히는, 텍스트의 피상적인 정보에 의해 정의된 클러스터를 생성하기 위한, 언어 모델 생성 방법, 가나-간지 변환 방법, 그 장치 및 컴퓨터-판독가능 저장 매체에 관한 것이다.
품사표를 이용하는 시스템으로서 레거시(Legacy) 가나-간지 변환 시스템이 공지되어 있다. 품사표는 품사 A 다음에 품사 B가 발생할 확률을 나타낸다. 다시 말하면, 품사표는 기본적으로 품사와 단어들의 그룹의 바이그램을 나타낸다. 이하, 이러한 품사와 단어들의 그룹을 클러스터 바이그램이라 칭한다. 품사는 형태론(단어 형태), 문법적인 기능(주어 또는 부사, 등) 및 의미적인 정보(고유 명사 또는 명사)의 혼합에 의한 단어 그루핑 관점의 단어 역할(behavior)의 추상화임에 유의한다.
한편, 음성 인식 분야에서 개발된 트리그램 언어 모델은 가나-간지 변환 시스템에 적용되기를 시도하였고, 이러한 시스템이 일부 구현되었다. 트리그램 언어 모델은 선행되는 특정 2개의 단어 다음에 오는 소정 단어의 발생 확률(트리그램)을 이용한다. 예를 들면, 2개의 단어 w1 및 w2 다음에 단어 w3이 발생할 확률 p는 p(w3 |w1 w2)로서 표현된다.
트리그램은 단어 그룹 레벨에서가 아닌 단어 레벨에서 언어 현상을 포착한다. 그러므로, 이 현상을 포착하기에 보다 효율적이다. 트리그램 언어 모델은 임의의 깊은 의미적 또는 문법적 추상화가 아닌 오직 피상적인 정보만을 이용하여 사람 언어에서의 단어의 역할을 포착함을 유의한다.
언어 모델 기술은 자신의 분석 레벨 때문에 레거시(legacy) 기술보다 더 높은 정확도를 보장한다.
그러나, 이 기술은 후술될 바와 같은 단점을 가진다. 종래의 언어 모델 엔진은 트리그램 또는 바이그램이 충분히 신뢰될만한 확률을 가지고 있지 않는 경우에는 유니그램(unigram)으로의 백오프(backoff)를 이용한다. 즉, p(w3 |w1 w2)가 신뢰되지 않을 경우, 바이그램 p(w3|w2)에 리조트(resort)한다. 그 다음, p(w3|w2)가 신뢰되지 않을 경우, 유니그램 p(w3)에 리조트한다. 예를 들어, 트리그램과 바이그램이 0이기 때문에 유니그램으로의 백오프가 수행된다면, w2의 발생 확률 p는 다음과 같이 작성된다:
P(w3)=p(w3|w1 w2)
=p(w3|w2) p(w3|w1 w2)가 너무 작아 신뢰될 수 없는 경우.
=p(w3) p(w3|w2)가 너무 작아 신뢰될 수 없는 경우.
그러나, 종래의 유니그램으로의 백오프는, 유니그램이 하나의 단어의 발생만을 나타내고 문맥적인 정보는 어떠한 종류도 고려하지 않기 때문에, 심각한 오류를 발생시킬 수 있다.
반면에, 레거시 가나-간지 변환 시스템은 상술한 품사의 클러스터 바이그램을 이용한다. 이 시스템은 항상 문맥적 정보(즉, 선행 단어의 품사 또는 후속 단어의 품사)를 이용한다.
그러므로, 종래의 언어 모델 엔진은 문맥적인 정보를 이용하는 레거시 가나-간지 변환 엔진으로부터의 몇 가지 최악의 상황에서는 성능이 저하된다. 이는 사용자가 레거시 시스템을 트리그램 가나-간지 변환 시스템으로 업그레이드하지 못하게 하는 결정적인 요인이다.
한편, 품사를 이용하는 통상적인 단어 그루핑에는 다른 단점이 있다. 정확한 품사는 사람의 의미적인 지식을 필요로 할 수 있다. 예를 들면, 단어 "Akita"는 지명이 될 수도 있거나, 사람 이름이 될 수도 있지만, 사람만이 이 중 어느 것이 맞는지를 판단할 수 있다.
이와 같이, 레거시 가나-간지 변환 시스템에서 품사를 이용하는 종래의 단어 그루핑은 통계적인 계산에 적응되지 않는다.
본 발명은, 유니그램으로의 백오프에 의해 발생하는 품질 저하를 방지할 수 있는, 언어 모델 생성 방법, 가나-간지 변환 방법, 그 장치 및 컴퓨터-판독가능 저장 매체를 제공한다.
본 발명은 또한, 단어 그룹이 통계적 계산용으로 구성된 품사를 이용하는, 언어 모델 생성 방법, 가나-간지 변환 방법, 그 장치 및 컴퓨터-판독가능 저장 매체를 제공한다.
본 발명의 일 양태에 따르면, 저장 장치에 표기, 발음 및 품사와 관련된 단어들을 포함하는 컴퓨터를 이용하여 언어 모델을 생성하기 위한 방법이 제공되는데, 컴퓨터의 처리 장치에 의해 수행되는 이 방법은 저장 장치로부터 동일한 표기 및 발음을 가지는 품사를 획득하는 단계, 획득된 품사를 결합함으로써 클러스터(cluster)를 생성하는 단계, 및 저장 장치에 생성된 클러스터를 저장하는 단계를 포함한다.
이 방법은 클러스터를 분리하기 위한 명령어를 입력하는 단계, 및 입력된 명령어에 따라 저장 장치에 저장된 클러스터를 분리하는 단계를 더 포함할 수 있다.
이 방법은 캐릭터 스트링을 입력하는 단계, 입력된 캐릭터 스트링에 포함된 각 단어에 품사를 할당함으로써 텍스트 코퍼스(corpus)를 획득하는 단계, 저장 장치에 저장된 2개의 클러스터를 결합하는 단계, 텍스트 코퍼스에 결합된 클러스터가 발생할 확률을 계산하는 단계, 및 계산된 확률을 나타내는 클러스터 바이그램과 결합된 클러스터를 연관시키고 클러스터 바이그램과 연관된 결합된 클러스터를 저장 장치에 저장하는 단계를 더 포함할 수 있다.
본 발명의 다른 양태에 따르면, N개의 단어들의 조합이 발생할 확률을 나타내는 N그램, 및 품사의 2개의 클러스터들의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 가지는 컴퓨터에 의한 가나-간지 변환 방법이 제공되는데, 클러스터들 중 적어도 하나는 적어도 2개의 품사를 포함하고, 이 방법은 캐릭터 스트링의 발음을 입력하는 단계; 입력된 발음을 분리하는 단계; 변환된 캐릭터 스트링에 대한 후보를 생성하기 위해 상기 분리된 발음을 가나 또는 간지로 변환하는 단계; 변환된 캐릭터 스트링에 대한 후보에 포함된 N개의 단어의 조합이 발생할 확률을 나타내는 N 그램을 획득하는 단계; 변환된 캐릭터 스트링에 대한 후보에 포함된 2개의 클러스터의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 획득하는 단계; 획득된 N그램 및 클러스터 바이그램에 따라 변환된 캐릭터 스트링에 대한 후보들의 우선 순위 순서를 결정하는 단계를 포함한다.
본 발명의 다른 실시예에 따르면, 표기, 발음 및 품사에 관련된 단어에 대한 정보를 저장하기 위한 저장 수단; 저장 수단으로부터 동일한 표기 및 발음을 가지는 품사를 획득하기 단어 획득 수단; 획득된 품사를 결합함으로써 클러스터를 생성하기 위한 클러스터 생성 수단; 및 생성된 클러스터를 저장 장치에 저장하기 위한 클러스터 저장 제어 수단을 포함하는 언어 모델을 생성하기 위한 장치가 제공된다.
본 발명의 다른 실시예에 따르면, N개의 단어들의 조합이 발생할 확률을 나타내는 N그램, 및 품사의 2개의 클러스터들의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 저장하기 위한 저장 수단 - 클러스터들 중 적어도 하나는 적어도 2개의 품사를 포함함 - ; 캐릭터 스트링의 발음을 입력하기 위한 발음 입력 수단; 입력된 발음을 분리하기 위한 발음 분리 수단; 변환된 캐릭터 스트링에 대한 후보를 생성하기 위해 분리된 발음을 가나 또는 간지로 변환하기 위한 후보 생성 수단; 변환된 캐릭터 스트링에 대한 후보에 포함된 N개의 단어의 조합이 발생할 확률을 나타내는 N 그램을 획득하기 위한 N그램 획득 수단; 변환된 캐릭터 스트링에 대한 후보에 포함된 2개의 클러스터의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 획득하기 위한 클러스터 바이그램 획득 수단; 및 획득된 N그램 및 클러스터 바이그램에 따라 변환된 캐릭터 스트링에 대한 후보의 우선 순위 순서를 결정하기 위한 결정 수단을 포함하는 가나-간지 변환 장치가 제공된다.
본 발명의 다른 양태에 따르면, 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체가 제공되는데, 이 컴퓨터 실행가능 명령어는 컴퓨터가 상술한 방법을 수행하도록 한다.
본 발명은 품사에 기초하지만 기기가 포착하기에는 어려웠던 의미/문법적인 구별들을 병합하는 새로운 클러스터링 방식을 제공한다. 클러스터들은 기기에 의해 구별되고 처리될 수 있는 텍스트의 피상적인 특성들에 의해서만 구성된다. 본 발명은 유니그램으로의 백오프를 새로운 클러스터 바이그램으로의 백오프로 교체한다. 최악일 경우의 마지막 리조트가 클러스터 바이그램이기 때문에, 단어의 문맥을 고려할 수 있다.
트래그램 언어 모델의 마지막 리조트 수단으로서 품사에 기초하는 최적의 클러스터를 이용함으로써, 본 발명은 보다 높은 품질을 제공할 수 있다.
또한, 본 발명의 언어 모델링 기술은 컴퓨터에 의해 통계적으로 처리될 수 있는 품사의 클러스터들을 작성하기 때문에 레거시 기술보다 더 높은 정확도를 보장한다.
본 발명의 상술한 및 다른 목적, 효과, 특징, 및 이점은 첨부된 도면에 관련하여 이루어진 이하의 본 발명의 실시예의 설명으로부터 보다 명백해질 것이다.
도 1은 본 발명을 구현하는 예시적인 환경의 블록도.
도 2는 본 발명의 일 실시예에 따른 언어 모델을 생성하기 위한 장치의 기능적 구성의 개략적인 블록도.
도 3은 사전의 정보를 개념적으로 나타내는 도면.
도 4는 본 발명에 따른 언어 모델을 생성하기 위한 절차를 나타내는 흐름도.
도 5는 사전에 부여되는 클러스터의 일례를 도시하는 도면.
도 6은 컴퓨터에 의한 전산처리가능 레벨로 클러스터를 분리하는 절차의 일례를 나타내는 흐름도.
도 7은 본 발명의 일 실시예에 따른 언어 모델을 생성하기 위한, 장치에 생성된 클러스터로부터 클러스터 바이그램을 계산하기 위한 절차를 나타내는 흐름도.
도 8은 본 발명의 일 실시예에 따른 클러스터 바이그램을 이용하는 가나-간지 변환 장치의 기능적인 구성을 도시하는 블록도.
도 9는 본 발명의 일 실시예에 따른 가나-간지 변환 장치에 의해 수행되는 가나-간지 변환 방법의 절차를 도시하는 도면.
이제, 본 발명의 바람직한 실시예가 도면을 참조하여 다음에 기술될 것이다.
본 발명의 일 실시예에 따르면, 통상적으로, 본원에 기술된 방법이 하나의 자립형 컴퓨터 시스템에서 구현될 수 있지만, 분산 컴퓨터 네트워크를 형성하기 위해 상호접속된 복수의 컴퓨터 시스템에서 구현될 수도 있다.
본 발명을 구현하는 환경(400)은 도 1에 도시된다. 환경(400)은 메인 컴퓨터 시스템이라 고려되는 컴퓨터 시스템(410)이다. 본원에 이용되는, 용어 "컴퓨터 시스템"은 넓은 의미로 해석되며, "텍스트, 그래픽, 심볼, 오디오, 비디오 및/또는 숫자를 디스플레이하고 동작시키기 위한 프로그램을 실행하는 하나 이상의 장치 또는 기기"로서 정의된다.
본 발명은 많은 기타 범용 또는 특수 목적의 컴퓨팅 시스템 환경 또는 구성에서 동작할 수 있다. 본 발명에서 사용하는 데 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 태블릿 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 셋톱 박스, 프로그램가능한 가전제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
본 발명은 일반적으로 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 개체, 컴포넌트, 데이터 구조 등을 포함한다. 본 발명은 또한 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 비롯한 로컬 및 원격 컴퓨터 저장 매체 둘 다에 위치할 수 있다.
도 1과 관련하여, 본 발명을 구현하는 예시적인 시스템은 컴퓨터(410) 형태 의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(410)의 컴포넌트들은 처리 장치(420), 시스템 메모리(430), 및 시스템 메모리를 비롯한 각종 시스템 컴포넌트들을 처리 장치(420)에 연결시키는 시스템 버스(421)를 포함할 수 있지만 이에 제한되는 것은 아니다. 시스템 버스(421)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 예로서, 이러한 아키텍처는 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, EISA(Enhanced ISA) 버스, VESA(Video Electronics Standard Association) 로컬 버스, AGP(Accelerated Graphics Post) 버스, 그리고 메자닌 버스(Mezzanine bus)로도 알려진 PCI(Peripheral Component Interconnect) 버스 등을 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(410)는 통상적으로 각종 컴퓨터 판독가능 매체를 포함한다. 컴퓨터(410)에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체를 포함한다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스 크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(410)에 의해 액세스되고 원하는 정보를 저장하는 데에 이용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체를 포함한다. 피변조 데이터 신호라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함하지만 이에 제한되지 않는다. 상술된 매체들의 모든 조합이 또한 컴퓨터 판독가능 매체의 영역 안에 포함되는 것으로 한다.
시스템 메모리(430)는 판독 전용 메모리(ROM)(431) 및 랜덤 액세스 메모리(RAM)(432)와 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(410) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(433)은 통상적으로 ROM(431)에 저장되어 있다. RAM(432)은 통상적으로 처리 장치(420)가 즉시 액세스 할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 1은 운영 체제(434), 파일 시스템(435), 애플리케이션 프로그램(436), 기타 프로그램 모듈(437) 및 프로그램 데이터(438)를 도시하고 있지만 이 에 제한되는 것은 아니다.
컴퓨터(410)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매체를 포함할 수 있다. 단지 예로서, 도 1은 비이동식·비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(441), 이동식·비휘발성 자기 디스크(452)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(451), CD-ROM 또는 기타 광 매체 등의 이동식·비휘발성 광 디스크(456)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(455)를 도시한다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(441)는 통상적으로 인터페이스(440)와 같은 비이동식 메모리 인터페이스를 통해 시스템 버스(421)에 접속되고, 자기 디스크 드라이브(451) 및 광 디스크 드라이브(455)는 통상적으로 인터페이스(450)와 같은 이동식 메모리 인터페이스에 의해 시스템 버스(421)에 접속된다.
위에서 설명되고 도 1에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(410)를 위해, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(441)는 운영 체제(444), 애플리케이션 프로그램(445), 기타 프로그램 모듈(146), 및 프로그램 데이터(447)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(434), 애플리케이션 프로그램(436), 기타 프로그램 모 듈(437), 및 프로그램 데이터(438)와 동일하거나 그와 다를 수 있다는 것이다. 이에 관해, 운영 체제(444), 애플리케이션 프로그램(445), 기타 프로그램 모듈(146) 및 프로그램 데이터(447)에 다른 번호가 부여되어 있다는 것은 적어도 이들이 다른 사본(copy)이라는 것을 나타내기 위한 것이다. 사용자는 키보드(462), 마이크(463), 태블릿(전자 디지타이저)(464), 및 일반적으로 마우스, 트랙볼(trackball) 또는 터치 패드라 불리우는 포인팅 장치(461) 등의 입력 장치를 통해 명령 및 정보를 컴퓨터(410)에 입력할 수 있다. 다른 입력 장치(도시 생략)로는 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스에 결합된 사용자 입력 인터페이스(460)를 통해 처리 장치(420)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus) 등의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 모니터(491) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(490) 등의 인터페이스를 통해 시스템 버스(421)에 접속된다. 모니터(491)는 또한 터치-스크린 인터페이스 등의 인터페이스를 통해 컴퓨터 시스템(410)에 수기(handwriting) 등의 디지털화된 입력을 입력할 수 있는 터치-스크린 패널 등과 통합될 수도 있다. 모니터 및/또는 터치 스크린 패널은 물리적으로는, 태블릿-유형의 퍼스널 컴퓨터에서와 같이, 컴퓨팅 장치(410)가 포함되는 하우싱(housing)에 연결될 수 있는데, 여기서 터치 스크린 패널은 본질적으로 태블릿(464)으로서 작용함을 유의한다. 또한, 컴퓨팅 장치(410) 등의 컴퓨터는, 출력 주변 장치 인터페이스(494) 등을 통해 접속될 수 있는 스피커(495) 및 프린터(496) 등의 다른 주변 출력 장치도 포함할 수 있다.
컴퓨터(410)는 원격 컴퓨터(480)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(480)는 또 하나의 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 통상적으로 컴퓨터(410)와 관련하여 상술된 구성요소들의 대부분 또는 그 전부를 포함할 수 있지만 도 1에는 메모리 저장 장치(481)가 도시되어 있다. 도 1에 도시된 논리적 접속으로는 LAN(471) 및 WAN(473)이 있지만, 기타 네트워크를 포함할 수도 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(410)는 네트워크 인터페이스 또는 어댑터(470)를 통해 LAN(471)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(410)는 통상적으로 인터넷과 같은 WAN(473)을 통해 통신을 설정하기 위한 모뎀(472) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(472)은 사용자 입력 인터페이스(460) 또는 기타 적절한 메커니즘을 통해 시스템 버스(421)에 접속될 수 있다. 네트워크화된 환경에서, 컴퓨터(410) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다. 예로서, 도 1은 원격 애플리케이션 프로그램(485)이 메모리 장치(481)에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 이해할 것이다.
본 발명의 실시예는 이러한 컴퓨터 환경을 염두해 두고 실시예를 실행하기 위한 처리를 구현하기 위하여 수행되는 논리적 동작에 관련하여 기술된다.
도 2는 본 발명의 실시예에 따른 언어 모델 생성 장치의 기능적인 구성을 도시하는 개략적인 블록도이다.
언어 모델 생성 장치(200)는 최소한 단어 획득 유닛(202), 클러스터 생성 유닛(204), 저장 유닛(206), 클러스터 저장 제어 유닛(208), 클러스터 분리 유닛(210), 명령어 입력 유닛(212), 캐릭터 스트링 입력 유닛(214), 텍스트 코퍼스(text corpus) 획득 유닛(216), 결합 유닛(218), 클러스터 바이그램 저장 제어 유닛(220) 및 계산 유닛(222)을 포함한다.
저장 유닛(206)은 하드 디스크 드라이브(441), 비휘발성 자기 디스크(452), 비휘발성 광 디스크(456) 등으로 구성되며, 적어도 사전 데이터를 저장한다. 사전은 표기(문자), 발음(표음문자로 표기됨), 및 품사를 서로 연관시키는 단어 정보를 포함한다.
언어 모델 생성 장치(200)의 다른 컴포넌트들의 기능은 도 1에 관련하여 기술된 시스템 메모리(430)에 저장된 프로그램 명령어를 실행하고 하드웨어 컴포넌트를 제어하는 처리 장치(420)에 의해 구현된다.
단어 획득 유닛(202)은 동일한 표기 및 발음을 가지는 품사를 획득한다.
클러스터 생성 유닛(204)는 단어 획득 유닛(202)에 의해 획득된 단어의 품사를 결합함으로써 클러스터를 생성한다.
클러스터 저장 제어 유닛(208)은 저장 유닛(206)에 클러스터 생성 유닛(204)이 생성된 클러스터들을 저장한다.
명령어 입력 유닛(212)은 마우스(461), 태블릿(464), 키보드(462), 사용자 입력 인터페이스(460) 등으로 구성되며 품사들에 관련하여 클러스터를 분리하라는 명령어를 입력한다.
클러스터 분리 유닛(210)은 명령어 입력 유닛(212)에 의해 입력된 명령어에 따라 저장 유닛(206)에 저장된 클러스터를 분리한다.
캐릭터 스트링 입력 유닛(214)은 비이동식 비휘발성 메모리 인터페이스(440), 이동식 비휘발성 메모리 인터페이스(450) 등으로 구성되고, 하드 디스크 드라이브(441), 비휘발성 자기 디스크(452), 및 비휘발성 광 디스크(456) 등에 저장된 캐릭터 스트링 데이터(예를 들면, 신문 기사에 포함된 캐릭터 스트링)를 입력한다.
텍스트 코퍼스 획득 유닛(216)은 캐릭터 스트링 입력 유닛(214)이 입력한 캐릭터 스트링에 포함된 단어 각각에 발음 및 품사를 부여함으로써 텍스트 코퍼스를 획득한다.
결합 유닛(218)은 저장 유닛(206)에 저장된 2개의 클러스터들을 결합한다.
계산 유닛(222)은 결합 유닛(218)에 의해 결합된 클러스터의 발생 확률을 계산한다.
클러스터 바이그램 저장 제어 유닛(220)은 결합 유닛(218)에 의해 결합된 클러스터를 계산 유닛(222)에 의해 계산된 확률을 나타내는 클러스터 바이그램과 결 합한다.
도 3은 저장 유닛(206)의 사전의 정보를 개념적으로 도시한다. 사전은 표기(
Figure 112012107938713-pct00001
), 발음(아끼따, 자오우) 및 품사(지명 및 사람 이름)를 포함한다. 보다 상세히는, 품사는 표기 및 발음과 연관된다. 이 도 3에 도시된 바와 같이, 표기
Figure 112012107938713-pct00002
와 발음(아끼따)의 결합은 2개의 품사와 관련된다.
도 4는 언어 모델 생성 장치(200)에 의해 수행되는 본 발명의 실시예에 따른 언어 모델을 생성하기 위한 절차를 나타내는 흐름도를 도시한다.
단계(S302)에서, 단어 획득 유닛(202)은 저장 유닛(206)으로부터 동일한 표기 및 발음을 가지는 단어의 품사를 획득한다. 도 3에 도시된 예에서는, 표기
Figure 112012107938713-pct00003
및 발음(아끼따)을 가지는 단어의 품사에 대한 정보가 획득될 수 있다. 단계(304S)에서, 클러스터 생성 유닛(204)은 이 획득된 단어의 품사를 OR 연산자를 이용하여 결합함으로써 클러스터를 생성한다. 도 5에 도시된 예에서는, 연장된 품사인 "사람 이름 또는 지명"의 클러스터가 생성된다. 새로운 ID가 생성된 클러스터에 할당된다.
상술한 바와 같이 생성된 클러스터는 사전에 저장된 각 단어에 대한 정보와 결합된다. 예를 들면, 클러스터 "사람 이름 또는 지명"은 표기
Figure 112012107938713-pct00004
및 발음"아끼따"을 가지는 단어에 할당된다.
단계(S306)에서, 클러스터 저장 제어 유닛(208)은 생성된 클러스터를 저장한다.
상술한 절차는 사전에 있는 모든 단어의 정보에 대한 조사가 완료될 때까지 반복한다.
도 6은 상술한 처리에 의해 생성된 클러스터를 분리하기 위한 절차의 일례의 흐름도를 도시하며, 컴퓨터가 언어 모델 생성 장치(200)의 통계적인 작업을 수행하는 데에 이러한 분리된 클러스터를 이용하도록 한다. 이러한 처리는 도 4에 도시된 처리에 의해 생성된 클러스터 모두에 대하여 실행될 수 있다.
대상이 되는 클러스터가 "품사 A 또는 품사 B"라 가정한다. 클러스터 A의 발생과 클러스터 B의 발생이 기계적으로 트레이닝 코퍼스의 피상적인 현상으로 식별될 수 있는 한, 클러스터는 2개의 분리된 클러스터 A 및 B로 분리된다.
예를 들면, 단어 "
Figure 112007092836076-pct00005
(아아)"의 품사는 감탄사라고 생각될 수도 있고 S형 불규칙 동사 변형을 가지는 동사 다음에 오는 부사라고 생각될 수도 있다. 이러한 단어가 코퍼스에 발생하고, "
Figure 112007092836076-pct00006
"("아아스레바요까따노니")와 같이, S형 불규칙 동사 변형을 가지는 단어가 단어 "
Figure 112007092836076-pct00007
" 다음에 온다면, 이 단어의 품사는 S형 불규칙 동사 변형이라고 판정될 수 있다. 이 경우, 클러스터 "감탄사 또는 S형 불규칙 동사 변형을 가지는 동사 다음에 오는 부사"는 "감탄사" 및 "S형 불규칙 동사 변형을 가지는 동사 다음에 오는 부사"로 분리될 수 있다.
반면에, 표기 "
Figure 112012107938713-pct00008
" 및 발음 "
Figure 112012107938713-pct00009
"을 가지는 단어의 품사가 사람 이름인지 지명인지를 판정하는 것은 불가능하다. 따라서, 이 단어의 품사는 연장된 품사 "사람 이름 또는 지명"에 속하는 것으로 판정된다.
실제로, 영향을 계산함으로써 이 분리가 수행된다. 캐릭터 오류율을 이용하여 이 영향을 평가하기 위해 언어 모델은 추정된 분리에 의해 생성된다. 오류가 감소하였다면, 이 분리를 채택한다. 예를 들면, 단어 "
Figure 112007092836076-pct00010
"의 가능한 품사들을 병합함으로써 클러스터를 생성하였고, 평가를 했더니, 그 오류율이 3%라고 가정한다. 또한, 클러스터를 2개의 클러스터로 분리하고, 평가하였더니, 그 오류율이 2%라 가정하자. 이 경우, 오류율이 더 작게 나온 후자의 경우가 채택될 것이다.
단계(S602)에서, 명령어 입력 유닛(212)이 품사에 따라 클러스터를 분리하라는 명령어를 수신한다.
클러스터는 하나 이상의 OR 연산자를 이용하여 결합된 품사에 대한 정보이다. 여기서, 명령어는 복수의 품사를 그룹들로 분리하는 방식을 기술한다.
단계(S604)에서, 언어 모델 생성 장치(200)는 분리 전에 (도시되지 않은) 버퍼에 클러스터를 보유하고, 입력된 명령어에 따라 저장 유닛(206)에 저장된 클러스터를 분리한다.
각 분리된 클러스터에는 새로운 ID가 할당된다. 여기서, 이 그루핑 이후에 하나의 품사로 이루어진 클러스터가 생성되었다면, 통상적인 품사 ID가 클러스터에 부여될 것이다.
단계(S606)에서, 클러스터 분리 유닛(210)은 이 분리된 클러스터를 평가한다. 보다 구체적으로는, 이 분리된 클러스터를 자동으로 가나 또는 간지 스트링으 로 변환하고, 이 변환된 캐릭터 스트링을 미리 저장된 올바른 캐릭터 스트링과 비교하고, 결과로서 획득된 캐릭터 오류율을 계산한다. 몇 가지 분리 방식으로 분리된 클러스터에 대하여 이 동작을 수행하고, 가장 작은 오류율을 가지는 분리 방식이 결정된다.
그 다음, 단계(S608)에서, 분리된 클러스터가 이 분리 전의 클러스터보다 더 신뢰되는지를 판정한다. 더 신뢰된다면, 처리는 단계(S602)로 진행하고, 클러스터의 분리를 더 수행한다. 반면에, 분리된 클러스터가 신뢰될 수 없다고 판정되는 경우, 이 분리된 클러스터는 버려지고 버퍼에 저장된 클러스터가 가장 작은 그룹이라 판정된다.
도 7을 참조하여, 언어 모델 생성 장치(200)에 의해 생성된 클러스터로부터 클러스터 바이그램을 계산하기 위한 절차가 기술된다.
단계(S702)에서, 캐릭터 스트링 입력 유닛(214)은 캐릭터 스트링의 입력을 수신한다.
단계(S704)에서, 입력된 캐릭터 스트링에 포함된 각각의 단어에 발음 및 품사를 부여함으로써 텍스트 코퍼스가 생성된다. 이 부여된 품사는 연장된 품사가 아님을 유의한다.
덧붙이자면, 일반적인 텍스트 코퍼스 획득 시에, 발음 및 품사가 자동으로 단어에 추가되며, 그 다음, 텍스트 코퍼스 획득 유닛(216)은 사용자의 조작 하에 잘못 추가된 정보를 수정한다.
단계(S706)에서, 계산 유닛(222)은 저장 유닛(206)에 저장된 2개의 클러스터 를 결합한다. 그 다음 이 유닛은 텍스트 코퍼스에서의, 결과적으로 결합된 클러스터의 발생 확률(클러스터 바이그램)을 계산한다.
단계(708)에서, 결합된 클러스터는 계산된 확률을 나타내는 클러스터 바이그램에 관련하여 저장 유닛(206)에 저장된다. 여기서, 클러스터 바이그램에 대한 정보는 숫자 값이 아닌 소정의 심볼일 수 있다.
상술한 처리는 최적의 클러스터화를 제공할 수 있다.
도 8은 상술한 바와 같이 생성된 클러스터 바이그램을 포함하는 언어 모델을 이용하여 가나-간지 변환을 수행하는 가나-간지 변환 장치의 기능적 구성의 일례를 도시하는 블록도이다.
가나-간지 변환 장치(800)는 발음 입력 유닛(802), 발음 분리 유닛(804), 후보 생성 유닛(806), 저장 유닛(808), 트리그램 획득 유닛(810), 바이그램 획득 유닛(812), 클러스터 바이그램 획득 유닛(814), 결정 유닛(816), 및 디스플레이 유닛(818)을 포함한다.
저장 유닛(808)은 상술한 처리에 의해 생성된 클러스터 바이그램, 3개의 단어들의 결합의 발생 확률을 나타내는 트리그램, 및 2개의 단어들의 결합 발생 확률을 나타내는 바이그램을 저장한다.
발음 입력 유닛(802)은 마우스(461), 태블릿(464), 키보드(462), 사용자 입력 인터페이스 등으로 구성되며, 캐릭터 스트링의 발음을 입력한다.
발음 분리 유닛(804)은 발음 입력 유닛(802)에 의해 입력된 캐릭터 스트링의 발음을 분리한다.
후보 생성 유닛(806)은 발음 분리 유닛(804)에 의해 분리된 발음을 가나 또는 간지로 변환하여 변환된 캐릭터 스트링에 대한 후보를 생성한다.
트리그램 획득 유닛(810)은 저장 유닛(808)에 저장된 트리그램으로부터 소정의 조건을 만족시키는 값을 획득한다.
바이그램 획득 유닛(812)은 저장 유닛(808)에 저장된 바이그램으로부터 소정의 조건을 만족시키는 값을 획득한다.
클러스터 바이그램 획득 유닛(814)은 저장 유닛(808)에 저장된 클러스터 바이그램으로부터 소정의 조건을 만족시키는 값을 획득한다.
결정 유닛(816)은 저장 유닛(808)으로부터 획득한 트리그램, 바이그램, 및 클러스터 바이그램에 따라 가나-간지 변환된 캐릭터 스트링에 대한 후보자의 우선순위를 결정한다.
도 9를 참조하여, 가나-간지 변환 장치(800)에 의해 실행되는 N그램(트리그램 및 바이그램)을 이용하는 가나-간지 변환 방법의 절차가 이하 기술된다.
이 실시예에서, 트리그램 및 바이그램이 모두 0일 경우 클러스터 바이그램으로의 백오프가 수행된다. 이 경우, p는 다음과 같이 표기될 수 있다.
p(w3)=p(w3|w1 w2)
=p(w3|w2) p(w3|w1 w2)가 너무 작아 신뢰될 수 없는 경우
=P(Ci|Ci -1)P(wi|Ci) p(w3|w2)가 너무 작아 신뢰될 수 없는 경우
Figure 112007092836076-pct00011
여기서, w1, w2, 및 w3은 각각 단어들을 나타내고, Ci는 클러스터를 나타낸다. 또한, P(Ci|Ci -1)는 Ci -1이 Ci 이전에 있는 경우의 클러스터 Ci의 발생 확률을 나타낸다.
Figure 112007092836076-pct00012
는 Ci의 단어가 Wi일 확률이다.
마지막 공식의 왼쪽 항은, P(Ci|Ci -1)은 Ci이 Ci -1 다음에 올 경우의 수를 Ci -1의 발생 횟수로 나눈 것임을 나타낸다. 마찬가지로, 마지막 공식의 오른쪽 항에서는, P(wi|Ci)는 단어 wi의 발생 횟수를 Ci의 발생 횟수로 나눈 것(즉, 클러스터 Ci에 속하는 모든 단어의 발생)이다.
단계(S902)에서, 발음 입력 유닛(802)은, 예를 들면, 가나 스트링의 형태로 캐릭터 스트링의 발음을 입력한다.
단계(S904)에서, 발음 분리 유닛(804)은 입력된 캐릭터 스트링의 발음을 분리한다.
단계(S906)에서, 후보 생성 유닛(806)은 분리된 발음을 가나 또는 간지로 변환하여 변환된 캐릭터 스트링의 후보를 생성한다.
단계(S908)에서, 트리그램 획득 유닛(810)은 저장 유닛(808)으로부터, 생성된 캐릭터 스트링의 각 후보에 포함된 3개의 단어 시퀀스의 발생 확률을 나타내는 트리그램을 획득한다.
단계(S910)에서, 트리그램 획득 유닛(810)은 획득된 확률이 소정의 값 Ta 이하인지를 판정한다. 그 확률이 Ta보다 작다면, 처리는 단계(S912)로 진행한다. 바이그램 획득 유닛(812)은 저장 유닛(808)으로부터, 단계(S910)에서 판정된 3개의 단어에 포함된 2개의 단어의 순서 발생 확률을 나타내는 바이그램을 획득한다.
단계(S914)에서, 획득된 바이그램이 소정의 값 Tb 이하인지 아닌지를 판정한다. 바이그램이 Tb 이하인 경우, 처리는 단계(S918)로 진행한다. 그 다음 클러스터 바이그램 획득 유닛(814)은 저장 유닛(808)으로부터의 그 순서로 된 2개의 단어에 대응하는 클러스터들의 순서 발생 확률을 나타내는 클러스터 바이그램을 획득한다.
단계(S920)에서, 결정 유닛(816)은 획득된 트리그램, 바이그램 또는 클러스터 바이그램에 따라 후보들의 우선 순위를 결정하고, 이러한 우선 순위 순서에 따라 변환된 캐릭터 스트링에 대한 후보들을 정렬한다.
단계(S922)에서, 결정 유닛(816)은 변환된 캐릭터 스트링을 우선 순위 순서에 기초하여 정렬된 순서로 디스플레이(818)에 디스플레이한다.
예를 들면, 단계(S902)에서 발음 "마끼꼬까이닌니"가 입력되었다고 가정하자.
이 경우, 입력된 발음은 다음과 같이 분리될 수 있다.
마끼꼬-까이닌-니
이 변환된 캐릭터 스트링에 대한 후보들은 다음을 포함할 수 있다:
(
Figure 112007092836076-pct00013
또는
Figure 112007092836076-pct00014
) - (
Figure 112007092836076-pct00015
또는
Figure 112007092836076-pct00016
) - (
Figure 112007092836076-pct00017
또는
Figure 112007092836076-pct00018
)
다음의 표는 변환된 캐릭터 스트링에 대한 후보들의 조합의 트리그램의 예들을 나타낸다.
후보 확률
Figure 112007092836076-pct00019
다음의 표는 변환된 캐릭터 스트링에 대한 후보들의 조합의 예들을 나타낸다.
후보 확률
Figure 112007092836076-pct00020
가나-간지 변환 장치(800)가 트리그램과 바이그램이 모두 신뢰될 수 없다고 판정한다면, 마지막 리조트로서 클러스터 바이그램으로의 백오프를 이용한다. 다음의 클러그터 바이그램이 제공된다고 가정한다.
클러스터 유형 확률
[M형(
Figure 112007092836076-pct00021
)의 5-단계 동사변형을 가지는 0
동사의 어간]-[S형
Figure 112007092836076-pct00022
의 불규칙
동사변형을 가지는 동사 다음에 오는 명사]
[넌
Figure 112007092836076-pct00023
]-[S형
Figure 112007092836076-pct00024
의 0.1
불규칙 동사변형을 가지는 동사 다음에
아무것도 오지 않음]
S형의 불규칙 동사변형을 가지는 동사 0.001
다음에 아무것도 오지 않는 경우의
Figure 112007092836076-pct00025
점유 확률
S형의 불규칙 동사변형을 가지는 동사 0.0001
다음에 아무것도 오지 않는 경우의
Figure 112007092836076-pct00026
의 점유 확률
상기 표를 참조해 보면,
Figure 112007092836076-pct00027
에 대한 확률은 {[넌
Figure 112007092836076-pct00028
] - S형
Figure 112007092836076-pct00029
의 불규칙 동사변형을 가지는 동사 다음에 아무것도 오지 않음]의 확률}*[S형의 불규칙 동사변형을 가지는 동사 다음에 아무것도 오지 않는 경우의
Figure 112007092836076-pct00030
점유 확률]=0.1*0.001=0.0001이고 상기 순서로 된 2개의 단어에서 가장 높은 확률이다. 이와 같이, 클러스터 바이그램으로의 백오프를 이용하는 것은 S형의 불규칙 동사변형을 가지는 동사 다음에 아무것도 오지 않음이 동사의 어간인 경 우의
Figure 112007092836076-pct00031
와 같이 변환에서의 오류를 억제할 수 있다.
상술한 처리에 따르면, 클러스터는 기기에 의해 구별될 수 있는 피상적인 특성에 기초하여 구성될 수 있다.
또한, 유니그램 대신에 클러스터 바이그램으로 백오프한다는 것은 클러스터 바이그램이 마지막 리조트임을 의미하기 때문에 이러한 가나-간지 변환은 문맥을 고려하면서 수행될 수 있다.
본원에 예시되고 설명된 방법의 실행 또는 구현 순서는 특정하게 지정되지 않는 한 중요한 것은 아니다. 즉, 본 발명자는 이들 방법의 구성요소들이 임의의 순서로 수행될 수 있고, 이들 방법은 특정하게 지정되지 않는 한 본원에 개시된 것들보다 많거나 적은 구성요소들을 포함할 수 있음을 고려한다.
본 발명의 일부 목적 및 다른 유리한 결과들이 상술한 설명을 고려하여 이루어질 수 있다고 이해되어야 한다.
상술한 구성 및 방법에서, 다양한 수정 사항이 본 발명의 실시예의 범위로부터 벗어나지 않고 이루어질 수 있다.
예를 들면, 도 2에 도시된 기능 블록은 도 4, 6, 및 7에 도시된 흐름도 그룹으로 분해될 수 있다. 그러므로, 이들은 도 4에 도시된 방법을 수행하기 위한 장치 도 6에 도시된 방법을 수행하기 위한 다른 장치, 및 도 7에 도시된 방법을 수행하기 위한 다른 장치로서 구성될 수 있다. 또한, 도 4, 6, 및 7에 도시된 방법들 중 임의의 조합을 수행하기 위한 장치를 구성하는 것도 가능하다.
또한, 도 2에 도시된 기능 및 도 8에 도시된 기능을 포함하는 장치를 구성하는 것도 가능하다.
더욱이, 상기 실시예는 도 9를 참조하고 임계치를 이용하여 차례대로 트리그램, 바이그램 및 클러스터 바이그램을 획득하기 위한 예를 기술하지만, 임계치를 이용하지 않고 트리그램, 바이그램, 및 클러스터 바이그램 모두를 계산한 이후에 가장 높은 확률을 결정에 이용하는 것도 가능하다.
더욱이, 상기 실시예는 트리그램, 바이그램 및 클러스터 바이그램을 이용하여 가나-간지 변환을 수행하는 예를 기술하였지만, 임의의 N그램 가나-간지 변환(N은 2 이상)에 클러스터 바이그램으로의 백오프를 채용함으로써 동일한 효과를 얻을 수 있다.
그러므로, 첨부된 도면에 도시된 모든 내용은 한정이 아닌 예시라고 해석되어야 함을 고려해야 한다.
본 발명은 바람직한 실시예에 관련하여 상세히 기술되었고, 이제 본원의 넓은 양태에 있는 본 발명으로부터 벗어나지 않는 변경 및 수정이 이루어질 수 있음이 당업자들에게 명백해질 수 있으며, 따라서, 본원의 진정한 사상 내에 포함되는 이러한 변경 및 수정 모두를 수용하는 명백한 특허 청구 범위 내에 있다고 의도된다.

Claims (7)

  1. 최초 입력 시스템(initial writing system) 내의 문자 스트링(a string of characters)을 일본어 입력 시스템 내의 변환된 문자 스트링으로 변환하는 방법으로서, 상기 방법은,
    상기 일본어 입력 시스템 내의 동일한 표기(display) 및 상기 최초 입력 시스템 내의 동일한 발음(reading)과 연관되나 상이한 품사(parts-of-speech)와 연관되는 일본어 단어의 세트를 식별하는 단계;
    상기 단어의 세트 내에 있는 단어들에 할당되는 클러스터(cluster)를 생성하는 단계 - 상기 클러스터는 상기 단어의 세트 내의 상기 단어들과 연관된 품사들 및 상기 품사들 간의 적어도 하나의 논리 연산자(logical operator)를 포함함 - ;
    상기 최초 입력 시스템 내의 상기 문자 스트링을 상기 일본어 입력 시스템 내의 변환된 문자 스트링으로 변환하는 프로세스에 상기 클러스터를 사용하는 단계;
    상기 클러스터의 분리에 대한 명령어를 수신하는 단계;
    상기 명령어에 따라 상기 클러스터를 분리하는 단계 - 상기 클러스터의 분리는 상기 클러스터와 연관된 단어들이 상기 클러스터에 대해 가능한 분리 중 가장 낮은 오류율과 연관된 적어도 두 개의 클러스터의 세트로 분리(division)되는 것을 식별하는 단계를 포함함 -
    를 포함하는, 문자 스트링 변환 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 단어의 세트는 단어의 제1 세트이고, 상기 클러스터는 제1 클러스터이고,
    상기 방법은,
    상기 일본어 입력 시스템 내의 동일한 표기(display) 및 상기 최초 입력 시스템 내의 동일한 발음(reading)과 연관되나 상이한 품사와 연관되는 일본어 단어의 제2 세트를 식별하는 단계;
    상기 단어의 제2 세트 내에 있는 단어들과 연관된 제2 클러스터를 생성하는 단계 - 상기 제2 클러스터는 상기 단어의 제2 세트 내의 단어들과 관련된 품사를 나타냄 - ;
    테스트 문자 스트링을 수신하는 단계;
    상기 테스트 문자 스트링 내에 포함된 단어들 각각에 대해 품사를 할당하는 것에 의해 텍스트 코퍼스(corpus)를 획득하는 단계;
    상기 제1 클러스터와 연관된 단어들과 상기 제2 클러스터와 연관된 단어들의 조합과 연관된 조합 클러스터(combined cluster)를 생성하는 단계;
    상기 텍스트 코퍼스 내에서의 상기 조합 클러스터와 연관된 단어들의 발생 확률을 계산하는 단계; 및
    상기 조합 클러스터를 상기 계산된 확률을 나타내는 클러스터 바이그램(cluster bigram)에 연관시키는 단계
    를 더 포함하고,
    상기 클러스터를 사용하는 단계는, 상기 최초 입력 시스템 내의 문자 스트링을 상기 일본어 입력 시스템 내의 상기 변환된 문자 스트링으로 변환하는 프로세스에 상기 클러스터 바이그램을 사용하는 것을 포함하는, 문자 스트링 변환 방법.
  4. N개의 단어들의 조합이 발생할 확률을 나타내는 N그램, 및 품사의 2개의 클러스터들의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 가지는 컴퓨터에 의한 가나-간지 변환 방법 - 상기 클러스터들 중 적어도 하나는 적어도 2개의 품사를 포함함 - 으로서,
    문자 스트링의 발음을 입력하는 단계;
    상기 입력된 발음을 분리하는 단계;
    변환된 문자 스트링에 대한 후보를 생성하기 위해 상기 분리된 발음을 가나 또는 간지로 변환하는 단계;
    상기 변환된 문자 스트링에 대한 상기 후보에 포함된 N개의 단어의 조합이 발생할 확률을 나타내는 N그램을 획득하는 단계;
    상기 변환된 문자 스트링에 대한 상기 후보에 포함된 2개의 클러스터의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 획득하는 단계; 및
    획득된 상기 N그램 및 클러스터 바이그램에 따라 상기 변환된 문자 스트링에 대한 후보들의 우선 순위 순서를 결정하는 단계
    를 포함하는 가나-간지 변환 방법.
  5. 최초 입력 시스템 내의 문자 스트링을 일본어 입력 시스템 내의 변환된 문자 스트링으로 변환하기 위한 장치로서,
    일본어 단어들의 세트 내의 단어들 각각에 대한 표기(display), 발음(reading) 및 품사를 저장하기 위한 저장 수단;
    상기 일본어 입력 시스템 내의 동일한 표기 및 상기 최초 입력 시스템 내의 동일한 발음과 연관되나 상이한 품사와 연관되는 상기 저장 수단 내의 단어들의 서브세트를 식별하기 위한 단어 획득 수단;
    상기 단어들의 서브세트 내에 있는 단어들과 연관된 상기 품사를 나타내는 클러스터를 생성하기 위한 클러스터 생성 수단;
    상기 저장 수단 내에 상기 클러스터를 저장하기 위한 클러스터 저장 제어 수단; 및
    상기 최초 입력 시스템 내의 문자 스트링을 상기 일본어 입력 시스템 내의 변환된 문자 스트링으로 변환하는 프로세스에 상기 클러스터를 사용하기 위한 변환 수단
    을 포함하는 문자 스트링 변환 장치.
  6. 가나-간지 변환 장치로서,
    N개의 단어들의 조합이 발생할 확률을 나타내는 N그램, 및 품사의 2개의 클러스터들의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 저장하기 위한 저장 수단 - 상기 클러스터들 중 적어도 하나는 적어도 2개의 품사를 포함함 - ;
    문자 스트링의 발음을 입력하기 위한 발음 입력 수단;
    입력된 상기 발음을 분리하기 위한 발음 분리 수단;
    변환된 문자 스트링에 대한 후보를 생성하기 위해 분리된 상기 발음을 가나 또는 간지로 변환하기 위한 후보 생성 수단;
    상기 변환된 문자 스트링에 대한 상기 후보에 포함된 N개의 단어의 조합이 발생할 확률을 나타내는 N 그램을 획득하기 위한 N그램 획득 수단;
    상기 변환된 문자 스트링에 대한 상기 후보에 포함된 2개의 클러스터의 조합이 발생할 확률을 나타내는 클러스터 바이그램을 획득하기 위한 클러스터 바이그램 획득 수단; 및
    획득된 상기 N그램 및 클러스터 바이그램에 따라 상기 변환된 문자 스트링에 대한 후보의 우선 순위 순서를 결정하기 위한 결정 수단
    을 포함하는 가나-간지 변환 장치.
  7. 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체로서,
    상기 컴퓨터 실행가능 명령어는 컴퓨터가 제1항 또는 제4항에 청구된 방법을 수행하도록 하는 컴퓨터 판독가능 저장 매체.
KR1020077030209A 2005-06-24 2006-06-23 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치 KR101279676B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00185765 2005-06-24
JP2005185765A JP4769031B2 (ja) 2005-06-24 2005-06-24 言語モデルを作成する方法、かな漢字変換方法、その装置、コンピュータプログラムおよびコンピュータ読み取り可能な記憶媒体
PCT/US2006/024566 WO2007002456A1 (en) 2005-06-24 2006-06-23 Method and apparatus for creating a language model and kana-kanji conversion

Publications (2)

Publication Number Publication Date
KR20080021692A KR20080021692A (ko) 2008-03-07
KR101279676B1 true KR101279676B1 (ko) 2013-06-27

Family

ID=37595458

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077030209A KR101279676B1 (ko) 2005-06-24 2006-06-23 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치

Country Status (6)

Country Link
US (1) US8744833B2 (ko)
EP (1) EP1886231A4 (ko)
JP (1) JP4769031B2 (ko)
KR (1) KR101279676B1 (ko)
CN (1) CN101208689B (ko)
WO (1) WO2007002456A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407223C (zh) * 2004-04-02 2008-07-30 诺基亚公司 一种用于手写识别的设备和方法
JP5228325B2 (ja) * 2007-01-25 2013-07-03 日本電気株式会社 日本語処理装置、日本語処理方法、および日本語処理用プログラム
GB2453366B (en) * 2007-10-04 2011-04-06 Toshiba Res Europ Ltd Automatic speech recognition method and apparatus
US8219407B1 (en) 2007-12-27 2012-07-10 Great Northern Research, LLC Method for processing the output of a speech recognizer
US9411800B2 (en) * 2008-06-27 2016-08-09 Microsoft Technology Licensing, Llc Adaptive generation of out-of-dictionary personalized long words
US8798983B2 (en) * 2009-03-30 2014-08-05 Microsoft Corporation Adaptation for statistical language model
JP5779032B2 (ja) * 2011-07-28 2015-09-16 株式会社東芝 話者分類装置、話者分類方法および話者分類プログラム
CN102436781B (zh) * 2011-11-04 2014-02-12 杭州中天微系统有限公司 基于隐式相关性和隐式旁路的微处理器指令拆分装置
CN103970798B (zh) * 2013-02-04 2019-05-28 商业对象软件有限公司 数据的搜索和匹配
US9727619B1 (en) * 2013-05-02 2017-08-08 Intelligent Language, LLC Automated search
US10073835B2 (en) * 2013-12-03 2018-09-11 International Business Machines Corporation Detecting literary elements in literature and their importance through semantic analysis and literary correlation
US9928232B2 (en) * 2015-02-27 2018-03-27 Microsoft Technology Licensing, Llc Topically aware word suggestions
CN106910501B (zh) * 2017-02-27 2019-03-01 腾讯科技(深圳)有限公司 文本实体提取方法及装置
CN109426358B (zh) * 2017-09-01 2023-04-07 百度在线网络技术(北京)有限公司 信息输入方法和装置
US10572586B2 (en) * 2018-02-27 2020-02-25 International Business Machines Corporation Technique for automatically splitting words
CN110111778B (zh) * 2019-04-30 2021-11-12 北京大米科技有限公司 一种语音处理方法、装置、存储介质及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835893A (en) * 1996-02-15 1998-11-10 Atr Interpreting Telecommunications Research Labs Class-based word clustering for speech recognition using a three-level balanced hierarchical similarity

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731677B2 (ja) * 1987-09-29 1995-04-10 シャープ株式会社 文書作成・校正支援装置
JPH01234975A (ja) * 1988-03-11 1989-09-20 Internatl Business Mach Corp <Ibm> 日本語文章分割装置
JPH08153090A (ja) * 1994-11-29 1996-06-11 Internatl Business Mach Corp <Ibm> かな漢字変換システム及びその辞書作成方法
JP2973944B2 (ja) * 1996-06-26 1999-11-08 富士ゼロックス株式会社 文書処理装置および文書処理方法
JPH11328179A (ja) * 1998-05-08 1999-11-30 Toshiba Corp 辞書管理方法及び辞書管理システム
US6490563B2 (en) * 1998-08-17 2002-12-03 Microsoft Corporation Proofreading with text to speech feedback
US6356866B1 (en) 1998-10-07 2002-03-12 Microsoft Corporation Method for converting a phonetic character string into the text of an Asian language
US6904405B2 (en) 1999-07-17 2005-06-07 Edwin A. Suominen Message recognition using shared language model
US7275029B1 (en) * 1999-11-05 2007-09-25 Microsoft Corporation System and method for joint optimization of language model performance and size
US6654744B2 (en) 2000-04-17 2003-11-25 Fujitsu Limited Method and apparatus for categorizing information, and a computer product
US6606597B1 (en) 2000-09-08 2003-08-12 Microsoft Corporation Augmented-word language model
CN1161703C (zh) * 2000-09-27 2004-08-11 中国科学院自动化研究所 汉语连续语音识别的集成预测搜索方法
US7418386B2 (en) * 2001-04-03 2008-08-26 Intel Corporation Method, apparatus and system for building a compact language model for large vocabulary continuous speech recognition (LVCSR) system
US7174288B2 (en) * 2002-05-08 2007-02-06 Microsoft Corporation Multi-modal entry of ideogrammatic languages
JP2005070430A (ja) * 2003-08-25 2005-03-17 Alpine Electronics Inc 音声出力装置および方法
JP4652737B2 (ja) * 2004-07-14 2011-03-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 単語境界確率推定装置及び方法、確率的言語モデル構築装置及び方法、仮名漢字変換装置及び方法、並びに、未知語モデルの構築方法、

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835893A (en) * 1996-02-15 1998-11-10 Atr Interpreting Telecommunications Research Labs Class-based word clustering for speech recognition using a three-level balanced hierarchical similarity

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
J. Gao et. al., "Exploiting Headword Dependency and Predictive Clustering for Language Modeling," Proc. of the Conference on EMNLP, pp. 248-256, July 2002. *
J. Gao et. al., "Exploiting Headword Dependency and Predictive Clustering for Language Modeling," Proc. of the Conference on EMNLP, pp. 248-256, July 2002.*

Also Published As

Publication number Publication date
US8744833B2 (en) 2014-06-03
CN101208689A (zh) 2008-06-25
EP1886231A1 (en) 2008-02-13
US20110106523A1 (en) 2011-05-05
CN101208689B (zh) 2010-05-26
EP1886231A4 (en) 2017-10-04
JP2007004634A (ja) 2007-01-11
KR20080021692A (ko) 2008-03-07
WO2007002456A1 (en) 2007-01-04
JP4769031B2 (ja) 2011-09-07

Similar Documents

Publication Publication Date Title
KR101279676B1 (ko) 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치
JP5997217B2 (ja) 言語変換において複数の読み方の曖昧性を除去する方法
KR101292404B1 (ko) 철자 제안을 생성하기 위한 방법 및 시스템
JP4652737B2 (ja) 単語境界確率推定装置及び方法、確率的言語モデル構築装置及び方法、仮名漢字変換装置及び方法、並びに、未知語モデルの構築方法、
CN107729313B (zh) 基于深度神经网络的多音字读音的判别方法和装置
JPH03224055A (ja) 同時通訳向き音声認識システムおよびその音声認識方法
JP2003527676A (ja) モードレス入力で一方のテキスト形式を他方のテキスト形式に変換する言語入力アーキテクチャ
JP2007087397A (ja) 形態素解析プログラム、補正プログラム、形態素解析装置、補正装置、形態素解析方法および補正方法
JP2011154099A (ja) 音声認識装置で利用される音声認識用辞書、音声認識用言語モデルの学習方法
JP3992348B2 (ja) 形態素解析方法および装置、並びに日本語形態素解析方法および装置
JP2002117027A (ja) 感情情報抽出方法および感情情報抽出プログラムの記録媒体
Tufiş et al. DIAC+: A professional diacritics recovering system
JP2000298667A (ja) 構文情報による漢字変換装置
JP5097802B2 (ja) ローマ字変換を用いる日本語自動推薦システムおよび方法
KR100617317B1 (ko) 복합 명사 전문용어 사전 엔트리의 재분석 방법 및 그 장치
JP5795302B2 (ja) 形態素解析装置、方法、及びプログラム
JP4047895B2 (ja) 文書校正装置およびプログラム記憶媒体
JP4769286B2 (ja) かな漢字変換装置およびかな漢字変換プログラム
JP4941495B2 (ja) ユーザ辞書作成システム、方法、及び、プログラム
JP4047894B2 (ja) 文書校正装置およびプログラム記憶媒体
JP2006309469A (ja) 検索装置、検索方法、プログラム、及びコンピュータ読み取り可能な記録媒体
JP4953431B2 (ja) 品詞バリエーション生成装置
JP5159657B2 (ja) 複数種類の読み仮名を有する漢字含み文字列の誤変換を指摘する誤変換指摘装置及びその方法
JP2004326584A (ja) 対訳固有表現抽出装置及び方法、対訳固有表現抽出プログラム
CN113158693A (zh) 基于汉语关键词的维吾尔语关键词生成方法、装置、电子设备及存储介质

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180516

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7