KR20240068699A - 마스크킹된 음성 모델링을 위한 안내 데이터 선택 - Google Patents

마스크킹된 음성 모델링을 위한 안내 데이터 선택 Download PDF

Info

Publication number
KR20240068699A
KR20240068699A KR1020247012536A KR20247012536A KR20240068699A KR 20240068699 A KR20240068699 A KR 20240068699A KR 1020247012536 A KR1020247012536 A KR 1020247012536A KR 20247012536 A KR20247012536 A KR 20247012536A KR 20240068699 A KR20240068699 A KR 20240068699A
Authority
KR
South Korea
Prior art keywords
encoded
masked
unmasked
representations
representation
Prior art date
Application number
KR1020247012536A
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 KR20240068699A publication Critical patent/KR20240068699A/ko

Links

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
    • 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/02Feature extraction for speech recognition; Selection of recognition unit
    • 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/16Speech classification or search using artificial neural networks

Abstract

마스크킹된 음성 모델링을 위한 안내(guided) 데이터 선택 방법(500)은 발언(106)에 대응하는 인코딩된 표현(211) 시퀀스를 획득하는 단계를 포함한다. 각각의 인코딩된 표현에 대해, 방법은 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)를 생성하도록 각각의 인코딩된 표현(211)을 처리하는 단계 및 각각의 인코딩된 표현에, 가능한 음성 인식 가설에 대한 대응하는 확률 분포로부터 가장 높은 확률로서 신뢰도 스코어(416)를 할당하는 단계를 포함한다. 방법은 또한 인코딩된 표현의 시퀀스에 할당된 신뢰도 스코어에 기초하여 마스킹할 마스킹되지 않은 인코딩된 표현 세트를 선택하는 단계를 포함한다. 방법은 또한 선택된 마스킹되지 않은 인코딩된 표현 세트를 마스킹함으로써 마스크킹된 인코딩된 표현(211m) 세트를 생성하는 단계를 포함한다. 여기서, 각각의 마스크킹된 인코딩된 표현은 선택된 마스킹되지 않은 인코딩된 표현 세트의 마스킹되지 않은 인코딩된 표현 각각에 대응한다.

Description

마스크킹된 음성 모델링을 위한 안내 데이터 선택
본 개시는 마스크킹된 음성 모델링을 위한 안내(guided) 데이터 선택에 관한 것이다.
오디오 입력을 받아 텍스트로 변환하는 프로세스인 자동 음성 인식(ASR)은 모바일 디바이스 및 기타 디바이스에서 사용되는 중요한 기술이었다. 일반적으로, 자동 음성 인식은 오디오 입력(예를 들어, 음성 발언)을 받아 해당 오디오 입력을 텍스트로 변환함으로써 사람이 말한 내용의 정확한 전사를 제공하려고 시도한다. 최신 ASR 모델은 심층 신경망의 지속적인 개발을 기반으로 정확성(예를 들어, 낮은 단어 오류율(WER))과 대기 시간(예를 들어, 사용자 말하기와 전사 사이의 지연)이 모두 지속적으로 양상되고 있다. 그러나, 딥 러닝 기반 ASR 모델을 개발 시 한 가지 과제는 ASR 모델의 파라미터가 트레이닝 데이터에 과적합(over fit)하는 경향이 있어 트레이닝 데이터가 충분히 광범위하지 않은 경우 ASR 모델이 보이지 않는 데이터를 일반화하는데 어려움을 겪는다는 것이다. 그 결과, 더 큰 트레이닝 데이터 세트에 대한 ASR 모델 트레이닝은 ASR 모델의 정확도를 향상시킨다. ASR 모델을 트레이닝하는데 사용되는 트레이닝 데이터의 양을 늘리기 위해 합성 음성 및/또는 데이터 증강 음성이 통합될 수 있다.
본 개시의 일 양태는 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어가 마스크킹된 음성 모델링을 위한 안내 데이터 선택을 위한 동작들을 수행하게 하는 컴퓨터 구현 방법을 제공한다. 동작들은 발언에 대응하는 인코딩된 표현 시퀀스를 획득하는 단계를 포함한다. 인코딩된 표현 시퀀스의 각각의 인코딩된 표현에 대해, 동작들은 채점기 모델을 사용하여, 각각의 인코딩된 표현에 대한 가능한 음성 인식 가설에 대한 대응 확률 분포를 생성하도록 각각의 인코딩된 표현을 처리하는 단계, 및 각각의 인코딩된 표현에, 각각의 인코딩된 표현에 대한 가능한 음성 인식 가설에 대한 대응 확률 분포로부터 가장 높은 확률로서 신뢰도 스코어를 할당하는 단계를 포함한다. 동작들은 또한 인코딩된 표현 시퀀스로부터, 인코딩된 표현의 시퀀스에 할당된 신뢰도 스코어에 기초하여 마스킹할 마스킹되지 않은 인코딩된 표현 세트를 선택하는 단계를 포함한다. 동작들은 또한 선택된 마스킹되지 않은 인코딩된 표현 세트를 마스킹함으로써 마스크킹된 인코딩된 표현 세트를 생성하는 단계를 포함한다. 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현은 선택된 마스킹되지 않은 인코딩된 표현 세트의 마스킹되지 않은 인코딩된 표현 각각에 대응한다.
본 개시의 구현들은 다음과 같은 선택적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현에서, 마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택하는 단계는 가장 높은 신뢰도 스코어를 갖는 인코딩된 표현 시퀀스로부터 상위 K개의 인코딩된 표현을 선택하는 단계를 포함한다. 이러한 구현에서, K는 마스킹될 인코딩된 표현 시퀀스 내 인코딩된 표현의 사전 결정된 비율에 기초할 수 있다. 선택적으로, 사전 결정된 비율은 40%일 수 있다.
일부 구현에서, 동작들은 마스킹할 선택된 마스킹되지 않은 인코딩된 표현 세트의 각각의 마스킹되지 않은 인코딩된 표현에 대해, 양자화기를 사용하여, 각각의 마스킹되지 않은 인코딩된 표현에 대한 대응 타겟 컨텍스트 벡터를 생성하는 단계를 더 포함한다. 이러한 예에서, 동작들은 또한 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현에 대해: 각각의 마스크킹된 인코딩된 표현에 대한 대응하는 대조 컨텍스트 벡터를 생성하는 단계; 및 각각의 마스크킹된 인코딩된 표현에 대응하는 각각의 마스킹되지 않은 인코딩된 표현에 대해 생성된 대응하는 대조 컨텍스트 벡터 및 대응하는 타겟 컨텍스트 벡터에 기초하여 대조 손실을 생성하는 단계와; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 대조 손실을 사용하여 오디오 인코더를 사전 트레이닝하는 단계를 포함한다. 일부 구현에서, 동작들은 마스킹할 선택된 마스킹되지 않은 인코딩된 표현 세트의 각각의 마스킹되지 않은 인코딩된 표현에 대해, 클러스터 모듈을 사용하여, 각각의 마스킹되지 않은 인코딩된 표현에 대한 대응하는 K-평균 클러스터를 생성하는 단계와; 마스크킹된 인코딩된 표현의 각각의 마스크킹된 인코딩된 표현에 대해, 각각의 마스크킹된 인코딩된 표현에 대응하는 각각의 마스킹되지 않은 인코딩된 표현에 대해 생성된 대응하는 대조 컨텍스트 벡터 및 대응하는 K-평균 클러스터에 기초하여 교차 엔트로피 손실을 생성하는 단계와; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 교차 엔트로피 손실을 사용하여 오디오 인코더를 사전 트레이닝하는 단계를 더 포함한다.
동작들은 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현에 대해, 대조 손실 및 교차 엔트로피 손실에 기초하여 최종 트레이닝 목표를 결정하는 단계와; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 최종 트레이닝 목표를 사용하여 오디오 인코더를 사전 트레이닝하는 단계를 더 포함할 수 있다. 일부 구현에서, 동작들은 마스크킹된 인코딩된 표현 세트의 신뢰도 스코어를 평균함으로써 발언 레벨(수준) 신뢰도 스코어를 결정하는 단계와; 발언 레벨 신뢰도 스코어에 기초하여 최종 트레이닝 목표를 가중하는 단계와; 그리고 가중된 최종 트레이닝 목표를 사용하여 오디오 인코더를 사전 트레이닝하는 단계를 를 더 포함한다. 선택적으로, 동작들은 대조 컨텍스트 벡터로부터 병목 특징을 추출하는 단계를 더 포함한다. 여기서, 동작들은 추출된 병목 특징을 사용하여 각각의 대응하는 K-평균 클러스터를 정제(refine, 개선)하는 단계를 더 포함한다.
본 개시의 다른 양태는 데이터 처리 하드웨어 및 데이터 처리 하드웨어에서 실행될 때 데이터 처리 하드웨어로 하여금 동작들을 수행하게 하는 명령들을 저장한 메모리 하드웨어를 포함하는 시스템을 제공한다. 동작들은 발언에 대응하는 인코딩된 표현 시퀀스를 획득하는 동작을 포함한다. 인코딩된 표현 시퀀스의 각 인코딩된 표현에 대해, 동작들은 채점기 모델을 사용하여, 각각의 인코딩된 표현에 대한 가능한 음성 인식 가설에 대한 대응 확률 분포를 생성하도록 각각의 인코딩된 표현을 처리하는 동작; 및 각각의 인코딩된 표현에, 각각의 인코딩된 표현에 대한 가능한 음성 인식 가설에 대한 대응 확률 분포로부터 가장 높은 확률로서 신뢰도 스코어를 할당하는 동작을 포함한다. 동작들은 또한 인코딩된 표현 시퀀스로부터, 인코딩된 표현의 시퀀스에 할당된 신뢰도 스코어에 기초하여 마스킹할 마스킹되지 않은 인코딩된 표현 세트를 선택하는 동작을 포함한다. 동작들은 또한 선택된 마스킹되지 않은 인코딩된 표현 세트를 마스킹함으로써 마스크킹된 인코딩된 표현 세트를 생성하는 동작을 포함한다. 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현은 선택된 마스킹되지 않은 인코딩된 표현 세트의 마스킹되지 않은 인코딩된 표현 각각에 대응한다.
본 개시의 구현들은 다음과 같은 선택적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현에서, 마스킹할 마스킹되지 않은 인코딩된 표현 세트를 선택하는 동작은 가장 높은 신뢰도 스코어를 갖는 인코딩된 표현 시퀀스로부터 상위 K개의 인코딩된 표현을 선택하는 동작을 포함한다. 이러한 구현에서, K는 마스킹될 인코딩된 표현 시퀀스 내 인코딩된 표현의 사전 결정된 비율에 기초할 수 있다. 선택적으로, 사전 결정된 비율은 40%일 수 있다.
일부 예에서, 동작들은 마스킹할 선택된 마스킹되지 않은 인코딩된 표현 세트의 각각의 마스킹되지 않은 인코딩된 표현에 대해, 양자화기를 사용하여, 각각의 마스킹되지 않은 인코딩된 표현에 대한 대응 타겟 컨텍스트 벡터를 생성하는 동작을 더 포함한다. 이러한 예에서, 동작들은 또한 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현에 대해: 각각의 마스크킹된 인코딩된 표현에 대한 대응하는 대조 컨텍스트 벡터를 생성하는 동작; 및 각각의 마스크킹된 인코딩된 표현에 대응하는 각각의 마스킹되지 않은 인코딩된 표현에 대해 생성된 대응하는 대조 컨텍스트 벡터 및 대응하는 타겟 컨텍스트 벡터에 기초하여 대조 손실을 생성하는 동작과; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 대조 손실을 사용하여 오디오 인코더를 사전 트레이닝하는 동작을 포함한다. 일부 구현에서, 동작들은 마스킹할 선택된 마스킹되지 않은 인코딩된 표현 세트의 각각의 마스킹되지 않은 인코딩된 표현에 대해, 클러스터 모듈을 사용하여, 각각의 마스킹되지 않은 인코딩된 표현에 대한 대응하는 K-평균 클러스터를 생성하는 동작과; 마스크킹된 인코딩된 표현의 각각의 마스크킹된 인코딩된 표현에 대해, 각각의 마스크킹된 인코딩된 표현에 대응하는 각각의 마스킹되지 않은 인코딩된 표현에 대해 생성된 대응하는 대조 컨텍스트 벡터 및 대응하는 K-평균 클러스터에 기초하여 교차 엔트로피 손실을 생성하는 동작과; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 교차 엔트로피 손실을 사용하여 오디오 인코더를 사전 트레이닝하는 동작을 더 포함한다.
동작들은 마스크킹된 인코딩된 표현 세트의 각각의 마스크킹된 인코딩된 표현에 대해, 대조 손실 및 교차 엔트로피 손실에 기초하여 최종 트레이닝 목표를 결정하는 동작과; 그리고 마스크킹된 인코딩된 표현 세트에 대해 생성된 최종 트레이닝 목표를 사용하여 오디오 인코더를 사전 트레이닝하는 동작을 더 포함할 수 있다. 일부 구현에서, 동작들은 마스크킹된 인코딩된 표현 세트의 신뢰도 스코어를 평균함으로써 발언 레벨 신뢰도 스코어를 결정하는 동작과; 발언 레벨 신뢰도 스코어에 기초하여 최종 트레이닝 목표를 가중하는 동작과; 그리고 가중된 최종 트레이닝 목표를 사용하여 오디오 인코더를 사전 트레이닝하는 동작을 더 포함한다. 선택적으로, 동작들은 대조 컨텍스트 벡터로부터 병목 특징을 추출하는 동작을 더 포함한다. 여기서, 동작들은 추출된 병목 특징을 사용하여 각각의 대응하는 K-평균 클러스터를 정제하는 동작을 더 포함한다.
본 개시의 하나 이상의 구현의 세부 사항은 첨부 도면과 아래의 설명에서 설명된다. 다른 양태, 특징 및 장점은 설명, 도면, 청구범위로부터 명백해질 것이다.
도 1은 예시적인 음성 인식 시스템의 개략도이다.
도 2는 예시적인 음성 인식 모델의 개략도이다.
도 3aA-3c는 예시적인 ATM(ask-to-mask) 트레이닝 프로세스의 개략도이다.
도 4는 예시적인 마스킹 모듈의 개략도이다.
도 5는 마스크킹된 음성 모델링을 위한 안내 데이터 선택의 컴퓨터 구현 방법에 대한 동작들의 예시적인 배열의 흐름도이다.
도 6은 본 명세서에 설명된 시스템 및 방법을 구현하는데 사용될 수 있는 예시적인 컴퓨팅 디바이스의 개략도이다.
다양한 도면의 유사한 참조 기호는 유사한 요소를 나타낸다.
자동 음성 인식(ASR)은 오디오로부터 문자 시퀀스로 매핑하는 시퀀스 대 시퀀스(Seq2Seq) 모델의 도입으로 엄청난 발전을 이루었다. 동시에, 텍스트 음성 변환(TTS) 또는 음성 합성 시스템은 Seq2Seq 모델을 성공적으로 적용하여 인간의 귀로는 인간의 음성을 구별할 수 없는 자연스럽고 사실적인 사운드를 제공하는 최첨단 합성 음성을 얻을 수 있었다.
딥 러닝 기반 ASR 모델을 개발할 때의 한 가지 과제는 ASR 모델의 파라미터가 트레이닝 데이터에 과도하게 맞는 경향이 있어 트레이닝 데이터가 충분히 광범위하지 않을 때 ASR 모델이 보이지 않는 데이터를 일반화하는데 어려움을 겪는다는 것이다. 따라서, 더 큰 트레이닝 데이터 세트에서 ASR 모델을 트레이닝하면 ASR 모델의 정확도가 향상된다. 예를 들어, 기계 학습이나 기타 통계 방법을 사용하면 10,000시간 이상의 음성 기록이 포함된 트레이닝 데이터 세트에서 ASR 모델을 트레이닝할 수 있다. 그러나 트레이닝 데이터와 관련된 도메인이 추론 중에 ASR 모델이 배포될 도메인과 다른 경우 ASR 모델의 성능이 저하된다. 예를 들어, 화상 회의와 관련된 도메인에서 음성에 대해 ASR 모델을 트레이닝하는 것은 음성 검색 쿼리와 관련된 음성을 인식하는데 덜 효과적이며 그 반대의 경우도 마찬가지이다.
라벨이 지정되지 않은은(비-라벨링된) 대량의 음성 또는 텍스트 데이터를 사용하여 ASR 모델을 사전 트레이닝한 다음 라벨이 지정된(라벨링된) 더 작은 음성 또는 텍스트 데이터 세트에 대해 트레이닝하여 사전 트레이닝된 ASR 모델을 미세 조정하면 ASR 모델 성능이 향상되는 것으로 나타났다. 특히, 마스크킹된 음성 모델링(MSM)은 트레이닝 발언에 해당하는 비-라벨링된 입력 음성 프레임 시퀀스를 수신하여 각 트레이닝 발언에 대해 입력 음성 프레임의 일부를 마스크하는 사전 트레이닝 기술이다. 이 후, MSM 사전 트레이닝 방법은 마스크킹된 입력 음성 프레임으로부터 음성 표현을 학습한다. 그러나, 마스킹을 위해 선택된 입력 음성 프레임은 모든 입력 음성 프레임에 의미 있는 표현을 학습하기 위한 관련 정보가 포함되어 있지 않더라도 임의로 선택된다. 즉, 마스킹을 위한 관련 정보를 포함하는 음성 프레임을 선택하는 것이 ASR 모델이 사전 트레이닝 중에 의미 있는 표현을 학습하는데 더 유리할 수 있다.
따라서, 본 명세서의 구현은 MSM에 대한 안내(guided) 데이터 선택을 위한 방법 및 시스템에 관한 것이다. 보다 구체적으로, MSM 사전 트레이닝 프로세스는 발언에 대응하는 인코딩된 표현 시퀀스를 획득하는 마스킹 모듈을 실행할 수 있다. 마스킹 모듈은 각각의 인코딩된 표현을 처리하여 가능한 음성 인식 가설에 대한 대응 확률 분포를 생성하고 대응 확률 분포로부터 가장 높은 확률로서 신뢰도 스코어를 할당한다. 인코딩된 표현 시퀀스에 할당된 신뢰도 스코어에 기초하여, 마스킹 모듈은 선택된 인코딩된 표현 세트를 마스킹한다. 유리하게는, 마스킹 모듈은 관련 정보를 포함하는 마스킹을 위해 인코딩된 표현을 선택하여 사전 트레이닝 동안 ASR 모델이 학습하는 의미 있는 표현을 늘린다. 더욱이, 명백해지는 바와 같이, 마스킹 모듈은 전체 발언에 대한 발언 레벨 신뢰도 스코어를 결정하고 그 발언 레벨 신뢰도 스코어에 기초하여 ASR 모델을 트레이닝하는데 사용되는 최종 트레이닝 목표(objective)를 가중할 수 있다.
도 1은 사용자(104)의 사용자 디바이스(102) 및/또는 사용자 디바이스(102)와 통신하는 원격 컴퓨팅 디바이스(201)(예를 들어, 클라우드 컴퓨팅 환경에서 실행되는 분산 시스템의 하나 이상의 서버)에 상주하는 ASR 모델(200)을 구현하는 자동 음성 인식(ASR) 시스템(100)을 도시한다. 사용자 디바이스(102)가 모바일 컴퓨팅 디바이스(예를 들어, 스마트폰)로 도시되어 있지만, 사용자 디바이스(102)는 태블릿 디바이스, 랩탑/데스크톱 컴퓨터, 웨어러블 디바이스, 디지털 어시스턴트 디바이스, 스마트 스피커/디스플레이, 스마트 가전기기, 자동차 인포테인먼트, 또는 사물 인터넷(IoT) 디바이스(이에 한정되지 않음) 등과 같은 임의의 유형의 컴퓨팅 디바이스에 해당할 수 있고, 데이터 처리 하드웨어(111)와 메모리 하드웨어(113)를 갖추고 있다.
사용자 디바이스(102)는 사용자(104)가 말한 발언(106)을 수신하고(예를 들어, 사용자 디바이스(102)는 음성 발언(106)을 녹음하기 위한 하나 이상의 마이크로폰을 포함할 수 있음) 그 발언(106)을 ASR 시스템(100)에 의해 처리될 수 있는 입력 음향 프레임(110)과 관련된 대응 디지털 형식으로 변환하도록 구성된 오디오 서브시스템(108)을 포함한다. 도시된 예에서, 사용자는 "뉴욕시의 날씨는 어때?"라는 문구에 대해 영어의 자연어로 개별 발언(106)를 말하고, 오디오 서브시스템(108)은 발언(106)를 ASR 시스템(100)에 대한 입력을 위해 대응하는 음향 프레임(110)으로 변환한다. 그 후, ASR 모델(200)은 발언(106)에 대응하는 음향 프레임(즉, 입력 음성 프레임의 시퀀스)(110)을 입력으로서 수신하고, 발언(106)의 대응하는 전사(120)(예를 들어, 인식 결과/가설)를 출력으로서 생성/예측한다. 도시된 예에서, 사용자 디바이스(102) 및/또는 원격 컴퓨팅 디바이스(201)는 또한 발언(106)의 전사(120)의 표현을 사용자 디바이스(102)의 사용자(104)에게 제시하도록 구성된 사용자 인터페이스 생성기(107)를 실행한다. 일부 구성에서, ASR 시스템(100)으로부터 출력된 전사(120)는 예를 들어 사용자 디바이스(102) 또는 원격 컴퓨팅 디바이스(201)에서 실행되는 자연어 이해(NLU) 모듈에 의해 처리되어 사용자 커멘드를 실행한다. 추가적으로 또는 대안적으로, 텍스트-음성 변환 시스템(예를 들어, 사용자 디바이스(102) 또는 원격 컴퓨팅 디바이스(201)의 임의의 조합에서 실행됨)는 다른 디바이스에서 들을 수 있는 출력을 위해 전사를 합성 음성으로 변환할 수 있다. 예를 들어, 원래의 발언(106)는 사용자(104)가 친구에게 보내는 메시지에 해당할 수 있으며, 여기서 전사(120)는 친구가 원래의 발언(106)에서 전달된 메시지를 들을 수 있도록 가청 출력을 위한 합성 음성으로 변환된다.
도 2를 참조하면, 예시적인 ASR 모델(200)은 대화형 애플리케이션과 관련된 대기시간(latency) 제약을 준수하는 RNN-T(Recurrent Neural Network-Transducer) 모델 아키텍처를 포함한다. RNN-T 모델 아키텍처의 사용은 예시적이며, ASR 모델(200)은 무엇보다도 트랜스포머-트랜스듀서(transformer-transducer) 및 컨포머((conformer)-트랜스듀서 모델 아키텍처와 같은 다른 아키텍처를 포함할 수 있다. ASR 모델(즉, RNN-T 모델)(200)의 RNN-T 모델 아키텍처는 작은 계산 공간을 제공하고 기존 ASR 아키텍처보다 적은 메모리 요구 사항을 활용하여 RNN-T 모델 아키텍처를 사용자 디바이스(102)에서 전적으로 음성 인식을 수행하는데 적합하게 만든다(예를 들어, 원격 서버와의 통신이 필요하지 않음). RNN-T 모델(200)은 인코더 네트워크(210), 예측 네트워크(220) 및 공동(joint) 네트워크(230)를 포함한다. 전통적인 ASR 시스템의 음향 모델(AM)과 대략 유사한 인코더 네트워크(210)는 셀프-어텐션 계층(예를 들어, 컨포머 또는 트랜스포머 계층)의 스택 또는 스택된 LSTM(Long Short-Term Memory) 계층의 순환 네트워크를 포함한다. 예를 들어, 인코더는 d차원 특징 벡터(예를 들어, 음향 프레임 110(도 1))의 시퀀스(x = (x1, x2,...,xT)를 판독하고, 여기서 xt ∈ Rd이며 각 출력 단계에서 고차 특징 표현을 생성한다. 이 고차 특징 표현은 로 표시된다.
유사하게, 예측 네트워크(220)는 또한 언어 모델(LM)과 마찬가지로 지금까지 최종 소프트맥스 계층(240)에 의해 출력된 공백이 아닌(비-블랭크) 심볼의 시퀀스(y0,...,yui-1)를 조밀한(밀집) 표현(pui)으로 처리하는 LSTM 네트워크이다. 마지막으로, RNN-T 모델 아키텍처를 사용하여, 인코더 및 예측/디코더 네트워크(210, 220)에 의해 생성된 표현이 공동 네트워크(230)에 의해 결합된다. 예측 네트워크(220)는 밀집 표현을 처리하는 대신 룩-업(조회)된 희소 임베딩을 출력하여 대기시간을 개선하기 위해 임베딩 룩-업 테이블로 대체될 수 있다. 그런 다음 공동 네트워크는 다음 출력 심볼에 대한 분포인 를 예측한다. 다르게 말하면, 공동 네트워크(230)는 각 출력 단계(예를 들어, 시간 단계)에서, 가능한 음성 인식 가설에 대한 확률 분포를 생성한다. 여기서, "가능한 음성 인식 가설"은 지정된 자연어의 심볼/문자를 각각 나타내는 출력 라벨 세트에 해당한다. 예를 들어, 자연어가 영어인 경우, 출력 라벨 세트는 27개의 심볼, 예를 들어 영어 알파벳의 26개 문자 각각에 대한 하나의 라벨 및 공백(space)을 지정하는 하나의 라벨을 포함할 수 있다. 이에 따라, 공동 네트워크(230)는 사전 결정된 출력 라벨 세트 각각의 발생 가능성을 나타내는 값 세트를 출력할 수 있다. 이 값 세트는 벡터일 수 있으며 출력 라벨 세트에 대한 확률 분포를 나타낼 수 있다. 일부 경우에, 출력 라벨은 자소(예를 들어, 개별 문자, 구두점 및 기타 심볼일 수 있음)이지만 출력 라벨 세트는 그렇게 제한되지 않는다. 예를 들어, 출력 라벨 세트에는 자소에 추가하거나 자소 대신 단어 조각 및/또는 전체 단어가 포함될 수 있다. 공동 네트워크(230)의 출력 분포는 서로 다른 출력 라벨 각각에 대한 사후 확률 값을 포함할 수 있다. 따라서, 서로 다른 자소 또는 다른 심볼을 나타내는 100개의 서로 다른 출력 라벨이 있는 경우, 공동 네트워크(230)의 출력(yi)은 각 출력 라벨에 대해 하나씩, 100개의 서로 다른 확률 값을 포함할 수 있다. 그런 다음 확률 분포는 전사(120)를 결정하기 위한 (예를 들어, 소프트맥스 계층(240)에 의한) 빔 검색 프로세스에서 후보 철자법 요소(예를 들어, 자소, 단어 조각 및/또는 단어)에 스코어를 선택하고 할당하는데 사용될 수 있다.
소프트맥스 계층(240)은 임의의 기술을 사용하여 해당 출력 단계에서 RNN-T 모델(200)에 의해 예측된 다음 출력 심볼로서 분포에서 가장 높은 확률을 갖는 출력 라벨/심볼을 선택할 수 있다. 이러한 방식으로, RNN-T 모델(200)은 조건부 독립 가정을 하지 않고 오히려 각 심볼의 예측은 음향뿐만 아니라 지금까지 출력된 라벨 시퀀스에 조건화(conditioned)된다. RNN-T 모델(200)은 출력 심볼이 미래 음향 프레임(110)과 독립적이라고 가정하며, 이는 RNN-T 모델(200)이 스트리밍 방식으로 채용될 수 있도록 한다.
일부 예에서, RNN-T 모델(200)의 인코더 네트워크(즉, 오디오 인코더)(210)는 컨포머 블록과 같은 셀프-어텐션 계층/블록의 스택을 포함한다. 여기서, 각 컨포머 블록에는 일련의 다중 헤드 셀프-어텐션, 깊이별 컨볼루션 및 피드포워드 계층이 포함된다. 예측 네트워크(220)는 2개의 2,048차원 LSTM 계층를 가질 수 있고, 각 계층 뒤에는 640차원 프로젝션(투영) 계층도 뒤따른다. 대안적으로, 예측 네트워크(220)는 트랜스포머 또는 컨포머 블록의 스택, 또는 LSTM 층 대신 임베딩 룩-업 테이블을 포함할 수 있다. 마지막으로, 공동 네트워크(230)는 640개의 은닉 유닛을 가질 수도 있다. 소프트맥스 계층(240)은 복수의 트레이닝 데이터 세트의 고유한 단어 조각 또는 자소를 모두 이용하여 생성된 통일된 단어 조각 또는 자소 세트로 구성될 수 있다.
도 3a-3c는 ASR 모델(200)(도 2)을 사전 트레이닝하기 위해 다양한 MSM 아키텍처를 사용하는 예시적인 ATM(Ask-to-Mask) 트레이닝 프로세스(300)를 도시한다. ATM 트레이닝 프로세스(300)(간단히 "트레이닝 프로세스(300)"라고도 지칭함)는 발화되지 않은(unspoken, 무성) 텍스트 발언 세트(320), 전사된 비합성 음성 발언 세트(304) 및/또는 전사되지 않은 비합성 음성 발언(306)을 포함하는 이용 가능한 트레이닝 데이터를 사용하여 ASR 모델(200)을 사전 트레이닝할 수 있다. 각각의 무성 텍스트 발언(320)은 각각의 무성 텍스트 발언(320)이 발언의 임의의 대응하는 발화된(spoken, 음성) 오디오 표현(즉, 스피치)과 짝을 이루지 않도록 텍스트 전용 데이터(즉, 비페어링된 데이터)를 포함한다. 무성 텍스트 발언(320)은 단어, 단어 조각, 음소 및/또는 자소를 포함하는 임의의 텍스트 청크 시퀀스를 포함할 수 있다. 각각의 전사되지 않은 비합성 음성 발언(306)(간단히 "전사되지 않은 음성 발언(306)"이라고도 함)은 오디오 전용 데이터(즉, 비페어링된 데이터)를 포함하므로 전사되지 않은 음성 발언은 임의의 대응하는 전사와 짝을 이루지 않는다. 한편, 각각의 전사된 비합성 음성 발언(304)(단순히 "전사된 음성 발언(304)"라고도 함)은 대응하는 전사된 음성 발언의 대응하는 비합성 스피치 표현과 쌍을 이루는 대응하는 전사(미도시)를 포함한다.
트레이닝 데이터는 또한 복수의 무성 트레이닝 텍스트 발언(320) 각각에 대한 합성 음성 표현(예를 들어, 합성 음성)(332)을 포함할 수 있다. 즉, 무성 트레이닝 텍스트 발언(320)은 각각의 무성 훈련 텍스트 발언이 어떤 합성 또는 비합성 음성과 짝을 이루지 않도록 텍스트 전용 데이터인 무성 텍스트, 즉 비페어링된 데이터를 포함한다. 따라서, 텍스트-음성 변환(TTS) 시스템(330)은 무성 트레이닝 텍스트 발언(320) 각각에 대한 대응하는 합성(된) 음성 표현(332)을 생성할 수 있다. 특히, 합성 음성 표현은 ASR 모델(200)을 트레이닝하기 위한 멜-주파수 스펙트로그램 프레임을 포함할 수 있으며, 이로써 트레이닝 프로세스(300)가 멜-주파수 스펙트로그램 프레임을 합성 음성으로 합성하기 위해 보코더 및/또는 합성기를 포함할 필요성을 제거한다.
TTS 시스템(330)은 무성 텍스트 발언(320)를 변환할 때 화자 임베딩(z)을 적용하여 화자 임베딩과 연관된 특정 화법 및 운율을 갖는 합성 음성 표현(332)을 생성할 수 있다. TTS 시스템(330)은 결과 합성 음성 표현(332)의 서로 다른 화자 특성과 각각 연관된 다수의 서로 다른 화자 임베딩(z)을 적용할 수 있다. 유사하게, TTS 시스템(330)은 합성되는 발화의 운율 및 기타 생성 품질을 변경할 수 있다. 일부 예에서, 트레이닝 프로세스(300)는 합성 음성 표현(332)의 샘플 발언 중 적어도 하나에 데이터 증강을 적용한다. 데이터 증강에는 잡음 추가, 타이밍 조작(예를 들어, 스트레칭) 또는 해당 합성 음성 표현에 대한 잔향 추가가 포함될 수 있지만 이에 한정되지 않는다. 데이터 증강은 합성 음성 표현(332)에 다양한 합성 레코딩 조건을 추가할 수 있다.
단순화를 위해, 트레이닝 프로세스(300)는 대조 자기-지도(self-supervised) 손실 부분(300a)(도 3a), 교차 엔트로피 자기-지도 손실 부분(300b)(도 3b) 및 최종 트레이닝 목표 자기-지도 손실 부분(300c)(도 3c)를 포함한다. 트레이닝 프로세스(300)는 대조 자기-지도 손실 부분(300a)(도 3a), 교차 엔트로피 자기-지도 손실 부분(300b)(도 3b) 및 최종 트레이닝 목표 자기-지도 손실 부분(300c)(도 3c)로부터 도출된 손실들의 임의의 조합을 사용하여 오디오 인코더(210)를 사전 트레이닝할 수 있다.
계속해서 도 3a-3c를 참조하면, 도시된 예에서, ASR 모델(200)(도 2)의 오디오 인코더(210)는 다중 헤드(예를 들어, 8개의 헤드) 셀프-어텐션 메커니즘을 각각 포함하는 셀프-어텐션 계층의 스택을 포함한다. 예를 들어, 셀프-어텐션 계층의 스택은 컨포머 계층 또는 트랜스포머 계층의 스택을 포함할 수 있다. 도시된 예에서, 오디오 인코더(210)는 각각 일련의 다중 헤드 셀프-어텐션, 깊이별 컨볼루션 및 피드포워드 계층을 포함하는 컨포머 블록의 스택을 포함하는 컨포머 인코더를 포함한다. 컨포머 인코더(210)는 컨볼루션 서브샘플링 블록(212)을 포함하는 특징 인코더와 선형 계층(214) 및 컨포머 블록 스택(216)을 포함하는 컨텍스트 네트워크로 분할될 수 있다. 일부 구현에서, 컨볼루션 서브샘플링 블록(212)에는 2개의 2차원 컨볼루션 계층이 있으며 둘 다 스트라이드(2, 2)를 사용하므로 특징 시퀀스 길이가 4배 감소한다.
컨볼루션 서브샘플링 블록(212)은 각각의 전사된 음성 발언(304), 각각의 비전사된 비합성 음성 발언, 및 각각의 합성된 음성 표현(332)과 관련된 입력 음성 프레임 시퀀스(예를 들어, 도 1의 음향 프레임(110)과 같은 멜-주파수 스펙트로그램)을 입력으로서 수신하여, 전사된 음성 발언(304) 중 하나, 비전사된 음성 발언(306), 또는 합성된 음성 표현(332) 중 하나에 각각 대응하는 인코딩된 표현(211, 211a-n) 시퀀스를 출력으로서 생성한다. 인코딩된 표현(211) 시퀀스의 각 인코딩된 표현(211)은 자소, 음소, 단어 조각 또는 단어를 나타낼 수 있다. 게다가, 인코딩된 표현(211)의 각 시퀀스는 트레이닝 데이터에 있는 발언 중 각각의 발언에 대응한다. 컨볼루션 서브샘플링 블록(212)으로부터 출력된 인코딩된 표현(211) 시퀀스(E= [e1,e2,...,eT])는 인코딩된 마스킹되지 않은 표현(211)의 선택된 세트를 마스킹하는 마스킹 모듈(400)에 공급될 수 있다.
이제 도 4를 참조하면, 일부 구현에서, 마스킹 모듈(400)은 채점기(scorer) 모델(410) 및 마스커(masker)(420)를 포함한다. 채점기 모델(410)(단순히 "채점기(410)"라고도 지칭됨)은 인코딩된 표현(211) 시퀀스를 획득하고, 각각의 인코딩된 표현(211)을 처리하여 그 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대해 대응하는 확률 분포(414)를 생성한다. 채점기(410)에 의해 수신된 인코딩된 표현(211) 시퀀스는 마스크 해제된다. 또한, 채점기(410)는 프레임 레벨에서(예를 들어, 각각의 인코딩된 표현(211)에 대해) 확률 분포를 생성한다. 확률 분포(414)는 각각의 가능한 음성 인식 가설(즉, 라벨)과 연관된 확률을 포함한다. 일부 경우에, 채점기(410)는 다음과 같이 확률 분포(414)를 결정할 수 있다.
수학식 1에서, P는 각각의 인코딩 표현(211)에 대한 확률 분포(414)를 나타내고, l는 코드북 내의 복수의 잠재적 음성 인식 가설(L)(즉, 라벨)로부터의 잠재적 음성 인식 가설(즉, 라벨) 각각을 나타낸다. 예를 들어, 도 4에 도시된 바와 같이, 채점기(410)는 "Show Google Adsense"라는 발언에 대응하는 단어를 각각 나타내는 3개의 인코딩된 표현(211a-c)을 수신한다. 이 예에서, 채점기(410)는 "show"라는 단어를 나타내는 제1 인코딩된 표현(211a)을 처리하여 그 제1 인코딩된 표현(211a)에 대한 가능한 음성 인식 가설(412)에 대해 대응하는 제1 확률 분포(414)를 생성하고, "Google"이라는 단어를 나타내는 제2 인코딩된 표현(211b)을 처리하여 그 제2 인코딩된 표현(211b)에 대한 가능한 음성 인식 가설(412)에 대해 대응하는 제2 확률 분포(414)를 생성하고, "Adsense"라는 단어를 나타내는 제3 인코딩된 표현(211c)을 처리하여 그 제3 인코딩된 표현(211c)에 대한 가능한 음성 인식 가설(412)에 대해 대응하는 제3 확률 분포(414)를 생성한다. 여기서, 제1 확률 분포(414)는 가능한 음성 인식 가설(412) "show" 및 "snow"에 대한 확률 0.7 및 0.3을 각각 포함하고, 제2 확률 분포(414)는 각각 "Google" 및 "Doodle"에 대한 가능한 음성 인식 가설(412)에 대한 확률 0.9 및 0.1을 포함하고, 제3 확률 분포(414)는 가능한 음성 인식 가설(412) "Adsense" 및 "Accents"에 대한 확률 0.6 및 0.4를 각각 포함한다.
일부 구현에서, 채점기(410)는 타겟 도메인과 유사한 트레이닝 데이터(즉, 도메인 내 데이터)에 대해 트레이닝된 외부 ASR 모델이다. 채점기(410)는 ASR 모델이 프레임 레벨(예를 들어, 각각의 인코딩된 표현(211)에 대해) 확률 분포를 생성하도록 CTC(connectionist temporal classification) 목표를 사용하는 프레임 동기 ASR 모델일 수 있다. 채점기(410)는 각각의 인코딩된 표현(211)에 대한 각각의 음성 인식 가설(412)이 대응하는 발언의 정확한 전사일 가능성에 기초하여 확률 분포(414)를 생성할 수 있다. 다른 구현에서, 채점기(410)는 각 음성 인식 가설(412)과 타겟 도메인의 유사성에 기초하여 확률 분포(414)를 생성한다. 예를 들어, ASR 모델(200)에 대한 타겟 도메인은 화상 회의와 연관될 수 있으며 이에 따라 채점기(410)는 타겟 도메인(예를 들어, 화상 회의)에 속할 가능성이 있는 음성 인식 가설(412)에 대해 더 높은 확률을 생성한다. 선택적으로, 채점기(410)는 전사 정확도 및 타겟 도메인과의 유사성의 일부 조합을 사용하여 확률 분포(414)를 생성할 수 있다. 따라서, 높은 확률을 갖는 음성 인식 가설(412)은 그 음성 인식 가설(412)이 사전 트레이닝 동안 의미 있는 표현을 학습하기 위해 ASR 모델(200)(도 2)에 대한 의미 있는 정보를 포함할 가능성이 있음을 나타낸다.
더욱이, 채점기(410)는 각각의 인코딩된 표현(211)에 대한 음성 인식 가설(412)에 대해 대응하는 확률 분포(414)로부터 가장 높은 확률로서 신뢰도 스코어(416)를 할당한다. 채점기(410)는 다음과 같이 음성 인식 가설(412)에 대해 해당 확률 분포(414)로부터 가장 높은 확률로서 신뢰도 스코어(416)를 할당할 수 있다.
수학식 2에서, st는 각각의 인코딩된 표현(211)에 대한 신뢰도 스코어(416)를 나타낸다. 채점기(410)는 다음과 같은 확률로 K개의 마스킹 시작 인덱스 {i1,...,ik}를 샘플링한다.
특히, 수학식 3에서, 는 채점자(410)가 교체 없이 샘플을 샘플링하는 것을 보장한다. 따라서, 채점기(410)는 각각의 가능한 음성 인식 가설(412)에 대한 확률에 비례하는 확률로 인코딩된 표현(211) 시퀀스 내의 초기 인코딩된 표현(211)을 샘플링한다. 위의 예를 계속하면, 채점기(410)는 제1 인코딩된 표현(211a)에 대한 신뢰도 스코어(416)로 0.7을 할당하고, 제2 인코딩된 표현(211b)에 대한 신뢰도 스코어(416)로 0.9를 할당하고, 제3 인코딩된 표현(211c)에 대한 신뢰도 스코어(416)로 0.6을 할당하는데, 그 이유는 이들 확률은 각각의 확률 분포(414)에서 가장 높은 확률이기 때문이다. 도 4에 도시된 바와 같이, 각각의 인코딩된 표현(211)에 할당된 신뢰도 스코어(416)는 점선 상자로 표시된다.
일부 예에서, 채점기(410)는 각각의 인코딩된 표현(211)에 대한 음성 인식 가설(412)에 대해 대응 확률 분포(414)로부터 낮은 확률로서 신뢰도 스코어(416)를 할당한다. 채점기(410)는 또한 신뢰도 스코어를 높은 확률과 낮은 확률의 혼합으로 할당할 수도 있다. 특히, 채점기(410)는 다음과 같이 신뢰도 스코어(416)를 낮은 확률에 할당할 수 있다.
마스커(420)는 인코딩된 표현(211) 시퀀스의 각 인코딩된 표현(211)에 할당된 신뢰도 스코어(416)를 수신하여 마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택한다. 즉, 마스커(420)는 ASR 모델(200)이 사전 트레이닝 동안 의미 있는 표현을 학습하는 마스킹되지 않은 인코딩된 표현(211) 시퀀스로부터 상위 K개의 인코딩된 표현(211)을 선택할 수 있다. 여기서, K는 마스커(420)가 선택한 인코딩된 표현(211)의 개수를 나타낸다. 일부 예에서, K는 마스킹될 인코딩된 표현(211) 시퀀스 내의 인코딩된 표현(211)의 사전 결정된 비율(ratio)에 기초한다. 예를 들어, K는 40%의 사전 결정된 비율을 나타낼 수 있지만, 사전 결정된 비율은 임의의 비율일 수 있다는 것이 이해된다. 따라서, 이 예에서, 마스커(420)는 인코딩된 표현(211의 시퀀스내의 10개의 인코딩된 표현(211)을 포함하는 발언에 대해 K를 4로 설정할 수 있다.
마스커(420)는 선택된 마스킹되지 않은 인코딩된 표현(211) 세트를 마스킹함으로써 마스크킹된 인코딩된 표현(211, 211m) 세트를 생성한다. 도 4에 도시된 예를 계속하면, 사전 결정된 비율은 33%일 수 있으며, 이에 따라 마스커(420)는 가장 높은 신뢰도 스코어(416)를 갖는 총 3개의 인코딩된 표현(211) 중 2개의 인코딩된 표현(211)을 선택한다. 여기서, 마스커(420)는 이들 인코딩된 표현(211)이 가장 높은 할당 신뢰도 스코어(416)를 갖기 때문에 마스킹하기 위한 마스킹되지 않은 인코딩된 표현(211)의 세트로서 제1 인코딩된 표현(211a)과 제2 인코딩된 표현(211b)을 선택한다. 이후, 마스커(420)는 블랙 박스로 표시된 제1 인코딩 표현(211a)과 제2 인코딩 표현(211b)을 마스킹함으로써 마스크킹된 인코딩 표현(211ma, 211mb) 세트를 생성한다. 따라서, 마스크킹된 인코딩된 표현(211m) 세트 내의 각각의 마스크킹된 인코딩된 표현(211m)은 선택된 마스킹되지 않은 인코딩된 표현(211) 세트 내의 마스킹되지 않은 인코딩된 표현(211) 각각에 대응한다. 도 4에 도시된 바와 같이, 제1 인코딩된 표현(211a)은 제1 마스크킹된 인코딩된 표현(211ma)에 대응하고, 제2 인코딩된 표현(211b)은 제2 마스크킹된 인코딩된 표현(211mb)에 대응한다. 명백해지는 바와 같이, 트레이닝 프로세스(300)(도 3)는 마스크킹된 인코딩된 표현(211m) 세트를 사용하여 ASR 모델(200)(도 2)만을 사전 트레이닝한다.
이제 도 3a를 참조하면, 대조 자기-지도 손실 부분(300a)은 트레이닝 프로세스(300)가 대조 손실 항(342)과 대조적 트레이닝 목표(345)를 생성한다. 특히, 컨텍스트 네트워크의 선형 계층(214)과 컨포머 블록(216)은 마스크킹된 인코딩된 표현(211m) 세트를 수신하여, 마스크킹된 인코딩된 표현(211m) 세트 내의 각각의 대응하는 마스크킹된 인코딩된 표현(211m)에 대해 대응하는 대조 컨텍스트 벡터(215)(cj∈C)를 출력한다. 즉, 오디오 인코더(210)는 모든 마스크킹된 시간 인스턴스(j∈J)에 대해 대조 컨텍스트 벡터(215)를 생성한다. 게다가, 양자화기(218)는 마스킹되지 않은 인코딩된 특징(211)의 선택된 세트를 입력으로서 수신하여 각각의 마스킹되지 않은 인코딩된 특징(211)에 대해 대응하는 양자화된 벡터(219)(Q = [q1,q2,...,qT])를 출력으로서 생성한다. 각각의 타겟 컨텍스트 벡터(즉, 타겟 컨텍스트 벡터(219))는 코드북 내의 타겟 또는 코드의 수를 나타내는 L 차원을 포함한다. 양자화기(218)는 굼벨-소프트맥스(Gumbel-softmax) 양자화기일 수 있다.
그 후, 대조 손실 모듈(340)은 대응하는 대조 컨텍스트 벡터(215) 및 각각의 마스킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 타겟 컨텍스트 벡터(219)에 기초하여 대조 손실 항(342)(Lctr)을 도출한다. 일부 예에서, 트레이닝 프로세스(300)는 대조 손실 항(342)을 직접 사용함으로써 오디오 인코더(210)를 사전 트레이닝한다. 다른 예에서, 대조 손실 모듈(340)은 오디오 인코더(210)를 사전 트레이닝하는데 사용되는 대조 트레이닝 목표(345)(Lwv)를 도출하기 위해 다이버시티(diversity) 손실(Ldiv)을 결정한다. 이러한 예에서, 대조 손실 모듈(340)은 다음과 같이 대조 트레이닝 목표(345)를 도출한다.
수학식 5에서, 는 다이버시티 손실을 나타낸다. 대조 손실 항(342)은 긍정적인 예와 부정적인 예 모두를 표현하기 위해 코드북에 의존하며, 다양성 손실은 양자화된 코드북 표현의 사용 증가를 장려한다. 특히, 다이버시티 손실은 각 코드북에 대한 코드북 항목에 대한 평균 소프트맥스 분포의 엔트로피를 최대화함으로써 각 G 코드북에서 V 항목의 동일한 사용을 장려한다. 대조 손실 모듈(340)은 다음과 같이 다이버시티 손실(Ldiv)을 도출할 수 있다.
트레이닝 프로세스(300)는 대조 트레이닝 목표(345) 및/또는 대조 손실 항(342)에 기초하여 오디오 인코더(210)의 파라미터를 업데이트함으로써 ASR 모델(200)(도 2)을 트레이닝할 수 있다.
이제 도 3b를 참조하면, 트레이닝 프로세스(300)의 교차 엔트로피 손실 부분(300b)은 ASR 모델(200)(도 2)을 사전 트레이닝하기 위한 교차 엔트로피 손실(355)을 생성한다. 특히, 선형 계층(214) 및 컨텍스트 네트워크의 컨포머 블록(216)은 마스킹된 인코딩된 표현(211m) 세트를 수신하여 그 마스킹된 인코딩된 표현(211m) 세트 내의 각각의 대응하는 마스킹된 인코딩된 표현(211m)에 대해 대응하는 대조 컨텍스트 벡터(215)(cj∈C)를 출력한다. 즉, 오디오 인코더(210)는 모든 마스크킹된 시간 인스턴스(j∈J)에 대해 대조 컨텍스트 벡터(215)를 생성한다. 더욱이, 클러스터 모듈(222)은 선택된 마스킹되지 않은 인코딩된 특징(211) 세트를 입력으로서 수신하여, 마스킹되지 않은 인코딩된 특징(211) 각각에 대해 대응하는 K-평균 클러스터(223)(Y = [y1, y2,...,yT])를 출력으로서 생성한다. 선택적으로, 클러스터 모듈(222)은 대조 컨텍스트 벡터(215)로부터 추출된 병목 특징(217)을 수신하여 그 추출된 병목 특징(217)을 사용하여 각각의 K-평균 클러스터(223)를 추가로 정제(refine, 개선)할 수 있다. 특히, 각각의 K-평균 클러스터(223)는 대조 컨텍스트 벡터(215) 각각에 대한 타겟을 나타낸다.
그 후, 교차 엔트로피 손실 모듈(350)은 대응하는 대조 컨텍스트 벡터(215), 및 각각의 마스킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 K-평균 클러스터(223)에 기초하여 교차 엔트로피 손실(355)(Lce)을 유도한다. 트레이닝 프로세스(300)는 교차 엔트로피 손실(355)에 기초하여 오디오 인코더(210)의 파라미터를 업데이트함으로써 오디오 인코더(210)를 사전 트레이닝한다.
이제 도 3c를 참조하면, 트레이닝 프로세스(300)의 최종 트레이닝 목표 자기-지도 손실 부분(300c)은 ASR 모델(200)(도 2)을 사전 트레이닝하기 위한 최종 트레이닝 목표(375)를 생성한다. 특히, 선형 계층(214) 및 컨텍스트 네트워크의 컨포머 블록(216)은 마스킹된 인코딩된 표현(211m) 세트를 수신하여, 마스킹된 인코딩된 표현(211m) 세트 내의 각각의 대응하는 마스킹된 인코딩된 표현(211m)에 대한 대응하는 대조 컨텍스트 벡터(215)(cj∈C)를 출력한다. 즉, 오디오 인코더(210)는 모든 마스크킹된 시간 인스턴스(j∈J)에 대해 대조 컨텍스트 벡터(215)를 생성한다. 더욱이, 오디오 인코더(210)는 대조 컨텍스트 벡터(215)를 더 정제함으로써 정재된 대조 컨텍스트 벡터(213)를 생성할 수 있다. 오디오 인코더(210)는 다음과 같이 정제된 대조 컨텍스트 벡터(213)를 생성한다.
수학식 7에서 yj는 정제된 대조 컨텍스트 벡터(213)를 나타낸다. 여기서, 대조 컨텍스트 벡터(215)는 목표(target) 컨텍스트 벡터(219)에 대한 목표이고 정제된 대조 컨텍스트 벡터는 K-평균 클러스터(223)에 대한 목표이다. 양자화 모듈(224)은 선택된 마스킹되지 않은 인코딩된 특징 세트(211)를 입력으로서 수신할 수 있다. 일부 경우에, 양자화 모듈(224)은 양자화기(218)(도 3a) 및 클러스터 모듈(222)(도 3b)을 포함한다. 따라서, 양자화 모듈(224)은 양자화기(218)(도 3a)를 사용하여 출력으로서 각각의 마스킹되지 않은 인코딩된 특징(211)에 대해 대응하는 양자화 벡터(219)(Q = [q1,q2,...,qT])를 생성하고, 클러스터 모듈(222)(도 3b)을 사용하여 출력으로서 각각의 마스킹되지 않은 인코딩된 특징(211)에 대해 대응하는 K-평균 클러스터(223)(Y = [y1,y2,...,yT])를 생성한다.
일부 예에서, 목표(objective, 목적) 손실 모듈(360)은 대조 트레이닝 목표(345) 및 교차 엔트로피 손실(355)에 기초하여 최종 트레이닝 목표(365)(Lwb)를 도출한다. 특히, 목표 손실 모듈(360)은 각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 타겟 컨텍스트 벡터(215) 및 대응하는 타겟 컨텍스트 벡터(219)에 기초하여 대조 손실 항(342)과 대조 손실 목표(345)를 도출한다. 게다가, 목표 손실 모듈(360)은 각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 정제된 대조 컨텍스트 벡터(213) 및 대응하는 K-평균 클러스터(223)에 기초하여 교차 엔트로피 손실(355)(Lce)을 도출한다. 각각의 마스크킹된 인코딩된 표현(211m)에 대해, 목표 손실 모듈(360)은 다음과 같이 대조 손실 항(342)(또는 대조 손실 목표(345)) 및 교차 엔트로피 손실(355)에 기초하여 최종 트레이닝 목표를 결정한다.
수학식 8에서 Lwb는 최종 트레이닝 목표(365)를 나타낸다. 트레이닝 프로세스(300)는 최종 트레이닝 목표(365)에 기초하여 오디오 인코더(210)의 파라미터를 업데이트함으로써 오디오 인코더(210)를 트레이닝할 수 있다.
위에서 설명한 바와 같이, 트레이닝 프로세스(300)는 발언에 대응하는 인코딩된 표현(211) 시퀀스 내의 각각의 인코딩된 표현(211)(예를 들어, 프레임 레벨)에 대한 손실을 결정한다. 일부 예에서, 트레이닝 프로세스(300)는 프레임 레벨보다는 더 거친 발언 레벨에서 트레이닝 샘플을 선택하는 것으로부터 이익을 얻을 수 있다. 따라서, 트레이닝 프로세스(300)는 다음과 같이 마스크킹된 인코딩된 표현 (211) 세트의 모든 마스크킹된 인코딩된 표현(211m)의 신뢰도 스코어(416)를 평균함으로써 발언 레벨 신뢰도 스코어를 결정할 수 있다.
수학식 9에서 su는 발언 레벨 신뢰도 스코어를 나타낸다. 또한, 트레이닝 프로세스(300)는 발언 레벨 신뢰도 스코어에 기초하여 최종 트레이닝 목표(365)에 가중치를 부여할 수 있다. 예를 들어, 트레이닝 프로세스(300)는 높은 발언 레벨 신뢰도 스코어와 연관된 최종 트레이닝 목표(365)에 높은 가중치를 할당한다. 따라서, 높은 가중치를 갖는 가중된 최종 트레이닝 목표(365)는 더 낮은 가중치를 갖는 가중된 최종 트레이닝 목표(365)보다 오디오 인코더(210)의 사전 트레이닝에 더 큰 영향을 미칠 것이다.
도 5는 마스크킹된 음성 모델링을 위한 안내 데이터 선택 방법(500)에 대한 동작들의 예시적인 배열의 흐름도이다. 방법(500)은 메모리 하드웨어(620)(도 6)에 저장된 명령어를 사용하여 데이터 처리 하드웨어(610)(도 6)에서 실행될 수 있다. 데이터 처리 하드웨어(610) 및 메모리 하드웨어(620)는 사용자 디바이스(102) 및/또는 컴퓨팅 디바이스(600)(도 6)에 대응하는 도 1의 원격 컴퓨팅 디바이스(201) 상에 상주할 수 있다.
동작(502)에서, 방법(500)은 발언(106)에 대응하는 인코딩된 표현(211, 211a-n) 시퀀스를 획득하는 단계를 포함한다. 인코딩된 표현(211) 시퀀스 내의 각각의 인코딩된 표현(211)에 대해, 방법(500)은 동작(504 및 506)을 수행한다. 동작(504)에서, 방법(500)은 채점기(scorer) 모델(410)을 사용하여, 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)를 생성하도록 각각의 인코딩된 표현(211)을 처리하는 단계를 포함한다. 동작(506)에서, 방법(500)은 각각의 인코딩된 표현(211)에, 각각의 인코딩된 표현(211)에 대한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)에서 가장 높은 확률로서 신뢰도 스코어(416)를 할당하는 단계를 포함한다. 동작(508)에서, 방법(500)은 인코딩된 표현(211) 시퀀스에 할당된 신뢰도 스코어(416)에 기초하여 그 인코딩된 표현(211) 시퀀스로부터 마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택하는 단계를 포함한다. 동작(510)에서, 방법(500)은 선택된 마스킹되지 않은 인코딩된 표현(211) 세트를 마스킹함으로써 마스크킹된 인코딩된 표현(211, 211m) 세트를 생성하는 단계를 포함한다. 여기서, 마스크킹된 인코딩된 표현(211m) 세트의 각각의 마스크킹된 인코딩된 표현(211m)은 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 마스킹되지 않은 인코딩된 표현(211) 각각에 대응한다.
도 6은 본 문서에 설명된 시스템 및 방법을 구현하는데 사용될 수 있는 예시적인 컴퓨팅 디바이스(600)의 개략도이다. 컴퓨팅 디바이스(600)는 랩탑, 데스크탑, 워크스테이션, PDA, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도되었다. 본 명세서에 표시된 구성 요소, 이들의 연결, 관계 및 기능은 단지 예시일 뿐이며 본 문서에 설명 및/또는 청구된 발명의 구현을 제한하려는 의미는 아니다.
컴퓨팅 디바이스(600)는 프로세서(610), 메모리(620), 저장 디바이스(630), 메모리(620)와 고속 확장 포트(650)에 연결되는 고속 인터페이스/컨트롤러(640), 및 저속 버스(670)와 저장 디바이스(630)에 연결되는 저속 인터페이스/컨트롤러(660)를 포함한다. 각각의 구성요소(610, 620, 630, 640, 650, 660)는 다양한 버스를 사용하여 상호 연결되고, 공통 마더보드에 장착되거나 적절한 다른 방식으로 장착될 수 있다. 프로세서(610)는 고속 인터페이스(640)에 결합된 디스플레이(680)와 같은 외부 입/출력 디바이스에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 디스플레이하기 위해 메모리(620) 또는 저장 디바이스(630)에 저장된 명령들을 포함하여 컴퓨팅 디바이스(600) 내에서 실행하기 위한 명령들을 처리할 수 있다. 다른 구현에서, 다중 메모리 및 메모리 유형과 함께 다중 프로세서 및/또는 다중 버스가 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 디바이스(600)는 필요한 동작들의 일부를 제공하는 각 디바이스(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 다중 프로세서 시스템)와 연결될 수 있다.
메모리(620)는 컴퓨팅 디바이스(600) 내에 정보를 비-일시적으로 저장한다. 메모리(620)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛(들), 또는 비휘발성 메모리 유닛(들)일 수 있다. 비-일시적 메모리(620)는 컴퓨팅 디바이스(600)에 의해 사용되기 위해 임시 또는 영구적으로 프로그램(예를 들어, 명령 시퀀스) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는데 사용되는 물리적 디바이스일 수 있다. 비휘발성 메모리의 예로는 플래시 메모리 및 판독 전용 메모리(ROM)/프로그램 가능 판독 전용 메모리(PROM)/소거 가능한 프로그램 가능 판독 전용 메모리(EPROM)/전자적으로 소거 가능한 프로그램 가능 판독 전용 메모리(EEPROM)(예를 들어, 일반적으로 부팅 프로그램과 같은 펌웨어에 사용됨)가 포함되지만 이에 한정되지는 않는다. 휘발성 메모리의 예로는 RAM, DRAM, 정적 RAM(SRAM), PCM(Phase Change Memory) 및 디스크나 테이프가 포함되지만 이에 한정되지는 않는다.
저장 디바이스(630)는 컴퓨팅 디바이스(600)에 대용량 저장 디바이스를 제공할 수 있다. 일부 구현에서, 저장 디바이스(630)는 컴퓨터 판독 가능 매체이다. 다양한 다른 구현에서, 저장 디바이스(630)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 기타 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 또는 기타 구성의 디바이스를 포함하는 디바이스의 어레이일 수 있다. 추가적인 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행 시 위에 설명된 것과 같은 하나 이상의 방법을 수행하는 명령들이 포함되어 있다. 정보 매체는 메모리(620), 저장 디바이스(630), 또는 프로세서(610)의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 컨트롤러(640)는 컴퓨팅 디바이스(600)에 대한 대역폭 집약적 동작을 관리하는 반면 저속 컨트롤러(660)는 낮은 대역폭 집약적 동작을 관리한다. 이러한 업무 할당은 예시일 뿐이다. 일부 구현에서, 고속 컨트롤러(640)는 메모리(620), 디스플레이(680)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(미도시)를 수용할 수 있는 고속 확장 포트(650)에 연결된다. 일부 구현에서, 저속 컨트롤러(660)는 저장 디바이스(630) 및 저속 확장 포트(790)에 결합된다. 다양한 통신 포트(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(690)는 예를 들어 네트워크 어댑터를 통해 키보드, 포인팅 디바이스, 스캐너와 같은 하나 이상의 입력/출력 디바이스 또는 스위치나 라우터와 같은 네트워킹 디바이스에 연결될 수 있다.
컴퓨팅 디바이스(600)는 도면에 도시된 바와 같이 다수의 다른 형태로 구현될 수 있다. 예를 들어, 이는 표준 서버(600a)로서 또는 이러한 서버(600a) 그룹에서 여러 번 랩탑 컴퓨터(600b)로서 또는 랙 서버 시스템(600c)의 일부로서 구현될 수 있다.
본 명세서에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 및/또는 광학 회로, 집적 회로, 특별히 설계된 주문형 집적 회로(ASIC), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이들 다양한 구현에는 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 출력 디바이스로부터 데이터와 명령을 수신하고 이들로 데이터와 명령을 전송하도록 결합된 특수 또는 범용일 수 있는 적어도 하나의 프로그래밍 가능한 프로세서를 포함하는 프로그래밍 가능 시스템 상에서 실행 가능 및/또는 해석 가능한 하나 이상의 컴퓨터 프로그램에서의 구현이 포함될 수 있다.
이러한 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드라고도 함)에는 프로그래밍 가능 프로세서에 대한 기계 명령이 포함되어 있으며 고급 절차적 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에 사용되는 바와 같이, "기계 판독 가능 매체" 및 "컴퓨터 판독 가능 매체"라는 용어는 기계 판독 가능 신호로서 기계 명령을 수신하는 기계 판독 가능 매체를 비롯하여 프로그래밍 가능 프로세서에 기계 명령 및/또는 데이터를 제공하는데 사용되는 임의의 컴퓨터 프로그램 제품, 비-일시적 컴퓨터 판독 가능 매체, 장치 및/또는 디바이스를 지칭한다. "기계 판독 가능 신호"라는 용어는 기계 명령 및/또는 데이터를 프로그래밍 가능 프로세서에 제공하는데 사용되는 모든 신호를 의미한다.
본 명세서에 설명된 프로세스 및 논리 흐름은 데이터 처리 하드웨어라고도 하는 하나 이상의 프로그래밍 가능한 프로세서에 의해 수행될 수 있으며, 하나 이상의 컴퓨터 프로그램을 실행하여 입력 데이터에 대해 작동하고 출력을 생성함으로써 기능을 수행할 수 있다. 프로세스 및 논리 흐름은 FPGA(필드 프로그래밍 가능 게이트 어레이) 또는 ASIC(주문형 집적 회로)와 같은 특수 목적 논리 회로에 의해 수행될 수도 있다. 컴퓨터 프로그램의 실행에 적합한 프로세서에는 예를 들어 범용 및 특수 목적 마이크로프로세서와 임의의 종류의 디지털 컴퓨터에 사용되는 하나 이상의 프로세서가 모두 포함된다. 일반적으로, 프로세서는 판독 전용 메모리나 랜덤 액세스 메모리 또는 둘 다로부터 명령과 데이터를 수신한다. 컴퓨터의 필수 요소는 명령을 수행하는 프로세서와 명령 및 데이터를 저장하는 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예를 들어 자기, 광자기 디스크 또는 광 디스크로부터 데이터를 수신하거나 전송하거나 둘 모두를 포함하거나 작동 가능하게 결합될 것이다. 그러나, 컴퓨터에 그러한 디바이스가 있을 필요는 없다. 컴퓨터 프로그램 명령 및 데이터를 저장하는데 적합한 컴퓨터 판독 가능 매체에는 예를 들어 반도체 메모리 디바이스(예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스); 자기 디스크(예를 들어, 내부 하드 디스크 또는 이동식 디스크); 광자기 디스크; CD ROM 및 DVD-ROM 디스크를 비롯하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스가 포함된다. 프로세서와 메모리는 특수 목적 논리 회로로 보완되거나 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 개시의 하나 이상의 양태는 사용자에게 정보를 표시하기 위한 디스플레이 디바이스(예를 들어, CRT, LCD 모니터 또는 터치 스크린) 및 선택적으로 선택적으로 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스(예를 들어, 마우스 또는 트랙볼)를 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 디바이스도 사용자와의 상호 작용을 제공하는데 사용될 수 있는데, 예를 들어, 사용자에게 제공되는 피드백은 시각적 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함한 모든 형태로 수신될 수 있다. 또한, 컴퓨터는 사용자가 사용하는 디바이스와 문서를 주고받는 방식으로 사용자와 상호 작용할 수 있으며, 예를 들어, 웹 브라우저로부터 수신된 요청에 응답하여 사용자의 클라이언트 디바이스 상의 웹 브라우저로 웹 페이지를 전송한다.
다양한 구현이 설명되었다. 그럼에도 불구하고, 본 개시의 사상 및 범위를 벗어나지 않고 다양한 수정이 이루어질 수 있음이 이해될 것이다. 따라서, 다른 구현은 다음 청구범위의 범위 내에 있다.

Claims (20)

  1. 마스크킹된 음성 모델링을 위한 안내(guided) 데이터 선택을 위한 컴퓨터 구현 방법(500)으로서, 컴퓨터 구현 방법(500)은 데이터 처리 하드웨어(610) 상에서 실행될 때 데이터 처리 하드웨어(610)가 동작들을 수행하게 하며, 상기 동작들은,
    발언(106)에 대응하는 인코딩된 표현(211) 시퀀스를 획득하는 단계와;
    인코딩된 표현(211) 시퀀스의 각 인코딩된 표현(211)에 대해:
    채점기(scorer) 모델(410)을 사용하여, 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)를 생성하도록 각각의 인코딩된 표현(211)을 처리하는 단계; 및
    각각의 인코딩된 표현(211)에, 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)로부터 가장 높은 확률로서 신뢰도 스코어(416)를 할당하는 단계와;
    인코딩된 표현(211)의 시퀀스에 할당된 신뢰도 스코어(416)에 기초하여, 인코딩된 표현(211) 시퀀스로부터, 마스킹할 마스킹되지 않은(unmasked) 인코딩된 표현(211) 세트를 선택하는 단계와; 그리고
    선택된 마스킹되지 않은 인코딩된 표현(211) 세트를 마스킹함으로써 마스크킹된 인코딩된 표현(211m) 세트를 생성하는 단계를 포함하고, 상기 마스크킹된 인코딩된 표현(211m) 세트 내의 각각의 마스크킹된 인코딩된 표현(211m)은 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 마스킹되지 않은 인코딩된 표현(211) 각각에 대응하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  2. 제1항에 있어서,
    마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택하는 단계는,
    가장 높은 신뢰도 스코어(416)를 갖는 인코딩된 표현(211) 시퀀스로부터 상위 K개의 인코딩된 표현(211)을 선택하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  3. 제2항에 있어서,
    K는 마스킹될 인코딩된 표현(211) 시퀀스에 있는 인코딩된 표현(211)의 사전 결정된 비율에 기초하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  4. 제3항에 있어서,
    사전 결정된 비율은 40%인 것을 특징으로 하는 컴퓨터 구현 방법(500).
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 동작들은,
    마스킹할 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해, 양자화기(218)를 사용하여, 각각의 마스킹되지 않은 인코딩된 표현(211)에 대한 대응하는 타겟 컨텍스트 벡터(219)를 생성하는 단계와;
    마스크킹된 인코딩된 표현(211m) 세트의 각각의 마스크킹된 인코딩된 표현(211m)에 대해:
    각각의 마스크킹된 인코딩된 표현(211m)에 대한 대응하는 대조 컨텍스트 벡터(215)를 생성하는 단계; 및
    각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 대조 컨텍스트 벡터(215) 및 대응하는 타겟 컨텍스트 벡터(219)에 기초하여 대조 손실(342)을 생성하는 단계와; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 대조 손실(342)을 사용하여 오디오 인코더(210)를 사전 트레이닝하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  6. 제5항에 있어서,
    상기 동작들은,
    마스킹할 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해, 클러스터 모듈(222)을 사용하여, 각각의 마스킹되지 않은 인코딩된 표현(211)에 대한 대응하는 K-평균 클러스터(223)를 생성하는 단계와;
    마스크킹된 인코딩된 표현(211m)의 각각의 마스크킹된 인코딩된 표현(211m)에 대해, 각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211m)에 대해 생성된 대응하는 대조 컨텍스트 벡터(215) 및 대응하는 K-평균 클러스터(223)에 기초하여 교차 엔트로피 손실(355)을 생성하는 단계와; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 교차 엔트로피 손실(355)을 사용하여 오디오 인코더(210)를 사전 트레이닝하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  7. 제6항에 있어서,
    상기 동작들은,
    마스크킹된 인코딩된 표현(211m) 세트의 각각의 마스크킹된 인코딩된 표현(211m)에 대해, 대조 손실(342) 및 교차 엔트로피 손실(355)에 기초하여 최종 트레이닝 목표(365)를 결정하는 단계와; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 최종 트레이닝 목표(365)를 사용하여 오디오 인코더(210)를 사전 트레이닝하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  8. 제7항에 있어서,
    상기 동작들은,
    마스크킹된 인코딩된 표현(211m) 세트의 신뢰도 스코어(416)를 평균함으로써 발언 레벨(utterance-level) 신뢰도 스코어(416)를 결정하는 단계와;
    발언 레벨 신뢰도 스코어(416)에 기초하여 최종 트레이닝 목표(365)를 가중하는 단계와; 그리고
    가중된 최종 트레이닝 목표(365)를 사용하여 오디오 인코더(210)를 사전 트레이닝하는 단계를 를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  9. 제6항 내지 제8항 중 어느 한 항에 있어서,
    상기 동작들은,
    대조 컨텍스트 벡터(215)로부터 병목 특징(217)을 추출하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  10. 제9항에 있어서,
    상기 동작들은,
    추출된 병목 특징(217)을 사용하여 각각의 대응하는 K-평균 클러스터(223)를 정제하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법(500).
  11. 시스템(100)으로서,
    데이터 처리 하드웨어(610); 및
    데이터 처리 하드웨어(610)와 통신하며 데이터 처리 하드웨어(610)에서 실행될 때 데이터 처리 하드웨어(610)가 동작들을 수행하게 하는 명령을 저장하는 메모리(620) 하드웨어를 포함하고, 상기 동작들은,
    발언(106)에 대응하는 인코딩된 표현(211) 시퀀스를 획득하는 동작과;
    인코딩된 표현(211) 시퀀스의 각 인코딩된 표현(211)에 대해:
    채점기 모델(410)을 사용하여, 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)를 생성하도록 각각의 인코딩된 표현(211)을 처리하는 동작; 및
    각각의 인코딩된 표현(211)에, 각각의 인코딩된 표현(211)에 대한 가능한 음성 인식 가설(412)에 대한 대응하는 확률 분포(414)로부터 가장 높은 확률로서 신뢰도 스코어(416)를 할당하는 동작과;
    인코딩된 표현(211)의 시퀀스에 할당된 신뢰도 스코어(416)에 기초하여, 인코딩된 표현(211) 시퀀스로부터, 마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택하는 동작과; 그리고
    선택된 마스킹되지 않은 인코딩된 표현(211) 세트를 마스킹함으로써 마스크킹된 인코딩된 표현(211m) 세트를 생성하는 동작을 포함하고, 상기 마스크킹된 인코딩된 표현(211m) 세트 내의 각각의 마스크킹된 인코딩된 표현(211m)은 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 마스킹되지 않은 인코딩된 표현(211) 각각에 대응하는 것을 특징으로 하는 시스템(100).
  12. 제11항에 있어서,
    마스킹할 마스킹되지 않은 인코딩된 표현(211) 세트를 선택하는 동작은,
    가장 높은 신뢰도 스코어(416)를 갖는 인코딩된 표현(211) 시퀀스로부터 상위 K개의 인코딩된 표현(211)을 선택하는 동작을 포함하는 것을 특징으로 하는 시스템(100).
  13. 제12항에 있어서,
    K는 마스킹될 인코딩된 표현(211) 시퀀스에 있는 인코딩된 표현(211)의 사전 결정된 비율에 기초하는 것을 특징으로 하는 시스템(100).
  14. 제13항에 있어서,
    사전 결정된 비율은 40%인 것을 특징으로 하는 시스템(100).
  15. 제11항 내지 제14항 중 어느 한 항에 있어서,
    상기 동작들은,
    마스킹할 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해, 양자화기(218)를 사용하여, 각각의 마스킹되지 않은 인코딩된 표현(211)에 대한 대응하는 타겟 컨텍스트 벡터(219)를 생성하는 동작과;
    마스크킹된 인코딩된 표현(211m) 세트의 각각의 마스크킹된 인코딩된 표현(211m)에 대해:
    각각의 마스크킹된 인코딩된 표현(211m)에 대한 대응하는 대조 컨텍스트 벡터(215)를 생성하는 동작; 및
    각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해 생성된 대응하는 대조 컨텍스트 벡터(215) 및 대응하는 타겟 컨텍스트 벡터(219)에 기초하여 대조 손실(342)을 생성하는 동작과; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 대조 손실(342)을 사용하여 오디오 인코더(210)를 사전 트레이닝하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
  16. 제15항에 있어서,
    상기 동작들은,
    마스킹할 선택된 마스킹되지 않은 인코딩된 표현(211) 세트의 각각의 마스킹되지 않은 인코딩된 표현(211)에 대해, 클러스터 모듈(222)을 사용하여, 각각의 마스킹되지 않은 인코딩된 표현(211)에 대한 대응하는 K-평균 클러스터(223)를 생성하는 동작과;
    마스크킹된 인코딩된 표현(211m)의 각각의 마스크킹된 인코딩된 표현(211m)에 대해, 각각의 마스크킹된 인코딩된 표현(211m)에 대응하는 각각의 마스킹되지 않은 인코딩된 표현(211m)에 대해 생성된 대응하는 대조 컨텍스트 벡터(215) 및 대응하는 K-평균 클러스터(223)에 기초하여 교차 엔트로피 손실(355)을 생성하는 동작과; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 교차 엔트로피 손실(355)을 사용하여 오디오 인코더(210)를 사전 트레이닝하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
  17. 제16항에 있어서,
    상기 동작들은,
    마스크킹된 인코딩된 표현(211m) 세트의 각각의 마스크킹된 인코딩된 표현(211m)에 대해, 대조 손실(342) 및 교차 엔트로피 손실(355)에 기초하여 최종 트레이닝 목표(365)를 결정하는 동작과; 그리고
    마스크킹된 인코딩된 표현(211m) 세트에 대해 생성된 최종 트레이닝 목표(365)를 사용하여 오디오 인코더(210)를 사전 트레이닝하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
  18. 제17항에 있어서,
    상기 동작들은,
    마스크킹된 인코딩된 표현(211m) 세트의 신뢰도 스코어(416)를 평균함으로써 발언 레벨 신뢰도 스코어(416)를 결정하는 동작과;
    발언 레벨 신뢰도 스코어(416)에 기초하여 최종 트레이닝 목표(365)를 가중하는 동작과; 그리고
    가중된 최종 트레이닝 목표(365)를 사용하여 오디오 인코더(210)를 사전 트레이닝하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
  19. 제16항 내지 제18항 중 어느 한 항에 있어서,
    상기 동작들은,
    대조 컨텍스트 벡터(215)로부터 병목 특징(217)을 추출하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
  20. 제19항에 있어서,
    상기 동작들은,
    추출된 병목 특징(217)을 사용하여 각각의 대응하는 K-평균 클러스터(223)를 정제하는 동작을 더 포함하는 것을 특징으로 하는 시스템(100).
KR1020247012536A 2021-10-05 2022-08-18 마스크킹된 음성 모델링을 위한 안내 데이터 선택 KR20240068699A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US63/262,136 2021-10-05

Publications (1)

Publication Number Publication Date
KR20240068699A true KR20240068699A (ko) 2024-05-17

Family

ID=

Similar Documents

Publication Publication Date Title
US11837216B2 (en) Speech recognition using unspoken text and speech synthesis
CN111429889A (zh) 基于截断注意力的实时语音识别的方法、装置、设备以及计算机可读存储介质
KR20230147685A (ko) 서브 워드 엔드-투-엔드 자동 스피치 인식을 위한 워드 레벨 신뢰도 학습
WO2023055410A1 (en) Contrastive siamese network for semi-supervised speech recognition
CN117099157A (zh) 用于端到端自动语音识别置信度和删除估计的多任务学习
US20230317059A1 (en) Alignment Prediction to Inject Text into Automatic Speech Recognition Training
US11823697B2 (en) Improving speech recognition with speech synthesis-based model adapation
KR20230156425A (ko) 자체 정렬을 통한 스트리밍 asr 모델 지연 감소
JP2024510816A (ja) タイイングされ縮小されたrnn-t
KR20240068699A (ko) 마스크킹된 음성 모델링을 위한 안내 데이터 선택
US20230103722A1 (en) Guided Data Selection for Masked Speech Modeling
US20230017892A1 (en) Injecting Text in Self-Supervised Speech Pre-training
US20230298565A1 (en) Using Non-Parallel Voice Conversion for Speech Conversion Models
US20240153484A1 (en) Massive multilingual speech-text joint semi-supervised learning for text-to-speech
US20230013587A1 (en) Advancing the Use of Text and Speech in ASR Pretraining With Consistency and Contrastive Losses
US20240013777A1 (en) Unsupervised Data Selection via Discrete Speech Representation for Automatic Speech Recognition
KR102637025B1 (ko) 자동 음성 인식을 위한 다언어 리스코어링 모델들
US20240029715A1 (en) Using Aligned Text and Speech Representations to Train Automatic Speech Recognition Models without Transcribed Speech Data
CN117597729A (zh) 推进文本和语音在具有一致性和对比损失的asr预训练中的使用