KR20220120214A - 전자 장치 및 그 제어 방법 - Google Patents

전자 장치 및 그 제어 방법 Download PDF

Info

Publication number
KR20220120214A
KR20220120214A KR1020210024028A KR20210024028A KR20220120214A KR 20220120214 A KR20220120214 A KR 20220120214A KR 1020210024028 A KR1020210024028 A KR 1020210024028A KR 20210024028 A KR20210024028 A KR 20210024028A KR 20220120214 A KR20220120214 A KR 20220120214A
Authority
KR
South Korea
Prior art keywords
neural network
electronic device
network model
sample
text
Prior art date
Application number
KR1020210024028A
Other languages
English (en)
Inventor
박상준
주기현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210024028A priority Critical patent/KR20220120214A/ko
Priority to PCT/KR2021/012757 priority patent/WO2022181912A1/ko
Priority to US17/534,969 priority patent/US20220270588A1/en
Publication of KR20220120214A publication Critical patent/KR20220120214A/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/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • 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
    • G10L19/02Speech 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 using spectral analysis, e.g. transform vocoders or subband vocoders

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)

Abstract

전자 장치가 개시된다. 본 전자 장치는 통신 인터페이스, 제1 신경망 모델이 저장된 메모리 및 통신 인터페이스 및 메모리와 연결되어 전자 장치를 제어하는 프로세서를 포함하고, 프로세서는 외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보가 통신 인터페이스를 통해 수신되면, 압축 정보를 압축 해제하고, 압축 해제된 정보를 제1 신경망 모델에 입력하여 텍스트에 대응되는 사운드 정보를 획득하며, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.

Description

