-
Die
Erfindung betrifft die Identifizierung einer aus einer Anzahl von
Gruppen von Wörtern.
-
US-A-5,551,049
offenbart eine Technik, in welcher Information über eine aus einer Anzahl von Gruppen
von Wörtern
bestimmt wird, indem ein Kennzeichen eines empfangenen Wortes abgeglichen
wird. Das Kennzeichen wird mit Wortkennzeichen verglichen, die in
Folge gruppiert sind, um Synonymgruppen zu repräsentieren. Wenn eine Übereinstimmung
gefunden ist, wird die Gruppe von Kennzeichen, die das passende
Kennzeichen enthält,
verwendet, um die Synonymgruppe zu erhalten, die das empfangene
Wort enthält.
-
US-A-4,779,188
betrifft ein System zum Erkennen von Schreibfehlern bei Computer-Textverarbeitung.
Um die notwendige Speicherkapazität zu minimieren, werden nur
Wortstämme
gespeichert. Von den gespeicherten Stämmen abgeleitete Wörter werden
vom System trotzdem erkannt, wenn sie in der natürlichen Sprache existieren,
und korrekt geschrieben sind. Um einen der gespeicherten Wortstämme zu identifizieren
und einem Eingabewort zuzuordnen, ist nur eine Entfernung von Suffixen
erforderlich. Das System schließt
nicht die Fähigkeit
ein, einen Suffix durch einen anderen zu ersetzen.
-
US-A-4,864,501
beschreibt ein System zum Kommentieren eines digital codierten Textes,
welches ein Wörterbuch
von Basisformen einschließt. Das
System schließt
einen grammatischen und morphologischen Textanalysator ein. Der
Analysator klassifiziert im Text auftretende Wörter. Die Analyse umfasst eine
detaillierte Untersuchung von Wortstämmen und Suffixvariationen.
Dies kann auch den Schritt des sukzessiven Ersetzens eines Wortsuffix einschließen.
-
Es
ist ein Nachteil des Zugangs von US-A-4,864,501, dass eine ziemlich
komplizierte Datenstruktur erforderlich ist, und dass in Abhängigkeit von
dem Suffix eines im Text auftretenden Wortes und gemäß der vom
Analysator ausgeführten
Klassifikation eine Mehrzahl von verschiedenen Verarbeitungsprozeduren
angewandt werden müssen.
Die Mehrzahl von verschiedenen Prozeduren, die generell eine Mehrzahl
von Verarbeitungs schritten haben, ist deshalb zeitaufwändig. Darüber hinaus
erfordert der Zugang von US-A-4,864,501 eine komplexe und anspruchsvolle
Ausnahmebehandlung.
-
"Stemming Algorithms" von W.B. Frakes,
in W.B. Frakes und R. Baeza-Yates, Hrsg., "Information Retrieval", Prentice Hall,
1992, Seiten 131–160,
offenbart eine Taxonomie für
Wortstammbildungsalgorithmen, die verschiedene automatische Zugänge einschließt. Affix-Entfernungsalgorithmen
entfernen Suffixe und/oder Präfixe,
um einen Stamm zu erhalten, wobei Tabellennachschlageverfahren das
Aufsuchen in einer Tabelle ausführen,
in welcher Ausdrücke
und die dazugehörigen
Stämme
gespeichert sind. Affix-Entfernungsalgorithmen,
wie etwa der Porter-Stammbildner, können, nach dem Entfernen von Zeichen
gemäß einem
Satz von Ersetzungsregeln, umcodieren, eine kontextsensitive Transformation, um
Zeichen des Stammes zu wechseln.
-
"Stemming Algorithms:
A Case Study for Detailed Evaluation" von D.A. Hull, Journal of American Society
for Information Science, Band 47, Nr. 1, 1996, Seiten 70–84, offenbart
eine lexikalische Datenbank, die Flexions- und Ableitungsmorphologie analysieren
und erzeugen kann. Die Flexionsdatenbank reduziert jedes Oberflächenwort
auf eine Wörterbuchform,
während
die Ableitungsdatenbank Oberflächenformen
auf Stämme
reduziert, die sich sowohl formal als auch semantisch auf das Original beziehen.
Die Datenbanken werden unter Verwendung von Wandlern endlicher Zustände (finite
state transducers – FSTs)
konstruiert, was es dem Zusammenführungsprozess ermöglicht,
in umgekehrter Richtung zu agieren, und alle denkbaren Oberflächenformen
aus einer einzigen Basisform zu erzeugen.
-
Introduction
to Modern Information Retrieval, von G. Salton und M.J. McGill,
New York: McGraw-Hill, 1983, Seiten 75–87, offenbart Infonnationsbeschaffungstechniken,
die einen Thesaurus benutzen. Ein Thesaurus kann z.B. in einer automatischen
Indizierungsumgebung verwendet werden, und wenn ein Dokument einen
Ausdruck, wie etwa "Supraleitung" oder (Stamm "Supraleit") enthält, kann
dieser Ausdruck durch ein Klassenkennzeichen für eine Klasse von Wörtern mit
verwandten Bedeutungen ersetzt werden. Der gleiche Vorgang kann
für eine
Benutzeranfrage, die ein Wort in der Klasse enthält, benutzt werden. Sollte
das Dokument "Supraleitung" enthalten, während der
Abfrageausdruck "kryogen" ist, so würde durch
Thesaurus-Transformation eine Ausdrucksübereinstimmung resultieren.
Anstelle einen ursprünglichen
Ausdruck mit dem entsprechen den Klassenkennzeichen zu ersetzen,
kann das Thesaurus-Klassenkennzeichen dem Originalausdruck hinzugefügt werden.
-
Die
Erfindung spricht Grundprobleme an, die auftreten, wenn ein Wort,
hier als "Abfragewort" bezeichnet, verwendet
wird, um eine aus einer Anzahl von Gruppen von Wörtern zu identifizieren. Mit
konventionellen Tabellennachschlagtechniken, FST-Techniken und anderen
Techniken, die auf Abgleichen des Abfragewortes aufbauen, wird ein
unbekanntes Abfragewort zu Misserfolg führen. Affix-Algorithmen, wie
der Porter-Stammbildner, können
den Stamm zu jedem Wort bilden, einschließlich eines unbekannten Abfragewortes,
aber konventionelle Informationsbeschaffungstechniken, die auf Affix-Algorithmen
basieren, stellen keine Rückfallstrategie
zur Verfügung,
wenn der zuerst erhaltene Stamm das unbekannte Wort nicht mit einem
anderen Wort in Beziehung setzt.
-
Das
in US-A-4,864,501 beschriebene Wortkommentierungssystem erfordert,
obwohl es in der Lage ist Wörter
zu identifizieren, die sich von einer Basisform, die in einem Wörterbuch
ist, unterscheiden, eine anspruchsvolle morphologe und grammatikalische
Textanalyse, die durch eine komplexe Datenstruktur und eine Vielzahl
komplexer Verarbeitungsschritte widergespiegelt wird.
-
Es
ist Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren
und System zum Identifizieren einer Gruppe von Wörtern aus einem Abfragewort
bereitzustellen, die eine verbesserte Verarbeitungsgeschwindigkeit
ermöglichen.
-
Die
Erfindung basiert auf der Entdeckung einer neuen Technik zum Benutzen
eines Abfragewortes zum Identifizieren eines aus einer Anzahl von Wortgruppen.
Die Technik bestimmt zuerst, ob das Abfragewort in einer der Wortgruppen
ist. Wenn nicht, versucht die Technik, das Abfragewort gemäß aufeinander
folgender Suffixbeziehungen in einer Folge zu modifizieren, bis
es ein modifiziertes Abfragewort erhält, das in einer der Wortgruppen
ist. Die neue Technik stellt effektiv zwei Stufen beim Aufsuchen
einer Wortgruppe bereit – die
erste Stufe kann durch schnelles Vergleichen eines Abfragewortes
mit den Wörtern
in den Gruppen implementiert werden, während die zweite Stufe langsamer
ist, weil sie das Versuchen, modifizierte Abfrageworte gemäß Suffixbeziehungen
zu erhalten, einschließt.
-
Die
neue Technik wird mit einer geordneten Liste, die die Folge von
Suffixbeziehungen wie z.B. paarweise Beziehungen, festlegt, implementiert.
Es wird ein Versuch unternommen, das Abfragewort gemäß jeder
Beziehung in der Liste zu modifizieren, bis ein modifiziertes Abfragewort
erhalten wird, das in einer der Gruppen ist. Die Beziehungen in
der Liste sind gemäß der Frequenz
ihres Auftretens in einer natürlichen
Sprache geordnet, und Modifikationen werden beginnend mit der Suffixbeziehung
mit der höchsten
Frequenz versucht. Vorzugsweise wird die geordnete Liste automatisch
als Teil einer automatischen Technik zum Erzeugen der Wortgruppen
erhalten.
-
Vorzugsweise
wird die neue Technik implementiert, um Modifikationen des Abfragewortes
iterativ zu versuchen, wobei jede Iteration versucht, das Abfragewort
gemäß einer
entsprechenden Suffixbeziehung zu modifizieren. Wenn eine Iteration
ein modifiziertes Abfragewort erhält, bestimmt sie auch, ob das
modifizierte Abfragewort in einer der Wortgruppen ist.
-
Wenn
ein modifiziertes Abfragewort erhalten wird, das in einer der Wortgruppen
ist, wird vorzugsweise Information, die die Wortgruppe identifiziert, bereitgestellt,
wie etwa ein Repräsentant
der Gruppe oder eine Liste von Wörtern
in der Gruppe.
-
Die
neue Technik wird in einem System implementiert, das ein Abfragewort
und einen Prozessor, der bestimmt, ob das Abfragewort in einer der
Wortgruppen ist, einschließt.
Wenn nicht, versucht der Prozessor, das Abfragewort gemäß aufeinander
folgenden Suffixbeziehungen in der in der geordneten Liste festgelegten
Reihenfolge zu modifizieren, bis ein modifiziertes Abfragewort erhalten
wird, das in einer der Wortgruppen ist. Das System schließt vorzugsweise
gespeicherte Wortgruppen-Daten ein, die die Wortgruppen anzeigen,
und die Wortgruppen-Daten sind vorzugsweise eine FST-Datenstruktur.
Das System schließt
vorzugsweise gespeicherte Suffixbeziehungs-Folgedaten ein, die die
Folge der Suffixbeziehungen anzeigen.
-
Vorzugsweise
wird die neue Technik in einem Erzeugnis zur Benutzung in einem
System, das eine Zugriffseinrichtung für ein Speichermedium einschließt, implementiert.
Das Erzeugnis schließt
vorzugsweise ein Speichermedium und durch das Speichermedium gespeicherte
Instruktionsdaten ein. Der Prozessor des Systems bestimmt beim Ausführen der
durch die Instruktionsdaten angezeigten Instruktionen, ob das Abfragewort
in einer der Wortgruppen ist. Wenn nicht, versucht der Prozessor,
das Abfragewort gemäß aufeinander
folgender Suffixbeziehungen in einer Folge zu modifizieren, bis
ein modifiziertes Abfragewort erhalten wird, das in einer der Wortgruppen
ist.
-
Vorzugsweise
wird die neue Technik in einem Verfahren implementiert, in dem eine
erste Maschine betrieben wird, um Daten zu einer zweiten über ein
Netz zu übertragen,
wobei die übertragenen Daten
Instruktionsdaten, wie oben beschrieben, enthalten.
-
Die
neue Technik ist vorteilhaft, weil sie eine robustere Wortgruppen-Identifikation
erlaubt, als konventionelle Techniken. Im Vergleich mit konventionellen
Wortanpassungstechniken ist die neue Technik vorteilhaft, weil sie
die Benutzung eines unbekannten Wortes oder eines Wortes, das nicht
exakt passt, erlaubt, was z.B. auftreten kann, wenn ein Benutzer
ein Abfragewort bereitstellt, das in keiner der Wortgruppen ist.
Im Vergleich mit konventionellen Affix-Entfernungstechniken, kann
die neue Technik mit dem Erhalten modifizierter Abfrageworte fortfahren, bis
sie eines findet, das in einer der Wortgruppen ist, so dass es nicht
versagt, wenn das erste modifizierte Abfragewort nicht in einer
der Wortgruppen ist.
-
Die
neue Technik ist auch vorteilhaft, weil sie eine vollautomatische
Implementierung erlaubt. Eine vollautomatische Implementierung erhält automatisch
eine geordnete Liste von Suffixbeziehungen beim automatischen Erzeugen
einer Wortgruppen-Datenstruktur.
-
Die
folgende Beschreibung, die Zeichnungen und die Ansprüche legen
diese und andere Aspekte, Ziele, Merkmale und Vorteile der Erfindung weiter
dar.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein schematisches Flussdiagramm, welches zeigt, wie ein Abfragewort
benutzt werden kann, um eine Wortgruppe zu identifizieren, indem versucht
wird, modifizierte Abfrageworte gemäß aufeinander folgender Suffixbeziehungen
in einer Folge zu erhalten.
-
2 ist
ein Ablaufdiagramm, das allgemeine Aktionen beim Identifizieren
einer Wortgruppe durch Versuchen, modifizierte Abfragewörter zu
erhalten, darstellt.
-
3 ist
eine schematische Darstellung, die Komponenten eines Systems, das
die allgemeinen Aktionen von 2 ausführen kann,
zeigt.
-
4 ist
eine schematische Darstellung eines Systems, in dem die allgemeinen
Aktionen von 2 implementiert sind.
-
5 ist
ein Ablaufdiagramm, das zeigt, wie das System von 4 die
Aktionen in 2 implementiert.
-
6 ist
ein Ablaufdiagramm, das zusätzliche
Details darstellt, wie in 5 eine Iteration
ausgeführt
wird.
-
7 ist
ein Ablaufdiagramm, das darstellt, wie das System von 4 Suffix-Paardaten erhält.
-
DETAILLIERTE
BESCHREIBUNG DER ERFINDUNG
-
A. Konzeptioneller Rahmen
-
Der
folgende konzeptionelle Rahmen ist hilfreich zum Verständnis des
breiten Umfangs der Erfindung, und die unten definierten Termini
haben die angegebenen Bedeutungen in der gesamten Anmeldung, einschließlich der
Patentansprüche.
-
Der
Ausdruck "Daten" bezieht sich hier
auf physikalische Signale, die Information anzeigen oder einschließen. Wenn
ein Datenobjekt eine aus einer Anzahl möglicher Alternativen anzeigen
kann, so hat das Datenobjekt einen einer Anzahl von "Werten". Zum Beispiel hat
ein binäres
Datenobjekt, auch als "Bit" bezeichnet, einen
von zwei Werten, die austauschbar bezeichnet werden als "1" und "0" oder "EIN" und "AUS" oder "hoch" und "niedrig".
-
Der
Ausdruck "Daten" schließt Daten,
die in jeder physikalischen Form existieren ein, und schließt Daten
ein, die sich in einem Übergangszustand
befinden oder die gerade gespeichert oder übertragen werden. Zum Beispiel
können
Daten als elektromagnetische oder andere übertragene Signale existieren,
oder als Signale, die in elektronischer, magnetischer oder anderer
Form gespeichert sind.
-
"Schaltung" oder ein "Schaltkreis" ist jede physikalische
Anordnung von Materie, die auf ein erstes Signal an einem Ort oder
zu einer Zeit reagieren kann, indem ein zweites Signal an einem
anderen Ort oder zu einer anderen Zeit bereitgestellt wird. Eine
Schaltung "speichert" ein erstes Signal,
wenn sie das erste Signal zu einer Zeit empfängt und, als Antwort, im Wesentlichen
dasselbe Signal zu einer anderen Zeit bereitstellt. Eine Schaltung "überträgt" ein erstes Signal, wenn sie das erste
Signal an einem ersten Ort empfängt,
und als Antwort im Wesentlichen das gleiche Signal an einem zweiten
Ort bereitstellt.
-
Ein "Datenspeichermedium" oder "Speichermedium" ist ein physikalisches
Medium, das Daten speichern kann. Beispiele von Datenspeichermedien schließen magnetische
Medien, wie etwa Disketten und Band, optische Medien, wie etwa Laserdisks
und CD-ROMs, und
Halbleitermedien, wie etwa Halbleiter-ROMs und RAMs, ein. Wie hier
benutzt, umfasst "Speichermedium" einen oder mehrere
getrennte Einheiten eines Mediums, die zusammen einen Datenkörper speichern.
Zum Beispiel wäre
ein Satz von Disketten, die einen einzigen Datenkörper speichern, zusammen
ein Speichermedium.
-
Ein "Speichermedium-Zugriffsgerät" ist ein Gerät, welches
eine Schaltung einschließt,
die auf Daten auf einem Datenspeichermedium zugreifen kann. Beispiele
schließen
Laufwerke zum Zugriff auf magnetische und optische Datenspeichermedien
ein.
-
"Speicherschaltkreis" oder "Speicher" ist jede Schaltung,
die Daten speichern kann, und kann lokale und entfernte Speicher-
und Eingabe-/Ausgabegeräte
einschließen.
Beispiele schließen
Halbleiter-ROMs, RAMs, und Speichermedien-Zugriffsgeräte mit Datenspeichermedien,
auf die sie zugreifen können,
ein.
-
Ein "Datenprozessor" oder "Prozessor" ist jede Komponente
oder jedes System, die Daten verarbeiten können, und kann einen oder mehrere
zentrale Verarbeitungseinheiten oder andere Verarbeitungskomponenten
einschließen.
-
Ein
Prozessor führt
einen Betriebsvorgang oder eine Funktion "automatisch" aus, wenn er den Betriebsvorgang oder
die Funktion unabhängig
von gleichzeitiger menschlicher Einflussnahme oder Steuerung ausführt.
-
Jegliche
zwei Komponenten sind "verbunden", wenn es eine Kombination
von Schaltungen gibt, die Signale von einer der Komponenten zur
anderen übertragen
kann. Zum Beispiel sind zwei Komponenten "verbunden" durch jede Kombination von Verbindungen
zwischen ihnen, die Übertragung
von Signalen von einer der Komponenten zur anderen erlaubt.
-
Ein "Netz" ist eine Kombination
von Schaltungen, durch die eine Verbindung zur Datenübertragung
zwischen Maschinen eingerichtet werden kann. Ein Betriebsvorgang "richtet eine Beziehung über" ein Netz "ein", wenn die Verbindung
nicht existiert, bevor der Betriebsvorgang beginnt, und der Betriebsvorgang
dazu führt,
dass die Verbindung existiert.
-
Ein
Prozessor "greift" auf ein Datenobjekt
in einem Speicher "zu" durch jeden Betriebsvorgang, der
das Objekt oder Information innerhalb des Objekts erlangt oder modifiziert,
wie z.B. durch Lesen oder Schreiben einer Speicherposition, die
das Objekt einschließt.
Ein Prozessor kann "zum
Zugreifen auf' ein
Datenobjekt "verbunden" sein durch jede Kombination
von Verbindungen mit lokalen oder entfernten Speicher- oder Eingabe/Ausgabegeräten, die es
dem Prozessor gestatten, auf das Objekt zuzugreifen.
-
Ein
Prozessor oder eine andere Schaltungskomponente "benutzt" oder "verwendet" ein Datenobjekt bei der Ausführung eines
Betriebsvorgangs, wenn das Ergebnis des Betriebsvorgangs vom Wert des
Objekts abhängt.
-
Eine "Instruktion" ist ein Datenobjekt,
den ein Prozessor benutzen kann, um seinen eigenen Betrieb zu bestimmen.
Ein "Prozessor" führt einen
Satz von Instruktionen aus, wenn er die Instruktionen verwendet,
um seine Betriebsvorgänge
zu bestimmen.
-
Ein
Prozessor greift auf ein erstes Datenobjekt "mit" einem
zweiten Datenobjekt zu, wenn der Prozessor das zweite Datenobjekt
beim Zugreifen auf das erste verwendet, wie z.B. durch Verwenden des
zweiten Objekts, um eine Position des ersten Datenobjekts zu erhalten,
oder um Information von innerhalb des ersten Datenobjekts zu erhalten.
-
Ein
Datenobjekt "erhalten" oder "erzeugen" ist jede Kombination
von Betriebsvorgängen
auszuführen,
die ohne das Datenobjekt beginnt, und das Datenobjekt zum Ergebnis
hat.
-
Das
erste Datenobjekt "basierend
auf' einem zweiten
Datenobjekt zu erhalten heißt,
das zweite Objekt zu benutzen, um das erste Objekt zu erhalten.
-
Ein
Datenobjekt "zeigt" ein Ding, Ereignis oder
Eigenschaftsmerkmal "an", wenn das Objekt
einen Wert hat, der von der Existenz oder dem Auftreten des Dinges,
des Ereignisses oder des Eigenschaftsmerkmals abhängt durch
Einwirken auf das Datenobjekt erhalten werden kann. Ein Datenobjekt "zeigt" einen anderen Wert "an", wenn der Wert des Objekts
gleich dem oder abhängig
von dem anderen Wert ist.
-
Ein
Betriebsvorgang oder Ereignis "überträgt" ein Datenobjekt
von einer ersten Komponente zu einer zweiten, wenn das Resultat
des Betriebsvorgangs oder Ereignis ist, dass ein Datenobjekt in
der zweiten Komponente derselbe wie ein Datenobjekt ist, der in
der ersten Komponente vor dem Betriebsvorgang oder Ereignis war.
Die erste Komponente "stellt" die Daten "bereit" und die zweite Komponente "empfängt" oder "erhält" die Daten.
-
Eine "natürliche Sprache" ist ein identifiziertes
System von Symbolen, die zum menschlichen Ausdruck und zur Kommunikation
innerhalb einer Gemeinschaft, wie etwa ein Land, eine Region oder Örtlichkeit
oder ethnische oder Berufsgruppe, in einem Zeitraum, verwendet wird.
Einige natürliche Sprachen
haben ein Standardsystem, welches als korrekt betrachtet wird, aber
der Ausdruck "natürliche Sprache" wie hier benutzt,
kann auch auf einen Dialekt, Jargon, Slang, eine Mundart, Umgangssprache oder
Fachsprache angewendet werden, wenn diese als unterscheidbar identifiziert
werden können,
durch Unterschiede, etwa in Aussprache, Grammatik oder Vokabular.
-
Ein "Satz natürlicher
Sprachen" ist eine
Menge von einer oder mehreren natürlichen Sprachen.
-
"Zeichen" bedeutet ein diskretes
Element, das in einer geschriebenen, gedruckten oder phonetisch
transkribierten Form einer natürlichen
Sprache auftritt. Zeichen in der heutigen englischen Sprache können somit
nicht nur alphabetische und numerische Elemente einschließen, sondern
auch Interpunktionszeichen, diakritische Zeichen, mathematische
und logische Symbole und andere Elemente, die im geschriebenen,
gedruckten oder phonetisch transkribierten Englisch verwendet werden.
Allgemeiner können
Zeichen, zusätzlich
zu alphanumerischen Elementen, phonetische, ideografische oder Piktogrammelemente
enthalten.
-
Ein 'Wort" ist eine Kette aus
einem oder mehreren Elementen, wobei jedes ein Zeichen oder eine Kombination
von Zeichen ist, wobei die Kette in wenigstens einer natürlichen
Sprache als eine semantische Einheit behandelt wird. Ein Wort "tritt" in jeder Sprache "auf', in der es als eine
semantische Einheit behandelt wird.
-
Ein "Präfix" ist eine Teilkette
von Zeichen, die am Beginn eines Wortes auftritt, und ein "Suffix" ist eine Teilkette
von Zeichen, die am Ende eines Wortes auftritt.
-
Ein
Suffix "folgt" einer Teilkette
in einem Wort und die Teilkette "geht" dem Suffix "voran", wenn das letzte
Zeichen der Teilkette unmittelbar den ersten Zeichen des Suffix
vorangeht.
-
Eine "Beziehung" zwischen Suffixen
bezeichnet das Auftreten einer Menge von Wörtern in einem Satz natürlicher
Sprachen, die verwandt sind, aber verschiedene Suffixe haben, die
somit "verwandte
Suffixe" sind. Eine "paarweise Beziehung" ist eine Beziehung
zwischen zwei Suffixen. Eine Beziehung zwischen Suffixen "tritt auf', wenn ein Satz natürlicher
Sprachen eine Menge verwandter Wörter einschließt, bei
denen jedes einen der Suffixe hat. Wenn für jeden Suffix auch eine Wortart
angegeben ist, "tritt" die Beziehung nur "auf', wenn das verwandte
Wort, das den Suffix hat, auch die angegebene Wortart hat.
-
Teilketten,
die verwandten Suffixen in einer Menge verschiedener Wörter vorangehen,
sind "äquivalent", wenn die Wörter alle
aufgrund einer Beziehung zwischen den Teilketten verwandt sind.
Zum Beispiel ist es üblich,
während
Flexionsänderungen kleinere
grafische Änderungen
in einer Teilkette, die einem Suffix vorangeht, durchzuführen, wie
etwa durch Hinzufügen
oder Streichen eines diakritischen Zeichens oder Wechseln eines
Zeichens in anderer Weise, um einen Betonungswechsel anzuzeigen, oder
durch Wechsel zwischen einem einzelnen Zeichen und einem verdoppelten
Zeichen. Teilketten, die Suffixen vorangehen, können auch äquivalent sein, weil sie phonetische
Alternativen sind, aufgrund einer historischen Beziehung durch die
die eine sich aus der anderen entwickelt hat, oder beide sich aus einem
gemeinsamen Vorgänger
entwickelt haben, weil sie in zwei verschiedenen Sprachen verwandt sind,
oder aufgrund jedweder von verschiedenartigen anderen Beziehungen.
-
Die "Frequenz des Auftretens" einer Suffixbeziehung
in einer Menge von Wörtern,
wie z.B. einer natürlichen
Sprache, ist die Anzahl von verschiedenen Teilmengen von Wörtern in
der Menge, die durch die Suffixbeziehung verwandt sind.
-
Eine
Menge von Suffixen "setzt" eine Menge von Wörtern "in Beziehung", wenn jedes der
Wörter aus
einem anderen in der Menge durch einen Prozess erhalten werden kann,
der das Entfernen eines der Suffixe und das Hinzufügen eines
anderen der Suffixe einschließt.
Der Prozess kann auch andere Modifikationen einschließen, wie
etwa an einer Teilkette, die dem Suffix vorangeht, oder an einem
Präfix,
der der Teilkette vorangeht, aber wenn es keine solcher anderen
Modifikationen gibt "tritt" ein Präfix, der
die Teilkette einschließt,
mit jedem der Suffixe in der Menge "auf',
um die Menge verwandter Wörter
zu bilden.
-
Eine
Menge von Wörtern,
die alle denselben Suffix haben, sind "äquivalent", wenn die Teilketten, die
dem Suffix in allen Wörtern
vorangehen, äquivalent
sind. Jedes Wort in der Menge ist "ein Äquivalent", jedes anderen Wortes
in der Menge.
-
Ein "Repräsentant" einer Gruppe ist
ein Datenobjekt, der für
die Gruppe einzigartig ist, so dass er verwendet werden kann, um
die Gruppe zu repräsentieren.
Ein Repräsentant
kann einer der Mitglieder einer Gruppe von Datenobjekten sein, oder
ein datenobjekt sein, das auf andere Weise erhalten wurde.
-
Wenn
eine Gruppe von Wörtern
alle äquivalente
Teilketten haben, die verwandten Suffixen vorangehen, kann ein Repräsentant
der Gruppe eine "normalisierte
Form" sein, die
durch "Normalisieren" eines Wortes in
der Gruppe erhalten werden kann. Normalisieren eines Wortes kann
Bearbeitungsvorgänge,
wie etwa Entfernen von Suffixen und Ausführen geeigneter Modifikationen
in der Teilkette, die dem Suffix vorangeht, einschließen. Abhängig davon,
wie Normalisierung ausgeführt
wird, kann die normalisierte Form einer Gruppe von Wörtern eine Wörterbuchform,
ein Stamm oder eine andere Version der Teilkette, die dem Suffix
eines Wortes in der Gruppe vorangeht, sein. Sobald die normalisierten Formen
von Wörtern
bekannt sind, kann natürlich eine
geeignete Datenstruktur erzeugt werden, um die normalisierte Form
eines Wortes als Reaktion auf das Wort bereitzustellen. Weil Normalisierung
die Wörterbuchform
eines Wortes erzeugen kann, wird die normalisierte Form mitunter
als "Lemma" bezeichnet. Aber
Normalisierung kann auch an einem Lemma ausgeführt werden, um eine normalisierte Form
zu erhalten.
-
Ein
Wort ist "in" einer Gruppe von
Wörtern, wenn
das Wort selbst, ein Äquivalent
des Wortes, oder eine normalisierte Form des Wortes in der Gruppe
ist.
-
Ein
Arbeitsvorgang "identifiziert" eine Wortgruppe,
wenn der Arbeitsvorgang Information erhält, die für die Wortgruppe einzigartig
ist, wie etwa einen Repräsentanten
oder ein anderes einzigartiges Kennzeichen einer Gruppe oder einer
Liste von Wörtern
in der Gruppe.
-
Ein "Abfragewort" ist einfach ein
Wort, das in einem Arbeitsvorgang verwendet wird, der eine Gruppe
von Wörtern
identifiziert. Ein "modifiziertes Abfragewort" ist ein Wort, das
durch Modifizieren eines Abfragewortes erhalten wird.
-
Ein
Abfragewort "gemäß einer
Suffixbeziehung" zu
modifizieren, heißt,
einen Suffix in der Beziehung vom Abfragewort zu entfernen, und
ihn durch einen anderen zu ersetzen, möglicherweise auch die Teilkette,
die dem Suffix vorangeht, zu wechseln. Zu "versuchen" ein Abfragewort zu modifizieren, heißt, einen
Arbeitsvorgang auszuführen,
der, wenn erfolgreich, das Abfragewort modifiziert. Zum Beispiel
könnte
ein Versuch, ein Abfragewort gemäß einer
paarweisen Beziehung zu modifizieren einschließen, die paarweise Beziehung "in beiden Richtungen" zu verfolgen, versuchen,
es gegen beide Suffixe in der Beziehung abzugleichen, und, wenn
einer passt, ihn vom Abfragewort zu entfernen, und durch das andere
zu ersetzen.
-
Ein
Wandler endlicher Zustände
(finite state transducer – FST)
ist ein Datenverarbeitungssystem, das eine endliche Anzahl von Zuständen und Übergängen (oder
Verbindungsbögen)
hat, wobei jeder Übergang
in einem Zustand beginnt und zu einem Zustand führt, und wobei jeder Übergang
zugeordnete Werte auf mehr als einem Niveau hat. Im Ergebnis kann
ein FST auf ein eingegebenes Signal antworten, welches einen Wert
auf einem der Niveaus anzeigt, indem er einem Übergang mit einem passenden
Wert auf dem Niveau folgt, und indem er als Ausgabe den dem Übergang
zugeordneten Wert auf einem anderen Niveau bereitstellt. Ein Zwei-Niveauwandler
kann z.B. verwendet werden, um zwischen Eingabe- und Ausgabezeichenketten
abzubilden, und wenn die Werte Zeichentypen sind, können die Eingabe-
und Ausgabezeichenketten Wörter
sein.
-
Eine "Datenstruktur eines
Wandlers endlicher Zustände" oder "FST-Datenstruktur" ist eine Datenstruktur,
die Information enthält,
die ausreichend ist, um die Zustände
und Übergänge einer
FST zu definieren.
-
B. Allgemeine Merkmale
-
1 bis 3 veranschaulichen
allgemeine Merkmale der Erfindung.
-
1 ist
ein Flussdiagramm, welches schematisch darstellt, wie aufeinander
folgende Versuche, ein Abfragewort zu modifizieren, gemäß aufeinander
folgenden Suffixbeziehungen in einer Folge ausgeführt werden
können,
bis ein modifiziertes Abfragewort erhalten wird, das in einer der
Gruppen ist.
-
Das
Abfragewort 10 ist nicht in einer Anzahl von Gruppen von
Wörtern,
die zur Identifikation verfügbar
sind, wie in Kasten 12 gezeigt. Trotzdem kann das Abfragewort 10 zu
einem anderen Wort, das in einer der Gruppen von Wörtern ist,
in Beziehung gesetzt werden.
-
Die
Folge 20 schließt
eine Anzahl von Suffixbeziehungen ein, von denen mehrere illustrativ
dargestellt sind. Aufeinander folgende Versuche, das Abfragewort 10 zu
modifizieren, können
in Übereinstimmung
mit aufeinander folgenden Suffixbeziehungen in der Folge 20 vorgenommen
werden.
-
Das
Resultat des Versuchens, das Abfragewort 10 gemäß Suffixbeziehung
0 zu modifizieren (und illustrativ auch jede der Suffixbeziehungen 1 bis m-1
und m+1 bis n-1) ist, dass kein Wort erhalten wird, wie in Kasten 30 gezeigt.
Zum Beispiel kann es sein, dass die Suffixbeziehung keine Suffix
in Beziehung setzt, der einem Suffix des Abfragewortes 10 äquivalent
ist.
-
Das
Resultat des Versuchens, das Abfragewort 10 gemäß der Suffixbeziehung
m zu modifizieren, ist aber ein modifiziertes Abfragewort 32.
Anders gesagt setzt die Suffixbeziehung m einen Suffix, der äquivalent
zu einem Suffix eines Abfragewortes 10 ist, zu einem anderen
Suffix in einer Weise in Beziehung, die das modifizierte Abfragewort 32 erzeugt. Das
modifizierte Abfragewort 32 ist wie das Abfragewort 10 nicht
in einer der Wortgruppen, wie in Kasten 34 gezeigt.
-
Ähnlich ist
das Ergebnis des Versuchens, Abfragewort 10 gemäß der Suffixbeziehung
n zu modifizieren, das modifizierte Abfragewort 36. Aber
das modifizierte Abfragewort 36 ist in einer der Wortgruppen,
wie in Kasten 38 gezeigt. Außer, wenn es für einen
anderen Zweck erforderlich ist, müssen die Suffixbeziehungen,
die Suffixbeziehung n in der Folge 20 folgen, beim Versuchen,
das Abfragewort 10 zu modifizieren, nicht verwendet werden – eine Wortgruppe
ist identifiziert worden, und es kann auf sie, wie erforderlich,
zugegriffen werden.
-
In
Kasten 40 in 2 bestimmt eine Technik, ob
ein Abfragewort in einer aus einer Anzahl von Wortgruppen ist. Wenn
nicht, versucht die Technik in Kasten 42 das Abfragewort
gemäß aufeinander
folgender Suffixbeziehungen in einer Folge zu modifizieren. Die
Technik setzt fort, bis sie ein modifiziertes Abfragewort erhält, das
in einer der Wortgruppen ist.
-
Die
Maschine 50 in 3 schließt den Prozessor 52 ein,
der zum Erhalten des Abfragewortes 54 verbunden ist, und
auch zum Zugriff auf Daten in Speicher 56 verbunden ist.
Der Prozessor 52 ist auch zum Empfangen von Daten durch
die Dateneingabeschaltung 58 verbunden, die illustrativ
Daten bereitstellen kann, die von Verbindungen zum Speicher 60, zum
Speichermedium-Zugriffsgerät 62,
oder Netz 64 empfangen werden. Das Abfragewort 54 kann
von jeder geeigneten Quelle erhalten werden, einschließlich einer
Benutzereingabeschaltung (nicht gezeigt), Speicher 56 oder
Dateneingabeschaltung 58.
-
Der
Datenkörper 70,
illustrativ von der Dateneingabeschaltung 58 bereitgestellt,
schließt
Wortgruppendaten 72, Suffixbeziehungs-Folgedaten 74 und
Instruktionsdaten 76 ein. Beim Ausführen der Instruktionen, die
durch Instruktionsdaten 76 angezeigt werden, bestimmt der
Prozessor 52 nach Laden der Wortgruppendaten 72 und
Suffixbeziehungs-Folgedaten 74 in
den Speicher 56, ob das Abfragewort 54 in einer
der Wortgruppen, die durch die Wortgruppendaten 72 definiert
werden, ist. Wenn nicht, versucht der Prozessor 52 dann,
das Abfragewort 54 gemäß aufeinander
folgenden Suffixbeziehungen in der durch die Suffixbeziehungs-Folgedaten 74 angezeigten
Reihenfolge zu modifizieren. Der Prozessor 52 setzt fort,
bis er ein modifiziertes Abfragewort erhält, das in einer der Wortgruppen
ist.
-
Wie
oben bemerkt, stellt 3 drei mögliche Quellen dar, aus denen
die Dateneingabeschaltung 58 Daten zum Prozessor 52 bereitstellen
könnte – Speicher 60,
Speichermedium-Zugriffsgerät 62 und Netz 64.
-
Speicher 60 könnte jeder
konventionelle Speicher innerhalb der Maschine 50 sein,
einschließlich
Direktzugriffsspeicher (random access memory – RAM) oder Festwertspeicher
(read-only memory -ROM), oder könnte
ein peripheres oder entferntes Speichergerät jeglicher Art sein.
-
Speichermedium-Zugriffsgerät 62 könnte ein Laufwerk
oder ein anderes geeignetes Gerät
oder eine Schaltung zum Zugriff auf Speichermedium 80 sein,
die z.B. ein magnetisches Medium, wie etwa ein Satz von einem oder
mehreren Bändern
oder Disketten sein könnte,
ein optisches Medium, wie etwa ein Satz von einer oder mehreren
CD-ROMs, oder jedes andere geeignete Medium zum Speichern von Daten.
Speichermedium 80 könnte
Teil einer Maschine 50 sein, Teil eines Servers oder einer
anderen peripheren oder entfernten Speichereinrichtung, oder ein Software-Produkt.
In jedem dieser Fälle
ist Speichermedium 80 ein Erzeugnis, das in einer Maschine
verwendet werden kann.
-
Netz 64 kann
einen Datenkörper
von Maschine 90 bereitstellen. Prozessor 92 in
der Maschine 90 kann eine Verbindung mit dem Prozessor 52 über das
Netz 64 durch die Netzverbindungsschaltung 94 und
Dateneingabeschaltung 58 einrichten. Jeder Prozessor könnte die
Verbindung initiieren, und die Verbindung könnte durch ein geeignetes Protokoll eingerichtet
werden. Dann kann Prozessor 92 auf einen in Speicher 96 gespeicherten
Datenkörper
zugreifen, und den Datenkörper
zum Prozessor 52 über das
Netz 64 übertragen.
Prozessor 92 kann den Datenkörper in Speicher 56 oder
anderswo speichern, und kann dann die Instruktionen ausführen, um
in den Daten nachzuschlagen.
-
3 stellt
auch dar, dass Prozessor 52 zum Ausgabegerät 100 verbunden
werden kann, um Resultate bereitzustellen, etwa für einen
Benutzer.
-
C. Implementierung
-
Die
oben beschriebenen allgemeinen Merkmale könnten in vielfältiger Art
und Weise auf unterschiedlichen Maschinen implementiert werden,
um Wortgruppen, unter Verwen dung von Abfragewörtern, zu identifizieren. Eine
im Folgenden beschriebene Implementierung wurde auf einer Sun-SPARC-Workstation
mit dem Betriebssystem Sun-OS implementiert, die aus C- und Perl-Quellcode
kompilierten Code ausführt.
-
C.1. Überblick
-
In 4 schließt System 120 die
zentrale Verarbeitungseinheit (central processing unit – CPU) 122 einer
Sun-SPARC-Workstation ein, die an Display 124 zum Darstellen
von Bildern und Tastatur 126 und Maus 128 zum
Bereitstellen von Signalen von einem Benutzer angeschlossen ist.
CPU 122 ist auch so verbunden, dass sie auf Speicher 130 zugreifen kann,
der illustrativ Programmspeicher 132 und Datenspeicher 134 einschließen kann.
-
Die
in Programmspeicher 132 gespeicherten Routinen können in
verschiedene Funktionen gruppiert werden – Suffixpaar-Extraktionsroutinen 140, relationale
Familien-Erzeugungsroutinen 142, FST-Umwandlungsroutinen 144 und
Nachschlageroutinen 146. 4 zeigt
auch mehrere Datenstrukturen, die in Datenspeicher 134 gespeichert
sind, und auf die CPU 122 während der Ausführung von
Routinen im Programmspeicher 132 zugreift, – Flexionslexikon 150,
geordnete Liste 152 von Suffixpaaren, FST-Datenstruktur 154,
Eingabe-Wortdaten 156, modifizierte Wortdaten 158,
identifizierte Familiendaten 160 und verschiedenartige
Datenstrukturen 162, von denen einige weiter unten beschrieben
werden. Flexionslexikon 150 kann jedes geeignete Lexikon
für die
Sprache, in der Eingabewörter
empfangen werden, sein, wie etwa Xerox Lexika für englisch oder für französisch, beide
von InXight Corporation, Palo Alto, Kalifornien, erhältlich.
-
Beim
Ausführen
von Suffixpaar-Extraktionsroutinen 140 kann Prozessor 122 Flexionslexikon 150 verwenden,
um automatisch die geordnete Liste 152 zu erhalten, die
einen Satz von Suffixpaaren in der Reihenfolge ihrer Frequenz in
Lexikon 150 auflistet. Die geordnete Liste 152 ist
damit eine Implementation der Suffixbeziehungs-Folgedaten 74 in 3. Die
Suffixpaare können
als Zeichenketten zum Ausführen
eines Übergangs
zwischen Paaren verwandter Wörter
angesehen werden, wobei ein Suffix eine Zeichenkette ist, die von
einem Wort im Paar entfernt wird, um ein Präfix zu erhalten, und das andere
Suffix eine Zeichenkette ist, die dann, nach jeglichen erforderlichen
Modifikationen am Präfix,
zum Präfix
hinzugefügt
wird, um das andere Wort im Paar zu erhalten.
-
Beim
Ausführen
relationaler Familien-Erzeugungsroutinen 142 kann Prozessor 122 eine
oder mehrere Mengen von Wörtern
unter Benutzung von Suffixpaar-Frequenzen zusammenfassen. Das Ergebnis
ist eine Liste einer Menge von Wortfamilien, deren jede eine Teilmenge
der zusammengefassten Wörter
ist. Die auf diese Weise erhaltenen Wortfamilien werden als "relationale Familien" bezeichnet, um sie
von herkömmlichen
Ableitungsfamilien zu unterscheiden, welchen sie ähnlich sind.
-
Bei
Ausführung
von FST-Umwandlungsroutinen 144 kann Prozessor 122 eine
FST-Datenstruktur 154 erhalten,
die eine Eingabe-Ausgabepaarung zwischen jedem der Wörter in
einer Familie und einem Repräsentanten
der Familie bereitstellt. Der Repräsentant einer Familie könnte z.B.
ihr kürzestes
Wort sein. FST-Datenstruktur 154 kann so einen Zwei-Niveau-FST
repräsentieren,
mit einem Familienniveau, das alle Wörter in allen der Familien
akzeptiert, und mit einem Repräsentantenniveau,
das alle der Repräsentanten
von Familien akzeptiert. Auf die FST-Datenstruktur 154 kann
auf dem Familienniveau mit einem Wort in einer der Familien zugegriffen
werden, um den Repräsentanten
der Familie aus dem Repräsentantenniveau
auszulesen. Umgekehrt kann auf die FST-Datenstruktur 154 auf dem Repräsentantenniveau
mit dem Repräsentanten
einer der Familien zugegriffen werden, um alle Wörter in der Familie vom Familienniveau
auszulesen.
-
Beim
Ausführen
von Nachschlageroutinen 146 versucht Prozessor 122,
eine der relationalen Familien zu identifizieren. Prozessor 122 kann
z.B. eine Familie identifizieren, die das durch Eingabewortdaten 156 angegebene
Wort einschließt,
oder die eines der durch modifizierte Wortdaten 158 angegebenen
Wörter
einschließt.
Jedes modifizierte Wort wird aus dem Eingabewort unter Verwendung
der geordneten Liste 152 von Suffixpaaren erzeugt. Identifizierte
Gruppendaten 160 können
z.B. den Repräsentanten
der identifizierten Familie oder eine Liste von Wörtern in
der identifizierten Familie angeben.
-
Suffixpaar-Extraktionsroutinen 140 und Nachlageroutinen 146 können, wie
im Folgenden beschrieben, implementiert werden. Relationale Familienerzeugungsroutinen 142 und
FST-Umwandlungsroutinen 144 können implementiert werden,
wie in der parallelen US-Patentanmeldung Nr. 09/213,309, mit dem
Titel "Grouping
Words with Equivalent Substrings by Automatic Clustering Based on
Suffix Relationships".
-
5 stellt
allgemeine Aktivitäten
dar, die vom Prozessor 122 beim Ausführen von Nachschlageroutinen 146 ausgeführt werden.
Die Aktivität
im Kasten 180 beginnt nach Empfangen von Eingabewortdaten 156,
wie etwa in einem Aufruf von Nachschlageroutinen 146. Neben
der Möglichkeit,
aus Speicher 130 gewonnen zu werden, könnte das Eingabewort auch von
Tastatur 126 empfangen werden, oder könnte durch eine Auswahl von
einer Maus 128 angezeigt werden.
-
Die
Aktivität
in Kasten 182 greift dann auf Flexionslexikon 150 zu,
welches als ein FST oder in jeder anderen geeigneten Weise implementiert
werden kann, wobei die Zeichen des Wortes durch Eingabewortdaten 156 angezeigt
werden, um ein Lemma oder eine Wörterbuchform
oder eine Wortart für das
Eingabewort zu erhalten. In einigen Fällen kann das Flexionslexikon
mehr als ein Paar von (Lemma + Wortart) bereitstellen, woraufhin
Folgeaktivitäten
an jedem erhaltenen Lemma ausgeführt
werden können.
Die Aktivität
in Kasten 182 kann optional auch Normalisierung des Lemma
enthalten, welches in der Weise, wie unten mit Bezug auf Kasten 256 in 7 beschrieben,
erfolgen kann. Zur Vereinfachung wird im Folgenden jede Ausgabe
aus Kasten 182, unabhängig
davon, ob es sich um ein Lemma oder ein normalisiertes Lemma handelt,
und ob von Daten, die eine Wortart angeben, begleitet oder nicht,
oder anderen derartigen Indizien, als "Lemma-Zeichenkette" bezeichnet, und in 5 einfach
als "Lemma".
-
Die
Aktivität
in Kasten 184 greift dann auf die FST-Datenstruktur 154 mit
den Zeichen jeder Lemma-Zeichenkette aus Kasten 182 zu.
Die Aktivität
in Kasten 184 kann mit konventionellen FST-Nachschlagetechniken,
wie etwa jenen, die in Cutting et al., US-A-5,625,554 beschrieben
werden, implementiert werden.
-
Die
Aktivität
in Kasten 190 verzweigt sich dann, basierend darauf, ob
die Aktivität
in Kasten 184 erfolgreich im Anpassen der Zeichen einer
Lemma-Zeichenkette mit einer Zeichenkette war, die auf dem Familienniveau
der FST-Datenstruktur 154 akzeptabel ist. Wenn z.B. Kasten 184 einen
Zustand erreicht, in dem keiner der ausgehenden Übergänge ein Zeichen auf Familienniveau
hat, welches auf das nächste
Zeichen der Lemma-Zeichenkette passt, ist die Lemma-Zeichenkette,
und demzufolge das Eingabewort, nicht akzeptabel. Wenn, in ähnlicher
Weise, Kasten 184 in der Lage ist, alle Zeichen der Lemma-Zeichenkette
mit Zeichen auf Familienniveau entlang eines Pfades der FST-Datenstruktur anzupassen,
aber der letzte Übergang
führt zu
einem Zustand, der am Ende einer akzeptablen Lemma-Zeichenkette
nicht auftreten kann, ist die Lemma- Zeichenkette, und demzufolge das Eingabewort,
nicht akzeptabel. Wenn aber Kasten 184 in der Lage ist, alle
Zeichen der Lemma-Zeichenkette entlang eines Pfades auf Familienniveau
der FST-Datenstruktur anzupassen, und der Pfad zu einem Zustand
am Ende einer akzeptablen Zeichenkette führt, können die Zeichenkette und demzufolge
das Eingabewort als akzeptabel behandelt werden, abhängig von
jeglichen Wortart- oder anderen dem Zeichen folgenden Markierungen,
die möglicherweise
auch passen müssen.
-
Die
Aktivitäten
in Kästen 184 und 186 implementieren
somit die Aktivität
in Kasten 40 in 2, wobei das Abfragewort in
Kasten 40 die in Kasten 182 erhaltene Lemma-Zeichenkette ist.
Zusätzlich kann
die Aktivität
in Kasten 184 die ausgelesenen Zeichen auf Repräsentantenniveau
speichern, wobei der Repräsentant
der Familie, die die Lemma-Zeichenkette und somit das Eingabewort
einschließt,
erhalten wird.
-
Wenn
eine im Kasten 182 erhaltene Lemma-Zeichenkette zu einem
der akzeptablen Zeichenketten der FST-Datenstrukturen 154 passt,
erhält
die Aktivität
in Kasten 192 die identifizierten Familiendaten 160 und
gibt diese zurück.
Wenn die identifizierten Familiendaten 160 der Repräsentant
der Familie, die die Lemma-Zeichenkette enthält, ist, kann die Aktivität in Kasten 192 den
während
der Aktivität
in Kasten 184 ausgelesenen Repräsentanten zurückgeben. Wenn
die identifizierten Familiendaten 160 eine Liste der Wörter in
der Familie sind, kann die Aktivität in Kasten 192 den
in Kasten 184 ausgelesenen Repräsentanten benutzen, um die
Wörter
vom Familienniveau der FST-Datenstruktur 158 auszulesen,
und diese dann zurückgeben.
In jedem Falle kann die durch die identifizierten Familiendaten 160 angegebene
Information auf dem Display 124, wie in 4 gezeigt,
dargestellt werden.
-
Wenn
aber die Lemma-Zeichenkette nicht passt, beginnt die Aktivität in Kasten 200 eine
iterative Schleife, die die Suffixpaare in der geordneten Liste 152 durchläuft, und
versucht, jede von ihnen zu benutzen, um eine akzeptable Zeichenkette
zu erhalten. Wie die Lemma-Zeichenketten von Kasten 182, können die
Suffixpaare in der geordneten Liste 152 Wortarten-Marken
oder Ähnliches
angehängt
haben.
-
Die
Aktivität
in Kasten 202 versucht das nächste Suffixpaar auf der geordneten
Liste 152 in beiden Richtungen zu verwenden, um eine modifizierte
Version der Lemma-Zeichenkette
von Kasten 182 zu erhalten. Die Aktivität in Kasten 204 verzweigt basie rend
auf dem Ergebnis: wenn Kasten 202 nicht erfolgreich war,
wird eine weitere Iteration in Kasten 200 begonnen, um
das nächste
Suffixpaar auf der geordneten Liste 152 zu behandeln. Wenn
aber Kasten 202 Erfolg hatte, könnte die modifizierte Version der
Lemma-Zeichenkette in einer der Familien sein.
-
Die
Aktivität
in Kasten 206 greift auf die FST-Datenstruktur 154 mit
den Zeichen der modifizierten Version der Lemma-Zeichenkette in
derselben Weise wie in Kasten 184 zu, und die Aktivität in Kasten 210 verzweigt
nach dem Ergebnis in gleicher Weise, wie in Kasten 190.
Wenn die modifizierte Version der Lemma-Zeichenkette eine akzeptable
Zeichenkette ist, erhält
die Aktivität
in Kasten 192 die identifizierten Familiendaten 160 und
gibt diese zurück,
wie oben beschrieben. Wenn nicht, wird in Kasten 200 eine
weitere Iteration begonnen.
-
Die
Aktivitäten
in Kästen 200, 202, 204, 206 und 210 implementieren
somit die Aktivität
in Kasten 42 in 2, wobei das Abfragewort die
Lemma-Zeichenkette aus Kasten 182, wie oben angegeben,
ist. Da die geordnete Liste 152 gemäß der Frequenz sortiert ist,
wird die Implementierung in 5 fortgesetzt,
bis sie das häufigste
Suffixpaar erreicht, welches die Lemma-Zeichenkette mit einer akzeptablen Zeichenkette
in Beziehung setzt.
-
Wenn
alle Suffixpaare in der geordneten Liste 152 behandelt
wurden, ohne dass eine modifizierte Version der Lemma-Zeichenkette
erhalten wurde, die akzeptabel ist, gibt die Aktivität in Kasten 212 die
in Kasten 180 empfangenen Eingabe-Wortdaten 156 zurück, damit
anzeigend, dass das Eingabewort in keiner der Familien ist.
-
C.2. Modifizierte Wörter
-
6 veranschaulicht
eine FST-Datenstruktur, die verwendet werden kann, um die Aktivitäten in Kästen 202 und 204 von 5 zu
implementieren.
-
Die
FST-Datenstruktur 220 wurde für die Suffixbeziehung "ism+N:istic+Adj" aufgebaut, die Substantive
mit dem Suffix "-ism" in Adjektive mit
dem Suffix "-istic" und umgekehrt übertragen
kann. Beispiele für
diese Beziehung treten (in englischer Sprache – Anm. des Übersetzers) auf in idealism:idealistic,
realism:realistic und so weiter.
-
Kasten 202 in 5 kann
implementiert werden, indem man am Startzustand 222 beginnt
und nach einem Pfad durch die Datenstruktur 220 unter Benutzung
der Lemma-Zeichenkette
aus Kasten 182 sucht. Jeder Übergang in der Datenstruktur 220 hat zwei
Beschriftungen, jeweils als "linke
Beschriftung" und "rechte Beschriftung" bezeichnet, obgleich
die Reihenfolge nicht von Bedeutung ist. Die Suche kann z.B. versuchen,
die linke Beschriftung mit einem Eingabezeichen in Übereinstimmung
zu bringen, und die rechte Beschriftung als Ausgabe zu nehmen, wenn die
linke Beschriftung in Übereinstimmung
gebracht ist. Die Suche kann auch einen Ausgabe-Buffer verwenden,
um eine Kette von Ausgabezeichen zu speichern und zu modifizieren,
und einen Wahl-Datenstapel
zum Speichern von Wahlpunkten zur Benutzung beim Zurückverfolgen.
Die Suche kann die Inhalte des Ausgabe-Buffers als eine Ausgabezeichenkette bereitstellen,
nachdem eine akzeptable Eingabezeichenkette in Übereinstimmung gebracht wurde,
bevor jegliches weitere Rückwärtsverfolgen
ausgeführt wird.
-
Wenn
z.B. die Lemma-Zeichenkette aus Kasten 182 "idealistic+Adj" ist, kann die Suche
nach einem Pfad beginnen durch Versuchen, dem ausgehenden Übergang 224 aus
einem Startzustand 222 zu folgen. Dem Übergang 224 kann mit
jedem Zeichen gefolgt werden, und er stellt dasselbe Zeichen als
Ausgabe zur Verfügung,
so dass, nachdem dem Übergang 224 für alle Zeichen
in der Lemma-Zeichenkette gefolgt wurde, der Ausgabe-Buffer die Lemma-Zeichenkette "idealistic+Adj" enthalten wird, und
der Wahl-Datenstapel
wird anzeigen, dass eine Auswahl mindestens am ersten, sechsten
und neunten Zeichen der Eingabezeichenkette auftrat. Aber der Startzustand 222 tritt
nicht am Ende einer akzeptablen Eingabezeichenkette auf, so dass
die Suche rückverfolgen
muss.
-
Die
Suche kann zuerst bis zum neunten Zeichen in der Lemma-Zeichenkette
zurückverfolgen,
so dass im Ausgabe-Buffer die Zeichenkette "idealist" enthalten bleibt. Die Suche kann dann
dem Übergang 226 folgen,
dem nur gefolgt werden kann, wenn das nächste Zeichen der Eingabekette
ein "i" ist, und welches
ein "i" als Ausgabe bereitstellt.
Hierbei wird aber die Suche wiederum nicht erfolgreich sein, weil das
nächste
Eingabezeichen "c" ist, so dass die
Suche nicht dem Übergang 228 folgen
kann. Deshalb muss die Suche erneut rückverfolgen.
-
Die
Suche kann als nächstes
zum sechsten Zeichen in der Lemma-Zeichenkette rückverfolgen, so dass im Ausgabe-Buffer
die Kette "ideal" enthalten bleibt.
Die Suche kann dann dem Übergang 226 mit dem "i" und dem Übergang 228 mit dem "s" folgen, und dabei den Zustand 230,
indem der Ausgabe-Buffer "idealis" enthält. Die
Suche kann dann dem oberen Ast aus Zustand 230 folgen,
die Zeichen "t", "i", "c" und "+Adj" abgleichen, und "m+N" als Ausgabe aus
den Übergängen 232, 234, 236 und 238 erhalten, weil "å"-Kennungen ignoriert werden. Deshalb
enthält
der Buffer "idealism+N". In diesem Falle
tritt Zustand 240 am Ende einer akzeptablen Eingabekette auf,
wie dies durch das "F" angezeigt wird,
so dass die Zeichenkette "idealism+N" aus dem Ausgabe-Buffer
ausgegeben wird. Deshalb folgt, wenn die Suche vollendet ist, die
Aktivität
in Kasten 204 der Verzweigung nach Kasten 206,
anstelle zu Kasten 200 zurückzukehren, wie es wäre, wenn
keine Ausgabezeichenkette in Kasten 202 erhalten worden
wäre.
-
Vor
Beendigung kann die Suche allerdings erneut rückverfolgen, um nachzusehen,
ob es noch andere Ausgabezeichenketten gibt. Die Suche kann zunächst zum
ersten Zeichen der Lemma-Zeichenkette zurückverfolgen, wobei der Ausgabe-Buffer
leer bleibt. Die Suche kann dann dem Übergang 226 mit dem "i" folgen, aber kann dem Übergang 228 mit
dem "d" nicht folgen, so
dass keine weiteren Ausgabezeichenketten erhalten werden können.
-
Die
Datenstruktur 220 kann günstig in beiden Richtungen
laufen, von "-istic+Adj" zu "-ism+N", wie oben beschrieben,
und auch in der umgekehrten Richtung, von "-ism+N" zu "-istic+Adj", indem den Zuständen zwischen
Zustand 230 und Endzustand 242 gefolgt wird.
-
Anstelle
einer einzelnen Datenstruktur, wie in 6 gezeigt,
wäre es
möglich,
zwei separate Datenstrukturen zu verwenden, eine, um von "-istic+Adj" zu "-ism+N" zu gehen, und die
andere, um in der anderen Richtung zu gehen. In diesem Fall wird die
Aktivität
in Kasten 204 erfolgreich sein, wenn von einer der Datenstrukturen
erfolgreich eine Ausgabe erhalten wird. Dies kann aber weniger effizient
sein, da es die Anzahl von Datenstrukturen verdoppeln würde.
-
Ein
anderer Zugang im Umfang der Erfindung besteht darin, eine Anzahl
von Datenstrukturen, wie Datenstruktur 220, zu kombinieren,
um eine FST-Datenstruktur zu erhalten, die eine zusammengesetzte
Suffixbeziehung definiert. Dieser Zugang wurde durch beliebiges
Unterteilen der frequenzgeordneten Liste von paarweisen Suffixbeziehungen
in eine relativ kleine Anzahl, etwa fünf, von Teillisten, und anschließendes Erzeugen
einer FST-Datenstruktur für
jede Teilliste implementiert. Die fünf resultierenden FST-Datenstrukturen werden
in einer frequenzgeordneten Liste bereitgestellt.
-
Ein
Nachteil von beliebigen Unterteilen der frequenzgeordneten Liste
ist aber, dass die resultierenden FSTs mehr als eine Ausgabezeichenkette
für einige
Lemma-Zeichenketten
bereitstellen können, und
die Ausgabezeichenketten für
eine gegebene Lemma-Zeichenkette können nicht gemäß der Frequenzordnung
der paarweisen Suffixbeziehungen bereitgestellt werden. Es kann
möglich
sein, diesen Nachteil zu überwinden,
indem die frequenzgeordnete Liste in einer grundsätzlicheren
Weise unterteilt wird, wie etwa, indem man sie vor jeder paarweisen Suffixbeziehung,
die, wenn mit den paarweisen Beziehungen nach der letzten Teilung
kombiniert, für
einige Lemma-Zeichenketten
in mehr als einer Ausgabezeichenkette resultieren würde, in
Teillisten zerlegt.
-
C.3. Suffixpaar-Extraktion
-
7 erläutert detaillierter,
wie die Suffixpaar-Extraktionsroutinen 140 in 4 implementiert werden
können.
-
Wie
in 7 gezeigt, beginnt die Implementierung im Kasten 250 durch
Erhalten einer FST-Datenstruktur eines Flexionslexikons, wie etwa
die Xerox-Flexionslexika für
englisch oder französisch,
erhältlich
von InXight Corporation, Palo Alto, Kalifornien. Diese Lexika schließen jede
akzeptable Zeichenkette mit einem Wortart (part-of-speech -POS)-Anhängsel ab.
Die Aktivität
in Kasten 250 kann einschließen, eine Handhabe zu erhalten,
um auf ein Lexikon zuzugreifen, das bereits im Speicher gespeichert
ist, wie mit dem Flexionslexikon 150 in 4 gezeigt.
-
Die
Aktivität
im Kasten 252 extrahiert die ungebeugte oder Lemma-Seite
der FST-Datenstruktur, um
eine ungefilterte FSM-Datenstruktur zu erhalten, die alle Zeichen+POS-Ketten
akzeptiert, die für
die Lemma-Seite der FST-Datenstruktur akzeptabel sind. Da die FST-Datenstruktur
typischerweise eine unendliche Menge von Zeichen+POS-Ketten akzeptiert,
einschließlich
Zahlenketten, akzeptiert typischerweise auch die ungefilterte FSM-Datenstruktur eine
unendliche Menge, obwohl diese endlich sein könnte, wenn die FST nur eine
endliche Menge von Zeichen+POS-Ketten akzeptiert. Die Aktivität in Kasten 252 kann
mit einer herkömmlichen
automatischen FSM- Extraktionseinrichtung
implementiert werden. Wege, um diese und verwandte Arbeitsvorgänge zu implementieren,
können
auch aus US-A-5,625,554 und R.M. Kaplan, und M. Kay, "Regular Models of
Phonological Rule Systems",
Computational Linguistics, Band 20, Nr. 3, 1994, Seiten 331–380 ("der Kaplan-und-Kay-Artikel") verstanden werden.
-
Die
Aktivität
in Kasten 254 filtert dann die ungefilterte FSM-Datenstruktur
aus Kasten 252, um eine gefilterte FSM-Datenstruktur zu erzeugen,
die nur geeignete Zeichen+POS-Ketten akzeptiert. Zum Beispiel können Zeichenketten
ausgefiltert werden, die mit unpassenden POS-Anhängseln enden, wie etwa POS-Anhängseln,
die verschiedenartige Zahlen anzeigen, oder die andere Arten von
Zeichenketten anzeigen, die unpassend sind. In Sprachen, in denen Wörter durch
Zusammensetzung erzeugt werden können,
wie etwa deutsch, können
Zeichenketten ausgefiltert werden, die eine geeignete Maximallänge oder
eine geeignete Maximalanzahl von zusammengesetzten Teilen, wie etwa
vier, überschreiten. Die
Aktivität
in Kasten 254 kann durch Zusammenfügen der ungefilterten FSM mit
einer filternden FSM, die die Bedingungen für das Einbeziehen einer Zeichenkette
in die gefilterte FSM festlegt, implementiert werden. Die filternde
FSM kann unter Verwendung herkömmlicher
Techniken erzeugt werden, ähnlich den
in US-A-5,625,554 und dem Kaplan-und-Kay-Artikel beschriebenen.
-
Die
Aktivität
in Kasten 256 benutzt dann die gefilterte FSM-Datenstruktur
aus Kasten 254, um eine voranstellende FST-Datenstruktur zu erzeugen, die
ein normalisiertes Präfix-Äquivalent
als Antwort auf ein akzeptables Wort ausgibt. Mit anderen Worten,
das Eingabeniveau der voranstellenden FST akzeptiert alle von der
gefilterten FSM akzeptierten Zeichen+POS-Ketten, und das Ausgabeniveau
stellt für jede
eingegebene Zeichen+POS-Kette eine normalisierte p-Zeichenkette
bereit, die für
einen Wert von q einem Präfix
der eingegebenen Zeichen+POS-Kette p/q-äquivalent ist. Der Begriff
der p/p-Äquivalenz kann
aus der Beschreibung in der parallelen US-Patentanmeldung Nr. 09/213,309
mit dem Titel "Grouping
Words with Equivalent Substings by Automatic Clustering Based on
Suffix Relationships" verstanden
werden.
-
Die
Aktivität
in Kasten 256 kann durch Erzeugen einer intermediären FST
implementiert werden, die auf eine Zeichenkette durch automatisches
Normalisieren der Zeichen antwortet, bis eine Kette von p-normalisierten
Zeichen erhalten wird; Normalisieren kann z.B. einschließen, diakritische
Marken zu entfernen, und möglicherweise
Zeichen zu ersetzen und andere Modifikationen auszuführen, die äquivalente
Präfixe
erzeugen. In der gegenwärtigen
Implementierung ersetzt jeder Normalisierungsvorgang ein Zeichen
mit einem anderen Zeichen, wodurch Eins-zu-Eins oder p/p-Äquivalenz
zwischen Zeichen erhalten wird; die Implementierung könnte leicht
erweitert werden, um ein verdoppeltes Zeichen als einfaches Zeichen
zu normalisieren oder umgekehrt, oder um andere Normalisierungen
vorzunehmen, die die Zeichenanzahl verändern.
-
Man
kann dann die intermediäre
FST auf der durch die gefilterte FSM angezeigte Wortliste ablaufen
lassen, um eine Präfix-FSM
zu erzeugen, die alle die Präfix-Äquivalente
anzeigt. Die Präfix-FSM
kann mit der gefilterten FSM zusammengefügt werden, um die voranstellende
FST zu erzeugen. In der voranstellenden FST sind das (p+1)-te und
die folgenden Zeichen entlang jeden Pfades auf dem Eingabeniveau
mit einem Epsilon auf dem Ausgabeniveau gepaart, was bedeutet, dass
in Antwort auf jene Zeichen keine Ausgabe bereitgestellt wird.
-
Die
Aktivität
in Kasten 260 invertiert die voranstellende FST aus Kasten 256,
um eine invertierte voranstellende FST mit Präfix-Äquivalenten auf dem Eingabeniveau,
und mit akzeptablen Wörtern
auf dem Ausgabeniveau zu erzeugen. Die Aktivität in Kasten 260 kann
durch einfaches Umschalten der Elemente in der Kennzeichnung jedes Übergangs
in der FST implementiert werden.
-
Die
Aktivität
in Kasten 262 fügt
die voranstellende FST aus Kasten 256 mit der invertierten
voranstellenden FST aus Kasten 260 zusammen, wobei die
Zusammenfügung
so ausgeführt
wird, dass die Präfix-Äquivalente
herausfallen, und dass die Epsilons angefügt werden, um eine kürzere Eingabezeichen+POS-Kette
an eine Ausgabezeichen+POS-Kette anzugleichen, wobei eine Präfix-Gruppen-FST
erzeugt wird. Die Präfix-Gruppen-FST akzeptiert
die Wortliste der gefilterten FSM aus Kasten 254 als ihr
Eingabeniveau, und kann jedes Wort ausgeben, das in der FST zur
Präfix-Bildung
in Kasten 256 dasselbe Präfix-Äquivalent hat. Die Zusammenfügung in
Kasten 262 kann mit herkömmlichen Techniken ausgeführt werden, ähnlich jenen,
die in US-A-5,625,554 und dem Kaplan-und-Kay-Artikel beschrieben
sind.
-
Die
Aktivität
in Kasten 264 benutzt dann die Präfix-Gruppen-FST aus Kasten 262,
um eine Liste von Präfix+Suffix-Alternativen
zu erzeugen. Die Aktivität
in Kasten 264 kann durch Auslesen der Zeichenpaare entlang
jedes Pfades der Präfix-Gruppen-FST und
Vergleichen der Zeichen in jedem Paar, bis eine Nicht-Übereinstimmung
gefunden wird, implementiert werden. Bevor eine Nicht-Übereinstimmung
gefunden wird, wird nur ein Zeichen für das Präfix gespeichert, aber nachdem
eine Nicht-Übereinstimmung
gefunden wird, werden beide Zeichen jedes Paares für den Suffix
gespeichert.
-
Zum
Beispiel könnten
für den
Pfad, der das Verb "produce" mit dem Substantiv "production" in Beziehung setzt
(in englischer Sprache – Anm.
des Übersetzers),
den Präfix+Suffix-Alternativen
durch folgende Zeichenkette dargestellt werden: (p, r, o, d, u,
c, <:t>, <+V:i>, <å:o>, <å:n>, <å:+N>), wobei "å"-Zeichen eingefügt wurden, um die Längendifferenz
auszugleichen, und wobei "+V" und "+N" jeweils ein Verb
und ein Substantiv anzeigen. Das Präfix des Pfades ist somit "produc", und der Pfad hat
zwei alternative Suffixe, "e+V" und "tion+N".
-
Die
Aktivität
in Kasten 266 kann dann die in Kasten 264 erzeugte
Liste benutzen, um eine Liste von Suffixpaaren und Frequenzen zu
erzeugen. Die Liste kann durch Umwandeln der Suffix-Alternativen jedes
Objekts auf der Liste aus Kasten 264 in ein Suffixpaar
erzeugt werden. Wenn das Suffixpaar mit einem Suffixpaar auf einer
Liste von früher
erhaltenen Suffixpaaren übereinstimmt,
erhöht
die Aktivität
in Kasten 266 seine Frequenz; wenn nicht, wird das Suffixpaar
mit einer Frequenz von eins der Liste hinzugefügt. Nachdem alle Objekte auf
der Liste aus Kasten 264 behandelt worden sind, sortiert
die Aktivität
in Kasten 266 die Liste nach der Frequenz, um die geordnete
Liste 152 von Suffixpaaren zu erhalten, von denen jedes
dann unter Verwendung herkömmlicher
Techniken in ein FST der in 6 gezeigten
Art umgewandelt werden kann. Die Suffix-paar-FSTs können wie oben beschrieben,
in Bezug auf die Kästen 202 und 204 von 5 benutzt
werden.
-
C.4. Variationen
-
Die
oben beschriebene Implementierung kann im Rahmen der Erfindung vielfältig variiert
werden.
-
Die
oben beschriebene Implementierung wurde erfolgreich auf Sun-SPARC-Workstations ausgeführt, aber
Implementierungen könnten
auf anderen Maschinen ausgeführt
werden.
-
Die
oben beschriebene Implementierung ist erfolgreich in der C-Programmierumgebung
auf der Sun-OS-Plattform ausgeführt
worden, aber andere Programmierumgebungen und Plattformen könnten verwendet
werden.
-
Die
oben beschriebene Implementierung versucht Modifikationen gemäß einer
Folge von Suffixbeziehungen, die durch eine geordnete Liste von Suffixpaaren
angezeigt werden, die gemäß der Frequenz
geordnet sind. Die Erfindung könnte
implementiert werden, um Modifikationen gemäß einer Folge von Suffixbeziehungen
zu versuchen, wobei eine Suffixbeziehung mehr als zwei Suffixe in
Beziehung setzt. Wie oben mit Bezug auf 6 erklärt, kann
es vorteilhaft sein, die Erfindung mit mehreren zusammengesetzten
Suffixbeziehungen zu implementieren, deren jede durch eine FST definiert
ist, die eine Anzahl von paarweisen Suffixbeziehungen einschließt.
-
Die
oben beschriebene Implementierung kann für ein gegebenes Abfragewort
nur ein modifiziertes Wort erhalten, das in einer der Wortgruppen ist,
aber die Erfindung kann auch implementiert werden, um fortgesetzt
Modifikationen zu versuchen, nachdem ein modifiziertes Wort erhalten
wurde, das in einer der Wortgruppen ist.
-
Die
oben beschriebene Implementierung benutzt ein Flexionslexikon einer
Sprache, um Suffixpaare zu erhalten, aber andere Informationen über eine
Sprache könnte
verwendet werden, um Suffixpaare zu erhalten, wie etwa eine Liste
oder andere Datenstruktur, die Wörter
anzeigt, die in der Sprache akzeptabel sind, und Suffixpaare könnten in
einer großen
Variabilität
von Wegen erhalten werden, einschließlich aus einer Wortliste unter
Benutzung von Unix-Tools, wie Findaffix. Die Implementierung nutzt das
Flexionslexikon auch, um Lemmas von Eingabeworten zu erhalten, aber
die Erfindung könnte
durch direktes Benutzen von Eingabewörtern implementiert werden,
anstelle Lemmata zu erhalten, oder durch Stammbildung oder andere
Arbeitsvorgänge,
um ungebeugte Formen von Wörtern
zu erhalten. Weiterhin könnte
die oben beschriebene Implementierung in Kombination mit anderen
Techniken zur Identifizierung einer Gruppe von Wörtern, die ein Eingabewort einschließen, oder
mit diesem verwandt sind, verwendet werden.
-
Die
oben beschriebene Implementierung benutzt eine FST-Datenstruktur,
um eine Gruppe von Familien zu identifizieren, die ein Wort beinhaltet, aber
Gruppen von Wörtern
könnten
zusätzlich
zu einer FST in vielen anderen Arten von Datenstrukturen gespeichert
sein, wie etwa in relationalen Datenbanken, und eine Gruppe könnte dementspre chend
in jeder für
solche andere Arten von Datenstrukturen geeigneten Weise identifiziert
werden.
-
Die
oben beschriebene Implementierung benutzt eine FST, die ein Wort
auf einen Repräsentanten
einer relationalen Familie abbildet, die ähnlich einer Ableitungsfamilie
ist. Eine FST kann aber auf jede andere geeignete Information, die
eine Gruppe, die ein Wort einschließt, identifiziert, abbilden,
und die Gruppen müssen
nicht relationale Familien sein, sondern können andere Arten von Familien
oder Gruppen sein, innerhalb derer verwandte Wörter miteinander in Beziehung
stehende Suffixe haben, wie Flexionsfamilien.
-
Die
oben beschriebene Implementierung schließt in jedem Suffixpaar die
Wortart ein, aber dies ist optional. Die Erfindung könnte ohne
Berücksichtigung
der Wortart implementiert werden.
-
Die
oben beschriebene Implementierung wurde auf Englisch und Französisch angewandt, aber
die Erfindung kann auf andere Sprachen als Englisch und Französisch angewandt
werden.
-
In
der oben beschriebenen Implementierung werden die Aktivitäten in einer
Reihenfolge ausgeführt,
die in vielen Fällen
modifiziert werden können.
-
Die
oben beschriebene Implementierung benutzt aktuell verfügbare Rechentechniken,
aber könnte
leicht modifiziert werden, um neu entdeckte Rechentechniken zu verwenden,
wenn diese verfügbar
werden.
-
D. Anwendungen
-
Die
Erfindung kann angewendet werden, um automatisch eine Gruppe von
Wörtern,
die ein Eingabewort beinhaltet oder mit diesem in Beziehung steht,
zu erhalten, und die Gruppe von Wörtern kann dann benutzt werden,
um eine Informationsbeschaffungsanfrage zu formulieren. Um die Leistung
der Informationsbeschaffung zu verbessern, kann dies für jedes
Wort in einer Abfrage ausgeführt
werden.
-
E. Verschiedenes
-
Die
Erfindung ist mit Bezug auf Software-Implementierungen beschrieben,
aber die Erfindung könnte
mit spezialisierter Hardware implementiert werden.
-
Die
Erfindung ist mit Bezug auf Implementierungen, die serielle Verarbeitungstechniken
verwenden, beschrieben worden. Die Erfindung könnte auch mit parallelen Verarbeitungstechniken
implementiert werden.