KR102514990B1 - 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성 - Google Patents

뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성 Download PDF

Info

Publication number
KR102514990B1
KR102514990B1 KR1020207035508A KR20207035508A KR102514990B1 KR 102514990 B1 KR102514990 B1 KR 102514990B1 KR 1020207035508 A KR1020207035508 A KR 1020207035508A KR 20207035508 A KR20207035508 A KR 20207035508A KR 102514990 B1 KR102514990 B1 KR 102514990B1
Authority
KR
South Korea
Prior art keywords
speaker
neural network
speech
voice
audio
Prior art date
Application number
KR1020207035508A
Other languages
English (en)
Other versions
KR20210008510A (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 KR1020237009867A priority Critical patent/KR20230043250A/ko
Publication of KR20210008510A publication Critical patent/KR20210008510A/ko
Application granted granted Critical
Publication of KR102514990B1 publication Critical patent/KR102514990B1/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
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • 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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • 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/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L2013/021Overlap-add techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Telephonic Communication Services (AREA)
  • Machine Translation (AREA)

Abstract

스피치 합성을 위한, 컴퓨터 저장 매체 상에서 인코딩되는 컴퓨터 프로그램들을 포함하는 방법들, 시스템들 및 장치들. 방법들, 시스템들 및 장치들은, 대상 화자의 스피치의 오디오 표현을 획득하고, 대상 화자의 음성으로 스피치가 합성될 입력 텍스트를 획득하고, 화자들을 서로 구별하도록 훈련된 화자 인코더 엔진에 오디오 표현을 제공함으로써 화자 벡터를 생성하고, 오디오 표현들을 생성하기 위해 기준 화자들의 음성들을 사용하여 훈련된 스펙트로그램 생성 엔진에 입력 텍스트 및 화자 벡터를 제공함으로써 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 생성하고, 그리고 출력을 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 제공하는 동작들을 포함한다.

Description

뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성
[0001] 본 명세서는 일반적으로 텍스트로부터의 스피치(speech)의 합성에 관한 것이다.
[0002] 뉴럴 네트워크(neural network)들은 하나 이상의 입력들로부터 하나 이상의 출력들을 예측하기 위해 다수의 계층들의 동작들을 사용하는 기계 학습 모델(machine learning model)들이다. 뉴럴 네트워크들은 통상적으로, 입력 계층과 출력 계층 사이에 위치된 하나 이상의 은닉 계층(hidden layer)들을 포함한다. 각각의 은닉 계층의 출력은 다음 계층, 예컨대, 다음 은닉 계층 또는 출력 계층으로의 입력으로서 사용된다.
[0003] 뉴럴 네트워크의 각각의 계층은 계층으로의 입력에 대해 수행될 하나 이상의 변환 동작들을 특정한다. 일부 뉴럴 네트워크 계층들은 뉴런들로 지칭되는 동작들을 갖는다. 각각의 뉴런은 하나 이상의 입력들을 수신하고, 다른 뉴럴 네트워크 계층에 의해 수신된 출력을 생성한다. 흔히, 각각의 뉴런은 다른 뉴런들로부터 입력들을 수신하고, 각각의 뉴런은 하나 이상의 다른 뉴런들에 출력을 제공한다.
[0004] 각각의 계층은 계층에 대한 파라미터들의 세트의 현재 값들을 사용하여 하나 이상의 출력들을 생성한다. 뉴럴 네트워크를 훈련시키는 것(training)은 입력에 대한 포워드 패스(forward pass)를 계속적으로 수행하는 것, 그래디언트 값(gradient value)들을 컴퓨팅하는 것, 및 각각의 계층에 대한 파라미터들의 세트의 현재 값들을 업데이트하는 것을 수반한다. 만약 뉴럴 네트워크가 훈련되면, 파라미터들의 최종 세트가 생산 시스템에서 예측들을 수행하는 데 사용될 수 있다.
[0005] 스피치 합성을 위한 뉴럴 네트워크-기반 시스템은 훈련 동안 보이지 않는 화자들을 포함한 많은 상이한 화자들의 음성으로 스피치 오디오를 생성할 수 있다. 시스템은, 시스템의 어떠한 파라미터들도 업데이트하지 않고 대상 화자의 음성으로 새로운 스피치를 합성하기 위해 대상 화자로부터의 수 초의 전사되지 않은(untranscribed) 기준 오디오를 사용할 수 있다. 시스템은 화자 임베딩에 대한 출력을 컨디셔닝(condition)하기 위해 음소들의 시퀀스 또는 자소들의 시퀀스로부터 크기 스펙트로그램을 생성하는 시퀀스-투-시퀀스 모델을 사용할 수 있다. 임베딩은 임의의 길이의 스피치 스펙트로그램을 고정 차원 임베딩 벡터로 인코딩하는 독립적으로 훈련된 화자 인코더 네트워크(본원에서 화자 검증 뉴럴 네트워크 또는 화자 인코더로 또한 지칭됨)를 사용하여 컴퓨팅될 수 있다. 임베딩 벡터는 데이터를 인코딩하거나 또는 그렇지 않으면 표현하는 값들의 세트이다. 예컨대, 임베딩 벡터는 뉴럴 네트워크의 은닉 계층 또는 출력 계층에 의해 생성될 수 있으며, 이 경우, 임베딩 벡터는 뉴럴 네트워크에 입력되는 하나 이상의 데이터 값들을 인코딩한다. 화자 인코더는 수천 명의 상이한 화자들로부터의 잡음이 있는 스피치의 별개의 데이터세트를 사용하여 화자 검증 태스크에 대해 훈련될 수 있다. 시스템은 각각의 화자로부터의 단지 수 초의 오디오만을 사용하여, 훈련 동안 결코 보이지 않았던 화자들로부터의 자연스러운 스피치를 잘 일반화하고 합성하기 위해 화자 인코더에 의해 학습된 화자 가변성에 대한 지식을 활용할 수 있다.
[0006] 더 상세하게는, 시스템은 화자 검증 태스크들을 위해 구성된 독립적으로 훈련된 화자 인코더를 포함할 수 있다. 화자 인코더는 구별적으로 훈련될 수 있다. 화자 인코더는 일반화된 엔드-투-엔드 손실을 사용하여, 수천 명의 상이한 화자들로부터의 전사되지 않은 오디오의 큰 데이터세트에 대해 훈련될 수 있다. 시스템은, 네트워크들을 디커플링하여 네트워크들이 독립적 데이터세트들에 대해 훈련되는 것이 가능하게 하며, 이는 각각의 목적을 위해 고품질 훈련 데이터를 획득하는 데 일부 어려움들을 완화할 수 있다. 즉, 독립적으로, 화자 특성들의 공간을 캡처하는 화자-구별 임베딩 네트워크(즉, 화자 검증 뉴럴 네트워크)를 훈련시키고, 화자 검증 뉴럴 네트워크에 의해 학습된 표현에 대해 컨디셔닝된 더 작은 데이터세트에 대해 고품질 텍스트 투 스피치 모델(high quality text to speech model)(본원에서 스펙트로그램 생성 뉴럴 네트워크로 지칭됨)을 훈련시킴으로써, 화자 모델링 및 스피치 합성이 디커플링될 수 있다. 예컨대, 스피치 합성은 텍스트-독립적 화자 검증의 데이터 요건과 상이하고 그보다 더 많은 과중한 데이터 요건들을 가질 수 있으며, 연관된 전사(transcript)들과 함께 수십 시간의 깨끗한 스피치를 요구할 수 있다. 대조적으로, 화자 검증은, 잔향 및 배경 잡음을 포함하는 전사되지 않고 잡음이 있는 스피치의 양호한 사용을 수행할 수 있지만, 충분히 많은 수의 화자들을 요구할 수 있다. 따라서, 두 목적들 모두에 적합한 고품질 훈련 데이터의 단일 세트를 획득하는 것은 개개의 목적들을 위해 고품질인 2개의 상이한 훈련 데이터 세트들을 획득하는 것보다 훨씬 더 어려울 수 있다.
[0007] 본 명세서의 청구 대상은 다음의 이점들 중 하나 이상의 이점들을 실현하도록 구현될 수 있다. 예컨대, 시스템은 개선된 적응 품질을 초래하고, 그리고 임베딩 프라이어(embedding prior)(유닛 하이퍼-스피어 상의 포인트들)로부터 랜덤하게 샘플링함으로써, 훈련에 사용되는 화자들과 상이한 완전히 새로운 화자들의 합성을 가능하게 할 수 있다. 다른 예에서, 시스템은 단지 짧은 제한된 양의 샘플 스피치, 예컨대, 5초의 스피치만이 이용가능한 대상 화자의 스피치를 합성할 수 있다. 다른 이점은, 시스템이 대상 화자의 스피치 샘플의 전사(transcription)가 이용가능하지 않은 대상 화자의 음성으로 스피치를 합성할 수 있다는 점일 수 있다. 예컨대, 시스템은 어떠한 스피치 샘플들도 이전에 이용가능하지 않았던 "John Doe"로부터의 5초의 스피치 샘플을 수신하고, 그 스피치 샘플의 전사 없이도 임의의 임의적인 텍스트에 대해 "John Doe"의 음성으로 스피치를 생성할 수 있다.
[0008] 또 다른 이점은, 시스템이 특정 화자에 대해 샘플 스피치가 이용가능한 언어와 상이한 언어로 스피치를 생성할 수 있다는 점일 수 있다. 예컨대, 시스템은 스페인어로 된 "John Doe"로부터의 5초의 스피치 샘플을 수신하고, "John Doe"로부터의 임의의 다른 스피치 샘플들 없이도 영어로 "John Doe"의 음성으로 스피치를 생성할 수 있다.
[0009] 종래의 시스템들과는 달리, 화자 모델링의 훈련과 스피치 합성의 훈련을 디커플링함으로써, 설명된 시스템은 많은 수의 화자들로부터의 스피치를 갖는 고품질 스피치 데이터의 단일 세트가 이용가능하지 않은 경우에도 상이한 화자들에 대해 스피치를 효과적으로 컨디셔닝할 수 있다.
[0010] 종래 시스템들은 새로운 대상 화자의 음성으로 스피치 오디오를 생성할 수 있기 이전에 수 시간의 훈련 및/또는 미세-튜닝을 요구할 수 있는 반면, 설명된 시스템은 추가적 훈련 또는 미세-튜닝을 요구하지 않고 새로운 대상 화자의 음성으로 스피치 오디오를 생성할 수 있다. 따라서, 설명된 시스템은, 종래 시스템들과 비교될 때 생성된 스피치 오디오가 원래의 화자의 음성으로 이루어진 스피치-투-스피치 번역(speech-to-speech translation)과 같이, 최소한의 레이턴시로 새로운 화자의 음성으로 생성될 스피치를 요구하는 태스크들을 더 신속하게 수행할 수 있다.
[0011] 본 명세서의 청구 대상의 하나 이상의 실시예들의 세부사항들이 아래의 설명 및 첨부한 도면들에서 기술된다. 청구 대상의 다른 특징들, 양상들 및 이점들은 상세한 설명, 도면들 및 청구항들로부터 명백해질 것이다.
[0012] 일부 양상들에서, 본 명세서에서 설명된 청구 대상은, 대상 화자의 스피치의 오디오 표현을 획득하고, 대상 화자의 음성으로 스피치가 합성될 입력 텍스트를 획득하고, 화자들을 서로 구별하도록 훈련된 화자 인코더 엔진에 오디오 표현을 제공함으로써 화자 벡터를 생성하고, 오디오 표현들을 생성하기 위해 기준 화자들의 음성들을 사용하여 훈련된 스펙트로그램 생성 엔진에 입력 텍스트 및 화자 벡터를 제공함으로써 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 생성하고, 그리고 출력을 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 제공하는 동작들을 포함할 수 있는 방법들로 구현될 수 있다.
[0013] 화자 검증 뉴럴 네트워크는, 서로 멀리 떨어져 있는 상이한 화자들로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들을 생성하면서 임베딩 공간에서 서로 가까운 동일한 화자로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들을 생성하도록 훈련될 수 있다. 대안적으로 또는 추가적으로, 화자 검증 뉴럴 네트워크는 스펙트로그램 생성 뉴럴 네트워크와는 별개로 훈련될 수 있다. 화자 검증 뉴럴 네트워크는 LSTM(long short-term memory) 뉴럴 네트워크이다.
[0014] 화자 임베딩 벡터를 생성하는 것은, 복수의 개별 벡터 임베딩들을 생성하기 위해 화자 검증 뉴럴 네트워크에 오디오 표현의 복수의 오버랩핑 슬라이딩 윈도우들을 제공하는 것; 및 개별 벡터 임베딩들의 평균을 컴퓨팅함으로써 화자 임베딩 벡터를 생성하는 것을 포함할 수 있다.
[0015] 출력을 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 제공하는 것은, 대상 화자의 음성으로 발성된 입력 텍스트의 시간 도메인 표현을 생성하기 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 보코더에 제공하는 것; 및 사용자에게 재생을 위한 시간 도메인 표현을 제공하는 것을 포함할 수 있다. 보코더는 보코더 뉴럴 네트워크일 수 있다.
[0016] 스펙트로그램 생성 뉴럴 네트워크는 음소 또는 자소 입력들의 시퀀스로부터 멜 스펙트로그램(mel spectrogram)들을 예측하도록 훈련된 시퀀스-투-시퀀스 어텐션 뉴럴 네트워크(sequence-to-sequence attention neural network)일 수 있다. 스펙트로그램 생성 뉴럴 네트워크는 인코더 뉴럴 네트워크, 어텐션 계층 및 디코더 뉴럴 네트워크를 선택적으로 포함할 수 있다. 스펙트로그램 생성 뉴럴 네트워크는 화자 임베딩 벡터를 어텐션 계층으로의 입력으로 제공되는 인코더 뉴럴 네트워크의 출력들과 연접시킬 수 있다.
[0017] 화자 임베딩 벡터는 화자 검증 뉴럴 네트워크 또는 스펙트로그램 생성 뉴럴 네트워크의 훈련 동안 사용되는 임의의 화자 임베딩 벡터들과 상이할 수 있다. 스펙트로그램 생성 뉴럴 네트워크의 훈련 동안, 화자 검증 뉴럴 네트워크의 파라미터들이 고정될 수 있다.
[0018] 추가 양상은, 화자들을 서로 구별하기 위해 화자 검증 뉴럴 네트워크를 훈련시키는 단계; 및 입력 텍스트의 오디오 표현을 생성하기 위해, 복수의 기준 화자들의 음성들을 사용하여 스펙트로그램 생성 뉴럴 네트워크를 훈련시키는 단계를 포함하는, 스피치 합성에 사용하기 위해 뉴럴 네트워크들을 훈련시키는 컴퓨터-구현 방법을 제공한다. 이 양상은 위의 양상의 특징들 중 임의의 특징을 포함할 수 있다.
[0019] 다른 버전들은 컴퓨터 저장 디바이스들 상에서 인코딩된 방법들의 동작들을 수행하도록 구성된 대응하는 시스템들, 장치 및 컴퓨터 프로그램들을 포함한다.
[0020] 하나 이상의 구현들의 세부사항들이 아래의 설명 및 첨부한 도면들에서 기술된다. 다른 잠재적 특징들 및 이점들이 상세한 설명, 도면들 및 청구항들로부터 명백해질 것이다.
[0021] 도 1은 대상 화자의 음성으로 스피치를 합성할 수 있는 예시적 시스템의 블록 다이어그램이다.
[0022] 도 2는 스피치를 합성하기 위한 훈련 동안의 예시적 시스템의 블록 다이어그램이다.
[0023] 도 3은 스피치를 합성하기 위한 간섭 동안의 예시적 시스템의 블록 다이어그램이다.
[0024] 도 4는 대상 화자의 음성으로 발성된 텍스트의 오디오 표현을 생성하기 위한 예시적 프로세스의 흐름도이다.
[0025] 도 5는 컴퓨팅 디바이스들의 예들의 다이어그램이다.
[0026] 다양한 도면들에서의 유사한 참조 번호들 및 표기들은 유사한 엘리먼트들을 표시한다.
[0027] 도 1은 대상 화자의 음성으로 스피치를 합성할 수 있는 예시적 스피치 합성 시스템(100)을 도시하는 블록 다이어그램이다. 스피치 합성 시스템(100)은 하나 이상의 위치들의 하나 이상의 컴퓨터들 상에서 컴퓨터 프로그램으로서 구현될 수 있다. 스피치 합성 시스템(100)은 대상 화자의 오디오 표현과 함께 입력 텍스트를 수신하고, 일련의 뉴럴 네트워크들을 통해 입력을 프로세싱하여 대상 화자의 음성으로 입력 텍스트에 대응하는 스피치를 생성한다. 예컨대, 스피치 합성 시스템(100)이, "Hi my name is John Doe and I'm providing this sample of speech for testing purposes"라고 말하는 John Doe의 5초의 오디오를 갖는, 책 페이지의 텍스트를 입력으로서 수신하는 경우, 스피치 합성 시스템(100)은 이러한 입력들을 프로세싱하여 John Doe의 음성으로 페이지의 구두 내레이션(verbal narration)을 생성할 수 있다. 다른 예에서, 스피치 합성 시스템(100)이 다른 책으로부터 내레이션하는 Jane Doe의 6초의 오디오를 갖는, 책 페이지의 텍스트를 입력으로서 수신하는 경우, 스피치 합성 시스템(100)은 이러한 입력들을 프로세싱하여 Jane Doe의 음성으로 페이지의 구두 내레이션을 생성할 수 있다.
[0028] 도 1에 도시된 바와 같이, 시스템(100)은 화자 인코더 엔진(110) 및 스펙트로그램 생성 엔진(120)을 포함한다. 화자 인코더 엔진(110)은 발성하는 대상 화자의 오디오 표현을 수신하고, 대상 화자에 대한 화자 벡터(화자 임베딩 벡터 또는 임베딩 벡터라 또한 칭해짐)를 출력한다. 예컨대, 화자 인코더 엔진(110)은 "Hello my name is John Doe"라고 말하는 John Doe의 오디오 레코딩을 수신하고, 이에 대한 응답으로, John Doe를 식별하는 값들을 갖는 벡터를 출력한다. 화자 벡터는 또한, 화자의 특징적 발성 속도를 캡처할 수 있다.
[0029] 화자 벡터는 고정 차원 임베딩 벡터일 수 있다. 예컨대, 화자 인코더 엔진(110)에 의해 출력된 화자 벡터들은 256개의 값들의 시퀀스를 가질 수 있다. 화자 인코더 엔진(110)은 임의의 길이의 스피치 스펙트로그램을 고정 차원 임베딩 벡터로 인코딩하도록 훈련된 뉴럴 네트워크일 수 있다. 예컨대, 화자 인코더 엔진(110)은 사용자로부터의 스피치의 표현인 멜 스펙트로그램 또는 로그-멜 스펙트로그램을 고정 수의 엘리먼트들(예컨대, 256개의 엘리먼트들)을 갖는 벡터로 인코딩하도록 훈련된 LSTM(long short-term memory) 뉴럴 네트워크를 포함할 수 있다. 일관성 및 특정성을 위해 멜 스펙트로그램들이 본 개시내용 전반에 걸쳐 언급되지만, 다른 타입들의 스펙트로그램 또는 임의의 다른 적합한 오디오 표현이 사용될 수 있음이 인식될 것이다.
[0030] 화자 인코더 엔진(110)은, 엔진(110)이 오디오를 상이한 화자들에 대응하는 것으로 분류하는 것을 학습하도록, 스피치의 오디오 및 그 오디오에 대한 화자를 식별하는 라벨들의 쌍들을 포함하는 라벨링된 훈련 데이터로 훈련될 수 있다. 화자 벡터는 LSTM 뉴럴 네트워크의 은닉 계층의 출력일 수 있으며, 여기서 더 유사한 음성들을 갖는 화자들로부터의 오디오는 서로 더 유사한 화자 벡터들을 초래하고, 더 상이한 음성들을 갖는 화자들로부터의 오디오는 서로 더 상이한 화자 벡터들을 초래한다.
[0031] 스펙트로그램 생성 엔진(120)은 화자 인코더 엔진(110)에 의해 결정된 화자 벡터를 합성 및 수신할 입력 텍스트를 수신하고, 이에 대한 응답으로, 대상 화자의 음성으로 그 입력 텍스트의 스피치의 오디오 표현을 생성할 수 있다. 예컨대, 스펙트로그램 생성 엔진(120)은, "Goodbye all"의 입력 텍스트, 및 "Hello my name is John Doe"라고 말하는 John Doe의 멜 스펙트로그램 표현으로부터 화자 인코더 엔진(110)에 의해 결정된 화자 벡터를 수신하고, 이에 대한 응답으로, John Doe의 음성으로 "Goodbye all"의 스피치의 멜 스펙트로그램 표현을 생성할 수 있다.
[0032] 스펙트로그램 생성 엔진(120)은 입력 텍스트 및 대상 화자에 대한 화자 벡터로부터의 대상 화자의 음성으로 멜 스펙트로그램들을 예측하도록 훈련된 시퀀스-투-시퀀스 어텐션 네트워크(sequence-to-sequence with attention network)(시퀀스-투-시퀀스 합성기, 시퀀스-투-시퀀스 합성 네트워크 또는 스펙트로그램 생성 뉴럴 네트워크라 또한 칭해짐)인 뉴럴 네트워크를 포함할 수 있다. 뉴럴 네트워크는 텍스트, 특정 화자에 의한 텍스트의 스피치의 오디오 표현 및 특정 화자에 대한 화자 벡터를 각각 포함하는 트리플렛(triplet)들을 포함하는 훈련 데이터로 훈련될 수 있다. 훈련 데이터에 사용되는 화자 벡터는 스펙트로그램 생성 엔진(120)으로부터의 것일 수 있으며, 그 트리플렛에 대한 텍스트의 스피치의 오디오 표현으로부터의 것일 필요는 없을 수 있다. 예컨대, 훈련 데이터에 포함된 트리플렛은, "I like computers"의 입력 텍스트, "I like computers"라고 말하는 John Smith의 오디오로부터의 멜 스펙트로그램, 및 "Hi my name is John Smith"라고 말하는 John Smith의 오디오로부터의 멜 스펙트로그램으로부터 화자 인코더 엔진(110)에 의해 출력된 화자 벡터를 포함할 수 있다.
[0033] 일부 구현들에서, 스펙트로그램 생성 엔진(120)에 대한 훈련 데이터는 화자 인코더 엔진(110)이 훈련된 이후에 화자 인코더 엔진(110)을 사용하여 생성될 수 있다. 예컨대, 쌍을 이루는(paired) 훈련 데이터의 세트는 원래, 단지 입력 텍스트 및 그 텍스트의 스피치의 멜 스펙트로그램들의 쌍들을 포함할 수 있다. 쌍을 이루는 훈련 데이터의 각각의 쌍의 멜 스펙트로그램은 각각의 멜 스펙트로그램에 대한 개개의 화자 벡터를 출력할 수 있는, 훈련된 화자 인코더 엔진(110)에 제공될 수 있다. 그런 다음, 시스템(100)은 텍스트, 특정 화자에 의한 텍스트의 스피치의 오디오 표현, 및 특정 화자에 대한 화자 벡터의 트리플렛들을 갖는 훈련 데이터를 생성하기 위해, 쌍을 이루는 훈련 데이터 내의 개개의 쌍에 각각의 화자 벡터를 추가할 수 있다.
[0034] 일부 구현들에서, 스펙트로그램 생성 엔진(120)에 의해 생성된 오디오 표현은 오디오를 생성하기 위해 보코더에 제공될 수 있다. 예컨대, "Goodbye all"이라고 말하는 John Doe의 멜 스펙트로그램은 주파수 도메인에 있을 수 있으며, 주파수 도메인 표현들을 수신하도록 그리고 시간 도메인 표현들을 출력하도록 훈련된 다른 뉴럴 네트워크에 제공될 수 있으며, 다른 뉴럴 네트워크는 John Doe의 음성으로 "Goodbye all"의 시간 도메인 파형을 출력할 수 있다. 그런 다음, 시간 도메인 파형은 John Doe의 음성으로 발성된 "Goodbye all"의 사운드를 생성하는 화자(예컨대, 확성기)에 제공될 수 있다.
[0035] 일부 구현들에서, 시스템(100) 또는 다른 시스템은 대상 화자의 음성으로 스피치를 합성하기 위한 프로세스를 수행하는 데 사용될 수 있다. 프로세스는, 대상 화자의 스피치의 오디오 표현을 획득하고, 대상 화자의 음성으로 스피치가 합성될 입력 텍스트를 획득하고, 화자들을 서로 구별하도록 훈련된 화자 인코더 엔진에 오디오 표현을 제공함으로써 화자 벡터를 생성하고, 오디오 표현들을 생성하기 위해 기준 화자들의 음성들을 사용하여 훈련된 스펙트로그램 생성 엔진에 입력 텍스트 및 화자 벡터를 제공함으로써 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 생성하고, 그리고 출력을 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 제공하는 동작들을 포함할 수 있다.
[0036] 예컨대, 프로세스는, "I like computers"라고 말하는 Jane Doe의 오디오로부터 멜 스펙트로그램을 획득하고 "I like computers"라고 말하는 John Doe의 멜 스펙트로그램에 대해 생성될 화자 벡터와 상이한 Jane Doe에 대한 화자 벡터를 생성하는 화자 인코더 엔진(110)을 포함할 수 있다. 스펙트로그램 생성 엔진(120)은 Jane Doe에 대한 화자 벡터를 수신하고, "Hola como estas"(영어로 "Hello, how are you"를 의미하는 스페인어일 수 있음)의 입력 텍스트를 획득할 수 있으며, 이에 대한 응답으로, 이후 Jane Doe의 음성으로 "Hola como estas"의 스피치로 보코더에 의해 변환될 수 있는 멜 스펙트로그램을 생성할 수 있다.
[0037] 더 상세한 예에서, 시스템(100)은 3개의 독립적으로 훈련된 컴포넌트들: 임의의 길이 스피치 신호로부터 고정 차원 벡터를 출력하는 화자 검증을 위한 LSTM 화자 인코더, 화자 벡터에 대해 컨디셔닝되는 자소 또는 음소 입력들의 시퀀스로부터 멜 스펙트로그램들을 예측하는 시퀀스-투-시퀀스 어텐션 네트워크, 및 멜 스펙트로그램을 시간 도메인 파형 샘플들의 시퀀스로 변환하는 자기회귀 뉴럴 보코더 네트워크를 포함할 수 있다. LSTM 화자 인코더는 화자 인코더 엔진(110)일 수 있고, 시퀀스-투-시퀀스 어텐션 네트워크는 스펙트로그램 생성 엔진(120)일 수 있다.
[0038] LSTM 화자 인코더는 원하는 대상 화자로부터의 기준 스피치 신호에 대해 합성 네트워크를 컨디셔닝하는 데 사용된다. 상이한 화자들의 특성들을 캡처하는 기준 스피치 신호를 사용하여 양호한 일반화가 달성될 수 있다. 양호한 일반화는 그 음성적 컨텐츠 및 배경 잡음과는 관계없이 단지 짧은 적응 신호만을 사용하여 이러한 특성들의 식별로 이어질 수 있다. 이러한 목적들은 텍스트-독립적 화자 검증 태스크에 대해 훈련된 화자-구별 모델을 사용하여 만족된다. LSTM 화자 인코더는 화자-구별 오디오 임베딩 네트워크일 수 있으며, 이는 화자들의 폐쇄된 세트에 제한되지 않는다.
[0039] LSTM 화자 인코더는 임의의 길이의 스피치 발화로부터 컴퓨팅된 멜 스펙트로그램 프레임들의 시퀀스를 d-벡터 또는 화자 벡터로 알려진 고정 차원 임베딩 벡터에 맵핑한다. LSTM 화자 인코더는, 발화 x가 주어지면 LSTM 네트워크가 고정 차원 벡터 임베딩 ex = f(x)를 학습하는 데 사용되도록 구성될 수 있다. 동일한 화자로부터의 발화들의 d-벡터들이 임베딩 공간에서 서로 가깝도록, 예컨대, 발화들의 d-벡터들이 높은 코사인 유사성을 갖지만 상이한 화자들로부터의 발화들의 d-벡터들이 서로 멀리 떨어지도록, 일반화된 엔드-투-엔드 손실이 LSTM 네트워크를 훈련시키는 데 사용될 수 있다. 따라서, 임의적으로 긴 발화가 주어지면, 화자 인코더는, 전체 발화의 최종 임베딩으로서 사용되는 L2-정규화된 윈도우 임베딩들의 평균, 및 길이, 예컨대, 800 밀리초의 오버랩핑 슬라이딩 윈도우들 상에서 실행될 수 있다.
[0040] 시퀀스-투-시퀀스 어텐션 뉴럴 네트워크는, 훈련 데이터세트에서 각각의 오디오 예 x에 대해, 출력이 어텐션 뉴럴 네트워크에 제공되기 이전에 각각의 시간 단계에서 실제 화자와 연관된 d-차원 임베딩 벡터를 인코더 뉴럴 네트워크의 출력과 연접시킴으로써 다수의 특정 화자들을 모델링할 수 있다. 어텐션 뉴럴 네트워크의 입력 계층에 제공된 화자 임베딩들은 상이한 화자들에 걸쳐 수렴하기에 충분할 수 있다. 합성기는 중간 언어 특징(intermediate linguistic feature)들에 의존하지 않는 엔드-투-엔드 합성 네트워크일 수 있다.
[0041] 일부 구현들에서, 시퀀스-투-시퀀스 어텐션 네트워크는 텍스트 전사 및 타겟 오디오의 쌍들에 대해 훈련될 수 있다. 입력에서, 우리는 그 텍스트를 음소들의 시퀀스에 맵핑하며, 이는 사람 또는 지명들과 같은 희귀 단어들의 더 빠른 수렴, 및 개선된 발음으로 이어진다. 네트워크는, 대상 오디오로부터 화자 임베딩을 추출하기 위해 사전 훈련된 화자 인코더(파라미터들은 고정적임)를 사용하여 전이 학습 구성에서 훈련되는데, 즉, 화자 기준 신호는 훈련 동안 대상 스피치와 동일하다. 훈련 동안 어떠한 명시적 화자 식별자 라벨들도 사용되지 않는다.
[0042] 추가적으로 또는 대안적으로, 네트워크의 디코더는 추가적 L1 손실과 함께 스펙트로그램 특징 재구성에 대한 L2 손실 둘 다를 포함할 수 있다. 결합된 손실은 잡음 훈련 데이터에 대해 더 견고할 수 있다. 추가적으로 또는 대안적으로, 합성된 오디오를 추가로 깨끗하게 만들기 위해 멜 스펙트로그램 예측 네트워크에 대한 대상들에 대해 예컨대, 10-백분위수의 스펙트럼 감산에 의한 잡음 감소가 수행될 수 있다.
[0043] 시스템(100)은 단일의 짧은 오디오 클립으로부터 이전에 결코 보이지 않았던 화자의 고유한 특성들을 캡처하고, 이러한 특성들과 새로운 스피치를 합성할 수 있다. 시스템(100)은 다음을 달성할 수 있다: (1) 합성된 스피치의 높은 수준의 자연성(naturalness); 및 (2) 대상 화자와의 높은 유사성 정도. 높은 수준의 자연성이 통상적으로 훈련 데이터로서 많은 양의 고품질 스피치-전사 쌍들을 요구하지만, 높은 유사성 정도를 달성하는 것은 통상적으로 각각의 화자에 대해 양호한 양의 훈련 데이터를 요구한다. 그러나, 각각의 개별 화자들에 대해 많은 양의 고품질 데이터를 기록하는 것은 매우 비용 소모적이거나 또는 심지어 실제로 실행불가능하다. 시스템(100)은 높은 자연성을 갖는 스피치 시스템으로의 텍스트의 훈련과, 화자 특성들을 잘 캡처하는 다른 화자-구별 임베딩 네트워크의 훈련을 분리할 수 있다. 일부 구현들에서, 화자-구별 모델은 텍스트-독립적 화자 검증 태스크에 대해 훈련된다.
[0044] 뉴럴 보코더는 합성기에 의해 방출된 합성된 멜 스펙트로그램들을 시간 도메인 파형들로 반전한다. 일부 구현들에서, 보코더는 샘플별 자기회귀 WaveNet일 수 있다. 아키텍처는 다수의 확장된 컨볼루션 계층들을 포함할 수 있다. 합성기 네트워크에 의해 예측된 멜 스펙트로그램이 다양한 음성들의 고품질 합성에 필요한 관련 세부사항 모두를 캡처하여, 화자 벡터에 대해 명시적으로 컨디셔닝할 필요없이 많은 화자들로부터의 데이터에 대해 간단히 훈련시킴으로써 멀티화자 보코더가 구성될 수 있게 한다. WaveNet 아키텍처에 대해 더 세부적인 사항은 van den Oord et.al., WaveNet: A generative model for raw audio.CoRR abs/1609.03499, 2016에 설명되어 있다.
[0045] 도 2는 스피치를 합성하기 위한 훈련 동안의 예시적 시스템(200)의 블록 다이어그램이다. 예시적 시스템(200)은 화자 인코더(210), 합성기(220), 및 보코더(230)를 포함한다. 합성기(220)는 텍스트 인코더(222), 어텐션 뉴럴 네트워크(224), 및 디코더(226)를 포함한다. 훈련 동안, 파라미터들이 고정적일 수 있는 별개로 훈련된 화자 인코더(210)는 가변 길이 입력 오디오 신호로부터 화자의 고정 길이 d-벡터를 추출할 수 있다. 훈련 동안, 기준 신호 또는 대상 오디오는 텍스트와 병행된(paralleled) GT(ground-truth) 오디오일 수 있다. d-벡터는 텍스트 인코더(222)의 출력과 연접되고, 다수의 시간 단계들 각각에서 어텐션 뉴럴 네트워크(224)로 전달될 수 있다. 화자 인코더(210)를 제외하고, 시스템(200)의 다른 부분들은 디코더(226)로부터의 재구성 손실에 의해 구동될 수 있다. 합성기(220)는 입력 텍스트 시퀀스로부터 멜 스펙트로그램을 예측하며, 멜 스펙트로그램을 보코더(230)에 제공할 수 있다. 보코더(230)는 멜 스펙트로그램을 시간 도메인 파형으로 변환할 수 있다.
[0046] 도 3은 스피치를 합성하기 위한 간섭 동안의 예시적 시스템(300)의 블록 다이어그램이다. 시스템(300)은 화자 인코더(210), 합성기(220), 및 보코더(230)를 포함한다. 추론 동안, 2개의 접근법들 중 하나가 사용될 수 있다. 제1 접근법에서, 텍스트 인코더(222)가, 전사가 합성될 텍스트와 매칭할 필요가 없는 보이지 않는 그리고/또는 전사되지 않은 오디오로부터의 d-벡터에 대해 직접적으로 컨디셔닝될 수 있다. 이것은, 네트워크가, 단일 오디오 클립으로부터 보이지 않는 음성을 생성할 수 있게 할 수 있다. 합성에 사용할 화자 특성들은 오디오로부터 추론되기 때문에, 그것은 훈련 세트 밖에 있는 화자들로부터의 오디오에 대해 컨디셔닝될 수 있다. 제2 접근법에서, 랜덤 샘플 d-벡터가 획득될 수 있고, 텍스트 인코더(222)가 랜덤 샘플 d-벡터에 대해 컨디셔닝될 수 있다. 화자 인코더는 많은 양의 화자들로부터 훈련될 수 있으므로, 랜덤 d-벡터는 또한 랜덤 화자들을 생성할 수 있다.
[0047] 도 4는 대상 화자의 음성으로 발성된 텍스트의 오디오 표현을 생성하기 위한 예시적 프로세스(400)의 흐름도이다. 예시적 프로세스는 본 명세서에 따라 적절하게 프로그래밍된 시스템에 의해 수행되는 것으로 설명될 것이다.
[0048] 시스템은 대상 화자의 스피치의 오디오 표현을 획득한다(405). 예컨대, 오디오 표현은 오디오 레코딩 파일의 형태일 수 있으며, 오디오는 하나 이상의 마이크로폰들에 의해 캡처될 수 있다.
[0049] 시스템은 대상 화자의 음성으로 스피치가 합성될 입력 텍스트를 획득한다(410). 예컨대, 입력 텍스트는 텍스트 파일의 형태일 수 있다.
[0050] 시스템은 화자들을 서로 구별하도록 훈련된 화자 검증 뉴럴 네트워크에 오디오 표현을 제공함으로써 화자 임베딩 벡터를 생성한다(415). 예컨대, 화자 검증 뉴럴 네트워크는 LSTM 뉴럴 네트워크일 수 있고, 화자 임베딩 벡터는 LSTM 뉴럴 네트워크의 은닉 계층의 출력일 수 있다.
[0051] 일부 구현들에서, 시스템은 복수의 개별 벡터 임베딩들을 생성하기 위해 화자 검증 뉴럴 네트워크에 오디오 표현의 다수의 오버랩핑 슬라이딩 윈도우들을 제공한다. 예컨대, 오디오 표현은 대략 800 ms 길이들(예컨대, 750 ms 이하, 700 ms 이하, 650 ms 이하)의 윈도우들로 절단될 수 있는 반면, 오버랩은 대략 50 %(예컨대, 60 % 이상, 65 % 이상, 70 % 이상)일 수 있다. 그런 다음, 시스템은 개별 벡터 임베딩들의 평균을 컴퓨팅함으로써 화자 임베딩 벡터를 생성할 수 있다.
[0052] 일부 구현들에서, 화자 검증 뉴럴 네트워크는 임베딩 공간에서 서로 가까운 동일한 화자로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들, 예컨대, d-벡터들을 생성하도록 훈련된다. 화자 검증 뉴럴 네트워크는 또한, 서로 멀리 떨어져 있는 상이한 화자들로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들을 생성하도록 훈련될 수 있다.
[0053] 시스템은 오디오 표현들을 생성하기 위해 기준 화자들의 음성들을 사용하여 훈련된 스펙트로그램 생성 뉴럴 네트워크에 입력 텍스트 및 화자 임베딩 벡터를 제공함으로써 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 생성한다(420).
[0054] 일부 구현들에서, 스펙트로그램 생성 뉴럴 네트워크의 훈련 동안, 화자 임베딩 뉴럴 네트워크의 파라미터들이 고정된다.
[0055] 일부 구현들에서, 스펙트로그램 생성 뉴럴 네트워크는 화자 검증 뉴럴 네트워크와는 별개로 훈련될 수 있다.
[0056] 일부 구현들에서, 화자 임베딩 벡터는 화자 검증 뉴럴 네트워크 또는 스펙트로그램 생성 뉴럴 네트워크의 훈련 동안 사용되는 임의의 화자 임베딩 벡터들과 상이하다.
[0057] 일부 구현들에서, 스펙트로그램 생성 뉴럴 네트워크는 음소 또는 자소 입력들의 시퀀스로부터 멜 스펙트로그램들을 예측하도록 훈련된 시퀀스-투-시퀀스 어텐션 뉴럴 네트워크이다. 예컨대, 스펙트로그램 생성 뉴럴 네트워크 아키텍처는 Tacotron 2에 기초할 수 있다. Tacotron 2 뉴럴 네트워크 아키텍처에 대한 더 세부적인 사항은 Shen et al., Natural TIS synthesis by conditioning WaveNet on mel spectrogram predictions, published in Proc.IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2018에 설명되어 있다.
[0058] 일부 구현들에서, 스펙트로그램 생성 뉴럴 네트워크는 인코더 뉴럴 네트워크, 어텐션 계층 및 디코더 뉴럴 네트워크를 포함한다. 일부 구현들에서, 스펙트로그램 생성 뉴럴 네트워크는 어텐션 계층으로의 입력으로 제공되는 인코더 뉴럴 네트워크의 출력들과 화자 임베딩 벡터를 연접시킨다.
[0059] 일부 구현들에서, 인코더 뉴럴 네트워크 및 시퀀스-투-시퀀스 어텐션 뉴럴 네트워크는 화자들의 불균형의 분리된 세트들에 대해 훈련될 수 있다. 인코더 뉴럴 네트워크는 화자들을 구별하도록 훈련될 수 있으며, 이는 화자 특성들의 더 신뢰성 있는 전이로 이어질 수 있다.
[0060] 시스템은 출력을 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 제공한다(425). 예컨대, 시스템은 입력 텍스트의 시간 도메인 표현을 생성할 수 있다.
[0061] 일부 구현들에서, 시스템은 대상 화자의 음성으로 발성된 입력 텍스트의 시간 도메인 표현을 생성하기 위해 대상 화자의 음성으로 발성된 입력 텍스트의 오디오 표현을 보코더에 제공한다. 시스템은 사용자에게 재생을 위한 시간 도메인 표현을 제공할 수 있다.
[0062] 일부 구현들에서, 보코더는 보코더 뉴럴 네트워크이다. 예컨대, 보코더 뉴럴 네트워크는 합성 네트워크에 의해 생성된 합성된 멜 스펙트로그램들을 시간 도메인 파형들로 반전 합성될 수 있는 샘플별 자기회기 WaveNet일 수 있다. 보코더 뉴럴 네트워크는 다수의 확장된 컨볼루션 계층들을 포함할 수 있다.
[0063] 도 5는 여기서 설명된 기법들을 구현하는 데 사용될 수 있는 컴퓨팅 디바이스(500) 및 모바일 컴퓨팅 디바이스(450)의 예를 도시한다. 컴퓨팅 디바이스(500)는 다양한 형태들의 디지털 컴퓨터들, 이를테면, 랩탑들, 데스크탑들, 워크스테이션들, 개인용 디지털 어시스턴트들, 서버들, 블레이드 서버들, 메인 프레임들 및 다른 적절한 컴퓨터들을 표현하도록 의도된다. 모바일 컴퓨팅 디바이스(450)는 개인용 디지털 어시스턴트들, 셀룰러 전화들, 스마트폰들 및 다른 유사한 컴퓨팅 디바이스들과 같은 다양한 형태들의 모바일 디바이스들을 표현하도록 의도된다. 여기서 도시된 컴포넌트들, 이들의 연결들 및 관계들, 및 이들의 기능들은 단지 예들인 것으로 여겨지며, 제한하려는 의도는 아니다.
[0064] 컴퓨팅 디바이스(500)는, 프로세서(502), 메모리(504), 저장 디바이스(506), 메모리(504) 및 다수의 고속 확장 포트들(510)에 연결된 고속 인터페이스(508), 및 저속 확장 포트(514) 및 저장 디바이스(506)에 연결된 저속 인터페이스(512)를 포함한다. 프로세서(502), 메모리(504), 저장 디바이스(506), 고속 인터페이스(508), 고속 확장 포트들(510) 및 저속 인터페이스(512) 각각은 다양한 버스들을 사용하여 상호 연결되며, 공통 마더보드 상에 장착되거나 또는 적절하게 다른 방식들로 장착될 수 있다. 프로세서(502)는, 고속 인터페이스(508)에 커플링된 디스플레이(516)와 같은 외부 입력/출력 디바이스 상의 GUI(graphical user interface)에 대한 그래픽 정보를 디스플레이하기 위해, 메모리(504)에 또는 저장 디바이스(506) 상에 저장된 명령들을 포함하는, 컴퓨팅 디바이스(500) 내의 실행을 위한 명령들을 프로세싱할 수 있다. 다른 구현들에서, 다수의 프로세서들 및/또는 다수의 버스들은, 다수의 메모리들 및 메모리 타입들과 함께 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 디바이스들이 연결될 수 있으며, 각각의 디바이스는 (예컨대, 서버 뱅크, 블레이드 서버들의 그룹 또는 멀티-프로세서 시스템으로서) 필요한 동작들의 부분들을 제공한다.
[0065] 메모리(504)는 컴퓨팅 디바이스(500) 내에 정보를 저장한다. 일부 구현들에서, 메모리(504)는 휘발성 메모리 유닛 또는 유닛들이다. 일부 구현들에서, 메모리(504)는 비-휘발성 메모리 유닛 또는 유닛들이다. 메모리(504)는 또한, 자기 또는 광 디스크와 같은 다른 형태의 컴퓨터 판독가능한 매체일 수 있다.
[0066] 저장 디바이스(506)는 컴퓨팅 디바이스(500)에 대한 대용량 저장을 제공할 수 있다. 일부 구현들에서, 저장 디바이스(506)는, 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 또는 다른 구성들에서의 디바이스들을 포함하는 디바이스들의 어레이와 같은 컴퓨터 판독가능한 매체일 수 있거나 또는 이를 포함할 수 있다. 명령들이 정보 캐리어에 저장될 수 있다. 하나 이상의 프로세싱 디바이스들(예컨대, 프로세서(502))에 의해 실행될 때, 명령들은 위에서 설명된 방법들과 같은 하나 이상의 방법들을 수행한다. 명령들은 또한, 컴퓨터 또는 기계 판독가능한 매체들(예컨대, 메모리(504), 저장 디바이스(506) 또는 프로세서(502) 상의 메모리)과 같은 하나 이상의 저장 디바이스들에 의해 저장될 수 있다.
[0067] 고속 인터페이스(508)는 컴퓨팅 디바이스(500)에 대한 대역폭-집약적 동작들을 관리하지만, 저속 인터페이스(512)는 더 낮은 대역폭-집약적 동작들을 관리한다. 그러한 기능 배정은 단지 예일 뿐이다. 일부 구현들에서, 고속 인터페이스(508)는 메모리(504)에, 디스플레이(516)에 (예컨대, 그래픽 프로세서 또는 가속기를 통해), 그리고 고속 확장 포트들(510)에 커플링되고, 이들은 다양한 확장 카드들(도시되지 않음)을 수용할 수 있다. 구현에서, 저속 인터페이스(512)는 저장 디바이스(506) 및 저속 확장 포트(514)에 커플링된다. 다양한 통신 포트들(예컨대, USB, Bluetooth, Ethernet, 무선 Ethernet)을 포함할 수 있는 저속 확장 포트(514)는, 하나 이상의 입력/출력 디바이스들, 이를테면, 키보드, 포인팅 디바이스, 스캐너, 또는 네트워킹 디바이스, 이를테면, 스위치 또는 라우터에, 예컨대, 네트워크 어댑터를 통해, 커플링될 수 있다.
[0068] 컴퓨팅 디바이스(500)는, 도면에 도시된 바와 같이, 다수의 상이한 형태들로 구현될 수 있다. 예컨대, 그것은 표준 서버(520)로서 구현되거나 또는 그러한 서버들의 그룹에서 다수 회 구현될 수 있다. 또한, 그것은 랩탑 컴퓨터(522)와 같은 개인용 컴퓨터로 구현될 수 있다. 그것은 또한, 랙 서버 시스템(524)의 일부로서 구현될 수 있다. 대안적으로, 컴퓨팅 디바이스(500)로부터의 컴포넌트들은 모바일 컴퓨팅 디바이스(450)와 같은 모바일 디바이스(도시되지 않음) 내의 다른 컴포넌트들과 결합될 수 있다. 그러한 디바이스들 각각은 컴퓨팅 디바이스(500) 및 모바일 컴퓨팅 디바이스(450) 중 하나 이상을 포함할 수 있고, 전체 시스템은 서로 통신하는 다수의 컴퓨팅 디바이스들로 구성될 수 있다.
[0069] 모바일 컴퓨팅 디바이스(450)는 다른 컴포넌트들 중에서도, 프로세서(552), 메모리(564), 입력/출력 디바이스, 이를테면, 디스플레이(554), 통신 인터페이스(566) 및 트랜시버(568)를 포함한다. 모바일 컴퓨팅 디바이스(450)에는 또한, 추가적 저장을 제공하기 위해, 마이크로-드라이브 또는 다른 디바이스와 같은 저장 디바이스가 제공될 수 있다. 프로세서(552), 메모리(564), 디스플레이(554), 통신 인터페이스(566) 및 트랜시버(568) 각각은 다양한 버스들을 사용하여 상호 연결되며, 몇몇 컴포넌트들은 공통 마더보드 상에 또는 적절하게 다른 방식들로 장착될 수 있다.
[0070] 프로세서(552)는 메모리(564)에 저장된 명령을 포함하여, 모바일 컴퓨팅 디바이스(450) 내의 명령들을 실행할 수 있다. 프로세서(552)는 별개의 다수의 아날로그 및 디지털 프로세서들을 포함하는 칩들의 칩셋으로서 구현될 수 있다. 프로세서(552)는 예컨대, 사용자 인터페이스들의 제어, 모바일 컴퓨팅 디바이스(450)에 의해 실행되는 애플리케이션들 및 모바일 컴퓨팅 디바이스(450)에 의한 무선 통신과 같은 모바일 컴퓨팅 디바이스(450)의 다른 컴포넌트들의 조정을 제공할 수 있다.
[0071] 프로세서(552)는, 제어 인터페이스(558), 및 디스플레이(554)에 커플링된 디스플레이 인터페이스(556)를 통해 사용자와 통신할 수 있다. 디스플레이(554)는 예컨대, TFT(Thin-Film-Transistor Liquid Crystal Display) 디스플레이 또는 OLED(Organic Light Emitting Diode) 디스플레이, 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(556)는 그래픽 및 다른 정보를 사용자에게 제시하기 위해 디스플레이(554)를 구동시키기 위한 적절한 회로망을 포함할 수 있다. 제어 인터페이스(558)는 사용자로부터 커맨드들을 수신하고, 이들을 프로세서(552)에 제출하기 위해 변환할 수 있다. 또한, 외부 인터페이스(562)는 다른 디바이스들과 모바일 컴퓨팅 디바이스(450)의 근거리 통신을 가능하게 하기 위해 프로세서(552)와의 통신을 제공할 수 있다. 외부 인터페이스(562)는 예컨대, 일부 구현들에서 유선 통신을 제공하거나 또는 다른 구현들에서 무선 통신을 제공할 수 있으며, 다수의 인터페이스들이 또한 사용될 수 있다.
[0072] 메모리(564)는 모바일 컴퓨팅 디바이스(450) 내에 정보를 저장한다. 메모리(564)는 컴퓨터 판독가능한 매체 또는 매체들, 휘발성 메모리 유닛 또는 유닛들, 또는 비-휘발성 메모리 유닛 또는 유닛들 중 하나 이상으로서 구현될 수 있다. 확장 메모리(574)는 또한, 예컨대, SIMM(Single In Line Memory Module) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(572)를 통해 모바일 컴퓨팅 디바이스(450)에 제공되고 연결될 수 있다. 확장 메모리(574)는 모바일 컴퓨팅 디바이스(450)를 위한 추가 저장 공간을 제공할 수 있거나, 또는 모바일 컴퓨팅 디바이스(450)를 위한 애플리케이션들 또는 다른 정보를 또한 저장할 수 있다. 구체적으로, 확장 메모리(574)는 위에서 설명된 프로세스들을 수행하거나 또는 보완하기 위한 명령들을 포함할 수 있으며, 보안 정보를 또한 포함할 수 있다. 따라서, 예컨대, 확장 메모리(574)는 모바일 컴퓨팅 디바이스(450)를 위한 보안 모듈로서 제공될 수 있으며, 모바일 컴퓨팅 디바이스(450)의 안전한 사용을 허용하는 명령들로 프로그래밍될 수 있다. 또한, 보안 애플리케이션들은, 해킹 불가능한 방식으로 SIMM 카드에 식별 정보를 배치하는 것과 같은 추가 정보와 함께 SIMM 카드들을 통해 제공될 수 있다.
[0073] 메모리는 예컨대, 아래에서 논의되는 바와 같이, 플래시 메모리 및/또는 NVRAM 메모리(비-휘발성 랜덤 액세스 메모리)를 포함할 수 있다. 일부 구현들에서, 하나 이상의 프로세싱 디바이스들(예컨대, 프로세서(552))에 의해 실행될 때, 위에서 설명된 방법들과 같은 하나 이상의 방법들을 수행하는 명령들이 정보 캐리어에 저장된다. 명령들은 또한, 하나 이상의 컴퓨터 또는 기계 판독가능한 매체들(예컨대, 메모리(564), 확장 메모리(574) 또는 프로세서(552) 상의 메모리)과 같은 하나 이상의 저장 디바이스들에 의해 저장될 수 있다. 일부 구현들에서, 명령들은 예컨대, 트랜시버(568) 또는 외부 인터페이스(562)를 통해 전파된 신호로 수신될 수 있다.
[0074] 모바일 컴퓨팅 디바이스(450)는, 필요한 경우 디지털 신호 프로세싱 회로망을 포함할 수 있는 통신 인터페이스(566)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(566)는 특히, GSM 음성 콜들(Global System for Mobile communications), SMS(Short Message Service), EMS(Enhanced Messaging Service), 또는 MMS(Multimedia Messaging Service) 메시징, CDMA(code division multiple access), TDMA(time division multiple access), PDC(Personal Digital Cellular), WCDMA(Wideband Code Division Multiple Access), CDMA2000, 또는 GPRS(General Packet Radio Service)와 같은 다양한 모드들 또는 프로토콜들 하에, 통신들을 제공할 수 있다. 그러한 통신은 예컨대, 라디오 주파수를 사용하여 트랜시버(568)를 통해 발생할 수 있다. 또한, 단거리 통신은, 이를테면, Bluetooth, WiFi 또는 다른 그러한 트랜시버(도시되지 않음)를 사용하여 발생할 수 있다. 또한, GPS(Global Positioning System) 수신기 모듈(570)은 모바일 컴퓨팅 디바이스(450)에 추가적 네비게이션 및 위치 관련 무선 데이터를 제공할 수 있으며, 이는 모바일 컴퓨팅 디바이스(450) 상에서 실행되는 애플리케이션들에 의해 적절하게 사용될 수 있다.
[0075] 모바일 컴퓨팅 디바이스(450)는 또한, 사용자로부터 발성된 정보를 수신하고 그것을 사용가능한 디지털 정보로 변환할 수 있는 오디오 코덱(560)을 사용하여 청각적으로 통신할 수 있다. 오디오 코덱(560)은 마찬가지로, 예컨대, 모바일 컴퓨팅 디바이스(450)의 핸드셋에서, 이를테면, 화자를 통해 사용자를 위한 청취가능한 사운드를 생성할 수 있다. 그러한 사운드는 음성 전화 콜들로부터의 사운드를 포함할 수 있고, 레코딩된 사운드(예컨대, 음성 메시지들, 음악 파일들 등)를 포함할 수 있고, 그리고 모바일 컴퓨팅 디바이스(450) 상에서 동작하는 어플리케이션들에 의해 생성된 사운드를 또한 포함할 수 있다.
[0076] 모바일 컴퓨팅 디바이스(450)는, 도면에 도시된 바와 같이, 다수의 상이한 형태들로 구현될 수 있다. 예컨대, 그것은 셀룰러 전화(580)로서 구현될 수 있다. 그것은 또한, 스마트폰(582), 개인용 디지털 어시스턴트 또는 다른 유사한 모바일 디바이스의 일부로서 구현될 수 있다.
[0077] 여기서 설명된 시스템들 및 기법들의 다양한 구현들이 디지털 전자 회로망, 집적 회로, 특수하게 설계된 ASIC들, 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합들로 실현될 수 있다. 이러한 다양한 구현들은, 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 데이터 및 명령들을 이들에 송신하도록 커플링될 수 있는 특수 목적 또는 범용인 적어도 하나의 프로그래밍가능한 프로세서를 포함하는 프로그래밍가능한 시스템 상에서 실행가능한 그리고/또는 인터프리팅가능한 하나 이상의 컴퓨터 프로그램들로의 구현을 포함할 수 있다.
[0078] 이러한 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 또는 코드로서 또한 알려져 있음)은 프로그래밍가능한 프로세서에 대한 기계 명령어들을 포함하며, 높은 수준의 프로시저 및/또는 객체 지향 프로그래밍 언어로 구현될 수 있고 그리고/또는 어셈블리어/기계어로 구현될 수 있다. 프로그램은 다른 프로그램들 또는 데이터, 예컨대, 마크업 언어 문서에 저장된 하나 이상의 스크립트들을 보유하는 파일의 일부분에, 해당 프로그램에 전용되는 단일 파일에 또는 다수의 조정된 파일들, 예컨대, 하나 이상의 모듈들, 서브 프로그램들 또는 코드의 부분들을 저장하는 파일들에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에서, 또는 하나의 사이트에 로케이팅되거나 또는 다수의 사이트들에 걸쳐 분산되고 통신 네트워크에 의해 상호 연결되는 다수의 컴퓨터들 상에서 실행되도록 전개될 수 있다.
[0079] 본원에서 사용되는 바와 같이, "기계 판독가능한 매체", "컴퓨터 판독가능한 매체"라는 용어들은, 기계 판독가능한 신호로서 기계 명령어들을 수신하는 기계 판독가능한 매체를 포함하는 프로그래밍가능한 프로세서에 기계 명령어들 및/또는 데이터를 제공하기 위해 사용되는 임의의 컴퓨터 프로그램 제품, 장치 및/또는 디바이스(예컨대, 자기 디스크들, 광학 디스크들, 메모리, PLD(Programmable Logic Device)들)를 지칭한다. "기계 판독가능한 신호"라는 용어는 기계 명령어들 및/또는 데이터를 프로그래밍가능한 프로세서에 제공하기 위해 사용되는 임의의 신호를 지칭한다.
[0080] 사용자와의 상호 작용을 제공하기 위해, 여기서 설명된 시스템들 및 기법들은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스, 예컨대, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터, 및 사용자가 입력을 컴퓨터에 제공할 수 있게 하는 키보드 및 포인팅 디바이스, 예컨대, 마우스 또는 트랙볼을 가지는 컴퓨터 상에서 구현될 수 있다. 다른 종류들의 디바이스들이 사용자와의 상호 작용을 제공하기 위해 또한 사용될 수 있고; 예컨대, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백, 예컨대, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백일 수 있고; 사용자로부터의 입력은 어쿠스틱(acoustic), 음성 또는 촉각적 입력을 포함하는 임의의 형태로 수신될 수 있다.
[0081] 여기서 설명된 시스템들 및 기법들은 백 엔드 컴포넌트를, 예컨대, 데이터 서버로서 포함하거나, 또는 미들웨어 컴포넌트, 이를테면, 애플리케이션 서버를 포함하거나, 또는 프론트 엔드 컴포넌트, 이를테면, 사용자가 여기서 설명된 시스템들 및 기법들의 구현과 상호 작용할 수 있게 하는 웹 브라우저 또는 그래픽 사용자 인터페이스를 가지는 클라이언트 컴퓨터를 포함하는 컴퓨팅 시스템, 또는 그러한 백 엔드, 미들웨어 또는 프론트 엔드 컴포넌트들의 임의의 조합으로 구현될 수 있다. 시스템의 컴포넌트들은 임의의 형태 또는 매체의 디지털 데이터 통신, 이를테면, 통신 네트워크에 의해 상호 연결될 수 있다. 통신 네트워크들의 예들은 "LAN"(local area network), "WAN"(wide area network) 및 인터넷을 포함한다.
[0082] 컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 멀리 떨어져 있으며, 전형적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는, 각각의 컴퓨터들 상에서 실행되고 서로에 대해 클라이언트-서버 관계를 가지는 컴퓨터 프로그램들에 의해 발생한다.
[0083] 위의 설명들에 추가로, 사용자에게는, 본원에 설명된 시스템들, 프로그램들 또는 특징들이 사용자 정보(예컨대, 사용자의 소셜 네트워크에 대한 정보, 소셜 액션들 또는 활동들, 직업, 사용자의 선호도들 또는 사용자의 현재 위치)의 수집을 가능하게 할 수 있을 때 및 그 경우 둘 모두, 그리고 사용자가 서버로부터의 컨텐츠 또는 통신들을 전송받는 경우에 대해 사용자가 선정을 수행할 수 있게 하는 제어들이 제공될 수 있다. 또한, 특정 데이터는 그것이 저장되거나 또는 사용되기 이전에 하나 이상의 방식들로 처리될 수 있어, 개인적으로 식별가능한 정보가 제거된다.
[0084] 예컨대, 일부 실시예들에서, 사용자의 아이덴티티(identity)는, 어떠한 개인적으로 식별가능한 정보도 사용자에 대해 결정될 수 없거나, 또는 위치 정보가 획득된 사용자의 지리적 위치가 (이를테면, 도시, ZIP 코드 또는 스테이트 레벨(state level)로) 일반화될 수 있어 사용자의 특정 위치가 결정될 수 없도록 처리될 수 있다. 따라서, 사용자는 어떤 정보가 사용자에 대해 수집되는지, 그 정보가 어떻게 사용되는지, 및 어떤 정보가 사용자에게 제공되는지에 대해 제어할 수 있다.
[0085] 다수의 실시예들이 설명되었다. 그럼에도 불구하고, 본 발명의 범위로부터 벗어나지 않으면서 다양한 수정들이 이루어질 수 있다는 것이 이해될 것이다. 예컨대, 단계들이 재정렬, 추가 또는 제거되어, 위에서 도시된 다양한 형태들의 흐름들이 사용될 수 있다. 또한, 시스템들 및 방법들의 몇몇 애플리케이션들이 설명되었지만, 다수의 다른 애플리케이션들이 고려된다는 것이 인식되어야 한다. 따라서, 다른 실시예들은 다음의 청구항들의 범위 내에 있다.
[0086] 청구 대상의 특정 실시예들이 설명되었다. 다른 실시예들은 다음의 청구항들의 범위 내에 있다. 예컨대, 청구항들에서 인용되는 액션들은 상이한 순서로 수행될 수 있으며, 여전히 바람직한 결과들을 달성할 수 있다. 하나의 예로서, 첨부한 도면들에 도시된 프로세스들은 바람직한 결과들을 달성하기 위해, 도시된 특정 순서, 또는 순차적 순서를 반드시 요구하지는 않는다. 일부 경우들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다.

Claims (15)

  1. 컴퓨터-구현 방법으로서,
    대상 화자(target speaker)의 스피치(speech)의 오디오 표현을 획득하는 단계;
    상기 대상 화자의 음성으로 스피치가 합성될 입력 텍스트를 획득하는 단계;
    화자들을 서로 구별하도록 훈련(train)되는 화자 검증 뉴럴 네트워크에 상기 오디오 표현을 제공함으로써 화자 임베딩 벡터(speaker embedding vector)를 생성하는 단계;
    오디오 표현들을 생성하기 위해 기준 화자들의 음성들을 사용하여 훈련되는 스펙트로그램 생성 뉴럴 네트워크(spectrogram generation neural network)에 상기 입력 텍스트 및 상기 화자 임베딩 벡터를 제공함으로써, 상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 오디오 표현을 생성하는 단계 - 상기 스펙트로그램 생성 뉴럴 네트워크는 음소 또는 자소 입력들의 시퀀스로부터 멜 스펙트로그램(mel spectrogram)들을 예측하도록 훈련된 시퀀스-투-시퀀스 어텐션 뉴럴 네트워크(sequence-to-sequence attention neural network)임 -; 및
    출력을 위해 상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 오디오 표현을 제공하는 단계
    를 포함하고,
    상기 화자 검증 뉴럴 네트워크는, 임베딩 공간 내에서 서로 멀리 떨어져 있는, 상이한 화자들로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들을 생성하면서, 상기 임베딩 공간 내에서 서로 근접해 있는, 동일한 화자로부터의 스피치의 오디오 표현들의 화자 임베딩 벡터들을 생성하도록 훈련되며,
    상기 스펙트로그램 생성 뉴럴 네트워크에 상기 입력 텍스트 및 상기 화자 임베딩 벡터를 제공함으로써 상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 오디오 표현을 생성하는 단계는, 상기 화자 임베딩 벡터에 대한 스펙트럼 감산에 의해 노이즈 감소를 수행하는 단계를 포함하고,
    상기 화자 검증 뉴럴 네트워크는 LSTM(long short-term memory) 뉴럴 네트워크인,
    컴퓨터-구현 방법.
  2. 삭제
  3. 제1 항에 있어서,
    상기 화자 검증 뉴럴 네트워크는 상기 스펙트로그램 생성 뉴럴 네트워크와는 별개로 훈련되는, 컴퓨터-구현 방법.
  4. 삭제
  5. 제1 항에 있어서,
    상기 화자 임베딩 벡터를 생성하는 단계는,
    복수의 개별 벡터 임베딩들을 생성하기 위해 상기 화자 검증 뉴럴 네트워크에 상기 오디오 표현의 복수의 오버랩핑 슬라이딩 윈도우들을 제공하는 단계; 및
    상기 개별 벡터 임베딩들의 평균을 컴퓨팅함으로써 상기 화자 임베딩 벡터를 생성하는 단계
    를 포함하는, 컴퓨터-구현 방법.
  6. 제1 항에 있어서,
    출력을 위해 상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 상기 오디오 표현을 제공하는 단계는,
    상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 시간 도메인 표현을 생성하기 위해 상기 대상 화자의 음성으로 발성된 상기 입력 텍스트의 상기 오디오 표현을 보코더에 제공하는 단계; 및
    사용자에게 재생을 위한 상기 시간 도메인 표현을 제공하는 단계
    를 포함하는, 컴퓨터-구현 방법.
  7. 제6 항에 있어서,
    상기 보코더는 보코더 뉴럴 네트워크인, 컴퓨터-구현 방법.
  8. 삭제
  9. 제1 항에 있어서,
    상기 스펙트로그램 생성 뉴럴 네트워크는 인코더 뉴럴 네트워크, 어텐션 계층 및 디코더 뉴럴 네트워크를 포함하는, 컴퓨터-구현 방법.
  10. 제9 항에 있어서,
    상기 스펙트로그램 생성 뉴럴 네트워크는 상기 화자 임베딩 벡터를 상기 어텐션 계층으로의 입력으로 제공되는 인코더 뉴럴 네트워크의 출력들과 연접시키는, 컴퓨터-구현 방법.
  11. 삭제
  12. 제1 항에 있어서,
    상기 스펙트로그램 생성 뉴럴 네트워크의 훈련 동안, 상기 화자 검증 뉴럴 네트워크의 파라미터들이 고정되는, 컴퓨터-구현 방법.
  13. 삭제
  14. 하나 이상의 컴퓨터들 및 하나 이상의 저장 디바이스들을 포함하는 시스템으로서,
    상기 하나 이상의 저장 디바이스들은, 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 제1 항의 방법의 동작들을 수행하게 하는 명령들을 저장하는, 시스템.
  15. 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 제1 항의 방법의 동작들을 수행하게 하는 명령들을 저장하는 하나 이상의 컴퓨터 판독가능 저장 매체.
