KR19990082252A - 데이터베이스 액세스 방법 및 장치 - Google Patents

데이터베이스 액세스 방법 및 장치 Download PDF

Info

Publication number
KR19990082252A
KR19990082252A KR1019980705981A KR19980705981A KR19990082252A KR 19990082252 A KR19990082252 A KR 19990082252A KR 1019980705981 A KR1019980705981 A KR 1019980705981A KR 19980705981 A KR19980705981 A KR 19980705981A KR 19990082252 A KR19990082252 A KR 19990082252A
Authority
KR
South Korea
Prior art keywords
representation
combination
word
distinguishable
database
Prior art date
Application number
KR1019980705981A
Other languages
English (en)
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 KR19990082252A publication Critical patent/KR19990082252A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4931Directory assistance systems
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/40Electronic components, circuits, software, systems or apparatus used in telephone systems using speech recognition
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 데이터베이스 시스템 액세스 방법 및 장치에 관한 것으로서, 이 데이터베이스 시스템은 제 1 단어집을 형성하는 엔트리와 관련한 정보의 항목에 대한 기계어 표현을 포함하는 복수의 필드를 포함하는 엔트리를 포함하는 데이터베이스, 이런 표현에 대한 제 2 단어집내에 포함되는 기계어 표현에 응답하여 기계어 표현을 나타내는 신호를 발생하는 출력 수단 및 신호를 수신하고, 그런 표현에 대한 제 3 단어집내에 포함되는 기계어 표현을 발생하도록 실시 가능한 입력 수단을 포함하고, 상기 데이터베이스 액세스 방법은 (ⅰ) 제 1 단어집과 제 3 단어집 사이의 규정된 관계에 따라 상기 입력 수단에 의해 발생된 각각의 표현에 대하여 제 1 단어집에 따른 하나 이상의 표현을 발생하는 단계, (ⅱ) 발생된 표현을 포함하는 데이터베이스 엔트리를 식별하는 단계, (ⅲ) 규정된 관계에 따라 제 2 단어집의 표현으로 변환될 때 유사하게 변환된 경우의 다른 모든 구별 가능한 표현 또는 조합과는 상이한 구별 가능한 표현 또는 조합을 식별하기 위해 식별된 엔트리의 선택된 필드 또는 필드의 조합에 포함되는 각각의 표현 또는 표현의 조합을 검사하는 단계 및 (ⅳ) 구별 가능한 표현 또는 조합 중 하나에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 출력을 발생하도록 출력 수단을 제어하는 단계를 포함하는 것을 특징으로 한다.

Description

