Voice Conversion (VC)
VC는 linguistic content information은 유지한 채로 utterance의 speaker를 target speaker로 변환하는 기술입니다. VC를 하기 위해 과거에는 paired data가 필요했습니다. 최근 몇 년 동안 non-parallel data를 이용하는 다양한 model들이 등장했습니다. DGAN-VC는 adversarial training 방식으로 content information과 speaker information을 분리하도록 학습합니다. StarGAN-VC는 many-to-many voice conversion을 진행하기 위해 conditional input을 사용합니다. 하지만, 두 model다 training 중에 봤던 speaker에 대한 VC만 가능하다는 제약이 존재합니다. Zero-shot 방식들이 고려되기 시작했으며, 어떠한 fine-tuning 없이 model이 모든 speaker에 대한 VC를 수행할 수 있도록 연구되기 시작했습니다. AdaIN-VC는 instance normalization을 이용하여 문제를 해결했습니다. AUTOVC는 pr-trained d-vector와 information bottleneck을 사용하여 이 문제를 해결했습니다.
VC 기술이 최근에 더 발전했지만, 대부분의 논문들은 VC model을 동일한 corpora를 사용하거나 비슷한 recording condition을 사용하는 corpora로 train과 evaluate를 진행했습니다. 하지만 실생활에서는 utterance들의 recording condition들은 매우 다를 수 있습니다. 그래서 좀 더 강건한 VC model들에 대한 요구가 늘어나고 있으며, 연구가 진행되고 있습니다. sampling rate가 다르거나 unseen language에 대한 VC 성능을 향상시키거나 robust한 speaker embedding을 만드는 등 robust에 대한 연구가 진행되고 있습니다.
위 구조는 일반적인 voice conversion framework입니다. 위 model과 같이 speaker timbre와 content information을 분리하여 model을 구현하는 것이 일반적입니다. 이러한 model들은 범용성이 좋으며 다시 사용하기도 좋습니다. speaker embedding으로 i-vector, d-vector 등 speaekr verification에서 잘 동작하는 embedding을 사용합니다.
Voice Conversion (VC)는 deep learning을 통해 최근 몇 년동안 빠르게 발전되었지만, 여전히 서로 다른 condition에서의 자연스럽게 들리는 utterance를 만드는 능력은 부족합니다. 이를 해결하기 위해 speaker embedding을 대체하는 방식과 같이 다양한 연구들이 진행되고 있습니다.
AdaIN-VC의 경우, KL divergence loss, instance normalization layer를 사용하여 content encoder가 linguistic information만 학습하도록 만들었으며, adaptive instance normalization를 이용하여 zero-shot VC를 성공적으로 수행하게 되었습니다.
실험을 진행하는 방식은 매우 다양합니다. 크게 objective metric과 subjective metric으로 나눌 수 있습니다. subjective metric은 preference를 scoring 하거나, similarity 또는 naturalness 관점에서 scoring test를 진행하는 등 청자가 직접 평가하는 방식입니다.
objective metric으로 global variance, character error rate, speaker verification accept rate 등 다양한 방식이 존재합니다. 저자들은 연구 방향과 목표에 따라 적합한 metric을 사용합니다.