DE102004046252A1 - Einrichtung zum Trennen zusammengesetzter Wörter und zur Rechtschreibprüfung - Google Patents
Einrichtung zum Trennen zusammengesetzter Wörter und zur Rechtschreibprüfung Download PDFInfo
- Publication number
- DE102004046252A1 DE102004046252A1 DE102004046252A DE102004046252A DE102004046252A1 DE 102004046252 A1 DE102004046252 A1 DE 102004046252A1 DE 102004046252 A DE102004046252 A DE 102004046252A DE 102004046252 A DE102004046252 A DE 102004046252A DE 102004046252 A1 DE102004046252 A1 DE 102004046252A1
- Authority
- DE
- Germany
- Prior art keywords
- word
- section
- compound
- compound word
- lexicon
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/191—Automatic line break hyphenation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/232—Orthographic correction, e.g. spell checking or vowelisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
Description
- Die vorliegende Anmeldung beruht auf der provisorischen US-Patentanmeldung mit der Seriennummer 60/513,921, eingereicht am 23. Oktober 2003, deren Gesamtinhalt durch Bezugnahme in die vorliegende Anmeldung eingeschlossen wird, und deren Priorität beansprucht wird.
- Es wird Bezug auf die folgenden, gleichzeitig anhängigen und gemeinsam übertragenen Patentanmeldungen genommen: US-Anmeldung mit der Seriennummer 10/804,883, eingereicht am 19. März 2004 und dem Titel "SYSTEM AND METHOD FOR PERFORMING ANALYSIS ON WORD VARIANT", sowie US-Anmeldung mit der Seriennummer 10/804,998, eingereicht am 19. März 2004 und dem Titel "FULL-FORM LEXICON WITH TAGGED DATA AND METHODS OF CONSTRUCTING AND USING THE SAME", die beide insgesamt durch Bezugnahme in die vorliegende Anmeldung eingeschlossen werden.
- Die vorliegende Erfindung betrifft die Verarbeitung zusammengesetzter Wörter, wenn diese in einer Texteingabe auftreten. Spezieller bestimmt die vorliegende Erfindung die Wortbestandteile eines zusammengesetzten Wortes, wenn das zusammengesetzte Wort nicht in einem Lexikon vorhanden ist. Weiterhin stellt die vorliegende Erfindung Vorschläge für die Rechtschreibung für nicht in einem Lexikon enthaltene, zusammengesetzte Wörter zur Verfügung, die auftauchen.
- Das Vokabular zahlreicher Sprachen wie beispielsweise Deutsch, Holländisch, Schwedisch, Isländisch, Norwegisch, Griechisch, Ungarisch, Türkisch, und Finnisch ist praktisch unbegrenzt. Diese Sprachen lassen eine rekursive Vereinigung von Wortarten zu, praktisch ohne festgelegte Grenze. Dieser Vorgang wird als "Zusammensetzen" bezeichnet. Andere Sprachen ohne Wortzusammensetzungen, beispielsweise Englisch, bauen üblicherweise semantische Einheiten aus zwei oder mehr Worten entweder mit einfachen Leerstellen oder Bindestrichen auf (beispielsweise bus driver association, USA-specific). Während die Verwendung von Bindestrichen auch im Deutschen üblich ist (beispielsweise USA-spezifisch), besteht die übliche Praxis darin, Wörter zu einem neuen Wort zusammenzusetzen (beispielsweise "Busfahrergesellschaft").
- Dies führt dazu, dass es unmöglich ist, ein vollständiges deutsches Vokabular in einem Wörterbuch zu speichern. Um daher zusammengesetzte Wörter als zulässig zu erkennen, muss ein Laufzeituntersuchungsvorgang für zusammengesetzte Wörter eingesetzt werden, der die lexikalischen Bestandteile eines zusammengesetzten Wortes identifizieren kann, und bewerten kann, ob ihre morphologische Verwendung als Segment eines zusammengesetzten Wortes korrekt ist.
- Die Herausforderung bei der Untersuchung zusammengesetzter Wörter besteht in der Rückführung morphologisch geänderter Segmente zurück zu ihren Infinitivformen oder Lemmas, welche üblicherweise die Formen darstellen, die in Lexika gespeichert sind, um diese relativ klein zu halten. Allerdings treten zahlreiche Wörter nicht in ihrer Grundform als Segment eines zusammengesetzten Wortes auf (beispielsweise Blumenladen → Blume, Laden (flower + shop); Hundeleine → Hund, Leine (dog + leash)). Die Literatur bezeichnet typischerweise die zugefügten Zeichen zwischen Segmenten als "Verbindungselemente", die als eine Art eines "morphologischen Klebers" zwischen den Einzelteilen der zusammengesetzten Wörter angesehen werden. Allerdings wird angenommen, dass diese Begriff unzureichend und irreführend ist, da Segmente eines zusammengesetzten Wortes häufig nicht durch die einfache Erkennung von Lemmas und festgelegter Verbindungselemente aufgelöst werden können. Tatsächlich verhält sich das letzte Segment jedes zusammengesetzten Wortes immer wie jedes andere Wort in dem Wörterbuch. Anders ausgedrückt, wird es entsprechend der Struktur des Satzes oder der gewünschten semantischen Verwendung gebeugt.
- Im Deutschen beispielsweise ist die einzige, mit einem zusammengesetzten Wort verbundene Abänderung eines letzten Segments die Großschreibung: alle Substantive werden im Deutschen groß geschrieben. Selbstverständlich muss, wenn ein Substantiv ein mittleres oder letztes Teil eines umfangreicheren Wortes wird, sein groß geschriebener Anfangsbuchstabe auf Kleinschreibung umgestellt werden. Im Gegensatz hierzu wird, wenn ein Verb, das immer klein geschrieben wird, falls es sich nicht am Anfang eines Satzes befindet, zum Anfangssegment eines zusammengesetzten Substantivs wird, dessen Schreibung auf Großschreibung umgestellt. Dies wird nicht als morphologische Änderung angesehen. Segmente, die nicht das letzte Segment sind, zeigen ein für das zusammengesetzte Wort spezifisches Verhalten, welches verschiedene Arten von Abänderungen einer Basisform umfasst, beispielsweise
- • Keine: Busfahrergesellschaft = Bus Fahrer Gesellschaft (bus driver association)
- • Zugeführter "Verbinder": Blumenladen = Blume Laden (flower shop)
- • Verkürztes Segment: Schwimmverein = Schwimmen Verein (swimming club)
- • "Gemorphtes" Segment: Länderspiel = Land Spiel (international match)
- • "Spezielle Fälle: Schiffahrt = Schiff Fahrt (shipping)
- Untersuchungen haben gezeigt, dass eine einfache Musterüberprüfung von Zeichenketten, bei welcher nur Verbindungselemente berücksichtigt werden, nicht alle Arten von Segmenten zusammengesetzter Wörter auflösen kann. Die Anwendung aller erforderlichen Modifikationen bei einem Segment, um es zurück in die Lexikonform zu bringen, ist sehr laufzeitintensiv, und führt zahlreiche unerwünschte Mehrdeutigkeiten ein, deren Auflösung zu einer noch höheren Laufzeitbelastung führt.
- Eine Lösung, kostenaufwendige Laufzeitprozesse zu begrenzen, besteht im Übergang auf Vollformlexika, welche sämtliche gebeugten Formen eines Wortes enthalten. Diese werden üblicherweise von kommerziellen Rechtschreibprüfungen verwendet. Eine komplexe morphologische Analyse (insbesondere für gebeugte, letzte Segmente) wird durch einfache Nachschläge im Lexikon ersetzt. Dies unterstützt auch das Nachschlagen von Segmenten zusammengesetzter Worte, da die meisten von ihnen mit einer zulässigen Beugung einer Basisform übereinstimmen. Allerdings ist nicht jeder lexikalische Eintrag, der sich in einem zusammengesetzten Wort findet, notwendigerweise ein zulässiges Segment in dem vorgegebenen Kontext. An diesem Punkt passiert es häufig, dass verfügbare Rechtschreibprüfprogramme nicht ordnungsgemäß mit zusammengesetzten Wörtern umgehen. So werden beispielsweise zahlreiche Rechtschreibfehler nicht erfasst, und werden Rechtschreibvorschläge – falls sie überhaupt zur Verfügung gestellt werden – als nicht verlässlich angesehen.
- Eine Analyse zusammengesetzter Wörter wird für verschiedene Anwendungen benötigt, welche die Verarbeitung natürlicher Sprache betreffen. Derartige Anwendungen umfassen Worttrennung (für Suchmaschinen), Grammatiküberprüfung, Rechtschreibprüfung, Erkennung von Handschrift und Spracherkennung, Maschinenübersetzung, Textdurchsuchung, usw.
- Eine schnelle und exakte Analyse zusammengesetzter Wörter ist zu dem Zweck wünschenswert, Dokumente in einen Index umzuwandeln, in welchem Suchanfragen ausgeführt werden sollen. Es ist wesentlich, die Bestandteile eines zusammengesetzten Wortes zu identifizieren, um eine maximale Abdeckung von Übereinstimmungen zu erzielen. Daher wird jedes Segment eines zusammengesetzten Wortes in dem Index gespeichert, und wird auch jeder Abfrage eines zusammengesetzten Wortes in Segmente des zusammengesetzten Wortes getrennt. Dies hilft dazu, sicherzustellen, dass beispielsweise die Abfrage "Ball" (ball) Übereinstimmung mit "Lederball" (leather ball) und umgekehrt ergibt.
- Weiterhin ist eine Tatsache, die deutsche Benutzer bei Rechtschreibprüfprogrammen festgestellt haben, eine nicht zufriedenstellende Ausführung bei zusammengesetzten Wörtern. Korrekturwerkzeuge stellen eine der wichtigsten Techniken auf dem Markt von Editierungsprogrammen dar. Eine genauere Untersuchung zusammengesetzter Wörter ist wünschenswert, nicht nur um ein verlässlicheres und hilfreiches Rechtschreibprüfprogramm zu unterstützen, sondern auch zur Unterstützung von Grammatikprüfprogrammen.
- Die Worttrennung und die Rechtschreibprüfung stellen unterschiedliche Anforderungen an die Untersuchung zusammengesetzter Wörter. Zwar kann man nachlässiger in Bezug auf die korrekte morphologische Verwendung von Segmenten innerhalb eines zusammengesetztes Wortes sein, jedoch muss ermöglicht werden, eine falsche Verwendung anzuzeigen (beispielsweise fehlende oder hinzugefügte Verbindungselemente).
- Die vorliegende Erfindung führt eine Untersuchung zusammengesetzter Wörter bei Eingabewörtern durch. Wenn bei einer ersten Ausführungsform ein zusammengesetztes Wort auftritt, können die Wortbestandteile, die das zusammengesetzte Wort bilden, identifiziert werden. Es wird das statische Analysemodul für zusammengesetzte Wörter gemäß der vorliegenden Erfindung eingesetzt. Zuerst kann, durch Analyse des Lexikons, die Analysekomponente für zusammengesetzte Wörter alle zusammengesetzten Wörter eliminieren, die sich bereits in dem Lexikon befinden. Falls sich das Wort nicht in dem Lexikon befindet, geht die vorliegende Erfindung dazu über, das zusammengesetzte Wort zeichenweise zu untersuchen. Nach jedem Buchstaben wird das Lexikon erneut nach Einträgen untersucht, die in Beziehung zum zusammengesetzten Wort stehen. Falls eine Übereinstimmung mit einem zusammengesetzten Wort auftritt, führt die Analyse für zusammengesetzte Wörter eine Überprüfung durch, um zu bestimmen, ob der identifizierte Bestandteil als Bestandteil in dem zusammengesetzten Wort verwendet werden kann, durch Überprüfung, ob das Lexikon eine Angabe enthält, das das Wort als Bestandteil eines zusammengesetzten Wortes verwendet werden kann.
- Sobald ein Bestandteil eines zusammengesetzten Wortes identifiziert wurde, geht das Analysemodul für zusammengesetzte Wörter dazu über, die verbleibenden Buchstaben nach Bestandteilen des zusammengesetzten Wortes zu überprüfen. Das Analysemodul für zusammengesetzte Wörter kann zusätzliche Wortbestandteile bei dem verbleibenden Buchstaben finden. Wenn zusätzliche Wortbestandteile aufgefunden werden, bevor der letzte Buchstabe des zusammengesetzten Wortes erreicht ist, führt das Modul eine Überprüfung durch, um sicherzustellen, dass diese Wortbestandteile in nicht-letzten Segmenten verwendet werden können. Weiterhin führt das Modul eine Überprüfung durch, um sicherzustellen, dass die verbleibenden Buchstaben nicht daran gehindert sind, als letztes Segment eingesetzt zu werden. Dieser Vorgang wird wiederholt, bis sämtliche Buchstaben untersucht wurden, und alle möglichen Wortbestandteile identifiziert wurden.
- Sobald sämtliche Wortbestandteile des zusammengesetzten Wortes identifiziert wurden, berechnet das Modul die relative Wahrscheinlichkeit jeder Segmentgruppe des zusammengesetzten Wortes. Diese Wahrscheinlichkeiten beruhen auf Daten, die durch statistische Analyse vorher existierender Texte erhalten wurden. Auf Grundlage der Ergebnisse der Analyse übergibt das Modul an den Benutzer oder das Programm eine wahrscheinlichste Segmentierung, oder eine Gruppe von Segmentierungen zusammen mit ihren zugehörigen Wahrscheinlichkeiten.
- Eine zweite Ausführungsform der vorliegenden Erfindung betrifft die Rechtschreibprüfung nicht in einem Lexikon enthaltener, zusammengesetzter Wörter. Diese Wörter werden normalerweise von dem Benutzer im Verlauf des Schreibens eines Dokuments erzeugt. Der Vorgang, der von dem Analysemodul für zusammengesetzte Wörter ausgeführt wird, ist ähnlich jenem Vorgang, der bei der Worttrennung verwendet wird, jedoch ist die Ausgabe unterschiedlich.
- Wenn das Analysemodul für zusammengesetzte Wörter zur Rechtschreibprüfung aufgerufen wird, ist das System nicht mit der relativen Wahrscheinlichkeit befasst, dass ein zusammengesetztes Wort korrekt ist, sondern damit, ob es sich um ein mögliches und wahrscheinliches, zusammengesetztes Wort handelt. Zuerst prüft das Analysemodul das Wort in Bezug auf das Lexikon ab. Wird es im Lexikon gefunden, passiert nichts weiteres. Ist allerdings das Wort nicht in dem Lexikon vorhanden, geht das Analysemodul dazu über, das Wort auf Wortbestandteile aufzuteilen. Wenn ein Bestandteil mit einem Wort in dem Lexikon übereinstimmt, führt das Analysemodul eine Überprüfung durch, um festzustellen, ob das Wort in seiner vorliegenden Form zulässig in einem zusammengesetzten Wort ist. Ist es in einem zusammengesetzten Wort nicht zulässig, führt das Modul eine Überprüfung des nächsten Buchstabens gegen die zulässigen Variationen des festgestellten Worts zur Verwendung in einem zusammengesetzten Wort durch. Wird ein zulässiges Wort gefunden, akzeptiert das Modul das Wort, und macht weiter. Wenn jedoch der nächste Buchstabe keinen gültigen Eintrag in dem Lexikon darstellt, identifiziert dann das Modul die Variationen zulässiger Segmente als mögliche Vorschläge. Das Modul führt dann eine statistische Analyse durch, und versucht zu bestimmen, welche der Variationen am wahrscheinlichsten die korrekte Variation zur Verwendung in diesem zusammengesetzten Wort ist. Die beste Antwort wird an den Benutzer als Rechtschreibvorschlag ausgegeben.
- Die statische Analyse zusammengesetzter Wörter gemäß der vorliegenden Erfindung stellt eine signifikante Verbesserung der Fähigkeiten von Worttrennern und Rechtschreibprüfprogrammen zur Verfügung, wenn zusammengesetzte Wörter auftreten. Durch Verwendung eines Vollformlexikons, das kommentiert wird, um Variationen von Wörtern einzuschließen, wie sie in zusammengesetzten Wörtern auftreten, kann das Analysemodul für zusammengesetzte Wörter zusammengesetzte Wörter identifizieren, die nicht als Einträge im Lexikon enthalten sind.
- Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele näher erläutert, aus welchen sich weitere Vorteile und Merkmale ergeben. Es zeigt:
-
1 ein Blockdiagramm einer beispielhaften Umgebung, in welcher die vorliegende Erfindung eingesetzt werden kann; -
2 ein Blockdiagramm, das eine Ausführungsform der Bestandteile der vorliegenden Erfindung darstellt, die zum Identifizieren der Wortbestandteile eines zusammengesetzten Wortes verwendet werden; -
3A 3B eine Ausführungsform schematischer Darstellungen von Gittern, die von dem Dekoder erzeugt werden, -
4 ein Flussdiagramm zur Erläuterung einer Ausführungsform jener Schritte, die ausgeführt werden, wenn das statistische Sprachenmodell eingesetzt wird; -
5 ein Flussdiagramm zur Erläuterung einer Ausführungsform jenes Prozesses, wenn ein zusammengesetztes Wort auftritt; -
6 ein Flussdiagramm zur Erläuterung einer Ausführungsform des Einsatzes einer statischen Analyse eines zusammengesetzten Wortes; -
7 ein Flussdiagramm zur Erläuterung einer Ausführungsform jener Schritte, die zur Worttrennung durchgeführt werden; und -
8 ein Flussdiagramm zur Erläuterung einer Ausführungsform jener Schritte, die ausgeführt werden, wenn ein zusammengesetztes Wort falsch geschrieben ist. -
1 erläutert ein Beispiel für eine geeignete Rechnersystemumgebung100 , bei welcher die Erfindung implementiert sein kann. Die Rechnersystemumgebung100 stellt nur ein Beispiel für eine geeignete Rechnerumgebung dar, und soll nicht als Vorschlag irgendeiner Begrenzung in Bezug auf den Umfang der Verwendung oder Funktionalität der Erfindung darstellen. Auch sollte die Rechnerumgebung100 nicht so interpretiert werden, dass sie irgendeine Abhängigkeit oder Anforderung in Bezug auf irgendeines der Bestandteile, oder Kombinationen von Bestandteilen, aufweist, die bei der beispielhaften Betriebsumgebung100 dargestellt sind. - Die Erfindung ist funktionsfähig mit zahlreichen anderen Allzweck- oder Spezialberechnungssystem-Umgebungen oder -Konfigurationen. Beispiel für wohlbekannte Rechnersysteme, Umgebungen, und/oder Konfigurationen, die zur Verwendung mit der Erfindung geeignet sein können, umfassen, sind jedoch nicht hierauf beschränkt, Personalcomputer, Servercomputer, von Hand gehaltene oder Laptop-Vorrichtungen, Multiprozessorsysteme, Systeme auf Mikroprozessorgrundlage, Set-Top-Boxen, programmierbare Verbraucherelektronik, Netzwerk-PCs, Minicomputer, Mainframe-Computer, verteilte Rechnerumgebungen, die irgendwelche der voranstehend geschilderten Systeme oder Vorrichtungen enthalten, und dergleichen.
- Die Erfindung kann in dem allgemeinen Zusammenhang von durch Computer ausführbaren Befehlen beschrieben werden, beispielsweise Programmmodulen, die von einem Computer ausgeführt werden. Üblicherweise enthalten Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen, usw., die bestimmte Aufgaben durchführen, oder spezielle abstrakte Datentypen implementieren. Die Erfindung kann auch in verteilten Rechnerumgebungen durchgeführt werden, in welchen Aufgaben von entfernten Verarbeitungsvorrichtungen durchgeführt werden, die über ein Kommunikationsnetzwerk verbunden sind. In einer verteilten Rechnerumgebung können Programmmodule sowohl auf lokalen als auch entfernten Computerspeichermedien liegen, einschließlich Speichergeräten.
- In
1 weist ein Beispiel für ein System zum Implementieren der Erfindung eine Allzweckrechnervorrichtung in Form eines Computers110 auf. Komponenten des Computers110 können enthalten, sind jedoch nicht hierauf beschränkt, eine Verarbeitungseinheit120 , einen Systemspeicher130 , und einen Systembus121 , der verschiedene Systemkomponenten einschließlich des Systemspeichers mit der Verarbeitungseinheit120 verbindet. Der Systembus121 kann einer von verschiedenen Arten von Busstrukturen sein, einschließlich eines Speicherbusses oder einer Speichersteuerung, eines Peripheriebusses und eines lokalen Busses, die irgendeine verschiedener Busarchitekturen einsetzen. Als Beispiel, jedoch nicht als Einschränkung, umfassen derartige Architekturen einen Bus der Industry Standard Architecture (ISA), einen Bus der Micro Channel Architecture (MCA), einen Bus des Typs Enhanced ISA (EISA), einen lokalen Bus der Video Electronics Standards Association (VESA), und einen Bus des Typs Peripheral Component Interconnect (PCI), auch als bekannt als Mezzanine-Bus. - Der Computer
110 enthält typischerweise verschiedene Computer-lesbare Medien. Computer-lesbare Medien können alle verfügbaren Medien sein, auf die vom Computer110 zugegriffen werden kann, und umfassen sowohl flüchtige als auch nichtflüchtige Medien, entfernbare und nicht-entfernbare Medien. Als Beispiel, jedoch nicht als Einschränkung, können Computer-lesbare Medien Computerspeichermedien und Kommunikationsmedien umfassen. Computerspeichermedien umfassen sowohl flüchtige als auch nicht-flüchtige, entfernbare und nicht-entfernbare Medien, die durch jedes Verfahren oder jede Technik zum Speichern von Information implementiert werden, beispielsweise Computer-lesbare Befehle, Datenstrukturen, Programmmodule, oder andere Daten. Computerspeichermedien umfassen, sind jedoch nicht hierauf beschränkt, RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechniken, CD-ROM, digitale vielseitige Disketten (DVD), oder andere optische Diskettenspeicher, Magnetkassetten, Magnetband, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen, oder irgendein anderes Medium, das dazu verwendet werden kann, die gewünschte Information zu speichern, und auf welches durch den Computer110 zugegriffen werden kann. Kommunikationsmedien verwenden normalerweise Computer-lesbare Befehle, Datenstrukturen, Programmmodule, oder andere Daten in einem modulierten Datensignal, beispielsweise einem Trägersignal oder einem anderen Transportmechanismus, und enthalten irgendein Informationsliefermedium. Mit dem Begriff "moduliertes Datensignal" ist ein Signal gemeint, bei dem eine oder mehrere seiner Eigenschaften so eingestellt oder geändert werden, dass das Signal mit Information kodiert wird. Beispielsweise, wobei dies nicht einschränkend zu verstehen ist, umfassen Kommunikationsmedien verdrahtete Medien wie beispielsweise ein verdrahtetes Netzwerk oder eine direkt verdrahtete Verbindung, sowie drahtlose Medien, beispielsweise akustische, Funkfrequenz-, Infrarot- und andere drahtlose Medien. Auch Kombinationen der voranstehend angegebenen Bestandteile sollen vom Umfang Computer-lesbarer Medien umfasst sein. - Der Systemspeicher
130 enthält Computerspeichermedien in Form eines flüchtigen und/oder nicht-flüchtigen Speichers, beispielsweise eines Nur-Lese-Speichers (ROM)131 und eines Speichers mit wahlfreiem Zugriff (RAM)132 . Ein Basiseingabe/Ausgabesystem133 (BIOS), das die Basisroutinen enthält, welche die Übertragung von Information zwischen den Elementen in dem Computer110 unterstützen, beispielsweise beim Hochfahren, ist typischerweise in dem ROM131 gespeichert. Der RAM132 enthält typischerweise Daten und/oder Programmmodule, auf die unmmittelbar durch die Verarbeitungseinheit120 zugegriffen werden kann, und/oder mit denen die Verarbeitungseinheit momentan arbeitet. Als Beispiel, jedoch nicht als Einschränkung, zeigt1 ein Betriebssystem134 , Anwendungsprogramme135 , andere Programmmodule136 , und Programmdaten137 . - Der Computer
110 kann auch andere entfernbare oder nicht-entfernbare, flüchtige bzw. nicht-flüchtige Computerspeichermedien enthalten. Nur als Beispiel zeigt1 ein Festplattenlaufwerk141 , das von nicht-entfernbaren, nicht-flüchtigen magnetischen Medien liest und in diese einschreibt, ein Magnetplattenlaufwerk151 , das von einer entfernbaren, nicht-flüchtigen magnetischen Diskette152 liest oder in diese einschreibt, und ein Laufwerk155 für optische Disketten, das von einer entfernbaren, nicht-flüchtigen optischen Diskette156 liest oder in diese einschreibt, beispielsweise eine CD-ROM oder ein anderes optisches Medium. Andere entfernbare bzw. nicht-entfernbare, flüchtige bzw. nicht-flüchtige Computerspeichermedien, die in der beispielhaften Betriebsumgebung eingesetzt werden können, umfassen, sind jedoch nicht hierauf beschränkt, Magnetbandkassetten, Flash-Speicherkarten, digitale vielseitige Disketten, digitales Videoband, Festkörper-RAM, Festkörper-ROM, und dergleichen. Das Festplattenlaufwerk141 ist typischerweise mit dem Systembus121 über eine nicht-entfernbare Speicherschnittstelle wie beispielsweise eine Schnittstelle140 verbunden, und das Magnetplattenlaufwerk151 und das optische Diskettenlaufwerk155 sind typischerweise an den Systembus121 durch eine entfernbare Speicherschnittstelle angeschlossen, zum Beispiel die Schnittstelle150 . - Die Laufwerke und ihre zugehörigen Computerspeichermedien, die voranstehend erläutert wurden und in
1 dargestellt sind, stellen Speicher für Computer-lesbare Befehle, Datenstrukturen, Programmmodule und andere Daten für den Computer110 zur Verfügung. In1 ist beispielsweise das Festplattenlaufwerk141 so dargestellt, dass es ein Betriebssystem144 speichert, Anwendungsprogramme145 , andere Programmmodule146 , und Programmdaten147 . Es wird darauf hingewiesen, dass diese Bestandteile entweder gleich dem Betriebssystem134 , den Anwendungsprogrammen135 , anderen Programmmodulen146 , und den Programmdaten137 sein können, oder hiervon verschieden sein können. Das Betriebssystem144 , die Anwendungsprogramme145 , die anderen Programmmodule146 , und die Programmdaten147 sind hier mit unterschiedlichen Bezugszeichen bezeichnet, um zu erläutern, dass sie mindestens unterschiedliche Kopien sind. - Ein Benutzer kann Befehle und Information in den Computer
110 durch Eingabegeräte eingeben, beispielsweise eine Tastatur162 , ein Mikrofon163 , und ein Zeigergerät161 , beispielsweise eine Maus, einen Trackball, oder ein Berührungsfeld. Andere Eingabegeräte (nicht gezeigt) können einen Joystick enthalten, ein Spielfeld, eine Satellitenschüssel, einen Scanner, und dergleichen. Diese und andere Eingabegeräte sind häufig mit der Verarbeitungseinheit120 über eine Benutzereingabeschnittstelle160 verbunden, die an den Systembus angeschlossen ist, können jedoch auch durch andere Schnittstellen- und Busanordnungen angeschlossen sein, beispielsweise einen parallelen Port, einen Spielport, oder einen universellen seriellen Bus (USB). Ein Monitor190 oder irgendeine andere Art eines Anzeigegeräts ist ebenfalls an den Systembus121 über eine Schnittstelle angeschlossen, beispielsweise eine Videoschnittstelle190 . Zusätzlich zu dem Monitor können Computer auch andere Peripherieausgabegeräte enthalten, beispielsweise Lautsprecher197 und einen Drucker196 , die über eine Ausgangsperipherieschnittstelle195 angeschlossen sein können. - Der Computer
110 kann in einer Netzwerkumgebung unter Verwendung logischer Verbindungen mit einem oder mehreren entfernten Computern arbeiten, beispielsweise einem entfernten Computer180 . Der entfernte Computer180 kann ein Personalcomputer sein, ein von Hand gehaltenes Gerät, ein Server, ein Router, ein Netzwerk-PC, ein Peer-Gerät oder ein anderer gemeinsamer Netzwerkknoten, und enthält typischerweise viele oder sämtliche der Elemente, die voranstehend in Bezug auf den Computer110 beschrieben wurden. Die in1 dargestellten, logischen Verbindungen umfassen ein Lokalbereichsnetzwerk (LAN)171 und ein Fernbereichsnetzwerk (WAN)173 , können jedoch auch andere Netzwerke enthalten. Derartige Netzwerkumgebungen sind üblich in Büros, firmeninternen Computernetzwerken, Intranets, und im Internet. - Beim Einsatz in einer LAN-Netzwerkumgebung ist der Computer
110 an das LAN171 über eine Netzwerkschnittstelle oder einen Adapter170 angeschlossen. Bei Verwendung in einer WAN-Netzwerkumgebung enthält der Computer110 typischerweise ein Modem172 oder eine andere Vorrichtung zum Einrichten von Verbindungen über das WAN173 , beispielsweise das Internet. Das Modem172 , das intern oder extern sein kann, kann mit dem Systembus121 über die Benutzereingabeschnittstelle160 verbunden sein, oder einen anderen geeignete Mechanismus. In einer Netzwerkumgebung können Programmmodule, die in Bezug auf den Computer110 dargestellt sind, oder Abschnitte von diesen, in der entfernten Speichervorrichtung gespeichert sein. Als Beispiel, jedoch nicht als Einschränkung, zeigt1 entfernte Anwendungsprogramme185 so, dass sie auf dem entfernten Computer180 liegen. Es wird darauf hingewiesen, dass die dargestellten Netzwerkverbindungen nur als Beispiel dienen, und dass andere Einrichtungen zum Einstellen einer Kommunikationsverbindung zwischen den Computern verwendet werden können. -
2 ist ein Blockschaltbild, das die Komponenten der vorliegenden Erfindung zeigt, die zum Identifizieren der Wortbestandteile eines zusammengesetzten Wortes verwendet werden. Das Analysemodul200 für zusammengesetzte Worte enthält ein Textanalysemodul210 , ein Lexikon220 , und ein Analysemodul230 für zusammengesetzte Worte. Das Textanalysemodul210 empfängt eine Texteingabe201 . Diese Texteingabe kann jede Art von Texteingabe sein, die nach zusammengesetzten Wörtern untersucht werden soll, beispielsweise ein Dokument oder eine Suchanfrage. Das Textanalysemodul210 ist so ausgebildet, dass es jedes Wort in der Texteingabe201 identifiziert. Die identifizierten Wörter werden mit Wörtern verglichen, die im Lexikon220 gespeichert sind. Wird ein Wort in dem Lexikon220 nicht aufgefunden, wird das Wort an das Analysemodul230 für zusammengesetzte Wörter übergeben. - Das Analysemodul
230 für zusammengesetzte Wörter bestimmt die Wortbestandteile des zusammengesetzten Wortes, und schickt bei einer Ausführungsform die Wortbestandteile an das Textanalysemodul210 zurück. Bei einer anderen Ausführungsform schickt das Analysemodul230 für zusammengesetzte Wörter Buchstabiervorschläge für das zusammengesetzte Wort an das Textanalysemodul210 zurück, falls das zusammengesetzte Wort falsch geschrieben war. Anderenfalls akzeptiert das Modul210 das nicht im Lexikon enthaltene, zusammengesetzte Wort als gültiges Wort. Diese Ergebnisse werden dann als Ausgabe240 ausgegeben. Wiederum abhängig von dem Einsatz des Analysemoduls200 für zusammengesetzte Wörter kann sich die Ausgabe240 ändern. So kann beispielsweise eine Ausgabe240 zu einem Wortprozessor, zu einer Suchmaschine, und dergleichen erfolgen. Eine detailliertere Beschreibung der Funktion des Analysemoduls230 für zusammengesetzte Wörter erfolgt nachstehend. - Die Anforderung an die Analyse zusammengesetzter Wörter besteht in der Identifizierung von Segmenten eines zusammengesetzten Wortes oder Wortbestandteilen, bei denen morphologische Änderungen erfolgt sein können, oder auch nicht, damit sie zu einem zulässigen Teil des zusammengesetzten Wortes werden. Typischerweise wird der Vorgang der Zusammensetzung als die Kombination von Wörtern beschrieben, häufig unter Verwendung von Verbindungselementen und/oder Verwendung von "Umlauten". Der Begriff "Umlaute" wird hier dazu verwendet, um derartige Änderungen zu beschreiben wie "a" in "ä", "o" in "ö", "u" in "ü", oder "o" in "⌀". Wie bereits voranstehend erläutert, werden manchmal Wörter verkürzt, wenn sie in einem zusammengesetzten Wort eingesetzt werden, und auch dies wird berücksichtigt.
- Das dynamische (Laufzeit) Analysemodul
230 für zusammengesetzte Wörter gemäß der vorliegenden Erfindung berücksichtigt alle möglichen Abänderungen, um ein Wort wieder herzustellen, das einer lexikalischen Form zugeordnet werden kann, wobei häufig ein umfangreiches Gitter von Möglichkeiten eingeführt wird, das eine zusätzliche Rangordnung erfordert. Mit Ausnahme einiger sehr regelmäßiger Ausnahmen stimmt jedes gültige Segment eines zusammengesetzten Wortes mit einer oder mehreren gültigen Beugungsformen eines Wortes überein. Systeme nach dem Stand der Technik, welche Listen vollständig gebeugter Worte verwenden, profitieren bereits von zahlreichen erfolgreichen Übereinstimmungen infolge dieser Tatsache. Sie ordnen jedoch häufig Segmente zusammengesetzter Wörter lexikalischen Formen zu, die nicht als Segment auftreten können. Wenn beispielsweise die Texteingabe "Blumeladen" ("flower shop" im Deutschen) für das zusammengesetzte Wort aus den Wörtern Blume und Laden eingegeben wird, würden Systeme nach dem Stand der Technik nicht erkennen, dass das Wort falsch ist, und dass das richtige, zusammengesetzte Wort Blumenladen lautet. - "Blume" ist der Singular des Substantivs, oder dessen eigene Basisform. Allerdings tritt dieses nie in einem zusammengesetzten Wort auf diese Art und Weise auf. Die korrekte Verwendung macht immer das Verbindungselement "n" erforderlich. Oder, mit den Begriffen der vorliegenden Erfindung, tritt es immer als seine Pluralform in einem zusammengesetzten Wort auf (Blumen ist der Plural von Blume). Wenn jemand das zusammengesetzte Wort so wie voranstehend angegeben falsch schreibt, bleibt der Tippfehler normalerweise von einem Rechtschreibprüfungsprogramm unbemerkt, da das zusammengesetzte Wort "Blumenladen" einfach auf die im Lexikon enthaltenen Elemente "Blume" und "Laden" aufgelöst werden kann, und daher als zusammengesetztes Wort angesehen werden kann.
- Ein weiteres Problem bei derartigen Systemen nach dem Stand der Technik stellt die Tatsache dar, dass sie nicht mit zusammengesetzten Wörtern fertig werden können, deren Segmente keine zulässigen Beugungen eines Wortes sind, beispielsweise Änderungsschneiderei (modification tailoring) (Änderungs ist keine zulässige Form von Änderung). Systeme, welche dynamisch das Einführen von Verbindungselementen zulassen, können korrekt Änderungsschneiderei analysieren, jedoch besteht keine Garantie dafür, dass sie das korrekte Verbindungselement in jedem Zusammenhang zu lassen.
- Die Vorhersage des korrekten Verbindungselements für Lexikoneinträge ist grundsätzlich schwierig, und alle Versuche, Regeln hierfür zu schreiben, auf Grundlage des phonologischen Zusammenhangs, des Geschlechts, des Wortursprungs usw., werden normalerweise dadurch nicht sinnvoll, dass eine große Anzahl an Ausnahmen vorhanden ist. Dies bedeutet, dass Systeme, die sich auf derartige "Regeln" verlassen, unvermeidlich entweder nicht exakt oder wieder aufrufbar sind. Sie können beispielsweise nicht korrekte Verbindungselemente zulassen (beispielsweise "Zeitungepapier → Zeitung + e + papier) (Zeitung), oder nicht korrekte Verbindungselemente zulassen (beispielsweise Länderkammer (korrekt) → Land + s + kammer) (nicht korrekt), jedoch → Land + s + mann (korrekt)).
- Ein Vorteil der Untersuchung zusammengesetzter Wörter gemäß der vorliegenden Erfindung besteht darin, dass sie sowohl Bestandteile zusammengesetzter Wörter erkennt, welche gebeugte Formen eines Wortes darstellen, als auch solche, die keine gebeugten Formen darstellen (beispielsweise Änderungs), jedoch dies auf Grundlage der Tatsache durchführt, was tatsächlich während der Durchsuchung erfolgte, anstatt auf Grundlage nicht exakter Verbindungsregeln.
- Das Lexikon
220 , das für die statische Untersuchung zusammengesetzter Wörter eingesetzt wird, weist bei einer Ausführungsform der vorliegenden Erfindung ein vollständiges Lexikon auf. Das vollständige Lexikon enthält eine vollständig gebeugte Wortliste, Kommentierungen gültiger Wortverbundsegmente, die nicht am Ende stehen, zusätzliche Segmente, die nicht mit üblichen Beugungsformen übereinstimmen (diese Segmente werden als "eingeschränkte Segmente" (seg1) markiert, die nachstehend genauer erläutert werden), sowie die Markierung von Wörtern, die nicht als Bestandteile zusammengesetzter Wörter angesehen werden sollen (anti-seg). - Anti-segs können nicht als Segmente zusammengesetzter Wörter angesehen werden, aus verschiedenen Gründen. Dies kann daran liegen, dass sie häufig als Teil eines nicht zusammengesetzten Wortes auftreten (beispielsweise "Ion" (chemisches Element) im Gegensatz zu Nation). Falls jemand das Wort "Nation" falsch als "Nahion" schreibt, ist es nicht wünschenswert, dies auf "nah" (=near) + "ion" aufzuteilen, oder da sie im allgemeinen nicht zusammengesetzt werden können. So enthalten beispielsweise derartige Segmente die meisten Beugungen von "sein" (to be), beispielsweise "ist" (is), "sind" (are), "war" (was), usw.
- Das vollständige Lexikon kann auch allgemeine Heuristiken für Regeln in Bezug auf die Großschreibung aufweisen. Derartige Heuristiken können Vorschriften implementieren, nämlich dass beispielsweise jedes mittlere oder endgültige Element immer klein geschrieben werden muss, Segmente am Wortanfang der Satzposition entsprechen müssen, und dem Teil der Sprache der endgültigen Segmente (wodurch der Anteil der Sprache des gesamten, zusammengesetzten Wortes festgelegt wird, und dann, wenn es sich um ein Substantiv handelt, das gesamte, zusammengesetzte Wort mit einem Großbuchstaben anfangen muss, selbst wenn das Segment, das am Anfang des Wortes steht, ein Verb war).
- Ein Merkmal des Lexikons
220 besteht in der Kommentierung gültiger Segmente des zusammengesetzten Wortes, die nicht am Ende stehen. Diese Kommentierungen werden bei einer Ausführungsform unter Verwendung eines Vorgangs der vollständig dynamischen Untersuchung zusammengesetzter Wörter (DCA) des Ursprungs erzeugt, die während der Laufzeit eingesetzt wird, und von der Grammatiküberprüfung implementiert wird, beispielsweise von jener Grammatiküberprüfung, die von der Microsoft Corporation aus Redmond, Washington entwickelt wurde. Allerdings können auch andere Vorgänge zur Untersuchung zusammengesetzter Wörter eingesetzt werden. Die DCA erstreckt sich beispielsweise über größere Einheiten, und schickt dynamisch berechnete Segmente zusammengesetzter Wörter zurück, unter Verwendung komplizierter und zeitaufwendiger Mechanismen zur morphologischen Analyse und zur Rangordnung. Die DCA identifiziert Segmente zusammengesetzter Wörter unter Verwendung eines umgekehrten Anwendung von Segmentabänderungen in jener Reihenfolge, in welcher sie auf ihre Basisform zurückgeführt werden, da ein (stark kommentiertes) Basisformlexikon das darstellt, womit typische Systeme üblicherweise arbeiten. - Ein Abbildungsalgorithmus versucht, die Ergebnisse zurück auf die ursprüngliche Zeichenkette abzubilden, wodurch die Genauigkeit der zurückgeschickten Segmente dadurch erhöht wird, dass jede ausgefallene Abbildung ausgeschaltet wird. Die Ausgaberoutine für die erfolgreich abgebildeten Segmente erreicht dann Information an jedem Oberflächensegment (also dem Segment, wie dieses in dem Verbundwort auftritt), unabhängig davon, ob es in dem Anfang oder in der Mitte des Wortes aufgefunden wurde (seg1), oder am Ende des Wortes (welches keine spezielle Markierung benötigt, da die meisten Wörter bestimmter Anteile von Sprache auch als letztes Segment auftreten können).
- Die Regeln für die Zusammensetzung für die Segmente, die sich nicht am Ende befinden, sind grundsätzlich gleich. Das Segment am Anfang eines Wortes genügt jedoch bestimmten Großschreibungsregeln (wie voranstehend erläutert). Da dies vollständig vom Kontext abhängt, ist eine getrennte Kommentierung von Segmenten am Anfang eines Wortes und in der Mitte eines Wortes in dem Lexikon nicht nur redundant, sondern ergibt auch negative Auswirkungen in Bezug auf die Abdeckung des Lexikons.
- Nach der Abbildung werden sämtliche Kommentierungen in die vollständig gebeugte Wortliste (oder das Vollformlexikon
220 ) übertragen. Wenn ein Lexikoneintrag nie als Segment eines zusammengesetzten Wortes, das nicht am Ende auftritt, während der Untersuchung des Textes aufgetreten ist, wird er nicht als gültiges Segment seg1 markiert. - Jeder Eintrag mit einem Anteil an Sprachsubstantiv, Verb, Adjektiv, oder Adverb wird als potentiell gültiges, endgültiges Segment angesehen, es sei denn, dass er speziell als ungültiges Segment eines zusammengesetzten Wortes markiert wurde. Beispielsweise sieht die vollständige Lexikondarstellung von "Blume" (in Bezug auf die Zusammensetzung) folgendermaßen aus:
Blume
Blumen – seg1 - Die Anzeige "seg1" ist ein Bit, das dem Eintrag zugeführt wird, der anzeigt, dass dieser Eintrag ein gültiger Eintrag in einem zusammengesetzten Wort ist. Hierdurch wird auch angegeben, dass Großschreibung für mittlere und letzte Segmente ignoriert werden kann, und für Segmente am Anfang entsprechend ihrem Zusammenhang festgelegt werden kann.
- Die Darstellung der Beugungen einer Eingabe wie beispielsweise "Land" taucht beispielsweise folgendermaßen auf:
Land – seg1 (Landwirtschaft) (farming, agriculture)
Landes – seg1 (Landeskammer) (locale gesetzgebende Körperschaft)
Lands – seg1 (Landsmann) (Bürger der gleichen Nationalität)
Länder – seg1 (Länderspiel) (Spiel zwischen zwei internationalen Mannschaften)
Ländern - Alle Einträge, die durch "seg1" markiert werden, werden beispielhaft als ein Segment akzeptiert, das nicht am Ende steht, was bedeutet, dass alle anderen Einträge, obwohl sie im Lexikon vorhanden sind, entweder ausgeschlossen oder strafbewert akzeptiert werden. Bei der strafbewerten Akzeptanz kann ein Rechtschreibvorschlag vorgenommen werden, wie dies nachstehend erläutert wird.
- Diese Vorgehensweise ermöglicht es, dass jede Kombination von "seg1" und eines letzten Segments zulässig ist, beispielsweise Landkammer, Länderwirtschaft, usw. Die korrekten Versionen dieser zusammengesetzten Wörter (Landeskammer, Landwirtschaft) sind jedoch sehr üblich, und sollten daher im Lexikon als vollständige, zusammengesetzte Wörter in dem Lexikon
220 aufgenommen werden. Dies führt zu einer vorgezogenen Rangordnung dieser zusammengesetzten Wörter während der Untersuchung. - Einige Segmente eines zusammengesetzten Wortes treten mit einem getrennten Verbindungsbuchstaben "s" zusammen auf, der keinen Teil irgendeiner gültigen Beugung des Wortes darstellt. Dies stimmt allgemein für jedes Wort, das mit "ung" endet (eine Abwandlung, die dazu dient, Verben in Substantive umzuwandeln, entsprechend dem Englischen "ing"). Es gibt daher keine gültige Beugung dafür, dass ein "s" am Ende eines Wortes mit "ung" vorhanden ist. Der Bestandteil "s" ist jedoch unbedingt erforderlich bei einem derartigen Wort, das in einem zusammengesetzten Wort verwendet werden soll, beispielsweise
Bedeutungstragend → Bedeutung + s + tragend, (meaning + carrying)
Verheißungsvoll → Verheißung + s + voll, (promise + full) - Zulässige Beugungen des Wortes "Bedeutung" sind:
Bedeutung
Bedeutungen - Es wird darauf hingewiesen, dass sämtliche Wörter, die mit "ung" enden, auf dieselbe Art und Weise gebeugt werden.
- Um es zu ermöglichen, diese Formen auf das Lexikon
220 auf dieselbe Art und Weise abzubilden, wie andere Segmente mit ihren angegebenen Beugungen dargestellt sind, werden zusätzlichen Formen dem Lexikon220 hinzugefügt, die nur im Zusammenhang eines zusammengesetzten Wortes gültig sind, beispielsweise "Bedeutungs", "Verheißungs", usw. Die Darstellung in dem Lexikon220 führt den Begriff Bedeutung ist daher folgendermaßen:
Bedeutung
Bedeutungen
Bedeutungs- seg1 - Die seg1-Information ermöglicht es dem System, den entsprechenden Eintrag als gültiges Segment eines zusammengesetzten Wortes zu erkennen, wie bei den Segmenten, bei denen bereits eine Übereinstimmung mit gültigen Beugungsformen gefunden wurde, die sich bereits im Lexikon befinden. Allerdings ist es erforderlich sicherzustellen, dass diese nicht korrekten Einträge immer noch von der Rechtschreibprüfung als falsche, alleinstehende Formen erkannt werden können. Um dies zu erzielen, verwendet die vorliegende Erfindung mit der Rechtschreibprüfung zusammenhängende Information, die bereits kodiert wurde. Wie viele andere Sprachen, weist das Deutsche verschiedene Dialekte (beispielsweise Schweizerdeutsch und Österreichisch) auf, und können Wörter in einem dieser Dialekte, oder in einigen oder allen der Dialekte gültig sein. Ein Eintrag wie "Bedeutungs" stellt kein gültiges Wort in Alleinstellung in jedem der Dialekte dar, und weist daher überhaupt keine Dialektmarkierung auf. Das Fehlen einer Markierung oder eines Bits für einen Dialekt stellt die Information dar, welche das System dazu verwendet, einen Eintrag als nicht korrekt zu identifizieren, und ihn daher als ein falsch geschriebenes Wort zum markieren, wenn es in einer Benutzereingabe auftritt.
- Verben können ebenfalls in zusammengesetzten Wörtern verwendet werden. Wenn Verbsegmente, die nicht am Ende stehen, kürzer in dem zusammengesetzten Wort sind als in ihrer Infinitivform, ist es nicht erforderlich, irgendeine spezielle Behandlung vorzunehmen, da die kürzeren Varianten ebenfalls vorhandenen, gebeugten Verbformen entsprechen. Normalerweise ist die zugehörige Beugungsform der "no-schwa"-Singular der ersten Person (oder der Imperativ, was für regelmäßige Verben das Gleiche ist).
- So weist beispielsweise das Verb "schwimmen" (to swim) einen no-schwa-Singular der ersten Person und einen Imperativ von "schwimm" auf, wobei der Imperativ ebenfalls in dem Lexikon
220 so angegeben ist, dass es sich bei ihm um ein zulässiges Segment nicht am Ende handelt, und erhält daher ein Bit "seg1". - Die letzte Kategorie von Einträgen, die berücksichtigt werden sollten, stellen zusammengesetzte Wörter dar, bei denen ein Buchstabe weggelassen ist, um eine Verdreifachung zu vermeiden (beispielsweise Schiff + Fahrt → Schiffahrt). Drei Wiederholungen desselben Buchstabens waren nach den alten Rechtschreibregeln verboten. Vor einiger Zeit, etwa vor 8 Jahren, wurde eine Rechtschreibreform umgesetzt, die nunmehr drei aufeinanderfolgende, identische Buchstaben zulässt. Da die Rechtschreibreform noch sehr jung ist, und insbesondere deswegen, da nicht sämtliche Personen die Wahl treffen, die neuen Rechtschreibregeln anzuwenden, ist es erforderlich, für unterschiedliche Rechtschreibvariationen zu sorgen, die auftreten können. So wird beispielsweise nach den alten Rechtschreibregeln die Kombination aus Nordsee + Expedition zu Nordseexpedition (alte Rechtschreibung), jedoch unter der neuen Rechtschreibung zu Nordseeexpedition (neue Rechtschreibung).
- Um das zusammengesetzte Wort "Nordseexpedition" in "Nordsee" und "Expedition" zu trennen, muss ein zusätzliches "e" dem Wort hinzugefügt werden. Bei einer Ausführungsform wird diese Addition nicht in dem Lexikon
220 besorgt, sondern in einem lexikalischen Nachschlagewerkzeug232 in dem Analysemodul230 , welches jedes Zeichen einer Eingabekette mit jeder der lexikalischen Einträge (von links nach rechts) vergleicht. Im Fall eines Abbildungsfehlers (also einem nicht im Lexikon enthaltenen, zusammengesetzten Wort) schaltet das System auf "Betriebsart für zusammengesetzte Wörter" um, und kann die Abbildungsvorrichtung zwar "Nordsee" auffinden, kann jedoch nicht "xpedition" aus irgendein vorhandenes Wort abbilden. Da sich das System in der Betriebsart für zusammengesetzte Wörter befindet, kann es die allgemeine Information benutzen, die bestätigt hat, dass Segmente mit doppelten Buchstaben am Ende einen ihrer Buchstaben mit dem nächsten Segment gemeinsam nutzen können, und dies zur Laufzeit berücksichtigen. Falls es sich in der Rechtschreibbetriebsart befindet, kann dies durch eine "rote Wellenlinie" oder eine andere Anzeige angezeigt werden, oder auch nicht, abhängig davon, ob das Rechtschreibprüfungssystem auf den Zeitraum vor der Rechtschreibreform oder nach der Rechtschreibreform eingestellt wurde. Im Kontext der Worttrennung wird hierdurch einfach dem System ermöglicht, die korrekten Segmente zurückzuschicken. - In seltenen Fällen, bei denen die Abbildungsvorrichtung einen gültigen lexikalischen Eintrag trotz eines fehlenden Zeichens finden kann, werden zwei Segmentierungen ausgegeben, und kann ein statisches Sprachenmodell dazu verwendet werden, deren jeweilige Wahrscheinlichkeiten in eine Rangfolge zu bringen.
- So kann beispielsweise Nordseegel aufgetrennt werden in ein zusammengesetztes Wort aus Nordsee + Egel oder Nordsee + Gel. Diese beiden Hypothesen für die Wörter des zusammengesetzten Wortes werden entsprechend ihren statistischen Wahrscheinlichkeiten in eine Rangfolge gebracht.
- Dies ist nicht der einzige Kontext, bei dem unterschiedliche Variationen möglicher Segmentierungen zurückgeschickt werden können. Obwohl das Ausmaß der Segmentunbestimmtheit signifikant kleiner ist als dann, wenn der Einsatz dynamischer Verbindungslogik erfolgt, sind immer noch einige Fälle möglich. So kann beispielsweise das Wort "Nordengland" aufgeteilt werden in Nord+eng+land (northern+tight+country), oder auf Nord+England (northern+England), und kann Staubecken aufgeteilt werden in Staub + Ecken (dust + corners) oder in Stau + Becken (water reservoir near a dam).
- Obwohl die erstgenannte Art der Zweideutigkeit durch einfache Heuristiken des Typs "längstes Segment" gehandhabt werden kann, kann die Zweideutigkeit bei dem zweiten Beispiel hierdurch nicht ausgeräumt werden. Daher gelangt die Ausgabe der statischen Analyse zusammengesetzter Wörter in einen Dekoder
234 , der im wesentlichen ein Segmentgitter ist, wie in den3A und3B dargestellt, für die voranstehenden Beispiele einer doppelten Segmentierung. - Ein statistisches Sprachenmodell
236 verwendet dann Frequenzinformation, die während der voranstehend erwähnten Ergebnisse für Segmente zusammengesetzter Wörter erhalten wurde, um den unterschiedlichen Wegen durch das Gitter, die von dem Dekoder erzeugt werden, Wahrscheinlichkeiten zuzuordnen. Wenn der Kunde nur die Ausgabe eines Ergebnisses benötigt, hilft dies dabei, das wahrscheinlichste Ergebnis auszuwählen. Ist mehr als ein Ergebnis gewünscht, führt das statistische Sprachenmodell236 eine Rangordnung der erzeugten Gitter durch. - Führt das System eine Rechtschreibprüfung durch, muss die Zweideutigkeit nicht aufgelöst werden, da das System nur eine korrekte Segmentierung bestätigen muss. Dies gilt, es sei denn, dass bei dem zusammengesetzten Wort eine Zweideutigkeit auftritt, die mit der Rechtschreibreform zusammenhängt, wobei im Falle von "Nordseegel" (North Sea+leach oder North Sea+gel) bei dem statistischen Sprachenmodell dazu führt, dass erläuternd die Frequenz von "Gel" als letztes Segment gegenüber "Egel" betrachtet wird (oder dann, wenn Bigramme bewertet werden, die Frequenz von "Gel" in der Nähe von "Nordsee" oder "See" gegenüber "Egel" im selben Kontext). Ein starker Unterschied der Wahrscheinlichkeiten legt fest, ob die Rechtschreibprüfung ein zusätzliches "e" für "Nordsee" + "Egel" vorschlagen sollte.
- Segmente zusammengesetzter Wörter werden bei einer Ausführungsform durch Sammeln von Daten aus einem Text gesammelt. Während der Datensammlung wird Frequenzinformation in Bezug auf die Position jedes Wortes innerhalb eines zusammengesetzten Wortes gesammelt. Diese Information wird in unterschiedlichen Ausmaße der Granularität verwendet, abhängig von den Erfordernissen des Systems. Diese Granularität kann einfach die Berücksichtigung kontextfreier Unigramminformation umfassen, beispielsweise "wie häufig tritt ein lexikalischer Eintrag als ein Segment auf?". Dies kann auch umfassen, kontextsensitive Unigramminformation zu berücksichtigen, beispielsweise "wie häufig taucht ein lexikalischer Eintrag als Segment am Anfang bzw. in der Mitte bzw. am Ende auf?". Die Datensammlung erhält auch Information unter Berücksichtigung von Bigramminformation, beispielsweise "wie häufig taucht das Segment x neben dem Segment y auf?" sowie durch Berücksichtigung von Kategorie-Bigramminformation, beispielsweise "wie häufig tritt das Segment x neben einem bestimmten Teil von Sprache auf?".
- Die Vorgehensweise, die bei einer Ausführungsform der vorliegenden Erfindung in dem statistischen Sprachenmodell
236 eingesetzt wird, verwendet Bigramminformation. Um das Auftreten spärlicher Daten zu verhindern, werden Lemma-Frequenzen anstelle von Frequenzen von Oberflächenketten gezählt. Für Segmente, die nicht am Ende stehen, macht das Zählen von Lemma-Frequenzen anstelle von Oberflächenketten einen geringen Unterschied aus, da für jedes Lemma normalerweise nur eine Beugungsform vorhanden ist, möglicherweise zwei Formen, die in einem zusammengesetzten Wort zulässig sind. Bei Segmenten am Ende erhöht jedoch diese Vorgehensweise wesentlich den Zählwert, und hebt hervor, dass die endgültige Form des Kopfsegments (des letzten Segments) von geringer Bedeutung ist. Wenn beispielsweise das System die Wahrscheinlichkeit für das gleichzeitige Auftreten von Staub + Ecke (P(Ecke|Staub)) (dust + corner) berechnet, kann das System annehmen, dass diese Wahrscheinlichkeit auch für das Bigramm Staub + Ecken (P(Ecken|Staub)) (dust + corners) verwendet werden kann. -
4 ist ein Flussdiagramm, das die Schritte erläutert, die ausgeführt werden, wenn auf das statistische Sprachenmodell236 zugegriffen wird. Ein Wort eines zusammengesetzten Wortes wird von dem statistischen Sprachenmodell im Schritt410 empfangen. Segmente am Anfang und Ende zusammengesetzter Wörter weisen Nicht-Segmente an beiden Seiten auf, was ein Erfordernis bei einem Bigrammmodell darstellt. Daher verwendet das statistische Sprachenmodell236 Dummysegmente WB (Wortanfang) und WE (Wortende), wo dies erforderlich ist. Diese Segmente werden im Schritt420 hinzugefügt. Diese Dummysegmente sind auch aus einem anderen Grund nützlich, der darin besteht, dass intuitiv angenommen wird, dass Segmente am Ende sich ähnlich in der Hinsicht verhalten, wo und wie häufig sie auftreten. Es ist wahrscheinlich, dass einige lexikalische Einträge bessere Modifiziersegmente sein können, wogegen andere bessere Kopfwörter sind. Die Verwendung des Segments "WE" bei der Berechnung von Bigrammen ermöglicht es dem statistischen Sprachenmodell nicht nur, die Wahrscheinlichkeit für beispielsweise Staub zu berechnen, wenn Ecke vorgegeben ist (P(WE|Staub)), sondern auch die Wahrscheinlichkeit für das Wortende (WE) bei vorgegebener Ecke (P(WE|Ecke)), also wie wahrscheinlich es ist, dass Ecke als das Lemma des Kopfsegmentes eines zusammengesetzten Wortes auftritt. - Die Hinzufügung von WB und WE ist aus einem anderen Grund wesentlich, nämlich dass sie es ermöglicht, dass das statistische Sprachenmodell
236 eine indirekte Faktorisierung bei den Unigramm-Frequenzen lexikalischer Einträge durchführt, unter Verwendung der Bigramme (lexikalischer_Eintrag|WB) und (WE|lexikalischer_Eintrag). Dies ist deswegen wesentlich, da die statistische Signifikanz einer Bigramm-Wahrscheinlichkeit davon abhängt, wie häufig die beiden lexikalischen Einträge insgesamt in dem Text auftraten. Die Berechnung der Wahrscheinlichkeit für das Auftreten jedes Bestandteils des zusammengesetzten Wortes ist im Schritt430 dargestellt. Diese Wahrscheinlichkeiten werden in einer Datenbank in dem statistischen Sprachenmodell 236 im Schritt440 gespeichert. - Der Vorteil der Verwendung von Bigrammen besteht darin, dass ermöglicht wird, eine "intelligentere" Beurteilung der Wahrscheinlichkeiten zu erhalten. Bigramme ermöglichen in gewissem Ausmaß die Erschließung semantischer Information. So ist beispielsweise das zusammengesetzte Wort Nordseegel zweideutig in Bezug auf Nordsee+Gel (northsee+gel) und Nordsee+Egel (northsee+leech). In vielen Texten ist gel häufiger als leech vorhanden, und bevorzugt ein Unigrammmodell die unwahrscheinliche Interpretation von northsee+gel. Im Kontext von Nordsee ist jedoch Egel wahrscheinlicher als gel, und ein Bigrammmodell gibt dies korrekt wider.
- Der Nachteil von Bigrammmodellen besteht in einer potentiellen Spärlichkeit von Daten, da Bigramme inhärent weniger häufig als Unigramme sind. Es wird erwartet, dass bei dem System Untersuchungen zusammengesetzter Wörter ohne verfügbare Bigramminformation auftreten, da die einzelnen Segmente einfach nicht zusammen in dem Trainingstext auftraten. In diesen Fällen kann sich das System auf eine allgemeinere Kategorie "zurückziehen", und Bigramme von Sprachteilen anstatt von Lemmas verwenden.
- Die Multiplikation der Segmentbigrammwahrscheinlichkeit bedeutet, dass Analysen mit weniger Segmenten von zusammengesetzten Wörtern Analysen mit einer größeren Anzahl vorgezogen werden – eine höchst wünschenswerte Konsequenz. Die Segmentierungen werden dann in Abhängigkeit von ihren Wahrscheinlichkeiten in eine Reihenfolge gebracht. Anforderungen von Kunden können dann dazu verwendet werden, festzulegen, ob alle, oder nur die oberste, oder die obersten n ausgegeben werden, wenn das Analysemodul
230 aufgerufen wird. -
5 ist eine Flussdiagramm, das den Prozess erläutert, der sich bei einer Ausführungsform der vorliegenden Erfindung anschließt, wenn ein Wort eines zusammengesetzten Wortes auftritt. Das System empfängt das Wort des zusammengesetzten Wortes im Schritt510 . Alle aufgetretenen Interpretationen werden als Spuren in das Gitter im Dekoder234 eingegeben. Diese Spuren werden im Schritt520 erzeugt. Die Datenbank der statistischen Unigramm- und Bigramminformation wird für jedes Spur bei530 aufgesucht. Wenn beispielsweise das zusammengesetzte Wort "Staubecken" ist, berechnet das System die Wahrscheinlichkeiten einschließlich der Unigramm- und Bigrammwahrscheinlichkeiten für sämtliche Segmentierungen im Schritt540 . - Auf Grundlage der berechneten Wahrscheinlichkeiten werden die Interpretationen in eine Rangfolge gebracht, und in der Reihenfolge wachsender Wahrscheinlichkeit im Schritt
550 vorgeschlagen. Diese Rangfolge ist hauptsächlich signifikant für Worttrennkontext, bei welchem die tatsächlichen Segmente zurückgeschickt werden müssen. Für die Rechtschreibüberprüfung ist die Rangfolge im allgemeinen weniger wichtig, da es wünschenswert ist, zu beweisen, dass eine gewisse, gültige Segmentierung in einem nicht im Lexikon enthaltenen, zusammengesetzten Wort festgestellt werden konnte, aber nicht notwendigerweise, welche. Es wird allerdings sehr wichtig, wenn dies zur Entscheidung in Bezug für oder gegen eine Interpretation eines zusammengesetzten Wortes gegenüber einem Rechtschreibfehler verwendet werden soll. Es wird beispielsweise angenommen, dass das Wort "Superowl" auftritt. Das System stellt fest, ob das erwünschte Wort eine Fehlschreibung von "Superbowl" ist, oder ein Verbundwort "Super owl". Um dies zu erzielen, bestimmt das System die Wahrscheinlichkeit für das zusammengesetzte Wort "Super+owl". - Bei einer Ausführungsform enthält das Lexikon
220 75000 getrennte, zusammengesetzte Wörter. Zum Zwecke der Rechtschreibprüfung führen diese im Lexikon enthaltenen, zusammengesetzten Wörter dazu, dass verläßliche Nachschlagevorgänge verläßlicher sind, da die Worttrenneinrichtung und die Rechtschreibprüfeinrichtung im allgemeinen im Lexikon enthaltene, zusammengesetzte Wörter gegenüber jenen bevorzugen, die durch die Analyse zusammengesetzter Wörter konstruiert werden. Ein korrekt geschriebenes, im Lexikon enthaltenes, zusammengesetztes Wort kann sofort identifiziert werden, und auch ein geringfügig falsch geschriebenes, im Lexikon enthaltenes, zusammengesetztes Wort kann einfach korrigiert und als Korrektur angeboten werden, die in der Rangfolge ganz oben steht. Normalerweise werden die häufigsten deutschen zusammengesetzten Wörter im Lexikon aufgenommen, um sicherzustellen, dass sie immer die oberste Position bei einer vorgeschlagenen Rangfolge einnehmen. - Allerdings schließt die vorliegende Erfindung nicht die Möglichkeit aus, dass das Schreiben eines unterschiedlichen, zusammengesetzten Wortes (das sich nicht im Lexikon befindet) der wahre Wunsch des Autors gewesen sein könnte. Abhängig von der Sprache, die durch den Rechtschreibkorrekturalgorithmus zugeordnet wird, kann das System zusätzlich eine statische Analyse zusammengesetzter Wörter aufrufen. In einigen Fällen kann das System eine Kombination finden, die keine Rechtschreibkorrektur benötigt.
- So kann beispielsweise das korrekt geschriebene Wort "Hundetuch" (dog cloth / scarf / bandana) als eine falsch geschriebene Version von "Handtuch" (towel) angesehen werden. Allerdings würde diese Annahme zwei Korrekturen (u→a, e→⌀) bei dem Wort erfordern. Statistische Information in Bezug auf die Segmenten unterstützt die Rechtschreibprüfung bei der Gewichtung der Wahrscheinlichkeit dafür, dass die Eingabe ein zusammengesetztes Wort ist, im Vergleich zur Wahrscheinlichkeit dafür, dass sie einen falsch geschriebenen lexikalischen Eintrag darstellt.
- Bei dem voranstehenden Beispiel verliert die hohe "Editierentfernung", die sich infolge der beiden Korrekturen ergibt, höchst wahrscheinlich gegen das korrekte, zusammengesetzte Wort. Wenn jedoch dem System das Wort "Hundtuch" präsentiert wird, ist es möglich, an einer lexikalischen Übereinstimmung (mit oder ohne Analyse zusammengesetzter Wörter) anzukommen, mit zumindest einer Rechtschreibkorrektur (entweder a→u für den im Lexikon angegebenen Begriff "Handtuch" oder ⌀→e für die korrekte, zusammengesetzte Form). Abhängig von der statistischen Wahrscheinlichkeit des zusammengesetzten Wortes und anderer Programmiermerkmale kann das System entscheiden, den Begriff "Hundetuch" als eine mögliche Rechtschreibkorrektur anzubieten, aber wenn es dies tut, wird dies im Rang niedriger angeordnet als das im Lexikon befindliche Wort "Handtuch". Ein Beispiel für die Schritte, die von dem statischen Analysemodul für zusammengesetzte Wörter durchgeführt werden, wenn ein falsch geschriebenes, zusammengesetztes Wort auftritt, ist in
8 dargestellt. -
6 ist ein Flussdiagramm, das den Aufruf der statischen Analyse zusammengesetzter Wörter im Modul230 sowohl für Rechtschreibprüfungs- als auch Worttrennfälle erläutert. Ein Wort eines zusammengesetzten Wortes wird bei610 empfangen. Eine Übereinstimmung zwischen dem Wort des zusammengesetzten Wortes und dem vollständigen Lexikon wird im Schritt620 versucht. Findet sich das Wort des zusammengesetzten Wortes in dem Lexikon als lexikalisches, zusammengesetztes Wort, ist die Übereinstimmung im Schritt625 erfolgreich, und dann wird der Kontext des Aufrufens entweder der Rechtschreibprüfung oder der Worttrennung festgelegt. Dann kann festgelegt werden, ob es erforderlich ist, die lexikalischen, zusammengesetzten Wörter in ihre Segmente aufzuteilen oder nicht, im Schritt630 (JA für Worttrennung, NEIN für Rechtschreibprüfung). Im falle der Worttrennung wird die statische Analyse zusammengesetzter Wörter (SCA) oder ein anderer Prozess im Schritt640 aufgerufen, um die Segmentierungsinformation zu erhalten, die für die im Lexikon enthaltenen, zusammengesetzten Wörter zur Verfügung gestellt wurde. - Falls das zusammengesetzte Wort nicht mit dem vollständigen Lexikon im Schritt
620 und625 übereinstimmte, legt das System im Schritt642 fest, ob Segmente benötigt werden. Werden Segmente benötigt, wird die statische Analyse zusammengesetzter Wörter im Schritt644 aufgerufen. Befindet sich das System in der Rechtschreibprüfbetriebsart, wird die Rechtschreibprüfung im Schritt650 aufgerufen. Rechtschreibprüfung in diesem Schritt kann entsprechend in jedem Verfahren der Rechtschreibprüfung durchgeführt werden, oder kann gemäß den Lehren der vorliegenden Erfindung durchgeführt werden. Wenn kein Rechtschreibvorschlag im Schritt655 angeboten werden kann, wird das statische Analysemodul230 für zusammengesetzte Wörter im Schritt660 aufgerufen. - Wenn die statische Analyse zusammengesetzter Wörter zur Rechtschreibprüfung aufgerufen wird, wird das statische Analysemodul
230 für zusammengesetzte Wörter nicht zur Bereitstellung von Segmentierungsinformation verwendet, sondern zum Identifizieren aller teilweise zutreffenden Übereinstimmungen, beispielsweise jener Segmente, die in einem Wort eines zusammengesetzten Wortes verwendet werden können. Hierbei wird auch das Sprachenmodell verwendet, um die beste Segmentierung (also die wahrscheinlichste) vorzuschlagen, wenn mehr als eine korrekte Interpretation möglich ist, zur Erzeugung eines Rechtschreibvorschlages. -
7 ist ein Flussdiagramm, das jene Schritte erläutert, die ausgeführt werden, wenn das statische Analysemodul236 für zusammengesetzte Wörter zur Worttrennung im Schritt644 von6 aufgerufen wird. Zum Zwecke der vorliegenden Erläuterung wird angenommen, dass die Texteingabe "Hundeleine" im Schritt710 empfangen wird. Die Eingabe von "Hundeleine" bedeutet auf Deutsch Hundeleine. Die Eingabe wird zeichenweise gelesen, und inkremental gegen Einträge im vollständigen Lexikon im Schritt720 abgeglichen. Der erste Eintrag in dem Vollformlexikon, den das System im Schritt720 identifiziert, ist "Hund". Eine Übereinstimmung in dem Lexikon wird im Schritt723 identifiziert. Dieser Eintrag wird dem Gitter725 hinzugefügt. Bei einer alternativen Ausführungsform führt das System dann eine Überprüfung durch, um zu bestimmen, ob der passende Eintrag das Bit "seg1" aufweist, im Schritt730 , der gestrichelt in7 dargestellt ist. Da der Eintrag nicht das Bit "seg1" aufweist, kann er nicht ein Bestandteil eines zusammengesetzten Wortes sein, so dass die Spur, die mit "Hund" beginnt, nicht als gültig angesehen wird. Das System stellt fest, dass zusätzliche Zeichen bei der Eingabe vorhanden sind, im Schritt727 . - Daher wird der erste Abschnitt auf "Hunde" im Schritt
735 inkrementiert, zum nächsten Zeichen in den zusammengesetzten Worten. Das System findet dann eine erfolgreiche, lexikalische Übereinstimmung im Schritt720 und730 . Erneut wird diese Übereinstimmung mit dem Gitter im Schritt730 zugefügt, wobei zu diesem Zeitpunkt mit einem möglicherweise gültigen Weg begonnen wird, da "Hunde" das Bit "seg1" aufweist. - Parallel zur Anpassung der längeren Zeichenkette "Hund+e" ermöglicht das System auch den Beginn neuer Segmente, wie im Schritt
737 dargestellt. Dieses Verfahren der parallelen Überprüfung ermöglicht die Erzeugung mehrerer Spuren durch das Wort zu einem Zeitpunkt. Bei alternativen Ausführungsformen der vorliegenden Erfindung kann jedoch jede potentielle Spur durch das zusammengesetzte Wort individuell und nicht parallel verfolgt werden. - Das System setzt weiterhin die Abbildung der verbleibenden Zeichenkette oder des verbleibenden Abschnitts ("leine") auf Vollformlexikoneinträge fort, wobei möglicherweise mehrere gültige als auch mehrere ungültige Spuren in dem Gitter erzeugt werden, durch Repräsentieren des voranstehenden Vorgangs. Da eine Wort-interne Zeichenkette niemals einen großen Anfangsbuchstaben aufweist, oder Zeichenketten am Anfang eines Satzes immer mit einem großen Anfangsbuchstaben beginnen, wird jede Großschreibung in dem Lexikon zum Zwecke der Anpassung ignoriert.
- Das System führt dann Überprüfungen durch, um zu bestimmen, ob zusätzliche Zeichen nach der Anpassung eines Eintrags im Schritt
727 vorhanden sind. Falls der Rest zu einem Lexikoneintrag passt, wird er in das Gitter im Schritt725 eingegeben. Der Schritt740 zeigt an, dass das Ende der Eingabezeichenkette erreicht wurde. Das System führt eine Überprüfung durch, um zu bestimmen, ob der Eintrag das Bit "seg2" oder das Bit "anti-seg" aufweist, wodurch das Wort als letztes Segment gesperrt wird, im Schritt744 . Falls der Eintrag das Bit "anti-seg" enthält, wird er nicht als gültiges Segment eines zusammengesetzten Wortes berücksichtigt, sondern nur als irgendeine kommentierte Zeichenkette. Im Ergebnis kann die entsprechende Spur nicht als Teil eines gültigen, zusammengesetzten Wortes aufgelöst werden. - Während die Eingabekette bei einer Ausführungsform durchlaufen wird, werden sämtliche möglichen Segmentierungen als konkurrierende Spuren dem Gitter hinzugefügt, wenn sie gegenüber dem Lexikon abgeglichen werden. Auf Grundlage dieser erzeugten Spuren berechnet das System die Wahrscheinlichkeit dafür, dass irgendeine Segmentierung korrekt ist, auf Grundlage des anhand von
5 voranstehend erläuterten Prozesses. Es können jedoch auch andere Prozesse verwendet werden. Abhängig von der Ausbildung des Systems wird der wahrscheinlichste Kandidat oder eine Gruppe von Kandidaten im Schritt750 zurückgeschickt. Im vorliegenden Fall werden die Segmente "Hunde" und "Leine" im Schritt760 zurückgeschickt. Eine spätere Verarbeitung kann "Hunde" in "Hund", "Hunden" oder "Hundes" umwandeln, abhängig von den Bedürfnissen des Benutzers. -
8 ist ein Flussdiagramm, das die Schritte erläutert, die durchgeführt werden, wenn ein zusammengesetztes Wort falsch geschrieben ist. Zum Zwecke der vorliegenden Beschreibung wird angenommen, dass das eingegebene, zusammengesetzte Wort "Hundleine" ist, und im Schritt810 empfangen wird. Bei der voranstehenden Eingabe ist das zusammengesetzte Wort falsch geschrieben. Dieser Fehler kann interpretiert werden als ein Weglassen des verbindenden "e" oder als Falschschreibung (im Kontext eines zusammengesetzten Wortes) des ersten Segmentes "Hund" anstelle von "Hunde". Es ist wesentlich festzustellen, dass zwar "Hund" ein vollständig korrekter, alleinstehender Eintrag ist, jedoch nicht als solcher in einem Segment eines zusammengesetzten Wortes auftreten darf, obwohl er zu einem Eintrag im Schritt815 passte. - Das System identifiziert eine lexikalische Übereinstimmung im Schritt
820 . Das System betrachtet nicht die Übereinstimmung mit dem vollständigen Vollformlexikoneintrag als gültig, da bei dem Eintrag das erforderliche Bild "seg1" für das Wort eines zusammengesetzten Wortes fehlt, das in einem zusammengesetzten Wort eingesetzt wird. Allerdings findet diese Bewertung statt, nachdem sämtliche Hypothesen einem Gitter im Schritt835 hinzugefügt wurden, so dass der momentan übereinstimmende Eintrag "Hund" hinzugefügt wird, unabhängig von der fehlenden Information "seg1". Bei alternativen Ausführungsformen werden die Gitter nur dann erzeugt, wenn das Bit "seg1" in dem Wort des zusammengesetzten Wortes enthalten ist. Bei einer alternativen Ausführungsform führt das System dann eine Überprüfung durch, um zu bestimmen, ob der übereinstimmende Eintrag das Bit "seg1" im Schritt730 aufweist, was in7 gestrichelt dargestellt ist. Das System stellt im Schritt727 fest, dass zusätzliche Zeichen in der Eingabe vorhanden sind. Dann führt das System eine Inkrementierung zum nächsten Zeichen im Schritt845 durch, und stellt fest, ob das Inkrementieren zum nächsten Zeichen "1" (also Hund1) einen gültigen Eintrag in dem Lexikon erzeugt, im Schritt815 . Parallel versucht das System, den verbleibenden Zeichenkettenabschnitt der Eingabe gegen eine nächsten lexikalischen Eintrag abzugleichen, um mögliche Kandidaten für das Segment eines zusammengesetzten Wortes zu identifizieren, im Schritt847 . Bei alternativen Ausführungsformen der vorliegenden Erfindung kann jede potentielle Spur durch das Wort des zusammengesetzten Wortes individuell durchgeführt werden, und nicht parallel. - Schließlich erfolgt ein Abgleich der verbleibenden Zeichenkette "leine" gegen "Leine" in dem Lexikon, und wird der Gitterspur als gültiges Segment eines zusammengesetzten Wortes hinzugefügt. Der Schritt
850 zeigt an, dass das Ende der Eingabezeichenkette erreicht wurde. Da diese Spur (welche "Hund" und "Leine" enthält) kein gültiges, zusammengesetztes Wort bildet, da "Hund" keine Markierung "seg1" aufweist, versucht das System, zulässige Varianten von "Hund" aufzufinden, beispielsweise jene Beugungsvarianten, die das Bit "seg1" aufweisen ("Hunde", "Hunds"). - Um keine Probleme in Bezug auf die "Maskierung" zu erzeugen, die durch unwahrscheinliche Interpretationen eines zusammengesetzten Wortes bei tatsächlichen Rechtschreibfehlern hervorgerufen werden (wie in dem Beispiel von "Superowl" demonstriert), wird die ursprüngliche Eingabe zuerst in Bezug auf einen möglichen, geringfügigen Rechtschreibfehler im Schritt
858 überprüft. Ergibt sich eine lexikalische Übereinstimmung mit der gesamten Eingabe im Schritt858 , wird der Übereinstimmung eine sehr hohe Wahrscheinlichkeit für die Rangfolge der Vorschläge des Schrittes859 zugeordnet. Dies ermöglicht weitere, in Beziehung zum zusammengesetzten Wort stehende Vorschläge, die einen niedrigeren Rang aufweisen würden. - Falls keine lexikalische Übereinstimmung nach der Rechtschreibüberprüfung vorhanden ist, und wenn zumindest eine gültige Spur eines Segmentes eines zusammengesetzten Wortes in dem Gitter vorhanden ist, hält das System im Schritt
860 an. Anderenfalls wird mit den Segmenten, welche die Gültigkeit der Spur verletzen (im vorliegenden Fall "Hund" ohne "seg1") eine weitere Rechtschreibprüfung im Schritt870 durchgeführt. - Bei einer Ausführungsform verwendet das System einfache Rechtschreibübergänge. Allerdings kann das System zusätzlich ein so genanntes "Lemma-Merkmal" nutzen, das alle gebeugten Formen einer Basisform (Lemma) miteinander zur Erzielung einer höheren Genauigkeit in Beziehung setzt. Jeder Eintrag enthält kodierte Information, die so ausgewertet werden kann, dass ihr Lemma zurückgewonnen wird. Das Lemma enthält Information in Bezug auf sämtliche seiner Beugungsvarianten. Auf diese Weise können Varianten von "Hund" in dem Lexikon als alternative Variationen des ersten Wortes des zusammengesetzten Wortes identifiziert werden.
- Falls der Versuch, eine Beugungsvariante aufzufinden, fehlschlägt, und Übereinstimmungen nur mit Rechtschreibübergängen mit hoher Strafe ermittelt werden können, verzichtet das System darauf, irgendwelche Vorschläge anzubieten, und markiert das zusammengesetzte Wort nur als ein solches, das einen Rechtschreibfehler aufweist, im Schritt
827 . Falls lexikalische Übereinstimmungen nach der Rechtschreibprüfung aufgefunden wurden, führt das System einen Zugriff auf das Sprachenmodell durch, und bestimmt die Wahrscheinlichkeit für das identifizierte, mögliche Segment des zusammengesetzten Wortes im Schritt880 . Das System identifiziert "Hunde" als gemeinsames Segment des zusammengesetzten Wortes, und offeriert "Hundeleine" (als Verkürzung der erfolgreichen Vollformlexikonübereinstimmungen von "Hunde" und "Leine") als den obersten Vorschlag für die Rechtschreibprüfung im Schritt890 . Falls es sich hierbei um lexikalische Übereinstimmungen nach der Rechtschreibprüfung handelt, und erzeugte, zusammengesetzte Wörter übereinstimmen, bringt das System diese Ergebnisse in einer Rangfolge zusammen mit dem im Lexikon enthaltenen, zusammengesetzten Wort, welches den höchsten Rang aufweist. - Zwar wurde die vorliegende Erfindung unter Bezugnahme auf spezielle Ausführungsformen beschrieben, jedoch werden Fachleute auf diesem Gebiet erkennen, dass Änderungen in Bezug auf die Form und Einzelheiten vorgenommen werden können, ohne vom Wesen und Umfang der Erfindung abzuweichen.
Claims (35)
- Verfahren zum Identifizieren von zumindest zwei Wortbestandteilen in einem zusammengesetzten Wort mit folgenden Schritten: Empfangen des zusammengesetzten Wortes; Durchsuchen eines Lexikons nach dem zusammengesetzten Wort; und Identifizieren der Wortbestandteile für das zusammengesetzte Wort auf Grundlage von in dem Lexikon enthaltenen Einträgen.
- Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Identifizieren der Wortbestandteile weiterhin umfasst: Abgleichen eines ersten Abschnitts des zusammengesetzten Wortes gegen einen ersten Eintrag in dem Lexikon; und Abgleichen eines zweiten Abschnitts des zusammengesetzten Wortes gegen einen zweiten Eintrag in dem Lexikon.
- Verfahren nach Anspruch 2, gekennzeichnet durch: Abgleichen zusätzlicher Abschnitt des zusammengesetzten Wortes, bis ein letztes Zeichen des zusammengesetzten Wortes erreicht ist.
- Verfahren nach Anspruch 3, gekennzeichnet durch: Erzeugen einer ersten Hypothese der Wortbestandteile des zusammengesetzten Wortes, wobei die erste Hypothese eine Kombination aus den abgeglichenen Abschnitten des zusammengesetzten Wortes ist.
- Verfahren nach Anspruch 4, gekennzeichnet durch: Erzeugen zusätzlicher Hypothesen der Wortbestandteile des zusammengesetzten Wortes.
- Verfahren nach Anspruch 5, gekennzeichnet durch: Bringen jeder identifizierten Hypothese in eine Rangfolge, auf Grundlage einer relativen Wahrscheinlichkeit dafür, dass es sich um eine korrekte Darstellung der Wortbestandteile des zusammengesetzten Wortes handelt.
- Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die Rangfolge auf Daten beruht, die durch statistische Analyse erhalten wurden.
- Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass der Abgleich des ersten Abschnitts umfasst, Zeichen in dem zusammengesetzten Wort abzugleichen, beginnend mit einem ersten Zeichen des zusammengesetzten Wortes, und der Abgleich des zweiten Abschnittes umfasst, Zeichen in dem zusammengesetzten Wort abzugleichen, beginnend mit einem ersten Zeichen, das sich an ein letztes Zeichen des ersten Abschnitts anschließt.
- Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der Abgleich des ersten Abschnitts weiterhin umfasst: Durchsuchen des Lexikons nach einem Eintrag, der zum ersten Abschnitt passt; wenn eine Übereinstimmung aufgefunden wird; Untersuchen des zweiten Abschnitts nach Übereinstimmungen mit Einträgen in dem Lexikon; falls eine Übereinstimmung für den zweiten Abschnitt aufgefunden wird; Erzeugen einer Hypothese in einer Liste von Hypothesen, wobei die Hypothese eine Kombination des ersten Abschnitts und des zweiten Abschnitts ist.
- Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass dann, wenn zusätzliche Übereinstimmungen für den ersten und den zweiten Abschnitt in dem Lexikon gefunden werden, diese Übereinstimmungen als alternative Hypothesen der Liste der Hypothesen hinzugefügt werden.
- Verfahren nach Anspruch 9, gekennzeichnet durch: Hinzufügen der Hypothese zu der Liste der Hypothesen unabhängig davon, ob der Eintrag die Segmentanzeige enthält; und Ausschließen einer sich ergebenden Spur als ungültig bei einer endgültigen Bewertung von Hypothesen.
- Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass dann, wenn der zweite Abschnitt einen Abschnitt enthält, der ein Abschnitt ist, der nicht am Ende liegt, folgende weitere Schritte vorgesehen sind: Prüfen, ob der nicht am Ende befindliche Abschnitt die Segmentanzeige enthält; Hinzufügen der Hypothese zur Liste der Hypothesen; und Ausschließen der sich ergebenden Spur als ungültig bei der endgültigen Bewertung von Hypothesen, wenn das Bit anti-seg in dem letzten Segment des zweiten Abschnitts vorhanden ist.
- Verfahren nach Anspruch 9, gekennzeichnet durch: Zurückkehren zum ersten Abschnitt; Hinzufügen eines Zeichens, das sich an das letzte Zeichen in dem ersten Abschnitt anschließt, zum ersten Abschnitt; Wiederholen der Schritte des Suchens, Erzeugens, und Untersuchens; Hinzufügen, wenn zusätzliche Übereinstimmungen für den ersten und den zweiten Abschnitt in dem Lexikon gefunden werden, dieser Übereinstimmungen als alternative Hypothesen zur Liste der Hypothesen.
- Verfahren nach Anspruch 9, gekennzeichnet durch: Überprüfen, vor dem Hinzufügen der Hypothese zur Liste der Hypothesen, ob der übereinstimmende Eintrag in dem Lexikon für den ersten Abschnitt eine Segmentanzeige enthält; und Hinzufügen der Hypothese zur Liste der Hypothesen nur dann, wenn der Eintrag die Segmentanzeige enthält.
- Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass dann, wenn der zweite Abschnitt einen Abschnitt enthält, der ein Abschnitt nicht am Ende ist, eine Überprüfung durchgeführt wird, ob dieser nicht am Ende liegende Abschnitt die Segmentanzeige enthält, und die Hypothese der Liste der Hypothesen nur dann hinzugefügt wird, wenn die Einträge für alle Segmente, die sich nicht am Ende befinden, die Segmentanzeige enthalten.
- Verfahren nach Anspruch 9, gekennzeichnet durch: Überprüfen, vor der Hinzufügung der Hypothese zur Liste der Hypothesen, ob der passende Eintrag in dem Lexikon für den zweiten Abschnitt oder ein letzter Abschnitt des zweiten Abschnitts eine Anti-Segmentanzeige enthält; und Hinzufügen der Zeichenkette zur Hypothese nur dann, wenn der Eintrag nicht die Anti-Segmentanzeige enthält.
- Computer-lesbares Medium, welches von einem Computer ausführbare Befehle enthält, die dann, wenn sie ausgeführt werden, einen Computer zur Ausführung folgender Schritte veranlassen: Empfangen eines zusammengesetzten Wortes; Durchsuchen eines Lexikons nach dem zusammengesetzten Wort; Identifizieren der Wortbestandteile des zusammengesetzten Wortes auf Grundlage von Einträgen, die in dem Lexikon enthalten sind, durch Abgleichen eines ersten Abschnitts des zusammengesetzten Wortes gegen einen ersten Eintrag in dem Lexikon; und Abgleichen eines zweiten Abschnitts des zusammengesetzten Wortes gegen einen zweiten Eintrag in dem Lexikon.
- Computer-lesbares Medium nach Anspruch 17, dadurch gekennzeichnet, dass Befehle zur Durchführung folgender Schritte vorhanden sind: Abgleichen zusätzlicher Abschnitte des zusammengesetzten Wortes, bis ein letztes Zeichen des zusammengesetzten Wortes erreicht ist.
- Computer-lesbares Medium nach Anspruch 18, dadurch gekennzeichnet, dass weiterhin Befehle zur Durchführung folgender Schritte vorgesehen sind: Erzeugen einer ersten Hypothese der Wortbestandteile des zusammengesetzten Wortes, wobei die erste Hypothese eine Kombination der zusammenpassenden Abschnitte des zusammengesetzten Wortes ist; und Erzeugen zusätzlicher Hypothesen der Wortbestandteile des zusammengesetzten Wortes, falls zusätzliche, passende Abschnitte in dem zusammengesetzten Wort gefunden werden.
- Computer-lesbares Medium nach Anspruch 19, dadurch gekennzeichnet, dass weiterhin Befehle zur Durchführung folgender Schritte vorgesehen sind: Bringen jeder identifizierten Hypothese in eine Rangfolge, auf Grundlage einer relativen Wahrscheinlichkeit dafür, dass sie eine korrekte Darstellung der Wortbestandteile des zusammengesetzten Wortes ist.
- Computer-lesbares Medium nach Anspruch 17, dadurch gekennzeichnet, dass weiterhin Befehle zur Durchführung folgender Schritte vorgesehen sind: Abgleichen des ersten Abschnitts unter Abgleich von Zeichen in dem zusammengesetzten Wort, beginnend bei einem ersten Zeichen des zusammengesetzten Wortes; und Abgleichen des zweiten Abschnitts unter Abgleich von Zeichen in dem zusammengesetzten Wort, beginnend von einem ersten Zeichen aus, das auf ein letztes Zeichen des ersten Abschnitts folgt.
- Computer-lesbares Medium nach Anspruch 21, dadurch gekennzeichnet, dass der Abgleich des ersten Abschnitts weiterhin Befehle zur Durchführung folgender Schritte umfasst: Durchsuchen des Lexikons nach einem Eintrag, der zum ersten Abschnitt passt; wenn eine Übereinstimmung aufgefunden wird, Untersuchen des zweiten Abschnitts nach Übereinstimmungen mit Einträgen in dem Lexikon; wenn eine Übereinstimmung für den zweiten Abschnitt aufgefunden wird, Erzeugen einer Hypothese in einer Liste von Hypothesen, wobei die Hypothese eine Kombination des ersten Abschnitts und des zweiten Abschnitts darstellt.
- Computer-lesbares Medium nach Anspruch 22, dadurch gekennzeichnet, dass dann, wenn zusätzliche Übereinstimmungen für den ersten und den zweiten Abschnitt in dem Lexikon gefunden werden, diese Übereinstimmungen als alternative Hypothesen der Liste der Hypothesen hinzugefügt werden.
- Computer-lesbares Medium nach Anspruch 23, dadurch gekennzeichnet, dass weiterhin Befehle zur Durchführung der Schritte vorgesehen sind, eine sich ergebende Hypothese als ungültig auszuschließen in einer endgültigen Bewertung von Hypothesen.
- Computer-lesbares Medium nach Anspruch 24, dadurch gekennzeichnet, dass dann, wenn der zweite Abschnitt einen Abschnitt enthält, der ein Abschnitt ist, der nicht am Ende liegt, weiterhin Befehle vorgesehen sind, um folgende Schritte durchzuführen: Prüfen, ob der nicht am Ende liegende Abschnitt die Segmentanzeige enthält; Hinzufügen der Hypothese zur Liste der Hypothesen; und Ausschließen der sich ergebenden Hypothese als ungültig bei der endgültigen Bewertung der Hypothesen, wenn das Bit anti-seg in dem letzten Segment des zweiten Abschnitts vorhanden ist.
- Verfahren zur Rechtschreibprüfung eines zusammengesetzten Wortes mit folgenden Schritten: Durchsuchen eines Lexikons nach dem zusammengesetzten Wort; falls das zusammengesetzte Wort sich nicht in dem Lexikon findet, Identifizieren von Wortbestandteilen, die das zusammengesetzte Wort ausmachen; Vergleichen jedes der identifizierten Wortbestandteile mit Einträgen in dem Lexikon; Bestimmen, ob jeder der Wortbestandteile korrekt verwendet wird; und wenn zumindest einer der identifizierten Wortbestandteile nicht korrekt verwendet wird, Anzeigen, dass das zusammengesetzte Wort einen Rechtschreibfehler enthält.
- Verfahren nach Anspruch 26, gekennzeichnet durch: Erzeugen eines Rechtschreibvorschlages für das zusammengesetzte Wort auf Grundlage der Wortbestandteile.
- Verfahren nach Anspruch 27, dadurch gekennzeichnet, dass die Bestimmung, ob jeder Wortbestandteil korrekt verwendet wird, umfasst: falls der Wortbestandteil nicht der letzte Wortbestandteil in dem zusammengesetzten Wort ist, überprüfen, ob der Wortbestandteil eine Segmentidentifizierung aufweist; falls der Wortbestandteil nicht die Segmentidentifizierung aufweist, Einsatz von Rechtschreibübergangsregeln bei dem Wortbestandteil; und erneute Überprüfung, ob sich der neue Wortbestandteil in dem Lexikon befindet, mit der Segmentidentifizierung.
- Verfahren nach Anspruch 28, dadurch gekennzeichnet, dass dann, wenn der Einsatz von Rechtschreibübergangsregeln zu zu vielen unerwünschten lexikalischen Übereinstimmungen führt, weiterhin folgende Schritte vorgesehen sind: Durchsuchen der Einträge in dem Lexikon nach dem Wortbestandteil zum Identifizieren von Abänderungen, welche die neue Segmentidentifizierung enthalten; Erzeugen neuer zusammengesetzter Wörter, welche die identifizierten Abänderungen des zusammengesetzten Wortes enthalten; und Präsentieren dieser neuen, zusammengesetzten Wörter als Rechtschreibvorschlag an den Benutzer.
- Verfahren nach Anspruch 26, dadurch gekennzeichnet, dass die Bestimmung, ob jeder Wortbestandteil korrekt verwendet wird, umfasst: falls es sich bei dem Wortbestandteil um den letzten Wortbestandteil in dem zusammengesetzten Wort handelt, überprüfen, ob der Wortbestandteil eine Anti-Segmentidentifizierung aufweist; falls der Wortbestandteil die Anti-Segmentidentifizierung aufweist, Durchsuchen des Eintrages in dem Lexikon nach dem zusammengesetzten Wort, um Abänderungen zu identifizieren, welche nicht die Anti-Segmentidentifizierung enthalten; und falls eine Abänderung des Wortbestandteils nicht die Anti-Segmentidentifizierung enthält, Vorschlagen dieser Abänderung des Wortbestandteils als den Rechtschreibvorschlag für das zusammengesetzte Wort.
- Verfahren nach Anspruch 28, dadurch gekennzeichnet, dass der Einsatz von Rechtschreibübergangsregeln in dem zusammengesetzten Wort umfasst, zusätzliche Zeichen zum Wortbestandteil hinzuzufügen, die in dem zusammengesetzten Wort nicht enthalten sind.
- Verfahren nach Anspruch 28, dadurch gekennzeichnet, dass der Einsatz von Rechtschreibübergangsregeln in dem zusammengesetzten Wort umfasst, Zeichen zu ändern, welche bei dem Wortbestandteil vorhanden sind.
- Verfahren nach Anspruch 28, dadurch gekennzeichnet, dass das Hinzufügen eines zusätzlichen Zeichens über Rechtschreibübergangsregeln zum Wortbestandteil nicht mehr als zwei zusätzliche Zeichen dem Wortbestandteil hinzufügt.
- Verfahren nach Anspruch 29, dadurch gekennzeichnet, dass das Präsentieren von Rechtschreibvorschlägen die Rechtschreibvorschläge nur dann präsentiert, wenn der Einsatz von Rechtschreibübergangsregeln nicht mehr als zwei Zeichen zu dem Wort hinzufügt, von diesem entfernt, oder bei diesem ändert.
- Verfahren nach Anspruch 29, dadurch gekennzeichnet, dass das Präsentieren von Rechtschreibvorschlägen nur Rechtschreibvorschläge präsentiert, wenn nicht mehr als zwei Wortbestandteile in dem zusammengesetzten Wort eine Korrektur benötigen.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US51392103P | 2003-10-23 | 2003-10-23 | |
| US60/513,921 | 2003-10-23 | ||
| US10/804,930 | 2004-03-19 | ||
| US10/804,930 US7447627B2 (en) | 2003-10-23 | 2004-03-19 | Compound word breaker and spell checker |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE102004046252A1 true DE102004046252A1 (de) | 2005-05-25 |
Family
ID=34526926
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102004046252A Ceased DE102004046252A1 (de) | 2003-10-23 | 2004-09-23 | Einrichtung zum Trennen zusammengesetzter Wörter und zur Rechtschreibprüfung |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7447627B2 (de) |
| DE (1) | DE102004046252A1 (de) |
Families Citing this family (68)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7398210B2 (en) * | 2003-10-23 | 2008-07-08 | Microsoft Corporation | System and method for performing analysis on word variants |
| US7421386B2 (en) * | 2003-10-23 | 2008-09-02 | Microsoft Corporation | Full-form lexicon with tagged data and methods of constructing and using the same |
| US8190419B1 (en) | 2006-09-11 | 2012-05-29 | WordRake Holdings, LLC | Computer processes for analyzing and improving document readability |
| US7827025B2 (en) * | 2004-04-06 | 2010-11-02 | Microsoft Corporation | Efficient capitalization through user modeling |
| JP4652737B2 (ja) * | 2004-07-14 | 2011-03-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 単語境界確率推定装置及び方法、確率的言語モデル構築装置及び方法、仮名漢字変換装置及び方法、並びに、未知語モデルの構築方法、 |
| US7680648B2 (en) * | 2004-09-30 | 2010-03-16 | Google Inc. | Methods and systems for improving text segmentation |
| US7827032B2 (en) * | 2005-02-04 | 2010-11-02 | Vocollect, Inc. | Methods and systems for adapting a model for a speech recognition system |
| US7548849B2 (en) * | 2005-04-29 | 2009-06-16 | Research In Motion Limited | Method for generating text that meets specified characteristics in a handheld electronic device and a handheld electronic device incorporating the same |
| US20070078644A1 (en) * | 2005-09-30 | 2007-04-05 | Microsoft Corporation | Detecting segmentation errors in an annotated corpus |
| US7545290B2 (en) * | 2006-01-13 | 2009-06-09 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and for prioritizing compound language solutions according to completeness of text components |
| JP4236057B2 (ja) * | 2006-03-24 | 2009-03-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 新たな複合語を抽出するシステム |
| JP4720570B2 (ja) * | 2006-03-27 | 2011-07-13 | カシオ計算機株式会社 | 情報表示制御装置及び情報表示制御プログラム |
| WO2007129316A2 (en) | 2006-05-07 | 2007-11-15 | Varcode Ltd. | A system and method for improved quality management in a product logistic chain |
| US7562811B2 (en) | 2007-01-18 | 2009-07-21 | Varcode Ltd. | System and method for improved quality management in a product logistic chain |
| TW200823813A (en) * | 2006-11-30 | 2008-06-01 | Inventec Corp | Method and apparatus for learning english vocabulary and computer accessible storage media to store program thereof |
| JP4446313B2 (ja) * | 2006-12-15 | 2010-04-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 音声処理用の辞書に登録するべき新規語句を検索する技術 |
| US8165879B2 (en) * | 2007-01-11 | 2012-04-24 | Casio Computer Co., Ltd. | Voice output device and voice output program |
| WO2008132016A1 (en) | 2007-05-01 | 2008-11-06 | International Business Machines Corporation | Method and system for approximate string matching |
| EP2156369B1 (de) | 2007-05-06 | 2015-09-02 | Varcode Ltd. | System und verfahren zur qualitätsverwaltung unter verwendung von strichcodeindikatoren |
| US8630841B2 (en) * | 2007-06-29 | 2014-01-14 | Microsoft Corporation | Regular expression word verification |
| US9043727B2 (en) * | 2007-07-26 | 2015-05-26 | Microsoft Technology Licensing, Llc | Visualization techniques for imprecise statement completion |
| CA2694327A1 (en) | 2007-08-01 | 2009-02-05 | Ginger Software, Inc. | Automatic context sensitive language correction and enhancement using an internet corpus |
| US8500014B2 (en) | 2007-11-14 | 2013-08-06 | Varcode Ltd. | System and method for quality management utilizing barcode indicators |
| US8521516B2 (en) * | 2008-03-26 | 2013-08-27 | Google Inc. | Linguistic key normalization |
| US20090254818A1 (en) * | 2008-04-03 | 2009-10-08 | International Business Machines Corporation | Method, system and user interface for providing inline spelling assistance |
| US11704526B2 (en) | 2008-06-10 | 2023-07-18 | Varcode Ltd. | Barcoded indicators for quality management |
| US9262409B2 (en) * | 2008-08-06 | 2016-02-16 | Abbyy Infopoisk Llc | Translation of a selected text fragment of a screen |
| US20100169768A1 (en) * | 2008-12-31 | 2010-07-01 | International Business Machines Corporation | Spell Checker That Teaches Rules of Spelling |
| US20150006563A1 (en) * | 2009-08-14 | 2015-01-01 | Kendra J. Carattini | Transitive Synonym Creation |
| US8392441B1 (en) | 2009-08-15 | 2013-03-05 | Google Inc. | Synonym generation using online decompounding and transitivity |
| US20110184723A1 (en) * | 2010-01-25 | 2011-07-28 | Microsoft Corporation | Phonetic suggestion engine |
| KR20120125310A (ko) * | 2010-02-01 | 2012-11-14 | 진저 소프트웨어 인코퍼레이티드 | 특히 소형 키보드 디바이스를 위한 인터넷 코퍼스를 사용하는 자동 문맥 감응식 언어 교정 |
| KR101744861B1 (ko) * | 2010-02-12 | 2017-06-08 | 구글 인코포레이티드 | 합성어 분할 |
| US9378202B2 (en) * | 2010-03-26 | 2016-06-28 | Virtuoz Sa | Semantic clustering |
| US8694304B2 (en) | 2010-03-26 | 2014-04-08 | Virtuoz Sa | Semantic clustering and user interfaces |
| US8676565B2 (en) * | 2010-03-26 | 2014-03-18 | Virtuoz Sa | Semantic clustering and conversational agents |
| US9524291B2 (en) | 2010-10-06 | 2016-12-20 | Virtuoz Sa | Visual display of semantic information |
| WO2012047214A2 (en) * | 2010-10-06 | 2012-04-12 | Virtuoz, Sa | Visual display of semantic information |
| US9262397B2 (en) | 2010-10-08 | 2016-02-16 | Microsoft Technology Licensing, Llc | General purpose correction of grammatical and word usage errors |
| US8640026B2 (en) | 2011-07-11 | 2014-01-28 | International Business Machines Corporation | Word correction in a multi-touch environment |
| US8781810B2 (en) * | 2011-07-25 | 2014-07-15 | Xerox Corporation | System and method for productive generation of compound words in statistical machine translation |
| US8855997B2 (en) | 2011-07-28 | 2014-10-07 | Microsoft Corporation | Linguistic error detection |
| US9348479B2 (en) | 2011-12-08 | 2016-05-24 | Microsoft Technology Licensing, Llc | Sentiment aware user interface customization |
| US9378290B2 (en) | 2011-12-20 | 2016-06-28 | Microsoft Technology Licensing, Llc | Scenario-adaptive input method editor |
| AU2013204311B2 (en) * | 2012-05-30 | 2016-09-29 | Chomley Consulting Pty. Ltd | Methods, Controllers and Devices for Assembling a Word |
| WO2014000143A1 (en) | 2012-06-25 | 2014-01-03 | Microsoft Corporation | Input method editor application platform |
| US20140025368A1 (en) * | 2012-07-18 | 2014-01-23 | International Business Machines Corporation | Fixing Broken Tagged Words |
| US8959109B2 (en) | 2012-08-06 | 2015-02-17 | Microsoft Corporation | Business intelligent in-document suggestions |
| JP6122499B2 (ja) | 2012-08-30 | 2017-04-26 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 特徴に基づく候補選択 |
| US8807422B2 (en) | 2012-10-22 | 2014-08-19 | Varcode Ltd. | Tamper-proof quality management barcode indicators |
| US10394901B2 (en) * | 2013-03-20 | 2019-08-27 | Walmart Apollo, Llc | Method and system for resolving search query ambiguity in a product search engine |
| US10656957B2 (en) | 2013-08-09 | 2020-05-19 | Microsoft Technology Licensing, Llc | Input method editor providing language assistance |
| US20150178264A1 (en) * | 2013-12-24 | 2015-06-25 | Ca, Inc. | Reporting the presence of hardcoded strings on a user interface (ui) |
| KR20150086086A (ko) * | 2014-01-17 | 2015-07-27 | 삼성전자주식회사 | 서버 및 이의 음성 인식 결과에 대한 오류 수정 방법 |
| US9519634B2 (en) * | 2014-05-30 | 2016-12-13 | Educational Testing Service | Systems and methods for determining lexical associations among words in a corpus |
| US10380242B2 (en) * | 2015-05-14 | 2019-08-13 | Nuance Communications, Inc. | System and method for processing out of vocabulary compound words |
| US11060924B2 (en) | 2015-05-18 | 2021-07-13 | Varcode Ltd. | Thermochromic ink indicia for activatable quality labels |
| WO2017006326A1 (en) | 2015-07-07 | 2017-01-12 | Varcode Ltd. | Electronic quality indicator |
| US9858257B1 (en) * | 2016-07-20 | 2018-01-02 | Amazon Technologies, Inc. | Distinguishing intentional linguistic deviations from unintentional linguistic deviations |
| US10572976B2 (en) | 2017-10-18 | 2020-02-25 | International Business Machines Corporation | Enhancing observation resolution using continuous learning |
| JP7053995B2 (ja) * | 2018-04-16 | 2022-04-13 | 富士通株式会社 | 最適化装置及び最適化装置の制御方法 |
| US11568307B2 (en) * | 2019-05-20 | 2023-01-31 | International Business Machines Corporation | Data augmentation for text-based AI applications |
| US11727284B2 (en) | 2019-12-12 | 2023-08-15 | Business Objects Software Ltd | Interpretation of machine learning results using feature analysis |
| US20210192376A1 (en) * | 2019-12-23 | 2021-06-24 | Sap Se | Automated, progressive explanations of machine learning results |
| US11580455B2 (en) | 2020-04-01 | 2023-02-14 | Sap Se | Facilitating machine learning configuration |
| US20250231913A1 (en) * | 2024-01-11 | 2025-07-17 | UiPath, Inc. | Robotic process automation for document understanding that integrates generative artificial intelligence models |
| US12536416B2 (en) | 2024-03-07 | 2026-01-27 | Reve Ai, Inc. | Generative artificial intelligence for content generation with searchable repository |
| US20250291614A1 (en) * | 2024-03-13 | 2025-09-18 | Wells Fargo Bank, N.A. | Systems and methods for virtual assistant with expansive memory over multiple interactions |
Family Cites Families (43)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4384329A (en) * | 1980-12-19 | 1983-05-17 | International Business Machines Corporation | Retrieval of related linked linguistic expressions including synonyms and antonyms |
| US4724523A (en) * | 1985-07-01 | 1988-02-09 | Houghton Mifflin Company | Method and apparatus for the electronic storage and retrieval of expressions and linguistic information |
| JPS608980A (ja) * | 1983-06-28 | 1985-01-17 | Brother Ind Ltd | 電子辞書 |
| US4736296A (en) * | 1983-12-26 | 1988-04-05 | Hitachi, Ltd. | Method and apparatus of intelligent guidance in natural language |
| JPS60245083A (ja) * | 1984-05-18 | 1985-12-04 | Brother Ind Ltd | 電子辞書 |
| JPS6126176A (ja) * | 1984-07-17 | 1986-02-05 | Nec Corp | 言語処理用辞書 |
| US4701851A (en) * | 1984-10-24 | 1987-10-20 | International Business Machines Corporation | Compound word spelling verification |
| US4672571A (en) * | 1984-10-24 | 1987-06-09 | International Business Machines Corporation | Compound word suitability for spelling verification |
| US4771385A (en) * | 1984-11-21 | 1988-09-13 | Nec Corporation | Word recognition processing time reduction system using word length and hash technique involving head letters |
| US4969097A (en) * | 1985-09-18 | 1990-11-06 | Levin Leonid D | Method of rapid entering of text into computer equipment |
| US4887212A (en) | 1986-10-29 | 1989-12-12 | International Business Machines Corporation | Parser for natural language text |
| US4868750A (en) * | 1987-10-07 | 1989-09-19 | Houghton Mifflin Company | Collocational grammar system |
| US5056021A (en) * | 1989-06-08 | 1991-10-08 | Carolyn Ausborn | Method and apparatus for abstracting concepts from natural language |
| JPH03161727A (ja) * | 1989-11-20 | 1991-07-11 | Fuji Photo Film Co Ltd | カメラの主要被写体検出装置 |
| US5708829A (en) * | 1991-02-01 | 1998-01-13 | Wang Laboratories, Inc. | Text indexing system |
| US5867812A (en) * | 1992-08-14 | 1999-02-02 | Fujitsu Limited | Registration apparatus for compound-word dictionary |
| US6760695B1 (en) * | 1992-08-31 | 2004-07-06 | Logovista Corporation | Automated natural language processing |
| US6278967B1 (en) * | 1992-08-31 | 2001-08-21 | Logovista Corporation | Automated system for generating natural language translations that are domain-specific, grammar rule-based, and/or based on part-of-speech analysis |
| JPH0756957A (ja) * | 1993-08-03 | 1995-03-03 | Xerox Corp | ユーザへの情報提供方法 |
| US5611076A (en) * | 1994-09-21 | 1997-03-11 | Micro Data Base Systems, Inc. | Multi-model database management system engine for databases having complex data models |
| US5799268A (en) * | 1994-09-28 | 1998-08-25 | Apple Computer, Inc. | Method for extracting knowledge from online documentation and creating a glossary, index, help database or the like |
| US5715468A (en) * | 1994-09-30 | 1998-02-03 | Budzinski; Robert Lucius | Memory system for storing and retrieving experience and knowledge with natural language |
| JP3003915B2 (ja) * | 1994-12-26 | 2000-01-31 | シャープ株式会社 | 単語辞書検索装置 |
| JPH08323842A (ja) * | 1995-06-02 | 1996-12-10 | Tsutsunaka Plast Ind Co Ltd | シートブロー成形品と成形方法 |
| US5995922A (en) | 1996-05-02 | 1999-11-30 | Microsoft Corporation | Identifying information related to an input word in an electronic dictionary |
| US5864863A (en) * | 1996-08-09 | 1999-01-26 | Digital Equipment Corporation | Method for parsing, indexing and searching world-wide-web pages |
| US6035268A (en) * | 1996-08-22 | 2000-03-07 | Lernout & Hauspie Speech Products N.V. | Method and apparatus for breaking words in a stream of text |
| US6081774A (en) * | 1997-08-22 | 2000-06-27 | Novell, Inc. | Natural language information retrieval system and method |
| US5995992A (en) * | 1997-11-17 | 1999-11-30 | Bull Hn Information Systems Inc. | Conditional truncation indicator control for a decimal numeric processor employing result truncation |
| ATE241196T1 (de) | 1998-03-27 | 2003-06-15 | Lernout & Hauspie Speechprod | Erweiterung eines spracherkennungswortschatzes unter verwendung von abgeleiteten wörtern |
| US6424983B1 (en) * | 1998-05-26 | 2002-07-23 | Global Information Research And Technologies, Llc | Spelling and grammar checking system |
| US6233553B1 (en) * | 1998-09-04 | 2001-05-15 | Matsushita Electric Industrial Co., Ltd. | Method and system for automatically determining phonetic transcriptions associated with spelled words |
| US6298321B1 (en) * | 1998-11-23 | 2001-10-02 | Microsoft Corporation | Trie compression using substates and utilizing pointers to replace or merge identical, reordered states |
| US6278968B1 (en) * | 1999-01-29 | 2001-08-21 | Sony Corporation | Method and apparatus for adaptive speech recognition hypothesis construction and selection in a spoken language translation system |
| US6675169B1 (en) * | 1999-09-07 | 2004-01-06 | Microsoft Corporation | Method and system for attaching information to words of a trie |
| US6393389B1 (en) | 1999-09-23 | 2002-05-21 | Xerox Corporation | Using ranked translation choices to obtain sequences indicating meaning of multi-token expressions |
| JP3717730B2 (ja) * | 1999-11-02 | 2005-11-16 | セイコーインスツル株式会社 | 電子辞書 |
| US6792418B1 (en) * | 2000-03-29 | 2004-09-14 | International Business Machines Corporation | File or database manager systems based on a fractal hierarchical index structure |
| US6965858B2 (en) | 2000-04-03 | 2005-11-15 | Xerox Corporation | Method and apparatus for reducing the intermediate alphabet occurring between cascaded finite state transducers |
| US7089188B2 (en) * | 2002-03-27 | 2006-08-08 | Hewlett-Packard Development Company, L.P. | Method to expand inputs for word or document searching |
| US7490034B2 (en) * | 2002-04-30 | 2009-02-10 | Microsoft Corporation | Lexicon with sectionalized data and method of using the same |
| US7398210B2 (en) * | 2003-10-23 | 2008-07-08 | Microsoft Corporation | System and method for performing analysis on word variants |
| US7421386B2 (en) * | 2003-10-23 | 2008-09-02 | Microsoft Corporation | Full-form lexicon with tagged data and methods of constructing and using the same |
-
2004
- 2004-03-19 US US10/804,930 patent/US7447627B2/en not_active Expired - Fee Related
- 2004-09-23 DE DE102004046252A patent/DE102004046252A1/de not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| US20050091030A1 (en) | 2005-04-28 |
| US7447627B2 (en) | 2008-11-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102004046252A1 (de) | Einrichtung zum Trennen zusammengesetzter Wörter und zur Rechtschreibprüfung | |
| DE69710459T2 (de) | Identifizierung von wörtern im japanischem text durch ein rechnersystem | |
| DE68928230T2 (de) | System zur grammatikalischen Verarbeitung eines aus natürlicher Sprache zusammengesetzten Satzes | |
| EP1157500B1 (de) | Vorrichtung und verfahren zum verbergen von informationen und vorrichtung und verfahren zum extrahieren von informationen | |
| DE69726339T2 (de) | Verfahren und Apparat zur Sprachübersetzung | |
| DE69934371T2 (de) | Apparat und Verfahren zum Verarbeiten einer natürlichen Sprache | |
| DE69028592T2 (de) | Gerät zur automatischen Generierung eines Index | |
| DE68928775T2 (de) | Verfahren und Vorrichtung zur Herstellung einer Zusammenfassung eines Dokumentes | |
| DE3853894T2 (de) | Auf Paradigmen basierende morphologische Textanalyse für natürliche Sprachen. | |
| DE69129107T2 (de) | Automatisches übersetzungs-und fernübertragungssystem | |
| DE69424350T2 (de) | Kontextsensitive Methode zum Auffinden von Informationen über ein Wort in einem elektronischen Wörterbuch | |
| DE69725883T2 (de) | Parser für natürliche sprache mit wörterbuch-basierten teilwahrscheinlichkeiten | |
| DE69911842T2 (de) | Verfahren und Vorrichtung zum Wiederauffinden von Information und entsprechendes Speichermedium | |
| DE69330633T2 (de) | Verfahren und Apparat zum Vergleichen von semantischen Mustern für das Wiederauffinden von Texten | |
| DE69623082T2 (de) | Automatische Methode zur Extraktionszusammenfassung durch Gebrauch von Merkmal-Wahrscheinlichkeiten | |
| DE68923981T2 (de) | Verfahren zur Bestimmung von Textteilen und Verwendung. | |
| DE69428590T2 (de) | Auf kombiniertem lexikon und zeichenreihenwahrscheinlichkeit basierte handschrifterkennung | |
| DE69331044T2 (de) | Vorrichtung und Verfahren zur syntaktischen Signalanalyse | |
| DE3616751A1 (de) | Uebersetzungssystem | |
| EP3100174A1 (de) | Verfahren zur automatischen sinnerkennung und messung der eindeutigkeit von text | |
| DE3032664A1 (de) | Elektronisches sprachuebersetzungsgeraet. | |
| DE102018007165A1 (de) | Vorhersage von stilbrüchen innerhalb eines textinhalts | |
| DE60304066T2 (de) | Verfahren zur Normalisierung einer Diskursrepräsentationsstruktur und normalisierte Datenstruktur | |
| DE10308550A1 (de) | System und Verfahren zur automatischen Daten-Prüfung und -Korrektur | |
| DE69733294T2 (de) | Einrichtung und Verfahren zum Zugriff auf eine Datenbank |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R012 | Request for examination validly filed |
Effective date: 20110818 |
|
| R016 | Response to examination communication | ||
| R082 | Change of representative |
Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUS, DE |
|
| R002 | Refusal decision in examination/registration proceedings | ||
| R081 | Change of applicant/patentee |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, REDMOND, US Free format text: FORMER OWNER: MICROSOFT CORPORATION, REDMOND, WASH., US Effective date: 20150123 |
|
| R082 | Change of representative |
Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUS, DE Effective date: 20150123 Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE Effective date: 20150123 |
|
| R006 | Appeal filed | ||
| R008 | Case pending at federal patent court | ||
| R003 | Refusal decision now final | ||
| R010 | Appeal proceedings settled by withdrawal of appeal(s) or in some other way |