KR20210146368A - 숫자 시퀀스에 대한 종단 간 자동 음성 인식 - Google Patents

숫자 시퀀스에 대한 종단 간 자동 음성 인식 Download PDF

Info

Publication number
KR20210146368A
KR20210146368A KR1020217035057A KR20217035057A KR20210146368A KR 20210146368 A KR20210146368 A KR 20210146368A KR 1020217035057 A KR1020217035057 A KR 1020217035057A KR 20217035057 A KR20217035057 A KR 20217035057A KR 20210146368 A KR20210146368 A KR 20210146368A
Authority
KR
South Korea
Prior art keywords
sequence
transcription
domain
training
numeric
Prior art date
Application number
KR1020217035057A
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 KR20210146368A publication Critical patent/KR20210146368A/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/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0445
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/197Probabilistic grammars, e.g. word n-grams
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Image Analysis (AREA)
  • Character Discrimination (AREA)

Abstract

방법(500)은 숫자 시퀀스를 포함하는 발화(106)에 대한 오디오 데이터(110)를 수신하는 단계, 및 시퀀스 대 시퀀스 음성 인식 모델(200)을 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터의 출력으로서, 발화(106)의 중간 전사(115)를 생성하기 위해 발화(106)에 대한 오디오 데이터(110)를 디코딩하는 단계를 포함한다. 방법은, 신경 교정기/디노머(denormer)(300)를 사용하여, 중간 전사를 처리하여 기록된 도메인에서 발화의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하는 단계를 더 포함한다. 신경 교정기/디노머는 훈련 샘플 세트에 대해 훈련되며, 여기서 각 훈련 샘플은 훈련 발화에 대한 음성 인식 가설 및 훈련 발화의 GT 전사(424)를 포함한다. 훈련 발화의 GT 전사는 기록된 도메인에 있다. 방법은 또한 출력을 위해 기록된 도메인에서 발화의 숫자 시퀀스를 나타내는 최종 전사를 제공하는 단계를 포함한다.

Description

숫자 시퀀스에 대한 종단 간 자동 음성 인식
본 개시는 숫자 시퀀스에 대한 종단간 자동 음성 인식에 관한 것이다.
자동 음성 인식(ASR) 시스템에서 진행 중인 과제는 발화에서 말한 단어를 정확히 반영하지 않는 전사를 모델링하는 것이다. 특히 주소, 전화번호 및 우편번호와 같은 숫자 발화는 긴 기록된-도메인 숫자 시퀀스의 고유한 어휘 외 문제로 인해 전사를 모델링하는 데 특히 어려운 구성원이다. 이는 훈련 데이터에 긴 숫자 시퀀스가 없을 가능성이 높기 때문에 데이터 희소성의 결과이다.
예를 들어 10자리 숫자가 1010개의 가능한 인스턴스이기 때문에 긴 숫자 시퀀스에 대해 충분한 양의 훈련 데이터를 얻기가 어렵다. 예를 들어, 10자리 전화번호의 경우 훈련에서 특정 전화번호가 전혀 또는 충분한 양으로 표시될 가능성은 거의 없다.
최근에, 스트리밍, 순환 신경망 변환기(RNN-T), E2E(End-to-End)(종단간) 모델은 기존의 온-디바이스 모델에 비해 개선된 단어 오류율(WER) 및 레이턴시(latency) 메트릭을 나타내는 온-디바이스 음성 인식에 대한 큰 가능성을 보여주었다. AM, PM, LM을 하나의 네트워크로 폴드(fold)한 이러한 모델은 개별 AM, PM, LM을 갖는 기존 ASR 시스템에 비해 경쟁력 있는 결과를 보여주었다. RNN-T, E2E 모델은 비슷한 크기의 기존 온-디바이스 모델보다 성능이 우수하므로 온-디바이스 ASR에 특히 매력적이다.
순환 신경망 변환기(RNN-T), 종단 간(E2E) 모델이 온-디바이스 ASR에 매력적이지만, WFST(Weighted-Finite State Transducer) 기반 언어 변환기의 큰 메모리 풋프린트(footprint)는 온-디바이스 환경에서 음성 도메인 훈련을 더 어렵게 만든다. 숫자 시퀀스가 있는 발화에 대한 종단 간 모델 성능을 향상시키기 위해, 본 명세서에서 설명하는 향상된 ASR 시스템은 TTS(텍스트를 음성으로 변환) 시스템에서 생성된 추가 숫자 훈련 데이터를 사용한 다음 FST 대신 작은 공간 신경망을 사용하여 디노밍(denorming) 또는 수정을 수행한다. 이러한 향상된 접근 방식은 숫자 시퀀스의 여러 카테고리에서 측정 가능한 개선을 가져오고 더 긴 숫자 시퀀스에 대한 단어 오류율(WER)에서 상당한 개선을 나타낸다.
본 개시내용의 한 양태는 기록된 도메인에서 발화의 숫자 시퀀스를 나타내는 최종 전사를 생성하기 위한 방법을 제공한다. 방법은, 데이터 처리 하드웨어(610)에서, 숫자 시퀀스를 포함하는 발화(106)에 대한 오디오 데이터(110)를 수신하는 단계; 시퀀스 대 시퀀스 음성 인식 모델(200)을 사용하여, 데이터 처리 하드웨어(610)에 의해, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터의 출력으로서, 발화(106)의 중간 전사(115)를 생성하기 위해 발화(106)에 대한 오디오 데이터(110)를 디코딩하는 단계를 포함한다. 방법은, 데이터 처리 하드웨어(610)에 의해, 신경 교정기/디노머(denormer)(300)를 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 처리하여 기록된 도메인(written domain)에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하는 단계를 포함한다. 신경 교정기/디노머는 훈련 샘플 세트에서 훈련되고, 각 훈련 샘플은 해당 훈련 발화에 대한 음성 인식 가설(hypothesis) 및 해당 훈련 발화의 GT(ground-truth) 전사를 포함한다. 해당 훈련 발화의 GT 전사는 기록된 도메인에 있다. 방법은 또한 데이터 처리 하드웨어에 의해, 출력을 위해 기록된 도메인에서 발화의 숫자 시퀀스를 나타내는 최종 전사를 제공하는 단계를 더 포함한다.
본 개시의 구현은 다음의 선택적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현에서, 시퀀스 대 시퀀스 음성 인식 모델의 중간 전사 출력은 음성 도메인에 있고 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 샘플의 음성 인식 가설은 음성 도메인에 있다. 이러한 구현에서, 중간 전사를 처리하는 것은 기록된 도메인 디노밍(written domain denorming) 모델로서 신경 교정기/디노머를 사용하는 것을 포함하며, 기록된 도메인 디노밍 모델은, 음성 도메인에서 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사를 입력으로서 수신하고; 그리고 출력으로서, 기록된 도메인에서 발화의 최종 전사를 생성하도록 구성된다. 기록된 도메인에서 발화의 최종 전사는 해당 숫자 표현으로서 숫자의 시퀀스를 나타낸다.
다른 구현에서, 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사는 기록된 도메인에 있고, 숫자의 시퀀스를 숫자 단어로 나타내며; 그리고 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 예의 음성 인식 가설은 기록된 도메인에 있다. 이러한 구현에서, 중간 전사를 처리하는 것은 기록된 도메인 수정 모델로서 신경 교정기/디노머를 사용하는 것을 포함하며; 기록된 도메인 수정 모델은, 기록된 도메인에서 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사를 입력으로서 수신하고; 그리고 출력으로서, 최종 전사를, 초기 전사의 숫자 단어를 기록된 도메인의 숫자 시퀀스의 해당 숫자 표현으로 대체하는 수정된 전사로 생성하도록 구성된다. 일부 예에서, 기록된 도메인 수정 모델은, 출력으로서, 최종 전사를, 숫자 단어를 포함하는 중간 전사의 제1 부분만을 처리하고, 비-숫자 단어를 포함하는 중간 전사의 나머지 제2 부분을 처리하지 않음으로써 수정된 전사로 생성하도록 구성된다. 기록된 도메인 수정 모델은 중간 전사로부터의 비-숫자 단어를 수정된 전사로 카피하도록 구성될 수 있다.
일부 예에서, 데이터 처리 하드웨어 또는 데이터 처리 하드웨어와 통신하는 원격 컴퓨팅 장치는 동작들을 수행함으로써 시퀀스 대 시퀀스 음성 인식 모델 및 신경 교정기/디노머를 훈련(train)하도록 구성되며, 상기 동작들은, 복수의 훈련 발화 세트를 획득하는 동작을 포함하고, 각각의 훈련 발화 세트는 상이한 각각의 숫자 카테고리와 연관되고 그리고 복수의 각각의 전사 템플릿을 포함하고, 각 전사 템플릿은 숫자 슬롯 및 기록된 도메인에서의 각각의 디폴트 문구를 포함한다. 각 전사 템플릿에 대해, 데이터 처리 하드웨어 또는 원격 컴퓨팅 장치는 숫자 값의 하나 이상의 합성 음성 표현을 생성하고; 생성된 숫자 값의 하나 이상의 합성 음성 표현 각각에 대해, 숫자 값의 해당 합성 음성 표현을 해당 전사 템플릿의 슬롯에 주입(injecting)하여, 숫자 값의 해당 합성 음성 표현 및 해당 전사 템플릿에 대한 디폴트 문구의 가청 표현을 포함하는 고유한 훈련 발화를 생성한다. 마지막으로, 데이터 처리 하드웨어 또는 원격 컴퓨팅 장치는 각 훈련 발화 세트의 복수의 전사 템플릿 각각에 대해 생성된 숫자 값의 하나 이상의 합성 음성 표현 각각에 대해 생성된 고유한 훈련 발화에 대해 시퀀스 대 시퀀스 음성 인식 모델을 훈련시킨다. 이러한 예들에서, 전사 템플릿들 중 적어도 하나에 대응하는 디폴트 문구의 가청 표현은 디폴트 문구의 익명화된 비합성 음성 또는 합성 음성 표현을 포함할 수 있다. 추가로 또는 대안적으로, 고유한 훈련 발화의 기록된 도메인 전사는 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트의 훈련 샘플 중 각각의 GT 전사를 포함할 수 있다.
일부 구현에서, 시퀀스 대 시퀀스 음성 인식 모델은 순환 신경망 변환기(RNN-T), 종단 간 디코더 모델을 포함한다. 신경 교정기/디노머는 인코더 부분, 태거 부분, 및 어텐션/디코더 부분을 포함할 수 있다. 인코더 부분은 시퀀스 대 시퀀스 음성 인식 모델로부터 출력되는 중간 전사의 인코딩된 표현을 생성하도록 구성된다. 태거 부분은 중간 전사의 각 비-숫자 단어를 트리비얼(trivial)로 태그하고 중간 전사의 각 숫자 단어를 비-트리비얼로 태그 지정하도록 구성된다. 어텐션/디코더 부분은 기록된 도메인에서 발화의 숫자 시퀀스에 대한 숫자 표현을 얻기 위해 태거 부분에서 비-트리비얼 태그를 처리하도록 구성된다. 이러한 구현들에서, 인코더 부분은 양방향 순환 신경망(BiRNN)을 포함할 수 있고, 태거 부분은 순환 신경망(RNN)을 포함할 수 있고, 어텐션/디코더 부분은 BiRNN을 포함할 수 있다.
본 개시내용의 또 다른 양태는 기록된 도메인에서 숫자 시퀀스를 나타내는 최종 전사를 생성하기 위한 시스템을 제공한다. 시스템은 데이터 처리 하드웨어 및 데이터 처리와 통신하는 메모리 하드웨어를 포함한다. 메모리 하드웨어는 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은, 숫자 시퀀스를 포함하는 발화에 대한 오디오 데이터를 수신하는 동작; 시퀀스 대 시퀀스 음성 인식 모델을 사용하여, 시퀀스 대 시퀀스 음성 인식 모델의 출력으로서, 발화의 중간 전사를 생성하기 위해 발화에 대한 오디오 데이터를 디코딩하는 동작을 포함한다. 동작들은, 신경 교정기/디노머(denormer)를 사용하여, 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사를 처리하여 기록된 도메인(written domain)에서 발화의 숫자 시퀀스를 나타내는 최종 전사를 생성하는 동작을 포함한다. 신경 교정기/디노머는 훈련 샘플 세트에 대해 훈련되며, 여기서 각 훈련 샘플은 해당 훈련 발화에 대한 음성 인식 가설(hypothesis) 및 해당 훈련 발화의 GT(ground-truth) 전사를 포함한다. 해당 훈련 발화의 GT 전사는 기록된 도메인에 있다. 동작들은 출력을 위해 기록된 도메인에서 발화의 숫자 시퀀스를 나타내는 최종 전사를 제공하는 동작을 더 포함한다.
이 양태는 다음과 같은 선택적 구성 중 하나 이상을 포함할 수 있다. 일부 구현에서,시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사는 음성 도메인에 있고; 그리고 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 샘플의 음성 인식 가설은 음성 도메인에 있다. 이러한 구현에서, 상기 중간 전사를 처리하는 것은 기록된 도메인 디노밍(written domain denorming) 모델로서 신경 교정기/디노머를 사용하는 것을 포함하며, 기록된 도메인 디노밍 모델은, 음성 도메인에서 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사를 입력으로서 수신하고; 그리고 출력으로서, 기록된 도메인에서 발화의 최종 전사를 생성하도록 구성된다. 여기서, 기록된 도메인에서 발화의 최종 전사는 해당 숫자 표현으로서 숫자의 시퀀스를 나타낸다.
다른 구현에서, 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사는 기록된 도메인에 있고, 숫자의 시퀀스를 숫자 단어로 나타내며; 그리고 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 예의 음성 인식 가설은 기록된 도메인에 있다. 이러한 구현에서, 중간 전사를 처리하는 것은 기록된 도메인 수정 모델로서 신경 교정기/디노머를 사용하는 것을 포함하며; 기록된 도메인 수정 모델은, 기록된 도메인에서 시퀀스 대 시퀀스 음성 인식 모델로부터 출력된 중간 전사를 입력으로서 수신하고; 그리고 출력으로서, 최종 전사를, 초기 전사의 숫자 단어를 기록된 도메인의 숫자 시퀀스의 해당 숫자 표현으로 대체하는 수정된 전사로 생성하도록 구성된다. 일부 예에서, 기록된 도메인 수정 모델은, 출력으로서, 최종 전사를, 숫자 단어를 포함하는 중간 전사의 제1 부분만을 처리하고, 비-숫자 단어를 포함하는 중간 전사의 나머지 제2 부분을 처리하지 않음으로써 수정된 전사로 생성하도록 구성된다. 여기서, 기록된 도메인 수정 모델은 중간 전사로부터의 비-숫자 단어를 수정된 전사로 카피하도록 구성될 수 있다.
일부 예들에서, 데이터 처리 하드웨어 또는 데이터 처리 하드웨어와 통신하는 원격 컴퓨팅 장치는 제2 동작들을 수행함으로써 시퀀스 대 시퀀스 음성 인식 모델 및 신경 교정기/디노머를 훈련(train)하도록 구성되며, 상기 제2 동작들은, 복수의 훈련 발화 세트를 획득하는 동작을 포함하며, 각각의 훈련 발화 세트는 상이한 각각의 숫자 카테고리와 연관되고 그리고 복수의 각각의 전사 템플릿을 포함하고, 각 전사 템플릿은 숫자 슬롯 및 기록된 도메인에서의 각각의 디폴트 문구를 포함한다. 데이터 처리 하드웨어 또는 원격 컴퓨팅 장치는, 각 전사 템플릿에 대해: 숫자 값의 하나 이상의 합성 음성 표현을 생성하고; 생성된 숫자 값의 하나 이상의 합성 음성 표현 각각에 대해, 숫자 값의 해당 합성 음성 표현을 해당 전사 템플릿의 슬롯에 주입(injecting)하여, 숫자 값의 해당 합성 음성 표현 및 해당 전사 템플릿에 대한 디폴트 문구의 가청 표현을 포함하는 고유한 훈련 발화를 생성하도록 구성된다. 마지막으로, 데이터 처리 하드웨어 또는 원격 컴퓨팅 장치는 각 훈련 발화 세트의 복수의 전사 템플릿 각각에 대해 생성된 숫자 값의 하나 이상의 합성 음성 표현 각각에 대해 생성된 고유한 훈련 발화에 대해 시퀀스 대 시퀀스 음성 인식 모델을 훈련시킨다. 이러한 예들에서, 상기 전사 템플릿 중 적어도 하나에 대응하는 디폴트 문구의 가청 표현은 익명화된 비합성 음성을 포함할 수 있다. 추가로 또는 대안적으로, 고유한 훈련 발화의 기록된 도메인 전사는 신경 교정기/디노머를 훈련하는 데 사용되는 훈련 샘플 세트에서 훈련 샘플 중 각각의 하나의 GT(ground-truth) 전사를 포함할 수 있다.
일부 구현에서, 시퀀스 대 시퀀스 음성 인식 모델은 순환 신경망 변환기(RNN-T), 종단 간 디코더 모델을 포함한다. 신경 교정기/디노머는 인코더 부분, 태거 부분, 및 어텐션/디코더 부분을 포함할 수 있다. 인코더 부분은 시퀀스 대 시퀀스 음성 인식 모델로부터 출력되는 중간 전사의 인코딩된 표현을 생성하도록 구성된다. 태거 부분은 중간 전사의 각 비-숫자 단어를 트리비얼로 태그하고 중간 전사의 각 숫자 단어를 비-트리비얼로 태그하도록 구성된다. 어텐션/디코더 부분은 기록된 도메인에서 발화의 숫자 시퀀스에 대한 숫자 표현을 얻기 위해 태거 부분에서 비-트리비얼 태그를 처리하도록 구성된다. 이러한 구현들에서, 인코더 부분은 양방향 순환 신경망(BiRNN)을 포함할 수 있고, 태거 부분은 순환 신경망(RNN)을 포함할 수 있고, 어텐션/디코더 부분은 BiRNN을 포함할 수 있다.
본 개시내용의 하나 이상의 구현의 세부사항은 첨부 도면 및 아래의 설명에 기재되어 있다. 다른 양태, 특징 및 이점은 설명 및 도면, 그리고 청구범위로부터 명백할 것이다.
도 1은 숫자 시퀀스의 인식을 향상시키기 위한 신경 교정기/디노머를 포함하는 음성 인식 시스템의 개략도이다.
도 2는 RNN-T(Recurrent Neural Network Transducer) 모델 아키텍처의 개략도이다.
도 3은 음성 인식 모델로부터 출력된 기록된-도메인 전사를 수정하는 신경 교정기/디노머의 개략도이다.
도 4는 신경 교정기/디노머를 훈련하기 위한 예시적인 훈련 프로세스의 개략도이다.
도 5는 기록된 도메인에서 숫자 시퀀스를 나타내는 최종 전사를 생성하는 방법에 대한 예시적인 동작 배열의 흐름도이다.
도 6은 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치의 개략도이다.
다양한 도면에서 동일한 참조 부호는 동일한 요소를 나타낸다.
사용자가 "내 전화번호는 650-555-1212"라는 단어의 시퀀스(순서)를 말할 때, ASR 시스템은 소위 "음성 도메인(spoken domain)", 즉 해당 단어가 실제로 말하는 대로 음성, 숫자 시퀀스("My Phone Number is Six Five Oh Five Five Five One Two One Two(내 전화 번호는 식스 파이브 제로 파이브 파이브 원 투 원 투이다)”)의 전사를 출력하거나, 또는 단어가 기록으로 재현될 가능성이 높기 때문에, 소위 "기록된 도메인(written domain)"에서 숫자 시퀀스(“My phone number is 650-555-1212(내 전화 번호는 650-555 -1212이다)”)의 전사를 출력할 수 있다. ASR 시스템은 기록된 도메인에서 숫자 시퀀스의 전사를 출력할 수 있지만, 전사는 의도한 대로 해당 숫자 표현((예: '650-555-1212'))이 아니라 숫자 단어(예: "식스 파이브 제로 파이브 파이브 원 투 원 투")로 숫자 시퀀스를 나타낼 수 있다. 주소, 전화번호 및 우편번호에 포함된 것과 같은 다른 숫자 시퀀스는 종종 다른 음성 도메인 및 기록된 도메인 전사를 갖는다.
ASR 시스템은 특히 LWD(long written domain) 숫자 시퀀스의 고유한 어휘 외("OOV: out-of-vocabulary") 문제로 인해 훈련(train) 중에 동일한 숫자 시퀀스가 표시되지 않는 경우 숫자 시퀀스로 발화를 적절하게 전사하는 것이 어려울 수 있다. 이 문제는 데이터 희소성 문제, 즉 훈련 데이터에 긴 숫자 시퀀스가 충분하지 않기 때문에 발생한다.
예를 들어 10자리 숫자가 1010개의 가능한 인스턴스이기 때문에 긴 숫자 시퀀스에 대해 충분한 양의 훈련 데이터를 얻기가 어렵다. 예를 들어, 10자리 전화번호의 경우 훈련에서 특정 전화번호가 전혀 또는 충분한 양으로 표시될 가능성은 거의 없다.
OOV 문제는 숫자 시퀀스가 어휘 내 철자 번호로 구성된(예: 숫자 단어) 음성 도메인 발화에 대한 음향 모델(AM: acoustic model) 및/또는 발음 모델(PM: pronunciation model)을 훈련한 다음 음성 도메인 결과를 기록된 도메인으로 수정(또는 "디노밍(denormalize 또는 denorm")하기 위해 클래스 기반 언어 모델 전에 WFST(weighted finite state transducer) 버벌라이저(verbalizer)를 삽입(inserting)하여 기존 ASR 시스템에서 해결된다. 불행히도 기존 ASR 모델과 WFST 버벌라이저는 온-디바이스 ASR의 낮은 메모리 제약 조건에 적합하지 않다. 또한, 버벌라이저와 클래스 기반 LM이 미리 정의된 규칙 세트를 사용하기 때문에 이러한 컴포넌트는 훈련 데이터의 변화에 잘 확장되지 않는다.
최근에, 스트리밍, RNN-T(Recurrent Neural Network Transducer), E2E(End-to-End) 모델은 기존의 온-디바이스 모델에 비해 개선된 단어 오류율(WER) 및 레이턴시 메트릭을 보여줌으로써 온-디바이스 음성 인식에 대한 큰 가능성을 보여주었다. AM, PM 및 LM을 단일 네트워크로 폴드(fold)한 이러한 모델은 별도의 AM, PM 및 LM을 갖는 기존 ASR 시스템과 비교하여 경쟁력 있는 결과를 보여준다. RNN-T, E2E 모델은 비슷한 크기의 기존 온-디바이스 모델을 능가할 수 있기 때문에 온-디바이스 ASR에 특히 매력적이다.
도 1을 참조하면, 일부 구현에서, ASR(Automated Speech Recognition) 시스템(100)은 숫자 시퀀스를 인식하도록 향상된다. 표시된 예에서, ASR 시스템(100)은 사용자(104)의 사용자 장치(102) 및/또는 사용자 장치와 통신하는 원격 컴퓨팅 장치(201)(예: 클라우드 컴퓨팅 환경에서 실행되는 분산 시스템의 하나 이상의 서비스)에 상주한다. 사용자 장치(102)가 모바일 컴퓨팅 장치(예를 들어, 스마트 폰)로서 도시되어 있지만, 사용자 장치(102)는 태블릿 장치, 랩톱/데스크톱 컴퓨터, 웨어러블 장치, 디지털 보조 장치, 스마트 스피커/디스플레이, 스마트 기기, 자동차 인포테인먼트 시스템 또는 사물 인터넷(IoT)과 같은(이에 국한되지 않음) 임의의 유형의 컴퓨팅 장치에 대응할 수 있다.
사용자 장치(102)는 사용자(104)에 의해 발언된 발화(106)을 수신하고 ASR 시스템(100)에 의해 처리될 수 있는 파라미터화된 입력 음향 프레임(110)과 연관된 해당 디지털 형식으로 발화(106)을 변환하도록 구성된 오디오 서브시스템(108)을 포함한다(예를 들어, 사용자 장치(102)는 발화(106)를 녹음하기 위한 하나 이상의 마이크로폰을 포함할 수 있음). 표시된 예에서, 사용자는 "My Phone Number is Six Five Oh Five Five Five One Two One Two(내 전화번호는 식스 파이브 오 파이브 파이브 원 투 원 투(육 오 영 오 오 오 영 이 일 이)이다)"와 같이 음성 도메인에서 전사될 문구에 대해 각각의 발화(106)를 말하고, 오디오 서브시스템(108)은 발화(106)를 ASR 시스템(100)에 대한 입력을 위해 해당 음향 프레임(110)으로 변환한다. 예를 들어, 음향 프레임(110)은 80차원(80-dimensional) 로그-멜(log-Mel) 특징을 각각 포함하는 일련의 파라미터화된 입력 음향 프레임일 수 있고, 예를 들어, 25ms의 짧은 윈도우로 계산되고, 예를 들어 10밀리초마다 시프트될 수 있다.
그 후, ASR 시스템(100)은 발화(106)에 대응하는 음향 프레임(110)을 입력으로 수신하고, 기록된 도메인에서 발화(106)에 대한 해당 전사(120)(예: 인식 결과/가설(hypothesis)), 즉 "My phone number is (650) 555-1212”를 출력으로서 생성/예측한다. 도시된 예에서, 사용자 장치(102) 및/또는 원격 컴퓨팅 장치(201)는 또한 사용자 장치(102)의 사용자(104)에게 발화(106)의 전사(120)의 표현을 제시하도록 구성된 사용자 인터페이스 생성기(107)를 실행한다.
일부 구성에서, ASR 시스템(100)으로부터 출력된 전사(120)는 사용자 명령을 실행하기 위해, 예를 들어 사용자 장치(102) 또는 원격 컴퓨팅 장치(201) 상에서 실행되는 자연어 이해(NLU: natural language understanding) 모듈에 의해 처리된다. 추가로 또는 대안적으로, 텍스트-음성변환 시스템(text-to-speech system)(예를 들어, 사용자 장치(104) 또는 원격 컴퓨팅 장치(201)의 임의의 조합에서 실행하는)은 다른 장치에 의한 가청 출력을 위해 전사를 합성 음성으로 변환할 수 있다. 예를 들어, 원본(original) 발화(106)는 원본 발화(106)에서 전달된 메시지를 듣기 위해 친구에게 가청 출력을 위해 전사(120)가 합성된 음성로 변환되는 사용자(104)가 친구에게 보내는 메시지에 대응할 수 있다.
특히, 향상된 ASR 시스템(100)은 디코더(200) 및 신경 교정기(corrector)/디노머(denormer)(300)를 포함한다. 디코더(200)는 입력으로서 파라미터화된 입력 음향 프레임(110)을 수신하고, 음성 도메인 또는 기록된 도메인에서 발화(105)를 나타내는 중간 전사(115)를 출력으로서 생성하도록 구성된다. 신경 교정기/디노머(300)는 디코더(200)로부터 출력된 중간 전사(115)를 수신하고, 기록된 도메인-기록된 도메인 수정(written domain-to-written domain correction) 또는 음성 도메인-기록된 도메인 디노밍(spoken domain-to-written domain denorming) 중 하나를 수행하도록 구성된다. 예를 들어, 중간 전사(115)가 음성 도메인에 있고 그리고 신경 교정기/디노머(300)가 신경 디노머(neural denormer)로 구성된 경우, 신경 교정기/디노머(300)는 음성 도메인의 중간 전사(115)를 입력으로서 수신하도록 구성되고, 출력으로서 기록된 도메인의 발화(106)에 대한 전사(120), 즉 "My phone number is (650) 555-1212"라는 텍스트를 생성한다. 반면에, 중간 전사(115)가 기록된 도메인에 있고 그리고 신경 교정기/디노머(300)가 신경 교정기(neural corrector)로 구성된 경우, 신경 교정기/디노머(300)는 입력으로서 기록된 도메인의 중간 전사(115)를 수신하고, 출력으로서, 발화(106)에 대한 "수정된(교정된)(corrected)" 기록된 도메인 전사로서 전사(120)를 생성하도록 구성된다. 여기서, 기록된 도메인의 중간 전사(115)는 숫자 시퀀스가 "Six Five Zero Five Five One Two One Two"와 같이 스펠링되도록 숫자 시퀀스를 숫자 단어로 나타낼 수 있으며, 이에 의해 신경 교정기(300)는 "650-555-1212"의 해당 숫자 표현이 디코더(200)로부터 출력된 중간 전사(115)로부터의 어휘 숫자 단어 표현에서 철자를 대체하도록 기록된 도메인에서 "수정된" 전사(120)를 생성한다.
일부 구현에서, 강화된(향상된) ASR 시스템(100)은 TTS(text-to-speech)(텍스트-음성변환) 시스템(412)(도 4)에 의해 생성된 추가적인 숫자 훈련 데이터(416)(도 4)에 대해 훈련되고, FST 기반 버벌라이저(언어화기) 대신에 신경 교정기/디노머(300)를 사용하여 숫자 시퀀스를 갖는 훈련 발화(402)(도 4)에 대한 E2E 모델 성능을 향상시킨다. 이러한 향상된 접근 방식은 여러 카테고리의 숫자 시퀀스에서 측정 가능한 개선을 가져오고 더 긴 숫자 시퀀스의 경우 WER에서 상당한 개선을 나타낸다. 신경 교정기/디노머(300)는 온-디바이스 환경에서 사용하기에 적합한(예를 들어, 사용자 장치(102)에서 로컬로) 신경 교정기/디노머(300)가 디코더(200)로부터 출력된 중간 전사(115)에 대해 교정 또는 디노밍을 수행할 수 있도록 하는 작은 풋프린트(small-footprint) 신경망을 포함한다. FST 기반 버벌라이저와 관련된 큰 풋프린트는 낮은 메모리 제약으로 인해 온-디바이스 ASR 환경에서 사용을 금지한다. 또한 FST 기반 버벌라이저는 훈련 데이터의 변경 사항에 잘 확장되지 않는 미리 정의된 규칙 세트를 사용한다.
도 2에 도시된 바와 같이, 디코더(200)는 대화형 애플리케이션과 관련된 레이턴시 제약을 준수하는 RNN-T 모델(200), E2E를 포함할 수 있다. RNN-T 모델(200)은 작은 계산 풋프린트를 제공하고 그리고 기존의 ASR 아키텍처보다 적은 메모리 요구량을 활용하여, RNN-T 모델 아키텍처를 사용자 장치(102)(예: 원격 서버와의 통신이 필요하지 않음)에서 완전히 음성 인식을 수행하는 데 적합하게 만든다. RNN-T 모델(200)은 인코더 네트워크(인코더)(210), 예측 네트워크(220) 및 조인트 네트워크(230)를 포함한다. 전통적인 ASR 시스템의 음향 모델(AM)과 대략 유사한 인코더 네트워크(210)는 적층된 LSTM(Long Short-Term Memory) 계층의 순환 네트워크를 포함한다. 예를 들어, 인코더는 d-차원 특징 벡터의 시퀀스(예를 들어, 음향 프레임(110)(도 1))(
Figure pct00001
)를 판독하고(여기서,
Figure pct00002
), 각 시간 단계에서 고차 특징 표현(higher-order feature representation)을 생성한다. 고차 특징 표현은
Figure pct00003
로 표시된다.
비슷하게, 예측 네트워크(220)는 또한 언어 모델(LM: language model)과 마찬가지로 지금까지 최종 소프트맥스(Softmax) 계층(240)에 의해 출력된 넌-블랭크(non-blank) 심볼의 시퀀스(
Figure pct00004
)를 덴스(dense) 표현(Pui)으로 처리하는 LSTM 네트워크이다. 마지막으로, RNN-T 모델 아키텍처와 함께 인코더 및 예측 네트워크(210, 220)에 의해 생성된 표현은 조인트(joint) 네트워크(230)에 의해 결합된다. 그러면 조인트 네트워크는
Figure pct00005
를 예측하고, 이는 다음 출력 심볼에 대한 분포이다. 다르게 말하면, 조인트 네트워크(230)는 각각의 출력 단계(예를 들어, 시간 단계(time step))에서 가능한 음성 인식 가설에 대한 확률 분포를 생성한다. 여기서, "가능한 음성 인식 가설"은 지정된 자연어에서 심볼/문자를 각각 나타내는 출력 레이블의 세트에 해당한다. 따라서, 조인트 네트워크(230)는 미리 결정된 출력 레이블 세트 각각의 발생 가능성을 나타내는 값 세트를 출력할 수 있다. 이 값 세트는 벡터가 될 수 있으며 출력 레이블 세트에 대한 확률 분포를 나타낼 수 있다. 어떤 경우에는 출력 레이블이 그래핌(graphemes)(예: 개별 문자, 잠재적으로 구두점(punctuation) 및 기타 심볼)이지만 출력 레이블 세트는 그렇게 제한되지 않는다. 조인트 네트워크(230)의 출력 분포는 상이한 출력 레이블들 각각에 대한 사후 확률 값을 포함할 수 있다. 따라서, 상이한 그래핌 또는 다른 심볼를 나타내는 100개의 상이한 출력 레이블이 있는 경우, 결합 네트워크(230)의 출력 yi는 각 출력 레이블에 대해 하나씩 100개의 상이한 확률 값을 포함할 수 있다. 그런 다음 확률 분포를 사용하여 중간 전사를 결정하기 위한 빔 검색 프로세스(예를 들어, Softmax 계층(레이어)(240)에 의해)에서 후보 정사표 요소(orthgraphic elements)(예: 그래핌, 단어 조각(wordpieces) 및/또는 워드)에 점수를 선택하고 할당할 수 있다.
소프트맥스(Softmax) 계층(240)은 분포에서 가장 높은 확률을 갖는 출력 레이블/심볼을 해당 출력 단계에서 모델(200)에 의해 예측된 다음 출력 심볼로 선택하기 위해 임의의 기술을 사용할 수 있다. 이러한 방식으로, RNN-T 모델(200)은 조건부 독립 가정을 하지 않으며, 오히려 각 심볼의 예측은 음향뿐만 아니라 지금까지 출력된 레이블의 순서에 따라 조절된다. RNN-T 모델(200)은 출력 심볼이 미래의 음향 프레임(110)과 독립적이라고 가정하고, 이는 RNN-T 모델이 스트리밍 방식으로 사용될 수 있게 한다.
일부 예에서, RNN-T 모델(200)의 인코더 네트워크(210)는 8개의 2,048-차원 LSTM 계층으로 구성되고, 각각은 640-차원 투영 계층(640-dimensional projection layer)이 뒤따른다. 모델 레이턴시를 줄이기 위해 인코더의 제2 LSTM 계층 뒤에 2의 감소 계수(reduction factor)를 갖는 시간 감소 계층(time-reduction layer)을 삽입할 수 있다. 예측 네트워크(220)는 2개의 2,048-차원 LSTM 계층을 가질 수 있고, 이들 각각은 또한 640-차원 투영 계층이 뒤따른다. 마지막으로, 조인트 네트워크(230)는 또한 640개의 은닉 유닛을 가질 수 있고, 4,096 워드피스(단어조각) 소프트맥스 출력이 뒤따를 수 있다.
도 3은 향상된 ASR 시스템(100)의 RNN-T, E2E 디코더(200)로부터 수신된 출력에 대한 후처리 연산으로서 신경 교정 또는 신경 디노밍를 수행하기 위한 도 1의 향상된 ASR 시스템(100)의 신경 교정기/디노머(300)에 대한 예시적인 아키텍처를 도시한다. 신경 교정기/디노머(300)를 위한 아키텍처는 인코더 부분(Encoder)(310), 태거 부분(Tagger)(320), 및 어텐션/디코더 부분(330)을 포함한다. 일부 예에서, 인코더 부분(310)은 256차원 은닉 상태를 방출하는 256 유닛을 갖는 양방향 단일계층 GRU(Gated Recurrent Unit) 인코더(310)를 포함하는 양방향 RNN(BiRNN)이다. 태거 부분(320)은 64개 유닛을 갖는 단일 계층(레이어) GRU를 포함하는 RNN일 수 있고, 어텐션/디코더 부분(330)은 256 유닛을 갖는 양방향 단일 레이어 GRU일 수 있다. 도 2는 신경 교정의 관점에서 일차적으로 신경 교정기/디노머(300)를 설명하지만, 신경 교정기/디노머(300)는 추가로 또는 대안적으로 신경 디노밍(neural denorming)을 위해 사용될 수 있다. 표시된 예에서 "T"는 트리비얼(trivial)을 나타내고, "N"은 비-트리비얼(non-trivial)을 나타내고, "S"는 시작(start)을 나타내고, "C"는 계속(continuation)을 나타낸다.
신경 교정기(neural corrector)로 구현하면, 신경 교정기/디노머(300)는 입력으로서 RNN-T, E2E 디코더(200)에 의해 생성된 중간 전사(115), 기록된 도메인을 수신하고 그리고 출력으로서 수정된 기록된 도메인 전사(120)(예를 들어, 최종 전사(120))를 생성하는 기록된 도메인 수정 모델(300)에 대응한다. 신경 디노머로 구현하면, 신경 교정기/디노머(300)는 RNN-T, E2E 디코더(200)에 의해 생성된 음성 도메인, 중간 전사(115)를 입력으로서 수신하고, 출력으로서 기록된 도메인 전사(120)(예: 최종 전사 120)를 생성하는 기록된 도메인 디노밍 모델(300)에 대응한다. 따라서 신경 교정기로 구현하든 디노머로 구현하든, 신경 교정기/디노머(300)의 아키텍처는 다른 시퀀스 대 시퀀스 모델, 즉 RNN-T, E2E 디코더(200)로부터 출력을 수신하는 어텐션-기반(attention-based) 시퀀스 대 시퀀스 모델을 제공한다.
표시된 예에서, 신경 교정기/디노머(300)의 아키텍처는 입력(115)의 많은 단어들, 예를 들어 "wake me up at"와 같은 기록된 도메인은 문구는 수정(교정) 동안 "wake me up at"과 같이 기록된 도메인 출력(120)으로 단순히 카피된다는 사실을 고려하여 수정 컨텍스트에 추가로 적응된다. 구체적으로, 태거 RNN(320)은 중간 전사(115)의 입력 시퀀스에서 단어를 "트리비얼(trivial)(예: 수정이 필요하지 않음)"로 태그함으로써(이 경우 단어는 단순히 출력, 기록된 도메인 전사(120)의 기록된 도메인 시퀀스로 카피될 수 있음) 또는 "비-트리비얼(non-trivial)(예: 수정이 필요함)"로 태그함으로써(이 경우 단어는 어텐션/디코더 부분(330)으로 전달됨) 어텐션/디코더 부분(330) 이전의 입력 시퀀스에서 실행되도록 훈련된다. 수정(교정)을 수행하는 것에 추가하여, 기록된 도메인 수정 모델(300)은 또한 제2 패스 설정(second-pass setting)에서 n-베스트 목록(n-best list)의 순위를 재지정하는 데 사용될 수 있다.
일부 구성에서, 모든 입력에 대해 실행되는 모델(300)의 인코더/태거 부분(303, 304)은 약 4백만 개의 파라미터를 포함하는 반면, 모델(300)의 어텐션/디코더 부분(301)은 수정을 위해 표시된 텍스트 범위(text spans)에 대해서만 실행되며, 약 6백만 개의 파라미터가 포함되어 있다. 신경 수정 모델의 작은 풋프린트는 온-디바이스 컨텍스트에 매력적이다. 이 모델은 텐서플로우(Tensorflow)에서 구현되며, 배치 크기(batch size)가 16인 12개의 GPU(그래픽 처리 장치)에서 비동기식으로 훈련(학습)된다. 대조적으로, ASR 시스템의 E2E, RNN-T 디코더(200)는 약 1억 1400만 파라미터를 포함한다.
일 예에서, 입력 시퀀스 x = {x1,...,xI}는 출력, 기록된 도메인 시퀀스 y = {y1,...,yT}에 매핑되며, 여기서 시퀀스 어휘는 단어로 구성된다. 예를 들어, 기록된 도메인 시퀀스에서 숫자 "4" 및 "30"과 관련된 출력 레이블은 각 숫자가 "four(사)" 및 "thirty(삼십)"로 철자가 되도록 숫자 단어로 표시된다. BiRNN 인코더(310)는 수학식 1과 같이 정의된다.
Figure pct00006
여기서 h= h1,...,hI는 은닉 인코더 상태이다.
태거 RNN(320)은
Figure pct00007
로 정의되며, s = si, ...,sI는 태그 시퀀스(t = ti, ..., tI)와 같은 해당 관측치(observations)가 있는 은닉 태거 상태이다. 각 태그(ti)는 단어가 수정해야 하는 새 세그먼트의 시작인지 또는 이전 세그먼트의 계속(continuation)인지 여부를 모델링하기 위해 {trivial, non-trivial} × {start, Continuation}의 외적 세트(cross-product set)에서 조인된(결합된) 태그이다. 이 개선을 통해 연속적인 비-트리비얼 세그먼트를 모델링할 수 있다. 태거 RNN(320)의 학습 목표는 수학식2로 표현될 수 있다.
Figure pct00008
여기서 P는 s 다음에 소프트맥스 레이어(계층)가 오는 선형 투영으로 정의된다. 태거 RNN(320)을 훈련하기 위한 정렬(Alignments)은 입력 및 출력 전사(115, 120)에 공통적인 서브시퀀스를 결정하는 휴리스틱 정렬 기술(heuristic alignment technique)을 사용하여 획득될 수 있다. 이러한 공통 서브시퀀스는 "트리비얼"로 표시된다(예: 수정이 필요하지 않음). 예를 들어, 일반적인 서브시퀀스는 일반적으로 숫자가 아닌 단어를 포함할 수 있다. 도시된 예에서, 태거 RNN(320)에 의해 "트리비얼"로 마킹/태깅된 공통 서브시퀀스는 "Wake me up at"이라는 단어 시퀀스를 포함한다. 여기에서 "Wake me up at"이라는 문구는 기록된 도메인에 있고, 수정이 필요하지 않기 때문에, 문구는 수정된 기록된 도메인 전사(120)의 일부를 형성하기 위해 출력으로 카피될 수 있다.
기록된 도메인 수정 모델(300)은 비-트리비얼로 표시된 중간 전사(115)에서 숫자 단어 "four" 및 "thirty"와 같은 수정될 텍스트 스니펫(snippets)을 추출하기 위해 태거 RNN(320)의 결과를 사용한다. 예를 들어, 텍스트 스니펫이 시간 s에서 e까지인 경우 입력은 컨텍스트 은닉 상태(
Figure pct00009
Figure pct00010
)와 함께 {xs, ..., xe}에 걸쳐 있으며 다음 스테이지(stage) 어텐션 모델에 대한 입력이 된다. BiRNN 인코더(310)는 {xs, ..., xe}에 걸쳐 RNNmid로 정의된다. 마지막으로, 어텐션/디코더 부분(RNNdec)(330)은
Figure pct00011
로 정의되며, 여기서
Figure pct00012
Figure pct00013
Figure pct00014
의 어텐션 함수의 결과이다. 2차원 인덱스(i, t)는 t가 입력 시퀀스의 주어진 위치 i(s, e)에 상대적임을 나타낸다. 어텐션/디코더부(330)의 학습 목표는 수학식3으로 표현될 수 있다.
Figure pct00015
따라서, 태거 RNN(320)의 결과는 신경 교정기/디노머(300)의 어텐션/디코더 부분(330)이 중간 전사(115)의 모든 텍스트보다 적은 부분에 적용될 수 있게 하며(예, 텍스트의 관련 범위에만 적용되므로), 이에 따라 정확도가 향상되고 레이턴시, 비용 및 계산 비용이 감소한다. 예를 들어, 표시된 예에서, 수정할 텍스트의 관련 범위(예: 수정해야 할 스니펫)에는 숫자 단어 "four" 및 "thirty"가 포함되며, 이에 의해 어텐션/디코더(330)는 "4:30"이 되도록 "four" 및 "thirty"을 수정하여 숫자 표현 "4:30"이 이제 최종 전사(120)의 숫자 시퀀스를 나타내도록 한다. 특히, 모델(300)은 통화 심볼, 시간에 대한 콜론 등과 같은 숫자 시퀀스와 관련된 적절한 심볼/문자도 삽입하도록 훈련된다. 여기에서 수정된 부분 "4:30"이 복사된 부분 "Wake me up at"에 추가되어 완전한 수정된 기록된 도메인 최종 전사(120)를 제공한다.
신경 교정기/디노머(300)를 훈련하는 동안, 수학식 2와 3에 표현된 두 개의 학습 목표는 선형으로 결합될 수 있는 두 개의 교차 엔트로피 손실로 변환된다. 신경 교정기/디노머(300)의 추론(inference)(즉, 디코딩 시간) 동안, 어텐션/디코더 부분(330) 및 태거 RNN(320)은 어텐션/디코더 부분(330)이 태거 RNN(320)에 의해 요구되는 대로, 즉 태거 RNN(320)이 중간 전사(115)의 단어를 "비-트리비얼"(예: 수정이 필요하지 않음)로 태깅할 때만 사용되도록 파이프라인으로 작동한다.
도 1 및 도 4에 도시된 바와 같이, 향상된 ASR 시스템(100)은 여러 향상들 중 하나 이상을 적용함으로써 숫자 시퀀스에 대한 음성 인식 성능인 E2E를 향상시킬 수 있다. 예를 들어, 합성 훈련 데이터(422)는 기록된 도메인 숫자 시퀀스에 대한 추가 훈련 데이터(422)를 합성하기 위해 TTS 시스템(412)을 사용함으로써 데이터 희소성 문제를 성공적으로 해결하기 위해 사용될 수 있다. 그렇게 함으로써, 합성된 음성 훈련 데이터(422)는 해당 카테고리의 모델 적용 범위를 개선하기 위해 숫자 시퀀스의 챌런지 카테고리(challenging categories)에 대해 생성될 수 있다.
데이터 희소성(sparsity) 또는 OOV 문제는 추가로 또는 대안적으로 신경 교정 네트워크(예: 신경 교정기/디노머(300))의 사용을 통해 해결될 수 있으며, 이는 기록된 도메인 GT(ground truth) 전사/RNN-T 기록된 도메인 가설 쌍(115, 424)에 대해 훈련되며 실수를 수정하는 방법을 학습할 수 있다. 다른 예에서, RNN-T, E2E 디코더(200)는 음성 도메인에서 숫자 시퀀스를 출력하고 기록된 도메인으로 다시 디노밍(denorm)하도록 훈련된다. 다양한 구현에서, 이러한 접근은 FST-기반 디노머 또는 기록된 도메인 수정 모델에 기반한 신경 디노머를 사용하여 구현될 수 있다.
위에서 언급한 바와 같이, 일부 예에서, ASR 시스템(100)은 기록된 도메인 숫자 시퀀스에 대한 추가 훈련 데이터(416, 422)를 합성하기 위해 TTS 시스템(412)을 사용하여 훈련 데이터(402)를 증대함으로써 이점을 얻음으로써, RNN-T, E2E 디코더(200)의 "롱테일(long tail)" 데이터 희소성 문제를 해결한다. 이러한 "롱테일" 데이터 희소성 문제를 해결하기 위해, 도전적이면서도 현실적인 숫자 시퀀스를 나타내는 추가 훈련(트레이닝) 데이터(416, 422)가 생성될 수 있다. 이를 위해 디지털 어시스턴트 요청 또는 검색 엔진과 같이 로그에서 자주 볼 수 있는 숫자 시퀀스의 카테고리를 식별할 수 있다.
도 4는 기록된 도메인에서 숫자 시퀀스의 다양한 카테고리를 표현하는 것을 학습하도록 신경 디코더/인코더(200)를 훈련하기 위한 추가 훈련 데이터(416, 422)를 획득하기 위한 예시적인 프로세스(400)를 도시한다. 원격 컴퓨팅 장치(201)(예를 들어, 서버)는 프로세스(400)를 실행하고 그에 따라 모델(200, 300)을 훈련할 수 있다. 스테이지(stage) 1에서, 프로세스(400)는 각각이 상이한 각각의 숫자 카테고리 A-N과 연관되고 복수의 개별 전사 템플릿(transcript templates)(404, 404a-n)을 포함하는 복수의 훈련 발화 세트(402, 402A-N)를 획득한다. 예를 들어, 숫자 시퀀스의 서로 다른 각각의 숫자 카테고리(numeric categories)는 "일(Day)" 카테고리, "퍼센트(Percent)" 카테고리, "우편 번호(Postal Code)" 카테고리, "시간(Time)" 카테고리 또는 "연도(Year)" 카테고리를 제한 없이 포함할 수 있다. 표 1은 특히 다양한 숫자 범위 또는 크기를 나타내는 카테고리를 포함하여 숫자 시퀀스의 여러 카테고리를 보여준다.
Figure pct00016
표1: 샘플 TTS 발화 카테고리와 샘플 합성 숫자
스테이지 1은 기록된 도메인의 각각의 디폴트 문구(406)와 숫자 슬롯(408)을 포함하는 각 전사 템플릿(404)을 보여준다. 각각의 고유한 전사 템플릿(404) 내의 각각의 디폴트 문구(406)는 익명화된 비합성 발화로부터의 음성 샘플, 예를 들어 "(음성(spoken))...에 대한 두 번째 경보 설정(set second alarm for...)"과 같은 음성 샘플을 나타낼 수 있다. 일부 예들에서, 하나 이상의 전사 템플릿(404)은 디폴트 문구(406)의 합성 음성 표현을 생성하기 위해 TTS 시스템(412)에 대한 입력으로서 제공되는 해당 기록된 디폴트 문구(406)를 포함할 수 있다. 스테이지 2에서, 각 전사 템플릿(404)에 대해, 프로세스(400)는 숫자 값(예를 들어, (음성(spoken)) "four thirty", (음성) "four thirty one", (음성) "four thirty two" 등)의 하나 이상의 합성 음성 표현(416)을 생성하고, 그리고 생성된 숫자 값의 하나 이상의 합성 음성 표현(416) 각각에 대해, 숫자 값의 해당 합성 음성 표현(416)을 해당 전사 템플릿(404)의 슬롯(408)에 주입(inject)하여 고유한 훈련 발화(422)을 생성한다. 고유한 훈련 발화(422)는 숫자 값의 해당 합성 음성 표현(412) 및 해당 전사 템플릿(404), 예를 들어 "(음성)four thirty"에 대한 디폴트 문구(406)의 가청 표현, 예를 들어 "...에 대한 두 번째 알람 설정(set second alarm for...)"을 포함한다.
스테이지 2에서, 프로세스(400)는 해당 훈련 숫자 값 입력 텍스트(410)에 기초하여 숫자 값의 각각의 합성 음성 표현(416)을 생성하기 위해 TTS 시스템(412)을 구현할 수 있다. TTS 시스템(412)은 음소에 따라 조절되는 멜-스펙트로그램 및 훈련 동안 각 화자에 대해 학습되는 n차원 화자 임베딩을 생성하는 다중 화자 TTS 시스템을 포함할 수 있다. 일부 예에서 n은 256과 같다. 여기서, 예측된 멜-스펙트로그램은 "WaveRNN" 신경 보코더(neural vocoder)를 사용하여 시간-도메인(time-domain) 파형으로 반전될 수 있다. MTR(Multi-style training)을 사용하여 합성 오디오에 인공 노이즈를 추가할 수 있다. TTS 훈련 데이터에는 단일 언어 또는 여러 언어의 화자 또는 단일 억양을 공유하거나 여러 다른 억양을 가진 화자의 오디오 데이터가 포함될 수 있다. 추론하는 동안 입력, 텍스트 숫자 시퀀스가 음소에 매핑되고 화자가 무작위로 선택된다.
또한, 스테이지 2에서, 프로세스(400)는 TTS 시스템(412)으로부터 출력된 숫자 값의 각각의 합성 음성 표현(416)을 입력으로서 수신하고, 합성 음성 표현(416)을 디폴트 문구(406)와 연관된 슬롯(408)에 주입함으로써 고유한 훈련 발화(422)를 출력으로서 제공하도록 구성된 주입기(injector)(420)를 구현할 수 있다. 이러한 주입은 음성 도메인에 가중치가 부여된 숫자 WFST 문법에서 가중치 샘플링을 수행하여 발생할 수 있다. 슬롯(408)은 템플릿(404)에서 디폴트 문구(406)를 따르는 것으로 도시되지만, 슬롯(408)은 디폴트 문구(406) 앞에 있을 수 있거나 디폴트 문구(406)의 시작과 끝 사이에 산재될 수 있다.
일부 예들에서, 전사 템플릿들(404) 중 적어도 하나에 대응하는 디폴트 문구(406)의 가청 표현은 익명화된 비합성 음성를 포함한다. 여기서 템플릿 생성에 사용되는 발화는 생성, 저장 또는 사용되기 전에 하나 이상의 방식으로 익명화되어 개인 식별 정보가 제거될 수 있다. 예를 들어, 사용자의 신원을 익명화하여 사용자에 대한 개인 식별 정보를 확인할 수 없거나, 사용자의 지리적 위치가 예를 들어 도시, 우편번호 또는 주 수준과 같이 위치 정보가 획득되는 곳에서 일반화될 수 있으므로 사용자의 특정 위치를 결정할 수 없다. 사용자는 자신에 대한 정보가 어떻게 수집되고 ASR 시스템(100)에 의해 사용되는지를 제어할 수 있다. 추가적인 예들에서, 전사 템플릿들(404) 중 적어도 하나에 대응하는 디폴트 문구(406)의 가청 표현은 디폴트 문구(406)의 합성된 음성 표현을 포함한다. 예를 들어, TTS 시스템(412)은 전사 템플릿(404) 중 하나 이상에서 각각의 디폴트 문구(406)를 합성할 수 있다.
스테이지 3에서, 프로세스(400)는 숫자 값의 상이한 합성 음성 표현(416) 및 동일한 디폴트 문구(406)를 각각 포함하도록 생성된 하나 이상의 고유한 훈련 발화(422)으로 각각의 상이한 카테고리를 나타내는 복수의 훈련 발화 세트(402) 각각에서 복수의 전사 템플릿(404)의 각각의 개별 전사 템플릿(404)을 업데이트한다. 또한, 프로세스(400)는, 각각의 고유한 훈련 발화(422)에 대해, 하나의 음성 도메인(예: (텍스트) "set second alarm for four thirty")에서, 그리고 다른 하나의 기록된 도메인(예: (텍스트) "set second alarm for 4:30")에서 병렬 텍스트 전사(424, 426)를 생성할 수 있다. 이 프로세스(400)는 각 템플릿(404)에 대해 여러 번 반복되며, 매번 숫자 시퀀스의 해당 카테고리에 대한 고유한 훈련 발화를 합성한다. 일부 예에서, 고유한 훈련 발화(422)의 기록된 도메인 전사(426)는 도 3의 신경 교정기/디노머(300)를 훈련하기 위해 디코더(200)로부터 출력된 인식 가설(115)과 함께 사용되는 GT(ground-truth) 전사를 포함한다.
도 1을 참조하면, 몇 가지 다른 예에서, ASR 시스템(100)은 음성 도메인 훈련 및 FST 디노밍로부터 이익을 얻는다. 이러한 향상으로, RNN-T, E2E 디코더(200)는 훈련 세트의 음성 도메인 버전에서 훈련되고, 기록된 도메인으로의 번역은 레거시(legacy) 생산 문법에서 파생된 FST 디노머에 남겨진다. RNN-T, E2E 디코더를 훈련하기 위해 음성 도메인과 기록된 도메인 모두의 발화 전사를 훈련 데이터로 사용한다. 이러한 예는
FST 버벌라이저를 통해 훈련 세트의 기록된 도메인 스크립트를 전달한 다음 각 후보 가설을 어휘집(lexicon)을 통해 전달하고 발화의 음소에 대해 결과 음소 시퀀스를 강제 정렬(force-aligning)하여 단일 구어 도메인 언어를 선택하여 얻을 수 있다. 언어화 문법(verbalization grammar)을 이용하여 얻은 음성 도메인 전사를 TTS 훈련 데이터로 사용한다.
추가 예에서, ASR 시스템(100)은 신경 디노밍의 사용으로부터 이익을 얻는다. 특히, FST 기반 디노밍 접근 방식은 리소스가 제한된 장치에 배치하기 어려울 수 있으므로 FST 대신 신경 디노머를 사용할 수도 있다. 예를 들어, 기록된 도메인 신경 교정(수정) 모델은 음성 도메인(spoken domain) 훈련 데이터를 소비하고 기록된 도메인 출력을 방출하는 신경 디노머로 이를 다시 말하거나 재특성화함으로써 음성 도메인에 적응될 수 있다. 신경 디노밍 모델의 아키텍처는 기록된 수정 모델과 동일하다.
테스트에서, ASR 시스템(100)은 합성된 훈련 데이터, 특히 더 짧은 숫자 시퀀스의 도입으로 레거시 시스템에 비해 이점이 있으며, 규칙-기반 FST 디노머를 플라그(plague)하는 오류가 거의 완전히 완화될 수 있다. 음성 도메인에서 훈련을 통해 얻은 OOV 문제를 회피하는 것은 기록된 도메인 모델에서 경험하는 형식화 문제를 크게 해결하는 것으로 보이며, 훈련 데이터에서 디노밍하는 방법을 학습하는 신경 디노머를 사용하여 FST 기반 음성 도메인 모델에서 볼 수 있는 디노밍 오류(denorming errors)를 우회한다. 마지막으로 음성 도메인 디노밍 접근 방식은 실제 오디오 데이터 세트에 심각한 저하를 초래하지 않는다. 여러 개선 사항을 함께 사용할 때 E2E 성능 개선이 가장 컸으며 특히 더 긴 발화에 대해 개선되었다.
도 5는 기록된 도메인에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하는 방법(500)에 대한 예시적인 동작 배열의 흐름도를 제공한다. 사용자 장치(102) 또는 원격 서버(201)에 상주하는 데이터 처리 하드웨어는 방법(500)에 대한 동작을 실행할 수 있다. 동작(502)에서, 방법(500)은 데이터 처리 하드웨어에서 숫자 시퀀스를 포함하는 발화(106)에 대한 오디오 데이터(110)를 수신하는 단계를 포함한다. 동작 504에서, 방법(500)은 데이터 처리 하드웨어에 의해, 시퀀스 대 시퀀스 음성 인식 모델(200)을 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)의 출력으로서 발화(106)의 중간 전사(115)를 생성하기 위해 발화(106)에 대한 오디오 데이터(110)를 디코딩하는 단계를 포함한다.
동작 506에서, 방법(500)은 또한 데이터 처리 하드웨어에 의해, 신경 교정기/디노머(300)를 사용하여, 기록된 도메인에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하기 위해 시퀀스-대-시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 처리(프로세싱)하는 단계를 포함한다. 신경 교정기/디노머(300)는 훈련 샘플(402)의 세트에 대해 훈련될 수 있고, 여기서 각각의 훈현(트레이닝) 샘플(402)은 해당 훈련 발화에 대한 음성 인식 가설(115) 및 해당 훈련 발화의 GT 전사(426)를 포함한다. 해당 훈련 발화의 GT 전사(426)는 기록된 도메인에 있다. 동작(508)에서, 방법(500)은 또한 데이터 처리 하드웨어에 의해, 출력을 위해 기록된 도메인에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 제공하는 단계를 포함한다.
소프트웨어 애플리케이션(즉, 소프트웨어 리소스(자원))은 컴퓨팅 장치가 태스크를 수행하게 하는 컴퓨터 소프트웨어를 의미할 수 있다. 일부 예들에서, 소프트웨어 애플리케이션은 "애플리케이션", "앱" 또는 "프로그램"으로 지칭될 수 있다. 예제 애플리케이션에는 시스템 진단 애플리케이션, 시스템 관리 애플리케이션, 시스템 유지 관리 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 메시징 애플리케이션, 미디어 스트리밍 애플리케이션, 소셜 네트워킹 애플리케이션 및 게임 애플리케이션이 포함되지만 이에 국한되지는 않는다.
비일시적 메모리는 컴퓨팅 장치에서 사용하기 위해 임시 또는 영구적으로 프로그램(예: 명령어 시퀀스) 또는 데이터(예: 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 장치일 수 있다. 비일시적 메모리는 휘발성 및/또는 비휘발성 주소 지정 가능 반도체 메모리일 수 있다. 비휘발성 메모리의 예에는 플래시 메모리 및 읽기 전용 메모리(ROM)/프로그램 가능 읽기 전용 메모리(PROM)/지우기 가능한 프로그램 가능 읽기 전용 메모리(EPROM)/전자적으로 지울 수 있는 프로그래밍 가능한 읽기 전용 메모리(EEPROM)(예: 일반적으로 부팅 프로그램과 같은 펌웨어에 사용됨)이 포함되지만 이에 국한되지는 않는다. 휘발성 메모리의 예에는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), PCM(Phase Change Memory) 및 디스크 또는 테이프가 포함되지만 이에 국한되지 않는다.
도 6은 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치(600)의 개략도이다. 컴퓨팅 장치(600)는 랩톱, 데스크탑, 워크스테이션, 개인용 디지털 보조 장치, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도된다. 여기에 표시된 컴포넌트들, 이들의 연결 및 관계 및 기능은 예시 일 뿐이며 본 명세서에서 설명 및/또는 청구된 발명의 구현을 제한하려는 것이 아니다.
컴퓨팅 장치(600)는 프로세서(610), 메모리(620), 저장 장치(630), 메모리(620) 및 고속 확장 포트(650)에 연결되는 고속 인터페이스/제어기(제어기)(640) 및 저속 버스(670) 및 저장 장치(630)에 연결되는 저속 인터페이스/제어기(660)를 포함한다. 각각의 컴포넌트(610, 620, 630, 640, 650, 660)는 다양한 버스를 사용하여 상호 연결되고, 공통 마더보드에 또는 적절한 다른 방식으로 장착 될 수 있다. 프로세서(610)는 고속 인터페이스(640)에 연결된 디스플레이(670)와 같은 외부 입력/출력 장치에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 표시하기 위해 메모리(620) 또는 저장 장치(630)에 저장된 명령어를 포함하는, 컴퓨팅 장치(600) 내에서 실행하기 위한 명령어를 처리(프로세싱)할 수 있다. 다른 구현에서, 다중 프로세서 및/또는 다중 버스가 다중 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 장치(600)는 필요한 동작의 일부를 제공하는 각 장치(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 다중 프로세서 시스템)와 연결될 수 있다.
메모리(620)는 컴퓨팅 장치(600) 내에 비-일시적으로 정보를 저장한다. 메모리(620)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛(들) 또는 비-휘발성 메모리 유닛(들)일 수 있다. 비-일시적 메모리(620)는 컴퓨팅 장치(600)에 의해 사용하기 위해 일시적 또는 영구적으로 프로그램(예를 들어, 명령어 시퀀스) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 장치일 수 있다. 예시적인 비-휘발성 메모리는 플래시 메모리 및 ROM(read-only memory)/PROM(programmable read-only memory)/EPROM(erasable programmable read-only memory)/EEPROM(electronically erasable programmable read-only memory)(예: 일반적으로 부팅 프로그램과 같은 펌웨어에 사용됨) 등을 포함하지만, 이에 국한되지 않는다. 예시적인 휘발성 메모리는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), PCM(Phase Change Memory) 및 디스크 또는 테이프가 포함되지만 이에 국한되지는 않는다.
저장 장치(630)는 컴퓨팅 장치(600)에 대용량 저장 장치를 제공할 수 있다. 일부 구현에서, 저장 장치(630)는 컴퓨터 판독 가능 매체이다. 다양한 다른 구현에서, 저장 장치(630)는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 기타 유사한 솔리드 스테이트 메모리 장치 또는 저장(스토리지) 영역 네트워크 또는 기타 구성의 장치를 포함하는 장치 어레이일 수 있다. 추가 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행시 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어가 포함되어 있다. 정보 매체는 메모리(620), 저장 장치(620) 또는 프로세서(610)상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 제어기(640)는 컴퓨팅 장치(600)에 대한 대역폭 집약적인(bandwidth-intensive) 동작을 관리하는 반면, 저속 제어기(660)는 낮은 대역폭 집약적인 동작을 관리한다. 이러한 업무 할당은 예시 일뿐이다. 일부 구현에서, 고속 제어기(640)는 메모리(620), 디스플레이(680)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(미도시)를 수용할 수 있는 고속 확장 포트(650)에 결합된다. 일부 구현에서, 저속 제어기(660)는 저장 장치(630) 및 저속 확장 포트(690)에 결합된다. 다양한 통신 포트(예: USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(690)는 예를 들어 네트워크 어댑터를 통해, 키보드, 포인팅 장치, 스캐너 또는 스위치 또는 라우터와 같은 네트워킹 장치와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(600)는 도면에 도시된 바와 같이 복수의 상이한 형태로 구현될 수 있다. 예를 들어, 표준 서버(600a)로서 또는 그러한 서버(600a)의 그룹에서 랩톱 컴퓨터(600b)로서 또는 랙 서버 시스템(600c)의 일부로서 여러번 구현될 수 있다.
여기에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 및/또는 광학 회로, 집적 회로, 특별히 설계된 ASIC(application specific integrated circuits), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현 될 수 있다. 이러한 다양한 구현은 적어도 하나의 프로그램 가능한 프로세서를 포함하는 프로그램 가능한 시스템에서 실행 가능 및/또는 해석 가능한 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있으며, 이는 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령어를 수신하고 데이터 및 명령어를 전송하도록 결합된 특수 또는 범용일 수 있다.
이러한 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드라고도 함)은 프로그래밍 가능한 프로세서에 대한 기계 명령어를 포함하며, 하이-레벨 절차 및/또는 객체-지향적 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 여기에서 사용된 용어 "기계 판독 가능 매체" 및 "컴퓨터 판독 가능 매체"는 기계 판독 가능 신호로서 기계 명령어를 수신하는 기계 판독 가능 매체를 포함하는, 컴퓨터 프로그램 제품, 비-일시적 컴퓨터 판독 가능 매체, 프로그래밍 가능 프로세서에 기계 명령어 및/또는 데이터를 제공하는 데 사용되는 장치 및/또는 디바이스(예: 자기 디스크, 광학 디스크, 메모리, PLD(Programmable Logic Devices))를 나타낸다. 용어 "기계 판독 가능 신호"는 기계 명령어 및/또는 데이터를 프로그래밍 가능 프로세서에 제공하는 데 사용되는 모든 신호를 의미한다.
본 명세서에 설명된 프로세스 및 로직 흐름은 데이터 프로세싱 하드웨어라고도하는 하나 이상의 프로그래밍 가능 프로세서에 의해 수행될 수 있으며, 하나 이상의 컴퓨터 프로그램을 실행하여 입력 데이터를 조작하고 출력을 생성함으로써 기능을 수행할 수 있다. 프로세스 및 로직 흐름은 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)와 같은 특수 목적 로직 회로에 의해 수행될 수도 있다. 컴퓨터 프로그램의 실행에 적합한 프로세서는 예를 들어 범용 및 특수 목적의 마이크로 프로세서와 모든 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로 프로세서는 읽기 전용 메모리나 랜덤 액세스 메모리 또는 둘 다에서 명령어와 데이터를 수신한다. 컴퓨터의 필수 요소는 명령어를 수행하기 위한 프로세서와 명령어와 데이터를 저장하기 위한 하나 이상의 메모리 장치이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치, 예를 들어 자기, 광 자기 디스크 또는 광 디스크로부터 데이터를 수신하거나 데이터를 전송하거나 둘 모두를 포함하거나 작동 가능하게 결합된다. 그러나 컴퓨터는 이러한 장치가 필요하지 않다. 컴퓨터 프로그램 명령어 및 데이터를 저장하기에 적합한 컴퓨터 판독 가능 매체는, 예를 들어, EPROM, EEPROM 및 플래시 메모리 장치와 같은 반도체 메모리 장치, 내부 하드 디스크 또는 이동식 디스크와 같은 자기 디스크, 광 자기 디스크; 및 CD ROM 및 DVD-ROM 디스크를 포함하는 모든 형태의 비-휘발성 메모리, 미디어 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적 로직(논리) 회로에 의해 보완되거나 통합될 수 있다.
사용자와의 상호 작용을 제공하기 위해, 본 명세서 내용의 하나 이상의 양태는 디스플레이 장치, 예를 들어 CRT(음극선 관), LCD(액정 디스플레이) 모니터 또는 사용자에게 정보를 표시하기 위한 터치 스크린과 같은 디스플레이 장치, 및 선택적으로 키보드 및 포인팅 장치(예를 들어, 사용자가 컴퓨터에 입력을 제공할 수 있는 마우스 또는 트랙볼)를 갖는 컴퓨터상에서 구현될 수 있다. 사용자와의 상호 작용을 제공하기 위해 다른 종류의 장치도 사용할 수 있다. 예를 들어, 사용자에게 제공되는 피드백은 예를 들어 시각적 피드백, 청각적 피드백 또는 촉각적 피드백과 같은 모든 형태의 감각 피드백 일 수 있으며, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함한 모든 형태로 수신될 수 있다. 또한 컴퓨터는 사용자가 사용하는 장치로 문서를 전송하고 장치에서 문서를 수신함으로써, 예를 들어 웹 브라우저에서 수신한 요청에 대한 응답으로 사용자 클라이언트 장치의 웹 브라우저에 웹 페이지를 전송함으로써 사용자와 상호 작용할 수 있다.
많은 구현이 설명되었다. 그럼에도 불구하고, 본 명세서의 사상 및 범위를 벗어나지 않고 다양한 변형이 이루어질 수 있음을 이해할 것이다. 따라서, 다른 구현은 다음 청구항의 범위 내에 있다.

Claims (28)

  1. 방법(500)으로서,
    데이터 처리 하드웨어(610)에서, 숫자 시퀀스를 포함하는 발화(106)에 대한 오디오 데이터(110)를 수신하는 단계;
    시퀀스 대 시퀀스 음성 인식 모델(200)을 사용하여, 데이터 처리 하드웨어(610)에 의해, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터의 출력으로서, 발화(106)의 중간 전사(115)를 생성하기 위해 발화(106)에 대한 오디오 데이터(110)를 디코딩하는 단계;
    데이터 처리 하드웨어(610)에 의해, 신경 교정기/디노머(denormer)(300)를 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 처리하여 기록된 도메인(written domain)에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하는 단계 -신경 교정기/디노머(300)는 훈련 샘플 세트에 대해 훈련되고, 각 훈련 샘플은 해당 훈련 발화(422)에 대한 음성 인식 가설(hypothesis)(115) 및 해당 훈련 발화(422)의 GT(ground-truth) 전사(424)를 포함하며, 해당 훈련 발화(422)의 GT 전사(424)는 기록된 도메인에 있음-; 그리고
    데이터 처리 하드웨어(610)에 의해, 출력을 위해 기록된 도메인에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 제공하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)는 음성 도메인에 있고; 그리고
    신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 샘플의 음성 인식 가설은 음성 도메인에 있는 것을 특징으로 하는 방법.
  3. 제2항에 있어서, 중간 전사(115)를 처리하는 것은 기록된 도메인 디노밍(written domain denorming) 모델로서 신경 교정기/디노머(300)를 사용하는 것을 포함하며, 기록된 도메인 디노밍 모델은,
    음성 도메인에서 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 입력으로서 수신하고; 그리고
    출력으로서, 기록된 도메인에서 발화(106)의 최종 전사(120)를 생성하도록 구성되며, 기록된 도메인에서 발화(106)의 최종 전사(120)는 해당 숫자 표현으로서 숫자의 시퀀스를 나타내는 것을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)는 기록된 도메인에 있고, 숫자의 시퀀스를 숫자 단어로 나타내며; 그리고
    신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 예의 음성 인식 가설은 기록된 도메인에 있는 것을 특징으로 하는 방법.
  5. 제4항에 있어서,
    중간 전사(115)를 처리하는 것은 기록된 도메인 수정 모델로서 신경 교정기/디노머(300)를 사용하는 것을 포함하며; 기록된 도메인 수정 모델은,
    기록된 도메인에서 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 입력으로서 수신하고; 그리고
    출력으로서, 최종 전사(120)를, 초기 전사의 숫자 단어를 기록된 도메인의 숫자 시퀀스의 해당 숫자 표현으로 대체하는 수정된 전사로 생성하도록 구성되는 것을 특징으로 하는 방법.
  6. 제5항에 있어서, 기록된 도메인 수정 모델은,
    출력으로서, 최종 전사(120)를,
    숫자 단어를 포함하는 중간 전사(115)의 제1 부분만을 처리하고, 비-숫자 단어를 포함하는 중간 전사(115)의 나머지 제2 부분을 처리하지 않음으로써 수정된 전사로 생성하도록 구성되는 것을 특징으로 하는 방법.
  7. 제6항에 있어서, 기록된 도메인 수정 모델은 중간 전사(115)로부터의 비-숫자 단어를 수정된 전사로 카피하도록 구성되는 것을 특징으로 하는 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    데이터 처리 하드웨어(610) 또는 데이터 처리 하드웨어(610)와 통신하는 원격 컴퓨팅 장치(201)는 동작들을 수행함으로써 시퀀스 대 시퀀스 음성 인식 모델(200) 및 신경 교정기/디노머(300)를 훈련(train)하도록 구성되며, 상기 동작들은,
    복수의 훈련 발화 세트를 획득하는 동작(402) -각각의 훈련 발화 세트(402)는 상이한 각각의 숫자 카테고리와 연관되고 그리고 복수의 각각의 전사 템플릿(404)을 포함하고, 각 전사 템플릿(404)은 숫자 슬롯(408) 및 기록된 도메인에서의 각각의 디폴트 문구(406)를 포함함-;
    각 전사 템플릿(404)에 대해:
    숫자 값의 하나 이상의 합성 음성 표현(416)을 생성하는 동작;
    생성된 숫자 값의 하나 이상의 합성 음성 표현(416) 각각에 대해, 숫자 값의 해당 합성 음성 표현(416)을 해당 전사 템플릿(404)의 슬롯(408)에 주입(injecting)하여, 숫자 값의 해당 합성 음성 표현(416) 및 해당 전사 템플릿(404)에 대한 디폴트 문구(406)의 가청 표현을 포함하는 고유한 훈련 발화(106)를 생성하는 동작; 그리고
    각 훈련 발화 세트(402)의 복수의 전사 템플릿(404) 각각에 대해 생성된 숫자 값의 하나 이상의 합성 음성 표현(416) 각각에 대해 생성된 고유한 훈련 발화(422)에 대해 시퀀스 대 시퀀스 음성 인식 모델(200)을 훈련시키는 동작을 포함하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서, 상기 전사 템플릿(404) 중 적어도 하나에 대응하는 디폴트 문구(406)의 가청 표현은 익명화된 비합성 음성을 포함하는 것을 특징으로 하는 방법.
  10. 제8항 또는 제9항에 있어서, 상기 전사 템플릿(404) 중 적어도 하나에 대응하는 상기 디폴트 문구(406)의 가청 표현은 상기 디폴트 문구의 합성된 음성 표현을 포함하는 것을 특징으로 하는 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서, 고유한 훈련 발화(422)의 기록된 도메인 전사는 신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 훈련 샘플 중 각각의 하나의 GT(ground-truth) 전사(424)를 포함하는 것을 특징으로 하는 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 시퀀스 대 시퀀스 음성 인식 모델(200)은 순환 신경망 변환기(RNN-T), 종단 간(end-to-end) 디코더 모델을 포함하는 것을 특징으로 하는 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 상기 신경 교정기/디노머(300)는,
    시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)의 인코딩된 표현을 생성하도록 구성된 인코더 부분(310);
    중간 전사(115)의 각 비-숫자 단어를 트리비얼(trivial)로 태그하고 중간 전사(115)의 각 숫자 단어를 비-트리비얼(non-trivial)로 태그하도록 구성된 태거 부분(320); 그리고
    기록된 도메인에서 발화(106)의 숫자 시퀀스에 대한 숫자 표현을 획득하기 위해 상기 태거 부분으로부터 비-트리비얼 태그를 처리하도록 구성된 어텐션/디코더 부분(330)을 포함하는 것을 특징으로 하는 방법.
  14. 제13항에 있어서,
    인코더 부분(310)은 양방향 순환 신경망(BiRNN)을 포함하고;
    태거 부분(320)은 순환 신경망(RNN)을 포함하고; 그리고
    어텐션/디코더 부분(330)은 BiRNN을 포함하는 것을 특징으로 하는 방법.
  15. 시스템(600)으로서,
    데이터 처리 하드웨어(610); 그리고
    데이터 처리 하드웨어(610)와 통신하는 메모리 하드웨어(620)를 포함하며, 메모리 하드웨어(620)는 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은,
    숫자 시퀀스를 포함하는 발화(106)에 대한 오디오 데이터(110)를 수신하는 동작;
    시퀀스 대 시퀀스 음성 인식 모델(200)을 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)의 출력으로서, 발화(106)의 중간 전사(115)를 생성하기 위해 발화(106)에 대한 오디오 데이터(110)를 디코딩하는 동작;
    신경 교정기/디노머(denormer)(300)를 사용하여, 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 처리하여 기록된 도메인(written domain)에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 생성하는 동작 -신경 교정기/디노머(300)는 훈련 샘플 세트에 대해 훈련되고, 각 훈련 샘플은 해당 훈련 발화(422)에 대한 음성 인식 가설(hypothesis)(115) 및 해당 훈련 발화(422)의 GT(ground-truth) 전사(424)를 포함하며, 해당 훈련 발화(422)의 GT 전사(424)는 기록된 도메인에 있음-; 그리고
    출력을 위해 기록된 도메인에서 발화(106)의 숫자 시퀀스를 나타내는 최종 전사(120)를 제공하는 동작을 포함하는 것을 특징으로 하는 시스템.
  16. 제15항에 있어서,
    시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)는 음성 도메인에 있고; 그리고
    신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 샘플의 음성 인식 가설은 음성 도메인에 있는 것을 특징으로 하는 시스템.
  17. 제16항에 있어서, 상기 중간 전사(115)를 처리하는 것은 기록된 도메인 디노밍(written domain denorming) 모델로서 신경 교정기/디노머(300)를 사용하는 것을 포함하며, 기록된 도메인 디노밍 모델은,
    음성 도메인에서 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 입력으로서 수신하고; 그리고
    출력으로서, 기록된 도메인에서 발화(106)의 최종 전사(120)를 생성하도록 구성되며, 기록된 도메인에서 발화(106)의 최종 전사(120)는 해당 숫자 표현으로서 숫자의 시퀀스를 나타내는 것을 특징으로 하는 시스템.
  18. 제15항 내지 제17항 중 어느 한 항에 있어서,
    시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)는 기록된 도메인에 있고, 숫자의 시퀀스를 숫자 단어로 나타내며; 그리고
    신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 각 훈련 예의 음성 인식 가설은 기록된 도메인에 있는 것을 특징으로 하는 시스템.
  19. 제18항에 있어서, 중간 전사(115)를 처리하는 것은 기록된 도메인 수정 모델로서 신경 교정기/디노머(300)를 사용하는 것을 포함하며; 기록된 도메인 수정 모델은,
    기록된 도메인에서 시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)를 입력으로서 수신하고; 그리고
    출력으로서, 최종 전사(120)를, 초기 전사의 숫자 단어를 기록된 도메인의 숫자 시퀀스의 해당 숫자 표현으로 대체하는 수정된 전사로 생성하도록 구성되는 것을 특징으로 하는 시스템.
  20. 제19항에 있어서, 기록된 도메인 수정 모델은,
    출력으로서, 최종 전사(120)를, 숫자 단어를 포함하는 중간 전사(115)의 제1 부분만을 처리하고, 비-숫자 단어를 포함하는 중간 전사(115)의 나머지 제2 부분을 처리하지 않음으로써 수정된 전사로 생성하도록 구성되는 것을 특징으로 하는 시스템.
  21. 제20항에 있어서,
    기록된 도메인 수정 모델은 중간 전사(115)로부터의 비-숫자 단어를 수정된 전사로 카피하도록 구성되는 것을 특징으로 하는 시스템.
  22. 제15항 내지 제21항 중 어느 한 항에 있어서,
    데이터 처리 하드웨어(610) 또는 데이터 처리 하드웨어(610)와 통신하는 원격 컴퓨팅 장치(201)는 제2 동작들을 수행함으로써 시퀀스 대 시퀀스 음성 인식 모델(200) 및 신경 교정기/디노머(300)를 훈련(train)하도록 구성되며, 상기 제2 동작들은,
    복수의 훈련 발화 세트를 획득하는 동작(402) -각각의 훈련 발화 세트(402)는 상이한 각각의 숫자 카테고리와 연관되고 그리고 복수의 각각의 전사 템플릿(404)을 포함하고, 각 전사 템플릿(404)은 숫자 슬롯(408) 및 기록된 도메인에서의 각각의 디폴트 문구(406)를 포함함-;
    각 전사 템플릿(404)에 대해:
    숫자 값의 하나 이상의 합성 음성 표현(416)을 생성하는 동작;
    생성된 숫자 값의 하나 이상의 합성 음성 표현(416) 각각에 대해, 숫자 값의 해당 합성 음성 표현(416)을 해당 전사 템플릿(404)의 슬롯(408)에 주입(injecting)하여, 숫자 값의 해당 합성 음성 표현(416) 및 해당 전사 템플릿(404)에 대한 디폴트 문구(406)의 가청 표현을 포함하는 고유한 훈련 발화(106)를 생성하는 동작; 그리고
    각 훈련 발화 세트(402)의 복수의 전사 템플릿(404) 각각에 대해 생성된 숫자 값의 하나 이상의 합성 음성 표현(416) 각각에 대해 생성된 고유한 훈련 발화(422)에 대해 시퀀스 대 시퀀스 음성 인식 모델(200)을 훈련시키는 동작을 포함하는 것을 특징으로 하는 시스템.
  23. 제22항에 있어서, 상기 전사 템플릿(404) 중 적어도 하나에 대응하는 디폴트 문구(406)의 가청 표현은 익명화된 비합성 음성을 포함하는 것을 특징으로 하는 시스템.
  24. 제22항 또는 제23항에 있어서,
    상기 전사 템플릿(404) 중 적어도 하나에 대응하는 상기 디폴트 문구(406)의 가청 표현은 상기 디폴트 문구의 합성된 음성 표현을 포함하는 것을 특징으로 하는 시스템.
  25. 제22항 내지 제24항 중 어느 한 항에 있어서,
    고유한 훈련 발화(422)의 기록된 도메인 전사는 신경 교정기/디노머(300)를 훈련하는 데 사용되는 훈련 샘플 세트에서 훈련 샘플 중 각각의 하나의 GT(ground-truth) 전사(424)를 포함하는 것을 특징으로 하는 시스템.
  26. 제15항 내지 제25항 중 어느 한 항에 있어서, 시퀀스 대 시퀀스 음성 인식 모델(200)은 순환 신경망 변환기(RNN-T), 종단 간 디코더 모델을 포함하는 것을 특징으로 하는 시스템.
  27. 제15항 내지 제26항 중 어느 한 항에 있어서, 상기 신경 교정기/디노머(300)는,
    시퀀스 대 시퀀스 음성 인식 모델(200)로부터 출력된 중간 전사(115)의 인코딩된 표현을 생성하도록 구성된 인코더 부분(310);
    중간 전사(115)의 각 비-숫자 단어를 트리비얼(trivial)로 태그하고 중간 전사(115)의 각 숫자 단어를 비-트리비얼(non-trivial)로 태그하도록 구성된 태거 부분(320); 그리고
    기록된 도메인에서 발화(106)의 숫자 시퀀스에 대한 숫자 표현을 획득하기 위해 상기 태거 부분으로부터 비-트리비얼 태그를 처리하도록 구성된 어텐션/디코더 부분(330)을 포함하는 것을 특징으로 하는 시스템.
  28. 제27항에 있어서,
    인코더 부분(310)은 양방향 순환 신경망(BiRNN)을 포함하고;
    태거 부분(320)은 순환 신경망(RNN)을 포함하고; 그리고
    어텐션/디코더 부분(330)은 BiRNN을 포함하는 것을 특징으로 하는 시스템.