데이터베이스 액세스 방법 및 장치
본 발명은 특히, 배타적이지는 않지만, 음성 인식 입력과 합성된 음성 출력을 이용하는 데이터베이스 액세스에 관한 것이다.
국제 특허 공보 WO94/14270에는 맨 처음 호출자가 필요하다면 도시명을 말하도록 지시받는 기계화된 전화번호부 조회 시스템이 개시되어 있다. 다음에 구두로 표현된 단어는 인식되어 가장 높은 신뢰도를 갖는 단어가 사용자에 의해 구두로 표현된 단어로서 선택된다. 다음에 호출자는 찾는 상대방의 이름을 말하도록 지시받는다. 만족스런 신뢰도가 얻어지면, 데이터베이스가 액세스되고, 전화번호는 호출자에게 명료하게 발음된다. 신뢰도가 바람직한 신뢰도와 일치하지 않으면, 호출자는 지역 또는 이름의 일부 또는 전부의 철자를 말하도록 지시받는다. 구두로 표현된 입력과 데이터베이스 사이에 하나 이상의 일치가 발견되면, 사용자는 확인된 일치가 발견될 때까지 하나씩 각각의 일치를 확인하도록 요청받는다. 이런 일치가 존재하지 않으면, 자동 처리는 중지된다.
유럽 특허 출원 공보 제 433964 호는 텍스트 입력을 사용하는 시스템에 관한 것이다. 무엇보다도 성을 나타내는 입력 단어가 엔트리와 일치된다. 입력과 정확히 동일하지는 않지만 "유사한" 것이 발견되면, 입력의 첫글자와 데이터베이스 엔트리가 비교된다. 이들이 일치하면, 데이터 엔트리의 기록이 이루어진다. 다음에 이 시스템은 필요하다면 요청된 명칭과 개인명을 비교한다. 가장 적당한 엔트리가 사용자에게 제공된다.
미국 특허 제 5204894 호는 엔트리의 이름이 사용자의 음성으로 저장되어 있고, 연관된 번호는 멀티톤(multitone)(DTMF) 전화 키패드 또는 구두 표현 입력 중 어느 하나를 사용하여 입력된다. 사용자가 전화번호부에 액세스할 필요가 있으면, 사용자는 요청된 이름을 말하고, 전화번호부 시스템은 입력의 첫 단어와 저장된 단어들을 비교하고, 사용자가 하나를 확인할 때까지 사용자에게 차례로 가능한 모든 것을 제공한다.
상기한 종래의 시스템은 모두 사용자가 데이터 엔트리를 요청된 것으로 확인할 때까지 순차적으로 식별된 엔트리를 사용자에게 제공한다.
본 발명의 한 태양에 따르면,
(a) 제 1 단어집(vocabulary)을 형성하는, 엔트리와 관련한 정보 항목의 기계적 표현을 포함하는 복수의 필드를 포함하는 엔트리를 포함하는 데이터베이스,
(b) 기계적 표현의 제 2 단어집내에 포함되는 기계적 표현에 응답하여 구두 표현 공지를 나타내는 오디오 신호를 발생하는 공지 수단,
(c) 신호를 수신하고, 기계적 표현의 제 3 단어집내에 포함되는 신호의 기계적 표현을 발생하도록 실시 가능한 입력 수단,
(d) 제 1 단어집과 제 2 단어집 및 제 1 단어집과 제 3 단어집 사이의 관계를 규정하는 변환 수단 및
(e) (ⅰ) 규정된 관계에 따라 상기 입력 수단에 의해 발생된 표현에 대하여 제 1 단어집에 따른 하나 이상의 표현을 발생하고,
(ⅱ) 발생된 표현을 포함하는 데이터베이스 엔트리를 식별하고,
(ⅲ) 규정된 관계에 따라 제 2 단어집의 표현으로 변환될 때 유사하게 변환된 구별 가능한 표현 또는 조합과는 서로 상이한 표현 또는 조합 중 구별 가능한 것을 식별하기 위해 식별된 엔트리의 선택된 하나의 필드 또는 필드의 조합에 포함되는 각각의 표현 또는 표현의 조합을 검사하며,
(ⅳ) 구별 가능한 표현 중 하나 또는 표현의 조합에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 공지를 발생하도록 공지 수단을 제어하도록 실시 가능한 제어 수단을 포함하는 데이터베이스 액세스 장치가 제공된다.
공지 수단에 의한 포함된 단어 출력은 적당한 형태를 가질 수 있다. 예를 들어, 포함된 단어는 전체 단어, 철자 표현된 단어 또는 영숫자를 나타낼 수 있다.
다른 태양에서 본 발명은
(a) 응답을 요청하는 적어도 하나의 공지를 발생하는 단계,
(b) 응답을 인식하는 단계,
(c) 인식된 응답과 일치하는 필드를 포함하는 데이터베이스 엔트리를 식별하는 단계,
(d) 이 엔트리의 수가 지정된 한계를 초과하는 경우에 긍정 또는 부정 응답에 대한 식별된 엔트리의 선택된 하나의 필드에 대응하는 적어도 하나의 단어를 포함하는 공지를 발생하는 단계,
(e) 긍정 응답을 수신하면, 인식된 응답과 일치하는 필드를 포함하고, 상기 단어와 일치하는 선택된 필드가 속하는 데이터베이스 엔트리를 식별하는 단계 및
(f) 단계 (d) 및 (e)를 적어도 1회 반복하는 단계를 포함하는 음성 인식 방법을 제공한다.
이후 첨부한 도면을 참고하여 한 예로서 본 발명의 몇가지 실시예에 대해 설명한다.
도 1은 음성, 구두 표현 및 데이터베이스 표현의 한 예를 나타내는 엔티티 관계도(Entity Relationship Diagram),
도 2는 본 발명에 따른 장치의 블럭도,
도 3(도 3-1 포함)은 도 1의 장치의 동작을 나타내는 흐름도,
도 3a는 도 1의 장치의 대안적인 동작을 나타내는 흐름도,
도 4는 구별 가능한 튜플(tuple)을 식별하는 처리를 나타내는 흐름도 및
도 5는 음성, 구두 표현 및 데이터베이스 표현 사이의 변환에 대한 한 예를 나타내는 엔티티 관계도이다.
음성 대화형 장치를 기술하는데, 이 장치는 한 사용자에게 질문을 발생하고, 데이터베이스의 내용에 액세스하기 위해 사용자의 응답을 인식한다. 자동 전화번호부 조회 시스템에 사용된 것처럼 이름, 주소 및 전화번호의 데이터베이스가 한 예로서 사용된다. 그러나, 첫째로 장치의 동작을 이해하는데 유용한 몇가지 기본 개념이 논의될 것이다.
데이터베이스는 복수의 엔트리를 포함하도록 되어 있고, 각각의 엔트리는 엔트리에 대한 정보 항목, 예를 들어 엔트리와 관련된 사람의 이름, 성, 지역 및 전화번호를 포함하는 복수의 필드를 포함한다. 본 명세서에서 한 엔트리로부터의 필드 세트는 튜플, 즉 N 필드의 조합으로서 인용된다(N이 1, 2 또는 3일 때 각각 용어 싱글(single), 듀플(duple) 및 트리플(triple)이 사용된다). 따라서 한 엔트리로부터 추출된 필드들의 보다 작은 세트일지라도 완전한 엔트리는 튜플이다. 따라서 예시 데이터베이스로부터 취해진 한 세트의 이름/성 쌍들은 추출된 듀플 세트를 형성한다.
데이터베이스 필드에 저장된 정보 항목들은 편리한 표현으로 존재할 수 있다. 일반적으로 본 명세서는 성 Jonson에 대하여 성명의 문자에 대응하는 문자 코드와 같은 텍스트 표현의 사용을 가정하지만, 몇몇 필드에 대해서는 형식화된 표현을 갖는다. 예를 들어 지리학적 위치에 있어서 Southend라는 영국의 3지역에 대하여 예를 들어 Southend1, Southend2 및 Southend3과 같은 서로 다른 표현의 동일한 명칭을 갖는 몇개의 별개 지역을 동일한 것으로 간주할 수 있다.
필드 내용을 표현하기 위해 장치와 사용자 사이의 대화에 사용된 단어들은 개념적으로 데이터베이스 표현과는 상이하고, 각 필드에 대한 구두 표현 단어집을 나타낸다. 데이터베이스 표현이 텍스트이면, 이들과 구두 표현 단어집 사이에 약간의 중복이 존재하지만, 이때에도 정보 항목을 표현하기 위해 사용자가 데이터베이스내 실제 포함된 여러 가지 단어들을 사용할 수도 있다는 사실을 고려하는 것이 바람직하다. 다시 말하면, 몇몇 단어들은 동의어로 간주될 수 있다.
마지막으로 한 단어가 하나 이상의 발음을 가질 수 있고(동음 이의어), 반대로 하나 이상의 단어가 동일한 발음을 가질 수 있다(이형동음이의어)는 사실에 주의할 필요가 있다.
이런 개념은 "엔티티 관계도"인 도 1에 도시되어 있고, 여기서 표현들 사이의 변환 요구를 좌에서 우로 또는 우레서 좌로의 이동하는 것으로서 간주한다. 박스 A는 한 세트의 데이터베이스 엔트리를 나타낸다. 박스 B는 한 세트의 고유 성을 나타내는데, 이는 엔트리와 1 대 다 관계, 즉 하나의 성은 다수의 엔트리에서 나타날 수 있지만, 하나의 엔트리는 다만 하나의 성을 포함하는 관계를 갖는다. 박스 C, D 및 E는 이름, 도시 및 전화번호의 표현 세트들과 대응하고, 여기서는 유사한 설명문이 적용된다. 박스 F는 이름에 대응하는 구두 표현 단어집, 즉 이 필드를 표현하기 위해 사용되도록 장치에 의해 허용되는 모든 단어들의 세트를 나타낸다. 이는 동의어와 같은 가명을 고려하기 위해 데이터베이스 단어집과 상이할 수 있고(또한 동일한 경우에도 그것과 1:1 대응관계를 갖지 않는다), 예를 들어 Andy 또는 Jim과 같은 이름의 축약된 형태가 완전한 형태인 Andrew와 James와 동일한 의미를 갖는 것으로 간주될 수 있다. 박스 C와 F 사이에는 구두 표현 단어집 단어에 대한 바람직한 형태와 사용 "가능한" 대체 형태에 대응하는 2개의 접속경로가 도시되어 있다.
이와 마찬가지로, 박스 G는 도시명에 대응하는 구두 표현 단어집을 나타낸다. 여기서 다시 종종 큰 도시가 그 안에 보다 작은 위치 또는 지역을 포함할 수 있기 때문에 별칭을 정하는 것에 대한 가능성이 발생한다. 예를 들어 Ipswich는 영국 Suffolk주의 한 도시이다. 그 근처에는 Kesgrave라는 작은 지역이 존재한다. Kesgrave에 거주하는 사람은 Ipswich 또는 Kesgrave 중 어느 하나로서 데이터베이스에 기록된 자신의 주소를 가질 수 있다. 이와 마찬가지로 그런 사람의 전화번호를 찾는 조회자는 위치로 어느 한 이름을 제공할 수 있다. 따라서, Ipswich와 Kesgrave는 데이터베이스 검색을 위해 동일한 의미를 갖는 것으로 간주될 수 있다. 그러나, 이러한 지리적인 별칭을 정하는 것은 복잡하다는 것에 유념하라. Ipswich는 Foxhall과 같은 다른 지방 도시와 동일한 것으로 간주될 수 있지만, Kesgrave와 Foxhall은 서로 다른 위치이기 때문에 동일하지 않다.
박스 H는 이 필드에 대한 동의어에 대하여 가능한 적은 범위가 존재하지만 완벽함을 위해 성에 대한 구두 표현 단어집을 나타낸다.
박스 J는 이형동음이의어와 동음 이의어를 고려하기 위해 성에 대한 발음 단어집을 나타낸다. 예를 들어 성 Smith는 일반적으로 영어 단어 "pith"와 같은 단음 "i"로 발음되고, 반면에 성 Smythe는 "lithe"와 같은 장음 "i"로 발음된다. 발음 변화에 대한 다른 예시는 예를 들어 지역 액센트의 변화 때문에 발생할 수 있다. 다시, 후에 기술되는 이유 때문에 "기본"과 "가능" 링크가 도시되어 있다.
박스 K와 L은 각각 이름과 지명에 대한 발음 단어집을 나타낸다.
도 2는 대화를 행하기 위한 장치에 대한 블럭도이다. 오디오 신호 입력(1)은 음성 인식기(2)에 연결되고, 반면에 오디오 신호 출력(3)은 음성 합성기(4)에 연결된다. 축적 프로그램 제어 프로세서(5) 형태의 제어 유닛은 인식기와 합성기의 동작을 제어하고, 또한 프로그램 메모리(6), 작업 메모리(RAM)(7), 데이터베이스(8), 구두 표현 단어집 변환 테이블(9) 및 발음 테이블(10)에 액세스한다. 오디오 입력과 출력은 양방향 통신을 위해-예를 들어 전화선을 통해-사용자와 연결된다.
데이터베이스(8)는 상기한 바와 같이 텍스트 형태로 전화번호부 엔트리를 포함하는 것으로 가정된다. 구두 표현 단어집 변환 테이블(9)은 예를 들어 Ipswich 예에 대한 전화번호부 표현과 구두 표현 단어집 표현을 구성하는 워드 쌍을 포함하는 기억장소이다.
데이터베이스 표현 구두 표현
IPSWICH IPSWICH
IPSWICH KESGRAVE
IPSWICH FOXHALL
KESGRAVE KESGRAVE
KESGRAVE IPSWICH
FOXHALL FOXHALL
FOXHALL IPSWICH
(1:1 대응 관계를 갖는 데이터베이스 표현으로 사용된 한 단어가 구두 표현과 동일하면, 구두 표현 단어집 단어는 변환이 필요없기 때문에 테이블에서 제외될 수 있다). 변환 테이블(9)은 각각의 필드 형태에 대하여 개별적인 영역을 갖고, 주어진 단어집 단어에 대응하는 데이터 표현 및 그 반대인 데이터 표현에 대응하는 주어진 단어집 단어를 결정하기 위해 프로세서(5)에 의해 액세스될 수 있다. 바람직하다면(또는 데이터베이스 표현이 텍스트 형태가 아니면) 모든 항목들은 변환될 수 있다.
발음 테이블(10)은 프로세서(5)가 주어진 구두 표현 단어집 단어에 대하여 그 단어를 발음하는 여러 가지 방식의 음성 표현을 얻고, 역으로 (인식을 목적으로) 주어진 음성 표현에 대하여 그 발음에 대응하는 하나 이상의 구두 표현 단어집 단어를 얻기 위해 (음성 합성이나 이형동음이의어를 식별하기 위해) 엑세스할 수 있도록 룩업 테이블(및 바람직하다면 룩업 테이블에서 엔트리의 수를 줄이기 위한 규칙 세트)을 포함하는 기억장소이다. 각각의 필드 형태에 대하여 개별적인 영역이 바람직하다.
메모리(6)에 저장된 프로그램으로 구현되는 장치의 동작은 도 3의 흐름도에 도시되어 있다. 제 1 단계는 합성기를 사용하여 사용자에 대한 질문을 발생하고, 사용자의 응답을 인식하는 것을 포함한다. 따라서 단계(100, 104, 108)에서 프로세서(5)는 합성기(4)에 사용자에게 각각 그가 찾는 전화번호의 갖는 사람의 성, 이름 및 도시를 말하도록 요청하는 공지를 재생하도록 지시하는 명령을 전송한다. 단계(102, 106, 110)에서 프로세서는 인식기(2)에 그런 필드에 대응하는 음성 단어집을 참고하여 사용자의 응답을 인식하도록 지시하는 명령을 전송한다. 인식기는 각각의 인식 단계에 사용되는 단어집을 결정하는 위해 변환 테이블(9, 10)에 액세스하거나 또는 내부에 저장하거나 자신의 단어집을 발생할 수 있다. 후자의 경우에 사용된 단어집은 음성 단어집(및 적절하다면 데이터베이스)에 포함된 단어만을 출력할 수 있도록 테이블(9, 10)에 의해 결정된 것에 대응해야 한다. 인식기는 각각의 인식 단계에 대하여 사용자가 실제로 말한 단어에 대한 지정된 유사성 기준을 충족하는 많은 음성 표현을 발생하도록 구성된다. (인식기는 물론 구두 표현 단어집 표현으로의 변환을 실행할 수 있고, 많은 인식기가 그렇게 할 수 있다). 인식기는 사용자가 실제 말한 단어가 테이블(10)의 어떤 음성 표현과 유사하지 않다는 것을 나타내고, 프로세서(5)에 이를 나타낼 수 있다. 인식기는 또한 실제 말한 단어에 대한 대응 확률 또는 가능성을 각각의 표현에 대한 "스코어" 또는 신뢰 수준을 발생하는 것이 바람직하다. 예비 단계(100-110)는 다른 곳에 기술되어 있기 때문에 더 이상 논의되지 않을 것이다. 예를 들어 국제특허출원 PCT/GB/02524를 참고할 수 있다.
다음에는 데이터베이스 엔트리에 대하여 다수의 기입된 튜플의 일치를 포함하는 단계들이 논의될 것이다. 이들 일치하는 엔트리로부터 일치에 사용된 튜플에 대한 서로 다른 (어쩌면 중복하는) 필드 세트에 대응하는 기록된 고유(또는 구별 가능한) 튜플 세트가 도출된다.
단계(110)에 이어서 프로세서(5)는 3개의 필드의 각각에 대하여 인식된 것으로 간주되는 하나 이상의 음성 표현을 이용할 수 있다. 이제 요구되는 것은 구두 표현 단어집 표현으로의 변환, 즉 도 1의 좌측에 도시된 변환이다. 따라서 단계(112)에서 프로세서는 각각의 단어에 대하여 하나 이상의 대응하는 구두 표현 단어집 표현을 결정하기 위하여 테이블(10)에 액세스하고, 그 결과 이제 각각의 필드에 대하여 하나씩 3세트의 구두 표현 단어집 표현을 갖는다.
각각의 구두 표현 단어집 표현에 대한 스코어는 번역되었던 음성 표현에 대한 스코어이다. 2개의 음성 표현이 동일한 단어집 표현으로 변환되면, 2개의 스코어 중 보다 확실한 것이 취해질 수 있다. 이는 상기한 일반화된 일치 처리의 특정 예이고, 여기서 일치하는 싱글 세트는 발음이고, 도출된 싱글 세트는 구두 표현 단어집 항목들이다.
단계(114)에서, 이후 프로세서(5)는 각각의 구두 표현에 대하여 하나 이상의 대응하는 데이터베이스 표현을 결정하기 위해 테이블(9)을 사용하여 데이터베이스 표현으로의 변환, 즉 도 1의 중앙에 도시된 변환을 실행하고, 그 결과 3세트의 데이터베이스 표현을 갖는다. 스코어는 보다 빠른 변환을 위해 증식될 수 있다. 데이터베이스 표현은 다수의 트리플을 나타낸다(실제 수는 3세트의 각각에 있는 표현 수의 곱이다). 트리플에 대한 스코어는 통상 그것을 구성하는 개개의 표현에 대한 스코어의 곱이다. 단계(116)에서, 프로세서는 이들 트리플에 대한 리스트를 발생하고, 이를 이들 트리플에 대응하는 데이터베이스 엔트리의 수에 대한 카운트 K를 리턴하는 데이터베이스로 보낸다. (단계(118)) 이 수가 0이면, 단계(120)에서 프로세서는 합성기에 명령을 보내 발견된 엔트리가 없다는 취지의 공지를 재생하도록 하고, 프로그램을 중단한다(단계(122)). 대안적으로 사용자를 수동 교환원에게 넘기는 것과 같은 다른 동작이 취해질 수 있다.
엔트리가 존재하면, 단계(124)에서 단계(116)에서 일치했던 완전한 엔트리 튜플이 3개 이하의 구별 가능한 엔트리가 존재하는지를 결정하기 위해 데이터베이스로부터 차례로 검색된다. 튜플은 가능성의 순서대로 가장 가능한 것이 제일 먼저 검색된다. 하나 이상의 튜플이 동일한 기억장소를 공유할 수 있다. 이 경우에는 이들 사이에 임의로 순위가 매겨지거나 순위를 결정하기 위해 우선순위 지식이 사용될 수 있다. 튜플이 검색될 때, 이들이 3개 이하의 구별 가능한 엔트리를 표현하는가에 대한 평가가 행해진다. "구별 가능한"의 의미와 그 결정 방법이 곧 설명될 것이다. 일단 카운트 4에 도달되면 테스트가 중단된다. (단계(126)) 구별 가능한 엔트리의 수가 3개 이하이면, 단계(128)에서 프로세서는 데이터베이스로부터 이들 엔트리를 검색하고, 이들 엔트리를 데이터베이스 표현으로부터 기본 음성 표현으로 변환하기 위해 테이블(9, 10)을 사용하여 이들을 신뢰성 정도에 따라 가장 높은 신뢰성을 갖는 것을 제일 먼저 사용자에게 읽어주는 합성기(4)로 보낸다.
3개보다 많은 구별 가능한 엔트리가 존재하면, 확인을 위해 사용자에게 차례로 튜플을 제공하기 위해 처리는 3개 이하의 구별 가능한 튜플을 포함하는 추출된 튜플의 리스트를 식별하기 위한 시도가 행해지는 반복적인 확인 단계로 들어간다. 이 예에서, 튜플은 성명(즉, 이름 + 성)에 대응하는 듀플이고, 싱글은 도시에 대응한다. 이 예에서는 사실일지라도 원칙적으로는 이들 튜플의 구성 단어들이 사용자가 이미 요청했던 필드에 반드시 대응할 필요는 없다는 사실에 유념하라.
단계(130)에서 성명 듀플이 확인을 위해 이미 제공되었는가에 대한 검사가 행해진다. 제 1 패스에서 응답은 항상 "아니오"가 될 것이고, 단계(132)에서 추출된 성명 듀플의 리스트가 트리플의 리스트로부터 제공된다. 리스트로부터의 성명 듀플은 3개 이하의 구별 가능한 듀플이 존재하는가를 결정하기 위해 단계(124)에서의 트리플의 그것과 유사한 방식으로 검사된다. (바람직하다면, 리스트내의 동일하지 않은 데이터베이스 표현 듀플의 수가 카운트될 수 있고, 이것이 지정된 수, 예를 들어 30을 초과하면, 상세한 검사 처리는 (단계(144)로) 스킵될 수 있다. 3개 이하의 구별 가능한 듀플이 존재하면, (단계(134)) 기입된 듀플은 각각 싱글 기본 음성 표현으로 변환되고, 합성기가 "예" 또는 "아니오"에 대한 검사를 위해 프로세서(138)에 응답을 전송하는 인식기로 한번에 하나씩 (예를 들어) "이름이 John Smith"입니까? 예 또는 아니오로 응답해주십시요"라고 질문할 수 있도록 단계(136)에서 신뢰성 순서로 합성기에 제공된다. 사용자가 "예"라고 응답하면, 단계(140)에서
(a) 확인을 위해 이들을 계속 제공하는 것이 단계(130)에서의 검사에 의해 방지되도록 성과 이름 필드가 "확인"으로 표시되고,
(b) 확인된 듀플(아래 참조)과 관련되는 것 이외의 트리플의 리스트의 모든 요소들은 삭제된다.
사용자가 "아니오"라고 응답하면, 트리플의 리스트의 대응하는 요소들은 삭제된다. 삭제되는 것은 시스템 설계자에 의해 선택되는 것과 같은 음성 표현과 데이터베이스 표현 사이의 규정된 관계에 의존한다. 예를 들어 사용자가 "이름이 John Smith입니까?"라는 질문을 받고, "아니오"라고 응답하면, John과 Smith/Smyth/Smythe를 포함하는 트리플의 리스트의 모든 요소들이 삭제되거나 또는 Smythe는 Smith 또는 Smyth와는 항상 다르게 발음된다고 시스템 설계자에 의해 결정되기 때문에 John과 Smith/Smyth를 포함하는 요소만이 삭제된다.
마찬가지로, 사용자가 "이름이 Dave Smith입니까?"라는 질문을 받고, "아니오"라고 응답하면, Dave Smith를 포함하는 모든 요소들이 삭제되고, 사용자는 "이름이 David Smith입니까?"라는 질문을 받는다.
(단계(142)) 사용자가 제공된 모든 튜플에 대해 아니오라고 응답하면, 이는 장애로 간주되고, 단계(120, 122)를 통해 처리는 중단된다.
단계(134)에서의 검사에서 구별 가능한 성명 듀플의 수가 확인하기에는 너무 크거나 제 2 또는 다음 패스의 단계(130)에서 성명 확인이 이미 발생하였고, 도시명은 아직 확인을 위해 제공되지 않았다고 가정하면(단계(144)), 모든 점에서 이미 기술한 단계(132 내지 142)와 유사한 단계(146 내지 154)를 포함하는 도시명 확인 처리가 개시된다.
이들 처리가 테스트(126)에서의 구별 가능한 엔트리의 수를 줄이는데 실패하면, 제공되는 하나의 응답에 대하여 너무 많은 엔트리가 검색되었다는 공지(156)로 궁극적으로 처리는 종료된다. 대안적으로, 다른 필드에 대한 정보를 얻기 위해 하나 이상의 다른 질문이 요청되는(단계(100)에서와 같이) 다른 절차가 이어질 수 있다.
단계(116)에서부터 도 3에 도시된 절차는 명쾌한 표현을 위해 싱글과 듀플의 확인하는 것으로 기술되어 있다. 보다 일반화된 알고리즘은 다음과 같이 진행한다.
시작: 계속 가동중인 데이터베이스 엔트리가 존재하지 않으면
"없음" 메시지 제공
알고리즘 종료
점프: 3개 이하의 구별 가능한 데이터베이스 엔트리가 존재하면:
이들을 제공
알고리즘 종료
3개보다 많은 구별 가능한 데이터베이스 엔트리가 존재하면:
아직 확인되지 않은 우선순위가 매겨진 연속적인 필드 또는 필드의 조합에 대하여 그런 필드가 모두 없어질 때까지 다음을 행한다:
이에 대해 3개 이하의 구별 가능한 튜플을 갖는 튜플 리스트 가 존재하면:
이 리스트의 확인을 시도한다.
긍정적으로 확인되면, 그것을 확인하고, 점프로 진행.
부정적으로 확인되면, "잘못된 엔트리" 메시지를 제공:
"다음을 행한다"로 돌아감:
우선순위가 매겨진 리스트에서 요청될 수 있는 다음 단어집을 얻는다.
요청되지 않고, 확인되지 않은 단어집이 잔존해 있으면:
그것을 요청한다.
알고리즘의 시작으로 간다.
그렇지 않으면:
메시지 제공 "너무 많음"
알고리즘 종료
전체 조회 처리의 대안적인 처리는 도 3a에 도시되어 있다. 이 처리는 다음과 같이 진행한다.
시작
계속 가동중인 데이터베이스 엔트리가 존재하면(300):
"없음" 메시지 제공(301)
알고리즘 종료
3개 이하의 구별 가능한 데이터베이스 엔트리가 존재하면(302):
이들을 제공(303)
알고리즘 종료
3개보다 많은 구별 가능한 데이터베이스 엔트리가 존재하면(302), 아직 확인 되지 않은 필드 또는 필드 조합의 우선순위가 매겨진 리스트의 각각을 생각 한다.
3개 이하의 구별 가능한 튜플을 갖는 튜플 리스트가 존재하면
이 리스트의 확인을 시도한다(308)
긍정적으로 확인되면(309):
시작으로 간다
부정적으로 확인되면:
잘못된 엔트리 메시지 제공(310)
알고리즘 종료
그렇지 않으면:
다음 필드 또는 필드의 조합을 생각한다.
3개 이하의 구별 가능한 튜플을 갖는 튜플 리스트가 존재하지 않으 면:
우선순위가 매겨진 리스트에서, 요청되지 않고 확인되지 않은 것이 잔존하는 나머지 단어집이 존재하면(305):
그것을 요청한다(307)
"시작"으로 간다
그렇지 않으면:
"너무 많음" 메시지 제공(306)
알고리즘 종료
상기 절차에서는 얼마나 많은 구별 가능한 튜플이 존재하는가를 결정하기 위해 데이터베이스 표현의 튜플 리스트를 검사하는 것이 요구된다. 문제의 튜플은 전체 데이터베이스 엔트리일 수 있고(상기 단계(124)에서와 같이), 2개(또는 2보다 큰) 필드로부터의 표현을 포함하는 추출된 튜플이거나(단계(132)에서와 같이) 또는 추출된 싱글일 수 있다(단계(146)에서와 같이).
2개의 표현은 다음과 같은 경우에 구별 불가능한 것으로 간주된다.
(a) 이들이 동일한 경우,
(b) 이들이 동일한 구두 표현 단어집 단어로 변환되는 경우(예를 들어 이들은 동의어이거나 지리적으로 혼동된다) 또는
(c) 이들이 이형동음이의어인 구두 표현 단어집 단어로 변환되는 경우(즉, 이들 단어는 동일한 음성 표현으로 변환된다).
2개의 튜플은 한 튜플의 모든 필드가 다른 튜플의 대응하는 필드로부터 구별 불가능하면(상기 규정된 바와 같이) 구별 불가능한 것으로 간주된다.
마찬가지로 2개의 표현은 다음과 같은 경우에 구별 불가능한 것으로 간주된다.
(a) 이들이 동일하지 않은 경우,
(b) 이들이 동일한 구두 표현 단어집 단어로 변환되지 않는 경우(예를 들어 이들은 동의어가 아니거나 지리적으로 혼동되지 않는다) 또는
(c) 이들이 이형동음이의어인 구두 표현 단어집 단어로 변환되지 않는 경우(즉, 이들 단어는 동일한 음성 표현으로 변환되지 않는다).
리스트에서 제 1 튜플은 D(1)이고, 현재 n번째 위치를 차지하는 튜플은 D(n)(여기서 n=1, ...,N이고, 따라서 리스트에는 N개의 튜플이 존재한다)인 데이터베이스 표현의 튜플의 리스트가 있다고 가정하자. 각각의 튜플은 d로 표시된 M 필드로 구성되고, 따라서 튜플 D(n)의 m번째 필드는 d(n,m), 즉 D(n) = {d(n,m)}이고, m= 1, ...,M이다. 리스트는 스코어에 의해 정렬되는 것이 바람직하다. 즉, 가장 높은 신뢰도를 갖는 튜플이 D(1)이고, 다음은 D(2) 등으로 정렬되는 것이 바람직하다.
기술된 처리는 도 4의 흐름도에 도시되어 있고, 리스트로부터 제 1 튜플을 취하고, 이것을 리스트의 그보다 아래의 튜플과 비교하여 이들 2개가 구별 가능한 것인가를 확인하는 것을 포함한다. 그렇지 않으면, 보다 낮은 위치를 차지하는 튜플이 리스트로부터 삭제된다. 이것은 모든 튜플이 검사될 때까지 반복된다. 다음에 리스트의 제 2 위치 등을 차지하는 튜플에 대하여 동일한 단계들이 실행된다. 궁극적으로 리스트내 잔존하는 모든 튜플이 다른 모든 것과 구별 가능하다. 바람직하다면, 구별 가능한 튜플의 수가 후속하는 단계에 의해 조정될 수 있는 것(즉, 이 예에서는 3)을 초과한다고 확인하자마자 처리는 종료된다.
도 4에서, i는 리스트내 튜플을 가리키고, j는 리스트의 보다 낮은 위치의 튜플을 가리킨다. l은 리스트내 튜플의 수이다. 단계(200)에서, i는 1로 초기화되고, l은 N으로 세트되며, 단계(202)에서 D(i)는 데이터베이스로부터 판독된다. 단계(204)는 다음 튜플을 가리키는 j를 세트하고, 단계(206)에서 D(j)가 판독된다. 다음에 단계(208)에서 필드 포인터 m은 1로 초기화되고, 다음에 2개의 튜플의 각각의 필드가 차례로 취해지는 루프가 이어진다. 튜플 D(i)의 필드 m은 테이블(9)의 도움으로 하나 이상의 구두 표현 단어집 단어 s1(a)로 변환되고(단계(210)), 여기서 a= 1, ..., A이고, A는 실제로 발견된 동의어의 수이다. 다음에 구두 표현 단어집 단어(들) a1(a)는 테이블(10)의 도움으로 B 음성 표현 전체 p1(b)(b= 1, ..., B)로 변환된다. B는 이런 표현의 수이다. 즉, 이형동음이의어의 수와 A의 곱이다. 유사한 단계(214, 216)는 하나 이상의 음성 표현 p2(d)(d= 1, ..., D)를 발생하기 위해 D(j)의 대응하는 필드의 2단계 변환을 실행한다.
단계(218)에서 각각의 음성 표현 p1(b)는 각각의 표현 p2(d)과 비교된다(즉, 전체적인 BD 비교). 이들 비교 중 어느 것에서도 동일한 것이 발견되지 않으면, 2개의 튜플은 구별 가능한 것으로 간주된다. (단계(226)) j가 리스트의 최종 튜플에 도달하지 않았다면, 단계(206)의 반복에서 다른 튜플을 판독하기 전에 증분된다(228). 그렇지 않으면, 튜플 포인터 i는 단계(230)에서 리스트의 2번째 요소에 도달했는가에 대해 검사되고, (도달하지 않았다면) 단계(202)로 돌아가지 전에 증분되거나(232) (도달했다면) 처리가 종료된다. 여기서, 리스트는 이제 수동으로 구별 가능한 튜플(l개)만을 포함하고, 따라서 결과 k는 단계(234)의 처리의 이 부분에서 나가기 전에 단계(233)에서 l로 세트된다.
한편 "218"에서의 비교가 한 튜플의 하나의 필드에 대하여 발생된 한 음성 표현과 다른 튜플의 동일 필드에 대하여 발생된 한 음성 표현 사이의 동일함을 나타내면, m을 증분하고(단계(236)), 다른 필드에 대하여 단계(210 내지 218)를 반복할 필요가 있다. 2개의 튜플의 모든 필드가 비교되고, 모든 것이 구별 불가능하다면, 이것은 단계(238)에서 인식되고, 이 튜플들은 구별 불가능한 것으로 간주된다. 이 경우에 하위의 튜플 D(j)는 리스트로부터 삭제되고, 리스트내 잔존하는 튜플의 수를 계속 나타내도록 l은 감분된다(단계(240, 242)). 다음에 j는 (이제 축소된) 리스트의 끝 이상을 가리키는가를 결정하기 위해 단계(244)에서 검사되고, 그렇지 않으면 단계(206)에서 계속해서 다른 튜플이 검사된다. 그렇지 않으면 처리는 이미 기술된 단계(230)로 진행한다.
단계(232)가 튜플을 가리키기 위해 i를 증분할 때마다 단계(240)에 의해 리스트로부터 제거되지 않은 적어도 i개의 튜플이 존재한다는 것은 주지되어 있다. 따라서, 이 시점에서 i는 3에 도달했는가를 테스트될 수 있고(단계(246)), 만약 그렇다면 처리는 중단되고, k는 4로 세트된 다음에 출구(234)로 진행된다.
도 4의 알고리즘과 도 3 또는 도 3a의 단계 사이의 관계를 명백하게 하기 위해 다음이 언급되어야 한다.
(a) 알고리즘은 단계(124)의 실행을 나타내고, 도 4의 마지막에서 리스트는 단계(128)에서 제공되는 엔트리를 (데이터베이스로부터) 액세스하는데 사용되고,
(b) 알고리즘은 단계(132)의 실행을 나타내고, 도 4의 마지막에서 리스트는 단계(136)에서 사용자에게 제공되는 (데이터베이스 표현에서) 성명 듀플의 리스트를 나타내고,
(c) 알고리즘은 단계(146)의 실행을 나타내고, 도 4의 마지막에서 단계(150)에서 사용자에게 제공되는 도시의 리스트를 나타내며,
(d) 알고리즘은 단계(302)의 실행을 나타낸다.
도 3의 단계(140, 154)에서 발생하는 제거를 설명하는 것이 남아 있다. 한 예로서 단계(140)를 취하면, 수반된 원리는 다음과 같다. 사용자가 구별 불가능한 것으로 간주된 튜플의 쌍(또는 그룹) 중 하나인 튜플(이 경우에 듀플)을 확인한 경우에 이는 쌍 또는 그룹의 다른 튜플(들)의 확인을 구성하는 것으로 간주된다. 예를 들어 성명 듀플의 리스트가
Dave Smith
David Smyth
를 포함하고, 이들이 단계(132)에 의해 구별 불가능한 것으로 간주되면, 다만 하나의 엔트리(예를 들어 첫번째 "Dave Smith")가 단계(136)에서 확인을 위해 사용자에게 제공된다. 어떤 튜플이 제공되는가는 시스템 설계자에 의해 행해진 선택에 따라 결정된다. 그러나, 사용자가 "예"라고 말하면, 단계(140)에서 "Dave Smith"를 포함하는 모든 튜플과 "David Smyth"를 포함하는 모든 튜플이 계속 유지된다.
이것은 단계(132)에서 실행된 변환의 결과를 사용하여 사용할 수 있지만, 다음과 같이 진행하는 것이 더 양호하다. 음성 표현(즉, 단계(136)에서 발생된 것)에서 확인된 듀플의 각각의 필드 p는 테이블(9, 10)을 사용하여 하나 이상의 데이터베이스 표현으로 변환된다. 이들 표현의 조합으로 표현된 모든 듀플들은 확인될 것이다. 즉, 이들 듀플 중 하나를 포함하는 트리플의 리스트 중 어느 하나가 계속 유지되고, 다른 트리플은 삭제된다.
도 1의 엔티티 관계도와 도 3 및 도 4에서 제시된 처리 사이의 관계를 명백하게 할만한 가치가 있을 수도 있다. 이들 처리에서, 변환은 데이터베이스 표현으로부터 구두 표현 단어집 표현과 음성 표현(즉, 도 1의 우측에서 좌측으로) 및 반대 방향, 즉 음성 표현으로부터 구두 표현 단어집 표현과 데이터베이스 표현(즉 도 1의 좌측에서 우측으로)으로 발생한다. 도면에서 대체 경로(예를 들어 가능 구두 표현/기본 구두 표현)는 변환 경로의 선택을 의미한다. 합성을 위해 "기본 구두 표현" 경로가 정상적으로 사용된다. 다른 목적을 위해서는 변형에 동의어 또는 이형동음이의어를 포함시키거나 배제하고자 하는 희망에 따라 변형이 가능하다. 여러 가지 경로가 이름에 대한 예시적인 경로 세트를 갖는 아래 표로 작성되어 있다. 다른 매핑이 사용될 수도 있다.
방향 사용된 스텝 설명 이름에 대한 통상적인 경로
입력-데이터베이스 112, 114 인식 결과를 가능한 모든 데이터베이스 표현으로 변환하는데 사용된 매핑 가능 발음.../가능 구두 표현...(즉, 동의어와 이형동음이의어를 포함)
데이터베이스-입력 124, 132, 146, 302, 394 구별 가능한 데이터베이스 표현을 결정하는데 사용된 매핑 기본 구두 표현.../기본 발음...(즉, 이형동음이의어는 제외한 동의어만 구별 가능한 튜플의 생성된 리스트에 포함
데이터베이스-출력 124, 132, 146 302, 304 구별 가능한 데이터베이스 표현을 결정하는데 사용된 매핑 기본 구두 표현/기본 발음(즉, 출력에서 이형동음이의어를 배제하지만, 동의어 및 동음 이의어를 포함)
데이터베이스-출력 136, 150128, 303, 308 결과, 예를 들어 합성의 출력에 사용된 매핑 기본 구두 표현/기본 발음(즉, 각각의 데이터베이스 표현에 대한 기본 출력 형태 제공)
출력-데이터베이스 140, 154308 데이터베이스 표현으로의 출력 발음을 확인하는데 사용된 매핑 가능 발음/가능 구두 표현(즉, 동의어와 이형동음이의어를 모두 포함)
출력-데이터베이스 140, 154, 308 사용자에 의해 거절된 항목을 배제하는데 사용된 매핑 가능 발음/기본 구두 표현(즉, 후속하는 데이터베이스 검색을 위해 이형동음이의어는 배제하고, 동의어는 포함)
따라서, 입력이 수신되고, 입력 신호를 나타내는 기계적 표현이 발생될 때, 단일 입력에 대한 기계적 표현은 가능한 모든 데이터 표현으로 변환된다. 이를 달성하기 위해 입력은 "가능 발음" 경로에 의해 구두 표현 인식 단어집에 사상된다. 따라서 입력의 가능한 모든 구두 표현이 식별된다. 다음에 이들 구두 표현 단어집 표현들은 구두 표현 표현이 나타나는(예를 들어 "가능 구두 표현")가능한 모든 데이터베이스 표현에 사상된다. 예를 들어 이름 "Dave"이 입력이고, 음성 표현 D AI V와 M AI V가 음성 합성기(2)에 의해 발생된다고 하자. 다음에 이들 음성 표현들은 구두 표현 단어집 표현, 예를 들어 "Dave"와 "Mave"로 변환된다. 이들 구두 표현 단어집 표현들은 각각 기억장소(9)에 의해 가능한 모든 데이터베이스 표현("가능 구두 표현"), 예를 들어 Dave, David, Mave, Mavis로 변환된다. 다음에 프로세서(5)는 이름 필드에 이들 엔트리 중 어느 하나를 포함하는 모든 엔트리에 대하여 데이터베이스(8)를 검색한다.
다음에 발견된 모든 엔트리에 대하여 프로세서(5)는 이들 조합 중에서 구별 가능한 것을 식별하기 위해 선택된 필드에 포함된 각각의 표현을 검사한다. 다음에 구별 가능한 엔트리는 확인을 위해 사용자에게 제공될 수 있다. 이를 달성하기 위해 구두 표현 단어집 기억장소(10)를 참고하고 규정된 관계에 따라 식별된 데이터베이스 표현을 "가능 구두 표현" 경로를 통해 구두 표현 단어집으로 변환한다. 따라서 Dave의 모든 엔트리는 "Dave"와 "David"로 변환되고, David에 대한 모든 엔트리는 "Dave" 또는 "David"로 변환되고, Mave에 대한 모든 엔트리는 "Mave" 또는 "Mavis"로 변환되며, Mavis에 대한 모든 엔트리는 "Mave" 또는 "Mavis"로 변환된다. 다음에 프로세서(5)는 기억장소(10)를 참고하여 구두 표현 단어집 표현을 음성 표현("가능 발음")으로 변환한다. 따라서, "Dave", "David", "Mave" 및 "Mavis"가 어떻게 발음되는가를 나타내는 음성 표현은 D AI V, D AI V I D, D AA V I D, M AI V 및 M AI VI S로서 결정된다. 이들 음성 표현들은 다음에 구별 가능한 것을 식별하기 위해 검사된다. 예를 들어 Dave와 David는 이들이 적어도 하나의 공통적인 발음을 공유하기 때문에 구별 불가능하다. 그러나, Mave와 Dave는 이들이 어떤 공통적인 음성 표현도 공유하지 않기 때문에 구별 가능하다. 2개의 데이터베이스 표현이 구별 불가능한 것으로 검색되면, 이 표현들 중에서 하나가 유지되고, 다른 것은 버려진다. 예를 들어 David가 Dave에 대해 선택되고, Mave에 대해 Mavis가 선택될 수 있다. 이런 선택은 시스템 설계자에 의해 결정되고, 메모리(6)에 저장된다. "David"와 "Mavis"의 가장 가능성이 높은 음성 표현이 "기본 구두 표현/기본 발음"을 사용하여 프로세서(5)에 의해 합성기(4)와 사용자에게 제공된다.
실제로 기억장소(9, 10)는 각각의 매핑에 대하여 개별적인 "테이블"을 포함할 수 있다는 사실에 유념하라.
도 1은 공지 수단, 예를 들어 음성 합성기의 단어집이 입력 수단, 예를 들어 음성 인식기의 단어집과 동일한 경우를 보여준다. 그러나, 이것은 항상 그런 것은 아니다. 예를 들어 구두 표현 매체에 대한 대체 입력 및/또는 확인 매체로서 철자 발음이 사용될 수 있다는 사실을 간과해서는 안된다. 철자 발음에 필요한 기술은 구두 표현 형태와 매우 유사하다. 도 5는 도 1에 대응하며, 도시명에 대한 철자 발음(박스 M으로 표시)을 갖는다(철자 발음은 성과 이름에 대하여 제공되지만, 간단함을 위해 이들 매핑이 도 5에는 도시하지 않았다). "가능 철자 발음"과 "기본 철자 발음"의 변환은 구두 표현 인식에 부가하여 제공되어야 한다.
인식 및/또는 확인 동안 철자 발음이 사용되면, 도 1을 참고하여 상기한 모든 경로에 대하여 "철자 발음"은 "발음"으로 대체되고, 모든 알고리즘은 계속 적용된다.
또한 구두 표현 또는 철자 발음 입력 또는 출력은 반드시 필요한 것은 아니다라는 것이 언급되어야 한다. 그 이유는 제공 및 확인과 관련한 고려가 계속 발생하기 때문이다. 예를 들어 키패드 입력이 사용될 수 있고, 이것은 전화 키패드의 각 버튼에 대해 하나 이상의 문자가 할당되기 때문에 표현이 애매하다는 문제가 있다. 이 경우에 다른 단어집-키패드 입력 코드에 대한-이 요구되고, "가능 키 입력" 변환은 상기한 발음 및 철자 발음 변환과 유사하다.
입력 단어집과 데이터베이스에 대한 기계적 표현은 동일한 기술에 따라 발생될 수 있는데, 예를 들어 데이터베이스 엔트리는 텍스트 형태로 저장될 수 있고, 입력도 또한 텍스트 형태이고, 데이터베이스와 출력의 기계적 표현은 서로 다른 기술, 예를 들어 구두 표현 출력에 따라 발생된다.
사용자가 말한 실제 단어의 동의어를 포함하는 공지를 사용자가 받으면 혼란이 발생할 수 있다. 예를 들어 사용자가 "Dave Smith"를 요청하면, 시스템은 "David Smith라고 하셨습니까?"라는 출력을 발생한다. 이런 혼란을 방지하기 위해서 식별된 구별 가능한 데이터베이스 엔트리에 대응하는 단어가 입력 수단에 의해 인식된 단어에도 대응한다는 것을 보장하기 위해 검사가 실행될 수 있다.

Claims (14)

  1. (a) 제 1 단어집을 형성하는, 엔트리와 관련한 정보 항목의 기계적 표현을 포함하는 복수의 필드를 포함하는 엔트리를 포함하는 데이터베이스,
    (b) 기계적 표현의 제 2 단어집내에 포함되는 기계적 표현에 응답하여 구두 표현 공지를 나타내는 오디오 신호를 발생하는 공지 수단,
    (c) 신호를 수신하고, 기계적 표현의 제 3 단어집내에 포함되는 신호의 기계적 표현을 발생하도록 실시 가능한 입력 수단,
    (d) 제 1 단어집과 제 2 단어집 및 제 1 단어집과 제 3 단어집 사이의 관계를 규정하는 변환 수단 및
    (e) (ⅰ) 규정된 관계에 따라 상기 입력 수단에 의해 발생된 표현에 대하여 제 1 단어집에 따른 하나 이상의 표현을 발생하고,
    (ⅱ) 발생된 표현을 포함하는 데이터베이스 엔트리를 식별하고,
    (ⅲ) 규정된 관계에 따라 제 2 단어집의 표현으로 변환될 때 유사하게 변환된 구별 가능한 표현 또는 조합과는 서로 상이한 표현 또는 조합 중 구별 가능한 것을 식별하기 위해 식별된 엔트리의 선택된 하나의 필드 또는 필드의 조합에 포함되는 각각의 표현 또는 표현의 조합을 검사하며,
    (ⅳ) 구별 가능한 표현 중 하나 또는 표현의 조합에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 공지를 발생하도록 공지 수단을 제어하도록 실시 가능한 제어 수단을 포함하는 것을 특징으로 하는 데이터베이스 액세스 장치.
  2. 제 1 항에 있어서,
    상기 제어 수단은 구별 가능한 표현 중 하나 또는 조합에 대응하는 적어도 하나의 단어 또는 단어들의 조합을 포함하는 연속적인 공지를 발생하도록 상기 공지 수단을 제어하도록 실시 가능하며, 신뢰성이 높은 순서대로 연속적으로 공지를 출력하도록 상기 공지 수단을 제어하도록 실시 가능하고, 제 1 공지는 가장 가능성 있는 구별 가능한 표현 또는 조합에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 것을 특징으로 하는 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제어 수단은 단계 (ⅳ)에서 하나 또는 각각의 구별 가능한 표현 또는 조합에 대하여 변환 수단을 사용하여 구별 가능한 표현 또는 조합으로부터 제 2 단어집의 하나의 표현 또는 조합을 발생하고, 이것을 상기 공지 수단에 전송하도록 실시 가능한 것을 특징으로 하는 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 제어 수단은 단계 (ⅳ)에서 하나 도는 각각의 구별 가능한 표현 또는 조합에 대하여 상기 변환 수단에 의해 규정된 관계에 따라 구별 가능한 표현 또는 조합에 대응하고, 단계 (ⅲ)에서 이미 발생되었던 제 2 단어집의 하나의 표현 또는 조합을 상기 공지 수단에 전송하도록 실시 가능한 것을 특징으로 하는 장치.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 제어 수단은 단계 (ⅳ)에서 포함된 단어 또는 조합의 확인을 요청하는 공지를 발생하도록 실시 가능하고, 또한 동작에 있어서
    (ⅴ) 포함된 단어(들)에 대응하는 제 2 단어집의 표현 또는 조합으로부터 제 1 단어집에 따라 하나 이상의 표현 또는 조합을 발생하고, 선택된 필드의 표현 또는 조합을 포함하는 데이터베이스 엔트리 또는 엔트리들을 식별하도록 구성되는 것을 특징으로 하는 장치.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 입력 수단은 오디오 신호를 수신하도록 실시 가능한 음성 인식기인 것을 특징으로 하는 장치.
  7. 제 6 항에 있어서,
    상기 제 2 및 제 3 단어집은 동일한 것을 특징으로 하는 장치.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 제 1 및 제 3 단어집은 동일한 것을 특징으로 하는 장치.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    선택된 필드 중 적어도 하나는 단계 (ⅱ)에서 발생된 표현이 발견된 필드이고, 단계 (ⅳ)에서 포함된 단어가 상기 입력 수단에 의해 발생된 표현에 대응하는 단어인 것을 특징으로 하는 장치.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    중간 단어집을 또한 포함하고, 상기 번역 수단은 상기 제 1 및 중간 단어집, 상기 제 2 및 중간 단어집 및 상기 제 3 및 중간 단어집 사이의 관계를 규정하는 것을 특징으로 하는 장치.
  11. 제 1 단어집을 형성하는 엔트리에 대한 정보의 항목에 대한 기계어 표현을 포함하는 복수의 필드를 포함하는 엔트리를 포함하는 데이터베이스, 상기 표현에 대한 제 2 단어집내에 포함되는 기계어 표현에 응답하여 구두 표현 공지를 나타내는 오디오 신호를 발생하는 공지 수단 및 신호를 수신하고, 상기 표현에 대한 제 3 단어집내에 포함되는 기계어 표현을 발생하도록 실시 가능한 입력 수단을 포함하는 데이터베이스 시스템에 액세스하는 방법에 있어서,
    (ⅰ) 상기 제 1 단어집과 제 3 단어집 사이의 규정된 관계에 따라 상기 입력 수단에 의해 발생된 각각의 표현에 대하여 상기 제 1 단어집에 따른 하나 이상의 표현을 발생하는 단계,
    (ⅱ) 발생된 표현들을 포함하는 데이터베이스 엔트리를 식별하는 단계,
    (ⅲ) 규정된 관계에 따라 상기 제 2 단어집의 표현으로 변환될 때 유사하게 변환된 경우의 다른 모든 구별 가능한 표현 또는 조합과는 상이한 구별 가능한 표현 또는 조합을 식별하기 위해 식별된 엔트리의 선택된 필드 또는 필드의 조합에 포함되는 각각의 표현 또는 표현의 조합을 검사하는 단계 및
    (ⅳ) 상기 구별 가능한 표현 또는 조합 중 하나에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 공지를 발생하도록 제어 수단을 제어하는 단계를 포함하는 것을 특징으로 하는 방법.
  12. 제 11 항에 있어서,
    단계 (ⅳ)에서 가장 가능성이 높은 구별 가능한 표현에 대응하는 적어도 하나의 단어 또는 단어의 조합을 포함하는 제 1 공지를 포함하는 하나 이상의 공지를 신뢰성이 높은 순서대로 연속적으로 출력하도록 출력 수단을 제어하는 단계를 또한 포함하는 것을 특징으로 하는 방법.
  13. 제 11 항 또는 제 12 항에 있어서,
    (a) 응답을 요청하는 적어도 하나의 공지를 발생하는 단계,
    (b) 상기 응답(들)을 인식하는 단계,
    (c) 인식된 응답(들)과 일치하는 필드를 포함하는 데이터베이스 엔트리를 식별하는 단계,
    (d) 상기 엔트리의 수가 지정된 한도를 초과하는 경우에 긍정 또는 부정 응답을 위해 식별된 엔트리의 선택된 필드에 대응하는 적어도 하나의 단어를 포함하는 출력을 발생하는 단계,
    (e) 긍정 응답을 수신하면, 인식된 응답과 일치하는 필드를 포함하고, 상기 단어와 일치하는 선택된 필드를 갖는 데이터베이스 엔트리를 식별하는 단계 및
    (f) 단계 (d)와 (e)를 적어도 1회 반복하는 단계를 또한 포함하는 것을 특징으로 하는 방법.
  14. 제 11 항 또는 제 12 항에 있어서,
    (a) 응답을 요청하는 적어도 하나의 공지를 발생하는 단계,
    (b) 상기 응답(들)을 인식하는 단계,
    (c) 인식된 응답(들)과 일치하는 필드를 포함하는 데이터베이스 엔트리를 식별하는 단계,
    (d) 상기 엔트리의 수가 지정된 한도보다 낮거나 동일한 경우에 일치하는 엔트리의 하나 이상의 필드(들)를 포함하는 하나 이상의 엔트리를 제공하는 출력을 발생하는 단계 및 루틴을 빠져나가며,
    (e) 특정 필드 또는 필드들의 선택에 대하여 상기 엔트리의 수가 지정된 한도를 초과하는 경우에 동일한 엔트리의 특정 필드 또는 필드들의 조합에 포함되는 하나의 구별 가능한 표현 또는 표현들의 선택을 검사하는 단계,
    (f) 상기 구별 가능한 표현 또는 표현의 조합의 수가 지정된 한도보다 큰 경우에 (단계 (e) 반복) 그런 필드가 잔존하지 않는다고 간주될 때까지 지정된 순서에 따라 아직 고려되지 않은 다른 필드 또는 필드의 선택을 선택하는 단계,
    (g) 아직 요청되지 않거나 확인되지 않은 응답을 요청하는 적어도 하나의 출력을 발생하는 단계,
    (h) 상기 응답(들)을 인식하는 단계,
    (i) 단계 (c)를 적어도 1회 반복하는 단계,
    (j) 상기 구별 가능한 표현 또는 표현의 조합의 수가 지정된 한도보다 낮거나 동일한 경우에 긍정 또는 부정 응답을 위해 식별된 엔트리의 선택 필드(들)에 대응하는 적어도 하나의 단어를 포함하는 공지를 발생하는 단계,
    (k) 긍정 응답을 수신하면, 인식된 응답과 일치하는 필드를 포함하고, 상기 단어 또는 단어의 조합과 일치하는 선택된 필드를 포함하는 데이터베이스 엔트리를 식별하는 단계 및
    (l) 단계 (d)와 (e)를 적어도 1회 반복하는 단계,
    (m) 모든 단어 또는 단어들에 대해 부정 응답을 수신하면, 데이터베이스 액세스 방법을 빠져나가는 단계를 포함하는 것을 특징으로 하는 방법.
KR1019980705981A 1996-01-31 1997-01-27 데이터베이스 액세스 방법 및 장치 KR19990082252A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9601925.2 1996-01-31
GBGB9601925.2A GB9601925D0 (en) 1996-01-31 1996-01-31 Database access

Publications (1)

Publication Number Publication Date
KR19990082252A true KR19990082252A (ko) 1999-11-25

Family

ID=10787862

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980705981A KR19990082252A (ko) 1996-01-31 1997-01-27 데이터베이스 액세스 방법 및 장치

Country Status (12)

Country Link
US (1) US5778344A (ko)
EP (1) EP0878085B1 (ko)
JP (1) JP2000504510A (ko)
KR (1) KR19990082252A (ko)
CN (1) CN1121777C (ko)
CA (1) CA2244116C (ko)
DE (1) DE69729277T2 (ko)
GB (1) GB9601925D0 (ko)
MX (1) MX9806168A (ko)
NO (1) NO983501L (ko)
NZ (1) NZ326441A (ko)
WO (1) WO1997028634A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301560B1 (en) * 1998-01-05 2001-10-09 Microsoft Corporation Discrete speech recognition system with ballooning active grammar
WO2000005710A1 (en) * 1998-07-21 2000-02-03 British Telecommunications Public Limited Company Speech recognition
US6185530B1 (en) 1998-08-14 2001-02-06 International Business Machines Corporation Apparatus and methods for identifying potential acoustic confusibility among words in a speech recognition system
US6269335B1 (en) * 1998-08-14 2001-07-31 International Business Machines Corporation Apparatus and methods for identifying homophones among words in a speech recognition system
US6192337B1 (en) 1998-08-14 2001-02-20 International Business Machines Corporation Apparatus and methods for rejecting confusible words during training associated with a speech recognition system
EP1055228A1 (en) * 1998-12-17 2000-11-29 ScanSoft, Inc. Speech operated automatic inquiry system
GB2347307B (en) * 1999-02-26 2003-08-13 Mitel Inc Dial by name feature for messaging system
US6587818B2 (en) * 1999-10-28 2003-07-01 International Business Machines Corporation System and method for resolving decoding ambiguity via dialog
EP1158491A3 (en) * 2000-05-23 2002-01-30 Vocalis Limited Personal data spoken input and retrieval
US7013276B2 (en) * 2001-10-05 2006-03-14 Comverse, Inc. Method of assessing degree of acoustic confusability, and system therefor
US7177814B2 (en) 2002-02-07 2007-02-13 Sap Aktiengesellschaft Dynamic grammar for voice-enabled applications
JP2006503328A (ja) 2002-10-16 2006-01-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ディレクトリアシスタント方法及び装置
WO2004079720A1 (en) * 2003-03-01 2004-09-16 Robert E Coifman Method and apparatus for improving the transcription accuracy of speech recognition software
US7603291B2 (en) 2003-03-14 2009-10-13 Sap Aktiengesellschaft Multi-modal sales applications
JP3890326B2 (ja) * 2003-11-07 2007-03-07 キヤノン株式会社 情報処理装置、情報処理方法ならびに記録媒体、プログラム
US20060167920A1 (en) * 2005-01-25 2006-07-27 Listdex Corporation System and Method for Managing Large-Scale Databases
BRPI0814787A2 (pt) 2007-07-20 2014-09-30 Bayer Innovation Gmbh Material de composto polimérico com funcionalidade biocida
US8383549B2 (en) 2007-07-20 2013-02-26 Bayer Cropscience Lp Methods of increasing crop yield and controlling the growth of weeds using a polymer composite film
DE102014114845A1 (de) * 2014-10-14 2016-04-14 Deutsche Telekom Ag Verfahren zur Interpretation von automatischer Spracherkennung
EP3504709B1 (en) * 2016-10-20 2020-01-22 Google LLC Determining phonetic relationships

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4831654A (en) * 1985-09-09 1989-05-16 Wang Laboratories, Inc. Apparatus for making and editing dictionary entries in a text to speech conversion system
GB8610809D0 (en) * 1986-05-02 1986-06-11 Smiths Industries Plc Speech recognition apparatus
US5027406A (en) * 1988-12-06 1991-06-25 Dragon Systems, Inc. Method for interactive speech recognition and training
AU631276B2 (en) * 1989-12-22 1992-11-19 Bull Hn Information Systems Inc. Name resolution in a directory database
US5251129A (en) * 1990-08-21 1993-10-05 General Electric Company Method for automated morphological analysis of word structure
US5204894A (en) * 1990-11-09 1993-04-20 Bell Atlantic Network Services, Inc. Personal electronic directory
US5454062A (en) * 1991-03-27 1995-09-26 Audio Navigation Systems, Inc. Method for recognizing spoken words
CA2088080C (en) * 1992-04-02 1997-10-07 Enrico Luigi Bocchieri Automatic speech recognizer
AU5803394A (en) * 1992-12-17 1994-07-04 Bell Atlantic Network Services, Inc. Mechanized directory assistance
US5623578A (en) * 1993-10-28 1997-04-22 Lucent Technologies Inc. Speech recognition system allows new vocabulary words to be added without requiring spoken samples of the words

Also Published As

Publication number Publication date
US5778344A (en) 1998-07-07
AU3606897A (en) 1997-08-22
CA2244116A1 (en) 1997-08-07
AU707248B2 (en) 1999-07-08
CN1210643A (zh) 1999-03-10
NZ326441A (en) 1999-09-29
DE69729277D1 (de) 2004-07-01
JP2000504510A (ja) 2000-04-11
CN1121777C (zh) 2003-09-17
EP0878085B1 (en) 2004-05-26
MX9806168A (es) 1998-10-31
NO983501D0 (no) 1998-07-30
DE69729277T2 (de) 2005-06-02
CA2244116C (en) 2001-11-27
WO1997028634A1 (en) 1997-08-07
GB9601925D0 (en) 1996-04-03
EP0878085A1 (en) 1998-11-18
NO983501L (no) 1998-09-30

Similar Documents

Publication Publication Date Title
KR19990082252A (ko) 데이터베이스 액세스 방법 및 장치
JP3135233B2 (ja) 音声認識を用いたロボットホテル従業員
US6018708A (en) Method and apparatus for performing speech recognition utilizing a supplementary lexicon of frequently used orthographies
US5983177A (en) Method and apparatus for obtaining transcriptions from multiple training utterances
US5283833A (en) Method and apparatus for speech processing using morphology and rhyming
US20020143548A1 (en) Automated database assistance via telephone
EP1172994B1 (en) Voice-operated services
JP3472194B2 (ja) 自動応答方法及びその装置並びにそのプログラムを記録した媒体
EP0700031A1 (en) Confusable word detection in speech recognition
JPH10229449A (ja) 電話帳の登録項目から話を認識した語彙を自動的に生成する方法および装置、並びに、話認識システムにおいて使用される、話を認識した語彙を生成するためにコンピュータに命令をするためのプログラム要素を記録したコンピュータ読み取り可能な記録媒体
US20050004799A1 (en) System and method for a spoken language interface to a large database of changing records
US8428241B2 (en) Semi-supervised training of destination map for call handling applications
JPH10224454A (ja) 最も適当な要求された番号を予言するために発見的モデルを用いた自動名簿支援システム、自動名簿支援システムにおいて語の認識を行う方法、および、話認識レイヤーを備えた自動名簿支援システムにおける使用のための話認識辞書を含むコンピュータ読み取り可能な記録媒体
FR2738382A1 (fr) Systeme de dialogue vocal destine a la fourniture automatisee d'informations
Seide et al. Towards an automated directory information system.
US7970610B2 (en) Speech recognition
KR20000005278A (ko) 자동 음성인식 방법 및 장치_
AU707248C (en) Database access
JPH09114493A (ja) 対話制御装置
Williams Dialogue Management in a mixed-initiative, cooperative, spoken language system
JP3663012B2 (ja) 音声による入力装置
JPH10105190A (ja) データベースへの照会を実施する方法
JP2002532763A (ja) 音声によって動作される自動問合せシステム
JPH06175698A (ja) 音声検索装置
JP3819959B2 (ja) 音声による情報検索装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application