Einzigartige Muster aufdecken: Ein Leitfaden zur Aggregation aussagekräftiger Begriffe in Elasticsearch

Lernen Sie, wie Sie mithilfe der wichtigen Begriffe der Aggregation Erkenntnisse aus Ihren Daten gewinnen können.

Neu bei Elasticsearch? Nehmen Sie an unserem Webinar „Erste Schritte mit Elasticsearch“ teil. Sie können jetzt auch eine kostenlose Cloud-Testversion starten oder Elastic auf Ihrem Rechner testen.

In Elasticsearch geht die signifikante Termaggregation über die häufigsten Begriffe hinaus, um statistisch ungewöhnliche Werte in einem Datensatz zu finden. Dies ermöglicht es uns, wertvolle Erkenntnisse und nicht offensichtliche Muster zu entdecken. Eine signifikante Termaggregation liefert eine Antwort mit zwei nützlichen Parametern:

  • bg_count (Hintergrundzählung): Anzahl der im übergeordneten Datensatz gefundenen Dokumente
  • doc_count: Anzahl der im Ergebnisdatensatz gefundenen Dokumente

In einem Datensatz zu Handyverkäufen können wir beispielsweise nach relevanten Begriffen im Zusammenhang mit den iPhone 16-Verkäufen suchen, etwa so:

Die Antwort lautet dann:

Houston gehört weder zu den Top 10 Städten im gesamten Datensatz noch ist Houston die Top-Stadt für das iPhone 16. Die Auswertung der signifikanten Terme ergab jedoch, dass das iPhone 16 in dieser Stadt im Vergleich zu den übrigen Daten überproportional häufig gekauft wird . Lassen Sie uns die Zahlen genauer betrachten:

  • Auf höchster Ebene:
    • Dokumentenanzahl: 122 – Die Abfrage ergab insgesamt 122 Treffer.
    • bg_count: 424 — Der Hintergrundsatz (alle Verkaufsbelege) enthält 424 Belege
  • Im Houston-Eimer:
    • Dokumentanzahl: 12 — Houston erscheint in 12 der 122 Suchergebnisse
    • bg_count: 14 — Houston erscheint in 14 der insgesamt 424 Dokumente im Hintergrunddatensatz

Dies bedeutet, dass von insgesamt 424 Käufen nur 14 in Houston stattfanden; das sind 3,3 % aller Käufe. Betrachtet man jedoch nur die Verkaufszahlen des iPhone 16, so stellt man fest, dass 12 von 122 Verkäufen in Houston stattfanden, was 9,8 % entspricht – das Dreifache des Wertes im gesamten Datensatz; das ist bemerkenswert!

So sieht das in einer Visualisierung aus: Gesamtumsatz pro Stadtregion.

Wir sehen, dass es in Houston 14 Verkäufe gibt, womit Houston gemessen an den Verkäufen die 14. höchste Stadt im Datensatz ist.

Wenn wir nun einen Filter anwenden, der nur die Verkaufszahlen des iPhone 16 berücksichtigt, verzeichnen wir 12 Verkäufe in Houston. Damit ist Houston die zweitmeisten Städte mit den Verkaufszahlen für dieses spezielle Modell:

Die wichtigsten Begriffe der Aggregation verstehen

Laut Elastic-Dokumentation sind die wichtigsten Begriffe Aggregation:

„(Findet) Begriffe, deren Popularität sich im Vergleich zwischen einem Vordergrund- und einem Hintergrunddatensatz signifikant verändert hat.“

Das bedeutet, dass statistische Kennzahlen verwendet werden, um die Häufigkeit eines Begriffs in einer Teilmenge der Daten (der Vordergrundmenge) mit der Häufigkeit desselben Begriffs in der übergeordneten Datenmenge (der Hintergrundmenge) zu vergleichen. Auf diese Weise spiegelt die Bewertung die statistische Signifikanz wider und nicht, wie häufig ein Begriff in den Daten vorkommt.

Die Hauptunterschiede zwischen einer Aggregation signifikanter Terme und einer normalen Termaggregation sind:

  • Signifikante Terme vergleichen eine Teilmenge der Daten, während eine Termaggregation nur mit dem aus der Abfrage resultierenden Datensatz arbeitet.
  • Die Ergebnisse einer Termaggregation sind die häufigsten Terme im Datensatz, während die Ergebnisse einer signifikanten Termaggregation die häufigen Terme ignorieren, um herauszufinden, was den Datensatz einzigartig macht.
  • Signifikante Terme können einen größeren Einfluss auf die Leistung haben, da sie Daten von der Festplatte und nicht aus dem Arbeitsspeicher abrufen müssen, wie es bei der Termaggregation der Fall ist.

Praktische Anwendung (Verbraucherverhaltensanalyse)

Datenaufbereitung für die Analyse

Für diese Analyse haben wir einen synthetischen Datensatz über Handyverkäufe erstellt, der Preis, technische Daten des Telefons, demografische Daten des Käufers und Kundenfeedback enthält. Wir haben außerdem Einbettungen aus dem Feedback der Nutzer generiert, um später eine semantische Abfrage durchführen zu können. Wir verwendeten das mehrsprachige e5 small model, das auf Elasticsearch standardmäßig verfügbar ist.

So verwenden Sie diesen Datensatz in Elasticsearch:

  1. Laden Sie die CSV-Datei ( hier herunterladbar) mit der Kibana-Funktion „Datendateien hochladen“ hoch.
  2. Richten Sie ein semantisches Feld namens „Einbettung“ ein, wie in diesem Blog beschrieben. multilingual-e5-small model
  3. Schließen Sie den Import mit den Feldtyp-Standardwerten ab (Schlüsselwort für jedes Feld außer purchase_date und user_feedback). Um die hier präsentierten Abfragen ausführen zu können, müssen Sie unbedingt den Indexnamen phone_sales_analysis hinzufügen.

Der Schwerpunkt dieser Analyse liegt auf der Frage : „Was unterscheidet die Käufer des iPhone 16 von anderen Bevölkerungsgruppen?“ und darauf, eine Segmentierung der Käufer für Marketingzwecke zu erstellen. 

Dies ist ein Beispieldokument aus dem Datensatz:

demografische Muster verstehen

Hier werden wir eine Analyse der Gesamtbevölkerung durchführen und sie mit interessanten Erkenntnissen aus den signifikanten Begriffsaggregationen für iPhone 16-Nutzer vergleichen.

Normale Muster

Um normale Kaufmuster zu verstehen, können wir Daten aus allen Dokumenten und verschiedenen Bereichen aggregieren. Der Einfachheit halber konzentrieren wir uns auf die Berufe der Personen, die ein Telefon gekauft haben. Das können wir mit einer Anfrage an Elasticsearch erreichen.

Dies zeigt uns, dass die häufigsten Berufe im Datensatz (nach Anzahl der Datensätze) folgende sind:

Verhaltensmuster von iPhone 16-Nutzern

Um zu verstehen, was die Käufer eines iPhone 16 auszeichnet, führen wir eine Termaggregation auf demselben Feld mit einem Filter durch, um diese Personen in der Abfrage zu finden, etwa so:

Die häufigsten Berufe für iPhone 16-Nutzer sind also:

Wir können sehen, dass iPhone 16-Nutzer im Vergleich zu Nutzern anderer Telefonmodelle unterschiedliche Beschäftigungsmuster aufweisen. Nutzen wir Kibana, um die Ergebnisse einfach zu visualisieren:

In dieser Grafik können wir sehen, dass der Trend beim iPhone 16 vom Trend der Gesamtbevölkerung abweicht.

Wir können diese gesamte Analyse überspringen und direkt zu den Unterschieden zwischen iPhone 16-Nutzern und der Gesamtbevölkerung gelangen, indem wir eine Aggregation eines einzigen signifikanten Begriffs durchführen:

Kurz gesagt, erhalten wir folgende Antwort:

Werte der Berufe für das iPhone 16doc_countbg_count
Berufsverteilung (oberste Ebene)122424
Medizin- und Gesundheitsbereich4557