KR1020217035057A 2019-05-03 2020-03-26 숫자 시퀀스에 대한 종단 간 자동 음성 인식 KR20210146368A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962842566P 2019-05-03 2019-05-03
US62/842,566 2019-05-03
PCT/US2020/025036 WO2020226777A1 (en) 2019-05-03 2020-03-26 End-to-end automated speech recognition on numeric sequences

Publications (1)

Publication Number Publication Date
KR20210146368A true KR20210146368A (ko) 2021-12-03

Family

ID=70334123

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217035057A KR20210146368A (ko) 2019-05-03 2020-03-26 숫자 시퀀스에 대한 종단 간 자동 음성 인식

Country Status (6)

Country Link
US (1) US11367432B2 (ko)
EP (1) EP3948853A1 (ko)
JP (1) JP7280382B2 (ko)
KR (1) KR20210146368A (ko)
CN (1) CN113811946A (ko)
WO (1) WO2020226777A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024096641A1 (ko) * 2022-11-02 2024-05-10 삼성전자 주식회사 전자 장치 및 전자 장치의 음성 인식 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6849621B2 (ja) * 2018-02-02 2021-03-24 日本電信電話株式会社 学習装置、学習方法及び学習プログラム
US11990134B2 (en) * 2020-03-18 2024-05-21 Sas Institute Inc. Method for configuring and using a numeric-to-alphabetic expression machine learning model
CN113470662A (zh) * 2020-03-31 2021-10-01 微软技术许可有限责任公司 生成和使用用于关键词检出系统的文本到语音数据和语音识别系统中的说话者适配
US11657799B2 (en) * 2020-04-03 2023-05-23 Microsoft Technology Licensing, Llc Pre-training with alignments for recurrent neural network transducer based end-to-end speech recognition
US11715461B2 (en) * 2020-10-21 2023-08-01 Huawei Technologies Co., Ltd. Transformer-based automatic speech recognition system incorporating time-reduction layer
CN112580370B (zh) * 2020-12-24 2023-09-26 内蒙古工业大学 一种融合语义知识的蒙汉神经机器翻译方法
US11908458B2 (en) * 2020-12-29 2024-02-20 International Business Machines Corporation Customization of recurrent neural network transducers for speech recognition
US20220284193A1 (en) * 2021-03-04 2022-09-08 Tencent America LLC Robust dialogue utterance rewriting as sequence tagging
US20220319506A1 (en) * 2021-03-31 2022-10-06 Chief Chief Technologies Oy Method and system for performing domain adaptation of end-to-end automatic speech recognition model
CN116057534A (zh) * 2021-06-15 2023-05-02 微软技术许可有限责任公司 用于自动语音识别(asr)的上下文拼写校正(csc)
EP4338157A1 (en) * 2021-06-30 2024-03-20 Google LLC Injecting text in self-supervised speech pre-training
WO2023055409A1 (en) * 2021-09-30 2023-04-06 Google Llc Large-scale language model data selection for rare-word speech recognition
WO2023060008A1 (en) * 2021-10-05 2023-04-13 Google Llc Optimizing inference performance for conformer
US20230197064A1 (en) * 2021-12-17 2023-06-22 Snap Inc. Speech to entity
EP4227938A1 (en) * 2022-02-09 2023-08-16 Nuance Communications, Inc. Automatic canonicalization in a semantic tagger and speech-to-text pipeline
US20230335124A1 (en) * 2022-04-14 2023-10-19 Google Llc Comparison Scoring For Hypothesis Ranking
FI20225352A1 (en) * 2022-04-27 2023-10-28 Elisa Oyj COMPUTER METHOD OF GETTING AT LEAST ONE NUMBER

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19709990C2 (de) * 1997-03-11 2000-03-02 Philips Corp Intellectual Pty System zur Erkennung gesprochener Ziffernfolgen
US10319374B2 (en) * 2015-11-25 2019-06-11 Baidu USA, LLC Deployed end-to-end speech recognition
US10229672B1 (en) * 2015-12-31 2019-03-12 Google Llc Training acoustic models using connectionist temporal classification
CN106328122A (zh) * 2016-08-19 2017-01-11 深圳市唯特视科技有限公司 一种利用长短期记忆模型递归神经网络的语音识别方法
US10872598B2 (en) * 2017-02-24 2020-12-22 Baidu Usa Llc Systems and methods for real-time neural text-to-speech
JP7190283B2 (ja) * 2018-08-24 2022-12-15 日本放送協会 音声認識結果整形モデル学習装置およびそのプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024096641A1 (ko) * 2022-11-02 2024-05-10 삼성전자 주식회사 전자 장치 및 전자 장치의 음성 인식 방법

Also Published As

Publication number Publication date
US11367432B2 (en) 2022-06-21
EP3948853A1 (en) 2022-02-09
CN113811946A (zh) 2021-12-17
US20200349922A1 (en) 2020-11-05
JP2022531414A (ja) 2022-07-06
JP7280382B2 (ja) 2023-05-23
WO2020226777A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
KR20210146368A (ko) 숫자 시퀀스에 대한 종단 간 자동 음성 인식
US10559299B1 (en) Reconciliation between simulator and speech recognition output using sequence-to-sequence mapping
AU2019347734B2 (en) Conversational agent pipeline trained on synthetic data
JP7092953B2 (ja) エンドツーエンドモデルによる多言語音声認識のための音素に基づく文脈解析
KR20230003056A (ko) 비음성 텍스트 및 스피치 합성을 사용한 스피치 인식
JP7436760B1 (ja) サブワードエンドツーエンド自動音声認識のための学習ワードレベルコンフィデンス
JP2023545988A (ja) トランスフォーマトランスデューサ:ストリーミング音声認識と非ストリーミング音声認識を統合する1つのモデル
WO2023055410A1 (en) Contrastive siamese network for semi-supervised speech recognition
JP2024511176A (ja) エンドツーエンド自動音声認識コンフィデンスおよび削除推定のためのマルチタスク学習
CN117043856A (zh) 高效流式非递归设备上的端到端模型
KR20240051176A (ko) 스피치 합성 기반 모델 적응을 통한 스피치 인식 개선하기
KR20230156125A (ko) 룩업 테이블 순환 언어 모델
Azim et al. Using Character-Level Sequence-to-Sequence Model for Word Level Text Generation to Enhance Arabic Speech Recognition
CN113439301B (zh) 用于机器学习的方法和系统
KR20230156795A (ko) 단어 분할 규칙화
CN115114933A (zh) 用于文本处理的方法、装置、设备和存储介质
Ore et al. Foreign Language Analysis and Recognition (FLARE) Progress