University of Oulu

Syväoppimiseen perustuva suomenkielinen neuroverkkopohjainen puhesynteesi ja sen suoriutuminen sulautetussa järjestelmässä

Saved in:
Author: Ailunka, Ville1; Laurila, Konsta1; Seppä, Aleksanteri1
Organizations: 1University of Oulu, Faculty of Information Technology and Electrical Engineering, Computer Science
Format: ebook
Version: published version
Access: open
Online Access: PDF Full Text (PDF, 2.8 MB)
Pages: 39
Persistent link: http://urn.fi/URN:NBN:fi:oulu-202308192946
Language: Finnish
Published: Oulu : V. Ailunka; K. Laurila; A. Seppä, 2023
Publish Date: 2023-08-21
Thesis type: Bachelor's thesis
Tutor: Tokola, Teemu
Description:

Tiivistelmä

Puhesynteesi on oleellinen osa nykyaikaisia ja yhä enemmän käytettäviä TTS-järjestelmiä. Nykyaikaiset TTS-järjestelmät kykenevät tuottamaan luonnollista ja monipuolista puhetta moneen eri käyttötarkoitukseen, kuten esimerkiksi helppokäyttöisyystyökaluihin. Kun toteutetaan suomenkielinen syväoppivaan neuroverkkoon perustuva järjestelmä osaksi sosiaalisen robotin kokonaisuutta, tulisi synteesin tapahtua tarpeeksi nopeasti ja syntetisoidun puheen tulisi olla laadukasta ja luonnollista, jotta mahdollinen vuorovaikutus robotin kanssa olisi mahdollisimman hyvälaatuista. Puhesynteesijärjestelmän tulisi siis toimia osana sosiaalista robottia yhdessä mahdollisen keskustelumoduulin ja puheentunnistusmoduulin kanssa. Toteutettu puhesynteesimoduuli vastaanottaa syötteenä tekstin, joka syntetisoidaan raaka-aaltomuotoiseksi ääneksi eli puheeksi tiedostoon, joka lopulta toistetaan kaiuttimesta.

Perinteisesti puhesynteesin menetelmiä ovat olleet formanttisynteesi, HMM-pohjainen puhesynteesi ja konkatenaatiosynteesi, joista myöhemmin on edetty neuroverkkopohjaisiin menetelmiin. Jotta saavutetaan laadukasta puhesynteesiä, tulisi neuroverkkomallia kouluttaa mahdollisimman laajalla aineistolla, joka kattaisi suomen kielen äänteet ja sananpainotukset.

End-to-end -syväoppimiseen perustuva neuroverkkopohjainen puhesynteesimalli VITS valittiin työhön toteutettavaksi malliksi. Mallin kouluttaminen toteutettiin Google Colab -ympäristössä, joka tarjoaa tarvittavia resursseja mallin kouluttamista varten. Neuroverkko koostuu tyypillisesti monista yksinkertaisista toisiinsa kytketyistä prosessoivista yksiköistä, joita kutsutaan myös neuroneiksi. Neuroverkon oppimisessa on kyse siitä, että löydetään haluttuja painotuksia näille neuroneiden yhteyksille, jotta neuroverkko saadaan käyttäytymään halutulla tavalla. Tässä työssä koulutettu neuroverkko oppi tuottamaan aaltomuotoista puhetta sille annetusta tekstisyötteestä.

Kehitetty ja koulutettu puhesynteesimalli arvioitiin subjektiivisella MOS- asteikolla. Puhesynteesimalli kykeni suoriutumaan Raspberry Pi 4 Model B -minitietokoneella, mutta ei vaadittavalla nopeudella, jotta reaaliaikainen keskustelu olisi mahdollista ja luonnollista. Raspberry Pi 4 Model B -minitietokoneen suorituskyky ei siis riittänyt reaaliaikaiseen keskusteluun vaan TTS-järjestelmä toteutettiin robotin omaan ROS2-ympäristöön, jota suoritetaan tehokkaammalla tietokoneella ja jossa sitä voidaan käyttää mahdollisen keskusteluälyn ja puheentunnistuksen kanssa.

Deep learning based speech synthesis system for the Finnish language and its performance in an embedded system

Abstract

Speech synthesis is an integral part of modern TTS systems, which are more prevalent today than in the past. Modern TTS systems are more capable to produce speech, which is more natural and varied, and which has increasingly more applications like on accessibility features. When deep learning based neural network for Finnish speech synthesis is applied as a part of social robot, the synthesized speech should be of high quality and natural. This ensures the best possible quality for an interaction between the user and the social robot. The speech synthesis system should be able to function as a part of a social robot alongside speech logic and speech recognition modules. The developed speech synthesis module takes text as an input, which is synthesized to a raw audio wave, and the resulting audio will be outputted from a speaker.

Traditional methods of speech synthesis, which include formant synthesis, HMM-based synthesis and concatenative synthesis, are supplanted by modern neural network based speech synthesis systems. In order to get the best possible speech synthesis result, the neural network should be trained with an extensive dataset that encompasses all vocal phonemes and stresses in Finnish language.

For this paper a neural network based end-to-end speech synthesis model VITS was chosen. Google Colab was used to train the model, because it had sufficient resources. A neural network is typically a collection of simple evaluation nodes which are called neurons. Learning occurs by manipulating the connections between neurons to produce a desired output. In this research, the neural network was trained to transform text into an audio wave output that resembles human speech.

The speech synthesis model developed and trained in this paper was evaluated on a subjective MOS scale. It was capable of functioning on a Raspberry Pi 4 Model B computer, but real-time conversation was not feasible due to performance constraints. Since the Raspberry Pi 4 Model B couldn’t facilitate real-time speech synthesis for conversation, the TTS system was implemented in its own ROS2 environment on more robust hardware. This setup integrates with potential conversational AI and speech recognition models.

see all

Subjects:
Copyright information: © Ville Ailunka; Konsta Laurila; Aleksanteri Seppä, 2023. Except otherwise noted, the reuse of this document is authorised under a Creative Commons Attribution 4.0 International (CC-BY 4.0) licence (https://creativecommons.org/licenses/by/4.0/). This means that reuse is allowed provided appropriate credit is given and any changes are indicated. For any use or reproduction of elements that are not owned by the author(s), permission may need to be directly from the respective right holders.
  https://creativecommons.org/licenses/by/4.0/