DE102016100696A1 - Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen - Google Patents

Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen Download PDF

Info

Publication number
DE102016100696A1
DE102016100696A1 DE102016100696.3A DE102016100696A DE102016100696A1 DE 102016100696 A1 DE102016100696 A1 DE 102016100696A1 DE 102016100696 A DE102016100696 A DE 102016100696A DE 102016100696 A1 DE102016100696 A1 DE 102016100696A1
Authority
DE
Germany
Prior art keywords
search
phonetic
database
terms
results
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.)
Withdrawn
Application number
DE102016100696.3A
Other languages
English (en)
Inventor
Wendy J. Holmes
David Skiba
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avaya Inc
Original Assignee
Avaya Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Avaya Inc filed Critical Avaya Inc
Publication of DE102016100696A1 publication Critical patent/DE102016100696A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Es werden ein Verfahren, ein System und eine Suchmaschine für phonetische Suchen beschrieben, die ermöglichen, dass phonetische Suchen eine höhere Relevanz für den Suchenden besitzen. Konkret können phonetische Suchen in einer Datenbank, die phonetisch durchsuchbaren Inhalt enthält, einen oder mehrere phonetisch verwechselbare Begriffe aufweisen, die aus Suchergebnissen ausgeschlossen werden, wodurch Suchergebnisse zurückbleiben, welche die während der phonetischen Suche in der Datenbank genutzten Suchbegriffe wirklichkeitsgetreuer widerspiegeln.

Description

  • GEBIET DER OFFENBARUNG
  • Die vorliegende Offenbarung betrifft allgemein Datenbanksuchen und insbesondere phonetische Suchen.
  • ALLGEMEINER STAND DER TECHNIK
  • Phonetische Suchen involvieren Suchen in einer Datenbank, die Audiodatensätze für Wörter und Phrasen enthält, durch Abgleiche mit einem Modell für die erwarteten möglichen Klangmuster des Suchbegriffs. Diese Technik steht im Gegensatz zu Speech-to-Text(STT)-basierten Ansätzen, bei denen die Ausgaben einer Spracherkennung mit einem umfangreichen Vokabular durchsucht werden. Ein Vorteil des Ansatzes über phonetische Suchen besteht darin, dass der Ansatz über phonetische Suchen keinen Begrenzungen aufgrund von Vokabular- oder Erkennungsfehlern eines STT-Systems unterliegt. Bei phonetischen Suchen können indes falsche Übereinstimmungen von ähnlich klingenden, jedoch ungewünschten Phrasen hinderlich sein. Zum Beispiel führt die Suche nach dem Wort „Kontrakt“ in Gesprochenem, in dem auch das Wort „Kontakt“ enthalten ist, wahrscheinlich zu falschen Übereinstimmungen. Falls viele Audiodatensätze vorhanden sind, die ähnlich klingende, jedoch ungewünschte Phrasen enthalten, kann die große Zahl dieser falschen Übereinstimmungen minderwertige Suchergebnisse zur Folge haben.
  • Eine Möglichkeit, um dieses Problem anzugehen, besteht darin zu versuchen, hinreichend lange Suchphrasen festzulegen, um den Effekt der verwechselbaren Wörter aufzuheben. Zum Beispiel ergibt eine Suche nach „Kündigung meines Kontrakts“ möglicherweise keine falschen Treffer für „Kontakt“, falls dem Wort „Kontakt“ nicht „Kündigung meines“ vorausgeht. Außerdem werden möglicherweise Funktionen zum manuellen Filtern und Markieren von Ergebnissen angeboten. Bedauerlicherweise sind diese Lösungen umständlich und können darauf hinauslaufen, dass manche relevanten Audiodatensätze nicht zurückgegeben werden, da sie mit der längeren Suchphrase nicht genau übereinstimmen.
  • Demzufolge besteht ein Bedarf an einer verbesserten Lösung für phonetische Sprachsuchen, die Probleme von falschen Übereinstimmungen vermeidet, aber auch von einfachen Suchstrategien Gebrauch macht.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Deshalb besteht ein Aspekt der vorliegenden Offenbarung darin, eine Lösung für phonetische Suchen bereitzustellen, welche die oben erwähnten Probleme behebt. Ausführungsformen der vorliegenden Offenbarung gehen das Problem falscher Übereinstimmungen bei ähnlich klingenden Phrasen an, indem sie ausnutzen, dass die alternative, ähnlich klingende Phrase im Allgemeinen eher mit der Region des betreffenden Audiodatensatzes übereinstimmt. Ein Aspekt der vorliegenden Offenbarung besteht darin, den Benutzer des Systems für phonetische Suchen gezielt jegliche Regionen von Audiodatensätzen, die eher mit bekannten, ungewünschten Begriffen übereinstimmen, ausschließen zu lassen. Zum Beispiel würde bei einer phonetischen Suche nach „Kontakt BUT NOT Kontrakt“ nach Übereinstimmungen mit dem Wort „Kontakt“ gesucht, während jegliche Übereinstimmungen, für die dieselbe Audioregion eher mit dem alternativen Begriff „Kontrakt“ übereinstimmen würde, ausgeschlossen würden.
  • In Ausführungsformen der vorliegenden Offenbarung erfolgen Suchen nach einem oder mehreren ebenfalls in Frage kommenden/ähnlich klingenden Begriffen sowie eine Suche nach dem Begriff von Interesse. Bei jedem Treffer zum Begriff von Interesse wird der Treffer entfernt, falls vertrauenswürdigere Übereinstimmungen zu den ebenfalls in Frage kommenden Begriffen vorliegen, die in derselben oder einer sich erheblich überschneidenden Audioregion liegen.
  • In einer Ausführungsform würde der Benutzer die ebenfalls in Frage kommenden Begriffe festlegen. Es kann jedoch auch möglich sein, eine Menge von verwechselbaren Begriffen automatisch zu generieren: zum Beispiel durch Auswählen von phonetisch verwechselbaren Wörtern aus einem Aussprachewörterbuch.
  • Bei der automatischen Generierung von verwechselbaren Begriffen kann das System einen Cluster generieren oder einen vorbestimmten phonetischen Abstand vom Begriff von Interesse definieren. Konkret ist der phonetische Abstand je nachdem, inwieweit ein Benutzer falsch positive Treffer toleriert, so variierbar, dass entweder mehr oder weniger phonetisch verwechselbare Begriffe eingeschlossen werden. Falls der Benutzer es vorzieht, eventuell einige Passagen von Interesse auszuschließen, um zu viele unbrauchbare Ergebnisse (z. B. falsch positive Suchergebnisse) zu vermeiden, kann der phonetische Abstand vergrößert werden, wodurch mehr phonetisch verwechselbare Wörter in den „BUT-NOT“-Operator eingeschlossen werden. Falls der Benutzer es hingegen vorzieht, übermäßig viele Wörter aufzunehmen, und dafür einige falsch positive Treffer in Kauf zu nehmen, kann der phonetische Abstand verkleinert werden, wodurch die Anzahl von phonetisch verwechselbaren Wörtern im „BUT-NOT“-Operator verkleinert wird. Es könnte auch ein hybrider Ansatz genutzt werden, bei dem das System automatisch eine Menge von phonetisch verwechselbaren Begriffen generiert und dem Benutzer dann erlaubt auszuwählen, ob diese Begriffe in den „BUT-NOT“-Operator eingeschlossen werden sollen oder nicht.
  • Ausführungsformen der vorliegenden Offenbarung stellen auch einen höheren Gebrauchswert in Aussicht, da sie sich vielfältig einsetzen lassen. In einer Ausführungsform ist die hierin beschriebene Suchlösung in einem Anbieter für phonetische Suchen implementierbar (z. B. als integriertes Merkmal einer Audiodatenbank oder einer Suchmaschine für eine Audiodatenbank). Alternativ oder zusätzlich ist ein Teil der Suchlösung (z. B. eine automatische Begriffserweiterung mit BUT-NOT-Operatoren) als Vorverarbeitungsschritt für andere Anbieter für phonetische Suchen implementierbar.
  • Die vorgeschlagene Lösung dient dazu, ungewünschte Suchergebnisse zu entfernen und somit die Genauigkeit des Suchsystems insgesamt zu verbessern. Der Grundgedanke ist ein anderer als beim booleschen AND-NOT-Operator, der manchmal in Suchsystemen genutzt wird, insofern als bei der vorgeschlagenen Lösung ebenfalls in Frage kommende Übereinstimmungen in derselben Audioregion ausgehend von entsprechenden Vertrauensniveaus gezielt herausgefiltert werden. Dies steht im Gegensatz zu dem eher standardmäßigen AND NOT, bei dem im Rahmen einer Audiosuche nach Audiodatensätzen gesucht wir, in denen ein Begriff vorkommt, der nicht auch Treffer zu einem anderen Begriff enthält. Im Fall ähnlich klingender Phrasen oder Phrasenteile ist es wahrscheinlich, dass alle Audiodatensätze, die Treffer zu dem einen Begriff enthalten, auch Treffer zu dem anderen Begriff enthalten würden, ohne dass die gezielte Herausfilterung ausgehend von Zeit- und Vertrauensinformationen erfolgt, welche den Gegenstand der vorliegenden Erfindung bildet.
  • Demzufolge besteht ein Aspekt der vorliegenden Offenbarung darin, das Ausschließen von Suchtreffern ausgehend von einem Vergleich von Niveaus für ebenfalls in Frage kommende, ähnliche Suchbegriffe in derselben Audioregion sowie die automatische Identifizierung von phonetisch verwechselbaren Wörtern, die in den „BUT-NOT“-Operator aufgenommen werden sollen, zu erleichtern, um Suchergebnisse einzuschränken und die Suchgenauigkeit zu vergrößern.
  • In einigen Ausführungsformen wird eine Suchmaschine für phonetische Suchen bereitgestellt, die allgemein Folgendes umfasst:
    eine Anfordererschnittstelle, die konfiguriert ist, um einen oder mehrere Suchbegriffe für eine phonetische Suche zu empfangen, die in einer Datenbank durchgeführt werden soll, die phonetisch durchsuchbaren Inhalt enthält;
    einen Datenbankoperatorbaustein, der konfiguriert ist, um eine Datenbankabfrage zu formatieren, die mindestens einige des einen oder der mehreren Suchbegriffe beinhaltet, die an der Anfordererschnittstelle empfangen werden; und
    einen Phonetikanalysebaustein, der konfiguriert ist, um Folgendes durchzuführen, um phonetisch verwechselbare Begriffe auszuschließen, die mit dem einen oder den mehreren Suchbegriffen aus für einen Benutzer bereitgestellten Suchergebnissen assoziiert sind: (i) Modifizieren der Datenbankabfrage, bevor die Datenbankabfrage an die Datenbank gesendet wird, und/oder (ii) Modifizieren ursprünglicher, von der Datenbank empfangener Suchergebnisse, um eingeschränkte Suchergebnisse zu erhalten.
  • Der Begriff „Abstand“ oder „phonetischer Abstand“, wie hierin genutzt, kann einer Abstandsermittlung oder -kalkulation beliebiger Art entsprechen. Insbesondere kann ein phonetischer Abstand der „Güte der Übereinstimmung“ zwischen einem Suchbegriff und einem Suchergebnis entsprechen oder für sie stehen. Zum Beispiel ist eine Güte der Übereinstimmung oder ein phonetischer Abstand in der Praxis möglicherweise als Wahrscheinlichkeit dargestellt, wobei es üblich ist, Wahrscheinlichkeiten einer Negative-Log-Likelihood-Funktion zu nutzen und diese Werte als „Abstände“ zu bezeichnen. Mithin kann alles, was für eine „Güte der Übereinstimmung“ steht, synonym für den phonetischen Abstand sein. Um einige nicht ausschließliche Beispiele anzuführen, die Güte der Übereinstimmung ist möglicherweise dargestellt als Abstand (wobei geringer näher bedeutet und einer besseren Übereinstimmung gleichkommt), als Wahrscheinlichkeit (wobei höher näher bedeutet und einer besseren Übereinstimmung gleichkommt) oder als irgendein anderes Maß, das zum Bewerten der Ähnlichkeit genutzt werden kann.
  • Der Begriff „automatisch“ und Variationen davon, wie hierin genutzt, bezieht sich auf irgendeinen Prozess oder Vorgang, der ohne wesentliche menschliche Eingabe erfolgt, wenn der Prozess oder Vorgang durchgeführt wird. Jedoch kann ein Prozess oder Vorgang auch dann automatisch sein, wenn bei der Durchführung des Prozesses oder Vorgangs eine wesentliche oder unwesentliche menschliche Eingabe erfolgt, falls die Eingabe vor der Durchführung des Prozesses oder Vorgangs empfangen wird. Eine menschliche Eingabe gilt als wesentlich, wenn diese Eingabe beeinflusst, wie der Prozess oder Vorgang durchgeführt wird. Eine menschliche Eingabe, welche der Durchführung des Prozesses oder Vorgangs zustimmt, gilt nicht als „wesentlich“.
  • Der Begriff „computerlesbares Medium“, wie hierin genutzt, bezieht sich auf einen beliebigen physischen Speicher, der am Übermitteln von auszuführenden Befehlen an einen Prozessor beteiligt ist. Ein solches Medium kann vielfältig ausgebildet sein, etwa unter anderem als nicht flüchtiges Medium, flüchtiges Medium oder Übertragungsmedium. Zu Beispielen für ein nicht flüchtiges Medium zählen NVRAMs oder Magnet- oder Bildplattenspeicher. Zu flüchtigen Medien zählen dynamische Speicher wie Arbeitsspeicher. Zu Beispielen für häufige Formen computerlesbarer Medien zählen Floppy-Disks, Disketten, Festplatten, Magnetbänder oder beliebige andere magnetische Medien, magneto-optische Medien, CD-ROMs, beliebige andere optische Medien, Lochkarten, Lochstreifen, beliebige andere physische Medien mit Lochmustern, RAMs, PROMs und EPROMs, ein FLASH-EPROM, ein Festkörpermedium, wie eine Speicherkarte, ein beliebiger anderer Speicherchip oder eine -kassette oder ein beliebiges anderes Medium, das computerlesbar ist. Wenn das computerlesbare Medium als Datenbank konfiguriert ist, versteht es sich, dass die Datenbank eine Graphdatenbank, wie hierin beschrieben, sein kann. Demzufolge wird davon ausgegangen, dass die Offenbarung ein physisches Speichermedium und als Stand der Technik anerkannte Äquivalente und Nachfolgemedien beinhaltet, in denen die Software-Implementierungen nach der vorliegenden Offenbarung gespeichert werden.
  • Die Begriffe „ermitteln“, „kalkulieren“ und „berechnen“ sowie Variationen davon, wie hierin genutzt, werden synonym genutzt und beinhalten Methodiken, Prozesse, mathematische Operationen oder Techniken beliebiger Art.
  • Der Begriff „Baustein“, wie hierin genutzt, bezieht sich auf irgendeine bekannte oder noch zu entwickelnde Hardware, Software, Firmware, künstliche Intelligenz, Fuzzylogik oder Kombination aus Hardware und Software, die zur Durchführung der mit dem betreffenden Element assoziierten Funktionalität fähig ist. Wenngleich die Offenbarung anhand von Ausführungsbeispielen beschrieben wird, versteht es sich außerdem, dass einzelne Aspekte der Offenbarung auch separat beansprucht werden können.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Offenbarung wird in Verbindung mit den beigefügten Figuren beschrieben:
  • 1 ist ein Blockdiagramm, das ein Kommunikationssystem gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 2 ist ein Blockdiagramm, das ein System zum Aufnehmen und Speichern von Audiodatensätzen aus einer Kommunikationssitzung gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 3 ist ein Blockdiagramm, das ein System zum Suchen in einer Datenbank gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 4 ist ein Blockdiagramm, das Einzelheiten einer Suchmaschine gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 5A zeigt ein mögliches Schema zum automatischen Verfeinern einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung;
  • 5B zeigt ein weiteres mögliches Schema zum automatischen Verfeinern einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung;
  • 6 ist ein Blockdiagramm, das eine Reihe von Ergebnissen einer verfeinerten Suche gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 7 ist ein Flussdiagramm, das ein Verfahren zum Durchführen einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung abbildet;
  • 8 ist ein Flussdiagramm, das ein Verfahren zum Verfeinern einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung abbildet; und
  • 9 ist ein Flussdiagramm, das ein Verfahren zum Modifizieren einer Suchabfrage vor dem Senden der Suchabfrage an eine Datenbank gemäß Ausführungsformen der vorliegenden Offenbarung abbildet.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende Beschreibung geht nur auf Ausführungsformen ein und soll nicht den Schutzbereich, die Anwendbarkeit oder die Konfiguration der Ansprüche beschränken. Vielmehr soll die folgende Beschreibung Fachleuten eine Beschreibung bereitstellen, die sie dazu befähigt, die Ausführungsformen zu implementieren. Dabei versteht es sich, dass verschiedene Änderungen hinsichtlich der Funktion und der Anordnung von Elementen vorgenommen werden können, ohne vom Gedanken und vom Schutzbereich der beigefügten Ansprüche abzuweichen.
  • Es versteht sich, dass Ausführungsformen der vorliegenden Offenbarung in zahlreichen Umgebungen gebraucht werden können, in denen es wünschenswert ist, in Datenbanken unter anderem nach Audioinhalt/akustischem Inhalt zu suchen. Der Audioinhalt/akustische Inhalt beinhaltet möglicherweise reine Audiodateien oder -clips, Videodateien oder -clips oder beliebige andere Datenstrukturen, in denen sich Inhalt befindet, der phonetisch durchsuchbar ist. Obgleich Ausführungsformen der vorliegenden Offenbarung in Verbindung mit der Speicherung von Audioinhalt aus einer Kommunikationssitzung zwischen zwei oder mehr Sitzungsteilnehmern (z. B. zwei oder mehr Menschen, einem Menschen und einem oder mehr automatisierten Teilnehmern, einem oder mehr Menschen und einem automatisierten Teilnehmer, einer Konferenz, einem Broadcast, Voicemails etc.) beschrieben werden, versteht es sich, dass die Ausführungsformen der vorliegenden Offenbarung nicht derart beschränkt sind. Tatsächlich sind einige hierin beschriebene Ausführungsformen auch auf Suchen in Audioinhalten/akustischen Inhalten aus etwas anderem als einer Kommunikationssitzung anwendbar. Beispielsweise sind Ausführungsformen der vorliegenden Offenbarung anwendbar auf Suchen in Musikbibliotheken/-datenbanken, Videobibliotheken/-datenbanken (z. B. in ihrem Audioinhalt), Suchen innerhalb einer Audiodatei (z. B. WAV-Dateien, AIFF-Dateien, MP3-Dateien etc.), Suchen innerhalb einer Videodatei (z. B. CCIR 601, MPEG-4, MPEG-2, MPEG-1, H.261, H.263, H.264 etc.) und dergleichen.
  • Obwohl die Ausführungsbeispiele hierin die verschiedenen Komponenten eines kollokierten Systems zeigen, versteht es sich ferner, dass die verschiedenen Komponenten des Systems auch in voneinander entfernten Teilen eines verteilten Netzes wie eines Kommunikationsnetzes und/oder des Internets oder innerhalb eines dedizierten sicheren, unsicheren und/oder verschlüsselten Systems sein können. Mithin versteht es sich, dass sich die Komponenten des Systems in einer oder mehreren Einrichtungen kombinieren lassen, etwa in einem Unternehmensserver oder kollokiert in einem bestimmten Knoten eines verteilten Netzes wie eines analogen und/oder digitalen Kommunikationsnetzes. Wie aus der folgenden Beschreibung hervorgeht, sowie aus Gründen der Recheneffizienz, können die Komponenten des Systems an einer beliebigen Stelle innerhalb eines verteilten Netzes angeordnet sein, ohne dass sich dies auf den Betrieb des Systems auswirkt. Die verschiedenen Komponenten befinden sich zum Beispiel möglicherweise in einem lokalen Server, bei einem oder mehreren Benutzern vor Ort oder in irgendeiner Kombination daraus.
  • Zu Beginn wird mit Bezug auf 1 ein beispielhaftes System 100, in dem Audioinhalt erzeugt und in einer Datenbank 120 gespeichert wird, gemäß mindestens einigen Ausführungsformen der vorliegenden Offenbarung beschrieben. Das gezeigte System 100 beinhaltet ein Kommunikationsnetz 104, mehrere (von einem oder mehreren Benutzern bediente) Kommunikationseinrichtungen 108, eine Aufnahmeeinrichtung 112, eine Datenbankschnittstelle 116, eine Datenbank 120 und eine Konferenzbrücke 128.
  • Gemäß mindestens einigen Ausführungsformen der vorliegenden Offenbarung kann das Kommunikationsnetz 104 bekannte Kommunikationsmedien oder Gruppierungen von Kommunikationsmedien beliebiger Art umfassen und kann Protokolle beliebiger Art zum Transportieren von Nachrichten zwischen Endpunkten nutzen. Das Kommunikationsnetz 104 kann drahtgebundene und/oder drahtlose Kommunikationstechnologien beinhalten. Das Internet ist ein Beispiel für das Kommunikationsnetz 104, das ein Internetprotokoll(IP)-Netz bildet, welches aus vielen Rechnern, Rechennetzen und anderen Kommunikationseinrichtungen besteht, die sich an verschiedenen Orten weltweit befinden und durch viele Telefonsysteme und andere Mittel verbunden sind. Zu anderen Beispielen für das Kommunikationsnetz 104 zählen unter anderem ein herkömmliches analoges Telefonsystem (POTS), ein diensteintegriertes Digitalnetz (ISDN), das öffentliche Fernsprechwählnetz (PSTN), ein LAN, ein WAN, ein Session-Initiation-Protocol(SIP)-Netz, ein Voice-over-IP(VoIP)-Netz, ein zellulares Netz, ein Unternehmensnetz, ein Contact-Center und beliebige andere Arten von paketvermittelten oder leitungsvermittelten Netzen, die aus dem Stand der Technik bekannt sind. Darüber hinaus versteht es sich, dass das Kommunikationsnetz 104 nicht auf irgendeine bestimmte Netzart beschränkt sein muss und stattdessen aus einer Anzahl unterschiedlicher Netze und/oder Netzarten bestehen kann. Zudem kann das Kommunikationsnetz 104 etliche unterschiedliche Kommunikationsmedien wie ein Koaxialkabel, ein Kupferkabel/einen Kupferdraht, ein Glasfaserkabel, Antennen zum Senden/Empfangen drahtloser Nachrichten und Kombinationen daraus umfassen.
  • In einigen Ausführungsformen beinhaltet eine Kommunikationseinrichtung 108 möglicherweise eine persönliche Kommunikationseinrichtung oder eine gemeinsam genutzte Kommunikationseinrichtung (z. B. ein Konferenztelefon). Zu Beispielen für geeignete Kommunikationseinrichtungen 108 zählen unter anderem ein Telefon, ein Softphone, ein Mobiltelefon, eine Einrichtung für die Kommunikation zwischen mehreren Sprechern (z. B. ein Konferenztelefon), ein Videotelefon, ein PC, ein Laptop, ein Tablet, ein PDA, ein Smartphone, ein Thin-Client oder dergleichen. Die Kommunikationseinrichtungen 108 sind möglicherweise reine Audio-/Videodatenverbraucher (z. B. nur mit einem Lautsprecher und/oder nur mit einem Bildschirm), reine Audio-/Videodatenerzeuger (z. B. nur mit einem Mikrofon und/oder einer Kamera) oder Audio-/Videodatenverbraucher und -erzeuger. Es versteht sich, dass eine Kommunikationseinrichtung 108 konfiguriert sein kann, um Interaktionen eines einzelnen Benutzers oder von mehreren Benutzern mit anderen Einrichtungen mit Netzverbindung innerhalb eines Unternehmenskommunikationsnetzes und/oder über mehrere Kommunikationsnetze (z. B. über Session Border Controller (SBC)) zu unterstützen.
  • Die Aufnahmeeinrichtung 112 kann einer oder mehreren Ressourcen mit Netzverbindung entsprechen, die fähig sind zum Aufnehmen von Medien, die während einer Kommunikationssitzung zwischen zwei oder mehr Kommunikationseinrichtungen 108 oder zwischen einer Kommunikationseinrichtung 108 und einer automatisierten Ressource (z. B. Voicemail, Interactive-Voice-Response(IVR)-System etc.) ausgetauscht werden. Die Aufnahmeeinrichtung 112 kann in einen Medienweg zwischen den Kommunikationseinrichtungen 108 eingeführt werden, die von den Kommunikationssitzungsteilnehmern bedient werden, oder die Aufnahmeeinrichtung 112 kann eine Kopie von zwischen Kommunikationseinrichtungen 108 während einer Kommunikationssitzung ausgetauschten Medien empfangen. In einem nicht ausschließlichen Beispiel ist die Aufnahmeeinrichtung 112 möglicherweise als Gesprächsaufnahmeanwendung implementiert, die während eines Gesprächsaufbaus eingeführt wird und als sequenzierte Anwendung (z. B. als Back-to-Back User Agent (B2BUA)) in den Gesprächsvektor eingeführt wird. Wenn die Aufnahmeeinrichtung 112 so positioniert ist, kann die Aufnahmeeinrichtung 112 die während einer Kommunikationssitzung ausgetauschten Medien erfassen.
  • Wie in 1 gezeigt, kann die Aufnahmeeinrichtung 112 dann mit der Datenbankschnittstelle 116 interagieren, damit der aufgenommene Inhalt der Kommunikationssitzung in der Datenbank 120 gespeichert wird. Diese Interaktion kann über das Kommunikationsnetz 104 oder direkt über eine direkte Verbindung 124 erfolgen. In einigen Ausführungsformen können die Aufnahmeeinrichtung 112 und die Datenbankschnittstelle 116 in einem gemeinsamen Server implementiert sein, sodass keine netzbasierten Verbindungen nötig sind.
  • In Ausführungsformen, in denen die Audio-/Videoaufnahme Inhalt von einem Broadcast oder von einer zu einem bestimmten Zweck stattfindenden Aufnahmesitzung (z. B. einer Studioaufnahme eines Albumtracks) entspricht, kann die Aufnahmeeinrichtung 112 einer Spezialeinrichtung entsprechen, die Inhalt aufnimmt, der von einem Lautsprecher und/oder einer Kamera empfangen wird, und den Inhalt zum Speichern in der Datenbank 120 dann formatiert (z. B. komprimiert, codiert etc.). Es versteht sich, dass der aufgenommene Inhalt mittels Techniken einer verlustbehafteten oder verlustfreien Codierung speicherbar ist und beliebige Speicherformate zum Speichern des Inhalts in der Datenbank 120 genutzt werden können. Ferner ist der Inhalt zum leichteren Durchsuchen und/oder Abrufen indizierbar. Eine solche Indizierung kann vor der Speicherung oder nach der Speicherung in der Datenbank 120 durchgeführt werden. Die Indizierung kann an der Datenbankschnittstelle 116 oder mit dem Inhalt in der Datenbank 120 gespeichert werden. Indizierungsmodule sind aus dem Stand der Technik im Zusammenhang mit Datenbanken und Suchverfahren weithin bekannt und werden hierin nicht näher beschrieben. Es versteht sich, dass ein Indizierungsmodul, auch wenn es nicht abgebildet ist, innerhalb der Datenbankschnittstelle 116 oder an einem separaten Server implementiert sein kann.
  • Die Datenbank 120 und die Datenbankschnittstelle 116 können bekannten oder noch zu entwickelnden Datenbanken und Schnittstellen beliebiger Art entsprechen. Anders ausgedrückt, die Gestaltung der Datenbank und ihrer Schnittstelle soll nicht von den Ausführungsformen der vorliegenden Offenbarung beschränkt werden. Zu geeigneten und nicht ausschließlichen Beispielen für Datenbanken 120, welche sich zum Speichern von Audio-/Videoinhalten und/oder beliebigen anderen phonetisch durchsuchbaren Inhalten nutzen lassen, zählen hierarchische Datenbanken, Graphdatenbanken, relationale Datenbanken, Netzdatenbanken, objektorientierte Datenbanken und dergleichen. Die Datenbankschnittstelle 116 kann sich einer Sprache oder eines Formats bedienen, die bzw. das zum Extrahieren nützlicher Informationen aus der Datenbank 120 dient. Zu Beispielen für Sprachen, die von der Datenbankschnittstelle 116 genutzt werden können, zählen unter anderem SQL, noSQL, NewSQL und/oder beliebige andere aus dem Stand der Technik bekannte Datenbankmanagementsysteme (DBMS). Die Datenbankschnittstelle 116 soll Interaktionen zwischen der Datenbank 120 und anderen Netzeinrichtungen (z. B. den Kommunikationseinrichtungen 108, der Aufnahmeeinrichtung 112, der Konferenzbrücke 128 etc.) erleichtern. Die Datenbankschnittstelle 116 ist je nach der Größe und der Komplexität der Datenbank 120 als ein oder viele Server implementierbar.
  • Die Konferenzbrücke 128 kann einer Einrichtung (z. B. einem Server) oder einer Gruppierung von Einrichtungen entsprechen, die das Mischen und Verteilen von Medien während einer Kommunikationssitzung zwischen zwei oder mehr und gewöhnlich drei oder mehr Sitzungsteilnehmern ermöglichen. In einigen Ausführungsformen kann die Konferenzbrücke 128 einen Medienmischer und eine Logik zum Verteilen der gemischten Medien unter den Konferenzteilnehmern beinhalten. Die Konferenzbrücke 128 kann sogar eine vollständig gemischte Version der Konferenz zur Aufnahme und Speicherung in der Datenbank 120 für die Aufnahmeeinrichtung 112 bereitstellen. Alternativ oder zusätzlich kann die Aufnahmeeinrichtung 112 als Konferenzteilnehmer bei einer Kommunikationssitzung beinhaltet und deshalb wie die anderen Kommunikationseinrichtungen 108 mit der Konferenzbrücke 128 verbunden sein.
  • Nunmehr werden mit Bezug auf 2 zusätzliche Einzelheiten eines Systems 200 zum Erfassen und Speichern von Audioinhalt/akustischem Inhalt gemäß mindestens einigen Ausführungsformen der vorliegenden Offenbarung beschrieben. Das System 200 veranschaulicht, wie die Aufnahmeeinrichtung 112, die Datenbankschnittstelle 116 und die Datenbank 120 miteinander verbunden sind. Es versteht sich, dass das System 200 nicht zwangsläufig darauf beschränkt ist, dass eine Komponente nur einfach vorhanden ist. Vielmehr kann das System 200 auch mehrere Datenbanken 120, mehrere Datenbankschnittstellen 116 und/oder mehrere Aufnahmeeinrichtungen 112 beinhalten. Die mehreren Einrichtungen können partitioniert, hochgradig skalierbar oder für hohe Verfügbarkeit konfiguriert sein (z. B. mit Datensicherungseinrichtungen). Die einfache bildliche Darstellung des Systems 200 und von dessen Komponenten soll leicht verständlich beschreiben, worin die Funktionen der Komponenten des Systems 200 bestehen.
  • In einigen Ausführungsformen lässt sich zwischen zwei oder mehr Kommunikationseinrichtungen 108 eine Kommunikationssitzung einrichten. Die Kommunikationssitzung beinhaltet möglicherweise Sitzungsmedien 204 in Form von Audiopaketen, Videopaketen, analogem Audio, analogem Video, komprimiertem Audio, komprimiertem Video, codiertem Audio, codiertem Video etc., die zwischen einer Kommunikationseinrichtung 108 und einer weiteren oder zwischen einer Kommunikationseinrichtung 108 und der Konferenzbrücke 128 übertragen werden. Die Sitzungsmedien 204 können an der Aufnahmeeinrichtung 112 empfangen und für die Übertragung an die Datenbankschnittstelle 116 formatiert werden. In einigen Ausführungsformen kann die Aufnahmeeinrichtung 112 die Sitzungsmedien 204 für eine effiziente Speicherung in der Datenbank 120 einfach codieren und/oder komprimieren. In technisch weiterentwickelten Systemen 200 kann die Aufnahmeeinrichtung 204 des Weiteren eine erste Analyse der Sitzungsmedien 204 durchführen, um Metadaten oder Markierungen für die Sitzungsmedien 204 zu erzeugen, bevor sie in die Datenbank 120 aufgenommen werden. Beispielsweise kann die Aufnahmeeinrichtung 112 Metadaten erzeugen, welche die Zeit, zu der die Sitzungsmedien 204 empfangen werden, Kennungen der Sitzungsteilnehmer oder einen Deskriptor der Sitzungsart (z. B. Sitzung mit zwei Teilnehmern, Sitzung mit drei oder mehr Teilnehmern, Konferenz, Broadcast etc.) beschreiben. In einigen Ausführungsformen kann die Aufnahmeeinrichtung 112 sogar eine phonetische Analyse und/oder eine Phonemanalyse der Sitzungsmedien 204 durchführen. Die Ergebnisse einer solchen Analyse können mit den Sitzungsmedien als Metadaten gespeichert werden oder sie kann in Text umgewandelt werden, der zu einem späteren Zeitpunkt durchsucht werden kann. Es kann sogar möglich sein, dass die Aufnahmeeinrichtung 112 eine Umwandlung von Sprache in Text an einigen oder allen Sitzungsmedien 204 durchführt, bevor die Sitzungsmedien in der Datenbank 120 gespeichert werden.
  • Irgendwann während oder nach der Speicherung der Sitzungsmedien (oder von Audiomedien/akustischen Medien) kann die Aufnahmeeinrichtung 112 oder irgendein anderes Indizierungsmodul die Datenbank 120 und die darin gespeicherten Medien indizieren. Dieses Indizierungsmodul kann dann als anfänglicher Bezugspunkt fungieren, wenn in der Datenbank 120 nach gespeichertem Inhalt gesucht wird.
  • Nunmehr werden mit Bezug auf 3 Einzelheiten eines Systems 300 zum Abrufen von Inhalt oder Suchen in der Datenbank 120 gemäß mindestens einigen Ausführungsformen der vorliegenden Offenbarung beschrieben. Auch das System 300 beinhaltet die Datenbank 120 und die Datenbankschnittstelle 116. Das System 300 beinhaltet, wie dargestellt, auch eine anfordernde Einrichtung 304 und eine Suchmaschine 312. In einigen Ausführungsformen kann die anfordernde Einrichtung 304 mit einer oder mehreren Suchmaschinenschnittstellen 308 ausgestattet sein, welche die Kommunikation zwischen der anfordernden Einrichtung 304 und der Suchmaschine 312 ermöglichen.
  • Wie oben erörtert, kann das Pflegen einer durchsuchbaren Datenbank 120 zum Teil beinhalten, dass in der Datenbank 120 gespeicherter Inhalt regelmäßig indiziert wird. Bisher wurde bei der Beschreibung einer solchen Indizierung davon ausgegangen, dass sie von einem separaten Indizierungsmodul oder von der Datenbankschnittstelle 116 durchgeführt wird. Es versteht sich, dass einige oder alle Datenbankindizierungsfunktionen in der Suchmaschine 312 durchgeführt werden können. Die Suchmaschine 312 kann dem Modul entsprechen, das einem Benutzer der anfordernden Einrichtung 304 die Datenbankschnittstelle 116 und eine gebräuchliche Abfragesprache zur Verfügung stellt. In einigen Ausführungsformen kann die Suchmaschine 312 die Suchstruktur für Benutzer der anfordernden Einrichtung 304 beschränken oder bereitstellen. Die Suchmaschine 312 ist möglicherweise auch zuständig für den Empfang einer Suchabfrage oder von Suchbegriffen und für die Formatierung der Suchabfrage oder der Suchbegriffe in einem für die Datenbankschnittstelle 116 verständlichen Format.
  • In einigen Ausführungsformen ist die Suchmaschinenschnittstelle 308 möglicherweise als Browser, Anwendung oder dergleichen ausgebildet. Die Suchmaschinenschnittstelle 308 kann nativ in der anfordernden Einrichtung 304 (z. B. als installierte Anwendung) betrieben werden oder die Suchmaschinenschnittstelle 308 kann für die anfordernde Einrichtung 304 über einen Webbrowser verfügbar gemacht werden. Insbesondere kann die Suchmaschinenschnittstelle 308 einer HTML-Seite eines Webservers entsprechen, der mit der Suchmaschine 312 interagiert.
  • Wenn ein Benutzer versucht, Inhalt aus der Datenbank 120 abzurufen, gibt er möglicherweise einen oder mehrere Suchbegriffe in ein Suchbegriffeingabefeld ein, das von der Suchmaschinenschnittstelle 308 bereitgestellt wird. Der eine oder die mehreren Suchbegriffe, die vom Benutzer eingegeben werden, können für die Suchmaschine 312 bereitgestellt werden. Die Suchmaschine 312 kann dann die gesamten Suchbegriffe, wie von der Schnittstelle 308 empfangen, formatieren und als strukturierte oder unstrukturierte Abfrage entsprechend einem für die Datenbankschnittstelle 116 verständlichen Format für die Datenbankschnittstelle 116 bereitstellen. Alternativ kann die Suchmaschine 312 die Suchbegriffe so modifizieren, dass sie abhängig von einer Analyse der vom Benutzer empfangenen Suchbegriffe entweder mehr oder weniger Suchbegriffe beinhalten. Die Suchmaschine 312 ist zum Beispiel möglicherweise konfiguriert, um einen oder mehrere phonetisch verwechselbare (z. B. ähnlich klingende) Begriffe für den Suchbegriff/die Suchbegriffe, der/die vom Benutzer eingegeben wurde(n), zu ermitteln. Diese phonetisch verwechselbaren Begriffe können in einen für die Datenbankschnittstelle 116 bereitgestellten „BUT-NOT“-Operator eingeschlossen werden, was bedeutet, dass die Suchmaschine 312 Inhalt empfangen möchte, der mit dem Suchbegriff/den Suchbegriffen übereinstimmt, aber keinen Inhalt, der mit den phonetisch verwechselbaren Begriffen, die in den „BUT-NOT“-Operator eingeschlossen wurden, ebenfalls übereinstimmt (oder aufgrund einer Ähnlichkeit eher mit ihnen übereinstimmt).
  • Der Inhalt, der mit den angeforderten Suchbegriffen übereinstimmt, wird dann über die Datenbankschnittstelle 116 an die Suchmaschine 312 zurückübermittelt und wird dann über die Suchmaschinenschnittstelle 308 dem Benutzer präsentiert. Das Format, in dem er präsentiert wird, kann abhängig von den Benutzereinstellungen und/oder der Relevanz der Suchergebnisse variieren.
  • Nunmehr werden mit Bezug auf 4 weitere Einzelheiten einer Suchmaschine 312 gemäß mindestens einigen Ausführungsformen der vorliegenden Offenbarung beschrieben. Obwohl die Komponenten/Funktionen der Suchmaschine 312 so abgebildet sind, dass sie in der Suchmaschine 312 untergebracht sind, können sie auch in beliebigen oder beliebig vielen der anderen Einrichtungen, die in den Systemen 100, 200, 300 abgebildet sind, implementiert sein. Die Unterbringung der Komponenten in der Suchmaschine 312 dient Veranschaulichungszwecken und soll die Ausführungsformen der vorliegenden Offenbarung nicht beschränken. Ferner kann die Suchmaschine 312, obwohl dies nicht abgebildet ist, einen oder viele Prozessoren und einen nicht transienten, computerlesbaren Speicher beinhalten, in dem die verschiedenen in 4 abgebildeten Bausteine gespeichert sind. Die Bausteine der Suchmaschine 312 sind vom Prozessor der Suchmaschine 312 ausführbar. In einigen Ausführungsformen ist die Suchmaschine 312 möglicherweise als ein oder mehrere Server oder Serverblades implementiert.
  • Die abgebildete Suchmaschine 312 beinhaltet eine Anfordererschnittstelle 404, einen Benutzerschnittstellenbaustein 408, einen Ergebnis-Cache 412, einen Datenbankoperatorbaustein 416, einen Phonetikanalysebaustein 420 und einen Suchergebnis-Editor 424. In einigen Ausführungsformen entspricht die Anfordererschnittstelle 404 möglicherweise einer Anwendungsprogrammierschnittstelle (API), welche die Kommunikation zwischen der Suchmaschine 312 und einer Anwendungsvariante der Suchmaschinenschnittstelle 308 ermöglicht. Alternativ oder zusätzlich entspricht die Anfordererschnittstelle 404 möglicherweise einer oder mehreren Webseiten, die über webbasierte Kommunikationen zugänglich sind. Konkret kann die Anfordererschnittstelle 404 einem oder mehreren HTML-Dokumenten entsprechen, die einem Benutzer der anfordernden Einrichtung 304 den Zugriff auf die Funktionalität der Suchmaschine 312 durch Nutzung eines Webbrowsers ermöglichen.
  • Der Benutzerschnittstellenbaustein 408 kann einer oder mehreren Komponenten entsprechen, die eine Präsentation der Suchmaschinenschnittstelle 308 steuern. Der Benutzerschnittstellenbaustein 408 kann beispielsweise zuständig sein für die Präsentation einer Suchbegriffeingabeseite gegenüber einem Benutzer der anfordernden Einrichtung 304. Alternativ oder zusätzlich kann der Benutzerschnittstellenbaustein 408 eine Präsentation von Suchergebnissen steuern. Der Benutzerschnittstellenbaustein 408 kann beispielsweise Suchergebnisse von der Datenbankschnittstelle 116 empfangen und die Suchergebnisse in einem einfach nutzbaren Format aufbereiten/ordnen. Der Benutzerschnittstellenbaustein 408 kann beispielsweise zuständig sein für das Ordnen der Suchergebnisse nach ihrer Relevanz (z. B. werden relevantere Ergebnisse weiter oben platziert und/oder in der Liste von Suchergebnissen hervorgehoben).
  • Der Ergebnis-Cache 412 kann einem Speicherort in der Suchmaschine 312 entsprechen, an dem anfängliche, von der Datenbank 120 empfangene Suchergebnisse gespeichert werden, damit sie geordnet und/oder modifiziert werden können, bevor sie dem Benutzer der anfordernden Einrichtung 304 präsentiert werden. Insbesondere kann der Ergebnis-Cache 412 einem Computer-Cachespeicher entsprechen, in dem alle Suchergebnisse gespeichert werden, bevor aus den Suchergebnissen phonetisch verwechselbare Begriffe entfernt werden. Alternativ oder zusätzlich kann der Ergebnis-Cache 412 einem Ort entsprechen, an dem bisherige Suchabfragen (z. B. was durch die Suchmaschine 312 an die Datenbankschnittstelle 116 gesendet wird), Begriffe (z. B. was vom Benutzer der anfordernden Einrichtung 304 empfangen wird) und/oder Ergebnisse (z. B. was von der Datenbank 120 zur Beantwortung einer Abfrage empfangen wird) über einen vorbestimmten Zeitraum hinweg gespeichert werden. Folglich können einfacher Rückbezüge auf solche Suchabfragen, Begriffe und/oder Ergebnisse hergestellt werden, bis sie im Ergebnis-Cache 412 gelöscht oder überschrieben werden.
  • Der Datenbankoperatorbaustein 416 ist möglicherweise zuständig für die Formatierung von Suchabfragen in der Datenbank 120 ausgehend von Begriffen und phonetisch verwechselbaren Begriffen, die davon abgeleitet sind. Konkret kann der Datenbankoperatorbaustein 416 eine Menge von Suchbegriffen in einem Format empfangen (z. B. eine Eingabe eines oder mehrerer Suchbegriffe in einem Format einer natürlichen Sprache) und kann dann eine Suchabfrage abgestimmt auf die empfangenen Suchbegriffe formulieren. In einigen Ausführungsformen kann der Datenbankoperatorbaustein 416 Suchoperatoren (z. B. AND, NAND, OR, NOR, XOR und BUT NOT) als logische Verknüpfungen zwischen Suchbegriffen beinhalten. Die Operatoren können zwischen Suchbegriffe, Phrasen oder Phrasenteile gesetzt werden. Der Datenbankoperatorbaustein 416 kann als Schnittstelle zwischen der Datenbankschnittstelle 116 und der Suchmaschine 312 betrachtet werden. In anderen Ausführungsformen sind die Suchoperatoren möglicherweise benutzerdefiniert, statt dass vom Datenbankoperatorbaustein 416 auf sie geschlossen wird. Konkret können dem Benutzer, statt ihm eine Eingabe in einer natürlichen Sprache zu präsentieren, boolesche Suchfunktionen zur Verfügung stehen, über die der Benutzer einen oder mehrere Operatoren festlegen kann, die auf verschiedene Suchbegriffe anwendbar sein sollen. Mithin kann der Benutzer zuständig sein für das Identifizieren der Suchbegriffe, die ausgehend von den gewählten Operatoren ausgeschlossen werden sollen.
  • Der Phonetikanalysebaustein 420 kann Funktionalität beinhalten, mittels deren die Suchmaschine 420 eine automatisierte Phonetikanalyse an von der anfordernden Einrichtung 304 empfangenen Suchbegriffen durchführen kann. In einigen Ausführungsformen beinhaltet der Phonetikanalysebaustein 420 ein Phonetikwörterbuch oder hat Zugriff auf ein Phonetikwörterbuch, das Wörter/Begriffe Phonemen zuordnet. Anders ausgedrückt, der Phonetikanalysebaustein 420 kann ableiten, wie ein Suchbegriff oder eine Suchphrase „klingt“. Der Phonetikanalysebaustein 420 kann konfiguriert sein, um eine Zuordnung zwischen Begriffen und ihrem jeweiligen Klang in einer oder vielen unterschiedlichen Sprachen bereitzustellen. Der Phonetikanalysebaustein 420 kann beispielsweise konfiguriert sein, um eine Zuordnung für eine englische Aussprache eines Begriffs oder einer Phrase bereitzustellen. Mithin kann der Phonetikanalysebaustein 420 sprachenabhängig und außerdem konfiguriert sein, um abzuleiten, wie an der anfordernden Einrichtung 304 eingegebene Suchbegriffe klingen oder ausgesprochen werden. Der Phonetikanalysebaustein 420 kann ausgehend von den Ableitungen der Art, wie sie klingen oder ausgesprochen werden, außerdem phonetisch verwechselbare Begriffe ableiten oder ermitteln, die zwar nicht gleich dem Suchbegriff/den Suchbegriffen sind, aber so ähnlich klingen wie der Suchbegriff/die Suchbegriffe. Wie hierin noch eingehender erörtert wird, können diese phonetisch verwechselbaren Begriffe auf einer Phonetikkarte eingetragen sein, anhand deren Abstände zwischen Begriffen und phonetisch verwechselbaren Begriffen ermittelt werden können, was in dem Bemühen geschieht, ungewünschte oder unnötige Ergebnisse auszuschließen, bevor sie einem Benutzer präsentiert werden.
  • Der Suchergebnis-Editor 424 kann bei der Modifizierung von Suchergebnissen mit dem Phonetikanalysebaustein 420 zusammenarbeiten. Eine Möglichkeit zur Modifizierung von Suchergebnissen besteht darin, phonetisch verwechselbare Begriffe aus einer Menge von Suchergebnissen zu entfernen. Alternativ oder zusätzlich kann der Suchergebnis-Editor 424 dem Benutzerschnittstellenbaustein 408 Informationen zuführen, die beschreiben, welche Suchergebnisse als relevanter als andere Ergebnisse angesehen werden, wodurch dem Benutzerschnittstellenbaustein 408 ermöglicht wird, die einem Benutzer zu präsentierenden Ergebnisse passend zu ordnen.
  • Nunmehr werden mit Bezug auf die 5A, 5B und 6 Einzelheiten zur Einschränkung von Suchergebnissen durch eine Entfernung von phonetisch verwechselbaren Begriffen aus den Suchergebnissen beschrieben. Wie in 6 gezeigt, wird ein Ablauf 600 zum Einschränken ursprünglicher Suchergebnisse 604 auf eingeschränkte Suchergebnisse 608 und zum anschließenden Ordnen der eingeschränkten Suchergebnisse zu geordneten Suchergebnissen 612 gezeigt. Die 5A und 5B zeigen zwei mögliche automatisierte Variationen zum Identifizieren von phonetisch verwechselbaren Begriffen für einen Suchbegriff und zum anschließenden Entfernen dieser phonetisch verwechselbaren Begriffe. Wie hierin genutzt, ist die Phrase „phonetisch verwechselbarer Begriff“ so zu verstehen, dass sie jegliche Begriffe, Phrasenteile oder Phrasen einschließt, die nicht mit dem Suchbegriff übereinstimmen, aber so ähnlich wie der Suchbegriff klingen, weshalb sie zusammen mit diesem Suchbegriff in die Suchergebnisse eingeschlossen werden (z. B. da eine phonetische Suche zum Suchbegriff durchgeführt wird und bei der phonetischen Suche beide Begriffe zurückgegeben werden, die den gesuchten Begriff und phonetisch verwechselbare Begriffe für den Suchbegriff beinhalten).
  • Hierin werden Mechanismen zum Automatisieren des Prozesses zum Identifizieren und Entfernen von phonetisch verwechselbaren Begriffen beschrieben, die vom Konzept des phonetischen Abstands Gebrauch machen. Die 5A und 5B zeigen zwei mögliche Variationen zum Identifizieren von Begriffen und phonetisch verwechselbaren Begriffen auf einer Phonetikkarte 500, die Orte von Begriffen und phonetisch verwechselbaren Begriffen in einem phonetischen Raum darstellen kann. Wie hierin erörtert, kann der Prozess zum Kalkulieren oder Ermitteln eines phonetischen Abstands von etlichen Faktoren abhängig sein (z. B. von der Anzahl gemeinsamer Silben, der Reihenfolge gemeinsamer Silben, der Anzahl gemeinsamer Phoneme, der Reihenfolge gemeinsamer Phoneme, der Anzahl unterschiedlicher Silben, der Anzahl unterschiedlicher Phoneme etc.). Gemäß Ausführungsformen der vorliegenden Offenbarung können beliebig viele Kalkulationen des phonetischen Abstands genutzt werden. Anders ausgedrückt, die Ausführungsformen der vorliegenden Offenbarung sind nicht auf einen bestimmten Algorithmus oder ein bestimmtes Verfahren zum Ermitteln eines phonetischen Abstands beschränkt. Ein nicht ausschließliches Beispiel für einen Prozess zum Kalkulieren eines phonetischen Abstands ist im US-Patent Nr. 6,581,034 für Choi et al. beschrieben, dessen gesamter Inhalt durch Bezugnahme hierin aufgenommen wird.
  • Ferner sind manche der auf der Karte 500 gezeigten Merkmale Punkte auf der Karte 500, während andere gezeigte Merkmale Ovale oder Kreise auf der Karte 500 sind. Die bildliche Darstellung mancher Merkmale als Ovale oder Kreise dient Veranschaulichungszwecken. Es sei darauf hingewiesen, dass fast jedes Merkmal auf der Karte 500, das einem einzelnen Begriff oder Ergebnis entspricht, auf der Karte 500 als Punkt dargestellt sein soll. Die phonetischen Abstände können Abständen zwischen diesen Punkten entsprechen und die phonetischen Bereiche können Bereichen entsprechen, die ausgehend von phonetischen Abständen im phonetischen Raum hergestellt werden (z. B. eine Multiplikation phonetischer Abstände oder eine Multiplikation eines phonetischen Abstands mit irgendeinem Wert).
  • In einem ersten Beispiel zeigt 5A eine Karte 500 mit einem Suchbegriff 504 und zwei phonetisch verwechselbaren Begriffen 512a, 512b. Für den Suchbegriff 504 wird ein Suchbereich 508 ermittelt. Die Größe und die Ausdehnung des Suchbereichs 508 ist möglicherweise abhängig von den Einstellungen eines Benutzers oder eines Administrators zum Empfang von falsch positiven Suchergebnissen oder zum Ausschluss von eventuell relevanten Ergebnissen. In der abgebildeten Ausführungsform erfasst und schließt der Suchbereich 508 eine Vielzahl von Suchergebnissen 520a–f ein. Diese Suchergebnisse entsprechen Ergebnissen für den Suchbegriff 504, wenn für den Suchbegriff 504 in der Datenbank 120 eine phonetische Suche ausgeführt wird. In einigen Ausführungsformen ist es möglicherweise wünschenswert, einige der Ergebnisse 520a–f in den ursprünglichen Suchergebnissen 604 auszuschließen, um zu einer Menge eingeschränkter Suchergebnisse 608 zu gelangen. 5A zeigt einen Mechanismus, durch den phonetisch verwechselbare Begriffe 512a, 512b als Punkte definiert und dann einen ungewünschten Begriff aufweisende Bereiche 516a, 516b jeweils für diese phonetisch verwechselbaren Suchbegriffe 512a, 512b berechnet werden. In einigen Ausführungsformen sind die einen ungewünschten Begriff aufweisenden Bereiche 516a, 516b möglicherweise größer oder kleiner als der Suchbereich 508, was wiederum von Benutzer- und/oder Administratoreinstellungen abhängig ist.
  • Falls ein Suchergebnis 520a–f sowohl im Suchbereich 508 als auch in einem der einen ungewünschten Begriff aufweisenden Bereiche 516a oder 516b liegt, wird dieses Suchergebnis aus den ursprünglichen Suchergebnissen 604 entfernt, um zu den eingeschränkten Suchergebnissen 608 zu gelangen. Im abgebildeten Beispiel wird festgestellt, dass zwei Ergebnisse 520c und 520e innerhalb mindestens eines der einen ungewünschten Begriff aufweisenden Bereiche 516a, 516b liegen, was bedeutet, dass diese Ergebnisse aus den ursprünglichen Suchergebnissen 604 entfernt werden, um zu den eingeschränkten Suchergebnissen 608 zu gelangen. Wie erkennbar ist, kann diese Entfernung erfolgen, nachdem die Suchergebnisse 520a–f aus der Datenbank 120 abgerufen worden sind, oder sie können präemptiv mittels eines „BUT-NOT“-Operators aus den Suchergebnissen, die aus der Datenbank 120 abgerufen wurden, ausgesondert werden. In beiden Szenarios wird das nützliche Ergebnis erlangt, wenn die phonetisch verwechselbaren Begriffe aus den ursprünglichen Suchergebnissen 604 entfernt werden, um die eingeschränkten Suchergebnisse 608 zu erhalten. Diese eingeschränkten Suchergebnisse 608 können gemäß dem Abstand vom Suchbegriff 504 weiter geordnet werden, wodurch das nächste Ergebnis (z. B. das Ergebnis 520f, dann das Ergebnis 520a, dann das Ergebnis 520b, dann das Ergebnis 520d) in aufsteigender oder absteigender Reihenfolge priorisiert wird, was wiederum von Benutzer- und/oder Administratoreinstellungen abhängt.
  • 5B zeigt eine zweite Alternative zum Einschränken von Suchergebnissen, die nach einer phonetischen Suche in einer Datenbank 120 erhalten werden. Die Karte 500 von 5B sieht so ähnlich aus wie die Karte 500 von 5A, ist zur einfacheren Erörterung im Vergleich zu ihr jedoch eingeschränkt. Konkret sind nur die Ergebnisse abgebildet, die zwischen dem Suchbegriff 504 und dem ersten ungewünschten Begriff 512a liegen. Es versteht sich jedoch, dass sich diese Karte 500 ohne weiteres so erweitern lässt, dass mehrere Suchbegriffe 504 und/oder mehrere ungewünschte Begriffe 512 gezeigt werden. Jedes Ergebnis 520a, 520b, 520c kann zwei phonetische Abstände aufweisen, die in Verbindung damit kalkuliert werden. Ein erster Abstand, der für jedes Ergebnis kalkuliert wird, kann einem Abstand zwischen dem Ergebnis 520a, 520b, 520c und dem Suchbegriff 504 entsprechen. In der abgebildeten Ausführungsform entsprechen diese ersten Abstände Dwa (Abstand zwischen dem gewünschten Suchbegriff 504 und dem ersten Ergebnis 520a), Dwb (Abstand zwischen dem gewünschten Suchbegriff 504 und dem zweiten Ergebnis 520b) und Dwc (Abstand zwischen dem gewünschten Suchbegriff 504 und dem dritten Ergebnis 520c). Ein zweiter Abstand, der für jedes Ergebnis kalkuliert wird, kann einem Abstand zwischen dem Ergebnis 520a, 520b, 520c und dem ungewünschten oder phonetisch verwechselbaren Suchbegriff 512a entsprechen. In der abgebildeten Ausführungsform entsprechen diese zweiten Abstände Dua (Abstand zwischen dem ungewünschten Suchbegriff 512a und dem ersten Ergebnis 520a), Dub (Abstand zwischen dem ungewünschten Suchbegriff 512a und dem zweiten Ergebnis 520b) und Duc (Abstand zwischen dem ungewünschten Suchbegriff 512c und dem dritten Ergebnis 520c).
  • Der erste Abstand und der zweite Abstand für jedes Ergebnis 520a, 520b, 520c können verglichen und/oder genutzt werden, um zu ermitteln, ob ein Ergebnis in die eingeschränkten Suchergebnisse 608 eingeschlossen oder aus den eingeschränkten Suchergebnissen 608 ausgeschlossen werden sollte. Falls zum Beispiel für ein Ergebnis ein erster Abstand (z. B. ein Abstand vom gewünschten Suchbegriff 504) kleiner ist als ein zweiter Abstand (z. B. ein Abstand vom ungewünschten Suchbegriff 512), sollte dieses Ergebnis in die eingeschränkten Suchergebnisse 608 eingeschlossen werden. Falls umgekehrt für ein Ergebnis ein erster Abstand größer ist als ein zweiter Abstand, sollte dieses Ergebnis aus den eingeschränkten Suchergebnissen 608 ausgeschlossen werden. Für das Verhalten in dem unwahrscheinlichen Szenario, in dem der erste Abstand und der zweite Abstand gleich sind, können Benutzer- und/oder Administratoreinstellungen zur Aufnahme von übermäßig vielen oder übermäßig wenigen Ergebnissen maßgebend sein. Falls in einem anderen Beispiel der erste Abstand für ein Ergebnis kleiner ist als ein vorbestimmter Teil des zweiten Abstands (und der vorbestimmte Teilwert vom Benutzer/Administrator konfigurierbar sein kann), kann dieses Ergebnis in die eingeschränkten Suchergebnisse 608 eingeschlossen werden. Es versteht sich, dass für die Ausführungsformen der vorliegenden Offenbarung auch die Aufnahme beliebiger anderer Mechanismen zum Abändern des ersten Abstands und des zweiten Abstands der Suchergebnisse 520 in Betracht kommt, um zu ermitteln, ob das Ergebnis 520 in die eingeschränkten Suchergebnisse 608 eingeschlossen oder aus ihnen ausgeschlossen werden soll.
  • Nunmehr wird mit Bezug auf 7 ein Verfahren zum Durchführen einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung beschrieben. Das Verfahren 700 beginnt, wenn ein oder mehrere Suchbegriffe von einem Benutzer empfangen werden (Schritt 704). Die Suchbegriffe können von einem Benutzer in die Suchmaschinenschnittstelle 308 eingegeben werden. Der Suchbegriff/die Suchbegriffe wird/werden von der Suchmaschine 312 genutzt, um eine Abfrage für die Datenbank 120 zu strukturieren oder in anderer Weise aufzubereiten (Schritt 708). In einigen Ausführungsformen wird/werden der Suchbegriff/die Suchbegriffe schlicht so in die Abfrage eingegeben, wie sie empfangen werden, während in anderen Ausführungsformen der Suchbegriff/die Suchbegriffe zusammen mit einem oder mehreren Datenbankabfrage-Operatoren zum Kombinieren des Begriffs/der Begriffe in die Abfrage eingegeben wird/werden. Ferner kann die Abfrage entsprechend der Art der Datenbank 120, die abgefragt wird, und der für Interaktionen mit ihr genutzten Sprache formuliert werden.
  • Die den Suchbegriff/die Suchbegriffe enthaltende Abfrage wird dann an die Datenbank 120 gesendet (Schritt 712). Danach werden die ursprünglichen Suchergebnisse 604 von der Datenbank 120 empfangen (Schritt 716). Diese ursprünglichen Ergebnisse 604 können im Ergebnis-Cache 412 zur weiteren Verarbeitung gespeichert werden, bevor sie an den Benutzer zurückübertragen werden.
  • In einigen Ausführungsformen kann eine Analyse der ursprünglichen Ergebnisse 604 beinhalten, dass ermittelt wird, ob der Suchbegriff/die Suchbegriffe phonetisch verwechselbare Begriffe, die mit ihnen assoziiert sind, aufweist/aufweisen (Schritt 720). In einigen Ausführungsformen sind die phonetisch verwechselbaren Begriffe selbst identifizierbar, indem ermittelt wird, ob Suchbegriffe bereits bekannte phonetisch verwechselbare Begriffe, die mit ihnen assoziiert sind, aufweisen (z. B. indem auf ein Phonetikwörterbuch Bezug genommen und ermittelt wird, ob mit dem Begriff ein oder mehrere phonetisch verwechselbare Begriffe assoziiert sind). In anderen Ausführungsformen sind phonetisch verwechselbare Begriffe identifizierbar, indem phonetische Abstände oder Bereiche (die sich über ein Programm verwalten lassen) für den Suchbegriff berechnet werden und dann ermittelt wird, ob irgendein Nicht-Suchbegriff in den berechneten phonetischen Abstand oder Bereich fällt. Dieser bestimmte Schritt unterscheidet sich geringfügig von der in Verbindung mit den 5A, 5B und 6 beschriebenen Analyse, da diese Analyse von Schritt 720 in Verbindung mit dem Identifizieren ungewünschter Suchbegriffe 512 genutzt wird, wobei nicht ermittelt wird, ob Ergebnisse in die ursprünglichen Suchergebnisse 604 eingeschlossen oder aus ihnen ausgeschlossen werden sollen. Die Identifizierung von phonetisch verwechselbaren Begriffen kann auch mithilfe einer Benutzereingabe oder mit einem lernenden Computersystem erfolgen.
  • Es können noch andere Möglichkeiten zum Identifizieren von phonetisch verwechselbaren Begriffen verwendet werden, etwa denjenigen, die beim Erarbeiten von Vorschlägen zum Erweitern von Suchzeichenfolgen verwendet werden, um fehlerhafte phonetische Schreibweisen zu erfassen. Ein Beispiel dafür, wie eine solche Technik zum Erweitern von Suchzeichenfolgen genutzt wird, um fehlerhafte phonetische Schreibweisen zu korrigieren, ist im US-Patent Nr. 7,716,235 für Davallou beschrieben, dessen gesamter Inhalt durch Bezugnahme hierin aufgenommen wird. Diese Technik unterscheidet sich jedoch von der Technik der vorliegenden Offenbarung, da die phonetisch verwechselbaren Begriffe mittels der Technik aus dem ‘235-Patent identifizierbar sind, um später zum Ausschließen von Ergebnissen aus ursprünglichen Suchergebnissen genutzt zu werden. Mithin werden gemäß der vorliegenden Offenbarung, statt dass eine Suchzeichenfolge wie im ‘235-Patent erweitert wird, phonetisch verwechselbare Begriffe identifiziert, um zu versuchen, Suchergebnisse aus einer Liste ursprünglicher Suchergebnisse 604 zu entfernen.
  • Sobald für den Suchbegriff/die Suchbegriffe ein phonetisch verwechselbarer Begriff/phonetisch verwechselbare Begriffe identifiziert wurde(n), können die ursprünglichen Ergebnisse 604 auf eine Menge eingeschränkter Suchergebnisse 608 eingeschränkt werden, wie in Verbindung mit den 5A, 5B und 6 beschrieben (Schritt 724). Danach können die eingeschränkten Suchergebnisse 608 zu geordneten Suchergebnissen 612 geordnet werden (Schritt 728) und dann dem Suchergebnisanforderer präsentiert werden (Schritt 732).
  • Nunmehr wird mit Bezug auf 8 ein Verfahren zum Verfeinern einer phonetischen Suche gemäß Ausführungsformen der vorliegenden Offenbarung beschrieben. Das Verfahren 800 beginnt, wenn in einer Datenbank 120 eine phonetische Suche nach einem oder mehreren Begriffen von Interesse durchgeführt wird (Schritt 804). Das Verfahren setzt sich fort, indem ein oder mehrere phonetisch verwechselbare Begriffe identifiziert werden, die mit jedem Begriff von Interesse, der in die Suche eingeschlossen wurde, assoziiert sind (Schritt 808). Der Prozess von Schritt 808 kann dem in Verbindung mit Schritt 720 beschriebenen Prozess ähnlich oder mit ihm identisch sein.
  • Vor, gleichzeitig mit oder nach dem Schritt 808 setzt sich das Verfahren 800 fort, wenn an der Suchmaschine 312 ursprüngliche Suchergebnisse 604 erhalten werden (Schritt 812). Für jedes Ergebnis werden phonetische Abstände zwischen dem Ergebnis und dem Begriff von Interesse kalkuliert (Schritt 816). Dieser Abstand kann als erster kalkulierter phonetischer Abstand für das Ergebnis bezeichnet werden. Für jedes Ergebnis werden außerdem phonetische Abstände zwischen dem Ergebnis und jedem der bei Schritt 812 identifizierten phonetisch verwechselbaren Begriffe kalkuliert (Schritt 820). Dieser Abstand für jedes Ergebnis kann als zweiter kalkulierter phonetischer Abstand für das Ergebnis bezeichnet werden.
  • Die ursprünglichen Suchergebnisse 604 werden ausgehend von den für jedes Ergebnis kalkulierten phonetischen Abständen auf eine Menge eingeschränkter Ergebnisse 608 eingeschränkt (Schritt 824). Zum Beispiel wird jedes Ergebnis entfernt, das phonetisch näher bei einem oder mehreren verwechselbaren Begriffen als bei einem Begriff von Interesse liegt. Zum Entfernen von Ergebnissen aus den ursprünglichen Suchergebnissen 604 können auch noch andere Algorithmen und Mechanismen genutzt werden.
  • Sobald die Suchergebnisse 608 eingeschränkt wurden, können sie für den Anforderer bereitgestellt werden, oder sie können nach ihrer Relevanz geordnet werden, bevor sie für den Anforderer bereitgestellt werden (Schritt 828). Die Ergebnisse können über eine Benutzerschnittstelle einer vom Benutzer bedienten Kommunikationseinrichtung 108 (z. B. über eine Suchmaschinenschnittstelle 308) für den Anforderer bereitgestellt werden.
  • Nunmehr wird mit Bezug auf 9 ein Verfahren zum Modifizieren einer Suchabfrage vor dem Senden der Suchabfrage an eine Datenbank 120 gemäß Ausführungsformen der vorliegenden Offenbarung beschrieben. Das Verfahren 900 beginnt mit dem Empfang von Suchbegriffen, die auch als Begriffe von Interesse bezeichnet werden können (Schritt 904). Nach dem Empfang der Begriffe von Interesse kann die Suchmaschine 312 automatisch eine Liste von eventuell phonetisch verwechselbaren Begriffen für jeden Begriff von Interesse erstellen (Schritt 908). Die Identifizierung von eventuell phonetisch verwechselbaren Begriffen kann so ähnlich ablaufen wie in Schritt 720 oder 808. In einigen Ausführungsformen werden die eventuell phonetisch verwechselbaren Begriffe möglicherweise automatisch genutzt, um die Suchbegriffe einzuschränken und/oder die an die Datenbank 120 gesendete Abfrage anzupassen. In anderen Ausführungsformen wird möglicherweise eine Benutzereingabe angefordert, indem für den Benutzer, der die Suche eingegeben hat, eine Liste der eventuell phonetisch verwechselbaren Begriffe bereitgestellt wird, um den Benutzer entscheiden zu lassen, ob diese phonetisch verwechselbaren Begriffe aus der Suchabfrage ausgeschlossen werden sollen (Schritt 912).
  • Falls dem Benutzer die Liste präsentiert wird, wird bei dem Verfahren auf den Empfang eines Benutzerhinweises darauf gewartet, welche Begriffe aus der Liste aus der Suchabfrage zu entfernen sind (Schritt 916). In einigen Ausführungsformen stellt der Benutzer möglicherweise gleich bleibende Befehle bereit, die darauf hinweisen, dass nur manche Arten von phonetisch verwechselbaren Begriffen ausgeschlossen werden sollen (z. B. Begriffe, die in einem vorbestimmten phonetischen Abstand von einem Suchbegriff liegen). Alternativ kann der Benutzer vorgeben, dass eine Benutzereingabe empfangen wird, bevor die Suchabfrage modifiziert wird.
  • Nach dem Abschluss der Schritte 912 und 912 oder der optionalen Auslassung dieser Schritte aufgrund einer vollständig automatisierten Implementierung setzt sich das Verfahren 900 fort, indem die Suchabfrage derart modifiziert wird, dass die phonetisch verwechselbaren Begriffe aus den Suchergebnissen entfernt werden, die von der Datenbank 120 empfangen werden (Schritt 920). In einigen Ausführungsformen wird dies bewerkstelligt, indem die Suchabfrage derart modifiziert wird, dass für jeden der phonetisch verwechselbaren Begriffe ein oder mehrere „BUT-NOT“-Operatoren eingeschlossen werden.
  • Die modifizierte Suchabfrage wird gemäß der zwischen der Datenbank 120 und der Datenbankschnittstelle 116 genutzten Sprache an die Datenbank 120 gesendet (Schritt 924). Danach werden Ergebnisse zur Suchabfrage an der Datenbankschnittstelle 116 empfangen und für die Suchmaschine 312 bereitgestellt (Schritt 928). Diese Ergebnisse können dann direkt für den Anforderer bereitgestellt oder nach ihrer Relevanz modifiziert werden.
  • In der vorangehenden Beschreibung wurden Verfahren zu Veranschaulichungszwecken in einer bestimmten Reihenfolge beschrieben. Es versteht sich, dass die Verfahren in alternativen Ausführungsformen auch in einer anderen als der beschriebenen Reihenfolge durchgeführt werden können. Es versteht sich außerdem, dass die oben beschriebenen Verfahren durch Hardware-Komponenten durchgeführt werden oder in Abfolgen maschinenausführbarer Befehle realisiert sein können, die genutzt werden können, damit sich eine Maschine wie ein Universal- oder ein Spezialprozessor (GPU oder CPU) oder Logikschaltungen ergeben, die mit den Befehlen zum Durchführen der Verfahren programmiert sind (FPGA). Diese maschinenausführbaren Befehle können in einem oder mehreren maschinenlesbaren Medien gespeichert sein, etwa in CD-ROMs oder anderen Arten von Bildplattenspeichern, Disketten, ROMs, RAMs, EPROMs, EEPROMs, magnetischen oder optischen Speicherkarten, Flash-Speichern oder anderen Arten maschinenlesbarer Medien, die zum Speichern elektronischer Befehle geeignet sind. Alternativ sind die Verfahren durch eine Kombination aus Hard- und Software durchführbar.
  • In der Beschreibung wurden konkrete Einzelheiten angeführt, um ein eingehendes Verständnis der Ausführungsformen zu ermöglichen. Es versteht sich jedoch für den Durchschnittsfachmann, dass die Ausführungsformen auch ohne diese konkreten Einzelheiten praktisch umsetzbar sind. Zum Beispiel werden Schaltungen möglicherweise in Blockdiagrammen gezeigt, um die Verständlichkeit der Ausführungsformen nicht durch unnötige Einzelheiten zu erschweren. In anderen Fällen werden wohl bekannte Schaltungen, Prozesse, Algorithmen, Strukturen und Techniken möglicherweise ohne unnötige Einzelheiten gezeigt, um die Verständlichkeit der Ausführungsformen nicht zu erschweren.
  • Es sei auch angemerkt, dass die Ausführungsformen als Prozess beschrieben wurden, der als Ablaufschema, Flussdiagramm, Datenflussdiagramm, Strukturdiagramm oder Blockdiagramm abgebildet ist. Selbst wenn ein Ablaufschema die Vorgänge möglicherweise als sequenziellen Prozess beschreibt, können viele der Vorgänge auch parallel oder gleichzeitig durchgeführt werden. Darüber hinaus kann die Reihenfolge der Abläufe umgestellt werden. Ein Prozess ist beendet, wenn dessen Abläufe abgeschlossen sind, könnte allerdings noch weitere Schritte aufweisen, die in der Figur nicht eingeschlossen sind. Ein Prozess kann einer Methode, einer Funktion, einer Prozedur, einer Unterroutine, einem Unterprogramm etc. entsprechen. Wenn ein Prozess einer Funktion entspricht, entspricht seine Beendigung einer Rückkehr der Funktion zur aufrufenden Funktion oder zur Hauptfunktion.
  • Ferner können Ausführungsformen durch Hardware, Software, Firmware, Middleware, Mikrocode, Hardware-Beschreibungssprachen oder durch eine beliebige Kombination daraus implementiert werden. Bei einer Implementierung in Software, Firmware, Middleware oder Mikrocode können der Programmcode oder die Programmcodesegmente zur Durchführung der nötigen Aufgaben in einem maschinenlesbaren Speichermedium gespeichert sein. Ein Prozessor/Prozessoren kann/können die nötigen Aufgaben durchführen. Ein Codesegment kann eine Prozedur, eine Funktion, ein Unterprogramm, ein Programm, eine Routine, eine Unterroutine, einen Baustein, ein Softwarepaket, eine Klasse oder eine beliebige Kombination aus Befehlen, Datenstrukturen oder Programmanweisungen darstellen. Ein Codesegment kann durch die Weitergabe und/oder das Empfangen von Informationen, Daten, Argumenten, Parametern oder Speicherinhalten an ein anderes Codesegment oder eine Hardware-Schaltung gekoppelt sein. Informationen, Argumente, Parameter, Daten etc. können über beliebige geeignete Mittel, einschließlich gemeinsamer Speicherbenutzung, Nachrichtenweitergabe, Tokenweitergabe, Netzübertragung etc., weitergegeben, weitergeleitet oder übertragen werden.
  • Wenngleich Ausführungsbeispiele der Offenbarung hierin ausführlich beschrieben wurden, versteht es sich, dass die Erfindungsgedanken ansonsten auch anders ausgeführt und angewendet werden können und dass die beigefügten Ansprüche so auszulegen sind, dass sie solche Variationen ebenfalls einschließen, es sei denn, sie werden vom Stand der Technik beschränkt.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 6581034 [0056]
    • US 7716235 [0065]

Claims (10)

  1. Suchmaschine für phonetische Suchen, die Folgendes umfasst: eine Anfordererschnittstelle, die konfiguriert ist, um einen oder mehrere Suchbegriffe für eine phonetische Suche zu empfangen, die in einer Datenbank durchgeführt werden soll, die phonetisch durchsuchbaren Inhalt enthält; ein Datenbankoperatorbaustein, der konfiguriert ist, um eine Datenbankabfrage zu formatieren, die mindestens einige des einen oder der mehreren Suchbegriffe beinhaltet, die an der Anfordererschnittstelle empfangen werden; und ein Phonetikanalysebaustein, der konfiguriert ist, um Folgendes durchzuführen, um phonetisch verwechselbare Begriffe auszuschließen, die mit dem einen oder den mehreren Suchbegriffen aus für einen Benutzer bereitgestellten Suchergebnissen assoziiert sind: (i) Modifizieren der Datenbankabfrage, bevor die Datenbankabfrage an die Datenbank gesendet wird, und/oder (ii) Modifizieren ursprünglicher, von der Datenbank empfangener Suchergebnisse, um eingeschränkte Suchergebnisse zu erhalten.
  2. Suchmaschine für phonetische Suchen nach Anspruch 1, wobei der Phonetikanalysebaustein die Datenbankabfrage modifiziert, bevor die Datenbankabfrage an die Datenbank gesendet wird, wobei die Datenbankabfrage einen mit den phonetisch verwechselbaren Begriffen assoziierten „BUT-NOT“-Operator umfasst.
  3. Suchmaschine für phonetische Suchen nach Anspruch 1, wobei der Phonetikanalysebaustein die ursprünglichen, von der Datenbank empfangenen Suchergebnisse modifiziert.
  4. Suchmaschine für phonetische Suchen nach Anspruch 3, wobei der Phonetikanalysebaustein Ergebnisse zum Entfernen aus den ursprünglichen Suchergebnissen identifiziert, indem er Folgendes durchführt: Ermitteln eines ersten phonetischen Abstands zwischen einem Ergebnis und einem Suchbegriff in dem einen oder den mehreren Suchbegriffen; Ermitteln eines zweiten phonetischen Abstands zwischen dem Ergebnis und einem phonetisch verwechselbaren Begriff, der mit dem Suchbegriff assoziiert ist; und ausgehend von einem Vergleich des ersten phonetischen Abstands und des zweiten phonetischen Abstands Ermitteln, ob das Ergebnis in die eingeschränkten Suchergebnisse eingeschlossen oder aus ihnen ausgeschlossen werden soll, wobei Ergebnisse, deren zweiter phonetischer Abstand kleiner ist als ihr erster phonetischer Abstand, aus den eingeschränkten Suchergebnissen ausgeschlossen werden.
  5. Suchmaschine für phonetische Suchen nach Anspruch 3, wobei der Phonetikanalysebaustein Ergebnisse zum Entfernen aus den ursprünglichen Suchergebnissen identifiziert, indem er Folgendes durchführt: Ermitteln eines Suchergebnisbereichs für einen Suchbegriff in dem einen oder den mehreren Suchbegriffen; Ermitteln eines ungewünschte Suchergebnisse aufweisenden Bereichs für einen phonetisch verwechselbaren Begriff, der mit dem Suchbegriff assoziiert ist; und Ausschließen von Suchergebnissen, die sowohl im Suchergebnisbereich als auch im ungewünschte Suchergebnisse aufweisenden Bereich gefunden werden, aus den eingeschränkten Suchergebnissen.
  6. Suchmaschine für phonetische Suchen nach Anspruch 1, wobei die phonetisch verwechselbaren Begriffe, die mit dem einen oder den mehreren Suchbegriffen assoziiert sind, aus den Suchergebnissen entfernt werden, die für den Benutzer in einer Menge geordneter Suchergebnisse bereitgestellt werden, die ausgehend von dem phonetischen Abstand von jedem Ergebnis und dem einen oder den mehreren Suchbegriffen priorisiert werden.
  7. Suchmaschine für phonetische Suchen nach Anspruch 1, wobei der phonetisch durchsuchbare Inhalt Audio- und/oder Videoinhalt aus einer Kommunikationssitzung zwischen zwei oder mehr Sitzungsteilnehmern umfasst.
  8. System, das Folgendes umfasst: einen oder mehrere Server, die konfiguriert sind, um eine Schnittstelle zwischen einer Benutzerkommunikationseinrichtung und einer Datenbank bereitzustellen, die phonetisch durchsuchbaren Inhalt enthält, wobei der eine oder die mehreren Server eine Suchmaschine beinhalten, die konfiguriert ist, um zu mehr Suchbegriffen für eine in der Datenbank durchzuführende phonetische Suche zu empfangen, und einen Phonetikanalysebaustein, der konfiguriert ist, um phonetisch verwechselbare Begriffe, die mit dem einen oder den mehreren Suchbegriffen assoziiert sind, aus für die Benutzerkommunikationseinrichtung bereitgestellten Suchergebnissen auszuschließen, durch Folgendes: (i) Modifizieren einer Datenbankabfrage, bevor die Datenbankabfrage an die Datenbank gesendet wird, und/oder (ii) Modifizieren ursprünglicher, von der Datenbank empfangener Suchergebnisse, um eingeschränkte Suchergebnisse zu erhalten, die für die Benutzerkommunikationseinrichtung bereitgestellt werden.
  9. System nach Anspruch 8, wobei der Phonetikanalysebaustein die Datenbankabfrage modifiziert, bevor die Datenbankabfrage an die Datenbank gesendet wird, wobei die Datenbankabfrage einen mit den phonetisch verwechselbaren Begriffen assoziierten „BUT-NOT“-Operator umfasst.
  10. System nach Anspruch 8, wobei der Phonetikanalysebaustein die ursprünglichen, von der Datenbank empfangenen Suchergebnisse modifiziert, wobei der Phonetikanalysebaustein Ergebnisse zum Entfernen aus den ursprünglichen Suchergebnissen identifiziert, indem er Folgendes durchführt: Ermitteln eines ersten phonetischen Abstands zwischen einem Ergebnis und einem Suchbegriff in dem einen oder den mehreren Suchbegriffen; Ermitteln eines zweiten phonetischen Abstands zwischen dem Ergebnis und einem phonetisch verwechselbaren Begriff, der mit dem Suchbegriff assoziiert ist; und ausgehend von einem Vergleich des ersten phonetischen Abstands und des zweiten phonetischen Abstands Ermitteln, ob das Ergebnis in die eingeschränkten Suchergebnisse eingeschlossen oder aus ihnen ausgeschlossen werden soll, wobei Ergebnisse, deren zweiter phonetischer Abstand kleiner ist als ihr erster phonetischer Abstand, aus den eingeschränkten Suchergebnissen ausgeschlossen werden.
