DE69900854T2 - Ein suchsystem und verfahren zum zurückholen von daten und die anwendung in einem suchgerät - Google Patents
Ein suchsystem und verfahren zum zurückholen von daten und die anwendung in einem suchgerätInfo
- Publication number
- DE69900854T2 DE69900854T2 DE69900854T DE69900854T DE69900854T2 DE 69900854 T2 DE69900854 T2 DE 69900854T2 DE 69900854 T DE69900854 T DE 69900854T DE 69900854 T DE69900854 T DE 69900854T DE 69900854 T2 DE69900854 T2 DE 69900854T2
- Authority
- DE
- Germany
- Prior art keywords
- words
- text
- word
- query
- sequences
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 52
- 230000006870 function Effects 0.000 claims abstract description 15
- 238000010845 search algorithm Methods 0.000 claims abstract description 14
- 230000001419 dependent effect Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 2
- 241000712062 Patricia Species 0.000 description 10
- 238000013500 data storage Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 3
- 150000001875 compounds Chemical class 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99937—Sorting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Radar Systems Or Details Thereof (AREA)
- Liquid Crystal Substances (AREA)
- Automobile Manufacture Line, Endless Track Vehicle, Trailer (AREA)
Description
- Die Erfindung betrifft ein Suchsystem für eine Informationswiedergewinnung, insbesondere für Information, die in Form von Text gespeichert ist, wobei ein Text T Wörter und/oder Symbole s und Sequenzen S hieraus umfaßt, wobei die Informationsgewinnung mit einem gegebenen oder variierenden Grad von Übereinstimmung zwischen einer Anfrage Q und wiedergewonnener Information R abläuft, wobei die Anfrage Q Wörter und/oder Symbole q und Sequenzen P hieraus umfaßt und die Information R Wörter und/oder Symbole und Sequenzen hieraus aus dem Text umfaßt, wobei das Suchsystem eine Datenstruktur zum Speichern wenigstens eines Teils des Textes T und ein Maß bzw. eine Metrik M umfaßt, welche(s) den Grad der Übereinstimmung zwischen der Anfrage Q der wiedergewonnen Information R mißt, und wobei das Suchsystem einen Suchalgorithmus zur Ausführung einer Suche realisiert, insbesondere einer Volltextsuche auf der Basis von Schlüsselwörtern kw. Die Erfindung bezieht sich weiterhin auf ein Verfahren in einem Suchsystem für Informationswiedergewinnung, insbesondere von Information, die in Form von Text gespeichert ist, wobei ein Text T Wörter und/oder Symbole s und Sequenzen S hieraus umfaßt, wobei die Informationswiedergewinnung mit einem gegebenen oder variierenden Grad an Übereinstimmung zwischen einer Anfrage Q und wiedergewonnener Information R abläuft, wobei die Anfrage Q Wörter und/oder Symbole q und Sequenzen P hieraus umfaßt und wobei wiedergewonnene Information R Wörter und/oder Symbole und Sequenzen hieraus aus dem Text T umfaßt, wobei das Suchsystem eine Datenstruktur zum Speichern wenigstens eines Teils des Textes T und ein Maß bzw. eine Metrik M umfaßt, welche(s) den Grad der Übereinstimmung zwischen der Anfrage Q und der wiedergewonnenen Information R mißt, und wobei das Suchsystem einen Suchalgorithmus zur Ausführung einer Suche realisiert, insbesondere einer Volltextsuche auf der Basis von Schlüsselwörtern kw, wobei die Information in dem Text T in Wörter s und Wortsequenzen S aufgeteilt wird, wobei die Wörter Unterstrings des gesamten Textes sind, welche durch Wortgrenzterme getrennt sind und eine Sequenz von Symbolen bilden, wobei jedes Wort als eine Sequenz von Symbolen strukturiert ist.
- Die Erfindung betrifft die Nutzung des Suchsystems.
- In verschiedenen Bereichen des menschlichen Wissens wird eine sehr große Menge von Information gesammelt und in Computerspeichersystemen gespeichert. Weil die Computerspeichersysteme immer mehr in öffentlich zugänglichen Datenkommunikationsnetzwerken verbunden sind, wird zunehmend ein Aufwand betrieben, um Systeme und Verfahren zum Suchen und zum Wiedergewinnen von Information für öffentliche oder persönlich Nutzung zu entwickeln. Bekannte Suchverfahren für Daten weisen jedoch Grenzen auf, die die Möglichkeit einer effizienten Wiedergewinnung und Nutzung von Information, die in dieser Art gespeichert ist, ernsthaft vermindert.
- Information kann in Form verschiedener Datentypen gespeichert werden. Im Zusammenhang mit der Informationssuche und der Informationswiedergewinnung ist es nützlich, zwischen dynamischen Daten und statischen Daten zu unterscheiden. Dynamische Daten sind Daten, die sich oft und fortlaufend ändern, so daß ein Satz gültiger Daten ständig variiert, während statische Daten sich nur selten oder überhaupt nicht ändert. Beispielsweise unterliegen ökonomische Daten, wie Aktienwerte oder meteorologische Daten, sehr schnellen Änderungen und sind folglich dynamisch. Andererseits ist die Archivspeicherung von Büchern und Dokumenten üblicherweise dauerhaft, so daß es sich um statische Daten handelt. Das Konzept der Flüchtigkeit von Daten bezieht sich darauf, wie lange die Information gültig ist. Die Flüchtigkeit von Daten hat Auswirkungen darauf, wie die Information durchsucht und wiedergewönnen werden soll. Große Datenmengen verlangen eine Struktur, um das Suchen zu erleichtern, wobei der zeitliche Aufwand zum Ausbilden solcher Strukturen jedoch nicht höher als die Zeit der Gültigkeit der Daten sein darf. Die Kosten für das Ausbilden einer Struktur hängen vom Datenumfang ab. Folglich sollte der Aufbau von Datenstrukturen zum Suchen der Information sowohl den Datenumfang als auch die Flüchtigkeit in Betracht ziehen. Die gesammelte Information wird in Datenbanken gespeichert. Dieses kann strukturiert oder unstrukturiert geschehen. Darüber hinaus können die Datenbanken verschiedene Arten von Dokumenten enthalten, einschließlich zusammengesetzter Dokumente, welche Bilder, Videos, Ton oder formatierten oder kommentierten Text umfassen. Insbesondere strukturierte Datenbanken weisen üblicherweise Indizes auf, um das Suchen und Wiedergewinnen der Daten zu erleichtern. Das Wachstum des World Wide Web (WWW) offeriert eine ständig zunehmende Sammlung von zusammengesetzten Dokumenten und Hyperlink-Dokumenten. Eine Mehrzahl dieser werden nicht in strukturierten Datenbanken gesammelt, und es existieren keine Indizes, die eine schnelle Suche erleichtern. Der Bedarf für das Suchen von Dokumenten in dem World Wide Web ist jedoch offensichtlich, und folglich wurde eine Anzahl von sogenannten Suchmaschinen entwickelt, die das Suchen von wenigstens Teilen der Information in dem World Wide Web ermöglichen.
- Unter einer Suchmaschine werden allgemein ein oder mehrere Werkzeuge bzw. Hilfsmittel zum Suchen und zum Wiedergewinnen von Information verstanden. Zusätzlich zu dem Suchsystem umfaßt eine Suchmaschine geeigneterweise auch einen Index, welcher beispielsweise einen Text mit einer großen Anzahl von "uniform resource locators" (URLs) enthält. Beispiele solcher Suchmaschinen sind Alta Vista; HotBot mit Inktomi-Technologie, Infoseek, Excite und Yahoo. Alle bieten Möglichkeiten zum Ausführen des Suchens und des Wiedergewinnens von Information im World Wide Web. Die Geschwindigkeit und die Effizienz entsprechen jedoch nicht der riesigen Menge von Information, die im World Wide Web verfügbar ist, und folglich bleiben in Anbetracht der Such- und Wiedergewinnungseffizienz dieser Suchmaschinen viele Wünsche offen.
- Das Durchsuchen einer großen Sammlung von Textdokumenten kann üblicherweise mit verschiedenen Anfragetypen ausgeführt werden. Der häufigste Anfragetyp ist das Übereinstimmen und Varianten hiervon. Mit Hilfe des Spezifizierens eines Stichworts oder einer Folge von Stichworten, die in der angefragten Information vorhanden sein muß, gewinnt das Suchsystem alle Dokumente wieder, die diese Anforderung erfüllen. Das Basissuchverfahren beruht auf der sogenannten Einzelwort-Übereinstimmung. Das Stichwort p wird gesucht, und alle Dokumente, die dieses enthalten, werden wiedergewonnen. Es besteht die Möglichkeit, nach einem Stichwort-Präfix pj zu suchen, und alle Dokumente, in denen dieser Präfix in irgendeinem Stichwort vorhanden ist, werden wiedergewonnen. Anstelle der Suche mit Stichworten basiert die Suche manchmal auf einer sogenannten exakten Phrasenübereinstimmung, bei der die Suche mehrere einzelne Stichworte in einer bestimmten Abfolge nutzt. Wie dem Fachmann bekannt ist, kann die exakte Übereinstimmung von Stichwortphrasen in vielen Suchsystemen durch die Nutzung von Boolschen Operatoren ausgeführt werden, beispielsweise basierend auf Operatoren UND (AND), ODER (OR) und NEIN (NOT), welche ein Filtern der Information ermöglichen. Beispielsweise führt die Nutzung von UND dazu, daß alle Dokumente, die zwei durch den UND-Operator verbundene Stichwörter enthalten, wiedergewonnen werden. Darüber hinaus wird ein Nähe(NEAR)-Operator genutzt, um nur die Dokumente mit den Stichworten zurückzugeben, die übereinstimmen und in dem Dokumententext "in der Nähe" zueinander angeordnet sind. In vielen strukturierten Datenbanken sind die enthaltenen Dokumente kommentiert, beispielsweise sind Felder vorgesehen, die bestimmte Teile oder Arten der Information in dem Dokument bezeichnen. Dieses erlaubt die Suche von Übereinstimmungen in nur Teilen der Dokumente und ist nützlich, wenn der Typ der angefragten Information im voraus bekannt ist.
- Wenn in Textdokumenten gesucht wird, werden die Daten strukturiert und sind wahrscheinlich in einigen natürlichen Sprachen, wie Englisch, Norwegisch usw. vorhanden. Wenn nach Dokumenten mit einem bestimmten Kontext gesucht wird, ist es möglich, Näherungskriterien zum Übereinstimmen von Stichworten oder Phrasen zu nutzten, die mit der Anfrage näherungsweise übereinstimmen. Übliche Verfahren für die Näherung erlauben Fehler in den Stichworten und Phrasen. Das Nutzen von Lexika ist ein anderes übliches Verfahren. Eine Näherungssuche verlangt nur, daß eine teilweise Übereinstimmung zwischen der wiederzugewinnenden Information und der Anfrage besteht. Die veröffentlichte internationale Anmeldung WO96/00945 mit dem Titel "Variable length data sequence matching method and apparatus" (Döringer & al.), deren Inhaber International Business Machines, Corp. ist, offenbart das Ausbilden, das Unterhalten und das Nutzen einer Datenbank mit einer baumähnlichen Struktur zum Speichern von Einträgen und zum Wiedergewinnen wenigstens einer teilweisen Übereinstimmung, vorzugsweise der längsten teilweisen Übereinstimmung oder aller teilweisen Übereinstimmungen für ein Suchargument (Eingabeschlüssel) der Einträge.
- Zur weiteren Darstellung des allgemeinen Standes der Technik können die veröffentlichte internationale Patentanmeldung WO92/15954 (Kimball & al., Inhaberin Red Brick System, USA) und das US-Patent 5,627,748 (Baker & al., Inhaberin Lucent Technologies, Inc., USA) genannt werden, die beide Datenstrukturen in Form von Suffix-Bäumen zum Suchen/Übereinstimmen in einer Quadratmatrix offenbaren. Keine der beiden Publikationen offenbart irgend etwas über einen regulären Suffix-Baum hinaus, mit Ausnahme der Nutzung einer verbundenen Liste während des Übereinstimmens und lehrt oder schlägt Lösungen zum Begrenzen des Suchraums vor, wenn nach näherungsweisen Übereinstimmungen gesucht wird. Solche Lösungen wären jedoch sehr wünschenswert, wenn Datenstrukturen durchsucht werden, die auf Suffix-Bäumen basieren, insbesondere zum näherungsweisen Übereinstimmen in sehr großen Dokumentensammlungen, wie sie beispielsweise im World Wibe Web gefunden werden.
- Aufgabe der Erfindung ist es deshalb, ein Suchsystem und ein Verfahren für eine schnelle und effiziente Suche und Wiedergewinnung von Information in großen Datenmengen anzugeben. Es ist insbesondere Aufgabe der Erfindung, ein Suchsystem anzugeben, das zum Implementieren von Suchmaschinen zum Durchsuchen von Informationssystemen mit verteilten großen Datenspeichermengen, beispielsweise das Internet, geeignet ist. Es wird darauf hingewiesen, daß das erfindungsgemäße Suchsystem nicht auf das Suchen und das Wiedergewinnen von Information begrenzt ist, die in Form alphanumerischer Zeichen gespeichert ist. Das erfindungsgemäße Suchsystem kann in gleicher Weise zum Suchen und zum Wiedergewinnen von Information genutzt werden, die in Form digitaler Bilder oder graphischer Symbole gespeichert sind. Genauso kann das Wort Text in der hier genutzten Form als Bilder interpretiert werden, wenn diese vollständig oder teilweise als Folge von Symbolen repräsentiert werden. Es wird weiterhin darauf hingewiesen, daß das erfindungsgemäße Suchsystem als Software implementiert werden kann, die in einer geeigneten Hochsprache auf kommerziell verfügbaren Computersystemen geschrieben ist. Darüber hinaus kann das erfindungsgemäße Suchsystem auch in Form einer zweckgebundenen Prozessoreinrichtung zum Suchen und zum Wiedergewinnen von Information der vorgenannten Art implementiert werden.
- Die vorgenannten Aufgaben und Vorteile werden erfindungsgemäß mit einem Suchsystem realisiert, welches dadurch gekennzeichnet ist, daß die Datenstruktur eine Baumstruktur in der Form eines nicht gleichmäßig verteilten dünnbesiedelten Suffix-Baums ST(T) zum Speichern von Suffixen von Wörtern und/oder Symbolen s und Sequenzen S daraus in dem Text T umfaßt, daß das Maß M eine Kombination aus einem Edit-Abstandsmaß D(s, q) für einen ungefähren Grad an Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in dem Text T bzw. einer Anfrage Q und ein Edit-Abstandsmaß Dws(S, P) für einen ungefähren Grad an Übereinstimmung zwischen Sequenzen S von Wörtern und/oder Symbolen s in dem Text T und einer Anfragesequenz P von Wörtern und/oder Symbolen q in der Anfrage Q umfaßt, wobei das zuletzt genannte Edit-Abstandsmaß eine Gewicht-Kostenfunktion für Editieroperationen umfaßt, welche Sequenzen von Wörtern und/oder Symbolen s in dem Text T in die Sequenz P von Wörtern und/oder Symbolen q in der Anfrage Q transformiert, wobei die Gewichtung mit einem Wert erfolgt, der proportional zu einer Änderung der Länge der Sequenz S bei einer Transformation oder abhängig von der Größe der Wörter und/oder Symbole s; q in den abzugleichenden Sequenzen S; P ist, daß der implementierte Suchalgorithmus einen ersten Algorithmus zum Ermitteln des Grades der Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in der Suffix-Baumdarstellung des Textes T bzw. einer Anfrage Q und einen zweiten Algorithmus zum Ermitteln des Grades der Übereinstimmung zwischen Sequenzen S;P von Wörtern und/oder Symbolen s; q in der Suffix-Baumdarstellung des Textes T bzw. der Anfrage Q umfaßt, wobei der erste und/oder zweite Algorithmus die Datenstrukturen mit Anfragen Q in der Form von entweder Wörtern, Symbolen, Wortsequenzen oder Symbolsequenzen oder Kombinationen daraus absucht, so daß Information R auf der Basis der Anfrage Q mit einem bestimmten Grad an Übereinstimmung zwischen ersterer und letzterer wiedergewonnen wird, und daß der Suchalgorithmus optional auch einen dritten Algorithmus zum Ermitteln der exakten Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in der Suffix-Baumdarstellung des Textes T bzw. der Anfrage Q und/oder einen vierten Algorithmus zum Ermitteln der exakten Übereinstimmung zwischen Sequenzen S; P von Wörtern und/oder Symbolen s; q in der Suffix-Baumdarstellung des Textes T bzw. der Anfrage Q umfaßt, wobei der dritte und/oder vierte Algorithmus die Datenstruktur mit Anfragen Q in der Form von entweder Wörtern, Symbolen, Wortsequenzen oder Symbolsequenzen oder Kombinationen daraus absuchen, so daß Information R auf der Basis der Anfrage Q mit einer exakten Übereinstimmung zwischen ersterer und letzerer wiedergewonnen wird.
- Bei einer vorteilhaften Ausführungsform des erfindungsgemäßen Suchsystems ist der Suffix- Baum ST(T) ein dünnbesiedelter Wortabstand-Suffix-Baum SSTws(T), der nur eine Untermenge der Suffixe in dem Text T umfaßt.
- Es ist bevorzugt, daß der dünnbesiedelte Wortabstand-Suffix-Baum SSTws(T) ein dünnbesiedelter Stichwort-Abstand-Suffix-Baum SSTkws(T) ist.
- Bei einer weiteren vorteilhaften Ausführungsform des erfindungsgemäßen Suchsystems ist vorgesehen, daß der erste Algorithmus zum Erfassen des Grads der Stichwortübereinstimmung in einem dünnbesiedelten Stichwort-Abstand-Suffix-Baum SSTkws(T) in der im abhängigen Anspruch 4 beschriebenen Art implementiert ist. Es kann weiterhin vorgesehen sein, daß der zweite Algorithmus zum Bestimmen des Grads der Übereinstimmung in einem dünnbesiedelten Stichwort-Abstand-Suffix-Baum SSTkws(T) implementiert ist, wie dieses in dem abhängigen Anspruch 5 beschrieben ist, wobei eine Unterroutine des zweiten Algorithmus vorzugsweise implementiert ist, wie dieses im abhängigen Anspruch 6 offenbart ist. Der dritte Algorithmus zum Bestimmen einer exakten Stichwortübereinstimmung in einem dünnbesiedelten Stichwort-Abstand-Suffix-Baum SSTkws(T) ist bei einer Ausführungsform der Erfindung implementiert, wie dieses im abhängigen Anspruch 7 beschrieben ist. Letztlich ist bei einer Ausführungsform der Erfindung der vierte Algorithmus zum Bestimmen einer exakten Stichwortsequenzübereinstimmung in einem dünnbesiedelten Stichwort-Abstand-Suffix- Baum SSTkws(T) gemäß dem abhängigen Anspruch 8 implementiert.
- Die oben beschriebenen Aufgaben und Vorteile werden erfindungsgemäß auch mit einem Verfahren realisiert, welches durch die folgenden Schritte gekennzeichnet ist: Erzeugen der Datenstruktur als einen dünnbesiedelten Wortabstand-Suffix-Baum SSTws(T) eines Textes T zum Darstellen aller Suffixe, die bei einem Worttrennsymbol in dem Text T beginnen; Speichern von Sequenzinformation der Wörter s in dem Text T in dem dünnbesiedelten Wortabstand-Suffix-Baum SSTws(T); Erzeugen eines kombinierten Editabstandsmaßes M, daß ein Editabstandsmaß D(s, q) für Wörter s in dem Text T und ein Anfragewort q in einer Anfrage Q und ein wortgrößenabhängiges Editabstandsmaß Dws(S; P) für Wortsequenzen S in dem Text T und eine Wortsequenz P in der Anfrage Q umfaßt, wobei das Editabstandsmaß Dws(S; P) die minimale Summe der Kosten für Editieroperationen ist, welche eine Sequenz S in die Sequenz P umwandeln, wobei die minimale Summe der Kosten die minimale Summe der Kostenfunktionen für jede Editieroperation ist, gewichtet mit einem Wert, der proportional zur Änderung in der Gesamtlänge der Sequenz S ist, oder mit dem Verhältnis der momentanen Wortlänge und der mittleren Wortlänge in der Sequenz S; P; und Bestimmen des Grads der Übereinstimmung zwischen Wörtern s, q durch Berechnen des Editabstandsmaßes D(s, q) zwischen den Wörtern s der wiedergewonnenen Information R und den Wörtern q einer Anfrage Q, oder indem Fall, daß die Wörter s, q mehr als k Fehler voneinander abweichen, Bestimmen des Grads der Übereinstimmung zwischen den Wortfolgen SR; PQ der wiedergewonnenen Information R bzw. einer Anfrage Q durch Berechnen des Editabstandsmaßes Dws(SRPQ) für alle Übereinstimmungen.
- Vorteilhaft kann das erfindungsgemäße Verfahren das zusätzliche Gewichten einer Editieroperation umfassen, die ein Wort s in eine Wort q ändert, mit einem Parameter für die Nähe zwischen den Zeichen der Wörter s; q, und somit Berücksichtigen der Ähnlichkeit der Wörter s; q bei der Ermittlung der Kosten der in Rede stehenden Editieroperation.
- Bei einer vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens ist die Anzahl der Übereinstimmungen durch Berechnen des Editabstands Dws(SR, PQ) für eine beschränkte Anzahl von Wörtern in der Anfragewortsequenz PQ begrenzt.
- Bei einer anderen vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird der Editabstand D(s, q) zwischen dem Wort s und einem Wort q auf rekursive Weise definiert und mittels einer dynamischen Programmierprozedur berechnet. Eine vorteilhafte Ausführungsform des erfindungsgemäßen Verfahrens kann weiterhin vorsehen, daß der Editabstand Dws(S, P) zwischen Sequenzen S und einer Sequenz P entsprechend auf rekursive Weise definiert und mittels einer dynamischen Programmierprozedur berechnet wird.
- Erfindungsgemäß werden die oben genannten Aufgaben und Vorteile auch mittels der Nutzung des erfindungsgemäßen Suchsystems in einer Näherungs-Suchmaschine realisiert.
- Die Erfindung wird im folgenden anhand von Ausführungsbeispielen unter Bezugnahme auf eine Zeichnung näher erläutert. Hierbei zeigen:
- Fig. 1 ein Beispiel für einen Suffix-Baum;
- Fig. 2 Beispiele für dünnbesiedelte Wort-Abstand-Suffix-Bäume, wie sie mit der Erfindung genutzt werden;
- Fig. 3 ein Beispiel für einen sogenannten PATRICIA-Baum gemäß dem Stand der Technik;
- Fig. 4 ein weiteres Beispiel für einen dünnbesiedelten Wort-Abstand-Suffix-Baum, wie er bei der Erfindung genutzt wird;
- Fig. 5 ein Beispiel einer explizit gespeicherten Wortsequenz-Information, wie sie mit der Erfindung genutzt wird;
- Fig. 6 eine Blattknotenstruktur, wie sie bei der Erfindung genutzt wird; und
- Fig. 7 schematisch die Struktur einer Suchmaschine mit dem erfindungsgemäßen Suchsystem.
- Das erfindungsgemäße Suchsystem besteht im wesentlichen aus drei Teilen, nämlich der Datenstruktur, dem Maß bzw. der Metrik für eine genäherte Übereinstimmung und dem Suchalgorithmus. Wenn eine Volltextwiedergewinnung das Ziel ist, wie es für das erfindungsgemäße System im wesentlichen der Fall ist, wird die gesamte wiederzugewinnende Datenfolge in einer Datenstruktur gespeichert, die eine Hochleistungsanfrage unterstützt.
- Zunächst wird das der Erfindung zugrunde liegende Konzept erläutert. Die in Form eines Textes T gespeicherte Information wir in Wörter s und Wortsequenzen S unterteilt. Wörter sind Unterstrings des gesamten Textes, der durch Wortgrenzterme getrennt ist. Die Folge von Wortgrenztermen wird als BTword bezeichnet. Eine übliche Folge von Wortgrenztermen könnte die Folge {'\t', ':', '\t', '\n', '\0', '.', ';', '?'} sein, wobei t ein Tabellenzeichen, \n ein Zeilenvorschubzeichen und \0 ein Zeichen für ein Dokumentenende sind. In Verbindung mit der folgenden Beschreibung der Erfindung sind einige Definitionen betreffend Strings und Sequenzen nützlich.
- Ein String ist eine Folge von Symbolen aus einem Alphabet, beispielsweise den ASCII- Zeichen. Die Länge eines Strings ist die Anzahl von Objekten aus Symbolen oder Zeichen, die den String bilden, und wird als x bezeichnet. Wenn x eine Länge m aufweist, kann der String auch als x&sub1; x&sub2; ... xi ... xm geschrieben werden, wobei xi das i-te Symbol in dem String repräsentiert.
- Ein Unterstring von x ist ein String, der durch eine angrenzende Gruppe von Symbolen innerhalb von x gegeben ist. Deshalb kann ein Unterstring aus x mittels des Löschens eines oder mehrerer Zeichen am Anfang oder am Ende des Strings erhalten werden.
- Ein Unterstring von x ist ein String x = xi xi + 1 ... xj für einige 1 ≤ i ≤ j ≤ n. Der String xi = x xi ... xn ist ein Suffix des Strings x, und der String xj = x = x&sub1; x&sub2; ... xj ist ein Präfix des Strings x. Darüber hinaus wird die Notation einer Wortsequenz genutzt.
- Eine Wortsequenz ist eine Sequenz getrennter, aufeinanderfolgender Wörter. Ein Wort ist eine Sequenz S = s&sub1;, s&sub2;, ..., sn, die aus n einzelnen Worten (oder Strings) s&sub1;, s&sub2; bis sn besteht.
- Wortsequenzen werden durch Sequenzgrenzterme abgegrenzt. Die Sequenzgrenzterme einer Folge werden mit BTseq bezeichnet. Eine gemeinsame Folge von Sequenzgrenztermen könnte die Folge {'0\'} sein, wobei \0 einen Markierer für das Ende des Dokuments anzeigt.
- Das Konzept der näherungsweisen Wortübereinstimmung kann wie folgt beschrieben werden.
- Gegeben sind ein String s = s&sub1; s&sub2; ... sn und ein Anfrageterm q = q&sub1; q&sub2; ... qm. Die Aufgabe besteht dann darin, alle Erscheinungen von q in s zu finden, die sich höchstens um k-Fehler von dem originalen Anfrageterm q unterscheiden. Eine Näherungsmetrik bzw. ein Näherungsmaß bestimmt, wie die Fehler zwischen q und einer potentiellen Übereinstimmung si ... sj zu berechnen sind.
- Eine übliche Metrik bzw. ein übliches Maß für eine näherungsweise Wortübereinstimmung ist der Levenstein-Abstand oder Edit-Abstand (V. I. Levenstein, "Binary codes capable of correcting deletions, insertions, and reversals", (Russisch) Doklady Akademii nauk SSSR, Vol. 163, No. 4, Seiten 845-8 (1965); auch Cybernetics and Control Theory, Vol. 10, No. 8, Seiten 707-10, (1966)). Dieses Maß ist als die minimale Anzahl von Editier-Operationen definiert, die zum Transformieren eines Strings in einen anderen benötigt werden. Eine Editier- Operation wird durch irgendeine Überschreibregel gegeben, beispielsweise:
- - (a → ε), Löschen
- - (ε → a), Einfügen
- - (a → b), Ändern
- p und m seien zwei Wörter der Länge i bzw. j. D(i,j) bezeichnet den Edit-Abstand zwischen dem i-ten-Präfix von p und dem j-ten-Präfix von m. Der Edit-Abstand kann dann rekursiv wie folgt definiert werden:
- D(i,0) = D(0,i) = i
- wobei
- ∂(i,j) = 0if p&sub1; = mj sonst 1
- Es ist auch möglich, eine näherungsweise Übereinstimmung auf dem Wörterniveau in einer Wortsequenz zu definieren, und dieses kann wie folgt beschrieben werden.
- Es ist ein Text T mit den n Wörtern w&sub1;, w&sub2; ... wn gegeben, wobei jedes Wort ein String von Zeichen ist. Ein Sequenzmuster P besteht aus m-Wörtern p&sub1;, p&sub2; ..., pm. Das Sequenzmuster P soll ein näherungsweises Auftreten in T haben, wenn die Sequenz p&sub1;, p&sub2;, ..., pm sich mit höchstens k- Fehlern von einer Sequenz wi, wi+1 ..., wj für einige i, j unterscheidet, so daß 1 ≤ i ≤ j ≤ n. Wiederum bestimmt ein Näherungsmaß, wie die Anzahl von Fehlern zwischen den zwei Sequenzen zu berechnen ist.
- Ein Text, der in einem Suchsystem wiedergewonnen werden soll, muß in einer Art und Weise indexiert werden, die das Suchen der Daten unterstützt. Folglich ist die Datenstruktur eine Kerndatenstruktur des erfindungsgemäßen Suchsystems und basiert auf sogenannten Suffix- Bäumen, insbesondere einem dünnbesiedelten Suffix-Baum. Diese zwei Arten von Strukturen werden im folgenden definiert. Ein Suffix-Baum S(T) ist ein Baum-Repräsentation aller möglichen Suffixe in dem Text T. Alle unären Knoten in einem Suffix-Baum S(T) sind mit ihrem Kind verkettet, um eine kompakte Variante zu schaffen.
- Fig. 1 zeigt den Suffix-Baum für den Text T = "structure".
- Die vorliegende Erfindung basiert insbesondere auf dünnbesiedelten Suffix-Bäumen. Diese wurden von J. Kärkkäinen & E. Ukkonen in "Sparse Suffix Trees", Proceedings of the Second Annual International Computing and Combinatorics Conference (COCOON '96), Springer Verlag, Seiten 219-230 eingeführt, was auf Ideen basiert, die durch D. R. Morrison, "PATRICIA - Practical Algorithm To Retrieve Information Coded in Alphanumeric", Journal of the ACM, 15, Seiten 514-534 (1968) publiziert wurden. Ein dünnbesiedelter Suffix-Baum ist wie folgt definiert.
- Ein dünnbesiedelter Suffix-Baum SST(T) des Textes T ist ein Suffix-Baum, der nur eine Teilfolge der in dem Suffix-Baum ST(T) des Textes vorhandenen Suffixe enthält.
- Wenn das erfindungsgemäße Suchsystem zum Suchen ganzer Wörter genutzt wird, kann durch das ausschließliche Speichern von Suffixen, die an Wortgrenzen beginnen, vorteilhaft ein nicht gleichmäßig verteilter dünnbesiedelter Suffix-Baum erzeugt werden. Das Konzept des dünnbesiedelten Wortabstand-Suffix-Baums ist wie folgt definiert.
- Ein dünnbesiedelter Wortabstand-Suffix-Baum SSTws(T) eines Textes T ist ein dünnbesiedelter Suffix-Baum SST(T), der nur die Suffixe enthält, die in dem Text bei einem Wort- Separator-Zeichen beginnen.
- Fig. 2 zeigt zwei Beispiele für dünnbesiedelte Wortabstand-Suffx-Bäume. Teile der Suffixe wurden weggelassen, um die Lesbarkeit zu verbessern. Der dünnbesiedelte Wortabstand- Suffix-Baum für T = "to be the best" ist die linke Struktur, und T = "to make the only major modifcation" ist die rechte Struktur in Fig. 2.
- In dem erfindungsgemäßen Suchsystem wird der Text naturgemäß in Wörter unterteilt, die in dem dünnbesiedelten Wortabstand-Suffix-Baum unabhängig gespeichert werden. Weil der atomare Suchterm zum Suchen das Wort selbst ist, wird jeder Suffix vorteilhaft am Ende des Worts abgeschlossen. Dieses reduziert den dünnbesiedelten Suffix-Baum zu einem sogenannten PATRICIA-Baum (Morrison, op. cit.). Ein Trie wird in der Literatur als ein Stammbaum mit den Eigenschaften definiert, daß jeder Knoten, mit Ausnahme des Stamms, ein Symbol des Alphabets enthält und daß zwei Kinder des selben Knotens das selbe Symbol enthalten. Es wird darauf hingewiesen, daß das Wort "Trie" von dem Wort "retrieval" (Zurück bzw. Wiedergewinnung) abgeleitet ist und folglich anzeigt, daß der Trie eine für die Wiedergewinnung von Daten geeignete Baumstruktur ist. Ein PATRICIA-Trie ist definiert als ein dünnbesiedelter Stichwortabstand-Suffix-Baum (KWS-Baum), wobei die in den Blattknoten gespeicherten Suffixe durch Stichwort-Trennzeichen begrenzt sind. In Fig. 3 ist ein Beispiel eines PATRICIA-Tries für die Folge von Stichwörtern {"avoid", "abuse", "be", "become", "breathe", "say"} gezeigt. Die in dem erfindungsgemäßen Suchsystem genutzte Struktur unterscheidet sich von dem PATRICIA-Trie, weil das Suchsystem explizit Sequenzinformation der Wörter speichert. Das Vermindern der Suffix-Länge verlangt, daß die Repräsentation des Blattknotens geändert wird. Zeiger des Originaltextes werden durch den Suffix-String selbst ersetzt. Eine Suffix-Längenreduktion dieser Art ist in Fig. 4 für einen der Strings aus Fig. 2 gezeigt. Fig. 4 zeigt mit anderen Worten den dünnbesiedelten Wortabstand-Suffix-Baum für T = "to make the only major modification" und Suffixe, die an Wortgrenzen abgeschnitten sind. Ein Blattknoten enthält eine Liste aller Positionen, wo das durch den Blattknoten repräsentierte Wort auftritt.
- Anstelle der Nutzung der impliziten Sequenz von Informationen, die in dem Originaltext gefunden wird, speichert die vorliegende Erfindung explizit Sequenzinformation in dem dünnbesiedelten Wortabstand-Suffix-Baum. Dieses wird dadurch ausgeführt, daß Zeiger zwischen den Blattknoten genutzt werden, die aufeinanderfolgende Wörter in dem Originaltext repräsentieren. Weil letztlich sämtliche Auftritte des durch einen speziellen Blattknoten repräsentierten Worts verfügbar sind, muß ein Zeiger zu dem nächsten folgenden Blatt addiert werden.
- Ein Blattknoten enthält nur den Suffix des Worts, welches er repräsentiert, so daß nur die Suffixe jedes der aufeinanderfolgenden Wörter wiedergewonnen werden, wenn die Sequenzzeiger in der Auftrittsliste gekreuzt werden. Dieses wird mittels des Speicherns des gesamten Worts in dem Blattknoten anstelle einer ausschließlichen Speicherung des Suffixes gehandhabt, und deshalb unterscheidet sich auch die Datenstruktur der Erfindung von den PATRICIA-Trie in dieser Hinsicht. In Fig. 5 ist die Datenstruktur zum expliziten Speichern von Wortsequenzinformation in einer Auftrittsliste mit Zeigern auf das nächstfolgende Wort und auf sein Auftreten gezeigt.
- Das erfindungsgemäße Suchsystem nutzt einen PATRICIA-Trie zum Organisieren der Auftritts- bzw. Erscheinungsliste (Morrison, vgl. oben). Der PATRICIA-Trie ermöglicht es dem Suchsystem, die Liste aller aufeinanderfolgender Wörter, die mit dem String p&sub2; zu einer Zeit O( p&sub2; ) übereinstimmen, zuzugreifen, wobei p&sub2; selbstverständlich die Länge von p&sub2; ist. Mittels der Nutzung eines PATRICIA-Tries zum Organisieren der Liste der Erscheinungen bzw. Auftritte wird zum Speichern der Wörter eines Textes und zum Unterhalten der Sequenzinformation eine vollständig definierte Baumstruktur erhalten. In Fig. 6 ist ein typischer Blattknoten mit einem PATRICIA-Trie für die organisierte Auftrittsliste und die unsortierte Extraliste für Auftritte gezeigt. Die Speicheranforderungen für eine Auftritts- bzw. Erscheinungsliste, wie sie in Verbindung mit dem erfindungsgemäßen Suchsystem genutzt wird, weist beispielsweise die folgenden Merkmale auf: Eine Datenbank mit etwa 742 358 Dokumenten umfaßt insgesamt 333 856 744 Wörter und ein Lexikon mit 538 244 unterschiedlichen Wörtern. Der Gesamtbereich der Datenbank beträgt 2054.52 MB. Die mittlere Wortlänge ist dann 6.45 Bytes. Ein dünnbesiedelter Suffix-Raum nutzt 8 Byte für jeden internen Knoten, wobei 32 Bit-Zeiger genutzt werden. Es wird angenommen, daß für jedes Wort im Mittel drei interne Knoten genutzt werden. Der Blattknoten würde dann 6.45 Bytes zum Speichern des gesamten Wortes plus 32 Bits für einen Zeiger auf eine Erscheinungsliste verlangen. 34.45 Bytes/Wort ergeben insgesamt eine Größe von 18.108 MB. Darüber hinaus weist die Auftrittsliste eine Größe von 4 Bytes pro Eintrag und 12 Bytes auf, wenn die Vollversion genutzt wird. Folglich variiert der Gesamtspeicherbedarf für die Auftrittsliste von 1273 MB bis 3820 MB. Die Datenstruktur, welche einen dünnbesiedelten Suffix-Baum nutzt, weist eine Größe zwischen 60 % bis 200% des Originaltextes auf. Dieses ist vergleichbar mit den Anforderungen einer invertierten Datei, wobei jedoch der dünnbesiedelte Suffix-Baum, wie er in Verbindung mit der Erfindung genutzt wird, ein viel schnelleres Suchen ermöglicht, ein näherungsweises Übereinstimmen erlaubt und das Ausführen von Sequenzübereinstimmung leicht ausführbar macht.
- Beim näherungsweisen Suchen wird eine Metrik bzw. ein Maß genutzt, um eine Fehlermessung einer möglichen Übereinstimmung zu liefern. Das erfindungsgemäße Suchsystem wendet verschiedene Maße an, insbesondere eine einzigartige Kombination von Maßen. Diese Maße werden im folgenden zusammen mit dem kombinierten Maß diskutiert.
- Ein Edit-Abstandsmaß, wie es oben definiert wurde, ermöglicht die Operationen Löschen, Einfügen und Verändern, welche sowohl Wörter als auch Zeichen unmittelbar erfassen. Übliche Fehler in Übereinstimmungsausdrücken sind fehlende, zusätzlich oder geänderte Wörter.
- Deshalb soll das vorher definierte Edit-Abstandsmaß angepaßt und erweitert werden, um für das näherungsweise Wortsequenz-Übereinstimmungsproblem angewendet zu werden. Edit- Operationen für Sequenzen werden unten definiert.
- Zum Transformieren einer Sequenz S mit Wörtern in eine andere Sequenz P mit Wörtern können die für das Wort in den Sequenzen erlaubten Edit-Operationen gemäß der folgenden Umschreibregeln geschrieben werden:
- - (a → ε), Löschen von Wort a aus der Sequenz
- - (ε → a), Einfügen von Wort a in die Sequenz
- - (a → b), Ändern von Wort a in Wort b
- - (ab → ba), Transponieren benachbarter Wörter a und b.
- Anstelle des Anwendens der Edit-Operationen auf Zeichen, wie Atome, wendet das erfindungsgemäße Suchsystem diese auf Wörter an, welche dann als die Operationsatome zu betrachten sind.
- Eine Kostenfunktion cedit(x → y) ist eine Konstante, die wie folgt definiert ist:
- wobei ∂(x,y,) definiert ist als
- Mittels des Nutzens der oben definierten Edit-Operationen kann nun der Edit-Abstand für Sequenzen definiert werden.
- Das Edit-Abstand-Maß für Sequenzen definiert den Abstand Dseq(S,P) zwischen der Sequenz S = s&sub1;, s&sub2;, ..., sn und der Sequenz P = p&sub1;, p&sub2;, ..., pm als die minimale Summe von Kosten c(x → y) für die Sequenz von Edit-Operationen, die die Sequenz S in die Sequenz P transformieren.
- Das erfindungsgemäße Suchsystem vergrößert die Edit-Abstände-Maß für Sequenzen zum Wichten der Kosten der Edit-Operationen um die Größe der Wörter, für die die Operationen ausgeführt werden.
- Der wortgrößenabhängige Edit-Abstand für Sequenzen ist definiert als die minimale Summe von Kosten für die Editieroperationen, die benötigt werden, um eine Sequenz in eine andere zu transformieren. Die Kostenfunktionen hängen von der Wortgröße ihrer Operanten ab.
- In dem erfindungsgemäßen Suchsystem ist eine Definition der Kostenfunktionen durch die folgenden Gleichungen gegeben:
- CEinfügen (ε → a) = a /l
- CLöschen (a → ε) = a /l
- CTranspornieren (ab → ba) = 1
- cÄnderen (a ® b) = max( a - b ,l)/l
- wobei l die mittlere Länge eines Wortes in zwei Sequenzen bezeichnet, die verglichen werden. Die Kosten jeder Edit-Operation werden mit einem zu der Änderung der Gesamtlänge der Sequenz proportionalen Wert oder einem Verhältnis der momentanen Wortlänge und der mittleren Wortlänge in den betrachteten Sequenzen gewichtet.
- Das Abstandsmaß reflektiert jetzt die Annahme einer Beziehung zwischen der Wortlänge und wie bedeutend das Wort für den semantischen Kontext der Wortsequenz ist. Darüber hinaus wendet das erfindungsgemäße Suchsystem eine Näherung auf dem Zeichenniveau an, wenn die Ändern-Edit-Operation (a → b) genutzt wird. Das Ersetzen eines Wortes a durch ein anderes Wort b sollte in Beziehung zu der Ähnlichkeit zwischen diesen zwei Worten stehen. Die neue Kostenfunktion für die Ändern-Edit-Operation ist deshalb wie folgt gegeben:
- Cchange (a → b) = ∂Näherung(a, b)max( a - b ,l)/l (5)
- wobei
- ∂Näherung(a,b) = D(a, b) (6)
- wobei D(a, b) die normalisierte Edit-Abstand-Meßfunktion für Wörter ist, 0 bedeutet volle Ähnlichkeit, 1 bedeutet keine Ähnlichkeit.
- Das erfindungsgemäße Suchsystem kombiniert das Edit-Abstands-Maß für Sequenzen mit den Kostenfunktionen gemäß den Formeln 4, 5 und 6 mit einem Edit-Abstands-Maß für Wörter gemäß Formel 1. Dieses bedeutet, daß die Sequenz-Edit-Operationen nur genutzt werden, wenn die übereinstimmenden Wörter sich um mehr als k Fehler voneinander unterscheiden.
- Die in den erfindungsgemäßen Suchsystemen verwendeten Algorithmen führen eine effiziente Suche der beschriebenen Strukturen aus. Übereinstimmungen werden gemäß den Maßen gefunden, die oben beschrieben sind.
- Näherungsweise Wortübereinstimmung in einem dünnbesiedelten Wort-Abstand-Sufix-Baum wird mittels des Kombinierens der Berechnung der Edit-Abstand-Matrix und einer Durchquerung des Sufix-Baums ausgeführt. Ein Algorithmus hierfür ist in Pseudo-Code geschrieben und kann Tabelle 1 entnommen werden.
- Dieser Algorithmus entspricht einem angepaßten Trie-Übereinstimmungsalgorithmus, wie er von H. Shang & T. H. Merrettal in "Tries for Approximate String Matching", IEEE Transactions on Knowledge and Data Engineering, Vol. 5, No. 4, pp. 540-547 (1996) vorgeschlagen wurde. Die erwartete Laufzeit des Algorithmus im ungünstigsten Fall ist nach Shang & Merrettal (vgl. oben) O(k Σ k).
- Die näherungsweise Wortsequenz-Übereinstimmung erfordert die Berechnung des Wortsequenz-Eidt-Abstands für alle möglichen Übereinstimmungen. Die Anzahl der möglichen Übereinstimmungen kann jedoch dadurch begrenzt werden, daß die Berechnung des Edit- Abstands nur für die möglichen Wörter begonnen wird. Die Kosten zum Löschen eines Worts aus den Sequenzen bestimmt die Anzahl der möglichen Startwörter. Wenn die akkumulierten Kosten zum Löschen der i ersten Wörter in einer Anfragesequenz PQ einen vorgegebenen Fehlerschwellwert übersteigen, kann die Kandidatensequenz, die mit dem i-ten Wort der Anfrage beginnt, keine mögliche Übereinstimmung sein. Deshalb werden für eine Anfragesequenz PQ mit i-Wörtern höchstens i mögliche Startwörter versucht. Weil in der Sequenzstruktur des Baumes keine Rückzeiger existieren, wird nicht sichergestellt, daß alle möglichen Übereinstimmung erhalten werden. Das Hinzufügen von Rückzeigern würde dieses Problem lösen. Der in dem erfindungsgemäßen Suchsystem genutzt Algorithmus zur näherungsweisen Wortsequenz-Übereinstimmung ist in Tabelle II in Pseudo-Code angegeben. Dieser Algorithmus testet die Übereinstimmung des ersten Stichworts mit p&sub1;, p&sub2; ... aufeinanderfolgend, wobei alle möglichen Startpositionen getestet werden.
- In dem ApproxSequenceMatch-Algorithmus in Tabelle II wird die ApproxMatchRest- Funktion durch den Algorithmus nach Tabelle III definiert. Diese Funktion testet die Übereinstimmung der verbleibenden Sequenz, wobei ein Anfangsfehlerwert genutzt wird. Tabelle I Tabelle II Tabelle III
- Die Algorithmen in den Tabellen II und III sind in dem selben Pseudo-Code wie der Algorithmus in Tabelle I geschrieben.
- Die FindExact-Funktion, welche genutzt wird, um den Blattknoten zu finden, der mit dem ersten Wort in der Sequenz übereinstimmt, führt eine einfache Durchquerung des Baums aus, und ihre Laufzeit ist O p&sub1; , wobei p&sub1; das erste Wort in einer Anfragesequenz PQ bezeichnet. Das Berechnen des Edit-Abstands kann mittels einfacher dynamischer Programmierungen P ²-Zeit oder mittels verbesserter Versionen des Berechnungsalgorithmus (vergleiche E. Ukkonen, "Finding Approximate Patterns in Strings", Journal of Algorithmus, vol. 6, Seiten 132- 137 (1985)) in O(k)-Zeit ausgeführt werden (wobei k den Fehlerschwellwert bezeichnet).
- Wenn Σnocc(pi) die Gesamtsumme der Anzahl von Erscheinungen bzw. Auftritten jedes Worts pi in der Wortsequenz bezeichnet, beträgt die Laufzeit im ungünstigsten Fall O(kΣnocc(pi)).
- Abschließend wird die Implementierung einer Suchmaschine auf der Basis des erfindungsgemäßen Suchsystems kurz beschrieben. Eine auf dem erfindungsgemäßen Suchsystem basierende Suchmaschine wird insbesondere als eine Näherungs-Suchmaschine (ASE), ist als eine Suchmaschine zum Indixieren großer Dokumentsammlungen vorgesehen und liefert Algorithmen zum exakten und näherungsweisen Durchsuchen dieser Dokumentensammlungen. Die ASE liefert eine Datenstruktur zum Speichern großer Texte oder einer großen Sammlung von Dokumenten. Es wird darauf hingewiesen, daß die Datenstruktur aus Dokumenten erzeugt werden kann, welche zusätzliche Information enthalten, beispielsweise Abbildungen, Video, Ton, und der Text kann formatiert und/oder geändert werden. Die Datenstruktur ist identisch zu dem oben diskutierten dünnbesiedelten Wortabstand-Suffix-Baum, und es wird deshalb darauf hingewiesen, daß selbstverständlich die Wörter die Stichwörter des Suchsystems sind, weshalb der dünnbesiedelte Wortabstand-SuffixBaum auch als ein dünnbesiedelter Stichwortabstand-Suffix-Baum (KWS-Baum) bezeichnet werden kann. Die ASE umfaßt Algorithmen zum Indexieren von Dokumenten in dem KWS-Baum. Diese Algorithmen sind selbstverständlich nicht Teil des erfindungsgemäßen Suchsystems sondern sind dem Fachmann bekannt und in der Literatur beschrieben (vergleiche z. B. J Kärkkäinen & E. Ukkonen (vgl. oben) und D. R. Morrison (vgl. oben).
- Das erfindungsgemäße Suchsystem, wie es in der ASE genutzt wird, wendet Algorithmen sowohl für die exakte als auch die näherungsweise Übereinstimmung eines Musters in einem KWS-Baum an. Die in den Tabellen I und II oben angegebenen Algorithmen werden zum Testen der näherungsweisen Übereinstimmung eines Worts oder einer Wortsequenz genutzt, wobei der nicht gleichmäßige Edit-Abstand als ein Maß genutzt wird. Das Auffinden einer exakten Übereinstimmung des Stichworts p mit der Länge m in einem KWS-Baum ist bekannt und auf einfache Weise als ein einfaches Durchqueren der Baumstruktur implementierbar. Ein entsprechender Algorithmus für eine exakte Stichwortübereinstimmung ist Pseudo- Code in Tabelle IV gezeigt. Das erfindungsgemäße Suchsystem soll auch in der Lage sein, Algorithmen für eine exakte Stichwort-Sequenzübereinstimmung zu unterstützen. Algorithmen für eine exakte Stichwort-Sequenzübereinstimmung sind bekannt und können einfach implementiert werden, wie es beispielsweise mit dem Pseudo-Code in Tabelle V gezeigt ist. Der hier dargestellte Algorithmus findet die exakte Übereinstimmung des ersten Stichworts, sofern eine solche existiert. Er überprüft dann für alle Erscheinungen des ersten Stichworts, ob das zweite Stichwort mit dem zweiten Stichwort in der Anfrage übereinstimmt. Wenn dies der Fall ist, wird die MatchRest-Prozedur in Tabelle V genutzt, um zu bestimmen, ob die Erscheinung der ersten zwei Stichwörter in der gesamten Sequenz übereinstimmen. Für eine näherungsweise Stichwort-Übereinstimmung in einem KWS-Baum implementiert das Suchsystem den Algorithmus nach Tabelle I. Für eine näherungsweise Stichwort- Sequenzübereinstimmung implementiert das Suchsystem den Algorithmus nach Tabelle II, wobei ein erstes Stichwort nacheinander auf Übereinstimmung mit p1, p2 ... überprüft wird, alle möglichen Startpositionen getestet werden und die ApproxMatchRest-Funktion gemäß Tabelle III angewendet wird, um die Übereinstimmung einer Sequenz zu testen, die an einer bestimmten Position beginnt, und den Anfangsfehlerwert zu handhaben.
- Schließlich benötigt die ASE eine einfache Oberfläche, die es dem Nutzer ermöglicht, das Indexieren und das Anfragen in der Dokumentensammlung zu steuern. Die Oberfläche sollte darüber hinaus das Liefern von Statistiken der Dokumentensammlung ermöglichen und eine Netzwerkschnittstelle für einen Fernzugriff, beispielsweise über WWW, und eine lokale Server-Nutzerschnittstelle liefern.
- Die ASE mit dem erfindungsgemäßen Suchsystem sollte allgemein in einer Art ausgebildet sein, die das Hinzufügen neuer Indexier- und Suchalgorithmen leicht ermöglicht. Darüber hinaus sollte das Speichern von Extrainformationen über jedes Dokument oder über ein Stichwort auf einfache Weise implementierbar sein. Insbesondere sollte die Oberfläche unabhängig von der Datenstruktur und den Suchalgorithmen sein, so daß interne Änderungen hiervon keine Auswirkungen auf das Design der Oberfläche haben.
- Die Nutzung des erfindungsgemäßen Suchsystems in der ASE sollte so ausgestaltet sein, daß in der Datenstruktur ein Speicherüberhang so gering wie möglich ist. Darüber hinaus sollte das Suchen so geschaffen sein, daß es so schnell wie möglich ist. Üblicherweise werden Abweichungen zwischen diesen beiden Faktoren auftreten. Tabelle IV Tabelle V
- Zusammenfassend sollte eine ASE mit einem erfindungsgemäßen Suchsystem vier Hauptmodule umfassen:
- 1. Dokument-Indexiermodul DIM zum Indexieren von Dokumenten in der KWS- Baumstruktur. Dieses Modul sollte auch Erweiterungen zum Unterstützen mehrerer Dokumenttypen enthalten.
- 2. Datenspeichermodul DSM, welches auf einem dünnbesiedeltem Stichwortabstand-Suffix- Baum (KWS-Baum) basiert.
- 3. Suchalgorithmusmodul SAM zum Durchsuchen des KWS-Baums, welches Algorithmen für eine exakte und/oder eine näherungsweise Übereinstimmung von Wörtern bzw. Wortsequenzen umfaßt.
- 4. Benutzerschnittstelle-Oberflächenmodul FEM mit einer lokalen Server-Nutzerschnittstelle und einer Netzwerkschnittstelle für Fernabfragen.
- Die vier Module der ASE arbeiten zusammen, um eine komplette Suchmaschinen- Funktionalität zur Verfügung zu stellen. Der Datenfluß zwischen den verschiedenen Module ist in Fig. 7 gezeigt. Das Indexieren einer Sammlung von Dokumenten wird in dem Dokument-Indexiermodul DIM ausgeführt, welches Indexier-Algorithmen umfaßt. Dieses Modul ist selbstverständlich nicht Teil des erfindungsgemäßen Suchsystems. Indexier-Algorithmen, die genutzt werden können, sind Stand der Technik. Der in den Dokumenten gefundene Text wird an das Datenspeicher-DSM-Modul zum Speichern übergeben. Das Datenspeichermodul ist selbstverständlich nicht Teil des erfindungsgemäßen Suchsystems und basiert auf der KWS-Baumstruktur, wie bereits ausgeführt wurde. Das Suchalgorithmus-Modul SAM enthält Algorithmen zum Durchsuchen der Daten, die in dem Datenspeichermodul angeordnet sind. Dieses Modul implementiert das erfindungsgemäße Suchsystem und ermöglicht einen Suchprozeß, der die Datenstruktur nach Baum- und Knoteninformation abfragt, während Zustandsvariablen unterhalten werden. Das Oberflächenmodul kann selbstverständlich auf einem Arbeitsplatzrechner oder einem Personalcomputer oder dergleichen implementiert werden, wobei die oben beschriebene Funktionalität zur Verfügung gestellt wird.
- Wie bereits in der Einleitung ausgeführt wurde, wird darauf hingewiesen, daß das erfindungsgemäße Suchsystem als Software implementiert werden kann, die in einer geeigneten Hochsprache auf einem kommerziell verfügbaren Computersystem geschrieben ist, einschließlich Arbeitsplatzrechnern. Wie bereits ausgeführt, kann es auch in Form einer geeigneten Prozessoreinrichtung implementiert werden, welche zweckmäßig eine große Anzahl von parallelen Prozessoren umfaßt, die für eine näherungsweise Übereinstimmung mit einer großen Anzahl von Abfragewortsequenzen eine große Anzahl von Wortsequenzen parallel verarbeiten können. Die festen Betriebsparameter des Prozessors können dann in einem Niedrigcode eingegeben werden, während Stichwortsequenz-Eingaben der KWS-Baumstruktur eine sehr schnelle Verarbeitung von Anfragen für eine große Datenmenge erlauben. Das erfindungsgemäße Suchsystem ist deshalb im hohen Maße zum Ausführen von Suchen, beispielsweise in dem World Wide Web, geeignet, auch in einer KWS-Baumstruktur, die groß genug ist, um alle Dokumente zu indexieren, die gegenwärtig im World Wide Web verfügbar sind, und darüber hinaus den erwarteten Datenvolumenzuwachs des World Wide Webs in der Zukunft zu handhaben.
Claims (14)
1. Suchsystem für die Informationswiedergewinnung, insbesondere für Information, die in
Form von Text gespeichert ist, wobei ein Text T Wörter und/oder Symbole s und
Sequenzen S hieraus umfaßt, wobei die Informationswiedergewinnung mit einem gegebenen oder
variierenden Grad von Übereinstimmung zwischen einer Anfrage Q und
wiedergewonnener Information R abläuft, wobei die Anfrage Q Wörter und/oder Symbole q und
Sequenzen P hieraus umfaßt und wobei die Information R Wörter und/oder Symbole und
Sequenzen hieraus aus dem Text T umfaßt, wobei das Suchsystem eine Datenstruktur zum
Speichern wenigstens eines Teils des Textes T und ein Maß M umfaßt, welches den Grad
der Übereinstimmung zwischen der Anfrage Q und der wiedergewonnenen Information R
mißt, und wobei das Suchsystem einen Suchalgorithmus zur Ausführung einer Suche
realisiert, insbesondere einer Volltextsuche auf der Basis von Schlüsselwörtern kw, dadurch
gekennzeichnet, daß die Datenstruktur eine Baumstruktur in der Form eines nicht
gleichmäßigen verteilten dünnbesiedelten Suffix-Baums ST(T) zum Speichern von
Suffixen von Wörtern und/oder Symbolen s und Sequenzen S daraus in dem Text T umfaßt,
daß das Maß M eine Kombination aus einem Edit-Abstandsmaß D(s, q) für einen
ungefähren Grad an Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in dem Text T
bzw. einer Anfrage Q und ein Edit-Abstandsmaß Dws(S, P) für einen ungefähren Grad an
Übereinstimmung zwischen Sequenzen S von Wörtern und/oder Symbolen s in dem Text
T und einer Anfragesequenz P von Wörtern und/oder Symbolen q in der Anfrage Q
umfaßt, wobei das zuletzt genannte Edit-Abstandsmaß eine Gewicht-Kostenfunktion für
Editieroperationen umfaßt, welche Sequenzen von Wörtern und/oder Symbolen s in dem Text
T in die Sequenz P von Wörtern und/oder Symbolen q in der Anfrage Q transformiert,
wobei die Gewichtung mit einem Wert erfolgt, der proportional zu einer Änderung der
Länge der Sequenz S bei einer Transformation oder abhängig von der Größe der Wörter
und/oder Symbole s; q in den abzugleichenden Sequenzen S. P ist, daß der implementierte
Suchalgorithmus einen ersten Algorithmus zum Ermitteln des Grades der
Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in der Suffix-Baumdarstellung des
Textes T bzw. einer Anfrage Q und einen zweiten Algorithmus zum Ermitteln des Grades der
Übereinstimmung zwischen Sequenzen S; P von Wörtern und/oder Symbolen s; q in der
Suffix-Baumdarstellung des Textes T bzw. der Anfrage Q umfaßt, wobei der erste
und/oder zweite Algorithmus die Datenstrukturen mit Anfragen Q in der Form von
entweder Wörtern, Symbolen, Wortsequenzen oder Symbolsequenzen oder Kombinationen
daraus absucht, so daß Information R auf der Basis der Anfrage Q mit einem bestimmten
Grad an Übereinstimmung zwischen ersterer und letzterer wiedergewonnen wird, und daß
der Suchalgorithmus optional auch einen dritten Algorithmus zum Ermitteln der exakten
Übereinstimmung zwischen Wörtern und/oder Symbolen s; q in der Suffix-
Baumdarstellung des Textes T bzw. der Anfrage Q und/oder einen vierten Algorithmus
zum Ermitteln der exakten Übereinstimmung zwischen Sequenzen S; P von Wörtern
und/oder Symbolen s; q in der Suffix-Baumdarstellung des Textes T bzw. der Anfrage Q
umfaßt, wobei der dritte und/oder vierte Algorithmus die Datenstruktur mit Anfragen Q in
der Form von entweder Wörtern, Symbolen, Wortsequenzen oder Symbolsequenzen oder
Kombinationen daraus absuchen, so daß Information R auf der Basis der Anfrage Q mit
einer exakten Übereinstimmung zwischen ersterer und letzerer wiedergewonnen wird.
2. Suchsystem nach Anspruch 1, dadurch gekennzeichnet, daß der nicht gleichmäßig
verteilte dünnbesiedelte Suffix-Baum ST (T) ein dünnbesiedelter Wortabstand-Suffix-
Baum SSTws(T) ist, der nur eine Untermenge der Suffixe in dem Text T umfaßt.
3. Suchsystem nach Anspruch 2, dadurch gekennzeichnet, daß der dünnbesiedelte
Wortabstand-Suffix-Baum SSTws(T) ein dünnbesidelter Stichwort-Abstand-Suffix-Baum
SSTkws(T) ist.
4. Suchsystem nach Anspruch 3, dadurch gekennzeichnet, daß der erste Algorithmus zum
Erfassen des Grads der Stichwortübereinstimmung in einem dünnbesiedelten Stichwort-
Abstand-Suffix-Baum SSTkws(T) in Pseudo-Code wie folgt implementiert wird:
5. Suchsystem nach Anspruch 3, dadurch gekennzeichnet, daß der zweite
Algorithmus zum Bestimmen des Grads der Übereinstimmung einer Stichwortsequenz in einem
dünnbesiedelten Stichwort-Abstand-Suffix-Baum SSTkws(T) in Pseudo-Code wie folgt
implementiert wird:
6. Suchsystem nach Anspruch 7, dadurch gekennzeichnet, daß die Unterroutine
ApproxMatchRest des zweiten Algorithmus in Pseudo-Code wie folgt implementiert wird:
7. Suchsystem nach Anspruch 3, dadurch gekennzeichnet, daß der dritte Algorithmus zum
Ermitteln der exakten Stichwortübereinstimmung in einem dünnbesiedelten Stichwort-
Abstand-Suffix-Baum SSTkws(T) in Pseudo-Code wie folgt implementiert wird:
8. Suchsystem nach einem der Ansprüche 3 bis 7, dadurch gekennzeichnet, daß der
vierte Algorithmus zum Ermitteln der exakten Übereinstimmung einer Stichwortsequenz
in einem dünnbesiedelten Stichwort-Abstand-Suffix-Baum SSTkws(T) in Pseudo-Code wie
folgt implementiert wird:
9. Verfahren in einem Suchsystem für die Informationswiedergewinnung, insbesondere von
Information, die in Form von Text gespeichert ist, wobei ein Text T Wörter und/oder
Symbole s und Sequenzen S hieraus umfaßt, wobei die Informationswiedergewinnung mit
einem gegebenen oder variierenden Grad an Übereinstimmung zwischen einer Anfrage Q
und wiedergewonnene Information R abläuft, wobei die Anfrage Q Wörter und/oder
Symbole q und Sequenzen P hieraus umfaßt und wobei die Information R Wörter
und/oder Symbole und Sequenzen hieraus aus dem Text T umfaßt, wobei das Suchsystem
eine Datenstruktur zum Speichern wenigstens eines Teils des Textes T und ein Maß M
umfaßt, welches den Grad der Übereinstimmung zwischen der Anfrage Q und der
wiedergewonnenen Information R mißt, und wobei das Suchsystem einen Suchalgorithmus zur
Ausführung einer Suche realisiert, insbesondere einer Volltextsuche auf der Basis von
Schlüsselwörtern kw, wobei die Information in dem Text T in Wörter s und Wortsequenzen
S
aufgeteilt wird, wobei die Wörter Unterstrings des gesamten Textes sind, welche
durch Wortgrenzterme getrennt sind und eine Symbolsequenz bilden, wobei jedes Wort
als eine Symbolsequenz strukturiert ist, gekennzeichnet durch:
Erzeugen der Datenstruktur als einen dünnbesiedelten Wortabstand-Suffix-Baum
SSTws(T) eines Textes T zum Darstellen aller Suffixe, die bei einem Worttrennsymbol in
dem Text T beginnen;
Speichern von Sequenzinformation der Wörter s in dem Text T in dem dünnbesiedelten
Wortabstand-Suffix-Baum SSTws(T),
Erzeugen eines kombinierten Editabstandsmaßes M, daß ein Editabstandsmaß D(s, q) für
Wörter s in dem Text T und ein Anfragewort q in einer Anfrage Q und ein
wortgrößenabhängiges Editabstandsmaß Dws(S, P) für Wortsequenzen S in dem Text T und eine
Wortsequenz P in der Anfrage Q umfaßt, wobei das Editabstandsmaß Dws(S, P) die minimale
Summe der Kosten für Editieroperationen ist, welche eine Sequenz S in die Sequenz P
umwandeln, wobei die minimale Summe der Kosten die minimale Summe der
Kostenfunktionen für jede Editieroperation ist, gewichtet mit einem Wert, der proportional zur
Änderung in der Gesamtlänge der Sequenz S ist, oder mit dem Verhältnis der
momentanen Wortlänge und der mittleren Wortlänge in der Sequenz S; P; und
Bestimmen des Grads der Übereinstimmung zwischen Wörtern s, q durch Berechnen des
Editabstandsmaßes D(s, q) zwischen den Wörtern s der wiedergewonnenen Information R
und den Wörtern q einer Anfrage Q, oder in dem Fall, daß die Wörter s, q mehr als k
Fehler voneinander abweichen, Bestimmen des Grads der Übereinstimmung zwischen den
Wortfolgen SR; PQ der wiedergewonnenen Information R bzw. einer Anfrage Q durch
Berechnen des Editabstandsmaßes Dws(SR,PQ) für alle Übereinstimmungen.
10. Verfahren nach Anspruch 9, gekennzeichnet durch das zusätzliche Gewichten
einer Editieroperation, die ein Wort s in ein Wort q ändert, mit einem Parameter für die
Nähe zwischen den Zeichen der Wörter s; q, und somit Berücksichtigen der Ähnlichkeit
der Wörter s; q bei der Ermittlung der Kosten der in Rede stehenden Editieroperation.
11. Verfahren nach Anspruch 9, gekennzeichnet durch:
Begrenzen der Anzahl der Übereinstimmungen durch Berechnen des Editabstandsmaßes
Dws(SR, PQ) für eine beschränke Anzahl von Wörtern in der Anfragewortsequenz PQ.
12. Verfahren nach Anspruch 9, gekennzeichnet durch:
Definieren des Editabstandsmaßes D(s, q) zwischen Wörtern s und einem Wort q auf
rekursive Weise und Berechnen des Editabstandsmaßes D(s, q) mit Hilfe einer dynamischen
Programmierprozedur.
13. Verfahren nach Anspruch 9, gekennzeichnet durch:
Definieren des Editabstandsmaßes Dws(S, P) zwischen Sequenzen S und einer Sequenz P
auf rekursive Weise und Berechnen des Editabstandsmaßes Dws(S, P) mit Hilfe einer
dynamischen Programmierprozedur.
14. Verwendung des Suchsystems nach Anspruch 1 in einer Näherungs-Suchmaschine.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO983175A NO983175L (no) | 1998-07-10 | 1998-07-10 | Soekesystem for gjenfinning av data |
PCT/NO1999/000233 WO2000003315A2 (en) | 1998-07-10 | 1999-07-09 | A search system and method for retrieval of data, and the use thereof in a search engine |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69900854D1 DE69900854D1 (de) | 2002-03-14 |
DE69900854T2 true DE69900854T2 (de) | 2002-08-22 |
Family
ID=19902243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69900854T Expired - Lifetime DE69900854T2 (de) | 1998-07-10 | 1999-07-09 | Ein suchsystem und verfahren zum zurückholen von daten und die anwendung in einem suchgerät |
Country Status (20)
Country | Link |
---|---|
US (1) | US6377945B1 (de) |
EP (1) | EP1095326B1 (de) |
JP (1) | JP3581652B2 (de) |
KR (1) | KR100414236B1 (de) |
CN (1) | CN1317114A (de) |
AT (1) | ATE212736T1 (de) |
AU (2) | AU772525B2 (de) |
BR (1) | BR9912015B1 (de) |
CA (1) | CA2337079C (de) |
DE (1) | DE69900854T2 (de) |
DK (1) | DK1095326T3 (de) |
ES (1) | ES2173752T3 (de) |
HK (1) | HK1040784A1 (de) |
HU (1) | HUP0201630A2 (de) |
IL (1) | IL140606A0 (de) |
IS (1) | IS5796A (de) |
NO (1) | NO983175L (de) |
PL (1) | PL345714A1 (de) |
PT (1) | PT1095326E (de) |
WO (1) | WO2000003315A2 (de) |
Families Citing this family (123)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6564206B1 (en) * | 1998-10-05 | 2003-05-13 | Canon Kabushiki Kaisha | Information search apparatus and method, and storage medium |
US6584465B1 (en) * | 2000-02-25 | 2003-06-24 | Eastman Kodak Company | Method and system for search and retrieval of similar patterns |
US7127450B1 (en) * | 2000-05-02 | 2006-10-24 | International Business Machines Corporation | Intelligent discard in information access system |
US6704728B1 (en) * | 2000-05-02 | 2004-03-09 | Iphase.Com, Inc. | Accessing information from a collection of data |
US8478732B1 (en) | 2000-05-02 | 2013-07-02 | International Business Machines Corporation | Database aliasing in information access system |
US6745181B1 (en) * | 2000-05-02 | 2004-06-01 | Iphrase.Com, Inc. | Information access method |
US6711561B1 (en) * | 2000-05-02 | 2004-03-23 | Iphrase.Com, Inc. | Prose feedback in information access system |
US6718325B1 (en) * | 2000-06-14 | 2004-04-06 | Sun Microsystems, Inc. | Approximate string matcher for delimited strings |
US9699129B1 (en) | 2000-06-21 | 2017-07-04 | International Business Machines Corporation | System and method for increasing email productivity |
US6408277B1 (en) | 2000-06-21 | 2002-06-18 | Banter Limited | System and method for automatic task prioritization |
US8290768B1 (en) | 2000-06-21 | 2012-10-16 | International Business Machines Corporation | System and method for determining a set of attributes based on content of communications |
US7103838B1 (en) * | 2000-08-18 | 2006-09-05 | Firstrain, Inc. | Method and apparatus for extracting relevant data |
US7080073B1 (en) | 2000-08-18 | 2006-07-18 | Firstrain, Inc. | Method and apparatus for focused crawling |
US6915294B1 (en) * | 2000-08-18 | 2005-07-05 | Firstrain, Inc. | Method and apparatus for searching network resources |
US20020152202A1 (en) * | 2000-08-30 | 2002-10-17 | Perro David J. | Method and system for retrieving information using natural language queries |
GB2368414B (en) * | 2000-10-27 | 2002-09-11 | One Stop To Ltd | Searching procedures |
US7644057B2 (en) * | 2001-01-03 | 2010-01-05 | International Business Machines Corporation | System and method for electronic communication management |
US6681219B2 (en) * | 2001-03-29 | 2004-01-20 | Matsushita Electric Industrial Co., Ltd. | Method for keyword proximity searching in a document database |
US6976016B2 (en) * | 2001-04-02 | 2005-12-13 | Vima Technologies, Inc. | Maximizing expected generalization for learning complex query concepts |
US7136846B2 (en) | 2001-04-06 | 2006-11-14 | 2005 Keel Company, Inc. | Wireless information retrieval |
US7054855B2 (en) * | 2001-07-03 | 2006-05-30 | International Business Machines Corporation | Method and system for performing a pattern match search for text strings |
US7209913B2 (en) * | 2001-12-28 | 2007-04-24 | International Business Machines Corporation | Method and system for searching and retrieving documents |
US7343372B2 (en) * | 2002-02-22 | 2008-03-11 | International Business Machines Corporation | Direct navigation for information retrieval |
US7287026B2 (en) * | 2002-04-05 | 2007-10-23 | Oommen John B | Method of comparing the closeness of a target tree to other trees using noisy sub-sequence tree processing |
US6928445B2 (en) * | 2002-06-25 | 2005-08-09 | International Business Machines Corporation | Cost conversant classification of objects |
FI121583B (fi) * | 2002-07-05 | 2011-01-14 | Syslore Oy | Symbolijonon etsintä |
US6983280B2 (en) * | 2002-09-13 | 2006-01-03 | Overture Services Inc. | Automated processing of appropriateness determination of content for search listings in wide area network searches |
US7970621B2 (en) * | 2002-10-18 | 2011-06-28 | Cerner Innovation, Inc. | Automated order entry system and method |
US8495002B2 (en) * | 2003-05-06 | 2013-07-23 | International Business Machines Corporation | Software tool for training and testing a knowledge base |
US20050187913A1 (en) | 2003-05-06 | 2005-08-25 | Yoram Nelken | Web-based customer service interface |
CA2429909A1 (en) * | 2003-05-27 | 2004-11-27 | Cognos Incorporated | Transformation of tabular and cross-tabulated queries based upon e/r schema into multi-dimensional expression queries |
CN1567303A (zh) * | 2003-07-03 | 2005-01-19 | 富士通株式会社 | 结构文档信息块的自动分割方法和装置 |
US7640232B2 (en) | 2003-10-14 | 2009-12-29 | Aol Llc | Search enhancement system with information from a selected source |
US7165119B2 (en) | 2003-10-14 | 2007-01-16 | America Online, Inc. | Search enhancement system and method having rankings, explicitly specified by the user, based upon applicability and validity of search parameters in regard to a subject matter |
US7657423B1 (en) * | 2003-10-31 | 2010-02-02 | Google Inc. | Automatic completion of fragments of text |
US7418455B2 (en) * | 2003-11-26 | 2008-08-26 | International Business Machines Corporation | System and method for indexing weighted-sequences in large databases |
US7343378B2 (en) * | 2004-03-29 | 2008-03-11 | Microsoft Corporation | Generation of meaningful names in flattened hierarchical structures |
IL161874A (en) * | 2004-05-07 | 2012-09-24 | Yves Villaret | System and method for searching strings of records |
US20080077570A1 (en) * | 2004-10-25 | 2008-03-27 | Infovell, Inc. | Full Text Query and Search Systems and Method of Use |
EP1825395A4 (de) * | 2004-10-25 | 2010-07-07 | Yuanhua Tang | Volltextanfrage- und -suchsysteme und benutzungsverfahren |
US20060101504A1 (en) * | 2004-11-09 | 2006-05-11 | Veveo.Tv, Inc. | Method and system for performing searches for television content and channels using a non-intrusive television interface and with reduced text input |
US7895218B2 (en) | 2004-11-09 | 2011-02-22 | Veveo, Inc. | Method and system for performing searches for television content using reduced text input |
US20070266406A1 (en) * | 2004-11-09 | 2007-11-15 | Murali Aravamudan | Method and system for performing actions using a non-intrusive television with reduced text input |
CN1614607B (zh) * | 2004-11-25 | 2011-08-31 | 中国科学院计算技术研究所 | 垃圾邮件过滤的方法和*** |
CA2509496A1 (en) * | 2005-06-06 | 2006-12-06 | 3618633 Canada Inc. | Search-enhanced trie-based syntactic pattern recognition of sequences |
US9041744B2 (en) | 2005-07-14 | 2015-05-26 | Telecommunication Systems, Inc. | Tiled map display on a wireless device |
US7788266B2 (en) | 2005-08-26 | 2010-08-31 | Veveo, Inc. | Method and system for processing ambiguous, multi-term search queries |
US7779011B2 (en) * | 2005-08-26 | 2010-08-17 | Veveo, Inc. | Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results thereof |
US7644054B2 (en) * | 2005-11-23 | 2010-01-05 | Veveo, Inc. | System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and typographic errors |
US7882119B2 (en) * | 2005-12-22 | 2011-02-01 | Xerox Corporation | Document alignment systems for legacy document conversions |
US7664343B2 (en) * | 2006-01-23 | 2010-02-16 | Lockheed Martin Corporation | Modified Levenshtein distance algorithm for coding |
WO2007103938A2 (en) | 2006-03-06 | 2007-09-13 | Veveo, Inc. | Methods and systems for selecting and presenting content based on learned user preferences |
US8073860B2 (en) | 2006-03-30 | 2011-12-06 | Veveo, Inc. | Method and system for incrementally selecting and providing relevant search engines in response to a user query |
EP3822819A1 (de) | 2006-04-20 | 2021-05-19 | Veveo, Inc. | Benutzerschnittstellenverfahren und systeme zur auswahl und darstellung von inhalt auf der basis von benutzernavigation sowie auswahlaktionen in zusammenhang mit dem inhalt |
CN100401300C (zh) * | 2006-04-29 | 2008-07-09 | 上海世纪互联信息***有限公司 | 具有自动分类功能的搜索引擎 |
US20070260595A1 (en) * | 2006-05-02 | 2007-11-08 | Microsoft Corporation | Fuzzy string matching using tree data structure |
US7849078B2 (en) * | 2006-06-07 | 2010-12-07 | Sap Ag | Generating searchable keywords |
US8577328B2 (en) | 2006-08-21 | 2013-11-05 | Telecommunication Systems, Inc. | Associating metro street address guide (MSAG) validated addresses with geographic map data |
CA2989780C (en) * | 2006-09-14 | 2022-08-09 | Veveo, Inc. | Methods and systems for dynamically rearranging search results into hierarchically organized concept clusters |
JP4274221B2 (ja) * | 2006-10-02 | 2009-06-03 | ソニー株式会社 | 情報処理装置および方法、プログラム、並びに記録媒体 |
WO2008045690A2 (en) | 2006-10-06 | 2008-04-17 | Veveo, Inc. | Linear character selection display interface for ambiguous text input |
WO2008063987A2 (en) | 2006-11-13 | 2008-05-29 | Veveo, Inc. | Method of and system for selecting and presenting content based on user identification |
US8131722B2 (en) * | 2006-11-20 | 2012-03-06 | Ebay Inc. | Search clustering |
US20080172380A1 (en) * | 2007-01-17 | 2008-07-17 | Wojciech Czyz | Information retrieval based on information location in the information space. |
US8082240B2 (en) | 2007-02-28 | 2011-12-20 | Classe Qsl, S.L. | System for retrieving information units |
US8549424B2 (en) * | 2007-05-25 | 2013-10-01 | Veveo, Inc. | System and method for text disambiguation and context designation in incremental search |
US20090055436A1 (en) * | 2007-08-20 | 2009-02-26 | Olakunle Olaniyi Ayeni | System and Method for Integrating on Demand/Pull and Push Flow of Goods-and-Services Meta-Data, Including Coupon and Advertising, with Mobile and Wireless Applications |
US20090055242A1 (en) * | 2007-08-24 | 2009-02-26 | Gaurav Rewari | Content identification and classification apparatus, systems, and methods |
US20090098889A1 (en) * | 2007-09-11 | 2009-04-16 | Bob Barcklay | Wireless device location alerts on battery notification events |
US7716228B2 (en) * | 2007-09-25 | 2010-05-11 | Firstrain, Inc. | Content quality apparatus, systems, and methods |
US7904433B2 (en) * | 2007-10-09 | 2011-03-08 | O2Micro International Limited | Apparatus and methods for performing a rule matching |
WO2009061501A1 (en) * | 2007-11-09 | 2009-05-14 | Telecommunication Systems, Inc. | Points-of-interest panning on a displayed map with a persistent search on a wireless phone |
CN101246501B (zh) * | 2008-03-27 | 2010-06-23 | 腾讯科技(深圳)有限公司 | 一种聚合相同主题网络文档的方法及*** |
US20090265340A1 (en) * | 2008-04-07 | 2009-10-22 | Bob Barcklay | Proximity search for point-of-interest names combining inexact string match with an expanding radius search |
US8027990B1 (en) * | 2008-07-09 | 2011-09-27 | Google Inc. | Dynamic query suggestion |
US8027973B2 (en) * | 2008-08-04 | 2011-09-27 | Microsoft Corporation | Searching questions based on topic and focus |
US9424339B2 (en) | 2008-08-15 | 2016-08-23 | Athena A. Smyros | Systems and methods utilizing a search engine |
US7882143B2 (en) * | 2008-08-15 | 2011-02-01 | Athena Ann Smyros | Systems and methods for indexing information for a search engine |
US9092517B2 (en) * | 2008-09-23 | 2015-07-28 | Microsoft Technology Licensing, Llc | Generating synonyms based on query log data |
WO2010042172A1 (en) * | 2008-10-06 | 2010-04-15 | Telecommunication Systems, Inc. | Probabilistic reverse geocoding |
US8594627B2 (en) | 2008-10-06 | 2013-11-26 | Telecommunications Systems, Inc. | Remotely provisioned wirelessly proxy |
DE102008062830B3 (de) * | 2008-12-23 | 2010-07-22 | Cerebrix Gmbh | Vorrichtung und Verfahren zum Speichern, Suchen und Darstellen von Informationen |
US20100287177A1 (en) * | 2009-05-06 | 2010-11-11 | Foundationip, Llc | Method, System, and Apparatus for Searching an Electronic Document Collection |
US20100287148A1 (en) * | 2009-05-08 | 2010-11-11 | Cpa Global Patent Research Limited | Method, System, and Apparatus for Targeted Searching of Multi-Sectional Documents within an Electronic Document Collection |
US20100293179A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Identifying synonyms of entities using web search |
US8533203B2 (en) * | 2009-06-04 | 2013-09-10 | Microsoft Corporation | Identifying synonyms of entities using a document collection |
US9166714B2 (en) | 2009-09-11 | 2015-10-20 | Veveo, Inc. | Method of and system for presenting enriched video viewing analytics |
US8364679B2 (en) * | 2009-09-17 | 2013-01-29 | Cpa Global Patent Research Limited | Method, system, and apparatus for delivering query results from an electronic document collection |
US20110082839A1 (en) * | 2009-10-02 | 2011-04-07 | Foundationip, Llc | Generating intellectual property intelligence using a patent search engine |
WO2011056086A2 (en) * | 2009-11-05 | 2011-05-12 | Google Inc. | Statistical stemming |
US20110119250A1 (en) * | 2009-11-16 | 2011-05-19 | Cpa Global Patent Research Limited | Forward Progress Search Platform |
US8244754B2 (en) | 2010-02-01 | 2012-08-14 | International Business Machines Corporation | System and method for object searching in virtual worlds |
US20110191332A1 (en) | 2010-02-04 | 2011-08-04 | Veveo, Inc. | Method of and System for Updating Locally Cached Content Descriptor Information |
US8339094B2 (en) * | 2010-03-11 | 2012-12-25 | GM Global Technology Operations LLC | Methods, systems and apparatus for overmodulation of a five-phase machine |
US8805840B1 (en) | 2010-03-23 | 2014-08-12 | Firstrain, Inc. | Classification of documents |
US11367295B1 (en) | 2010-03-23 | 2022-06-21 | Aurea Software, Inc. | Graphical user interface for presentation of events |
US10546311B1 (en) | 2010-03-23 | 2020-01-28 | Aurea Software, Inc. | Identifying competitors of companies |
US10643227B1 (en) | 2010-03-23 | 2020-05-05 | Aurea Software, Inc. | Business lines |
US9600566B2 (en) | 2010-05-14 | 2017-03-21 | Microsoft Technology Licensing, Llc | Identifying entity synonyms |
EP2423830A1 (de) | 2010-08-25 | 2012-02-29 | Omikron Data Quality GmbH | Verfahren zum Suchen in einer Vielzahl von Datensätzen und Suchmaschine |
US8745061B2 (en) * | 2010-11-09 | 2014-06-03 | Tibco Software Inc. | Suffix array candidate selection and index data structure |
US20130262485A1 (en) * | 2010-12-14 | 2013-10-03 | The Regents Of The University Of California | High Efficiency Prefix Search Algorithm Supporting Interactive, Fuzzy Search on Geographical Structured Data |
US9069767B1 (en) | 2010-12-28 | 2015-06-30 | Amazon Technologies, Inc. | Aligning content items to identify differences |
US9846688B1 (en) | 2010-12-28 | 2017-12-19 | Amazon Technologies, Inc. | Book version mapping |
US8798366B1 (en) * | 2010-12-28 | 2014-08-05 | Amazon Technologies, Inc. | Electronic book pagination |
US9881009B1 (en) | 2011-03-15 | 2018-01-30 | Amazon Technologies, Inc. | Identifying book title sets |
US8782042B1 (en) | 2011-10-14 | 2014-07-15 | Firstrain, Inc. | Method and system for identifying entities |
US8745019B2 (en) | 2012-03-05 | 2014-06-03 | Microsoft Corporation | Robust discovery of entity synonyms using query logs |
US9292505B1 (en) | 2012-06-12 | 2016-03-22 | Firstrain, Inc. | Graphical user interface for recurring searches |
US10032131B2 (en) | 2012-06-20 | 2018-07-24 | Microsoft Technology Licensing, Llc | Data services for enterprises leveraging search system data assets |
US9594831B2 (en) | 2012-06-22 | 2017-03-14 | Microsoft Technology Licensing, Llc | Targeted disambiguation of named entities |
US9229924B2 (en) | 2012-08-24 | 2016-01-05 | Microsoft Technology Licensing, Llc | Word detection and domain dictionary recommendation |
KR101355254B1 (ko) * | 2012-10-22 | 2014-01-28 | 인하대학교 산학협력단 | 접미사 트리의 병렬 생성을 위한 트라이 자료구조 기반 접미사 병렬 분할 방법 |
US9256593B2 (en) | 2012-11-28 | 2016-02-09 | Wal-Mart Stores, Inc. | Identifying product references in user-generated content |
US10592480B1 (en) | 2012-12-30 | 2020-03-17 | Aurea Software, Inc. | Affinity scoring |
US8935272B2 (en) | 2013-03-17 | 2015-01-13 | Alation, Inc. | Curated answers community automatically populated through user query monitoring |
US9589074B2 (en) | 2014-08-20 | 2017-03-07 | Oracle International Corporation | Multidimensional spatial searching for identifying duplicate crash dumps |
CN105446957B (zh) | 2015-12-03 | 2018-07-20 | 小米科技有限责任公司 | 相似性确定方法、装置及终端 |
CN108595584B (zh) * | 2018-04-18 | 2022-06-07 | 卓望数码技术(深圳)有限公司 | 一种基于数字标记的汉字输出方法和*** |
US10761965B2 (en) * | 2018-09-28 | 2020-09-01 | Atlassian Pty Ltd. | Detecting method calls based on stack trace data |
CN110517050A (zh) * | 2019-08-12 | 2019-11-29 | 太平洋医疗健康管理有限公司 | 一种医保反欺诈串换编码挖掘***及方法 |
CN111415708B (zh) * | 2020-03-24 | 2023-05-05 | 山东大学 | 双缓冲模型实现大规模数据库聚类方法及*** |
CN111860443A (zh) * | 2020-07-31 | 2020-10-30 | 上海掌学教育科技有限公司 | 语文作业题目文字识别方法、搜索方法、服务器及*** |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU620994B2 (en) * | 1989-07-12 | 1992-02-27 | Digital Equipment Corporation | Compressed prefix matching database searching |
WO1992015954A1 (en) | 1991-03-08 | 1992-09-17 | Red Brick System | Compaction of a querying in relational databases |
US5953006A (en) * | 1992-03-18 | 1999-09-14 | Lucent Technologies Inc. | Methods and apparatus for detecting and displaying similarities in large data sets |
US5511159A (en) * | 1992-03-18 | 1996-04-23 | At&T Corp. | Method of identifying parameterized matches in a string |
US5412807A (en) * | 1992-08-20 | 1995-05-02 | Microsoft Corporation | System and method for text searching using an n-ary search tree |
JPH07210569A (ja) * | 1994-01-19 | 1995-08-11 | Oki Electric Ind Co Ltd | 情報検索方法および情報検索装置 |
DE69422935T2 (de) * | 1994-06-30 | 2000-08-17 | International Business Machines Corp., Armonk | Verfahren und vorrichtung zum vergleichen von datensequenzen variabler länge |
JP2829259B2 (ja) * | 1994-09-14 | 1998-11-25 | 株式会社東芝 | データ処理装置、データ検索装置、データ処理方法及びデータ検索方法 |
US5724571A (en) * | 1995-07-07 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for generating query responses in a computer-based document retrieval system |
KR980004154A (ko) * | 1996-06-29 | 1998-03-30 | 김광호 | 접두어를 이용한 전자 사전 및 그에 접합한 압축 및 검색 방법 |
KR100284777B1 (ko) * | 1997-11-19 | 2001-03-15 | 정선종 | 지도 용어 사전을 위한 트라이 사전과 그 등록 및 검색 방법 |
-
1998
- 1998-07-10 NO NO983175A patent/NO983175L/no not_active Application Discontinuation
-
1999
- 1999-07-09 PL PL99345714A patent/PL345714A1/xx unknown
- 1999-07-09 ES ES99933296T patent/ES2173752T3/es not_active Expired - Lifetime
- 1999-07-09 WO PCT/NO1999/000233 patent/WO2000003315A2/en not_active Application Discontinuation
- 1999-07-09 BR BRPI9912015-1A patent/BR9912015B1/pt not_active IP Right Cessation
- 1999-07-09 CN CN99810507A patent/CN1317114A/zh active Pending
- 1999-07-09 US US09/486,726 patent/US6377945B1/en not_active Expired - Lifetime
- 1999-07-09 PT PT99933296T patent/PT1095326E/pt unknown
- 1999-07-09 CA CA002337079A patent/CA2337079C/en not_active Expired - Lifetime
- 1999-07-09 IL IL14060699A patent/IL140606A0/xx unknown
- 1999-07-09 AU AU49370/99A patent/AU772525B2/en not_active Expired
- 1999-07-09 AT AT99933296T patent/ATE212736T1/de not_active IP Right Cessation
- 1999-07-09 DE DE69900854T patent/DE69900854T2/de not_active Expired - Lifetime
- 1999-07-09 HU HU0201630A patent/HUP0201630A2/hu unknown
- 1999-07-09 JP JP2000559494A patent/JP3581652B2/ja not_active Expired - Lifetime
- 1999-07-09 EP EP99933296A patent/EP1095326B1/de not_active Expired - Lifetime
- 1999-07-09 DK DK99933296T patent/DK1095326T3/da active
- 1999-07-09 KR KR10-2001-7000436A patent/KR100414236B1/ko not_active IP Right Cessation
-
2000
- 2000-12-29 IS IS5796A patent/IS5796A/is unknown
-
2002
- 2002-03-19 HK HK02102107.4A patent/HK1040784A1/zh unknown
-
2004
- 2004-07-29 AU AU2004203480A patent/AU2004203480A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
DK1095326T3 (da) | 2002-05-13 |
WO2000003315A2 (en) | 2000-01-20 |
CA2337079C (en) | 2006-07-04 |
CN1317114A (zh) | 2001-10-10 |
US6377945B1 (en) | 2002-04-23 |
ES2173752T3 (es) | 2002-10-16 |
KR20010071841A (ko) | 2001-07-31 |
HUP0201630A2 (en) | 2002-08-28 |
AU2004203480A1 (en) | 2004-08-26 |
HK1040784A1 (zh) | 2002-06-21 |
BR9912015A (pt) | 2001-04-10 |
PL345714A1 (en) | 2002-01-02 |
ATE212736T1 (de) | 2002-02-15 |
CA2337079A1 (en) | 2000-01-20 |
BR9912015B1 (pt) | 2011-12-13 |
WO2000003315A3 (en) | 2000-02-24 |
DE69900854D1 (de) | 2002-03-14 |
IL140606A0 (en) | 2002-02-10 |
KR100414236B1 (ko) | 2004-01-07 |
JP2002520712A (ja) | 2002-07-09 |
EP1095326B1 (de) | 2002-01-30 |
JP3581652B2 (ja) | 2004-10-27 |
AU772525B2 (en) | 2004-04-29 |
IS5796A (is) | 2000-12-29 |
PT1095326E (pt) | 2002-07-31 |
EP1095326A1 (de) | 2001-05-02 |
AU4937099A (en) | 2000-02-01 |
NO983175L (no) | 2000-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69900854T2 (de) | Ein suchsystem und verfahren zum zurückholen von daten und die anwendung in einem suchgerät | |
DE69804495T2 (de) | Informationsmanagement und wiedergewinnung von schlüsselbegriffen | |
DE3788750T2 (de) | Schätzeinrichtung des Indexschlüsselbereiches. | |
JP4944405B2 (ja) | 情報検索システムにおけるフレーズに基づくインデックス化方法 | |
JP4944406B2 (ja) | フレーズに基づく文書説明の生成方法 | |
JP5175005B2 (ja) | 情報検索システムにおけるフレーズに基づく検索方法 | |
DE69631457T2 (de) | Vorrichtung und verfahren zum übertragbaren indexieren von dokumenten gemäss einer n-gram-wortzerlegung | |
JP4976666B2 (ja) | 情報検索システムにおけるフレーズ識別方法 | |
DE69811066T2 (de) | Datenzusammenfassungsgerät. | |
DE69229204T2 (de) | Iteratives Verfahren zum Suchen von Satzteilen und Informationsauffindungssystem, welches dieses benützt | |
DE69904588T2 (de) | Datenbankzugangswerkzeug | |
DE69432575T2 (de) | Dokumentenerkennungssystem mit verbesserter Wirksamkeit der Dokumentenerkennung | |
DE69820343T2 (de) | Linguistisches Suchsystem | |
DE69032693T2 (de) | Suchverfahren zum Identifizieren des nächstgleichen Datensatzes eines Datenbankverzeichnisses | |
DE68927743T2 (de) | Sortier-/Mischausgabe | |
DE69834386T2 (de) | Textverarbeitungsverfahren und rückholsystem und verfahren | |
DE69032712T2 (de) | Hierarchischer vorsuch-typ dokument suchverfahren, vorrichtung dazu, sowie eine magnetische plattenanordnung für diese vorrichtung | |
DE102007037646B4 (de) | Computerspeichersystem und Verfahren zum Indizieren, Durchsuchen und zur Datenwiedergewinnung von Datenbanken | |
DE19954534A1 (de) | Rückwärtsindexieren von Zeichenketten in einer relationalen Datenbank zum Suchen mit Joker | |
DE69934195T2 (de) | Identifikation einer Wortgruppe durch modifizierte Schlüsselwörter, die aus Transformationen von aufeinanderfolgenden Suffixen erzeugt sind | |
DE69733294T2 (de) | Einrichtung und Verfahren zum Zugriff auf eine Datenbank | |
DE69933123T2 (de) | Zugriff auf eine semi-strukturierte datenbank | |
DE2000340A1 (de) | Verfahren und Vorrichtung zum Suchen verdichteter gespeicherter Informationen | |
EP1276056A1 (de) | Verfahren zum Verwalten einer Datenbank | |
DE69330908T2 (de) | Kompakt-gespeicherte Wortgruppen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: OVERTURE SERVICES, INC., PASADENA, CALIF., US |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: YAHOO| INC. (N.D.GES.D. STAATES DELAWARE), SUN, US |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER, |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: BOEHMERT & BOEHMERT, 80336 MUENCHEN |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: WEICKMANN & WEICKMANN, 81679 MUENCHEN |