-
Hintergrund
und Zusammenfassung der Erfindung
-
Die vorliegende Erfindung bezieht
sich auf konkatenative Sprachsynthesesysteme. Insbesondere bezieht
sich die Erfindung auf ein System und Verfahren zur Erkennung geeigneter
Randgrenzbereiche für
konkatenatierende Spracheinheiten. Das System verwendet eine mit
Spracheinheitsmodellen bestückte
Spracheinheitsdatenbank.
-
Konkatenative Sprachsynthese existiert
heute in einer Reihe verschiedener Formen, die davon abhängen wie
die konkatenativen Spracheinheiten gespeichert und verarbeitet werden.
Diese Formen schließen
Zeitbereichs-Wellenformrepräsentationen,
Frequenzbereichsrepräsentationen
(wie beispielsweise eine Formantrepräsentation oder eine lineare
Prädiktionscodierung
bzw. LPC-Repräsentation)
oder vielleicht eine Kombination von diesen ein.
-
Ungeachtet der Form von Spracheinheit
wird konkatenative Sprachsynthese durch Erkennen geeigneter Grenzbereiche
an den Rändern
jeder Einheit durchgeführt,
wo Einheiten reibungslos überlappt
werden können,
um neue Klangeinheiten, einschließlich Wörtern und Phrasen, zu synthetisieren. Spracheinheiten
in konkatenativen Sprachsynthesesystemen sind typisch Diphone oder
Halbsilben. Als solches beziehen sich ihre Grenzüberlappungsbereiche in Richtung
der Phonemmitte. Daher könnte,
beispielsweise das Wort "tool" aus den Einheiten "tu" und "ul" zusammengesetzt
werden, das von den Wörtern "tooth" und "fool" abgeleitet ist.
Was bestimmt werden muss ist, wie viele der Quellenwörter in
den Spracheinheiten gespeichert werden sollten, und um wie viel
sie sich, wenn vereinigt, überlappen sollten.
-
In bisheriger Arbeit über konkatenative Text-zu-Sprache-Systemen
(TTS-Systemen), kamen eine Reihe von Verfahren zur Bestimmung von Überlappungsbereichen
zum Einsatz. Beim Entwurf solcher Systeme werden drei Faktoren in
Betracht gezogen:
- • Nahtlose Verkettung: Überlappen
zu Spracheinheiten sollte zwischen einer Einheit und der Nächsten für einen Übergang
sorgen, der glatt genug ist, dass keine abrupte Änderung zu hören ist. Zuhörer sollten
keine Ahnung davon haben, dass die Sprache, die sie hören, aus
Stücken
zusammengesetzt wird.
- • Verzerrungsfreier Übergang: Überlappen
zu Spracheinheiten sollte keinerlei eigene Verzerrung einbringen.
Einheiten sollten so vermischt werden, dass das Ergebnis von nicht überlappter Sprache
nicht zu unterscheiden ist.
- • Minimale
Systembelastung: Die dem Synthesizer auferlegten rechenbetonten
und/oder Speicheranforderungen sollten so klein wie möglich sein.
-
In gegenwärtigen Systemen gibt es einen Trade-off
bzw. Kompromiss zwischen diesen drei Zielen. Kein System ist hinsichtlich
aller drei optimal. Gegenwärtige
Ansätze
lassen sich allgemein gemäß zwei Möglichkeiten
gruppieren, die sie beim Erwägen dieser
Ziele treffen. Die erste ist, ob sie kurze oder lange Überlappungsbereiche
verwenden. Eine kurze Überlappung
kann so schnell wie ein einziger glottaler Impuls sein, während eine
lange Überlappung
den Großteil
eines ganzen Phonems umfassen kann. Die zweite Möglichkeit involviert, ob die Überlappungsbereiche
konsistent sind oder sich kontextuell ändern dürfen. Im ersteren Fall, werden ähnliche
Teile jeder Klangeinheit mit den vorausgehenden und nachfolgenden
Einheiten, ungeachtet dessen was jene Einheiten sind, überlappt;
im letzteren Fall werden die Teile, jedes Mal, wenn die Einheit
verwendet wird, in Abhängigkeit
von benachbarten Einheiten, variiert.
-
Lange Überlappung hat den Vorteil Übergänge zwischen
Einheiten nahtloser zu machen, weil mehr Zeit vorhanden ist subtile
Unterschiede zwischen ihnen auszugleichen. Lange Überlappungen neigen
jedoch dazu Verzerrung zu schaffen. Verzerrung ist die Folge der
Vermischung unähnlicher
Signale.
-
Kurze Überlappung hat den Vorteil
Verzerrung zu minimieren. Bei kurzer Überlappung fällt es leichter
sicherzustellen, dass die Überlappungsteile gut
angepasst sind. Kurze Überlappungsbereiche lassen
sich in etwa als unmittelbare Zustände (im Gegensatz zu dynamisch
variierenden Zuständen) kennzeichnen.
Kurze Überlappung
opfert jedoch nahtlose Verkettung, die in Systemen mit langer Überlappung
vorzufinden ist.
-
Obwohl es wünschenswert wäre, die
Nahtlosigkeit von Techniken langer Überlappung und die geringe
Verzerrung von Techniken kurzer Überlappung
zu haben, konnte dies bisher von keinen Systemen erzielt werden.
Einige heutige Systeme haben, beim Versuch Verzerrung zu minimieren,
damit experimentiert variable Überlappungsbereiche
zu verwenden, während
die Vorteile langer Überlappung
beibehalten werden. Solche Systeme verlassen sich aber stark auf
rechenbetont teure Verarbeitung, was sie für viele Anwendungen unpraktisch
macht.
-
Die
EP-A-0 805 433 offenbart eine automatische
Segmentierung eines Sprachhauptteils für konkatenative Sprachsynthese
auf der Basis von Hidden Markov Modellen.
-
Die vorliegende, wie in den Ansprüchen 1 und
8 beanspruchte, Erfindung setzt eine statistische Modelliertechnik
ein, um die Kerntrajektoriebereiche innerhalb Klangeinheiten zu
identifizieren, und diese Bereiche werden dann dazu verwendet die
optimalen Überlappungsgrenzen
zu identifizieren. Im gegenwärtig
bevorzugten Ausführungsbeispiel
werden Zeitreihendaten unter Verwendung von Hidden Markov Modellen
statistisch modelliert, die auf dem Phonembereich jeder Klangeinheit
konstruiert und dann durch Training oder eingebettete Neuschätzung optimal
ausgerichtet werden.
-
Im bevorzugten Ausführungsbeispiel,
wird erachtet, dass das Anfangs- und Endphonem jeder Klangeinheit
aus drei Elementen besteht: der Kerntrajektorie, einem Übergangselement,
das dem Kernbereich vorausgeht und einem Übergangselement, das dem Kernbereich
nachfolgt. Der Modellierprozess identifiziert diese drei Elemente
optimal, so dass der Kernbereich für alle Fälle des in Frage kommenden
Phonems relativ konsistent bleibt.
-
Nach dem der Kerntrajektoriebereich
identifiziert worden ist, dienen die Anfangs- und Endgrenzen des
Kernbereichs dazu den Überlappungsbereich
abzugrenzen, der danach für
konkatenative Sprachsynthese verwendet wird.
-
Die gegenwärtig bevorzugte Implementierung
verwendet ein statistisches Modell, das eine Datenstruktur für separates
Modellieren des Kerntrajektoriebereichs eines Vokals, ein erstes Übergangselement,
das dem Kerntrajektoriebereich vorausgeht und ein zweites Übergangselement,
das dem Kerntrajektoriebereich nachfolgt, aufweist. Die Datenstruktur
kann vielleicht dazu verwendet werden einen Teil der Klangeinheitsdaten
zu verwerfen, der jenem Teil der Klangeinheit entspricht, der während des
Verkettungsprozesses nicht benutzt werden wird.
-
Die Erfindung hat eine Reihe von
Vorteilen und Verwendungen. Sie lässt sich vielleicht als Basis für die automatisierte
Konstruktion von Spracheinheitsdatenbanken für konkatenative Sprachsynthesesysteme
verwenden. Die automatisierten Techniken verbessern die Qualität abgeleiteter
synthetisierter Sprache und sparen eine signifikante Menge Arbeit
beim Datenbankerfassungsprozess.
-
Um die Erfindung, ihre Ziele und
Vorteile vollkommener zu verstehen, beziehen Sie sich bitte auf die
folgende Spezifikation und die zugehörigen Zeichnungen.
-
Kurzbeschreibung
der Zeichnungen
-
1 ist
ein Blockdiagramm, das zum Verständnis
der konkatenativen Sprachsynthesetechnik nützlich ist;
-
2 ist
ein Flussdiagramm, das illustriert wie Spracheinheiten gemäß der Erfindung
konstruiert werden;
-
3 ist
ein Blockdiagramm, das den konkatenativen Sprachsyntheseprozess
mittels der Spracheinheitsdatenbank der Erfindung illustriert.
-
Beschreibung
des bevorzugten Ausführungsbeispiels
-
Um die von der vorliegenden Erfindung
angewandten Techniken bestens zu würdigen, ist ein grundlegendes
Verständnis
der konkatenativen Sprachsynthese erforderlich. Die 1 illustriert den konkatenativen Sprachsyntheseprozess
durch ein Beispiel, in dem Klangeinheiten (in diesem Fall Silben)
aus zwei verschiedenen Wörtern
verkettet werden, um ein drittes Wort zu bilden. Insbesondere werden
Klangeinheiten aus den Wörtern "suffice" und "tight" kombiniert, um das
neue Wort "fight" zu synthetisieren.
-
Bezugnehmend auf die 1 werden den Wörtern "suffice" und "tight" Zeitreihendaten entnommen, vorzugsweise
an Silbengrenzen, um die Klangeinheiten 10 und 12 zu
definieren. In diesem Fall wird die Klangeinheit 10 wie
bei 14 weiter unterteilt, um den für die Verkettung relevanten
Teil zu isolieren.
-
Die Klangeinheiten werden dann wie
bei 16 ausgerichtet, so dass ein Überlappungsbereich vorhanden
ist, der durch jeweilige Teile 18 und 20 definiert
ist, wobei die Zeitreihendaten vermischt werden, um das neue Wort
wie bei 22 zu synthetisieren.
-
Die vorliegende Erfindung behandelt
speziell den Überlappungsbereich 16,
und insbesondere die Optimierung der Teile 18 und 20,
so dass der Übergang
von einer Klangeinheit auf die andere nahtlos und verzerrungsfrei
ist.
-
Die Erfindung erzielt diese optimale Überlappung
durch eine automatisierte Prozedur, die den Kerntrajektoriebereich
innerhalb des Vokals sucht, wo das Sprachsignal einem dynamische
Muster folgt, das, nichtsdestoweniger, für verschiedene Beispiele desselben
Phonems relativ stabil ist.
-
Die Prozedur für das Entwickeln dieser optimalen Überlappungsbereiche
ist in der 2 veranschaulicht.
Eine Datenbank von Spracheinheiten 30 ist bereitgestellt.
Die Datenbank kann vielleicht Zeitreihendaten enthalten, die verschiedenen
Klangeinheiten entsprechen, die das konkatenative Sprachsynthesesystem
ausmachen. Im gegenwärtig
bevorzugten Ausführungsbeispiel
werden Klangeinheiten den Beispielen gesprochener Wörter entnommen, die
dann an den Silbengrenzen unterteilt werden. In der 2 sind zwei Spracheinheiten 32 und 34 diagrammatisch
dargestellt. Die Klangeinheit 32 wird dem Wort "tight" entnommen und die
Klangeinheit 34 wird dem Wort "suffice" entnommen.
-
Die in der Datenbank 30 gespeicherten
Zeitreihendaten werden zuerst bei 36 parametrisiert. Im Allgemeinen
können
die Klangeinheiten mittels jedweder geeigneten Methodik parametrisiert
werden. Das gegenwärtig
bevorzugte Ausführungsbeispiel parametrisiert
durch Formantanalyse des Phonembereichs innerhalb jeder Klangeinheit.
Formantanalyse ist mit dem Entnehmen der Sprachformantfrequenzen
verbunden (das bevorzugte Ausführungsbeispiel
entnimmt die Formantfrequenzen F1, F2 und F3). Falls erwünscht, kann
der Signalpegel des quadratischen Mittelswerts (RMS) ebenso parametrisiert werden.
-
Obwohl Formantanalyse momentan bevorzugt
wird, können
andere Formen der Parametrisierung ebenso eingesetzt werden. Beispielsweise, könnte vielleicht
Sprachmerkmalentnahme unter Verwendung einer Prozedur wie Lineare
Prädiktionscodierung
(LPC) durchgeführt
werden, um geeignete Merkmalparameter zu identifizieren und zu entnehmen.
-
Nach dem geeignete Parameter entnommen worden
sind, um den Phonembereich jeder Klangeinheit zu repräsentieren,
wird ein Modell konstruiert, um den Phonembereich jeder Einheit,
wie bei 38 dargestellt, zu repräsentieren. Für diesen
Zweck benutzt das gegenwärtig
bevorzugte Ausführungsbeispiel
Hidden Markov Modelle. Im Allgemeinen kann jedoch jedes geeignete
statistische Modell benutzt werden, das zeitvariables oder dynamisches
Verhalten repräsentiert.
Beispielsweise könnte
ein periodisch wiederkehrendes neuronales Netz verwendet werden.
-
Das gegenwärtig bevorzugte Ausführungsbeispiel
modelliert den Phonembereich als in drei separate Zwischenbereiche
unterteilt. Diese Bereiche sind bei 40 illustriert und
schließen
den Kerntrajektoriebereich 42, das dem Kernbereich vorausgehenden Übergangselement 44 und
das dem Kernbereich nachfolgende Übergangselement 46 ein.
Das bevorzugte Ausführungsbeispiel
verwendet separate Hidden Markov Modelle für jeden dieser drei Bereiche. Ein
Modell mit drei Zuständen
kann vielleicht für
die vorausgehenden und nachfolgenden Übergangselemente 44 und 46 verwendet
werden, während
ein Modell mit vier oder fünf
Zuständen
für den
Kerntrajektorie 42 benutzt werden kann (fünf Zustände sind in
der 2 illustriert).
Verwendung einer größeren Zahl
von Zuständen
für den
Kerntrajektoriebereich hilft sicherzustellen, dass die anschließende Prozedur
auf eine konsistente Nichtnull-Kerntrajektorie konvergieren wird.
-
Anfänglich können die Sprachmodelle 40 vielleicht
mit durchschnittlichen Anfangwerten bestückt sein. Danach wird eingebettete
Neuschätzung an
diesen Modellen, wie bei 48 gezeigt, durchgeführt. Neuschätzung konstituiert,
eigentlich, den Trainingsprozess durch den die Modelle optimiert
werden, um die sich wiederholenden Sequenzen innerhalb der Zeitreihendaten
bestens zu repräsentieren.
Der Kerntrajektoriebereich 42 und die vorausgehenden und
nachfolgenden Übergangselemente
sind so konzipiert, dass der Trainingsprozess konsistente Modelle
für jeden
Phonembereich, auf der Basis der tatsächlich via die Datenbank 30 gelieferten
Daten, konstruiert. In dieser Hinsicht repräsentiert der Kernbereich das
Herz des Vokals, und die vorausgehenden und nachfolgenden Übergangselemente
repräsentieren
die Aspekte des Vokals, die dem gegenwärtigen Phonem und den ihm vorausgehenden
und nachfolgenden Klängen
spezifisch sind. Beispielsweise in der Klangeinheit 32,
die dem Wort "tight" entnommen ist, repräsentiert
das vorausgehende Übergangselement
die Färbung,
die dem "ay" Vokalklang durch den
vorausgehenden Konsonant "t" gegeben wird.
-
Der Trainingsprozess konvergiert
natürlich auf
optimal ausgerichtete Modelle. Um zu verstehen wie dem so ist, gilt
es zu erkennen, dass die Datenbank von Spracheinheiten 30 mindestens
zwei, und vorzugsweise viele, Beispiele jedes Vokalklangs enthält. Beispielsweise
wird der sowohl in "tight" als auch "suffice" vorgefundene Vokalklang
durch Klangeinheiten 32 und 34 in der 2 repräsentiert. Der eingebettete
Neuschätzungsprozess
oder Trainingsprozess verwendet diese Pluralfälle vom "ay" Klang,
um die anfänglichen
Sprachmodelle 40 zu trainieren und dadurch die optimal
ausgerichteten Sprachmodelle 50 zu generieren. Der Teil
der Zeitreihendaten, der über
alle Beispiele des "ay" Klangs konsistent
ist, repräsentiert
den Kern oder Kerntrajektoriebereich. Wie bei 50 illustriert,
trainiert das System die vorausgehenden und nachfolgenden Übergangselemente
separat. Natürlich
werden diese, abhängig
von den Klängen,
die dem Vokal vorausgehen und nachfolgen, unterschiedlich sein.
-
Sobald die Modelle trainiert worden
sind, die optimal ausgerichteten Modelle zu generieren, werden die
Grenzen auf beiden Seiten des Kerntrajektoriebereichs ermittelt,
um die Position der Überlappungsgrenzen
für konkatenative
Sprachsynthese zu bestimmen. Daher werden bei Schritt 52 die
optimal ausgerichteten Modelle dazu verwendet die Überlappungsgrenzen
zu bestimmen. Die 2 illustriert Überlappungsgrenzen
A und B, die den Formantfrequenzdaten für die Klangeinheiten überlagert
sind, die aus den Wörtern "suffice" und "tight" abgeleitet wurden.
-
Nach dem die Überlappungsdaten in den Parameterdaten
identifiziert worden sind (in diesem Fall in den Formantfrequenzdaten),
etikettiert das System dann die Zeitreihendaten bei Schritt 54,
um die Überlappungsgrenzen
in den Zeitreihendaten abzugrenzen. Fall erwünscht, können die etikettierten Daten zur
späteren
Verwendung bei der konkatenativen Sprachsynthese in der Datenbank 30 gespeichert werden.
-
Zur Illustration ist der, diagrammatisch
als eine Überlappungsschablone 56 illustrierte, Überlappungsgrenzbereich überlagert
auf eine diagrammatische Repräsentation
der Zeitreihendaten für
das Wort "suffice" gezeigt. Insbesondere
ist die Schablone 56, wie durch Klammer 58 illustriert,
innerhalb der letzteren Silbe "...fice" ausgerichtet. Wenn
diese Klangeinheit für
konkatenative Sprache verwendet wird, kann der vorausgehende Teil 62 verworfen
werden und der Kerntrajektoriebereich 64 (abgegrenzt durch
Grenzen A und B) dient als Überblendungs- oder
Verkettungsbereich.
-
Bei gewissen Implementierungen muss
die Zeitlänge
des Überlappungsbereichs
vielleicht eingestellt werden, um konkatenative Sprachsynthese durchzuführen. Dieser
Prozess ist in der 3 illustriert.
Der Eingabetext 70 wird analysiert und geeignete Spracheinheiten
werden, wie bei Schritt 72 illustriert, aus der Datenbank 30 ausgewählt. Wenn,
beispielsweise, das Wort "fight" als Eingabetext
bereitgestellt wird, kann das System vielleicht vorher gespeicherte
Spracheinheiten auswählen,
die den Wörtern "tight" und "suffice" entnommen wurden.
-
Der Kerntrajektoriebereich der jeweiligen Spracheinheiten
kann vielleicht nicht notwendigerweise dieselbe Zeitmenge überspannen.
Daher kann bei Schritt 74 die Zeitlänge der jeweiligen Kerntrajektoriebereiche
expandiert oder geschrumpft werden, so dass ihre Zeitlängen übereinstimmen.
In der 3 ist der Kerntrajektoriebereich 64a auf 64b expandiert.
Die Klangeinheit B kann vielleicht ähnlich modifiziert werden.
Die 3 illustriert den
Kerntrajektoriebereich 64c, der in den Bereich 64d komprimiert
wird, so dass die jeweiligen Bereiche der zwei Stücke dieselbe
Zeitlänge
haben.
-
Sobald die Zeitlängen passend eingestellt worden
sind, werden die Daten ab den Spracheinheiten bei Schritt 76 vermischt,
um das neu verkettete Wort wie bei 78 zu bilden.
-
Aus dem Vorgenannten wird ersichtlich
sein, dass die Erfindung ein automatisiertes Mittel zur Konstruktion
von Spracheinheitsdatenbanken für
konkatenative Sprachsynthesesysteme bereitstellt. Durch Isolieren
der Kerntrajektoriebereiche, bietet das System eine nahtlose, unverzerrte Überlappung.
Die Überlappungsbereiche
lassen sich, vorteilhaft, auf eine gemeinsame feste Größe expandieren
oder schrumpfen, was den Verkettungsprozess vereinfacht. Auf Grund
des statistischen Modellierungsprozesses, repräsentiert der Kerntrajektoriebereich
einen Teil des Sprachsignals wo die akustischen Spracheigenschaften
einem dynamischen Muster folgen, das für verschiedene Beispiele des
selben Phonems relativ stabil ist. Diese Stabilität ermöglicht einen nahtlosen,
verzerrungsfreien Übergang.
-
Die, nach den Grundsätzen der
Erfindung generierten, Spracheinheiten lassen sich zwecks späterer Entnahme
und Verkettung, bei minimaler Belastung des Computerverarbeitungssystems, leicht
in einer Datenbank speichern. Daher ist das System zum Entwickeln
synthetisierter Sprachprodukte und Anwendungen ideal, wo Verarbeitungsleistung
begrenzt ist. Außerdem
reduziert die automatisierte Prozedur zum Generieren von Klangeinheiten stark
die zur Konstruktion spezieller Spracheinheitsdatenbanken erforderliche
Zeit und Arbeit, wie sie vielleicht für Spezialvokabulare oder für die Entwicklung
mehrsprachiger Sprachsynthesesysteme notwendig ist.