KR20140082711A - 음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경 - Google Patents

음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경 Download PDF

Info

Publication number
KR20140082711A
KR20140082711A KR1020147010464A KR20147010464A KR20140082711A KR 20140082711 A KR20140082711 A KR 20140082711A KR 1020147010464 A KR1020147010464 A KR 1020147010464A KR 20147010464 A KR20147010464 A KR 20147010464A KR 20140082711 A KR20140082711 A KR 20140082711A
Authority
KR
South Korea
Prior art keywords
fst
sentence
subset
suffix
arcs
Prior art date
Application number
KR1020147010464A
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 KR20140082711A publication Critical patent/KR20140082711A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/083Recognition networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/12Speech classification or search using dynamic programming techniques, e.g. dynamic time warping [DTW]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)

Abstract

문장들을 추가하고 제거하기 위해 단어-수준 유한 상태 변환기(finite state transducer : FST)를 점진적으로 변경하기 위한 방법들이 기술되었다. FST에서의 상태들과 아크들의 접두사 서브세트는 문장의 접두사 부분에 매칭되도록 결정된다. FST에서의 상태들과 아크들의 접미사 서브세트는 문장의 접미사 부분에 매칭되도록 결정된다. 그 후 새로운 문장은, 접두사와 접미사 사이의 문장 나머지 부분에 대응하는 FST에, 상태들과 아크들의 새로운 시퀀스를 추가함으로써 FST에 추가될 수 있다. 접두사 서브세트와 접미사 서브세트 사이의 임의의 아크들 및 상태들을 제거함으로써 기존의 문장이 FST로부터 제거될 수 있다. 결과적으로 변경된 FST는 국부적으로는 효율적이지만, 최소화 등의 전역적인 최적화 기준은 만족시키지 않는다.

Description

음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경{EFFICIENT INCREMENTAL MODIFICATION OF OPTIMIZED FINITE-STATE TRANSDUCERS(FSTS) FOR USE IN SPEECH APPLICATIONS}
본 발명은 음성 처리 어플리케이션들에 관한 것으로, 보다 구체적으로는 자동 음성 인식 시스템 및 TTS(text-to-speech) 시스템 등의 음성 처리 어플리케이션에 이용되는 프리컴파일링된(precompiled) 검색 네트워크에 관한 것이다.
음성 인식 시스템은 음성 입력의 의미론적 의미(semantic meaning)를 결정하려는 시도를 행한다. 일반적으로, 음성 입력에 최적으로 대응하는 단어들의 순서를 결정하는 데에 확률적인 유한 상태 음성 모델(probabilistic finite state speech model)들이 이용된다. 하나의 일반적인 예로, 승객실 내의 네비게이션 시스템, 오디오 시스템, 온도 조절기(climate control) 등의 어플리케이션들의 제어를 가능하게 하는 자동차 어플리케이션이 있다. 이러한 어플리케이션에서의 인식 작업은 mp3 곡들의 리스트들, (예컨대, 스마트폰으로부터의) 개인적인 디지털 주소록으로부터의 이름들, 및 네비게이션에서의 관심 지점들 등의 동적으로 결정되는 요소들과 함께, 이용자의 명령들 및 도시 내의 거리들의 리스트들 등의 미리 결정된 요소들의 조합을 나타낸다. 이러한 어플리케이션을 위해서는, 고속의 저 레이턴시 성능을 갖는 컴팩트 메모리에 효율적인 검색 네트워크를 구비하는 것이 바람직하다.
인식 작업은, 음소(phonemes)로 알려진 기본적인 음성(speech sound)들의 음향 형태들로부터, 인식 어휘(recognition vocabulary)에서 단어들을 형성하는 음소 열(phoneme sequence)에 이르기까지, 그리고 인식 문법(recognition grammar)에서 구(phrase)들을 형성하는 단어 열(word sequence)에 이르기까지 다수의 상이한 인식 수준(knowledge level)들을 포함한다. 인식 작업을 체계화하는 강력하면서도 편리한 하나의 방법은 FSA(finite state acceptor) 및 유한 상태 변환기(finite state transducer: FST) 등의 유한 상태 머신(finite state machine)의 이용에 기반하는 것이다. 편의상, 이하의 논의에서는 FST라는 용어를, 특정의 엄격한 의미가 아닌 여러 측면에서 FSA들 및 그 외의 특정 형태의 유한 상태 머신들에도 적용되는 포괄적이고 일반적인 방식으로 사용한다. 도 1은 단어-수준의 심볼들{AAA, BA, AAB}의 세트를 파싱하는 하나의 단순 FST의 특정 예를 도시한다; 예컨대, 본 명세서에 참조 문헌으로서 포함되는 Jurafsky & Martin, Speech and Language Processing, Prentice Hall 2001. pp. 33-83. ISBN 0-13-095069-6를 참조하자.
이용가능한 리소스가 제한적이라는 점에서, 스마트폰 등의 모바일 플랫폼에서 음성 처리 어플리케이션들을 구현하는 것은 특히 어려운 일이다. 속도, 정확도, 및/또는 제한된 메모리의 이용을 개선하기 위해 특정의 최적화가 구현될 수 있다. 특히, FST는 음향 정보(HMM 세트), 단어의 발음, 언어 모델, 및 인식 문법에 대해 통합된 단일의 표현을 가능하게 한다. 이러한 통합된 표현으로 인해, 검색 네트워크의 트래버스 동안에 산술적으로 비용이 많이 들지 않는 계산들이 행해질 수 있는 한편, 그 외에 산술적으로 비용이 많이 드는 최적화는 프리컴파일 단계로 오프로드(offload)될 수 있다. FST의 정적 컴파일에 대해 가장 폭넓게 이용되는 최적화의 4가지는 확정화(determinization), 최소화(minimization), 가중치 및 라벨 푸싱을 포함한다; 예컨대, 본 명세서에 참조 문헌으로서 포함되는 Mohri, Minimization of Sequential Transducers, (5th Annual Symposium on Combinatorial Pattern Matching 1994)를 참조하자.
확정화에도 불구하고, 기존의 FST 최적화는 전역적(global)이고, 즉 FST를 전체로서 액세스할 필요가 있고, 따라서 검색 네트워크를 점진적으로 변경하는 음성 어플리케이션들에 적용될 수 없다. 단어-수준(word-level) FST에 문장들을 점진적으로 추가하는 일부 이론적인 양태들이 본 명세서에 참조문헌으로서 포함되는 Crochemore and Giambruno, On-Line Construction Of A Small Automaton For A Finite Set Of Words, The Prague Stringology Conference 2009에 보다 완전하게 기술되어 있다.
본 발명의 실시예들은 문장들을 추가하고 제거하기 위해 단어-수준의 유한 상태 변환기(finite state transducer: FST)를 점진적으로 변경하는 방법에 관한 것이다. FST에서의 상태(state)들 및 아크(arc)들의 접두사 서브세트는 문장의 접두사 부분에 매칭되도록 결정된다. FST에서의 상태들 및 아크들의 접미사 서브세트는 문장의 접미사 부분에 매칭되도록 결정된다. 그 후, 접두사와 접미사 사이의 문장의 나머지 부분에 대응하는 FST에 새로운 시퀀스의 상태들과 아크들을 첨부함으로써, FST에는 새로운 문장이 추가될 수 있다. 접두사 서브세트와 접미사 서브세트 사이의 임의의 아크들 및 상태들을 제거함으로써 기존의 문장이 FST로부터 제거될 수 있다. 결과적으로 변경된 FST는 국부적으로는 효율적이지만, 최소화 등의 전역적인 최적화 기준을 만족시키지는 않는다.
FST는 음성 어플리케이션 FST일 수 있고, 문장은 음성 어플리케이션의 온라인 동작 동안에 FST로부터 동적으로 추가되거나 또는 제거될 수 있다. 기존의 문장을 제거하기 위하여, 부분적인 매칭 처리("퍼지 제거")에서 단계들이 1회 이상 반복되어, FST로부터 기존의 문장의 복수의 인스턴스들을 제거할 수 있다. 해시 테이블, 예컨대 특수한 양용(dual-use) 해시 테이블이 접두사 서브세트 및/또는 접미사 서브세트를 결정하는 데에 이용될 수 있다. 전역적 최적화 기준은 FST 최소화 기준을 포함할 수 있다.
도 1은 일 특정 FST의 간단한 예를 도시한 도면.
도 2a 내지 2c는 본 발명의 일 실시예에 따른, FST에 문장을 추가하는 일례를 도시한 도면.
도 3a 내지 3c는 공유 접미사들에 대한 기존의 FST에 새로운 상태를 추가하는 일례를 도시한 도면.
도 4a 및 4b는 FST의 전역적 비최소성의 일례를 도시한 도면.
도 5a 및 5b는 완전 매치(exact match) 처리를 이용하여 기존의 FST로부터 문장을 제거하는 일례를 도시한 도면.
도 6a 및 6b는 기존의 FST로부터 문장을 제거하기 위한 부분 매치 처리의 일례를 도시한 도면.
도 7은 본 발명의 일 실시예에 따른, 변경된 FST 구성을 이용하는 시스템의 일 실시예에 대한 기본 구조를 도시한 도면.
본 발명의 다양한 실시예들은 전역적 최적화보다는 다소 약한 국부적 최적화를 이용하여 FST의 동적 변경을 효율적으로 가능하게 하는 기법들, 예컨대 점진적인 국부적 최소화에 기반하여 단어-수준의 FST에 문장들을 추가하거나 제거하는 것에 관한 것이다. 국부적 최소화는 모든 상태들이 1 아크 이하의 팬 아웃(fan-out)을 갖는 접미사 경로들에만 적용되는 최소화의 약한 버전으로서의 특성을 갖는다. 길이가 N인 문장을 고려시, 본 발명의 실시예들은 O(N), 즉 c가 구현을 위한 상수인 경우에, N2 단계가 아닌 c*N 단계 이하가 소요되는 분할 상각 복잡도(amortized complexity)에 기반하여 FST에 추가하거나 FST로부터 삭제한다. 이것은 전역적으로 최적화된 FST에 준하는 만큼 효율적으로 음성을 텍스트로 디코딩하는 FST를 점진적으로 구성하는 데에 이용될 수 있으며 FST들의 (오프라인) 정적 컴파일에 대한 메모리 소비를 감소시키는 데에 도움을 준다. 후속하는 논의가 음성 인식 어플리케이션의 관점에서 제시되지만, 이러한 아이디어는 문자-음성 변환, 문자 처리 등의 시간 또는 공간 효율적인 FST들을 점진적으로 생성하는 것이 필요한 임의의 어플리케이션으로 확장될 수 있다.
도 2a 내지 2c는 새로운 문장의 접두사와 접미사를 기존의 FST에 이미 존재하는 것들과 공유하는 것에 기반하여, 본 발명의 일 실시예에 따라 선형 시간 복잡도를 갖는 FST에 문장을 추가하는 일례를 도시한다. (주의: 전술한 바와 같이, 도면을 단순화하기 위하여 FST로부터의 입력/출력 아크 라벨 쌍들에 단일 라벨이 주어지는 본 컨텍스트에서, FSA와 FST 간의 형식적인 구별은 별로 중요하지 않다.) 도 2a는 문장 ABC에 대한 기존의 단순한 단어-수준의 FST를 도시한다. 이러한 FST에 새로운 문장 ADC를 추가하기 위해서, 우선 새로운 문장의 접두사 부분에 매칭되는 FST에서의 상태들과 아크들의 접두사 서브세트가 결정된다. 이러한 특정 경우에서, 새로운 문장 ADC를 추가하기 위한 기존의 접두사 서브세트는 기존의 상태 0, 상태 1 및 그들의 연결 아크 A가 되도록 결정될 것이다(도 2b). 이어서, 새로운 문장의 접미사 부분에 매칭되는 FST에서의 상태들과 아크들의 접미사 서브세트가 결정된다. 새로운 문장 ADC의 경우에, 접미사 서브세트는 기존의 상태 2 및 상태 3 그리고 그들의 연결 아크 C가 될 것이다. 그 후 새로운 문장은, 접두사와 접미사 사이의 문장의 나머지 부분에 대응하는 FST에, 새로운 시퀀스의 상태들과 아크들을 첨부함으로써 FST에 추가될 수 있다. ADC를 추가하는 경우에, 이것은 아크 D를 상태 1과 상태 2 사이에 추가함으로써 행해질 수 있다(도 2c).
결과적인 변경 FST는 기존에 존재하지 않는 상태들/아크들만이 추가된다는 점에서 국지적으로는 효율적이지만, 최소화 등의 전역적 최적화 기준을 만족시키지는 않는다. 대신에, 적어도 보다 약한 점진적 최소화를 만족시킨다. 접두사 서브세트 및/또는 접미사 서브세트를 결정하는 데에 해시 테이블이 이용될 수 있다. 예를 들어, O(1) 선형 시간 복잡도를 갖는 접두사 해시 테이블이 f(상태, 아크 라벨) -> 목표 상태가 되도록 이용될 수 있고, 그에 따라 전체적인 복잡도가 O(N)보다 나빠지지 않는 것이 보장된다. 그리고, 다양한 단계들이 어떠한 특정 순서로 수행되는지는 중요하지 않다.
도 3a 내지 3c는 공유 접미사들에 대하여 기존의 FST에 새로운 상태를 추가하는 또 다른 예를 도시한다. 도 3a는 문장 AAA에 대한 기존의 FST를 도시한다. 새로운 문장 BA를 추가하기 위해서, 상태 2를 이용하고 또한 상태 0로부터 상태 2로의 새로운 아크 B를 추가함으로써 접미사 A가 공유될 수 있다(도 3b). 이어서, 또 다른 새로운 문장 AAB를 추가하기 위해서, 접두사 서브세트 AA를 받는 새로운 상태 4가 추가되고, 상태 2로부터 상태 3으로의 기존의 아크 A가 상태 4로부터 상태 3으로 복제(기존의 문장 AAA를 파싱함)되고, 새로운 아크 4B3이 추가되어 새로운 경로 AAB가 완성된다(도 3c).
이러한 접근법이 국지적으로는 효율적일 것이지만, 어느 지점에서는, 커지는 FST는 전역적으로 최소가 아니게 된다. 예를 들어, 도 3c에서의 변경된 FST에, 그 후 또 다른 새로운 문장 BB가 추가되는 경우, 기존의 접두사 B가 식별될 것이고, 상태 2로부터 상태 3으로 새로운 아크 B가 추가될 것이다(도 4a). 그러나 이러한 새로운 FST는, 도 4b에 도시된 바와 같이 상태 4가 더 이상 필요하지 않고 제거될 수 있으며, 그럼에도 불구하고 AAA, BA, AAB, 및 BB 모두를 그리고 이들만을 정확하게 파싱할 수 있기 때문에 전역적으로는 최소가 아니다. 그러나 이러한 처리의 용이함은 전역적 비최소화의 점진적인 작은 손실보다 중요하다.
기존의 FST에 문장들을 추가하는 것 외에, 예컨대 차후의 이용을 위한 "프리(free)" 리스트에 의해 접두사 서브세트 및 접미사 서브세트 사이의 임의의 아크들 및 상태들을 제거함으로써 FST로부터 기존의 문장이 제거될 수도 있다. 이러한 제거 처리와 관련하여 해시 테이블이 유용할 수 있는데, 예컨대 접두사 해시 테이블이 잠재적인 매칭들의 시작 상태들에 신속하게 액세스할 수 있다. 즉, 입력 라벨 p에 매칭되는 해시 테이블로의 액세스: p -> O(p). 이용되지 않는 아크들만이 제거될 필요가 있다.
기존의 FST로부터 문장을 제거하기 위한 하나의 구체적인 처리는 도 5a, 도 5b에 도시된 바와 같은 완전 매치 기법에 기반할 수 있다. 도 5a는 문장 AAA 및 문장 BA를 파싱하는 기존의 FST를 도시한다. 문장을 제거하기 위해서, 우선 임의의 나머지 접두사들 및/또는 접미사들이 결정되고 유지되어야 한다. 예를 들어, 문장 AAA를 제거(및 BA를 유지)하기 위해서는 유지해야 할 접두사는 존재하지 않으나, BA의 접미사 A는 식별되고 유지되기 때문에, 접미사 서브세트 2,A,3(즉, 상태 2와 상태 3 및 이들 사이의 아크(에지) A : 2
Figure pct00001
3)는 유지되는 반면, AA에 대한 나머지 경로, 즉 상태 1 및 아크 0
Figure pct00002
1 과 아크 1
Figure pct00003
2(도 5b에 (-1)로 도시됨)는 제거된다.
아크/상태 제거 단계들은, FST로부터 문장의 단편 또는 기존의 문장의 복수의 인스턴스들을 제거하기 위한 부분적인 매칭 처리에서 1회 이상 반복(예컨대 반복을 위한 시험은 해시 테이블에서 충돌을 검사하는 것에 기반할 수 있음)될 수 있다. 예를 들어, 도 6a는 도 5a에서와 같은 문장 AAA와 문장 BA를 파싱하는 기존의 FST를 도시한다. 기존의 부분적인 문장 *A*를 제거하기 위해서, 제1 인스턴스는 아크 0
Figure pct00004
1에서 발견되어 제거되고(-1), 그 후 이러한 방법은 반복되고, 이어서 부분적인 문장 *A*의 모든 인스턴스들이 식별되고 제거될 때까지 아크 1
Figure pct00005
2, 그리고 그 후 아크(2
Figure pct00006
3)을 제거한다(도 6b). 또한, 이러한 구현을 위해, 예컨대 변경된 접두사 해시 함수 "f(아크 라벨) -> 목표 상태"를 이용하는 해시 테이블이 구현을 위해 유용할 수 있다. 이러한 부분적인 매칭 접근법은 충돌들의 수를 매우 증가시킬 수 있으므로, 문장의 추가가 더 이상 충분할 정도로 효율적이지 않을 수 있다. 결과적인 데이터 구조에서 해시 함수만이 상이하도록 신중하게 선택된 해시 함수 및 그룹 액세스들(추가, 제거)을 이용하는 것이 유용할 수 있다.
도 7은 본 발명의 일 실시예에 따른 변경된 FST 구성 - 본 경우에 음성 어플리케이션의 온라인 동작 동안에 동적으로 문장들을 추가하고 제거하는 음성 어플리케이션 FST - 를 이용하는 시스템, 즉 시스템이 실행 시간에 변경될 수 있는 일 구현 예의 기본 구조를 도시한다. 컴파일러(703)는 HMM 유닛 시퀀스(702)(즉, 음향 모델)에 의해, 점진적으로 최소화된 단어-수준 FST(701)(즉, 언어 모델)의 실행 시간 확장을 수행하여, 음성 어플리케이션에서 알려지지 않은 음성 입력의 음성 인식에 대한 HMM-유닛-단어 FST(704)(여기에도 컴파일러(703)가 확정화와 국지적 최소화를 행함)를 생성한다. 그리고 HMM-유닛-단어 FST(704)는 순전히 전역적으로 최소화되는 것이 아니라, 전술한 바와 같이(즉, 인식 동안에) 점진적으로 구성되지만, 여전히 상업적으로 유용하게 이용하기에 충분히 컴팩트하고 효율적이며, 또한 추가적인 연산이 회피된다. 일부 실시예들에서는, 실행 시간 확장은 수행되거나 수행되지 않을 수 있는 선택적인 단계이다. 또한, HMM-유닛-단어 FST는 점진적인 최소화(incremental minimization)를 이용하여 직접적으로 구성될 수 있다. 그러나, 긴 발음들(그리고 동일한 것이 두 번 이상 이용될 수 있음) 등의 다양한 요인들로 인해, 이러한 접근법은 추가/제거 단계들에 대해 보다 많은 오버헤드를 요구할 수 있다. 따라서, 이러한 이유로 특정 실시예들은 인식이 행해지는 동안에 전사(transcription)들을 동적으로 확장하는 것을 선택할 수 있다.
본 발명의 실시예들은 종래의 임의의 컴퓨터 프로그래밍 언어 전체 또는 그 일부로 구현될 수 있다. 예를 들어, 바람직한 실시예들은 절차지향 프로그래밍 언어(예컨대, "C") 또는 객체지향 프로그래밍 언어(예컨대, "C++", Python)로 구현될 수 있다. 본 발명의 대안적인 실시예들은 사전-프로그래밍된 하드웨어 요소들, 그 외의 관련 구성요소들, 또는 하드웨어 및 소프트웨어 구성요소들의 조합으로서 구현될 수 있다.
실시예들은 컴퓨터 시스템에 의한 이용을 위한 컴퓨터 프로그램 제품으로서 전체적으로 또는 부분적으로 구현될 수 있다. 그러한 구현은 컴퓨터 판독가능한 매체(예컨대, 디스켓, CD-ROM, ROM, "FLASH ROM" 등의 전기적 소거 가능 ROM, 또는 고정 디스크) 등의 유형의 매체 또는 모뎀 또는 매체를 통해 네트워크에 접속된 통신 어댑터 등의 그 외의 인터페이스 장치를 통해 컴퓨터 시스템에 전송가능한 것에 고정된 일련의 컴퓨터 명령어들을 포함할 수 있다. 매체는 유형의 매체(예컨대, 광 또는 아날로그 통신 배선들) 또는 무선 기법들(예컨대, 마이크로파, 적외선 또는 그 외의 전송 기법들)에 의해 구현되는 매체일 수 있다. 일련의 컴퓨터 명령어들은 시스템과 관련하여 본 명세서에서 전술된 기능의 전체 또는 일부를 구체화한다. 당업자는 그러한 컴퓨터 명령어들이 많은 컴퓨터 구조들 또는 운영 체제들에서의 이용을 위해 다수의 프로그래밍 언어들로 기록될 수 있다는 것을 알아야 한다. 또한, 이러한 명령어들은 반도체 메모리 장치, 자기 메모리 장치, 광 메모리 장치, 또는 그외의 메모리 장치들 등의 임의의 메모리 장치에 저장될 수 있고, 광 전송 기술, 적외선 전송 기술, 마이크로파 전송 기술, 또는 그 외의 전송 기술들 등의 임의의 통신 기술을 이용하여 전송될 수 있다. 이러한 컴퓨터 프로그램 제품은 첨부된 인쇄 또는 전자 문서(예컨대, 수축 포장된(shrink wrapped) 소프트웨어)를 포함하는 이동식 매체로서 배포될 수 있고, 컴퓨터 시스템(예컨대 시스템 ROM 또는 고정 디스크)에 사전에 로딩될 수 있고, 또는 서버 또는 네트워크(예컨대, 인터넷 또는 World Wide Web)를 통한 전자 게시판으로부터 배포될 수 있을 것으로 기대된다. 물론, 본 발명의 일부 실시예들은 소프트웨어(예컨대 컴퓨터 프로그램 제품) 및 하드웨어의 조합으로서 구현될 수 있다. 또한, 본 발명의 그 외의 실시예들은 전적으로 하드웨어 또는 전적으로 소프트웨어(예컨대, 컴퓨터 프로그램 제품)로 구현될 수 있다.
본 발명의 다양한 예시적인 실시예들이 개시되었지만, 당업자는 본 발명의 범위를 벗어나지 않으면서 본 발명의 일부 장점들을 달성하는 다양한 변화들 및 변경들이 이루어질 수 있다는 것을 이해할 것이다.

Claims (15)

  1. 복수의 상태(state)들 및 연결 아크(arc)들을 갖는 단어-수준의 유한 상태 변환기(finite state transducer: FST)에 새로운 문장을 추가하는 방법으로서,
    상기 FST에서의 상태들과 아크들 중 상기 새로운 문장의 접두사 부분에 매칭되는 기존의 접두사 서브세트를 결정하는 단계;
    상기 접두사 부분 이후의 상기 새로운 문장의 나머지 부분에 대응하는 상기 FST에 새로운 시퀀스의 상태들 및 아크들을 추가하는 단계;
    상기 FST에서의 상태들 및 아크들 중 상기 새로운 문장의 접미사 부분에 대응하는 기존의 접미사 서브세트를 결정하는 단계; 및
    상기 접미사 부분 이전의 상기 새로운 시퀀스의 부분을 상기 접미사 서브세트에 연결하여, 상기 새로운 문장을 포함하며 또한 전역적 최적화 기준(global optimization criteria)을 만족시키지 않는 변경된 FST를 생성하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 FST는 음성 어플리케이션 FST인, 방법.
  3. 제2항에 있어서,
    상기 새로운 문장은 상기 음성 어플리케이션의 온라인 동작 동안에 상기 FST에 동적으로 추가되는, 방법.
  4. 제2항에 있어서,
    상기 새로운 문장은 오프라인 컴파일 처리 동안에 상기 FST에 추가되는, 방법.
  5. 제2항에 있어서,
    음성 어플리케이션에서의 이용을 위해 상기 변경된 FST를 동적으로 확장하는 단계를 더 포함하는 방법.
  6. 제1항에 있어서,
    상기 접두사 서브세트를 결정하기 위해 해시 테이블이 이용되는, 방법.
  7. 제1항에 있어서,
    상기 접미사 서브세트를 결정하기 위해 해시 테이블이 이용되는, 방법.
  8. 복수의 상태들 및 연결 아크들을 갖는 단어-수준의 유한 상태 변환기(finite state transducer: FST)로부터 기존의 문장을 제거하는 방법으로서,
    상기 FST에서의 상태들 및 아크들 중 상기 기존의 문장의 접두사 부분에 매칭되고 또한 상기 FST의 적어도 하나의 다른 문장에 대응하는 접두사 서브세트를 결정하는 단계;
    상기 FST에서의 상태들 및 아크들 중 상기 기존의 문장의 접미사 부분에 매칭되고 또한 상기 FST의 적어도 하나의 다른 문장에 대응하는 접미사 서브세트를 결정하는 단계; 및
    상기 접두사 서브세트 및 상기 접미사 서브세트 사이의 임의의 아크들 및 상태들을 상기 FST로부터 제거하여, 상기 기존의 문장이 존재하지 않으며 전역적 최적화 기준을 만족시키지 않는 변경된 FST를 생성하는 단계
    를 포함하는 방법.
  9. 제8항에 있어서,
    상기 FST는 음성 어플리케이션 FST인, 방법.
  10. 제9항에 있어서,
    상기 기존의 문장은 상기 음성 어플리케이션의 온라인 동작 동안에 상기 FST로부터 동적으로 제거되는, 방법.
  11. 제9항에 있어서,
    상기 새로운 문장은 오프라인 컴파일 처리 동안에 상기 FST에 추가되는, 방법.
  12. 제9항에 있어서,
    음성 어플리케이션에서의 이용을 위해 상기 변경된 FST를 동적으로 확장하는 단계를 더 포함하는 방법.
  13. 제8항에 있어서,
    상기 단계들은 부분적인 매칭 처리에서 1회 이상 반복되어 상기 FST로부터 상기 기존의 문장의 복수의 인스턴스들을 제거하는, 방법.
  14. 제8항에 있어서,
    상기 접두사 서브세트를 결정하기 위해 해시 테이블이 이용되는, 방법.
  15. 제8항에 있어서,
    상기 접미사 서브세트를 결정하기 위해 해시 테이블이 이용되는, 방법.
KR1020147010464A 2011-09-21 2011-09-21 음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경 KR20140082711A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/052544 WO2013043165A1 (en) 2011-09-21 2011-09-21 Efficient incremental modification of optimized finite-state transducers (fsts) for use in speech applications

Publications (1)

Publication Number Publication Date
KR20140082711A true KR20140082711A (ko) 2014-07-02

Family

ID=47914705

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147010464A KR20140082711A (ko) 2011-09-21 2011-09-21 음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경

Country Status (6)

Country Link
US (1) US9837073B2 (ko)
EP (1) EP2758958A4 (ko)
JP (1) JP5984941B2 (ko)
KR (1) KR20140082711A (ko)
CN (1) CN103918027B (ko)
WO (1) WO2013043165A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9697827B1 (en) * 2012-12-11 2017-07-04 Amazon Technologies, Inc. Error reduction in speech processing
JP6508808B2 (ja) * 2014-10-16 2019-05-08 日本放送協会 音声認識誤り修正装置
CN105843811B (zh) * 2015-01-13 2019-12-06 华为技术有限公司 转换文本的方法和设备
US9715874B2 (en) 2015-10-30 2017-07-25 Nuance Communications, Inc. Techniques for updating an automatic speech recognition system using finite-state transducers
CN106847266B (zh) * 2016-12-26 2019-12-13 清华大学 一种语音识别的方法和装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2170669A1 (en) * 1995-03-24 1996-09-25 Fernando Carlos Neves Pereira Grapheme-to phoneme conversion with weighted finite-state transducers
US6424983B1 (en) * 1998-05-26 2002-07-23 Global Information Research And Technologies, Llc Spelling and grammar checking system
US6944588B2 (en) * 2000-04-03 2005-09-13 Xerox Corporation Method and apparatus for factoring unambiguous finite state transducers
JP2003141111A (ja) * 2001-11-01 2003-05-16 National Institute Of Advanced Industrial & Technology 構文解析方法
JP2004271764A (ja) * 2003-03-06 2004-09-30 Nagoya Industrial Science Research Inst 有限状態変換器作成装置、プログラム、記録媒体、作成方法、及び漸進的構文解析装置
US20050288928A1 (en) 2004-06-24 2005-12-29 Vladimir Bergl Memory efficient decoding graph compilation system and method
US8700404B1 (en) * 2005-08-27 2014-04-15 At&T Intellectual Property Ii, L.P. System and method for using semantic and syntactic graphs for utterance classification
KR100735559B1 (ko) 2005-11-18 2007-07-04 삼성전자주식회사 언어 모델 구축 장치 및 방법
US8195462B2 (en) * 2006-02-16 2012-06-05 At&T Intellectual Property Ii, L.P. System and method for providing large vocabulary speech processing based on fixed-point arithmetic
US20070265826A1 (en) * 2006-05-10 2007-11-15 Stanley Chen Systems and methods for fast and memory efficient machine translation using statistical integrated phase lattice
US7860719B2 (en) * 2006-08-19 2010-12-28 International Business Machines Corporation Disfluency detection for a speech-to-speech translation system using phrase-level machine translation with weighted finite state transducers
US8788258B1 (en) * 2007-03-15 2014-07-22 At&T Intellectual Property Ii, L.P. Machine translation using global lexical selection and sentence reconstruction
CN101030369B (zh) * 2007-03-30 2011-06-29 清华大学 基于子词隐含马尔可夫模型的嵌入式语音识别方法
JP5235210B2 (ja) * 2007-04-13 2013-07-10 マサチューセッツ インスティテュート オブ テクノロジー 音声データ検索装置、音声データ検索方法、音声データ検索プログラム、及びコンピュータが読取可能な音声データ検索プログラムを内蔵したコンピュータが使用可能な媒体
JP4977163B2 (ja) * 2009-03-30 2012-07-18 株式会社東芝 有限状態トランスデューサ決定化装置及び有限状態トランスデューサ決定化方法
EP2339576B1 (en) * 2009-12-23 2019-08-07 Google LLC Multi-modal input on an electronic device
US8972243B1 (en) * 2012-11-20 2015-03-03 Amazon Technologies, Inc. Parse information encoding in a finite state transducer

Also Published As

Publication number Publication date
CN103918027A (zh) 2014-07-09
EP2758958A1 (en) 2014-07-30
JP2014526718A (ja) 2014-10-06
WO2013043165A1 (en) 2013-03-28
US20140229177A1 (en) 2014-08-14
EP2758958A4 (en) 2015-04-08
CN103918027B (zh) 2016-08-24
US9837073B2 (en) 2017-12-05
JP5984941B2 (ja) 2016-09-06

Similar Documents

Publication Publication Date Title
US10152971B2 (en) System and method for advanced turn-taking for interactive spoken dialog systems
US7072837B2 (en) Method for processing initially recognized speech in a speech recognition session
Zhang et al. Wenet 2.0: More productive end-to-end speech recognition toolkit
US8589163B2 (en) Adapting language models with a bit mask for a subset of related words
US8805684B1 (en) Distributed speaker adaptation
JP6058807B2 (ja) 検索クエリ情報を使用する音声認識処理のための方法およびシステム
US8532990B2 (en) Speech recognition of a list entry
CN111292740B (zh) 语音辨识系统及其方法
GB2453366A (en) Automatic speech recognition method and apparatus
US9202459B2 (en) Methods and systems for managing dialog of speech systems
WO2011121649A1 (ja) 音声認識装置
KR20140082711A (ko) 음성 어플리케이션에서 이용하기 위해 최적화된 유한 상태 변환기들의 효율적인 점진적 변경
US20030009331A1 (en) Grammars for speech recognition
JPH09127978A (ja) 音声認識方法及び装置及びコンピュータ制御装置
JP7305844B2 (ja) 音声処理
Schalkwyk et al. Speech recognition with dynamic grammars using finite-state transducers.
You et al. Flexible and expandable speech recognition hardware with weighted finite state transducers
WO2020179193A1 (ja) 情報処理装置及び情報処理方法
US20140372118A1 (en) Method and apparatus for exemplary chip architecture
JP2020012860A (ja) 音声認識装置および音声認識方法
KR101341644B1 (ko) 복수개의 인식 결과를 생성하기 위한 음성 인식 장치
JP4587015B2 (ja) 音声認識装置および方法、プログラム、並びに記録媒体

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