DE102016100696.3A 2015-01-20 2016-01-18 Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen Withdrawn DE102016100696A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/600,268 US20160210353A1 (en) 2015-01-20 2015-01-20 Data lookup and operator for excluding unwanted speech search results
US14/600,268 2015-01-20

Publications (1)

Publication Number Publication Date
DE102016100696A1 true DE102016100696A1 (de) 2016-07-21

Family

ID=55488233

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016100696.3A Withdrawn DE102016100696A1 (de) 2015-01-20 2016-01-18 Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen

Country Status (3)

Country Link
US (1) US20160210353A1 (de)
DE (1) DE102016100696A1 (de)
GB (1) GB2535861A (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10565198B2 (en) 2015-06-23 2020-02-18 Microsoft Technology Licensing, Llc Bit vector search index using shards
US10467215B2 (en) 2015-06-23 2019-11-05 Microsoft Technology Licensing, Llc Matching documents using a bit vector search index
US10733164B2 (en) 2015-06-23 2020-08-04 Microsoft Technology Licensing, Llc Updating a bit vector search index
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query
US11281639B2 (en) * 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US10409861B2 (en) * 2016-05-09 2019-09-10 Wizsoft Ltd. Method for fast retrieval of phonetically similar words and search engine system therefor
US10474706B2 (en) 2016-05-13 2019-11-12 Avaya Inc. Organizing speech search results
US11715006B2 (en) * 2020-03-31 2023-08-01 Microsoft Technology Licensing, Llc. Natural language code search

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581034B1 (en) 1999-10-01 2003-06-17 Korea Advanced Institute Of Science And Technology Phonetic distance calculation method for similarity comparison between phonetic transcriptions of foreign words
US7716235B2 (en) 2001-04-20 2010-05-11 Yahoo! Inc. Phonetic self-improving search engine

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328211B2 (en) * 2000-09-21 2008-02-05 Jpmorgan Chase Bank, N.A. System and methods for improved linguistic pattern matching
JP2004527830A (ja) * 2001-02-02 2004-09-09 ライオン バイオサイエンス アクチェンゲゼルシャフト 仮想データバンクオブジェクト
US8543378B1 (en) * 2003-11-05 2013-09-24 W.W. Grainger, Inc. System and method for discerning a term for an entry having a spelling error
US8209171B2 (en) * 2007-08-07 2012-06-26 Aurix Limited Methods and apparatus relating to searching of spoken audio data
WO2009040790A2 (en) * 2007-09-24 2009-04-02 Robert Iakobashvili Method and system for spell checking
US20120323967A1 (en) * 2011-06-14 2012-12-20 Microsoft Corporation Spelling Using a Fuzzy Pattern Search
US9779136B2 (en) * 2014-09-30 2017-10-03 Linkedin Corporation Rearranging search operators

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581034B1 (en) 1999-10-01 2003-06-17 Korea Advanced Institute Of Science And Technology Phonetic distance calculation method for similarity comparison between phonetic transcriptions of foreign words
US7716235B2 (en) 2001-04-20 2010-05-11 Yahoo! Inc. Phonetic self-improving search engine

Also Published As

Publication number Publication date
GB2535861A (en) 2016-08-31
GB201601050D0 (en) 2016-03-02
US20160210353A1 (en) 2016-07-21

Similar Documents

Publication Publication Date Title
DE102016100696A1 (de) Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen
WO2020258654A1 (zh) 一种答案获取方法及装置
WO2020007224A1 (zh) 知识图谱构建及智能应答方法、装置、设备及存储介质
DE112012000853B4 (de) Entdeckung, Erkennung und Bookmarking von Gesichtern in Videos
US10474706B2 (en) Organizing speech search results
WO2021114810A1 (zh) 基于图结构的公文推荐方法、装置、计算机设备及介质
DE202012100189U1 (de) Detektion von kreativen Werken auf Ausstrahlungsmedien
DE112016002198T5 (de) Kontextualisieren von wissensfeldern
DE112017000104T5 (de) Sequenzabhängige datennachrichtenkonsolidierung in einer sprachaktivierten computernetzwerkumgebung
DE112016005374T5 (de) Identifizieren von Abfragemustern und zugeordneten aggregierten Statistikdaten unter Suchabfragen
CN112487810B (zh) 一种智能客服服务方法、装置、设备及存储介质
DE202014010885U1 (de) Beschleunigung basierend auf zwischengespeicherte Flüsse
DE202017106609U1 (de) Kontextuelles Eindeutigmachen von Anfragen
US10635725B2 (en) Providing app store search results
KR101618084B1 (ko) 회의록 관리 방법 및 그 장치
US10114891B2 (en) Method and system of audio retrieval and source separation
US20210151038A1 (en) Methods and systems for automatic generation and convergence of keywords and/or keyphrases from a media
CN108829651A (zh) 一种公文处理的方法、装置、终端设备及存储介质
CN105808688B (zh) 基于人工智能的补全检索方法及装置
DE102016204594A1 (de) Abgleichen von datenquellen ohne tags mit datenanalyseanwendungen ohne tags
WO2020057023A1 (zh) 自然语言的语义解析方法、装置、计算机设备和存储介质
KR20210060830A (ko) 빅데이터 지능형 수집 방법 및 장치
EP2193457A1 (de) Erfassung von zusammenhängen zwischen informationen repräsentierenden daten
CN113741864A (zh) 基于自然语言处理的语义化服务接口自动设计方法与系统
DE102017114156A1 (de) Steuerverfahren und -system und elektronische Vorrichtung für diese

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee