Text-based inference chaining
Abstract
A method, system and computer program product for generating inference graphs over content to answer input inquiries. First, independent factors are produced from the inquiry, and these factors are converted to questions. The questions are then input to a probabilistic question answering system (PQA) that discovers relations which are used to iteratively expand an inference graph starting from the factors and ending with possible answers. A probabilistic reasoning system is used to infer the confidence in each answer by, for example, propagating confidences across relations and nodes in the inference graph as it is expanded. The inference graph generator system can be used to simultaneously bi-directionally generate forward and backward inference graphs that uses a depth controller component to limit the generation of both paths if they do not meet. Otherwise, a joiner process forces the discovery of relations that may join the answers to factors in the inquiry.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method of inferring answers to inquiries comprising:
receiving an input inquiry; decomposing the input inquiry to obtain one or more factors, said factors forming initial nodes of an inference graph; iteratively constructing said inference graph over one or more content sources, wherein at each iteration, a processing device discovers answers to said input inquiry by connecting factors to said answers via one or more relations, each relation in an inference graph being justified by one or more passages from said content sources, said inference graph connecting factors to said answers over one or more paths having one or more edges representing said relations; and, providing an answer to said inquiry from said inference graph, wherein a programmed processor device is configured to perform one or more said receiving, decomposing and said iteratively constructing said inference graph to provide said answer.
2 . The method as claimed in claim 1 , wherein said iteratively constructing said inference graph comprises:
expanding said inference graph at each iteration by: generating one or more questions based on one or more current nodes in said graph; searching in one or more content sources to identify one or more relations leading to new answers and representing said new answers as new additional nodes in said inference graph, each new additional node connected via an edge representing the relation, and each relation having an associated justifying passage at an associated confidence level, inferring, from said associated confidence levels, a confidence level at each node of said inference graph to provide an updated inference graph, determining if the updated inference graph meets a criteria for terminating said iteration, and one of: terminating said iteration if said criteria is met; otherwise, repeating said generating, searching, inferring and determining steps with said new additional nodes being current nodes for a next iteration, wherein, upon terminating, said answer to said inquiry is a node from said updated inference graph.
3 . The method as claimed in claim 2 , wherein said searching comprises:
identifying one or more justifying passages supporting a relation between connected nodes of said inference graph.
4 . The method as claimed in claim 2 , wherein said terminating criteria comprises: identifying a node of said updated inference graph having an inferred confidence value exceeding a predetermined threshold; or,
performing a predetermined number of iterations.
5 . The method as claimed in claim 2 , wherein said inferring a confidence level comprises:
forming a Bayesian network from nodes and relations of said inference graph and an associated confidence value representing a probability of belief that a supporting passage justifies the answer for the node; and, in each answer propagating associated confidence values across said relations and nodes represented in said Bayesian network.
6 . The method as claimed in claim 2 , wherein said factors or current nodes comprise a statement, said generating questions comprising:
determining a predetermined relation type corresponding to the statement; and, using a template corresponding to the predetermined relation type to form a question from said statement.
7 . The method as claimed in claim 2 , wherein said factors comprise statements, said method further comprising, at each iteration, one or more of:
prioritizing selected statements as factors for expedient corresponding question generation; or filtering selected statements and removing them as factors for corresponding question generation.
8 . The method as claimed in claim 2 , wherein said decomposing the input inquiry comprises:
analyzing a text of said question; identifying said one or more factors from said analyzing; and applying weights to said one or more factors.
9 . The method as claimed in claim 2 , further comprising:
decomposing the input inquiry into query terms, and using said query terms to obtain one or more candidate answers for said input inquiry; performing as parallel simultaneous operations: iteratively constructing, by the programmed processor device, a first inference graph from factors obtained from the input inquiry, a constructed first inference graph connecting factors to one or more nodes that lead to an answer for said inquiry over one or more paths having one or more edges representing said relations; and iteratively constructing, by said programmed processor device, a second inference graph from said candidate answers, said second inference graph connecting said candidate answers to one or more nodes that lead to said one or more factors of said inquiry over one or more paths having one or more edges representing relations; determining, during said simultaneous iterative constructing, whether a first inference graph can be joined to said second inference graph to generate a final inference graph having a node representing an answer to said input inquiry.
10 . The method as claimed in claim 9 , wherein said determining whether said first inference graph can be joined to said second inference graph comprises:
determining, using a similarity criteria applied to end-point nodes of each said first and said second inference graphs whether two said end-point nodes can be merged into a single node to join said graphs; or forcing a discovering of a relation that forms an edge joining an end-point node of said first inference graph to an end-point answer node in said second inference graph.
11 . A method of inferring answers to inquiries comprising:
receiving an input inquiry; decomposing the input inquiry to obtain one or more factors; and, decomposing the input inquiry into query terms, and using said query terms to obtain one or more candidate answers for said input inquiry; iteratively constructing using a programmed processor device coupled to a content storage source having content, a first inference graph using said factors as initial nodes of said first inference graph, a constructed first inference graph connecting factors to one or more nodes that lead to an answer for said inquiry over one or more paths having one or more edges representing said relations; simultaneously iteratively constructing, using the programmed processor device and the content source, a second inference graph using said one or more candidate answers as initial nodes of said second inference graph, said second inference graph connecting candidate answers to one or more nodes that connect to said one or more factors of said inquiry over one or more paths having one or more edges representing relations; and, generating, during said simultaneous iterative constructing, a final inference graph by joining said first inference graph to said second inference graph, said final inference graph having a joined node representing an answer to said input inquiry.
12 . The method as claimed in claim 11 , wherein said iteratively constructing each said first inference graph and said second inference graph (inference graph) comprises expanding each inference graph at each iteration by:
generating one or more questions based on one or more current nodes in said graph; searching in one or more content sources to identify one or more relations leading to new answers and representing said new answers as new additional nodes in said inference graph, each new additional node connected via an edge representing the relation, and each relation having an associated justifying passage at an associated confidence level, inferring, from said associated confidence levels, a confidence level at each node of said inference graph to provide an updated inference graph, determining if the updated inference graph meets a criteria for terminating said iteration, and one of: terminating said iteration if said criteria is met; otherwise, repeating said generating, searching, inferring and determining steps with said new additional nodes being current nodes at a next iteration, wherein, upon terminating, said answer to said inquiry is a node from said updated inference graph.
13 . The method as claimed in claim 12 , wherein said generating the final inference graph comprises:
determining, using a similarity criteria applied to end-point nodes of each said first and said second inference graphs whether two said end-point nodes can be merged into a single node that joins said first inference or second inference graph.
14 . The method as claimed in claim 13 , wherein said determining using a similarity criteria comprises:
applying one or more of: term matching or co-referencing to identify one or more of: a syntactic, semantic or contextual similarity between said identified end-point node of said first inference graph node and an end-point node of said second inference graph, and merging said identified end-point nodes meeting one or more of: a syntactic, semantic or contextual similarity criteria.
15 . The method as claimed in claim 12 , wherein said generating a final inference graph comprises:
forcing the discovering of a relation that forms an edge joining an end-point node of said first inference graph to an end-point answer node in said second inference graph.
16 . The method as claimed in claim 15 , wherein said forcing the discovering of a relation that forms an edge comprises:
generating, from an end-point factor node of said first inference graph to an end-point candidate answer node in said second inference graph, one of: a “yes”/“no” or multiple-choice question, and using said generated “yes”/“no” or multiple-choice question to determine whether a relation between said respective end-point nodes exists, said relation joining a candidate answer to a factor of the input inquiry.
17 . The method as claimed in claim 11 , wherein said query terms include searchable components, said obtaining candidate answer comprising: conducting a search over content from one or more content sources using one of more of the searchable components to obtain candidate answers used as said initial nodes for said second graph constructing.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.