KR20100015696A - 아시아어 문자를 발생하는 인식 아키텍처 - Google Patents

아시아어 문자를 발생하는 인식 아키텍처 Download PDF

Info

Publication number
KR20100015696A
KR20100015696A KR1020097021801A KR20097021801A KR20100015696A KR 20100015696 A KR20100015696 A KR 20100015696A KR 1020097021801 A KR1020097021801 A KR 1020097021801A KR 20097021801 A KR20097021801 A KR 20097021801A KR 20100015696 A KR20100015696 A KR 20100015696A
Authority
KR
South Korea
Prior art keywords
spelling
computer
word
implemented
user
Prior art date
Application number
KR1020097021801A
Other languages
English (en)
Other versions
KR101532447B1 (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 KR20100015696A publication Critical patent/KR20100015696A/ko
Application granted granted Critical
Publication of KR101532447B1 publication Critical patent/KR101532447B1/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/26Speech to text systems
    • 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/232Orthographic correction, e.g. spell checking or vowelisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Document Processing Apparatus (AREA)

Abstract

아시아 언어 음성 인식 시스템에서 잘못된 인식 결과를 정정하는 아키텍처. 음성 입력을 수신한 것에 응답하여, 인식 결과의 잘못된 스펠링을 정정하거나 새로운 단어를 발생하는 스펠링 모드(spelling mode)가 기동될 수 있다. 음성 및/또는 수작업 선택 및 입력을 사용하여 정정이 달성될 수 있다. 이 아키텍처는 종래의 시스템에서와 같이 여러번보다는 한번에 정정하는 것을 용이하게 해준다. 스펠링 모드를 사용하여 정정된 단어는 하나의 단위로서 정정되고 단어로 취급된다. 스펠링 모드는 적어도 아시아 대륙의 언어들(중국어 간체, 중국어 번체, 및/또는 일본어 등의 기타 아시아 언어 등)에 적용된다.
음성 인식, 스펠링 모드, 엔진 사전, 음향 모델, 언어 모델

Description

아시아어 문자를 발생하는 인식 아키텍처{RECOGNITION ARCHITECTURE FOR GENERATING ASIAN CHARACTERS}
영어의 음성 인식(speech recognition, SR) 엔진은 스펠링 마법사를 필요로 하는데, 그 주된 이유는 모든 또는 거의 모든 고유 명사, 특히 이름을 엔진 사전(engine lexicon)에 포함시킬 수 없기 때문이다. 반면에, 중국어 문자 집합은 닫혀(closed) 있는 것으로 간주될 수 있는데, 그 이유는 모든 문자가 사전에 포함되어 있기 때문이다. 사전에 없는(out-of-vocabulary) 문자를 생각하거나 그에 관해 걱정할 필요가 없다. 그렇지만, 중국어 SR 엔진에서의 주된 문제점은 많은 서로 다른 문자에 걸친 동음이의어 공유(homophone sharing)이다. 약 47,000개의 유효한 중국어 문자가 있지만, 중국어에는 단지 약 1,600개의 서로 다른, 고정된 음절(fixed syllable)이 있을 뿐이다. 이것은 음절이 서로 다른 문자들에 걸쳐 고르게 분포되어 있는 경우, 각각의 음절이 약 23-31개의 서로 다른 문자(이들 문자 중 다수가 서로 다른 것을 의미할 수 있음)에 대응할 수 있다는 것을 의미한다.
고정된 음절은 유효한 중국어 문자와 연관된 음절의 집합이다. 예를 들어, 음절 "chu"는
Figure 112009063908111-PCT00001
(병음으로 /ch uh/)와 같은 문자들에 대응하지만, "chiu"는 어느 유효한 문자에도 대응하지 않는다. 제한된 수의 고정된 음절로 인해, 상당한 수의 문자가 동일한 발음을 공유한다. 이하는 54개 문자가 /l ih/와 동일한 발음을 공유하는 것의 일례이며, /l ih/에 대한 목록이 여전히 다 포함하고 있는 것은 아니다.
Figure 112009063908111-PCT00002
그 결과, 엔진이 단어를 정확하게 인식하지 못할 때, 사용자는 대안의 목록으로부터 그 단어를 정정하려고 시도하거나, 인식을 위해 원하는 단어를 반복하여 발성하려고 시도할 수 있지만, 이하의 문제점들로 인해 성공하지 못한다.
첫째, 음성 오디오가 음향 모델(acoustic model, AM)에 의해 정확하게 처리되지 않거나, AM이 원하는 단어에 대해 다른 단어들보다 더 낮은 관련성 점수(relevance score)를 갖는 반면 다른 단어들이 더 높은 언어 모델(language model, LM) 점수를 갖는 경우, 사용자가 그 단어를 몇번 발성하는지에 상관없이, 출력이 대안의 목록으로부터의 정확한 단어가 아닐 수 있다.
둘째, 음성 오디오가 AM에 의해 정확하게 처리되는 것으로 가정하지만, 원하는 문자가 대체 항목의 수를 초과하는 목록 엔트리에 있어 사용자에게 제시되지 않는 경우, 사용자가 타이핑을 하지 않고서는 단어를 획득할 수 없게 된다. 이러한 일은 중국어에서 일어날 수 있으며, 문자가 숫자 또는 번호의 동음이의어이기도 할 때(이 경우 SR 엔진은 숫자들에 대해 서로 다른 형식의 ITN(Inversed-Text Normalization, "십이"를 "12"로 정규화하는 것 등) 결과를 디스플레이함) 특히 그렇다.
셋째, 중국어 SR 엔진의 경우 고려해야 할 사전에 없는 문자가 없을지라도, 사용자에 의해 다른 문자들의 조합을 통해 새로운 단어가 생성될 수 있다. 새로운 단어 이외에, 단어 경계를 표시하는 단어들 간의 공백이 없다. 단어 경계를 결정하기 위해, 아시아 언어들(최소한 중국어 간체(CHS), 중국어 번체(CHT), 및 일본어(JPN)에 관계되어 있음)은 엔진 또는 IME(input method editor) 프로세스에서 단어 분리(word-breaking)를 필요로 한다. 결과적으로, 사용자가 사람 이름 등의 고유 명사(모르는 단어일 가능성이 아주 많음)를 중국어 SR 엔진에 불러줄 때, 그 이름이 아주 흔하여 훈련 데이터에 있지 않는 한, SR이 그 이름을 정확하게 처리할 가능성은 아주 낮다. AM 및 LM이 완벽하게 동작하고 있더라도, 사용자가 앞서 말한 동음이의어 문제로 인해
Figure 112009063908111-PCT00003
의 원하는 출력과 다른,
Figure 112009063908111-PCT00004
(두번째 문자에 초점이 맞추어져 있으며, 여기서 첫번째 문자는 성이고 두번째 문자는 이름임)와 같은 문자를 갖는 출력 이름을 여전히 수신할 수 있다(즉,
Figure 112009063908111-PCT00005
Figure 112009063908111-PCT00006
이 동음이의어이지만 서로 다른 사람의 이름으로 사용됨). 이것은 또한 중국어 대화 중에도 사람의 인식에 적용되며, 이 경우 첫번째 사람이 두번째 사람에게 자신의 이름을 말하고, 두번째 사람이 이름에 정확하게 어느 문자가 사용되는지를 첫번째 사람에게 물어볼 필요가 있게 된다.
마지막으로, 사용자가 SR 프로세스 동안에 단어 내의 문자를 정정하려고 시도할 때, 정확한 문자가 궁극적으로 대안의 목록에 나오는지를 판정하기 위해 문자(들)를 선택하고 및/또는 문자(들)를 반복하여 발성함으로써 정확한 출력을 획득하는 것이 가능할 수 있다. 종종, 문자가 많은 동음이의어를 갖지 않을 때, 대체 할 정확한 단어를 획득할 수 있다. 그렇지만, 이러한 종류의 정정은 개개의 문자에 기초하여 행해진다. 이 정정이 SR에서 포착되지 않는데, 그 이유는 SR이 하나의 문자가 아니라 단어로 학습을 하기 때문이다. 결과적으로, 사용자가 문서에서 여러번 이 문자를 원하는 경우, 사용자는 그 문자를 말할 때마다 정정 프로세스를 반복할 필요가 있게 된다. 따라서, 종래의 인식 프로세스는 불편하고 비효율적이다.
이하에서는 본 명세서에 기술되는 몇몇 새로운 실시예에 대한 기본적인 이해를 제공하기 위해 간략화된 요약을 제공한다. 이 요약은 전반적인 개요가 아니며, 본 발명의 주요/필수 구성요소를 확인하거나 본 발명의 범위를 획정하기 위한 것이 아니다. 이 요약의 유일한 목적은 나중에 제공되는 보다 상세한 설명에 대한 서문으로서 몇몇 개념들을 간략화된 형태로 제공하는 데 있다.
개시된 아키텍처는 아시아어 음성 인식 알고리즘에 대한 스펠링 모드를 제공한다. 이것은 새로운 단어의 경계를 결정하는 것 및 새로운 단어를 사전에 추가하는 것을 용이하게 해준다. 결과적으로, 스펠링 모드에 기초하여, 단어 정정이 여러번 행해지는 종래의 시스템과는 달리, 단어 정정이 한번만 행해진다.
구체적으로는, 중국어 문자와 관련하여, 스펠링 모드는, 음성 인식 엔진이 받아쓰기(dictation)에서 잘못된 문자를 반환할 때, 중국어 문자를 입력하는 것을 용이하게 해준다. 스펠링 모드를 사용하여 정정된 단어는 하나의 단위로서 정정되고 단어로 취급된다. 이는, 예를 들어, 단어 경계가 쉽게 인식가능한 영어 단어와 달리, 아시아어에서는 경계가 분명하지 않기 때문이다. 따라서, (이 예에서) 스펠링 모드를 거침으로써 중국어 문자를 입력하는 것은 차후의 인식 처리에서 단어를 잘못 인식하는 것을 감소시키거나 없애준다.
개시된 스펠링 모드는 중국어 간체, 중국어 번체, 및/또는 일본어 등의 기타 아시아어(이들 언어에서 문자들은 대응하는 고정된 소리를 가짐)에 적용된다.
상기한 목적 및 관련 목적을 달성하기 위해, 어떤 예시적인 측면들이 이하의 설명 및 첨부 도면과 관련하여 본 명세서에 기술되어 있다. 그렇지만, 이들 측면은 본 명세서에 개시된 원리들이 이용될 수 있는 다양한 방식들 중 단지 몇개만을 나타낸 것이며, 모든 이러한 측면 및 그의 등가물을 포함하는 것으로 보아야 한다. 다른 이점들 및 새로운 특징들이, 도면과 관련하여 살펴볼 때, 이하의 상세한 설명으로부터 명백하게 될 것이다.
도 1은 컴퓨터-구현 변환 시스템을 나타낸 도면.
도 2는 스펠링/정정 프로세스 동안에 학습된 새로운 단어에 기초하여 사전 공유(lexicon sharing)를 용이하게 해주는 시스템을 나타낸 도면.
도 3은 하나 이상의 기능을 자동화하는 것을 용이하게 해주는 추론 컴포넌트(inference component)를 이용하는 시스템을 나타낸 도면.
도 4는 본 명세서에 개시된 스펠링/정정 아키텍처에서 이용될 수 있는 하나 이상의 방법을 나타낸 도면.
도 5는 문자 지정(character specification) 방법으로서 단어 발음(word pronunciation)을 이용하는 시스템을 나타낸 도면.
도 6은 사용자가 출력으로서 아시아어 문자/단어를 원할 때 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 7은 사용자가 출력으로서 영어 단어를 원할 때 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 8은 동음이의어 명령 처리를 위해 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 9는 동음이의어 정정을 위해 음성 작동 명령(voice activated command)에 응답하여 제공되는 스펠링 모드 대화 패널의 스크린샷을 나타낸 도면.
도 10은 음성에 의한 인덱스 선택(voiced index selection)에 응답하여 잘못 인식된 단어가 정정되고 리스트 박스가 소거된 패널을 나타낸 도면.
도 11은 음성 발음을 위해 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 12는 음성 발음의 정정을 위해 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 13은 음성 발음의 정정에 기초하여, 수정된 동음이의어 리스트 박스가 제공되는 스펠링 대화 상자의 스크린샷을 나타낸 도면.
도 14는 잘못 인식된 단어가 정정되고, 필요한 경우 사용자가 그 다음 문자에 대한 정정을 계속할 수 있도록, 음성 발음의 처리를 위해 커서가 그 다음 문자로 이동할 때 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 15는 두번째 방법에 따른, 문자 가중을 위해 긍정적, 중립적 및 부정적 의미를 이용하는 시스템을 나타낸 도면.
도 16은 세번째 방법에 따른, 원하는 문자의 하위성분들의 음성 입력에 의한 단어 분해를 이용하는 시스템을 나타낸 도면.
도 17은 간지를 얻기 위해 히라가나의 음성/타이핑 입력에 의한 일본어 인식 및 처리를 위해 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 18은 로마지를 얻는 것과 관계된 일본어 인식 및 처리를 위해 제공되는 스펠링 대화 패널의 스크린샷을 나타낸 도면.
도 19는 개시된 아키텍처에 따른 음성 인식 방법을 나타낸 도면.
도 20은 스펠링 마법사를 사용하여 인식 결과를 정정하는 방법을 나타낸 도면.
도 21은 음성 발음(phonetic pronunciation)을 문자로 변환하는 방법을 나타낸 도면.
도 22는 정정 처리를 위해 아시아어 및 영어에서 분리 명령(split command)을 사용하는 방법을 나타낸 도면.
도 23은 아시아어 스펠링 마법사에서 동음이의어 명령(homophone command)을 사용하는 방법을 나타낸 도면.
도 24는 단어 의미에 가중치 값을 적용하는 방법을 나타낸 도면.
도 25는 업데이트된 사전을 공유하는 방법을 나타낸 도면.
도 26은 스펠링 정정을 위해 문자 분해(character decomposition)를 사용하 는 방법을 나타낸 도면.
도 27a 및 도 27b는 다수의 스펠링 정정 방법에 기초한 정정 처리 방법을 나타낸 도면.
도 28은 개시된 아키텍처에 따른 정정 처리를 실행하는 동작을 하는 컴퓨팅 시스템의 블록도.
도 29는 개시된 아키텍처에 따른 정정 처리를 위한 예시적인 컴퓨팅 환경의 개략 블록도.
아시아어 음성 인식 및 새로운 단어/문자의 획득 또는 잘못 인식된 문자의 정정을 위한 알고리즘, 데이터, 및 스펠링 모드를 포함하는 사용자 인터페이스(UI)를 제공하는 아키텍처(적어도 UI를 제공함)가 본 명세서에 개시되어 있다.
이제부터 도면을 참조하며, 도면 전체에 걸쳐 유사한 참조 번호가 유사한 구성요소를 참조하는 데 사용된다. 이하의 설명에서, 설명의 목적상, 본 발명에 대한 완전한 이해를 제공하기 위해 수많은 구체적인 상세가 기술된다. 그렇지만, 새로운 실시예들이 이들 구체적인 상세를 사용하지 않고도 실시될 수 있다는 것이 명백할 수 있다. 다른 경우에, 본 발명의 설명을 용이하게 해주기 위해 공지의 구조 및 장치가 블록도 형태로 도시되어 있다.
먼저 도면들을 참조하면, 도 1은 컴퓨터-구현 변환 시스템(100)을 나타낸 것이다. 본 시스템(100)은 아시아어 음성 입력을 수신하고 이 입력에 대해 인식 처리를 수행하는 음성 인식 컴포넌트(102)를 포함하고 있다. 어떤 경우에, 인식 처 리는 잘못된 아시아어 문자 및/또는 단어를 출력한다. 그에 따라, 본 시스템(100)은 음성 인식 컴포넌트에 의한 잘못된 아시아어 문자/단어 및/또는 새로운 아시아어 문자/단어의 출력에 기초하여 정확한 문자 및/또는 단어를 발생하는 정정 컴포넌트(104)를 더 포함하고 있다.
적어도 사용자 상호작용을 위한 UI, 영어 및 아시아어 단어를 검색하고 또 UI 패널을 기동시켜 그와 상호작용하기 위해 서로 다른 명령을 제공하여 실행시키기 위한 분리 스펠링 패널 UI, 그리고 새로운 단어를 포착하고 단어 경계를 결정하기 위한 사용자 스펠링 모드와 관련하여 본 시스템(100)에 대해 더 상세히 기술할 것이다. 본 시스템(100)은 또한 사용자가 발음, 원하는 문자를 포함하는 단어, 원하는 문자의 하위성분, 및 동음이의어 목록을 통한 선택을 사용하여, 음성 입력에 의해 문자를 획득하는 데 도움을 주며, 그 다음에 변환된 후보들로부터 원하는 문자를 선택한다. 음운 체계(phonetic system)에서 또 혼동 행렬 테이블(confusion matrix table)에서 음소(phoneme)의 음성 거리(phonetic distance) 정보를 저장하는 데이터를 포함하는 데이터 저장소가 제공된다. 이 정보는 사용자가 잘못 인식된 발음을 신속하고 용이하게 정정하는 데 도움이 되며, 그에 따라 본 시스템이 동일한 실수를 할 가능성을 감소시킨다.
각각의 문자의 사용 빈도 또한 문자가 존재할 수 있는 가능한 카테고리(사람 이름, 회사 이름, 기타 등등)를 포함하는 데이터를 포함하고 있는 데이터 저장소가 제공된다. 따라서, 주요 단어가 검출될 때, 대응하는 카테고리가 트리거되고 그 카테고리에 사용되는 문자가 목록에서 더 위로 올라간다. 단어 내의 주요 문자를 읽고 원하는 문자가 나머지 정정을 위해 목록의 상단에 나타나도록 문자 목록을 재조정하는 것도 본 명세서에 개시된 방법의 일부이다.
본 시스템(100)은 원하는 문자를 포함하는 단어를 사용하여 음성 입력에 의해 문자를 얻는 것과 또한 문자의 하위성분을 검사하여 문자를 얻는 것을 용이하게 해준다. 본 시스템(100)의 UI는 정확한 단어를 얻기 위해 또 발음을 재입력하는 것을 피하기 위해 동음이의어 명령을 처리한다. 사용자들은 또한 새로운 단어들의 사전을 공유하기도 하고 평가 및 다른 사전의 업데이트를 위해 새로운 단어들을 다시 보낼 수 있다. 게다가, 다른 아시아어 음성 입력(예를 들어, 일본어)은 많은(예를 들어, 4개의) 서로 다른 표기법(writing system) 간에 전환을 할 수 있다.
도 2는 정정 프로세스 동안에 학습된 새로운 단어들에 기초하여 사전 공유를 용이하게 해주는 시스템(200)을 나타낸 것이다. 본 시스템(200)은 도 1의 음성 인식 컴포넌트(102) 및 스펠링/정정 컴포넌트(104)를 포함하고 있다. 그렇지만, 내부 사전(202)을 업데이트하기 위해 정정 컴포넌트(104)의 출력이 인식 컴포넌트(102)로 피드백한다. 그렇지만, 유의할 점은, 사전(202)이 인식 컴포넌트(102)의 외부에 있을 수 있다는 것이다.
본 시스템(200)은 또한, 종래의 인식 시스템에서와 같이, 언어 모델(language model, LM)(204) 및 음향 모델(acoustic model, AM)(206)도 포함하고 있을 수 있다. LM(204)(또는 문법 파일)은 단어열(word sequence)의 확률의 집합을 포함하고 있다. AM(206)은 음성 데이터 및 음성 데이터의 전사(transcription)에 기초하여 단어의 음향 거동(acoustic behavior)을 음소의 형태로 나타낸다. AM(206)은 음성 오디오 신호로부터 발생된 특징 벡터(feature vector)에 기초하여 언어의 소리 단위(sound unit)를 모델링한다. 인식 컴포넌트(102)는 LM(204) 및 AM(206)으로부터 수신된 입력을 처리하여 최상의 출력을 제공한다. 그렇지만, 나타난 바와 같이, 아시아어 인식 처리 등의 복잡한 응용에서, 정확한 결과를 제공하고 이어서 잘못된 결과를 해결하는 것은 어려운 일일 수 있다. 따라서, 정정된 결과에 도달할 때, 사전(202)을 업데이트(또는 개선)시키는 것이 유익하다. 이들 업데이트는 이러한 복잡한 응용에서 중요할 수 있다. 그에 따라, 적절한 보안 검사가 있는 경우, 공유 컴포넌트(208)는 사전(202) 등의 정보를 다른 사용자 또는 시스템 및/또는 새로운 사전 코퍼스(lexicon corpus)를 배포하는 사전 벤더(lexicon vendor)와 공유하는 것을 용이하게 해준다. 이것에 대해서는 본 명세서에서 더 상세히 기술될 것이다.
도 3은 하나 이상의 기능을 자동화하는 것을 용이하게 해주는 추론 컴포넌트(302)를 이용하는 시스템(300)을 나타낸 것이다. 예를 들어, 사용자(예를 들어, 사용자 프로파일) 뿐만 아니라 컴포넌트(302)가 학습하여 추리하는 발화 및 정정 활동에도 기초하여 추론이 행해질 수 있다. 사용자가 중국어보다 영어에 훨씬 더 능숙하다는 것과 시간이 지남에 따라 추론 컴포넌트(302)가 사용자가 통상적으로 어떤 중국어 문자와 연관된 음성 인식 오류를 갖는다고 학습하는 것을 생각해보자. 그에 따라, 컴포넌트(302)는, 사용자를 보다 효율적으로 지원하기 위해 스펠링 모드 인터페이스와 발음 인터페이스를 제공함으로써, 사용자가 동일한 오류를 범할 것을 예상하여 UI의 기능들을 자동화할 수 있다.
다른 예에서, 사용자가 제공된 임의의 다른 모드보다 스펠링 모드를 사용하는 것을 일반적으로 선호한다는 것이 학습될 수 있다. 따라서, 정정을 하는 방법의 선택에 직면했을 때, 컴포넌트(302)는 스펠링 모드 UI를 자동으로 제공할 수 있다. 이들은 사용자 상호작용 뿐만 아니라 어떤 입력 기준에 기초하여 반복하여 일어나는 경향이 있는 시스템 프로세스도 학습하여 추리하는 것에 기초하여 행해질 수 있는 많은 추론들 중 단지 몇개의 예에 불과하다.
추론 컴포넌트(302)는, 예를 들어, 학습 및 추리된 결과를 모니터링, 분석, 계산 및 이용하기 위해, 기계 학습 및 추리(machine learning and reasoning, MLR)를 이용할 수 있다. 본 아키텍처는 (예를 들어, 선택과 관련하여) 본 발명의 다양한 측면들을 수행하는 데 다양한 MLR-기반 방식들을 이용할 수 있다. 예를 들어, 어느 문자 또는 단어 내의 어느 문자를 선택하여 제시할지를 결정하는 프로세스가 자동 분류기 시스템 및 프로세스를 통해 용이하게 될 수 있다.
분류기(classifier)는 입력 속성 벡터 x = (xl, x2, x3, x4, xn)를 부류 레이블(class label) class(x)에 매핑하는 함수이다. 분류기는 또한 입력이 어떤 부류(class)에 속하는 신뢰도(confidence)를 출력한다, 즉 f(x) = confidence(class(x))이다. 이러한 분류는 사용자가 자동으로 수행되기를 원하는 동작을 예상 또는 추론하기 위해 확률적 및/또는 기타 통계적 분석(예를 들어, 한명 이상의 사람에 대한 기대값을 최대로 하기 위해 분석 유틸리티 및 비용을 고려함)을 이용할 수 있다.
본 명세서에서 사용되는 바와 같이, 용어 "추론한다" 및 "추론"은 일반적으 로 이벤트 및/또는 데이터를 통해 포착된 일련의 관찰 결과로부터 시스템, 환경 및/또는 사용자의 상태를 추리 또는 추론하는 프로세스를 말한다. 예를 들어, 추론이 특정의 상황 또는 동작을 알아내는 데 이용될 수 있거나, 상태들에 대한 확률 분포를 발생할 수 있다. 추론은 확률적일 수 있다, 즉 데이터 및 이벤트를 고려하여 관심의 상태들에 대해 확률 분포를 계산하는 것일 수 있다. 추론은 또한 일련의 이벤트 및/또는 데이터로부터 상위 레벨 이벤트를 작성하는 데 이용되는 기법들을 말할 수도 있다. 이러한 추론의 결과, 이벤트들이 시간상으로 아주 근접하게 상관되어 있는지 여부 및 이벤트 및 데이터가 하나 또는 몇개의 이벤트 및 데이터 소스로부터 온 것인지에 상관없이, 일련의 관찰된 이벤트 및/또는 저장된 이벤트 데이터로부터 새로운 이벤트 또는 동작이 작성된다.
지원 벡터 기계(support vector machine, SVM)가 이용될 수 있는 분류기(classifier)의 일례이다. SVM은 가능한 입력의 공간에서 초곡면(hypersurface)을 찾는 동작을 하며, 이 초곡면은 최적의 방식으로 트리거링 입력 이벤트(triggering input event)를 비트리거링 이벤트(non-triggering event)로부터 분리시킨다. 직관적으로, 이렇게 함으로써 분류가 훈련 데이터와 똑같지는 않지만 그에 가까운 테스트 데이터에 적당하게 된다. 다른 유향(directed) 및 무향(undirected) 모델 분류 접근방법은, 예를 들어, 다양한 형태의 통계적 회귀(statistical regression), NB(naive Bayes), 베이지안 네트워크, 결정 트리, 신경망, 퍼지 논리 모델을 포함하며, 상이한 독립성 패턴을 나타내는 기타 통계적 분류 모델이 이용될 수 있다. 분류는, 본 명세서에서 사용되는 바와 같이, 등 급(rank) 및/또는 우선순위(priority)를 할당하는 데 사용되는 방법도 포함한다.
본 명세서로부터 즉각 알 수 있는 바와 같이, 본 아키텍처는 (예를 들어, 일반 훈련 데이터를 통해) 명시적으로 훈련되는 것은 물론 (예를 들어, 사용자 거동을 관찰하는 것, 외부 정보를 수신하는 것을 통해) 암시적으로 훈련되는 분류기를 이용할 수 있다. 예를 들어, SVM은 분류기 생성자(classifier constructor) 및 특징 선택 모듈 내에서 학습 또는 훈련 단계를 통해 구성된다. 따라서, 분류기(들)는 미리 정해진 기준에 따라 다수의 기능을 자동으로 학습하여 수행하는 데 이용될 수 있다.
추론 컴포넌트(302)는, 예를 들어, 사용자 및 시스템 프로세스를 모니터링하고 데이터를 획득하기 위해, 인식 컴포넌트(102), 정정 컴포넌트(104), 사전(202), LM(204)(연결이 도시되지 않음), AM(206) 및 공유 컴포넌트(208)와 인터페이스할 수 있다. 시스템(300)에서 추론 컴포넌트(302)의 사용은 추론이 이용되고 연결될 수 있는 많은 서로 다른 방식들 중 단지 한 예에 불과하다. 환언하면, 이후의 도면들에서 시스템 컴포넌트들에 대한 보다 상세한 설명에서 추론 컴포넌트(302)가 이용될 수 있다.
도 4는 본 명세서에 개시된 정정 아키텍처에서 이용될 수 있는 하나 이상의 방법(400)을 나타낸 것이다. 예를 들어, 스펠링/정정 컴포넌트(104)는 단어 발음(word pronunciation) 방법(402), 단어 내 문자(character-in-word) 방법(404), 및 문자 분해(character decomposition) 방법(406)을 포함할 수 있다. 이들 방법(400)은 문자를 지정하는 방식을 적어도 3가지 제공한다. 문자가 지정될 수 있 는 방식은 지역 발음 기호(local phonetic symbol)를 사용하여 단어가 어떻게 발음되는지에 관한 정보를 제공하는 것[예를 들어, 발음 방법(402)]을 포함한다. 단어 내 문자 방법(404)은 문자가 존재하는 단어를 제공함으로써 문자가 어떻게 표기되는지에 관한 정보를 제공하는 것을 포함한다. 예를 들어, 사용자가
Figure 112009063908111-PCT00007
를 지정하려고 하는 경우, 사용자는
Figure 112009063908111-PCT00008
라고 말할 수 있다. 이것은 영어에서 "a, as in apple"의 사용과 유사하다.
문자가 어떻게 구성되어 있는지(분해될 수 있는지)에 관한 정보를 제공하는 것은 분해 방법(406)에 의해 제공된다. 환언하면, 사용자는 문자의 구성 부분을 발음할 수 있다. 예를 들어, 사용자가
Figure 112009063908111-PCT00009
를 지정하고자 하는 경우, 사용자는
Figure 112009063908111-PCT00010
라고 말할 수 있다. 3가지 방법(402, 404, 406) 모두에 대해 본 명세서에서 더 상세히 기술한다.
첫번째 방법인 발음 방법(402)은 스펠링 마법사를 사용하여 제공될 수 있는 반면, 방법(404, 406)은 마법사를 사용하지 않고서 직접 적용될 수 있다. 그렇지만, 사용자가 단어 정정을 위해 이 방법들 중 하나를 선택할 수 있도록, 방법들(402, 404, 406) 모두가 마법사를 사용하여 구현될 수 있다는 것을 잘 알 것이다. 또한, 용어 "마법사"의 사용이 어떤 식으로든지 제한하는 것으로 해석되어서는 안된다는 것을 잘 알 것이다. 환언하면, 마법사에 의해 통상적으로 사용자에게 프로세스를 안내하는 것으로 간주될 수 있는 것보다는 전체 프로세스의 작은 부분 에 집중되어 있는 일련의 대화가 제공될 수 있다.
발음 방법(402)은 사용자가 중국어 문자 또는 단어를 타이핑해 넣으려고 시도할 때 사용된다. 몇몇 아시아 국가들에서는, 아시아어 문자들에 대해 발음을 사용하는 것이 통상적이다. 그렇지만, 중국어 번체 OS에서는 발음보다는 다른 입력 방법들이 사용될 수 있다. 발음에 의해 제공되는 편의성이 있는 경우, 많은 사용자들이 키보드를 사용하여 문자를 타이핑할 때 발음
Figure 112009063908111-PCT00011
을 사용할 것이다. 중국에 있는 사용자들이 중국어 간체 OS를 사용할 때 훨씬 더 그러하며, 이 경우 키보드를 사용하여 문자를 타이핑하는 데 지역 발음 체계인 병음(Pinyin)이 사용된다. 타이완 사용자들(중국어 번체를 사용함)은 이 발음을 사용하는 단어들의 목록, 예를 들어,
Figure 112009063908111-PCT00012
을 얻기 위해 첫번째 오디오 톤에 대해
Figure 112009063908111-PCT00013
및 스페이스바를 타이핑해 넣고 그 단어들 중 하나, 예를 들어, 두번째 단어
Figure 112009063908111-PCT00014
를 선택한다. 이와 달리, 중국에 있는 사용자들은 "xun"을 타이핑해 넣고
Figure 112009063908111-PCT00015
등의 단어들의 목록을 수신하며, 그 단어들 중 하나, 예를 들어, 두번째 단어
Figure 112009063908111-PCT00016
를 선택할 수 있다.
그렇지만, 타이핑하는 것은 시간이 걸리고 오류를 범하기 쉬울 수 있다. 이것이 타이완 사용자들에게는 특히 시간과 노력이 많이 드는데, 그 이유는 중국어 번체의 음운 체계가 대륙어(mainland Chinese language)에서 사용되는 26개 글자의 집합(병음)과 다르기 때문이다. 예를 들어, 발음 기호가
Figure 112009063908111-PCT00017
와 같고 첫번 째 기호
Figure 112009063908111-PCT00018
가 /b/ 소리로 간주될 수 있지만, 글자 b에 대한 키보드 키 대신에 1(숫자) 및 !(느낌표)에 대한 키에 의해 주어진다. 따라서, 사용자는 각각의 기호가 키보드 상의 어디에 있는지를 배울 필요가 있다. 반면에, 중국 본토에서 사용되는 병음은 26개 영어 글자로 이루어져 있고, 사용자가 키보드 상의 26개 영어 글자의 위치에 익숙하다면 또 하나의 키보드 세트를 배울 필요가 없다.
스펠링 마법사는 사용자가 타이핑보다는 음성으로 중국어 단어를 획득할 수 있게 해줌으로써 이러한 제한을 극복한다. 이것은 사용자가 키보드 상에서의 발음 기호 및/또는 26개 영어 글자의 위치에 익숙하지 않은 경우나, 발음 기호를 신속하게 선택하여 입력하기 위해 발음 기호와 빈번하게 상호작용하지 않는 경우에, 특히 유용하다.
두번째(즉, 단어 내 문자) 방법(404)은 단어 발음 방법(402)보다 더 복잡할 수 있는데, 그 이유는 문자를 포함하는 선택된 단어가 임의의 단어, 심지어 유명인의 이름일 수 있기 때문이다. 개시된 아키텍처는 중국어에서 사용되는 모든 문자를 포함하지만, 모든 단어를 포함하는 것은 아니며, 특히 아직 훈련 데이터의 일부가 아닌 아주 최근의 유명인의 이름을 포함하지 않을 수 있다.
사용자는 원하는 문자를 포함하는 단어를 선택할 수 있지만, 문자가 단어의 첫번째 문자가 아닐지도 모른다. 문자가 단어의 중간이나 끝에 나올 수 있다. 예를 들어, 사용자가 마지막(즉, 굵은체) 문자
Figure 112009063908111-PCT00019
를 얻기 위해
Figure 112009063908111-PCT00020
라고 말할 수 있다.
양호한 인식 정확도를 달성하기 위해, 사람들이 문자를 지정하기 위해 어떤 유형의 단어들을 사용하는지에 대한 감각이 좋은 것과 그 단어들에 더 높은 가중치를 할당하거나 그 단어들을 특별히 훈련시키는 것이 바람직하다. 데이터의 적절한 수집 및 정리는 SR 정확도를 높이는 데 도움이 된다. 그에 부가하여, SR의 AM이 좋을수록, 이 방법으로부터의 결과가 좋다. 이것들이 달성되면, 이 방법(404)을 이용하여 잘못 인식된 중국어 단어를 정정하는 것이 첫번째 방법(402)보다 더 쉬울 수 있는데, 그 이유는 정확한 문자를 얻기 위한 단계들의 수가 발음을 제공하는 것보다 더 적기 때문이다.
세번째 방법(406)은 보다 적은 정도로 소수의 쉽게 분해되는 단어들에 대해 사용될 수 있다. 환언하면, 쉽게 분해될 수 있고 사람들에 의해 널리 사용되는 단어의 수가 그다지 많지 않다. 따라서, 이 방법(406)을 지원하기 위해 분해가능한 단어들이 문법(또는 LM)에 열거되어 있을 수 있다.
도 5는 문자 지정 방법으로서 단어 발음을 이용하는 시스템(500)을 나타낸 것이다. 앞서 언급한 바와 같이, 스펠링 마법사가 발음 방법에 이용될 수 있다. 사용자가 발음을 제공하고 정확한 문자를 선택하는 것을 지원하여, 이 마법사는 문자와 발음 간을 매핑하는 하나 이상의 데이터 파일을 이용한다. 그에 부가하여, 사용자가 원하는 문자를 신속하게 얻을 수 있도록 최적화된 동음이의어 단어 목록이 제공된다.
이하에서는 음운 체계와 문자 간의 변환을 위한 데이터 파일에 대해 기술한다. 이 첫번째 예에서는, 예시적인 데이터 파일의 개요와 함께 CHS/CHT에서의 음 운 체계에 대해 기술한다.
이전에 기술한 바와 같이, CHS는 영어의 26개 글자를 역시 사용하되 선택적인 성조 정보(tonal information)와 함께 사용하는 병음(Pinyin)을 사용한다. 이와 달리, CHT는 그림문자 기호(pictographic symbol)이지만 정규 중국어는 아닌 주음(Zhuyin)을 사용한다. CHT의 주음은 영어의 IPA(international phonetic alphabet)와 비슷하다. 예를 들어, 문자
Figure 112009063908111-PCT00021
의 경우, CHS 및 CHT에 대한 음성 표시(phonetic representation)는 아래에 주어져 있다.
Figure 112009063908111-PCT00022
도 5의 인식 컴포넌트(102)는 복수의 아시아어 엔진(502)(아시아어1 SR 엔진,..., 아시아어N SR 엔진으로 표시됨. 단, N은 양의 정수임)을 나타내고 있다. 엔진들(502) 중 첫번째 엔진(504)은 단어 발음 방법(402)을 사용하며, 데이터를 제공하기 위해 3개의 데이터 파일(506)을 추가적으로 사용한다. 각각의 언어 엔진(502)은 발음을 문자로 변환하는 프로세스를 위해 3개의 데이터 파일(506)을 사용한다. 첫번째 데이터 파일(508)은 단어를 색인으로서 저장하고 발음, 성조, 사용 빈도 및/또는 가능한 카테고리를 포함하는 각각의 단어의 관련 정보를 값으로서 저장한다. 두번째 데이터 파일(510)은 발음을 색인으로서 저장하고 그 발음을 갖는 모든 단어를 값으로서, 사용 빈도에 기초한 순서로, 저장한다. 세번째 데이터 파일(512)은 사용자가 잘못 인식된 음소들을 효율적으로 정정하도록 음소들 간의 혼동 행렬 정보(confusion matrix information)를 저장하는 데 사용된다.
상기한 바와 같이, 첫번째 데이터 파일(508)은 문자들 및 문자 발음, 성조, 빈도 및/또는 가능한 카테고리의 정보를 저장한다. 예를 들어,
Figure 112009063908111-PCT00023
Figure 112009063908111-PCT00024
(이 문자는
Figure 112009063908111-PCT00025
('아주 좋은'을 의미함)에서는 3성으로 사용되고
Figure 112009063908111-PCT00026
Figure 112009063908111-PCT00027
('매우 좋아하는'을 의미함)에서는 4성으로 사용됨)와 같이, 상이한 단어에서 상이한 발음을 갖는 문자들의 경우, 가능한 발음들이 한 줄에 기록되고, 요소들이 세미콜론(;)으로 분리되어 있다.
최근의 정보에 따르면, 약 47,035개의 유효한 중국어 문자가 있으며, 이들 중 많은 수가 거의 사용되지 않고 역사 전반에 걸쳐 누적된 것이다. 단지 약 2,000개의 문자가 중국 내의 글을 아는 사람들에 의해 활발히 사용되고 있다. 그 결과, 2,000개의 활발히 사용되는 문자 집합에 속하는 문자들이 먼저 표시될 수 있 다. 활발히 사용되는 문자 집합 내의 문자들이 사용자에게 제시되는 목록의 상단에 또는 상단 근방에 표시되는지를 알아보기 위해, 활발히 사용되는 문자에는 "1"로 표시를 하고 다른 것들에는 "2"로 표시를 한다. 사람의 이름 등의 특정의 카테고리에 나오는 문자들에는 카테고리 코드(예를 들어, 사람의 이름에 대해 "n")가 부여될 수 있다.
본 시스템(500)은 또한 두번째 데이터 파일(510)에 저장되는, 문자 및/또는 단어의 사용 빈도를 추적하는 빈도 컴포넌트(514)도 포함할 수 있다. 이 두번째 데이터 파일(510)은 발음 및 그 발음과 연관된 문자들을 상이한 단어들에 나오는 빈도 또한 단어들 또는 문자들의 빈도의 순서로 저장한다. 첫번째 데이터 파일(508)은 단어가 2,000개의 활발히 사용되는 문자들에 속하는지 여부를 저장한다. 이 두번째 데이터 파일(510)은 전체적인 활발/비활발 빈도와 다른 동음이의어 문자들에 관계된 사용 빈도 중 하나 또는 그 둘다에 따라 문자들을 정렬한다. 빈도 정보는 기존의 훈련 데이터로부터 획득될 수 있다. 두번째 데이터 파일(510)에서의 순서는 사용자 선택들을 학습하여 추리하는 것에 기초하여 조정될 수 있다. 두번째 데이터 파일(510)은, 보다 구체적인 빈도 정보가 첫번째 데이터 파일(508)에 명시될 수 있는 경우, 첫번째 데이터 파일(508)로부터 생성될 수 있다. 그렇지만, 두번째 데이터 파일(510)은, 사용자 선택으로부터 학습한 후에 조절된 순서를 저장하는 데 사용될 수 있도록, 생성되어 사용자 프로파일 폴더에 저장되어야만 한다. 이하의 목록은 발음 및 단어 빈도를 나타낸 것이다. 밑줄친 단어는 거의 사용되지 않는 것들이다.
Figure 112009063908111-PCT00028
Figure 112009063908111-PCT00029
유효한 음절을 저장하기 위해 문맥 자유 문법(context-free grammar, CFG)이 제공될 수 있다. CHS의 경우, 사용자들은 CHS 음운 체계에서의 "tian"을 얻기 위 해 "T I A N"을 발화하고 이어서 이것을 이 발음을 사용하는 문자들의 목록으로 변환할 수 있다. CFG는 문자들로 변환하기 전에 "tian"을 얻기 위해 사용자가 "T I A N"을 말할 수 있게 해주는 다른 옵션을 포함하고 있다. 이 방법은, 이하에 주어진 바와 같이, 복모음(diphthong), 또는 복모음과 어미 비음(ending nasal) 중 몇몇을 그룹화한다.
Figure 112009063908111-PCT00030
Figure 112009063908111-PCT00031
CHT의 경우, 주음에서의 음소만이 문법에서 사용된다. 이 엔진에서 사용되는 발음도 역시 SR 정확도를 향상시키기 위해 문법에 제공된다.
Figure 112009063908111-PCT00032
발음이 잘못 인식되는 경우, 마법사는 사용자가 발음을 정정할 수 있게 해준다. 정정할 음소를 선택한 후에, 마법사는 잘못 인식된 음소에 가까운 음소들의 목록을 보여주고, 이 목록이, 예를 들어, 조음 위치(place of articulation), 조음 방법(manner of articulation), 발성(voicing), 문맥, 및 다른 지역 방언의 영향에 좌우되면서, 2개의 음소 간의 거리에 따라 정렬될 수 있다.
타이완의 많은 사람들은 북경어(Mandarin) 및 민남어(Southern Min) 둘다를 말한다. 민남어 방언의 소리 구조(sound structure)는 몇가지 방식으로 북경어 방언에 크게 영향을 주고 있다. 대부분의 사람들이
Figure 112009063908111-PCT00033
(반전음(retroflex consonant))와
Figure 112009063908111-PCT00034
(치경음(alveolar consonant))을 구분하지 못하며, 어떤 사람들은
Figure 112009063908111-PCT00035
(순치 마찰음(labial-dental fricative))과
Figure 112009063908111-PCT00036
(연구개 마찰음(velar fricative))을 구분하지 못한다. 중국 남부의 어떤 방언들에서, /n/과 /l/은 구분 할 수 없으며 다른 학습한 언어들의 제작에 영향을 미친다. 최소한 구분가능한 음소들의 집합 간의 거리에 보다 짧은 거리가 주어진다.
문맥은 2개의 음소가 동일한 문맥에 나오는지 여부를 말한다. 예를 들어,
Figure 112009063908111-PCT00037
Figure 112009063908111-PCT00038
Figure 112009063908111-PCT00039
Figure 112009063908111-PCT00040
보다 문맥의 관점에서 더 가까운데, 그 이유는 음소들 다음에 동일한 핵 모음(들)(nuclear vowel) 및 음절말 자음(들)(coda consonant)이 올 수 있기 때문이다.
Figure 112009063908111-PCT00041
Figure 112009063908111-PCT00042
CHT에서 사용되는 자음의 이들 특질에 기초한 예시적인 혼동 행렬 테이블이 이하에 주어져 있다. 이하의 테이블은 조음 위치, 조음 방법, 발성, 문맥 및 다른 지역 방언의 영향에 기초하여 거리를 계산함으로써 얻어진다. 이러한 유형의 혼동 행렬은 또한 조음 위치, 조음 방법, 발성을 포함하게 되는, 서로 다른 음성(phone)의 AM을 자동으로 비교함으로써 생성될 수 있다. 혼동 행렬은 또한 서로 다른 음성의 AM에 의해 얻어질 수 있고 또 최종 형태를 위해 문맥 및 다른 방언들의 영향에 기초하여 조정될 수 있다. CHT의 모음 및 성조와, 모든 다른 아시아어의 자음 및 모음에 대한 행렬을 생성하기 위해 동일한 방법이 사용될 수 있다.
Figure 112009063908111-PCT00043
Figure 112009063908111-PCT00044
예를 들어, 더 나은 인식 결과를 위해, 중국어 및 영어 스펠링 모드에 분리 명령(split command)이 제공될 수 있다. 예를 들어,
Figure 112009063908111-PCT00045
("중국어 문자/단어에 대한 스펠링"을 의미함) 및
Figure 112009063908111-PCT00046
("영어 단어에 대한 스펠링"을 의미함)에 대해 분리가 행해질 수 있다. 이렇게 하는 이유는 다음과 같은 것들을 포함한다. 영어를 사용하여 철자할 때, 영어 글자는 바로 텍스트로 반환될 수 있지만, 중국어를 사용하여 철자할 때, 발음 기호가 출력된 다음에 중국어로 변환된다. 따라서, 2개의 스펠링 모드에 대한 프로세스가 서로 다르다. 영어 글자 및 중국어 발음 기호 중 몇몇은 동음이의어이다. 따라서, 2개의 프로세스를 분리시키는 것이 혼동을 방지한다. 게다가, 프로세스를 분리시키는 경우 CFG 작동형(CFG activated)이 훨씬 더 간단할 수 있다. 그에 부가하여, 인식 정확도가 더 높게 된다. 2개의 명령을 분리시키는 것이 CHS에 가장 유익한데, 그 이유는 CHS에서의 발음 기호가 바로 26개 영어 글자이기도 하기 때문이다. 분리가 수행되지 않는 경우, 중국어 문자로 변환할 때를 알지 못하게 된다. 게다가, 사용자가 중국어에 대해 병음을 사용하고자 하는 경우, 유효한 음성열(phonetic sequence)에 대한 보다 엄격한 검사가 수행되지 않을 수 있다.
이하에서는 사용자가 명령을 발성할 때 트리거되어 제공되는 일련의 스펠링 모드 패널(즉, 스크린샷)에 대해 기술한다. 도 6은 사용자가 아시아어 문자/단어를 출력으로 원할 때 제공되는 스펠링 대화 패널(600)의 스크린샷을 나타낸 것이다. 사용자가
Figure 112009063908111-PCT00047
("중국어 문자/단어에 대한 스펠링")라고 발성할 때, 스펠링 모델 패널(600)이 제공되고 이 스펠링 모델 패널(600)은 패널(600)이 중국어 스펠링 패널임을 나타내는 제목 표시줄(602), 발음을 사용하여 문자를 얻거나 문자를 변경하는 동음이의어 명령(604), 발음(606), 및 중국어로 된 대화 선택자(dialog selector)[동음이의어(H) 선택자(608), OK(O) 선택자(610) 및 취소(E) 선택자(612)]를 포함한다. 사용자가
Figure 112009063908111-PCT00048
("영어 단어에 대한 스펠링")라고 말하는 경우, 도 7은 사용자가 영어 단어를 출력으로 원할 때 제공되는 스펠링 모드 대화 패널(700)의 스크린샷을 나타낸 것이다. 패널(700)은 중국어로 된 "스펠링 패널"(702), "단어를 명확하게 철자하기"(즉 명확하게 말하기)라는 중국어 명령(704), "다시 철자하기"라는 중국어 명령(706), 및 중국어로 표시된 하나 이상의 선택자[OK 선택자(708) 및 취소 선택자(710)]를 나타내고 있다. 패널(700)은 또한 영어 글자 및/또는 기타 문자(예를 들어, @)의 색인되고 정렬된 목록(712)도 제공한다. 이 실시예에서는 어느 정도 다른 것으로 나타내어져 있지만, 한쪽에는 있지만 다른쪽에는 없는 특징을 제외하고는 보다 일관된 사용자 경험을 제공하기 위해 패널(600)과 패널(700)이 더 비슷한 모습을 갖는 것이 바람직하다.
도 8 내지 도 10은 동음이의어 정정을 사용하는 프로세스와 연관된 스크린샷을 제공한다. 도 8은 동음이의어 명령 처리를 위해 제공되는 스펠링 대화 패널(800)의 스크린샷을 나타낸 것이다. 동음이의어인 정확한 문자를 얻기 위해 명령이 발성된다. 디스플레이된/인식된 단어가 608에
Figure 112009063908111-PCT00049
("동음이의어"를 의미함)로 제공된다. 이 음성-명령(voice-command) 인터페이스는 타이핑하는 것보다 효율적인 것으로 생각될 수 있는데, 그 이유는 발음 기호를 반복하여 타이핑하는 것이 회피될 수 있기 때문이다. 환언하면, 때때로 음성 명령이 제대로 인식되지만, 사용자는 다른 문자를 원한다. 사용자에게 발음을 반복하라고 프롬프트하기보다는, 동음이의어 목록을 출력하라는 명령이 처리될 수 있다. 이 기능을 사용하여, 음성에 의한 정정이 수작업 입력(예를 들어, 타이핑)보다 개선된 사용자 경험을 제공한다. 즉, 사용자가 타이핑함으로써 발음을 수작업으로 입력하고 동음이의어 목록으로부터 단어를 선택할 때, 단어가 점선 밑줄을 갖는 텍스트로서 제시된다. 그 모드에서, 사용자는 여전히 목록에 근거하여 문자를 변경할 수 있다.
그렇지만, 사용자가 단어를 확실히 아는 경우, 사용자는 입력 시스템이 배정된 LM 점수로부터 단어를 자동-조정하지 않도록 단어를 텍스트에 고정시키기 위해 엔터(또는 "OK") 선택자(610)를 선택할 수 있다. 따라서, 대화 패널(800)에서 단어가 고정된 경우, 사용자가 단어를 다시 변경하고자 하면, 발음 기호가 재타이핑되어야만 한다. 음성 명령 인터페이스는
Figure 112009063908111-PCT00050
Figure 112009063908111-PCT00051
("동음이의어")명령을 인식함으로써 수작업 입력에서 요구되는 부가의 노력을 절감시킨다. 첫번째 단계로서, 사용자는
Figure 112009063908111-PCT00052
("첫번째 문자를 정정")라고 말함으로써 정정할 단어를 선택한다. 그러면, 첫번째 문자(802)가 하이라이트된다. 이어서, 사용자는 원래의 중국어 문자에 대한 동음이의어(H) 문자를 얻기 위해 동음이의어에 대한
Figure 112009063908111-PCT00053
를 말하거나,
Figure 112009063908111-PCT00054
("동음이의어") 선택자(608)를 선택할 수 있다. 패널(800)은 또한 중국어로 된 대화 선택자[동음이의어 선택자(608), OK 선택자(610) 및 취소 선택 자(612)]를 제공한다.
유의할 점은 패널(800)에서 임의의 문자(1, 2 또는 3으로 표시된 필드에 있음)에 대해(여기서 802가 첫번째 문자임) 동음이의어 명령을 통하거나 또는 발음을 제공하는 것을 통한 정정이 수행될 수 있다는 것이다. 그렇지만, 후보 문자 목록이 달라지게 된다. 동음이의어 명령으로부터의 후보 목록이 성조가 동일하거나 약간 다른 문자를 포함하게 된다. 발음을 제공하는 것으로부터의 후보 목록은 사용자에 의해 주어진 발음과 정확히 일치하는 문자를 포함하게 된다. 사용자가 발음을 이용하는 경우, 도 10에 나타낸 바와 같이 첫번째 문자(802)가 아닌 두번째 문자가 하이라이트되어 있는 도 8의 스크린샷이 제공된다. 그러면, 사용자가 발음을 제공한 후에 도 11의 스크린샷이 제공된다.
도 9는 동음이의어 정정을 위한 음성 작동 명령(voice activated command)에 응답하여 제공되는 스펠링 모드 대화 패널(900)의 스크린샷을 나타낸 것이다. 색인된 동음이의어 문자 목록이 리스트 박스(902)에 제공되도록 원래의 문자의 발음이 스펠링 마법사에 의해 지원된다. 그러면, 사용자는 첫번째 후보에 대한
Figure 112009063908111-PCT00055
(일) 또는
Figure 112009063908111-PCT00056
("일번")과 같이 연관된 색인 번호를 말함으로써 또는, 이 경우에, 문자(906)를 클릭함으로써 원하는 문자를 선택할 수 있다. 이에 응답하여, 발음 패널(900)은 리스트 박스(902)를 소거하고 원래의 문자(802)를 선택된 문자(906)로 대체시키며, 도 10에 패널(1000)로 나타낸 바와 같이 이 경우 음성에 의한 색인 선택(voiced index selection)에 응답하여 리스트 박스(902)가 소거되어 있다. 그 다음에, 마법사는 도 8의 문자(802)(첫번째 필드에 있음)와 관련하여 상기한 바와 같은 유사한 처리를 위해 상호작용을 두번째 문자(1002)(두번째 필드에 있음)로 이동시킨다.
계속하여 도 10에서, 음성에 의한 정정이 발음을 제공함으로써 행해질 수 있다. 마법사가 아직 두번째 문자(1002)로 이동하여 그 문자를 하이라이트시키지 않은 경우, 사용자는 두번째 문자(1002)를 하이라이트시키기 위해
Figure 112009063908111-PCT00057
("두번째 문자를 정정")라고 말함으로써 정정할 단어를 선택하거나 그 단어로 이동하는 것으로 시작한다.
도 11은 음성 발음을 위해 제공되는 스펠링 대화 패널(1100)의 스크린샷을 나타낸 것이다. 그 다음에, 사용자는 발음에 대한
Figure 112009063908111-PCT00058
를 발성하고, 이 발음이 발음 필드(1102)에서 사용자에게 다시 제시되며, 마법사는 또다시 리스트 박스(902)에 색인된 단어 목록을 제공한다. 리스트 박스(902)는 상부에 있는 더 빈번히 사용되는 단어부터 하부 근방에 있는 덜 빈번히 사용되는 단어까지 순서대로 후보 단어들을 열거한다. 그에 부가하여, 시스템이 첫번째 문자(802)가 성(family name) 등의 주요 단어로 정정되도록 지시하는 경우, 시스템은 그 주요 단어를 검출하고 그 다음 문자 후보 목록의 정정을 조정하게 된다. 이 경우에, 이름에 사용되는 문자가 나머지 문자들에 대한 정정에서 후보 목록(902)의 상단으로 승격된다. 이전과 마찬가지로, 사용자는 그 다음에
Figure 112009063908111-PCT00059
를 얻기 위해 두번째 후보와 연관된
Figure 112009063908111-PCT00060
("이") 또는
Figure 112009063908111-PCT00061
(이번) 등의 연관된 색인 번호를 말함으로써 원하는 문자 를 선택할 수 있다. 그 후에, 선택된 후보는 이전의 문자를 대체하고 발음 패널(1100)이 소거되어 리스트 박스(902)가 다이얼로그로부터 제거된다.
SR이 발음을 잘못 인식한 경우, 마법사는 상기한 혼동 행렬에 기초하여 가장 가까운 음소를 디스플레이한다. 도 12는 음성 발음의 정정을 위해 제공되는 스펠링 대화 패널(1200)의 스크린샷을 나타낸 것이다. 사용자는, 예를 들어,
Figure 112009063908111-PCT00062
("첫번째 음소를 정정")라고 말함으로써 정정할 음소를 발성하는 것에 의해 마법사와 상호작용할 수 있다. 그러면, 첫번째 음소(1202)가 하이라이트된다. 그 다음에, 음소 거리(phoneme distance)의 순서로 있는 음소들의 목록을 갖는 음소 리스트 박스(1204)가 제공된다. 그 다음에, 사용자는 첫번째 잘못 인식된 음소(1202)를 정정된 음소
Figure 112009063908111-PCT00063
(리스트 박스(1204)에서 "1"로 색인되어 있음)로 대체시키기 위해
Figure 112009063908111-PCT00064
(병음에서의 "qi"와 같음)라고 발성할 수 있다.
도 13은 음성 발음을 정정하는 것에 기초하여 수정된 동음이의어 리스트 박스(902)가 제공된 스펠링 대화 패널(1300)의 스크린샷을 나타낸 것이다. 동음이의어 문자 리스트 박스(902)가 변경된 음소에 기초하여 정정된다. 그 다음에, 사용자는, 이 경우에,
Figure 112009063908111-PCT00065
("일") 또는
Figure 112009063908111-PCT00066
(일번)과 같은 연관된 번호를 발성함으로써 도 14에 도시된 첫번째 문자(1402)를 선택한다. 그에 따라, 선택된 후보는 원래의 것을 대체하고, 발음 필드(1102)가 소거되며 리스트 박스(902)가 다이얼로그로부터 제거된다. 도 14는 커서가 음성 발음의 처리를 위해 그 다음 문자로 이동될 때 또는 도 13의 처리가 완료되었을 때 제공되는 스펠링 대화 패널(1400)의 스크린샷을 나타낸 것이다.
본 명세서에 기술되어 있는 바와 같이, 이름이 스펠링 마법사를 필요로 할 수 있는데, 그 이유는 각각의 사용자가 이름에 사용되는 문자를 정확히 알지 못할 것이기 때문이다. 따라서, 이름으로부터 힌트를 얻어서 제공할 수 있다. 예를 들어, 어떤 경우에, 단지 몇 백개 유형의 성(last name)이 고려될 수 있고, 상기한 바와 같이, 그 세트가 고정되어 있는 것으로 알려져 있다. 따라서, 성이 선택될 때(성은 항상 단어/문자의 문자열(string)의 첫번째 문자이어야만 함), 리스트 박스에 디스플레이된 문자 후보 목록이 조정된다. 예를 들어, 'fan'을 사용하는 이름의 경우, 문자는
Figure 112009063908111-PCT00067
("보통"을 의미함),
Figure 112009063908111-PCT00068
("복잡한"을 의미함),
Figure 112009063908111-PCT00069
("귀찮은"을 의미함),
Figure 112009063908111-PCT00070
("야만적인"을 의미함),
Figure 112009063908111-PCT00071
("죄수"를 의미함), 기타일 수 있다.
대부분의 문자의 경우에, 사용자는, 이상에서 처음 2개의 예에 나타낸 바와 같이, 이름에 대해 긍정적 또는 중립적 의미를 선택하게 된다. 그렇지만, 훈련 데이터의 대부분이 신문으로부터 획득된 경우(대부분의 현재의 언어 훈련 시스템의 경우에 그러함), 문자가 아주 높은 빈도수를 갖는 마지막 의미
Figure 112009063908111-PCT00072
("죄수")와 연관되어 있을 수 있다. 따라서, 데이터 파일에 카테고리 정보를 제공함으로써, 그 힌트에 따라 단어들의 목록이 조정될 수 있다. 고려될 수 있는 힌트로는 사람 이름(예를 들어, 성), 거리 이름(예를 들어,
Figure 112009063908111-PCT00073
("도로"),
Figure 112009063908111-PCT00074
("거리"),
Figure 112009063908111-PCT00075
("도시"),
Figure 112009063908111-PCT00076
("군(county)")을 사용함), 및 회사/단체 이름(예를 들어,
Figure 112009063908111-PCT00077
("회사") 및
Figure 112009063908111-PCT00078
("단체")를 사용함)이 있지만, 이들로 제한되지 않는다.
상기 시나리오는, 사용자가 스펠링 모드에 있는 동안에 다수의 문자를 갖는 단어를 선택하고 또 제한된 문자 열(character sequence)에 기초하여 (단어 경계에 대해) 단어를 정확하게 파싱하는 데 더 익숙하거나 능숙하게 될 때, 개시된 시스템에서 처리(또는 인식)하기가 더 쉽다. 사용자가 다수의 문자로 된 단어로부터 하나의 문자만을 선택하는 경우, 시스템은 새로운 단어에 대한 단어 경계의 정보를 상실할지도 모른다.
이상에서 언급한 두번째 방법은 원하는 문자를 포함하는 단어의 음성 입력에 의해 중국어 문자를 얻는다. 도 15는 두번째 방법에 따라 문자 가중을 위해 긍정적, 중립적 및 부정적 의미를 이용하는 시스템(1500)을 나타낸 것이다. 도 15의 인식 컴포넌트(102)는 복수의 아시아어 엔진(502)을 나타내고 있으며, 여기서 첫번째 엔진(504)은 단어 내 문자 방법(404)을 사용하고, 단어 내 문자 방법(404)은 또한 데이터를 제공하기 위해 데이터 파일(1502)도 사용한다. 각각의 언어 엔진(502)은 단어 내 문자 방법(404)에 기초하여 문자를 획득하기 위해 데이터 파일(1502)을 사용할 수 있다. 첫번째 데이터 파일(1504)은 긍정적 및 중립적 의미 단어를 포함하고, 두번째 데이터 파일(1506)은 부정적 의미 단어를 포함하며, 세번째 데이터 파일(1508)은 데이터 파일(1504, 1506)의 일부가 아닌 사전 내의 나머지 단어를 포함하고 있다.
단어 내 문자 방법(404)에 따라 및/또는 문자를 얻기 위해 발음을 제공하는 것에 부가하여, 사용자는 또한 원하는 문자(들)를 포함하는 다른 단어들을 제공함 으로써 문자를 얻을 수 있다. "a, as in apple"와 유사하게, 사용자는
Figure 112009063908111-PCT00079
등의 원하는 문자를 포함하는 단어
Figure 112009063908111-PCT00080
를 발성함으로써
Figure 112009063908111-PCT00081
등의 원하는 문자를 지정할 수 있다.
Figure 112009063908111-PCT00082
이 원하는 문자
Figure 112009063908111-PCT00083
를 포함하는 단어이다. 단어
Figure 112009063908111-PCT00084
는 원하는 문자가 단어의 일부임을 나타내는 소유격이다.
SR 인식 정확도를 달성하기 위해, 사람들이 문자를 지정하는 데 사용하는 경향이 있는 단어들에 관한 정보 또는 데이터를 가지고 있는 것이 바람직하다. 많은 경우에, 사람들은 문자를 지정하는 데 대체로 빈번히 사용되는 단어와 또한 긍정적인 의미론적 의미(semantic meaning)를 갖는 단어도 사용하는 경향이 있다. CFG에 있어서 단어들이 획득될 수 있는 방식들로는 다음과 같은 것들이 있다. 이름에 통상적으로 사용되는 문자들의 목록을 갖기 위해 대규모 이름 코퍼스(corpus)가 수집될 수 있다. 게다가, 이 코퍼스는 유효한 문자들의 작은 서브셋(subset)이어야만 한다.
그에 부가하여, 문자를 포함하는 단어들의 대규모 코퍼스를 구한 다음에 그 단어들을 긍정적 또는 중립적 의미를 포함하는 첫번째 그룹 또는 파일(1504)과 부정적 의미를 포함하는 두번째 그룹 또는 파일(1506)로 그룹화함으로써 인식 정확도가 향상될 수 있다. 사람들은 이름에 사용되는 문자를 지정하는 데 긍정적 또는 중립적 의미를 갖는 단어를 사용하는 경향이 있다. 본 시스템(1500)은 가중치 데이터 또는 가중치 값을 단어에 할당하는 가중 컴포넌트(1510)를 포함할 수 있다. 그러면, 긍정적 및 중립적 의미에는 보다 높은 가중치 값이 할당될 수 있고, 부정 적 의미에는 중간 가중치 값이 할당될 수 있으며, 사람들이 이름에 종종 사용하는 문자를 포함하지 않는, 사전에 있는 나머지 단어들에는 보다 낮은 가중치 값이 할당될 수 있다. 게다가, 이 3개의 그룹 내의 단어들은 도 5의 빈도 컴포넌트(514)를 사용하여 단어 사용 빈도에 기초하여 정렬될 수 있다.
이 방법은 중국어에는 물론, 예를 들어, 일본어에서의 간지에도 적용된다. UI 커서가 802, 1002 및 1402 내의 문자와 같이 스펠링 창(spelling window)의 상부(또는 분리 또는 중국어) 패널에 있는 문자들 중 하나에 있을 때, 이 방법이 활성이다. 즉, 사용자는, 궁극적으로 원하는 문자(들)를 얻기 위해, 발음, 또는 문자를 포함하는 단어를 제공할 수 있다.
상기한 세번째 방법(406)은 단어 분해에 의해 중국어 문자를 얻는다. 도 16은 세번째 방법에 따른, 원하는 문자의 하위 성분의 음성 입력에 의한 단어 분해를 이용하는 시스템(1600)을 나타낸 것이다. 인식 컴포넌트(102)는 복수의 아시아어 엔진(502)을 나타내고 있으며, 여기서 첫번째 엔진(504)은 문자 분해 방법(406)을 사용하고, 이 문자 분해 방법(406)은 또한 데이터를 제공하는 데이터 파일(1602)도 이용한다. 각각의 언어 엔진(502)은 문자 분해 방법(406)에 기초하여 문자를 얻는 데 데이터 파일(1602)을 사용할 수 있다. 첫번째 데이터 파일(1604)은 분해가능한 문자를 포함하고, 두번째 데이터 파일(1606)은 문자의 구성 성분(constituent component)을 포함하고 있다.
사용자는
Figure 112009063908111-PCT00085
를 지정하기 위해
Figure 112009063908111-PCT00086
라고 말하여 단어의 하위 성분 (들)을 제공함으로써 원하는 문자를 얻을 수 있으며, 여기서
Figure 112009063908111-PCT00087
("나무") 및
Figure 112009063908111-PCT00088
("아들")은
Figure 112009063908111-PCT00089
를 형성하기 위해 결합되는 하위성분 기호이고,
Figure 112009063908111-PCT00090
은 문자의 상부 기호이고
Figure 112009063908111-PCT00091
는 하부 기호이다.
그리 많지 않은 문자들이 분해가능하고 또 사용자들에 의해 널리 사용된다는 것을 잘 알 것이다. 그 결과, 분해될 수 있는 모든 문자 및 널리 사용되는 분해가능한 표현이 수집되어 문법에 포함된다. 두번째 방법(404)과 유사하게, 커서가 802, 1002 및 1402에 있는 문자와 같이 스펠링 마법사 패널의 분리 패널의 상부 패널에 있는 문자들 중 하나에 있을 때, 세번째 방법(406)이 활성으로 될 수 있다. 환언하면, 사용자가, 원하는 문자를 얻기 위해, 발음 또는 포함하는 단어(containing word) 또는 하위성분을 제공할 수 있다. 본 시스템(1600)은 인기있는 문자(1604)를 찾아내어 처리 및 저장하고 문자를 구성 성분(1606)으로 분해하는 인기도 컴포넌트(popularity component)(1608)를 포함하고 있다.
도 2를 간략히 참조하면, 공유 컴포넌트(208)는 SR 정확도를 향상시키거나 다른 사용자들의 정정 수고를 덜어주기 위해 사용자가 로컬 사전(local lexicon)을 공유할 수 있게 해준다. 사용자가 이 아키텍처의 측면들을 사용하여 작업을 할 때, 사용자는 시스템을 "훈련시킬" 수 있거나, 시스템이 (예를 들어, 도 3의 추론 컴포넌트(302)의 학습 및 추리 기능을 사용하여) 사용자의 활동 및/또는 시스템 데이터/파라미터에 관해 학습할 수 있다. 사용자가 불러줄 때, 어느 단어가 가장 자주 사용되는지를 보여주기 위해 인식된 단어의 확률이 변할 수 있다. 그에 부가하 여, 단어가 도 2의 기본 사전(202)에 나오지 않는 경우, 사용자는 사전의 사용자-정의 부분에 그 단어를 추가할 수 있다. 이 시점에서, 사용자는 부가의 단어들을 사전 내의 어디에서 찾을 수 있는지(예를 들어, 기본 사전인지 사용자-정의 사전인지)를 음성 인식기(102)에게 "말해줄" 수 있다.
다수의 사용자에 걸쳐 새로운 사전을 공유, 로드(load) 및 언로드(unload)할 수 있는 것은 계속 개선되는 분산형 코퍼스(distributed corpus)를 제공하는 것을 용이하게 해준다. 환언하면, 각각의 사용자가 동일한 또는 유사한 단어를 사용하여 개개의 사용자 컴퓨터 및 방법을 "훈련"시키게 된다. 예를 들어, 그룹 또는 협업 환경에서는, 사용자-정의 사전을 다른 사람들과 공유시키면 이점이 있다. 예를 들어, 팀 프로젝트와 관련하여, 사용자가 새로운 단어로 연관된 사용자 사전을 업데이트시킬 때, 공유는 이들 새로운 단어를 프로젝트 팀의 다른 구성원들에게 전파시킬 수 있다. 공유는 하나의 파일이 다수의 사용자들 간에 공유되는 중앙 위치는 물론, 일괄 공유(batch sharing) 대 단어별 공유(word-by-word sharing)를 비롯한 다수의 방식으로 수행될 수 있다.
다른 사용자 또는 팀과의 공유에 부가하여, 개시된 아키텍처의 공유 컴포넌트(208)는 벤더가 기본 사전을 개선시킬 수 있도록 음성 인식기(102)가 무엇을 학습했는지에 관한 피드백을 벤더 엔티티에게 제공하는 기능을 포함하고 있다. 이를 위해, 음성 인식기(102)는 사용자가 사용자-정의 사전에 추가되는 새로운 단어가 사용자 시스템, 프로젝트 팀 및/또는 회사 경계의 외부에서 공유될 수 있는지 여부를 나타낼 수 있게 해주는 메카니즘을 포함하고 있을 수 있다. 허용되어 있는 경 우, 인식기(102)는 그 정보를 검토하여 그 다음 공개 출시 또는 업데이트를 위한 기본 사전에 포함시키도록 그 정보를 벤더에게 전송할 수 있다. 그렇지만, 사용자가 이것을 허용하지 않는 경우, 새로 추가된 용어가 벤더에게 전송되지 않는다. 벤더에게 전송될 수 있는 용어의 일례는 최근에 업계에서 널리 사용되어진 새로운 전업종 관련 단어인 반면, 사적 단어의 일례는 회사 이름이나 프로젝트의 내부 이름일 수 있다. 공유가, 예를 들어, 지적 재산권 규칙, 공유되는 컨텐츠의 범위, 및 공유를 위한 의사 결정 프로세스를 위반하지 않도록 보안 문제가 고려되어야만 한다.
개시된 아키텍처는 또한 서로 다른 아시아어 문자 집합에 대해 명령을 사용 및 구현하는 것을 용이하게 해준다. 예를 들어, 일본어는 4가지 서로 다른 유형의 표기법(히라가나, 가타가나, 간지 및 로마지)을 가지고 있다. 히라가나는 일본어 음운 체계로 또한 유효한 표기법으로 간주될 수 있다(사람들이 표기하는 것이 단어 소리라는 점에서 스페인어와 비슷함). 가타가나는 보다 공식적인 표기법으로서, 히라가나와 일대일 매핑을 갖는다. 간지는 이름을 표기하는 데 자주 사용된다. 중국어와 유사하게, 한 세트의 히라가나 소리가 간지에서의 다수의 음소에 대응할 수 있다. 따라서, 동일한 스펠링 패널 및 프로세스가 히라가나로부터 간지를 얻는 데 이용될 수 있다.
게다가, 중국어에서와 같이 동음이의어 기능을 제공하기보다는, 사용자가 히라가나 또는 대응하는 가타가나만을 원하는 경우, 분할 패널 방법의 상부 단어 패널(도 17의 1708 또는 도 18의 1806)에서 단어를 얻는 음성-명령 기능 또는 버튼이 이용될 수 있도록, 히라가나 및 가타가나에 대한 버튼이 제공된다. 사용자가 선택하는 버튼 또는 선택자 및/또는 히라가나를 로마지로 변환하는 버튼 이름에 의한 음성-명령이 있을 수 있다. 한 세트의 히라가나가 다수의 로마지 문자에 대응할 수 있기 때문에, 사용자가 로마지 변환을 트리거하기 위해 히라가나 발음, 예를 들어,
Figure 112009063908111-PCT00092
("로마지")를 발성할 때, 간지의 동음이의어를 열거하는 데 사용되는 리스트 박스가 소거되고 로마지에 대한 결과로 다시 채워진다. 그 다음에, 사용자가 원하는 로마지 문자를 상부 단어 패널(도 17의 1708 또는 도 18의 1806)로 이동시키기 위해 그 로마지 문자에 앞서 색인 번호를 말할 수 있다.
예를 들어, 문자
Figure 112009063908111-PCT00093
("흙")의 경우, 히라가나, 가타가나, 간지 및 로마지의 4가지 표기법에서의 이 문자의 출력은 다음과 같다.
히라가나:
Figure 112009063908111-PCT00094
가타가나:
Figure 112009063908111-PCT00095
로마지: tsuchi, tuchi, tuti
간지:
Figure 112009063908111-PCT00096
동일한 발음(예를 들어, 동일한 히라가나)을 공유하는 다른 간지 문자들이 있다.
간지 동음이의어:
Figure 112009063908111-PCT00097
도 17은 간지를 얻기 위해 히라가나의 음성/타이핑 입력에 의한 일본어 인식 및 처리를 위해 제공되는 스펠링 대화 패널(1700)의 스크린샷을 나타낸 것이다. 패널(1700)은 히라가나의 사용을 나타내는 제목 표시줄을 포함하고 있다. 리스트 박스(1704)는 간지 동음이의어 목록 또는 로마지 단어 목록에 대한 도 18의 1802을 나타내고 있다. 문자열(1706)은 히라가나를 입력으로서 사용하여 원하는 표기법으로의 변환을 처리하라고 사용자에게 말해준다. 단어 패널(1708)은 워드 프로세서 애플리케이션에 입력될 최종 문자들을 저장한다. 발음 필드(1710)는 처리하기 위한 인식된 입력을 보여준다. 패널(1700)은 또한 로마지(R) 선택자(1712), 히라가나(H) 선택자(1714), 가타가나(K) 선택자(1716), OK(O) 선택자(1718) 및 취소(E) 선택자(1720)도 포함하고 있다.
간지 문자를 얻기 위해, 사용자는 마법사 스펠링 패널(1700)을 트리거하기 위해
Figure 112009063908111-PCT00098
("히라가나 입력 패널")라고 발성하고 그 다음에
Figure 112009063908111-PCT00099
("흙"의 히라가나)라고 말할 수 있으며, 이는 사용자에 대한 피드백으로서 발음 필드(1710)에 제공된다(그 후에 리스트 박스(1704)는 각각의 문자의 앞에 숫자 색인을 갖는, 간지 동음이의어 문자의 목록을 자동으로 생성한다). 그 다음에, 사용자는 리스트 박스(1704) 내의 첫번째 단어
Figure 112009063908111-PCT00100
를 단어 패널 필드(1708)로 이동시키기 위해
Figure 112009063908111-PCT00101
("일번")이라고 발성할 수 있다. 그 후에 리스트 박스(1704)는 더 이상 노출되지 않는다. 그 다음에, 사용자는 스펠링 패널(1700)을 닫기 위해 "OK"라고 말할 수 있으며, 단어 패널(1708) 내의 단어
Figure 112009063908111-PCT00102
가 현재 사용 중인 워드 프로세서를 사용하여 문서로 복사된다.
히라가나를 얻기 위해, 사용자는 스펠링 패널(1700)의 기동을 트리거하기 위해
Figure 112009063908111-PCT00103
라고 말할 수 있다.
Figure 112009063908111-PCT00104
가 발음 필드(1710)에 제시되도록 사용자가
Figure 112009063908111-PCT00105
라고 말할 때, 리스트 박스(1704)는 간지 동음이의어 문자들의 목록을 기본 목록으로서 자동으로 생성하지만, 사용자는 그 목록을 무시하기로 할 수 있다. 그 다음에, 사용자는
Figure 112009063908111-PCT00106
("히라가나")라고 발성할 수 있고, 1710 내의 인식된
Figure 112009063908111-PCT00107
가 단어 패널(1708)로 자동으로 이동된다. 그 다음에, 리스트 박스(1704)가 제거되는데, 그 이유는 더 이상 필요하지 않기 때문이다. "OK"라고 말함으로써, 사용자는 스펠링 대화 패널(1700)을 닫으며, 단어 패널(1708) 내의 단어가 현재 열려 있는 문서로 복사된다.
가타가나를 얻기 위해, 사용자는 스펠링 패널(1700)의 기동을 트리거하기 위해
Figure 112009063908111-PCT00108
라고 발성할 수 있다.
Figure 112009063908111-PCT00109
가 발음 패널 필드(1710)에 제시되도록 사용자가
Figure 112009063908111-PCT00110
라고 말할 때, 리스트 박스(1704)는 간지 동음이의어 문자들의 목록을 자동으로 생성하지만, 사용자는 그 목록을 무시하기로 할 수 있다. 그 다음에, 사용자는
Figure 112009063908111-PCT00111
("가타가나")라고 말할 수 있고, 본 시스템은
Figure 112009063908111-PCT00112
("흙"의 가타가나)로서 가타가나 버전을 획득하고, 본 시스템은
Figure 112009063908111-PCT00113
를 단어 패널(1708)에 직접 표기한다. 그 다음에, 리스트 박스(1704)가 사라지도록 할 수 있는데, 그 이유는 더 이상 필요하지 않기 때문이다. 사용자는 스펠링 패널(1700)을 닫기 위해 "OK"를 선택할 수 있고, 단어 패널(1708) 내의 단어가 기존의 워드 프로세서를 통해 문서로 복사된다.
도 18은 로마지를 얻는 것과 관련된 일본어 인식 및 처리를 위해 제공되는 스펠링 대화 패널(1800)의 스크린샷을 나타낸 것이다. 로마지를 얻기 위해, 사용자는 스펠링 패널(1800)의 열기를 트리거하기 위해
Figure 112009063908111-PCT00114
라고 말할 수 있다.
Figure 112009063908111-PCT00115
가 발음 패널 필드(1804)에 제시되도록 사용자가
Figure 112009063908111-PCT00116
라고 발성할 때, 리스트 박스(1802)는 리스트 박스(1802)에 간지 동음이의어 문자들의 목록을 자동으로 생성하지만, 사용자는 그 목록을 무시할 수 있다. 사용자가
Figure 112009063908111-PCT00117
("로마지")라고 발성하면, 본 시스템은
Figure 112009063908111-PCT00118
를 로마지 버전으로 변환한다. 로마지 버전에 대한 다수의 후보가 있기 때문에, 리스트 박스(1802) 내의 간지 후보가 로마지의 후보로 대체된다. 그 다음에, 사용자는 "tsuchi"가 단어 패널(1806)로 이동되도록 리스트 박스(1802) 내의 첫번째 단어를 얻기 위해
Figure 112009063908111-PCT00119
이라고 발성할 수 있다. 그 다음에, 리스트 박스(1802)가 사라지도록 할 수 있다. 사용자가 "OK"라고 말하면, 스펠링 패널(1800)은 닫히고, 단어 패널(1806) 내의 단어가 현재 사용 중인 문서 또는 워드 프로세서로 복사된다.
사용자에게 정보를 디스플레이하는 어떤 방식들이 어떤 도면들과 관련하여 스크린샷으로서 도시되고 기술되어 있지만, 당업자라면 다양한 다른 대안들이 이용될 수 있다는 것을 잘 알 것이다. 용어 "스크린", "스크린샷", "웹페이지", "문서", 및 "페이지"는 일반적으로 본 명세서에서 서로 바꾸어 사용될 수 있다. 페이지 또는 스크린은 디스플레이 설명으로서, 그래픽 사용자 인터페이스로서, 또는 스 크린(예를 들어, 퍼스널 컴퓨터, PDA, 이동 전화, 또는 기타 적당한 장치) 상에 정보를 표시하는 다른 방법들에 의해 저장 및/또는 전송되며, 여기서 페이지 상에 디스플레이될 레이아웃 및 정보 또는 컨텐츠는 메모리, 데이터베이스, 또는 다른 저장 설비에 저장된다.
도 19는 개시된 아키텍처에 따른 음성 인식 방법을 나타낸 것이다. 설명의 간략함을 위해, 본 명세서에서, 예를 들어, 플로우차트 또는 흐름도의 형태로 도시된 하나 이상의 방법들이 일련의 동작으로서 도시되고 기술되어 있지만, 본 발명에 따르면 어떤 동작들이 본 명세서에 도시되고 기술된 것과 다른 순서로 및/또는 다른 동작들과 동시에 행해질 수 있기 때문에, 이 방법들이 동작들의 순서에 의해 제한되지 않는다는 것을 잘 알고 이해할 것이다. 예를 들어, 당업자라면 방법이 다른 대안으로서, 상태도에서와 같이, 일련의 상호관련된 상태 또는 이벤트로서 표현될 수 있다는 것을 잘 알고 이해할 것이다. 게다가, 방법에 나타내어져 있는 모든 동작들이 새로운 구현에 모두 필요한 것은 아닐지도 모른다.
1900에서, 음성 인식 엔진은 아시아어 음성의 형태로 음성 입력을 수신한다. 1902에서, 아시아어 음성 신호가 인식 처리되어 결과를 출력한다. 1904에서, 새로운 단어를 철자하거나 결과를 정정하기 위해 스펠링/정정 모드에 들어간다. 1906에서, 음성 발음(phonetic pronunciation) 및/또는 문자 선택에 기초하여 결과의 스펠링이 한번에 정정된다. 1908에서, 정정된 결과가 문서 또는 애플리케이션으로 출력된다.
도 20은 스펠링 마법사를 사용하여 인식 결과를 정정하는 방법을 나타낸 것 이다. 2000에서, 인식 엔진은 아시아어 음성 입력을 수신한다. 2002에서, 아시아어 음성 신호가 인식 처리되고, 결과의 스펠링을 정정하기 위해 정정 모드에 들어간다. 2004에서, 정정 모드의 일부로서 스펠링 마법사가 기동된다. 2006에서, 아시아어 문자가 음성 발음에 의해 마법사에 입력된다. 2008에서, 음성 발음에 기초하여 마법사를 통해 스펠링이 정정된다.
도 21은 음성 발음을 문자로 변환하는 방법을 나타낸 것이다. 2100에서, 변환 프로세스를 위해 데이터 파일 준비가 시작된다. 2102에서, 색인된 단어 및 단어 값으로 된 데이터 파일이 생성되며, 이 값은 발음, 성조, 사용 빈도 및 카테고리를 포함한다. 2104에서, 색인된 발음과 이 발음을 값으로서 사용 빈도의 순서로 갖는 단어로 된 데이터 파일이 생성된다. 2106에서, 음소 거리의 혼동 행렬로 된 데이터 파일이 생성된다. 2108에서, 스펠링 마법사를 통해 발음 처리를 위해 이들 데이터 파일이 액세스된다.
도 22는 정정 처리를 위해 아시아어 및 영어에서 분리 명령을 사용하는 방법을 나타낸 것이다. 2200에서, 아시아어와 영어 둘다에서 분리 명령이 제시된다. 2202에서, 영어 스펠링 정정 모드에 들어갈지 여부에 대한 검사가 행해진다. '예'인 경우, 2204에서, 영어 스펠링 모드에 들어간다. 2206에서, 스펠링 모드에서 이용가능한 방법들을 통해 음성 신호에 기초하여 후보 문자 목록이 제시된다. 2208에서, 새로운 단어가 철자되거나, 잘못 인식된 단어가 선택된 후보에 기초하여 정정된다. 2202에서, 영어 스펠링 모드에 들어가지 않는 경우, 흐름은 2210으로 가서 아시아어 스펠링 모드에 들어가고, 그 다음에 2206으로 가서 앞서 기술된 바와 같이 계속된다.
도 23은 아시아어 스펠링 마법사에서 동음이의어 명령을 사용하는 방법을 나타낸 것이다. 2300에서, 아시아어 및 영어 둘다에서 분리 명령이 제시된다. 2302에서, 아시아어 스펠링 정정 모드에 들어간다. 2304에서, 동음이의어 명령이 수신된다. 2306에서, 목표 문자의 동음이의어 문자에 기초하여 후보 문자 목록이 제시된다. 2308에서, 선택된 후보에 기초하여 잘못 인식된 단어가 정정된다.
도 24는 단어 의미에 가중치 값을 적용하는 방법을 나타낸 것이다. 2400에서, 원하는 문자를 포함하는 단어로 정정하기 위한 준비가 개시된다. 2402에서, 이름들의 대규모 코퍼스가 수집된다. 2404에서, 이름에 있는 문자를 포함하는 단어를 찾아낸다. 2406에서, 단어들을 긍정적 및 중립적 의미들로 된 파일로 그룹화한다. 2408에서, 단어들을 부정적 의미들로 된 파일로 그룹화한다. 2410에서, 긍정적 및 중립적 의미의 그룹에 있는 단어에 높은 가중치를 적용한다. 2412에서, 부정적 의미의 그룹에 있는 단어에 중간 가중치를 적용한다. 2414에서, 다른 2개의 그룹에 있지 않은 단어에 낮은 가중치를 적용한다. 2416에서, 사용 빈도에 따라 단어들을 정렬한다.
도 25는 업데이트된 사전을 공유하는 방법을 나타낸 것이다. 2500에서, 정정 모드에 들어간다. 2502에서, 정정 모드 동안에 이용되는 새로운 단어를 추적하여 로깅한다. 2504에서, 새로운 단어가 로컬 사전에 입력된다. 2506에서, 업데이트된 사전이 다른 사용자들에게 전달(ship)된다. 2508에서, 사용자가 배포 사전 코퍼스(distribution lexicon corpus)를 업데이트하도록 벤더에게 업데이트된 사전 을 전달할 수 있다.
도 26은 스펠링 정정을 위해 문자 분해(character decomposition)를 사용하는 방법을 나타낸 것이다. 2600에서, 스펠링 정정 모드를 개시한다. 2602에서, 사용자가 원하는 문자의 하위성분 기호(subcomponent symbol)를 발성한다. 2604에서, 이 방법은 하위성분과 각자의 문자 간의 대응하는 관계 테이블을 조사한다. 2606에서, 일치하는 것이 2개 이상 있는 경우, 하위성분에 대한 모든 가능한 문자가 제시된다. 2608에서, 후보 문자가 하위성분에 기초하여 선택된다.
도 27a 및 도 27b는 다수의 스펠링 정정 방법에 기초한 정정 처리 방법을 나타낸 것이다. 2700에서, 엔진이 아시아어 음성 입력을 수신한다. 2702에서, 인식된 엔진 결과가 UI에 제공된다. 2704에서, 시스템은 스펠링/정정 모드에 들어가라는(또는 새로운 단어를 직접 입력하라는) 음성 명령을 수신한다. 이어서, 흐름은 2706으로 가서, 동일한 및/또는 다른 문자들을 단어 문맥에 대해서 처리한다. 다른 대안으로서, 흐름이 2702로부터 2708로 가서, 시스템은 정정할 단어를 선택하라는 음성 명령을 수신한다. 2710에서, 시스템은 스펠링 모드에 들어가서 문자를 선택 및 정정하라는 음성 명령을 수신한다. 이전과 마찬가지로, 흐름은 그 다음에 2706으로 가서, 동일한 및/또는 다른 문자들을 단어 문맥에 대해서 처리한다.
도 27b로 가서, 2712에서, 계산된 문맥에 기초하여 잠재적인 단어 목록에 액세스한다. 예를 들어, 문맥은 사람 이름일 수 있다. 2714에서, 단어 목록의 문자들을 동일한 및/또는 다른 문자들에 기초하여 정렬한다. 2716에서, 문자 선택 방법이 선택된다. 2718에서, 흐름은 2720으로 가서, 유사한 용법으로 문자를 포함하 는 단어를 발성하는 방법이 선택된다. 다른 대안으로서, 2722에서, 원하는 문자의 발음을 제공함으로써 문자를 얻는 방법이 선택된다. 또 다른 대안으로서, 2724에서, 하위성분에 의해 문자를 얻기 위해 단어가 발성되는 방법이 선택된다. 다른 대안으로서, 2726에서, 동음이의어 목록을 얻기 위해 단어(들)를 발성하고 동음이의어 목록으로부터 선택을 하는 방법이 선택된다. 2728에서, 새로운 문자가 추가되거나, 잘못 철자된 단어 내의 잘못된 문자가 선택된 문자로 대체된다. 2730에서, 전체 단어의 정확함에 대한 음성 확인이 사용자로부터 수신된다. 2732에서, 정확한 문자를 사용하여 엔진 결과가 정정된다.
본 출원에서 사용되는 바와 같이, 용어 "컴포넌트" 및 "시스템"은 컴퓨터-관련 개체, 예를 들어, 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행 중인 소프트웨어를 말하기 위한 것이다. 예를 들어, 컴포넌트는 프로세서 상에서 실행 중인 프로세스, 프로세서, 하드 디스크 드라이브, (광 및/또는 자기 저장 매체의) 다수의 저장 장치 드라이브, 객체, 실행 파일, 실행 쓰레드, 프로그램 및/또는 컴퓨터일 수 있지만, 이들로 제한되지 않는다. 예시로서, 서버 상에서 실행 중인 애플리케이션 및 그 서버 둘다가 컴포넌트일 수 있다. 하나 이상의 컴포넌트가 프로세스 및/또는 실행 쓰레드 내에 존재할 수 있고, 컴포넌트가 하나의 컴퓨터 상에 로컬화되어 있을 수 있고 및/또는 2개 이상의 컴퓨터 간에 분산되어 있을 수 있다.
이제 도 28를 참조하면, 개시된 아키텍처에 따라 정정 처리를 실행하는 동작을 하는 컴퓨팅 시스템(2800)의 블록도가 도시되어 있다. 개시된 아키텍처의 다양 한 측면들에 대한 부가적인 상황을 제공하기 위해, 도 28 및 이하의 설명은 이 다양한 측면들이 구현될 수 있는 적당한 컴퓨팅 시스템(2800)에 대한 간략하고 개괄적인 설명을 제공하기 위한 것이다. 이상의 설명이 일반적으로 하나 이상의 컴퓨터 상에서 실행될 수 있는 컴퓨터 실행가능 명령어들과 관련하여 기술되어 있지만, 당업자라면 새로운 실시예도 역시 다른 프로그램 모듈들과 관련하여 및/또는 하드웨어와 소프트웨어의 조합으로서 구현될 수 있다는 것을 잘 알 것이다.
일반적으로, 프로그램 모듈은 특정의 태스크를 수행하거나 특정의 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조, 기타 등등을 포함한다. 게다가, 당업자라면 본 발명의 방법이 단일-프로세서 또는 멀티프로세서 컴퓨터 시스템, 미니컴퓨터, 메인프레임 컴퓨터는 물론, 퍼스널 컴퓨터, 핸드헬드 컴퓨팅 장치, 마이크로프로세서-기반 또는 프로그램가능 가전 제품, 기타 등등(이들 각각은 하나 이상의 연관된 장치들과 결합되어 동작할 수 있음)을 비롯한 다른 컴퓨터 시스템 구성에서도 실시될 수 있다는 것을 잘 알 것이다.
예시된 측면들은 또한 어떤 태스크들이 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 수행되는 분산 컴퓨팅 환경에서도 실시될 수 있다. 분산 컴퓨팅 환경에서는, 프로그램 모듈들이 로컬 및 원격 메모리 저장 장치 둘다에 위치할 수 있다.
컴퓨터는 통상적으로 각종의 컴퓨터 판독가능 매체를 포함하고 있다. 컴퓨터 판독가능 매체는 컴퓨터에 의해 액세스될 수 있는 이용가능한 매체라면 어느 것이라도 될 수 있고, 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체를 포함한 다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등의 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체로는 RAM, ROM, EEPROM, 플래쉬 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital video disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용될 수 있고 또 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체가 있지만, 이들로 제한되지 않는다.
다시 도 28을 참조하면, 다양한 측면들을 구현하는 예시적인 컴퓨팅 시스템(2800)은 컴퓨터(2802)를 포함하고 있고, 이 컴퓨터(2802)는 처리 장치(2804), 시스템 메모리(2806) 및 시스템 버스(2808)를 포함하고 있다. 시스템 버스(2808)는 시스템 메모리(2806)(이것으로 제한되지 않음)를 비롯한 시스템 컴포넌트들의 처리 장치(2804)에 대한 인터페이스를 제공한다. 처리 장치(2804)는 다양한 상용 프로세서들 중 어느 것이라도 될 수 있다. 듀얼 마이크로프로세서 및 기타 멀티-프로세서 아키텍처도 처리 장치(2804)로서 이용될 수 있다.
시스템 버스(2808)는 메모리 버스(메모리 컨트롤러를 갖거나 갖지 않음), 주변 장치 버스, 및 각종의 상용 버스 아키텍처 중 어느 것이라도 사용하는 로컬 버스와 추가적으로 상호접속될 수 있는 몇가지 유형의 버스 구조 중 어느 것이라도 될 수 있다. 시스템 메모리(2806)는 판독 전용 메모리(ROM)(2810) 및 랜덤 액세스 메모리(RAM)(2812)를 포함한다. 기본 입/출력 시스템(BIOS)은 ROM, EPROM, EEPROM 등의 비휘발성 메모리(2810)에 저장되며, 이 BIOS는 시동 중과 같은 때에 컴퓨터(2802) 내의 구성요소들 간의 정보 전송을 돕는 기본 루틴을 포함하고 있다. RAM(2812)은 또한 데이터를 캐싱하기 위한 정적 RAM 등의 고속 RAM도 포함할 수 있다.
컴퓨터(2802)는 내장형 하드 디스크 드라이브(HDD)(2814)(예를 들어, EIDE, SATA) - 이 내장형 하드 디스크 드라이브(2814)는 또한 적당한 새시(도시 생략)에 넣어 외장용으로도 구성될 수 있음 -, 자기 플로피 디스크 드라이브(FDD)(2816)[예를 들어, 이동식 디스켓(2818)으로부터 판독을 하거나 그에 기록을 함] 및 광 디스크 드라이브(2820)[예를 들어, CD-ROM 디스크(2822)를 판독하거나, 또는 DVD 등의 기타 대용량 광 매체로부터 판독을 하거나 그에 기록을 함]를 더 포함하고 있다. 하드 디스크 드라이브(2814), 자기 디스크 드라이브(2816) 및 광 디스크 드라이브(2820)는 각각 하드 디스크 드라이브 인터페이스(2824), 자기 디스크 드라이브 인터페이스(2826) 및 광 드라이브 인터페이스(2828)에 의해 시스템 버스(2808)에 접속될 수 있다. 외장형 드라이브 구현을 위한 인터페이스(2824)는 USB(Universal Serial Bus) 및 IEEE 1394 인터페이스 기술 중 적어도 하나 또는 둘다를 포함한다.
이들 드라이브 및 그와 연관된 컴퓨터 판독가능 매체는 데이터, 데이터 구조, 컴퓨터 실행가능 명령어, 기타 등등의 비휘발성 저장을 제공한다. 컴퓨터(2802)의 경우, 이들 드라이브 및 매체는 임의의 데이터를 적당한 디지털 형식으로 저장하는 것에 대응하고 있다. 컴퓨터 판독가능 매체에 대한 이상의 설명에서 HDD, 이동식 자기 디스켓, 및 CD나 DVD 등의 이동식 광 매체에 대해 언급하고 있지만, 당업자라면 컴퓨터에 의해 판독가능한 기타 유형의 매체(zip 드라이브, 자기 카세트, 플래쉬 메모리 카드, 카트리지, 기타 등등)도 이 예시적인 운영 환경에서 사용될 수 있다는 것과 또한 임의의 이러한 매체가 개시된 아키텍처의 새로운 방법을 수행하는 컴퓨터 실행가능 명령어를 포함하고 있을 수 있다는 것도 잘 알 것이다.
운영 체제(2830), 하나 이상의 애플리케이션 프로그램(2832), 기타 프로그램 모듈(2834) 및 프로그램 데이터(2836)를 비롯한 다수의 프로그램 모듈이 이들 드라이브 및 RAM(2812)에 저장될 수 있다. 운영 체제, 애플리케이션, 모듈 및/또는 데이터의 전부 또는 일부도 역시 RAM(2812)에 캐싱될 수 있다. 개시된 아키텍처가 다양한 상용 운영 체제 또는 운영 체제들의 조합에서 구현될 수 있다는 것을 잘 알 것이다.
사용자는 하나 이상의 유선/무선 입력 장치, 예를 들어, 키보드(2838) 및 마우스(2840) 등의 포인팅 장치를 통해 컴퓨터(2802)에 명령 및 정보를 입력할 수 있다. 입력/출력 장치로는 마이크/스피커(2837), 및 기타 장치(도시 생략)(예를 들어, IR 리모콘, 조이스틱, 게임 패드, 스타일러스 펜, 터치 스크린, 기타 등등)가 있을 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스(2808)에 결합되어 있는 입력 장치 인터페이스(2842)를 통해 처리 장치(2804)에 접속되지만, 병렬 포트, IEEE 1394 직렬 포트, 게임 포트, USB 포트, IR 인터페이스, 기타 등등의 다른 인터페이스들에 의해 접속될 수 있다.
모니터(2844) 또는 기타 유형의 디스플레이 장치도 비디오 어댑터(2846) 등의 인터페이스를 통해 시스템 버스(2808)에 접속된다. 모니터(2844) 이외에, 컴퓨터는 통상적으로 스피커, 프린터, 기타 등등의 다른 주변 출력 장치(도시 생략)도 포함하고 있다.
컴퓨터(2802)는 원격 컴퓨터(들)(2848) 등의 하나 이상의 원격 컴퓨터와의 유선 및/또는 무선 통신을 통한 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(들)(2848)는 워크스테이션, 서버 컴퓨터, 라우터, 퍼스널 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서-기반 오락 기기, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있으며, 통상적으로 컴퓨터(2802)와 관련하여 기술된 구성요소들 중 다수 또는 그 전부를 포함하고 있지만, 간략함을 위해 메모리/저장 장치(2850)만이 도시되어 있다. 도시된 논리적 접속은 근거리 통신망(LAN)(2852) 및/또는 보다 대규모의 네트워크, 예를 들어, 원거리 통신망(WAN)(2854)에의 유선/무선 접속을 포함한다. 이러한 LAN 및 WAN 네트워킹 환경은 사무실 및 회사에서 흔하게 볼 수 있고 인트라넷 등의 전사적 컴퓨터 네트워크를 용이하게 해주며, 이들 네트워크 전부는 전세계 통신 네트워크, 예를 들어, 인터넷에 접속할 수 있다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(2802)는 유선 및/또는 무선 통신 네트워크 인터페이스 또는 어댑터(2856)를 통해 로컬 네트워크(2852)에 접속된다. 어댑터(2856)는 LAN(2852)과의 유선 또는 무선 통신을 용이하게 해줄 수 있으며, 이 LAN(2852)은 무선 어댑터(2856)와 통신하기 위해 그에 배치되어 있는 무선 액세 스 포인트도 포함하고 있을 수 있다.
WAN 네트워킹 환경에서 사용될 때, 컴퓨터(2802)는 모뎀(2858)을 포함할 수 있거나, WAN(2854) 상의 통신 서버에 접속되어 있거나, WAN(2854)을 통해, 예를 들어, 인터넷을 통해 통신을 설정하는 다른 수단을 갖는다. 내장형이거나 외장형이고 유선 및/또는 무선 장치일 수 있는 모뎀(2858)은 직렬 포트 인터페이스(2842)를 통해 시스템 버스(2808)에 접속된다. 네트워크화된 환경에서, 컴퓨터(2802) 또는 그의 일부와 관련하여 도시된 프로그램 모듈들은 원격 메모리/저장 장치(2850)에 저장될 수 있다. 도시된 네트워크 접속이 예시적인 것이고 컴퓨터들 간에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 잘 알 것이다.
컴퓨터(2802)는 무선 통신에 배치되어 동작하는 임의의 무선 장치 또는 개체, 예를 들어, 프린터, 스캐너, 데스크톱 및/또는 휴대용 컴퓨터, PDA(portable data assistant), 통신 위성, 무선 검출가능 태그와 연관된 임의의 장비 또는 장소(예를 들어, 키오스크, 신문 가판대, 휴게실), 그리고 전화와 통신하는 동작을 한다. 이것은 적어도 Wi-Fi 및 블루투스™ 무선 기술을 포함한다. 따라서, 이 통신은 종래의 네트워크 또는 단지 적어도 2개의 장치 간의 애드혹 통신(ad hoc communication)에서와 같이 미리 정의된 구조일 수 있다.
이제 도 29을 참조하면, 개시된 아키텍처에 따른 정정 처리를 위한 예시적인 컴퓨팅 환경(2900)의 개략 블록도가 도시되어 있다. 시스템(2900)은 하나 이상의 클라이언트(들)(2902)를 포함하고 있다. 클라이언트(들)(2902)는 하드웨어 및/또는 소프트웨어(예를 들어, 쓰레드, 프로세스, 컴퓨팅 장치)일 수 있다. 클라이언 트(들)(2902)는, 예를 들어, 쿠키(들) 및/또는 연관된 컨텍스트 정보(contextual information)를 가지고 있을 수 있다.
시스템(2900)은 또한 하나 이상의 서버(들)(2904)를 포함하고 있다. 서버(들)(2904)도 역시 하드웨어 및/또는 소프트웨어(예를 들어, 쓰레드, 프로세스, 컴퓨팅 장치)일 수 있다. 서버(들)(2904)은, 예를 들어, 본 아키텍처를 이용하여 변환을 수행하는 쓰레드를 가지고 있을 수 있다. 클라이언트(2902)와 서버(2904) 간의 한가지 가능한 통신은 2개 이상의 컴퓨터 프로세스들 간에 전송되도록 구성되어 있는 데이터 패킷의 형태로 되어 있을 수 있다. 이 데이터 패킷은, 예를 들어, 쿠키 및/또는 연관된 컨텍스트 정보를 포함할 수 있다. 시스템(2900)은 클라이언트(들)(2902)와 서버(들)(2904) 간의 통신을 용이하게 해주는 데 이용될 수 있는 통신 프레임워크(2906)(예를 들어, 인터넷 등의 전세계 통신 네트워크)를 포함하고 있다.
유선(광 섬유를 포함함) 및/또는 무선 기술을 통해 통신이 용이하게 될 수 있다. 클라이언트(들)(2902)는 클라이언트(들)(2902)에 로컬인 정보(예를 들어, 쿠키(들) 및/또는 연관된 컨텍스트 정보)를 저장하는 데 이용될 수 있는 하나 이상의 클라이언트 데이터 저장소(들)(2908)에 접속되어 동작한다. 이와 유사하게, 서버(들)(2904)는 서버(들)(2904)에 로컬인 정보를 저장하는 데 이용될 수 있는 하나 이상의 서버 데이터 저장소(들)(2910)에 접속되어 동작한다.
개시된 아키텍처의 예들에 대해 이상에서 설명하였다. 물론, 컴포넌트들 및 /또는 방법들의 모든 생각가능한 조합을 다 기술할 수는 없지만, 당업자라면 많은 추가의 조합 및 치환이 가능하다는 것을 잘 알 것이다. 따라서, 이 새로운 아키텍처가 첨부된 청구항들의 정신 및 범위 내에 속하는 모든 이러한 변경, 수정 및 변형을 포괄하는 것으로 보아야 한다. 게다가, 용어 "포함한다"가 상세한 설명 또는 청구항에서 사용되는 한, 이러한 용어는 용어 "포함하는"이 청구항에서 전이구(transitional word)로 이용될 때 해석되는 것과 유사한 방식으로 포함적인 것으로 보아야 한다.

Claims (20)

  1. 컴퓨터-구현 변환 시스템(100)으로서,
    음성 입력에 기초하여 아시아어 문자를 출력하는 음성 인식 컴포넌트(102), 및
    상기 음성 인식 컴포넌트의 잘못된 출력에 기초하여 정정된 출력을 생성하는 정정 컴포넌트(104)를 포함하는, 컴퓨터-구현 변환 시스템.
  2. 제1항에 있어서, 상기 정정 컴포넌트는 상기 잘못된 출력을 선택하여 정정하기 위해 음성으로 또 수작업으로 사용자 상호작용을 용이하게 해주는 스펠링 마법사를 포함하는 것인, 컴퓨터-구현 변환 시스템.
  3. 제1항에 있어서, 상기 정정 컴포넌트는 지역 발음 기호를 사용하여 단어 발음에 관한 정보를 수신하는 것인, 컴퓨터-구현 변환 시스템.
  4. 제1항에 있어서, 상기 정정 컴포넌트는, 상기 문자가 사용되는 단어들을 제공하는 것에 의해, 단어가 어떻게 표기되는지에 관한 정보를 수신하는 것인, 컴퓨터-구현 변환 시스템.
  5. 제1항에 있어서, 상기 정정 컴포넌트는 상기 문자가 어떻게 구성되어 있는지 에 관한 정보를 수신하는 것인, 컴퓨터-구현 변환 시스템.
  6. 제1항에 있어서, 자동으로 수행되기를 원하는 동작을 예측 또는 추론하기 위해 확률 및/또는 통계-기반 분석을 이용하는 추론 컴포넌트를 더 포함하는, 컴퓨터-구현 변환 시스템.
  7. 제1항에 있어서, 업데이트된 사전을 다른 사용자 및 사전 벤더(lexicon vendor)와 공유시키는 공유 컴포넌트를 더 포함하는, 컴퓨터-구현 변환 시스템.
  8. 제1항에 있어서, 의미에 기초하여 단어를 가중시키는 가중 컴포넌트(weighting component)를 더 포함하는, 컴퓨터-구현 변환 시스템.
  9. 제1항에 있어서, 사용 빈도 정보(frequency of usage information)를 저장하는 빈도 컴포넌트(frequency component)를 더 포함하며,
    상기 정정 컴포넌트는 상기 사용 빈도 정보를 사용하여 정렬된 후보 문자 목록을 제공하는 것인, 컴퓨터-구현 변환 시스템.
  10. 제1항에 있어서, 상기 아시아어 문자는 연관된 고정 발음을 갖는 그림 문자를 포함하는 중국어 또는 일본어 표기 형태로 되어 있는 것인, 컴퓨터-구현 변환 시스템.
  11. 컴퓨터-구현 음성 인식 방법으로서,
    아시아어 음성 신호를 인식하여 결과를 출력하는 단계(1902),
    상기 결과의 스펠링을 정정하기 위해 스펠링/정정 모드에 들어가는 단계(1904), 및
    음성 발음(phonetic pronunciation) 또는 문자 선택 중 적어도 하나에 기초하여 상기 결과의 스펠링을 한번에 정정하는 단계(1906)를 포함하는, 컴퓨터-구현 음성 인식 방법.
  12. 제11항에 있어서, 상기 아시아어 음성 신호를 수신한 것에 응답하여 상기 스펠링/정정 모드에 자동으로 들어가는 단계를 더 포함하며,
    상기 정정 모드는 상기 음성 발음을 수신하는 스펠링 마법사를 포함하는 것인, 컴퓨터-구현 음성 인식 방법.
  13. 제11항에 있어서, 상기 스펠링을 정정하는 데 사용되는 음소 거리(phoneme distance)를 저장하는 혼동 행렬(confusion matrix)을 적용하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  14. 제11항에 있어서, 음성에 의한 동음이의어 명령(voiced homophone command)을 사용하여 상기 스펠링을 정정하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  15. 제11항에 있어서, 하위성분 기호로의 단어 분해에 기초하여 상기 스펠링을 정정하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  16. 제11항에 있어서, 상기 스펠링을 정정하면서 새로운 사전을 발전시키고 이 새로운 사전을 다른 사용자에게 전송하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  17. 제11항에 있어서, 상기 아시아어 음성 신호의 언어에 기초하여 다수의 표기법 간에 전환을 하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  18. 제11항에 있어서, 문자를 포함하는 하나 이상의 단어의 음성 입력에 기초하여 상기 문자를 선택하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  19. 제11항에 있어서, 우선순위가 매겨진 후보 문자 목록을 발생하고 후보 문자들을 수작업 또는 음성 명령 중 하나에 의해 선택하기 위한 색인 목록으로서 제시하는 단계를 더 포함하는, 컴퓨터-구현 음성 인식 방법.
  20. 컴퓨터-구현 시스템으로서,
    아시아어 음성 신호를 인식하여 결과를 출력하는 컴퓨터-구현 수단(102),
    상기 결과의 스펠링을 정정하기 위해 스펠링/정정 모드에 들어가는 컴퓨터-구현 수단(302),
    주요 단어 검색(key word search)을 수행하는 컴퓨터-구현 수단(502), 및
    음성 명령 및 수작업 문자 선택에 기초하여 상기 결과의 스펠링을 한번에 정정하는 컴퓨터-구현 수단(104)을 포함하는, 컴퓨터-구현 시스템.
KR1020097021801A 2007-04-26 2008-04-08 아시아어 문자를 생성하는 인식 아키텍처 KR101532447B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/789,878 2007-04-26
US11/789,878 US8457946B2 (en) 2007-04-26 2007-04-26 Recognition architecture for generating Asian characters
PCT/US2008/059688 WO2008134208A1 (en) 2007-04-26 2008-04-08 Recognition architecture for generating asian characters

Publications (2)

Publication Number Publication Date
KR20100015696A true KR20100015696A (ko) 2010-02-12
KR101532447B1 KR101532447B1 (ko) 2015-06-29

Family

ID=39888049

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097021801A KR101532447B1 (ko) 2007-04-26 2008-04-08 아시아어 문자를 생성하는 인식 아키텍처

Country Status (8)

Country Link
US (1) US8457946B2 (ko)
EP (1) EP2153352B1 (ko)
JP (2) JP5622566B2 (ko)
KR (1) KR101532447B1 (ko)
CN (1) CN101669116B (ko)
BR (1) BRPI0810626A2 (ko)
RU (1) RU2477518C2 (ko)
WO (1) WO2008134208A1 (ko)

Families Citing this family (195)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8365071B2 (en) * 2007-08-31 2013-01-29 Research In Motion Limited Handheld electronic device and associated method enabling phonetic text input in a text disambiguation environment and outputting an improved lookup window
CN101408873A (zh) * 2007-10-09 2009-04-15 劳英杰 全范围语义信息综合认知系统及其应用
US20090157385A1 (en) * 2007-12-14 2009-06-18 Nokia Corporation Inverse Text Normalization
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
WO2010067118A1 (en) 2008-12-11 2010-06-17 Novauris Technologies Limited Speech recognition involving a mobile device
EP2211336B1 (en) * 2009-01-23 2014-10-08 Harman Becker Automotive Systems GmbH Improved speech input using navigation information
KR20120016060A (ko) * 2009-03-20 2012-02-22 구글 인코포레이티드 입력 방식 편집기 컴퓨팅 디바이스와의 상호작용
WO2010131256A1 (en) * 2009-05-13 2010-11-18 Rajesh Mehra A keyboard for linguistic scripts
US9104244B2 (en) * 2009-06-05 2015-08-11 Yahoo! Inc. All-in-one Chinese character input method
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US20110171617A1 (en) * 2010-01-11 2011-07-14 Ideographix, Inc. System and method for teaching pictographic languages
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
CN101847407B (zh) * 2010-03-12 2013-01-02 中山大学 一种基于xml的语音识别参数处理方法
GB2480649B (en) * 2010-05-26 2017-07-26 Sun Lin Non-native language spelling correction
WO2012042578A1 (ja) * 2010-10-01 2012-04-05 三菱電機株式会社 音声認識装置
US9262397B2 (en) * 2010-10-08 2016-02-16 Microsoft Technology Licensing, Llc General purpose correction of grammatical and word usage errors
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US20120303368A1 (en) * 2011-05-27 2012-11-29 Ting Ma Number-assistant voice input system, number-assistant voice input method for voice input system and number-assistant voice correcting method for voice input system
US10672399B2 (en) 2011-06-03 2020-06-02 Apple Inc. Switching between text data and audio data based on a mapping
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8855997B2 (en) 2011-07-28 2014-10-07 Microsoft Corporation Linguistic error detection
CN102324233B (zh) * 2011-08-03 2014-05-07 中国科学院计算技术研究所 汉语语音识别中重复出现词识别错误的自动修正方法
US8706472B2 (en) * 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
JP5642037B2 (ja) * 2011-09-22 2014-12-17 株式会社東芝 検索装置、検索方法およびプログラム
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
CN103324621B (zh) * 2012-03-21 2017-08-25 北京百度网讯科技有限公司 一种泰语文本拼写纠正方法及装置
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR102105101B1 (ko) * 2012-11-07 2020-04-27 삼성전자주식회사 디스플레이 장치 및 이의 문자 수정 방법
CN103076893B (zh) * 2012-12-31 2016-08-17 百度在线网络技术(北京)有限公司 一种用于实现语音输入的方法与设备
US9858038B2 (en) * 2013-02-01 2018-01-02 Nuance Communications, Inc. Correction menu enrichment with alternate choices and generation of choice lists in multi-pass recognition systems
EP4138075A1 (en) 2013-02-07 2023-02-22 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
KR101759009B1 (ko) 2013-03-15 2017-07-17 애플 인크. 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN110442699A (zh) 2013-06-09 2019-11-12 苹果公司 操作数字助理的方法、计算机可读介质、电子设备和系统
US9898187B2 (en) 2013-06-09 2018-02-20 Apple Inc. Managing real-time handwriting recognition
CN105265005B (zh) 2013-06-13 2019-09-17 苹果公司 用于由语音命令发起的紧急呼叫的系统和方法
US9423890B2 (en) * 2013-06-28 2016-08-23 Lenovo (Singapore) Pte. Ltd. Stylus lexicon sharing
US10791216B2 (en) 2013-08-06 2020-09-29 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9489943B2 (en) 2013-10-16 2016-11-08 Interactive Intelligence Group, Inc. System and method for learning alternate pronunciations for speech recognition
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9626354B2 (en) 2014-01-21 2017-04-18 Lenovo (Singapore) Pte. Ltd. Systems and methods for using tone indicator in text recognition
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9946704B2 (en) * 2014-07-18 2018-04-17 Lenovo (Singapore) Pte. Ltd. Tone mark based text suggestions for chinese or japanese characters or words
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9953646B2 (en) 2014-09-02 2018-04-24 Belleau Technologies Method and system for dynamic speech recognition and tracking of prewritten script
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
CN105632499B (zh) * 2014-10-31 2019-12-10 株式会社东芝 用于优化语音识别结果的方法和装置
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
RU2598300C2 (ru) * 2015-01-27 2016-09-20 Общество с ограниченной ответственностью "Аби Девелопмент" Способы и системы автоматического распознавания символов с использованием дерева решений
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
EP3284084A4 (en) * 2015-04-17 2018-09-05 Microsoft Technology Licensing, LLC Deep neural support vector machines
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
SG11201704826YA (en) * 2015-07-01 2017-07-28 Vasan Sun Methods for multi-language data entry using a processor, and systems and devices for multi-language data entry
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10049655B1 (en) * 2016-01-05 2018-08-14 Google Llc Biasing voice correction suggestions
US9971758B1 (en) 2016-01-06 2018-05-15 Google Llc Allowing spelling of arbitrary words
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179329B1 (en) 2016-06-12 2018-05-07 Apple Inc Handwriting keyboard for monitors
CN106297797B (zh) * 2016-07-26 2019-05-31 百度在线网络技术(北京)有限公司 语音识别结果纠错方法和装置
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
JP6545740B2 (ja) * 2017-03-08 2019-07-17 株式会社東芝 生成装置、プログラム、認識システムおよび生成方法
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US20180358004A1 (en) * 2017-06-07 2018-12-13 Lenovo (Singapore) Pte. Ltd. Apparatus, method, and program product for spelling words
CN107544726B (zh) * 2017-07-04 2021-04-16 百度在线网络技术(北京)有限公司 基于人工智能的语音识别结果纠错方法、装置及存储介质
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10832675B2 (en) 2018-08-24 2020-11-10 Denso International America, Inc. Speech recognition system with interactive spelling function
CN109712607B (zh) * 2018-12-30 2021-12-24 联想(北京)有限公司 一种处理方法、装置及电子设备
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11636282B2 (en) * 2019-06-28 2023-04-25 International Business Machines Corporation Machine learned historically accurate temporal classification of objects
JP2021144271A (ja) * 2020-03-10 2021-09-24 オムロン株式会社 文字入力装置、文字入力方法、および、文字入力プログラム
TWI802165B (zh) * 2021-12-22 2023-05-11 中華電信股份有限公司 用於語音核證之語音辨識系統、方法及其電腦可讀媒介

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220639A (en) 1989-12-01 1993-06-15 National Science Council Mandarin speech input method for Chinese computers and a mandarin speech recognition machine
US5787230A (en) 1994-12-09 1998-07-28 Lee; Lin-Shan System and method of intelligent Mandarin speech input for Chinese computers
JPH08212213A (ja) * 1995-01-31 1996-08-20 Toshiba Corp 文字変換方法
US6903723B1 (en) * 1995-03-27 2005-06-07 Donald K. Forest Data entry method and apparatus
US5893133A (en) 1995-08-16 1999-04-06 International Business Machines Corporation Keyboard for a system and method for processing Chinese language text
US5903861A (en) 1995-12-12 1999-05-11 Chan; Kun C. Method for specifically converting non-phonetic characters representing vocabulary in languages into surrogate words for inputting into a computer
JP2820093B2 (ja) * 1995-12-26 1998-11-05 日本電気株式会社 単音節認識装置
US6067520A (en) 1995-12-29 2000-05-23 Lee And Li System and method of recognizing continuous mandarin speech utilizing chinese hidden markou models
US6018708A (en) 1997-08-26 2000-01-25 Nortel Networks Corporation Method and apparatus for performing speech recognition utilizing a supplementary lexicon of frequently used orthographies
CN1120436C (zh) 1997-09-19 2003-09-03 国际商业机器公司 用于识别孤立、非相关汉字的语音识别方法和系统
JP4267101B2 (ja) * 1997-11-17 2009-05-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声識別装置、発音矯正装置およびこれらの方法
KR19990043026A (ko) 1997-11-28 1999-06-15 유기범 음성인식 한글입력장치
JPH11306176A (ja) * 1998-04-22 1999-11-05 Sharp Corp 文字処理装置及び方法並びにその制御プログラムを記憶した媒体
US6694055B2 (en) 1998-07-15 2004-02-17 Microsoft Corporation Proper name identification in chinese
NZ513571A (en) * 1999-02-19 2004-01-30 Custom Speech Usa Inc Automated transcription system and method using two speech converting instances and computer-assisted correction
JP3980791B2 (ja) * 1999-05-03 2007-09-26 パイオニア株式会社 音声認識装置を備えたマンマシンシステム
CN1207664C (zh) * 1999-07-27 2005-06-22 国际商业机器公司 对语音识别结果中的错误进行校正的方法和语音识别系统
US7403888B1 (en) * 1999-11-05 2008-07-22 Microsoft Corporation Language input user interface
JP2001229162A (ja) * 2000-02-15 2001-08-24 Matsushita Electric Ind Co Ltd 中国語文書自動校正方法及び装置
AU2001259446A1 (en) * 2000-05-02 2001-11-12 Dragon Systems, Inc. Error correction in speech recognition
US7200555B1 (en) * 2000-07-05 2007-04-03 International Business Machines Corporation Speech recognition correction for devices having limited or no display
US7085716B1 (en) 2000-10-26 2006-08-01 Nuance Communications, Inc. Speech recognition using word-in-phrase command
JP2002189490A (ja) * 2000-12-01 2002-07-05 Leadtek Research Inc ピンイン音声入力の方法
FI20010644A (fi) * 2001-03-28 2002-09-29 Nokia Corp Merkkisekvenssin kielen määrittäminen
JP2002323969A (ja) * 2001-04-24 2002-11-08 Omron Corp コミュニケーション支援方法およびこの方法を用いたシステムならびに装置
CN1864204A (zh) * 2002-09-06 2006-11-15 语音信号技术有限公司 用来完成语音识别的方法、系统和程序
US7467087B1 (en) * 2002-10-10 2008-12-16 Gillick Laurence S Training and using pronunciation guessers in speech recognition
US7003457B2 (en) * 2002-10-29 2006-02-21 Nokia Corporation Method and system for text editing in hand-held electronic device
US7359850B2 (en) 2003-09-26 2008-04-15 Chai David T Spelling and encoding method for ideographic symbols
US8019602B2 (en) * 2004-01-20 2011-09-13 Microsoft Corporation Automatic speech recognition learning using user corrections
JP2005227510A (ja) * 2004-02-12 2005-08-25 Ntt Docomo Inc 音声認識装置及び音声認識方法
TWI247276B (en) 2004-03-23 2006-01-11 Delta Electronics Inc Method and system for inputting Chinese character
JP2006031092A (ja) * 2004-07-12 2006-02-02 Sony Ericsson Mobilecommunications Japan Inc 音声文字入力プログラム及び携帯端末装置
TWI258731B (en) 2004-11-04 2006-07-21 Univ Nat Cheng Kung Chinese speech synthesis unit selection module and method
TWI244638B (en) 2005-01-28 2005-12-01 Delta Electronics Inc Method and apparatus for constructing Chinese new words by the input voice
RU2296376C2 (ru) * 2005-03-30 2007-03-27 Открытое акционерное общество "Корпорация "Фазотрон - научно-исследовательский институт радиостроения" Способ распознавания слов речи
US20060271882A1 (en) 2005-05-26 2006-11-30 Inventec Appliances Corp. Method for implementing a fuzzy spelling while inputting Chinese characters into a mobile phone
US7643985B2 (en) 2005-06-27 2010-01-05 Microsoft Corporation Context-sensitive communication and translation methods for enhanced interactions and understanding among speakers of different languages
US20060293890A1 (en) * 2005-06-28 2006-12-28 Avaya Technology Corp. Speech recognition assisted autocompletion of composite characters
US7620549B2 (en) * 2005-08-10 2009-11-17 Voicebox Technologies, Inc. System and method of supporting adaptive misrecognition in conversational speech
JP4751192B2 (ja) * 2005-12-12 2011-08-17 本田技研工業株式会社 移動ロボット
JP2008090625A (ja) 2006-10-02 2008-04-17 Sharp Corp 文字入力装置、文字入力方法、制御プログラム、および、記録媒体

Also Published As

Publication number Publication date
EP2153352A4 (en) 2018-01-10
RU2009139274A (ru) 2011-04-27
CN101669116B (zh) 2016-01-06
JP2010525415A (ja) 2010-07-22
WO2008134208A1 (en) 2008-11-06
JP2014067062A (ja) 2014-04-17
RU2477518C2 (ru) 2013-03-10
BRPI0810626A2 (pt) 2014-11-04
JP5622566B2 (ja) 2014-11-12
EP2153352A1 (en) 2010-02-17
JP5819924B2 (ja) 2015-11-24
CN101669116A (zh) 2010-03-10
US8457946B2 (en) 2013-06-04
US20080270118A1 (en) 2008-10-30
EP2153352B1 (en) 2020-07-08
KR101532447B1 (ko) 2015-06-29

Similar Documents

Publication Publication Date Title
KR101532447B1 (ko) 아시아어 문자를 생성하는 인식 아키텍처
JP4829901B2 (ja) マニュアルでエントリされた不確定なテキスト入力を音声入力を使用して確定する方法および装置
US7848926B2 (en) System, method, and program for correcting misrecognized spoken words by selecting appropriate correction word from one or more competitive words
US8380505B2 (en) System for recognizing speech for searching a database
AU2010212370B2 (en) Generic spelling mnemonics
US10643603B2 (en) Acoustic model training using corrected terms
US11024298B2 (en) Methods and apparatus for speech recognition using a garbage model
JP5703491B2 (ja) 言語モデル・音声認識辞書作成装置及びそれらにより作成された言語モデル・音声認識辞書を用いた情報処理装置
US9135912B1 (en) Updating phonetic dictionaries
JP2001092484A (ja) 認識単語登録方法、音声認識方法、音声認識装置、認識単語登録のためのソフトウエア・プロダクトを格納した記憶媒体、音声認識のためのソフトウエア・プロダクトを格納した記憶媒体
WO2021034395A1 (en) Data-driven and rule-based speech recognition output enhancement
JP2014164261A (ja) 情報処理装置およびその方法
JP5208795B2 (ja) 通訳装置、方法、及びプログラム
JP2011007862A (ja) 音声認識装置、音声認識プログラム、および音声認識方法
CN111429886B (zh) 一种语音识别方法及系统
KR100910302B1 (ko) 멀티모달 기반의 정보 검색 장치 및 방법
US11900072B1 (en) Quick lookup for speech translation
WO2024096970A1 (en) Slot extraction for intents using large language models
Alhonen et al. Mandarin short message dictation on symbian series 60 mobile phones

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 5