Brevet FR3160801A1 — publié le 20251003

Procédé de synthèse de voix et dispositif de synthèse associé La présente invention concerne un procédé de synthèse d’un signal vocal, le procédé étant mis en œuvre par ordinateur et comprenant les étapes de: - obtention d’un flux codé selon un codage de prédiction linéaire à excitation mixte, - extraction des paramètres du flux codé, - application d’au moins un réseau de neurones sur les paramètres extraits pour obtenir la densité de probabilité du signal résiduel de prédiction linéaire associée au flux codé, - génération d’une estimation du signal résiduel de prédiction linéaire signal estimé à partir de la densité de probabilité obtenue, pour obtenir un signal d’excitation, et - synthèse de la voix à partir du signal d’excitation. Figure : figure 1 Procédé de synthèse de voix et dispositif de synthèse associé La présente invention concerne un procédé de synthèse de voix. La présente invention se rapporte à un dispositif de synthèse de voix. La présente invention concerne aussi un produit programme d'ordinateur et un support d’informations correspondant. Dans le domaine des radiocommunications, des échanges de signaux vocaux sont souvent à réaliser. Pour cela, il est souvent réalisé une compression du signal vocal pour limiter la quantité d’informations à échanger. En particulier, il est connu d’utiliser comme technique de compression un codage de prédiction linéaire à excitation mixte. Un codage de prédiction linéaire à excitation mixte est plus souvent désigné par l’expression codage MELP qui renvoie à la dénomination anglaise correspondante de « Mixed Excitation Linear Prediction ». Ce codage est notamment décrit dans le document « The 1200 and 2400 bit/s NATO Interoperable Narrow Band Voice Coder », STANAG N°4591, NATO Standardization Agency. Toutefois, la reconstruction du signal ainsi codé par un décodage MELP conduit à un signal synthétique ne présentant pas toutes les caractéristiques du signal vocal original. Il existe donc un besoin pour un procédé de synthèse de voix qui permette de reconstruire un signal vocal plus proche du signal vocal original dans le cadre d’une compression du signal vocal original par un codage MELP. A cet effet, la description décrit un procédé de synthèse d’un signal vocal, le procédé étant mis en œuvre par ordinateur et comprenant les étapes de: - obtention d’un flux codé selon un codage de prédiction linéaire à excitation mixte, - extraction des paramètres du flux codé, - application d’au moins un réseau de neurones sur les paramètres extraits pour obtenir la densité de probabilité du signal résiduel de prédiction linéaire associée au flux codé, - génération d’une estimation du signal résiduel de prédiction linéaire à partir de la densité de probabilité obtenue, pour obtenir un signal d’excitation, et - synthèse de la voix à partir du signal d’excitation. Selon des modes de réalisation particuliers, le procédé de synthèse présente une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou selon toutes les combinaisons techniquement possibles : - lors de l’étape d’application, l’au moins un réseau de neurones est appliqué sur l’ensemble des paramètres extraits. - la densité de probabilité du signal résiduel de prédiction linéaire est modélisée par un modèle de mélange de gaussiennes, l’au moins un réseau de neurones prédisant, pour chaque gaussienne du modèle de mélange de gaussiennes, au moins un paramètre de distribution et le poids de la gaussienne. - un réseau de neurones prédit les paramètres de distribution et un autre réseau de neurones prédit les poids de chaque gaussienne. - chaque réseau de neurones prédit un paramètre respectif de chaque gaussienne. - le procédé comporte une étape de détermination de la fréquence fondamentale, le réseau de neurone utilisé lors de l’étape d’application dépendant d’un intervalle de fréquences dans lequel se trouve la fréquence fondamentale déterminée. - le réseau de neurone utilisé lors de l’étape d’application dépend du type de voisement. - l’au moins un réseau de neurones comporte des premières couchant formant un réseau initial, le réseau initial étant un réseau de neurones convolutifs, un réseau de neurones à longue mémoire à court terme ou un réseau de neurones récurrents à portes. La description décrit aussi un dispositif de synthèse d’un signal vocal, le dispositif de synthèse étant propre à : - obtenir un flux codé selon un codage de prédiction linéaire à excitation mixte, - extraire des paramètres du flux codé, - appliquer au moins un réseau de neurones sur les paramètres extraits pour obtenir la densité de probabilité du signal résiduel de prédiction linéaire associée au flux codé, - générer une estimation du signal résiduel de prédiction linéaire à partir de la densité de probabilité obtenue, pour obtenir un signal d’excitation, et - synthétiser la voix à partir du signal d’excitation. La description propose aussi un produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur. La description décrit aussi un support lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur. Dans la présente description, l’expression « propre à » signifie indifféremment « adapté pour », « adapté à » ou « configuré pour ». Des caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels : - FIG. 1 la FIG. 1 est une représentation d’un dispositif de synthèse vocal, - FIG. 2 la FIG. 2 est un exemple de réseau de neurones utilisé par le dispositif de synthèse vocal, - FIG. 3 la FIG. 3 est un autre exemple de réseau de neurones utilisé par le dispositif de synthèse vocal, et - FIG. 4 la FIG. 4 est encore un autre exemple de réseau de neurones utilisé par le dispositif de synthèse vocal. Un dispositif de synthèse vocal est représenté schématiquement sur la FIG. 1 . Le dispositif de synthèse vocal est propre à synthétiser un signal vocal à partir d’un flux incident codé. Dans l’exemple décrit, le dispositif de synthèse vocal comprend un récepteur 12, un calculateur 14 et un émetteur 16. Le récepteur 12 est propre à recevoir des signaux extérieurs. Par exemple, le récepteur 12 est une antenne. Le calculateur 14 est propre à mettre en œuvre un procédé de synthèse d’un signal vocal qui sera décrit ultérieurement. Le calculateur 14 est un circuit électronique conçu pour manipuler et/ou transformer des données représentées par des quantités électroniques ou physiques dans des registres du calculateur et/ou des mémoires en d'autres données similaires correspondant à des données physiques dans les mémoires de registres ou d'autres types de dispositifs d'affichage, de dispositifs de transmission ou de dispositifs de mémorisation. En tant qu’exemples spécifiques, le calculateur 14 est réalisé sous forme d’un composant logique programmable, tel qu’un FPGA (de l’anglais Field Programmable Gate Array ), ou encore d’un circuit intégré, tel qu’un ASIC (de l’anglais Application Specific Integrated Circuit ). Il pourrait également être envisagé d’utiliser un processeur numérique digital ou DSP (de l’anglais « Digital Signal Processor »), un processeur GPP (de l’anglais « General Purpose Processor ») ou un processeur neuronal. En variante, lorsque le procédé est réalisé sous forme d’un ou plusieurs logiciels, c’est-à-dire sous forme d’un programme d’ordinateur, également appelé produit programme d’ordinateur, il est en outre apte à être enregistré sur un support, non représenté, lisible par ordinateur. Le support lisible par ordinateur est par exemple un medium apte à mémoriser des instructions électroniques et à être couplé à un bus d’un système informatique. A titre d’exemple, le support lisible est un disque optique, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, tout type de mémoire non-volatile (par exemple FLASH ou NVRAM) ou une carte magnétique. Sur le support lisible est alors mémorisé un programme d’ordinateur comprenant des instructions logicielles. L’émetteur 16 est propre à émettre le signal synthétisé par le calculateur 14. Par exemple, l’émetteur 16 est un haut-parleur. Il est maintenant décrit un exemple de procédé de synthèse d’un signal vocal. Le procédé de synthèse est procédé visant à obtenir un signal vocal synthétisé à partir d’un flux incident codé. Pour cela, selon l’exemple décrit, le procédé de synthèse comporte une étape d’obtention, une étape d’extraction, une étape d’application, une étape de génération et une étape de synthèse. Lors de l’étape d’obtention, le calculateur 14 obtient un flux codé selon un codage MELP. Le flux codé correspond ici au résultat de l’application d’un codage MELP sur un signal vocal que l’on souhaite transmettre. Le signal vocal transmis est le signal que vise à synthétiser le procédé de synthèse. Dans un mode de réalisation, le récepteur 12 reçoit le flux codé et le transmet au calculateur 14. Le calculateur 14 obtient ainsi le flux codé par interaction avec le récepteur 12. Le flux codé est un ensemble de trames, chaque trame étant codifiée sur un nombre de bits prédéfinis selon le type de codage MELP appliqué. Par exemple, pour un codage MELP 2400 bits/s, une trame est quantifiée sur 54 bits ; pour un codage MELP 1200 bits/s, trois trames sont quantifiées sur 81 bits et pour un codage MELP 600 bits/s, quatre trames sont quantifiées sur 54 bits. Lors de l’étape d’extraction, le calculateur 14 extrait des paramètres du flux codé.Les paramètres d’une trame pouvant être extraits sont choisis parmi les paramètres suivants : les coefficients LSF représentant l’enveloppe spectrale du flux codé. L’abréviation LSF renvoie à la dénomination anglaise correspondante de « Line Spectral Frequencies » qui signifie fréquences de raies spectrales. Les coefficients LSF sont donc les coefficients de fréquences de raies spectrales. les coefficients de Fourier en amplitude, deux gains, chaque gain correspondant à une demie-trame respective, deux paramètres quantifiés conjointement, à savoir les paramètres de pitch (littéralement paramètre de hauteur, le paramètre de pitch correspondant à une estimation de la fréquence fondamentale associée à la fréquence de vibration des cordes vocales) et d’overall voicing (littéralement paramètre de voisement global), un paramètre de jitter (paramètre de gigue en français), un jitter étant ajouté pour éviter un aspect trop robotique du signal synthétisé, et les paramètres indicateurs de voisement par bande de fréquences, plus souvent dénommés sous l’appellation de paramètres de bandpass voicing. Ces paramètres et leurs expressions sont définies par la norme évoquée précédemment. Selon les modes de réalisation, le calculateur 14 extrait un ou plusieurs de ces paramètres. Le calculateur 14 extrait généralement au moins les coefficients, le pitch ou le voisement et les gains pour chaque trame. Lors de l’étape d’application, le calculateur 14 applique au moins un réseau de neurones sur les paramètres extraits. Comme cela décrit ultérieurement en référence aux figures 2 à 4, plusieurs topologies sont envisagées avec un ou plusieurs réseaux de neurones et des paramètres de sortie différents. A titre de remarque, en présence de plusieurs réseaux de neurones, il pourrait être considéré que chaque réseau de neurones est un sous-réseau de neurones d’un réseau de neurones constitué par l’ensemble des sous-réseaux de neurones. Dans la suite, ce terme n’est pas utilisé pour simplifier la lecture du lecteur. L’au moins un réseau de neurones permet, dans l’exemple décrit, d’obtenir la densité de probabilité du signal résiduel de prédiction linéaire associé au flux codé. Comme cela apparaîtra plus loin avec plus de précision, ce résultat est obtenu par l’emploi d’un ou plusieurs réseaux de neurones de type MDN et que la sortie de ce ou ces réseaux permet d’obtenir une description paramétrique de la densité de probabilité des données cibles (plus précisément le signal résiduel LPC). La taille du signal résiduel d’excitation est de taille 2xN0, N0 étant la taille d’une période associée à la valeur du pitch f0. La modélisation par prédiction linéaire permet d’obtenir un ensemble de coefficients de prédiction linéaire par minimisation de l’erreur de prédiction. Le signal résiduel correspond à la différence entre le signal de parole et le signal prédit, et est noté signal résiduel LPC dans la suite. Les coefficients de prédiction linéaire sont plus souvent désignés sous l’appellation de coefficients LPC. L’abréviation LPC renvoie à la dénomination anglaise correspondante de « L inear P rediction Coefficients » qui signifie littéralement « coefficients de prédiction linéaire ». Le modèle utilisé pour la probabilité est un modèle de mélange de gaussiennes. Du point de vue de notations, Ng désignera le nombre de gaussiennes (plus précisément le nombre de poids, à savoir 1 par gaussienne), taille L d’un vecteur sera 2xN0 (N0 étant la taille d’une période) et la taille P du vecteur de sortie du réseau de neurones sera Ng + 2 x Ng x L. Il peut être noté ici que les gaussiennes sont multidimensionnelle (taille L), et sont représentées sur les figures comme des gaussiennes monodimensionnelle pour faciliter la compréhension. Un tel modèle est souvent désigné par l’acronyme GMM qui renvoie à la dénomination anglaise correspondante de « Gaussian Mixture Model ». Un modèle de mélange de gaussiennes est un modèle statistique exprimé selon une densité mélange. Il sert d'habitude à estimer de façon paramétrique la distribution de variables aléatoires en les modélisant comme somme de plusieurs gaussiennes, appelées noyaux. Il s'agit alors de déterminer la variance, la moyenne et l'amplitude de chaque gaussienne. Ces paramètres sont optimisés selon le critère de maximum de vraisemblance afin d'approcher le plus possible la distribution recherchée. Du fait d’une telle sortie, l’au moins un réseau de neurones considéré ici est un réseau de neurones probabiliste. D’un point de vue très schématique, un réseau de neurones classique comporte une succession ordonnée de couches de neurones dont chacune prend ses entrées sur les sorties de la couche précédente. Plus précisément, chaque couche comprend des neurones prenant leurs entrées sur les sorties des neurones de la couche précédente, ou bien sur les variables d’entrée pour la première couche. En variante, des structures de réseaux de neurones plus complexes peuvent être envisagées avec une couche qui peut être reliée à une couche plus lointaine que la couche immédiatement précédente. À chaque neurone est également associée une opération, c’est-à-dire un type de traitement, à effectuer par ledit neurone au sein de la couche de traitement correspondante. Chaque couche est reliée aux autres couches par une pluralité de synapses. Un poids synaptique est associé à chaque synapse, et chaque synapse forme une liaison entre deux neurones. C’est souvent un nombre réel, qui prend des valeurs positives comme négatives. Dans certains cas, le poids synaptique est un nombre complexe. Chaque neurone est propre à effectuer une somme pondérée des valeur(s) reçue(s) de la part des neurones de la couche précédente, chaque valeur étant alors multipliée par le poids synaptique respectif de chaque synapse, ou liaison, entre ledit neurone et les neurones de la couche précédente, puis à appliquer une fonction d’activation, typiquement une fonction non-linéaire, à ladite somme pondérée, et à délivrer en sortie dudit neurone, en particulier aux neurones de la couche suivante qui lui sont connectés, la valeur résultant de l’application de la fonction d’activation. La fonction d’activation permet d’introduire une non-linéarité dans le traitement effectué par chaque neurone. La fonction sigmoïde, la fonction tangente hyperbolique, la fonction de Heaviside sont des exemples de fonction d’activation. En complément facultatif, chaque neurone est également apte à appliquer, en outre, un facteur multiplicatif, également appelé biais, à la sortie de la fonction d’activation, et la valeur délivrée en sortie dudit neurone est alors le produit de la valeur de biais et de la valeur issue de la fonction d’activation. Selon l’exemple décrit, chaque réseau de neurones est ici un réseau de neurones à densité mixte. Un tel réseau de neurones est souvent désigné sous l’acronyme MDN, qui correspond à la dénomination anglaise correspondante de « Mixture Density Network ». De tels réseaux sont notamment décrits dans le document intitulé « Mixture Density Networks », C.M. Bishop, Neural Computing Research Group Report, Feb. 1994. Comme cela apparaît plus haut, contrairement à un réseau de neurones traditionnel, le réseau MDN ne produit pas en sortie une estimation du vecteur cible de taille L, mais le modèle statistique génératif (ici un GMM) le plus vraisemblable. Trois topologies sont possibles: une première topologie consiste à utiliser un réseau unique pour prédire l’ensemble des paramètres du modèle GMM, une deuxième topologie consiste à utiliser un réseau par type de paramètres (poids, moyennes, variances), et une troisième topologie consiste à utiliser un réseau pour les poids et un réseau pour les paramètres des gaussiennes (moyennes et variances). Une description plus complète est maintenant en référence aux figures 2 à 4. Selon une première topologie illustrée par la FIG. 2 , un unique réseau de neurones est appliqué sur l'ensemble des paramètres extraits. Selon l’exemple représenté, l’unique réseau de neurone détermine en sortie, pour chaque gaussienne (trois dans le cas représenté), la variance, la moyenne et le poids. Ces grandeurs sont notées σ, μ et W avec un indice i sur la FIG. 2 . La densité de probabilité est modélisée par une somme pondérée de gaussiennes (modèle GMM). Pour chaque gaussienne (caractérisée par sa moyenne et sa variance) est associé un poids. A partir de ces paramètres, il est généré la densité de probabilité du signal résiduel LPC associée au flux codé. Le modèle génératif ainsi obtenu en sortie permet de synthétiser un résiduel d’excitation LPC pitch synchrone. Ce dernier étage de prétraitement étant le même pour l’ensemble des topologies présentées, il n’est pas répété pour les deuxième et troisième topologies. Selon une deuxième topologie correspondant à la FIG. 3 , il est utilisé deux réseaux de neurones distincts. Le premier réseau de neurones prédit les poids de chaque gaussienne et le deuxième réseau de neurones prédit les paramètres de distribution de chaque gaussienne. Plus précisément, dans l’exemple illustré à trois gaussiennes, le premier réseau de neurones appliqué sur l’ensemble des paramètres extraits donne en sortie le poids de la première gaussienne, le poids de la deuxième gaussienne et le poids de la troisième gaussienne. Le deuxième réseau de neurones donne lui en sortie la variance et la moyenne de la première gaussienne, la variance et la moyenne de la deuxième gaussienne et la variance et la moyenne de la troisième gaussienne. Selon une deuxième topologie correspondant à la FIG. 4 , il est utilisé trois réseaux de neurones distincts, chaque réseau de neurones prédisant un paramètre respectif de chaque gaussienne. Plus précisément, dans l’exemple illustré à trois gaussiennes, le premier réseau de neurones appliqué sur l’ensemble des paramètres extraits donne en sortie le poids de la première gaussienne, le poids de la deuxième gaussienne et le poids de la troisième gaussienne. Le deuxième réseau de neurones donne lui en sortie la moyenne de la première gaussienne, la moyenne de la deuxième gaussienne et la moyenne de la troisième gaussienne. Il peut être précisé ici que chaque gaussienne est multidimensionnelle au sens où la variance et la moyenne sont des vecteurs. Les poids sont néanmoins des scalaires. Enfin, le troisième réseau de neurones donne lui en sortie la variance de la première gaussienne, la variance de la deuxième gaussienne et la variance de la troisième gaussienne. Dans chacune des topologies, le réseau de neurones appliqué peut être obtenu par toute technique d’apprentissage connue. L’apprentissage se fait à partir d’un corpus aligné des paramètres MELP et des périodes du signal résiduel LPC calculé à partir du signal d’origine. Plus précisément, la constitution du corpus d’apprentissage se fait à partir de la modélisation MELP. Le signal résiduel LPC est découpé en vecteurs de 2xN0, en utilisant le pitch fourni par le codage MELP et après synchronisation par maximisation de l’inter-corrélation entre le signal résiduel LPC et le signal d’excitation synthétisé par le codage MELP. Une telle approche permet d’associer à chaque jeu de paramètres MELP une portion du signal résiduel de durée 2 x N0, et de constituer ainsi le corpus d’apprentissage. Alternativement, tout autre approche propre à réaliser une segmentation pitch-synchrone du signal résiduel peut être utilisée ici. Selon un mode de réalisation, pour améliorer les performances de prédiction, il peut également être prévu un étage de prétraitement des entrées du réseau de neurones. L’étage de prétraitement se trouve donc en amont de la couche d’entrée du réseau de neurones. Comme son nom l’indique, l’étage de prétraitement met en œuvre une opération de prétraitement de certains des paramètres extraits. De plus, l’étage de prétraitement effectue ici une conversion pouvant varier d’un mode de réalisation à l’autre. Selon un exemple, l’opération de prétraitement comporte une conversion des coefficients LSF en coefficients cepstraux. En pratique, une telle conversion se fait généralement en deux temps par un passage intermédiaire à une représentation LPC. Les coefficients cepstraux sont les coefficients d’une représentation LPCC de l’enveloppe. Les coefficients cepstraux sont ainsi plus souvent désignés sous la dénomination coefficients LPCC en référence à l’appellation anglaise de « linear prediction cepstral coefficients ». Selon un autre exemple ou en complément, l’opération de prétraitement comporte une conversion de coefficients incidents dans le domaine fréquentiel. Par coefficients incidents, il est entendu que l’ensemble d’au moins une couche prend en entrée des coefficients incidents d’une représentation. Les coefficients incidents sont ici les coefficients cepstraux. Aussi, dans l’exemple décrit, les coefficients obtenus après passage dans le domaine fréquentiel sont des coefficients d’enveloppe log-spectrale, plus simplement dénommés ici coefficients DCT. Ces coefficients sont obtenus par transformation DCT des coefficients LPCC. L’abréviation DCT désigne la technique ayant permis la conversion vers le domaine fréquentiel et renvoie à la dénomination anglaise correspondante de « Discrete Cosine Transform » qui signifie transformée en cosinus discrète. Ainsi, avec les exemples proposés, au lieu des coefficients LSF, on pourra donc utiliser en entrée du réseau de neurones les coefficients LPCC ou les coefficients DCT. Ces changements de représentation pour l’enveloppe permettent d’obtenir une représentation plus aisément représentable que la représentation à l’aide des coefficients LSF. Dans chacun des cas, l’application de l’un ou chaque réseau de neurones permet ainsi d’obtenir la densité de probabilité du signal résiduel LPC. Lors de l’étape de génération, le calculateur 24 génère le signal d’excitation (signal estimé du signal résiduel de prédiction) en fonction de la densité de probabilité obtenue. Plus précisément, le calculateur 24 génère une estimation du signal résiduel LPC sur l’horizon de deux périodes de pitch en fonction de la densité de probabilité obtenue. Ce signal est à comparer au cas de la synthèse réalisée lors du décodage MELP. En effet, le signal d’excitation du modèle LPC est obtenu à partir d’une hypothèse simplificatrice, à savoir la présence d’une impulsion localisée et le caractère aléatoire de la phase pour les bandes de fréquences non voisées. Dans un tel décodage, un filtre de dispersion de phase est utilisé pour simuler la forme de l’impulsion glottique, ce filtre étant un filtre triangulaire blanchi. Le réseau de neurones proposé dans le présent procédé permet de prédire simultanément l’ensemble des informations, de sorte que le filtre de dispersion n’est plus nécessaire. Le décodage MELP repose ainsi sur l’hypothèse d’une forme triangulaire invariante, alors que l’utilisation du réseau permet de prédire une forme plus proche d’un signal naturel. Lors de l’étape de synthèse, le calculateur 14 synthétise la voix à partir du signal résiduel obtenu lors de l’étape de génération. Une telle synthèse se fait en appliquant un décodage MELP sur le signal d’excitation obtenu à l’issue de l’étape de génération. Plus précisément, il est exploité la modélisation sur deux périodes consécutives du signal résiduel de prédiction linéaire. Les vecteurs cibles (et donc les vecteurs générés à partir des modèles GMM prédits par le réseau de neurones MDN) sont pondérés par une fenêtre d’analyse lors de l’apprentissage, ce qui permet une synthèse de type addition-recouvrement. Une telle synthèse est souvent désignée par l’acronyme OLA, qui renvoie à la dénomination anglaise correspondante de « OverLap-and-Add ». Un exemple de telle fenêtre est une racine carrée d’une fenêtre de Hanning. Cette fenêtre est à nouveau appliquée sur le vecteur prédit avant la synthèse OLA, ce qui revient au final à appliquer une fenêtre de Hanning sur l’ensemble du cycle analyse-synthèse, l’analyse étant ici associée à la phase d’apprentissage. Le procédé permet ainsi d’obtenir le signal vocal à synthétiser à partir du flux MELP (codé par la technique MELP) original. Dans le procédé décrit, l’emploi d’un réseau MDN permet de générer un modèle génératif du signal d’excitation et non le signal d’excitation directement. Cette particularité permet de prendre en compte la variabilité temporelle au moment de la synthèse, ce qui contribue au rendu naturel de la voix synthétisée. En effet, l’utilisation du modèle génératif permet de générer une variabilité temporelle contrôlée du signal d’excitation à partir d’un même jeu de paramètres MELP et ainsi permet la synthèse d’un signal d’excitation plus proche d’un signal naturel en proposant une meilleure modélisation de ses différentes composantes. La mise en œuvre du procédé de synthèse est en outre relativement aisée dans la mesure où le décodage demeure identique à celui d’un décodeur MELP à l’exception de la génération du signal d’excitation. D’autres modes de réalisation bénéficiant de mêmes avantages peuvent être envisagés. Dans les topologies décrites précédemment, le réseau de neurones a une structure de type perceptron multicouche. Une telle structure est souvent dénommée sous l’acronyme MLP qui renvoie à la dénomination anglaise correspondante de « Multilayer Perceptron ». Pour mieux prendre en compte les trajectoires temporelles des périodes d’excitation, il pourrait aussi être utilisé une structure de réseau de neurones récurrent, notamment pour certaines couches. Avantageusement, les couches concernées sont les premières couches, de sorte que le réseau de neurones utilisé lors de l’étape d’application comporte un réseau de neurones présentant un réseau de neurones initial, ce réseau initial formant un réseau de neurones récurrent. Un réseau de neurones récurrents est un réseau de neurones artificiels présentant des connexions récurrentes. Un réseau de neurones récurrents est ainsi constitué de neurones interconnectés interagissant non-linéairement et pour lequel il existe au moins un cycle dans la structure. Les unités sont reliées par des synapses qui possèdent un poids. La sortie d'un neurone est une combinaison non linéaire de ses entrées. Un tel réseau de neurones est souvent désigné par l’acronyme RNN qui renvoie à la dénomination anglaise correspondante de « Recurrent Neural N etwork ». En l’occurrence, cela signifie que le réseau de neurones prend en compte des trames passée(s) et future(s) pour faire une prédiction à un instant déterminé en plus de la trame courante (correspondant à l’instant de prédiction). Selon un autre mode de réalisation, le ou chaque réseau de neurones initial est un réseau à longue mémoire à court terme. Un tel réseau est plus souvent désigné par l’acronyme LSTM qui correspond à la dénomination anglaise correspondante de « Long Short-Term Memory ». Selon encore un autre mode de réalisation, le ou chaque réseau de neurones initial est un réseau de neurones récurrents à portes. Un tel réseau est plus souvent désigné par l’acronyme GRU qui correspond à la dénomination anglaise correspondante de « Gated Recurrent Unit ». Des structures de type réseau de neurones convolutifs sont également envisageables pour former ainsi une partie du réseau. Un tel réseau est plus souvent désigné par l’acronyme CNN qui correspond à la dénomination anglaise correspondante de « C onvolutional N eural N etworks ». Ainsi, selon les modes de réalisation, l’au moins un réseau de neurones initial comporte un réseau CNN, un réseau LSTM ou un réseau GRU. Il est également possible de prendre en compte d’autres éléments au niveau des réseaux de neurones. Par exemple, selon un mode de réalisation, le procédé comporte une étape de détermination de la fréquence fondamentale, le réseau de neurone utilisé lors de l’étape d’application dépendant d’un intervalle de fréquences dans lequel se trouve la fréquence fondamentale déterminée. Ce revient à utiliser plusieurs réseaux MDN en fonction de plages de pitch prédéfinies (qui conditionnent la taille des périodes d’excitation. Selon un mode de réalisation, les réseaux de neurones diffèrent pour l’ensemble des coefficients. Selon un autre mode de réalisation, le réseau de neurones diffère, par exemple, pour la couche de sortie qui peut alors être optimisée pour un sous-espace de données (conditionné par le pitch et/ou l’information de voisement). Selon un exemple, dans ce contexte, l’apprentissage comprend deux apprentissages. Le premier apprentissage est un apprentissage global réalisé sur l’ensemble du corpus en utilisant une couche de sortie dimensionnée pour la période pitch la plus longue (lorsque le vecteur cible est plus court, on complète le vecteur cible de part et d’autre par des zéros). Le deuxième apprentissage est réalisé par sous-espace en figeant tout ou partie des premières couches du réseau. La dernière couche est alors redimensionnée en sortie en utilisant la taille la plus grande du vecteur cible pour l’intervalle considéré. Le découpage selon la valeur de pitch peut être réalisé comme suit : il est défini des bornes des intervalles de façon à avoir une répartition équilibrée des données d’apprentissage dans chaque intervalle. Il peut être avantageux dans certains cas que les intervalles définis présentent un recouvrement. En pratique, il pourra être choisi un nombre de 4 intervalles. Un tel découpage permet notamment d’éviter la présence dans un même intervalle d’une fréquence de pitch et de sa fréquence double ou moitié. Selon un autre exemple, le réseau de neurone utilisé lors de l’étape d’application dépendant du type de voisement issu du MELP. Plus précisément, une optimisation de la dernière couche en fonction de l’information de voisement peut être réalisée. Pour chaque réseau de neurones obtenu par une des techniques précédentes (apprentissage global ou apprentissage par intervalle de pitch), le réseau de neurones est ré-optimisé en figeant tout ou partie des premières couches (au moins la dernière couche est optimisé) pour les données correspondant à un critère de voisement prédéfini. Un critère de voisement possible consiste à définir par exemple trois niveaux de voisement en fonction du vecteur de voisement du MELP (5 sous-bandes), à savoir : non-voisé ou faiblement voisé : (0,0,0,0,0) et (1,0,0,0,0) voisé (1,1,0,0,0) et (1,1,1,0,0), et fortement voisé (1,1,1,1,0) et (1,1,1,1,1). Dans cet exemple spécifique, il peut être envisagé des réseaux de neurones pour chaque couple différent d’intervalles de pitch et de types de voisement. Comme il y a 4 intervalles de pitch et 3 types de voisement, cela conduit à 12 réseaux de neurones qui ne diffèrent que par la couche de sortie. Ceci permet de limiter le nombre total de coefficients). Alternativement, il peut être envisagé d’utiliser des réseaux de neurones distincts mais au prix d’une place mémoire impliquée bien supérieure. Dans chacun des cas, le procédé de synthèse de voix qui permet de reconstruire un signal vocal plus proche du signal vocal original dans le cadre d’une compression du signal vocal original par un codage MELP. Procédé de synthèse d’un signal vocal, le procédé étant mis en œuvre par ordinateur et comprenant les étapes de: - obtention d’un flux codé selon un codage de prédiction linéaire à excitation mixte, - extraction des paramètres du flux codé, - application d’au moins un réseau de neurones sur les paramètres extraits pour obtenir la densité de probabilité du signal résiduel de prédiction linéaire associée au flux codé, - génération d’une estimation du signal résiduel de prédiction linéaire à partir de la densité de probabilité obtenue, pour obtenir un signal d’excitation, et - synthèse de la voix à partir du signal d’excitation. Procédé de synthèse selon la revendication 1, dans lequel, lors de l’étape d’application, l’au moins un réseau de neurones est appliqué sur l’ensemble des paramètres extraits. Procédé de synthèse selon la revendication 1 ou 2, dans lequel la densité de probabilité du signal résiduel de prédiction linéaire est modélisée par un modèle de mélange de gaussiennes, l’au moins un réseau de neurones prédisant, pour chaque gaussienne du modèle de mélange de gaussiennes, au moins un paramètre de distribution et le poids de la gaussienne. Procédé de synthèse selon la revendication 3, dans lequel un réseau de neurones prédit les paramètres de distribution et un autre réseau de neurones prédit les poids de chaque gaussienne. Procédé de synthèse selon la revendication 3, dans lequel chaque réseau de neurones prédit un paramètre respectif de chaque gaussienne. Procédé de synthèse selon l’une quelconque des revendications 1 à 5, dans lequel le procédé comporte une étape de détermination de la fréquence fondamentale, le réseau de neurone utilisé lors de l’étape d’application dépendant d’un intervalle de fréquences dans lequel se trouve la fréquence fondamentale déterminée. Procédé de synthèse selon l’une quelconque des revendications 1 à 6, dans lequel le réseau de neurone utilisé lors de l’étape d’application dépend du type de voisement. Procédé de synthèse selon l’une quelconque des revendications 1 à 7, dans lequel l’au moins un réseau de neurones comporte des premières couchant formant un réseau initial, le réseau initial étant un réseau de neurones convolutifs, un réseau de neurones à longue mémoire à court terme ou un réseau de neurones récurrents à portes. Dispositif de synthèse d’un signal vocal, le dispositif de synthèse étant propre à : - obtenir un flux codé selon un codage de prédiction linéaire à excitation mixte, - extraire des paramètres du flux codé, - appliquer au moins un réseau de neurones sur les paramètres extraits pour obtenir la densité de probabilité du signal résiduel de prédiction linéaire associée au flux codé, - générer une estimation du signal résiduel de prédiction linéaire à partir de la densité de probabilité obtenue, pour obtenir un signal d’excitation, et - synthétiser la voix à partir du signal d’excitation. Produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes d’un procédé selon l’une quelconque des revendications 1 à 8. Support lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes d’un procédé selon l’une quelconque des revendications 1 à 8.