System and method for natural language querying
Abstract
A system and method for information retrieval are presented. A natural language query is received from a client computer. The natural language query is analyzed to identify a plurality of terms, and a relationship between a pair of terms in the plurality of terms is determined using a knowledge model. The knowledge model defines a plurality of entities and interrelationships between one or more of the plurality of entities for a knowledge domain. A triple statement is constructed using the relationship between the pair of terms, and a query is executed against a knowledge base using the triple statement to generate a set of results. The knowledge base identifies a plurality of items, each of the plurality of items is associated with at least one annotation identifying at one of the entities in the knowledge model. The set of results are transmitted to the client computer.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . An information retrieval system, comprising:
a knowledge model database configured to store a knowledge model for a knowledge domain, the knowledge model defining a plurality of entities and interrelationships between one or more of the plurality of entities; a knowledge base identifying a plurality of items, each of the plurality of items being associated with at least one annotation identifying at one of the entities in the knowledge model database; and a query processing server configured to:
receive, from a client computer, a natural language query using a computer network,
analyze the natural language query to identify a plurality of terms,
identify a first entity in the knowledge model database that is related to at least one term in a pair of terms selected from the plurality of terms,
construct a triple statement including the pair of terms and the first entity in the knowledge model database,
execute a query against the knowledge base using the triple statement to generate a set of results, and
transmit, to the client computer, the set of results.
2 . The information retrieval system of claim 1 , wherein the query processing server is configured to:
analyze the natural language query using named entity recognition.
3 . The information retrieval system of claim 1 , wherein the knowledge model database is configured as a triplestore.
4 . The information retrieval system of claim 1 , wherein the query processing server is configured to:
determine a distance between each term in the pair of terms using the knowledge model database.
5 . The information retrieval system of claim 4 , wherein the query processing server is configured to, when the distance between each term in the pair of terms is two or greater, discard the pair of terms.
6 . The information retrieval system of claim 1 , wherein the query processing server is configured to:
determine a type of each term in the pair of terms, where the type is one of an instance type, a concept type, and a relationship type.
7 . The information retrieval system of claim 6 , wherein the query processing server is configured to,when the type of each term in the pair of terms is the instance type or the concept type, analyze each of the plurality of the terms to identify a linking term having a type that is the relationship type, where the linking term links the pair of terms in the knowledge model database, include the linking term in the query.
8 . A method for information retrieval, comprising:
receiving, from a client computer, a natural language query using a computer network; analyzing the natural language query to identify a plurality of terms; identifying a first entity in a knowledge model database that is related to at least one term in a pair of terms selected from the plurality of terms, the knowledge model database defining a plurality of entities and interrelationships between one or more of the plurality of entities for a knowledge domain; constructing a triple statement including the pair of terms and the first entity in the knowledge model database; executing a query against a knowledge base using the triple statement to generate a set of results, the knowledge base identifying a plurality of items, each of the plurality of items being associated with at least one annotation identifying at one of the entities in the knowledge model database; and transmitting, to the client computer, the set of results.
9 . The method of claim 8 , including analyzing the natural language query using named entity recognition.
10 . The method of claim 8 , wherein the knowledge model database is configured as a triplestore.
11 . The method of claim 8 , including determining a distance between each term in the pair of terms using the knowledge model database.
12 . The method of claim 11 , including, when the distance between each term in the pair of terms is two or greater, discarding the pair of terms.
13 . The method of claim 8 , including determining a type of each term in the pair of terms, where the type is one of an instance type, a concept type, and a relationship type.
14 . The method of claim 13 , including, when the type of each term in the pair of terms is the instance type or the concept type, analyzing each of the plurality of the terms to identify a linking term having a type that is the relationship type, where the linking term links the pair of terms in the knowledge model database, and including the linking term in the query.
15 . A non-transitory computer-readable medium containing instructions that, when executed by a processor, cause the processor to perform the steps of:
receiving, from a client computer, a natural language query using a computer network; analyzing the natural language query to identify a plurality of terms;
identifying a first entity in a knowledge model database that is related to at least one term in a pair of terms selected from the plurality of terms, the knowledge model database defining a plurality of entities and interrelationships between one or more of the plurality of entities for a knowledge domain;
constructing a triple statement including the pair of terms and the first entity in the knowledge model database;
executing a query against a knowledge base using the triple statement to generate a set of results, the knowledge base identifying a plurality of items, each of the plurality of items being associated with at least one annotation identifying at one of the entities in the knowledge model database; and
transmitting, to the client computer, the set of results.
16 . The non-transitory computer-readable medium of claim 15 , including instructions that, when executed by a processor, cause the processor to perform the steps of:
analyzing the natural language query using named entity recognition.
17 . The non-transitory computer-readable medium of claim 15 , including instructions that, when executed by a processor, cause the processor to perform the steps of:
determining a distance between each term in the pair of terms using the knowledge model database.
18 . The non-transitory computer-readable medium of claim 17 , including instructions that, when executed by a processor, cause the processor to perform the steps of, when the distance between each term in the pair of terms is two or greater, discarding the pair of terms.
19 . The non-transitory computer-readable medium of claim 15 , including instructions that, when executed by a processor, cause the processor to perform the steps of:
determining a type of each term in the pair of terms, where the type is one of an instance type, a concept type, and a relationship type.
20 . The non-transitory computer-readable medium of claim 19 , including instructions that, when executed by a processor, cause the processor to perform the steps of, when the type of each term in the pair of terms is the instance type or the concept type, analyzing each of the plurality of the terms to identify a linking term having a type that is the relationship type, where the linking term links the pair of terms in the knowledge model database, and including the linking term in the query.Join the waitlist — get patent alerts
Track US2016314121A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.