전자 장치 및 그 제어 방법 { ELECTRONIC APPARATUS AND CONTROL METHOD THEREOF }
본 개시는 전자 장치 및 그 제어 방법에 대한 것으로, 더욱 상세하게는 음성 합성을 수행하는 전자 장치 및 그 제어 방법에 대한 것이다.
또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공 지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.
전자 기술의 발달에 힘입어 다양한 유형의 디바이스들이 개발 및 보급되고 있으며, 특히 음성 합성을 수행하는 디바이스들이 보편화되고 있다.
음성 합성은 텍스트로부터 사람의 목소리를 구현해내는 기술로서, TTS(text to speech)라고도 불리며, 최근에는 신경망 모델을 이용한 Neural TTS가 개발되고 있다.
Neural TTS는 도 1a에 도시된 바와 같이, 프로소디(prosody) 신경망 모델 및 뉴럴 보코더(neural vocoder) 신경망 모델을 포함할 수 있다. 프로소디 신경망 모델은 텍스트를 입력받아 음성 피쳐(acoustic feature)를 출력하고, 뉴럴 보코더 신경망 모델은 음성 피쳐를 입력받아 사운드(waveform)을 출력할 수 있다. 여기서, 프로소디 신경망 모델은 성능 향상을 목적으로 하는 언어처리부를 더 포함할 수 있으며, 언어처리부는 텍스트 정규화(Text normalization), 발음열변환(G2P: Grapheme-to-Phoneme) 등의 모듈을 포함할 수 있다.
이러한 Neural TTS는 두 가지 방식으로 구현되고 있다. 첫 번째 방식은 도 1b에 도시된 바와 같이, 서버가 프로소디 신경망 모델 및 뉴럴 보코더 신경망 모델을 모두 저장하는 방식이다. 이 경우, 서버는 프로소디 신경망 모델 및 뉴럴 보코더 신경망 모델을 통해 사운드를 획득하고, 획득된 사운드를 인코딩하여 디바이스로 제공하며, 디바이스는 수신된 사운드를 디코딩하여 사운드를 획득할 수 있다.
두 번째 방식은 도 1c에 도시된 바와 같이, 디바이스가 프로소디 신경망 모델 및 뉴럴 보코더 신경망 모델을 모두 저장하는 방식이다. 이 경우, 서버가 합성할 텍스트를 생성 후 디바이스로 전송하거나, 디바이스가 합성할 텍스트를 생성할 수 있다. 그리고, 디바이스는 프로소디 신경망 모델 및 뉴럴 보코더 신경망 모델을 통해 텍스트로부터 사운드를 획득할 수 있다.
프로소디 신경망 모델은 학습에 사용된 화자의 목소리 특성을 가지고 있다. 즉, 프로소디 신경망 모델의 출력은 특정 화자의 목소리 특성을 가지는 음성 피쳐라고 할 수 있다. 반면, 뉴럴 보코더 신경망 모델은 주어진 음성 피쳐에 대응되는 음성 파형을 생성한다. 즉, 뉴럴 보코더 신경망 모델은 화자 특성에 상관없이 음성 파형을 생성할 수 있다. 프로소디 신경망 모델은 화자 종속적(speaker-dependent)이고, 뉴럴 보코더 신경망 모델은 화자 독립적(speaker-independent)이다.
따라서, 새로운 목소리의 TTS를 추가하려면, 프로소디 신경망 모델이 추가되거나 업데이트되어야 한다. 또한, Neural TTS에서는 발음 오류가 발생할 수 있는데, 이는 프로소디 신경망 모델이 음성 피쳐를 올바르게 추정하지 못하거나, 프로소디 신경망 모델에 포함된 언어처리부의 오류로 인한 것으로, 프로소디 신경망 모델의 업데이트가 필요하다. 반면, 뉴럴 보코더 신경망 모델은 주어진 음성 피쳐를 음성 파형으로 복원하는 기능만 담당하기 때문에 업데이트의 필요성이 적다.
첫 번째 방식에 의하면, 저사양의 디바이스를 이용할 수도 있고, 발음 오류 수정 등을 위한 프로소디 신경망 모델의 업데이트가 용이한 장점이 있다. 다만, 서버에서 획득된 사운드를 다시 인코딩 및 디코딩하기 때문에 음질이 저하되며, 사운드를 기 설정된 시간 단위로 인코딩하여 전송하기 때문에 딜레이가 발생하는 문제가 있다.
두 번째 방식에 의하면, 딜레이 없이 스트리밍 재생이 가능하고 인코딩 및 디코딩 과정이 없기 때문에 음질 저하가 없는 장점이 있으나, 저사양의 디바이스를 사용할 수 없고, 프로소디 신경망 모델의 업데이트가 어려운 문제가 있다.
그에 따라, 이상의 문제를 해결하기 위한 방법이 개발될 필요가 있다.
본 개시는 상술한 필요성에 따른 것으로, 본 개시의 목적은 저사양의 전자 장치에서도 고품질의 사운드를 제공하는 전자 장치 및 그 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치는 통신 인터페이스, 제1 신경망 모델이 저장된 메모리 및 상기 통신 인터페이스 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서를 포함하고, 상기 프로세서는 외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보가 상기 통신 인터페이스를 통해 수신되면, 상기 압축 정보를 압축 해제하고, 상기 압축 해제된 정보를 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며, 상기 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.
또한, 상기 프로세서는 상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 상기 통신 인터페이스를 통해 순차적으로 수신하고, 상기 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 상기 하나의 음성 피쳐 대신 기 설정된 값을 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며, 상기 제1 신경망 모델은 상기 기 설정된 값이 입력되면 상기 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델일 수 있다.
그리고, 상기 프로세서는 상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 상기 통신 인터페이스를 통해 순차적으로 수신하고, 상기 복수의 음성 피쳐 중 하나가 손상된 경우 상기 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 상기 손상된 음성 피쳐을 추정할 수 있다.
또한, 상기 복수의 샘플 음성 피쳐는 복수의 원본 음성 피쳐를 압축하고, 상기 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐일 수 있다.
그리고, 상기 제1 신경망 모델은 상기 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델이고, 상기 노이즈는 가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함할 수 있다.
또한, 상기 압축 정보는 상기 음성 피쳐를 양자화하여 획득된 정보일 수 있다.
그리고, 상기 압축 정보는 상기 텍스트가 제2 신경망 모델에 입력되어 획득된 상기 음성 피쳐가 압축된 정보이고, 상기 제2 신경망 모델은 복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델일 수 있다.
또한, 상기 복수의 샘플 음성 피쳐 각각은 사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득될 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 제1 전자 장치 및 제2 전자 장치를 포함하는 전자 시스템은 텍스트를 프로소디(prosody) 신경망 모델에 입력하여 상기 텍스트에 기초하여 음성 피쳐(acoustic feature)를 획득하고, 상기 음성 피쳐의 압축 정보를 획득하며, 상기 획득된 음성 피쳐를 상기 제2 전자 장치로 전송하는 제1 전자 장치 및 상기 제1 전자 장치로부터 상기 압축 정보가 수신되면 상기 압축 정보를 압축 해제하고, 상기 압축 해제된 정보를 뉴럴 보코더(neural vocoder) 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드를 획득하는 제2 전자 장치를 포함하며, 상기 프로소디 신경망 모델은 복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델이고, 상기 뉴럴 보코더 신경망 모델은 상기 복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 샘플 사운드 간 관계를 학습한 모델일 수 있다.
또한, 제1 전자 장치는 사용자 음성이 수신되면, 상기 사용자 음성으로부터 상기 사용자 음성에 대응되는 텍스트를 획득하고, 상기 텍스트를 상기 프로소디 신경망 모델에 입력할 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 전자 장치의 제어 방법은 외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보를 수신하는 단계, 상기 압축 정보를 압축 해제하는 단계 및 상기 압축 해제된 정보를 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하는 단계를 포함하며, 상기 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.
또한, 상기 수신하는 단계는 상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고, 상기 사운드 정보를 획득하는 단계는 상기 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 상기 하나의 음성 피쳐 대신 기 설정된 값을 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며, 상기 제1 신경망 모델은 상기 기 설정된 값이 입력되면 상기 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델일 수 있다.
그리고, 상기 수신하는 단계는 상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고, 상기 제어 방법은 상기 복수의 음성 피쳐 중 하나가 손상된 경우 상기 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 상기 손상된 음성 피쳐을 추정하는 단계를 더 포함할 수 있다.
또한, 상기 복수의 샘플 음성 피쳐는 복수의 원본 음성 피쳐를 압축하고, 상기 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐일 수 있다.
그리고, 상기 제1 신경망 모델은 상기 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델이고, 상기 노이즈는 가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함할 수 있다.
또한, 상기 압축 정보는 상기 음성 피쳐를 양자화하여 획득된 정보일 수 있다.
그리고, 상기 압축 정보는 상기 텍스트가 제2 신경망 모델에 입력되어 획득된 상기 음성 피쳐가 압축된 정보이고, 상기 제2 신경망 모델은 복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델일 수 있다.
또한, 상기 복수의 샘플 음성 피쳐 각각은 사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득될 수 있다.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 외부 전자 장치로부터 음성 피쳐(acoustic feature)의 압축 정보를 수신하고 신경망 모델을 이용하여 사운드를 획득하기 때문에, 코덱을 사용하여 사운드를 압축하고 사운드의 압축 정보를 수신한 후 압축을 해제하여 사운드를 획득하는 경우보다 고품질의 사운드를 획득할 수 있다.
또한, 외부 전자 장치는 음성 피쳐의 압축 정보를 전자 장치로 전송하기 때문에, 사운드의 압축 정보를 전송하는 경우보다 전송 과정의 딜레이 및 전송량을 줄일 수 있다.
그리고, 외부 전자 장치가 서버로 구현되는 경우, 텍스트로부터 음성 피쳐를 획득하기 위한 신경망 모델이 외부 전자 장치에 저장됨에 따라 신경망 모델의 업데이트가 용이할 수 있다.
도 1a 내지 도 1c는 종래 기술의 문제를 설명하기 위한 도면들이다.
도 2는 본 개시의 일 실시 예에 따른 전자 시스템을 도시한 도면이다.
도 3a는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도이다.
도 3b는 본 개시의 일 실시 예에 따른 전자 장치의 세부 구성을 나타내는 블럭도이다.
도 4는 본 개시의 일 실시 예에 따른 전자 장치와 외부 전자 장치의 동작을 설명하기 위한 도면이다.
도 5a 내지 도 5c는 본 개시의 다양한 실시 예에 따른 제1 신경망 모델의 학습 방법을 설명하기 위한 도면들이다.
도 6은 본 개시의 일 실시 예에 따른 양자화 동작을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따른 구현 예를 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.
본 명세서에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공 지능 전자 장치)를 지칭할 수 있다.
이하 첨부된 도면들을 참조하여 본 개시의 다양한 실시 예를 보다 상세하게 설명한다.
도 2는 본 개시의 일 실시 예에 따른 전자 시스템(1000)을 도시한 도면이다. 도 2에 도시된 바와 같이 전자 시스템(1000)은 전자 장치(100) 및 외부 전자 장치(200)를 포함한다.
전자 장치(100)는 음성 피쳐(acoustic feature)로부터 사운드 정보를 획득하는 장치로서, 스마트폰, 태블릿 PC, 웨어러블 기기 등일 수 있다. 다만, 이에 한정되는 것은 아니며, 전자 장치(100)는 음성 피쳐로부터 사운드 정보를 획득할 수 있는 장치라면 어떠한 장치라도 무방하다.
여기서, 음성 피쳐는 사운드의 짧은 구간(프레임) 내에서의 정적인 특성을 의미하며, 사운드를 short-time analysis한 후 구간 별로 음성 피쳐가 획득될 수 있다. 프레임은 10~20 msec로 설정될 수 있으나, 얼마든지 다른 시간 구간으로 설정될 수도 있다. 음성 피쳐의 예로서 Spectrum, Mel-spectrum, cepstrum, pitch lag, pitch correlation 등이 있으며, 이들 중 하나 또는 조합으로 사용될 수 있다.
예를 들어, 음성 피쳐는 257차 Spectrum, 80차 Mel-spectrum 또는 Cepstrum(20차) + pitch lag(1차) + pitch correlation(1차)와 같은 방식으로 설정될 수 있다. 좀더 구체적으로 예를 들어, shift size가 10 msec이고 80차 Mel-spenctrum을 음성 피쳐로 사용하는 경우, 1초의 사운드로부터 [100, 80] 차원의 음성 피쳐가 획득될 수 있으며, 여기서 [T, D]는 하기와 같은 의미를 포함한다.
[T, D] : T개 프레임, D차원 음성 피쳐
외부 전자 장치(200)는 텍스트로부터 음성 피쳐를 획득하는 장치로서, 서버와 같은 장치일 수 있다. 다만, 이에 한정되는 것은 아니며, 외부 전자 장치(200)는 데스크탑 PC, 스마트폰, 태블릿 PC, 웨어러블 기기 등일 수 있으며, 텍스트로부터 음성 피쳐를 획득할 수 있는 장치라면 어떠한 장치라도 무방하다.
외부 전자 장치(200)는 음성 피쳐를 압축하여 음성 피쳐의 압축 정보를 획득하고, 음성 피쳐의 압축 정보를 전자 장치(100)로 전송할 수 있다. 음성 피쳐는 사운드보다 용량이 작기 때문에 압축에 의한 딜레이가 감소하며, 전자 장치(100)로 전송될 데이터의 양도 줄어들게 된다. 또한, 전자 장치(100)에서 단순히 디코딩을 수행하는 것이 아니라, 후술할 신경망 모델을 이용한 사운드 획득 동작이 수행되어 사운드의 품질이 개선될 수 있다.
도 3a는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 나타내는 블록도이다. 전자 장치(100)는 도 3a에 도시된 바와 같이, 통신 인터페이스(110), 메모리(120) 및 프로세서(130)를 포함한다.
통신 인터페이스(110)는 다양한 유형의 통신방식에 따라 다양한 유형의 외부 장치와 통신을 수행하는 구성이다. 예를 들어, 전자 장치(100)는 통신 인터페이스(110)를 통해 외부 전자 장치(200)와 통신을 수행할 수 있다.
통신 인터페이스(110)는 와이파이 모듈, 블루투스 모듈, 적외선 통신 모듈 및 무선 통신 모듈 등을 포함할 수 있다. 여기서, 각 통신 모듈은 적어도 하나의 하드웨어 칩 형태로 구현될 수 있다.
와이파이 모듈, 블루투스 모듈은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행한다. 와이파이 모듈이나 블루투스 모듈을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. 적외선 통신 모듈은 시 광선과 밀리미터파 사이에 있는 적외선을 이용하여 근거리에 무선으로 데이터를 전송하는 적외선 통신(IrDA, infrared Data Association)기술에 따라 통신을 수행한다.
무선 통신 모듈은 상술한 통신 방식 이외에 지그비(zigbee), 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), LTE-A(LTE Advanced), 4G(4th Generation), 5G(5th Generation)등과 같은 다양한 무선 통신 규격에 따라 통신을 수행하는 적어도 하나의 통신 칩을 포함할 수 있다.
또는, 통신 인터페이스(110)는 HDMI, DP, 썬더볼트, USB, RGB, D-SUB, DVI 등과 같은 유선 통신 인터페이스를 포함할 수 있다.
그 밖에 통신 인터페이스(110)는 LAN(Local Area Network) 모듈, 이더넷 모듈, 또는 페어 케이블, 동축 케이블 또는 광섬유 케이블 등을 이용하여 통신을 수행하는 유선 통신 모듈 중 적어도 하나를 포함할 수도 있다.
메모리(120)는 프로세서(130) 등이 접근할 수 있도록 데이터 등의 정보를 전기 또는 자기 형태로 저장하는 하드웨어를 지칭할 수 있다. 이를 위해, 메모리(120)는 비휘발성 메모리, 휘발성 메모리, 플래시 메모리(Flash Memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD), RAM, ROM 등 중에서 적어도 하나의 하드웨어로 구현될 수 있다.
메모리(120)에는 전자 장치(100) 또는 프로세서(130)의 동작에 필요한 적어도 하나의 인스트럭션(instruction) 또는 모듈이 저장될 수 있다. 여기서, 인스트럭션은 전자 장치(100) 또는 프로세서(130)의 동작을 지시하는 부호 단위로서, 컴퓨터가 이해할 수 있는 언어인 기계어로 작성된 것일 수 있다. 모듈은 작업 단위의 특정 작업을 수행하는 일련의 인스트럭션의 집합체(instruction set)일 수 있다.
메모리(120)에는 문자, 수, 영상 등을 나타낼 수 있는 비트 또는 바이트 단위의 정보인 데이터가 저장될 수 있다. 예를 들어, 메모리(120)에는 제1 신경망 모델이 저장될 수 있다. 여기서, 제1 신경망 모델은 뉴럴 보코더(neural vocoder) 신경망 모델로서 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.
메모리(120)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의해 인스트럭션, 모듈 또는 데이터에 대한 독취/기록/수정/삭제/갱신 등이 수행될 수 있다.
프로세서(130)는 전자 장치(100)의 동작을 전반적으로 제어한다. 구체적으로, 프로세서(130)는 전자 장치(100)의 각 구성과 연결되어 전자 장치(100)의 동작을 전반적으로 제어할 수 있다. 예를 들어, 프로세서(130)는 통신 인터페이스(110), 메모리(120) 등과 같은 구성과 연결되어 전자 장치(100)의 동작을 제어할 수 있다.
일 실시 예에 따라 프로세서(130)는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(130)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.
프로세서(130)는 외부 전자 장치(200)로부터 텍스트에 기초하여 획득된 음성 피쳐의 압축 정보가 통신 인터페이스(110)를 통해 수신되면, 압축 정보를 압축 해제하고, 압축 해제된 정보를 제1 신경망 모델에 입력하여 텍스트에 대응되는 사운드 정보를 획득할 수 있다.
여기서, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다. 복수의 음성 피쳐 각각은 대응되는 샘플 사운드로부터 획득되며, 대응되는 데이터 쌍을 이용하여 제1 신경망 모델이 학습될 수 있다.
또는, 제1 신경망 모델은 복수의 왜곡된 샘플 음성 피쳐 및 복수의 왜곡된 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수도 있다. 구체적으로, 복수의 샘플 음성 피쳐는 복수의 원본 음성 피쳐를 압축하고, 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐일 수 있다. 즉, 압축 왜곡이 발생한 데이터를 이용하여 제1 신경망 모델을 학습하는 경우, 음성 피쳐로부터 사운드를 복원하는 성능이 좀더 개선될 수 있다. 여기서, 왜곡은 양자화(quantization) 왜곡, 패킷 로스(Packet loss) 왜곡 또는 LPF(Low-Pass Filtering) 왜곡 중 적어도 하나를 포함할 수 있다.
또는, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델일 수도 있다. 여기서, 노이즈는 가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함할 수 있다. 즉, 제1 신경망 모델의 학습 과정에서 노이즈를 추가함에 따라 실제 사운드의 획득 과정에서 노이즈에 좀더 강인한 결과가 획득될 수 있다.
한편, 압축 정보는 텍스트가 제2 신경망 모델에 입력되어 획득된 음성 피쳐가 압축된 정보이다. 제2 신경망 모델은 프로소디(prosody) 신경망 모델로서 복수의 샘플 텍스트 및 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델이며, 외부 전자 장치(200)에 저장될 수 있다. 즉, 외부 전자 장치(200)는 텍스트를 제2 신경망 모델에 입력하여 음성 피쳐를 획득하고, 획득된 음성 피쳐를 압축하며, 압축된 음성 피쳐를 전자 장치(100)로 전송할 수 있다. 여기서, 제2 신경망 모델은 하나의 샘플 텍스트 및 하나의 샘플 텍스트에 대응되는 샘플 사운드로부터 획득된 샘플 음성 피쳐들 간의 관계를 학습하며, 이러한 과정을 복수의 샘플 텍스트에 대해 수행함으로써 제2 신경망 모델이 학습될 수 있다.
그리고, 제2 신경망 모델의 학습에 이용되는 복수의 샘플 음성 피쳐 각각은 사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득될 수 있다. 이는 기기마다 주파수 별 녹음 특성이 다를 수 있기 때문이다. 이러한 동작을 통해 기기별 차이가 음성 피쳐에 반영되는 것을 방지하고, 사용자의 음성 특징만이 반영된 음성 피쳐를 획득할 수 있다.
한편, 프로세서(130)는 외부 전자 장치(200)로부터 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 통신 인터페이스(110)를 통해 순차적으로 수신하고, 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 하나의 음성 피쳐 대신 기 설정된 값을 제1 신경망 모델에 입력하여 텍스트에 대응되는 사운드 정보를 획득할 수 있다. 여기서, 제1 신경망 모델은 기 설정된 값이 입력되면 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델일 수 있다.
즉, 프로세서(130)는 제1 신경망 모델 자체적으로 손상된 패킷을 처리함에 따라 손상된 패킷의 재요청 동작을 수행하지 않으며, 레이턴시가 발생하는 문제를 해결할 수 있다.
또는, 프로세서(130)는 외부 전자 장치(200)로부터 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 통신 인터페이스(110)를 통해 순차적으로 수신하고, 복수의 음성 피쳐 중 하나가 손상된 경우 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 손상된 음성 피쳐을 추정할 수도 있다. 예를 들어, 프로세서(130)는 손상된 음성 피쳐를 인접한 두 개의 음성 피쳐에 기초하여 보간하고, 보간된 음성 피쳐를 제1 신경망 모델에 입력할 수도 있다.
한편, 압축 정보는 음성 피쳐를 양자화하여 획득된 정보일 수 있다. 즉, 외부 전자 장치(200)는 음성 피쳐를 양자화하고, 양자화된 음성 피쳐를 전자 장치(100)로 전송할 수 있다. 이 경우, 프로세서(130)는 양자화된 음성 피쳐를 양자화 해제하고, 양자화가 해제된 음성 피쳐를 제1 신경망 모델에 입력하여 사운드 정보를 획득할 수 있다.
다만, 이에 한정되는 것은 아니며, 프로세서(130)는 양자화된 음성 피쳐를 제1 신경망 모델에 입력하여 사운드 정보를 획득할 수도 있다. 이 경우, 제1 신경망 모델은 복수의 양자화된 샘플 음성 피쳐 및 복수의 양자화된 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.
도 3b는 본 개시의 일 실시 예에 따른 전자 장치(100)의 세부 구성을 나타내는 블럭도이다. 전자 장치(100)는 통신 인터페이스(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 또한, 도 3b에 따르면, 전자 장치(100)는 스피커(140), 디스플레이(150) 또는 사용자 인터페이스(160) 중 적어도 하나를 더 포함할 수도 있다. 도 3b에 도시된 구성요소들 중 도 3a에 도시된 구성요소와 중복되는 부분에 대해서는 자세한 설명을 생략하도록 한다.
스피커(140)는 프로세서(130)에 의해 획득된 사운드 정보를 출력하는 구성 요소이다. 또는, 스피커(140)는 각종 알림 음이나 음성 메시지 등을 출력할 수 있다.
디스플레이(150)는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, PDP(Plasma Display Panel) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 디스플레이(150) 내에는 a-si TFT, LTPS(low temperature poly silicon) TFT, OTFT(organic TFT) 등과 같은 형태로 구현될 수 있는 구동 회로, 백라이트 유닛 등도 함께 포함될 수 있다. 한편, 디스플레이(150)는 터치 센서와 결합된 터치 스크린, 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 등으로 구현될 수 있다.
경우에 따라, 프로세서(130)는 사운드 정보에 대응되는 텍스트를 획득하고, 텍스트를 디스플레이하도록 디스플레이(150)를 제어할 수도 있다.
사용자 인터페이스(160)는 버튼, 터치 패드, 마우스 및 키보드 등으로 구현되거나, 상술한 디스플레이 기능 및 조작 입력 기능도 함께 수행 가능한 터치 스크린으로도 구현될 수 있다. 여기서, 버튼은 전자 장치(100)의 본체 외관의 전면부나 측면부, 배면부 등의 임의의 영역에 형성된 기계적 버튼, 터치 패드, 휠 등과 같은 다양한 유형의 버튼이 될 수 있다.
한편, 본 개시에 따른 인공 지능과 관련된 기능은 프로세서(130)와 메모리(120)를 통해 동작된다.
프로세서(130)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공 지능 전용 프로세서일 수 있다.
하나 또는 복수의 프로세서는, 메모리(120)에 저장된 기 정의된 동작 규칙 또는 인공 지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공 지능 전용 프로세서인 경우, 인공 지능 전용 프로세서는 특정 인공 지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다. 기 정의된 동작 규칙 또는 인공 지능 모델은 학습을 통해 만들어진 것을 특징으로 한다.
여기서, 학습을 통해 만들어진다는 것은, 기본 인공 지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공 지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공 지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공 지능 모델은 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공 지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공 지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다.
인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN(Convolutional Neural Network), DNN (Deep Neural Network), RNN(Recurrent Neural Network), RBM(Restricted Boltzmann Machine), DBN(Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network), GAN(Generative Adversarial Network) 또는 심층 Q-네트워크(Deep Q-Networks) 등이 있으나, 이에 한정되는 것은 아니다.
이상과 같이 전자 장치(100)는 외부 전자 장치(200)로부터 음성 피쳐의 압축 정보를 수신하고 신경망 모델을 이용하여 사운드를 획득하기 때문에, 사운드의 압축 정보를 수신하고 압축을 해제하여 사운드를 획득하는 경우보다 고품질의 사운드를 획득할 수 있다.
이하에서는 도 4 내지 도 7을 통해 전자 장치(100)의 동작을 좀더 구체적으로 설명한다. 도 4 내지 도 7에서는 설명의 편의를 위해 개별적인 실시 예에 대하여 설명한다. 다만, 도 4 내지 도 7의 개별적인 실시 예는 얼마든지 조합된 상태로 실시될 수도 있다.
도 4는 본 개시의 일 실시 예에 따른 전자 장치(100)와 외부 전자 장치(200)의 동작을 설명하기 위한 도면이다. 도 4에서는 설명의 편의를 위해 전자 장치(100)를 디바이스로, 외부 전자 장치(200)를 서버로 도시하였다.
서버는 복수의 샘플 텍스트 및 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 프로소디 신경망 모델을 저장하며, 텍스트를 입력받고, 텍스트를 프로소디 신경망 모델에 입력하여 텍스트에 기초하여 음성 피쳐를 획득하고, 음성 피쳐의 압축 정보를 획득하며, 획득된 음성 피쳐를 디바이스로 전송할 수 있다. 한편, 서버는 사용자 음성이 수신되면, 사용자 음성으로부터 사용자 음성에 대응되는 텍스트를 획득하고, 텍스트를 프로소디 신경망 모델에 입력할 수도 있다.
디바이스는 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 샘플 사운드 간 관계를 학습한 뉴럴 보코더 신경망 모델을 저장하며, 서버로부터 압축 정보가 수신되면 압축 정보를 압축 해제하고, 압축 해제된 정보를 뉴럴 보코더 신경망 모델에 입력하여 텍스트에 대응되는 사운드를 획득할 수 있다.
여기서, 종래 디바이스 단에서 코덱을 이용하여 압축 해제 후 사운드를 획득하는 경우 압축 및 압축 해제 과정의 왜곡으로 음질 저하 문제가 있었으나, 본 개시의 디바이스는 압축 해제 후 뉴럴 보코더 신경망 모델을 추가로 이용하기 때문에 종래보다 음질이 향상될 수 있다. 특히, 뉴럴 보코더 신경망 모델은 코덱 등의 신호처리 모듈에 비해 일반화 성능이 뛰어나 왜곡에 강인한 특징을 가지고 있다. 또한, 학습 과정에서 이용되는 학습 데이터를 압축 및 압축 해제 과정을 거친 왜곡된 데이터로 사용하여 왜곡에 대한 일반화 성능을 더욱 향상시킬 수 있다.
또한, 종래에는 서버 단에서 사운드를 획득한 후 인코딩을 수행함에 따라 딜레이가 발생하였으나, 본 개시의 서버는 사운드보다 용량이 작은 음성 피쳐만을 압축하기 때문에 딜레이가 거의 발생하지 않는다. 특히, 프로소디 신경망 모델에서 출력되는 음성 피쳐는 프레임 단위이기 때문에 음성 피쳐의 압축 및 전송에 딜레이가 거의 발생하지 않으며 스트리밍에 유리하다.
또한, 종래에는 서버 단에서 사운드를 획득한 후 인코딩을 수행함에 따라 정보 손실이 크다. 하지만, 본 개시의 서버는 음성 피처를 획득 후 압축하기 때문에, 종래 방법보다 정보 손실이 적다.
그리고, 본 개시의 디바이스는 뉴럴 보코더 신경망 모델만을 이용하기 때문에 디바이스가 프로소디 신경망 모델 및 뉴럴 보코더 신경망 모델을 모두 이용하는 경우보다 저사양으로 구현 가능하다.
또한, Neural TTS는 발음 오류가 발생할 수 있고, 이 문제를 수정하기 위해서는 프로소디 신경망 모델의 업데이트가 필요하다. 디바이스는 일반적으로 사용자의 소유이므로 업데이트가 어려우나, 서버는 업데이트가 용이하며, 그에 따라 프로소디 신경망 모델의 업데이트로 성능 개선이 용이하다.
한편, 도 4에서는 서버와 디바이스로서 설명하였으나, 두 장치 간의 동작으로 볼 수도 있다. 예를 들어, 서버는 제1 전자 장치이고 디바이스는 제2 전자 장치일 수 있다. 제1 전자 장치 및 제2 전자 장치 간 메신저 앱을 이용하는 경우, 제1 전자 장치의 제1 사용자는 텍스트를 입력하더라도 제2 전자 장치는 제2 사용자는 텍스트에 대응되는 사운드를 들을 수 있다. 이때, 제1 전자 장치에 저장된 프로소디 신경망 모델이 평소 제1 사용자의 사운드를 학습한 모델이라면, 제1 전자 장치에서 전송되는 음성 피쳐는 제1 사용자의 사운드 특성을 포함하게 된다. 즉, 제1 사용자가 텍스트만을 입력하더라도 제2 사용자는 제1 사용자의 사운드와 같은 느낌을 받을 수 있다.
여기서, 제1 사용자의 사운드 특성은 제1 사용자의 음성을 가질 수 있다. 즉, 개인화 TTS 서비스에 활용될 수 있다. 이때, 제1 전자 장치에 저장된 프로소디 신경망 모델은 제1 사용자의 소유이므로 제1 전자 장치에서만 동작하도록 할 수 있다. 제2 전자 장치의 뉴럴 보코더 신경망 모델은 전송된 음성 피쳐를 음성으로 복원하여 제2 전자 장치에서 제1 사용자의 음성을 가지는 개인화 TTS 음성을 재생할 수 있다.
도 5a 내지 도 5c는 본 개시의 다양한 실시 예에 따른 제1 신경망 모델의 학습 방법을 설명하기 위한 도면들이다.
제1 신경망 모델은 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다. 여기서, 복수의 샘플 음성 피쳐는 도 5a에 도시된 바와 같이, 복수의 원본 음성 피쳐를 압축하고, 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐일 수 있다. 즉, 압축 과정에서 발생하는 왜곡까지 반영된 학습을 통해 압축 과정의 왜곡에 강인한 제1 신경망 모델을 획득할 수 있다. 즉, 이렇게 학습된 제1 신경망 모델은 종래보다 개선된 사운드를 출력할 수 있다.
또는, 도 5b에 도시된 바와 같이, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델일 수도 있다. 즉, 임의의 노이즈를 추가하여 학습함에 따라 잡음에 강인한 제1 신경망 모델을 획득할 수 있다. 예를 들어, 양자화 방법을 통해 압축된 음성 피쳐를 복원하였을 경우, 복원된 음성 피쳐는 양자화 잡음(quantization noise)을 포함할 수 있다. 따라서, 이상과 같이 양자화 잡음을 노이즈로 추가하여 학습된 제1 신경망 모델은 양자화 잡음이 포함된 음성 피쳐에 대해서 좀더 개선된 사운드를 출력할 수 있다.
여기서, 노이즈는 가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함할 수 있다. 다만, 이에 한정되는 것은 아니며, 노이즈는 얼마든지 다양한 형태의 노이즈를 포함할 수도 있다.
또는, 도 5c에 도시된 바와 같이, 제1 신경망 모델은 패킷 로스에 따른 복수의 샘플 음성 피쳐 중 일부가 손상된 데이터와 대응되는 복수의 샘플 사운드를 학습한 모델일 수도 있다. 이 경우, 패킷 로스가 발생하더라도 제1 신경망 모델을 통해 사운드의 출력이 가능하며, 패킷 재전송 동작에 따른 레이턴시가 발생하지 않는다.
학습 과정에서 패킷 로스를 재현하기 위하여 학습 DB의 음성 피쳐에서 임의의 패킷을 제거한 뒤 학습에 사용할 수 있다. 예를 들어, 도 5c의 패킷 로스 훈련 DB 1은 Acoustic Feature 3이 손실된 경우이고, 패킷 로스 훈련 DB 2는 Acoustic Feature 1과 Acoustic Feature 4가 손실된 경우이다. 이때, 손실된 음성 피쳐에 대해 기설정된 값을 사용하여 제1 신경망 모델을 학습할 수 있다. 또는, 손실된 음성 피쳐를 인접한 음성 피처를 이용하여 보간한 뒤 제1 신경망 모델을 학습할 수도 있다. 이를 통해, 제1 신경망 모델이 인접한 음성 피쳐 정보로부터 손실된 구간의 음성을 복원하도록 학습할 수 있다. 추론 단계에서는 학습에 사용한 방법과 동일한 방법으로 손실된 음성 피쳐를 대체하여 입력할 수 있다.
도 5a 내지 도 5c에서는 학습이 개별적으로 수행되는 것으로 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 제1 신경망 모델은 도 5a 내지 5c의 방법 중 적어도 두 개의 방법을 동시에 학습할 수도 있다.
그리고, 도 5a 내지 도 5c는 양자화된 음성 피쳐를 복원하였을 때 생기는 잡음이나 오차에 강인한 제1 신경망 모델을 학습하는 방법을 설명하기 위한 도면이다. 다만, 이에 한정되는 것은 아니며, 음성 피쳐의 복원 없이 수신된 데이터를 제1 신경망 모델에 입력할 수도 있으며, 이 경우 제1 신경망 모델이 양자화로 인한 잡음이나 오차를 복원하도록 학습할 수도 있다. 이에 대하여는 도 6을 통해 구체적으로 설명한다.
도 6은 본 개시의 일 실시 예에 따른 양자화 동작을 설명하기 위한 도면이다. 도 6에서는 설명의 편의를 위해 전자 장치(100)를 디바이스로, 외부 전자 장치(200)를 서버로 도시하였다.
서버는 음성 피쳐를 양자화하여 압축 정보를 획득할 수도 있다. 예를 들어, 서버는 도 6에 도시된 바와 같이, 20차원의 음성 피쳐를 5차원씩 벡터 양자화(Vector Quantization)할 수 있다. 각 벡터별로 256개의 code word로 벡터 양자화 할 경우, 20×4=80bytes의 데이터가 4×1=4bytes의 데이터로 축소될 수 있다.
이상에서는 설명의 편의를 위해 5차원 벡터 양자화를 예를 들었으나, 이에 한정되는 것은 아니며, 얼마든지 다양한 차원의 벡터 양자화가 사용될 수도 있고, 각 차원별로 양자화하는 스칼라 양자화 방법이 사용될 수도 있다.
디바이스는 양자화된 음성 피쳐를 제1 신경망 모델에 입력하여 사운드 정보를 획득할 수 있다. 이 경우, 제1 신경망 모델은 복수의 양자화된 샘플 음성 피쳐 및 복수의 양자화된 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있으며, 이러한 학습을 통해 디바이스는 압축 해제 동작 없이 사운드를 획득할 수 있다. 그에 따라, 사운드를 획득하는 시간이 단축될 수 있다.
양자화된 음성 피쳐가 제1 신경망 모델에 입력되는 경우, 그 값은 이산적(discrete)으로 표현될 수 있다. Embedding layer는 이산적인 값을 연속적인(continuous) 벡터로 표현할 수 있고, 이를 통해 제1 신경망 모델을 학습할 수 있다. 도 6에서는 각 Embedding layer의 출력을 이어 붙여서(Concatenate) 입력 벡터를 구성하였지만, 더하거나 곱하거나 다른 Neural Network layer를 통과시키는 등의 연산으로 입력 벡터를 구성할 수도 있다.
도 7은 본 개시의 일 실시 예에 따른 구현 예를 설명하기 위한 도면이다.
승용차에는 제1 디바이스(701)의 제1 사용자가 탑승하고 있고, 버스에는 제2 디바이스(702)의 제2 사용자가 탑승하고 있다. 제2 사용자는 대중 교통을 이용하는 상황으로, 통화보다는 문자를 이용하여 제1 사용자와 커뮤니케이션할 수 있다.
먼저, 제2 사용자는 제2 디바이스(702)에 메시지를 입력할 수 있다. 제2 디바이스(702)는 입력된 메시지에 대응되는 텍스트를 제2 프로소디 신경망 모델에 입력하여 복수의 음성 피쳐를 획득하고, 복수의 음성 피쳐를 제1 디바이스(701)로 전송할 수 있다. 여기서, 제2 프로소디 신경망 모델은 제2 사용자의 사운드의 음성 피쳐와 대응되는 텍스트를 학습한 모델로, 제2 프로소디 신경망 모델을 통해 획득된 복수의 음성 피쳐는 제2 사용자의 음성 특징을 포함할 수 있다.
제1 디바이스(701)는 복수의 음성 피쳐를 제1 뉴럴 보코더 신경망 모델에 입력하여 제2 사용자가 입력한 메시지에 대응되는 사운드 정보를 획득하고, 획득된 사운드 정보를 스피커(140)를 통해 출력할 수 있다. 여기서, 제1 뉴럴 보코더 신경망 모델은 제2 사용자의 음성 피쳐가 포함되어 있는 복수의 음성 피쳐로 제2 사용자의 음성 피쳐를 포함하는 사운드를 획득해야 하기 때문에, 불특정 다수의 다양한 목소리를 획득 가능하도록 구성될 수 있다. 다양한 목소리를 획득하기 위한 제1 뉴럴 보코더 신경망 모델은 다양한 화자들의 목소리를 활용하여 학습될 수 있다.
도 7에서는 설명의 편의를 위해 압축 및 압축 해제 동작을 생략하였으나, 이에 한정되는 것은 아니다. 예를 들어, 제2 디바이스(702)는 복수의 음성 피쳐를 압축하여 압축 정보를 획득하고, 압축 정보를 제1 디바이스(701)로 전송하며, 제1 디바이스(701)는 압축 정보를 압축 해제하고, 압축 해제된 정보로부터 사운드 정보를 획득할 수도 있다.
한편, 제1 디바이스(701)는 기설정된 모드인 경우, 제1 음성 인식 모듈을 통해 사용자 음성을 텍스트로 변환하고, 제1 프로소디 신경망 모델을 통해 획득된 복수의 음성 피쳐를 제2 디바이스(702)로 전송할 수 있다. 이 경우, 제2 디바이스(702)는 제1 디바이스(701)로부터 제1 사용자의 복수의 음성 피쳐가 수신되면, 제2 뉴럴 보코더 신경망 모델을 통해 제1 사용자의 음성 피쳐를 포함하는 사운드를 획득한 후, 음성 인식을 통해 사운드 정보로부터 텍스트를 획득하고, 텍스트를 디스플레이를 통해 디스플레이할 수도 있다. 또한, 제1 디바이스(701)의 음성 인식 모듈의 결과인 텍스트를 전달받아 디스플레이할 수도 있다. 이러한 동작을 통해 제2 사용자는 대중 교통을 이용하는 동안 타인에게 피해를 주지 않고 제1 사용자와 커뮤니케이션할 수 있다.
도 8은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
먼저, 외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보를 수신한다(S810). 그리고, 압축 정보를 압축 해제한다(S820). 그리고, 압축 해제된 정보를 제1 신경망 모델에 입력하여 텍스트에 대응되는 사운드 정보를 획득한다(S830). 여기서, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델일 수 있다.
그리고, 수신하는 단계(S810)는 외부 전자 장치로부터 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고, 사운드 정보를 획득하는 단계(S830)는 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 하나의 음성 피쳐 대신 기 설정된 값을 제1 신경망 모델에 입력하여 텍스트에 대응되는 사운드 정보를 획득할 수 있다. 여기서, 제1 신경망 모델은 기 설정된 값이 입력되면 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델일 수 있다.
또는, 수신하는 단계(S810)는 외부 전자 장치로부터 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고, 제어 방법은 복수의 음성 피쳐 중 하나가 손상된 경우 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 손상된 음성 피쳐을 추정하는 단계를 더 포함할 수 있다.
한편, 복수의 샘플 음성 피쳐는 복수의 원본 음성 피쳐를 압축하고, 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐일 수 있다.
또한, 제1 신경망 모델은 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델이고, 노이즈는 가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함할 수 있다.
한편, 압축 정보는 음성 피쳐를 양자화하여 획득된 정보일 수 있다.
또한, 압축 정보는 텍스트가 제2 신경망 모델에 입력되어 획득된 음성 피쳐가 압축된 정보이고, 제2 신경망 모델은 복수의 샘플 텍스트 및 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델일 수 있다.
여기서, 복수의 샘플 음성 피쳐 각각은 사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득될 수 있다.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 외부 전자 장치로부터 음성 피쳐(acoustic feature)의 압축 정보를 수신하고 신경망 모델을 이용하여 사운드를 획득하기 때문에, 코덱을 사용하여 사운드를 압축하고 사운드의 압축 정보를 수신한 후 압축을 해제하여 사운드를 획득하는 경우보다 고품질의 사운드를 획득할 수 있다.
또한, 외부 전자 장치는 음성 피쳐의 압축 정보를 전자 장치로 전송하기 때문에, 사운드의 압축 정보를 전송하는 경우보다 전송 과정의 딜레이 및 전송량을 줄일 수 있다.
그리고, 외부 전자 장치가 서버로 구현되는 경우, 텍스트로부터 음성 피쳐를 획득하기 위한 신경망 모델이 외부 전자 장치에 저장됨에 따라 신경망 모델의 업데이트가 용이할 수 있다.
한편, 본 개시의 일시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.
한편, 상술한 다양한 실시 예들에 따른 기기의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 기기에서의 처리 동작을 특정 기기가 수행하도록 한다. 비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
또한, 상술한 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
1000 : 전자 시스템 100 : 전자 장치
110 : 통신 인터페이스 120 : 메모리
130 : 프로세서 140 : 스피커
150 : 디스플레이 160 : 사용자 인터페이스
200 : 외부 전자 장치

Claims (18)

  1. 전자 장치에 있어서,
    통신 인터페이스;
    제1 신경망 모델이 저장된 메모리; 및
    상기 통신 인터페이스 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서;를 포함하고,
    상기 프로세서는,
    외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보가 상기 통신 인터페이스를 통해 수신되면, 상기 압축 정보를 압축 해제하고,
    상기 압축 해제된 정보를 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며,
    상기 제1 신경망 모델은,
    복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델인, 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 상기 통신 인터페이스를 통해 순차적으로 수신하고,
    상기 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 상기 하나의 음성 피쳐 대신 기 설정된 값을 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며,
    상기 제1 신경망 모델은,
    상기 기 설정된 값이 입력되면 상기 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델인, 전자 장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 상기 통신 인터페이스를 통해 순차적으로 수신하고,
    상기 복수의 음성 피쳐 중 하나가 손상된 경우 상기 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 상기 손상된 음성 피쳐을 추정하는, 전자 장치.
  4. 제1항에 있어서,
    상기 복수의 샘플 음성 피쳐는,
    복수의 원본 음성 피쳐를 압축하고, 상기 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐인, 전자 장치.
  5. 제1항에 있어서,
    상기 제1 신경망 모델은,
    상기 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델이고,
    상기 노이즈는,
    가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함하는, 전자 장치.
  6. 제1항에 있어서,
    상기 압축 정보는,
    상기 음성 피쳐를 양자화하여 획득된 정보인, 전자 장치.
  7. 제1항에 있어서,
    상기 압축 정보는,
    상기 텍스트가 제2 신경망 모델에 입력되어 획득된 상기 음성 피쳐가 압축된 정보이고,
    상기 제2 신경망 모델은,
    복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델인, 전자 장치.
  8. 제7항에 있어서,
    상기 복수의 샘플 음성 피쳐 각각은,
    사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득되는, 전자 장치.
  9. 제1 전자 장치 및 제2 전자 장치를 포함하는 전자 시스템에 있어서,
    텍스트를 프로소디(prosody) 신경망 모델에 입력하여 상기 텍스트에 기초하여 음성 피쳐(acoustic feature)를 획득하고, 상기 음성 피쳐의 압축 정보를 획득하며, 상기 획득된 음성 피쳐를 상기 제2 전자 장치로 전송하는 제1 전자 장치; 및
    상기 제1 전자 장치로부터 상기 압축 정보가 수신되면 상기 압축 정보를 압축 해제하고, 상기 압축 해제된 정보를 뉴럴 보코더(neural vocoder) 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드를 획득하는 제2 전자 장치;를 포함하며,
    상기 프로소디 신경망 모델은,
    복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델이고,
    상기 뉴럴 보코더 신경망 모델은,
    상기 복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 샘플 사운드 간 관계를 학습한 모델인, 전자 시스템.
  10. 제9항에 있어서,
    제1 전자 장치는,
    사용자 음성이 수신되면, 상기 사용자 음성으로부터 상기 사용자 음성에 대응되는 텍스트를 획득하고, 상기 텍스트를 상기 프로소디 신경망 모델에 입력하는, 전자 시스템.
  11. 전자 장치의 제어 방법에 있어서,
    외부 전자 장치로부터 텍스트에 기초하여 획득된 음성 피쳐(acoustic feature)의 압축 정보를 수신하는 단계;
    상기 압축 정보를 압축 해제하는 단계; 및
    상기 압축 해제된 정보를 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하는 단계;를 포함하며,
    상기 제1 신경망 모델은,
    복수의 샘플 음성 피쳐 및 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드의 관계를 학습한 모델인, 제어 방법.
  12. 제11항에 있어서,
    상기 수신하는 단계는,
    상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고,
    상기 사운드 정보를 획득하는 단계는,
    상기 복수의 음성 피쳐 중 하나에 대응되는 패킷이 손상된 경우 상기 하나의 음성 피쳐 대신 기 설정된 값을 상기 제1 신경망 모델에 입력하여 상기 텍스트에 대응되는 사운드 정보를 획득하며,
    상기 제1 신경망 모델은,
    상기 기 설정된 값이 입력되면 상기 기 설정된 값에 인접한 적어도 하나의 음성 피쳐에 기초하여 사운드를 출력하도록 학습된 모델인, 제어 방법.
  13. 제11항에 있어서,
    상기 수신하는 단계는,
    상기 외부 전자 장치로부터 상기 텍스트에 대응되는 복수의 음성 피쳐 각각의 압축 정보를 순차적으로 수신하고,
    상기 제어 방법은,
    상기 복수의 음성 피쳐 중 하나가 손상된 경우 상기 손상된 음성 피쳐에 인접한 적어도 하나의 음성 피쳐에 기초하여 상기 손상된 음성 피쳐을 추정하는 단계;를 더 포함하는, 제어 방법.
  14. 제11항에 있어서,
    상기 복수의 샘플 음성 피쳐는,
    복수의 원본 음성 피쳐를 압축하고, 상기 압축된 복수의 원본 음성 피쳐를 압축 해제함으로써 왜곡된 음성 피쳐인, 제어 방법.
  15. 제11항에 있어서,
    상기 제1 신경망 모델은,
    상기 복수의 샘플 음성 피쳐 및 노이즈에 기초하여 상기 복수의 샘플 음성 피쳐 각각에 대응되는 복수의 샘플 사운드를 획득하도록 학습된 모델이고,
    상기 노이즈는,
    가우시안(gaussian) 노이즈 또는 유니폼(uniform) 노이즈 중 적어도 하나를 포함하는, 제어 방법.
  16. 제11항에 있어서,
    상기 압축 정보는,
    상기 음성 피쳐를 양자화하여 획득된 정보인, 제어 방법.
  17. 제11항에 있어서,
    상기 압축 정보는,
    상기 텍스트가 제2 신경망 모델에 입력되어 획득된 상기 음성 피쳐가 압축된 정보이고,
    상기 제2 신경망 모델은,
    복수의 샘플 텍스트 및 상기 복수의 샘플 텍스트 각각에 대응되는 복수의 샘플 음성 피쳐 간 관계를 학습한 모델인, 제어 방법.
  18. 제17항에 있어서,
    상기 복수의 샘플 음성 피쳐 각각은,
    사용자 음성에 대응되는 사운드 중 임계 값 이상의 주파수 성분이 제거된 신호로부터 획득되는, 제어 방법.
KR1020210024028A 2021-02-23 2021-02-23 전자 장치 및 그 제어 방법 KR20220120214A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210024028A KR20220120214A (ko) 2021-02-23 2021-02-23 전자 장치 및 그 제어 방법
PCT/KR2021/012757 WO2022181912A1 (ko) 2021-02-23 2021-09-17 전자 장치 및 그 제어 방법
US17/534,969 US20220270588A1 (en) 2021-02-23 2021-11-24 Electronic device and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210024028A KR20220120214A (ko) 2021-02-23 2021-02-23 전자 장치 및 그 제어 방법

Publications (1)

Publication Number Publication Date
KR20220120214A true KR20220120214A (ko) 2022-08-30

Family

ID=83048567

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210024028A KR20220120214A (ko) 2021-02-23 2021-02-23 전자 장치 및 그 제어 방법

Country Status (2)

Country Link
KR (1) KR20220120214A (ko)
WO (1) WO2022181912A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985856B2 (en) * 2002-12-31 2006-01-10 Nokia Corporation Method and device for compressed-domain packet loss concealment
KR102044520B1 (ko) * 2017-08-21 2019-11-13 국방과학연구소 음성 존재 구간 판별 장치 및 방법
US11264010B2 (en) * 2018-05-11 2022-03-01 Google Llc Clockwork hierarchical variational encoder
WO2020145472A1 (ko) * 2019-01-11 2020-07-16 네이버 주식회사 화자 적응형 모델을 구현하고 합성 음성 신호를 생성하는 뉴럴 보코더 및 뉴럴 보코더의 훈련 방법
CN112185337B (zh) * 2019-07-02 2024-04-26 微软技术许可有限责任公司 多语言神经文本到语音合成

Also Published As

Publication number Publication date
WO2022181912A1 (ko) 2022-09-01

Similar Documents

Publication Publication Date Title
US20230368804A1 (en) Speech coding using auto-regressive generative neural networks
US10679644B2 (en) Production of speech based on whispered speech and silent speech
US10580424B2 (en) Perceptual audio coding as sequential decision-making problems
JP6077011B2 (ja) 冗長フレーム符号化および復号のためのデバイス
US20210375296A1 (en) Methods, Encoder And Decoder For Linear Predictive Encoding And Decoding Of Sound Signals Upon Transition Between Frames Having Different Sampling Rates
CN112786006B (zh) 语音合成方法、合成模型训练方法、装置、介质及设备
CN113724683B (zh) 音频生成方法、计算机设备及计算机可读存储介质
US20210021953A1 (en) Electronic apparatus and controlling method thereof
CN112164407A (zh) 音色转换方法及装置
US20240161372A1 (en) Method and system for providing service for conversing with virtual person simulating deceased person
US20220329966A1 (en) Electronic apparatus and controlling method thereof
KR20200127809A (ko) 전자 장치 및 그 영상 처리 방법
US20220270588A1 (en) Electronic device and control method thereof
KR20220120214A (ko) 전자 장치 및 그 제어 방법
US20220189481A1 (en) Electronic device and control method for same
CN113870827A (zh) 一种语音合成模型的训练方法、装置、设备及介质
US11848004B2 (en) Electronic device and method for controlling thereof
US20240153514A1 (en) Machine Learning Based Enhancement of Audio for a Voice Call
CN113380231B (zh) 一种语音转换的方法、装置及电子设备
KR20220170330A (ko) 전자 장치 및 이의 제어 방법
US20240071396A1 (en) System and Method for Watermarking Audio Data for Automated Speech Recognition (ASR) Systems
CN117546233A (zh) 电子设备及其控制方法
US20220270616A1 (en) Electronic device and controlling method thereof
KR20220069777A (ko) 전자 장치, 그 제어 방법 및 전자 시스템
CN117437915A (zh) 一种答复内容生成方法、装置、电子设备和可读介质