KR20220035180A - E2E(End-to-end) 음성 합성 시스템에서 표현력 제어 - Google Patents

E2E(End-to-end) 음성 합성 시스템에서 표현력 제어 Download PDF

Info

Publication number
KR20220035180A
KR20220035180A KR1020227004782A KR20227004782A KR20220035180A KR 20220035180 A KR20220035180 A KR 20220035180A KR 1020227004782 A KR1020227004782 A KR 1020227004782A KR 20227004782 A KR20227004782 A KR 20227004782A KR 20220035180 A KR20220035180 A KR 20220035180A
Authority
KR
South Korea
Prior art keywords
text
current input
context
input text
style
Prior art date
Application number
KR1020227004782A
Other languages
English (en)
Other versions
KR102616214B1 (ko
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 구글 엘엘씨
Priority to KR1020237043408A priority Critical patent/KR20240001262A/ko
Publication of KR20220035180A publication Critical patent/KR20220035180A/ko
Application granted granted Critical
Publication of KR102616214B1 publication Critical patent/KR102616214B1/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
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/033Voice editing, e.g. manipulating the voice of the synthesiser
    • 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
    • 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/0455Auto-encoder networks; Encoder-decoder networks
    • 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
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management
    • 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
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • G10L13/10Prosody rules derived from text; Stress or intonation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural 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/044Recurrent networks, e.g. Hopfield networks
    • 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
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • 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
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management
    • G10L13/047Architecture of speech synthesisers
    • 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
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)
  • Stereophonic System (AREA)
  • Massaging Devices (AREA)
  • Vehicle Body Suspensions (AREA)

Abstract

시스템(900)은 컨텍스트 인코더(610), 텍스트 예측 네트워크(520), 및 TTS(text-to-speech) 모델(650)을 포함한다. 컨텍스트 인코더는 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)을 수신하고 현재 입력 텍스트와 연관된 컨텍스트 임베딩(612)을 생성하기 위해 하나 이상의 컨텍스트 특징을 프로세싱하도록 구성된다. 텍스트 예측 네트워크는 출력으로서 현재 입력 텍스트에 대한 스타일 임베딩(650)을 예측하기 위해 현재 입력 텍스트 및 컨텍스트 임베딩을 프로세싱하도록 구성된다. 스타일 임베딩은 현재 입력 텍스트를 표현 음성(680)으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정한다. TTS 모델은 현재 입력 텍스트 및 현재 입력 텍스트의 표현 음성의 출력 오디오 신호(670)를 생성하기 위해 스타일 임베딩을 프로세싱하도록 구성된다. 출력 오디오 신호에는 스타일 임베딩에 의해 지정된 특정 프로소디 및/또는 스타일이 있다.

Description

E2E(End-to-end) 음성 합성 시스템에서 표현력 제어
본 개시는 표현형 E2E 음성 합성 시스템에서 컨텍스트 특징을 사용하는 것에 관한 것이다.
신경망은 수신된 입력에 대한 출력을 예측하기 위해 비선형 유닛의 하나 이상의 계층(레이어)을 사용하는 기계 학습 모델이다. 예를 들어, 신경망은 입력 텍스트를 출력 음성으로 변환할 수 있다. 일부 신경망에는 출력층 이외에 하나 이상의 은닉층이 포함된다. 각각의 은닉층의 출력은 네트워크(신경망) 내의 다음 은닉층 또는 출력층의 다음 계층에 대한 입력으로서 사용된다. 네트워크의 각 계층은 각각의 파라미터 세트의 현재 값에 따라 수신된 입력으로부터 출력을 생성한다.
일부 신경망은 순환 신경망이다. 순환 신경망은 입력 시퀀스를 수신하고 입력 시퀀스로부터 출력 시퀀스를 생성하는 신경망이다. 특히, 순환 신경망은 현재 시간 단계에서 출력을 계산할 때 이전 시간 단계에서 네트워크의 일부 또는 전부를 사용할 수 있다. 순환 신경망의 예는 하나 이상의 LSTM 메모리 블록을 포함하는 긴 단기(LSTM: long short term) 신경망이다. 각각의 LSTM 메모리 블록은 하나 이상의 셀을 포함하며, 각 셀은 입력 게이트, 망각(forget) 게이트, 출력 게이트를 포함할 수 있으며, 출력 게이트는 예를 들어 현재 활성화를 생성하는 데 사용하거나 LSTM 신경망의 다른 컴포넌트에 제공하기 위해 셀에 대한 이전 상태를 셀이 저장할 수 있게 한다.
본 개시물의 일 양태는 현재 입력 텍스트의 표현 음성의 출력 오디오 신호를 생성하기 위한 시스템을 제공한다. 시스템은 컨텍스트 인코더, 컨텍스트 인코더와 통신하는 텍스트 예측 네트워크 및 텍스트 예측 네트워크와 통신하는 TTS(text-to-speech) 모델을 포함한다. 컨텍스트 인코더는 표현 음성으로 합성될 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징을 수신하고, 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 생성하기 위해 하나 이상의 컨텍스트 특징을 프로세싱하도록 구성된다. 각 컨텍스트 특징은 현재 입력 텍스트의 텍스트 소스에서 파생된다. 텍스트 예측 네트워크는 텍스트 소스로부터 현재 입력 텍스트를 수신하고, 컨텍스트 인코더로부터 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 수신하고, 현재 입력 텍스트 및 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 프로세싱하여 현재 입력 텍스트에 대한 스타일 임베딩을 출력으로서 예측하도록 구성된다. 텍스트 소스는 표현형 음성으로 합성될 텍스트 시퀀스를 포함하고, 스타일 임베딩은 현재 입력 텍스트를 표현형 음성으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정한다. TTS 모델은 텍스트 소스로부터 현재 입력 텍스트를 수신하고, 텍스트 예측 네트워크에서 예측한 스타일 임베딩을 수신하고, 현재 입력 텍스트 및 스타일 임베딩을 프로세싱하여 현재 입력 텍스트의 표현 음성의 출력 오디오 신호를 생성하도록 구성된다. 출력 오디오 신호에는 스타일 임베딩에 의해 지정된 특정 프로소디(prosody) 및/또는 스타일이 있다.
본 개시물의 구현은 다음의 선택적인 특징들 중 하나 이상을 포함할 수 있다. 일부 구현에서, 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 현재 입력 텍스트; 현재 입력 텍스트에 선행하는 텍스트 소스의 이전 텍스트; 이전 텍스트에서 합성된 이전 음성; 현재 입력 텍스트 다음에 오는 텍스트 소스의 다가오는(다음) 텍스트; 또는 이전 텍스트 및 이전 텍스트와 연관된 이전 컨텍스트 임베딩을 기반으로 텍스트 예측 네트워크에 의해 예측된 이전 스타일 임베딩 중 적어도 하나를 포함한다. 일부 예에서, 텍스트 소스는 텍스트 문서를 포함하고, 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 텍스트 문서의 제목; 텍스트 문서의 챕터 제목; 텍스트 문서의 섹션 제목 텍스트 문서의 헤드라인; 텍스트 문서의 하나 이상의 글머리 기호; 텍스트 문서에서 추출한 개념 그래프의 엔티티 또는 텍스트 문서에서 추출된 하나 이상의 구조화된 답변 표현 중 적어도 하나를 포함한다.
다른 예에서, 텍스트 소스는 대화 트랜스크립트(transcript)을 포함하고, 현재 입력 텍스트는 대화 트랜스크립트의 현재 턴(turn)에 해당한다. 이러한 예에서, 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은 대화 트랜스크립트의 이전 턴에 해당하는 대화 트랜스크립트의 이전 텍스트; 또는 대화 트랜스크립트의 다음 턴에 해당하는 대화 트랜스크립트의 다가오는(upcoming) 텍스트 중 적어도 하나를 포함한다.
텍스트 소스는 또한 현재 입력 텍스트가 쿼리-응답 시스템에서 수신된 현재 쿼리에 대한 응답에 대응하는 쿼리-응답 시스템을 포함할 수 있다. 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은 현재 쿼리와 연관된 텍스트 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 텍스트 -상기 쿼리 시퀀스는 현재 쿼리 및 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함함-; 또는 현재 쿼리와 연관된 오디오 특징 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 오디오 특징 중 적어도 하나를 포함한다. 쿼리 시퀀스는 현재 쿼리와 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함할 수 있다.
일부 구현들에서, TTS 모델은 인코더 신경망, 연결기, 및 어텐션 기반 디코더 순환 신경망을 포함한다. 인코더 신경망은 텍스트 소스로부터 현재 입력 텍스트를 수신하고 현재 입력 텍스트를 프로세싱하여 현재 입력 텍스트의 각각의 인코딩된 시퀀스를 생성하도록 구성된다. 연결기는, 인코더 신경망으로부터 현재 입력 텍스트의 각 인코딩된 시퀀스를 수신하고, 텍스트 예측 네트워크에 의해 예측된 스타일 임베딩을 수신하고, 현재 입력 텍스트의 각 인코딩된 시퀀스와 스타일 임베딩 사이의 연결을 생성하도록 구성된다. 어텐션 기반 디코더 순환 신경망은, 디코더 입력의 시퀀스를 수신하고, 그리고 상기 시퀀스의 각 디코더 입력에 대해, 해당 디코더 입력 및 현재 입력 텍스트의 각각의 인코딩된 시퀀스와 스타일 임베딩 사이의 연결을 프로세싱하여 출력 오디오 신호의 r개의 프레임을 생성하도록 구성되며, 상기 r은 1보다 큰 정수를 포함한다.
TTS 모델이 인코더 신경망을 포함하는 구현에서, 인코더 신경망은 인코더 프리-넷 신경망 및 인코더 CBHG 신경망을 포함할 수 있다. 인코더 프리-넷 신경망은 현재 입력 텍스트의 문자 시퀀스에서 각 문자의 각각의 임베딩을 수신하고, 각 문자에 대해 각각의 임베딩을 프로세싱하여 해당 문자의 변환된 임베딩을 생성하도록 구성된다. 인코더 CBHG 신경망은, 인코더 프리-넷 신경망에 의해 생성된 변환된 임베딩을 수신하고, 그리고 변환된 임베딩을 프로세싱하여 현재 입력 텍스트의 각각의 인코딩된 시퀀스를 생성하도록 구성된다. 일부 구성에서 인코더 CBHG 신경망은 1차원(1-D) 컨볼루션 필터 뱅크, 하이웨이 네트워크, 양방향 순환 신경망을 포함한다.
일부 구성에서, 텍스트 예측 네트워크는 GRU(time-aggregating gated recurrent unit) 순환 신경망(RNN) 및 하나 이상의 완전 연결 계층을 포함한다. GRU RNN은 현재 입력 텍스트와 연관된 컨텍스트 임베딩 및 현재 입력 텍스트의 인코딩된 시퀀스를 수신하고, 컨텍스트 임베딩 및 인코딩된 시퀀스를 프로세싱하여 고정 길이 특징 벡터를 생성하도록 구성된다. 하나 이상의 완전 연결 계층은 고정 길이 특징 벡터를 프로세싱하여 스타일 임베딩을 예측하도록 구성된다. 이러한 구성에서, 하나 이상의 완전 연결 계층은 ReLU 활성화를 사용하는 하나 이상의 은닉 완전 연결 계층 및 예측된 스타일 임베딩을 방출하기 위해 하이퍼볼릭탄젠트(tanh) 활성화를 사용하는 출력 계층을 포함할 수 있다.
컨텍스트 모델, 텍스트 예측 모델, TTS 모델은 공동으로 학습(훈련)될 수 있다. 또는, 2단계(two-step) 훈련 절차는 훈련 절차의 첫 번째 단계에서 TTS 모델을 훈련하고, 훈련 절차의 두 번째 단계에서 컨텍스트 모델과 텍스트 예측 모델을 별도로 훈련할 수 있다.
본 개시의 다른 양태는 현재 입력 텍스트의 표현 음성의 출력 오디오 신호를 생성하기 위한 방법을 제공한다. 방법은 데이터 프로세싱 하드웨어에서 텍스트 소스로부터 현재 입력 텍스트를 수신하는 단계를 포함한다. 현재 입력된 텍스트는 TTS(text-to-speech) 모델에 의해 표현형 음성(표현 음성)으로 합성된다. 방법은 또한 데이터 프로세싱 하드웨어에 의해, 텍스트 소스로부터 유도된 하나 이상의 컨텍스트 특징을 프로세싱함으로써 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 컨텍스트 모델을 사용하여 생성하는 단계를 포함한다. 이 방법은 또한 데이터 프로세싱 하드웨어에 의해, 현재 입력 텍스트 및 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 프로세싱하여 현재 입력 텍스트에 대한 스타일 임베딩을 예측하는 단계를 포함한다. 스타일 임베딩은 현재 입력 텍스트를 표현 음성으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정한다. 이 방법은 또한 데이터 프로세싱 하드웨어에 의해, TTS 모델을 사용하여, 스타일 임베딩 및 현재 입력 텍스트를 프로세싱하여 현재 입력 텍스트의 표현 음성의 출력 오디오 신호를 생성하는 단계를 포함한다. 출력 오디오 신호에는 스타일 임베딩에 의해 지정된 특정 프로소디 및/또는 스타일이 있다.
이 양태는 다음과 같은 선택적 기능 중 하나 이상을 포함할 수 있다. 일부 구현에서, 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 현재 입력 텍스트; 현재 입력 텍스트에 선행하는 텍스트 소스의 이전 텍스트; 이전 텍스트에서 합성된 이전 음성; 현재 입력 텍스트 다음에 오는 텍스트 소스의 다음(다가오는(upcoming)) 텍스트; 또는 이전 텍스트 및 이전 텍스트와 연관된 이전 컨텍스트 임베딩을 기반으로 텍스트 예측 네트워크에 의해 예측된 이전 스타일 임베딩중 적어도 하나를 포함한다.
일부 예에서, 텍스트 소스는 텍스트 문서를 포함하고, 그리고 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 텍스트 문서의 제목; 텍스트 문서의 챕터 제목; 텍스트 문서의 섹션 제목 텍스트 문서의 헤드라인 텍스트 문서의 하나 이상의 글머리 기호 텍스트 문서에서 추출한 개념 그래프의 엔티티 또는 텍스트 문서에서 추출된 하나 이상의 구조화된 답변 표현 중 적어도 하나를 포함한다.
다른 예에서, 텍스트 소스는 대화 트랜스크립트을 포함하고, 현재 입력 텍스트는 대화 트랜스크립트의 현재 턴에 해당한다. 이러한 예에서, 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 대화 트랜스크립트의 이전 턴에 해당하는 대화 트랜스크립트의 이전 텍스트; 또는 대화 트랜스크립트의 다음 턴에 해당하는 대화 트랜스크립트의 다가오는 텍스트 중 적어도 하나를 포함한다.
텍스트 소스는 또한 현재 입력 텍스트가 쿼리-응답 시스템에서 수신된 현재 쿼리에 대한 응답에 대응하는 쿼리-응답 시스템을 포함할 수 있다. 현재 입력 텍스트와 연관된 하나 이상의 컨텍스트 특징은, 현재 쿼리와 연관된 텍스트 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 텍스트 -상기 쿼리 시퀀스는 현재 쿼리 및 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함함-; 또는 현재 쿼리와 연관된 오디오 특징 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 오디오 특징 중 적어도 하나를 포함한다. 쿼리 시퀀스는 현재 쿼리와 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함할 수 있다.
일부 구현에서, 출력 오디오 신호를 생성하는 단계는, TTS 모델의 인코더 신경망에서, 텍스트 소스로부터 현재 입력 텍스트를 수신하는 단계; 인코더 신경망을 사용하여, 현재 입력 텍스트의 각각의 인코딩된 시퀀스를 생성하는 단계; TTS 모델의 연결기를 사용하여 현재 입력 텍스트의 각 인코딩된 시퀀스와 스타일 임베딩 간의 연결을 생성하는 단계; TTS 모델의 어텐션 기반 디코더 순환 신경망에서 디코더 입력의 시퀀스를 수신하는 단계; 상기 디코더 입력 시퀀스의 각 디코더 입력에 대해, 어텐션 기반 디코더 순환 신경망을 사용하여, 스타일 임베딩과 현재 입력 텍스트의 각 인코딩된 시퀀스 사이의 연결 및 해당 디코더 입력을 프로세싱하여 출력 오디오 신호의 r개 프레임을 생성하는 단계를 포함하며, 상기 r은 1보다 큰 정수를 포함한다. 이러한 구현에서, 현재 입력 텍스트의 각각의 인코딩된 시퀀스를 생성하는 단계는, 인코더 신경망의 인코더 프리-넷 신경망에서 현재 입력 텍스트의 문자 시퀀스 내의 각 문자의 각각의 임베딩을 수신하는 단계; 문자 시퀀스의 각 문자에 대해 인코더 프리-넷 신경망을 사용하여 문자의 각각의 변환된 임베딩을 생성하기 위해 각각의 임베딩을 프로세싱하는 단계; 및 인코더 신경망의 인코더 CBHG 신경망을 사용하여 변환된 임베딩을 프로세싱하여 현재 입력 텍스트의 각각의 인코딩된 시퀀스를 생성하는 단계를 포함한다. 일부 구성에서 인코더 CBHG 신경망은 1차원(1-D) 컨볼루션 필터 뱅크, 하이웨이 네트워크, 양방향 순환 신경망을 포함한다.
일부 예에서, 현재 입력 텍스트에 대한 스타일 임베딩을 예측하는 단계는, 텍스트 예측 모델의 GRU(time-aggregating gated recurrent unit) RNN(recurrent neural network)을 사용하여, 현재 입력 텍스트의 인코딩된 시퀀스 및 현재 입력 텍스트와 연관된 컨텍스트 임베딩을 프로세싱하여 고정 길이 특징 벡터를 생성하는 단계; 그리고 GRU-RNN을 따르는 텍스트 예측 네트워크의 하나 이상의 완전 연결 계층를 사용하여, 상기 고정 길이 특징 벡터를 프로세싱함으로써 스타일 임베딩을 예측하는 단계를 포함한다. 하나 이상의 완전 연결 계층은 상기 예측된 스타일 임베딩(550)을 방출하기 위해 하이퍼볼릭탄젠트(tanh) 활성화를 사용하는 출력 계층 및 ReLU 활성화를 사용하는 하나 이상의 은닉 완전 연결 계층을 포함할 수 있다. 컨텍스트 모델, 텍스트 예측 모델, TTS 모델은 공동으로 학습(훈련)될 수 있다. 또는, 2단계 훈련 절차는 훈련 절차의 첫 번째 단계에서 TTS 모델을 훈련하고, 훈련 절차의 두 번째 단계에서 컨텍스트 모델과 텍스트 예측 모델을 별도로 훈련할 수 있다.
본 개시내용의 하나 이상의 구현의 세부사항은 첨부 도면 및 아래의 설명에 기재되어 있다. 다른 양태, 특징 및 이점은 설명 및 도면, 그리고 청구범위로부터 명백할 것이다.
도 1은 예시적인 텍스트-음성(text-to-speech) 변환 시스템의 개략도이다.
도 2는 예시적인 CBHG 신경망의 개략도이다.
도 3은 입력 텍스트로부터 음성을 합성하기 위한 동작의 예시적인 배열이다.
도 4는 프로소디 임베딩을 생성하기 위한 예시적인 결정론적 기준 인코더의 개략도이다.
도 5a 및 5b는 예시적인 텍스트 예측 시스템의 개략도이다.
도 6a 및 6b는 예시적인 컨텍스트 예측 시스템의 개략도이다.
도 7a-7d는 예시적인 컨텍스트 TTS(text-to-speech) 모델의 개략도이다.
도 8은 예시적인 테스트 소스의 개략도이다.
도 9는 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치의 개략도이다.
도 10은 표현 음성의 출력 오디오 신호를 생성하는 방법에 대한 동작들의 예시적인 배열의 흐름도이다.
다양한 도면에서 동일한 참조 부호는 동일한 요소를 나타낸다.
사실적 인간 음성의 합성은 동일한 텍스트 입력이 무한한 수의 합리적인 구어 실현을 갖는다는 점에서 과소 결정된 문제이다. E2E(End-to-end) 신경망 기반 접근 방식은 짧은 어시스턴트와 같은 발화에 대한 인간의 수행과 일치하도록 발전하고 있지만, 신경망 모델은 각각 정제된 언어 또는 음성 표현에서 작동하는 여러 프로세싱 단계를 포함하는 기존 모델보다 해석 가능성이 낮거나 제어할 수 없는 것으로 간주되는 경우가 있다.
TTS(text-to-speech) 시스템의 주요 과제는 주어진 입력 텍스트에 대해 자연스러운 음성 스타일을 생성하기 위한 모델을 개발하는 것이다. 특히 자연스러운 음성 생성에 대한 도전에 기여하는 일부 요소에는 높은 오디오 충실도, 정확한 발음, 수용 가능한 프로소디(prosody) 및 스타일이 포함된다. 여기서 "프로소디"은 일반적으로 피치(pitch), 강세, 휴식(breaks) 및 리듬과 같은 낮은 레벨의 특성을 나타낸다. 프로소디는 감정적 가치 및 각성과 같은 상위 레벨의 언어 특성을 나타내는 "스타일"에 영향을 미친다. 이처럼 프로소디와 문체는 합성하고자 하는 텍스트에 명시되지 않은 정보를 포함하고 합성된 음성이 무한히 말해질 수 있도록 하기 때문에 모델링이 어렵다. 간단히 말해서, 스타일과 프로소디에 대한 정보를 사용할 수 없다는 점에서 텍스트가 과소 지정되어 텍스트에서 음성으로의 매핑을 일대다(one-to-many) 문제로 남긴다.
신디사이저(synthesizer)에 대한 입력으로 높은 레벨의 스타일 레이블(label)(예: 감정 전달) 또는 낮은 레벨의 주석(예: 음절 강세 표시, 속도 제어, 피치 트랙 등)을 제공하면 프로소디 및 스타일의 모델링을 개선할 수 있지만, 이러한 접근 방식에는 여러 가지 단점이 있다. 즉, 명시적 레이블은 정밀하게 정의하기 어렵고 획득 비용이 많이 들고 본질적으로 시끄럽고 청취자의 지각 품질과의 상관 관계를 보장하지 않는다. 더욱이, 프로소디와 스타일을 모델링하기 위한 명시적 레이블 입력은 종종 손으로 조정한 휴리스틱 또는 별도로 훈련된 모델에서 파생된다. 또한 이러한 입력이 파생된 컨텍스트는 일반적으로 손실된다.
일반적으로 TTS 시스템은 한 번에 하나의 문장이나 단락을 합성하여 음성을 생성한다. 그 결과, 텍스트의 일부가 그려지는 컨텍스트에 접근할 수 없는 경우 합성된 음성의 자연스러운 표현이 제한된다. 오디오북과 같은 긴 형식의 표현이 풍부한 텍스트 데이터 세트에서 음성을 합성할 때 광범위한 말하기 스타일을 전달하는 것은 특히 어렵다. 예를 들어, 광범위한 다른 음성 특성을 프로소디 스타일의 단일 평균 모델로 간단히 축소하면 텍스트가 전달하려는 적절한 감정적 가치와 각성을 정확하게 반영하지 못할 수 있는 특정 말하기 스타일을 갖는 합성된 음성이 생성된다. 예에서, 오디오북의 연설을 합성하기 위해 프로소디 스타일의 단일 평균 모델을 적용하는 것은 오디오북의 행복한 챕터에서 오디오북의 다음 슬픈 챕터로의 정서적 전환과 같이 다양한 감정을 전달하는 데 필요한 모든 말하기 스타일을 적절하게 나타내지 못한다. 유사하게, 오디오북에는 상당한 스타일 변형이 있는 문자 음성이 포함될 수 있다. 이러한 예에서 프로소디 스타일의 평균 모델을 사용하면 감정적 전환이나 다른 문자 목소리(character voice) 사이의 스타일 변화를 전달하지 않는 단조롭게 들리는 연설이 생성된다. 합성할 음성에 대한 목표 프로소디 스타일을 전달하는 참조(기준) 오디오를 제공하거나 추론 시간에 목표 프로소디 스타일을 선택하기 위해 수동으로 가중치를 선택하면 서로 다른 음성 스타일의 요소를 효과적으로 풀 수 있지만, 이러한 접근 방식은 지도(supervised) 학습 모델에서 훈련되며 입력 텍스트(예: 오디오북)의 긴 형식 표현 데이터 세트에서 음성을 합성하는 데 이상적이지 않다.
본 명세서의 구현은 입력 텍스트 시퀀스로부터 합성된 음성을 생성하기 위한 E2E(end-to-end) TTS 모델에서 사용하기 위한 "가상(virtual)" 말하기 스타일 레이블로서 프로소디 스타일 임베딩(Style Embedding)을 적용하도록 구성된 예시적인 아키텍처에 관한 것이다. 명백해지는 바와 같이, 이러한 예시적인 아키텍처는 비지도(unsupervised) 모델을 사용하여 학습하고 입력 텍스트 시퀀스에서만 파생된 컨텍스트로부터 문체 렌더링을 예측할 수 있으며, 학습 중 명시적 레이블이나 추론 시 다른 보조 입력이 필요하지 않다. 따라서 이러한 구현은 텍스트만으로 말하는 스타일 및 배경 소음을 포함하여 화자 독립적인 변동 요인을 캡처할 수 있다.
본 명세서의 구현은 또한 현재 입력 텍스트 시퀀스에 대한 문체(stylistic) 렌더링을 예측하기 위한 조건부 입력으로서 추가 컨텍스트 특징을 수신하도록 구성된 컨텍스트 예측 시스템에 관한 것이다. 여기서, 입력 텍스트 시퀀스 및 각 컨텍스트 특징은 입력 텍스트 시퀀스로부터 합성된 음성의 적절한 문체 렌더링을 예측하기 위한 컨텍스트 역할을 할 수 있다. 컨텍스트 특징은 단어 임베딩, 문장 임베딩 및/또는 음성 태그(예: 명사, 동사, 형용사 등)를 포함할 수 있다. 본 명세서에서 사용되는 바와 같이, 이용가능한 컨텍스트 특징은 이전/과거 텍스트, 향후/미래 텍스트, 및 이전/과거 오디오를 포함할 수 있지만, 이에 제한되지 않는다. 다른 말로 하자면, 합성할 현재 입력 텍스트의 텍스트 소스에서 컨텍스트 특징을 파생할 수 있다. 제목, 장 제목, 섹션 제목, 헤드라인, 글머리 기호 등과 같이 합성할 텍스트가 포함된 문서 구조에서 컨텍스트 특징의 추가 소스를 얻을 수 있다. 일부 예에서, 개념 그래프(concept graph)(예: Wikipedia) 및/또는 구조화된 답변 표현의 엔티티와 연관된 개념은 소스 컨텍스트 특징이다. 더욱이, 디지털 어시스턴트 설정에서, 쿼리(또는 쿼리 시퀀스)에서 파생된 오디오/텍스트 특징은 응답을 합성할 때 컨텍스트 특징으로 사용될 수 있는 반면 대화의 이전 및/또는 다음 "턴(turn)"의 텍스트는 해당 대화를 합성하기 위한 컨텍스트 특징으로 파생된다. 추가적으로 또는 대안적으로, 가상 환경 내에 존재하는 문자 및 객체(예를 들어, 이모지)는 또한 현재 입력 텍스트 시퀀스에 대한 문체 렌더링을 예측하기 위한 컨텍스트 특징의 소스일 수 있다.
도 1에 도시된 바와 같이, 일부 구현들에서, 예시적인 텍스트-음성(TTS: text-to-speech) 변환 시스템(100)은 입력으로서 입력 텍스트(Input Text Sequence)(104)를 수신하고 출력으로서 음성(120)를 생성하기 위해 입력 텍스트(104)를 프로세싱하도록 구성된 서브시스템(102)을 포함한다. 입력 텍스트(104)는 특정 자연 언어로 된 일련의 문자를 포함한다. 문자 시퀀스에는 알파벳 문자, 숫자, 구두점 및/또는 기타 특수 문자가 포함될 수 있다. 입력 텍스트(104)는 다양한 길이의 문자들의 시퀀스일 수 있다. 텍스트-음성 변환 시스템(100)은 하나 이상의 위치에 있는 하나 이상의 컴퓨터에서 컴퓨터 프로그램으로 구현되는 시스템의 예이며, 여기에서 아래에 설명된 시스템, 컴포넌트 및 기술이 구현될 수 있다. 예를 들어, 시스템(100)은 도 9의 컴퓨터 시스템(900) 상에서 실행될 수 있다.
입력 텍스트(104)를 프로세싱하기 위해, 서브시스템(102)은 시퀀스-투-시퀀스(sequence-to-sequence) 순환 신경망(106)(이하 "seq2seq 네트워크(106)"), 후프로세싱(후처리) 신경망(108) 및 파형 합성기(110)를 포함하는 E2E TTS 모델(end-to-end text-to-speech model)(150)과 상호작용하도록 구성된다.
서브시스템(102)이 특정 자연어의 문자 시퀀스를 포함하는 입력 텍스트(104)를 수신한 후, 서브시스템(102)은 seq2seq 네트워크(106)에 대한 입력으로서 문자 시퀀스를 제공한다. seq2seq 네트워크(106)는 서브시스템(102)으로부터 문자들의 시퀀스를 수신하고 특정 자연어에서 문자들의 시퀀스의 구두 발화의 스펙트로그램(spectrogram)을 생성하기 위해 문자들의 시퀀스를 프로세싱하도록 구성된다.
특히, seq2seq 네트워크(106)는 (i) 인코더 프리-넷(pre-net) 신경망(114) 및 인코더 CBHG 신경망(116)을 포함하는 인코더 신경망(112), 및 (ii) 어텐션 기반(attention-based) 디코더 순환 신경망(118)을 포함한다. CBHG는 Convolutions, Filter Banks and Highway Layers, Gated Recurrent Units의 약어이다. 문자 시퀀스의 각 문자는 원-핫(one-hot) 벡터로 표현되고 연속형 벡터에 포함될 수 있다. 즉, 서브시스템(102)은 시퀀스의 각 문자를 원-핫 벡터로 표시한 다음 seq2seq 네트워크(106)에 대한 입력으로 시퀀스를 제공하기 전에 문자의 임베딩, 즉 벡터 또는 숫자 값의 다른 정렬된 컬렉션을 생성할 수 있다.
인코더 프리-넷 신경망(114)은 시퀀스에서 각 문자의 각각의 임베딩을 수신하고, 문자의 변환된 임베딩을 생성하기 위해 각 문자의 각각의 임베딩을 프로세싱하도록 구성된다. 예를 들어, 인코더 프리-넷 신경망(114)은 변환된 임베딩을 생성하기 위해 각각의 임베딩에 비선형 변환(non-linear transformations) 세트를 적용할 수 있다. 일부 경우에, 인코더 프리-넷 신경망(114)은 컨버전스(convergence) 속도를 증가시키고, 훈련 동안 시스템의 일반화 능력을 개선하기 위해 드롭아웃(dropout)을 갖는 병목(bottleneck) 신경망 계층(레이어)을 포함한다.
인코더 CBHG 신경망(116)은 인코더 프리-넷 신경망(206)으로부터 변환된 임베딩을 수신하고 변환된 임베딩을 프로세싱하여 문자 시퀀스의 인코딩된 표현을 생성하도록 구성된다. 인코더 CBHG 신경망(112)은 CBHG 신경망(200)(도 2)을 포함하고, 이는 도 2와 관련하여 아래에서 더 상세히 설명된다. 여기에 설명된 인코더 CBHG 신경망(112)의 사용은 과적합(overfitting)을 감소시킬 수 있다. 또한, 인코더 CBHB 신경망(112)은 예를 들어 다층 RNN 인코더와 비교할 때 더 적은 발음 오류(mispronunciations)를 초래할 수 있다.
어텐션 기반 디코더 순환 신경망(118)(여기서 "디코더 신경망(118)"으로 지칭됨)은 디코더 입력의 시퀀스를 수신하도록 구성된다. 시퀀스의 각 디코더 입력에 대해, 디코더 신경망(118)은 디코더 입력 및 인코더 CBHG 신경망(116)에 의해 생성된 인코딩된 표현을 프로세싱하여 문자 시퀀스의 스펙트로그램의 다중 프레임을 생성하도록 구성된다. 즉, 각 디코더 단계에서 하나의 프레임을 생성(예측)하는 대신, 디코더 신경망(118)은 스펙트로그램의 r개 프레임을 생성하며, r은 1보다 큰 정수이다. 많은 경우에 r개의 프레임 세트 사이에는 오버랩(overlap)이 없다.
특히, 디코더 단계 t에서, 디코더 단계 t-1에서 생성된 r개의 프레임 중 적어도 마지막 프레임은 디코더 단계 t+1에서 디코더 신경망(118)에 대한 입력으로서 공급된다. 일부 구현에서, 디코더 단계 t-1에서 생성된 r개의 프레임 모두는 디코더 단계 t+1에서 디코더 신경망(118)에 대한 입력으로서 공급된다. 제1 디코더 단계에 대한 디코더 입력은 올 제로(all-zero) 프레임(즉, <GO> frame)일 수 있다. 인코딩된 표현에 대한 어텐션은 예를 들어 기존 어텐션 메커니즘을 사용하여 모든 디코더 단계에 적용된다. 디코더 신경망(118)은 주어진 디코더 단계에서 r개의 프레임을 동시에 예측하기 위해 선형 활성화(linear activation)를 갖는 완전 연결된(fully connected) 신경망 계층을 사용할 수 있다. 예를 들어, 각 프레임이 80차원(80차원) 벡터인 5개의 프레임을 예측하려면, 디코더 신경망(118)은 400-D 벡터를 예측하고 400-D 벡터를 재구성하여 5개의 프레임을 얻기 위해 선형 활성화를 갖는 완전 연결된 신경망 계층을 사용한다.
각 시간 단계에서 r개의 프레임을 생성함으로써, 디코더 신경망(118)은 디코더 단계의 총 수를 r로 나누어 모델 크기, 훈련 시간 및 추론 시간을 줄인다. 또한, 이 기술은 어텐션 메커니즘에 의해 학습된 프레임과 인코딩된 표현 사이의 정렬이 훨씬 더 빠르기 때문에(더 안정적이기 때문에) 컨버전스 속도를 상당히 증가시킨다. 이는 인접한 음성 프레임이 상관되고 각 문자가 일반적으로 여러 프레임에 해당하기 때문이다. 시간 단계에서 다수의 프레임을 방출(Emitting)하는 것은 디코더 신경망(118)이 이 품질을 활용하여 훈련 동안 인코딩된 표현에 효율적으로 어텐션하는 방법, 즉 훈련되는 방법을 빠르게 학습할 수 있게 한다.
디코더 신경망(118)은 하나 이상의 게이트 순환 유닛(gated recurrent unit) 신경망 계층을 포함할 수 있다. 컨버전스 속도를 높이기 위해 디코더 신경망(118)은 하나 이상의 수직 잔차(residual) 연결을 포함할 수 있다. 일부 구현에서, 스펙트로그램은 멜 스케일(mel-scale) 스펙트로그램과 같은 압축된 스펙트로그램이다. 예를 들어, 원시(raw) 스펙트로그램 대신 압축된 스펙트로그램을 사용하면 중복성이 줄어들어 훈련 및 추론 중에 필요한 계산이 감소할 수 있다.
후프로세싱 신경망(108)은 압축된 스펙트로그램을 수신하고, 압축된 스펙트로그램을 프로세싱하여 파형 합성기 입력을 생성하도록 구성된다. 압축된 스펙트로그램을 프로세싱하기 위해, 후프로세싱 신경망(108)은 CBHG 신경망(200)(도 2)을 포함한다. 특히, CBHG 신경망(200)은 1차원(1-D) 컨볼루션 서브네트워크, 하이웨이 네트워크, 양방향 순환 신경망을 포함한다. CBHG 신경망(200)은 하나 이상의 잔차 연결을 포함할 수 있다. 1-D 컨볼루션 서브네트워크는 1-D 컨볼루션 필터의 뱅크와 스트라이드 1이 있는 시간 계층을 따라 최대 풀링(max pooling)을 포함할 수 있다. 경우에 따라 양방향 순환 신경망은 게이트 순환 유닛(GRU: Gated Recurrent Unit) 신경망(RNN: recurrent neural network)이다. CBHG 신경망(200)은 도 2를 참조하여 아래에서 더 상세히 설명된다.
일부 구현에서, 후프로세싱 신경망(108) 및 시퀀스-대-시퀀스 순환 신경망(106)은 공동으로 훈련된다. 즉, 훈련 중에 시스템(100)(또는 외부 시스템)은 동일한 신경망 훈련 기법, 예를 들어 기울기 하강법(gradient descent) 기반 훈련 기법을 사용하여 동일한 훈련 데이터 세트에 대해 후프로세싱 신경망(108) 및 seq2seq 네트워크(106)를 훈련시킨다. 보다 구체적으로, 시스템(100)(또는 외부 시스템)은 후프로세싱 신경망(108) 및 seq2seq 네트워크(106)의 모든 네트워크 파라미터의 현재 값을 공동으로 조정하기 위해 손실 함수의 기울기(gradient) 추정치를 역전파할 수 있다. 개별적으로 훈련되거나 사전 훈련되어야 하는 컴포넌트가 있어 각 컴포넌트의 오류가 복합될 수 있는 기존 시스템과 달리, 공동으로 훈련된 후프로세싱 신경망(108) 및 seq2seq 네트워크(106)를 갖는 시스템이 더 로버스트(robust)하다(예: 오류가 더 적고 처음부터 훈련될 수 있음). 이러한 이점은 현실 세계에서 발견되는 풍부하고 표현력이 있지만 종종 노이즈가 많은 데이터에 대한 E2E 텍스트-음성(text-to-speech) 모델(150)의 훈련을 가능하게 한다.
파형 합성기(110)는 파형 합성기 입력을 수신하고, 파형 합성기 입력을 프로세싱하여 특정 자연어의 문자들의 입력 시퀀스의 구두 발화 파형을 생성하도록 구성된다. 일부 구현에서 파형 합성기는 그리핀-림(Griffin-Lim) 합성기이다. 일부 다른 구현에서, 파형 합성기는 보코더(vocoder)이다. 일부 다른 구현에서, 파형 합성기는 파형 인버터에 대한 훈련 가능한 스펙트로그램이다. 파형 합성기(110)가 파형을 생성한 후, 서브시스템(102)은 파형을 사용하여 음성(120)를 생성하고, 예를 들어 사용자 디바이스 상에서의 재생을 위해 생성된 음성(120)를 제공하거나, 생성된 파형을 다른 시스템에 제공하여 다른 시스템이 음성을 생성 및 재생할 수 있도록 할 수 있다. 일부 예에서, 웨이브넷(WaveNet) 신경 보코더는 파형 합성기(110)를 대체한다. 웨이브넷 신경 보코더는 파형 합성기(110)에 의해 생성된 합성 음성과 비교하여 합성 음성의 상이한 오디오 충실도(fidelity)를 제공할 수 있다.
도 2는 예시적인 CBHG 신경망(200)을 도시한다. CBHG 신경망(200)은 인코더 CBHG 신경망(116)에 포함된 CBHG 신경망 또는 도 1의 후프로세싱 신경망(108)에 포함된 CBHG 신경망일 수 있다. CBHG 신경망(200)은 1차원(1-D) 컨볼루션 서브네트워크(208), 하이웨이 네트워크(212), 양방향 순환 신경망(214)을 포함한다. CBHG 신경망(200)은 하나 이상의 잔차 연결, 예를 들어, 잔차 연결(210)을 포함할 수 있다.
1-D 컨볼루션 서브네트워크(208)는 1-D 컨볼루션 필터의 뱅크(204)를 포함할 수 있고, 그 다음에는 1의 스트라이드(206)로 시간 계층을 따라 최대 풀링이 뒤따른다. 1-D 컨볼루션 필터의 뱅크(204)는 1-D 컨볼루션 필터의 K 세트를 포함할 수 있으며, 여기서 k 번째 세트는 각각이 k의 컨볼루션 폭을 갖는 Ck 필터를 포함한다. 1-D 컨볼루션 서브네트워크(208)는 입력 시퀀스(202), 예를 들어 인코더 프리-넷 신경망(114)(도 1)에 의해 생성되는 문자 시퀀스의 변환된 임베딩을 수신하도록 구성된다. 서브네트워크(208)는 1-D 컨볼루션 필터(204)의 뱅크를 사용하여 입력 시퀀스(202)를 프로세싱하여 입력 시퀀스(202)의 컨볼루션 출력을 생성한다. 그 다음 서브네트워크(208)는 컨볼루션 출력을 함께 스택(stack)하고 최대 풀링된 출력을 생성하기 위해 스트라이드(stride) 1(206)과 함께 시간 계층을 따라 최대 풀링(Max Pooling Along Time Layer)을 사용하여 스택된 컨볼루션 출력을 프로세싱한다. 그 다음, 서브네트워크(208)는 서브네트워크(208)의 서브네트워크 출력을 생성하기 위해 하나 이상의 고정 너비(fixed-width) 1-D 컨벌루션 필터를 사용하여 최대 풀링된 출력(max-pooled output)을 프로세싱한다.
1-D 컨볼루션 서브네트워크(208)가 서브네트워크 출력을 생성한 후, 잔차 연결(210)은 서브네트워크 출력을 원래(original) 입력 시퀀스(202)와 결합하여 컨볼루션 출력을 생성하도록 구성된다. 그 다음, 하이웨이 네트워크(212) 및 양방향 순환 신경망(214)은 문자 시퀀스의 인코딩된 표현을 생성하기 위해 컨볼루션 출력을 프로세싱하도록 구성된다. 특히, 하이웨이 네트워크(212)는 문자 시퀀스의 고레벨(high-level) 특징 표현을 생성하기 위해 컨볼루션 출력을 프로세싱하도록 구성된다. 일부 구현에서, 하이웨이 네트워크는 하나 이상의 완전히 연결된 신경망 계층을 포함한다.
양방향 순환 신경망(214)은 고레벨 특징 표현을 프로세싱하여 문자 시퀀스의 순차적 특징 표현을 생성하도록 구성된다. 순차적 특징 표현은 특정 문자 주변의 문자 시퀀스의 로컬 구조를 나타낸다. 순차적 특징 표현은 특징 벡터의 시퀀스를 포함할 수 있다. 일부 구현에서, 양방향 순환 신경망은 게이트 순환 유닛 신경망이다.
훈련 동안, 1차원 컨벌루션 서브네트워크(208)의 하나 이상의 컨볼루션 필터는 배치(batch) 정규화 방법을 사용하여 훈련될 수 있으며, 이는 "S. Ioffe and C. Szegedy, Batch normalization: Accelerating deep network training by reducing internal covariate shift, arXiv preprint arXiv:1502.03167, 2015"에 설명되어 있다. 일부 구현에서, CBHG 신경망(200)의 하나 이상의 컨볼루션 필터는 비인과(non-causal) 컨볼루션 필터, 즉 주어진 시간 단계 T에서 양방향으로 주변 입력과 컨볼루션할 수 있는 컨볼루션 필터이다(예: .., T-1, T-2 및 T+1, T+2, ... 등). 대조적으로, 인과적(causal) 컨벌루션 필터는 이전 입력만 컨벌루션할 수 있다(...T-1, T-2 등). 일부 다른 구현에서, CBHG 신경망(200)의 모든 컨볼루션 필터는 비인과 컨볼루션 필터이다. 비인과 컨볼루션 필터, 배치 정규화, 잔차 연결 및 스트라이드 1과 함께 시간 계층을 따라 최대 풀링을 사용하면 입력 시퀀스에 대한 CBHG 신경망(200)의 일반화 기능이 향상되어 텍스트-음성 변환 시스템이 고품질 음성을 생성할 수 있다.
도 3은 문자들의 시퀀스로부터 음성을 생성하는 방법(300)에 대한 동작들의 예시적인 배열이다. 편의상, 프로세스(300)는 하나 이상의 위치에 위치한 하나 이상의 컴퓨터의 시스템에 의해 수행되는 것으로 설명될 것이다. 예를 들어, 텍스트-음성 변환 시스템(예를 들어, 도 1의 텍스트-음성 변환 시스템(100)) 또는 텍스트-음성 변환 시스템의 서브시스템(예를 들어, 도 1의 서브시스템(102))은 적절하게 프로그래밍되어 프로세스(300)를 수행할 수 있다.
동작(302)에서, 방법(300)은 시스템이 특정 자연 언어로 된 문자들의 시퀀스(문자 시퀀스)를 수신하는 단계를 포함하고, 동작(304)에서, 방법(300)은 특정 자연 언어의 문자 시퀀스의 구두 발화의 스펙트로그램을 출력으로서 획득하기 위해 시퀀스 대 시퀀스(seq2seq) 순환 신경망(106)에 대한 입력으로서 문자 시퀀스를 제공하는 시스템을 포함한다. 일부 구현에서, 스펙트로그램은 압축된 스펙트로그램, 예를 들어 멜 스케일 스펙트로그램이다. 특히, seq2seq 순환 신경망(106)은 인코더 프리-넷 신경망(114) 및 인코더 CBHG 신경망(116)을 포함하는 인코더 신경망(112)을 사용하여 시퀀스의 각 문자의 각각의 인코딩된 표현을 생성하기 위해 문자의 시퀀스를 프로세싱한다.
보다 구체적으로, 문자 시퀀스의 각 문자는 원-핫(one-hot) 벡터로 표현되고 연속 벡터에 포함될 수 있다. 인코더 프리-넷 신경망(114)은 시퀀스의 각 문자의 각각의 임베딩을 수신하고 문자의 변환된 임베딩을 생성하기 위해 시퀀스의 각 문자의 각각의 임베딩을 프로세싱한다. 예를 들어, 인코더 프리-넷 신경망(114)은 변환된 임베딩을 생성하기 위해 각각의 임베딩에 비선형 변환 세트를 적용할 수 있다. 인코더 CBHG 신경망(116)은 그 다음 인코더 프리-넷 신경망(114)으로부터 변환된 임베딩을 수신하고 변환된 임베딩을 프로세싱하여 문자 시퀀스의 인코딩된 표현을 생성한다.
문자 시퀀스의 구두 발화의 스펙트로그램을 생성하기 위해 seq2seq 순환 신경망(106)은 어텐션 기반 디코더 순환 신경망(118)을 사용하여 인코딩된 표현을 프로세싱한다. 특히, 어텐션 기반 디코더 순환 신경망(118)은 디코더 입력의 시퀀스를 수신한다. 시퀀스의 첫 번째(제1) 디코더 입력은 미리 결정된 초기 프레임이다. 시퀀스의 각 디코더 입력에 대해, 어텐션 기반 디코더 순환 신경망(118)은 디코더 입력 및 인코딩된 표현을 프로세싱하여 스펙트로그램의 r개 프레임을 생성하며, 여기서 r은 1보다 큰 정수이다. 생성된 r개의 프레임 중 하나 이상이 시퀀스의 다음 디코더 입력으로 사용될 수 있다. 다시 말해, 시퀀스의 서로 다른 디코더 입력은 시퀀스의 디코더 입력에 선행하는 디코더 입력을 프로세싱함으로써 생성된 r개의 프레임 중 하나 이상이다.
따라서 어텐션 기반 디코더 순환 신경망의 출력은 스펙트로그램을 형성하는 여러 프레임 세트를 포함하며, 여기서 각 세트는 r개의 프레임을 포함한다. 많은 경우에 r개의 프레임 세트 사이에는 오버랩이 없다. 시간에 r개의 프레임을 생성함으로써 어텐션 기반 디코더 순환 신경망에서 수행되는 디코더 스텝의 총 수는 r의 인수(factor)만큼 감소하므로 훈련 및 추론 시간이 단축된다. 이 기술은 또한 어텐션 기반 디코더 순환 신경망과 시스템의 컨버전스 속도와 학습률을 높이는 데 도움이 된다.
동작(306)에서, 방법(300)은 특정 자연 언어의 문자 시퀀스의 구두 발화의 스펙트로그램을 사용하여 음성을 생성하는 단계를 포함한다. 일부 구현들에서, 스펙트로그램이 압축된 스펙트로그램일 때, 시스템은 압축된 스펙트로그램으로부터 파형을 생성하고 파형을 사용하여 음성을 생성할 수 있다.
동작(308)에서, 방법(300)은 재생을 위해 생성된 음성을 제공하는 단계를 포함한다. 예를 들어, 방법(300)은 재생을 위해 네트워크를 통해 시스템으로부터 사용자 디바이스(예를 들어, 오디오 화자)로 생성된 음성을 전송함으로써 재생을 위해 생성된 음성을 제공할 수 있다.
도 4는2018년 3월 24일 "Towards End-to-End Prosody Transfer for Expressive Speech Synthesis with Tacotron, arXiv preprint arXiv:1803.09047"에 공개된 결정론적 기준 인코더(400)를 도시하며, 이 내용은 전체에 참조로 포함된다. 일부 구현들에서, 기준 인코더(400)는 기준 오디오 신호(402)를 수신하고, 기준 오디오 신호(402)로부터 고정 길이 프로소디 임베딩 PE(450)(또한 '프로소딕 임베딩'으로 지칭됨)를 생성/예측하도록 구성된다. 프로소디 임베딩 PE(450)는 음성 정보 및 강세, 억양 및 타이밍과 같은 독특한 화자 특성과 무관한 기준 오디오 신호(402)의 특성을 캡처할 수 있다. 프로소디 임베딩 PE(450)는 기준 화자와 완전히 다른 화자에 대해 합성 음성이 생성되지만 기준 화자의 프로소디를 나타내는 프로소디(운율) 전달을 수행하기 위한 입력으로 사용될 수 있다.
도시된 예에서, 기준 오디오 신호(402)는 길이 LR 및 차원 DR을 갖는 스펙트로그램 슬라이스(slice)로서 표현될 수 있다. 기준 오디오 신호(402)와 연관된 스펙트로그램 슬라이스는 멜-워핑된(Mel-warped) 스펙트럼을 나타낼 수 있다. 도시된 예에서, 기준 인코더(400)는 2x2 스트라이드, SAME 패딩(padding), 및 ReLU 활성화를 갖는 3x3 필터를 포함하는 각 계층을 갖는 6계층(six-layer) 컨볼루션 계층 네트워크(6-Layer Strided Conv2D with BatchNorm)(404)를 포함한다. 배치 정규화는 모든 계층(레이어)에 적용되며 각 계층의 필터 수는 다운샘플링 속도(rate)의 절반(32, 32, 64, 128, 128)으로 두 배가 된다. 단일 128폭(128-width) GRU-RNN(Gated Recurrent Unit) 계층을 갖는 순환 신경망(410)은 마지막 컨볼루션 계층으로부터 출력(406)을 수신하고, 예측된 프로소디 임베딩 PE(450)을 출력하는 활성화 함수(430)가 뒤따르는 완전 연결 계층(420)에 적용된 128차원 출력(412)을 출력한다. 순환 신경망(410)은 다른 유형의 양방향 순환 신경망을 포함할 수 있다.
기준(참조) 인코더(400)에서 활성화 함수(430)(예를 들어, 소프트맥스 또는 하이퍼볼릭탄젠트(tanh))의 선택은 스타일 임베딩 SE(450)에 포함된 정보를 제한할 수 있고, 예측된 프로소디 임베딩 PE(450)의 크기를 제어함으로써 학습을 용이하게 할 수 있다. 더욱이, 기준 인코더(400)에 입력되는 기준 오디오 신호(402)의 길이 LR 및 차원 DR의 선택은 인코더(400)에 의해 학습된 프로소디의 다른 측면에 영향을 미친다. 예를 들어, 피치 트랙 표현(pitch track representation)은 인코더에 에너지 정보가 포함되어 있지 않기 때문에 일부 언어에서 현저한 모델링을 허용하지 않을 수 있는 반면, MFCC(Mel Frequency Cepstral Coefficient) 표현은 훈련된 계수의 수에 따라 적어도 어느 정도는, 인코더(400)가 억양을 모델링하는 것을 방지한다.
기준 인코더(400)에서 출력된 프로소디 임베딩 PE(450)는 합성된 음성을 생성하기 위해 다수의 다른 TTS 아키텍처에서 사용될 수 있지만, 추론 시간에 프로소디 임베딩 PE(450)를 생성하기 위해서는 시드 신호(seed signal)(예: 기준 오디오 신호(402))가 필요하다. 예를 들어, 시드 신호는 "Say it like this"와 같은 기준 오디오 신호(402)일 수 있다. 또는 의도한 프로소디/스타일로 합성된 음성을 전달하기 위해, 일부 TTS 아키텍처는 시드 신호로부터 프로소디 임베딩 PE(450)를 출력하기 위해 기준 인코더(400)를 사용하는 대신 추론 시간에 수동 스타일 임베딩 선택을 사용하도록 적응될 수 있다. 도 5a 및 도 5b를 참조하면, 일부 구현에서, 텍스트 예측 시스템(500, 500a-b)은, 시드 신호(예: 기준 오디오 신호 402) 또는 추론 시 수동 스타일 임베딩 선택 없이, 입력 텍스트(502)로부터 스타일 임베딩 SE(550)를 예측하고, 예측된 스타일 임베딩 SE(550)를 입력 텍스트(502)를 스타일 임베딩 SE(550)에 의해 지정된 스타일/프로소디를 갖는 합성된 음성(680)(도 6a 및 6b)으로 변환하기 위한 E2E(end-to-end) TTS 모델(650)에 제공하도록 구성된다. 즉, 텍스트 예측 시스템(500)은 추론 시점의 보조 입력에 의존하지 않고 TTS 모델(650)에 의해 합성된 표현 음성(680)에 대한 말하기 스타일을 예측하기 위해 컨텍스트의 소스로서 입력 텍스트(502)를 사용한다.
훈련 동안, 도 5a 및 도 5b의 텍스트 예측 시스템(500)은 기준(참조) 인코더(400), 스타일 토큰 계층(Style Token Layer)(510), 텍스트 예측 모델(520, 520a-b) 및 E2E TTS 모델(650)을 포함한다. 텍스트 예측 모델(520)은 또한 텍스트 예측 네트워크(520)로 지칭될 수 있다. 기준 인코더(400)는 도 4를 참조하여 전술한 기준 인코더(400)를 포함할 수 있다. 도시된 예에서, 기준 인코더(400)는 기준 오디오 신호(402)로부터 프로소디 임베딩 PE(450)를 출력하고, 기준 오디오 신호(402)와 연관된 프로소디 및/또는 스타일 정보를 전달하는 스타일 임베딩 SE(550)를 생성하기 위해 프로소디 임베딩 PE(450)를 스타일 토큰 계층(510)에 제공하도록 구성된다. 기준 오디오 신호(402)의 트랜스크립트(transcript)는 디코더(658)로부터 출력되는 결과적인 출력 오디오 신호(670)(도 6a 및 6b)가 기준 오디오 신호(402)와 매칭되도록 TTS 모델(650)의 텍스트 인코더(652)에 입력된 입력 텍스트(502)의 문자들의 시퀀스('입력 텍스트 시퀀스'라고도 함)를 매칭한다. 추가적으로, 텍스트 예측 모델(520)은 또한 텍스트 인코더(652)를 사용하여, 스타일 토큰 계층(510)에 의해 생성된 스타일 임베딩 SE(550)와 연관된 조합 가중치(combination weight: CW)(516P)(도 5a)를 예측하거나 타일 토큰 계층(510)에 의해 생성된 스타일 임베딩 SE(550)와 매칭(일치)하는 스타일 임베딩 SE(550P)(도 5b)를 직접 예측하기 위해 기준 오디오 신호(402)의 트랜스크립트에 대응하는 입력 텍스트(502)의 각 훈련 샘플을 수신한다. 따라서, 훈련 단계(training stage)는 기준 오디오 신호(402)(예, GT(ground truth))의 훈련 세트 및 입력 텍스트(502)의 대응하는 트랜스크립트를 사용하여 텍스트 예측 모델(520)의 공동 훈련을 허용하고, TTS 모델(650) 및 입력 텍스트(502)의 각 훈련 샘플에 대한 스타일 임베딩 SE(550P)를 예측하고, 타겟 스타일 임베딩 SE(550T)에 의해 지정된 스타일/프로소디를 갖고 기준 오디오 신호(402)의 훈련 샘플과 매칭되는 출력 오디오 신호(670)를 (디코더 658을 통해) 결정한다.
일부 구현에서, 스타일 토큰 계층(510)은 2018년 3월 23일에 "Style Tokens: Unsupervised Style Modeling, Control and Transfer in End-to-End Speech Synthsis, arXiv preprint arXiv:1803.09017"에 공개된 스타일 토큰 계층을 포함하며, 이 내용은 그 전체가 참조로 포함된다. 스타일 토큰 계층(510)은 훈련 동안 기준 인코더(400)에서 출력된 프로소디 임베딩 PE(450)를 나타내는 훈련 가능한 스타일 토큰(514, 514a-n)의 컨벡스 조합(convex combination)을 비지도 방식으로 학습하도록 구성된 스타일 어텐션 모듈(스타일 어텐션)(512)을 포함한다. 여기서, 스타일 토큰 계층(510)은 무작위로 초기화된 스타일 토큰(514, 514a-n)의 뱅크에서 각 스타일 토큰(514)과 프로소디 임베딩 사이의 유사성 측정을 학습하도록 구성된 어텐션 모듈(512)에 대한 쿼리 벡터로서 프로소디 임베딩 PE(450)를 사용한다. 스타일 토큰(514)('스타일 임베딩'이라고도 함)은 모든 훈련(트레이닝) 시퀀스에 걸쳐 공유되는 해당 임베딩을 포함할 수 있다. 따라서, 어텐션 모듈(512)은 인코딩된 프로소디 임베딩 PE(450)에 대한 각 스타일 토큰(514)의 기여도를 나타내는 조합 가중치(516, 516a-n) 세트를 출력한다. 어텐션 모듈(512)은 소프트맥스 활성화를 통해 스타일 토큰(514)을 정규화함으로써 조합 가중치(516)를 결정할 수 있다. 스타일 토큰 계층(510)으로부터 출력된 결과적인 스타일 임베딩 SE(550)는 스타일 토큰(514)의 가중 합에 대응한다. 각각의 스타일 토큰(514)은 텍스트 인코더(502)의 상태의 차원(dimensionality)과 매칭하는 차원을 포함할 수 있다. 예는 5개의 스타일 토큰(514)을 포함하는 스타일 토큰 계층(510)을 보여주지만, 스타일 토큰 계층(510)은 임의의 수의 스타일 토큰(514)을 포함할 수 있다. 일부 예에서, 10개의 스타일 토큰(514)은 훈련 데이터에서 다양한 프로소디 차원을 제공하도록 선택된다.
일부 구성에서, 스타일 토큰 계층(510)은 TTS 모델(650) 및 텍스트 예측 모델(520)과 공동으로 훈련된다. 다른 구성에서, 스타일 토큰 계층(510) 및 TTS 모델(650)은 개별적으로 훈련되는 반면, 스타일 토큰 계층(510) 및 텍스트 예측 모델(520)은 공동으로 훈련된다.
계속해서 도 5a 및 5b에 도시된 바와 같이, 텍스트 예측 네트워크(520)는 각각 TTS 모델(650)의 텍스트 인코더(652)로부터 출력된 인코딩된 시퀀스(653)를 입력으로 수신한다. 여기서, 인코딩된 시퀀스(653)는 입력 텍스트 시퀀스(502)의 인코딩에 해당한다. 일부 예들에서, 텍스트 인코더(652)는 입력 텍스트 시퀀스(502)에서 로컬 및 컨텍스트 정보를 명시적으로 모델링하기 위해 입력 텍스트 시퀀스(502)를 가변 길이 인코딩된 시퀀스(653)로 인코딩하는 CBHG 신경망(200)(도 2)을 포함한다. 입력 텍스트 시퀀스(502)는 자소로부터 발음을 학습하는 모델의 능력보다는 프로소디가 어드레싱되기 때문에 텍스트 정규화 프론트 엔드 및 어휘집에 의해 생성된 음소 입력을 포함할 수 있다. 텍스트 예측 네트워크(520)는 64-유닛 시간 집계 GRU-RNN(522)과 같은 양방향 RNN(522)을 포함하며, 이는 가변 길이 입력(예: 인코딩된 시퀀스 553)을 고정 길이(예: 64차원) 출력(524)으로 시간 집계(time-aggregating)함으로써 128-유닛 GRU-RNN(410)(도 4)이 기준 인코더(400)에 대한 요약기(summarizer)로서 기능하는 방식과 유사하게 텍스트 인코더(502)에 대한 요약기로 기능한다. 여기서, 고정 길이 출력(524)은 고정 길이 텍스트 특징 벡터, 즉 고정 길이 텍스트 특징(524)에 대응한다.
텍스트 예측 네트워크(520a, 520b)는 입력 텍스트(502)를 기반으로 추론하는 동안 스타일 임베딩(550)을 예측하기 위한 2개의 텍스트 예측 경로를 제공한다. 이들 네트워크(520a, 520b) 각각은 그라디언트 흐름(gradient flow)을 중지하도록 구성된 오퍼레이터를 사용함으로써 공동으로 훈련될 수 있다. 도 5a에 도시된 바와 같이, 텍스트 예측 모델(520a)은 입력 텍스트 시퀀스(502)로부터 예측된 조합 가중치(516, 516P)를 사용하여 훈련 동안 학습된 스타일 토큰(514)을 예측하기 위한 제1 텍스트 예측 경로를 제공한다. 텍스트 예측 모델(520a)은 텍스트 예측 조합 가중치(TPCW) 모델(520a)로 지칭될 수 있다. 모델(520a)이 비지도 훈련되는 훈련 단계 동안, 모델(520a)은 스타일 토큰 계층(510)에 의해 결정된 조합 가중치(516)를 예측 대상으로 설정한 다음 시간 집계 GRU-RNN(522)에서 출력된 고정 길이 텍스트 특징(524)을 완전 연결 계층(fully connected layer)(526)에 공급한다. 따라서, 조합 가중치(516, 516T)는 타겟 조합 가중치(CW)(516T)로 지칭될 수 있다. 역전파는 스타일 어텐션 모듈(512) 및 스타일 토큰(514)을 업데이트할 수 있기 때문에, 조합 가중치(516T)는 훈련 단계 동안 움직이는 표적(타겟)을 형성할 수 있다. 일부 예에서, 완전 연결 계층(526)은 예측된 조합 가중치(516P)에 대응하는 로짓(logits)을 출력하도록 구성되어 모델(520a)이 예측된 조합 가중치(516P)와 스타일 토큰 계층(510)으로부터 출력된 타겟 조합 가중치(516T) 사이의 교차 엔트로피(cross-entropy) 손실을 결정할 수 있다. 보간법을 통해 이러한 예측 조합 가중치(516P)로부터 스타일 임베딩 SE(550)를 예측할 수 있다. 그 후, 모델(520a)은 스타일 토큰 계층(510)을 통한 임의의 텍스트 예측 오류의 역전파를 방지하기 위해 그라디언트 흐름을 중지하도록 구성될 수 있다. 또한, 교차 엔트로피 손실은 훈련 중 TTS 모델(650)의 최종 손실에 추가될 수 있다.
도 5a를 참조하면, 추론 단계 동안 스타일 토큰(514)은 고정되고 텍스트 예측 모델(520a)(TPCW 모델(520a))은 입력 텍스트 시퀀스(502) 단독에 기초하여 조합 가중치(516P)를 예측하도록 구성된다. 여기서, 입력 텍스트 시퀀스(502)는 TTS 모델(650)이 표현 음성으로 합성할 현재 입력 텍스트에 대응한다. 따라서, 텍스트 인코더(652)는 입력된 텍스트 시퀀스(502)를 인코딩된 시퀀스(653)로 인코딩하고, 인코딩된 시퀀스(653)를 조합 가중치(516P)를 예측하기 위한 텍스트 예측 모델(520a) 및 TTS 모델(650)의 연결기(654) 모두에 제공한다. 여기서, 모델(520a)은 예측된 조합 가중치(516P)를 사용하여 예측된 스타일 임베딩 SE(550P)를 결정하고 예측된 스타일 임베딩 SE(550P)를 TTS 모델(650)의 연결기(654)에 제공할 수 있다. 일부 예에서, 연결기(654)는 텍스트 인코더(652)에서 출력된 인코딩된 시퀀스(653)와 예측된 스타일 임베딩 SE(550P)를 연결하고, 예측된 스타일 임베딩 SE에 의해 지정된 스타일/프로소디를 갖는 합성 음성(680)으로의 변환을 위해 TTS 모델(650)의 디코더(658)에 연결을 제공한다.
도 5b를 참조하면, 텍스트 예측 모델(520b)은 훈련 동안 학습된 스타일 토큰(514) 및 조합 가중치(516)를 무시하고, 입력 텍스트 시퀀스(502)로부터 스타일 임베딩 SE(550)를 직접 예측한다. 텍스트 예측 모델(520b)은 TPSE(text-prediction style embedding) 모델(520b)로 지칭될 수 있다. 모델(520b)이 비지도 방식으로 훈련되는 훈련 단계에서(또한 도 5a의 모델(520a)과 공동으로), 모델(520b)은, 스타일 임베딩 SE(550, 550T)를 예측 대상으로 설정하고, 시간 집계 GRU-RNN(522)에서 출력된 고정 길이 텍스트 특징(524)을 하나 이상의 완전 연결 계층(K Fully-Connected Layers)(527)에 공급하여 예측된 스타일 임베딩 SE(550, 550P)를 출력한다. 일부 예에서, 완전 연결 계층(527)은 ReLU 활성화를 사용하는 하나 이상의 은닉 완전 연결 계층 및 텍스트 예측된 스타일 임베딩 SE(550P)를 방출하기 위해 tanh 활성화를 사용하는 출력 계층을 포함한다. 일부 예들에서, 출력 계층에 의해 적용된 tanh 활성화는 텍스트 인코더(652)의 최종 양방향 GRU-RNN(예를 들어, 도 2의 CBHG 신경망(200)의 양방향 RNN(214))의 tanh 활성화와 매칭하도록 선택된다. 유사하게, 이 tanh 활성화는 스타일 토큰 계층(510)의 어텐션 스타일 모듈(512)에 의해 사용되는 스타일 토큰 tanh 활성화와 매칭할 수 있다.
일부 구현에서, 텍스트 예측 모델(520)은 예측된 스타일 임베딩 SE(550P)와 스타일 토큰 계층(510)으로부터 출력된 타겟 스타일 임베딩 SE(550T) 사이의 L1 손실을 결정한다. 그 후, 모델(520b)은 스타일 토큰 계층(510)을 통한 임의의 텍스트 예측 오류의 역전파를 방지하기 위해 그라디언트 흐름을 중지하도록 구성될 수 있다. 또한, 교차 엔트로피 손실은 훈련 중 TTS 모델(650)의 최종 손실에 추가될 수 있다.
계속해서 도 5b를 참조하면, 추론 단계에서, 텍스트 예측 모델(520b)(TPSE 모델(520b))은 스타일 토큰 계층(510)을 무시하고 입력 텍스트 시퀀스(502) 단독에 기초하여 스타일 임베딩 SE(550P)를 직접 예측한다. 도 5a의 TPCW 모델(520a)과 같이, 입력 텍스트 시퀀스(502)는 TTS 모델(650)이 표현 음성으로 합성할 현재 입력 텍스트에 대응한다. 따라서, 텍스트 인코더(652)는 입력된 텍스트 시퀀스(502)를 인코딩된 시퀀스(653)로 인코딩하고, 인코딩된 시퀀스(653)를 TTS 모델(650)의 연결기(654) 및 스타일 임베딩 SE(550P)를 예측하기 위한 텍스트 예측 모델(520b) 모두에 제공한다. 스타일 임베딩 SE(550P)를 예측한 후, 시스템(520b)은 예측된 스타일 임베딩 SE(550P)를 TTS 모델(650)의 연결기(654)에 제공한다. 일부 예들에서, 연결기(654)는 텍스트 인코더(652)로부터 출력된 인코딩된 시퀀스(653)와 예측된 스타일 임베딩 SE(550P)를 연결하고, 예측된 스타일 임베딩 SE에 의해 지정된 스타일/프로소디를 갖는 합성 음성(680)으로의 변환을 위해 TTS 모델(650)의 디코더(658)에 연결(concatenation)을 제공한다.
도 6a 및 6b는 시드 신호(예: 기준 오디오 신호 402) 또는 추론 시 수동 스타일 임베딩 선택 없이, 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)과 입력 텍스트(502)로부터 스타일 임베딩 SE(550)를 예측하도록 구성된 컨텍스트 예측 시스템(600)의 훈련(도 6a) 및 추론(도 6b) 단계를 포함한다. 도 5a 및 도 5b의 텍스트 예측 시스템(500)에서와 같이, 예측된 스타일 임베딩 SE(550)는 입력 텍스트(502)를 스타일 임베딩 SE(550)에 의해 지정된 스타일/프로소디를 갖는 출력 오디오 신호(670)로 변환하기 위해 텍스트 예측 네트워크(520)로부터 E2E(end-to-end) TTS 모델(650)로 공급된다. 시스템(600)은 메모리 하드웨어(920)(도 9)에 저장된 명령어를 사용하여 데이터 프로세싱 하드웨어(910)(도 9)에서 실행할 수 있다. 도시된 예에서, 시스템(600)은 컨텍스트 모델(610), 기준 인코더(400), 컨텍스트 모델(610)과 통신하는 텍스트 예측 네트워크(520), 및 텍스트 예측 모델(520)과 통신하는 TTS 모델(650)을 포함한다.
일반적으로, 컨텍스트 모델(610)은 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 생성하기 위해 하나 이상의 컨텍스트 특징(602)을 수신 및 프로세싱하도록 구성된다. 현재 입력 텍스트(502)는 표현 음성(680)으로 합성될 문자들의 시퀀스를 참조한다. 현재 입력 텍스트(502)는 일부 예에서 단일 문장일 수 있는 반면, 다른 예에서 현재 입력 텍스트(502)는 단락을 포함한다. 현재 입력 텍스트(502)의 문자들의 시퀀스와 현재 입력 텍스트(502)의 합성된 표현 음성(680)는 특정 언어와 연관되어 있다. 더욱이, 각각의 컨텍스트 특징(602)은 현재 입력 텍스트(502)의 텍스트 소스(800)(도 8)로부터 유도될 수 있고, 이에 의해 텍스트 소스(800)는 표현 음성(680)으로 합성될 텍스트의 시퀀스를 포함한다.
텍스트 예측 모델(520)은 도 5a 내지 도 5b를 참조하여 전술한 텍스트 예측 모델(520)을 포함할 수 있다. 본 명세서에 사용된 바와 같이, "텍스트 예측 모델" 및 "텍스트 예측 네트워크"라는 용어는 상호교환적으로 사용된다. 그러나, 도 5a 내지 도 5b와 대조적으로, 시스템(600)은 현재 입력 텍스트(502)에 추가하여 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)에 기초하여 컨텍스트 모델(610)에 의해 생성된 컨텍스트 임베딩(612)을 입력으로서 수신하도록 텍스트 예측 모델(520)을 수정할 수 있다. 그후에, 컨텍스트 예측 시스템(600)의 텍스트 예측 모델(520)은 현재 입력 텍스트(502)에 대한 스타일 임베딩 SE(550, 550P)를 출력으로서 예측하기 위해 현재 입력 텍스트(502) 및 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 프로세싱하도록 구성된다. 도 5a를 참조하여 상술한 바와 같이, 텍스트 예측 모델(520)은 스타일 토큰(514)의 가중 합에 기초하여 예측된 스타일 임베딩 SE(550P)가 보간될 수 있도록 스타일 토큰(514)의 세트의 기여(contribution)를 나타내는 조합 가중치(516P)를 예측하도록 구성될 수 있다. 한편, 도 5b에 도시된 바와 같이, 텍스트 예측 모델(520)은 현재 입력 텍스트(502) 및 컨텍스트 임베딩(612)으로부터 스타일 임베딩 SE(550P)를 직접 예측하도록 구성될 수 있다. 스타일 임베딩 SE(550P)가 텍스트 예측 모델(520)에 의해 보간을 통해 예측되든 직접 예측되든 상관없이, 스타일 임베딩 SE(550P)는 시드 신호(예: 기준 오디오 신호 402) 또는 추론 시 수동 스타일 임베딩 선택을 사용하지 않고 예측된다.
일부 예에서, TTS 모델(650)은 현재 입력 텍스트(502)를 수신하고(예: 텍스트 소스(800)에서), 텍스트 예측 모델(520)에 의해 예측된 스타일 임베딩 SE(550P)를 수신하도록 구성되며, 현재 입력 텍스트(502)의 표현 음성의 출력 오디오 신호(670)를 생성하기 위해 입력 텍스트(502) 및 스타일 임베딩 SE(550P)를 프로세싱한다. 여기서, 출력 오디오 신호(670)는 스타일 임베딩 SE(550)에 의해 특정된 특정 프로소디 및 스타일을 갖는다.
TTS 모델(650)은 인코더(652), 연결기(654), 어텐션 모듈(656), 디코더(658) 및 합성기(475)를 포함한다. 일부 구현들에서, TTS 모델(650)은 도 1의 TTS 모델(150)을 포함한다. 예를 들어, 인코더(652), 어텐션 모듈(656) 및 디코더(658)는 집합적으로 seq2seq 순환 신경망(106)에 대응할 수 있고, 합성기(675)는 파형 합성기(110) 또는 WaveNet 신경 보코더를 포함할 수 있다. 그러나 합성기(675)의 선택은 합성된 음성(680)의 결과적인 프로소디 및/또는 스타일에 영향을 미치지 않으며 실제로는 합성된 음성(680)의 오디오 충실도에만 영향을 미친다. 어텐션 모듈(656)은 긴 발화에 대한 일반화를 개선하기 위해 GMM(Gaussian Mixture Model) 어텐션을 포함할 수 있다. 따라서, TTS 모델(650)의 인코더(652)는 CBHG 신경망(200)(도 2)을 사용하여 입력 텍스트(502)를 연결기(654)에 공급되는 인코딩된 시퀀스(653)로 인코딩할 수 있다. 텍스트 예측 모델(520)로부터 출력된 예측된 스타일 임베딩 SE(550P)는 또한 연결기(654)에 공급되고, 연결기(654)는 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)와 스타일 임베딩 SE(550P) 사이의 연결(655)을 생성하도록 구성된다. 일부 예들에서, 연결기(654)는 브로드캐스트 연결기를 포함한다. 일부 구현에서, 어텐션 모듈(656)은 출력 오디오 신호(670, yt)를 생성하기 위해 디코더(658)의 각 출력 단계에 대해 연결(655)을 고정 길이 컨텍스트 벡터(657)로 변환하도록 구성된다.
입력 텍스트(502)는 자소(grapheme)로부터 발음을 학습하는 모델의 능력보다는 프로소디가 어드레싱되고 있기 때문에 텍스트 정규화 프론트엔드 및 어휘집에 의해 생성된 음소(phoneme) 입력을 포함할 수 있다. 그러나, 입력 텍스트(502)는 추가적으로 또는 대안적으로 자소 입력을 포함할 수 있다. 어텐션 모델(656) 및 디코더(658)는 어텐션 기반 디코더 순환 신경망(118)(도 1)을 집합적으로 포함하고 2와 동일한 감소 인자(reduction factor)를 사용할 수 있으며, 이에 의해 타임스텝당 2개의 스펙트로그램 프레임(예를 들어, 출력 오디오 신호(670))을 생성한다. 일부 예들에서, 0.1과 동일한 확률로 존아웃을 사용하는 256-셀 장단기 메모리(LSTM)의 2개의 계층들이 디코더(658)의 GRU 셀들을 대체할 수 있다. 다른 구현에서, TTS 모델(650)은 2018년 8월 8일자로 출원된 미국 출원 번호 16/058,640에 개시된 음성 합성 시스템을 포함하며, 그 내용은 그 전체가 참조로 포함된다.
훈련 단계에서, 도 6a는 기준 오디오 신호(402)로부터 프로소디 임베딩 PE(450)를 출력하도록 구성된 기준 인코더(400)를 포함하는 컨텍스트 예측 시스템(600)을 도시하고, 기준 오디오 신호(402)와 연관된 프로소디 및/또는 스타일 정보를 전달하는 스타일 임베딩 SE(550, 550T)를 생성하기 위해 프로소디 임베딩 PE(450)를 스타일 토큰 계층(510)에 제공한다. 기준 인코더(400) 및 스타일 토큰 계층(510)은 도 5a 내지 도 5b를 참조하여 설명하였다. 기준(참조) 오디오 신호(402)의 트랜스크립트는 텍스트 인코더(652)에 입력된 입력 텍스트(502)의 문자들의 시퀀스('입력 텍스트 시퀀스'라고도 함)와 매칭하여 결과적으로 디코더(658)로부터 출력된 출력 오디오 신호(670, yt)가 기준 오디오 신호(402)와 매칭할 것이다. 일 예에서, 기준 오디오 신호(402)는 텍스트 문서(예: 텍스트 소스)를 읽는 화자를 포함할 수 있고 입력 텍스트(502)의 대응하는 스크립트는 화자가 읽고 있는 텍스트 문서의 텍스트/문장에 대응한다.
컨텍스트 특징(602)은 현재 입력 텍스트(502)의 텍스트 소스(800)로부터 도출되며, 여기서 컨텍스트 모델(610)은 컨텍스트 특징(602)을 프로세싱함으로써 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 생성하고 컨텍스트 임베딩(612)을 텍스트 예측 모델(520)에 공급하도록 구성된다. 예를 들어 위의 예에서, 컨텍스트 특징(602)은 텍스트 문서로부터 파생되고, 제한 없이, 합성할 현재 입력 텍스트 502(Tt), 현재 입력 텍스트에 선행하는 텍스트 소스의 이전 텍스트(Tt-1), 이전 음성 합성(680)(예: 이전 텍스트로부터의 이전 출력 오디오 신호(670(yt-1)), 현재 입력 텍스트 다음에 오는 텍스트 소스의 다음 텍스트(Tt+1), 이전 텍스트를 기반으로 텍스트 예측 네트워크(520)에 의해 예측된 이전 스타일 임베딩 및 이전 텍스트와 관련된 이전 컨텍스트 임베딩을 포함할 수 있다. 추가적으로, 텍스트 문서로부터 도출된 하나 이상의 컨텍스트 특징(602)은, 텍스트 문서의 제목; 텍스트 문서의 챕터 제목; 텍스트 문서의 섹션 제목; 텍스트 문서의 헤드라인; 텍스트 문서의 하나 이상의 글머리 기호; 텍스트 문서에서 추출한 개념 그래프의 엔티티 또는 텍스트 문서에서 추출된 하나 이상의 구조화된 답변 표현 중 적어도 하나를 포함할 수 있다. 일부 예에서, 텍스트(예: 현재 입력된 텍스트, 이전 텍스트, 다음(upcoming) 텍스트 등)와 연관된 컨텍스트 특징(602)은, 제한 없이, 각각의 단어에 대한 모음-레벨 임베딩, 단어-레벨 임베딩, 문장-레벨 임베딩, 단락-레벨 임베딩, 및/또는 음성 태그(예: 명사, 동사, 형용사 등) 를 포함할 수 있지만 이에 제한되지 않는 텍스트로부터 추출된 특징을 포함한다.
추가적으로, 텍스트 예측 모델(520)은, 기준 오디오 신호(402)의 트랜스크립트에 대응하는 입력 텍스트(502)의 각 훈련 샘플, 및 스타일 토큰 계층(510)에 의해 생성된 스타일 임베딩 SE(550)와 관련된 조합 가중치(CW)(516P)(도 5a)를 예측하거나 스타일 토큰 계층(510)에 의해 생성된 스타일 임베딩 SE(550)와 매칭하는 스타일 임베딩 SE(550P)(도 5b)를 직접 예측하기 위한 입력 텍스트(502)의 각 훈련 샘플에 대해 생성된 대응하는 컨텍스트 임베딩(612)을 수신한다. 따라서, 훈련 단계는 기준 오디오 신호(402)의 훈련 세트(예를 들어, ground truth), 입력 텍스트(502)의 해당 트랜스크립트, 및 컨텍스트 모델(610) 및 텍스트 예측 모델(520)의 공동 훈련을 허용하기 위해 입력 텍스트(502)의 트랜스크립트로부터 유도된 컨텍스트 특징(602)을 사용하여 입력 텍스트(502) 및 TTS 모델(650)의 각 훈련 샘플에 대한 스타일 임베딩 SE(550P)를 예측하고, 타겟 스타일 임베딩 SE(550T)에 의해 지정된(특정된) 스타일/프로소디를 갖고 기준 오디오 신호(402)의 훈련 샘플과 매칭되는 출력 오디오 신호(670)를 (디코더 658을 통해) 결정한다. 그러나 일부 구성에서, 훈련 단계는 대신 기준 인코더(400), 스타일 토큰 계층(510) 및 TTS 모델(650)이 훈련 절차의 첫 번째 단계 동안 사전 훈련되고, 고정되는 2단계 훈련 절차를 포함하는 반면, 컨텍스트 모델(610) 및 텍스트-예측 모델(520)은 훈련 절차의 두 번째 단계 동안 별도로 훈련된다.
도 6b는 현재 입력 텍스트(502)(Tt)로부터 스타일 임베딩 SE(550P)를 예측하기 위한 추론 단계 동안 기준 인코더(400) 및 스타일 토큰 계층(510)을 생략한 컨텍스트 예측 시스템(600) 및 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)을 도시한다. 텍스트 예측 모델(520)은 제1 텍스트 예측 경로(도 5a) 또는 제2 텍스트 예측 경로(도 5b) 중 어느 하나를 통해 스타일 임베딩 SE(550P)를 예측할 수 있다. 여기에서, 현재 입력 텍스트(502)는 TTS 모델(650)이 표현 음성으로 합성하는 텍스트 소스(800)(도 8)로부터의 현재 입력 텍스트에 대응한다. 도 8은 표현 음성으로 합성될 텍스트의 시퀀스를 포함하는 예시적인 텍스트 소스(800)를 도시한다. 텍스트 소스(800)는 예를 들어 제공되며, 표현 음성으로 합성될 수 있는 텍스트를 포함하는 다른 텍스트 소스(800)(미도시)를 포함할 수 있다. 텍스트 소스(800)는 텍스트 문서, 대화 트랜스크립트, 쿼리-응답 시스템 또는 가상 환경을 포함할 수 있다. 텍스트 문서는 소설/교과서와 같은 긴 형식의 텍스트 문서부터 웹 페이지 또는 대화 문서와 같은 짧은 형식의 문서에 이르기까지 다양한 문서를 포함할 수 있다.
텍스트 문서의 경우, 컨텍스트 특징(602)은 이전 텍스트(예를 들어, 현재 텍스트(502) 이전의 N 문장), 이전 텍스트에 대응하는 이전 오디오(670), 다음(upcoming) 텍스트(예를 들어, 현재 텍스트(502) 이후의 N 문장)와 같은 독백 컨텍스트를 포함할 수 있다. 예를 들어, 슬픈 사건을 설명하는 이전 텍스트는 슬픈 감정을 나타내는 프로소디/스타일을 전달하는 현재 텍스트의 표현적 발화를 합성하기 위한 스타일 임베딩을 예측하는 데 도움이 될 수 있다. 컨텍스트 특징(602)은 또한 제목, 장 제목, 섹션 제목, 헤드라인, 글머리 기호 등과 같은 문서 구조로부터 유도될 수 있다. 텍스트 문서는 또한 컨텍스트 특징(602)으로 추출될 수 있는 개념 그래프(예: Wikipedia 엔트리)로부터 엔티티와 같은 개념을 포함할 수 있다.
쿼리-응답 시스템의 경우(예: 질문 및 답변), 컨텍스트 특징(602)은 음성 쿼리로부터의 오디오/텍스트 특징 또는 현재 텍스트(502)가 표현 음성으로 합성될 응답의 트랜스크립트에 대응하는 텍스트 쿼리로부터의 텍스트 특징을 포함할 수 있다. 컨텍스트 특징(602)은 현재 응답으로 이어지는 쿼리 시퀀스로부터의 오디오/텍스트 특징을 포함할 수 있다. 추가적으로 또는 대안적으로, 컨텍스트 특징(602)은 디지털 어시스턴트에 의해 사용되는 응답의 구조화된 답변 표현으로부터 추출될 수 있다. 대화 트랜스크립트(turn taking)의 경우, 컨텍스트 특징(602)은 대화의 이전 "턴(turn)"의 이전 텍스트 특징 및/또는 대화의 다음 "턴"의 다음(upcoming) 텍스트 특징을 포함할 수 있다. 가상 환경에 대응하는 텍스트 소스(800)는 가상 환경에 존재하는 임의의 문자 및/또는 객체에 대응하는 컨텍스트 특징(802)을 제공할 수 있다.
다시 도 6b의 추론 단계를 참조하면, 현재 입력 텍스트(502)는 책(예: 텍스트 문서)과 같은 텍스트 소스(800)에 포함된 텍스트 피스(piece)(예: 하나 이상의 문장)일 수 있고, 하나 이상의 컨텍스트 특징(602)은 텍스트 소스(800)로부터 유도된다. 예를 들어, 텍스트 문서는 전자 책(e-book)일 수 있고 컴퓨팅 장치(900)는 전자 책을 표현 음성(680)으로 합성하는 전자-리더(e-reader) 소프트웨어를 실행할 수 있다. 따라서, 전자-리더 소프트웨어를 실행하는 컴퓨팅 장치(900)는 컨텍스트 예측 시스템(600)을 실행하여 입력 텍스트(502) 및 컨텍스트 특징(602)에만 기초하여(예: 프로소디/스타일을 제어/선택하는 보조 입력을 사용하지 않음) 자연스러운(natural sounding) 프로소디/스타일을 갖는 표현 음성(680)를 합성할 수 있다. 다른 예에서, 텍스트 소스(800)가 대화 트랜스크립트를 포함하는 경우, 합성될 현재 입력 텍스트(502)는 대화 트랜스크립트의 현재 턴에 대응한다. 이 예에서, 컨텍스트 특징(602)은 대화 트랜스크립트의 이전 턴에 대응하는 대화 트랜스크립트의 이전 텍스트, 및/또는 대화 트랜스크립트의 다음 턴에 대응하는 대화 트랜스크립트의 다음 텍스트를 포함할 수 있다. 또 다른 예에서, 텍스트 소스(800)가 사용자가 컴퓨팅 장치(900)(도 9)에 텍스트 또는 음성 쿼리를 입력할 수 있게 하는 쿼리-응답 시스템(예: 디지털 어시스턴트 등)을 포함하고 그리고 검색 엔진(원격 또는 사용자 장치에서)이 컴퓨팅 장치로부터의 가청 출력을 위해 표현 음성(680)으로 합성될 응답을 가져올 때, 현재 입력 텍스트는 현재 쿼리에 대한 응답에 해당하고, 컨텍스트 특징은, 현재 쿼리와 연관된 텍스트 또는 쿼리 응답 시스템에서 수신된 쿼리 시퀀스와 연관된 텍스트 또는 현재 쿼리와 관련된 오디오 특징 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 오디오 특징 중 적어도 하나를 포함한다. 이러한 컨텍스트 특징(602)은 현재 입력 텍스트(502)로부터 합성된 표현 음성(680)의 자연스러운 스타일/프로소디를 가장 잘 전달하는 스타일 임베딩 SE(550)를 보다 정확하게 예측하기 위한 추가 컨텍스트를 제공하기 위해 텍스트 소스(800)로부터 쉽게 유도될 수 있다.
도 7a 내지 도 7d는 다중 시간 단계에 걸쳐 표현 음성를 합성하기 위한 도 6a 및 도 6b의 컨텍스트 예측 시스템(600)을 구현하는 예시적인 컨텍스트 TTS 네트워크(700a-d)를 도시한다. TTS 네트워크(700a-d)는 스타일 임베딩 SE(550)를 예측하기 위해 컨텍스트 특징(602)과 입력 텍스트(502) 모두를 활용하지만, TTS 네트워크(700a-d)는 도 5a 및 5b의 텍스트 예측 시스템(500)과 관련하여 위에서 설명된 바와 같이 입력 텍스트(502)만을 사용하여 스타일 임베딩 SE(550)를 예측하도록 수정될 수 있다. 단순화를 위해, 컨텍스트 TTS 네트워크(700a-d)는 TTS 모델(650) 및 컨텍스트 모듈(710)을 포함하며, 컨텍스트 모듈(710)은 도 6a 및 도 6b를 참조하여 위에서 설명된 컨텍스트 모델(610) 및 텍스트 예측 모델(520)을 집합적으로 포함한다. 현재 입력 텍스트만 사용되는 구성(예: 텍스트 예측 시스템(500) 구현)에서, 컨텍스트 모듈(710)은 단순히 현재 입력 텍스트가 컨텍스트 모듈(710)에 입력된 유일한 컨텍스트 모듈인 텍스트 예측 모델(520)을 포함할 수 있다. 본 명세서에 사용된 바와 같이, "T"는 텍스트 입력(502)을 나타내고, "t"는 시간 단계를 나타내는 인덱스를 나타내고, "x"는 컨텍스트 모듈 입력을 나타내고, "y"는 TTS 모델(650)에서 출력되는 출력 오디오 신호(670)를 나타내고, "SE"는 스타일 임베딩(550)을 나타낸다.
도 7a는 오디오 재구성 오류를 최소화하기 위해 E2E 단일 모델을 훈련하고, 모든 이전 컨텍스트 모듈 입력
Figure pct00001
에 대한 어텐션을 사용하여 컨텍스트 모듈(710)의 각 컨텍스트 상태
Figure pct00002
를 각각의 시간 단계에서 계산할 수 있는 전체 컨텍스트 TTS 네트워크(700a)의 개략도를 도시한다. 각 시간 단계(t-1, t, t+1) 동안, 컨텍스트 모듈(710)은 이전 시간 단계에서 컨텍스트 모듈(710)로부터 출력된 컨텍스트 상태
Figure pct00003
및 현재 텍스트 입력 Tt, 이전 텍스트 입력 Tt-1 및 이전 출력 오디오 신호 yt-1의 조합을 포함하는 컨텍스트 모듈 입력(xt-1, xt, xt+1)을 수신한다. 여기서, 이전 출력 오디오 신호는 이전 시간 단계(타임 스텝) t-1의 이전 입력 텍스트(Tt-1)에 대해 TTS 모델(650)에서 출력된 출력 오디오 신호에 해당한다. 각각의 시간 단계(예를 들어, 현재 시간 단계 "t") 동안, 컨텍스트 모듈(710)은 컨텍스트 상태(st-1) 및 현재 컨텍스트 모듈 입력(xt)을 프로세싱함으로써 해당 컨텍스트 출력(ct)을 계산한다. 일부 예에서, 컨텍스트 모듈 입력(xt)은 또한 전술한 다른 입력의 임의의 조합과 함께 또는 조합 없이, 후속 시간 단계 t+1 동안 TTS 모델(650)에 의해 합성될 다음(upcoming) 텍스트(Tt+1)을 포함할 수 있다. 이 옵션은 전자책(e-book)에서 텍스트의 음성을 합성하기 위해 컴퓨팅 장치에서 실행되는 전자-리더와 같은 긴 형식(long-form)의 애플리케이션에 특히 유용할 수 있다. 일부 구현들에서, TTS 모델(650)이 대화식 음성 합성을 위한 것일 때, 네트워크(700a)는 완벽한 보상 기능을 갖는 실제 환경에서 재구성 손실(RL: reconstruction loss)을 사용하여 훈련된다. 이러한 구현에서, 컨텍스트 모듈 입력(xt)은 대화 음성 합성과 연관된 하나 이상의 환경 입력(Et)을 더 포함할 수 있다.
도 7b는 도 7a의 네트워크(700a)에서와 같이 모든 이전 컨텍스트 모듈 입력에 대해 컨텍스트 상태를 계산하지 않는 1단계(one-step) 컨텍스트 TTS 네트워크(700b)의 개략도를 도시한다. 대신, 각 시간 단계(예: 현재 시간 단계 "t") 동안, 컨텍스트 모듈(710)은 현재 텍스트 입력 Tt, 이전 텍스트 입력 Tt-1 및 이전 출력 오디오 신호 yt-1의 임의의 조합을 포함하는 컨텍스트 모듈 입력(xt-1, xt, xt+1)만을 수신하고, 현재 컨텍스트 모듈 입력(xt)을 프로세싱하여 해당 컨텍스트 출력(ct)을 계산한다. 컨텍스트 모듈 입력(xt)은 대화 음성 합성과 연관된 하나 이상의 환경 입력(Et)을 더 포함할 수 있다. 도 7a의 전체 컨텍스트 TTS 네트워크(700a)에서와 같이, 1단계 컨텍스트 TTS 네트워크(700b)는 E2E 단일 모델을 학습하지만 모든 이전 컨텍스트 모듈 입력에 대한 어텐션을 사용하는 컨텍스트 상태가 계산되지 않기 때문에 롱-텀(long-term) 컨텍스트를 추적할 수 없다. 일부 예들에서, 네트워크(700b)는 훈련 효율을 증가시키기 위해 절단된 마르코프(truncated Markov)(1단계) 상태에서 훈련한다.
도 7c는 컨텍스트 모듈(710)과 TTS 모델(650)이 E2E(end-to-end) 단일 모델을 훈련하기 보다는 개별적으로 훈련되는 분리된(decoupled) 전체 컨텍스트 TTS 네트워크(700c)의 개략도를 도시한다. 즉, 네트워크(700c)는 2단계 훈련 절차를 사용하여 훈련된다. 예를 들어, TTS 모델(650)은,
각 시간 단계(t)에 대해 기준 오디오 신호(yref(t))에 기초하여 타겟 스타일 임베딩(SE(t))을 생성하도록 구성된 스타일 인코더(750)와 함께 훈련 절차의 첫 번째(제1) 단계 동안 사전 훈련된다. 일부 예들에서, 스타일 인코더(750)는 도 5a 내지 도 5b의 프로소디 인코더(400) 및 스타일 토큰 계층(410)을 집합적으로 포함한다. 그 다음, TTS 모델(650)은 입력 텍스트(Tt) 및 타겟 스타일 임베딩 SE를 수신 및 프로세싱하여 출력 오디오 신호 yt를 생성한다. 여기서, 현재 시간 단계 t에 대해 출력 오디오 신호 yt는 기준 오디오 신호(yref(t))와 매칭하고 입력 텍스트 Tt는 기준 오디오 신호 yref(t)의 스크립트에 해당한다.
2단계(two-step) 훈련 절차의 두 번째(제2) 단계에서, 분리된 컨텍스트 모듈(710)은 해당 스타일 임베딩 SE(t)를 예측하기 위해 각 시간 단계(t)에 대해 사전 훈련된 스타일 인코더(750)에 의해 생성된 타겟 스타일 임베딩 SE(t)를 사용한다. 도 7a의 전체 컨텍스트 TTS 네트워크(700a)에서와 같이, 분리된 전체 컨텍스트 TTS 네트워크(700b)는 모든 이전 컨텍스트 모듈 입력(xt-1, xt, xt+1)에 대한 어텐션을 사용하여 컨텍스트 모듈(710)의 개별 컨텍스트 상태(st-2, st-1, st, st+1)를 각 시간 단계에서 계산할 수 있다. 그러나, 컨텍스트 모듈(710)은 분리되어 있으므로, 각 시간 단계에서 컨텍스트 모듈 입력(xt-1, xt, xt+1)은 이전 시간 단계 t-1의 이전 입력 텍스트 Tt-1에 대해 TTS 모델 650에서 출력된 이전 출력 오디오 신호를 포함하지 않는다. 대신, 각 시간 단계에서 컨텍스트 모듈 입력은 현재 입력 텍스트 Tt, 이전 스타일 임베딩 SE(t-1) 및 후속 시간 단계(t+1) 동안 TTS 모델(650)에 의해 합성될 예정 텍스트 Tt+1의 임의의 조합을 포함한다. 여기서, 이전 스타일 임베딩 SE(t-1)은 이전 시간 단계 t-1의 이전 컨텍스트 모듈 입력 xt-1에 대한 컨텍스트 모듈(710)의 스타일 임베딩 출력에 해당한다.
도 7d는 도 7c의 네트워크(700c)에서와 같이 모든 이전 컨텍스트 모듈 입력에 대해 컨텍스트 상태를 계산하지 않는 분리된 1단계(one-step) 컨텍스트 TTS 네트워크(700d)의 개략도를 도시한다. 대신, 각 시간 단계(예: 현재 시간 단계 "t") 동안, 컨텍스트 모듈(710)은 현재 입력 텍스트 Tt, 이전 스타일 임베딩 SE(t-1)및 다음(upcoming) 텍스트 Tt+1의 임의의 조합을 포함하는 컨텍스트 모듈 입력(xt-1, xt, xt+1)만을 수신하고, 그런 다음 현재 컨텍스트 모듈 입력(xt)을 프로세싱하여 해당하는 현재 스타일 임베딩 SE(t)를 계산/예측한다. 컨텍스트 모듈 입력 xt는 대화 음성 합성과 연관된 하나 이상의 환경 입력 Et를 더 포함할 수 있다. 도 7d의 분리된 전체 컨텍스트 TTS 네트워크(700c)에서와 같이, 분리된 1단계(decoupled one-step) 컨텍스트 TTS 네트워크(700d)는 스타일 인코더(750) 및 TTS 모델(650)이 분리되고 컨텍스트 모듈(710)과 별도로 사전 훈련되는 2단계 훈련 절차를 사용하여 훈련되고, 그러나 모든 이전 컨텍스트 모듈 입력에 대한 어텐션을 사용하는 컨텍스트 상태가 계산되지 않기 때문에 롱-텀 컨텍스트를 추적할 수 없다.
컨텍스트 모듈(710)을 TTS 모델(650)로부터 분리함으로써, 네트워크(700c, 700d)는 각각 우수한 훈련 효율을 제공하고, 여기서 롱-텀 컨텍스트를 추적하는 능력은 네트워크(700c)에서만 이용 가능하다. 또한, TTS 모델(650)을 분리하면 스타일 임베딩 공간이 제어 인터페이스 역할을 하는 컨텍스트 모드(도 5a-6b에 설명된 대로) 및 프로소디/스타일 전송(예: "say it like this") 모두에 대해 TTS 모델(650)을 사용할 수 있다. 즉, 단일 TTS 모델(650)은, 스타일 임베딩이 입력 텍스트 단독(도 5a 및 5b의 텍스트 예측 시스템(500)) 또는 입력 텍스트와 컨텍스트 특징(도 6a 및 6b의 컨텍스트 예측 시스템(600)) 의 조합에서 (기준 오디오 신호 또는 수동 스타일 임베딩 선택을 사용하지 않고) 생성되는 컨텍스트 모드에서, 및 한 화자에서 다른 화자로 프로소디 스타일을 전송하기 위해 추론에서 기준 오디오 신호(예: "say it like this") 또는 수동 스타일 임베딩 선택이 제공되는 컨텍스트 모드에서 사용하도록 훈련될 수 있다.
소프트웨어 애플리케이션(즉, 소프트웨어 리소스(자원))은 컴퓨팅 장치가 태스크를 수행하게 하는 컴퓨터 소프트웨어를 의미할 수 있다. 일부 예들에서, 소프트웨어 애플리케이션은 "애플리케이션", "앱" 또는 "프로그램"으로 지칭될 수 있다. 예제 애플리케이션에는 시스템 진단 애플리케이션, 시스템 관리 애플리케이션, 시스템 유지 관리 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 메시징 애플리케이션, 미디어 스트리밍 애플리케이션, 소셜 네트워킹 애플리케이션 및 게임 애플리케이션이 포함되지만 이에 국한되지는 않는다.
비일시적 메모리는 컴퓨팅 장치에서 사용하기 위해 임시 또는 영구적으로 프로그램(예: 명령어 시퀀스) 또는 데이터(예: 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 장치일 수 있다. 비일시적 메모리는 휘발성 및/또는 비휘발성 주소 지정 가능 반도체 메모리일 수 있다. 비휘발성 메모리의 예에는 플래시 메모리 및 읽기 전용 메모리(ROM)/프로그램 가능 읽기 전용 메모리(PROM)/지우기 가능한 프로그램 가능 읽기 전용 메모리(EPROM)/전자적으로 지울 수 있는 프로그래밍 가능한 읽기 전용 메모리(EEPROM)(예: 일반적으로 부팅 프로그램과 같은 펌웨어에 사용됨)이 포함되지만 이에 국한되지는 않는다. 휘발성 메모리의 예에는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), PCM(Phase Change Memory) 및 디스크 또는 테이프가 포함되지만 이에 국한되지 않는다.
도 9은 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치(900)의 개략도이다. 컴퓨팅 장치(900)는 랩톱, 데스크탑, 워크스테이션, 개인용 디지털 보조 장치, 서버, 블레이드 서버, 메인프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도된다. 여기에 표시된 컴포넌트들, 이들의 연결 및 관계 및 기능은 예시 일 뿐이며 본 명세서에서 설명 및/또는 청구된 발명의 구현을 제한하려는 것이 아니다.
컴퓨팅 장치(900)는 프로세서(910), 메모리(920), 저장 장치(930), 메모리(920) 및 고속 확장 포트(950)에 연결되는 고속 인터페이스/제어기(제어기)(940) 및 저속 버스(970) 및 저장 장치(930)에 연결되는 저속 인터페이스/제어기(960)를 포함한다. 컴퓨팅 장치(900)는 텍스트-음성 변환 시스템(100), TTS 모델(150, 650), 기준 인코더(400), 결정론적 기준 인코더(400), 컨텍스트 모델(610) 및 텍스트 예측 모델(520)을 (데이터 프로세싱 하드웨어(910)에서 실행을 통해) 제공할 수 있다. 각각의 컴포넌트(910, 920, 930, 940, 950, 960)는 다양한 버스를 사용하여 상호 연결되고, 공통 마더보드에 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(910)는 고속 인터페이스(940)에 연결된 디스플레이(970)와 같은 외부 입력/출력 장치에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 표시하기 위해 메모리(920) 또는 저장 장치(930)에 저장된 명령어를 포함하는, 컴퓨팅 장치(900) 내에서 실행하기 위한 명령어를 프로세싱(프로세싱)할 수 있다. 다른 구현에서, 다중 프로세서 및/또는 다중 버스가 다중 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 장치(900)는 필요한 동작의 일부를 제공하는 각 장치(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 다중 프로세서 시스템)와 연결될 수 있다.
메모리(920)는 컴퓨팅 장치(900) 내에 비-일시적으로 정보를 저장한다. 메모리(920)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛(들) 또는 비-휘발성 메모리 유닛(들)일 수 있다. 비-일시적 메모리(920)는 컴퓨팅 장치(900)에 의해 사용하기 위해 일시적 또는 영구적으로 프로그램(예를 들어, 명령어 시퀀스) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 장치일 수 있다. 예시적인 비-휘발성 메모리는 플래시 메모리 및 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) 및 디스크 또는 테이프가 포함되지만 이에 국한되지는 않는다.
저장 장치(930)는 컴퓨팅 장치(900)에 대용량 저장 장치를 제공할 수 있다. 일부 구현에서, 저장 장치(930)는 컴퓨터 판독 가능 매체이다. 다양한 다른 구현에서, 저장 장치(930)는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 기타 유사한 솔리드 스테이트 메모리 장치 또는 저장(스토리지) 영역 네트워크 또는 기타 구성의 장치를 포함하는 장치 어레이일 수 있다. 추가 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행시 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어가 포함되어 있다. 정보 매체는 메모리(920), 저장 장치(930) 또는 프로세서(910)상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 제어기(940)는 컴퓨팅 장치(900)에 대한 대역폭 집약적인(bandwidth-intensive) 동작을 관리하는 반면, 저속 제어기(960)는 낮은 대역폭 집약적인 동작을 관리한다. 이러한 업무 할당은 예시 일뿐이다. 일부 구현에서, 고속 제어기(940)는 메모리(920), 디스플레이(980)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(미도시)를 수용할 수 있는 고속 확장 포트(950)에 결합된다. 일부 구현에서, 저속 제어기(960)는 저장 장치(930) 및 저속 확장 포트(990)에 결합된다. 다양한 통신 포트(예: USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(990)는 예를 들어 네트워크 어댑터를 통해, 키보드, 포인팅 장치, 스캐너 또는 스위치 또는 라우터와 같은 네트워킹 장치와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(900)는 도면에 도시된 바와 같이 복수의 상이한 형태로 구현될 수 있다. 예를 들어, 표준 서버(900a)로서 또는 그러한 서버(900a)의 그룹에서 랩톱 컴퓨터(900b)로서 또는 랙 서버 시스템(900c)의 일부로서 여러번 구현될 수 있다.
도 10은 입력 텍스트(502)로부터 표현 합성 음성(680)에 대한 출력 신호(670)를 생성하는 방법(1000)에 대한 동작들의 예시적인 배열의 흐름도를 도시한다. 방법은 도 5a 내지 도 6b를 참조하여 설명될 수 있다. 데이터 프로세싱 하드웨어(910)(도 9)는 방법(1000)에 대한 동작의 예시적인 배열을 수행하기 위해 메모리 하드웨어(920)에 저장된 명령을 실행할 수 있다. 동작(1002)에서, 방법(1000)은 데이터 프로세싱 하드웨어(910)에서 텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하는 단계를 포함한다. 여기서, 현재 입력된 텍스트(502)는 TTS(text-to-speech) 모델(650)에 의해 표현 음성(expressive speech)(680)으로 합성될 것이다.
동작(1004)에서, 방법(1000)은 데이터 프로세싱 하드웨어(910)에 의해, 컨텍스트 모델(610)을 사용하여, 텍스트 소스(800)로부터 유도된 하나 이상의 컨텍스트 특징(602)을 프로세싱함으로써 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 생성하는 단계를 포함한다. 동작(1006)에서, 방법(1000)은, 텍스트 예측 네트워크(520)("텍스트 예측 모델"이라고도 함)를 사용하여 데이터 프로세싱 하드웨어(910)에 의해 현재 입력 텍스트(502) 및 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 프로세싱함으로써 현재 입력 텍스트(502)에 대한 스타일 임베딩(550)을 예측하는 단계를 포함한다. 특히, 텍스트 예측 네트워크(520)에 의해 예측된 스타일 임베딩(550)은 현재 입력 텍스트(502)를 표현 음성(680)으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정한다. 스타일 임베딩(550)은 도 5a의 텍스트 예측 네트워크(520a), 도 5b의 텍스트 예측 네트워크(520b) 중 어느 하나에 의해 예측될 수 있다.
동작(1008)에서, 방법(1000)은 또한 데이터 프로세싱 하드웨어(910)에 의해, TTS 모델(650)을 사용하여, 스타일 임베딩(550) 및 현재 입력 텍스트(502)를 프로세싱함으로써 현재 입력 텍스트(502)의 표현 음성(680)의 출력 오디오 신호(670)를 생성하는 단계를 포함한다. 여기서, 출력 오디오 신호(670)는 스타일 임베딩(550)에 의해 지정된 특정 프로소디 및/또는 스타일을 갖는다. 위에서 설명된 바와 같이, TTS 모델(650)(또는 모델(650)로부터 다운스트림의 다른 시스템)은 합성기(675)를 사용하여 결과적인 표현 음성(680)를 합성한다. 따라서 표현 음성(680)은 합성어를 의미한다.
여기에 설명된 시스템 및 기술의 다양한 구현은 디지털 전자 및/또는 광학 회로, 집적 회로, 특별히 설계된 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. 시스템(900)으로서,
    컨텍스트 인코더(610) -상기 컨텍스트 인코더(610)는,
    표현 음성(680)으로 합성될 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)을 수신하고, 각 컨텍스트 특징(602)은 상기 현재 입력 텍스트(502)의 텍스트 소스(800)로부터 파생되고; 그리고
    현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 생성하기 위해 하나 이상의 컨텍스트 특징(602)을 프로세싱하도록 구성됨-;
    컨텍스트 인코더(610)와 통신하는 텍스트 예측 네트워크(520) -텍스트 예측 네트워크(520)는,
    텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하고, 텍스트 소스(800)는 표현 음성(680)으로 합성될 텍스트 시퀀스를 포함하고;
    컨텍스트 인코더(610)로부터 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 수신하고; 그리고
    현재 입력 텍스트(502)에 대한 스타일 임베딩(550)을 출력으로서 예측하기 위해 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612) 및 현재 입력 텍스트(502)를 프로세싱하도록 구성되고, 스타일 임베딩(550)은 현재 입력 텍스트(502)를 표현 음성(680)으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정함-; 그리고
    텍스트 예측 네트워크(520)와 통신하는 TTS(text-to-speech) 모델(650)을 포함하며, TTS 모델(650)은,
    텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하고;
    텍스트 예측 네트워크에 의해 예측된 스타일 임베딩(550)을 수신하고; 그리고
    현재 입력 텍스트(502) 및 스타일 임베딩(550)을 프로세싱하여 현재 입력 텍스트(502)의 표현 음성(680)의 출력 오디오 신호(670)를 생성하도록 구성되며, 출력 오디오 신호(670)는 스타일 임베딩(550)에 의해 지정된 특정 프로소디 및/또는 스타일을 갖는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서, 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    현재 입력 텍스트(502);
    현재 입력 텍스트(502)에 선행하는 텍스트 소스(800)로부터의 이전 텍스트;
    상기 이전 텍스트에서 합성된 이전 음성;
    현재 입력 텍스트(502) 다음에 오는 텍스트 소스(800)로부터의 다음(upcoming) 텍스트; 또는
    이전 텍스트와 연관된 이전 컨텍스트 임베딩(612) 및 이전 텍스트에 기초하여 텍스트 예측 네트워크(520)에 의해 예측된 이전 스타일 임베딩(550) 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  3. 제1항 또는 제2항에 있어서,
    텍스트 소스(800)는 텍스트 문서를 포함하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    텍스트 문서의 제목;
    텍스트 문서의 챕터 제목;
    텍스트 문서의 섹션 제목;
    텍스트 문서의 헤드라인;
    텍스트 문서의 하나 이상의 글머리 기호(bullet point);
    텍스트 문서에서 추출한 개념 그래프의 엔티티 또는
    텍스트 문서에서 추출된 하나 이상의 구조화된 답변 표현 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    텍스트 소스(800)는 대화 트랜스크립트(transcript)를 포함하고;
    현재 입력 텍스트(502)는 대화 트랜스크립트의 현재 턴(turn)에 해당하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    대화 트랜스크립트의 이전 턴에 해당하는 대화 트랜스크립트의 이전 텍스트; 또는
    대화 트랜스크립트의 다음 턴에 해당하는 대화 트랜스크립트의 다가오는 텍스트 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    텍스트 소스(800)는 쿼리-응답 시스템을 포함하고;
    현재 입력 텍스트(502)는 쿼리-응답 시스템에서 수신된 현재 쿼리에 대한 응답에 대응하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    현재 쿼리와 연관된 텍스트 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 텍스트 -상기 쿼리 시퀀스는 현재 쿼리 및 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함함-; 또는
    현재 쿼리와 연관된 오디오 특징 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 오디오 특징 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 TTS 모델(650)은:
    인코더 신경망(112) -상기 인코더 신경망(112)은,
    텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하고; 그리고
    현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 생성하기 위해 현재 입력 텍스트(502)를 프로세싱하도록 구성됨-
    연결기(654) -상기 연결기(654)는,
    인코더 신경망(112)으로부터 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 수신하고;
    텍스트 예측 네트워크에 의해 예측된 스타일 임베딩(550)을 수신하고; 그리고
    현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)와 스타일 임베딩(550) 사이의 연결(655)을 생성하도록 구성됨-; 그리고
    어텐션 기반 디코더 순환 신경망(118)을 포함하고, 어텐션 기반 디코더 순환 신경망(118)은,
    디코더 입력의 시퀀스를 수신하고; 그리고
    상기 시퀀스의 각 디코더 입력에 대해, 해당 디코더 입력 및 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)와 스타일 임베딩(550) 사이의 연결(655)을 프로세싱하여 출력 오디오 신호(670)의 r개의 프레임을 생성하도록 구성되며, 상기 r은 1보다 큰 정수를 포함하는 것을 특징으로 하는 시스템.
  7. 제6항에 있어서, 상기 인코더 신경망(112)은,
    인코더 프리-넷 신경망(114) -인코더 프리-넷 신경망(114)은,
    현재 입력 텍스트(502)의 문자 시퀀스에서 각 문자의 각각의 임베딩을 수신하고; 그리고
    각 문자에 대해, 문자의 각각의 변환된 임베딩을 생성하기 위해 각각의 임베딩을 프로세싱하도록 구성됨-; 그리고
    인코더 CBHG 신경망(116)을 포함하고, 인코더 CBHG 신경망(116)은,
    인코더 프리-넷 신경망에 의해 생성된 변환된 임베딩을 수신하고; 그리고
    상기 변환된 임베딩을 프로세싱하여 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 생성하도록 구성되는 것을 특징으로 하는 시스템.
  8. 제7항에 있어서, 상기 인코더 CBHG 신경망(116)은 1차원(1-D) 컨볼루션 필터의 뱅크, 하이웨이 네트워크, 양방향 순환 신경망을 포함하는 것을 특징으로 하는 시스템.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 텍스트 예측 네트워크(520)는,
    GRU(time-aggregating gated recurrent unit) 순환 신경망(RNN) -GRU 순환 신경망은,
    현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612) 및 현재 입력 텍스트(502)의 인코딩된 시퀀스(653)를 수신하고; 그리고
    컨텍스트 임베딩(612) 및 인코딩된 시퀀스(653)를 프로세싱하여 고정 길이 특징 벡터를 생성하도록 구성됨-; 그리고
    상기 고정 길이 특징 벡터를 프로세싱함으로써 스타일 임베딩(550)을 예측하도록 구성된 하나 이상의 완전 연결 계층을 포함하는 것을 특징으로 하는 시스템.
  10. 제9항에 있어서, 상기 하나 이상의 완전 연결 계층은
    예측된 스타일 임베딩(550)을 방출하기 위해 하이퍼볼릭탄젠트(tanh) 활성화를 사용하는 출력 계층 및 ReLU 활성화를 사용하는 하나 이상의 은닉 완전 연결 계층을 포함하는 것을 특징으로 하는 시스템.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 컨텍스트 모델(610), 텍스트 예측 네트워크(520) 및 TTS(text-to-speech) 모델(650)은 공동으로 훈련되는 것을 특징으로 하는 시스템.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 2단계(two-step) 훈련 절차는 훈련 절차의 첫 번째 단계 동안 TTS(text-to-speech) 모델(650)을 훈련하고, 그리고
    훈련 절차의 두 번째 단계 동안 컨텍스트 모델(610)과 텍스트 예측 네트워크(520)를 별도로 훈련하는 것을 특징으로 하는 시스템.
  13. 표현 합성 음성(680)의 출력 오디오 신호(670)를 생성하기 위한 방법(1000)으로서,
    데이터 프로세싱 하드웨어(910)에서, 텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하는 단계 -현재 입력 텍스트(502)는 TTS(text-to-speech) 모델(650)에 의해 표현 음성(680)으로 합성됨-;
    데이터 프로세싱 하드웨어(910)에 의해, 컨텍스트 모델(610)을 사용하여, 텍스트 소스(800)로부터 유도된 하나 이상의 컨텍스트 특징(602)을 프로세싱함으로써 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 생성하는 단계;
    데이터 프로세싱 하드웨어(910)에 의해, 텍스트 예측 네트워크(520)를 사용하여, 현재 입력 텍스트(502) 및 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 프로세싱하여 현재 입력 텍스트(502)에 대한 스타일 임베딩(550)을 예측하는 단계 -스타일 임베딩(550)은 현재 입력 텍스트(502)를 표현 음성(680)으로 합성하기 위한 특정 프로소디 및/또는 스타일을 지정함-; 그리고
    데이터 프로세싱 하드웨어(910)에 의해, TTS 모델(650)을 사용하여, 스타일 임베딩(550) 및 현재 입력 텍스트(502)를 프로세싱함으로써 현재 입력 텍스트(502)의 표현 음성(680)의 출력 오디오 신호(670)를 생성하는 단계를 포함하며, 출력 오디오 신호(670)는 스타일 임베딩(550)에 의해 지정된 특정 스타일 및/또는 프로소디를 갖는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  14. 제13항에 있어서, 현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    현재 입력 텍스트(502);
    현재 입력 텍스트(502)에 선행하는 텍스트 소스(800)로부터의 이전 텍스트;
    상기 이전 텍스트에서 합성된 이전 음성;
    현재 입력 텍스트(502) 다음에 오는 텍스트 소스(800)로부터의 다음(upcoming) 텍스트; 또는
    이전 텍스트와 연관된 이전 컨텍스트 임베딩(612) 및 상기 이전 텍스트에 기초하여 텍스트 예측 네트워크(520)에 의해 예측된 이전 스타일 임베딩(550) 중 적어도 하나를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  15. 제13항 또는 제14항에 있어서,
    텍스트 소스(800)는 텍스트 문서를 포함하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    텍스트 문서의 제목;
    텍스트 문서의 챕터 제목;
    텍스트 문서의 섹션 제목;
    텍스트 문서의 헤드라인;
    텍스트 문서의 하나 이상의 글머리 기호(bullet point);
    텍스트 문서에서 추출한 개념 그래프의 엔티티 또는
    텍스트 문서에서 추출된 하나 이상의 구조화된 답변 표현 중 적어도 하나를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  16. 제13항 내지 제15항 중 어느 한 항에 있어서,
    텍스트 소스(800)는 대화 트랜스크립트(transcript)를 포함하고;
    현재 입력 텍스트(502)는 상기 대화 트랜스크립트의 현재 턴(turn)에 해당하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    대화 트랜스크립트의 이전 턴에 해당하는 대화 트랜스크립트의 이전 텍스트; 또는
    대화 트랜스크립트의 다음 턴에 해당하는 대화 트랜스크립트의 다가오는 텍스트 중 적어도 하나를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  17. 제13항 내지 제16항 중 어느 한 항에 있어서,
    텍스트 소스(800)는 쿼리-응답 시스템을 포함하고;
    현재 입력 텍스트(502)는 쿼리-응답 시스템에서 수신된 현재 쿼리에 대한 응답에 대응하고; 그리고
    현재 입력 텍스트(502)와 연관된 하나 이상의 컨텍스트 특징(602)은,
    현재 쿼리와 연관된 텍스트 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 텍스트 -상기 쿼리 시퀀스는 현재 쿼리 및 현재 쿼리에 선행하는 하나 이상의 쿼리를 포함함-; 또는
    현재 쿼리와 연관된 오디오 특징 또는 쿼리-응답 시스템에서 수신된 쿼리 시퀀스와 연관된 오디오 특징 중 적어도 하나를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  18. 제13항 내지 제17항 중 어느 한 항에 있어서, 상기 출력 오디오 신호(670)를 생성하는 단계는,
    TTS(text-to-speech) 모델(650)의 인코더 신경망(112)에서, 텍스트 소스(800)로부터 현재 입력 텍스트(502)를 수신하는 단계;
    인코더 신경망(112)을 사용하여, 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 생성하는 단계;
    TTS 모델(650)의 연결기(654)를 사용하여, 스타일 임베딩(550)과 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653) 사이의 연결(concatenation)(655)을 생성하는 단계;
    TTS 모델(650)의 어텐션 기반 디코더 순환 신경망(118)에서, 디코더 입력의 시퀀스를 수신하는 단계; 그리고
    상기 디코더 입력의 시퀀스의 각 디코더 입력에 대해, 어텐션 기반 디코더 순환 신경망(118)을 사용하여, 스타일 임베딩(550)과 현재 입력 텍스트(502)의 각 인코딩된 시퀀스(653) 사이의 연결(655) 및 해당 디코더 입력을 프로세싱하여 출력 오디오 신호(670)의 r개 프레임을 생성하는 단계를 포함하며, 상기 r은 1보다 큰 정수를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  19. 제18항에 있어서, 상기 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 생성하는 단계는,
    인코더 신경망(112)의 인코더 프리-넷 신경망(114)에서, 현재 입력 텍스트(502)의 문자 시퀀스의 각 문자의 각각의 임베딩을 수신하는 단계;
    상기 문자 시퀀스의 각 문자에 대해, 인코더 프리-넷 신경망(114)을 사용하여, 문자의 각각의 변환된 임베딩을 생성하도록 상기 각각의 임베딩을 프로세싱하는 단계; 그리고
    인코더 신경망(112)의 인코더 CBHG 신경망(116)을 사용하여, 변환된 임베딩을 프로세싱함으로써 현재 입력 텍스트(502)의 각각의 인코딩된 시퀀스(653)를 생성하는 단계를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  20. 제19항에 있어서, 상기 인코더 CBHG 신경망(116)은 1차원(1-D) 컨볼루션 필터의 뱅크, 하이웨이 네트워크, 양방향 순환 신경망을 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  21. 제13항 내지 제20항 중 어느 한 항에 있어서, 현재 입력 텍스트(502)에 대한 스타일 임베딩(550)을 예측하는 단계는,
    텍스트 예측 네트워크(520)의 GRU(time-aggregating gated recurrent unit) 순환 신경망(RNN)(GRU-RNN)을 사용하여, 현재 입력 텍스트(502)의 인코딩된 시퀀스(653) 및 현재 입력 텍스트(502)와 연관된 컨텍스트 임베딩(612)을 프로세싱하여 고정 길이 특징 벡터를 생성하는 단계; 그리고
    GRU-RNN을 따르는 텍스트 예측 네트워크(520)의 하나 이상의 완전 연결 계층를 사용하여, 상기 고정 길이 특징 벡터를 프로세싱함으로써 스타일 임베딩(550)을 예측하는 단계를 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  22. 제21항에 있어서, 상기 하나 이상의 완전 연결 계층은,
    상기 예측된 스타일 임베딩(550)을 방출하기 위해 하이퍼볼릭탄젠트(tanh) 활성화를 사용하는 출력 계층 및 ReLU 활성화를 사용하는 하나 이상의 은닉 완전 연결 계층을 포함하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  23. 제13항 내지 제22항 중 어느 한 항에 있어서, 상기 컨텍스트 모델(610), 상기 텍스트 예측 네트워크(520) 및 상기 TTS 모델(650)은 공동으로 훈련되는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
  24. 제13항 내지 제23항 중 어느 한 항에 있어서,
    2단계(two-step) 훈련 절차는 훈련 절차의 첫 번째 단계 동안 TTS 모델(650)을 훈련하고, 그리고 훈련 절차의 두 번째 단계 동안 컨텍스트 모델(610)과 텍스트 예측 네트워크(520)를 별도로 훈련하는 것을 특징으로 하는 표현 합성 음성의 출력 오디오 신호를 생성하기 위한 방법.
