Volltextsuche - Full-text search

In Textsuche , Volltextsuche bezieht sich auf Techniken für einen einzelnen Benutzer Computer -stored Dokument oder eine Sammlung in einem Volltext - Datenbank . Die Volltextsuche unterscheidet sich von Suchen, die auf Metadaten oder auf Teilen der in Datenbanken abgebildeten Originaltexte (wie Titel, Zusammenfassungen, ausgewählte Abschnitte oder bibliografische Angaben) basieren .

Bei einer Volltextsuche untersucht eine Suchmaschine alle Wörter in jedem gespeicherten Dokument, während sie versucht, Suchkriterien (z. B. von einem Benutzer angegebenen Text) zu erfüllen. Volltextsuchtechniken wurden in den 1990er Jahren in bibliografischen Online- Datenbanken üblich . Viele Websites und Anwendungsprogramme (wie Textverarbeitungssoftware ) bieten Volltextsuchfunktionen. Einige Websuchmaschinen wie AltaVista verwenden Volltextsuchtechniken, während andere nur einen Teil der von ihren Indexierungssystemen untersuchten Webseiten indizieren.

Indizierung

Bei einer geringen Anzahl von Dokumenten ist es der Volltext-Suchmaschine möglich, den Inhalt der Dokumente bei jeder Abfrage direkt zu scannen , eine Strategie, die als „ serielles Scannen “ bezeichnet wird. Dies ist, was einige Tools, wie grep , bei der Suche tun.

Wenn jedoch die Anzahl der zu durchsuchenden Dokumente potenziell groß oder die Menge der durchzuführenden Suchabfragen erheblich ist, wird das Problem der Volltextsuche häufig in zwei Aufgaben unterteilt: Indizierung und Suche. Die Indexierungsstufe scannt den Text aller Dokumente und erstellt eine Liste von Suchbegriffen (oft als Index bezeichnet , aber korrekter als Konkordanz bezeichnet ). In der Suchphase wird bei der Durchführung einer bestimmten Abfrage nur auf den Index und nicht auf den Text der Originaldokumente verwiesen.

Der Indexer nimmt für jeden in einem Dokument gefundenen Begriff oder jedes Wort einen Eintrag im Index vor und notiert möglicherweise seine relative Position innerhalb des Dokuments. Normalerweise wird der Indexer ignoriert Stoppwörter (wie „die“ und „und“) , die beide gemeinsam sind und nicht ausreichend aussagekräftig bei der Suche nützlich zu sein. Einige Indexer verwenden auch sprachspezifisches Stemming für die zu indexierenden Wörter. Zum Beispiel werden die Wörter "drives", "drive" und "driven" im Index unter dem einzigen Begriffswort "drive" aufgezeichnet.

Der Kompromiss zwischen Präzision und Rückruf

Diagramm einer Suche mit geringer Genauigkeit und geringer Rückrufzeit

Recall misst die Quantität relevanter Ergebnisse, die von einer Suche zurückgegeben werden, während Precision das Maß für die Qualität der zurückgegebenen Ergebnisse ist. Recall ist das Verhältnis der zurückgegebenen relevanten Ergebnisse zu allen relevanten Ergebnissen. Präzision ist die Anzahl der zurückgegebenen relevanten Ergebnisse zur Gesamtzahl der zurückgegebenen Ergebnisse.

Das Diagramm rechts stellt eine Suche mit geringer Genauigkeit und geringer Wiederaufrufbarkeit dar. Im Diagramm stellen die roten und grünen Punkte die Gesamtpopulation potenzieller Suchergebnisse für eine bestimmte Suche dar. Rote Punkte stehen für irrelevante Ergebnisse und grüne Punkte für relevante Ergebnisse. Die Relevanz wird durch die Nähe der Suchergebnisse zum Mittelpunkt des inneren Kreises angezeigt. Von allen angezeigten möglichen Ergebnissen werden diejenigen, die tatsächlich von der Suche zurückgegeben wurden, hellblau hinterlegt. Im Beispiel wurde nur 1 relevantes Ergebnis von 3 möglichen relevanten Ergebnissen zurückgegeben, daher ist der Rückruf ein sehr niedriges Verhältnis von 1/3 oder 33%. Die Genauigkeit für das Beispiel ist ein sehr niedriges 1/4 oder 25 %, da nur 1 der 4 zurückgegebenen Ergebnisse relevant war.

Aufgrund der Mehrdeutigkeiten der natürlichen Sprache enthalten Volltextsuchsysteme in der Regel Optionen wie Stoppwörter , um die Genauigkeit zu erhöhen, und Wortstammbildung , um die Erinnerung zu erhöhen. Controlled-Vokabular der Suche hilft auch niedrige Genauigkeit Probleme zu lindern , indem Tagging Dokumente so , dass Unklarheiten beseitigt werden. Der Kompromiss zwischen Präzision und Recall ist einfach: Eine Erhöhung der Präzision kann die Gesamterinnerung verringern, während eine Erhöhung der Recall-Präzision die Präzision senkt.

Falsch-Positiv-Problem

Bei der Volltextsuche werden wahrscheinlich viele Dokumente gefunden, die für die beabsichtigte Suchfrage nicht relevant sind . Solche Dokumente werden als False Positives bezeichnet (siehe Fehler Typ I ). Das Auffinden irrelevanter Dokumente wird oft durch die inhärente Mehrdeutigkeit der natürlichen Sprache verursacht . Im Beispieldiagramm rechts werden False Positives durch die irrelevanten Ergebnisse (rote Punkte) dargestellt, die von der Suche zurückgegeben wurden (auf hellblauem Hintergrund).

Auf Bayes'schen Algorithmen basierende Clustering-Techniken können dazu beitragen, Fehlalarme zu reduzieren. Für den Suchbegriff „Bank“ kann durch Clustering das Dokumenten-/Datenuniversum in „Finanzinstitut“, „Ort zum Sitzen“, „Ort zum Lagern“ etc. kategorisiert werden. Suchbegriffe oder ein Suchergebnis können in eine oder mehrere der Kategorien eingeordnet werden. Diese Technik wird im E-Discovery- Bereich umfassend eingesetzt .

Leistungsverbesserungen

Den Mängeln der Freitextsuche wurde auf zweierlei Weise begegnet: Durch die Bereitstellung von Tools, die es ihnen ermöglichen, ihre Suchfragen präziser zu formulieren, und durch die Entwicklung neuer Suchalgorithmen, die die Suchpräzision verbessern.

Verbesserte Abfragetools

  • Schlüsselwörter . Dokumentersteller (oder geschulte Indexer) werden gebeten, eine Liste von Wörtern bereitzustellen, die das Thema des Textes beschreiben, einschließlich Synonymen von Wörtern, die dieses Thema beschreiben. Schlüsselwörter verbessern die Erinnerung, insbesondere wenn die Schlüsselwortliste ein Suchwort enthält, das nicht im Dokumenttext enthalten ist.
  • Feldeingeschränkte Suche . Einige Suchmaschinen ermöglichen es Benutzern, die Freitextsuche auf ein bestimmtes Feld innerhalb eines gespeicherten Datensatzes zu beschränken , beispielsweise "Titel" oder "Autor".
  • Boolesche Abfragen . Suchen, die boolesche Operatoren verwenden (z. B. "encyclopedia" AND "online" NOT "Encarta" ) können die Genauigkeit einer Freitextsuche drastisch erhöhen. Der AND- Operator sagt praktisch: "Rufen Sie kein Dokument ab, es sei denn, es enthält diese beiden Begriffe." Der NOT- Operator sagt praktisch : "Keine Dokumente abrufen, die dieses Wort enthalten." Wenn die Abrufliste zu wenige Dokumente abruft, kann der ODER- Operator verwendet werden, um den Rückruf zu erhöhen; Betrachten Sie zum Beispiel "Enzyklopädie" UND "online" ODER "Internet" NICHT "Encarta" . Bei dieser Suche werden Dokumente zu Online-Enzyklopädien gefunden, die den Begriff "Internet" anstelle von "online" verwenden. Diese Präzisionssteigerung ist sehr häufig kontraproduktiv, da sie meist mit einem dramatischen Erinnerungsverlust einhergeht.
  • Phrasensuche . Bei einer Phrasensuche werden nur die Dokumente gefunden, die eine bestimmte Phrase enthalten, z. B. "Wikipedia, die freie Enzyklopädie".
  • Konzeptsuche . Eine Suche, die auf Mehrwortkonzepten basiert, zum Beispiel Verarbeitung von zusammengesetzten Begriffen . Diese Art der Suche wird in vielen E-Discovery-Lösungen immer beliebter.
  • Konkordanzsuche . Eine Konkordanzsuche erzeugt eine alphabetische Liste aller Hauptwörter, die in einem Text vorkommen, mit ihrem unmittelbaren Kontext.
  • Umgebungssuche . Bei einer Phrasensuche werden nur Dokumente gefunden, die zwei oder mehr Wörter enthalten, die durch eine bestimmte Anzahl von Wörtern getrennt sind. eine Suche nach "Wikipedia" WITHIN2 "free" würde nur diejenigen Dokumente finden, in denen die Wörter "Wikipedia" und "free" innerhalb von zwei Wörtern voneinander vorkommen.
  • Regulärer Ausdruck . Ein regulärer Ausdruck verwendet eine komplexe , aber leistungsstarke Abfrage- Syntax , die Abfragebedingungen genau spezifizieren verwendet werden kann.
  • Fuzzy - Suche wird für Dokument suchen, die den angegebenen Bedingungen und einige Variationen um sie übereinstimmen (mit zum Beispiel Editierdistanz zu Schwelle der mehrere Variation)
  • Wildcard-Suche . Eine Suche, bei der ein oder mehrere Zeichen in einer Suchabfrage durch ein Platzhalterzeichen wie ein Sternchen ersetzt werden . Wenn Sie beispielsweise das Sternchen in einer Suchanfrage "s*n" verwenden , finden Sie in einem Text "Sünde", "Sohn", "Sonne" usw.

Verbesserte Suchalgorithmen

Der von Google entwickelte PageRank- Algorithmus hebt Dokumente hervor, auf die andere Webseiten verlinkt sind. Weitere Beispiele finden Sie unter Suchmaschine .

Software

Das Folgende ist eine unvollständige Liste verfügbarer Softwareprodukte, deren Hauptzweck darin besteht, eine Volltextindizierung und -suche durchzuführen. Einige von ihnen werden von detaillierten Beschreibungen ihrer Funktionsweise oder internen Algorithmen begleitet, die zusätzliche Einblicke in die Durchführung der Volltextsuche geben können.

Verweise

Siehe auch