Die Reaktion lässt eindeutig darauf schließen, dass iPhone 16-Nutzer ein ungewöhnliches (sprich: signifikantes!) Problem haben. Anzahl der Beschäftigten im medizinischen und Gesundheitsbereich im Vergleich zur Gesamtbevölkerung. Mal sehen, was die Zahlen in der Antwort bedeuten:

  • Auf höchster Ebene:
    • Dokumentenanzahl: 122 – Die Abfrage ergab insgesamt 122 Treffer.
    • bg_count: 424 — Der Hintergrundsatz (alle Verkaufsbelege) enthält 424 Belege
  • Im Bereich Medizin & Gesundheitswesen:
    • Dokumentanzahl: 45 — „Medizin & Gesundheitswesen“ erscheint in 45 der 122 Suchergebnisse
    • bg_count: 57 — "Medizin & Gesundheitswesen" erscheint in 57 der insgesamt 424 Dokumente im Hintergrunddatensatz

Von 424 Käufern arbeiten 57 im medizinischen und Gesundheitsbereich – das entspricht 13,44 %. Betrachtet man jedoch die Käufer des iPhone 16, so arbeiten 45 von 122 im medizinischen und Gesundheitsbereich – das entspricht 36,88 %. Das bedeutet, dass die Wahrscheinlichkeit, jemanden aus dem medizinischen oder Gesundheitssektor unter den iPhone 16-Nutzern zu finden, doppelt so hoch ist!

Wir können diese Analyse auch auf andere Bereiche (Alter, Standort, Einkommensklasse usw.) anwenden, um mehr Informationen darüber zu erhalten, was die Nutzer des iPhone 16 auszeichnet. 

Kundensegmentierung

Mithilfe der Aggregation signifikanter Begriffe können wir Erkenntnisse über die Beziehungen zwischen Produkten, Kategorien und Kundensegmenten gewinnen. Hierfür erstellen wir eine übergeordnete Aggregation für die Kategorie, die wir genauer untersuchen möchten. Wir verwenden außerdem eine Unteraggregation von signifikanten Begriffen und normalen Begriffen, um interessante Erkenntnisse über diese Kategorie zu gewinnen und sie mit dem zu vergleichen, was die meisten Menschen in diesem Beruf verwenden.

Schauen wir uns beispielsweise an, was Menschen in verschiedenen Berufsfeldern bevorzugen:

  1. Um die Analyse übersichtlicher zu gestalten, beschränken wir unsere Suche auf drei Arbeitsbereiche: ["Verwaltung & Support", "Technologie & Daten", "Medizin & Gesundheitswesen"]
  2. Auf der Seite der Aggregationen beginnen wir mit einer Termaggregation nach Berufsbezeichnung.
  3. Fügen Sie eine Unteraggregation hinzu: Begriffe nach Telefonmodell – um herauszufinden, welche Modelle Nutzer kaufen, die in den jeweiligen Bereichen arbeiten.
  4. Fügen Sie eine zweite Unteraggregation hinzu: signifikante Begriffe nach Telefonmodellen – um herauszufinden, welche Modelle in den einzelnen Arbeitsbereichen besonders sind.

Lassen Sie uns die Aggregationsergebnisse im Detail betrachten:

Beruf: Verwaltung & Unterstützung

Termaggregation

Aggregation signifikanter Terme

Aus dieser Tabelle lässt sich schließen, dass es keine signifikanten Unterschiede zwischen dem Trend für diesen Beruf und dem Trend für die Gesamtbevölkerung gibt.

Beruf: Technologie & Daten

Termaggregation

Aggregation signifikanter Terme

Gesamtzahl der Dokumente: 424

Dokumente in diesem Beruf: 71

Telefonmodelldoc_count (dieses Modell in diesem Beruf)bg_count (Dieses Modell ist in allen Dokumenten enthalten)% in allen Dokumenten% in diesem Beruf
Google Pixel 812225,19 %16,90 %
OnePlus 119143,30 %12,68 %
OnePlus 12 Pro330,71 %4,23 %
Google Pixel 8 Pro9214,95 %12,68 %
Nichts Telefon 2581,89 %7,04 %
Samsung Galaxy Z Fold5461,42 %5,63 %
OnePlus 128204,72 %11,27 %

Beruf: Medizin & Gesundheitswesen

Termaggregation

Aggregation signifikanter Terme

Gesamtzahl der Dokumente: 424

Dokumente in diesem Beruf: 57

Telefonmodelldoc_count (dieses Modell in diesem Beruf)bg_count (Dieses Modell ist in allen Dokumenten enthalten)% in allen Dokumenten% in diesem Beruf
iPhone 164512228,77 %78,95 %
iPhone 15 Pro Max3133,07 %5,26 %
iPhone 157409,43 %12,28 %

Mal sehen, welche Geschichte uns diese Daten erzählen:

  • Medizinisches Fachpersonal und Angehörige von Gesundheitsberufen bevorzugen das iPhone 16 und neigen generell sehr dazu, Apple-Handys zu benutzen.
  • Technologie- und Datenexperten bevorzugen High-End-Android-Smartphones, greifen aber nicht unbedingt auf die Marke Samsung zurück. Auch in dieser Kategorie ist ein deutlicher Trend zu iPhones zu beobachten.
  • Bei Verwaltungs- und Supportmitarbeitern sind Samsung- und Google-Handys beliebt, es gibt jedoch keinen ausgeprägten und eindeutigen Trend.

Die Hybridsuche kombiniert Textsuche und semantische Ergebnisse, um ein verbessertes Sucherlebnis zu bieten. In diesem Kontext kann eine aussagekräftige Termaggregation Aufschluss über die Ergebnisse einer kontextbezogenen Suche geben, indem sie die Frage beantwortet: Was ist das Besondere an diesem Datensatz im Vergleich zu allen Dokumenten?Um diese Funktion zu veranschaulichen, sehen wir uns an, welche Modelle überrepräsentiert sind, wenn Nutzer von guter Leistung sprechen:

  • Wir erstellen eine semantische Abfrage, bei der wir das beste Nutzerfeedback finden, das dem Eingabetext „gute Leistung“ im Feld „Einbettung“ am nächsten kommt.
  • Wir werden außerdem eine Textsuche mit denselben Begriffen im Textfeld user_feedback durchführen.
  • Wir werden außerdem eine Abfrage mit aussagekräftigen Begriffen hinzufügen, um Telefonmodelle zu finden, die in diesen Ergebnissen häufiger vorkommen als im gesamten Datensatz.

Betrachten wir ein Beispiel für die übereinstimmenden Dokumente:

Das ist die Antwort, die wir erhalten:

Dies bedeutet, dass ein iPhone 15 zwar 40 Mal in insgesamt 424 Dokumenten vorkommt (9,4 % der Dokumente), es aber 5 Mal in den 20 Dokumenten zu finden ist, die der semantischen Suche „gute Leistung“ entsprechen (25 % der Dokumente). Daraus lässt sich schließen: Die Wahrscheinlichkeit, ein iPhone 15 zu finden, ist 2,7-mal höher, wenn es um gute Leistung geht, als durch Zufall.

Fazit

Durch die Aggregation signifikanter Terme lassen sich einzigartige Details eines Datensatzes aufdecken, indem man ihn mit der Gesamtheit aller Dokumente vergleicht. Dadurch können unerwartete Zusammenhänge in unseren Daten aufgedeckt werden, die über die reine Anzahl der Vorkommen hinausgehen. Wir können in verschiedenen Anwendungsfällen aussagekräftige Begriffe einsetzen, die sehr interessante Funktionen ermöglichen, zum Beispiel:

  • Bei der Betrugserkennung sollten Sie Muster erkennen – identifizieren Sie typische Transaktionen gestohlener Kreditkarten.
  • Markenqualitätseinblicke aus Nutzerbewertungen – Marken mit einer unverhältnismäßig hohen Anzahl schlechter Bewertungen erkennen.
  • Aufspüren falsch klassifizierter Dokumente – Aufspüren von Dokumenten, die zu einer Kategorie gehören (Termfilter), die in einer Beschreibung ungewöhnliche Wörter für die Kategorie verwenden (Aggregation signifikanter Begriffe).

Zugehörige Inhalte

Sind Sie bereit, hochmoderne Sucherlebnisse zu schaffen?

Eine ausreichend fortgeschrittene Suche kann nicht durch die Bemühungen einer einzelnen Person erreicht werden. Elasticsearch wird von Datenwissenschaftlern, ML-Ops-Experten, Ingenieuren und vielen anderen unterstützt, die genauso leidenschaftlich an der Suche interessiert sind wie Sie. Lasst uns in Kontakt treten und zusammenarbeiten, um das magische Sucherlebnis zu schaffen, das Ihnen die gewünschten Ergebnisse liefert.

Probieren Sie es selbst aus