Imitator głosu - deepfake. Synteza mowy w języku polskim przy pomocy konwolucyjnych sieci neuronowych

Program pozwala na generowanie (imitację) mowy wybranej osoby (spersonalizowany syntezator mowy). System bazuje na głębokich splotowych sieci neuronowych (CNN), zajmujących się przetwarzaniem sekwencyjnych danych w postaci mowy. Synteza sekwencji oparta na CNN jest znacznie szybsza niż synteza oparta na rekurencyjnych sieciach neuronowych. Do wyszkolenia sieci przygotowano polskojęzyczną bazę ponad 12 tysięcy par tekst - dźwięk, o łącznym czasie trwania prawie 20 godzin. Posłużyło to do wytrenowania sieci neuronowej - program nauczył się brzmienia mojego głosu i może posłużyć do wypowiadania dowolnych kwestii moim głosem (oczywiście także innych niż te, które znajdowały się w zbiorze uczącym). Wygenerowany głos jest następnie przetwarzany przez filtry cyfrowe. Uzyskany efekt jest bardziej naturalny niż w przypadku syntezatorów mowy typu Ivona.

Specjalna aplikacja wyświetlała losowej długości fragmenty 3 książek w języku polskim, które następnie czytałem. Mój głos i odpowiadający mu tekst był zapisywany na dysku. Po zebraniu ponad 12 tysięcy rekordów i wstępnym przetworzeniu plików audio wytrenowano splotową sieć neuronową. Przykład wygenerowanej mowy został umieszczony poniżej.

Okazało się, że dość dobre wyniki możemy uzyskać już przy łącznie 2-3h nagranej mowy. System zostanie zaimplementowany w projekcie syntezatora osób zmarłych i posłuży w przyszłości do wizualizacji tych osób na podstawie nagrań pochodzących np. z kaset VHS.

Bibliografia:

- https://arxiv.org/abs/1710.08969.

https://www.tensorflow.org/

- Bengio Yoshua, Courville Aaron, Goodfellow Ian, Deep Learning. Systemy uczące się, Wydawnictwo Naukowe PWN, Warszawa, 2018

 

Przykład syntezy zdania: "To jest przykład imitacji mojego głosu przez program komputerowy. Teraz spróbuję zrobić to samo z głosem kogoś innego i zobaczymy, co z tego wyjdzie - już niedługo."