KR20190091188A - 포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 - Google Patents
포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 Download PDFInfo
- Publication number
- KR20190091188A KR20190091188A KR1020180145012A KR20180145012A KR20190091188A KR 20190091188 A KR20190091188 A KR 20190091188A KR 1020180145012 A KR1020180145012 A KR 1020180145012A KR 20180145012 A KR20180145012 A KR 20180145012A KR 20190091188 A KR20190091188 A KR 20190091188A
- Authority
- KR
- South Korea
- Prior art keywords
- present disclosure
- user
- module
- voice
- interactive
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 15
- 230000002452 interceptive effect Effects 0.000 description 55
- 230000004044 response Effects 0.000 description 49
- 238000004891 communication Methods 0.000 description 48
- 230000000875 corresponding effect Effects 0.000 description 33
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000033001 locomotion Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000033764 rhythmic process Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000001308 synthesis method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000009223 counseling Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 230000002194 synthesizing 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
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
- Machine Translation (AREA)
Abstract
컴퓨터에 의해 수행되는, TTS 음성 신호의 생성 방법이 제공된다. 본 개시의 방법은, 텍스트 신호를 수신하는 단계; 소정의 음성 자료 데이터베이스에 기초하여, 텍스트 신호에 대응하는 복수의 주파수 신호 값들을 결정하는 단계; 복수의 주파수 신호 값들로부터 복수의 포먼트 주파수 신호를 획득하는 단계; 복수의 포먼트 주파수 신호를 변조하는 단계; 및 복수의 주파수 신호 값들에 기초하여, 변조된 복수의 포먼트 주파수 신호를 포함하는 TTS 음성 신호를 생성하는 단계를 포함한다.
Description
본 개시는, TTS 음성 신호의 생성 방법에 관한 것이며, 보다 구체적으로는, 임의 삭제가 불가능한 합성음 표시가 포함된 TTS 음성 신호의 생성 및 제공 방법에 관한 것이다.
근래, 인공지능 분야, 특히 자연어 이해 분야의 기술 발전에 따라, 전통적인 기계 중심의 명령 입출력 방식에 따른 기계 조작에서 벗어나, 사용자로 하여금, 보다 사람 친화적인 방식, 예컨대 음성 및/또는 텍스트 형태의 자연어를 매개로 한 대화 방식으로 기계를 조작하고 기계로부터 원하는 서비스를 얻을 수 있도록 하는 대화형 AI 에이전트 시스템의 개발 및 활용이 점차 늘어나고 있다. 그에 따라, 온라인 상담 센터나 온라인 쇼핑몰 등을 비롯한 (그러나 이에 한정되지 않은 더 많은) 다양한 분야에서, 사용자는 음성 및/또는 텍스트 형태의 자연어 대화를 통해, 대화형 AI 에이전트 시스템에게 원하는 서비스를 요청하고 그로부터 원하는 결과를 얻을 수 있게 되었다. 특히, 최근에는, 텍스트 입출력을 배제하거나 크게 줄이고, 대부분의 사용자 인터랙션이 음성 입출력에 의하여 (원격으로) 이루어지도록 한 대화형 AI 에이전트 시스템, 예컨대 스마트 스피커 시스템 등이 주목을 받고 있다.
대화형 AI 에이전트 시스템 등을 비롯한 기계의 음성 합성과 관련한 기술과 관련하여, 지금까지는, 그 합성된 음성이 되도록 사람의 음성과 비슷하게(기계적이지 않고 자연스럽게) 들리도록 하는 데에 연구 개발의 초점이 맞춰져 왔다. 음성 합성 기술은 비약적으로 발전하였고, 이제 대화형 AI 에이전트 시스템 등 기계에 의해 합성 및 제공되는 음성 응답은, 그 음성 응답을 획득한 사용자로 하여금 마치 사람 상대방의 발화에 의한 음성 응답을 얻은 것과 같이 느끼게 할 정도의 수준에 이르게 되었다.
그런데, 이러한 음성 합성의 기술 수준이 높아짐에 따라, 기계에 의해 합성된 음성이 불법적 용도, 예컨대 각종 불법 인증이나 피싱 등의 용도 등에 사용될 우려가 나타나고 있다. 따라서, 이제는, 기계에 의해 합성된 음성이, 사람 사용자에게 제공될 수 있는 사용자 경험(예컨대, 가청 음성 품질)을 손상시키지 않으면서도, 사람 사용자의 발화에 의한 것이 아니라는 점(즉, 기계, 예컨대 대화형 AI 에이전트 시스템 등에 의해 합성 및 제공되었다는 점)을 스스로 표시하도록 하여, 그러한 합성 음성이 불법적 용도(예컨대, 불법 인증이나 각종 피싱 등)로 사용될 수 없도록 할 필요가 생겼다.
본 개시의 일 특징에 의하면,
컴퓨터에 의해 수행되는, TTS 음성 신호의 생성 방법이 제공된다. 본 개시의 방법은, 텍스트 신호를 수신하는 단계; 소정의 음성 자료 데이터베이스에 기초하여, 텍스트 신호에 대응하는 복수의 주파수 신호 값들을 결정하는 단계; 복수의 주파수 신호 값들로부터 복수의 포먼트 주파수 신호를 획득하는 단계; 복수의 포먼트 주파수 신호를 변조하는 단계; 및 복수의 주파수 신호 값들에 기초하여, 변조된 복수의 포먼트 주파수 신호를 포함하는 TTS 음성 신호를 생성하는 단계를 포함한다.
본 개시의 일 실시예에 의하면, 복수의 주파수 신호 값들로부터 복수의 포먼트 주파수 신호를 획득하는 단계는, 복수의 주파수 신호 값들로부터 시간-주파수 공간의 에너지 밀도 신호 세트를 획득하는 단계; 및 에너지 밀도 신호 세트로부터 복수의 포먼트 주파수 신호를 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 복수의 포먼트 주파수 신호는, 소정의 기본 주파수 신호와, 기본 주파수 신호의 배음 주파수 신호들을 포함하고, 복수의 포먼트 주파수 신호를 변조하는 단계는, 기본 주파수 신호와, 배음 주파수 신호들의 감쇠율이 동일해지도록 조정하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 컴퓨터는, 사용자로부터 자연어 입력을 수신하고, 수신된 자연어 입력을 처리하여 음성 응답을 제공하도록 구성된 대화형 AI 에이전트 서버이며, 음성 응답이 생성된 TTS 음성 신호를 포함할 수 있다.
본 개시의 다른 특징에 의하면, 하나 이상의 명령어가 수록된 컴퓨터 판독가능 기록 매체로서, 하나 이상의 명령어는, 컴퓨터에 의해 실행될 경우, 컴퓨터로 하여금, 전술한 방법들 중 어느 하나의 방법을 수행하도록 하는, 컴퓨터 판독가능 기록 매체가 제공된다.
본 개시의 또 다른 특징에 의하면, 대화형 AI 에이전트 서비스를 제공하는 컴퓨터 장치로서, 사용자로부터 자연어 입력을 수신하는 입력 수신 모듈; 수신된 자연어 입력을 처리하여 텍스트 형태의 응답 신호를 생성하는 응답 생성 모듈; 및 텍스트 형태의 응답 신호에 대응하는 음성 출력을 생성하도록 구성된 음성 변환 모듈을 포함한다. 본 개시의 음성 변환 모듈은, 텍스트 형태의 응답 신호에 대응하는 복수의 주파수 신호 값들을 결정하고, 복수의 주파수 신호 값들로부터 복수의 포먼트 주파수 신호를 획득하고, 복수의 포먼트 주파수 신호를 변조하고, 복수의 주파수 신호 값들에 기초하여, 변조된 복수의 포먼트 주파수 신호를 포함하는 TTS 음성 신호를 생성하도록 구성된다.
본 개시의 기계 음성 합성 방법에 의하면, 합성 음성의 가청 품질을 열화 시키지 않으면서, 해당 합성 음성이 사람 사용자의 발화에 의한 것이 아니라는 점, 즉 기계에 의해 합성된 음성이라는 점을 스스로 표시하도록 할 수 있다. 또한, 본 개시의 기계 음성 합성 방법에 의하면, 전술한 기계에 의해 합성된 음성이라는 표시는 임의 삭제가 불가능하게 되어, 그 기계에 의해 합성된 음성이 잠재적으로 불법적 용도로 사용될 가능성을 없앨 수 있다.
도 1은, 본 개시의 일 실시예에 따라, 대화형 AI 에이전트 시스템이 구현될 수 있는 시스템 환경을 개략적으로 도시한 도면이다.
도 2는, 본 개시의 일 실시예에 따른, 도 1의 사용자 단말(102)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 3은, 본 개시의 일 실시예에 따른, 도 1의 대화형 AI 에이전트 서버(108)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 4는, 본 발명의 일 실시예에 따른, 도 3의 TTS 모듈(316)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 5는, 음성 신호의 파형을 시간 및 주파수 차원에서 표시한 스펙트로그램의 일 예를 도시한 도면이다.
도 2는, 본 개시의 일 실시예에 따른, 도 1의 사용자 단말(102)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 3은, 본 개시의 일 실시예에 따른, 도 1의 대화형 AI 에이전트 서버(108)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 4는, 본 발명의 일 실시예에 따른, 도 3의 TTS 모듈(316)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 5는, 음성 신호의 파형을 시간 및 주파수 차원에서 표시한 스펙트로그램의 일 예를 도시한 도면이다.
이하, 첨부 도면을 참조하여 본 개시의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 개시의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 개시의 일 실시예에 관한 것일 뿐 본 개시가 이로써 제한되는 것은 아님을 알아야 한다.
본 개시에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 개시를 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 본 개시에서 사용되는 "및/또는"이라는 용어는, 열거되는 항목들 중 하나 이상의 항목에 의한 임의의 가능한 모든 조합들을 포괄하는 것임이 이해되어야 한다. 본 개시에서 사용되는 '포함하다' 또는 '가지다' 등의 용어는 본 개시 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.
본 개시의 실시예에 있어서 '모듈' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '모듈' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서에 의해 구현될 수 있다.
본 개시에서는, 주로 대화형 AI 에이전트 시스템의 TTS 음성 신호의 생성을 중심으로 설명할 것이지만, 본 개시가 이로써 제한되는 것은 아니다. 본 개시는, TTS 음성 신호가 제공되는 다양한 유형 및 다양한 목적의 시스템에도 적용될 수 있음을 알아야 할 것이다.
본 개시의 실시예에 있어서 '대화형 AI 에이전트 시스템'은, 사용자와의 사이에서 음성 및/또는 텍스트 형태의 자연어를 매개로 한 대화형 인터랙션을 통해, 사용자로부터 입력되는 자연어 입력(예컨대, 자연어로 된 사용자로부터의 명령, 진술, 요청, 질문 등)을 수신 및 해석하여 사용자의 의도(intent)를 알아내고 그 알아낸 사용자의 의도에 기초하여 필요한 동작 수행, 즉 적절한 대화 응답의 제공 및/또는 태스크의 수행을 제공할 수 있는 임의의 정보 처리 시스템을 지칭할 수 있으며, 특정 형태로 제한되는 것은 아니다.
본 개시의 실시예에 있어서, '대화형 AI 에이전트 시스템'에 의해 제공되는 대화 응답은 음성 응답 형태로 제공될 수 있음을 알아야 한다. 본 개시의 실시예에 있어서, '대화형 AI 에이전트 시스템'에 의해 제공되는 대화 응답은, 음성 응답에 더하여, 기타 시각, 청각 및/또는 촉각 형태(예컨대, 음향, 텍스트, 비디오, 이미지, 기호, 이모티콘, 하이퍼링크, 애니메이션, 각종 노티스, 모션, 햅틱 피드백 등을 포함할 수 있으며, 이로써 제한되는 것은 아님)의 신호를 더 포함하는 다양한 형태로 더 제공될 수 있음을 알아야 한다. 본 개시의 실시예에 있어서 '대화형 AI 에이전트 시스템'에 의해 수행되는 태스크는, 예컨대 정보의 검색, 결제 진행, 메시지 작성, 이메일 작성, 전화 걸기, 음악 재생, 사진 촬영, 사용자 위치 탐색, 지도/내비게이션 서비스 등을 비롯한 각종 다양한 형태의 태스크(다만, 예시일 뿐이며 이로써 제한되는 것은 아님)를 포함할 수 있다.
본 개시의 실시예에 있어서 '대화형 AI 에이전트 시스템'은, 범용 지식에 기초하여 범용 정보의 제공을 위해 설계된 범용 대화형 AI 에이전트 시스템과 금융, 법률, 의료, 공공분야 등 각 전문 분야별로 특화되어 해당 전문 분야에 부합하는 지식 체계를 구축하고 그에 맞는 더욱 정확한 서비스를 제공하는 분야별 전문 대화형 AI 에이전트 시스템을 모두 포함할 수 있음을 알아야 한다.
덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 개시에서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.
이하, 첨부된 도면을 참조하여, 본 개시의 실시예에 대해 구체적으로 설명하기로 한다.
도 1은, 본 개시의 일 실시예에 따라, 대화형 AI 에이전트 시스템이 구현될 수 있는 시스템 환경(100)을 개략적으로 도시한 도면이다. 도시된 바에 의하면, 시스템 환경(100)은, 복수의 사용자 단말(102), 통신망(104), 대화형 AI 에이전트 서버(106) 및 외부 서비스 서버(108)를 포함한다.
본 개시의 일 실시예에 의하면, 복수의 사용자 단말(102) 각각은 유선 또는 무선 통신 기능을 구비한 임의의 사용자 전자 장치일 수 있다. 사용자 단말(102) 각각은, 예컨대 스마트 폰, 태블릿 PC, 뮤직 플레이어, 스마트 스피커, 데스크탑, 랩탑, PDA, 게임 콘솔, 디지털 TV, 셋탑박스 등을 포함한 다양한 유선 또는 무선 통신 단말일 수 있으며, 특정 형태로 제한되지 않음을 알아야 한다.
본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 통신망(104)을 통해서, 대화형 AI 에이전트 서버(106)와 통신, 즉 필요한 정보를 송수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 통신망(104)을 통해서, 외부 서비스 서버(108)와 통신, 즉 필요한 정보를 송수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 외부로부터 음성, 텍스트 및/또는 터치 형태의 사용자 입력을 수신할 수 있고, 통신망(104)을 통한 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)와의 통신(및/또는 사용자 단말(102) 내 처리)을 통해 얻어진, 위 사용자 입력에 대응한 동작 결과(예컨대, 특정 대화 응답의 제공 및/또는 특정 태스크의 수행 등)를 사용자에게 제공할 수 있다.
본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 통신망(104)을 통해서, 대화형 AI 에이전트 서버(108)와 통신, 즉 필요한 정보를 송수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 통신망(104)을 통해서, 외부 서비스 서버(108)와 통신, 즉 필요한 정보를 송수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 외부로부터 음성, 텍스트 및/또는 터치 형태의 사용자 입력을 수신할 수 있고, 통신망(104)을 통한 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)와의 통신(및/또는 사용자 단말(102) 내 처리)을 통해 얻어진, 위 사용자 입력에 대응한 동작 결과(예컨대, 특정 대화 응답의 제공 및/또는 특정 태스크의 수행 등)를 사용자에게 제공할 수 있다.
본 개시의 실시예에 있어서, 사용자 입력에 대응한 동작으로서의 태스크 수행은, 예컨대 정보의 검색, 물품 구매, 메시지 작성, 이메일 작성, 전화 걸기, 음악 재생, 사진 촬영, 사용자 위치 탐색, 지도/내비게이션 서비스 등을 비롯한 각종 다양한 형태의 태스크(그러나 이로써 제한되는 것은 아님) 수행을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102) 각각은, 사용자 입력에 대응한 동작 결과로서의 대화 응답을, 음성 형태로 제공할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102)은 음성 형태의 응답에 더하여, 기타 시각, 청각 및/또는 촉각 형태(예컨대, 음성, 음향, 텍스트, 비디오, 이미지, 기호, 이모티콘, 하이퍼링크, 애니메이션, 각종 노티스, 모션, 햅틱 피드백 등을 포함할 수 있으며, 이로써 제한되는 것은 아님)의 신호를 더 포함하는 다양한 형태로써 사용자에게 제공할 수 있다.
본 개시의 일 실시예에 의하면, 통신망(104)은, 임의의 유선 또는 무선 통신망, 예컨대 TCP/IP 통신망을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 통신망(104)은, 예컨대 Wi-Fi망, LAN망, WAN망, 인터넷망 등을 포함할 수 있으며, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 일 실시예에 의하면, 통신망(104)은, 예컨대 이더넷, GSM, EDGE(Enhanced Data GSM Environment), CDMA, TDMA, OFDM, 블루투스, VoIP, Wi-MAX, Wibro 기타 임의의 다양한 유선 또는 무선 통신 프로토콜을 이용하여 구현될 수 있다.
본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 통신망(104)을 통해 사용자 단말(102)과 통신할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 통신망(104)을 통해 사용자 단말(102)과 필요한 정보를 송수신하고, 이를 통해 사용자 단말(102) 상에서 수신된 사용자 입력에 대응한, 즉 사용자 의도에 부합하는 동작 결과가, 사용자에게 제공되도록 동작할 수 있다.
본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 통신망(104)을 통해 사용자 단말(102)로부터 음성, 텍스트, 및/또는 터치 형태의 사용자 자연어 입력을 수신하고, 미리 준비된 모델들에 기초해서 그 수신된 자연어 입력을 처리하여 사용자의 의도(intent)를 결정할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 위 결정된 사용자 의도에 기초하여 대응하는 동작이 수행되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 사용자 단말(102)이 사용자 의도에 부합하는 특정한 태스크를 수행하도록 특정한 제어 신호를 생성하여 해당 사용자 단말(102)로 전송할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 사용자 단말(102)이 사용자 의도에 부합하는 특정한 태스크를 수행하게 하기 위하여, 통신망(104)을 통해 외부 서비스 서버(108)에 접속할 수 있다.
본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 사용자 의도에 부합하는 특정한 대화 응답을 생성하여 사용자 단말(102)로 전송할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 위 결정된 사용자 의도에 기초하여, 대응하는 대화 응답을 음성 형태로써 생성하고, 생성된 응답을, 통신망(104)을 통해, 사용자 단말(102)로 전달할 수 있다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)에 의해 생성되는 대화 응답은, 전술한 음성 형태의 자연어 응답과 함께, 텍스트, 이미지, 비디오, 기호, 이모티콘 등 시각적 요소들이나, 음향 등의 다른 청각적 요소들이나, 기타 다른 촉각적 요소들을 더 포함할 수 있다.
본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 앞서 언급한 바와 같이, 통신망(104)을 통해서 외부 서비스 서버(108)와 통신할 수 있다. 외부 서비스 서버(108)는, 예컨대 의료 서비스 서버, 금융 서비스 서버, 메시징 서비스 서버, 온라인 상담 센터 서버, 온라인 쇼핑몰 서버, 정보 검색 서버, 지도 서비스 서버, 네비게이션 서비스 서버 등일 수 있으며, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)로부터 사용자 단말(102)로 전달되는, 사용자 의도에 기초한 대화 응답은, 예컨대 외부 서비스 서버(108)로부터 검색 및 획득된 데이터 콘텐츠를 포함한 것일 수 있음을 알아야 한다.
본 도면에서는, 대화형 AI 에이전트 서버(106)가 외부 서비스 서버(108)와 통신망(104)을 통해 통신 가능하게 구성된 별도의 물리 서버인 것으로 도시되어 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 의료 서비스 서버, 금융 서비스 서버, 온라인 상담 센터 서버 또는 온라인 쇼핑몰 서버 등 각종 서비스 서버의 일부로 포함되어 구성될 수도 있음을 알아야 한다.
도 2는, 본 개시의 일 실시예에 따른, 도 1에 도시된 사용자 단말(102)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 사용자 단말(102)은, 사용자 입력 수신 모듈(202), 센서 모듈(204), 프로그램 메모리 모듈(206), 프로세싱 모듈(208), 통신 모듈(210), 및 응답 출력 모듈(212)을 포함한다.
본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 사용자로부터 다양한 형태의 입력, 예컨대 음성 입력 및/또는 텍스트 입력 등의 자연어 입력(및 부가적으로 터치 입력 등의 다른 형태의 입력)을 수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 예컨대 마이크로폰 및 오디오 회로를 포함하며, 마이크로폰을 통해 사용자 음성 입력 신호를 획득하고 획득된 신호를 오디오 데이터로 변환할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 예컨대 마우스, 조이스틱, 트랙볼 등의 각종 포인팅 장치, 키보드, 터치패널, 터치스크린, 스타일러스 등 다양한 형태의 입력 장치를 포함할 수 있고, 이들 입력 장치를 통해 사용자로부터 입력된 텍스트 입력 및/또는 터치 입력 신호를 획득할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)에서 수신되는 사용자 입력은, 소정의 태스크 수행, 예컨대 소정의 애플리케이션 실행이나 소정 정보의 검색 등과 연관될 수 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 사용자 입력 수신 모듈(202)에서 수신되는 사용자 입력은, 소정의 애플리케이션 실행이나 정보의 검색 등과는 무관하게 단순한 대화 진행 만을 위한 것일 수도 있다.
본 개시의 일 실시예에 의하면, 센서 모듈(204)은 하나 이상의 서로 다른 유형의 센서를 포함하고, 이들 센서를 통해 사용자 단말(102)의 상태 정보, 예컨대 해당 사용자 단말(102)의 물리적 상태, 소프트웨어 및/또는 하드웨어 상태, 또는 사용자 단말(102)의 주위 환경 상태에 관한 정보 등을 획득할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 광 센서를 포함하고, 광 센서를 통해 해당 사용자 단말(102)의 주변 광 상태를 감지할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 이동 센서를 포함하고, 이동 센서를 통해 해당 사용자 단말(102)의 이동 상태 여부를 감지할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 속도 센서 및 GPS 센서를 포함하고, 이들 센서를 통해 해당 사용자 단말(102)의 위치 및/또는 배향 상태를 감지할 수 있다. 본 개시의 다른 실시예에 의하면, 센서 모듈(204)은 온도 센서, 이미지 센서, 압력 센서, 접촉 센서 등을 비롯한 다른 다양한 형태의 센서를 포함할 수 있음을 알아야 한다.
본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)은, 사용자 단말(102) 상에서 실행될 수 있는 각종 프로그램, 예컨대 각종 애플리케이션 프로그램 및 관련 데이터 등이 저장된 임의의 저장 매체일 수 있다. 본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)에는, 예컨대 인스턴트 메시징 애플리케이션, 전화 걸기 애플리케이션, 이메일 애플리케이션, 카메라 애플리케이션, 음악 재생 애플리케이션, 비디오 재생 애플리케이션, 이미지 관리 애플리케이션, 지도 애플리케이션, 브라우저 애플리케이션 등을 비롯한 다양한 애플리케이션 프로그램들과 이들 프로그램의 실행과 관련된 데이터들이 저장될 수 있다. 본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)은, DRAM, SRAM, DDR RAM, ROM, 자기 디스크, 광 디스크, 플래시 메모리 등 다양한 형태의 휘발성 또는 비휘발성 메모리를 포함하도록 구성될 수 있다.
본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 사용자 단말(102)의 각 컴포넌트 모듈과 통신하고 사용자 단말(102) 상에서 각종 연산을 수행할 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 프로그램 메모리 모듈(206) 상의 각종 애플리케이션 프로그램을 구동 및 실행시킬 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 필요한 경우, 사용자 입력 수신 모듈(202) 및 센서 모듈(204)에서 획득된 신호를 수신하고, 이들 신호에 관한 적절한 처리를 수행할 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 필요한 경우, 통신 모듈(210)을 통해 외부로부터 수신되는 신호에 대해 적절한 처리를 수행할 수 있다.
본 개시의 일 실시예에 의하면, 통신 모듈(210)은, 사용자 단말(102)이 도 1의 통신망(104)을 통하여, 온라인 대화 서비스 서버(106), 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)와 통신할 수 있게 한다. 본 개시의 일 실시예에 의하면, 통신 모듈(210)은, 예컨대 사용자 입력 수신 모듈(202) 및 센서 모듈(204) 상에서 획득된 신호가 소정의 프로토콜에 따라 통신망(104)을 통하여 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)로 전송되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 통신 모듈(210)은, 예컨대 통신망(104)을 통하여 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)로부터 수신된 각종 신호, 예컨대 음성 및/또는 텍스트 형태의 자연어 응답을 포함한 응답 신호 또는 각종 제어 신호 등을 수신하고, 소정의 프로토콜에 따라 적절한 처리를 수행할 수 있다.
본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 예컨대 스피커 또는 헤드셋을 포함하고, 사용자 입력에 대응하는 청각적 응답, 예컨대 음성 (및 음향) 응답을 스피커 또는 헤드셋을 통해 사용자에게 제공할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 또한, 예컨대 LCD, LED, OLED, QLED 등의 기술에 기초한 터치 스크린 등의 각종 디스플레이 장치를 더 포함하고, 이들 디스플레이 장치를 통해 사용자 입력에 대응하는 시각적 응답, 예컨대 텍스트, 기호, 비디오, 이미지, 하이퍼링크, 애니메이션, 각종 노티스 등을, 전술한 음성 응답과 함께, 사용자에게 제시할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)는 모션/햅틱 피드백 생성부를 더 포함하고, 이를 통해 촉각적 응답, 예컨대 모션/햅틱 피드백을 사용자에게 제공할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 사용자 입력에 대응하는 음성 응답을 제공하는 동시에, 텍스트 응답, 음향 응답, 모션/햅틱 피드백 중 임의의 것을 추가적으로 더 제공할 수 있음을 알아야 한다.
도 3은, 본 개시의 일 실시예에 따른, 도 1의 대화형 AI 에이전트 서버(106)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 대화형 에이전트 서버(106)는, 통신 모듈(302), 음성-텍스트 변환(Speech-To-Text; STT) 모듈(304), 자연어 이해(Natural Language Understanding; NLU) 모듈(306), 대화 이해 지식베이스(308), 사용자 데이터베이스(310), 대화 관리 모듈(312), 대화 생성 모듈(314), 및 음성 합성(Text-To-Speech; TTS) 모듈(316)을 포함한다.
본 개시의 일 실시예에 의하면, 통신 모듈(302)은, 소정의 유선 또는 무선 통신 프로토콜에 따라, 통신망(104)을 통하여, 대화형 AI 에이전트 서버(106)가 사용자 단말(102) 및/또는 외부 서비스 서버(108)와 통신할 수 있게 한다. 본 개시의 일 실시예에 의하면, 통신 모듈(302)은, 통신망(104)을 통해, 사용자 단말(102)로부터 전송되어 온, 사용자 입력(예컨대 터치 입력, 음성 입력 및/또는 텍스트 입력 등을 포함하며, 이로써 제한되지 않음)을 수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력은 특정한 태스크 실행 또는 대화 응답의 요청 신호일 수 있다.
본 개시의 일 실시예에 의하면, 통신 모듈(302)은, 전술한 사용자 입력과 함께 또는 그와 별도로, 통신망(104)을 통해, 사용자 단말(102)로부터 전송되어 온, 사용자 단말(102)의 상태 정보를 수신할 수 있다. 본 개시의 일 실시예에 의하면, 상태 정보는, 예컨대 전술한 사용자 입력 당시의 해당 사용자 단말(102)에 관련된 여러가지 상태 정보(예컨대, 사용자 단말(102)의 물리적 상태, 사용자 단말(102)의 소프트웨어 및/또는 하드웨어 상태, 사용자 단말(102) 주위의 환경 상태 정보 등)일 수 있다. 본 개시의 일 실시예에 의하면, 통신 모듈(302)은, 또한, 위 수신된 사용자 입력에 대응하여 대화형 AI 에이전트 서버(106)에서 생성된 대화 응답(예컨대, 음성 및/또는 텍스트 형태의 자연어 대화 응답 등) 및/또는 제어 신호를, 통신망(104)을 통해, 사용자 단말(102)로 전달하기 위해 필요한 적절한 조치를 수행할 수 있다.
본 개시의 일 실시예에 의하면, STT 모듈(304)은, 통신 모듈(302)을 통해 수신된 사용자 입력 중 음성 입력을 수신하고, 수신된 음성 입력을 패턴 매칭 등에 기초하여 텍스트 데이터로 변환할 수 있다. 본 개시의 일 실시예에 의하면, STT 모듈(304)은, 사용자의 음성 입력으로부터 특징을 추출하여 특징 벡터열을 생성할 수 있다. 본 개시의 일 실시예에 의하면, STT 모듈(304)은, DTW(Dynamic Time Warping) 방식이나 HMM 모델(Hidden Markov Model), GMM 모델(Gaussian-Mixture Mode), 딥 신경망 모델, n-gram 모델 등의 다양한 통계적 모델에 기초하여, 텍스트 인식 결과, 예컨대 단어들의 시퀀스를 생성할 수 있다. 본 개시의 일 실시예에 의하면, STT 모듈(304)은, 수신된 음성 입력을 패턴 매칭에 기초하여 텍스트 데이터로 변환할 때, 후술하는 사용자 데이터베이스(310)의 각 사용자 특징적 데이터를 참조할 수 있다.
본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 통신 모듈(302) 또는 STT 모듈(304)로부터 텍스트 입력을 수신할 수 있다. 본 개시의 일 실시예에 의하면, NLU 모듈(306)에서 수신되는 텍스트 입력은, 예컨대 통신 모듈(302)에서 통신망(104)을 통하여 사용자 단말(102)로부터 수신되었던 사용자 텍스트 입력 또는 통신 모듈(302)에서 수신된 사용자 음성 입력으로부터 STT 모듈(304)에서 생성된 텍스트 인식 결과, 예컨대 단어들의 시퀀스일 수 있다. 본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 텍스트 입력을 수신하는 것과 함께 또는 그 이후에, 해당 사용자 입력과 연관된 상태 정보, 예컨대 해당 사용자 입력 당시의 사용자 단말(102)의 상태 정보 등을 수신할 수 있다. 전술한 바와 같이, 상태 정보는, 예컨대 사용자 단말(102)에서 사용자 음성 입력 및/또는 텍스트 입력 당시의 해당 사용자 단말(102)에 관련된 여러가지 상태 정보(예컨대, 사용자 단말(102)의 물리적 상태, 소프트웨어 및/또는 하드웨어 상태, 사용자 단말(102) 주위의 환경 상태 정보 등)일 수 있다.
본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 후술하는 대화 이해 지식베이스(308)에 기초하여, 위 수신된 텍스트 입력을 하나 이상의 사용자 의도(intent)에 대응시킬 수 있다. 여기서 사용자 의도는, 그 사용자 의도에 따라 대화형 AI 에이전트 서버(106)에 의해 이해되고 수행될 수 있는 일련의 동작(들)과 연관될 수 있다. 본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 수신된 텍스트 입력을 하나 이상의 사용자 의도에 대응시킴에 있어서 전술한 상태 정보를 참조할 수 있다. 본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 수신된 텍스트 입력을 하나 이상의 사용자 의도에 대응시킴에 있어서 후술하는 사용자 데이터베이스(310)의 각 사용자 특징적 데이터를 참조할 수 있다.
본 개시의 일 실시예에 의하면, 대화 이해 지식베이스(308)는, 예컨대 미리 정의된 온톨로지 모델을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 온톨로지 모델은, 예컨대 노드들 간의 계층 구조로 표현될 수 있는데, 각 노드는 사용자의 의도에 대응한 "의도" 노드 또는 "의도" 노드에 링크된 하위 "속성" 노드("의도" 노드에 직접 링크되거나 "의도" 노드의 "속성" 노드에 다시 링크된 하위 "속성" 노드) 중 하나일 수 있다. 본 개시의 일 실시예에 의하면, "의도" 노드와 그 "의도" 노드에 직접 또는 간접 링크된 "속성" 노드들은 하나의 도메인을 구성할 수 있고, 온톨로지는 이러한 도메인들의 집합으로 구성될 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 지식베이스(308)는, 예컨대 대화형 AI 에이전트 시스템이 이해하고 그에 대응한 동작을 수행할 수 있는 모든 의도들에 각각 대응하는 도메인들을 포함하도록 구성될 수 있다. 본 개시의 일 실시예에 의하면, 온톨로지 모델은, 노드의 추가나 삭제, 또는 노드 간의 관계의 수정 등에 의해 동적으로 변경될 수 있음을 알아야 한다.
본 개시의 일 실시예에 의하면, 사용자 데이터베이스(310)는, 각 사용자별 특징적 데이터를 저장 및 관리하는 데이터베이스일 수 있다. 본 개시의 일 실시예에 의하면, 사용자 데이터베이스(310)에 포함되는 각 사용자별 특징적 데이터는, 예컨대 각 사용자별로 해당 사용자의 개인 정보, 이전 대화/거동 기록, 사용자의 발음 특징 정보, 사용자 어휘 선호도, 사용자의 소재지, 설정 언어, 연락처/친구 목록, 기타 다양한 사용자 특징적 정보를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 전술한 바와 같이, STT 모듈(304)은, 음성 입력을 텍스트 데이터로 변환할 때 사용자 데이터베이스(310)의 각 사용자 특징적 데이터, 예컨대 각 사용자별 발음 특징을 참조함으로써, 보다 정확한 텍스트 데이터를 얻을 수 있다. 본 개시의 일 실시예에 의하면, NLU 모듈(306)은, 사용자 의도를 결정할 때 사용자 데이터베이스(310)의 각 사용자 특징적 데이터, 예컨대 각 사용자별 특징이나 맥락을 참조함으로써, 보다 정확한 사용자 의도 결정을 할 수 있다. 본 개시의 일 실시예에 의하면, 후술하는 바와 같이, 대화 생성 모듈(314)은, 대화 응답의 생성시, 사용자 데이터베이스(310)의 사용자 특징적 데이터를 참조할 수 있다.
본 도면에서는, 각 사용자별 특징적 데이터를 저장 및 관리하는 사용자 데이터베이스(310)가 대화형 AI 에이전트 서버(106)에 배치되는 것으로 도시되어 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 각 사용자별 특징적 데이터를 저장 및 관리하는 사용자 데이터베이스(310)는, 예컨대 사용자 단말(102)에 존재할 수도 있고, 사용자 단말(102) 및 대화형 AI 에이전트 서버(106)에 분산되어 배치될 수도 있음을 알아야 한다.
본 개시의 일 실시예에 의하면, 대화 관리 모듈(312)은, NLU 모듈(306)에 의해 결정된 사용자 의도에 따라, 그에 대응하는 일련의 동작 흐름을 생성할 수 있다. 본 개시의 일 실시예에 의하면, 대화 관리 모듈(312)은, 소정의 대화 흐름 관리 모델에 기초하여, 예컨대 NLU 모듈(306)로부터 수신된 사용자 의도에 대응하여 어떠한 동작, 예컨대 어떠한 대화 응답 및/또는 태스크 수행을 행하여야 할지를 결정하고, 그에 따른 세부 동작 흐름을 생성할 수 있다.
본 개시의 일 실시예에 의하면, 대화 생성 모듈(314)은, 대화 관리 모듈(312) 에 의하여 생성된 대화 흐름에 기초하여 사용자에게 제공될 대화 응답을 생성할 수 있다. 본 개시의 일 실시예에 의하면, 대화 생성 모듈(314)은, 대화 응답의 생성에 있어서, 예컨대 전술한 사용자 데이터베이스(310)의 사용자 특징적 데이터(예컨대, 사용자의 이전 대화 기록, 사용자의 발음 특징 정보, 사용자 어휘 선호도, 사용자의 소재지, 설정 언어, 연락처/친구 목록, 각 사용자별로 해당 사용자의 이전 대화 기록 등)를 참조할 수 있다.
본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 대화 생성 모듈(314)에 의해 사용자 단말(102)로 전송되도록 생성된 대화 응답을 수신할 수 있다. TTS 모듈(316)에서 수신되는 대화 응답은 텍스트 형태를 갖는 자연어 단어들의 시퀀스일 수 있다. 본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 다양한 형태의 알고리즘에 따라, 위 수신된 텍스트 형태의 입력에 기초하여 음성 신호를 생성할 수 있다. 본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 각 음성 단위 별 음성 자료를 미리 저장할 수 있다. 본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 수신된 텍스트 입력을 처리하여 각 음성 단위별로 나누고, 아울러 그 텍스트 입력의 문법적 구조를 고려한 운율을 생성하고, 생성된 운율에 따라 위 저장된 음성 자료들을 조합 및 합성하여 합성 음성을 생성할 수 있다.
본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 전술한 합성 음성의 생성시, 임의의 특정 시간의 음성에 대응하는, 위 음성 자료들의 조합 등에 따라 정해지는 신호 값들(예컨대, 해당 음성을 표시하기 위한 복수의 주파수 신호 값들)로부터 소정의 포먼트 주파수 신호들(즉, 해당 음성에 대응하는 서로 연관된 포먼트 주파수 신호들)을 획득할 수 있다. 포먼트 주파수 신호들은, 음성 신호의 언어적 특성을 결정하는 기본 주파수 신호 및 그 정수 배의 배음 주파수 신호들을 포함한다. 본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 위 선택된 포먼트 주파수 신호들을, 예컨대 서로 연관된 포먼트 주파수 신호들(즉, 소정의 기본 주파수 신호 및 그 배음 주파수 신호들)이 모두 동일한 감쇠율을 갖도록 변조하고, 그 변조된 포먼트 주파수 신호들을 포함하도록 합성 음성을 생성할 수 있다.
사람의 발성에 의한 음성 신호의 경우, 음성에 대응하는 포먼트 주파수 신호들이 동일한 감쇠율을 갖지 않기 때문에, 위 동일한 감쇠율을 갖도록 변조된 포먼트 주파수 신호들은 그 자체로서 해당 음성 신호가 TTS 모듈(316) 등 기계에 의해 인위적으로 생성된 것임을 표시할 수 있다. 또한, 전술한 바와 같이, 특정 음성에 대응하는 포먼트 주파수 신호들이 모두 동일한 감쇠율을 갖도록 변조된 경우, 예컨대 그 변조된 포먼트 주파수 신호들을 포함하는 합성 음성은, (단순히 특정한 시간이나 주파수에 임의의 워터마크(예컨대, 임의의 합성음 표시자)를 삽입하는 경우에 그러한 워터마크의 임의 삭제가 쉽게 이루어질 수 있는 것과는 달리) 음성의 특성을 심각하게 훼손하지 않고서는 그 합성 음성임을 나타내는 표시를 은닉할 수 없다. 또한, 전술한 포먼트 주파수 신호들의 변조는, 해당 신호들의 주파수 자체의 변조를 야기하지는 않기 때문에, 음성의 언어적 특징을 해치지 않는다. 본 개시의 일 실시예에 의하면, TTS 모듈(316)은, 서로 연관된 포먼트 주파수 신호들의 감쇠율을 조정할 경우, 대응하는 음성의 음색을 지나치게 왜곡하지 않는 범위에서 감쇠율을 조정할 수 있다.
도 4는, 본 발명의 일 실시예에 따른, 도 3의 TTS 모듈(316)의 기능적 구성을 개략적으로 도시한 도면이다. 도시된 바에 의하면, TTS 모듈(316)은, 텍스트 수신부(402), TTS 데이터베이스(404), TTS 제어부(406), 음성 신호 생성부(408), 음성 신호 분석부(410), 및 음성 신호 변조부(412)를 포함한다.
본 개시의 일 실시예에 의하면, 텍스트 수신부(402)는, 예컨대 도 3의 대화 생성 모듈(314)에서 생성된 대화 응답의 텍스트 신호를 수신할 수 있다. 본 개시의 일 실시예에 의하면, TTS 데이터베이스(404)는, 각 음성 단위, 예컨대 각 음소 및/또는 형태소 별로 음성 자료를 포함할 수 있다. 본 개시의 일 실시예에 의하면, TTS 데이터베이스(404)에 저장된 음성 자료는, 예컨대 소정의 음성 모델에 기초하여 미리 작성된 것일 수 있다.
본 개시의 일 실시예에 의하면, TTS 제어부(406)는, TTS 모듈(316) 상의 각 엘리먼트의 동작을 제어할 수 있다. 본 개시의 일 실시예에 의하면, TTS 제어부(406)의 제어 하에, 텍스트 수신부(402) 상에서 수신된 텍스트 신호가 음성 신호 생성부(408)로 전달될 수 있다. 본 개시의 일 실시예에 의하면, 음성 신호 생성부(408)는, 수신된 텍스트 입력을 처리하여 각 음성 단위별로 나눌 수 있다. 본 개시의 일 실시예에 의하면, 음성 신호 생성부(408)는 또한 텍스트 입력의 문법적 구조를 고려한 운율을 생성하고 생성된 운율에 따라 TTS 데이터베이스(404) 상의 음성 자료들을 조합 및 합성하여 소정의 주파수 신호 값들 생성할 수 있다.
본 개시의 일 실시예에 의하면, 음성 신호 분석부(410)는, TTS 제어부(406)의 제어 하에, 앞서 음성 신호 생성부(408)에서 생성된 주파수 신호 값들을 수신 및 분석할 수 있다. 본 개시의 일 실시예에 의하면, 음성 신호 분석부(410)는, 예컨대 음성 신호 생성부(408)에서 생성된 주파수 신호 값들을 시간-주파수 공간의 에너지 밀도 신호로 변환할 수 있다. 이와 관련하여, 도 5를 참조하면, 음성 신호를 시간-주파수 공간의 에너지 밀도 신호로 표현하는 경우의 스펙트로그램이 도시된 것을 알 수 있다. 예컨대, 도 5의 상단의, 시간-진폭 차원에서 도시된 신호 값들은, 하단의 시간-주파수 공간의 에너지 밀도 신호로 변환될 수 있는데, 하단의 시간-주파수 공간의 에너지 밀도 신호로 도시된 신호 값들은, 시간 단위별로 포먼트 주파수 신호들을 포함하도록 도시되어 있다. 본 개시의 일 실시예에 의하면, 음성 신호 분석부(410)는, 위 시간-주파수 공간의 에너지 밀도 신호로부터 해당 음성의 언어적 특성 정보, 예컨대 포먼트(formant) 주파수 신호들을 획득할 수 있다. 전술한 바와 같이, 포먼트 주파수 신호들은, 음성 신호의 언어적 특성을 결정하는 기본 주파수 신호 및 그 정수 배의 배음 주파수 신호들을 포함한다.
본 개시의 일 실시예에 의하면, 음성 신호 변조부(412)는, 음성 신호 분석부(410)에 의해 획득된, 각 음성에 대응하는 포먼트 주파수 신호들에 대해, 그 포먼트 주파수 신호들이 모두 공통의 감쇠율을 갖도록 그 진폭을 변조할 수 있다. 본 개시의 일 실시예에 의하면, 음성 신호 변조부(412)는, 포먼트 주파수 신호들의 진폭을 변조함에 있어서, 전술한 바와 같이 대응하는 음성의 음색을 지나치게 왜곡하지 않는 범위 내에서 그러한 변조를 행할 수 있음을 알아야 한다.
도 1 내지 4를 참조하여 전술한 본 개시의 실시예에서는, 대화형 AI 에이전트 시스템이 사용자 단말(102)과 대화형 AI 에이전트 서버(106) 간의 클라이언트-서버 모델, 특히 클라이언트는 오로지 사용자 입출력 기능만을 제공하고 그 외 대화형 AI 에이전트 시스템의 다른 모든 기능들을 서버에 위임된, 소위 "씬 클라이언트-서버 모델"에 기초하여 구현된 것과 같이 설명되어 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 대화형 AI 에이전트 시스템은 그 기능들이 사용자 단말과 서버 사이에 분배되어 구현될 수 있고, 또는 그와 달리 사용자 단말 상에 설치된 독립형 애플리케이션으로 구현될 수도 있음을 알아야 한다. 또한, 본 개시의 일 실시예에 따라 대화형 AI 에이전트 시스템이 그 기능들을 사용자 단말과 서버 사이에 분배하여 구현하는 경우, 클라이언트와 서버 사이의 대화형 AI 에이전트 시스템의 각 기능의 분배는 실시예마다 달리 구현될 수 있음을 알아야 한다. 또한, 도 1 내지 4를 참조하여 전술한 본 개시의 실시예에서는, 편의상 특정 모듈이 소정의 동작들을 수행하는 것처럼 설명되었으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 위 설명에서 어느 특정 모듈에 의해 수행되는 것과 같이 설명된 동작들이, 그와 다른 별개의 모듈에 의해 각각 수행될 수 있음을 알아야 한다.
본 개시에서는, 주로 대화형 AI 에이전트 시스템의 TTS 모듈에 의해 합성되는 음성 신호를 중심으로 설명되었으나, 본 발명이 이로써 제한되는 것은 아니다. 본 개시는, 대화형 AI 에이전트 시스템 이외의 각종 기계 합성 음성에도 적용될 수 있음을 알아야 한다.
당업자라면 알 수 있듯이, 본 개시가 본 명세서에 기술된 예시에 한정되는 것이 아니라 본 개시의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 본 명세서에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있음을 알아야 한다.
본 개시의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨터 프로세서 등에 의해 판독 가능한 저장 매체, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체에 저장된 형태로 구현될 수 있다. 또한, 프로그램 코드(들)는 어셈블리어나 기계어로 구현될 수 있다. 본 개시의 진정한 사상 및 범주에 속하는 모든 변형 및 변경을 이하의 특허청구범위에 의해 모두 포괄하고자 한다.
Claims (1)
- 컴퓨터에 의해 수행되는, TTS 음성 신호의 생성 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180145012A KR20190091188A (ko) | 2018-11-22 | 2018-11-22 | 포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180145012A KR20190091188A (ko) | 2018-11-22 | 2018-11-22 | 포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180009673 Division | 2018-01-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20190091188A true KR20190091188A (ko) | 2019-08-05 |
Family
ID=67615998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180145012A KR20190091188A (ko) | 2018-11-22 | 2018-11-22 | 포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20190091188A (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010072315A (ko) | 1998-08-07 | 2001-07-31 | 피터 엔. 데트킨 | 적외선 레이저 프로브를 이용하여 집적회로 내의 전압을직접 측정하기 위한 방법 및 장치 |
KR101193534B1 (ko) | 2009-07-17 | 2012-10-22 | 주식회사 케이티 | 비디오 콘텐츠에 워터마크를 삽입하는 워터마킹 장치 및 방법 |
KR101440898B1 (ko) | 2013-02-01 | 2014-09-17 | 김형석 | 워터마크 삽입 방법 및 장치, 그리고 워터마크를 이용하여 데이터의 복제 여부를 검출하는 방법 및 시스템 |
-
2018
- 2018-11-22 KR KR1020180145012A patent/KR20190091188A/ko active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010072315A (ko) | 1998-08-07 | 2001-07-31 | 피터 엔. 데트킨 | 적외선 레이저 프로브를 이용하여 집적회로 내의 전압을직접 측정하기 위한 방법 및 장치 |
KR101193534B1 (ko) | 2009-07-17 | 2012-10-22 | 주식회사 케이티 | 비디오 콘텐츠에 워터마크를 삽입하는 워터마킹 장치 및 방법 |
KR101440898B1 (ko) | 2013-02-01 | 2014-09-17 | 김형석 | 워터마크 삽입 방법 및 장치, 그리고 워터마크를 이용하여 데이터의 복제 여부를 검출하는 방법 및 시스템 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11514886B2 (en) | Emotion classification information-based text-to-speech (TTS) method and apparatus | |
JP6588637B2 (ja) | 個別化されたエンティティ発音の学習 | |
CN107112014B (zh) | 在基于语音的系统中的应用焦点 | |
KR101891492B1 (ko) | 답변을 변형하여 상황에 맞는 자연어 대화를 제공하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 | |
KR102120751B1 (ko) | 대화 이해 ai 시스템에 의하여, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법 및 컴퓨터 판독가능 기록 매체 | |
CN111837116A (zh) | 用于自动构建或更新对话式ai代理系统的分层对话流管理模型的方法、计算机装置及计算机可读存储介质 | |
KR101959292B1 (ko) | 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 | |
KR101945983B1 (ko) | 대화 이해 ai 서비스 시스템과 연관된 대화 세션 중의 특정 시점에서 목표 달성을 위한 최적의 대화 패턴을 결정하는 방법, 목표 달성 예측 확률을 결정하는 방법, 및 컴퓨터 판독가능 기록 매체 | |
KR101950387B1 (ko) | 학습 데이터 중 식별 가능하지만 학습 가능성이 없는 데이터의 레이블화를 통한, 대화형 ai 에이전트 시스템을 위한 지식베이스 모델의 구축 또는 갱신 방법, 컴퓨터 장치, 및 컴퓨터 판독 가능 기록 매체 | |
KR101891498B1 (ko) | 대화형 ai 에이전트 시스템에서 멀티 도메인 인텐트의 혼재성을 해소하는 멀티 도메인 서비스를 제공하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 | |
US11481443B2 (en) | Method and computer device for providing natural language conversation by providing interjection response in timely manner, and computer-readable recording medium | |
US11302332B2 (en) | Method, computer device and computer readable recording medium for providing natural language conversation by timely providing substantial reply | |
KR20190103951A (ko) | 학습 데이터 중 식별 가능하지만 학습 가능성이 없는 데이터의 레이블화를 통한, 대화형 ai 에이전트 시스템을 위한 지식베이스 모델의 구축 또는 갱신 방법, 컴퓨터 장치, 및 컴퓨터 판독 가능 기록 매체 | |
KR101932264B1 (ko) | 복수 개의 같은 유형의 엔티티 정보의 분석에 기초한 인텐트 결정을 제공하는 방법 및 대화형 ai 에이전트 시스템, 및 컴퓨터 판독가능 기록 매체 | |
KR101914583B1 (ko) | 보안 등과 관련된 서비스를, 사용자간 대화 세션에 대한 모니터링에 기초하고 대화 세션 또는 별도의 세션을 통해, 능동적으로 제공하는 대화형 ai 에이전트 시스템, 방법 및 컴퓨터 판독가능 기록 매체 | |
KR101924215B1 (ko) | 소정의 목표를 갖는 대화 이해 ai 서비스 시스템을 위한 대화 템플릿의 생성 방법 및 컴퓨터 판독가능 기록 매체 | |
KR20190094087A (ko) | 머신러닝 기반의 대화형 ai 에이전트 시스템과 연관된, 사용자 맞춤형 학습 모델을 포함하는 사용자 단말 및 사용자 맞춤형 학습 모델이 기록된 컴퓨터 판독가능 기록 매체 | |
KR102017544B1 (ko) | 메신저 플랫폼에 관계없이 복수의 메신저를 이용하는 사용자간 다양한 형식의 채팅 서비스를 제공하는 대화형 ai 에이전트 시스템, 방법 및 컴퓨터 판독가능 기록 매체 | |
KR101970899B1 (ko) | 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 | |
KR102185925B1 (ko) | 대화 이해 서비스 서버를 통하여, 블록체인 네트워크 상의 트랜잭션을 생성하는 방법, 컴퓨터 판독가능 기록 매체 및 컴퓨터 장치 | |
KR20190091188A (ko) | 포먼트 주파수 신호들의 변조에 의해, 임의 삭제가 불가능한 합성음 표시를 포함하는 tts 음성 신호를 생성하는 방법 및 컴퓨터 판독가능 기록매체 | |
KR20210045704A (ko) | 엔티티 정보의 분석에 기초한 인텐트 결정을 제공하는 방법 및 대화형 ai 에이전트 시스템, 및 컴퓨터 판독가능 기록 매체 | |
KR101914582B1 (ko) | 보안성을 강화한 의미-무관 사용자 성문 인증을 제공하는 방법, 대화형 ai 에이전트 시스템 및 컴퓨터 판독가능 기록 매체 | |
KR20190091224A (ko) | 대화 이해 ai 서비스 시스템과 연관된 대화 세션 중의 특정 시점에서 목표 달성을 위한 최적의 대화 패턴을 결정하는 방법, 목표 달성 예측 확률을 결정하는 방법, 및 컴퓨터 판독가능 기록 매체 | |
KR20190038489A (ko) | 보안성을 강화한 사용자 문맥 기반 인증 방법, 대화형 ai 에이전트 시스템 및 컴퓨터 판독가능 기록 매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent |