KR20070090075A - 언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측방법 - Google Patents

언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측방법 Download PDF

Info

Publication number
KR20070090075A
KR20070090075A KR1020067018544A KR20067018544A KR20070090075A KR 20070090075 A KR20070090075 A KR 20070090075A KR 1020067018544 A KR1020067018544 A KR 1020067018544A KR 20067018544 A KR20067018544 A KR 20067018544A KR 20070090075 A KR20070090075 A KR 20070090075A
Authority
KR
South Korea
Prior art keywords
word
candidates
input
user
language
Prior art date
Application number
KR1020067018544A
Other languages
English (en)
Other versions
KR100912753B1 (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
Priority claimed from US11/043,506 external-priority patent/US7319957B2/en
Priority claimed from US11/043,525 external-priority patent/US20050192802A1/en
Application filed by 에이오엘 엘엘씨 filed Critical 에이오엘 엘엘씨
Publication of KR20070090075A publication Critical patent/KR20070090075A/ko
Application granted granted Critical
Publication of KR100912753B1 publication Critical patent/KR100912753B1/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/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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/224Character recognition characterised by the type of writing of printed characters having additional code marks or containing code marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Character Discrimination (AREA)
  • Document Processing Apparatus (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 데이터 처리 시스템에서 수기 인식 및 음성 인식을 개선시키기 위한 하이브리드 방법에 관한 것이다. 일실시예에서, 스트로크, 문자 및/또는 음소를 인식하는데 프론트 엔드를 이용한다. 프론트 엔드는 입력에 대한 상대적인 또는 절대적인 매칭 확률을 갖는 후보를 리턴한다. 단어가 입력되는 동안 알파벳 또는 표의문자 언어와 같은 언어의 언어적 특성, 단어 또는 구의 사용 빈도, 입력된 단어의 음성의 유사한 부분, 언어의 형태론 또는 단어가 입력되는 문맥에 따라서, 백 엔드는 기지의 단어와 매칭되는 단어에 대한 입력으로부터의 프론트 엔드에 의해 결정된 후보들과 현재의 문맥 내의 그러한 단어들의 사용 확률을 결합한다.

Description

언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리 시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측 방법{HANDWRITING AND VOICE INPUT WITH AUTOMATIC CORRECTION}
본 발명은 데이터 처리 시스템을 이용하여 데스크톱 컴퓨터, 핸드헬드 컴퓨터, 개인용 데이터 보조장치(Personal Data Assistants, PDA) 등에서의 수기 인식 및 음성 인식과 같은 언어 입력을 인식하는 것에 관한 것이다.
소형 장치에 텍스트를 입력하는 것에는, 메모리 제한, 폼 팩터(form factor)의 엄격한 사이즈 제한 및 텍스트 입력 및 수정을 위한 제어(버턴, 메뉴 등)에 있어서의 엄격한 제한으로 인한 해결해야 할 문제가 있다. 텍스트 입력을 허용하는 최근의 핸드헬드 컴퓨팅 장치는 훨씬 더 작아지고 있다. 현재 휴대형 컴퓨터, 핸드헬드 컴퓨터 및 개인용 데이터 보조장치로부터 양방향 페이징(two-way paging), 셀룰러 전화 및 기타 휴대형 무선 기술로의 최근의 진보에 의해, 양방향 메시징 시스템 및 특히 전자 메일(e-메일) 또는 단문을 송수신할 수 있는 시스템을 위한, 메시지 및 문서를 작성하도록 텍스트 입력을 수락하는 소형이며 휴대형인 사용자 친화 적인 사용자 인터페이스가 요구된다.
수년 동안 휴대형 컴퓨터는 점점 더 소형화되어 왔다. 보다 작은 휴대형 컴퓨터를 제조하기 위한 노력에 있어서 하나의 크기 제한 요소는 키보드였다. 만약 표준 타이프라이트 크기의 키보드가 사용되면, 휴대형 컴퓨터는 적어도 키보드 크기는 되어야 한다. 휴대형 컴퓨터에 소형 키보드가 사용되었지만, 소형 키보드는 너무 작아서 사용자가 충분한 정확도로 쉽고 빠르게 조작할 수 없는 것으로 드러났다. 휴대형 컴퓨터에 풀 사이즈 키보드를 포함시키면, 컴퓨터의 진정한 휴대 용도를 방해한다. 대부분의 휴대형 컴퓨터는 사용자가 양손으로 타이핑할 수 있도록 평탄한 작업면상에 컴퓨터를 올려놓지 않으면 동작될 수 없다. 사용자는 서 있거나 이동 중에 휴대형 컴퓨터를 쉽게 사용할 수 없다.
수기 인식은, 손가락 또는 스타일러스의 움직임을 검출하는 패드 또는 전자 감지 스크린을 구비하는 소형 장치 상에서 텍스트 입력 문제를 해결하기 위해 취해진 한 방법이다. PDA라고 하는 최신의 소형의 휴대형 컴퓨터에서, 회사들은 PDA에 수기 인식 소프트웨어를 내장함으로써 이 문제를 해결하려고 시도하였다. 사용자는 터치 감지 패널 또는 디스플레이 스크린상에 기록함으로써 텍스트를 직접 입력할 수도 있다. 이 수기 텍스트는 그 후 인식 소프트웨어에 의해 디지털 데이터로 변환된다. 통상, 사용자는 한번에 한 글자를 기록하고, PDA는 한번에 한 글자를 인식한다. 터치 감지 패널 또는 디스플레이 스크린상의 기록은 접촉점을 나타내는 데이터 입력의 스트림을 생성한다. 수기 인식 소프트웨어는 데이터 입력 스트림의 기하학적 특징을 분석하여 사용자가 기록하고 있는 것과 매칭되는 문자를 판단한다. 수기 인식 소프트웨어는 통상 기하학적 패턴 인식을 수행하여 수기로 기록된 문자를 판단한다.
불행히도, 수기 인식 소프트웨어의 정확도는 만족할 만한 수준에 미치지 못한다. 현재의 수기 인식법은 많은 문제를 갖고 있는데, 예를 들면, 강력한 개인용 컴퓨터에서도 수기 인식 시스템이 매우 정확하지못하고, 소형 장치상에서는 메모리의 한계로 인해 수기 인식 정확도가 더욱 제한적이며, 개인 수기 스타일이 수기 소프트웨어를 훈련하는데 사용된 수기 스타일과 다를 수도 있다는 것이다. 이런 이유 때문에, 많은 수기 또는 그래피티(graffiti) 제품이 사용자가 개인의 서체에 대한 아주 특별한 스트로크 세트를 학습하도록 요구한다. 이들 특별한 스트로크 세트는 시스템의 기하학적 패턴 인식 프로세스를 단순화하고 인식률을 높이도록 설계된다. 흔히 이들 스트로크는 글자를 기록하는 자연적인 방법과 매우 다르다. 전술한 문제의 결과로서 이 제품의 채택이 매우 낮다.
음성 인식은 텍스트 입력 문제를 해결하기 위해 취해진 또 다른 방법이다. 음성 인식 시스템은 통상 음성 입력을 검출하여 기록하기 위해 마이크를 포함한다. 음성 패턴을 추출하기 위해 음성 인식은 디지털화되고 분석된다. 음성 인식은 통상 음성 입력을 처리하기 위한 강력한 시스템을 요구한다. 제한된 능력을 갖는 일부 음성 인식 시스템은 음성 제어 동작을 위한 셀룰러폰과 같은 소형 장치상에서 구현되었다. 음성 제어 동작을 위해, 장치는 몇몇 명령어만 인식하면 된다. 이러한 제한된 범위의 음성 인식에 있어서도, 음성 패턴이 여러 사용자들 사이에서 그리고 여러 환경에서 변하기 때문에 소형 장치는 만족스러운 음성 인식 정확도를 갖지 않 는다.
증가된 정확도와 감소된 메모리 요구 및 처리 능력 요구와 같은 감소된 계산 요구사항을 갖는, 자연적인 방식으로 기록된 수기에 대한 수기 인식 시스템 또는 자연적인 방식으로 말해진 음성 입력에 대한 음성 인식 시스템과 같이, 사용자 친화적인 방식으로 제공되는 언어 입력을 처리하기 위한 보다 실용적인 시스템을 개발하는 것이 바람직하다.
본 명세서에는 데이터 처리 시스템에서 수기 인식 및 음성 인식을 개선시키기 위한 하이브리드 방법을 개시한다. 일실시예에서, 스트로크, 문자, 음절 및/또는 음소를 인식하기 위해 프론트 엔드가 사용된다. 프론트 엔드는 입력에 대한 상대적인 또는 절대적인 매칭 확률을 갖는 후보들을 리턴한다. 단어가 입력되는 동안 알파벳 또는 표의문자 언어와 같은 언어의 언어적 특성, 단어 또는 구의 사용 빈도, 입력된 단어의 음성의 유사한 부분, 언어의 형태론 또는 단어가 입력되는 문맥에 따라서, 백 엔드는 기지의 단어와 매칭되는 단어에 대한 입력으로부터의 프론트 엔드에 의해 결정된 후보들과 현재의 문맥 내의 그러한 단어들의 사용 확률을 결합한다. 백 엔드는 단어 후보들을 선택하기 위해 와일드 카드를 사용할 수도 있고, 완성될 단어 또는 완전한 다음 단어를 예측하기 위해 언어적 특징을 사용할 수도 있으며, 사용자 선택을 위해 단어 후보를 제시하고/하거나 사용자를 위해 문자의 자동 강조, 자동 대문자 시작 및 구두점 및 구획문자의 자동 추가와 같은 추가된 출력을 제공할 수도 있다. 일실시예에서는, 언어적 백 엔드는 음성 인식, 수기 인식 및 키보드 입력과 같은 복수의 입력 방안에 동시에 사용된다.
본 발명의 일실시예는 데이터 처리 시스템에서 언어 입력(language input)을 처리하는 방법을 포함하는데, 이 방법은 언어의 단어의 사용자 입력을 각각 처리하는 복수의 단어 구성요소에 대한 복수의 인식 결과를 수신하는 단계와, 상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 단어의 사용자 입력에 대한 하나 이상의 단어 후보를 결정하는 단계를 포함한다. 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보 및 복수의 확률 표시자를 포함한다. 복수의 확률 표시자는 서로에 대해 사용자 입력의 일부에 대한 복수의 단어 구성요소의 매칭 확률의 정도를 나타낸다.
일실시예에서, 단어 구성요소 후보는 수기 인식으로부터 하나의 스트로크와, 수기 인식으로부터 문자와, 음성 인식으로부터 음소를 포함한다. 언어는 알파벳 또는 표의문자일 수 있다.
일실시예에서, 하나 이상의 단어 후보를 결정하는 단계는 복수의 인식 결과의 단어 구성요소 후보의 복수의 조합을 제거하는 단계, 언어의 단어 리스트로부터 복수의 인식 결과의 단어 구성요소 후보의 조합을 포함하는 복수의 단어 후보를 선택하는 단계, 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 사용자 입력에 대한 상대적인 매칭 확률을 나타내기 위해 하나 이상의 단어 후보에 대한 하나 이상의 확률 표시자를 결정하는 단계 또는 하나 이상의 확률 표시자에 따라서 하나 이상의 단어 후보를 분류하는 단계를 포함한다.
일실시예에서, 하나 이상의 단어 후보로부터 하나의 후보가 자동으로 선택되어 사용자에게 제공된다. 자동 선택은 언어에서의 구, 언어에서의 단어 쌍, 언어에서의 단어 트라이그램 중 어느 하나에 따라서 수행될 수 있다. 자동 선택은 또한, 언어 형태론 및 상기 언어의 문법 규칙 중 어느 하나에 따라서 수행될 수도 있다. 자동 선택은 또한 단어의 사용자 입력이 수신되는 문맥에 따라서 수행될 수도 있다.
일실시예에서, 이 방법은 다음 단어의 사용자 입력의 예측에서 자동으로 선택된 단어에 기초하여 복수의 단어 후보를 예측하는 단계를 더 포함한다.
일실시예에서, 이 방법은 사용자 선택을 위해 상기 하나 이상의 단어 후보를 제시하는 단계와, 복수의 단어 후보로부터 하나를 선택하기 위한 사용자 입력을 수신하는 단계를 더 포함한다. 복수의 단어 후보는 하나 이상의 확률 표시자에 따른 순서로 제시된다.
일실시예에서는, 복수의 단어 후보가 다음 단어의 사용자 입력의 예측에서 선택된 단어에 기초하여 제시된다.
일실시예에서는, 단어 구성요소에 대한 복수의 인식 결과 중 하나가, 단어 구성요소 후보 세트 중 어느 하나가 그 단어에 대한 사용자 입력의 일부분과의 매칭 확률이 동일하다는 표시를 포함한다. 단어 리스트의 사용 확률을 나타내는 데이터는 언어에서의 단어 사용 빈도와, 사용자에 의한 단어 사용 빈도와, 문서에서의 단어 사용 빈도 중 어느 하나를 포함한다.
일실시예에서는, 이 방법은 하나 이상의 문자를 자동으로 강조하는 단계와, 하나 이상의 문자를 자동으로 대문자로 시작하는 단계와, 하나 이상의 구두점 부호를 자동으로 추가하는 단계와, 하나 이상의 구획문자(delimiter)를 자동으로 추가하는 단계 중 어느 하나를 더 포함한다.
본 발명의 일실시예는 데이터 처리 시스템에서 언어 입력을 인식하는 방법을 포함하는데, 이 방법은 패턴 인식을 통해 언어의 단어의 사용자 입력을 처리하여 복수의 단어 구성요소에 대한 복수의 인식 결과를 각각 생성하는 단계와, 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 단어의 사용자 입력에 대한 하나 이상의 단어 후보를 결정하는 단계를 포함한다. 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와, 복수의 확률 표시자를 포함한다. 복수의 확률 표시자는 서로에 대해 사용자 입력의 일부분에 대한 복수의 단어 구성요소의 매칭 확률의 정도를 나타낸다. 패턴 인식은 수기 인식을 포함할 수도 있는데, 여기서 복수의 단어 구성요소 후보 각각은 예를 들어 표의문자 언어 부호 또는 알파벳 문자에 있어서의 스트로크, 또는 알파벳 언어에 있어서의 문자를 포함한다. 단어는 알파벳 단어 또는 표의문자 언어 부호일 수도 있다. 패턴 인식은 음성 인식을 포함할 수도 있는데, 여기서 복수의 단어 구성요소 후보 각각은 음소를 포함한다.
일실시예에서, 단어 구성요소에 대한 복수의 인식 결과 중 하나는 단어 구성요소 후보 세트 중 어느 하나가 단어에 대한 사용자 입력의 일부와 매칭될 확률이 동일함을 나타내는 표시를 포함한다. 단어 구성요소 후보 세트는 언어의 모든 알파벳 특성을 포함한다. 단어 리스트의 사용 확률을 나타내는 데이터는 언어에서의 단어 사용 빈도와, 사용자에 의한 단어 사용 빈도와, 문서에서의 단어 사용 빈도 중 어느 하나를 포함한다. 단어 리스트의 사용 확률을 나타내는 데이터는 언어에서의 구(phrase)와, 언어에서의 단어 쌍과, 언어에서의 단어 트라이그램(word trigram) 중 어느 하나를 포함할 수도 있다. 단어 리스트의 사용 확률을 나타내는 데이터는 언어의 형태론을 나타내는 데이터와, 언어의 문법 규칙을 나타내는 데이터 중 어느 하나를 포함한다. 단어 리스트의 사용 확률을 나타내는 데이터는 단어의 사용자 입력이 수신되는 문맥을 나타내는 데이터를 포함한다.
일실시예에서는, 사용자 입력이 단어에 대한 단어 구성요소의 완전한 세트의 일부만 지정한다. 시스템은 단어 후보를 결정한다.
일실시예에서는, 하나 이상의 단어 후보가 복수의 인식 결과 내의 단어 구성요소 후보들의 조합으로부터 형성된 단어의 일부분과 복수의 인식 결과 내의 단어 구성요소 후보들의 조합을 포함하는 단어의 일부분을 포함한다.
일실시예에서는, 하나 이상의 단어 후보가 복수의 단어 후보를 포함한다. 이 방법은 선택을 위해 복수의 단어 후보를 제시하는 단계와, 사용자 입력을 수신하여 복수의 단어 후보로부터 하나를 선택하는 단계를 더 포함한다.
일실시예에서, 이 방법은 다음 단어의 예측에서 선택된 하나에 기초하여 하나 이상의 단어 후보를 예측하는 단계를 더 포함한다.
일실시예에서, 복수의 단어 후보는 단어의 사용자 입력에 대한 매칭 확률 확률의 순서대로 제시된다.
일실시예에서, 이 방법은 하나 이상의 단어 후보 중에서 가장 유망한 하나를 단어의 사용자 입력에 대한 인식된 단어로서 자동으로 선택하는 단계를 더 포함한다.
일실시예에서, 이 방법은 다음 단어의 사용자 입력의 예측에서 상기 가장 유망한 하나에 기초하여 하나 이상의 단어 후보를 예측하는 단계를 더 포함한다.
일실시예에서, 이 방법은 하나 이상의 문자를 자동으로 강조하는 단계와, 하나 이상의 문자를 자동으로 대문자로 시작하는 단계와, 하나 이상의 구두점 부호를 자동으로 추가하는 단계와, 하나 이상의 구획문자(delimiter)를 자동으로 추가하는 단계 중 어느 하나를 더 포함한다.
일실시예에서, 복수의 인식 결과 각각은 사용자 입력의 일부분과의 상대적인 매칭 확률을 나타내기 위해 복수의 단어 구성요소 후보와 관련된 복수의 확률 표시자를 각각 포함한다.
도 1은 본 발명에 따른 데이터 처리 시스템에 대한 사용자 입력을 인식하는 시스템을 도시한 도면.
도 2는 본 발명에 따른 사용자 입력을 인식하는 데이터 처리 시스템의 블록도.
도 3a 및 3b는 본 발명에 따른 수기 인식 소프트웨어의 출력의 모호성 해소(disambiguation)의 일례를 도시한 도면.
도 4a 내지 4c는 본 발명에 따른 사용자 인터페이스의 수기 인식 시나리오를 도시한 도면.
도 5는 본 발명에 따른 사용자 입력을 처리하는 순서도.
수기 인식 및 음성 인식과 같은 입력 방법은, 특히 핸드헬드 컴퓨터, 개인용 데이터 보조 장치 및 셀룰러폰과 같은 소형 장치에 있어서, 전통적인 키보드 기반의 입력 방법에 대한 중요한 대안이 될 수 있다. 종래의 수기 및 음성 인식 시스템은 소형 전자 장치에서 이용가능한 것보다 많은 메모리를 요구한다는 문제점을 갖고 있다. 본 발명은 필요한 메모리 및 수기 또는 음성 인식 엔진을 위한 처리 능력 요건을 감소시키는 자동 정정 기능을 통해 이들 소형 장치에 대한 현 수준의 텍스트 및 음성 입력을 진일보시킨다.
본 발명은 데이터 처리 시스템의 수기 인식 및 음성 인식을 향상시키는 하이브리드 방법을 이용한다. 일실시예에서는, 프런트 엔드(front end)가 스트로크, 문자, 음절 및/또는 음소(phoneme)를 인식하고, 그 입력과 매칭하는 상대적인 또는 절대적인 확률을 갖는 후보를 리턴한다. 단 하나의 후보를 선택하는 프런트 엔드를 사용하는 대신에, 여러 후보가 백 엔드(back end)에 의한 추가적인 처리를 위해 리턴될 수 있다. 백 엔드는 기지의 단어들과 매칭되는 단어들에 대한 입력으로부터 프런트 엔드에 의해 결정된 후보들과 현 문맥 내의 그러한 단어들의 사용 확률을 결합시킨다. 프런트 엔드와 백 엔드의 조합에 의해, 본 발명은 인식률이 개선되고 보다 사용자 친화적인 시스템을 제공한다. 따라서 수기 및 음성 인식 입력에 대한 효율적이고 저 메모리/CPU 수행이 가능해진다.
본 발명에 있어서, "단어"는 단어, 어간, 접두어 또는 접미어, 음절, 구, 약어, 은어(chat slang), 이모티콘, 사용자 ID, URL, 또는 표의문자열을 형성하는 하나 이상의 문자 또는 부호로 이루어진 스트링과 같은 임의의 언어 객체를 의미한다.
본 발명의 일실시예에서는, 프런트 엔드가 수기, 음성 입력 등과 같은 언어 입력에 대한 패턴 인식을 수행하는데 사용된다. 스트로크, 수기에서의 문자들 및 음성 입력에서의 음소들과 같은 다수의 타겟 패턴에 대해 입력을 매칭시키는데 많은 기법들이 사용되어 왔다. 통상, 입력은 다수의 타겟 패턴을 여러 각도로 매칭시킨다. 예를 들면, 수기 문자는 문자 "a" 또는 "c", "o" 또는 "e"가 비슷하게 보일 수도 있다. 현재 이용가능한 패턴 인식 기법은, 이들 문자들 중 어느 하나인 수기 문자의 가능성을 판단할 수 있다. 그러나, 인식 시스템은 통상 단지 하나의 매칭만 보고하도록 강요된다. 따라서, 통상 가장 가능성이 높은 매칭을 갖는 문자가 인식 결과로서 보고된다. 본 발명의 일실시예에서는, 부정확할 수도 있는 하나의 매칭을 얻기 위해 다른 후보들을 너무 일찍 제거하는 대신에, 다수의 후보가 선택 가능하게 백 엔드로 전달되고, 백 엔드가 문맥을 이용하여, 단어, 구, 단어 쌍, 단어 트라이그램(word trigram)또는 예를 들어 문법 구조에 따라 문장의 문맥에 맞는 단어와 같은 언어 입력에 대해 전체로서 보다 유망한 유보들의 조합을 판단한다. 예를 들면, 사용자가 입력하려고 하는 단어 내의 문자에 대한 여러 후보들의 조합으로부터 여러 단어 후보들이 결정될 수 있다. 언어에 사용된 단어의 빈도 및 문자 후보 들의 상대적인 또는 절대적인 매칭 확률로부터, 백 엔드는 사용자가 입력하고 있는 가장 유망한 단어를 판정할 수 있다. 이것은 개별적으로 결정된 가장 유망한 단어 세트를 제공하되 의미 있는 단어를 구성하지 못할 수도 있는 종래의 방법과 대조적이다.
따라서, 본 발명은 모호성 해소 단어 룩업 소프트웨어와 수기 인식(HR; handwriting recognition) 엔진 또는 음성 인식(SR; speech recognition) 엔진을 결합하여, 개인용 디지털 보조 장치, 전화기 또는 텍스트 및 데이터 입력 산업 분야에서 사용되는 많은 특화된 장치와 같은 소형 전자 장치 상에서의 텍스트 및 음성 입력과 관련된 문제에 대한 강력한 해결책을 제공한다.
또한, 본 발명은 단일 백 엔드 엔진을 사용하여 저 메모리 및 프로세서 요건을 갖는 몇몇 입력 방안(쿼티 키보드, 수기, 음성)을 효과적으로 제공한다.
도 1은 본 발명에 따른 데이터 처리 시스템 상의 사용자 입력을 인식하기 위한 시스템을 도시한 도면이다. 수기 또는 음성과 같은 언어 입력(101)이 패턴 인식 엔진(103)에서 수신된 후에, 패턴 인식 엔진(103)은 입력을 처리하여, 예를 들어, 문자, 음소, 또는 스트로크와 같은 단어 구성요소 후보 및 입력(105)의 대응 부분과 매칭될 확률을 제공한다. 예를 들어, 문자에 대한 입력은 모호성을 일으키는 문자 후보 리스트와 매칭될 수도 있다. 일실시예에서는, 모호성은 프런트 엔드 레벨에서 허용되고 추가적인 처리를 위해, 언어적 모호성 해소 백 엔드로 전달된다.
예를 들면, 단어 기반의 모호성 해소 엔진(107)은 단어 리스트(109)에서 가능한 문자의 조합을 검사하여, 사용자 입력과 매칭되는 단어 후보 및 관련 확 률(111)을 생성한다. 덜 빈번하게 사용된 단어 또는 단어 리스트(109) 내에 없는 단어와 같이 미지의 단어는 사용자 입력과 매칭될 확률이 낮기 때문에, 비록 패턴 인식 엔진(105)의 결과에 기초하여서는 이들이 비교적 높은 매칭 확률을 갖는 것처럼 보일지라도, 그러한 단어 후보는 보다 작은 매칭 확률을 갖도록 등급을 낮출 수 있다. 단어 기반의 모호성 해소 엔진(107)은 사용자가 범위의 너무 큰 리스트에 의해 고민하지 않도록 일부 가망없는 단어 후보를 제거할 수 있다. 또는, 단어 기반 모호성 해소 엔진(107)은 단어 후보들로부터 가장 유망한 단어를 선택할 수도 있다.
일실시예에서, 만약 단어 기반의 모호성 해소 엔진(107)의 출력에 모호성이 존재하면, 구(phrase) 기반의 모호성 해소 엔진(113)이 단어 바이그램(bi-gram), 트라이그램(trigram) 등을 포함할 수도 있는 구 리스트(115)에 대한 결과를 더 검사한다. 하나 이상의 이전에 인식된 단어가 구 리스트(115) 내의 구와 매칭하도록 현재의 단어에 결합될 수도 있다. 구의 사용 빈도는 단어 후보에 대한 매칭 확률을 수정하는데 사용되어 매칭의 관련 확률 및 구 후보(117)를 생성할 수 있다. 모호성이 존재하지 않는 경우에도, 이전에 인식된 단어 및 구 리스트(115)에 기초하여 다음 단어를 예측하기 위해, 구 기반의 모호성 해소 엔진이 사용될 수 있다.
일실시예에서, 만약 모호성이 구 기반의 모호성 해소 엔진(113)의 출력에 존재하면, 문맥 및/또는 문법 분석(119)이 수행되어 가망성이 없는 단어/구를 제거한다. 만약 자동 언어적 모호성 해소 프로세스를 통해 모호성이 해결될 수 없으면, 사용자 선택(121)을 위해 선택권이 사용자에게 제공된다. 사용자 선택 후에, 단어 리스트(109) 및 구 리스트(115)가 갱신되어, 사용자에 의해 선택된 단어/구를 승격(promotion)시키고/또는 새로운 단어/구를 리스트에 추가할 수도 있다.
도 2는 본 발명에 따른 사용자 입력을 인식하는 데이터 처리 시스템의 블록도이다. 도 2는 예시적인 데이터 처리 시스템의 다양한 구성요소를 도시하고 있지만, 본 발명의 일실시예에 따른 데이터 처리 시스템은 일반적으로 도 2에 도시된 것과 다른 다소의 구성 요소를 포함할 수도 있다. 예를 들면, 어떤 시스템은 음성 인식 능력을 갖지 않을 수도 있고, 음성 처리를 위한 구성요소를 필요로 하지 않을 수도 있다. 어떤 시스템은 셀룰러폰 실시예에서의 통신 회로와 같은 도 2에 도시되어 있지 않은 다른 기능을 가질 수도 있다. 도 2는 본 발명의 적어도 몇몇 특징과 밀접하게 관련된 다양한 구성요소를 도시하고 있다. 본 발명에 따른 데이터 처리 시스템의 구성은 도 2에 도시된 특정 아키텍처에 제한되지 않는다.
디스플레이(203)가 적절한 인터페이싱 회로를 통해 프로세서(201)에 결합된다. 수기 인식 및/또는 기타 사용자 입력에 대한 사용자 입력을 수신하도록, 터치 스크린, 마우스 또는 디지타이징 펜(digitizing pen)과 같은 수기 입력 장치(202)가 프로세서(201)에 결합되어 있다. 또한, 음성 인식 및/또는 기타 음성 입력에 대한 사용자 입력을 수신하도록 마이크와 같은 음성 입력 장치(204)가 프로세서(201)에 결합되어 있다. 선택적으로, 스피커와 같은 음성 출력 장치(205)가 프로세서에 결합될 수도 있다.
프로세서(201)는 예를 들어 수기 입력 장치(202) 또는 음성 입력 장치(204)와 같은 입력 장치로부터의 입력을 수신하고, 디스플레이 및 스피커로의 출력을 관 리한다. 프로세서(201)는 메모리(210)에 결합된다. 메모리는 RAM과 같은 임시 저장 매체와, ROM, 플로피 디스크, 하드디스크 또는 CD-ROM과 같은 영구 저장 매체의 조합을 포함한다. 메모리(210)는 시스템 운영을 관리하는데 필요한 모든 소프트웨어 루틴 및 데이터를 포함한다. 메모리는 통상 운영체제(211) 및 응용 프로그램(220)을 포함한다. 응용 프로그램의 예로는 워드 프로세서, 소프트웨어 사전 및 외국어 번역기 등이 있다. 또한 음성 합성 소프트웨어가 응용 프로그램으로서 제공될 수도 있다.
메모리는 수기 입력에서 스트로크/문자를 인식하기 위한 스트로크/문자 인식 엔진(212) 및/또는 음성 입력에서 음소를 인식하기 위한 음소 인식 엔진(213)을 더 포함하는 것이 바람직하다. 음소 인식 엔진 및 스트로크/문자 인식 엔진은 후보 리스트 및 스트로크, 문자 또는 음소에 있어서의 각 입력에 대한 관련 매칭 확률을 제공하기 위해 당해 분야에 공지되어 있는 임의의 기법을 사용할 수 있다. 예를 들어 스트로크/문자 인식 엔진(212) 또는 음소 인식 엔진(213)과 같은 프런트 엔드 엔진에서 패턴 인식을 위해 사용된 특정 기법은 본 발명과 밀접한 관련이 없다.
본 발명의 일실시예에서, 메모리(210)는 언어적 모호성 해소 백 엔드를 더 포함하는데, 이것은 단어 기반의 모호성 해소 엔진(216), 구 기반의 인식 모호성 해소 엔진(217), 문맥 기반의 모호성 해소 엔진(218), 선택 모듈(219) 및 단어 리스트(214) 및 구 리스트(215)와 같은 기타 요소 중 하나 이상을 포함한다. 이 실시예에서, 문맥 기반의 모호성 해소 엔진은 입력 모호성 해소에 대한 사용자의 동작의 상황적인 측면을 고려하였다. 예를 들면, 사용자가 직장에 있는 지 또는 가정에 있는 지와 같은 선택된 사용자 위치, 작업 시간 대 여가 시간과 같은 시간, 수신자 등에 따라서 어휘가 선택될 수도 있다.
본 발명의 일실시예에서, 모호성 해소 백 엔드에 대한 대다수의 구성요소는 수기 인식 및 음성 인식을 위한 여러 입력 방안들 사이에 공유된다. 단어 리스트(214)는 언어 내의 기지의 단어 리스트를 포함한다. 단어 리스트(214)는 언어 내의 대응하는 단어에 대한 사용 빈도의 정보를 더 포함할 수도 있다. 일실시예에서는, 그 언어에 대한 단어 리스트(214)에 없는 단어는 제로 빈도를 갖는 것으로 간주한다. 이와 달리, 미지의 단어는 매우 작은 사용 빈도를 할당받는다. 미지의 단어에 대한 추정된 사용 빈도를 사용하여 기지의 그리고 미지의 단어가 실질적으로 동일한 방식으로 처리될 수 있다. 단어 리스트(214)는 패턴 인식 프런트 엔드의 결과에 따라서 결정된 단어 후보의 등급을 정하거나, 제거하거나 또는 선택하고 사용자 입력의 일부분에 기초하여 단어 완성을 위해 단어들을 예측하기 위해, 단어 기반의 모호성 해소 엔진(216)(예를 들면, 스트로크/문자 인식 엔진(212) 또는 음소 인식 엔진(213))과 함께 사용될 수 있다. 이와 마찬가지로, 구 리스트(215)는 둘 이상의 단어를 포함하는 구들로 이루어진 리스트와, 구 기반의 모호성 해소 엔진(217)에 의해 사용될 수 있고 구 완성을 위해 단어들을 예측하는데 사용될 수 있는 사용 빈도 정보를 포함할 수도 있다.
본 발명의 일실시예에서는, 각 입력 시퀀스가 하나 이상의 어휘 모듈에 대해 처리되고, 각각의 어휘 모듈은 하나 이상의 단어를 포함하며, 또한 동일한 길이의 다른 단어에 대한 단어의 상대적인 발생 빈도와 단어 내의 문자의 수를 포함하는 각 단어에 대한 정보를 함께 포함한다. 이와 달리, 주어진 단어를 멤버로 포함하는 어휘 모듈 또는 모듈들에 대한 정보가 각 단어와 함께 저장되거나, 또는 특정 음절 위에 덧부호(diacritic mark)를 위치시키는 것과 같이 모듈이 언어적 패턴에 기초하여 단어들을 변경 또는 생성하거나 또는 현재의 입력 시퀀스 및/또는 주변 문맥의 해석을 위해 임의의 다른 알고리즘에 기초하여 단어 후보를 생성하거나 또는 필터링할 수도 있다. 일실시예에서는, 각각의 입력 시퀀스가 패턴 인식 프런트 엔드에 의해 처리되어 스트로크, 문자, 음절, 음소 등과 같은 후보 리스트의 시퀀스를 제공한다. 여러 후보들의 조합은 여러 단어 후보를 제공한다. 모호성 해소 백 엔드는 후보들의 매칭 확률과 단어 후보들의 사용 빈도를 조합하여 하나 이상의 단어를 사용자 선택에 대한 대안으로서 등급을 정하거나, 제거하거나, 선택한다. 사용 빈도가 높은 단어는 매우 유망한 후보이다. 미지의 단어 또는 사용 빈도가 낮은 단어는 보다 덜 유망한 후보이다. 선택 모듈(219)은 매우 유망한 다수의 단어를 선택적으로 제시하며, 사용자는 이로부터 선택할 수 있다. 본 발명의 다른 실시예에서는, 단어 사용 빈도가 사용자의 사용 또는 예를 들어 사용자에 의해 작성되는 메시지 또는 조항과 같은 특정 문맥 내의 단어의 사용에 기초한다. 따라서, 빈번하게 사용된 단어가 보다 유망한 단어가 된다.
다른 실시예에서는, 각 어휘 모듈 내의 단어들이 동일한 길이의 단어로 이루어진 파일 또는 클러스터로 그룹화된 단어로 저장된다. 각각의 입력 시퀀스는 먼저 입력 시퀀스 내의 입력의 수와 동일한 길이의 단어 그룹을 탐색하고, 최선의 매칭 메트릭 점수를 갖는 후보 단어들을 식별함으로써 처리된다. 만약, 입력 시퀀스와 동일한 길이를 갖는 후보 단어들의 임계 수가 식별되면, 시스템은 N 개의 입력의 입력 시퀀스를 길이 N+1의 단어 그룹 내의 각 단어의 첫 번째 N 개의 글자와 비교한다. 이 프로세스는 계속되어, 점진적으로 보다 더 긴 단어의 그룹을 탐색하고, 후보 단어의 임계 수가 식별될 때까지 N 개의 입력의 입력 시퀀스를 각 그룹 내의 각 단어의 첫 번째 N 개의 글자와 비교한다. 입력 시퀀스보다 충분히 더 긴 가능성이 있는 후보 단어가 사용자에게 단어 완성 형태를 제공하는 입력 시퀀스의 가능한 해석으로서 제공될 수도 있다.
설치 상태 동안에, 또는 텍스트 메시지 또는 기타 데이터의 수신시에 연속적으로, 사전에 추가될 단어에 대해 정보 파일이 스캐닝된다. 이러한 정보 파일을 스캐닝하는 방법은 공지되어 있다. 스캐닝 동안 새로운 단어가 발견되면, 이들은 낮은 빈도의 단어로서 어휘 모듈에 추가되고, 그에 따라 그 단어가 관련되는 단어 리스트의 끝에 배치된다. 주어진 새로운 단어가 스캐닝 동안 검출되는 횟수에 따라서, 관련 리스트 내에 그것을 승격시키고, 정보 입력 동안 단어 선택 리스트에 나타나는 단어의 확률을 증가시킴으로써, 그 단어에 상대적으로 높은 우선 순위가 할당된다.
본 발명의 일실시예에서는, 각각의 입력 시퀀스에 있어서, 최고 확률을 갖는 단어 구성요소 후보를 식별하고 이들 단어 구성요소 후보의 시퀀스로 이루어진 단어를 구성함으로써 어휘 모듈이 단어 후보를 구성한다. 그 다음에 이 "정확한 타입"의 단어는 특별히 지정된 필드에 선택적으로 제공된 단어 후보 리스트 내에 포함된다. 단어들의 사전은 용인할 수 있는 성질의 유사한 단어와 짝을 이루는 무례 한 표현의 단어들의 부록을 갖고 있으며, 따라서, 무례한 표현의 단어를 입력하면, 그 무례한 표현의 단어를 포함하는 글자를 정확하게 타이핑한 경우에도, 정확한 타입의 필드에 있는 관련 용인할 수 있는 단어만 제공하되, 적절하다면 단어 선택 리스트 내에 제안으로서 제공한다. 이 특징은, 의도된 글자들의 정확한 위치에 키보드를 접촉하기 위해 주의를 덜 기울일 때 보다 빠른 타이핑이 가능하다는 것을 사용자가 알고 있는 경우에, 선택 리스트 내에 무의식적으로 나타날 수도 있는 무례한 표현의 단어들이 출현하는 것을 걸러낼 수 있다. 따라서, 공지되어 있는 기법을 이용하는 경우, 정확한 타이핑 단어 스트링을 디스플레이하기 전에, 단어 선택 리스트를 디스플레이하는 것을 담당하는 소프트웨어 루틴이 현재의 정확한 타이핑 스트링과 무례한 표현의 단어의 부록을 비교하고, 만약 매칭이 발견되면, 디스플레이 스트링은 관련된 용인할 수 있는 단어로 교체한다. 그렇지 않으면, 무례한 표현이 매우 낮은 빈도의 단어로 취급되는 경우에도, 단어의 각 글자가 직접 접촉될 때 정확한 타이핑 단어로서 나타날 것이다. 이것은 우연히 무례한 표현의 단어를 표준 키보드에 타이핑하는 것과 유사하지만, 본 발명은 사용자가 덜 정확한 입력을 제공하는 것을 허용한다. 이 특징은 예를 들면 시스템 메뉴 선택을 통하여 사용자가 허용 또는 불허할 수 있다.
당업자들은 또한, 부가적인 어휘 모듈, 예를 들어 법률 용어, 의학 용어 및 기타 언어를 포함하는 어휘 모듈이 컴퓨터 내에서 허용될 수 있다. 또한, 인도어와 같은 일부 언어에서는, 어느 단어 구성요소 후보가 가능한 지 또는 유사한 주어진 선행 입력 및 그 단어 후보가 고려되는 지를 결정하기 위해, 어휘 모듈이 유효한 서브 단어(sub-word) 시퀀스의 템플릿을 이용할 수도 있다. 시스템 메뉴를 통해, 사용자는 부가적인 어휘 단어가 예를 들어 특별한 채색 또는 하이라이팅과 함께 가능한 단어 리스트 내의 처음 또는 마지막에 나타나도록 시스템을 구성할 수 있거나, 어휘 모듈이 바로 전에 선택된 단어를 제공했는 지에 기초하여 시스템이 단어의 순서를 자동으로 절환할 수도 있다. 결과적으로, 첨부한 청구범위 내에서, 본 발명은 본 명세서에 특별히 설명한 것 외의 다른 방식으로 실시될 수 있다.
본 발명의 다른 측면에 따르면, 사용자가 시스템을 사용하고 있는 동안, 사용자에 의해 단어가 선택될 때마다 그 단어와 관련된 상대적인 빈도를 증가시킴으로써 사전 내의 단어를 승격시키도록 작용하는 승격 알고리즘에 의해 사전이 자동으로 수정된다. 일실시예에서는, 승격 알고리즘이 선택된 단어와 관련된 빈도의 값을 비교적 큰 증분으로 증가시키는 반면에, 선택되지 않은 단어들의 빈도 값은 매우 작은 감분으로 감소시킨다. 상대적인 빈도 정보가 단어가 리스트에 나타나는 순서로 표시되는 어휘 모듈에 있어서, 승격은 선택된 단어를 그 리스트의 선두로부터 떨어진 거리의 일부분만큼 위쪽으로 이동시킴으로써 이루어진다. 승격 알고리즘은 가장 일반적으로 사용된 단어와 거의 사용되지 않는 단어를 원래의 위치로부터 매우 멀리 이동시키는 것을 회피하는 것이 바람직하다. 예를 들면, 리스트의 중간 범위에 있는 단어가 각 선택에 의해 가장 큰 부분만큼 승격된다. 사전 승격에서 선택된 단어로부터 시작하여 마지막 단어 사이에 있는 단어들은 1의 값만큼 현저하게 강등(demotion)된다. 단어 리스트의 전체 크기는 유지되고, 따라서 리스트 내의 상대적인 빈도와 관련된 정보가 유지되며, 리스트에 필요한 저장부가 증가하지 않고 갱신된다.
승격 알고리즘은 선택된 단어의 빈도를 증가시키는 한편, 적절한 경우에는 선택되지 않은 단어의 빈도를 감소시키는 동작을 한다. 예를 들면, 리스트에 단어가 나타나는 순서로 상대적인 빈도 정보가 표시되는 사전에서, 리스트 내의 위치 IDX에 나타나는 선택된 단어가 위치(IDX/2)로 이동한다. 이에 따라, 위치(IDX/2)로부터 아래로 (IDX+1)까지의 위치에 있는 리스트 내의 단어들이 리스트 내에서 한 위치씩 아래로 이동한다. 접촉 지점의 시퀀스가 처리되고 계산된 매칭 메트릭 값에 기초하여 단어 선택 리스트가 생성될 때 단어들은 리스트 내에서 강등되고, 하나 이상의 단어가 리스트에서 사용자에 의해 선택된 단어 앞에 나타난다. 선택 리스트 내에 보다 높게 나타나지만 선택되지 않은 단어들은 부적절하게 높은 빈도를 할당받은 것으로 추정될 수도 있다. 즉, 이들이 리스트 내에서 너무 높게 나타난다고 추정할 수도 있다. 처음에 위치(IDX)에 나타나는 단어는, 예를 들어 위치(IDX*2+1)로 이동시킴으로써 강등된다. 따라서, 보다 빈번하게 단어가 선택되는 것으로 간주될수록, 그 단어가 보다 작은 수의 단계에 의해 이동된다는 점에서, 그 단어는 덜 강등된다.
승격 및 강등 프로세스는 사용자의 동작에 응답하여서만 트리거될 수도 있고, 또는 사용자의 입력에 따라서 상이하게 행해질 수도 있다. 예를 들면, 사용자가 의도하는 단어보다 선택 리스트 내에서 더 높게 나타나는 단어는 사용자가 스타일러스 또는 마우스를 사용하여 의도하는 단어를 클릭하여 단어 선택 리스트 내의 맨 앞의 위치로 드래그함으로써 원하는 단어를 선택할 때에만 강등된다. 이와 달 리, 선택 리스트 내의 보다 높은 위치로 수동으로 드래그되는 선택된 단어는 정상 요소보다 더 크게 승격될 수도 있다. 예를 들면, 승격된 단어는 위치(IDX)로부터 위치(IDX/3)로 이동한다. 이러한 많은 변형들은 당업자들에게 자명할 것이다.
본 발명의 다른 측면에 따르면, 프런트 엔드는 조직적인 에러를 검출할 수도 있고, 백 엔드로부터의 피드백에 기초하여 그 인식을 수정할 수도 있다. 사용자가 선택 리스트로부터의 단어들을 반복적으로 입력하고 선택하기 때문에, 단어 구성요소 후보의 등급과 각 선택된 단어에 포함된 의도하는 단어 구성요소 사이의 차를 이용하여 프런트 엔드에 의해 생성된 확률을 변경할 수 있다. 또는, 백 엔드가 프런트 엔드로부터 수신된 하나 이상의 스트로크, 문자, 음절 또는 음소에 대한 독립적인 조정 값을 유지할 수도 있다.
도 3a 및 3b는 본 발명에 따른 수기 인식 소프트웨어의 출력의 모호성 해소의 일례를 도시한 것이다. 본 발명의 일실시예는 수기 인식 엔진과 수기 엔진으로부터 사용자에 의해 입력된 각 글자와 관련된 모든 가능한 매칭을 취하는 모듈을 조합하고, 이들 확률을 언어 내의 단어의 확률과 조합하여 사용자가 입력하고자 하는 가장 유망한 단어 또는 단어들을 예측한다. 가능한 매칭 및 매칭의 관련 가능성을 판단하기 위해 당해 분야에 공지되어 있는 어떠한 기법들도 사용될 수 있다. 예를 들면, 사용자는 "often"이라는 다섯 글자의 단어를 입력하기 위해 다섯 개의 문자를 입력할 수도 있다. 사용자 입력은 도 3a의 301 내지 305로 도시되어 있다. 수기 인식 소프트웨어는 스트로크에 대한 다음 문자 및 문자 확률 출력을 제공한다.
스트로크 1 (301) : 'o' 60%, 'a' 24%, 'c' 12%, 'e' 4%
스트로크 2 (302) : 't' 40%, 'f' 34%, 'i' 20%, 'I' 6%
스트로크 3 (303) : 't' 50%, 'f' 42%, 'I' 4%, 'i' 4%
스트로크 4 (304) : 'c' 40%, 'e' 32%, 's' 15%, 'a' 13%
스트로크 5 (305) : 'n' 42%, 'r' 30%, 'm' 16%, 'h' 12%
예를 들면, 스트로크(301)는 'o'일 확률이 60%이고, 스트로크(302)는 't'일 확률이 40%이며, 스트로크(303)는 't'일 확률이 50%이고, 스트로크(304)는 'c'일 확률이 40%이며, 스트로크 (305)는 'n'일 확률이 42%이다. 수기 소프트웨어가 사용자의 스트로크에 가장 근접하게 매칭되는 것으로 판단하는 글자들을 취합하여, 수기 소프트웨어 모듈은 사용자에게 스트링 'ottcn'을 제공하는데, 이것은 사용자가 입력하고자 하는 단어가 아니다. 이것은 영어에 존재하는 단어도 아니다.
본 발명의 일실시예는 이들 문자들, 문자들과 관련된 매칭 확률 및 영어에서 단어의 사용 빈도에 기초하여 최상의 예측을 하기 위해, 모호성 해소 단어 룩업 모듈을 사용한다. 본 발명의 일실시예에서는, 조합된 수기 모듈과 모호성 해소 모듈이, 가장 유망한 단어가 'often'이라는 것을 예측하며, 이것은 사용자가 입력을 위해 타이핑한 단어이다.
예를 들면, 도 3b에 도시된 바와 같이, 백 엔드 툴은 모든 후보들을 용인하고, ottcn, attcn, oftcn, aftcn, otfcn, atfcn, offcn, affcn, otten, atten, often, aften, otfen, atfen, offen, affen, ottcr, attcr, oftcr, aftcr, otfcr, atfcr, offcr, affcr, otter, atter, ofter, after, otfer, atfer, offer, affer,....를 포함하는 가능한 단어 리스트를 판정한다. 가능한 단어는 프런트 엔 드에 의해 결정된 최고 매칭 확률을 갖는 선택 문자들로부터 보다 낮은 매칭 확률을 갖는 문자로 구성될 수 있다. 하나 이상의 높은 확률의 단어가 발견되면, 보다 낮은 확률을 갖는 문자들이 사용되지 않을 수도 있다. 설명을 간단하게 하기 위해, 도 3a에서는, 미지의 단어는 사용 빈도가 0이고, 예를 들어 often, after 및 offer과 같은 기지의 단어는 사용 빈도가 1이라고 가정한다. 도 3a에서는, 단어 후보에 대한 매칭 표시자가 사용 빈도와 단어 내에 사용된 문자 후보의 매칭 확률의 곱으로부터 계산된다. 예를 들면, 도 3a에서, 문자 'o', 'f', 't', 'e' 및 'n'의 확률은 각각 0.6, 0.34, 0.5, 0.32, 0.42이고, 단어 "often"에 대한 사용 빈도는 1이다. 따라서, 단어 "often"에 대한 매칭 표시자는 0.0137로서 결정된다. 이와 유사하게, 단어 "after" 및 "offer"의 표시자는 각각 0.0039 및 0.0082로서 결정된다. 백 엔드 툴이 가장 유망한 단어를 선택하는 경우, "often"이 선택된다. 단어에 대한 "표시자(indicator)"는 단어 후보의 등급을 매기기 위해 규격화될 수 있다.
본 발명의 일실시예에서는, 하나 이상의 입력이 명시적인데, 즉 각각의 문자 등과 매칭할 확률이 100%가 되도록 단일 스트로크, 문자, 음절 또는 음소와 관련된다. 본 발명의 다른 실시예에서는, 명시적인 입력이 각 단어 후보의 대응 위치 내의 모호성 해소 백 엔드가 정확한 문자와만 매칭되도록 하는 인식 프런트 엔드로부터의 특별한 세트의 값이 된다. 본 발명의 다른 실시예에서는, 명시적인 입력이 단어들 내 및 단어들 사이에 있는 숫자, 구두점, 적절한 분음 부호 및 액센트 부호, 및/또는 기타 구획 문자를 위해 지정된다.
도 4a 내지 4c는 본 발명에 따른 사용자 인터페이스에 대한 수기 인식의 시 나리오를 도시한 것이다. 도 4a에 도시된 바와 같이, 장치(401)는 사용자가 수기 입력(407)을 기록하는 영역(405)을 포함한다. 영역(403)은 예를 들어 웹 브라우저, 메모 소프트웨어 프로그램, 이메일 프로그램 등에 사용자가 입력하는 메시지 또는 항목을 디스플레이하기 위해 제공된다. 이 장치는 사용자가 기록할 터치 스크린 영역을 포함한다.
사용자의 수기 입력(407)을 처리한 후에, 도 4b에 도시된 바와 같이, 장치는 영역(409)에 단어 후보 리스트를 제공하여 사용자가 선택하게 한다. 단어 후보는 매칭 확률이 높은 순으로 정렬된다. 이 장치는 처음 몇몇 가장 유망한 단어 후보를 제공하도록 선택할 수도 있다. 사용자는 스타일러스를 사용하여 터치 스크린 상에서 리스트 상의 단어를 탭핑(tapping)하거나 또는 단어의 위치에 대응하는 숫자 키를 사용하는 것과 같이 종래의 방법을 이용하여 리스트로부터 하나의 단어를 선택할 수도 있다. 또는, 사용자는 리스트 내의 단어의 위치에 대응하는 번호 또는 선택 단어를 말함으로써 음성 명령을 통해 단어를 선택할 수도 있다. 바람직한 실시예에서는, 가장 유망한 단어가 자동으로 선택되어 영역(403)에 디스플레이된다. 따라서, 사용자가 예를 들어 다음 단어를 기록하기 시작함으로써 그 후보를 수락하면, 사용자 선택은 필요치 않다. 만약, 사용자가 다른 단어를 선택하면, 장치는 자동으로 선택된 후보를 사용자가 선택한 후보로 교체한다. 다른 실시예에서는, 가장 유망한 단어가 디폴트로서 하이라이트되어 사용자가 현재 선택한 단어가 출력되거나 후속 동작에 의해 확장된다는 것을 나타내고, 지정된 입력이 다른 단어 후보로 하이라이팅을 변화시킨다. 다른 실시예에서는, 지정된 입력이, 입력되었거나 또는 예측된 복수 음절 시퀀스 또는 복수 단어 구로부터 수정 또는 재입력을 위해 하나의 음절 또는 단어를 선택한다.
도 4c는 문맥 및/또는 문법 해석이 모호성을 해결하는데 도움을 주는 상황을 도시하고 있다. 예를 들면, 도 4c에서, 사용자는 이미 단어들 "It is an"을 입력했다. 문법 분석으로부터, 장치는 다음 단어로서 명사를 예상한다. 따라서 장치는 명사인 단어 후보들을 승격시키도록 단어 후보의 순위를 추가로 조정한다. 따라서, 가장 유망한 단어는 "often" 대신에 "offer"가 된다. 그러나, 명사와 단어 "an" 사이에 형용사가 있을 수도 있기 때문에, 장치는 여전히 "often" 및 "after"과 같은 다른 선택사항들을 사용자가 선택할 수 있도록 제공한다.
도 5는 본 발명에 따른 사용자 입력의 처리를 도시하는 순서도이다. 단계 501에서, 시스템은 단어에 대한 수기 입력을 수신한다. 그 다음에 단계 503은 단어의 수기에서 각 문자와 매칭될 가능성을 가진 문자 후보 리스트를 생성한다. 단계 505는 문자 후보 리스트로부터 단어 후보 리스트를 결정한다. 단계 507은 단어 후보의 빈도 표시자와 문자 후보의 매칭 확률을 조합하여 단어 후보에 대한 매칭 확률을 결정한다. 단계 509는 단어 후보와 매칭할 확률에 기초하여 단어 후보의 일부분을 제거시킨다. 단계 511은 사용자 선택을 위해 하나 이상의 단어 후보를 제시한다.
도 5는 수기 입력을 처리하는 순서도를 도시하고 있지만, 음성 입력도 동일한 방식으로 처리될 수 있음을 이 설명으로부터 이해할 수 있을 것이다. 이 경우, 음성 인식 모듈은 단어 내의 각 음소에 대한 음소 후보를 생성한다.
소형 장치 상에서의 텍스트 및 명령 입력에 대한 음성 인식 기법은 양호하지 못한 메모리 및 컴퓨터 처리 문제에 직면해 있다. 또한, 현재의 음성 인식 시스템 채용은 매우 낮은데, 그 이유는 높은 에러율 및 수정과 관련하여 많은 노력이 요구되기 때문이다. 본 발명의 일실시예는 후보 음소와 음성 인식 엔진으로부터 리턴된 이들의 관련 확률의 세트를 이용하고 또한 이들 입력 및 이들 음소로 형성될 수 있는 단어들의 기지의 확률을 사용하는 백 엔드를 포함한다. 시스템은 자동으로 음성 인식 출력을 정정한다.
본 발명의 일실시예에서, 입력 시퀀스와 매칭되는 후보 단어들은 각 입력이 수신될 때 디스플레이 상의 단어 선택 리스트 내에서 사용자에게 제시된다. 단어 후보들은 각 후보 단어에 대해 계산된 매칭 확률에 의해 결정된 순서로 제시되며, 따라서 매칭 메트릭에 따라서 가장 유망한 것으로 여겨지는 단어가 리스트의 맨 처음에 나타난다. 입력 시퀀스의 제안된 해석들 중 하나를 선택하면, 입력 시퀀스가 종료되며, 따라서 그 다음 입력은 새로운 입력 시퀀스를 시작한다.
본 발명의 다른 실시예에서는, 디스플레이, 바람직하게는 텍스트 생성을 위한 삽입 지점에서 단지 하나의 단어 후보만 나타난다. 디스플레이된 단어 후보는 매칭 메트릭에 따라 가장 유망하다고 여겨지는 단어이다. 특별히 지정된 선택 입력을 반복적으로 활성화시킴으로써, 사용자는 디스플레이된 단어를 매칭 확률에 의해 결정된 순서로 제시된 다른 단어 후보로 교체할 수도 있다. 입력 시퀀스는 또한 지정된 선택 입력의 하나 이상을 활성화하고, 시스템에 의한 실제 출력에 대한 시퀀스의 제안된 해석들 중 정확하게 하나를 효과적으로 선택한 후에 종료되며, 따라서 다음 입력이 새로운 입력 시퀀스를 시작한다.
본 발명에 따른 하이브리드 시스템은 먼저 스트로크, 문자, 음절, 음소 등과 같은 구성요소 레벨에서 수기 인식, 음성 인식 등과 같은 패턴 인식을 수행하여, 모호성 및 관련 매칭 가능성을 갖는 결과를 제공하며 단어, 구, 단어 쌍, 단어 트라이그램 등과 같은 내부 구성요소 레벨(inter-component level)에서 모호성 제거 동작을 수행한다. 모호성을 해결하기 위해 시스템에 사용된 언어의 특징은 언어 내의 단어 사용 빈도, 개인 사용자에 의한 단어 사용 빈도, 입력된 단어의 음성의 유사한 부분, 언어의 형태론, 단어가 들어 있는 문맥, 바이그램(단어 쌍) 또는 단어 트라이그램 및 모호성을 해결하는데 사용될 수 있는 문맥 정보 또는 기타 언어 중 어느 하나일 수 있다.
본 발명은 영어 및 스페인어와 같은 알파벳 언어와 함께 사용될 수 있는데, 이 경우 수기 인식 프런트 엔드의 출력은 문자들 또는 스트로크들 또는 그와 관련된 확률이다. 알파벳 언어의 수기에 대한 모호성 해소 동작은 단어 레벨에서 수행될 수 있는데, 여기서, 각 단어는 통상 복수의 문자를 포함한다.
본 발명은 중국어 및 일본어와 같은 표의문자 언어와 함께 사용될 수 있는데, 여기서 수기 인식 프런트 엔드의 출력은 스트로크 및 관련 확률이다. 표의문자 언어의 수기에 대한 모호성 해소 동작은 어근/구성요소 또는 문자 레벨에서 행해질 수 있는데, 여기서 각 문자의 기록은 통상 복수의 스트로크를 포함한다. 모호성 해소 동작은 예를 들어 구, 바이그램, 단어 트라이그램 등과 같은 보다 높은 레벨에서 수행될 수 있다. 또한, 최상의 전체적인 입력 매칭을 선택하기 위해 모호성 해 소 동작 중에 언어의 문법 구성이 사용될 수 있다.
본 발명은 또한 표의문자 언어의 음성 또는 알파벳 표현과 함께 사용될 수 있다. 음절, 표의문자, 단어 및/또는 구 레벨에서 모호성 해소 동작이 수행될 수 있다.
이와 유사하게, 본 발명은 음성 인식 프런트 엔드의 출력이 음소 및 이와 관련된 매칭 확률을 포함하는 음성 인식에 적용될 수 있다. 음소 후보는 단어, 구, 바이그램, 단어 트라이그램 또는 관용구에 대한 최상의 매칭을 선택하기 위해 조합될 수 있다.
본 발명의 일실시예는 또한 사용자가 단지 몇 개의 스트로크만 입력한 후에 완성 단어를 예측한다. 예를 들면, 높은 확률을 가진 단어의 처음 몇 개의 문자를 성공적으로 인식하면, 시스템의 백 엔드는 처음 몇 개의 문자가 매칭된 문자들과 동일한 단어들의 리스트를 제공할 수 있다. 사용자는 입력을 완성하기 위해 리스트로부터 하나의 단어를 선택할 수 있다. 이와 달리, 리스트 내의 어떠한 단어 근방의 표시가, 그 단어에 기초한 완성형이 리스트 항목에 제공된 지정된 입력에 의해 디스플레이될 수 있음을 사용자에게 암시할 수도 있는데, 즉 후속 팝업 단어 리스트가 그 단어를 포함하는 단어만 보여주고, 차례로 다른 완성형을 나타낼 수도 있다. 처음 몇 개의 문자 각각은 단지 하나의 높은 확률의 후보만을 가질 수도 있고, 처음 몇 개의 문자들은 완성형을 위해 단어 리스트를 선택하는데 사용되는 단 하나의 높은 확률의 후보만 가질 수도 있다. 이와 달리, 처음 몇 개의 문자 중 하나 이상은 모호성을 포함하여, 처음 몇 문자들의 다수의 높은 확률의 조합을 사용하여 완성형을 위해 단어 리스트를 선택하는데 사용될 수 있다. 완성형을 위한 단어 리스트는 사용자가 입력하고자 하는 단어와의 유사성에 따라서 등급화되어 디스플레이될 수 있다. 완성형 단어는 단어 입력의 모호성 해소를 위한 방식과 유사하게 등급화될 수 있다. 예를 들면, 완성형 단어는 예를 들어 사용자의 언어, 사용자가 작성하는 논문, 다이얼로그 박스와 같은 특정 문맥 등에서 사용된 단어의 빈도 및/또는 구, 바이그램, 단어 트라이그램, 관용구 등에서의 발생 빈도에 따라서 등급화될 수 있다. 처리 중인 단어 바로 앞의 하나 이상의 단어가 구, 바이그램, 단어 트라이그램 또는 관용구 등인 경우에, 이들 구, 바이그램, 단어 트라이그램 또는 관용구의 발생 빈도는 완성형 단어의 등급을 결정하는데 있어 그 단어들의 빈도와 추가로 결합될 수 있다. 현재 알려진 구, 바이그램, 단어 트라이그램, 관용구 등에 존재하지 않는 단어는 매우 낮은 발생 빈도를 갖는 미지의 구에 존재하는 것으로 추정된다. 이와 유사하게, 기지의 단어 리스트 내에 없는 단어들은 매우 낮은 발생 빈도를 갖는 미지의 구인 것으로 추정된다. 따라서, 임의의 단어 입력, 또는 단어의 제 1 부분이 가장 유망한 입력을 결정하도록 처리될 수 있다.
본 발명의 일실시예에서는, 백 엔드가 패턴 인식 프론트 엔드에 의해 인식된 문자, 스트로크, 음소 각각에 대한 후보 리스트를 연속적으로 획득하여 완성형 단어의 등급 및 리스트를 갱신한다. 사용자가 보다 많은 입력을 제공하면, 완성형 중에서 덜 유망한 단어는 제거된다. 모호성이 없거나 또는 사용자가 리스트로부터 단어를 선택할 때까지, 사용자가 보다 많은 입력을 제공할수록 완성을 위해 제공된 단어 리스트의 크기는 감소한다.
또한, 패턴 인식 프론트 엔드가 다음 단어의 제 1 입력에 대한 후보 리스트를 제공하기 전에, 백 엔드는 구, 바이그램, 단어 트라이그램, 관용구 등에 대한 완성형 단어 리스트를 결정하기 위해 하나 이상의 직전의 단어들과 기지의 구, 바이그램, 단어 트라이그램, 관용구 등으로부터 완성 단어를 결정한다. 따라서, 본 발명은 또한 사용자에 의해 입력된 마지막 단어에 기초하여 완전한 다음 단어를 예측한다.
본 발명의 일실시예에서, 백 엔드는 동등한 확률을 갖는 임의의 스트로크, 문자, 음절 또는 음소를 나타내는 와일드카드를 사용한다. 단어의 입력의 일부분에 기초한 완성형 단어 리스트가, 사용자에 의해 입력되거나 또는 패턴 인식 프론트 엔드로부터 수신되는 하나 이상의 스트로크, 문자 또는 음소에 대한 와일드 카드를 사용하는 예로 간주될 수 있다.
본 발명의 일실시예에서, 프론트 엔드는 스트로크, 문자 또는 음소를 인식하는데 실패할 수도 있다. 사용자가 입력을 재입력하도록 하기 위해 입력 프로세스를 중지하는 대신에, 프론트 엔드는 결과를 관용하여(tolerate) 와일드카드를 백 엔드로 전송할 수 있다. 하이 레벨에서, 백 엔드는 사용자가 입력을 재입력하도록 하지 않고 모호성을 해결할 수도 있다. 이것은 시스템의 사용자 친화성을 크게 향상시킨다.
본 발명의 일실시예에서, 백 엔드는 프론트 엔드로부터의 하나 이상의 입력을 와일드카드로 자동으로 교체한다. 예를 들면, 기지의 단어 리스트로부터 유사한 단어를 발견하지 못하는 경우, 백 엔드는 후보의 조합을 확장하기 위해 가장 모호 한 입력을 와일드카드로 교체할 수 있다. 예를 들면, 다수의 낮은 확률의 후보를 갖는 리스트가 와일드카드로 교체될 수 있다. 일실시예에서, 프론트 엔드는 리스트 내의 후보들 중 하나와 매칭되는 입력의 확률이 임계치보다 높도록 후보 리스트를 제공한다. 따라서, 모호한 입력은 다수의 낮은 확률의 후보를 갖는다. 다른 실시예에서, 프론트 엔드는 입력과 매칭되는 각 후보가 임계치보다 높도록 후보 리스트를 제공한다. 따라서, 모호한 입력은 후보들 중 하나에 있는 낮은 확률의 입력을 갖는다. 이런 방법으로, 모든 글자들의 확률이 동일하다고 가정한 경우, 와일드카드가 사용되지 않으면 유사한 단어가 발견되지 않는 경우를 해결하기 위해, 시스템은 임의의 글자를 대신하는 스트로크와 같은 와일드 카드를 이용한다.
본 발명의 일실시예에서, 백 엔드는 패턴 인식 프론트 엔드에 의해 제공된 스트로크, 문자 또는 음소의 후보들의 조합으로부터 여러 단어 후보를 구성한다. 예를 들면, 각 문자 입력에 대한 문자 후보는 입력에 대한 매칭 확률에 따라서 등급화될 수 있다. 단어 후보의 구성은 최고 매칭 확률의 문자로부터 보다 낮은 매칭 확률을 갖는 문자 쪽으로 이루어진다. 다수의 단어 후보가 기지의 단어 리스트에서 발견되는 경우에, 보다 낮은 매칭 확률을 갖는 후보는 더 이상 단어 후보를 구성하는데 사용되지 않을 수도 있다.
일실시예에서, 시스템은 가장 확률이 높은 단어 또는 계산된 확률의 순서로 모든 후보 단어 리스트를 디스플레이한다. 시스템은 사용자를 위해 자동으로 출력을 추가할 수 있다. 이 예로는 문자의 자동 강조(accenting), 자동 대문자 시작, 구두점 및 구획 문자의 자동 추가를 들 수 있다.
본 발명의 일실시예는, 음성 인식, 수기 인식, 하드 키 또는 터치 스크린 상의 키보드 입력과 같은 복수의 입력 방안을 위한 하나의 언어적 백 엔드의 동시 사용을 제공한다. 본 발명의 다른 실시예에서는, 단어 후보의 모호성 해소를 위해 언어적 백 엔드가 사용된다. 단어 후보들 및 이들의 매칭 확률을 결정하기 위해 백 엔드 구성요소가 프런트 엔드로부터의 입력 후보들을 조합한 후에, 언어적 백 엔드는 언어적 특징에 따라서 단어 후보들의 등급을 정하는데 사용된다. 예를 들면, 언어적 백 엔드는 단어 후보의 모호성 해소를 위해 예컨대 사용자에 의해 사용된 언어, 사용자에 의해 작성된 논문, 입력이 요구되는 문맥 등에서 단어의 사용 빈도를 단어 후보 및 백 엔드 구성요소로부터의 매칭 확률과 조합한다. 언어적 백 엔드는 또한 단어 바이그램, 단어 트라이그램, 구 등에 기초하여 모호성 해소 동작을 수행할 수 있다. 또한, 언어적 백 엔드는 문맥, 문법 구조 등에 기초하여 모호성 해소 동작을 수행할 수 있다. 언어적 백 엔드에 의해 수행된 작업은 음성 인식, 수기 인식 및 하드 키 또는 터치 스크린을 사용하는 키보드 입력과 같은 여러 입력 방법에 대해 동일하므로, 언어적 백 엔드는 복수의 입력 방안에 공유될 수 있다. 본 발명의 일실시예에서, 언어적 백 엔드는 동시에 복수의 입력 방안을 지원하며, 따라서, 사용자가 여러 입력 방안을 조합하여 입력을 제공하는 경우에, 이들 혼합 입력 모드를 지원하기 위해 단지 하나의 언어적 백 엔드만이 요구된다. 본 발명의 다른 실시예에서는, 특정 프론트 엔드로부터의 각각의 입력이, 100%의 매칭 확률로 기록되는 명시적인 단어 구성요소 후보로서 취급되거나 또는 백 엔드가 대응하는 위치에서 명시적인 스트로크, 문자 또는 음절을 포함하는 단어들과만 매칭시키는 이들 명 시적인 스트로크, 문자 또는 음절로서 취급된다.
본 발명은 또한, 하나 이상의 인식 시스템으로부터의 관련 확률을 갖는 후보 세트를 사용하며 언어의 어떠한 기지의 특징을 사용하여 그 세트의 모호성을 해결하는 하이브리드 시스템을 포함한다. 수기/음성 인식으로부터의 모호성 해결은 시스템의 인식률을 향상시켜 사용자 친화성을 향상시킨다.
이상 바람직한 실시예를 참조하여 본 발명을 설명하였지만, 당업자라면 다른 응용예가 본 발명의 사상 및 범주로부터 벗어나지 않고 본 명세서에 개시된 사항을 대체할 수도 있다는 것을 쉽게 알 수 있을 것이다. 따라서, 본 발명은 첨부한 청구범위에 의해서만 한정된다.

Claims (54)

  1. 데이터 처리 시스템에서 언어 입력(language input)을 인식하는 방법에 있어서,
    패턴 인식을 통해 언어의 단어의 적어도 일부분의 사용자 입력을 처리하여 복수의 단어 구성요소의 각각에 대한 적어도 하나의 인식 결과를 생성하는 단계로서, 상기 적어도 하나의 인식 결과는 복수의 단어 구성요소 후보와, 상기 단어 구성요소 후보 각각에 대응하는 복수의 확률 표시자를 포함하는, 사용자 입력 처리 단계와,
    상기 단어 구성요소 후보의 서브세트를 조합하여 상기 복수의 확률 표시자와 단어 리스트의 사용 확률을 나타내는 데이터를 이용하여 상기 단어의 상기 사용자 입력에 대한 하나 이상의 단어 후보를 결정하는 단계를 포함하는
    언어 입력 인식 방법.
  2. 제 1 항에 있어서,
    상기 패턴 인식은 수기 인식을 포함하는
    언어 입력 인식 방법.
  3. 제 2 항에 있어서,
    상기 복수의 단어 구성요소 후보 각각은 스트로크를 포함하고, 상기 단어는 표의문자 언어 부호(language symbol)를 포함하는
    언어 입력 인식 방법.
  4. 제 2 항에 있어서,
    상기 복수의 단어 구성요소 후보 각각은 문자를 포함하고, 상기 단어는 알파벳 단어를 포함하는
    언어 입력 인식 방법.
  5. 제 1 항에 있어서,
    상기 패턴 인식은 음성 인식을 포함하고, 상기 복수의 단어 구성요소 후보 각각은 음소(phoneme)를 포함하는
    언어 입력 인식 방법.
  6. 제 1 항에 있어서,
    단어 구성요소에 대한 상기 적어도 하나의 인식 결과 중 하나는 단어 구성요 소 후보 세트 중 어느 하나가 상기 단어에 대한 상기 사용자 입력의 일부분과 매칭될 확률이 동일함을 나타내는 표시를 포함하고, 상기 단어 구성요소 후보 세트는 상기 언어의 알파벳 문자를 포함하는
    언어 입력 인식 방법.
  7. 제 1 항에 있어서,
    상기 단어 리스트의 사용 확률을 나타내는 상기 데이터는 상기 언어에서의 단어 사용 빈도와, 상기 사용자에 의한 단어 사용 빈도와, 문서에서의 단어 사용 빈도 중 어느 하나를 포함하는
    언어 입력 인식 방법.
  8. 제 1 항에 있어서,
    상기 단어 리스트의 사용 확률을 나타내는 상기 데이터는 상기 언어에서의 구(phrase)와, 상기 언어에서의 단어 쌍과, 상기 언어에서의 단어 트라이그램(word trigram)과, 상기 언어에서의 관용어 중 어느 하나를 포함하는
    언어 입력 인식 방법.
  9. 제 1 항에 있어서,
    상기 단어 리스트의 사용 확률을 나타내는 상기 데이터는 상기 언어의 형태론(morphology)을 나타내는 데이터와, 상기 언어의 문법 규칙을 나타내는 데이터 중 어느 하나를 포함하는
    언어 입력 인식 방법.
  10. 제 1 항에 있어서,
    상기 단어 리스트의 사용 확률을 나타내는 상기 데이터는 상기 단어의 상기 사용자 입력이 수신되는 문맥을 나타내는 데이터를 포함하는
    언어 입력 인식 방법.
  11. 제 1 항에 있어서,
    상기 사용자 입력은 상기 단어에 대한 완전한 단어 구성요소 세트의 일부만을 지정하는
    언어 입력 인식 방법.
  12. 제 1 항에 있어서,
    상기 하나 이상의 단어 후보는 상기 단어 구성요소 후보의 조합으로부터 형성된 단어의 일부분을 포함하는
    언어 입력 인식 방법.
  13. 제 1 항에 있어서,
    상기 하나 이상의 단어 후보는 복수의 단어 후보를 포함하고,
    상기 방법은
    선택을 위해 상기 복수의 단어 후보를 제시하는 단계와,
    상기 복수의 단어 후보로부터 사용자 선택을 수신하는 단계를 더 포함하는
    언어 입력 인식 방법.
  14. 제 13 항에 있어서,
    다음 단어의 예측에서 하나 이상의 단어 후보를 예측하는 단계를 더 포함하는
    언어 입력 인식 방법.
  15. 제 13 항에 있어서,
    상기 복수의 단어 후보는 사용자가 의도하는 단어와 매칭될 확률의 순서대로 제시되는
    언어 입력 인식 방법.
  16. 제 1 항에 있어서,
    상기 하나 이상의 단어 후보 중에서 가장 유망한 단어를 상기 단어의 사용자 입력에 대한 인식된 단어로서 자동으로 선택하는 단계와,
    다음 단어의 사용자 입력의 예측에서 상기 가장 유망한 단어에 기초하여 하나 이상의 단어 후보를 예측하는 단계를 더 포함하는
    언어 입력 인식 방법.
  17. 제 1 항에 있어서,
    하나 이상의 문자를 자동으로 강조(accenting)하는 단계와,
    하나 이상의 문자를 자동으로 대문자로 시작하는 단계와,
    하나 이상의 구두점 부호를 자동으로 추가하는 단계와,
    하나 이상의 구획문자(delimiter)를 자동으로 추가하는 단계 중 어느 하나를 더 포함하는
    언어 입력 인식 방법.
  18. 제 1 항에 있어서,
    다음 단어의 예측에서 하나 이상의 단어 후보를 예측하는 단계를 더 포함하는
    언어 입력 인식 방법.
  19. 데이터 처리 시스템에서 실행될 때 시스템으로 하여금 언어 입력을 인식하는 방법을 실행하게 하는 명령어 데이터가 수록되어 있는 기계 판독 가능 매체에 있어서,
    상기 방법은
    패턴 인식을 통해 언어의 단어의 사용자 입력을 처리하여 복수의 단어 구성요소에 대한 복수의 인식 결과를 각각 생성하는 단계로서, 상기 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와 복수의 확률 표시자를 포함하고, 상기 복수의 확률 표시자는 서로에 대해 상기 사용자 입력의 일부분에 대한 상기 복수의 단어 구성요소의 매칭 확률의 정도를 나타내는, 사용자 입력 처리 단계와,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 상기 단어의 사용자 입력에 대한 하나 이상의 단어 후보를 결정하는 단계를 포함하는
    기계 판독 가능 매체.
  20. 제 19 항에 있어서,
    상기 하나 이상의 단어 후보는 복수의 단어 후보를 포함하고,
    상기 방법은
    선택을 위해 상기 복수의 단어 후보를 제시하는 단계와,
    상기 복수의 단어 후보로부터 사용자 선택을 수신하는 단계와,
    다음 단어의 사용자 입력의 예측에서 상기 사용자 선택에 기초하여 하나 이상의 단어 후보를 예측하는 단계를 더 포함하는
    기계 판독 가능 매체.
  21. 제 19 항에 있어서,
    상기 방법은
    상기 하나 이상의 단어 후보 중에서 최고 확률의 후보를 상기 단어의 사용자 입력에 대한 인식된 단어로서 자동으로 선택하는 단계와,
    다음 단어의 사용자 입력의 예측에서 확률에 기초하여 하나 이상의 단어 후보를 예측하는 단계를 더 포함하는
    기계 판독 가능 매체.
  22. 언어 입력을 인식하는 데이터 처리 시스템에 있어서,
    패턴 인식을 통해 언어의 단어의 사용자 입력을 처리하여 복수의 단어 구성요소에 대한 복수의 인식 결과를 생성하는 수단으로서, 상기 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와 복수의 확률 표시자를 포함하며, 상기 복수의 확률 표시자는 상기 사용자 입력의 일부분에 대한 상기 복수의 단어 구성요소의 매칭 확률의 정도를 나타내는, 사용자 입력 처리 수단과,
    상기 복수의 단어 구성요소 후보를 상기 사용자 입력을 예측하는 하나 이상의 단어 후보에 결합시키는 수단을 포함하는
    데이터 처리 시스템.
  23. 제 22 항에 있어서,
    상기 하나 이상의 단어 후보는 복수의 단어 후보를 포함하고,
    상기 시스템은
    선택을 위해 상기 복수의 단어 후보를 제시하는 수단과,
    상기 복수의 단어 후보로부터 사용자 선택을 수신하는 수단을 더 포함하고,
    상기 복수의 단어 후보는 상기 사용자 입력과 매칭할 확률 순서대로 제시되는
    데이터 처리 시스템.
  24. 제 22 항에 있어서,
    상기 복수의 인식 결과 각각은 상기 사용자 입력의 일부분과의 상대적인 매칭 확률을 나타내기 위한, 복수의 단어 구성요소 후보와 관련된 복수의 확률 표시자를 각각 포함하는
    데이터 처리 시스템.
  25. 제 22 항에 있어서,
    하나 이상의 문자를 자동으로 강조(accenting)하는 수단과,
    하나 이상의 문자를 자동으로 대문자로 시작하는 수단과,
    하나 이상의 구두점 부호를 자동으로 추가하는 수단과,
    하나 이상의 구획문자(delimiter)를 자동으로 추가하는 수단 중 어느 하나를 더 포함하는
    데이터 처리 시스템.
  26. 제 22 항에 있어서,
    상기 복수의 단어 후보의 선택은, 패턴 인식이 하나 이상의 단어 구성요소에 대한 후속 확률 표시자를 조정하게 하는
    데이터 처리 시스템.
  27. 데이터 처리 시스템에서 사용자 언어 입력을 처리하는 방법에 있어서,
    복수의 단어 구성요소에 대응하는 복수의 인식 결과를 수신하는 단계로서, 상기 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와 복수의 확률 표시자를 포함하고, 상기 복수의 확률 표시자는 상기 사용자 입력의 일부분에 대한 상기 복수의 단어 구성요소의 매칭 확률을 나타내는, 복수의 인식 결과 수신 단계와,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터를 이용하여 상기 사용자 입력을 예측하는 하나 이상의 단어 후보를 결정하는 단계를 포함하는
    사용자 언어 입력 처리 방법.
  28. 제 27 항에 있어서,
    상기 단어 구성요소 후보는 수기 인식 또는 키패드 입력으로부터의 스트로크와, 수기 인식 또는 키패드로부터의 문자와, 음성 인식으로부터의 음소와, 수기 인 식 또는 키패드 입력으로부터의 음절 또는 다른 음성 표현 중 어느 하나를 포함하는
    사용자 언어 입력 처리 방법.
  29. 제 27 항에 있어서,
    상기 언어는 알파벳 및 표의문자 중 어느 하나인
    사용자 언어 입력 처리 방법.
  30. 제 27 항에 있어서,
    상기 하나 이상의 단어 후보를 결정하는 단계는 상기 복수의 인식 결과의 단어 구성요소 후보의 복수의 조합을 제거하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  31. 제 30 항에 있어서,
    상기 하나 이상의 단어 후보를 결정하는 단계는 상기 언어의 단어 리스트로부터 복수의 단어 후보를 선택하는 단계를 더 포함하되, 상기 복수의 단어 후보는 상기 복수의 인식 결과의 단어 구성요소 후보의 조합을 포함하는
    사용자 언어 입력 처리 방법.
  32. 제 31 항에 있어서,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 상기 데이터를 사용하여 상기 사용자 입력에 대한 상대적인 매칭 확률을 나타내기 위한, 상기 하나 이상의 단어 후보에 대한 하나 이상의 확률 표시자를 결정하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  33. 제 32 항에 있어서,
    상기 하나 이상의 확률 표시자에 따라서 상기 하나 이상의 단어 후보를 분류하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  34. 제 33 항에 있어서,
    상기 하나 이상의 단어 후보로부터 자동으로 하나의 단어를 선택하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  35. 제 34 항에 있어서,
    상기 자동으로 선택하는 단계는 구, 단어 쌍, 단어 트라이그램 및 관용어 중 어느 하나에 대한 데이터를 이용하는
    사용자 언어 입력 처리 방법.
  36. 제 34 항에 있어서,
    상기 자동으로 선택하는 단계는 언어 형태론 및 상기 언어의 문법 규칙 중 어느 하나의 이용을 포함하는
    사용자 언어 입력 처리 방법.
  37. 제 34 항에 있어서,
    상기 자동으로 선택하는 단계는 상기 사용자 입력의 문맥 사용을 포함하는
    사용자 언어 입력 처리 방법.
  38. 제 34 항에 있어서,
    상기 사용자 입력의 다음 단어의 예측에 기초하여 복수의 단어 후보를 예측하는 단계를 더 포함하되, 상기 예측은 상기 다음 단어의 상기 사용으로부터 임의의 입력 전에 이루어지는
    사용자 언어 입력 처리 방법.
  39. 제 33 항에 있어서,
    사용자 선택을 위해 상기 하나 이상의 단어 후보를 제시하는 단계와,
    상기 하나 이상의 단어 후보의 상기 사용자 선택을 수신하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  40. 제 39 항에 있어서,
    상기 복수의 단어 후보는 상기 사용자 입력에 대응하는 확률 순서 또는 내림차순으로 제시되는
    사용자 언어 입력 처리 방법.
  41. 제 39 항에 있어서,
    적어도 상기 사용자 선택을 이용하여 다음 단어의 사용자 입력의 예측에 복수의 단어 후보를 예측하는 단계를 더 포함하는
    사용자 언어 입력 처리 방법.
  42. 제 27 항에 있어서,
    단어 구성요소에 대한 상기 복수의 인식 결과 중 하나는 단어 구성요소 후보 세트 중 어느 하나가 상기 사용자 입력의 일부분과 매칭될 확률이 동일함을 나타내는 표시를 포함하는
    사용자 언어 입력 처리 방법.
  43. 제 27 항에 있어서,
    상기 단어 리스트의 사용 확률을 나타내는 상기 데이터는 상기 언어에서의 단어 사용 빈도와, 사용자에 의한 단어 사용 빈도와, 문서에서의 단어 사용 빈도 중 적어도 두 개를 포함하는
    사용자 언어 입력 처리 방법.
  44. 제 27 항에 있어서,
    하나 이상의 문자를 자동으로 강조하는 단계와,
    하나 이상의 문자를 자동으로 대문자로 시작하는 단계와,
    하나 이상의 구두점 부호를 자동으로 추가하는 단계와,
    하나 이상의 구획문자를 자동으로 추가하는 단계 중 어느 하나를 더 포함하는
    사용자 언어 입력 처리 방법.
  45. 데이터 처리 시스템에서 실행될 때 상기 시스템으로 하여금 단어의 적어도 일부분의 사용자 언어 입력을 처리하는 방법을 수행하게 하는 명령어 데이터를 포함하는 기계 판독 가능 매체에 있어서,
    상기 방법은
    복수의 단어 구성요소에 대응하는 복수의 인식 결과를 수신하는 단계로서, 상기 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와 복수의 확률 표시자를 포함하고, 상기 복수의 확률 표시자는 상기 사용자 입력의 상관된 부분에 대한 상기 복수의 단어 구성요소의 매칭 확률을 나타내는, 복수의 인식 결과 수신 단계와,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터를 이용하여 상기 사용자 입력에 대한 하나 이상의 단어 후보를 결정하는 단계를 포함하 는
    기계 판독 가능 매체.
  46. 제 45 항에 있어서,
    상기 하나 이상의 단어 후보를 결정하는 단계는
    상기 복수의 인식 결과의 단어 구성요소 후보의 복수의 조합을 제거하는 단계와,
    상기 언어의 단어 리스트로부터 복수의 단어 후보를 선택하는 단계를 포함하되,
    상기 복수의 단어 후보는 상기 복수의 인식 결과의 단어 구성요소 후보들의 조합을 포함하는
    기계 판독 가능 매체.
  47. 제 46 항에 있어서,
    상기 방법은
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 상기 단어의 상기 사용자 입력에 대한 상대적인 매칭 확률을 나타내기 위해 상기 하나 이상의 단어 후보에 대한 하나 이상의 확률 표시자를 결정하는 단계와,
    상기 하나 이상의 확률 표시자에 따라서 상기 하나 이상의 단어 후보를 분류하는 단계와,
    상기 하나 이상의 단어 후보로부터 하나의 단어를 자동으로 선택하는 단계와,
    다음 사용자 입력 단어의 예측에서 상기 자동으로 선택된 하나의 단어에 기초하여 복수의 단어 후보를 예측하는 단계를 더 포함하는
    기계 판독 가능 매체.
  48. 언어 입력을 처리하는 데이터 처리 시스템에 있어서,
    복수의 단어 구성요소에 대응하는 복수의 인식 결과를 수신하는 수단으로서, 상기 인식 결과는 사용자 입력 단어의 일부에 대응하고, 상기 복수의 인식 결과 중 적어도 하나는 복수의 단어 구성요소 후보와 복수의 확률 표시자를 포함하고, 상기 복수의 확률 표시자는 상기 사용자 입력 단어의 상기 대응하는 부분에 대한 상기 복수의 단어 구성요소의 매칭 확률의 정도를 나타내는, 복수의 인식 결과 수신 수단과,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 데이터로부터 하나 이상의 단어 후보를 결정하는 수단을 포함하는
    데이터 처리 시스템.
  49. 제 48 항에 있어서,
    상기 하나 이상의 단어 후보를 결정하는 수단은
    상기 복수의 인식 결과의 단어 구성요소 후보의 복수의 조합을 제거하는 수단과,
    상기 단어의 언어의 단어 리스트로부터 복수의 단어 후보를 선택하는 수단을 포함하되,
    상기 복수의 단어 후보는 상기 복수의 인식 결과의 단어 구성요소 후보의 조합을 포함하는
    데이터 처리 시스템.
  50. 제 49 항에 있어서,
    상기 복수의 인식 결과 및 단어 리스트의 사용 확률을 나타내는 상기 데이터로부터 상기 사용자 입력 단어에 대한 상대적인 매칭 확률을 나타내기 위해 상기 하나 이상의 단어 후보에 대한 하나 이상의 확률 표시자를 결정하는 수단과,
    상기 하나 이상의 확률 표시자에 따라서 상기 하나 이상의 단어 후보를 분류하는 수단과,
    사용자 선택을 위해 상기 하나 이상의 단어 후보를 제시하는 수단과,
    상기 복수의 단어 후보로부터 상기 사용자 선택을 수신하는 수단과,
    다음 단어의 후속 사용자 입력의 예측에서 복수의 예측된 단어 후보를 예측하는 수단을 더 포함하되,
    상기 복수의 예측된 단어 후보는 확률 순서로 제시되는
    데이터 처리 시스템.
  51. 제 48 항에 있어서,
    다음 단어의 사용자 입력의 예측에서 복수의 단어 후보를 예측하는 수단을 더 포함하는
    데이터 처리 시스템.
  52. 데이터 처리 시스템에서 언어 입력을 예측하는 방법에 있어서,
    사용자 입력 단어 세트의 사용자 입력 단어를 수신하는 단계와,
    후속 사용자 입력 단어를 예측하는 단계를 포함하되,
    상기 예측 단계는 상기 사용자 입력 단어 세트의 서브 세트의 사용을 포함하고, 상기 예측 단계는 상기 후속 단어의 상기 사용자 입력 전에 후속 단어를 예측하는
    언어 입력 예측 방법.
  53. 제 52 항에 있어서,
    상기 예측 단계는 구, 단어 쌍, 단어 트라이그램 및 관용구 중 어느 하나의 데이터를 사용하는
    언어 입력 예측 방법.
  54. 제 52 항에 있어서,
    상기 예측 단계는 언어 형태론 및 언어의 문법 규칙 중 어느 하나를 사용하는
    언어 입력 예측 방법.
KR1020067018544A 2004-02-11 2005-02-08 언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측방법 KR100912753B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US54417004P 2004-02-11 2004-02-11
US60/544,170 2004-02-11
US11/043,506 US7319957B2 (en) 2004-02-11 2005-01-25 Handwriting and voice input with automatic correction
US11/043,506 2005-01-25
US11/043,525 US20050192802A1 (en) 2004-02-11 2005-01-25 Handwriting and voice input with automatic correction
US11/043,525 2005-01-25

Publications (2)

Publication Number Publication Date
KR20070090075A true KR20070090075A (ko) 2007-09-05
KR100912753B1 KR100912753B1 (ko) 2009-08-18

Family

ID=34865026

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067018544A KR100912753B1 (ko) 2004-02-11 2005-02-08 언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측방법

Country Status (9)

Country Link
EP (1) EP1714234A4 (ko)
JP (1) JP2007524949A (ko)
KR (1) KR100912753B1 (ko)
CN (1) CN1918578B (ko)
AU (1) AU2005211782B2 (ko)
BR (1) BRPI0507577A (ko)
CA (1) CA2556065C (ko)
TW (1) TW200538969A (ko)
WO (1) WO2005077098A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101636823B1 (ko) * 2015-11-27 2016-07-07 (주)인키움 자기소개서 자동 제공 서버 및 제공 방법
KR20160105400A (ko) * 2013-12-11 2016-09-06 터치타입 리미티드 전자 장치에 텍스트를 입력하는 시스템 및 방법

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008076812A (ja) * 2006-09-22 2008-04-03 Honda Motor Co Ltd 音声認識装置、音声認識方法、及び音声認識プログラム
US8032374B2 (en) 2006-12-05 2011-10-04 Electronics And Telecommunications Research Institute Method and apparatus for recognizing continuous speech using search space restriction based on phoneme recognition
KR100908444B1 (ko) * 2006-12-05 2009-07-21 한국전자통신연구원 음소 인식 기반의 탐색공간 제한을 이용한 연속음성인식장치 및 방법
US8237665B2 (en) * 2008-03-11 2012-08-07 Microsoft Corporation Interpreting ambiguous inputs on a touch-screen
WO2010084973A1 (ja) 2009-01-20 2010-07-29 日本電気株式会社 入力装置、情報処理装置、入力方法およびプログラム
JP2011065322A (ja) * 2009-09-16 2011-03-31 Konica Minolta Holdings Inc 文字認識システム及び文字認識プログラム、並びに音声認識システム及び音声認識プログラム
US8543382B2 (en) * 2010-10-27 2013-09-24 King Abdulaziz City for Science and Technology (KACST) Method and system for diacritizing arabic language text
CN103631802B (zh) * 2012-08-24 2015-05-20 腾讯科技(深圳)有限公司 歌曲信息检索方法、装置及相应的服务器
DE102013009375A1 (de) * 2012-12-28 2014-07-03 Volkswagen Aktiengesellschaft Verfahren zum Eingeben und Erkennen einer Zeichenkette
TWI587281B (zh) * 2014-11-07 2017-06-11 Papago Inc Voice control system and its method
TWI616868B (zh) * 2014-12-30 2018-03-01 鴻海精密工業股份有限公司 會議記錄裝置及其自動生成會議記錄的方法
TWI619115B (zh) * 2014-12-30 2018-03-21 鴻海精密工業股份有限公司 會議記錄裝置及其自動生成會議記錄的方法
CN105810197B (zh) * 2014-12-30 2019-07-26 联想(北京)有限公司 语音处理方法、语音处理装置和电子设备
US10657404B2 (en) 2015-07-17 2020-05-19 Rakuten, Inc. Character recognition device, character recognition method, and character recognition program
CN106406807A (zh) * 2016-09-19 2017-02-15 北京云知声信息技术有限公司 一种语音修改文字的方法及装置
JP7143665B2 (ja) 2018-07-27 2022-09-29 富士通株式会社 音声認識装置、音声認識プログラムおよび音声認識方法
CN109584882B (zh) * 2018-11-30 2022-12-27 南京天溯自动化控制***有限公司 一种针对特定场景的语音转文字的优化方法及***
KR102577589B1 (ko) * 2019-10-22 2023-09-12 삼성전자주식회사 음성 인식 방법 및 음성 인식 장치
TWI771720B (zh) 2020-07-24 2022-07-21 華碩電腦股份有限公司 具有多型態輸入之辨識方法及使用其之電子裝置
US11726657B1 (en) 2023-03-01 2023-08-15 Daniel Pohoryles Keyboard input method, system, and techniques

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4003025A (en) * 1975-12-24 1977-01-11 International Business Machines Corporation Alphabetic character word upper/lower case print convention apparatus and method
US5244802A (en) * 1987-11-18 1993-09-14 Phytogen Regeneration of cotton
US5828991A (en) * 1995-06-30 1998-10-27 The Research Foundation Of The State University Of New York Sentence reconstruction using word ambiguity resolution
US5917941A (en) * 1995-08-08 1999-06-29 Apple Computer, Inc. Character segmentation technique with integrated word search for handwriting recognition
US5950160A (en) * 1996-10-31 1999-09-07 Microsoft Corporation Method and system for displaying a variable number of alternative words during speech recognition
US5926566A (en) * 1996-11-15 1999-07-20 Synaptics, Inc. Incremental ideographic character input method
US5896321A (en) * 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
US6393395B1 (en) * 1999-01-07 2002-05-21 Microsoft Corporation Handwriting and speech recognizer using neural network with separate start and continuation output scores
US20020152075A1 (en) * 2001-04-16 2002-10-17 Shao-Tsu Kung Composite input method
WO2004023455A2 (en) * 2002-09-06 2004-03-18 Voice Signal Technologies, Inc. Methods, systems, and programming for performing speech recognition
US7444286B2 (en) * 2001-09-05 2008-10-28 Roth Daniel L Speech recognition using re-utterance recognition

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160105400A (ko) * 2013-12-11 2016-09-06 터치타입 리미티드 전자 장치에 텍스트를 입력하는 시스템 및 방법
KR101636823B1 (ko) * 2015-11-27 2016-07-07 (주)인키움 자기소개서 자동 제공 서버 및 제공 방법

Also Published As

Publication number Publication date
WO2005077098A8 (en) 2007-05-10
CN1918578B (zh) 2012-05-02
CA2556065A1 (en) 2005-08-25
EP1714234A2 (en) 2006-10-25
EP1714234A4 (en) 2012-03-21
BRPI0507577A (pt) 2007-07-03
CN1918578A (zh) 2007-02-21
TW200538969A (en) 2005-12-01
WO2005077098A3 (en) 2005-11-03
CA2556065C (en) 2012-07-03
JP2007524949A (ja) 2007-08-30
WO2005077098A2 (en) 2005-08-25
KR100912753B1 (ko) 2009-08-18
AU2005211782A1 (en) 2005-08-25
AU2005211782B2 (en) 2009-01-22
WO2005077098B1 (en) 2005-12-08

Similar Documents

Publication Publication Date Title
KR100912753B1 (ko) 언어 입력 인식 방법, 기계 판독 가능 매체, 데이터 처리시스템, 사용자 언어 입력 처리 방법 및 언어 입력 예측방법
US7319957B2 (en) Handwriting and voice input with automatic correction
US20050192802A1 (en) Handwriting and voice input with automatic correction
JP4829901B2 (ja) マニュアルでエントリされた不確定なテキスト入力を音声入力を使用して確定する方法および装置
US7395203B2 (en) System and method for disambiguating phonetic input
US9786273B2 (en) Multimodal disambiguation of speech recognition
JP4527731B2 (ja) 自動訂正機能を備えた仮想キーボードシステム
EP2278581B1 (en) Multimodal disambiguation of speech recognition
JP2005202917A (ja) 表音入力の曖昧さを除くためのシステムおよび方法
EP1256871A2 (en) Reduced keyboard disambiguating system
CN102272827B (zh) 利用语音输入解决模糊的手工输入文本输入的方法和装置
JP2007133884A5 (ko)
KR20040099937A (ko) 터치스크린을 이용한 문자입력장치 및 그 방법

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

FPAY Annual fee payment

Payment date: 20130723

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140722

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160809

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee