DE102017120605A1 - Bereitstellen von Kontextsachverhalten - Google Patents
Bereitstellen von Kontextsachverhalten Download PDFInfo
- Publication number
- DE102017120605A1 DE102017120605A1 DE102017120605.1A DE102017120605A DE102017120605A1 DE 102017120605 A1 DE102017120605 A1 DE 102017120605A1 DE 102017120605 A DE102017120605 A DE 102017120605A DE 102017120605 A1 DE102017120605 A1 DE 102017120605A1
- Authority
- DE
- Germany
- Prior art keywords
- entity
- entities
- context
- list
- data structure
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
- Machine Translation (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- GEBIET
- Die vorliegende Spezifikation betrifft im Allgemeinen Suchmaschinen.
- HINTERGRUND
- Eine Internetsuchmaschine ist typischerweise zum Suchen nach Informationen im World Wide Web konzipiert. Benutzer können Anfragen an die Suchmaschine schicken und die Suchmaschine kann in Reaktion auf jede Suchanfrage eine Liste von Dokumenten identifizieren und präsentieren, die relevante Informationen beinhalten. Insbesondere können die relevanten Informationen einen Sachverhalt beinhalten, der relevant für die Anfrage ist.
- KURZDARSTELLUNG
- In einigen Implementierungen kann ein Sachverhalt in Reaktion auf eine Anfrage bereitgestellt werden. Der Sachverhalt kann hilfreich beim Bereitstellen von Informationen sein, die zu der Anfrage gehören, wobei jedoch das Platzieren des Sachverhalts innerhalb eines Kontexts anderer ähnlicher Sachverhalte hilfreicher sein kann. In bestimmten Aspekten können Kontextinformationen in Bezug auf bestimmte Sachverhalte das Bewerten des Sachverhalts unter den anderen ähnlichen Sachverhalten beinhalten. Beispielsweise kann es hilfreich sein, zu wissen, dass Barack Obama sechs Fuß und einen Zoll groß ist, wobei es hilfreicher sein kann, zu wissen, dass Barack Obama der neuntgrößte Präsident der Vereinigten Staaten ist. Dementsprechend kann die Größe von Barack Obama zusätzlich zu dem Kontext bereitgestellt werden, wie sich die Größe im Vergleich zu anderen Präsidenten der Vereinigten Staaten verhält.
- In dieser Spezifikation beschriebene exemplarische Verfahren stellen Kontextsachverhalte mit einer geringeren Rechenkomplexität im Vergleich zum erschöpfenden Durchsuchen einer Wissensdatenbank von Informationen bereit, die Suchanfragen zugeordnet sind. Dementsprechend können diese Verfahren verwendet werden, um Kontextsachverhalte ohne Durchsuchen der gesamten Wissensdatenbank nach Informationen bereitzustellen, wodurch die Verwendung von Computerressourcen beim Bereitstellen von Kontextsachverhalten reduziert wird. Ein innovativer Aspekt des in dieser Spezifikation beschriebenen Gegenstandes ist in Verfahren enthalten, die die Aktionen des Empfangens von einer oder mehreren Listen von Entitäten beinhalten, wobei jede Liste (i) eine zugeordnete Punktzahl aufweist, (ii) einem jeweiligen Kontextsachverhalt zugeordnet ist, und (iii) eine Untergruppe der Entitäten einstuft, wobei jede Entität der Untergruppe basierend auf einem jeweiligen Wert eingestuft wird, der der Entität für den jeweiligen Kontextsachverhalt zugeordnet ist, und für jede der Listen von Entitäten Generieren einer Datenstruktur für jede Entität auf der Liste, die auf (i) die Entität, (ii) den der Entität zugeordneten Kontextsachverhalt, (iii) den Rang der Entität für den Kontextsachverhalt und (iv) die Punktzahl für die Liste verweist. Das Verfahren kann zudem das Empfangen von Daten beinhalten, die eine bestimmte Entität identifizieren, Auswählen einer bestimmten Datenstruktur, die auf die bestimmte Entität verweist, und Bereitstellen von Daten für die Ausgabe, die (i) den der bestimmten Datenstruktur zugeordneten Kontextsachverhalt angeben, der auf die bestimmte Entität verweist, und (ii) die Rangstufe der Entität für den der bestimmten Datenstruktur zugeordneten Kontextsachverhalt, der auf die bestimmte Entität verweist.
- Weitere Implementierungen dieses und sonstiger Aspekte beinhalten entsprechende Systeme, Vorrichtungen und Computerprogramme, die konfiguriert sind, um Funktionen der Verfahren, die auf Computerspeichergeräten codiert sind, durchzuführen.
- Implementierungen können jeweils optional ein oder mehrere der folgenden Merkmale beinhalten. Beispielsweise kann das Verfahren die Punktzahl für jede Liste basierend auf einer Häufigkeit von kürzlichen Suchanfragen beinhalten, die die Liste beinhalten. Das Verfahren kann die bestimmte Datenstruktur beinhalten, die basierend auf der Punktzahl ausgewählt wird, die auf die bestimmte Entität verweist. Das Verfahren kann ferner das Bereitstellen von Daten für die Ausgabe beinhalten, die (i) die Untergruppe der Entitäten angeben, wobei auf jede Entität der Untergruppe von Entitäten durch die bestimmte Datenstruktur verwiesen wird, und (ii) die Rangstufe für jede Entität der Untergruppe der Entitäten angeben. In bestimmten Aspekten kann das Verfahren das Bereitstellen eines Vergleichs zwischen den Daten beinhalten, die die Rangstufe für jede Entität der Untergruppe von Entitäten und einen Rangstufenschwellenwert angeben, das Auswählen von einer oder mehreren Entitäten der Untergruppe der Entitäten basierend auf dem Vergleich, und für die Ausgabe das Bereitstellen von Daten, die (i) die eine oder mehreren ausgewählten Entitäten und (ii) die Rangstufe für jede Entität der ausgewählten Entitäten angeben. Das Verfahren kann das Generieren von Text in natürlicher Sprache entsprechend den Daten beinhalten, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und das Bereitstellen des Textes in natürlicher Sprache für die Ausgabe. Des Weiteren kann das Verfahren das Empfangen von Daten beinhalten, die eine bestimmte Entität identifizieren, beinhaltend das Empfangen eines Synonyms, das der bestimmten Entität entspricht.
- Vorteilhafte Implementierungen können ein oder mehrere der folgenden Merkmale beinhalten. Das Verfahren zum Bereitstellen von Kontextsachverhalten beinhaltet das Bereitstellen eines strukturierten Sachverhalts zusammen mit größeren Kontextinformationen. Die größeren Kontextinformationen können angeben, inwiefern der strukturierte Sachverhalt innerhalb einer breitgefassteren Gruppe eingestuft ist. Die Kontextinformationen können informativen Text verwenden, der die Rangstufe des strukturellen Sachverhalts angibt. Zusätzlich zum Bereitstellen der Rangstufe des strukturierten Sachverhalts kann das Verfahren andere verwandte Entitäten bereitstellen, die innerhalb der breitgefassteren Gruppe bewertet sind. Die verwandten Entitäten können zusammen mit dem strukturierten Sachverhalt bereitgestellt werden, um die Prominenz des strukturierten Sachverhalts zu unterscheiden, indem derselbe in einem breiten Kontext präsentiert wird.
- In bestimmten Aspekten kann das Verfahren zum Bereitstellen von Kontextinformationen relevante Kontextsachverhalte basierend auf dem Identifizieren einer bestimmten Entität von empfangenen Daten auswählen. Dementsprechend kann das Verfahren das Auswählen eines angemessenen Kontexts für eine bestimmte Entität beinhalten, wenn ein oder mehrere Kontexte der bestimmten Entität zugeordnet sind. Das Verfahren zum Bereitstellen von Kontextsachverhalten kann zudem das Synthetisieren von natürlichen Sprachtranskriptionen beinhalten, die den Kontextsachverhalten für die bestimmte Entität entsprechen. Die natürlichen Sprachtranskriptionen können für Textausgaben, Audioausgaben oder für beide bereitgestellt werden. In einigen Aspekten können die natürlichen Sprachtranskriptionen als Audioausgabe über Text-zu-Sprache (TTS) oder eine andere Sprachausgabe bereitgestellt werden.
- Das Verfahren zum Bereitstellen von Kontextsachverhalten kann auf unterschiedliche Entitäten angewandt werden, wobei die unterschiedlichen Entitäten basierend auf gemeinsamen Merkmalen in Kategorien oder Gruppen sortiert werden können. Daher kann das Verfahren zum Bereitstellen von Kontextsachverhalten jeder der Entitäten basierend auf verwandten Entitäten innerhalb der automatisch generierten Listen automatisch Kontextsachverhalte zuordnen.
- In einigen Aspekten kann das Verfahren zum Bereitstellen von Kontextsachverhalten basierend auf einer Häufigkeit des Erscheinens der Entitäten in Suchanfragen automatisch Kontextsachverhalte auswählen. Dementsprechend kann das Verfahren Kontextsachverhalte für jede Entität basierend auf der Relevanz von jeder Entität und den entsprechenden Sachverhalt jeder Entität in kürzlichen Suchanfragen identifizieren. Das Verfahren kann zudem Kontextsachverhalte für jede Entität basierend auf einer Häufigkeit von kürzlichen Suchanfragen identifizieren, die eine Liste beinhalten, die der bestimmten Entität entspricht.
- Das Verfahren zum Bereitstellen von Kontextsachverhalten beinhaltet eine geringere Rechenkomplexität als das erschöpfende Durchsuchen einer Wissensdatenbank von Informationen, die Suchanfragen zugeordnet sind. Dementsprechend kann das Verfahren zum Bereitstellen von Kontextsachverhalten ohne ein Durchsuchen der gesamten Wissensdatenbank nach Informationen bereitstellen. Stattdessen kann das Verfahren „unpopuläre“ Daten herausfiltern, die nicht häufig in kürzlichen Suchanfragen auftauchen, um Kontextsachverhalte effizient und genau zu bestimmen.
- Die Details einer oder mehrerer Ausführungsformen von der Erfindung sind in den begleitenden Zeichnungen und der nachfolgenden Beschreibung dargelegt. Andere Merkmale und Vorteile der Erfindung werden aus der Beschreibung, den Zeichnungen und den Ansprüchen deutlich.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 veranschaulicht ein Beispiel einer Browseroberfläche zum Anzeigen von Kontextsachverhalten gemäß bestimmten Aspekten der Offenbarung. -
2 zeigt eine Veranschaulichung eines exemplarischen Systems zum Bereitstellen von Kontextsachverhalten gemäß bestimmten Aspekten der Offenbarung. -
3 zeigt einen Arbeitsablauf zum Bereitstellen von Kontextsachverhalten gemäß bestimmten exemplarischen Aspekten der Offenbarung. -
4 zeigt eine Veranschaulichung eines exemplarischen Ablaufdiagramms zum Bereitstellen von Kontextsachverhalten gemäß bestimmten Aspekten der Offenbarung. -
5 zeigt ein Computergerät und einen mobilen Computer gemäß bestimmten exemplarischen Aspekten der Offenbarung. - In den unterschiedlichen Zeichnungen werden gleiche Bezugszeichen und Bezeichnungen für gleiche Elemente verwendet.
- AUSFÜHRLICHE BESCHREIBUNG
-
1 veranschaulicht ein Beispiel einer Browseroberfläche100 zum Anzeigen von Kontextsachverhalten gemäß bestimmten Aspekten der Offenbarung. Die Browseroberfläche100 zum Anzeigen von Kontextsachverhalten beinhaltet ein Anfragefeld102 zum Anzeigen von eingegebenen Anfragen und eine Wissensbibliothek103 zum Anzeigen von den eingegebenen Anfragen entsprechenden Daten. In bestimmten Aspekten kann die Wissensbibliothek103 einen Entitätsbereich104 zum Anzeigen einer der Anfrage zugeordneten Entität, einen Attributsbereich106 zum Anzeigen eines einer Entität zugeordneten Attributs, einen Sachverhaltbereich108 zum Anzeigen einer der Entität und dem Attribut zugeordneten Sachverhalt, einen Kontextsachverhaltbereich110 zum Anzeigen eines der Entität zugeordneten Kontextsachverhalts, z. B. einen Rang der Entität neben anderen Entitäten auf der Basis des Sachverhalts, einen Listenbereich112 zum Anzeigen einer Liste, die auf dem der Entität zugeordneten Attribut106 basiert, einen zugehörigen Entitätsbereich114 zum Anzeigen zugehöriger Entitäten, die einer Liste der Entität zugeordnet sind, und einen zugehörigen Sachverhaltbereich116 zum Anzeigen der dem Sachverhalt der Entität zugeordneten zugehörigen Sachverhalte beinhalten. - Die Browseroberfläche
100 zum Anzeigen von Kontextsachverhalten kann für die Ausgabe durch einen Server bereitgestellt, und auf einem Computergerät angezeigt werden. Das Computergerät kann ein oder mehrere Computergeräte, wie z. B. ein Smartphone, einen Laptop-Computer, einen Desktop- oder Personal-Computer, ein Tablet und dergleichen, beinhalten. - Ein Server kann zum Empfangen von Daten konfiguriert sein, die eine bestimmte Entität identifizieren, die auf Inhalten eines Anfragefeldes
102 basiert. Der Server kann zum Bereitstellen von Daten konfiguriert sein, die der Entität des Entitätsbereichs104 für die Ausgabe entsprechen. In bestimmten Aspekten werden die Daten auf der Wissensbibliothek103 der Browseroberfläche100 zum Bereitstellen von Kontextsachverhalten ausgegeben. - Die Browseroberfläche
100 kann zum Bereitstellen von Kontextinformationen in Reaktion auf Anfragen des Anfragefeldes102 verwendet werden. Das Anfragefeld102 kann eine Entität, ein Synonym einer Entität, einen oder mehrere Begriffe, eine Phrase, eine explizite Frage, eine implizite Frage oder eine Kombination derselben beinhalten. Die Entität des Entitätsbereichs104 kann einem bestimmten Attribut oder einer Eigenschaft entsprechen, die in dem Attributsbereich106 angezeigt wird. - Beispielsweise kann das Anfragefeld
102 „wie groß ist Barack Obama“ beinhalten. Dementsprechend kann der jeweilige Entitätsbereich104 „Barack Obama“ beinhalten, während der jeweilige Attributsbereich „Größe“106 beinhalten kann. In diesem Fall wäre der der Entität und dem Attribut entsprechende Sachverhaltbereich108 „6‘ 1““ (sechs Fuß und ein Zoll). Dementsprechend kann der Server zum Bereitstellen von Daten für die Ausgabe konfiguriert sein, die einen der Entität des Anfragefeldes102 entsprechenden Sachverhalt angeben. Der Server kann außerdem zum Bereitstellen von Daten für die Ausgabe konfiguriert sein, die eine oder mehrere Kontextsachverhalte angeben, die in dem Kontextsachverhaltbereich110 angezeigt werden. In einigen Aspekten können die Kontextsachverhalte eine Prominenz des Sachverhalts108 in einer Liste von zugehörigen Sachverhalten beschreiben. - In bestimmten Aspekten der vorliegenden Offenbarung kann die Browseroberfläche
100 zum Anzeigen von Kontextsachverhalten zum Bereitstellen zusätzlicher Kontextinformationen in Reaktion darauf verwendet werden, dass der Server Daten empfängt, die eine bestimmte Entität104 identifizieren. Die Browseroberfläche100 zum Anzeigen von Kontextsachverhalten kann zusätzliche Informationen beinhalten, die einem Kontextsachverhalt entsprechen. In einigen Aspekten können die zusätzlichen Informationen einen Listenbereich112 zum Anzeigen eines Indikators einer der Entität zugeordneten Liste beinhalten. Die zusätzlichen Informationen können des Weiteren einen zugehörigen Entitätsbereich114 zum Anzeigen von einer oder mehreren Entitäten beinhalten, die der Liste der Entität114 zugeordnet sind. Wenn beispielsweise ein Anfragefeld102 , „wie groß ist Barack Obama“ beinhaltet, kann der Kontextsachverhaltbereich110 „der neuntgrößte Präsident der Vereinigten Staaten“ beinhalten. In diesem Fall wäre die entsprechende Liste der dem Kontextsachverhalt zugeordneten Entitäten „größte Präsidenten der Vereinigten Staaten“. - Jede der zugehörigen Entitäten kann einen zugehörigen Sachverhalt beinhalten. Die dem Kontextsachverhalt entsprechende Liste kann zusammen mit den zugehörigen Entitäten und den zugehörigen Sachverhalten bereitgestellt werden, die jeder der zugehörigen Entitäten der jeweiligen Liste entsprechen. In einigen Aspekten kann eine zuvor festgelegte Anzahl von zugehörigen Entitäten in dem zugehörigen Entitätsbereich
114 der Browseroberfläche100 zum Anzeigen von Kontextsachverhalten bereitgestellt werden. Die Anzahl von zugehörigen bereitgestellten Entitäten kann auf der Liste basieren, die dem Kontextsachverhalt, der Gesamtanzahl von zugehörigen Entitäten oder einer beliebigen Kombination derselben zugeordnet ist. Wenn beispielsweise der Listenbereich112 den Kontextsachverhalt „Größte Präsidenten der Vereinigten Staaten“ beinhaltet, kann der zugehörige Entitätsbereich114 die vier größten Präsidenten der Vereinigten Staaten beinhalten: Abraham Lincoln, Lyndon B. Johnson, Thomas Jefferson und Franklin D. Roosevelt sowie den jeweiligen zugehörigen Sachverhalt oder die Größe in diesem Fall, für jeden. -
2 zeigt eine Veranschaulichung eines exemplarischen Systems zum Bereitstellen von Kontextsachverhalten200 gemäß bestimmten Aspekten der Offenbarung. Das System zum Bereitstellen von Kontextsachverhalten200 kann ein Sachverhalte-Einstufungsmodul210 zum Bewerten von Sachverhalten, ein Kontextsachverhaltemodul220 zum Zuordnen von Kontextsachverhalten zu einem bestimmten Sachverhalt, und eine Suchmaschine240 zum Empfangen von Anfragen und Bereitstellen von Daten für die Ausgabe beinhalten. - Das Sachverhalte-Einstufungsmodul
210 kann zwei oder mehr Sachverhalte basierend auf einem bestimmten Attribut bewerten. Beispielsweise kann das Sachverhalte-Einstufungsmodul210 die größten Präsidenten der Vereinigten Staaten bewerten. In diesem Fall kann das Sachverhalte-Einstufungsmodul210 Entitäten, wie z. B. Präsidenten der Vereinigten Staaten basierend auf einem Sachverhalt bewerten, die jedem Präsidenten entspricht, wie z. B. deren Größe. Dementsprechend kann das Sachverhalte-Einstufungsmodul210 bestimmen, dass die größten vier Präsidenten der Vereinigten Staaten in absteigender Reihenfolge wie folgt lauten: Abraham Lincoln, Lyndon B. Johnson, Thomas Jefferson und Franklin D. Roosevelt. Das Sachverhalte-Einstufungsmodul210 kann eine Rangstufe jeder der Sachverhalte zuordnen. In diesem Fall kann Abraham Lincoln als Erster, Lyndon B. Johnson als Zweiter, Thomas Jefferson als Dritter und Franklin D. Roosevelt als Vierter eingestuft werden. - In bestimmten Aspekten kann ein bestimmter Sachverhalt in eine oder mehrere unterschiedliche Kategorien eingestuft werden. Beispielsweise kann das Sachverhalte-Einstufungsmodul
210 den Berg K2 gemäß einem ersten Attribut, wie z. B. höchste Berge der Welt, einstufen, zudem kann das Sachverhalte-Einstufungsmodul210 den Berg K2 gemäß einem zweiten Attribut, wie z. B. höchste Berge in Asien, einstufen. Dementsprechend kann das Sachverhalte-Einstufungsmodul210 den Berg K2 einem ersten Rang für das erste Attribut der höchsten Berge der Welt zuordnen, zudem kann das Sachverhalte-Einstufungsmodul210 den Berg K2 einem zweiten Rang für das zweite Attribut der höchsten Berge in Asien zuordnen. - Das Kontextsachverhaltemodul
220 kann Kontextsachverhalte bestimmen, die einem bestimmten Sachverhalt zugeordnet sind. Das Kontextsachverhaltemodul220 kann einen Listengenerator222 zum Generieren von Listen von Sachverhalten, einen Datenstrukturgenerator224 zum Generieren von Datenstrukturen, die auf Daten Bezug nehmen, die einem bestimmten Sachverhalt entsprechen, einen Sachverhalteselektor226 zum Auswählen eines bestimmten Sachverhalts unter den generierten Listen, und einen natürlichen Sprachprozessor230 zum Verarbeiten von natürlichen Sprachdaten entsprechend einem bestimmten Sachverhalt und den dem bestimmten Sachverhalt zugeordneten Kontextdaten beinhalten. - Der Listengenerator
222 des Kontextsachverhaltemoduls220 kann zum Generieren von Listen verwendet werden, die einem bestimmten Attribut entsprechen. Die Listen können eine oder mehrere Sachverhalte beinhalten, die dem bestimmten Attribut entsprechen. Beispielsweise kann der Listengenerator222 eine Liste der größten Präsidenten der Vereinigten Staaten generieren. In diesem Fall kann das Attribut dieser Liste die Größe sein. Die Liste kann eine oder mehrere Entitäten, wie z. B. Präsidenten der Vereinigten Staaten, beinhalten, wobei jeder Präsident einem jeweiligen Sachverhalt, wie z. B. der Größe des Präsidenten, zugeordnet ist. Die Liste kann Ränge für jede der Sachverhalte beinhalten. In bestimmten Aspekten stellt das Sachverhalte-Einstufungsmodul210 die Ränge für jeden der Sachverhalte für das Kontextsachverhaltemodul220 bereit. - Der Listengenerator
222 kann des Weiteren zum Zuordnen von Punktzahlen zu jeder der Listen verwendet werden. Die mit Punktzahlen bewerteten Listen können durch das Kontextsachverhaltemodul220 für Listeneinstufungen227 verwendet werden. In bestimmten Aspekten kann jede Liste einer Punktzahl228a –228n zugeordnet werden. Die Punktzahlen der Listen228a –228n können eine Popularität der Liste angeben. In einigen Aspekten kann die Punktzahl einer bestimmten Liste durch eine Häufigkeit von kürzlichen Anfragen bestimmt werden, die Entitäten beinhalten, die der bestimmten Liste zugeordnet sind. In bestimmten Aspekten kann die Punktzahl der bestimmten Liste auf einer Häufigkeit von kürzlichen Suchanfragen, einschließlich der bestimmten Liste, basieren. Beispielsweise kann eine Liste der höchsten Berge der Welt eine größere Punktzahl im Vergleich zu einer Liste der höchsten Berge in Asien beinhalten. Dementsprechend kann die Liste der größten Präsidenten der Vereinigten Staaten populärer als die Liste der ältesten Präsidenten der Vereinigten Staaten sein. Daher können Listen, die häufig in kürzlichen Anfragen erscheinen, einer größeren Punktzahl zugeordnet werden als Listen, die nicht häufig in kürzlichen Anfragen erscheinen. - Der Datenstrukturgenerator
224 kann zum Generieren einer Datenstruktur für jede Entität der Listen verwendet werden. Eine Datenstruktur kann für jede der Entitäten innerhalb einer bestimmten Liste erzeugt werden. Die Datenstruktur kann eine bestimmte Entität, einen der bestimmten Entität zugeordneten Sachverhalt, und die Punktzahl der Liste beinhalten, die jedem der Sachverhalte zugeordnet ist, der der bestimmten Entität zugeordnet ist. Die Datenstruktur kann zudem einen Rang für den Sachverhalt beinhalten, der der bestimmten Entität zugeordnet ist. Beispielsweise kann Abraham Lincoln einen Rang für die Liste der größten Präsidenten der Vereinigten Staaten beinhalten. Dementsprechend kann Abraham Lincoln als der größte Präsident der Vereinigten Staaten eingestuft werden. - Der Sachverhalteselektor
226 des Kontextsachverhaltemoduls220 kann zum Auswählen einer bestimmten Datenstruktur verwendet werden, die einer Entität zugeordnet ist. In einigen Aspekten kann der Sachverhalteselektor226 Daten der Suchmaschine240 verwenden, die einer bestimmten Entität entsprechen, und eine bestimmte Datenstruktur basierend auf der Entität auswählen, die den Suchmaschinendaten zugeordnet ist. In bestimmten Aspekten kann die bestimmte Datenstruktur auf der bestimmten Entität sowie einem Attribut der bestimmten Entität basieren. Die Suchmaschinendaten können Daten von dem Anfragefeld, wie z. B. Anfragebegriffe, beinhalten. Die Suchmaschine240 und die durch die Suchmaschine240 bereitgestellten Daten werden hierin weiter abgehandelt. - Der natürliche Sprachprozessor
230 des Kontextsachverhaltemoduls220 kann zum Ausführen von natürlicher Sprachsynthese231 auf Daten einer ausgewählten Datenstruktur verwendet werden. Der natürliche Sprachprozessor230 kann Text in natürlicher Sprache synthetisieren, um Daten der ausgewählten Datenstruktur zu repräsentieren. In einem Beispiel kann eine der Entität Barack Obama zugeordnete Datenstruktur in Bezug auf Daten der Suchmaschine240 ausgewählt werden, die den größten Präsidenten der Vereinigten Staaten entsprechen. In diesem Fall kann Barack Obama als Neunter in dieser bestimmten Liste eingestuft werden. Dementsprechend kann der natürliche Sprachprozessor230 zum Synthetisieren von Text, wie z. B. „Barack Obama ist der neuntgrößte Präsident der Vereinigten Staaten“, verwendet werden. Beispielsweise kann ein Benutzer eine Anfrage über ein Telefon, eine Uhr, ein Obertischgerät und dergleichen eingeben. Der natürliche Sprachprozessor230 kann zum Formatieren von Daten der ausgewählten Datenstruktur als Audioausgabe konfiguriert sein, und die Audioausgabe für die Ausgabe über TTS oder eine andere Sprachausgabe bereitstellen. - In bestimmten Aspekten kann das Kontextsachverhaltemodul
220 in Kommunikation mit einer Suchmaschine240 stehen. Die Suchmaschine240 kann zum Bereitstellen von Daten für das Kontextsachverhaltemodul220 verwendet werden. Das Kontextsachverhaltemodul220 kann zum Bestimmen einer Entität und eines Attributs der Suchanfragedaten verwendet werden. Die Suchanfragedaten der Suchmaschine240 können durch den Sachverhalteselektor226 des Kontextsachverhaltemoduls224 verwendet werden, um eine bestimmte Datenstruktur zu bestimmen, die der Entität und dem Attribut der Suchmaschinendaten entspricht. - Die Suchmaschine
240 kann zum Empfangen von Daten verwendet werden, die für die Ausgabe durch das Kontextsachverhaltemodul220 bestimmt sind. In bestimmten Aspekten können die Daten in einer Wissensbibliothek245 der Suchmaschine angezeigt werden. Das Kontextsachverhaltemodul220 kann Daten für die Ausgabe entsprechend dem bestimmten Sachverhalt und der bestimmten Entität bereitstellen. In einigen Aspekten kann das Kontextsachverhaltemodul220 Daten für die Ausgabe, wie z. B. einen dem bestimmten Sachverhalt der bestimmten Entität zugeordneten Rang, bereitstellen. Die Daten für die Ausgabe können des Weiteren Kontextdaten beinhalten, die dem bestimmten Sachverhalt der bestimmten Daten zugeordnet sind. Wenn beispielsweise der Rang von Barack Obama in einer Liste der größten Präsidenten der Vereinigten Staaten für die Ausgabe bereitgestellt wird, kann der Rang der vier größten Präsidenten der Vereinigten Staaten auch für die Ausgabe als Kontextdaten in der Suchmaschine240 bereitgestellt werden. -
3 zeigt einen Arbeitsablauf zum Bereitstellen von Kontextsachverhalten300 gemäß bestimmten exemplarischen Aspekten der Offenbarung. Der Arbeitsablauf zum Bereitstellen von Kontextsachverhalten300 beschreibt einen Prozess zum Empfangen von Daten, die eine bestimmte Entität identifizieren, das Auswählen einer bestimmten Datenstruktur basierend auf der bestimmten Entität, sowie das Bereitstellen von Daten der Datenstruktur für die Ausgabe. Der Arbeitsablauf zum Bereitstellen von Kontextsachverhalten300 kann Listen von eingestuften Sachverhalten302a –302n , eine Datenstruktur304 , die einer bestimmten Entität entspricht, eine Kontextsachverhaltsynthese306 , die eine bestimmte Datenstruktur auswählt, und eine Liste der zu synthetisierenden Datenstruktur, und eine Kontextsachverhaltausgabe308 beinhalten, die Daten der Kontextsachverhaltsynthese306 für die Ausgabe bereitstellt. In bestimmten Aspekten kann die Datenstruktur304 einer bestimmten Entität, einem bestimmten Attribut der Entität oder beidem entsprechen. - Die Liste von eingestuften Sachverhalten
302a –302n kann jeweils eine oder mehrer Entitäten beinhalten, die basierend auf den jeder Entität zugeordneten Sachverhalten eingestuft sind. Beispielsweise kann die Liste von eingestuften Sachverhalten302a –302n die höchsten Berge in Asien, die höchsten Berge der Welt, die längsten Flüsse der Welt, die größten Präsidenten der Vereinigten Staaten und dergleichen beinhalten. In der Liste der höchsten Berge der Welt können Entitäten, wie z. B. Berge, gemäß einem Attribut, wie z. B. Höhe, eingestuft werden. In bestimmten Aspekten kann eine zuvor festgelegte Anzahl von Entitäten in jeder der Listen von eingestuften Sachverhalten302a –302n enthalten sein. Dementsprechend kann die Liste der höchsten Berge der Welt eine Gesamtheit von fünf Entitäten beinhalten: Mount Everest, K2, Kangchenjunga, Lhotse und Makalu. Die Liste der höchsten Berge der Welt kann die Berge basierend auf der Höhe von jedem Berg einstufen. Unter Bezugnahme auf3 kann der Mount Everest als Erster, der K2 als Zweiter, der Kangchenjunga als Dritter, der Lhotse als Vierter und der Makalu als Fünfter eingestuft werden. - Die Liste von eingestuften Sachverhalten
302a –302n kann jeweils einer Punktzahl zugeordnet werden. Die Punktzahl jeder Liste kann einer relativen Popularität jeder Liste entsprechen. In bestimmten Aspekten wird die Punktzahl jeder Liste basierend auf einer Häufigkeit von kürzlichen Suchanfragen, einschließlich einer Entität generiert, die der bestimmten Liste zugeordnet ist. In einigen Aspekten kann die Punktzahl der bestimmten Liste auf einer Häufigkeit von kürzlichen Suchanfragen, einschließlich der bestimmten Liste, basieren. Beispielsweise kann eine Liste der größten Präsidenten der Vereinigten Staaten häufiger in kürzlichen Suchanfragen erscheinen als eine Liste der höchsten Berge der Welt. In diesem Fall kann die Liste der größten Präsidenten der Vereinigten Staaten dahingehend bestimmt werden, dass sie populärer als die Liste der höchsten Berge der Welt ist. Dementsprechend kann die Liste der höchsten Berge der Welt eine Listenpunktzahl von 75 von 100 beinhalten und die Liste der größten Präsidenten der Vereinigten Staaten kann eine Listenpunktzahl von 90 von 100 beinhalten, um das Auftreten von jeder Liste in kürzlichen Suchanfragen widerzuspiegeln. - Eine Datenstruktur
304 kann für jeden Sachverhalt der Entitäten generiert werden, die den Listen von eingestuften Sachverhalten302a –302n zugeordnet sind. Die Datenstruktur304 kann einem bestimmten Attribut einer jeweiligen Entität entsprechen. In einigen Aspekten kann die Datenstruktur304 auf eine Liste, die einer bestimmten Entität zugeordnet ist, einen Rang der Entität innerhalb der Liste und eine Listenpunktzahl verweisen, die der jedem jeweiligen Attribut der Entität zugeordneten Liste entspricht. Beispielsweise kann die Höhe des Berges K2 einer Datenstruktur zugeordnet werden, die innerhalb der Listen von eingestuften Sachverhalten302a –302n positioniert ist. Unter Bezugnahme auf3 kann die Höhe des Berges K2 der Liste der höchsten Berge der Welt zugeordnet werden. Es kann ein Rang für die Entität und eine Listenpunktzahl in jeder Datenstruktur vorhanden sein. Dementsprechend kann die Höhe des Berges K2 als Zweite in der Liste der höchsten Berge der Welt eingestuft werden, und eine Listenpunktzahl von 75 beinhalten. - Die Kontextsachverhaltsynthese
306 kann zum Auswählen einer bestimmten Datenstruktur304 verwendet werden. In bestimmten Aspekten verwendet die Kontextsachverhaltsynthese306 die Listenpunktzahlen für jede Datenstruktur304 zum Bestimmen, welche Datenstruktur auszuwählen ist. Wenn es beispielsweise zwei Höhendatenstrukturen des Berges K2 gibt, und jede der Datenstrukturen einer anderen Liste zugeordnet ist, können die zwei Listen zwei unterschiedliche Listenpunktzahlen beinhalten. Dementsprechend kann die Kontextsachverhaltsynthese306 die Höhendatenstrukturen des Berges K2 mit der größten Punktzahl für die Synthese auswählen. Beispielsweise kann eine erste Höhendatenstruktur des Berges K2 einer Liste der höchsten Berge der Welt mit einer Listenpunktzahl von 75 zugeordnet werden und eine zweite Höhendatenstruktur des Berges K2 kann einer Liste der höchsten Berge in Asien mit einer Punktzahl von 15 entsprechen. Dementsprechend kann die Kontextsachverhaltsynthese306 die Höhendatenstruktur des Berges K2 auswählen, die auf die Liste der höchsten Berge der Welt zur Synthese verweist, aufgrund der größeren Punktzahl dieser Liste zwischen den zwei Listen. - Die Kontextsachverhaltsynthese
306 kann außerdem zum Ausführen von natürlicher Sprachsynthese an der Entität und dem Sachverhalt verwendet werden, die der Entität entspricht. Dementsprechend kann die Entität und der entsprechende Sachverhalt für die Ausgabe in Form von Text, Audio oder beidem bereitgestellt werden. Wenn beispielsweise die Entität als Berg K2 bestimmt wird, wird die Liste dahingehend bestimmt, dass sie den höchsten Bergen der Welt entspricht, während der Rang der Entität innerhalb der Liste als zweiter bestimmt wird, und die Kontextsachverhaltsynthese306 einfachen englischen Text synthetisieren kann, der für die Ausgabe, wie z. B. „der Berg K2 ist der zweithöchste Berg der Welt“, bereitgestellt wird. - Die Kontextsachverhaltausgabe
308 kann die Ausgabe beinhalten, die synthetisiert, und durch die Kontextsachverhaltsynthese306 bereitgestellt wurde. Die Kontextsachverhaltausgabe308 kann Daten, die durch die Kontextsachverhaltsynthese306 bereitgestellt werden, über Text, Audio oder beides ausgeben. Die Kontextsachverhaltausgabe308 kann die Entität, die der Entität zugeordnete bestimmte Liste, den Rang der Entität innerhalb der Liste und den Sachverhalt der Entität beinhalten. Beispielsweise kann die Entität den Berg K2 beinhalten, die dem Berg K2 zugeordnete Liste können die höchsten Berge der Welt sein, der Rang der Entität innerhalb der Liste kann der zweithöchste Berg der Welt sein, und der Sachverhalt kann der Höhe des Berges K2 entsprechen. - In bestimmten Aspekten kann die Kontextsachverhaltausgabe
308 zusätzliche Informationen bereitstellen, die zu der Prominenz des Sachverhalts der Entität innerhalb der Liste gehören. Die Kontextsachverhaltausgabe308 kann verwandte Entitäten beinhalten, die in der Liste der ausgewählten Entität enthalten sind. Wenn beispielsweise der Rang des Berges K2 in der Liste der höchsten Berge der Welt ausgegeben wird, kann die Kontextsachverhaltausgabe308 auch andere Berge innerhalb der Liste der höchsten Berge der Welt ausgeben. Daher kann der Rang des Berges K2 neben anderen Bergen bereitgestellt werden, die in der Liste der höchsten Berge der Welt eingestuft sind. In diesem Fall kann der Berg K2 mit den anderen eingestuften Bergen verglichen werden. In einigen Aspekten werden die Sachverhalte von jeder verwandten Entität zusätzlich zum Rang von jeder verwandten Entität ausgegeben. Beispielsweise kann die Höhe von jedem Berg in der Liste der höchsten Berge der Welt zusätzlich zu dem Rang ausgegeben werden, der den Bergen zugeordnet ist. -
4 veranschaulicht ein exemplarisches Ablaufdiagramm zum Bereitstellen von Kontextsachverhalten400 gemäß bestimmten Aspekten der Offenbarung. Das Ablaufdiagramm zum Bereitstellen von Kontextsachverhalten400 beschreibt einen Prozess des Bereitstellens von Kontextsachverhalten in Reaktion auf Anfragebegriffe einer Suchmaschine. Bei Schritt402 kann ein Server zum Empfangen von einer oder mehreren Listen von Entitäten konfiguriert sein. Jede der Listen kann eine zugeordnete Punktzahl beinhalten, einem jeweiligen Sachverhalt zugeordnet sein, und eine Rangstufe einer Untergruppe der Entitäten beinhalten. - Die einer bestimmten Liste zugeordnete Punktzahl kann eine relative Popularität der Liste angeben. In bestimmten Aspekten wird die Punktzahl der bestimmten Liste basierend auf einer Häufigkeit des Auftretens der Entitäten bestimmt, die der Liste in kürzlichen Suchanfragen zugeordnet werden. In einigen Aspekten kann die Punktzahl der bestimmten Liste auf einer Häufigkeit von kürzlichen Suchanfragen, einschließlich der bestimmten Liste, basieren. Beispielsweise kann eine Liste der größten Präsidenten der Vereinigten Staaten häufiger in kürzlichen Suchanfragen erscheinen als eine Liste der höchsten Berge der Welt. In diesem Fall kann die Liste der größten Präsidenten der Vereinigten Staaten, als populärer als die Liste der höchsten Berge der Welt bestimmt werden. Dementsprechend kann die Liste der höchsten Berge der Welt eine Listenpunktzahl von 75 von 100 beinhalten und die Liste der größten Präsidenten der Vereinigten Staaten kann eine Listenpunktzahl von 90 von 100 beinhalten, um das Auftreten von jeder Liste in kürzlichen Suchanfragen widerzuspiegeln.
- Der jeweilige Sachverhalt jeder Liste kann ein Attribut oder eine Eigenschaft beinhalten, die für alle Entitäten der Liste gilt. Beispielsweise kann ein Attribut die Bergeshöhe, die Größe des Präsidenten der Vereinigten Staaten, Flusslänge und dergleichen beinhalten. In einigen Aspekten kann der jeweilige Sachverhalt von jeder Liste zum Klassifizieren der Listen verwendet werden.
- Die Rangstufe der Untergruppe von Entitäten kann auf einem jeder Entität zugeordneten jeweiligen Wert basieren. Der jeweilige Wert kann einem Wert von jeder Entität in Bezug auf den jeweiligen Sachverhalt jeder Liste entsprechen. Beispielsweise kann ein jeweiliger Wert für den Berg K2 die Höhe oder Erhebung des Berges K2 sein. Die Erhebung kann verwendet werden, um zu bestimmen, dass der Berg K2 der zweithöchste Berg in einer Liste der höchsten Berge, wie z. B. eine Liste der höchsten Berge der Welt, ist.
- Bei Schritt
404 kann der Server zum Generieren einer Datenstruktur für jede Entität der Listen konfiguriert sein. In einigen Aspekten kann die Datenstruktur auf eine bestimmte Entität, einen Sachverhalt der Entität, einen dem Sachverhalt zugeordneten Rang und eine Punktzahl der Liste verweisen, die dem bestimmten Sachverhalt der Entität zugeordnet ist. Die Datenstruktur kann für jede der den empfangenen Listen zugeordneten Entitäten generiert werden. Die Datenstruktur kann einem bestimmten Sachverhalt einer jeweiligen Entität entsprechen. Beispielsweise kann die Höhe des Berges K2 einer oder mehreren Datenstrukturen zugeordnet werden. Eine Datenstruktur der Höhe des Berges K2 kann einer Liste von höchsten Bergen der Welt zugeordnet werden. Die Datenstruktur kann des Weiteren einen Rang für die Entität in der Liste, und eine der Liste von höchsten Bergen der Welt zugeordnete Punktzahl beinhalten. In einem Beispiel kann eine bestimmte Datenstruktur den Berg K2 beinhalten, der als Zweiter in der Liste der höchsten Berge der Welt eingestuft ist, wobei die Liste der höchsten Berge einer Listenpunktzahl von 75 zugeordnet ist. - Bei Schritt
406 kann der Server zum Empfangen von Daten konfiguriert sein, die eine bestimmte Entität identifizieren. In einigen Aspekten kann der Server Daten über eine Suchmaschine empfangen. Der Server kann Daten entsprechend Suchanfragebegriffen einer Suchmaschine empfangen. Der Server kann des Weiteren zum Identifizieren einer bestimmten Entität basierend auf den empfangenen Daten konfiguriert sein. Beispielsweise kann der Server eine Suchanfrage von „wie hoch ist der Berg K2“ empfangen und identifizieren, dass der Berg K2 eine bestimmte Entität der Suchanfrage sein kann. In bestimmten Aspekten kann der Server zum Identifizieren einer bestimmten Entität basierend auf einem Synonym der Entität konfiguriert sein. Beispielsweise kann der Server eine Suchanfrage von „wie hoch ist der Mount Godwin-Austen“ erreichen. In diesem Fall kann der Server konfiguriert sein, zu identifizieren, dass die Entität der Suchanfrage der Berg K2 sein kann. - Bei Schritt
408 kann der Server zum Auswählen einer bestimmten Datenstruktur konfiguriert sein, die auf die identifizierte Identität verweist. Die bestimmte Datenstruktur kann auf Begriffen einer Suchanfrage basieren. In einigen Aspekten kann die bestimmte Datenstruktur basierend auf einer Punktzahl einer der bestimmten Datenstruktur zugeordneten Liste ausgewählt werden. Wenn es beispielsweise zwei Höhendatenstrukturen des Berges K2 gibt, und jede der Höhendatenstrukturen des Berges K2 einer anderen Liste zugeordnet ist, können die zwei Listen jeweils eine andere Listenpunktzahl beinhalten. Dementsprechend kann der Server die Höhendatenstruktur des Berges K2 mit der größten Punktzahl auswählen. Beispielsweise kann eine erste Höhendatenstruktur des Berges K2 einer Liste der höchsten Berge der Welt mit einer Listenpunktzahl von 75 zugeordnet werden, während eine zweite Höhendatenstruktur des Berges K2 einer Liste der höchsten Berge in Asien mit einer Punktzahl von 15 entsprechen kann. In diesem Fall kann der Server zum Auswählen der ersten Höhendatenstruktur des Berges K2 konfiguriert sein, die aufgrund der größeren entsprechenden Listenpunktzahl der Liste der höchsten Berge der Welt zugeordnet ist. - Bei Schritt
410 kann der Server zum Bereitstellen von Daten der ausgewählten Datenstruktur für die Ausgabe konfiguriert sein. Die bereitgestellten Daten können den Sachverhalt beinhalten, der der ausgewählten Datenstruktur zugeordnet ist, die auf die bestimmte Entität sowie den Rang der Entität für den Sachverhalt verweist. In bestimmten Aspekten können die Daten durch den Server bereitgestellt werden, die in einer Wissensbibliothek einer Suchmaschine anzuzeigen sind. In einigen Aspekten kann die Wissensbibliothek auf einer Benutzeroberfläche eines Computergeräts, wie z. B. einem Smartphone, einem Laptop-Computer, einem Desktop-Computer, einem Tablet und dergleichen angezeigt werden. - Der Server kann konfiguriert sein, Daten für die Ausgabe entsprechend dem bestimmten Sachverhalt und der bestimmten Entität bereitzustellen. In einigen Aspekten können die Daten für die Ausgabe einen dem bestimmten Sachverhalt der bestimmten Entität zugeordneten Rang beinhalten. Die Daten für die Ausgabe können des Weiteren Kontextdaten beinhalten, die dem bestimmten Sachverhalt der bestimmten Daten zugeordnet sind. Die Kontextdaten können eine Untergruppe von Entitäten beinhalten, die der Liste der ausgewählten Datenstruktur zugeordnet sind. Die Kontextdaten können zudem Rangstufen der Untergruppe von Entitäten beinhalten, die der Liste der ausgewählten Datenstruktur zugeordnet sind. Wenn beispielsweise der Rang des Berges K2 in der Liste der höchsten Berge der Welt für die Ausgabe bereitgestellt wird, kann eine zuvor festgelegte Anzahl der höchsten Berge der Welt außer dem Berg K2, und ihre entsprechenden Rangstufen für die Ausgabe als Kontextdaten bereitgestellt werden.
- In einigen Aspekten kann der Server zum Bereitstellen eines Vergleichs zwischen den Daten konfiguriert sein, der die Rangstufe für jede Entität innerhalb der Untergruppe der Entitäten und einen Rangstufenschwellenwert angibt. Der Server kann eine oder mehrere Entitäten der Untergruppe von Entitäten basierend auf dem Vergleich auswählen und Daten entsprechend den ausgewählten Entitäten der Untergruppe für die Ausgabe bereitstellen. Daher kann der Rangstufenschwellenwert als eine Sperre verwendet werden, sodass nur eine bestimmte Anzahl von Entitäten für die Ausgabe zusätzlich zu den Daten der ausgewählten Datenstruktur bereitgestellt werden kann.
- In bestimmten Aspekten kann der Server zum Generieren von natürlichen Sprachtranskriptionen entsprechend den Daten konfiguriert sein, die für die Ausgabe bereitgestellt werden. In diesem Fall kann der Server zum Bereitstellen von Text oder Audio in natürlicher Sprache für die Ausgabe konfiguriert sein, der auf den natürlichen Sprachtranskriptionen basiert. Dementsprechend können die Entität und der entsprechende Sachverhalt für die Ausgabe in Form von Text, Audio oder beidem bereitgestellt werden. In bestimmten Aspekten kann ein Benutzer eine Anfrage über ein Telefon, eine Uhr, ein Obertischgerät und dergleichen eingeben. Der Server kann zum Formatieren von Ausgabedaten relativ zu der Anfrage als Audioausgabe konfiguriert sein, und die Audioausgabe für die Ausgabe über TTS oder eine andere Sprachausgabe bereitstellen. Wenn beispielsweise die Entität als Berg K2 bestimmt wird, wird die Liste dahingehend bestimmt, dass sie den höchsten Bergen der Welt entspricht, und der Rang der Entität innerhalb der Liste wird als zweiter bestimmt, der Server kann dabei konfiguriert sein, einfachen englischen Text zu synthetisieren, der für die Ausgabe bereitzustellen ist, wie z. B. „der Berg K2 ist der zweithöchste Berg der Welt“.
-
5 zeigt ein Computergerät500 und einen mobilen Computer550 gemäß bestimmten exemplarischen Aspekten der Offenbarung. Das Computergerät500 soll verschiedene Formen von digitalen Computern, wie z. B. Laptops, Desktops, Arbeitsstationen, persönliche digitale Assistenten, Fernseher, Server, Blade-Server, Großrechner und andere geeignete Computer, darstellen. Das Computergerät550 soll verschiedene Formen mobiler Geräte, wie z. B. persönliche digitale Assistenten, Mobiltelefone, Smartphones und andere ähnliche Computergeräte darstellen. Die hier dargestellten Komponenten, deren Verbindungen, Beziehungen und Funktionen sollen lediglich exemplarisch sein und die Implementierungen der in diesem Dokument beschriebenen und/oder beanspruchten Erfindungen in keiner Weise einschränken. - Das Computergerät
500 beinhaltet einen Prozessor502 , einen Speicher504 , ein Speichergerät506 , eine Hochgeschwindigkeitsschnittstelle508 , die sich mit Speicher504 und den Hochgeschwindigkeitserweiterungsanschlüssen510 verbindet, und eine Niedergeschwindigkeitsschnittstelle512 , die sich mit dem Niedergeschwindigkeitsbus514 und dem Speichergerät506 verbindet. Alle Komponenten502 ,504 ,506 ,508 ,510 und512 sind unter Verwendung verschiedener Busse miteinander verbunden und können auf einer gängigen Hauptplatine oder gegebenenfalls in anderer Weise montiert sein. Der Prozessor502 kann Anweisungen zur Ausführung innerhalb des Computergeräts500 verarbeiten, die Anweisungen beinhalten, die in dem Speicher504 oder auf dem Speichergerät506 gespeichert sind, um grafische Informationen für eine GUI auf einem externen Eingabe-/Ausgabegerät, wie z. B. Anzeige516 , die mit Hochgeschwindigkeitsschnittstelle508 verbunden ist, anzuzeigen. In anderen Implementierungen können gegebenenfalls mehrere Prozessoren und/oder mehrere Busse zusammen mit mehreren Speichern und Speicherarten verwendet sein. Außerdem können mehrere Computergeräte500 verbunden sein, wobei jedes Gerät Teile der notwendigen Vorgänge (z. B. als Serverbank, Gruppe von Blade-Servern oder Mehrprozessorsystem) bereitstellt. - Speicher
504 speichert Informationen innerhalb von Computergerät400 . In einer Implementierung handelt es sich bei Speicher504 um eine flüchtige Speichereinheit bzw. -einheiten. In einer anderen Implementierung handelt es sich bei Speicher504 um eine nicht flüchtige Speichereinheit bzw. -einheiten. Speicher504 kann zudem eine andere Form von computerlesbarem Medium, zum Beispiel ein magnetischer oder optischer Datenträger, sein. - Speichergerät
506 kann Massenspeicher für das Computergerät500 bereitstellen. In einer Implementierung kann Speichergerät506 ein computerlesbares Medium, wie z. B. ein Floppy-Diskettenlaufwerk, ein Festplattenlaufwerk, ein optisches Laufwerk, eine Magnetbandeinheit, ein Flash-Speicher oder ein anderes ähnliches Solid-State-Speichergerät oder eine Reihe von Geräten, einschließlich Geräten in einem Speichernetzwerk oder anderen Konfigurationen, sein oder beinhalten. Ein Computerprogrammprodukt kann physisch in einem Informationsträger enthalten sein. Das Computerprogrammprodukt kann zudem Anweisungen enthalten, die bei Ausführung ein oder mehrere Verfahren, wie z. B. die zuvor beschriebenen, ausführen. Der Informationsträger ist ein computer- oder maschinenlesbares Medium, wie z. B. der Speicher504 , das Speichergerät506 oder ein Speicher auf einem Prozessor502 . - Hochgeschwindigkeitscontroller
508 verwaltet bandbreitenintensive Vorgänge für das Computergerät500 , während Niedergeschwindigkeitscontroller512 niedrigere bandbreitenintensive Vorgänge verwaltet. Diese Zuordnung von Funktionen ist jedoch nur exemplarisch. In einer Implementierung ist Hochgeschwindigkeitscontroller508 mit Speicher504 , Anzeige516 (z. B. über einen Grafikprozessor oder -beschleuniger) und mit den Hochgeschwindigkeitserweiterungsanschlüssen510 , die verschiedene Erweiterungskarten (nicht dargestellt) aufnehmen können, gekoppelt. In der Implementierung ist Niedergeschwindigkeitscontroller512 mit Speichergerät506 und Niedergeschwindigkeitserweiterungsanschluss514 gekoppelt. Der Niedergeschwindigkeitserweiterungsanschluss, der ggf. verschiedene Kommunikationsanschlüsse (z. B. USB, Bluetooth, Ethernet, Funkethernet) beinhaltet, kann an ein oder mehrere Eingabe-/Ausgabegeräte wie eine Tastatur, ein Zeigegerät, einen Scanner oder ein Netzwerkgerät wie einen Switch oder Router, z. B. durch einen Netzwerkadapter, gekoppelt sein. - Computergerät
500 kann, wie in der Figur ersichtlich, in einer Reihe verschiedener Formen implementiert sein. Es kann zum Beispiel als Standardserver520 oder mehrmals in einer Gruppe jener Server implementiert sein. Es kann ebenfalls als Bestandteil eines Rackserversystems524 implementiert sein. Darüber hinaus kann es ebenfalls in einem PC, wie z. B. einem Laptop-Computer522 , implementiert sein. Alternativ können Komponenten von Computergerät500 mit anderen Komponenten in einem Mobilgerät (nicht dargestellt), wie z. B. Gerät550 , kombiniert sein. Jedes dieser Geräte kann eine oder mehrere der Computergeräte500 ,550 enthalten, während sich ein gesamtes System aus mehreren miteinander kommunizierenden Computergeräten500 ,550 zusammensetzen kann. - Die Computergerät
550 beinhaltet neben anderen Komponenten einen Prozessor552 , einen Speicher564 , ein Eingabe-/Ausgabegerät, wie z. B. eine Anzeige554 , eine Kommunikationsschnittstelle566 und einen Sendeempfänger568 . Gerät550 kann ebenfalls mit einem Speichergerät z. B. einem Microdrive oder einem anderen Gerät ausgestattet sein, um zusätzlichen Speicher bereitzustellen. Alle Komponenten550 ,552 ,564 ,554 ,566 und568 sind unter Verwendung verschiedener Busse miteinander verbunden und mehrere der Komponenten können auf einer gängigen Hauptplatine oder gegebenenfalls in anderer Weise montiert sein. - Der Prozessor
552 kann Anweisungen in dem Computergerät540 , darunter auch die im Speicher564 gespeicherten Anweisungen, ausführen. Der Prozessor kann als ein Chipsatz von Chips implementiert sein, die separate und mehrere analoge und digitale Prozessoren beinhalten. Der Prozessor kann beispielsweise zur Koordinierung der anderen Komponenten von Gerät550 , wie beispielsweise der Steuerung von Benutzeroberflächen, Anwendungen, die von Gerät550 ausgeführt werden, und drahtloser Kommunikation durch Gerät550 bereitstellen. - Prozessor
552 kann mit einem Benutzer über die Steuerschnittstelle548 und die Anzeigeschnittstelle556 , die mit einer Anzeige554 gekoppelt ist, kommunizieren. Bei der Anzeige554 kann es sich zum Beispiel um eine TFT-LCD-(Dünnfilmtransistor-Flüssigkristall-) oder ein OLED-Anzeige (organische Leuchtdiode) oder eine andere angemessene Anzeigetechnologie handeln. Die Anzeigeschnittstelle556 kann eine geeignete Schaltung umfassen, die die Anzeige554 dazu bringt, einem Benutzer grafische und andere Informationen zu präsentieren. Die Steuerschnittstelle558 kann Befehle von einem Benutzer empfangen und diese zum Senden an Prozessor552 umwandeln. Zusätzlich kann eine externe Schnittstelle562 in Verbindung mit dem Prozessor552 vorgesehen sein, um eine Nahbereichskommunikation von Gerät550 mit anderen Geräten zu ermöglichen. Die externe Schnittstelle562 kann in einigen Implementierungen beispielsweise eine drahtgebundene Verbindung oder in anderen Implementierungen eine drahtlose Verbindung sein, zudem können auch mehrere Schnittstellen verwendet werden. - Der Speicher
564 speichert Informationen innerhalb von Computergerät550 . Der Speicher564 kann als ein oder mehrere von einem computerlesbaren Medium oder von mehreren computerlesbaren Medien, einem flüchtigen Speicher oder flüchtigen Speichern oder einem nicht flüchtigen Speicher oder nicht flüchtigen Speichern implementiert werden. Erweiterungsspeicher554 kann ebenfalls bereitgestellt und mit dem Gerät550 über die Erweiterungsschnittstelle552 verbunden werden, die zum Beispiel eine SIMM-(Single In Line Memory Module)-Kartenschnittstelle beinhalten kann. Dieser Erweiterungsspeicher554 kann zusätzlichen Speicherplatz für Gerät550 bereitstellen oder auch Anwendungen oder andere Informationen für Gerät550 speichern. Der Erweiterungsspeicher554 kann insbesondere Anweisungen zum Ausführen oder Ergänzen der vorstehend beschriebenen Prozesse sowie sichere Informationen beinhalten. Demnach kann Erweiterungsspeicher554 beispielsweise als ein Sicherheitsmodul für Gerät550 bereitgestellt und mit Anweisungen programmiert sein, die eine sichere Benutzung von Gerät550 ermöglichen. Zusätzlich dazu können über die SIMM-Karten sichere Anwendungen zusammen mit zusätzlichen Informationen, wie dem Ablegen von Identifizierungsinformationen auf der SIMM-Karte auf eine Weise bereitgestellt werden, die nicht gehackt werden kann. - Der Speicher kann, wie nachstehend beschrieben, zum Beispiel Flashspeicher und/oder NVRAM-Speicher beinhalten. In einer Implementierung ist ein Computerprogrammprodukt in einem Informationsträger physisch enthalten. Das Computerprogrammprodukt enthält Anweisungen, die bei Ausführung ein oder mehrere Verfahren wie die vorstehend beschriebenen durchführen. Der Informationsträger ist ein computer- oder maschinenlesbares Medium wie der Speicher
564 , Erweiterungsspeicher554 , Speicher auf Prozessor552 oder ein ausgebreitetes Signal, das beispielsweise über den Sendeempfänger568 oder die externe Schnittstelle562 empfangen werden kann. - Gerät
550 kann über Kommunikationsschnittstelle566 drahtlos kommunizieren, die bei Bedarf eine digitale Signalverarbeitungsschaltung beinhalten kann. Die Verbindungsschnittstelle566 kann Verbindungen mit verschiedenen Kommunikationstypen oder -protokollen, wie beispielsweise u. a. GSM-Sprachanrufe, SMS, EMS oder MMS-Messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000 oder GPRS, aufbauen. Diese Kommunikation kann beispielsweise durch Funkfrequenz-Sendeempfänger568 stattfinden. Zusätzlich kann eine Kurzstreckenkommunikation, wie z. B. unter Verwendung eines Bluetooth-, WLAN- oder anderen solchen Sendeempfängers (nicht dargestellt), stattfinden. Außerdem kann das GPS-(Globale Positionsbestimmungssystem)-Empfängermodul550 zusätzliche navigations- und standortbezogene drahtlose Daten für Gerät550 bereitstellen, die gegebenenfalls von Anwendungen verwendet werden können, die auf Gerät550 ausgeführt werden. - Gerät
550 kann ebenfalls unter Verwendung des Audiocodec560 , der gesprochene Informationen von einem Benutzer empfangen und diese in nutzbare digitale Informationen konvertieren kann, hörbar kommunizieren. Der Audiocodec560 kann ebenso hörbaren Ton für einen Benutzer erzeugen, beispielsweise durch einen Lautsprecher zum Beispiel in einem Mobilteil von Gerät550 . Diese Töne können Töne von Sprachtelefonanrufen, aufgezeichnete Töne (z. B. Sprachnachrichten, Musikdateien usw.) sowie Töne beinhalten, die von auf Gerät550 ausgeführten Anwendungen erstellt wurden. - Das Computergerät
550 kann, wie in der Figur dargestellt, in einer Reihe unterschiedlicher Formen implementiert sein. Es kann zum Beispiel als Mobiltelefon580 implementiert werden. Es kann außerdem als Teil eines Smartphones582 , persönlichen digitalen Assistenten oder einem anderen ähnlichen Mobilgerät implementiert sein. - Es wurde eine Reihe von Implementierungen beschrieben. Trotzdem versteht es sich, dass verschiedene Modifikationen durchgeführt werden können, ohne vom Sinn und Umfang der Offenbarung abzuweichen. Zum Beispiel können verschiedene Formen der vorstehend dargestellten Abläufe verwendet und Schritte neu geordnet, hinzugefügt oder entfernt werden.
- Ausführungsformen der Erfindung und die in dieser Spezifikation beschriebenen Funktionsvorgänge können in digitalen elektronischen Schaltungen oder in Computersoftware, -Firmware oder -Hardware, darunter auch in den in dieser Spezifikation offenbarten Strukturen und deren strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer derselben, implementiert werden. Ausführungsformen der Erfindung können als ein oder mehrere Computerprogrammprodukte implementiert werden, d. h. als ein oder mehrere Module von Computerprogrammbefehlen, die auf einem computerlesbaren Medium zur Ausführung codiert sind, oder um den Betrieb von Datenverarbeitungsvorrichtungen zu steuern. Das maschinenlesbare Speichermedium kann ein maschinenlesbares Datenspeichergerät, ein maschinenlesbares Speichersubstrat, ein Arbeitsspeicher, eine Stoffzusammensetzung, die ein maschinenlesbares verbreitetes Signal bewirkt, oder eine Kombination aus einem oder mehreren derselben sein. Der Begriff „Datenverarbeitungsvorrichtung“ umfasst alle Vorrichtungen, Geräte und Maschinen zum Verarbeiten von Daten, einschließlich beispielsweise eines programmierbaren Prozessors, eines Computers oder mehrerer Prozessoren oder Computer. Die Vorrichtung kann neben der Hardware auch einen Code beinhalten, der eine Ausführungsumgebung für das betreffende Computerprogramm bildet, z. B. einen Code, der Prozessor-Firmware, einen Protokollstapel, ein Datenbank-Managementsystem, ein Betriebssystem oder eine Kombination einer oder mehrerer der genannten darstellt. Ein propagiertes Signal ist ein künstlich erzeugtes Signal, wie z. B. ein maschinengeneriertes elektrisches, optisches oder elektromagnetisches Signal, das erzeugt wird, um Informationen für die Übermittlung an eine geeignete Empfangsvorrichtung zu codieren.
- Ein Computerprogramm (auch als Programm, Software, Software-Anwendung, Script oder Code bekannt) kann in jeder Form von Programmiersprache, darunter auch in kompilierten oder interpretierten Sprachen, geschrieben und in jeder Form angewendet werden, darunter auch als eigenständiges Programm oder als Modul, Komponente, Subroutine oder andere Einheit, die für die Verwendung in einer Computerumgebung geeignet ist. Ein Computerprogramm entspricht nicht unbedingt einer Datei in einem Dateisystem. Ein Programm kann in einem Teil einer Datei, die andere Programme oder Daten enthält (z. B. ein oder mehrere Scripts, die in einem Dokument in Markup-Sprache gespeichert sind), in einer einzelnen Datei speziell für das betreffende Programm oder in mehreren koordinierten Dateien (z. B. Dateien, die ein oder mehrere Module, Unterprogramme oder Teile von Code speichern) gespeichert sein. Ein Computerprogramm kann auf einem Computer oder auf mehreren Computern bereitgestellt und ausgeführt werden, die sich an einem Standort oder an mehreren Standorten verteilt befinden und über ein Kommunikationsnetzwerk miteinander verbunden sind.
- Die in dieser Beschreibung beschriebenen Prozesse und Logikabläufe können durch einen oder mehrere programmierbare Prozessoren ausgeführt werden, die ein oder mehrere Computerprogramme ausführen, um Funktionen durch Verarbeiten von Eingabedaten und Erzeugen von Ausgaben auszuführen. Die Prozesse und Logikabläufe können zudem durch eine vorhabensgebundene Logikschaltung, wie z. B. einen FPGA (Universalschaltkreis) oder eine ASIC (anwendungsspezifische integrierte Schaltung) ausgeführt, und das Gerät in Form derselben implementiert werden.
- Prozessoren, die für die Ausführung eines Computerprogramms geeignet sind, beinhalten beispielsweise sowohl Universal- als auch Spezialmikroprozessoren, sowie einen oder mehrere Prozessoren einer beliebigen Art von digitalem Computer. Im Allgemeinen empfängt ein Prozessor Anweisungen und Daten von einem Festwertspeicher oder einem wahlfreien Zugriffsspeicher oder von beiden. Die wesentlichen Elemente eines Computers sind ein Prozessor für das Ausführen von Anweisungen und ein oder mehrere Speichergeräte für das Speichern von Anweisungen und Daten. Im Allgemeinen gehören zu einem Computer außerdem ein oder mehrere Massenspeichergeräte zum Speichern von Daten, wie z. B. magnetische, magneto-optische oder optische Datenträger, um Daten zu empfangen und/oder zu senden, und/oder ein Computer ist operativ an dasselbe/dieselben Speichergerät(e) gekoppelt. Ein Computer muss jedoch nicht über diese Geräte verfügen. Darüber hinaus kann ein Computer in einem anderen Gerät, wie z. B. einem Tabletcomputer, einem Mobiltelefon, einem persönlichen digitalen Assistenten (PDA), einem mobilen Audioplayer, einem globalen Positionsbestimmungssystem-(GPS)-Empfänger integriert sein, um nur einige Beispiele zu nennen. Computerlesbare Medien, die zum Speichern von Computerprogrammanweisungen und Daten geeignet sind, beinhalten alle Formen von nicht flüchtigem Speicher, Medien und Speichergeräten, einschließlich beispielsweise Halbleiterspeichergeräte, wie z. B. EPROM, EEPROM und Flash-Speichergeräte, magnetische Datenträger, wie z. B. eingebaute Festplattenlaufwerken oder Wechselplatten, magneto-optische Platten sowie CD-ROMs und DVD-ROMs. Der Prozessor und der Speicher können durch eine Spezial-Logikschaltung ergänzt oder in dieselbe integriert werden.
- Um eine Interaktion mit einem Benutzer bereitzustellen, können Ausführungsformen der Erfindung auf einem Computer implementiert werden, der ein Anzeigegerät (wie z. B. einen CRT-(Kathodenstrahlröhren) oder LCD-(Flüssigkristallanzeige)-Monitor) aufweist, um dem Benutzer Informationen anzuzeigen, sowie eine Tastatur und ein Zeigegerät (z. B. eine Maus oder einen Trackball) aufweist, mittels denen der Benutzer eine Eingabe an dem Computer vornehmen kann. Darüber hinaus können andere Geräte verwendet werden, um die Interaktion mit einem Benutzer zu ermöglichen; zum Beispiel kann es sich bei der Rückmeldung an den Benutzer um jegliche Art von sensorischer Rückmeldung, wie z. B. um visuelle, akustische oder taktile Rückmeldungen, handeln; zudem können die Eingaben des Benutzers in beliebiger Form, darunter auch akustisch, sprachlich oder taktil, empfangen werden.
- Ausführungsformen der Erfindung können in einem Computersystem implementiert sein, das eine Backendkomponente, wie z. B. einen Datenserver, oder eine Middlewarekomponente, wie z. B. einen Applikationsserver, oder eine Frontendkomponente, wie z. B. einen Clientcomputer, der eine grafische Benutzeroberfläche oder einen Web-Browser aufweist, durch den ein Benutzer mit einer Implementierung der Erfindung interagieren kann, oder eine Kombination aus einer oder mehreren dieser Backend-, Middleware- oder Frontendkomponenten beinhaltet. Die Komponenten des Systems können durch eine beliebige Form oder ein beliebiges Medium digitaler Datenkommunikation, wie z. B. ein Kommunikationsnetzwerk, miteinander verbunden sein. So beinhalten beispielsweise Kommunikationsnetzwerke ein lokales Netzwerk („LAN“) und ein Großraumnetzwerk („WAN“), wie z. B. das Internet.
- Das Computersystem kann Clients und Server beinhalten. Ein Client und Server befinden sich im Allgemeinen entfernt voneinander und interagieren typischerweise über ein Kommunikationsnetzwerk. Die Beziehung von Client und Server ergibt sich durch Computerprogramme, die auf den jeweiligen Computern ausgeführt werden und in einer Client-Server-Beziehung zueinander stehen.
- Während diese Beschreibung viele Details enthält, sollten diese nicht als Einschränkungen bezüglich des Umfangs der Erfindung oder dessen Ansprüchen ausgelegt werden, sondern vielmehr als Beschreibungen von Merkmalen, die spezifisch für bestimmte Ausführungsformen der Erfindung sind. Bestimmte Merkmale, die in dieser Spezifikation im Kontext der unterschiedlichen Ausführungsformen beschrieben werden, können auch in Kombination in einer einzelnen Ausführungsform implementiert werden. Umgekehrt können verschiedene Merkmale, die im Kontext einer einzelnen Ausführungsform beschrieben werden, in mehreren Ausführungsformen oder in einer geeigneten Teilkombination implementiert werden. Außerdem können, auch wenn die Merkmale vorstehend ggf. als in bestimmten Kombinationen wirkend beschrieben und zunächst auch als solche beansprucht werden, in einigen Fällen ein oder mehrere Merkmale einer beanspruchten Kombination aus der Kombination herausgenommen und die beanspruchte Kombination auf eine Teilkombination oder eine Variante einer Teilkombination gerichtet werden.
- Gleichermaßen soll dies, obgleich die Abläufe in den Zeichnungen in einer bestimmten Reihenfolge dargestellt sind, nicht so verstanden werden, dass die besagten Abläufe in der dargestellten Reihenfolge oder in fortlaufender Reihenfolge durchgeführt werden müssen bzw. alle dargestellten Abläufe durchgeführt werden müssen, um die erwünschten Ergebnisse zu erzielen. Unter bestimmten Umständen können Multitasking und Parallelverarbeitung von Vorteil sein. Darüber hinaus sollte die Trennung verschiedener Systemkomponenten in den oben beschriebenen Ausführungsformen nicht in allen Ausführungsformen als erforderlich aufgefasst werden, zudem versteht sich, dass die beschriebenen Programmkomponenten und Systeme im Allgemeinen zusammen in ein einziges Softwareprodukt integriert oder in mehrere Softwareprodukte zusammengefasst werden können.
- In allen Fällen, in denen eine HTML-Datei erwähnt ist, können stattdessen andere Dateitypen oder Formate verwendet werden. Zum Beispiel kann eine HTML-Datei durch XML, JSON, Klartext oder andere Arten von Dateien ersetzt werden. Des Weiteren können an Stellen, an denen eine Tabelle oder Hashtabelle angegeben wird, andere Datenstrukturen (wie z. B. Tabellenkalkulationen, relationale Datenbanken oder strukturierte Dateien) verwendet werden.
- Bestimmte Ausführungsformen der Erfindung wurden beschrieben. Weitere Ausführungsformen liegen innerhalb des Schutzumfangs der folgenden Ansprüche. Die in den Ansprüchen ausgeführten Vorgänge können beispielsweise in einer anderen Reihenfolge ausgeführt werden und dennoch wünschenswerte Ergebnisse erzielen.
Claims (20)
- Computerimplementiertes Verfahren, umfassend: Empfangen von einer oder mehreren Listen von Entitäten, wobei jede Liste (i) eine zugeordnete Punktzahl aufweist, (ii) einem jeweiligen Kontextsachverhalt zugeordnet ist, und (iii) eine Untergruppe der Entitäten einstuft, wobei jede Entität der Untergruppe basierend auf einem jeweiligen Wert eingestuft wird, der der Entität für den jeweiligen Kontextsachverhalt zugeordnet ist; für jede der Listen von Entitäten Generieren einer Datenstruktur für jede Entität auf der Liste, die auf (i) die Entität, (ii) den der Entität zugeordneten Kontextsachverhalt, (iii) den Rang der Entität für den Kontextsachverhalt und (iv) die Punktzahl für die Liste verweist; Empfangen von Daten, die eine bestimmte Entität identifizieren; Auswählen einer bestimmten Datenstruktur, die auf die identifizierte Identität verweist; und Bereitstellen von Daten für die Ausgabe, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist.
- Computerimplementiertes Verfahren nach Anspruch 1, ferner umfassend: Generieren von Text in natürlicher Sprache entsprechend den Daten, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist; und Bereitstellen des Textes in natürlicher Sprache für die Ausgabe.
- Computerimplementiertes Verfahren nach Anspruch 2, wobei Bereitstellen des Textes in natürlicher Sprache für die Ausgabe das Bereitstellen des Textes in natürlicher Sprache als Audioausgabe über Text-zu-Sprache und Sprachausgabe umfasst.
- Computerimplementiertes Verfahren nach einem der vorangegangenen Ansprüche, wobei die Punktzahl für jede Liste auf einer Häufigkeit von kürzlichen Suchanfragen basiert, die die Liste beinhalten.
- Computerimplementiertes Verfahren nach einem der vorangegangenen Ansprüche, wobei die bestimmte Datenstruktur basierend auf der Punktzahl ausgewählt wird, die auf die bestimmte Entität verweist.
- Computerimplementiertes Verfahren nach einem der vorangegangenen Ansprüche, ferner umfassend: Bereitstellen von Daten für die Ausgabe, die (i) die Untergruppe der Entitäten angeben, wobei auf jede Entität der Untergruppe von Entitäten durch die bestimmte Datenstruktur verwiesen wird, und (ii) die Rangstufe für jede Entität der Untergruppe der Entitäten.
- Computerimplementiertes Verfahren nach Anspruch 6, ferner umfassend: Bereitstellen eines Vergleichs zwischen den Daten, der die Rangstufe für jede Entität innerhalb der Untergruppe der Entitäten und einen Rangstufenschwellenwert angibt; Auswählen von einer oder mehreren Entitäten der Untergruppe der Entitäten basierend auf dem Vergleich; und Bereitstellen (i) der einen oder mehreren ausgewählten Entitäten und (ii) der Rangstufe für jede Entität der ausgewählten Entitäten.
- Computerimplementiertes Verfahren nach einem der vorangegangenen Ansprüche, wobei Empfangen von Daten, die eine bestimmte Entität identifizieren, Empfangen eines Synonyms beinhaltet, das der bestimmten Entität entspricht.
- System, umfassend einen oder mehrere Computer und ein oder mehrere Speichergeräte, die Anweisungen speichern, welche bei Ausführung durch den einen oder die mehreren Computer betriebsfähig sind, den einen oder die mehreren Computer zu veranlassen, Vorgänge auszuführen, umfassend: Empfangen von einer oder mehreren Listen von Entitäten, wobei jede Liste (i) eine zugeordnete Punktzahl aufweist, (ii) einem jeweiligen Kontextsachverhalt zugeordnet ist, und (iii) eine Untergruppe der Entitäten einstuft, wobei jede Entität der Untergruppe basierend auf einem jeweiligen Wert eingestuft wird, der der Entität für den jeweiligen Kontextsachverhalt zugeordnet ist; für jede der Listen von Entitäten Generieren einer Datenstruktur für jede Entität auf der Liste, die auf (i) die Entität, (ii) den der Entität zugeordneten Kontextsachverhalt, (iii) den Rang der Entität für den Kontextsachverhalt und (iv) die Punktzahl für die Liste verweist; Empfangen von Daten, die eine bestimmte Entität identifizieren; Auswählen einer bestimmten Datenstruktur, die auf die identifizierte Identität verweist; und Bereitstellen von Daten für die Ausgabe, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist.
- System nach Anspruch 9, wobei die Punktzahl von jeder Liste auf einer Häufigkeit von kürzlichen Suchanfragen basiert, die die Liste beinhalten.
- System nach Anspruch 9 oder 10, wobei die bestimmte Datenstruktur basierend auf der Punktzahl ausgewählt wird, die auf die bestimmte Entität verweist.
- System nach einem der Ansprüche 9 bis 11, wobei die Vorgänge ferner umfassen: Bereitstellen von Daten für die Ausgabe, die (i) die Untergruppe der Entitäten angeben, wobei auf jede Entität der Untergruppe von Entitäten durch die bestimmte Datenstruktur verwiesen wird, und (ii) die Rangstufe für jede Entität der Untergruppe der Entitäten.
- System nach Anspruch 12, wobei die Vorgänge ferner umfassen: Bereitstellen eines Vergleichs zwischen den Daten, der die Rangstufe für jede Entität innerhalb der Untergruppe der Entitäten und einen Rangstufenschwellenwert angibt; Auswählen von einer oder mehreren Entitäten der Untergruppe der Entitäten basierend auf dem Vergleich; und Bereitstellen (i) der einen oder mehreren ausgewählten Entitäten und (ii) der Rangstufe für jede Entität der ausgewählten Entitäten.
- System nach einem der Ansprüche 9 bis 13, wobei die Vorgänge ferner umfassen: Generieren von Text in natürlicher Sprache entsprechend den Daten, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist; und Bereitstellen des Textes in natürlicher Sprache für die Ausgabe.
- System nach Anspruch 14, wobei Bereitstellen des Textes in natürlicher Sprache für die Ausgabe das Bereitstellen des Textes in natürlicher Sprache als Audioausgabe über Text-zu-Sprache und Sprachausgabe umfasst.
- System nach einem der Ansprüche 9 bis 15, wobei Empfangen von Daten, die eine bestimmte Entität identifizieren, Empfangen eines Synonyms beinhaltet, das der bestimmten Entität entspricht.
- Nicht flüchtiges computerlesbares Speichergerät, welches Software speichert, die durch einen oder mehrere Computer ausführbare Anweisungen umfasst, die bei einer solchen Ausführung den einen oder die mehreren Computer zum Ausführen von Vorgängen veranlassen, umfassend: Empfangen von einer oder mehreren Listen von Entitäten, wobei jede Liste (i) eine zugeordnete Punktzahl aufweist, (ii) einem jeweiligen Kontextsachverhalt zugeordnet ist, und (iii) eine Untergruppe der Entitäten einstuft, wobei jede Entität der Untergruppe basierend auf einem jeweiligen Wert eingestuft wird, der der Entität für den jeweiligen Kontextsachverhalt zugeordnet ist; für jede der Listen von Entitäten Generieren einer Datenstruktur für jede Entität auf der Liste, die auf (i) die Entität, (ii) den der Entität zugeordneten Kontextsachverhalt, (iii) den Rang der Entität für den Kontextsachverhalt und (iv) die Punktzahl für die Liste verweist; Empfangen von Daten, die eine bestimmte Entität identifizieren; Auswählen einer bestimmten Datenstruktur, die auf die identifizierte Identität verweist; und Bereitstellen von Daten für die Ausgabe, die (i) den Kontextsachverhalt angeben, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist, und (ii) den Rang der Entität für den Kontextsachverhalt, der der bestimmten Datenstruktur zugeordnet ist, die auf die bestimmte Entität verweist.
- Nicht flüchtiges computerlesbares Speichergerät, nach Anspruch 17, wobei die Punktzahl von jeder Liste auf einer Häufigkeit von kürzlichen Suchanfragen basiert, die die Liste beinhalten.
- Nicht flüchtiges computerlesbares Speichergerät nach Anspruch 17 oder 18, wobei die bestimmte Datenstruktur basierend auf der Punktzahl ausgewählt wird, die auf die bestimmte Entität verweist.
- Nicht flüchtiges, computerlesbares Speichergerät nach einem der Ansprüche 17 bis 19, wobei die Vorgänge ferner umfassen: Bereitstellen von Daten für die Ausgabe, die (i) die Untergruppe der Entitäten angeben, wobei auf jede Entität der Untergruppe von Entitäten durch die bestimmte Datenstruktur verwiesen wird, und (ii) die Rangstufe für jede Entität der Untergruppe der Entitäten.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/265,913 | 2016-09-15 | ||
US15/265,913 US10289625B2 (en) | 2016-09-15 | 2016-09-15 | Providing context facts |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102017120605A1 true DE102017120605A1 (de) | 2018-03-15 |
Family
ID=59812106
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017120605.1A Pending DE102017120605A1 (de) | 2016-09-15 | 2017-09-07 | Bereitstellen von Kontextsachverhalten |
DE202017105409.8U Active DE202017105409U1 (de) | 2016-09-15 | 2017-09-07 | Bereitstellen von Kontextsachverhalten |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE202017105409.8U Active DE202017105409U1 (de) | 2016-09-15 | 2017-09-07 | Bereitstellen von Kontextsachverhalten |
Country Status (6)
Country | Link |
---|---|
US (2) | US10289625B2 (de) |
EP (1) | EP3513311A1 (de) |
CN (1) | CN107832324B (de) |
DE (2) | DE102017120605A1 (de) |
GB (1) | GB2555935A (de) |
WO (1) | WO2018052685A1 (de) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10830653B2 (en) | 2019-03-27 | 2020-11-10 | Honeywell International Inc. | Noninvasive blood pressure sensor |
US11438763B2 (en) * | 2019-09-25 | 2022-09-06 | Hughes Network Systems, Llc | System and method for improving network performance when using secure DNS access schemes |
US11687539B2 (en) | 2021-03-17 | 2023-06-27 | International Business Machines Corporation | Automatic neutral point of view content generation |
US20230205824A1 (en) * | 2021-12-23 | 2023-06-29 | Pryon Incorporated | Contextual Clarification and Disambiguation for Question Answering Processes |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7117200B2 (en) | 2002-01-11 | 2006-10-03 | International Business Machines Corporation | Synthesizing information-bearing content from multiple channels |
US7555471B2 (en) * | 2006-01-27 | 2009-06-30 | Google Inc. | Data object visualization |
US7966291B1 (en) * | 2007-06-26 | 2011-06-21 | Google Inc. | Fact-based object merging |
US9898767B2 (en) * | 2007-11-14 | 2018-02-20 | Panjiva, Inc. | Transaction facilitating marketplace platform |
WO2012047530A1 (en) | 2010-09-28 | 2012-04-12 | International Business Machines Corporation | Providing answers to questions using logical synthesis of candidate answers |
US9152726B2 (en) * | 2010-12-01 | 2015-10-06 | Microsoft Technology Licensing, Llc | Real-time personalized recommendation of location-related entities |
JP5932035B2 (ja) | 2011-08-04 | 2016-06-08 | グーグル インコーポレイテッド | 検索結果を伴う知識パネルを提供すること |
US20130110830A1 (en) * | 2011-10-31 | 2013-05-02 | Microsoft Corporation | Ranking of entity properties and relationships |
US9443021B2 (en) | 2011-12-30 | 2016-09-13 | Microsoft Technology Licensing, Llc | Entity based search and resolution |
US9390174B2 (en) * | 2012-08-08 | 2016-07-12 | Google Inc. | Search result ranking and presentation |
US9411857B1 (en) | 2013-06-28 | 2016-08-09 | Google Inc. | Grouping related entities |
US9396235B1 (en) * | 2013-12-13 | 2016-07-19 | Google Inc. | Search ranking based on natural language query patterns |
CN104484339B (zh) * | 2014-11-21 | 2018-01-26 | 百度在线网络技术(北京)有限公司 | 一种相关实体推荐方法和系统 |
JP2017027520A (ja) * | 2015-07-27 | 2017-02-02 | キヤノン株式会社 | 3dデータ生成装置及び方法、プログラム、記憶媒体 |
US10585893B2 (en) * | 2016-03-30 | 2020-03-10 | International Business Machines Corporation | Data processing |
-
2016
- 2016-09-15 US US15/265,913 patent/US10289625B2/en active Active
-
2017
- 2017-08-24 WO PCT/US2017/048459 patent/WO2018052685A1/en unknown
- 2017-08-24 EP EP17764488.7A patent/EP3513311A1/de not_active Withdrawn
- 2017-09-07 DE DE102017120605.1A patent/DE102017120605A1/de active Pending
- 2017-09-07 DE DE202017105409.8U patent/DE202017105409U1/de active Active
- 2017-09-14 CN CN201710826859.1A patent/CN107832324B/zh active Active
- 2017-09-14 GB GB1714768.7A patent/GB2555935A/en not_active Withdrawn
-
2019
- 2019-04-03 US US16/373,976 patent/US11341143B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
DE202017105409U1 (de) | 2017-12-18 |
US10289625B2 (en) | 2019-05-14 |
WO2018052685A1 (en) | 2018-03-22 |
GB2555935A (en) | 2018-05-16 |
GB201714768D0 (en) | 2017-11-01 |
CN107832324A (zh) | 2018-03-23 |
US20190228016A1 (en) | 2019-07-25 |
CN107832324B (zh) | 2021-10-15 |
EP3513311A1 (de) | 2019-07-24 |
US11341143B2 (en) | 2022-05-24 |
US20180075037A1 (en) | 2018-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210232631A1 (en) | Persisted enterprise graph queries | |
US11360986B2 (en) | Enterprise search | |
DE102017120605A1 (de) | Bereitstellen von Kontextsachverhalten | |
DE202016107300U1 (de) | Auffindbarkeitssystem für Sprachaktionen | |
DE112016002395T5 (de) | Zugriffskontrolle für Datenressourcen | |
DE202010017752U1 (de) | Suchergebnis-Plusbox mit eingeschränkten Ergebnissen | |
DE102019000294A1 (de) | Erstellen unternehmensspezifischer Wissensgraphen | |
DE202015009254U1 (de) | Automatisch erzeugende ausführungssequenzen für workflows | |
US8478756B2 (en) | Contextual document attribute values | |
DE102017125164A1 (de) | Suchmaschine | |
US20150074101A1 (en) | Smart search refinement | |
DE202014010951U1 (de) | Entfernungsabhängige Herabstufung von Suchrankings | |
DE102016125767A1 (de) | Entdeckung einer verbundenen Entität | |
DE112016005374T5 (de) | Identifizieren von Abfragemustern und zugeordneten aggregierten Statistikdaten unter Suchabfragen | |
DE102017122547A1 (de) | Autonomes liefern von suchergebnissen rückwirkend; auch im kontext eines dialogassistenten | |
DE202017105856U1 (de) | Benachrichtigungssystem mit inhaltsspezifischen Schlüsselworten | |
US20230073243A1 (en) | Systems and methods for term prevalance-volume based relevance | |
DE202017106609U1 (de) | Kontextuelles Eindeutigmachen von Anfragen | |
EP3079083A1 (de) | Bereitstellung von app-store-suchergebnissen | |
US9378288B1 (en) | Refining search results | |
DE202017104084U1 (de) | Kontextinformation für eine angezeigte Ressource, die ein Bild enthält | |
US20160147863A1 (en) | Topic based classification of documents | |
US20150205866A1 (en) | Phrase restricted substitute terms | |
DE112015004704T5 (de) | Identifizieren von Lernsituationen für die Kontextsuche | |
DE102017116159A1 (de) | Kontextinformationen für eine Benachrichtigung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R081 | Change of applicant/patentee |
Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE |
|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06F0017300000 Ipc: G06F0016000000 |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, NL |