KR1020207035508A 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성 KR102514990B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237009867A KR20230043250A (ko) 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862672835P 2018-05-17 2018-05-17
US62/672,835 2018-05-17
PCT/US2019/032815 WO2019222591A1 (en) 2018-05-17 2019-05-17 Synthesis of speech from text in a voice of a target speaker using neural networks

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237009867A Division KR20230043250A (ko) 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성

Publications (2)

Publication Number Publication Date
KR20210008510A KR20210008510A (ko) 2021-01-22
KR102514990B1 true KR102514990B1 (ko) 2023-03-27

Family

ID=66770584

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207035508A KR102514990B1 (ko) 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성
KR1020237009867A KR20230043250A (ko) 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237009867A KR20230043250A (ko) 2018-05-17 2019-05-17 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성

Country Status (6)

Country Link
US (3) US11488575B2 (ko)
EP (1) EP3776530A1 (ko)
JP (3) JP7106680B2 (ko)
KR (2) KR102514990B1 (ko)
CN (1) CN112689871A (ko)
WO (1) WO2019222591A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020199013A1 (en) * 2019-03-29 2020-10-08 Microsoft Technology Licensing, Llc Speaker diarization with early-stop clustering
CN113874934A (zh) * 2019-05-23 2021-12-31 谷歌有限责任公司 有表达力的端到端语音合成中的变分嵌入容量
US11501787B2 (en) * 2019-08-22 2022-11-15 Google Llc Self-supervised audio representation learning for mobile devices
GB2590509B (en) * 2019-12-20 2022-06-15 Sonantic Ltd A text-to-speech synthesis method and system, and a method of training a text-to-speech synthesis system
US11430431B2 (en) 2020-02-06 2022-08-30 Tencent America LLC Learning singing from speech
CN113470615B (zh) * 2020-03-13 2024-03-12 微软技术许可有限责任公司 跨讲话者风格转移语音合成
CN111369968B (zh) * 2020-03-19 2023-10-13 北京字节跳动网络技术有限公司 语音合成方法、装置、可读介质及电子设备
CN111583903B (zh) * 2020-04-28 2021-11-05 北京字节跳动网络技术有限公司 语音合成方法、声码器训练方法、装置、介质及电子设备
CN111951778B (zh) * 2020-07-15 2023-10-17 天津大学 一种低资源下利用迁移学习进行情感语音合成的方法
CN111862934B (zh) * 2020-07-24 2022-09-27 思必驰科技股份有限公司 语音合成模型的改进方法和语音合成方法及装置
WO2022078634A1 (en) * 2020-10-15 2022-04-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio generator and methods for generating an audio signal and training an audio generator
US20220310058A1 (en) * 2020-11-03 2022-09-29 Microsoft Technology Licensing, Llc Controlled training and use of text-to-speech models and personalized model generated voices
CN112489620B (zh) * 2020-11-20 2022-09-09 北京有竹居网络技术有限公司 语音合成方法、装置、可读介质及电子设备
US20220165247A1 (en) * 2020-11-24 2022-05-26 Xinapse Co., Ltd. Method for generating synthetic speech and speech synthesis system
CN112614479B (zh) * 2020-11-26 2022-03-25 北京百度网讯科技有限公司 训练数据的处理方法、装置及电子设备
JP7254114B2 (ja) * 2020-12-18 2023-04-07 ハイパーコネクト リミテッド ライアビリティ カンパニー 音声合成装置およびその方法
CN112802448B (zh) * 2021-01-05 2022-10-11 杭州一知智能科技有限公司 一种新音色生成的语音合成方法和系统
CN113781993A (zh) 2021-01-20 2021-12-10 北京沃东天骏信息技术有限公司 定制音色歌声的合成方法、装置、电子设备和存储介质
CN112908293B (zh) * 2021-03-11 2022-08-02 浙江工业大学 一种基于语义注意力机制的多音字发音纠错方法及装置
CN113450773A (zh) * 2021-05-11 2021-09-28 多益网络有限公司 视频记录文稿生成方法、装置、存储介质以及电子设备
US20220383850A1 (en) * 2021-05-31 2022-12-01 Brock Daily System and method for posthumous dynamic speech synthesis using neural networks and deep learning
CN113409765B (zh) * 2021-06-11 2024-04-26 北京搜狗科技发展有限公司 一种语音合成方法、装置和用于语音合成的装置
CN113571039B (zh) * 2021-08-09 2022-04-08 北京百度网讯科技有限公司 语音转换方法、系统、电子设备及可读存储介质
CN113488057B (zh) * 2021-08-18 2023-11-14 山东新一代信息产业技术研究院有限公司 面向康养的对话实现方法及系统
CN113808572B (zh) * 2021-08-18 2022-06-17 北京百度网讯科技有限公司 语音合成方法、装置、电子设备和存储介质
CN113724684B (zh) * 2021-10-19 2024-06-14 南京航空航天大学 一种空中交通管制指令的语音合成方法及系统
WO2023089634A1 (en) * 2021-11-16 2023-05-25 Gan Studio Inc Seamless multimedia integration
US11908454B2 (en) 2021-12-01 2024-02-20 International Business Machines Corporation Integrating text inputs for training and adapting neural network transducer ASR models
WO2023209762A1 (ja) * 2022-04-25 2023-11-02 日本電信電話株式会社 学習装置、変換装置、方法及びプログラム
CN115220608B (zh) * 2022-09-20 2022-12-20 深圳市人马互动科技有限公司 互动小说中多媒体数据的处理方法及装置
WO2024069726A1 (ja) * 2022-09-27 2024-04-04 日本電信電話株式会社 学習装置、変換装置、学習方法、変換方法及びプログラム
CN116564276B (zh) * 2023-04-23 2024-06-25 内蒙古工业大学 一种基于双判别器生成对抗网络的蒙古语语音识别方法
CN116312466B (zh) * 2023-05-23 2023-08-15 澳克多普有限公司 基于少量样本的说话人适应方法、语音翻译方法和系统
CN117219050A (zh) * 2023-09-08 2023-12-12 中国人民解放军战略支援部队航天工程大学 一种基于深度生成对抗网络的文本生成视频系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6988066B2 (en) * 2001-10-04 2006-01-17 At&T Corp. Method of bandwidth extension for narrow-band speech
US8489399B2 (en) * 2008-06-23 2013-07-16 John Nicholas and Kristin Gross Trust System and method for verifying origin of input through spoken language analysis
WO2014199450A1 (ja) * 2013-06-11 2014-12-18 株式会社東芝 電子透かし埋め込み装置、電子透かし埋め込み方法、及び電子透かし埋め込みプログラム
JP6622505B2 (ja) 2015-08-04 2019-12-18 日本電信電話株式会社 音響モデル学習装置、音声合成装置、音響モデル学習方法、音声合成方法、プログラム
CN107016999B (zh) * 2015-10-16 2022-06-14 谷歌有限责任公司 热词识别
US10607601B2 (en) * 2017-05-11 2020-03-31 International Business Machines Corporation Speech recognition by selecting and refining hot words
US10354656B2 (en) * 2017-06-23 2019-07-16 Microsoft Technology Licensing, Llc Speaker recognition
US10872596B2 (en) * 2017-10-19 2020-12-22 Baidu Usa Llc Systems and methods for parallel wave generation in end-to-end text-to-speech

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Sercan O. Arik et al., ‘Neural Voice Cloning with a Few Samples’, arXiv:1802.06006v2 [cs.CL] 20 March 2018.*
Shuai Wang et al., ‘What Does the Speaker Embedding Encode?’, INTERSPEECH 2017, 20 August 2017.*
Wei Ping et al., ‘DEEP VOICE 3: 2000-SPEAKER NEURAL TEXT-TO-SPEECH’, arXiv:1710.07654v1 [cs.SD] 20 October 2017.*

Also Published As

Publication number Publication date
JP7427723B2 (ja) 2024-02-05
US11488575B2 (en) 2022-11-01
US11848002B2 (en) 2023-12-19
JP7106680B2 (ja) 2022-07-26
JP2021524063A (ja) 2021-09-09
US20220351713A1 (en) 2022-11-03
US20240112667A1 (en) 2024-04-04
CN112689871A (zh) 2021-04-20
KR20210008510A (ko) 2021-01-22
US20210217404A1 (en) 2021-07-15
JP2022137201A (ja) 2022-09-21
JP2024038474A (ja) 2024-03-19
EP3776530A1 (en) 2021-02-17
KR20230043250A (ko) 2023-03-30
WO2019222591A1 (en) 2019-11-21

Similar Documents

Publication Publication Date Title
KR102514990B1 (ko) 뉴럴 네트워크들을 사용하여 대상 화자의 음성으로 텍스트로부터의 스피치의 합성
CN108573693B (zh) 文本到语音系统和方法以及其存储介质
WO2020215666A1 (zh) 语音合成方法、装置、计算机设备及存储介质
US11664011B2 (en) Clockwork hierarchal variational encoder
JP7244665B2 (ja) エンドツーエンドの音声変換
CN111489734A (zh) 基于多说话人的模型训练方法以及装置
US11545136B2 (en) System and method using parameterized speech synthesis to train acoustic models
WO2023030235A1 (zh) 目标音频的输出方法及系统、可读存储介质、电子装置
Mandel et al. Audio super-resolution using concatenative resynthesis
CN116601702A (zh) 一种用于多说话者和多语言语音合成的端到端神经系统
KR20220070979A (ko) 발화 스타일 인코딩 네트워크 이용한 스타일 음성 합성 장치 및 음성 합성 방법
US11335321B2 (en) Building a text-to-speech system from a small amount of speech data
Marković et al. Recognition of normal and whispered speech based on RASTA filtering and DTW algorithm
JP2014197072A (ja) 音声合成システム、及び音声合成方法
Bao et al. TTS-VLSP 2021: Development of Smartcall Vietnamese Text-to-Speech
WO2023102932A1 (zh) 音频转换方法、电子设备、程序产品及存储介质
Hurmalainen Robust speech recognition with spectrogram factorisation
Iglesias et al. Voice personalization and speaker de-identification in speech processing systems
KR20230141251A (ko) 성도 및 여기 신호 정보를 이용한 자동 음성 인식 방법 및 장치
CN116013248A (zh) 说唱音频生成方法、装置、设备和可读存储介质
Eswaran et al. The Connected for easy Conversation Transformation

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
A107 Divisional application of patent
GRNT Written decision to grant