음성합성(speech synthesis)은 인위적으로 사람의 소리를 합성하여 만들어내는 것으로, 텍스트를 음성으로 변환한다는 데서 텍스트 음성변환(text-to-speech, TTS) 이라고 하기도 합니다.
AI Suite의 음성합성 엔진은 사람의 목소리를 학습하여 주어진 문장에 대하여 학습한 목소리와 유사한 어조와 억양으로 사람의 음성을 인공적으로 만들어 주는 엔진입니다. 특히, 이미 학습되어 있는 모델에 의한 목소리뿐만 아니라 특정 개인 목소리 또는 특정 도메인의 음성파일을 실시간으로 학습하여 사용자 각각의 특성이 반영된 목소리로 음성합성 모델을 생성할 수 있습니다. 음성합성 엔진은 이렇게 학습된 모델을 End-Point를 통해 개별 서비스로 제공함으로써, 다양한 인공지능 서비스에 활용할 수 있습니다.
음성합성 엔진의 기능은 크게 학습 관리와 서비스 관리 영역으로 나눌 수 있습니다. 학습 관리 영역은 특정 음성데이터를 학습하여 새로운 음성합성 모델의 생성하거나 관리합니다. 서비스 관리 영역은 엔진을 통해 학습된 음성합성 모델을 서비스로 구성하여 타 서비스 애플리케이션에서 접근하고 사용할 수 있도록 배포 및 관리를 담당합니다.
< 음성 합성 엔진 시스템 구성 >
솔트룩스는 음성합성 개인화 서비스 실현을 위해 전이 학습 기술을 이용한 화자적응 방법을 사용하고 있습니다. 전이 학습이란 기존에 잘 훈련된 모델을 사용하여 유사한 문제를 가지는 새로운 모델을 학습하는 방법입니다. 전이학습은 새로운 모델의 학습 효율을 높여 적은 데이터양으로도 이미 학습된 모델의 가중치(Weight) 값들을 의미 있게 조정(Fine-tuning)하므로 높은 성능을 달성할 수 있습니다. 전이학습은 충분한 양의 데이터로 잘 학습된 A 모델에 기반하여 데이터가 부족한 B의 목소리를 효율적으로 학습하는 것이 가능합니다.
전이학습 시 사전 학습된 A 모델과 추가 학습할 B 모델의 분포가 큰 차이를 보이는 경우 음성합성 성능이 크게 떨어지게 됩니다. 솔트룩스는 이러한 데이터 부조화 따른 학습 성능 변이 문제를 해결하기 위해 여러 사람의 음성으로 이루어진 수십 시간의 데이터를 사용하여 음성합성 네트워크의 일부만을 미리 학습시켜 놓는 준지도학습(Semi-Supervised Learning) 방법을 추가로 적용하고 있습니다. 준지도학습은 전사 데이터 없이 음성 데이터만으로 학습을 수행하는 것으로, 인간이 글을 배우기 전에 말하는 법을 배우는 것과 같은 원리입니다. 솔트룩스는 전이학습과 함께 준지도학습 모델을 음성합성에 적용하므로 학습 시간을 현격하게 줄이면서 동시에 음성합성 성능을 극대화할 수 있습니다. 현재 솔트룩스의 음성합성 엔진은 30분 분량의 음성데이터로 특정인의 목소리를 학습, 높은 품질의 발화하는 것이 가능합니다.
< 사전 데이터 관리 기능 >
< 서비스 관리 기능 >
< 학습데이터 관리 기능 >
< 학습모델 관리 기능 >