KR20190085882A - 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 - Google Patents
기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 Download PDFInfo
- Publication number
- KR20190085882A KR20190085882A KR1020190004186A KR20190004186A KR20190085882A KR 20190085882 A KR20190085882 A KR 20190085882A KR 1020190004186 A KR1020190004186 A KR 1020190004186A KR 20190004186 A KR20190004186 A KR 20190004186A KR 20190085882 A KR20190085882 A KR 20190085882A
- Authority
- KR
- South Korea
- Prior art keywords
- speech
- text
- speaker
- data
- input
- Prior art date
Links
- 238000003786 synthesis reaction Methods 0.000 title claims abstract description 87
- 230000015572 biosynthetic process Effects 0.000 title claims abstract description 86
- 238000010801 machine learning Methods 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000013528 artificial neural network Methods 0.000 claims abstract description 61
- 239000013598 vector Substances 0.000 claims description 104
- 238000001308 synthesis method Methods 0.000 claims description 26
- 230000008451 emotion Effects 0.000 claims description 25
- 230000002194 synthesizing effect Effects 0.000 abstract description 3
- 238000000605 extraction Methods 0.000 description 29
- 238000004891 communication Methods 0.000 description 24
- 230000001755 vocal effect Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 18
- 230000015654 memory Effects 0.000 description 18
- 238000011156 evaluation Methods 0.000 description 17
- 238000007781 pre-processing Methods 0.000 description 14
- 238000013527 convolutional neural network Methods 0.000 description 12
- 239000000284 extract Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000306 recurrent effect Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000001944 accentuation Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000002996 emotional effect Effects 0.000 description 2
- 238000012880 independent component analysis Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000556 factor analysis Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text 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/10—Prosody rules derived from text; Stress or intonation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/033—Voice editing, e.g. manipulating the voice of the synthesiser
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/033—Voice editing, e.g. manipulating the voice of the synthesiser
- G10L13/0335—Pitch control
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
- G10L13/047—Architecture of speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
- G10L25/63—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Hospice & Palliative Care (AREA)
- Child & Adolescent Psychology (AREA)
- Telephonic Communication Services (AREA)
- Machine Translation (AREA)
Abstract
본 개시는 텍스트로부터 음성을 합성하는 방법 및 합성된 음성을 재생하는 장치에 관한 것이다. 기계학습을 이용한 텍스트-음성 합성(text-to-speech synthesis) 방법 복수의 학습 텍스트 및 상기 복수의 학습 텍스트에 대응되는 음성 데이터에 기초하여 기계학습을 수행하여 생성된 단일 인공 신경망 텍스트-음성 합성(text-to-speech synthesis) 모델을 생성하는 단계, 입력 텍스트를 수신하는 단계, 화자의 발성 특징을 수신하는 단계, 및 상기 화자의 발성 특징을 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함한다.
Description
본 개시는 입력 텍스트를 수신하고 입력 텍스트에 대한 음성을 합성하는 방법 및 합성된 음성을 재생하는 장치에 관한 것이다.
음성(speech)은 인간의 기초적이고 효과적인 의사를 전달할 수 있는 도구 중 하나이다. 음성 기반 통신은 사용자에게 직관적이고 편리한 서비스를 제공하고, 일부 장치는 음성을 사용하여 상호 작용할 수 있는 음성 사용자 인터페이스를 사용하고 있다. 종래의 음성 사용자 인터페이스에서 음성 응답을 구현하는 간단한 방법은 오디오 녹음이지만, 녹음된 음성만이 이용될 수 있다는 한계가 있었다. 이러한 장치는 녹음되지 않은 음성에 대해서는 응답 서비스를 제공할 수 없기 때문에, 장치 사용의 유연성이 떨어진다. 예를 들어, Apple Siri 및 Amazon Alexa 등과 같은 인공 지능(AI) 에이전트는 사용자의 쿼리(queries)가 임의적일 수 있으므로, 사용자의 쿼리에 대한 응답 서비스를 위하여 다양한 문장을 생성할 수 있어야 한다. 이러한 응용 프로그램에서 가능한 모든 응답을 녹음하는 경우 상당한 시간과 비용이 요구된다. 이러한 환경에서, 많은 연구자들이 자연스럽고 빠른 음성 합성 모델을 만들려고 노력하고 있다. 또한, 텍스트로부터 음성을 생성할 수 있는 TTS (text-to-speech)라고도 하는 텍스트-음성 합성이 널리 연구되고 있다.
일반적으로, TTS 기술은 Concatenative TTS, Parametric TTS 등 다양한 음성 합성 방법이 있다. 예를 들어, Concatenative TTS는 음성을 음소 등 아주 짧은 단위로 미리 잘라서 저장해두고, 합성할 문장을 구성하는 음성들을 결합하여 음성을 합성할 수 있으며, Parametric TTS는 음성의 특징을 parameter로 표현하고 합성할 문장을 구성하는 음성 특징들을 나타내는 parameter들을 보코더(vocoder)를 이용하여 문장에 대응하는 음성으로 합성할 수 있다.
한편, 최근에는 인공 신경망(예를 들어, 딥 뉴럴 네트워크) 기반의 음성 합성 방법이 활발히 연구되고 있으며, 이러한 음성 합성 방법에 따라 합성된 음성은, 기존의 방법에 비해 훨씬 자연스러운 음성 특징을 포함하고 있다. 하지만, 인공신경망 기반의 음성 합성 방법으로 새로운 화자를 위한 음성 합성 서비스를 제공하기 위해서는 그 화자의 목소리에 해당하는 많은 데이터가 필요하고, 이 데이터를 이용한 인공 신경망 모델의 재학습이 요구된다.
본 개시에 따른 방법 및 장치는 새로운 화자에 대한 많은 데이터 또는 정보의 입력 없이 그 새로운 화자의 발성 특성이 반영된, 입력텍스트에 대한 출력 음성 데이터를 제공하는 음성 합성 방법 및 장치에 관한 것이다. 또한, 본 개시에 따른 방법 및 장치는 별도의 기계학습 없이 새로운 화자를 확장하여 음성 합성 서비스를 제공할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성(text-to-speech synthesis) 방법은 복수의 학습 텍스트 및 복수의 학습 텍스트에 대응되는 음성 데이터에 기초하여 기계학습을 수행하여 생성된 단일 인공 신경망 텍스트-음성 합성(text-to-speech synthesis) 모델을 생성하는 단계, 입력 텍스트를 수신하는 단계, 화자의 발성 특징을 수신하는 단계 및 화자의 발성 특징을 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 화자의 발성 특징을 수신하는 단계는, 음성 샘플을 수신하는 단계, 및 음성 샘플로부터 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 음성 샘플로부터 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 화자의 운율 특징을 나타내는 제1 서브 임베딩 벡터를 추출하는 단계를 포함하고, 여기서, 운율 특징은, 발화 속도에 대한 정보, 발음 강세에 대한 정보, 휴지 구간에 대한 정보 또는 음 높이에 대한 정보 중 적어도 하나를 포함하고, 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 운율 특징을 나타내는 제1 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 운율 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 음성 샘플로부터 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 화자의 감정 특징을 나타내는 제2 서브 임베딩 벡터를 추출하는 단계를 포함하고, 여기서, 감정 특징은 화자의 발화 내용에 내재된 감정에 대한 정보를 포함하고, 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 감정 특징을 나타내는 제2 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 감정 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 음성 샘플로부터 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 추출하는 단계를 포함하고, 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 음색 및 음 높이에 대한 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 출력 음성 데이터에 대한 추가적인 입력을 수신하는 단계, 추가적인 입력에 기초하여 화자의 발성 특징을 나타내는 임베딩 벡터를 수정하는 단계, 및 수정된 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 출력 음성 데이터를 추가적인 입력에 포함된 정보가 반영된 입력 텍스트에 대한 음성 데이터로 변환하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 출력 음성 데이터에 대한 추가적인 입력은 성별에 대한 정보, 연령에 대한 정보, 지역별 억양에 대한 정보, 발성의 속도에 대한 정보, 음 높이 또는 발성의 크기에 대한 정보 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 음성 샘플을 수신하는 단계는, 미리 결정된 시간 구간 내에 화자로부터 입력된 음성을 음성 샘플로서 실시간으로 수신하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 기계학습을 이용한 텍스트-음성 합성 방법의 음성 샘플을 수신하는 단계는, 미리 결정된 시간 구간 내에 화자로부터 입력된 음성을 음성 데이터베이스로부터 수신하는 단계를 포함할 수 있다.
또한, 상술한 바와 같은 기계학습을 이용한 텍스트-음성 합성 방법을 구현하기 위한 프로그램은 컴퓨터로 판독 가능한 기록 매체에 기록될 수 있다.
또한, 상술한 바와 같은 기계학습을 이용한 텍스트-음성 합성 방법과 연관된 장치 및 기술적 수단 등을 또한 개시할 수 있다.
도 1은 본 개시의 일 실시예에 따른 텍스트-음성 합성 단말기를 나타낸 도면이다.
도 2는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치를 나타낸 도면이다.
도 3은 본 개시의 일 실시예에 따른 텍스트-음성 합성 방법을 나타낸 흐름도이다.
도 4는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치를 나타낸 도면이다.
도 5는 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 7는 본 개시의 일 실시예에 따른 복수의 화자의 각각을 구분할 수 있는 발성 특징을 나타내는 임베딩 벡터를 추출하는 네트워크를 나타내는 도면이다.
도 8은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 9은 본 개시의 일 실시예에 따른 발성 특징 조절부의 동작을 나타낸 흐름도이다.
도 10는 본 개시의 일 실시예에 따라 출력 음성의 특성을 변경하는 사용자 인터페이스의 예시를 나타낸다.
도 11은 본 개시의 일 실시예에 따른 텍스트-음성 합성 시스템의 블록도이다.
도 2는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치를 나타낸 도면이다.
도 3은 본 개시의 일 실시예에 따른 텍스트-음성 합성 방법을 나타낸 흐름도이다.
도 4는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치를 나타낸 도면이다.
도 5는 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 7는 본 개시의 일 실시예에 따른 복수의 화자의 각각을 구분할 수 있는 발성 특징을 나타내는 임베딩 벡터를 추출하는 네트워크를 나타내는 도면이다.
도 8은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 9은 본 개시의 일 실시예에 따른 발성 특징 조절부의 동작을 나타낸 흐름도이다.
도 10는 본 개시의 일 실시예에 따라 출력 음성의 특성을 변경하는 사용자 인터페이스의 예시를 나타낸다.
도 11은 본 개시의 일 실시예에 따른 텍스트-음성 합성 시스템의 블록도이다.
개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예에 대해 구체적으로 설명하기로 한다.
본 명세서에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다. 또한 복수의 표현은 문맥상 명백하게 복수인 것으로 특정하지 않는 한, 단수의 표현을 포함한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어 또는 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
본 개시의 일 실시예에 따르면 "부"는 프로세서 및 메모리로 구현될 수 있다. 용어 "프로세서" 는 범용 프로세서, 중앙 처리 장치 (CPU), 마이크로프로세서, 디지털 신호 프로세서 (DSP), 제어기, 마이크로제어기, 상태 머신 등을 포함하도록 넓게 해석되어야 한다. 몇몇 환경에서는, "프로세서" 는 주문형 반도체 (ASIC), 프로그램가능 로직 디바이스 (PLD), 필드 프로그램가능 게이트 어레이 (FPGA) 등을 지칭할 수도 있다. 용어 "프로세서" 는, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합한 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 그러한 구성들의 조합과 같은 처리 디바이스들의 조합을 지칭할 수도 있다.
용어 "메모리" 는 전자 정보를 저장 가능한 임의의 전자 컴포넌트를 포함하도록 넓게 해석되어야 한다. 용어 메모리는 임의 액세스 메모리 (RAM), 판독-전용 메모리 (ROM), 비-휘발성 임의 액세스 메모리 (NVRAM), 프로그램가능 판독-전용 메모리 (PROM), 소거-프로그램가능 판독 전용 메모리 (EPROM), 전기적으로 소거가능 PROM (EEPROM), 플래쉬 메모리, 자기 또는 광학 데이터 저장장치, 레지스터들 등과 같은 프로세서-판독가능 매체의 다양한 유형들을 지칭할 수도 있다. 프로세서가 메모리로부터 정보를 판독하고/하거나 메모리에 정보를 기록할 수 있다면 메모리는 프로세서와 전자 통신 상태에 있다고 불린다. 프로세서에 집적된 메모리는 프로세서와 전자 통신 상태에 있다.
아래에서는 첨부한 도면을 참고하여 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.
도 1은 본 개시의 일 실시예에 따른 텍스트-음성 합성 단말기(100)를 나타낸 도면이다.
텍스트-음성 합성 단말기(100)는 적어도 하나의 프로세서와 메모리를 포함할 수 있다. 예를 들어, 텍스트-음성 합성 단말기(100)는 스마트폰, 컴퓨터, 또는 휴대폰 등에서 구현될 수 있다. 텍스트-음성 합성 단말기(100)는 통신부를 포함하여 외부 장치(예를 들어, 서버 장치)와 통신할 수 있다.
텍스트-음성 합성 단말기(100)는 사용자(110)로부터 텍스트 입력과 특정 화자 입력을 수신할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 텍스트-음성 합성 단말기(100)는 텍스트 입력으로써 "How are you?"를 수신할 수 있다. 또한, 텍스트-음성 합성 단말기(100)는 화자 입력으로써 "사람 1"을 수신할 수 있다. 여기서, "사람 1"은 미리 설정된 화자, 즉 "사람 1"의 발성 특징을 나타낼 수 있다. 텍스트-음성 합성 단말기(100)는 복수의 사람의 발성 특징 중 적어도 하나의 발성 특징(예를 들어, "사람 1")을 미리 설정하도록 구성될 수 있다. 예를 들어, 이러한 복수의 사람의 발성 특징은 통신부를 통해 서버 장치 등의 외부 장치로부터 수신될 수 있다. 도 1에서는 미리 설정된 화자를 지정할 수 있는 사용자 인터페이스를 도시하고 있으나, 이에 한정하는 것은 아니며, 사용자는 특정 텍스트에 대한 음성을 텍스트-음성 합성 단말기(100)에 제공할 수 있으며, 텍스트-음성 합성 단말기(100)는 수신된 음성의 발성 특징을 추출하여 음성 합성을 위한 사용자의 발성 특징이 선택되도록 표시할 수 있다. 예를 들어, 수신된 음성으로부터 음성의 발성 특징이 추출될 수 있으며, 음성의 발성 특징은 임베딩 벡터로 나타낼 수 있다.
텍스트-음성 합성 단말기(100)는 지정된 화자의 발성 특징이 반영된 입력텍스트에 대한 음성 데이터를 출력하도록 구성될 수 있다. 예를 들어, 도 1에 도시된 바와 같이, "How are you"의 입력텍스트에 대한 출력 음성 데이터을 생성하는데 있어서, 선택된 "사람 1"의 발성 특징이 출력 음성 데이터에 반영되도록 구성될 수 있다. 여기서, 특정 화자의 발성 특징은 그 화자의 음성을 모사하는 것뿐만 아니라, 그 발성을 구성할 수 있는 스타일, 운율, 감정, 음색, 음높이 등 다양한 요소들 중 적어도 하나를 포함할 수 있다. 이러한 출력 음성 데이터를 생성하기 위하여, 텍스트-음성 합성 단말기(100)는 텍스트-음성 합성 장치에 입력 텍스트 및 지정된 화자를 제공할 수 있으며, 텍스트-음성 합성 장치로보부터 합성된 음성 데이터(예를 들어, "사람 1"의 발성 특징이 반영된 "How are you"의 음성 데이터)를 수신할 수 있다. 텍스트-음성 합성 장치에 대해서 아래 도 2에서 보다 자세히 설명한다. 텍스트-음성 합성 단말기(100)는 합성된 음성 데이터는 사용자(110)에게 출력할 수 있다. 이와 달리, 텍스트-음성 합성 단말기(100)는 텍스트-음성 합성 장치를 포함하도록 구성될 수 있다.
도 2는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치(200)를 나타낸 도면이다.
도 2의 텍스트-음성 합성 장치(200)가 사용하는 데이터 학습부(미도시) 및 데이터 인식부(미도시)는 후술될 도 11의 텍스트-음성 합성 장치(1100)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 텍스트-음성 합성 장치(200)는 발성 특징 추출부(210), 발성 특징 조절부(220), 음성 데이터베이스(230), 인코더(240), 디코더(250), 후처리 프로세서(260) 및 통신부(270)를 포함할 수 있다.
일 실시예에 따르면, 발성 특징 추출부(210)는 화자의 음성 신호(예를 들어, 음성 샘플)을 수신하고, 수신된 음성 신호로부터 화자의 발성 특징을 추출하도록 구성될 수 있다. 여기서, 수신된 음성 신호 또는 샘플은 화자의 발성 특징과 관련된 정보를 나타내는 음성 스펙트럼 데이터를 포함할 수 있다. 화자의 발성 특징을 추출하는데 있어서, 화자의 음성 신호로부터 발성 특징을 추출할 수 있는 임의의 알려진 적절한 특징 추출 방법이 사용될 수 있다. 예를 들어, 멜 주파수 셉스트럴(MFC)과 같은 음성 처리 방법을 이용하여 수신된 음성 신호 또는 샘플로부터 발성 특징을 추출할 수 있다. 이와 달리, 음성 샘플을 학습된 발성 특징 추출 모델(예를 들어, 인공신경망)에 입력하여 발성 특징을 추출될 수 있다. 예를 들어, 추출된 화자의 발성 특징은 임베딩 벡터로 나타낼 수 있다. 다른 실시예에 따르면, 발성 특징 추출부(210)는 텍스트 및 비디오 중 적어도 하나를 수신할 수 있고, 수신된 텍스트 및 비디오로부터 화자의 발성 특징을 추출하도록 구성될 수 있다. 추출된 화자의 발성 특징은 인코더(240) 또는 디코더(250) 중 적어도 하나에 제공할 수 있다.
일 실시예에 따르면, 발성 특징 추출부(210)로부터 추출된 화자의 발성 특징은 저장매체(예를 들어, 음성 데이터베이스(230)) 또는 외부 저장 장치에 저장될 수 있다. 이에 따라, 입력 텍스트에 대한 음성 합성 시, 저장매체에 미리 저장된 복수의 화자의 발성 특징 중 하나 이상의 화자의 발성 특징이 선택 또는 지정될 수 있고, 선택 또는 지정된 복수의 화자의 발성 특징이 음성 합성에 이용될 수 있다.
발성 특징 조절부(220)는 화자의 발성 특징을 조절하도록 구성될 수 있다. 일 실시예에 따르면, 발성 특징 조절부(220)는 화자의 발성 특징을 조절하기 위한 정보를 수신할 수 있다. 예를 들어, 화자의 발성 특징을 조절하기 위한 정보는 발성 특징 조절부(220)에 의해 사용자로부터 입력 받을 수 있다. 사용자로부터 수신한 정보에 기초하여, 발성 특징 조절부(220)는 발성 특징 추출부(210)에서 추출된 화자의 발성 특징을 조절할 수 있다.
일 실시예에 따르면, 음성 데이터베이스(230)는 학습 텍스트 및 복수의 학습 텍스트에 대응되는 음성을 저장할 수 있다. 학습 텍스트는 적어도 하나의 언어로 작성될 수 있으며, 사람이 이해할 수 있는 단어, 구문 및 문장 중 적어도 하나를 포함할 수 있다. 또한, 음성 데이터베이스(230)에 저장된 음성은 복수의 화자가 학습 텍스트를 읽은 음성 데이터를 포함할 수 있다. 학습 텍스트 및 음성 데이터는 음성 데이터베이스(230)에 미리 저장되어 있거나, 통신부(270)로부터 수신될 수 있다. 음성 데이터베이스(230)가 저장하고 있는 학습 텍스트 및 음성에 기초하여 인코더(240) 및 디코더(250) 중 적어도 하나는 단일 인공 신경망 텍스트-음성 합성 모델을 포함하거나 생성할 수 있다. 예를 들어, 인코더(240) 및 디코더(250)가 단일 인공 신경망 텍스트-합성 모델을 구성할 수 있다.
일 실시예에 따르면, 음성 데이터베이스(230)는 발성 특징 추출부(210)로부터 추출된 하나 이상의 화자의 발성 특징을 저장하도록 구성될 수 있다. 저장된 화자의 발성 특징(예를 들어, 화자의 발성 특징을 나타내는 임베딩 벡터)는 음성 합성 시 인코더(240) 또는 디코더 중 적어도 하나에 제공될 수 있다.
또한, 인코더(240)는 입력 텍스트를 수신할 수 있으며, 입력 텍스트를 문자 임베딩으로 변환하여 생성하도록 구성될 수 있다. 이러한 문자 임베딩은 단일 인공 신경망 텍스트-음성 합성 모델(예를 들어, pre-net, CBHG 모듈, DNN, CNN+DNN 등)에 입력하여 인코더(240)의 숨겨진 상태들을 생성할 수 있다. 일 실시예에 따르면, 인코더(240)는 발성 특징 추출부(210) 또는 발성 특징 조절부(220) 중 적어도 하나로부터 화자의 발성 특징을 더 수신하고, 문자 임베딩 및 화자의 발성 특징을 단일 인공 신경망 텍스트-음성 합성 모델(예를 들어, pre-net, CBHG 모듈, DNN, CNN+DNN 등)에 입력하여 인코더(240)의 숨겨진 상태들(hidden states)을 생성할 수 있다. 이렇게 생성된 인코더(240)의 숨겨진 상태들은 디코더(820)에 제공될 수 있다.
디코더(250)는 화자의 발성 특징을 수신하도록 구성될 수 있다. 디코더(250)는 발성 특징 추출부(210) 및 발성 특징 조절부(220) 중 적어도 하나로부터 화자의 발성 특징을 수신할 수 있다. 하지만 이에 한정되는 것은 아니며, 디코더(250)는 통신부(270) 또는 입출력부((I/O부; 미도시)로부터 화자의 발성 특징을 수신할 수 있다.
디코더(250)는 인코더(240)로부터 입력 텍스트에 대응한 숨겨진 상태들을 수신할 수 있다. 일 실시예에 따르면, 디코더(250)는 현재 시간-단계(time-step)에서 입력 텍스트 중 어떤 부분으로부터 음성을 생성할지 결정하도록 구성된 어텐션 모듈을 포함할 수 있다.
디코더(250)는 화자의 발성 특징 및 입력 텍스트를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 입력 텍스트에 대응되는 출력 음성 데이터를 생성할 수 있다. 이러한 출력 음성 데이터는 화자의 발성 특징이 반영된 합성 음성 데이터를 포함할 수 있다. 일 실시예에 따르면, 미리 설정된 제1 화자의 발성 특징에 기초하여, 제1 화자가 입력 텍스트를 읽는 것으로 보이는 출력 음성 데이터가 생성될 수 있다. 예를 들면, 출력 음성 데이터는 멜 스펙트로그램으로 표현될 수 있다. 하지만 이에 한정되는 것은 아니며, 출력 음성 데이터는 선형 스펙트로그램으로 표현될 수 있다. 이러한 출력 음성 데이터는 스피커, 후처리 프로세서(260) 또는 통신부(270) 중 적어도 하나로 출력될 수 있다.
일 실시예에 따르면, 후처리 프로세서(260)는 디코더(250)에서 생성된 출력 음성 데이터를 스피커에서 출력 가능한 음성으로 변환하도록 구성될 수 있다. 예를 들어, 변화된 출력 가능한 음성은 웨이브폼(waveform)으로 나타낼 수 있다. 후처리 프로세서(260)는 디코더(250)에서 생성된 출력 음성 데이터가 스피커에서 출력되기에 부적절한 경우에만 작동하도록 구성될 수 있다. 즉, 디코더(250)에서 생성된 출력 음성 데이터가 스피커에서 출력되기에 적절한 경우, 출력 음성 데이터는 후처리 프로세서(260)를 거치지 않고 바로 스피커로 출력될 수 있다. 이에 따라, 도 2에서는 후처리 프로세서(260)가 텍스트-음성 합성 장치(200)에 포함되도록 도시되어 있지만, 후처리 프로세서(260)가 텍스트-음성 합성 장치(200)에 포함되지 않도록 구성될 수 있다.
일 실시예에 따르면, 후처리 프로세서(260)는 디코더(250)에서 생성된 멜 스펙트로그램으로 표현된 출력 음성 데이터를 시간 도메인의 웨이브폼으로 변환하도록 구성될 수 있다. 또한, 후처리 프로세서(260)는 출력 음성 데이터의 신호의 크기가 미리 결정된 기준 크기에 도달하지 못한 경우, 출력 음성 데이터의 크기를 증폭시킬 수 있다. 후처리 프로세서(260)는 변환된 출력 음성 데이터를 스피커 또는 통신부(270) 중 적어도 하나로 출력할 수 있다.
통신부(270)는 텍스트-음성 합성 장치(200)가 외부 장치와 신호 또는 데이터를 송수신하도록 구성될 수 있다. 외부 장치는 도 1의 텍스트-음성 합성 단말기(100)를 포함할 수 있다. 이와 달리, 외부장치는 다른 텍스트-음성 합성 장치를 포함할 수 있다. 또는 외부 장치는 음성 데이터베이스를 포함한 임의의 장치일 수 있다.
일 실시예에 따르면, 통신부(270)는 외부 장치로부터 텍스트를 수신하도록 구성될 수 있다. 여기서, 텍스트는 단일 인공 신경망 텍스트-음성 합성 모델의 학습을 위해 사용될 학습 텍스트를 포함할 수 있다. 이와 달리, 텍스트는 사용자 단말기로부터 수신된 입력 텍스트를 포함할 수 있다. 이러한 텍스트는 인코더(240) 또는 디코더(250) 중 적어도 하나에 제공될 수 있다.
일 실시예에서, 통신부(270)는 외부 장치부터 화자의 발성 특징을 수신할 수 있다. 통신부(270)는 외부 장치로부터 화자의 음성 신호 또는 샘플을 수신하여 발성 특징 추출부(210)로 송신할 수 있다.
통신부(270)는 사용자 단말기로부터 입력된 정보를 수신할 수 있다. 예를 들어, 통신부(270)는 화자의 발성 특징을 조절하기 위한 입력 정보를 수신하고, 수신된 입력 정보를 발성 특징 조절부(220)에 제공할 수 있다.
통신부(270)는 임의의 신호 또는 데이터를 외부장치에 송신할 수 있다. 예를 들어, 통신부(270)는 생성된 출력 음성과 관련된 정보, 즉, 출력 음성 데이터를 외부장치로 송신할 수 있다. 또한, 생성된 단일 인공 신경망 텍스트-음성 합성 모델은 통신부(270)를 통해 텍스트-음성 합성 단말기(100) 또는 다른 텍스트-음성 합성 장치에 송신될 수 있다.
일 실시예에 따르면, 텍스트-음성 합성 장치(200)는 입출력부(I/O 장치; 미도시)를 더 포함할 수 있다. 입출력부는 사용자로부터 입력을 직접 수신할 수 있다. 또한, 입출력부는 사용자에게 음성, 영상 또는 텍스트 중 적어도 하나를 출력할 수 있다.
도 3은 본 개시의 일 실시예에 따른 텍스트-음성 합성 방법을 나타낸 흐름도이다.
먼저, 310 단계에서, 텍스트-음성 합성 장치(200)는 복수의 학습 텍스트 및 복수의 학습 텍스트에 대응되는 음성 데이터에 기초하여 기계학습을 수행하여 생성된 단일 인공 신경망 텍스트-음성 합성(text-to-speech synthesis) 모델을 생성하는 단계를 수행할 수 있다. 텍스트-음성 합성 장치(200)는 320 단계에서, 입력 텍스트를 수신하는 단계를 수행할 수 있다. 단계 330에서, 텍스트-음성 합성 장치(200)는 화자의 발성 특징을 수신하는 단계를 수행할 수 있다. 텍스트-음성 합성 장치(200)는 화자의 발성 특징을 미리 학습된 텍스트-음성 합성 모델에 입력하여, 화자의 발성 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 단계 340에서 수행할 수 있다.
이하에서는 도 4와 함께 텍스트-음성 합성 방법을 보다 자세히 설명한다.
도 4는 본 개시의 일 실시예에 따른 텍스트-음성 합성 장치(400)를 나타낸 도면이다. 도 4의 텍스트-음성 합성 장치(400)는 도 2의 텍스트-음성 합성 장치(200)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 텍스트-음성 합성 장치(400)는 발성 특징 추출부(410), 음성 데이터베이스(430), 통신부(470), 인코더(440) 및 디코더(450)를 포함할 수 있다. 도 4의 발성 특징 추출부(410)는 도 2 의 발성 특징 추출부(210)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 도 4의 음성 데이터베이스(430)는 도 2의 음성 데이터베이스(230)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 도 4의 통신부(470)는 도 2의 통신부(270)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 도 4의 인코더(440)는 도 2의 인코더(240)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 도 4의 디코더(450)는 도 2의 디코더(250)의 구성과 동일 또는 유사한 구성을 포함할 수 있다. 도 2의 텍스트-음성 합성 장치(200)의 설명과 도 4의 텍스트-음성 합성 장치(400)의 설명 중 중복되는 내용은 생략된다.
일 실시예에 따르면, 텍스트-음성 합성 장치(400)는 화자의 음성 샘플 또는 신호를 수신할 수 있다. 예를 들어,
음성 샘플은 통신부(470)를 통해 사용자 단말기로부터 수신될 수 있다. 또 다른 예로서, 이러한 화자의 음성 샘플 또는 신호는 음성 데이터베이스를 포함한 텍스트-음성 합성 단말기로부터 수신될 수 있다. 이러한 화자의 음성 샘플 또는 신호는 발성 특징 추출부(410)으로 제공될 수 있다. 화자의 음성 샘플 또는 신호는 미리 결정된 시간 구간 내에 화자로부터 입력된 음성 데이터를 포함할 수 있다. 예를 들어, 미리 결정된 시간 구간은 화자가 자신의 음성을 입력할 수 있는 비교적 짧은 시간(예시: 수초, 수십초 또는 수십분 이내)을 나타낼 수 있다.
일 실시예에 따르면, 텍스트-음성 합성 장치(400)는 음성 합성의 대상인 입력 텍스트를 송신하도록 구성될 수 있다. 예를 들어, 입력 텍스트는 사용자 단말기로부터 통신부(470)를 통해 수신될 수 있다. 이와 달리, 텍스트-음성 합성 장치(400)는 입출력 장치(미도시)를 포함하고 있어서, 이러한 입력 텍스트를 입력받을 수 있다. 수신된 입력 텍스트는 발성 특징 추출부(410)으로 제공될 수 있다.
일 실시예에 따르면, 음성 데이터베이스(430)는 하나 이상의 화자의 음성 샘플 또는 신호를 저장하도록 구성될 수 있다. 이러한 화자의 음성 샘플 또는 신호는 발성 특징 추출부(410)에 제공될 수 있다.
발성 특징 추출부(410)는 음성 샘플 또는 신호로부터 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계를 수행할 수 있다. 발성 특징 추출부(410)는 운율 특징 추출부(412), 감정 특징 추출부(414) 및 음색 및 음높이 추출부(416)를 포함할 수 있다. 도 4에서의 발성 특징 추출부(410)는 운율 특징 추출부(412), 감정 특징 추출부(414) 및 음색 및 음높이 추출부(416)를 포함하도록 도시되어 있으나, 운율 특징 추출부(412), 감정 특징 추출부(414) 및 음색 및 음높이 추출부(416) 중 적어도 하나를 포함하도록 구성될 수 있다.
운율 특징 추출부(412)는 화자의 운율 특징을 나타내는 제1 서브 임베딩 벡터를 추출하도록 구성될 수 있다. 여기서, 운율 특징은, 발화 속도에 대한 정보, 발음 강세에 대한 정보, 휴지 구간에 대한 정보 및 음 높이에 대한 정보 중 적어도 하나를 포함할 수 있다. 추출된 화자의 운율 특징을 나타내는 제 1 서브 임베딩 벡터는 인코더(440) 또는 디코더(450) 중 적어도 하나로 제공될 수 있다. 일 실시예에 따르면, 인코더(440) 및 디코더(450)는 운율 특징을 나타내는 제1 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 운율 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성할 수 있다.
감정 특징 추출부(414) 화자의 감정 특징을 나타내는 제2 서브 임베딩 벡터를 추출하도록 구성될 수 있다. 여기서, 감정 특징은 화자의 발화 내용에 내재된 감정에 대한 정보를 포함할 수 있다. 예를 들어, 감정 특징은 미리 정해진 미리 결정된 감정에 한정되지 않고, 화자의 음성에 내재되어 있는 하나 이상의 감정의 각각에 대한 정도 및/또는 내재된 감정들의 조합 등의 정보를 포함할 수 있다. 추출된 화자의 감정 특징을 나타내는 제2 서브 임베딩 벡터는 인코더(440) 또는 디코더(450) 중 적어도 하나로 제공될 수 있다. 일 실시예에 따르면, 인코더(440) 및 디코더(450)는 감정 특징을 나타내는 제2 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 감정 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성할 수 있다.
음색 및 음높이 추출부(416)는 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 추출하도록 구성될 수 있다. 추출된 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터는 인코더(440) 또는 디코더(450) 중 적어도 하나로 제공될 수 있다. 일 실시예에 따르면, 인코더(440) 및 디코더(450)는 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 화자의 음색 및 음 높이에 대한 특징이 반영된 입력 텍스트에 대한 출력 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 인코더(440)는 추출된 화자의 발성 특징을 나타내는 임베딩 벡터를 수신할 수 있다. 인코더(440)는 미리 기계 학습된 하나 이상의 화자의 발성 특징을 나타내는 임베딩 벡터 및 수신된 화자의 발성 특징을 나타내는 임베딩 벡터에 기초하여 단일 인공 신경망 텍스트-음성 합성 모델을 생성 또는 갱신함으로써, 보다 유사한 화자의 음성을 합성할 수 있다.
도 4에는 하나의 화자의 음성 샘플 또는 신호로부터 감정 특징, 운율 특징 또는 음성 및 음높이 중 적어도 하나를 추출하여 음성을 합성하는 것으로 도시되어 있으나, 이에 한정되지 않는다. 다른 실시예에서, 감정 특징, 운율 특징 또는 음성 및 음높이 중 적어도 하나가 다른 화자의 음성 샘플 또는 신호로부터 추출될 수도 있다. 예를 들어, 발성 특징 추출부(410)는 제1 화자의 음성 샘플 또는 신호를 수신하고, 수신된 제1 화자의 음성 샘플 또는 신호로부터 감정 특징 및 운율 특징을 추출하되, 제2 화자의 음성 샘플 또는 신호(예시: 유명인의 음성)를 수신하고, 수신된 제2 화자의 음성 샘플 또는 신호로부터 음색 및 음높이 특징을 추출할 수 있다. 이렇게 추출된 두 화자의 발성 특징들은 음성 합성 시 인코더(440) 또는 디코더(450) 중 적어도 하나에 제공될 수 있다. 이에 따라, 합성되는 음성에는 제1 화자의 음성 샘플 또는 신호 내에 포함된 음성을 발화한 제1 화자의 감정과 운율이 반영되지만, 제2 화자(예시: 유명인)의 음성 샘플 또는 신호 내에 포함된 음성을 발화한 제2 화자의 음색 및 음높이가 반영될 수 있다.
도 5는 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
일 실시예에 따르면, 인코더(510)는 텍스트를 발음 정보로 생성하도록 구성될 수 있다. 또한 생성된 발음 정보는 어텐션 모듈를 포함한 디코더(520)에 제공되고, 디코더(520)는 이러한 발음 정보를 음성으로 생성하도록 구성될 수 있다.
인코더(510)는 입력 텍스트를 문자 임베딩(character embedding)로 변환하여 생성할 수 있다. 인코더(510)에서, 생성된 문자 임베딩은 완전연결층(fully-connected layer)을 포함한 프리넷(pre-net)에 통과될 수 있다. 또한, 인코더(510)는 프리넷(pre-net)으로부터의 출력을 CBHG 모듈에 제공하여, 도 5에 도시된 바와 같이, 인코더의 숨겨진 상태들(Encorder hidden states) ei을 출력할 수 있다. 예를 들어, CBHG 모듈은 1차원 컨볼루션 뱅크(1D convolution bank), 맥스 풀링(max pooling), 하이웨이 네트워크(highway network), 양방향 GRU(bidirectional gated recurrent unit)를 포함할 수 있다.
디코더(520)는, 완전연결층으로 구성된 프리넷과 GRU(gated recurrnt unit)로를 포함한 어텐션(attention) RNN(recurrent neural network), 레지듀얼 GRU(residual GRU)를 포함한 디코더 RNN(decoder RNN)을 포함할 수 있다. 예를 들어, 디코더(520)로부터의 출력은 멜스케일 스펙트로그램(mel-scale spectrogram)으로 표현될 수 있다.
디코더(520)의 어텐션 RNN 및 디코더 RNN은 음성의 화자에 해당하는 정보를 수신할 수 있다. 예를 들어 디코더(520)는 원-핫 화자 ID 벡터(521)를 수신할 수 있다. 디코더(520)는 원-핫 화자 ID 벡터(521)에 기초하여 화자 임베딩 벡터(522)를 생성할 수 있다. 디코더(520)의 어텐션 RNN 및 디코더 RNN은 화자 임베딩 벡터(522)를 수신하여, 주어 화자마다 다르게 출력 음성 데이터를 생성할 수 있도록, 단일 인공 신경망 텍스트-음성 합성 모델을 갱신할 수 있다.
또한, 디코더(520)는 인코더(510)와 마찬가지로 단일 인공 신경망 텍스트-음성 합성 모델을 생성 또는 갱신하기 위해서, 입력 텍스트, 화자와 관련된 정보 및 입력 텍스트에 대응되는 음성 신호의 쌍으로 존재하는 데이터베이스를 이용할 수 있다. 디코더(520)는 입력 텍스트, 화자와 관련된 정보를 각각 인공 신경망의 입력으로 하고 해당 입력 텍스트에 대응되는 음성 신호를 정답으로 하여 학습할 수 있다. 디코더(520)는 입력 텍스트와 화자와 관련된 정보를 갱신된 단일 인공 신경망 텍스트-음성 합성 모델에 적용하여, 해당 화자의 음성을 출력할 수 있다.
또한, 디코더(520)의 출력은 후처리 프로세서(530)에 제공될 수 있다. 후처리 프로세서(530)의 CBHG는 디코더(520)의 멜 스케일 스펙트로그램을 리니어스케일 스펙트로그램(linear-scale spectrogram)으로 변환하도록 구성될 있다. 예를 들어, 후처리 프로세서(530)의 CBHG의 출력 신호는 매그니튜드 스펙트로그램(magnitude spectrogram)를 포함할 수 있다. 후처리 프로세서(530)의 CBHG의 출력 신호의 위상(phase)은 그리핀-림(Griffin-Lim) 알고리즘을 통해 복원되고, 역 단시간 퓨리어 변환(inverse short-time fourier transform)될 수 있다. 후처리 프로세서(530)는 시간 도메인(time domain)의 음성 신호로 출력할 수 있다.
이러한 인공 신경망 기반의 텍스트-음성 합성 장치는, 텍스트와 음성 신호의 쌍으로 존재하는 대용량의 데이터 베이스를 이용하여 학습될 수 있다. 입력으로 텍스트를 넣고 나온 출력을 해당하는 정답 음성 신호와 비교하여 손실 함수(loss function)를 정의할 수 있다. 텍스트-음성 합성 장치는 손실 함수를 오차 역전파(error back propagation) 알고리즘을 통해 학습하여, 최종적으로 임의의 텍스트를 입력했을 때 원하는 음성 출력이 나오는 단일 인공 신경망 텍스트-음성 합성 모델을 얻을 수 있다.
도 6은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다.
도 6에서, 도 5에서 설명된 내용과 중복되는 내용은 생략된다. 도 6의 디코더(620)는 인코더(610)로부터 인코더의 숨겨진 상태들 ei를 수신할 수 있다. 또한, 도 6의 디코더(620)는 도 5의 디코더(520)와 다르게 화자의 음성 데이터(621)를 수신할 수 있다. 여기서 음성 데이터(621)는 미리 결정된 시간 구간(짧은 시간 구간, 예를 들어 수초, 수십초 또는 수십분) 내에 화자로부터 입력된 음성을 나타내는 데이터를 포함할 수 있다. 예를 들어, 화자의 음성 데이터(621)는 음성 스펙트로그램 데이터(예를 들어, log-mel-spectrogram)를 포함할 수 있다. 디코더(620)는 화자의 음성 데이터에 기초하여 화자의 발성 특징을 나타내는 화자의 발성특징 임베딩 벡터(622)를 획득할 수 있다. 디코더(620)는 화자의 발성특징 임베딩 벡터(622)를 어텐션 RNN 및 디코더 RNN에 제공될 수 있다.
도 5에 도시된 텍스트-음성 합성 시스템은, 화자의 발성 특징을 나타내는 정보로서 화자(speaker) ID를 사용하고, 이러한 화자 ID는 원-핫 벡터 (single-hot vector)로서 표현될 수 있다. 다만, 이러한 원-핫 화자 ID 벡터는 학습 데이터에 없는 새로운 화자에 대한 ID를 쉽게 확장할 수 없다. 이러한 텍스트-음성 합성 시스템은 원-핫 벡터로 표현된 화자에 대해서만 임베딩을 학습했으므로 새로운 화자의 임베딩을 얻을 수 있는 방법이 없다. 새로운 화자의 음성을 생성하려면 전체 TTS 모델을 재학습하거나 TTS 모델의 임베디드 레이어를 미세 조정해야 한다. 이러한 작업은 GPU가 장착된 장비를 이용하는 경우 시간이 많이 소요되는 프로세스에 해당된다. 이에 반하여, 도 6에 도시된 텍스트-음성 합성 시스템은, 새로운 화자 벡터를 생성하기 위하여 TTS 모델을 추가로 학습하거나 화자 임베딩 벡터를 수동으로 검색하는 것 없이 새로운 화자의 음성을 즉시 생성할 수 있는 TTS 시스템을 제공한다. 즉, 텍스트-음성 합성 시스템은 복수의 화자에 적응적으로 변경된 음성을 생성할 수 있다.
일 실시예에 따르면, 도 6에서는 입력 텍스트에 대한 음성 합성 시, 제1 화자의 음성 데이터(621)로부터 추출된 제1 화자의 발성특징 임베딩 벡터(622)가 디코더 RNN 및 어텐션 RNN에 입력되도록 구성되어 있으나, 도 5에서 도시된 제2 화자의 원-핫 화자 ID 벡터(521)도 함께 디코더 RNN 및 어텐션 RNN에 입력될 수 있다. 예를 들어, 발성특징 임베딩 벡터(622)와 연관된 제1 화자와 원-핫 화자 ID 벡터(521)와 연관된 제2 화자는 동일할 수 있다. 또 다른 예로서, 발성특징 임베딩 벡터(622)와 연관된 제1 화자와 원-핫 화자 ID 벡터(521)와 연관된 제2 화자는 상이할 수 있다. 이에 따라, 입력 텍스트에 대한 음성 합성 시, 제1 화자의 발성특징 임베딩 벡터(622) 및 제2 화자의 원-핫 화자 ID 벡터(521)가 함께 디코더 RNN 및 어텐션 RNN에 입력됨으로써, 입력 텍스트에 대응되는 제2 화자의 음성에 제1 화자의 발성특징 임베딩 벡터(622)에 포함된 운율 특징, 감정 특징, 또는 음색 및 음높이 특징 중 적어도 하나의 특징이 반영된 합성 음성이 생성될 수 있다. 즉, 원-핫 화자 ID 벡터(521)와 연관된 제2 화자의 목소리에 제1 화자의 발성 특징, 즉, 운율 특징, 감정 특징, 또는 음색 및 음높이 특징 중 적어도 하나의 특징이 반영된 합성 음성이 생성될 수 있다.
도 7는 본 개시의 일 실시예에 따른 복수의 화자의 각각을 구분할 수 있는 임베딩 벡터(622)를 추출하는 네트워크를 나타내는 도면이다.
일 실시예에 따르면, 도 6에 도시된 네트워크는 컨볼루션 네트워크(convulutional network) 및 맥스 오버 타임 풀링(max over time pooling)를 포함하고, log-Mel-spectrogram을 입력받아서 음성 샘플 또는 음성 신호로서 고정 차원 화자 임베딩 벡터를 추출할 수 있디. 여기서, 음성 샘플 또는 음성 신호는, 입력 텍스트에 해당하는 음성 데이터일 필요가 없으며 임의로 선택된 음성신호가 사용될 수 있다.
이러한 네트워크에서, 스펙트로그램이 이용되는데 제약이 없기 때문에 임의의 스펙트로그램이 이 네트워크에 삽입될 수 있다. 또한, 이를 통해 네트워크의 즉각적인 적응을 통해 새로운 화자를 위한 발성 특징을 나타내는 임베딕 벡터(622)을 생성할 수 있다. 입력 스펙트로그램은 다양한 길이를 가질 수 있지만, 예를 들어, 시간 축에 대해 길이가 1인 고정된 차원 벡터가 컨볼루션 레이어 끝단에 위치한 max-over-time 풀링 레이어에 입력될 수 있다.
도 7에서는 컨볼루션 네트워크(convulutional network) 및 맥스 오버 타임 풀링(max over time pooling)을 포함한 네트워크를 도시하고 있으나, 화자의 발성 특징을 추출하기 위하여 다양한 층을 포함한 네트워크를 구축할 수 있다. 예를 들어, 화자의 발성 특징 중 억양과 같이 시간에 따른 음성 특징 패턴의 변화를 나타내는 경우 RNN(Recurrent neural network)을 사용하여 특징을 추축하도록 네트워크를 구현할 수 있다.
도 8은 본 개시의 일 실시예에 따른 인공 신경망 기반의 텍스트-음성 합성 장치의 구성을 나타내는 도면이다. 도 8의 텍스트-음성 합성 장치에 대한 설명 중 도 5 또는 도 6의 텍스트-음성 합성 장치와 중복되는 설명은 생략한다.
도 8에 있어서, 인코더(810)는 입력 텍스트를 수신할 수 있다. 예를 들어, 인코더(810)는 입력 텍스트는 복수의 언어로 되어 있을 수 있다. 일 실시예에 따르면, 입력 텍스트는 하나 이상의 언어에서 사용되는 단어, 문구 또는 문장 중 적어도 하나를 포함할 수 있다. 예를 들어, "안녕하세요" 등과 같은 한국어 문장 또는 "How are you?" 등과 같은 영어 문장과 같은 텍스트를 입력받을 수 있다. 입력 텍스트가 수신되면, 인코더(810)는 수신된 입력 텍스트를 자모단위, 글자단위, 음소(phoneme) 단위로 분리할 수 있다. 다른 실시예에 따르면, 인코더(810)는 자모단위, 글자단위, 음소(phoneme) 단위로 분리된 입력 텍스트를 수신할 수 있다. 또 다른 실시예에 따르면, 인코더(810)는 입력 텍스트에 대한 글자 임베딩을 수신할 수 있다.
인코더(810)가 입력 텍스트 또는 분리된 입력 텍스트를 수신한 경우, 인코더(810)는 적어도 하나의 임베딩 레이어를 생성하도록 구성될 수 있다. 일 실시예에 따르면, 인코더(810)의 적어도 하나의 임베딩 레이어는 자모단위, 글자단위, 음소(phoneme)단위로 분리된 입력 텍스트에 기초하여 글자 임베딩을 생성할 수 있다. 예를 들어, 인코더(810)는 분리된 입력 텍스트에 기초하여 글자 임베딩을 획득하기 위하여 이미 학습된 기계 학습 모델(예를 들어, 확률 모델 또는 인공신경망 등)을 사용할 수 있다. 나아가, 인코더(810)는 기계 학습을 수행하면서 기계 학습 모델을 갱신할 수 있다. 기계 학습 모델이 갱신되는 경우, 분리된 입력 텍스트에 대한 글자 임베딩도 변경될 수 있다.
인코더(810)는 글자 임베딩을 완전연결층(fully-connected layer)으로 구성된 DNN(Deep Neural Network) 모듈에 통과시킬 수 있다. DNN은 일반적인 피드포워드 레이어(feedforward layer) 또는 선형 레이어(linear layer)를 포함할 수 있다.
인코더(810)는 DNN의 출력을 CNN(convolutional neural network) 또는 RNN(Recurrent Neural Network) 중 적어도 하나가 포함된 모듈에 제공할 수 있다. 또한, 인코더(810)는 디코더(820)에서 화자 음성 데이터에 기초하여 생성된 화자의 발성 특징 임베딩 벡터(s)를 수신할 수 있다. CNN은 컨볼루션 커널(convolution kernel) 사이즈에 따른 지역적 특성을 포착할 수 있는 반면에, RNN은 장기 의존성(long term dependency)을 포착할 수 있다. 인코더(810)는 DNN의 출력 및 화자의 발성 특징 임베딩 벡터(s)를 CNN 또는 RNN 중 적어도 하나에 입력하여 인코더(810)의 숨겨진 상태들(h)을 출력할 수 있다.
디코더(820)는 화자의 음성 데이터를 수신할 수 있다. 디코더(820)는 화자 음성 데이터에 기초하여 화자의 발성 특징 임베딩 벡터(s)를 생성할 수 있다. 임베딩 레이어는 화자의 음성 데이터를 수신할 수 있다. 임베딩 레이어는 화자의 음성 데이터에 기초하여 화자의 발성 특징을 생성할 수 있다. 여기서, 화자의 발성 특징은 개인별로 다른 특징을 가질 수 있다. 임베딩 레이어는 예를 들어, 기계 학습에 기초하여 화자 별 발성 특징을 구별할 수 있다. 예를 들어, 임베딩 레이어는 화자의 발성 특징을 나타내는 화자의 발성 특징 임베딩 벡터(s)를 생성할 수 있다. 일 실시예에 따르면, 디코더(820)는 화자의 발성 특징을 화자의 발성 특징 임베딩 벡터(s)로 변환하기 위하여 이미 학습된 기계 학습 모델을 사용할 수 있다. 디코더는 기계 학습을 수행하면서 기계 학습 모델을 갱신할 수 있다. 기계 학습 모델이 갱신되는 경우, 화자의 발성 특징를 나타내는 화자의 발성 특징 임베딩 벡터(s)도 변경될 수 있다. 예를 들어, 전술한 도 7의 음성 추출 네트워크를 이용하여 수신된 화자의 음성 데이터로부터 화자의 발성 특징을 추출될 수 있다.
화자의 발성 특징 임베딩 벡터(s)는 인코더(810)의 CNN 또는 RNN 중 적어도 하나로 출력될 수 있다. 또한 화자의 발성 특징 임베딩 벡터(s)는 디코더의 디코더 RNN 및 어텐션 RNN으로 출력될 수 있다.
디코더(820)의 어텐션(attention)은 인코더(810)로부터 인코더의 숨겨진 상태들(h)을 수신할 수 있다. 숨겨진 상태들(h)은 인코더(810)의 기계 학습 모델로부터의 결과값을 나타낼 수 있다. 예를 들어 숨겨진 상태들(h)은 본 개시의 일 실시예에 따른 단일 인공 신경망 텍스트-음성 합성 모델의 일부 구성 요소를 포함할 수 있다. 또한 디코더(820)의 어텐션은 어텐션 RNN으로부터 정보를 수신할 수 있다. 어텐션 RNN으로부터 수신한 정보는 디코더(820)가 이전 시간-단계(time-step)까지 어떤 음성을 생성했는지에 대한 정보를 포함할 수 있다. 또한 디코더(820)의 어텐션은 어텐션 RNN으로부터 수신한 정보 및 인코더의 정보에 기초하여 컨텍스트 벡터를 출력할 수 있다. 인코더(810)의 정보는 음성을 생성해야 할 입력 텍스트에 대한 정보를 포함할 수 있다. 컨텍스트 벡터는 현재 시간-단계(time-step)에서 입력 텍스트 중 어떤 부분으로부터 음성을 생성할지 결정하기 위한 정보를 포함할 수 있다. 예를 들어, 디코더(820)의 어텐션은 음성 생성의 초반에는 입력 텍스트의 앞부분에 기초하여 음성을 생성하고, 음성이 생성되어 감에 따라, 점점 입력 텍스트의 뒷부분에 기초하여 음성을 생성하도록 하는 정보를 출력할 수 있다.
디코더(820)는 화자의 발성 특징 임베딩 벡터(s)를 어텐션(attention) RNN 및 디코더(decoder) RNN에 입력하여, 화자 마다 다르게 디코딩을 하도록 인공 신경망의 구조를 구성할 수 있다. 일 실시예에 따르면, 텍스트-음성 합성 시스템은 인공 신경망을 학습하기 위해, 텍스트, 화자의 발성 특징 임베딩 벡터(s), 음성 신호의 쌍으로 존재하는 데이터베이스를 이용할 수 있다. 다른 실시예에서, 도 5에서 설명드린 바와 같이, 화자의 발성 특징을 나타내는 화자의 발성 특징 임베딩 벡터(s) 대신에 원-핫 벡터를 사용하여 데이터베이스가 구축될 수 있다. 또는, 화자의 발성 특징 임베딩 벡터(s)와 원-핫 벡터가 함께 사용되어 데이터베이스가 구축될 수 있다.
더미 프레임들은 이전 시간-단계(time-step)가 존재하지 않는 경우 디코더에 입력되는 프레임이다. RNN은 자동-회귀(autoregressive)로 기계학습을 할 수 있다. 즉, 직전 시간-단계(822)에서 출력된 r 프레임은 현재 시간-단계(823)의 입력이 될 수 있다. 최초 시간-단계(821)에서는 직전 시간-단계가 있을 수 없으므로, 디코더(820)는 최초 시간-단계의 기계 학습 네트워크에 더미 프레임을 입력할 수 있다.
일 실시예에 따르면, 디코더(820)는 완전연결층(fully-connected layer)으로 구성된 DNN을 포함할 수 있다. DNN은 일반적인 피드포워드 레이어(feedforward layer) 또는 선형 레이어(linear layer) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 디코더(820)는 GRU로 구성된 어텐션(attention) RNN을 포함할 수 있다. 어텐션 RNN은 어텐션에서 사용될 정보를 출력하는 레이어이다. 어텐션에 대해서는 위에서 이미 설명되었으므로 자세한 설명은 생략한다.
디코더(820)는 레지듀얼(residual) GRU로 구성된 디코더(decoder) RNN을 포함할 수 있다. 디코더 RNN은 어텐션으로부터 입력 텍스트의 위치 정보를 수신할 수 있다. 즉, 위치 정보는 디코더(820)가 입력 텍스트의 어떤 위치를 음성으로 변환하고 있는지에 관한 정보를 포함할 수 있다. 디코더 RNN은 어텐션 RNN으로부터 정보를 수신할 수 있다. 어텐션 RNN으로부터 수신한 정보는 디코더(820)가 이전 시간-단계(time-step)까지 어떤 음성을 생성했는지에 대한 정보를 포함할 수 있다. 디코더 RNN은 지금까지 생성한 음성에 이어질 다음 출력 음성을 생성할 수 있다. 예를 들어, 출력 음성은 멜 스펙트로그램 형태를 가질 수 있으며, 출력 음성은 r개의 프레임을 포함할 수 있다.
텍스트-음성 합성을 위하여 DNN, 어텐션 RNN 및 디코더 RNN의 동작은 반복적으로 수행될 수 있다. 예를 들어, 최초 시간-단계(821)에서 획득된 r개의 프레임은 다음 시간-단계(822)의 입력이 될 수 있다. 또한 시간-단계(822)에서 출력된 r개의 프레임은 다음 시간-단계(823)의 입력이 될 수 있다.
상술한 바와 같은 과정을 통하여 텍스트의 모든 단위에 대한 음성이 생성될 수 있다. 일 실시예에 따르면, 텍스트-음성 합성 시스템은 각각의 시간-단계마다 나온 멜 스펙트로그램을 시간 순으로 연결(concatenate)하여 전체 텍스트에 대한 멜 스펙트로그램의 음성을 획득할 수 있다. 전체 텍스트에 대한 멜 스펙트로그램의 음성은 보코더(830)로 출력될 수 있다.
본 개시의 일 실시예에 따른 보코더(830)의 CNN 또는 RNN은 인코더(810)의 CNN 또는 RNN과 유사한 동작을 할 수 있다. 즉, 보코더(830)의 CNN 또는 RNN은 지역적 특성과 장기 의존성을 포착할 수 있다. 이에 따라, 보코더(830)의 CNN 또는 RNN은 선형-스케일 스펙트로그램(linear-scale spectrogram)을 출력할 수 있다. 예를 들어, 선형-스케일 스펙트로그램은 크기 스펙트로그램(magnitude spectrogram)를 포함할 수 있다. 보코더(830)는 도 8에 도시된 바와 같이, 스펙트로그램의 위상(phase)을 Griffin-Lim 알고리즘을 통해 예측할 수 있다. 보코더(830)는 역 단기 푸리에 변환(Inverse Short-Time Fourier Transform)을 이용하여 시간 도메인(time domain)의 음성 신호를 출력할 수 있다.
본 개시의 다른 실시예에 따른 보코더는 기계학습모델에 기초하여 멜 스펙트로그램으로부터 음성 신호를 생성할 수 있다. 기계학습모델은 멜 스펙트로그램과 음성 신호 사이의 상관 관계를 기계학습한 모델을 포함할 수 있다. 예를 들어 WaveNet 또는 WaveGlow 등과 같은 인공 신경망 모델이 사용될 수 있다.
이러한 인공 신경망 기반의 음성 합성 장치는, 하나 이상의 언어로 이루어진 텍스트와 음성 신호의 쌍으로 존재하는 대용량의 데이터 베이스를 이용하여 학습된다. 일 실시예에 따르면, 음성 합성 장치는 텍스트를 수신하고, 출력된 음성 신호를 정답 음성 신호와 비교하여 손실 함수(loss function)을 정의할 수 있다. 음성 합성 장치는 손실 함수를 오차 역전파 (error back propagation) 알고리즘을 통해 학습하여, 최종적으로 임의의 텍스트를 입력했을 때 원하는 음성 출력이 나오는 인공 신경망을 얻을 수 있다.
이러한 인공 신경망 기반의 음성 합성 장치에서, 텍스트, 화자의 발성 특징 등이 인공 신경망에 입력되어 음성 신호가 출력될 수 있다. 텍스트-음성 합성 장치는 출력된 음성 신호와 정답 음성 신호를 비교하여 학습함으로써, 텍스트와 화자의 발성 특징을 수신할 때 해당 화자의 음성으로 텍스트를 읽은 출력 음성 데이터를 생성할 수 있다.
도 9은 본 개시의 일 실시예에 따른 발성 특징 조절부(900)의 동작을 나타낸 흐름도이다.
도 8의 발성 특징 조절부(900)는 도 2의 발성 특징 조절부(220)의 동일 또는 유사한 구성을 포함할 수 있다. 도 2와 중복되는 설명은 생략한다.
발성 특징 조절부(900)는 화자 정보를 나타내는 임베딩 벡터를 수신할 수 있다. 일 실시예에 따르면, 이러한 임베딩 벡터는 화자의 발성 특징에 대한 임베딩 벡터를 포함할 수 있다. 예를 들어, 화자 정보에 대한 임베딩 벡터는 화자의 발성 특징 중 서로 직교하는 복수의 서브 임베딩 벡터의 가중합으로 나타낼 수 있다.
발성 특징 조절부(900)는 수신된 화자 정보에 대한 임베딩 벡터의 내재 요소를 분리할 수 있다. 예를 들어 발성 특징 조절부(900)는 화자 정보에 대한 임베딩 벡터에 기초하여 서로 직교하는 복수의 단위 임베딩 벡터를 획득할 수 있다. 일 실시예에 따르면, 임베딩 벡터에 내재된 요소를 분리하는 방법으로는 ICA (independent component analysis), IVA (independent vector analysis), sparse coding, IFA (independent factor analysis), ISA (independent subspace analysis), NMF (nonnegative matrix factorization) 등 다양한 방법이 있을 수 있다. 그리고 임베딩 벡터에 내재된 요소들이 분리가 될 수 있도록, 텍스트-음성 합성 장치는 화자 정보에 대한 임베딩 벡터를 학습할 때 텍스트-음성 합성 장치의 학습식에 정규화(regularization)를 수행할 수 있다. 텍스트-음성 합성 장치가 학습식에 정규화를 수행하여 기계학습을 하는 경우, 임베딩 벡터는 희소 벡터(sparse vector)로 학습될 수 있다. 이에 따라, 텍스트-음성 합성 장치는 희소 벡터로 학습된 임베딩 벡터에서, PCA(principle component analysis)를 이용하여, 내재된 요소를 정확하게 분리할 수 있다.
일 실시예에 따르면, 발성 특징 조절부(900)는 출력 음성 데이터에 대한 추가적인 입력을 수신하도록 구성될 수 있다. 발성 특징 조절부(900)는 추가적인 입력에 기초하여 화자의 발성 특징을 나타내는 임베딩 벡터를 수정할 수 있다. 예를 들어, 발성 특징 조절부(900)는 추가적인 입력에 기초하여 복수의 단위 임베딩 벡터에 대한 가중치를 변경할 수 있다.
일 실시예에서, 발성 특징 조절부(900)는 수신된 추가적인 입력을 기초로 화자의 발성 특징을 나타내는 임베딩 벡터를 수정하도록 구성될 수 있다. 예를 들어, 발성 특징 조절부(900)는 추가적인 입력에 따라 변경된 가중치를 복수의 단위 임베딩 벡터에 곱하여 더함으로써, 화자 정보에 대한 임베딩 벡터를 재합성할 수 있다. 발성 특징 조절부(900)는 변경된 화자 정보에 대한 임베딩 벡터를 출력할 수 있다. 텍스트-음성 합성 장치는 수정된 임베딩 벡터를 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 출력 음성 데이터를 추가적인 입력에 포함된 정보가 반영된 입력 텍스트에 대한 음성 데이터로 변환할 수 있다.
도 10은 본 개시의 일 실시예에 따라 출력 음성의 특성을 변경하는 사용자 인터페이스의 예시를 나타낸다.
텍스트-음성 합성 장치는 사용자로부터 텍스트 창에 입력된 텍스트를 수신할 수 있다. 도 10에 도시된 재생버튼이 선택되는 경우(예를 들어, 터치되거나 눌러지는 경우), 텍스트-음성 합성 장치는 입력된 텍스트에 대응되는 출력 음성 데이터를 생성하여 사용자 인터페이스를 포함하고 있는 사용자 단말기로 제공할 수 있다.
텍스트-음성 합성 장치는 사용자로부터 추가적인 입력을 수신할 수 있다. 출력 음성 데이터에 대한 추가적인 입력은, 성별에 대한 정보, 연령에 대한 정보, 지역별 억양에 대한 정보, 발성의 속도에 대한 정보 또는 음 높이 및 발성의 크기에 대한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 텍스트-음성 합성 장치는 현재 선택되거나 지정된 화자의 발성 특징을 통신부를 통해 사용자 단말기에 전송할 수 있으며, 현재 음성의 특징이, 도 9에 도시된 바와 같이, 사용자 단말기의 디스플레이부에 소정의 모양(예를 들어, 선, 다각형, 원형 등)으로 표시될 수 있다. 사용자는 입력부를 이용하여 성별에 대한 정보, 연령에 대한 정보, 지역별 억양에 대한 정보, 발성의 속도에 대한 정보, 음 높이 및 발성의 크기에 대한 정보 중 적어도 하나를 변경할 수 있으며, 사용자의 입력에 기초하여 변경된 출력 음성이 출력될 수 있다. 예를 들어, 사용자는 도 9에 도시된 바와 같이, 여성에 가까운 성별, 60대보다 10대에 가까운 나이, 충청 지방의 억양을 선택할 수 있다. 선택된 입력에 따라 현재 음성의 특징이 변경되어 사용자 단말기에 변경된 음성의 특징이 반영되거나 합성된 음성이 출력될 수 있다.
이상과 같이 여러 실시예들에 따라 화자 정보에 대한 임베딩 벡터 중에 내재된 요소들의 하나 이상을 변경하여 목소리의 특성을 변경하는 구성들을 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 다른 적절한 방식에 따라 구성할 수도 있다. 일 실시예에 따르면, 임베딩 벡터의 내재된 요소를 SSML(speech synthesis markup language)의 속성(attribute)으로 표현하여 변경할 수도 있다. 예를 들면 <gender value = “6”><region value = “3,4,5”>과 같이 SSML의 속성으로 표현할 수 있다.
도 11은 본 개시의 일 실시예에 따른 텍스트-음성 합성 시스템(1100)의 블록도이다.
도 11을 참조하면, 일 실시예에 따른 텍스트-음성 합성 시스템(1100)은 데이터 학습부(1110) 및 데이터 인식부(1120)를 포함할 수 있다. 데이터 학습부(1110)는 데이터를 입력하여 기계학습모델을 획득할 수 있다. 또한 데이터 인식부(302)는 데이터를 기계학습모델에 적용하여 출력 음성을 생성할 수 있다. 상술한 바와 같은 텍스트-음성 합성 시스템(1100)은 프로세서 및 메모리를 포함할 수 있다.
데이터 학습부(1110)는 텍스트에 대한 음성 학습할 수 있다. 데이터 학습부(1110)는 텍스트에 따라 어떤 음성을 출력할지에 관한 기준을 학습할 수 있다. 또한, 데이터 학습부(1110)는 어떤 음성의 특징을 이용하여 음성을 출력할지에 관한 기준을 학습할 수 있다. 음성의 특징은 음소의 발음, 사용자의 어조, 억양 또는 강세 중 적어도 하나를 포함할 수 있다. 데이터 학습부(1110)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 학습모델에 적용함으로써, 텍스트에 따른 음성을 학습할 수 있다.
데이터 인식부(1120)는 텍스트에 기초하여 텍스트에 대한 음성을 출력할 수 있다. 데이터 인식부(1120)는 학습된 데이터 학습모델을 이용하여, 소정의 텍스트로부터 음성을 출력할 수 있다. 데이터 인식부(1120)는 학습에 의한 미리 설정된 기준에 따라 소정의 텍스트(데이터)를 획득할 수 있다. 또한, 데이터 인식부(1120)는 획득된 데이터를 입력 값으로 하여 데이터 학습모델을 이용함으로써, 소정의 데이터에 기초한 음성을 출력할 수 있다. 또한, 획득된 데이터를 입력 값으로 하여 데이터 학습모델에 의해 출력된 결과 값은, 데이터 학습모델을 갱신하는데 이용될 수 있다.
데이터 학습부(1110) 또는 데이터 인식부(1120) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 학습부(1110) 또는 데이터 인식부(1120) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 이미 설명한 각종 전자 장치에 탑재될 수도 있다.
또한 데이터 학습부(1110) 및 데이터 인식부(1120)는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(1110) 및 데이터 인식부(1120) 중 하나는 전자 장치에 포함되고, 나머지 하나는 서버에 포함될 수 있다. 또한, 데이터 학습부(1110) 및 데이터 인식부(1120)는 유선 또는 무선으로 통하여, 데이터 학습부(1110)가 구축한 모델 정보를 데이터 인식부(1120)로 제공할 수도 있고, 데이터 인식부(1120)로 입력된 데이터가 추가 학습 데이터로써 데이터 학습부(1110)로 제공될 수도 있다.
한편, 데이터 학습부(1110) 또는 데이터 인식부(1120) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(1110) 및 데이터 인식부(1120) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction)을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 메모리 또는 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 이와 달리, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
본 개시의 일 실시예에 따른 데이터 학습부(1110)는 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 및 모델 평가부(1115)를 포함할 수 있다.
데이터 획득부(1111)는 기계학습에 필요한 데이터를 획득할 수 있다. 학습을 위해서는 많은 데이터가 필요하므로, 데이터 획득부(1111)는 복수의 텍스트 및 그에 대응되는 음성을 수신할 수 있다.
전처리부(1112)는 사용자의 심리 상태 판단을 위하여 획득된 데이터가 기계학습에 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(1112)는 후술할 모델 학습부(1114)가 이용할 수 있도록, 획득된 데이터를 미리 설정된 포맷으로 가공할 수 있다. 예를 들어 전처리부(1112)는 텍스트 및 음성을 형태소 분석하여 형태소 임베딩을 획득할 수 있다.
학습 데이터 선택부(1113)는 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 모델 학습부(1114)에 제공될 수 있다. 학습 데이터 선택부(1113)는 기 설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 또한, 학습 데이터 선택부(1113)는 후술할 모델 학습부(1114)에 의한 학습에 의해 기 설정된 기준에 따라 데이터를 선택할 수도 있다.
모델 학습부(1114)는 학습 데이터에 기초하여 텍스트에 따라 어떤 음성을 출력할 지에 관한 기준을 학습할 수 있다. 또한, 모델 학습부(1114)는 텍스트에 따라 음성을 출력하는 학습모델을 학습 데이터로써 이용하여 학습시킬 수 있다. 이 경우, 데이터 학습모델은 미리 구축된 모델을 포함할 수 있다. 예를 들어, 데이터 학습모델은 기본 학습 데이터(예를 들어, 샘플 이미지 등)을 입력 받아 미리 구축된 모델을 포함할 수 있다.
데이터 학습모델은, 학습모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 데이터 학습모델은, 예를 들어, 신경망(Neural Network)을 기반으로 하는 모델을 포함할 수 있다. 예컨대, Deep Neural Network (DNN), Recurrent Neural Network (RNN), Long Short-Term Memory models (LSTM), BRDNN (Bidirectional Recurrent Deep Neural Network), Convolutional Neural Networks (CNN) 등과 같은 모델이 데이터 학습모델로써 사용될 수 있으나, 이에 한정되지 않는다.
다양한 실시예에 따르면, 모델 학습부(1114)는 미리 구축된 데이터 학습모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 학습모델을 학습할 데이터 학습모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입 별로 기 분류되어 있을 수 있으며, 데이터 학습모델은 데이터의 타입 별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기 분류되어 있을 수 있다.
또한, 모델 학습부(1114)는, 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 학습모델을 학습시킬 수 있다.
또한, 모델 학습부(1114)는, 예를 들어, 학습 데이터를 입력 값으로 하는 지도 학습(supervised learning)을 통하여, 데이터 학습모델을 학습할 수 있다. 또한, 모델 학습부(1114)는, 예를 들어, 별다른 지도없이 상황 판단을 위해 필요한 데이터의 종류를 스스로 학습함으로써, 상황 판단을 위한 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 학습모델을 학습할 수 있다. 또한, 모델 학습부(1114)는, 예를 들어, 학습에 따른 상황 판단의 결과가 올바른 지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 학습모델을 학습할 수 있다.
또한, 데이터 학습모델이 학습되면, 모델 학습부(1114)는 학습된 데이터 학습모델을 저장할 수 있다. 이 경우, 모델 학습부(1114)는 학습된 데이터 학습모델을 데이터 인식부(1120)를 포함하는 전자 장치의 메모리에 저장할 수 있다. 또는, 모델 학습부(1114)는 학습된 데이터 학습모델을 전자 장치와 유선 또는 무선 네트워크로 연결되는 서버의 메모리에 저장할 수도 있다.
이 경우, 학습된 데이터 학습모델이 저장되는 메모리는, 예를 들면, 전자 장치의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.
모델 평가부(1115)는 데이터 학습모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(1114)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 학습모델을 평가하기 위한 기 설정된 데이터를 포함할 수 있다.
예를 들어, 모델 평가부(1115)는 평가 데이터에 대한 학습된 데이터 학습모델의 결과 중에서, 인식 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 학습모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 인식 결과를 출력하는 경우, 모델 평가부(1115)는 학습된 데이터 학습모델이 적합하지 않은 것으로 평가할 수 있다.
한편, 학습된 데이터 학습모델이 복수 개가 존재하는 경우, 모델 평가부(1115)는 각각의 학습된 동영상 학습모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 학습모델로써 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(1115)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 학습모델로써 결정할 수 있다.
한편, 데이터 학습부(1110) 내의 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 또는 모델 평가부(1115) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 또는 모델 평가부(1115) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 및 모델 평가부(1115)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 및 모델 평가부(1115) 중 일부는 전자 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 또는 모델 평가부(1115) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1111), 전처리부(1112), 학습 데이터 선택부(1113), 모델 학습부(1114) 또는 모델 평가부(1115) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 이와 달리, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
본 개시의 일 실시예에 따른 데이터 인식부(1120)는 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 및 모델 갱신부(1125)를 포함할 수 있다.
데이터 획득부(1121)는 음성을 출력하기 위해 필요한 텍스트를 획득할 수 있다. 반대로 데이터 획득부(1121)는 텍스트를 출력하기 위해 필요한 음성을 획득할 수 있다. 전처리부(1122)는 음성 또는 텍스트를 출력하기 위해 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(1122)는 후술할 인식 결과 제공부(1124)가 음성 또는 텍스트를 출력하기 위해 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.
인식 데이터 선택부(1123)는 전처리된 데이터 중에서 음성 또는 텍스트를 출력하기 위해 필요한 데이터를 선택할 수 있다. 선택된 데이터는 인식 결과 제공부(1124)에게 제공될 수 있다. 인식 데이터 선택부(1123)는 음성 또는 텍스트를 출력하기 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 인식 데이터 선택부(1123)는 모델 학습부(1114)에 의한 학습에 의해 기 설정된 기준에 따라 데이터를 선택할 수도 있다.
인식 결과 제공부(1124)는 선택된 데이터를 데이터 학습모델에 적용하여 음성 또는 텍스트를 출력할 수 있다. 인식 결과 제공부(1124)는 인식 데이터 선택부(1123)에 의해 선택된 데이터를 입력 값으로 이용함으로써, 선택된 데이터를 데이터 학습모델에 적용할 수 있다. 또한, 인식 결과는 데이터 학습모델에 의해 결정될 수 있다.
모델 갱신부(1125)는 인식 결과 제공부(1124)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 데이터 학습모델이 갱신되도록 할 수 있다. 예를 들어, 모델 갱신부(1125)는 인식 결과 제공부(1124)에 의해 제공되는 인식 결과를 모델 학습부(1114)에게 제공함으로써, 모델 학습부(1114)가 데이터 학습모델을 갱신하도록 할 수 있다.
한편, 데이터 인식부(1120) 내의 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 또는 모델 갱신부(1125) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 또는 모델 갱신부(1125) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 및 모델 갱신부(1125)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 및 모델 갱신부(1125) 중 일부는 전자 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 또는 모델 갱신부(1125) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1121), 전처리부(1122), 인식 데이터 선택부(1123), 인식 결과 제공부(1124) 또는 모델 갱신부(1125) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 이와 달리, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
이제까지 다양한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
Claims (10)
- 기계학습을 이용한 텍스트-음성 합성(text-to-speech synthesis) 방법으로서,
복수의 학습 텍스트 및 상기 복수의 학습 텍스트에 대응되는 음성 데이터에 기초하여 기계학습을 수행하여 생성된 단일 인공 신경망 텍스트-음성 합성(text-to-speech synthesis) 모델을 생성하는 단계;
입력 텍스트를 수신하는 단계;
화자의 발성 특징을 수신하는 단계; 및
상기 화자의 발성 특징을 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계
를 포함하는 하는 텍스트-음성 합성 방법.
- 제1항에 있어서,
상기 화자의 발성 특징을 수신하는 단계는,
음성 샘플을 수신하는 단계; 및
상기 음성 샘플로부터 상기 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 음성 샘플로부터 상기 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 상기 화자의 운율 특징을 나타내는 제1 서브 임베딩 벡터를 추출하는 단계를 포함하고, 여기서, 상기 운율 특징은, 발화 속도에 대한 정보, 발음 강세에 대한 정보, 휴지 구간에 대한 정보 또는 음 높이에 대한 정보 중 적어도 하나를 포함하고,
상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 상기 운율 특징을 나타내는 제1 서브 임베딩 벡터를 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 상기 화자의 운율 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 음성 샘플로부터 상기 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 상기 화자의 감정 특징을 나타내는 제2 서브 임베딩 벡터를 추출하는 단계를 포함하고, 여기서, 상기 감정 특징은 상기 화자의 발화 내용에 내재된 감정에 대한 정보를 포함하고,
상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 상기 감정 특징을 나타내는 제2 서브 임베딩 벡터를 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 상기 화자의 감정 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 음성 샘플로부터 상기 화자의 발성 특징을 나타내는 임베딩 벡터를 추출하는 단계는 상기 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 추출하는 단계를 포함하고,
상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는 상기 화자의 음색 및 음 높이에 대한 특징을 나타내는 제3 서브 임베딩 벡터를 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여 상기 화자의 음색 및 음 높이에 대한 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 화자의 발성 특징이 반영된 상기 입력 텍스트에 대한 출력 음성 데이터를 생성하는 단계는,
상기 출력 음성 데이터에 대한 추가적인 입력을 수신하는 단계;
상기 추가적인 입력에 기초하여 상기 화자의 발성 특징을 나타내는 임베딩 벡터를 수정하는 단계; 및
상기 수정된 임베딩 벡터를 상기 단일 인공 신경망 텍스트-음성 합성 모델에 입력하여, 상기 출력 음성 데이터를 상기 추가적인 입력에 포함된 정보가 반영된 상기 입력 텍스트에 대한 음성 데이터로 변환하는 단계
를 포함하는 텍스트-음성 합성 방법.
- 제6항에 있어서,
상기 출력 음성 데이터에 대한 추가적인 입력에 포함된 정보는, 성별에 대한 정보, 연령에 대한 정보, 지역별 억양에 대한 정보, 발성의 속도에 대한 정보, 음 높이 또는 발성의 크기에 대한 정보 중 적어도 하나를 포함하는 텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 음성 샘플을 수신하는 단계는,
미리 결정된 시간 구간 내에 상기 화자로부터 입력된 음성을 상기 음성 샘플로서 실시간으로 수신하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제2항에 있어서,
상기 음성 샘플을 수신하는 단계는,
미리 결정된 시간 구간 내에 상기 화자로부터 입력된 음성을 음성 데이터베이스로부터 수신하는 단계를 포함하는,
텍스트-음성 합성 방법.
- 제1항의 기계학습을 이용한 텍스트-음성 합성 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된, 컴퓨터 판독가능 저장매체.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2019/000512 WO2019139430A1 (ko) | 2018-01-11 | 2019-01-11 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
JP2020538659A JP7082357B2 (ja) | 2018-01-11 | 2019-01-11 | 機械学習を利用したテキスト音声合成方法、装置およびコンピュータ読み取り可能な記憶媒体 |
US16/682,438 US11514887B2 (en) | 2018-01-11 | 2019-11-13 | Text-to-speech synthesis method and apparatus using machine learning, and computer-readable storage medium |
KR1020220060838A KR102668866B1 (ko) | 2018-01-11 | 2022-05-18 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
JP2022081878A JP7355306B2 (ja) | 2018-01-11 | 2022-05-18 | 機械学習を利用したテキスト音声合成方法、装置およびコンピュータ読み取り可能な記憶媒体 |
US17/969,078 US20230067505A1 (en) | 2018-01-11 | 2022-10-19 | Text-to-speech synthesis method and apparatus using machine learning, and computer-readable storage medium |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180004066 | 2018-01-11 | ||
KR20180004066 | 2018-01-11 | ||
KR20180004235 | 2018-01-12 | ||
KR1020180004235 | 2018-01-12 | ||
KR1020180004234 | 2018-01-12 | ||
KR20180004234 | 2018-01-12 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220060838A Division KR102668866B1 (ko) | 2018-01-11 | 2022-05-18 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190085882A true KR20190085882A (ko) | 2019-07-19 |
KR102401512B1 KR102401512B1 (ko) | 2022-05-25 |
Family
ID=67511988
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190004186A KR102401512B1 (ko) | 2018-01-11 | 2019-01-11 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
KR1020220060838A KR102668866B1 (ko) | 2018-01-11 | 2022-05-18 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
KR1020240065414A KR20240078628A (ko) | 2018-01-11 | 2024-05-20 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220060838A KR102668866B1 (ko) | 2018-01-11 | 2022-05-18 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
KR1020240065414A KR20240078628A (ko) | 2018-01-11 | 2024-05-20 | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11514887B2 (ko) |
EP (1) | EP3739572A4 (ko) |
JP (2) | JP7082357B2 (ko) |
KR (3) | KR102401512B1 (ko) |
CN (1) | CN111587455B (ko) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190096877A (ko) * | 2019-07-31 | 2019-08-20 | 엘지전자 주식회사 | 이종 레이블 간 발화 스타일 부여를 위한 인공지능 기반의 음성 샘플링 장치 및 방법 |
KR20190104269A (ko) * | 2019-07-25 | 2019-09-09 | 엘지전자 주식회사 | 발화 스타일 부여를 위한 인공지능 기반의 음성 샘플링 장치 및 방법 |
CN111081273A (zh) * | 2019-12-31 | 2020-04-28 | 湖南景程电子科技有限公司 | 一种基于声门波信号特征提取的语音情感识别方法 |
CN111859981A (zh) * | 2020-06-17 | 2020-10-30 | 北京百度网讯科技有限公司 | 语言模型获取及中文语义理解方法、装置及存储介质 |
KR20210017708A (ko) * | 2019-08-09 | 2021-02-17 | 주식회사 하이퍼커넥트 | 단말기 및 그것의 동작 방법 |
KR102222597B1 (ko) * | 2020-02-03 | 2021-03-05 | (주)라이언로켓 | 콜미 서비스를 위한 음성 합성 장치 및 방법 |
WO2021086065A1 (en) * | 2019-11-01 | 2021-05-06 | Samsung Electronics Co., Ltd. | Electronic device and operating method thereof |
KR20210052921A (ko) * | 2019-11-01 | 2021-05-11 | 엘지전자 주식회사 | 소음 환경에서의 음성 합성 |
CN112802448A (zh) * | 2021-01-05 | 2021-05-14 | 杭州一知智能科技有限公司 | 一种新音色生成的语音合成方法和*** |
WO2021096626A1 (en) * | 2019-11-13 | 2021-05-20 | Facebook Technologies, Llc | Generating a voice model for a user |
WO2021132786A1 (ko) * | 2019-12-23 | 2021-07-01 | 주식회사 마인즈랩 | 고령자를 위한 휴먼케어 로봇의 학습 데이터 처리 시스템 |
KR102274766B1 (ko) * | 2021-02-05 | 2021-07-08 | 미디어젠(주) | 외국어 초보 학습자를 위한 발음 예측 및 평가시스템 |
KR20210086744A (ko) * | 2019-12-30 | 2021-07-09 | (주)라이언로켓 | 딥러닝 기반의 영상 컨텐츠 제작 방법 및 장치 |
CN113901801A (zh) * | 2021-09-14 | 2022-01-07 | 燕山大学 | 基于深度学习的文本内容安全检测方法 |
WO2022031060A1 (ko) * | 2020-08-04 | 2022-02-10 | 한양대학교 산학협력단 | 인공 신경망을 이용한 다화자 음성 합성 방법 및 장치 |
KR102363469B1 (ko) * | 2020-08-14 | 2022-02-15 | 네오사피엔스 주식회사 | 텍스트에 대한 합성 음성 생성 작업을 수행하는 방법 |
WO2022045651A1 (ko) * | 2020-08-27 | 2022-03-03 | 네오사피엔스 주식회사 | 합성 음성을 화자 이미지에 적용하는 방법 및 시스템 |
KR20220050342A (ko) * | 2020-10-16 | 2022-04-25 | (주)디테일컴 | 음성 합성 서비스를 제공하는 장치, 단말기 및 방법 |
WO2022114451A1 (ko) * | 2020-11-30 | 2022-06-02 | 주식회사 마인즈랩 | 인공 신경망 학습 방법과 이를 이용한 발음 평가 방법 |
WO2022154341A1 (ko) * | 2021-01-13 | 2022-07-21 | 한양대학교산학협력단 | 음성 합성 시스템의 동작방법 |
KR20220107996A (ko) * | 2021-01-26 | 2022-08-02 | 네오사피엔스 주식회사 | 새로운 화자의 합성 음성을 생성하는 방법 및 시스템 |
WO2022164207A1 (ko) * | 2021-01-26 | 2022-08-04 | 네오사피엔스 주식회사 | 새로운 화자의 합성 음성을 생성하는 방법 및 시스템 |
WO2022196925A1 (ko) * | 2021-03-16 | 2022-09-22 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 개인화 음성 모델 생성 방법 |
US20220335925A1 (en) * | 2019-08-21 | 2022-10-20 | Dolby Laboratories Licensing Corporation | Systems and methods for adapting human speaker embeddings in speech synthesis |
US11580963B2 (en) | 2019-10-15 | 2023-02-14 | Samsung Electronics Co., Ltd. | Method and apparatus for generating speech |
WO2023085635A1 (ko) * | 2021-11-09 | 2023-05-19 | 엘지전자 주식회사 | 음성 합성 서비스 제공 방법 및 그 시스템 |
KR20230075340A (ko) * | 2021-11-22 | 2023-05-31 | 포항공과대학교 산학협력단 | 실시간 음색 및 운율 스타일 복제 가능한 음성합성 시스템 및 방법 |
US11763799B2 (en) | 2020-11-12 | 2023-09-19 | Samsung Electronics Co., Ltd. | Electronic apparatus and controlling method thereof |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
DE112014000709B4 (de) | 2013-02-07 | 2021-12-30 | Apple Inc. | Verfahren und vorrichtung zum betrieb eines sprachtriggers für einen digitalen assistenten |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10460227B2 (en) | 2015-05-15 | 2019-10-29 | Apple Inc. | Virtual assistant in a communication session |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK201770428A1 (en) | 2017-05-12 | 2019-02-18 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
US10303715B2 (en) | 2017-05-16 | 2019-05-28 | Apple Inc. | Intelligent automated assistant for media exploration |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
DK201870355A1 (en) | 2018-06-01 | 2019-12-16 | Apple Inc. | VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
CN109754778B (zh) * | 2019-01-17 | 2023-05-30 | 平安科技(深圳)有限公司 | 文本的语音合成方法、装置和计算机设备 |
US11062691B2 (en) * | 2019-05-13 | 2021-07-13 | International Business Machines Corporation | Voice transformation allowance determination and representation |
US11227599B2 (en) | 2019-06-01 | 2022-01-18 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11908457B2 (en) * | 2019-07-03 | 2024-02-20 | Qualcomm Incorporated | Orthogonally constrained multi-head attention for speech tasks |
CN114175143A (zh) * | 2019-08-03 | 2022-03-11 | 谷歌有限责任公司 | 控制端到端语音合成***中的表达性 |
JP7336135B2 (ja) * | 2019-08-19 | 2023-08-31 | 大学共同利用機関法人情報・システム研究機構 | 音声合成装置 |
US11151979B2 (en) * | 2019-08-23 | 2021-10-19 | Tencent America LLC | Duration informed attention network (DURIAN) for audio-visual synthesis |
US11017763B1 (en) * | 2019-12-12 | 2021-05-25 | Amazon Technologies, Inc. | Synthetic speech processing |
US11593984B2 (en) * | 2020-02-07 | 2023-02-28 | Apple Inc. | Using text for avatar animation |
US11367431B2 (en) * | 2020-03-13 | 2022-06-21 | Amazon Technologies, Inc. | Synthetic speech processing |
CN111508470B (zh) * | 2020-04-26 | 2024-04-12 | 北京声智科技有限公司 | 一种语音合成模型的训练方法及装置 |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
CN112652315B (zh) * | 2020-08-03 | 2024-08-16 | 昆山杜克大学 | 基于深度学习的汽车引擎声实时合成***及方法 |
GB2601102B (en) * | 2020-08-28 | 2023-12-27 | Spotify Ab | A text-to-speech synthesis method and system, and a method of training a text-to-speech synthesis system |
US11341953B2 (en) * | 2020-09-21 | 2022-05-24 | Amazon Technologies, Inc. | Synthetic speech processing |
CN111968679B (zh) * | 2020-10-22 | 2021-01-29 | 深圳追一科技有限公司 | 情感识别方法、装置、电子设备及存储介质 |
CN112309366B (zh) * | 2020-11-03 | 2022-06-14 | 北京有竹居网络技术有限公司 | 语音合成方法、装置、存储介质及电子设备 |
CN112365880B (zh) * | 2020-11-05 | 2024-03-26 | 北京百度网讯科技有限公司 | 语音合成方法、装置、电子设备及存储介质 |
CN112397083B (zh) * | 2020-11-13 | 2024-05-24 | Oppo广东移动通信有限公司 | 语音处理方法及相关装置 |
CN112365874B (zh) * | 2020-11-17 | 2021-10-26 | 北京百度网讯科技有限公司 | 语音合成模型的属性注册、装置、电子设备与介质 |
CN112866586B (zh) * | 2021-01-04 | 2023-03-07 | 北京中科闻歌科技股份有限公司 | 一种视频合成方法、装置、设备及存储介质 |
CN112668341B (zh) * | 2021-01-08 | 2024-05-31 | 深圳前海微众银行股份有限公司 | 文本正则化方法、装置、设备和可读存储介质 |
CN113053353B (zh) * | 2021-03-10 | 2022-10-04 | 度小满科技(北京)有限公司 | 一种语音合成模型的训练方法及装置 |
EP4310835A1 (en) * | 2021-03-16 | 2024-01-24 | Samsung Electronics Co., Ltd. | Electronic device and personalized text-to-speech model generation method by electronic device |
US11900914B2 (en) | 2021-06-07 | 2024-02-13 | Meta Platforms, Inc. | User self-personalized text-to-speech voice generation |
CN113539237A (zh) * | 2021-07-15 | 2021-10-22 | 思必驰科技股份有限公司 | 语音合成方法、电子设备及存储介质 |
US20230037892A1 (en) * | 2021-07-28 | 2023-02-09 | Xinapse Co., Ltd. | Method and apparatus for generating speech training data |
CN113571039B (zh) * | 2021-08-09 | 2022-04-08 | 北京百度网讯科技有限公司 | 语音转换方法、***、电子设备及可读存储介质 |
CN113838452B (zh) | 2021-08-17 | 2022-08-23 | 北京百度网讯科技有限公司 | 语音合成方法、装置、设备和计算机存储介质 |
CN113838453B (zh) * | 2021-08-17 | 2022-06-28 | 北京百度网讯科技有限公司 | 语音处理方法、装置、设备和计算机存储介质 |
CN113851108A (zh) * | 2021-09-26 | 2021-12-28 | 平安科技(深圳)有限公司 | 文本转语音方法、装置、计算机设备及存储介质 |
US20230097338A1 (en) * | 2021-09-28 | 2023-03-30 | Google Llc | Generating synthesized speech input |
WO2023112095A1 (ja) * | 2021-12-13 | 2023-06-22 | 日本電信電話株式会社 | 音声合成装置、音声合成方法、及びプログラム |
CN114038484B (zh) * | 2021-12-16 | 2024-01-30 | 游密科技(深圳)有限公司 | 语音数据处理方法、装置、计算机设备和存储介质 |
CN115630651B (zh) * | 2022-10-24 | 2023-06-02 | 北京百度网讯科技有限公司 | 文本生成方法和文本生成模型的训练方法、装置 |
CN117153144B (zh) * | 2023-10-31 | 2024-02-06 | 杭州宇谷科技股份有限公司 | 基于端计算的电池信息语音播报方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140120560A (ko) * | 2013-04-03 | 2014-10-14 | 삼성전자주식회사 | 통역 장치 제어 방법, 통역 서버의 제어 방법, 통역 시스템의 제어 방법 및 사용자 단말 |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2898568B2 (ja) * | 1995-03-10 | 1999-06-02 | 株式会社エイ・ティ・アール音声翻訳通信研究所 | 声質変換音声合成装置 |
JP3914612B2 (ja) * | 1997-07-31 | 2007-05-16 | 株式会社日立製作所 | 通信システム |
JP2002023777A (ja) * | 2000-06-26 | 2002-01-25 | Internatl Business Mach Corp <Ibm> | 音声合成システム、音声合成方法、サーバ、記憶媒体、プログラム伝送装置、音声合成データ記憶媒体、音声出力機器 |
JP2002258885A (ja) * | 2001-02-27 | 2002-09-11 | Sharp Corp | テキスト音声合成装置およびプログラム記録媒体 |
JP2002358092A (ja) * | 2001-06-01 | 2002-12-13 | Sony Corp | 音声合成システム |
US7280968B2 (en) * | 2003-03-25 | 2007-10-09 | International Business Machines Corporation | Synthetically generated speech responses including prosodic characteristics of speech inputs |
US20050187772A1 (en) * | 2004-02-25 | 2005-08-25 | Fuji Xerox Co., Ltd. | Systems and methods for synthesizing speech using discourse function level prosodic features |
JP2006189544A (ja) * | 2005-01-05 | 2006-07-20 | Matsushita Electric Ind Co Ltd | 通訳装置、通訳方法、通訳プログラムを記録した記録媒体、および通訳プログラム |
CN101176146B (zh) * | 2005-05-18 | 2011-05-18 | 松下电器产业株式会社 | 声音合成装置 |
ATE414975T1 (de) | 2006-03-17 | 2008-12-15 | Svox Ag | Text-zu-sprache-synthese |
CN101606190B (zh) * | 2007-02-19 | 2012-01-18 | 松下电器产业株式会社 | 用力声音转换装置、声音转换装置、声音合成装置、声音转换方法、声音合成方法 |
JP4966048B2 (ja) * | 2007-02-20 | 2012-07-04 | 株式会社東芝 | 声質変換装置及び音声合成装置 |
US8886537B2 (en) | 2007-03-20 | 2014-11-11 | Nuance Communications, Inc. | Method and system for text-to-speech synthesis with personalized voice |
JP4455610B2 (ja) * | 2007-03-28 | 2010-04-21 | 株式会社東芝 | 韻律パタン生成装置、音声合成装置、プログラムおよび韻律パタン生成方法 |
US8224652B2 (en) * | 2008-09-26 | 2012-07-17 | Microsoft Corporation | Speech and text driven HMM-based body animation synthesis |
US8321225B1 (en) * | 2008-11-14 | 2012-11-27 | Google Inc. | Generating prosodic contours for synthesized speech |
JP5293460B2 (ja) * | 2009-07-02 | 2013-09-18 | ヤマハ株式会社 | 歌唱合成用データベース生成装置、およびピッチカーブ生成装置 |
CN101751922B (zh) * | 2009-07-22 | 2011-12-07 | 中国科学院自动化研究所 | 基于隐马尔可夫模型状态映射的文本无关语音转换*** |
US9286886B2 (en) * | 2011-01-24 | 2016-03-15 | Nuance Communications, Inc. | Methods and apparatus for predicting prosody in speech synthesis |
US10453479B2 (en) * | 2011-09-23 | 2019-10-22 | Lessac Technologies, Inc. | Methods for aligning expressive speech utterances with text and systems therefor |
GB2501067B (en) * | 2012-03-30 | 2014-12-03 | Toshiba Kk | A text to speech system |
JP2014038282A (ja) * | 2012-08-20 | 2014-02-27 | Toshiba Corp | 韻律編集装置、方法およびプログラム |
US9484015B2 (en) * | 2013-05-28 | 2016-11-01 | International Business Machines Corporation | Hybrid predictive model for enhancing prosodic expressiveness |
GB2517503B (en) * | 2013-08-23 | 2016-12-28 | Toshiba Res Europe Ltd | A speech processing system and method |
US9195656B2 (en) * | 2013-12-30 | 2015-11-24 | Google Inc. | Multilingual prosody generation |
US9715873B2 (en) * | 2014-08-26 | 2017-07-25 | Clearone, Inc. | Method for adding realism to synthetic speech |
GB201416303D0 (en) * | 2014-09-16 | 2014-10-29 | Univ Hull | Speech synthesis |
WO2016042626A1 (ja) * | 2014-09-17 | 2016-03-24 | 株式会社東芝 | 音声処理装置、音声処理方法及びプログラム |
US9542927B2 (en) * | 2014-11-13 | 2017-01-10 | Google Inc. | Method and system for building text-to-speech voice from diverse recordings |
JP6622505B2 (ja) * | 2015-08-04 | 2019-12-18 | 日本電信電話株式会社 | 音響モデル学習装置、音声合成装置、音響モデル学習方法、音声合成方法、プログラム |
JP6483578B2 (ja) * | 2015-09-14 | 2019-03-13 | 株式会社東芝 | 音声合成装置、音声合成方法およびプログラム |
RU2632424C2 (ru) * | 2015-09-29 | 2017-10-04 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и сервер для синтеза речи по тексту |
CN105355193B (zh) * | 2015-10-30 | 2020-09-25 | 百度在线网络技术(北京)有限公司 | 语音合成方法和装置 |
JP6577159B1 (ja) * | 2016-09-06 | 2019-09-18 | ディープマインド テクノロジーズ リミテッド | ニューラルネットワークを使用したオーディオの生成 |
US11069335B2 (en) * | 2016-10-04 | 2021-07-20 | Cerence Operating Company | Speech synthesis using one or more recurrent neural networks |
US11321890B2 (en) * | 2016-11-09 | 2022-05-03 | Microsoft Technology Licensing, Llc | User interface for generating expressive content |
US10586079B2 (en) * | 2016-12-23 | 2020-03-10 | Soundhound, Inc. | Parametric adaptation of voice synthesis |
US10896669B2 (en) * | 2017-05-19 | 2021-01-19 | Baidu Usa Llc | Systems and methods for multi-speaker neural text-to-speech |
US20190019500A1 (en) * | 2017-07-13 | 2019-01-17 | Electronics And Telecommunications Research Institute | Apparatus for deep learning based text-to-speech synthesizing by using multi-speaker data and method for the same |
CN107481713B (zh) * | 2017-07-17 | 2020-06-02 | 清华大学 | 一种混合语言语音合成方法及装置 |
US10796686B2 (en) * | 2017-10-19 | 2020-10-06 | Baidu Usa Llc | Systems and methods for neural text-to-speech using convolutional sequence learning |
US10418025B2 (en) * | 2017-12-06 | 2019-09-17 | International Business Machines Corporation | System and method for generating expressive prosody for speech synthesis |
US11238843B2 (en) * | 2018-02-09 | 2022-02-01 | Baidu Usa Llc | Systems and methods for neural voice cloning with a few samples |
US10726826B2 (en) * | 2018-03-04 | 2020-07-28 | International Business Machines Corporation | Voice-transformation based data augmentation for prosodic classification |
US11797838B2 (en) * | 2018-03-13 | 2023-10-24 | Pinterest, Inc. | Efficient convolutional network for recommender systems |
US10923107B2 (en) * | 2018-05-11 | 2021-02-16 | Google Llc | Clockwork hierarchical variational encoder |
-
2019
- 2019-01-11 KR KR1020190004186A patent/KR102401512B1/ko active IP Right Grant
- 2019-01-11 CN CN201980007953.1A patent/CN111587455B/zh active Active
- 2019-01-11 JP JP2020538659A patent/JP7082357B2/ja active Active
- 2019-01-11 EP EP19738381.3A patent/EP3739572A4/en active Pending
- 2019-11-13 US US16/682,438 patent/US11514887B2/en active Active
-
2022
- 2022-05-18 KR KR1020220060838A patent/KR102668866B1/ko active IP Right Grant
- 2022-05-18 JP JP2022081878A patent/JP7355306B2/ja active Active
- 2022-10-19 US US17/969,078 patent/US20230067505A1/en active Pending
-
2024
- 2024-05-20 KR KR1020240065414A patent/KR20240078628A/ko active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140120560A (ko) * | 2013-04-03 | 2014-10-14 | 삼성전자주식회사 | 통역 장치 제어 방법, 통역 서버의 제어 방법, 통역 시스템의 제어 방법 및 사용자 단말 |
Non-Patent Citations (3)
Title |
---|
Arik et al., ‘Deep Voice 2: Multi-speaker neural text-to-speech’, arXiv:1705.08947v2, [cs.CL], 20 September 2017.* * |
Yaniv Taigman et al., ‘VoiceLoop: Voice fitting and synthesis cia a phonologocal loop’, arXiv:1707.06588v2, [cs.LG], 27 October 2017.* * |
Younggun Lee st al. ‘Emotional end-to-end neural speech synthesizer’, arXiv:1711.05447v2 [cs.SD], November 2017.* * |
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190104269A (ko) * | 2019-07-25 | 2019-09-09 | 엘지전자 주식회사 | 발화 스타일 부여를 위한 인공지능 기반의 음성 샘플링 장치 및 방법 |
US11107456B2 (en) | 2019-07-25 | 2021-08-31 | Lg Electronics Inc. | Artificial intelligence (AI)-based voice sampling apparatus and method for providing speech style |
US11056096B2 (en) | 2019-07-31 | 2021-07-06 | Lg Electronics Inc. | Artificial intelligence (AI)-based voice sampling apparatus and method for providing speech style in heterogeneous label |
KR20190096877A (ko) * | 2019-07-31 | 2019-08-20 | 엘지전자 주식회사 | 이종 레이블 간 발화 스타일 부여를 위한 인공지능 기반의 음성 샘플링 장치 및 방법 |
KR20210017708A (ko) * | 2019-08-09 | 2021-02-17 | 주식회사 하이퍼커넥트 | 단말기 및 그것의 동작 방법 |
US11615777B2 (en) | 2019-08-09 | 2023-03-28 | Hyperconnect Inc. | Terminal and operating method thereof |
US20220335925A1 (en) * | 2019-08-21 | 2022-10-20 | Dolby Laboratories Licensing Corporation | Systems and methods for adapting human speaker embeddings in speech synthesis |
US11929058B2 (en) * | 2019-08-21 | 2024-03-12 | Dolby Laboratories Licensing Corporation | Systems and methods for adapting human speaker embeddings in speech synthesis |
US11580963B2 (en) | 2019-10-15 | 2023-02-14 | Samsung Electronics Co., Ltd. | Method and apparatus for generating speech |
WO2021086065A1 (en) * | 2019-11-01 | 2021-05-06 | Samsung Electronics Co., Ltd. | Electronic device and operating method thereof |
KR20210052921A (ko) * | 2019-11-01 | 2021-05-11 | 엘지전자 주식회사 | 소음 환경에서의 음성 합성 |
US11942077B2 (en) | 2019-11-01 | 2024-03-26 | Samsung Electronics Co., Ltd. | Electronic device and operating method thereof |
US11475878B2 (en) | 2019-11-01 | 2022-10-18 | Samsung Electronics Co., Ltd. | Electronic device and operating method thereof |
WO2021096626A1 (en) * | 2019-11-13 | 2021-05-20 | Facebook Technologies, Llc | Generating a voice model for a user |
US11430424B2 (en) | 2019-11-13 | 2022-08-30 | Meta Platforms Technologies, Llc | Generating a voice model for a user |
KR20210081186A (ko) * | 2019-12-23 | 2021-07-01 | 주식회사 마인즈랩 | 고령자를 위한 휴먼케어 로봇의 학습 데이터 처리 시스템 |
WO2021132786A1 (ko) * | 2019-12-23 | 2021-07-01 | 주식회사 마인즈랩 | 고령자를 위한 휴먼케어 로봇의 학습 데이터 처리 시스템 |
KR20210086744A (ko) * | 2019-12-30 | 2021-07-09 | (주)라이언로켓 | 딥러닝 기반의 영상 컨텐츠 제작 방법 및 장치 |
CN111081273A (zh) * | 2019-12-31 | 2020-04-28 | 湖南景程电子科技有限公司 | 一种基于声门波信号特征提取的语音情感识别方法 |
KR102222597B1 (ko) * | 2020-02-03 | 2021-03-05 | (주)라이언로켓 | 콜미 서비스를 위한 음성 합성 장치 및 방법 |
CN111859981A (zh) * | 2020-06-17 | 2020-10-30 | 北京百度网讯科技有限公司 | 语言模型获取及中文语义理解方法、装置及存储介质 |
CN111859981B (zh) * | 2020-06-17 | 2024-03-26 | 北京百度网讯科技有限公司 | 语言模型获取及中文语义理解方法、装置及存储介质 |
WO2022031060A1 (ko) * | 2020-08-04 | 2022-02-10 | 한양대학교 산학협력단 | 인공 신경망을 이용한 다화자 음성 합성 방법 및 장치 |
US11908447B2 (en) | 2020-08-04 | 2024-02-20 | Iucf-Hyu (Industry-University Cooperation Foundation Hanyang University) | Method and apparatus for synthesizing multi-speaker speech using artificial neural network |
KR20220021898A (ko) * | 2020-08-14 | 2022-02-22 | 네오사피엔스 주식회사 | 텍스트에 대한 합성 음성 생성 작업을 수행하는 방법 |
WO2022034982A1 (ko) * | 2020-08-14 | 2022-02-17 | 네오사피엔스 주식회사 | 텍스트에 대한 합성 음성 생성 작업을 수행하는 방법 |
KR102363469B1 (ko) * | 2020-08-14 | 2022-02-15 | 네오사피엔스 주식회사 | 텍스트에 대한 합성 음성 생성 작업을 수행하는 방법 |
KR20220027598A (ko) * | 2020-08-27 | 2022-03-08 | 네오사피엔스 주식회사 | 합성 음성을 화자 이미지에 적용하는 방법 및 시스템 |
WO2022045651A1 (ko) * | 2020-08-27 | 2022-03-03 | 네오사피엔스 주식회사 | 합성 음성을 화자 이미지에 적용하는 방법 및 시스템 |
KR20220050342A (ko) * | 2020-10-16 | 2022-04-25 | (주)디테일컴 | 음성 합성 서비스를 제공하는 장치, 단말기 및 방법 |
US11763799B2 (en) | 2020-11-12 | 2023-09-19 | Samsung Electronics Co., Ltd. | Electronic apparatus and controlling method thereof |
KR20220076174A (ko) * | 2020-11-30 | 2022-06-08 | 주식회사 마인즈랩 | 인공 신경망 학습 방법과 이를 이용한 발음 평가 방법 |
WO2022114451A1 (ko) * | 2020-11-30 | 2022-06-02 | 주식회사 마인즈랩 | 인공 신경망 학습 방법과 이를 이용한 발음 평가 방법 |
CN112802448B (zh) * | 2021-01-05 | 2022-10-11 | 杭州一知智能科技有限公司 | 一种新音色生成的语音合成方法和*** |
CN112802448A (zh) * | 2021-01-05 | 2021-05-14 | 杭州一知智能科技有限公司 | 一种新音色生成的语音合成方法和*** |
WO2022154341A1 (ko) * | 2021-01-13 | 2022-07-21 | 한양대학교산학협력단 | 음성 합성 시스템의 동작방법 |
WO2022164207A1 (ko) * | 2021-01-26 | 2022-08-04 | 네오사피엔스 주식회사 | 새로운 화자의 합성 음성을 생성하는 방법 및 시스템 |
KR20220107996A (ko) * | 2021-01-26 | 2022-08-02 | 네오사피엔스 주식회사 | 새로운 화자의 합성 음성을 생성하는 방법 및 시스템 |
KR102274766B1 (ko) * | 2021-02-05 | 2021-07-08 | 미디어젠(주) | 외국어 초보 학습자를 위한 발음 예측 및 평가시스템 |
WO2022196925A1 (ko) * | 2021-03-16 | 2022-09-22 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 개인화 음성 모델 생성 방법 |
CN113901801A (zh) * | 2021-09-14 | 2022-01-07 | 燕山大学 | 基于深度学习的文本内容安全检测方法 |
CN113901801B (zh) * | 2021-09-14 | 2024-05-07 | 燕山大学 | 基于深度学习的文本内容安全检测方法 |
WO2023085635A1 (ko) * | 2021-11-09 | 2023-05-19 | 엘지전자 주식회사 | 음성 합성 서비스 제공 방법 및 그 시스템 |
KR20230075340A (ko) * | 2021-11-22 | 2023-05-31 | 포항공과대학교 산학협력단 | 실시간 음색 및 운율 스타일 복제 가능한 음성합성 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN111587455A (zh) | 2020-08-25 |
US20230067505A1 (en) | 2023-03-02 |
US11514887B2 (en) | 2022-11-29 |
JP2021511533A (ja) | 2021-05-06 |
KR102401512B1 (ko) | 2022-05-25 |
KR20220072811A (ko) | 2022-06-02 |
US20200082807A1 (en) | 2020-03-12 |
CN111587455B (zh) | 2024-02-06 |
JP7082357B2 (ja) | 2022-06-08 |
EP3739572A4 (en) | 2021-09-08 |
JP2022107032A (ja) | 2022-07-20 |
KR102668866B1 (ko) | 2024-05-23 |
JP7355306B2 (ja) | 2023-10-03 |
KR20240078628A (ko) | 2024-06-04 |
EP3739572A1 (en) | 2020-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102668866B1 (ko) | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 | |
US11929059B2 (en) | Method, device, and computer readable storage medium for text-to-speech synthesis using machine learning on basis of sequential prosody feature | |
KR102265972B1 (ko) | 다중 언어 텍스트-음성 합성 모델을 이용한 음성 번역 방법 및 시스템 | |
US11373633B2 (en) | Text-to-speech processing using input voice characteristic data | |
JP6777768B2 (ja) | 単語ベクトル化モデル学習装置、単語ベクトル化装置、音声合成装置、それらの方法、及びプログラム | |
WO2019139430A1 (ko) | 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 | |
KR20230043084A (ko) | 순차적 운율 특징을 기초로 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 | |
US11763797B2 (en) | Text-to-speech (TTS) processing | |
KR102062524B1 (ko) | 음성 인식과 번역 방법 및 그를 위한 단말 장치와 서버 | |
KR102418465B1 (ko) | 동화 낭독 서비스를 제공하는 서버, 방법 및 컴퓨터 프로그램 | |
Georgila | 19 Speech Synthesis: State of the Art and Challenges for the Future | |
CN118411979A (zh) | 合成语音的调整方法、训练方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |