KR20220128401A - 어텐션-기반 조인트 음향 및 텍스트 온-디바이스 E2E(End-To-End) 모델 - Google Patents

어텐션-기반 조인트 음향 및 텍스트 온-디바이스 E2E(End-To-End) 모델 Download PDF

Info

Publication number
KR20220128401A
KR20220128401A KR1020227027983A KR20227027983A KR20220128401A KR 20220128401 A KR20220128401 A KR 20220128401A KR 1020227027983 A KR1020227027983 A KR 1020227027983A KR 20227027983 A KR20227027983 A KR 20227027983A KR 20220128401 A KR20220128401 A KR 20220128401A
Authority
KR
South Korea
Prior art keywords
context vector
training example
decoder
unpaired
audio
Prior art date
Application number
KR1020227027983A
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 KR20220128401A publication Critical patent/KR20220128401A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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
    • 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
    • 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
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural 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
    • 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
    • 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/048Activation functions
    • 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
    • G10L2015/0635Training updating or merging of old and new templates; Mean values; Weighting

Landscapes

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

Abstract

방법(300)은 2-패스 스트리밍 신경망 모델(200)의 LAS(listen-attend-spell) 디코더(230)에 대한 훈련 예(203)를 수신하는 단계 및 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 단계를 포함한다. 훈련 예가 언페어드 텍스트 시퀀스에 대응할 때, 방법은 또한 훈련 예의 언어적 컨텍스트 벡터(246)와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정하는 단계를 포함한다. 방법은 또한 결정된 교차 엔트로피 손실에 기초하여 LAS 디코더 및 언어적 컨텍스트 벡터를 업데이트하는 단계를 포함한다.

Description

어텐션-기반 조인트 음향 및 텍스트 온-디바이스 E2E(End-To-End) 모델
본 명세서는 2-패스 E2E 음성 인식에 관한 것이다.
최신 ASR(자동 음성 인식) 시스템은 고품질(예: 낮은 워드 오류율(WER))뿐만 아니라 짧은 대기 시간(예: 사용자가 말하는 것과 텍스트 변환이 나타나는 사이의 짧은 지연)을 제공하는 데 중점을 둔다. 더욱이, 오늘날 ASR 시스템을 사용할 때 ASR 시스템은 실시간에 해당하거나 실시간보다 더 빠른 스트리밍 방식으로 발화를 디코딩해야 한다는 요구가 있다. 예를 들어 ASR 시스템이 직접적인 사용자 상호 작용을 경험하는 휴대폰에 배포되면, ASR 시스템을 사용하는 휴대폰의 애플리케이션은 워드를 말하는 즉시 화면에 나타나도록 스트리밍하려면 음성 인식이 필요할 수 있다. 휴대폰 사용자는 대기 시간에 대한 내성이 낮을 가능성이 있다. 이러한 낮은 허용 오차로 인해 음성 인식은 사용자 경험에 해로운 영향을 미칠 수 있는 지연 및 부정확성으로 인한 영향을 최소화하는 방식으로 모바일 장치에서 실행되기 위해 노력한다.
본 개시의 일 양태는 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 컴퓨터로 구현되는 방법을 제공하며, 동작들은, 2-패스 스트리밍 신경망 모델의 LAS(listen-attend-spell) 디코더에 대한 훈련 예를 수신하고 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작을 포함한다. 훈련 예가 언페어드 텍스트 시퀀스에 대응할 때, 동작들은 훈련 예의 컨텍스트 벡터와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정하고, 결정된 교차 엔트로피 손실에 기초하여 LAS 디코더 및 컨텍스트 벡터를 업데이트하는 것을 더 포함한다.
본 개시의 구현은 다음의 선택적인 특징들 중 하나 이상을 포함할 수 있다. 일부 구현에서, 동작들은 또한 2-패스 스트리밍 신경망의 LAS 디코더에 대한 제2 훈련 예를 수신하고, 제2 훈련 예가 지도된 오디오-텍스트 페어에 대응한다고 결정하고, 음향 컨텍스트 벡터에 대한 로그 확률에 기초하여 음향 컨텍스트 벡터와 연관된 음향 컨텍스트 벡터 파라미터 및 LAS 디코더를 업데이트하는 것을 포함한다. 일부 예에서, 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 단계는 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 것을 포함한다.
추가 구현에서, LAS 디코더를 업데이트하면 롱테일 엔티티에 대한 2패스 스트리밍 신경망 모델의 워드 오류율(WER)이 감소한다. 로그 확률은 음향 컨텍스트 벡터로부터 생성된 제1 개별 로그 확률과 텍스트 컨텍스트 벡터로부터 생성된 제2 개별 로그 확률의 보간에 의해 정의될 수 있다. 또한, LAS 디코더는 2-패스 스트리밍 신경망 모델의 제1 패스 동안 RNN-T(Recurrent Neural Network Transducer) 디코더에 의해 생성된 가설에 기초하여 빔 탐색 모드에서 동작할 수 있다. 일부 예들에서, 동작들은 또한 인코딩된 음향 프레임으로부터 인코더 특징들을 요약하도록 구성된 어텐션 메커니즘으로 훈련 예의 컨텍스트 벡터를 생성하는 것을 포함한다.
본 개시의 다른 양태는 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 컴퓨터로 구현되는 방법(400)을 제공하며, 상기 동작들은, 2-패스 스트리밍 신경망 모델의 LAS(listen-attend-spell) 디코더에 대한 훈련 예를 수신하는 동작; 상기 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작; 상기 훈련 예가 언페어드 훈련 데이터에 대응할 때, 생성된 오디오-텍스트 페어를 형성하도록 상기 언페어드 훈련 데이터의 누락 부분을 생성하는 동작; 그리고 상기 생성된 오디오-텍스트 페어에 기초하여 상기 언페어드 데이터와 연관된 언어적 컨텍스트 벡터 및 LAS 디코더를 업데이트하는 동작을 포함한다.
이 양태는 다음과 같은 선택적 기능 중 하나 이상을 포함할 수 있다. 일부 구현에서, 동작은 상기 생성된 오디오-텍스트 페어에 기초하여 음향 컨텍스트 벡터를 결정하는 동작; 그리고 상기 음향 컨텍스트 벡터로부터 생성된 제1 개별 로그 확률과 상기 언어 컨텍스트 벡터로부터 생성된 제2 개별 로그 확률의 보간을 결정하는 동작을 더 포함한다. 이들 구현에서, LAS 디코더를 업데이트하는 것은 제1 개별 로그 확률 및 제2 개별 로그 확률의 보간에 더 기초한다.
일부 예에서, 훈련 예가 지도된 오디오 텍스트 페어에 대응하는지 또는 언페어드 훈련 데이터에 대응하는지를 결정하는 동작은, 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함한다. 또한, LAS 디코더를 업데이트하면 롱테일 엔티티에 대한 2패스 스트리밍 신경망 모델의 워드 오류율(WER)을 줄일 수 있다. 일부 구현들에서, 동작들은 또한 인코딩된 음향 프레임으로부터 인코더 특징들을 요약하도록 구성된 어텐션 메커니즘을 사용하여 훈련 예의 컨텍스트 벡터를 생성하는 것을 포함한다.
본 개시의 또 다른 양태는 시스템을 제공하며, 시스템은, 데이터 처리 하드웨어; 그리고 데이터 처리 하드웨어와 통신하는 메모리 하드웨어를 포함하며, 상기 메모리 하드웨어는 데이터 처리 하드웨어 상에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은, 2-패스 스트리밍 신경망 모델의 LAS(listen-attend-spell) 디코더에 대한 훈련 예를 수신하는 동작; 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작; 훈련 예가 언페어드 텍스트 시퀀스에 대응할 때, 훈련 예의 언어적 컨텍스트 벡터와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정하는 동작; 그리고 상기 결정된 교차 엔트로피 손실에 기초하여 LAS 디코더 및 언어적 컨텍스트 벡터를 업데이트하는 동작을 포함한다.
이 양태는 다음과 같은 선택적 기능 중 하나 이상을 포함할 수 있다. 일부 구현에서, 상기 동작들은, 2-패스 스트리밍 신경망 모델의 LAS 디코더에 대한 제2 훈련 예를 수신하는 동작; 제2 훈련 예가 지도된 오디오-텍스트 페어에 대응한다고 결정하는 동작; 그리고 음향 컨텍스트 벡터에 대한 로그 확률에 기초하여 음향 컨텍스트 벡터와 연관된 음향 컨텍스트 벡터 파라미터 및 LAS 디코더를 업데이트하는 동작을 더 포함한다. 일부 예에서, 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작은 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함한다.
추가 구현에서, LAS 디코더를 업데이트하면 롱테일 엔티티에 대한 2패스 스트리밍 신경망 모델의 워드 오류율(WER)이 감소한다. 로그 확률은 음향 컨텍스트 벡터로부터 생성된 제1 개별 로그 확률과 텍스트 컨텍스트 벡터로부터 생성된 제2 개별 로그 확률의 보간에 의해 정의될 수 있다. 또한, LAS 디코더는 2-패스 스트리밍 신경망 모델의 제1 패스 동안 RNN-T(Recurrent Neural Network Transducer) 디코더에 의해 생성된 가설에 기초하여 빔 탐색 모드에서 동작할 수 있다. 일부 예들에서, 동작들은 또한 인코딩된 음향 프레임으로부터 인코더 특징들을 요약하도록 구성된 어텐션 메커니즘으로 훈련 예의 컨텍스트 벡터를 생성하는 것을 포함한다.
본 개시의 또 다른 양태는 시스템을 제공하며, 시스템은 데이터 처리 하드웨어; 그리고 데이터 처리 하드웨어와 통신하는 메모리 하드웨어를 포함하며, 메모리 하드웨어는 데이터 처리 하드웨어 상에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은, 2-패스 스트리밍 신경망 모델의 LAS(listen-attend-spell) 디코더에 대한 훈련 예를 수신하는 동작; 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작; 훈련 예가 언페어드 훈련 데이터에 대응할 때, 생성된 오디오-텍스트 페어를 형성하도록 상기 언페어드 훈련 데이터의 누락 부분을 생성하는 동작; 그리고 상기 생성된 오디오-텍스트 페어에 기초하여 상기 언페어드 데이터와 연관된 언어적 컨텍스트 벡터 및 LAS 디코더를 업데이트하는 동작을 포함한다.
이 양태는 다음과 같은 선택적 기능 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 동작들은 또한 생성된 오디오-텍스트 페어에 기초하여 음향 컨텍스트 벡터를 결정하고, 음향 컨텍스트 벡터로부터 생성된 제1 개별 로그 확률 및 텍스트 컨텍스트 벡터로부터 생성된 제2 개별 로그 확률의 보간을 결정하는 동작을 포함한다. 이들 구현에서, LAS 디코더를 업데이트하는 것은 제1 개별 로그 확률 및 제2 개별 로그 확률의 보간에 더 기초한다.
일부 예에서, 훈련 예가 지도된 오디오 텍스트 페어에 대응하는지 또는 언페어드 훈련 데이터에 대응하는지를 결정하는 것은 훈련 예가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 것을 포함한다. 또한, LAS 디코더를 업데이트하면 롱테일 엔티티에 대한 2패스 스트리밍 신경망 모델의 워드 오류율(WER)을 줄일 수 있다. 일부 구현들에서, 동작들은 또한 인코딩된 음향 프레임으로부터 인코더 특징들을 요약하도록 구성된 어텐션 메커니즘을 사용하여 훈련 예의 컨텍스트 벡터를 생성하는 것을 포함한다.
본 개시내용의 하나 이상의 구현의 세부사항은 첨부 도면 및 아래의 설명에 기재되어 있다. 다른 양태, 특징 및 이점은 설명 및 도면, 그리고 청구범위로부터 명백할 것이다.
도 1a 및 1b는 조인트 음향 및 텍스트 모델을 갖는 2-패스 아키텍처를 사용하는 예시적인 음성 환경의 개략도이다.
도 2a는 음성 인식을 위한 예시적인 전통적인 2-패스 아키텍처의 개략도이다.
도 2b는 음성 인식을 위한 도 2a의 2-패스 아키텍처에 통합된 예시적인 조인트 음향 및 텍스트 모델의 개략도이다.
도 3은 조인트 음향 및 텍스트 모델을 통합하는 도 2b의 2-패스 아키텍처를 구현하는 방법에 대한 동작들의 예시적인 배열의 흐름도이다.
도 4는 조인트 음향 및 텍스트 모델을 통합하는 도 2b의 2-패스 아키텍처를 구현하는 방법에 대한 동작들의 예시적인 배열의 흐름도이다.
도 5는 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치의 개략도이다.
다양한 도면에서 동일한 참조 부호는 동일한 요소를 나타낸다.
음성 인식은 모바일 환경의 자유롭고 민첩한 요구 사항을 충족하기 위해 계속 발전하고 있다. 자동 음성 인식 시스템(ASR)의 품질을 높이기 위해 새로운 음성 인식 아키텍처 또는 기존 아키텍처에 대한 개선 사항이 계속 개발되고 있다. 예를 들어, 음성 인식은 처음에 각 모델에 전용 목적이 있는 여러 모델을 사용했다. 예를 들어, ASR 시스템에는 음향 모델(AM: acoustic model), 발음 모델(PM: pronunciation model), 언어 모델(LM: language model)이 포함된다. 음향 모델은 오디오 세그먼트(즉, 오디오 프레임)를 음소에 매핑했다. 발음 모델은 이러한 음소를 연결하여 워드를 형성하는 반면 언어 모델은 주어진 구의 가능성(즉, 워드 시퀀스의 확률)을 표현하는 데 사용되었다. 그러나 이러한 개별 모델이 함께 작동했지만 각 모델은 독립적으로 훈련되었으며 종종 다른 데이터 세트에서 수동으로 설계되었다.
개별 모델의 접근 방식은 음성 인식 시스템이 상당히 정확할 수 있도록 했으며, 특히 특정 모델에 대한 훈련 코퍼스(training corpus)(즉, 훈련 데이터의 바디)가 모델의 효율성을 충족하지만 개별 모델을 독립적으로 훈련해야 하는 경우 자체 복잡성이 발생하고 통합 모델이 있는 아키텍처로 이어졌다. 이러한 통합 모델은 단일 신경망을 사용하여 오디오 파형(즉, 입력 시퀀스)을 출력 문장(즉, 출력 시퀀스)에 직접 매핑하려고 했다. 그 결과 일련(시퀀스)의 오디오 특징이 주어졌을 때 일련(시퀀스)의 워드(또는 자소)를 생성하는 시퀀스-투-시퀀스(sequence-to-sequence) 접근 방식이 발생했다. 시퀀스-투-시퀀스 모델의 예로는 "어텐션-기반" 모델 및 "LAS(listen-attend-spell)" 모델이 있다. LAS 모델은 리스너 컴포넌트, 어텐더(attender) 컴포넌트 및 스펠러(speller) 컴포넌트를 사용하여 음성 발화를 문자로 변환한다. 리스너(listener)는 오디오 입력(예: 음성 입력의 시간-주파수 표현)을 수신하고 오디오 입력을 더 높은 수준의 특징 표현에 매핑하는 순환 신경망(RNN) 인코더이다. 어텐더는 하이-레벨 특징에 주의를 기울여 입력 특징과 예측된 서브워드 유닛(예: 자소 또는 워드피스) 간의 정렬을 학습한다. 스펠러는 가정된 워드 세트에 대한 확률 분포를 생성하여 입력에서 문자 시퀀스를 생성하는 어텐션-기반 RNN 디코더이다. 통합 구조를 사용하면 모델의 모든 컴포넌트를 단일 E2E(end-to-end) 신경망으로 공동으로 훈련할 수 있다. E2E 모델은 아키텍처가 완전히 신경망으로 구성된 모델을 의미한다. 완전한 신경망은 외부 및/또는 수동으로 설계된 컴포넌트(예: 유한 상태 변환기, 어휘 또는 텍스트 정규화 모듈) 없이 작동한다. 또한 E2E 모델을 훈련할 때 이러한 모델은 일반적으로 의사 결정 트리에서 부트스트랩(bootstrapping)하거나 별도의 시스템에서 시간 정렬을 필요로 하지 않는다.
초기 E2E 모델은 개별적으로 훈련된 모델보다 정확하고 훈련이 개선된 것으로 입증되었지만, LAS 모델과 같은 이러한 E2E 모델은 출력 텍스트를 생성하기 전에 전체 입력 시퀀스를 검토하여 작동하므로 입력이 수신될 때 스트리밍 출력을 허용하지 않았다. 스트리밍 기능이 없으면 LAS 모델은 실시간 음성 트랜스크립션(transcription)을 수행할 수 없다. 이러한 결함으로 인해 지연 시간에 민감하거나 실시간 음성 기록이 필요한 음성 애플리케이션에 LAS 모델을 배포하면 문제가 발생할 수 있다. 이로 인해 LAS 모델만으로는 실시간 애플리케이션(예: 실시간 통신 애플리케이션)에 자주 의존하는 모바일 기술(예: 휴대폰)에 이상적인 모델이 아니다.
또한, 음향, 발음 및 언어 모델 또는 이러한 모델이 함께 구성된 음성 인식 시스템은 이러한 모델과 관련된 비교적 큰 검색(탐색) 그래프를 검색(탐색)해야 하는 디코더에 의존할 수 있다. 큰 검색 그래프를 사용하면 이러한 유형의 음성 인식 시스템을 완전히 장치에 호스팅하는 데 도움이 되지 않는다. 여기에서 음성 인식 시스템이 "온-디바이스"로 호스팅되는 경우 오디오 입력을 수신하는 장치는 프로세서를 사용하여 음성 인식 시스템의 기능을 실행한다. 예를 들어, 음성 인식 시스템이 전적으로 온-디바이스에서 호스팅되는 경우, 장치의 프로세서는 음성 인식 시스템의 기능을 수행하기 위해 오프-디바이스(off-device) 컴퓨팅 리소스와 조정할 필요가 없다. 완전히 온-디바이스가 아닌 음성 인식을 수행하는 디바이스는 원격 컴퓨팅(예: 원격 컴퓨팅 시스템 또는 클라우드 컴퓨팅)에 의존하고 따라서 음성 인식 시스템의 적어도 일부 기능을 수행하기 위해 온라인 연결에 의존한다. 예를 들어, 음성 인식 시스템은 서버 기반 모델과의 네트워크 연결을 사용하여 큰 검색 그래프로 디코딩을 수행한다.
불행히도, 원격 연결에 의존하는 것은 음성 인식 시스템을 지연 문제 및/또는 통신 네트워크의 고유한 비신뢰성에 취약하게 만든다. 이러한 문제를 피함으로써 음성 인식의 유용성을 향상시키기 위해 음성 인식 시스템은 RNN-T(Recurrent Neural Network Transducer)로 알려진 시퀀스-투-시퀀스 모델 형태로 다시 진화했다. RNN-T는 어텐션 메커니즘을 사용하지 않으며 일반적으로 출력(예: 문장)을 생성하기 위해 전체 시퀀스(예: 오디오 파형)를 처리해야 하는 다른 시퀀스-투-시퀀스 모델과 달리, RNN-T는 실시간 통신에 특히 매력적인 기능인 입력 샘플을 지속적으로 처리하고 출력 심볼을 스트리밍한다. 예를 들어, RNN-T를 사용한 음성 인식은 문자를 음성으로 하나씩 출력할 수 있다. RNN-T는 모델에 의해 예측된 심볼을 자체로 다시 공급하여 다음 심볼을 예측하는 피드백 루프를 사용한다. RNN-T 디코딩은 큰 디코더 그래프 대신 단일 신경망을 통한 빔 검색(탐색)을 포함하기 때문에 RNN-T는 서버 기반 음성 인식 모델 크기의 일부로 확장될 수 있다. 크기 감소로 RNN-T는 완전히 온-디바이스에 배포되고 오프라인(즉, 네트워크 연결 없이)으로 실행할 수 있으며; 따라서 통신 네트워크의 비신뢰성 문제를 방지한다.
낮은 대기 시간으로 작동하는 음성 인식 시스템 외에도 음성 인식 시스템은 음성 인식에서도 정확해야 한다. 종종 음성 인식을 수행하는 모델의 경우 모델의 정확도를 정의할 수 있는 메트릭은 워드 오류율(WER: word error rate)이다. WER은 실제로 말한 워드의 수에 비해 변경된 워드의 수를 측정한 것이다. 일반적으로 이러한 워드 변경은 대체(즉, 워드가 대체되는 경우), 삽입(즉, 워드가 추가되는 경우) 및/또는 삭제(즉, 워드가 생략된 경우)를 나타낸다. 예를 들어 화자는 "car"라고 말하지만 ASR 시스템은 "car"를 "bar"로 변환한다. 이것은 음성학적 유사성으로 인한 대체의 예이다. 다른 ASR 시스템과 비교하여 ASR 시스템의 기능을 측정할 때 WER은 다른 시스템 또는 일부 베이스라인과 관련된 개선 또는 품질 기능의 일부 측정을 나타낼 수 있다.
RNN-T 모델은 온-디바이스 음성 인식을 위한 강력한 후보 모델로 가능성을 보여주었지만, RNN-T 모델만으로는 품질 면(예: 음성 인식 정확도)에서 대규모 최첨단 기존 모델(예: AM, PM, LM이 분리된 서버 기반 모델)보다 여전히 뒤떨어져 있다. 그러나 비-스트리밍(non-streaming) E2E, LAS 모델은 대형 최첨단 기존 모델에 필적하는 음성 인식 품질을 가지고 있다. 비-스트리밍 E2E LAS 모델의 품질을 활용하려면, RNN-T 네트워크의 제1 패스(first-pass) 컴포넌트와 LAS 네트워크의 제2 패스(second-pass) 컴포넌트를 포함하는 2-패스 음성 인식 시스템(예를 들어, 도 2a에 도시됨)이 개발되었다. 이 설계를 통해 2-패스 모델은 대기 시간이 짧은 RNN-T 모델의 스트리밍 특성을 활용하는 동시에 LAS 네트워크를 통합하는 제2-패스를 통해 RNN-T 모델의 정확도를 향상시킨다. LAS 네트워크는 RNN-T 모델과 비교할 때 지연 시간이 증가하지만, 지연 시간 증가는 합리적으로 미미하며 온-디바이스 작동에 대한 지연 시간 제약을 준수한다. 정확도와 관련하여 2-패스 모델은 RNN-T 단독과 비교할 때 17-22%의 WER 감소를 달성하고 대형 기존 모델과 비교할 때 유사한 WER을 갖는다.
불행히도 RNN-T 네트워크 제1 패스와 LAS 네트워크 제2 패스가 있는 이 2-패스 모델에는 몇 가지 결함이 있다. 예를 들어, 이러한 유형의 2-패스 모델은 지도된 오디오-텍스트 페어(pairs)에서만 훈련되는 문제가 있다. 지도된(supervised) 오디오-텍스트 페어에 대해서만 훈련하는 경우 2-패스 모델은 레어 워드(rare words) 또는 롱테일 엔티티에 대해 제대로 수행되지 않는다. 롱테일 엔터티는 텍스트 코퍼라(corpora)에서 상대적으로 적은 인스턴스(즉, 낮은 빈도)를 가진 많은 수의 엔터티를 나타낸다. 즉, 일반적이지 않은 레어 워드는 따라서 더 작은 훈련 데이터 세트에서도 본질적으로 흔하지 않다. 2-패스 모델과 같은 스트리밍 E2E 모델을 훈련할 때, 훈련은 기존의 언어 모델(LM)을 훈련하는 데 사용되는 텍스트 데이터 크기의 작은 부분(small fraction)인 기존의 음향 모델(AM)에 대한 훈련 세트를 사용하여 발생한다. 레어 워드에 대한 2-패스 모델의 성능을 향상시키기 위한 기술이 제안되었지만 제안된 기술 중 많은 부분이 모델 크기(예: RNN-LM(Recurrent Neural Network Language Model)을 음성 인식 시스템에 통합), 훈련 시간(예: 비지도된 오디오-텍스트 페어를 사용한 훈련) 및/또는 추론 비용을 크게 증가시킨다.
레어 워드에 대한 2-패스 모델의 효율성을 높이기 위해, 본 명세서의 구현은 JATD(Joint Acoustic and Text Decoder)를 2-패스 모델 아키텍처에 통합하는 것에 관한 것이다. JATD 기능은 훈련 예가 지도된 오디오 텍스트 페어 또는 언페어드 데이터에서 생성된 오디오-텍스트 예(예: 텍스트 전용 샘플 또는 오디오 전용 샘플)에 해당하는지 여부를 나타내는 도메인 식별자(ID)를 제공한다. 언페어드 데이터의 경우, 누락된 오디오 부분을 생성하기 위해 TTS(text-to-speech) 시스템 또는 누락된 텍스트 부분을 생성하기 위해 ASR 시스템을 사용하여 페어의 누락된 절반이 합성될 수 있다. 훈련 동안, 인코더는 인코더가 페어 예(paired example)를 수신할 때 디코더에 공급할 음향 컨텍스트 벡터를 생성한다. 음향 컨텍스트 벡터의 성공적인 생성은 페어 데이터(paired data)를 나타내는 도메인 ID를 나타내거나 형성한다. 반면에 디코더가 언페어드 예를 만나면 고정되지만 학습 가능한 컨텍스트 벡터 도메인 ID가 인코더 네트워크를 바이패스하는 데 사용된다. 그런 다음 이 두 예 모두 디코더에서 훈련에 사용되며; 디코더가 모델 크기를 늘리지 않고 페어(페어드) 및 언페어드 데이터 모두에 대해 동시에 훈련할 수 있도록 한다. 더욱이, 입력 소스를 기반으로 인코더에 대한 입력의 파라미터만 변경하는 모든 모드에서 주의 및 디코더 파라미터를 공유하는 접근 방식 대신, 이 JATD 접근 방식은 디코더 파라미터만 공유하고 다른 어텐션(attention) 컨텍스트 파라미터를 사용한다. 다양한 고유명사 및 레어-워드 테스트 세트에서 JATD 모델은 페어(페어드) 데이터에 대해서만 훈련된 2-패스 아키텍처와 비교할 때 WER에서 3-10% 상대적 감소를 달성했다.
도 1a 및 도 1b는 스피치 환경(100)의 예이다. 스피치 환경(100)에서, 사용자 장치(110)와 같은 컴퓨팅 장치와 상호작용하는 사용자(10) 방식은 음성 입력을 통할 수 있다. 사용자 장치(110)(일반적으로 장치(디바이스)(110)라고도 함)는 음성 지원 환경(100) 내에서 하나 이상의 사용자(10)로부터 소리(예: 스트리밍 오디오 데이터)를 캡처하도록 구성된다. 스트리밍 오디오 데이터(12)는 가청 쿼리, 디바이스(110)에 대한 명령, 또는 디바이스(110)에 의해 캡쳐된 가청 통신으로서 기능하는 사용자(10)에 의한 발화를 의미할 수 있다. 장치(110)의 음성 지원 시스템은 쿼리에 응답하고/하거나 명령이 수행되게 함으로써 쿼리 또는 명령을 필드에 넣을 수 있다.
사용자 장치(110)는 사용자(10)와 연관되고 오디오 데이터(12)를 수신할 수 있는 임의의 컴퓨팅 장치에 대응할 수 있다. 사용자 장치(110)의 일부 예는 모바일 장치(예: 휴대폰, 태블릿, 노트북 등), 컴퓨터, 웨어러블 장치(예: 스마트 시계), 스마트 기기, 사물 인터넷(IoT) 장치, 스마트 스피커 등을 포함하지만 이에 제한되지 않는다. 사용자 장치(110)는 데이터 처리 하드웨어(112), 및 데이터 처리 하드웨어(112)와 통신하고 데이터 처리 하드웨어(112)에 의해 실행될 때 데이터 처리 하드웨어(112)로 하여금 하나 이상의 동작들을 수행하게 하는 명령어를 저장하는 메모리 하드웨어(114)를 포함한다. 사용자 장치(110)는 음성 지원 시스템(100) 내의 음성 발화(12)를 캡처하고 전기 신호로 변환하기 위한 오디오 캡처 장치(116, 116a) 및 가청 오디오 신호(예를 들어, 장치(110)로부터의 출력 오디오 데이터로서)를 전달하기 위한 음성 출력 장치(116, 116b)(예: 스피커)를 갖는 오디오 서브시스템(116)(예: 마이크로폰)을 더 포함한다. 사용자 장치(110)는 도시된 예에서 단일 오디오 캡처 장치(116a)를 구현하지만, 사용자 장치(110)는 본 개시의 범위를 벗어나지 않고 오디오 캡처 장치(116a)의 어레이를 구현할 수 있고, 이로써 어레이의 하나 이상의 캡처 장치(116a)는 사용자 장치(110)에 물리적으로 상주하지 않고 오디오 서브시스템(116)과 통신할 수 있다. 사용자 장치(110)(예를 들어, 하드웨어(112, 114)를 사용하여)는 음성 인식기(200)를 사용하여 스트리밍 오디오 데이터(12)에 대해 음성 인식 처리를 수행하도록 추가로 구성된다. 일부 예에서, 오디오 캡처 장치(116a)를 포함하는 사용자 장치(110)의 오디오 서브시스템(116)은 오디오 데이터(12)(예: 음성 발화)를 수신하고 오디오 데이터(12)를 음성 인식기(200)와 호환 가능한 디지털 형식으로 변환하도록 구성된다. 디지털 포맷은 멜 프레임과 같은 음향 프레임(예를 들어, 파라미터화된 음향 프레임)에 대응할 수 있다. 예를 들어, 파라미터화된 음향 프레임은 로그-멜(log-mel) 필터뱅크 에너지에 해당한다.
일부 예에서, 도1a와 같이, 사용자(10)는 음성 인식기(200)를 사용하는 사용자 장치(110)의 프로그램 또는 애플리케이션(118)과 상호작용한다. 예를 들어, 도 1a는 자동 어시스턴트 애플리케이션과 통신하는 사용자(10)를 도시한다. 이 예에서, 사용자(10)는 자동 어시스턴트에게 "What time is the concert tonight?(오늘 밤 콘서트가 몇 시입니까?)"라고 묻는다. 사용자(10)로부터의 이 질문은 오디오 캡처 장치(116a)에 의해 캡처되고 사용자 장치(110)의 오디오 서브시스템(116)에 의해 처리되는 발화(12)이다. 이 예에서, 사용자 장치(110)의 음성 인식기(200)는 "오늘 밤 콘서트가 몇 시입니까?"의 오디오 입력(202)(예: 음향 프레임으로)을 수신하고 오디오 입력(202)을 전사(204)(예: "오늘 밤 콘서트는 몇 시입니까?"의 텍스트 표현)로 변환한다. 애플리케이션(118)의 자동 어시스턴트는 사용자(10)가 제기한 질문에 자연어 처리를 이용하여 응답할 수 있다. 자연어 처리는 일반적으로 문어(예: 전사 204)를 해석하고 그 문어가 어떤 행동을 촉구하는지 결정하는 과정을 의미한다. 이 예에서, 자동 어시스턴트는 자연어 처리를 사용하여 사용자(10)의 질문이 사용자의 일정, 특히 사용자의 일정에 따른 콘서트에 관한 것임을 인식한다. 이러한 세부 사항을 자연어 처리로 인식함으로써, 자동 어시스턴트는 "Doors open at 8:30 pm for the concert tonight.(오늘 밤 콘서트는 오후 8시 30분에 열립니다.)"라는 응답이 포함된 사용자 쿼리에 대한 응답을 리턴한다. 일부 구성에서 자연어 처리는 사용자 장치(110)의 데이터 처리 하드웨어(112)와 통신하는 원격 시스템에서 발생할 수 있다.
도 1b는 음성 인식기(200)에 의한 음성 인식의 다른 예이다. 이 예에서, 사용자 장치(110)와 연관된 사용자(10)는 통신 애플리케이션(118)으로 "Jane Doe"라는 친구와 통신하고 있다. 여기에서 "Ted"라는 사용자(10)는 음성 인식기(200)가 그의 음성 입력을 전사하게 함으로써 "Jane"와 통신한다. 오디오 캡처 장치(116)는 이러한 음성 입력을 캡처하여 음성 인식기(200)에 디지털 형태(예를 들어, 음향 프레임)로 전달한다. 음성 인식기(200)는 이러한 음향 프레임을 통신 애플리케이션(118)을 통해 "Jane"에게 전송되는 텍스트로 전사한다. 이러한 유형의 애플리케이션(118)은 텍스트를 통해 통신하기 때문에, 음성 인식기(200)로부터의 전사(204)는 추가 처리(예를 들어, 자연어 처리) 없이 "Jane"에게 전송될 수 있다.
일부 예에서, 도 2a 및 도 2b를 참조하면, 음성 인식기(200)는 2-패스 아키텍처로 구성된다. 일반적으로 말해서, 음성 인식기(200)의 2-패스 아키텍처는 적어도 하나의 공유 인코더(210), RNN-T 디코더(220), 및 LAS 디코더(230)를 포함한다. 도 2a는 전통적인 2-패스 아키텍처를 도시하는 반면, 도 2b는 JATD 모델(240)을 포함하는 향상된 2-패스 아키텍처를 도시한다. 이들 도면에서 알 수 있는 바와 같이, 도 2b의 향상된 2-패스 아키텍처는 도 2a의 기본적인 2-패스 구조를 기반으로 한다. 2-패스 디코딩에서, 제2 패스(208) (예를 들어, LAS 디코더(230)로 도시됨)는 격자 리스코어링(lattice rescoring) 또는 "n-best re-ranking"과 같은 기술을 사용하여 제1 패스(206)(예를 들어, RNN-T 디코더(220)로 표시됨)로부터의 초기 출력을 개선할 수 있다. 즉, RNN-T 디코더(220)는 스트리밍 예측을 생성하고, LAS 디코더(230)는 그 예측을 마무리한다. 구체적으로, LAS 디코더(230)는 RNN-T 디코더(220)로부터 스트리밍된 가설 yR(222)을 리스코어링한다. LAS 디코더(230)가 RNN-T 디코더(220)로부터 스트리밍된 가설 yR(222)을 리스코어링하는 리스코어링 모드에서 기능하는 것이 일반적으로 설명되지만, LAS 디코더(230)는 또한 설계 또는 다른 인자(예: 발화 길이)에 따라 빔 탐색 모드와 같은 상이한 모드에서 동작할 수 있다.
적어도 하나의 인코더(210)는 스트리밍 오디오 데이터(12)에 대응하는 음향 프레임을 오디오 입력(202)으로서 수신하도록 구성된다. 음향 프레임은 오디오 서브시스템(116)에 의해 파라미터화된 음향 프레임(예: 멜 프레임 및/또는 스펙트럼 프레임)으로 미리 처리될 수 있다. 일부 구현에서, 파라미터화된 음향 프레임은 로그-멜(log-mel) 특징을 갖는 로그-멜 필터뱅크 에너지에 대응한다. 예를 들어, 오디오 서브시스템(116)에 의해 출력되고 그리고 인코더(210)로 입력되는 파라미터화된 입력 음향 프레임은 x = (x1,..., xT)로 표현되고, xt ∈ Rd는 로그-멜 필터뱅크 에너지, T는 x의 프레임 수, d는 로그-멜 피처(features)의 수를 나타낸다. 일부 예에서, 파라미터화된 각 음향 프레임은 SSW(short shifting window) (예: 32밀리초 및 10밀리초마다 시프트) 내에서 계산된 128차원 로그-멜 피처를 포함한다. 각 피처는 이전 프레임(예: 3개의 이전 프레임)과 겹쳐서 더 높은 차원의 벡터(예: 3개의 이전 프레임을 사용하는 512차원 벡터)를 형성할 수 있다. 그 다음, 벡터를 형성하는 피처들은 다운샘플링될 수 있다(예를 들어, 30밀리초 프레임 속도로). 오디오 입력(202)에 기초하여, 인코더(210)는 인코딩 e를 생성하도록 구성된다. 예를 들어, 인코더(210)는 인코딩된 음향 프레임(예를 들어, 인코딩된 멜 프레임 또는 음향 임베딩)을 생성한다.
인코더(210)의 구조가 상이한 방식으로 구현될 수 있지만, 일부 구현에서 인코더(210)는 LSTM(long-short term memory) 신경망이다. 예를 들어, 인코더(210)는 8개의 LSTM 계층을 포함한다. 각 계층은 2,048개의 히든 유닛과 640차원 프로젝션 계층(projection layer)을 가질 수 있다. 일부 예들에서, 인코더(210)의 제2 LSTM 계층 다음에 감소 인자(N = 2)로 시간-감소 계층이 삽입된다.
일부 구성에서, 인코더(210)는 공유 인코더 네트워크이다. 다시 말해서, 각각의 패스 네트워크(206, 208)가 자신의 별개의 인코더를 갖는 대신에, 각각의 패스(206, 208)는 단일 인코더(210)를 공유한다. 인코더를 공유함으로써, 2-패스 아키텍처를 사용하는 ASR 음성 인식기(200)는 그 모델 크기 및/또는 계산 비용을 줄일 수 있다. 모델 크기의 감소는 음성 인식기(200)가 온-디바이스에서 완전히 잘 기능하도록 하는 데 도움이 될 수 있다.
일부 예들에서, 도 2a의 음성 인식기(200)는 또한 LAS 디코더(230)의 제2 패스(208)에 적합하도록 인코더(210) 출력(212)을 적응시키기 위해 음향 인코더(250)와 같은 추가 인코더를 포함한다. 음향 인코더(250)는 출력(212)을 인코딩된 출력(252)으로 더 인코딩하도록 구성된다. 일부 구현들에서, 음향 인코더(250)는 인코더(210)로부터의 출력(212)을 추가로 인코딩하는 LSTM 인코더(예를 들어, 2-계층 LSTM 인코더)이다. 추가적인 인코더를 포함함으로써, 인코더(210)는 패스들(206, 208) 사이의 공유 인코더로서 여전히 보존될 수 있다.
제1 패스(206) 동안, 인코더(210)는 오디오 입력(202)의 각각의 음향 프레임을 수신하고 출력(212)(예: 음향 프레임의 인코딩 e로 표시)을 생성한다. RNN-T 디코더(220)는 각 프레임에 대한 출력(212)을 수신하고 스트리밍 방식으로 각 시간 단계에서 가설 yR로 나타낸 출력(222)을 생성한다. 일부 구현들에서, RNN-T 디코더(220)는 예측 네트워크 및 조인트 네트워크를 포함한다. 예측 네트워크는 2,048개의 은닉 유닛으로 구성된 2개의 LSTM 계층와 계층당 640차원 프로젝션 및 128 유닛의 임베딩 계층을 가질 수 있다. 인코더(210) 및 예측 네트워크의 출력(212)은 소프트맥스 예측 계층을 포함하는 조인트 네트워크에 공급될 수 있다. 일부 예들에서, RNN-T 디코더(220)의 조인트 네트워크는 4,096개의 믹스된-케이스 워드피스들(mixed-case word pieces)을 예측하는 소프트맥스 계층이 뒤따르는 640개의 히든 유닛들을 포함한다.
도 2a의 2-패스 모델에서, 제2 패스(208) 동안, LAS 디코더(230)는 각 프레임에 대해 인코더(210)로부터 출력(212)(또는 인코딩된 출력 252)을 수신하고 가설 yL로 지정된 출력(232)을 생성한다. LAS 디코더(230)가 빔 탐색 모드에서 동작할 때, LAS 디코더(230)는 출력(212)(또는 출력(252))만으로 출력(232)을 생성하고; RNN-T 디코더(220)의 출력(222)을 무시한다. LAS 디코더(230)가 리스코어링 모드로 동작하는 경우, LAS 디코더(230)는 RNN-T 디코더(220)로부터 top-K 가설을 획득한 다음 LAS 디코더(230)는 스코어를 계산하기 위해 출력(212)(또는 출력 252)에 대한 어텐션으로 TF(teacher-forcing) 모드에서 각 시퀀스에 대해 실행된다. 예를 들어, 스코어는 시퀀스의 로그 확률과 어텐션 커버러지 패널티(attention coverage penalty)를 결합한다. LAS 디코더(230)는 출력(232)이 될 가장 높은 스코어를 갖는 시퀀스를 선택한다. 리스코어링 모드에서, LAS 디코더(230)는 출력(212)(또는 출력 252)에 어텐션하기 위해 멀티-헤드 어텐션(multi-headed Attention)(예: 4개의 헤드)을 포함할 수 있다. 또한, LAS 디코더(230)는 예측을 위한 소프트맥스 계층을 갖는 2계층 LAS 디코더(230)일 수 있다. 예를 들어, LAS 디코더(230)의 각 계층은 2,048개의 은닉 유닛과 640차원 프로젝션(projection)을 갖는다. 소프트맥스 계층은 RNN-T 디코더(220)의 소프트맥스 계층으로부터 동일한 믹스된-케이스 워드피스를 예측하기 위해 4,096 차원을 포함할 수 있다.
일부 구현에서, 도 2a의 2-패스 모델을 훈련하는 것은 두 단계로 발생한다. 제1 단계 동안, 인코더(210) 및 RNN-T 디코더(220)는
Figure pct00001
를 최대화하도록 훈련된다. 제2 단계에서 인코더(210)는 고정되고, LAS 디코더(230)는
Figure pct00002
를 최대화하도록 훈련된다. 2-패스 모델이 추가 인코더(250)를 포함하는 경우, 추가 인코더(250)는, 인코더(210)가 고정된 상태에서, 제2 단계에서
Figure pct00003
를 최대화하도록 훈련한다.
도 2b를 참조하면, 제1 패스(206)는 동일하게 유지되지만, 제2 패스(208)는 LAS 디코더(230)에서 디코딩하기 전에 어텐션 메커니즘(242)을 포함하는 JATD 모델(240)을 사용한다. 어텐션 메커니즘(242)은 인코딩된 출력(212)(또는 출력(252))을 수신하고, 각 출력 단계에 대한 인코딩된 피처(특징)를 요약하는 컨텍스트 벡터(c, cA, cL)를 결정한다. 어텐션 메커니즘(242)은 입력 훈련 데이터의 유형에 따라 LAS 디코더(230)에 전달된 컨텍스트 벡터(c)를 변경하도록 구성된다. 다시 말해, 어텐션 메커니즘(242)은 입력 훈련 데이터(즉, 특정 훈련 예)가 지도된 오디오-텍스트 페어일 때, 음향 컨텍스트 벡터(244, cA)를 생성하고, 입력 훈련 데이터(예: 훈련 예 203)가 언페어드 텍스트 시퀀스일 때 고정된 언어적 컨텍스트 벡터(246, cL)를 생성한다. LAS 디코더(230)와 통합된 JATD 모델(240)과 함께, JATD 모델(240)은 LAS 디코더(230)의 추론 및 트레이닝(훈련) 모두를 변경하여 페어 데이터 및/또는 언페어드 데이터를 활용한다.
추론 동안, LAS 디코더(230)는 아래의 수학식에 기초하여 로그 확률을 계산한다. 예를 들어, 음향 입력의 경우, 음향 컨텍스트 벡터(ca)는 각 디코더 단계(u)에서 LAS 디코더(230)에 대한 로그 확률을 결정한다. 여기서,
Figure pct00004
는 추론하는 동안 단일 가설(single hypothesis)의 이전에 디코딩된 레이블을 나타낸다. 유사하게, 텍스트 기반 입력으로, 언어 컨텍스트 벡터(cL)는 각 디코더 단계에서 LAS 디코더(230)에 대한 로그 확률을 결정한다. 이 두 상황 모두에서, 로그 확률은 오디오 특징이 완전히 무시되도록 이전 레이블만 기반으로 레이블을 예측한다. 즉, 음향 또는 언어적 컨텍스트 벡터(c)로부터 로그 확률을 생성함으로써, 확률은 일반적으로 음향 스코어 및/또는 언어적 스코어를 나타낸다. 따라서, 각각의 디코더 시간 단계(스텝)는 믹싱 가중치(λ)를 사용하여 음향 기반 로그 확률과 언어 기반 로그 확률의 보간으로 표현될 수 있다(예: 믹스된 가중치가 언어 샘플에 대한 음향 샘플의 비율에 해당하는 경우). 일부 예들에서, 이 추론은 LAS 디코더(230)가 리스코어 모드 또는 빔 탐색 모드에서 동작할 때 적용된다. 다양한 데이터 소스 및 테스트 세트를 사용한 반복을 기반으로 0.05 주변의 믹싱 가중치가 추론에 최적일 수 있다.
Figure pct00005
훈련 동안, RNN-T 디코더(220)는 전통적인 2-패스 아키텍처와 동일한 방식으로 훈련한다. 다시 말해서, RNN-T 디코더(220)는 지도된 오디오-텍스트 페어 데이터로 훈련한다. 그러나 LAS 디코더(230)를 훈련할 때, 하나 이상의 훈련 전략이 사용될 수 있다. 예를 들어, 제1 훈련 전략은 개별 훈련 전략이고 제2 훈련 전략은 조인트(공동) 훈련 전략이다. 개별 훈련 전략에서, 오디오-텍스트 페어가 사용될 때, LAS 디코더(230)는 음향 컨텍스트 벡터(ca, 244)를 사용하여 수학식 2의 2a의 결정에 기초하여 업데이트한다. 여기서, LAS 디코더(230) 업데이트에 더하여, 수학식 2a에 대한 해는 음향 컨텍스트 벡터 파라미터를 업데이트한다. 반면에, 언페어드 데이터를 사용하는 경우, 훈련 손실은 수학식 2의 (2b)에서 계산된 교차 엔트로피 손실로 감소하며, cL은 훈련 가능한 컨텍스트 벡터이다. 이 경우 LAS 디코더(230)와 컨텍스트 벡터만 업데이트된다.
Figure pct00006
일부 구현에서, 조인트 훈련 전략을 사용하여, 음향 및 언어적 컨텍스트 벡터(244, 246)로부터 생성된 로그 확률의 보간은 추론과 유사한 방식으로 훈련 손실을 정의한다. 여기에서 지도된 오디오 데이터는
Figure pct00007
로 표시된다. 지도된 오디오 텍스트 페어를 포함하는 예에서, LAS 디코더(230) 및 음향 어텐션 파라미터는
Figure pct00008
Figure pct00009
의 보간을 기반으로 업데이트된다. 언페어드 데이터의 경우, 적절한 로그 확률을 결정하기 위한 음향 컨텍스트 벡터(ca)가 부족한다. 이 경우 두 가지 잠재적인 옵션이 있다. 첫 번째, 기존 모델은 실제 오디오를 얻은 후 가설된 텍스트(hypothesized text)(예: 텍스트 전사)를 생성할 수 있다. 여기에서 전사된 오디오를 사용하는 것은 모델 증류(distillation)와 유사하다. 두 번째 접근법에서, 첫 번째 접근법은 TTS와 같은 시스템이 실제 텍스트로부터 음향 신호를 합성하도록 역전될 수 있다. 이러한 접근 방식을 사용하면 언페어드 데이터에 더 이상 음향 컨텍스트 벡터(ca)가 부족하지 않는다. 따라서, 해결된 음향 컨텍스트 벡터(ca)를 사용하여 음성 인식기(200)는 언페어드 데이터에 대한 로그 확률을 보간할 수 있다. 이러한 보간에 기초하여, 음성 인식기(200)는 LAS 디코더(230) 및 고정된 컨텍스트 벡터 파라미터를 업데이트한다. 일부 구현에서, 음성 인식기(200)는 어텐션 메커니즘(242)의 음향 어텐션 파라미터를 바이어싱하는 것을 피하기 위해 믹싱 가중치(λ)를 조정한다.
Figure pct00010
도 3은 자동화된 음성 인식(예를 들어, ASR)을 수행하는 방법(300)에 대한 동작들의 예시적인 배열의 흐름도이다. 동작(302)에서, 방법(300)은 2-패스 스트리밍 신경망 모델의 LAS 디코더(230)에 대한 훈련 예를 수신한다. 동작(304)에서, 방법(300)은 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정한다. 훈련 예가 언페어드 텍스트 시퀀스에 대응할 때, 동작 306에서, 방법(300)은 훈련 예의 컨텍스트 벡터(c)와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정한다. 동작(308)에서, 방법(300)은 결정된 교차 엔트로피 손실에 기초하여 LAS 디코더(230) 및 컨텍스트 벡터(c)를 업데이트한다.
도 4는 자동화된 음성 인식(예를 들어, ASR)을 수행하는 방법(400)에 대한 예시적인 동작 배열의 다른 흐름도이다. 동작(402)에서, 방법(400)은 2-패스 스트리밍 신경망 모델의 LAS 디코더(230)에 대한 훈련 예를 수신한다. 훈련 예는 LAS 디코더(230)를 훈련하도록 구성된다. 동작(404)에서, 방법(400)은 훈련 예가 지도된 오디오-텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정한다. 훈련 예가 언페어드 훈련 데이터에 대응할 때, 동작 406에서, 방법(400)은 생성된 오디오-텍스트 페어를 형성하기 위해 언페어드 훈련 데이터의 누락 부분을 생성한다. 동작(408)에서, 방법(400)은 생성된 오디오-텍스트 페어에 기초하여 언페어드 데이터와 연관된 컨텍스트 벡터(c)와 LAS 디코더(230)를 업데이트한다.
도 5는 이 문서에 설명된 시스템(예를 들어, 음성 인식기(200)) 및 방법(예를 들어, 방법(300, 400))을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치(500)의 개략도이다. 컴퓨팅 장치(500)는 랩탑, 데스크탑, 워크스테이션, PDA, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도된다. 여기에 도시된 컴포넌트, 이들의 연결 및 관계, 및 이들의 기능은 예시일 뿐이며, 이 문서에서 설명 및/또는 청구된 발명의 구현을 제한하려는 것은 아니다.
컴퓨팅 장치(500)는 프로세서(510)(예, 데이터 처리 하드웨어), 메모리(520)(예, 메모리 하드웨어), 저장 장치(530), 메모리(520) 및 고속 확장 포트(550)에 연결되는 고속 인터페이스/제어기(제어기)(540) 및 저속 버스(570) 및 저장 장치(530)에 연결되는 저속 인터페이스/제어기(560)를 포함한다. 각각의 컴포넌트(510, 520, 530, 540, 550, 560)는 다양한 버스를 사용하여 상호 연결되고, 공통 마더보드에 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(510)는 고속 인터페이스(540)에 연결된 디스플레이(570)와 같은 외부 입력/출력 장치에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 표시하기 위해 메모리(520) 또는 저장 장치(530)에 저장된 명령어를 포함하는, 컴퓨팅 장치(500) 내에서 실행하기 위한 명령어를 프로세싱(프로세싱)할 수 있다. 다른 구현에서, 다중 프로세서 및/또는 다중 버스가 다중 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 장치(500)는 필요한 동작의 일부를 제공하는 각 장치(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 다중 프로세서 시스템)와 연결될 수 있다.
메모리(520)는 컴퓨팅 장치(500) 내에 비-일시적으로 정보를 저장한다. 메모리(520)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛(들) 또는 비-휘발성 메모리 유닛(들)일 수 있다. 비-일시적 메모리(520)는 컴퓨팅 장치(500)에 의해 사용하기 위해 일시적 또는 영구적으로 프로그램(예를 들어, 명령어 시퀀스) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 장치일 수 있다. 예시적인 비-휘발성 메모리는 플래시 메모리 및 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) 및 디스크 또는 테이프가 포함되지만 이에 국한되지는 않는다.
저장 장치(530)는 컴퓨팅 장치(500)에 대용량 저장 장치를 제공할 수 있다. 일부 구현에서, 저장 장치(530)는 컴퓨터 판독 가능 매체이다. 다양한 다른 구현에서, 저장 장치(530)는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 기타 유사한 솔리드 스테이트 메모리 장치 또는 저장(스토리지) 영역 네트워크 또는 기타 구성의 장치를 포함하는 장치 어레이일 수 있다. 추가 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행시 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어가 포함되어 있다. 정보 매체는 메모리(520), 저장 장치(530) 또는 프로세서(510)상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 제어기(540)는 컴퓨팅 장치(500)에 대한 대역폭 집약적인(bandwidth-intensive) 동작을 관리하는 반면, 저속 제어기(560)는 낮은 대역폭 집약적인 동작을 관리한다. 이러한 업무 할당은 예시 일뿐이다. 일부 구현에서, 고속 제어기(540)는 메모리(520), 디스플레이(580)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(미도시)를 수용할 수 있는 고속 확장 포트(550)에 결합된다. 일부 구현에서, 저속 제어기(560)는 저장 장치(530) 및 저속 확장 포트(590)에 결합된다. 다양한 통신 포트(예: USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(590)는 예를 들어 네트워크 어댑터를 통해, 키보드, 포인팅 장치, 스캐너 또는 스위치 또는 라우터와 같은 네트워킹 장치와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(500)는 도면에 도시된 바와 같이 복수의 상이한 형태로 구현될 수 있다. 예를 들어, 표준 서버(500a)로서 또는 그러한 서버(500a)의 그룹에서 랩톱 컴퓨터(500b)로서 또는 랙 서버 시스템(500c)의 일부로서 여러번 구현될 수 있다.
여기에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 및/또는 광학 회로, 집적 회로, 특별히 설계된 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 (24)

  1. 데이터 처리 하드웨어(112) 상에서 실행될 때 상기 데이터 처리 하드웨어(112)로 하여금 동작들을 수행하게 하는 컴퓨터로 구현되는 방법(300)으로서, 상기 동작들은,
    2-패스 스트리밍 신경망 모델(200)의 LAS(listen-attend-spell) 디코더(230)에 대한 훈련 예(203)를 수신하는 동작;
    상기 훈련 예(203)가 지도된(supervised) 오디오-텍스트 페어 또는 언페어드(unpaired) 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작;
    상기 훈련 예(203)가 언페어드 텍스트 시퀀스에 대응할 때, 상기 훈련 예(203)의 언어적 컨텍스트 벡터(246)와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정하는 동작; 그리고
    상기 결정된 교차 엔트로피 손실에 기초하여 상기 LAS 디코더(230) 및 상기 언어적 컨텍스트 벡터(246)를 업데이트하는 동작을 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  2. 제1항에 있어서, 상기 동작들은,
    상기 2-패스 스트리밍 신경망 모델(200)의 LAS 디코더(230)에 대한 제2 훈련 예(203)를 수신하는 동작;
    상기 제2 훈련 예(203)가 상기 지도된 오디오-텍스트 페어에 대응한다고 결정하는 동작; 그리고
    음향 컨텍스트 벡터(244)에 대한 로그 확률에 기초하여 음향 컨텍스트 벡터(244)와 연관된 음향 컨텍스트 벡터 파라미터 및 LAS 디코더(230)를 업데이트하는 동작을 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작은,
    상기 훈련 예(203)가 상기 지도된 오디오 텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 LAS 디코더(230)를 업데이트하는 동작은 롱테일 엔티티에 대한 2-패스 스트리밍 신경망 모델(200)의 워드 오류율(WER)을 감소시키는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 로그 확률은 음향 컨텍스트 벡터(244)로부터 생성된 제1 개별 로그 확률과 언어적 컨텍스트 벡터(246)로부터 생성된 제2 개별 로그 확률의 보간에 의해 정의되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    LAS 디코더(230)는 2-패스 스트리밍 신경망 모델(200)의 제1 패스(206) 동안 순환 신경망 변환기(RNN-T) 디코더(220)에 의해 생성된 가설(hypothesis)에 기초하여 빔 탐색 모드에서 동작하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 동작들은,
    인코딩된 음향 프레임(212)으로부터 인코더(210) 특징을 요약하도록 구성된 어텐션 메커니즘(242)으로 훈련 예(203)의 언어적 컨텍스트 벡터(246)를 생성하는 동작을 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  8. 데이터 처리 하드웨어(112) 상에서 실행될 때 상기 데이터 처리 하드웨어(112)로 하여금 동작들을 수행하게 하는 컴퓨터로 구현되는 방법(400)으로서,
    2-패스 스트리밍 신경망 모델(200)의 LAS(listen-attend-spell) 디코더(230)에 대한 훈련 예(203)를 수신하는 동작;
    상기 훈련 예(203)가 지도된 오디오-텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작;
    상기 훈련 예(203)가 언페어드 훈련 데이터에 대응할 때, 생성된 오디오-텍스트 페어를 형성하도록 상기 언페어드 훈련 데이터의 누락 부분을 생성하는 동작; 그리고
    상기 생성된 오디오-텍스트 페어에 기초하여 상기 언페어드 데이터와 연관된 언어적 컨텍스트 벡터(244) 및 LAS 디코더(230)를 업데이트하는 동작을 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  9. 제8항에 있어서, 상기 동작들은,
    상기 생성된 오디오-텍스트 페어에 기초하여 음향 컨텍스트 벡터(244)를 결정하는 동작; 그리고
    상기 음향 컨텍스트 벡터(244)로부터 생성된 제1 개별 로그 확률과 상기 언어 컨텍스트 벡터(246)로부터 생성된 제2 개별 로그 확률의 보간을 결정하는 동작을 더 포함하며,
    상기 LAS 디코더(230)를 업데이트하는 것은 상기 제1 개별 로그 확률과 상기 제2 개별 로그 확률의 보간에 더 기초하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  10. 제8항 또는 제9항에 있어서, 상기 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작은,
    훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서,
    상기 LAS 디코더(230)를 업데이트하는 것은 롱테일 엔티티에 대한 2-패스 스트리밍 신경망 모델(200)의 워드 오류율(WER)을 감소시키는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  12. 제8항 내지 제11항 중 어느 한 항에 있어서, 상기 동작들은,
    인코딩된 음향 프레임(212)으로부터 인코더(210) 특징을 요약하도록 구성된 어텐션 메커니즘(242)을 사용하여 훈련 예(203)의 언어적 컨텍스트 벡터(246)를 생성하는 동작을 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  13. 시스템(500)으로서,
    데이터 처리 하드웨어(112); 그리고
    데이터 처리 하드웨어(112)와 통신하는 메모리 하드웨어(114)를 포함하며, 상기 메모리 하드웨어(114)는 데이터 처리 하드웨어(112) 상에서 실행될 때 데이터 처리 하드웨어(112)로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은,
    2-패스 스트리밍 신경망 모델(200)의 LAS(listen-attend-spell) 디코더(230)에 대한 훈련 예(203)를 수신하는 동작;
    훈련 예(203)가 지도된 오디오-텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작;
    훈련 예(203)가 언페어드 텍스트 시퀀스에 대응할 때, 훈련 예(203)의 언어적 컨텍스트 벡터(246)와 연관된 로그 확률에 기초하여 교차 엔트로피 손실을 결정하는 동작; 그리고
    상기 결정된 교차 엔트로피 손실에 기초하여 LAS 디코더(230) 및 언어적 컨텍스트 벡터(246)를 업데이트하는 동작을 포함하는 것을 특징으로 하는 시스템.
  14. 제13항에 있어서, 상기 동작들은,
    2-패스 스트리밍 신경망 모델(200)의 LAS 디코더(230)에 대한 제2 훈련 예(203)를 수신하는 동작;
    제2 훈련 예(203)가 지도된 오디오-텍스트 페어에 대응한다고 결정하는 동작; 그리고
    음향 컨텍스트 벡터(244)에 대한 로그 확률에 기초하여 음향 컨텍스트 벡터(244)와 연관된 음향 컨텍스트 벡터 파라미터 및 LAS 디코더(230)를 업데이트하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
  15. 제13항 또는 제14항에 있어서, 상기 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 결정하는 동작은,
    훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 텍스트 시퀀스에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함하는 것을 특징으로 하는 시스템.
  16. 제13항 내지 제15항 중 어느 한 항에 있어서, LAS 디코더(230)를 업데이트하는 동작은 롱테일 엔티티에 대한 2-패스 스트리밍 신경망 모델(200)의 워드 오류율(WER)을 감소시키는 것을 특징으로 하는 시스템.
  17. 제13항 내지 제16항 중 어느 한 항에 있어서,
    상기 로그 확률은 음향 컨텍스트 벡터(244)로부터 생성된 제1 개별 로그 확률과 언어적 컨텍스트 벡터(246)로부터 생성된 제2 개별 로그 확률의 보간에 의해 정의되는 것을 특징으로 하는 시스템.
  18. 제13항 내지 제17항 중 어느 한 항에 있어서, LAS 디코더(230)는 2-패스 스트리밍 신경망 모델(200)의 제1 패스(206) 동안 순환 신경망 변환기(RNN-T) 디코더(220)에 의해 생성된 가설에 기초하여 빔 탐색 모드에서 동작하는 것을 특징으로 하는 시스템.
  19. 제13항 내지 제18항 중 어느 한 항에 있어서, 상기 동작들은,
    인코딩된 음향 프레임(212)으로부터 인코더(210) 특징을 요약하도록 구성된 어텐션 메커니즘(242)으로 훈련 예(203)의 언어적 컨텍스트 벡터(246)를 생성하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
  20. 시스템(500)으로서,
    데이터 처리 하드웨어(112); 그리고
    데이터 처리 하드웨어(112)와 통신하는 메모리 하드웨어(114)를 포함하며, 메모리 하드웨어(114)는 데이터 처리 하드웨어(112) 상에서 실행될 때 데이터 처리 하드웨어(112)로 하여금 동작들을 수행하게 하는 명령어를 저장하며, 상기 동작들은,
    2-패스 스트리밍 신경망 모델(200)의 LAS(listen-attend-spell) 디코더(230)에 대한 훈련 예(203)를 수신하는 동작;
    훈련 예(203)가 지도된 오디오-텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작;
    훈련 예(203)가 언페어드 훈련 데이터에 대응할 때, 생성된 오디오-텍스트 페어를 형성하도록 상기 언페어드 훈련 데이터의 누락 부분을 생성하는 동작; 그리고
    상기 생성된 오디오-텍스트 페어에 기초하여 상기 언페어드 데이터와 연관된 언어적 컨텍스트 벡터(246) 및 LAS 디코더(230)를 업데이트하는 동작을 포함하는 것을 특징으로 하는 시스템.
  21. 제20항에 있어서, 상기 동작들은,
    상기 생성된 오디오-텍스트 페어에 기초하여 음향 컨텍스트 벡터(244)를 결정하는 동작; 그리고
    음향 컨텍스트 벡터(244)로부터 생성된 제1 개별 로그 확률과 텍스트 컨텍스트 벡터(246)로부터 생성된 제2 개별 로그 확률의 보간을 결정하는 동작을 더 포함하며,
    상기 LAS 디코더(230)를 업데이트하는 것은 상기 제1 개별 로그 확률과 상기 제2 개별 로그 확률의 보간에 더 기초하는 것을 특징으로 하는 시스템.
  22. 제20항 또는 제21항에 있어서, 상기 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 결정하는 동작은,
    상기 훈련 예(203)가 지도된 오디오 텍스트 페어 또는 언페어드 훈련 데이터에 대응하는지 여부를 나타내는 도메인 식별자를 식별하는 동작을 포함하는 것을 특징으로 하는 시스템.
  23. 제20항 내지 제22항 중 어느 한 항에 있어서, 상기 LAS 디코더(230)를 업데이트하는 동작은,
    롱테일 엔티티에 대한 2-패스 스트리밍 신경망 모델(200)의 워드 오류율(WER)을 감소시키는 것을 특징으로 하는 시스템.
  24. 제20항 내지 제23항 중 어느 한 항에 있어서, 상기 동작들은,
    인코딩된 음향 프레임(212)으로부터 인코더(210) 특징을 요약하도록 구성된 어텐션 메커니즘(242)을 사용하여 훈련 예(203)의 언어적 컨텍스트 벡터(246)를 생성하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
KR1020227027983A 2020-01-22 2021-01-21 어텐션-기반 조인트 음향 및 텍스트 온-디바이스 E2E(End-To-End) 모델 KR20220128401A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062964567P 2020-01-22 2020-01-22
US62/964,567 2020-01-22
PCT/US2021/014468 WO2021150791A1 (en) 2020-01-22 2021-01-21 Attention-based joint acoustic and text on-device end-to-end model

Publications (1)

Publication Number Publication Date
KR20220128401A true KR20220128401A (ko) 2022-09-20

Family

ID=74669520

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227027983A KR20220128401A (ko) 2020-01-22 2021-01-21 어텐션-기반 조인트 음향 및 텍스트 온-디바이스 E2E(End-To-End) 모델

Country Status (6)

Country Link
US (2) US11594212B2 (ko)
EP (1) EP4078573A1 (ko)
JP (2) JP7375211B2 (ko)
KR (1) KR20220128401A (ko)
CN (1) CN114981884A (ko)
WO (1) WO2021150791A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113539273B (zh) * 2021-09-16 2021-12-10 腾讯科技(深圳)有限公司 一种语音识别方法、装置、计算机设备和存储介质
KR20240069763A (ko) * 2021-10-04 2024-05-20 구글 엘엘씨 캐스케이드 인코더를 위한 트랜스듀서 기반 스트리밍 심의

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9799327B1 (en) * 2016-02-26 2017-10-24 Google Inc. Speech recognition with attention-based recurrent neural networks
US11133011B2 (en) 2017-03-13 2021-09-28 Mitsubishi Electric Research Laboratories, Inc. System and method for multichannel end-to-end speech recognition
US10706840B2 (en) * 2017-08-18 2020-07-07 Google Llc Encoder-decoder models for sequence to sequence mapping
US11017761B2 (en) * 2017-10-19 2021-05-25 Baidu Usa Llc Parallel neural text-to-speech
US10971142B2 (en) * 2017-10-27 2021-04-06 Baidu Usa Llc Systems and methods for robust speech recognition using generative adversarial networks
US10593321B2 (en) * 2017-12-15 2020-03-17 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for multi-lingual end-to-end speech recognition

Also Published As

Publication number Publication date
EP4078573A1 (en) 2022-10-26
US11594212B2 (en) 2023-02-28
US20230186901A1 (en) 2023-06-15
US20210225362A1 (en) 2021-07-22
JP7375211B2 (ja) 2023-11-07
WO2021150791A1 (en) 2021-07-29
CN114981884A (zh) 2022-08-30
JP2023175029A (ja) 2023-12-08
JP2023511390A (ja) 2023-03-17

Similar Documents

Publication Publication Date Title
EP4062400B1 (en) Deliberation model-based two-pass end-to-end speech recognition
US11749259B2 (en) Proper noun recognition in end-to-end speech recognition
KR20230147685A (ko) 서브 워드 엔드-투-엔드 자동 스피치 인식을 위한 워드 레벨 신뢰도 학습
US20230186901A1 (en) Attention-Based Joint Acoustic and Text On-Device End-to-End Model
KR20230158608A (ko) 종단 간 자동 음성 인식 신뢰도 및 삭제 추정을 위한 멀티태스크 학습
US11580956B2 (en) Emitting word timings with end-to-end models
US20230298563A1 (en) Deliberation by Text-Only and Semi-Supervised Training