KR1020227004782A 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어 KR102616214B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237043408A KR20240001262A (ko) 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962882511P 2019-08-03 2019-08-03
US62/882,511 2019-08-03
PCT/US2020/042416 WO2021025844A1 (en) 2019-08-03 2020-07-16 Controlling expressivity in end-to-end speech synthesis systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237043408A Division KR20240001262A (ko) 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어

Publications (2)

Publication Number Publication Date
KR20220035180A true KR20220035180A (ko) 2022-03-21
KR102616214B1 KR102616214B1 (ko) 2023-12-21

Family

ID=72050918

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227004782A KR102616214B1 (ko) 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어
KR1020237043408A KR20240001262A (ko) 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237043408A KR20240001262A (ko) 2019-08-03 2020-07-16 E2E(End-to-end) 음성 합성 시스템에서 표현력 제어

Country Status (6)

Country Link
US (2) US11676573B2 (ko)
EP (2) EP4345815A2 (ko)
JP (2) JP7204989B2 (ko)
KR (2) KR102616214B1 (ko)
CN (1) CN114175143A (ko)
WO (1) WO2021025844A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11954577B2 (en) * 2019-09-13 2024-04-09 Intuit Inc. Deep neural network based user segmentation
US11282495B2 (en) * 2019-12-12 2022-03-22 Amazon Technologies, Inc. Speech processing using embedding data
US11562744B1 (en) * 2020-02-13 2023-01-24 Meta Platforms Technologies, Llc Stylizing text-to-speech (TTS) voice response for assistant systems
US11322133B2 (en) * 2020-07-21 2022-05-03 Adobe Inc. Expressive text-to-speech utilizing contextual word-level style tokens
KR102392904B1 (ko) * 2020-09-25 2022-05-02 주식회사 딥브레인에이아이 텍스트 기반의 음성 합성 방법 및 장치
CN112017644B (zh) * 2020-10-21 2021-02-12 南京硅基智能科技有限公司 一种声音变换系统、方法及应用
CN113096641B (zh) * 2021-03-29 2023-06-13 北京大米科技有限公司 信息处理方法及装置
CN113327575B (zh) * 2021-05-31 2024-03-01 广州虎牙科技有限公司 一种语音合成方法、装置、计算机设备和存储介质
CN113096638B (zh) * 2021-06-09 2021-09-07 北京世纪好未来教育科技有限公司 语音合成模型训练方法、语音合成方法及装置
GB2607903A (en) * 2021-06-14 2022-12-21 Deep Zen Ltd Text-to-speech system
CN113838448B (zh) * 2021-06-16 2024-03-15 腾讯科技(深圳)有限公司 一种语音合成方法、装置、设备及计算机可读存储介质
CN113628610B (zh) * 2021-08-12 2024-02-13 科大讯飞股份有限公司 一种语音合成方法和装置、电子设备
WO2023112095A1 (ja) * 2021-12-13 2023-06-22 日本電信電話株式会社 音声合成装置、音声合成方法、及びプログラム
CN115578995B (zh) * 2022-12-07 2023-03-24 北京邮电大学 面向语音对话场景的语音合成方法、系统及存储介质
CN117153144B (zh) * 2023-10-31 2024-02-06 杭州宇谷科技股份有限公司 基于端计算的电池信息语音播报方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150364128A1 (en) * 2014-06-13 2015-12-17 Microsoft Corporation Hyper-structure recurrent neural networks for text-to-speech
US10475438B1 (en) * 2017-03-02 2019-11-12 Amazon Technologies, Inc. Contextual text-to-speech processing

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9195656B2 (en) * 2013-12-30 2015-11-24 Google Inc. Multilingual prosody generation
US9697820B2 (en) * 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11069335B2 (en) * 2016-10-04 2021-07-20 Cerence Operating Company Speech synthesis using one or more recurrent neural networks
US10796686B2 (en) * 2017-10-19 2020-10-06 Baidu Usa Llc Systems and methods for neural text-to-speech using convolutional sequence learning
EP3739572A4 (en) * 2018-01-11 2021-09-08 Neosapience, Inc. METHOD AND DEVICE FOR TEXT-TO-LANGUAGE SYNTHESIS USING MACHINE LEARNING AND COMPUTER-READABLE STORAGE MEDIUM
US10799795B1 (en) * 2019-03-26 2020-10-13 Electronic Arts Inc. Real-time audio generation for electronic games based on personalized music preferences

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150364128A1 (en) * 2014-06-13 2015-12-17 Microsoft Corporation Hyper-structure recurrent neural networks for text-to-speech
US10475438B1 (en) * 2017-03-02 2019-11-12 Amazon Technologies, Inc. Contextual text-to-speech processing

