System, method, and computer program product for responding to natural language queries
First Claim
1. A method of providing an answer, in a poorly formalized domain, to a natural language query, the method comprising the steps of:
- (a) building a translation formula based on the query;
(b) matching the translation formula with a semantic header derived from the domain; and
(c) extracting the answer from the domain.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method, and computer-program product is provided for answering a natural language query in an automated manner. The answer is drawn from a body of textual information. Concepts in the body of textual information in a domain are expressed as a set of semantic headers. The semantic headers represent formalizations of select concepts in the information domain, and are created on the basis of expected queries. Moreover, queries are reduced to a canonical form. The answering process comprises the step of matching the formalized query, or translation formula, to one or more semantic headers. The pieces of text which correspond to those semantic headers are returned to the user as answers. The generality of a translation formula can be controlled. Steps can be taken to make the translation formula more general or less general. A user can clarify a translation formula if necessary. If the user provides a term that is not immediately recognized, then the user will be presented with a number of options. Each option represents one way in which the term in question can be clarified. The invention can then incorporate the new term into the translation formula and attempt to match one or more appropriate semantic headers. In addition, the domain can be expanded by parties other than the provider of the domain.
174 Citations
28 Claims
-
1. A method of providing an answer, in a poorly formalized domain, to a natural language query, the method comprising the steps of:
-
(a) building a translation formula based on the query;
(b) matching the translation formula with a semantic header derived from the domain; and
(c) extracting the answer from the domain. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method of extending a poorly formalized domain, comprising the steps of:
-
(a) receiving at least one of a query and an answer from an expert;
(b) if the query is received, translating the query into at least one semantic header;
(c) if the query and the answer are received, adding the answer and the corresponding at least one semantic headers to the domain, to form an extended domain; and
(d) compiling the extended domain.
-
-
20. A method of providing a query and answer tool adaptable by a client, comprising the steps of:
-
(a) providing a compiled domain to a client;
(b) enabling a extension of the domain without the assistance of a knowledge engineer. - View Dependent Claims (21, 22)
-
-
23. A computer program product comprising a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on a computer that provides an answer, in a poorly formalized domain, to a natural language query, said computer readable program code means comprising:
-
(a) computer readable program code means for causing the computer to build a translation formula based on the query;
(b) computer readable program code means for causing the computer to match the translation formula with a semantic header derived from the domain; and
(c) computer readable program code means for causing the computer to extract the answer from the domain. - View Dependent Claims (24, 25, 26, 27)
-
-
28. A computer program product comprising a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on a computer that extends a poorly formalized domain, said computer readable program code means comprising:
-
(a) computer readable program code means for causing the computer to receive at least one of an answer and a query from an expert;
(b) computer readable program code means for causing the computer to translate the answer into at least one semantic header, if an answer is received;
(c) computer readable program code means for causing the computer to add the answer and the corresponding at least one semantic header to the domain, if a query and answer are received, to form an extended domain; and
(d) computer readable program code means for causing the computer to compile the extended domain.
-
Specification