Natural language based search engine and methods of use therefor
First Claim
Patent Images
1. A method for providing at least one response to at least one query in natural language, comprising:
- populating a data store by obtaining documents from at least a portion of a corpus, isolating sentences from the documents, parsing the sentences into linked pairs of words in accordance with predetermined relationships, assigning concept identifiers to each word of the linked pair of words, assigning concept link identifiers to each pair of concept identifiers corresponding to each linked pair of words, and, combining the concept link identifiers for each sentence into a statement;
receiving an inputted query in natural language;
parsing the query into linked pairs of words, one word of the pair of words at a first position, and another word of the pair of words at a second position, each linked pair of words associated with a relational connector;
determining if the relational connector associated with each linked pair of words matches a predetermined relational connector, and if there is a match, creating an additional pair of words whose positions are opposite those of the pair of words whose relational connector matched the predetermined relational connector;
assigning concept identifiers to each word of each linked pair of words;
assigning concept link identifiers to each pair of concept identifiers corresponding to each linked pair of words;
combining the concept link identifiers into a query statement;
analyzing the query statement and the statements in the data store for matches between concept link identifiers;
isolating statements in the data store having at least one concept link identifier that matches at least one concept link identifier in the query statement; and
, providing at least one sentence corresponding to at least one isolated statement in the data store as a response to the natural language query.
3 Assignments
0 Petitions
Accused Products
Abstract
There is provided a search engine or other electronic search application that receives an inputted query in natural language. The search engine or application augments data derived from the query with additional data, for example, one or more concept link identifiers, that are in addition to concept link identifiers, derived from a standard output, resulting from the query being parsed by a parser. This additional data, based on the inputted query, potentially results in a more defined set and more accurate listing of one or more responses from the search engine or electronic search application.
58 Citations
41 Claims
-
1. A method for providing at least one response to at least one query in natural language, comprising:
-
populating a data store by obtaining documents from at least a portion of a corpus, isolating sentences from the documents, parsing the sentences into linked pairs of words in accordance with predetermined relationships, assigning concept identifiers to each word of the linked pair of words, assigning concept link identifiers to each pair of concept identifiers corresponding to each linked pair of words, and, combining the concept link identifiers for each sentence into a statement;
receiving an inputted query in natural language;
parsing the query into linked pairs of words, one word of the pair of words at a first position, and another word of the pair of words at a second position, each linked pair of words associated with a relational connector;
determining if the relational connector associated with each linked pair of words matches a predetermined relational connector, and if there is a match, creating an additional pair of words whose positions are opposite those of the pair of words whose relational connector matched the predetermined relational connector;
assigning concept identifiers to each word of each linked pair of words;
assigning concept link identifiers to each pair of concept identifiers corresponding to each linked pair of words;
combining the concept link identifiers into a query statement;
analyzing the query statement and the statements in the data store for matches between concept link identifiers;
isolating statements in the data store having at least one concept link identifier that matches at least one concept link identifier in the query statement; and
,providing at least one sentence corresponding to at least one isolated statement in the data store as a response to the natural language query. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for analyzing a query to a search engine, comprising:
-
creating related pairs of words in the query, each of the related pairs of words including a relational connector, each of the related pairs of words including one word at a first position and one word at a second position;
identifying related pairs of words that include a relational connector that matches a relational connector from a collection of at least one predetermined relational connector;
creating additional related pairs of words from the identified pairs of words, including, changing the positions of the words from the identified pairs of words;
assigning concept identifiers to the each of the words in each of the related pairs of words;
creating pairs of concept identifiers by applying the assigned concept identifiers to each word in the related pairs of words;
assigning concept link identifiers to each pair of concept identifiers; and
,combining all of the concept link identifiers into a query statement. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for analyzing a query to a search engine, comprising:
-
creating related pairs of words from the natural language of the query, each of the related pairs of words including a relational connector, each of the related pairs of words including one word at a first position and one word at a second position;
identifying related pairs of words that include a relational connector that matches a relational connector from a collection of at least one predetermined relational connector;
creating additional related pairs of words from the identified pairs of words, including, changing the positions of the words from the identified pairs of words;
assigning concept identifiers to the each of the words in each of the related pairs of words;
assigning concept link identifiers to each pair of concept identifiers; and
,combining all of the concept link identifiers into a query statement. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A method for creating additional concept links from a set of concept pairs derived from a received query, for providing at least one response to the query, comprising:
-
reordering the positions of words in word pairs corresponding to concept pairs, that have a predetermined relational connector, to form new concept pairs, and, adding the new concept pairs to the set of concept pairs. - View Dependent Claims (30, 31, 32, 33, 34, 35)
-
-
36. A system for providing at least one response to a received query, comprising:
-
at least one storage media for storing concept identifiers and concept link identifiers extracted from a corpus; and
,a processor in communication with the at least one storage media, the processor programmed to;
create related pairs of words from the query, each of the related pairs of words including a relational connector, each of the related pairs of words including one word at a first position and one word at a second position;
identify related pairs of words that include a relational connector that matches a relational connector from a collection of at least one predetermined relational connector;
create additional related pairs of words from the identified pairs of words, including, changing the positions of the words from the identified pairs of words;
assign concept identifiers to the each of the words in each of the related pairs of words;
create pairs of concept identifiers by applying the assigned concept identifiers to each word in the related pairs of words;
assign concept link identifiers to each pair of concept identifiers; and
,combine all of the concept link identifiers into a query statement. - View Dependent Claims (37, 38, 39, 40, 41)
-
Specification