Also Published As

Publication number Publication date
KR20240001262A (ko) 2024-01-03
US20230274728A1 (en) 2023-08-31
EP4007997A1 (en) 2022-06-08
JP2023036888A (ja) 2023-03-14
JP7204989B2 (ja) 2023-01-16
KR102616214B1 (ko) 2023-12-21
JP2022536558A (ja) 2022-08-17
EP4007997B1 (en) 2024-03-27
US20210035551A1 (en) 2021-02-04
EP4345815A2 (en) 2024-04-03
US11676573B2 (en) 2023-06-13
WO2021025844A1 (en) 2021-02-11
CN114175143A (zh) 2022-03-11

Similar Documents

Publication Publication Date Title
KR102616214B1 (ko) E2E(End-to-end) 음성 합성 시스템에서 표현력 제어
KR102579843B1 (ko) 표현 E2E(end-to-end) 음성 합성에서의 변동 임베딩 용량
US11929059B2 (en) Method, device, and computer readable storage medium for text-to-speech synthesis using machine learning on basis of sequential prosody feature
CN110782870B (zh) 语音合成方法、装置、电子设备及存储介质
EP3614376B1 (en) Speech synthesis method, server and storage medium
KR20230003056A (ko) 비음성 텍스트 및 스피치 합성을 사용한 스피치 인식
KR20230034423A (ko) 2-레벨 스피치 운율 전송
KR20230156121A (ko) 비지도 병렬 타코트론 비-자기회귀 및 제어 가능한 TTS(text-to-speech)
KR20200141497A (ko) 클록워크 계층적 변이 인코더
Kaur et al. Conventional and contemporary approaches used in text to speech synthesis: A review
US11961515B2 (en) Contrastive Siamese network for semi-supervised speech recognition
US20220246132A1 (en) Generating Diverse and Natural Text-To-Speech Samples
Shiga et al. Text-to-speech synthesis
Fahmy et al. A transfer learning end-to-end arabic text-to-speech (tts) deep architecture
Barakat et al. Deep learning-based expressive speech synthesis: a systematic review of approaches, challenges, and resources
Matoušek et al. VITS: quality vs. speed analysis
JP7469015B2 (ja) 学習装置、音声合成装置及びプログラム
Eirini End-to-End Neural based Greek Text-to-Speech Synthesis
Pekar A novel method for speaker adaptation in parametric speech synthesis
Oralbekova et al. Current advances and algorithmic solutions in speech generation
Wadhwa et al. Emotionally Intelligent Image to Audible Prompt Generation for Visually Challenged People Using AI
EP4352724A1 (en) Two-level text-to-speech systems using synthetic training data
CN114267330A (zh) 语音合成方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right