Providing causality augmented information responses in a computing environment

An information retrieval response may be augmented, based upon a query, with a plurality of selected causality data relating to the query. The information retrieval response may be generated from an information retrieval system.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates in general to computing systems, and more particularly to, various embodiments for providing causality augmented information responses in a computing environment using a computing processor.

Description of the Related Art

The advent of computers and networking technologies have made possible the increase in the quality of life while enhancing day-to-day activities and simplifying the sharing of information. Due to the recent advancement of information technology and the growing popularity of the Internet, a vast amount of information is now available in digital form. Such availability of information has provided many opportunities. Digital and online information such as, for example, communication messaging in real-time has become very popular in recent years. As great strides and advances in technologies come to fruition, the greater the need to make progress in these systems advantageous for efficiency and improvement.

SUMMARY OF THE INVENTION

Various embodiments for providing causality augmented information in a computing environment by a processor are provided. In one embodiment, by way of example only, a method for providing causality augmented information in a computing environment, again by a processor, is provided. An information retrieval response may be augmented, based upon a query, with a plurality of selected causality data relating to the query. The information retrieval response may be generated from an information retrieval system.

DETAILED DESCRIPTION OF THE DRAWINGS

As the amount of electronic information continues to increase, the demand for sophisticated information access systems also grows. Digital or “online” data has become increasingly accessible through real-time, global computer networks. The data may reflect many aspects of various organizations and groups or individuals, including scientific, political, governmental, educational, businesses, and so forth. With the increased use of collaborative and social communication, communication via text-based communication will also increase. For both business and recreational purposes, real-time communication messages (e.g., real-time chat discourses) are part and parcel of modern society. However, for various entities, irrespective of size, using such collaborative and social means of communication can be an overwhelming experience, particularly when large volumes of text-based data are generated by various applications and services.

For example, information retrieval (IR) systems are systems in which users input queries expressing their information need. The IR system's query engine processes the query and matches it against a set of items in a database. This process constitutes the search. Then the IR system returns a hit list, identifying items in the database which best match the query. This list is displayed to the user. The user can request to see one or more of these items, in which case the system displays the contents of those items—in a process called document retrieval. In the broadest terms, IR can refer to relational or other databases where the information is structured in fields, or stored in tables. However, some IR systems concentrate on unstructured items, e.g., documents that are in free text format. These unstructured documents can be text only; text mixed with images; or other multimedia objects.

The query can consist of a simple Boolean expression; an enhanced Boolean expression (with operators for proximity, or wildcards); a string of relevant words and phrases; or full sentences. Some IR systems allow whole documents to serve as queries. These are interpreted by the system as good examples of the desired documents. Additionally, in a web-based information retrieval (IR) system, an end user who wants to view meta (i.e., description) information or the full contents of a stored data item sends a query to a backend system and then utilizes a browser to view the results of the query.

Current research advances and improvements have been made for IR systems in relation to contextualizing the retrieved information for the purpose of making the-content readable in a stand-alone manner. However, current limitations still exist in an IR system such as, for example, given an event (e.g., a drop in value of a currency on April 1st), current IR systems are unable to support retrieval of the possible causes of such event based on the type of query. Said differently, current IR systems fail to augment or enhance information retrieval responses potential causes for a query such as, for example, support, links, and/or evidence of the potential causes for a query.

Accordingly, the present invention provides a novel solution for providing causality augmented information for an IR system. An information retrieval response may be augmented, based upon a query, with a plurality of selected causality data relating to the query. The information retrieval response may be generated from an information retrieval system.

In an additional aspect, an output of an IR system (e.g., from a user query) may be used and augmented with a list of potential causes related to the query. In an additional aspect, a machine learning operation/artificial intelligence (“AI”) may be used with an IR system to learn and provide additional value towards an IR system (e.g., a smart search engine search). In this way, the present invention enables increasing/speeding up a root cause analysis of various types of variables and/or events.

In one aspect, the present invention provides for providing causality augmented information responses by using, as input, results of a IR system (e.g., from a user query). A list of potential causes related to the query may be collected, generated, and/or provided. In one aspect, the causality augmented information responses may include providing a visualization of an info box including the following information: a) a query about a particular event, b) a list of sentences explaining the potential causes (ranked by our confidence score, and/or c), a link to the document where the sentence in the list of sentences was retrieved.

Thus, the present invention takes an information retrieval response (e.g., output) of a IR system (e.g., from a user query), performs a root cause analysis operation on various keywords of the information retrieval response, augments the information retrieval response with a list of potential chain of causes related to the query. Given the documents in and/or related to the information retrieval response of the IR system, a potential chain of causes (in the form of phrases) may be extracted. A list of documents causally relevant to the output from may be extracted.

The potential chain of causes and the list of documents causally relevant to the output may be aggregated for the query. A ranked list of potential causes or loop back operations may be performed to create a chain of causes. The chain of causes may be aggregated with a rank list of potential causes.

In general, as used herein, “optimize” or “best” may refer to and/or defined as “maximize,” “minimize,” or attain one or more specific targets, objectives, goals, or intentions. Optimize may also refer to maximizing a benefit to a user (e.g., maximize a travel benefit). Optimize may also refer to making the most effective or functional use of a situation, opportunity, or resource.

Additionally, “optimize” need not refer to a best solution or result, but may refer to a solution or result that “is good enough” for a particular application, for example. In some implementations, an objective is to suggest a “best” combination documents/potential causes relating to a query, but there may be a variety of factors that may result in alternate suggestion of a combination of documents/potential causes yielding better results. For example, an optimization problem may search for a combination of factors that result in a minimum and/or maximum combination of documents/potential causes. Such factors may include particular documents/potential causes characteristics. Thus, some changes to the variety of factors may result in a jump from one minimum/maximum to another minimum/maximum. In either case, resulting suggestions of documents/potential causes may be considered “good enough,” “substantially optimal,” and/or “sufficiently good.” Herein, the term “optimize” may refer to such results based on minima (or maxima, depending on what parameters are considered in the optimization problem) for suggesting of a combination of documents/potential causes.

In an additional aspect, the terms “optimize” and/or “optimizing” may refer to an operation performed in order to achieve an improved result (e.g., packing travel articles) such as reduced execution costs or increased resource utilization, whether or not the optimum result is actually achieved. Similarly, the term “optimize” may refer to a component for performing such an improvement operation, and the term “optimized” may be used to describe the result of such an improvement operation.

Characteristics are as Follows:

Service Models are as Follows:

Deployment Models are as Follows:

In the context of the present invention, and as one of skill in the art will appreciate, various components depicted inFIG. 1may be located in a moving vehicle. For example, some of the processing and data storage capabilities associated with mechanisms of the illustrated embodiments may take place locally via local processing components, while the same components are connected via a network to remotely located, distributed computing data processing and storage components to accomplish various purposes of the present invention. Again, as will be appreciated by one of ordinary skill in the art, the present illustration is intended to convey only a subset of what may be an entire connected network of distributed computing components that accomplish various inventive aspects collectively.

Turning now toFIG. 4, a block diagram of exemplary functionality400relating to providing causality augmented information responses is depicted. As shown, the various blocks of functionality are depicted with arrows designating the blocks'400relationships with each other and to show process flow. Additionally, descriptive information is also seen relating each of the functional blocks400. As will be seen, many of the functional blocks may also be considered “modules” of functionality, in the same descriptive sense as has been previously described inFIGS. 1-3. With the foregoing in mind, the module blocks400may also be incorporated into various hardware and software components of a system in accordance with the present invention, such as those described inFIGS. 1-3. Many of the functional blocks400may execute as background processes on various components, either in distributed computing components, or on the user device, or elsewhere.

Multiple data sources401-403(e.g., data source401, data source402, and/or data sources403) may be provided by one or more data resources (e.g., cloud computing services, distributed file system, computing databases, etc.). The data sources401-403may be provided as a corpus or group of data sources defined and/or identified. The data sources401-403may include, but are not limited to, data sources relating to one or more documents, historical records, government records, newspaper articles and images, mapping and geographical records and data, structural data (e.g., buildings, landmark, etc.), musical archive data, books, scientific papers, online journals, journals, articles, drafts, materials related to emails, audio data, images or photographs, video data, and/or other various documents or data sources capable of being analyzed, published, displayed, interpreted, transcribed, or reduced to text data. The data sources401-403may be all of the same type, for example, pages or articles in a wiki or pages of a blog. Alternatively, the data sources401-403may be of different types, such as word documents, wikis, web pages, power points, printable document format, or any document capable of being analyzed by a natural language processing system.

In addition to text-based documents, other data sources such as audio, video or image sources may also be used wherein the audio, video or image sources may be pre-analyzed to extract or transcribe their content for natural language processing, such as converting from image to text, text to image, or visual recognition and analysis. For example, a photograph combined with a newspaper article and mapping data (e.g., global positioning satellite (“GPS”) data) may be analyzed for creating a 3D virtual representation of a particular location at a selected time for providing causality augmented information responses. As an additional example, one or more of the data sources401-403may be a media capturing device (e.g., a camera) and image data captured by the data sources401-403may be analyzed and be used to assist with providing causality augmented information responses. The group of data sources401-403are consumed for an extraction, analysis, and processing, which may also include using natural language processing (NLP) and artificial intelligence (AI) to provide causality augmented information responses.

In one aspect, the data sources401-403may be analyzed by an NLP component410to data mine, analyze data, transcribe relevant information from the content of the data sources401-403(e.g., documents, emails, reports, notes, records, maps, images, video recordings, live-streaming communications, etc.) in order to provide causality augmented information responses and/or provide the information in a more searchable and displayable manner. The NLP component410may be provided as a cloud service and/or as a local service.

The information retrieval response system430may include the NLP component410, a content consuming component411, a characteristics association component412, a user interface (“UP”) component434, an extraction component436, a scoring component432, a ranking component438, an augmenting component440, and a machine learning component442.

In one aspect, the NLP component410may be associated with the content consuming component411. The content consuming component411may be used for inputting the data sources401-403and running NLP and AI tools against them, learning the content, such as by using the machine learning component442. It should be noted that other components ofFIG. 4may also employ one or more NLP systems and the NLP component410and is merely illustrated by way of example only of use of an NLP system. As the NLP component410(including the machine learning component442) learns different sets of data (e.g., keywords of a query and potential causes related to the keywords, etc.), the characteristics association component412(or “intelligent characteristics association component”) may use the artificial intelligence to make cognitive associations or links between data sources401-403by determining keywords, potential causes, images, landmarks, events, activities, historical data, structures, concepts, methods, features, similar characteristics, underlying common topics, and/or features.

Intelligences or (“intelligent”) is the mental process of knowing, including aspects such as awareness, perception, reasoning and judgment. An AI system uses artificial reasoning to interpret the data sources401-403and extract their topics, ideas, or concepts. The learned decisions, decision elements, alternatives to the decision, alternative options/choices, decision criteria, concepts, suggestions, topics and subtopics of a domain of interest, may not be specifically named or mentioned in the data sources401-403and is derived or inferred by the AI interpretation.

The learned content of the data sources consumed by the NLP system may be merged into a database420(and/or knowledge store) or other data storage method of the consumed content with learned causal data (e.g., cause-and-effect relationship, a causal connection based on the conditions of the occurrence of an effect, one or more changes to a variable that impacts one or more alternative variables), events, activities, historical data, structures, concepts, methods, features, similar characteristics, underlying common topics, and/or features of the data sources401-403providing association between the content referenced to the original data sources401-403.

The database420may record and maintain the evolution of queries, information retrieval responses, cognitive decisions, alternatives, criteria, subjects, topics, ideas, or content discussed in the data sources401-403. The database420may track, identify, and associate all queries, information retrieval responses, communication threads, messages, transcripts, images, mapping and geographical records and data, structural data (e.g., buildings, landmark, etc.), musical archive data, books, scientific papers, online journals, journals, articles, drafts, materials related to emails, audio data, images or photographs, video data, and/or other various documents of all data generated during all stages of the development or “life cycle” of the queries, information retrieval responses, decisions, decision elements, alternatives, choices, criteria, subjects, topics, or ideas. The merging of the data into one database420(which may include a domain knowledge) allows the information retrieval response system430to act like a search engine, but in addition to keyword searches, it will use an AI method of making cognitive associations between the data sources using the deduced concepts so as to create and provide causality augmented information responses.

The information retrieval response system430may include a user interface (“UP”) component434(e.g., an interactive graphical user interface “GUI”) for providing user interaction for sending or receiving one or more inputs/queries from a user. In one aspect, the UI component434may also be included in a computing device475.

More specifically, the user interface component434may be in communication with the computing device475(e.g., a wireless communication device) (see also the PDA or cellular telephone54A, the desktop computer54B, the laptop computer54C, and/or the video gaming system54N ofFIG. 2.) for also providing user input for inputting data such as, for example, data sources401-403and also providing user interaction for defining a query and/or providing input for enhancing or adjusting the one or more queries, the user input, an analysis operation, unstructured data from the data resources, or a combination thereof to provide causality augmented information responses. The computing device475may use the UI component434(e.g., GUI) for providing input of data and/or providing a query functionality such as, for example, interactive GUI functionality for enabling a user to enter a query in the computing device475/UI component434relating to query, and/or other parameters, domain of interest, topic, decision, alternative, criteria, or additional analysis. For example, the computing device475/UI component434may display the causality augmented information responses.

In general, the augmenting component440may augment an information retrieval response, based upon a query, with a plurality of selected causality data relating to the query from the one or more data sources401-403. The information retrieval response may be generated from the information retrieval response system430and/or an additional information retrieval response system in association with the information retrieval response system430.

More specifically, the extraction component436, in association with the content consuming component411, may extract selected causality data from one or more data sources401-403and perform an NLP operation (in association with the NLP component410) on one or more data sources401-403to extract the plurality of selected causality data. Thus, the extraction component436may extract the plurality of selected causality data from one or more data sources401-403based upon identified keywords in the query.

The scoring component432may score each of the plurality of selected causality data according to a degree of relevancy in relation to semantic data extracted from one or more data sources401-403.

The scoring component432may assign a confidence score to each of the plurality of selected causality data indicating degree of confidence the plurality of selected causality data relates to the query.

The ranking component438may rank the plurality of selected causality data extracted from one or more data sources in relation to the query. Also, the ranking component438may re-rank the plurality of selected causality data based on an assigned confidence score with one or more address links to the one or more data sources.

The UI component434may also perform a second query for one or more additional data sources401-403relating to the selected causality data. The results of the second query may be linked with the one or more additional data sources. The selected causality data may be aggregated and ranked based upon filtering the one or more additional data sources.

The information retrieval response system430may include an analytics component450that may be used to analyze data, user input, rank and scored data from the data sources401-403(e.g., received from various data resources) along with augmenting an information retrieval response, based upon a query, with selected causality data relating to the query from the data sources401-403.

A feedback component439may also be included in the information retrieval response system430. For example, the feedback component439may collect feedback information from a user relating to the selected causality data.

The information retrieval response system430may also include a machine learning component442. The machine learning component442may learn, adjust, teach, or update the selected causality data and/or the provided causality augmented information responses. The machine learning component442may apply one or more heuristics and machine learning based models using a wide variety of combinations of methods, such as supervised learning, unsupervised learning, temporal difference learning, reinforcement learning and so forth. Some non-limiting examples of supervised learning which may be used with the present technology include AODE (averaged one-dependence estimators), artificial neural networks, Bayesian statistics, naive Bayes classifier, Bayesian network, case-based reasoning, decision trees, inductive logic programming, Gaussian process regression, gene expression programming, group method of data handling (GMDH), learning automata, learning vector quantization, minimum message length (decision trees, decision graphs, etc.), lazy learning, instance-based learning, nearest neighbor algorithm, analogical modeling, probably approximately correct (PAC) learning, ripple down rules, a knowledge acquisition methodology, symbolic machine learning algorithms, sub symbolic machine learning algorithms, support vector machines, random forests, ensembles of classifiers, bootstrap aggregating (bagging), boosting (meta-algorithm), ordinal classification, regression analysis, information fuzzy networks (IFN), statistical classification, linear classifiers, fisher's linear discriminant, logistic regression, perceptron, support vector machines, quadratic classifiers, k-nearest neighbor, hidden Markov models and boosting. Some non-limiting examples of unsupervised learning which may be used with the present technology include artificial neural network, data clustering, expectation-maximization, self-organizing map, radial basis function network, vector quantization, generative topographic map, information bottleneck method, IBSEAD (distributed autonomous entity systems based interaction), association rule learning, apriori algorithm, eclat algorithm, FP-growth algorithm, hierarchical clustering, single-linkage clustering, conceptual clustering, partitional clustering, k-means algorithm, fuzzy clustering, and reinforcement learning. Some non-limiting examples of temporal difference learning may include Q-learning and learning automata. Specific details regarding any of the examples of supervised, unsupervised, temporal difference or other machine learning described in this paragraph are known and are considered to be within the scope of this disclosure.

In one aspect, the domain knowledge may be an ontology of concepts representing a domain of knowledge. A thesaurus or ontology may be used as the domain knowledge and may also be used to identify semantic relationships between observed and/or unobserved variables. In one aspect, the term “domain” is a term intended to have its ordinary meaning. In addition, the term “domain” may include an area of expertise for a system or a collection of material, information, content and/or other resources related to a particular subject or subjects. A domain can refer to information related to any particular subject matter or a combination of selected subjects.

The term ontology is also a term intended to have its ordinary meaning. In one aspect, the term ontology in its broadest sense may include anything that can be modeled as an ontology, including but not limited to, taxonomies, thesauri, vocabularies, and the like. For example, an ontology may include information or content relevant to a domain of interest or content of a particular class or concept. The ontology can be continuously updated with the information synchronized with the sources, adding information from the sources to the ontology as models, attributes of models, or associations between models within the ontology.

Additionally, the domain knowledge may include one or more external resources such as, for example, links to one or more Internet domains, webpages, and the like. For example, text data may be hyperlinked to a webpage that may describe, explain, or provide additional information relating to the text data. Thus, a summary may be enhanced via links to external resources that further explain, instruct, illustrate, provide context, and/or additional information to support a decision, alternative suggestion, alternative choice, and/or criteria.

In one aspect, the information retrieval response system430may perform one or more various types of calculations or computations. The calculation or computation operations may be performed using various mathematical operations or functions that may involve one or more mathematical operations (e.g., solving differential equations or partial differential equations analytically or computationally, using addition, subtraction, division, multiplication, standard deviations, means, averages, percentages, statistical modeling using statistical distributions, by finding minimums, maximums or similar thresholds for combined variables, etc.). It should be noted that each of the components of the information retrieval response system430may be individual components and/or separate components of the information retrieval response system430.

Turning now toFIGS. 5, diagram500depicts operations for providing causality augmented information responses from an information retrieval system. That is, diagram500depicts receiving the results of a traditional IR system (e.g., from a classic user query) to provide a list of potential causes related to the query.

In one aspect, one or more of the components, modules, services, applications, and/or functions described inFIGS. 1-4may be used inFIG. 5. Repetitive description of like elements, components, modules, services, applications, and/or functions employed in other embodiments described herein is omitted for sake of brevity.

As shown, the various blocks of functionality are depicted with arrows designating the steps/blocks'500relationships with each other and to show process flow. Additionally, descriptive information is also seen relating each of the functional steps/blocks500. As will be seen, many of the functional steps/blocks500may also be considered “modules” of functionality, in the same descriptive sense as has been previously described inFIG. 4. With the foregoing in mind, the module functional steps/blocks may also be incorporated into various hardware and software components of a system for providing causality augmented information responses from an information retrieval system in accordance with the present invention. Many of the functional steps/blocks500may execute as background processes on various components, either in distributed computing components, or on the user device, or elsewhere.

Starting with step 1, as in block510, a user may provide a query (to an information retrieval system512or “search engine”) such as, for example, a query relating a query relating to a particular event (e.g., a query relating to a “drop in currency”). An output may be generated from the information retrieval system or “search engine” and may include a topic list of related documents514(e.g., topically related documents).

In step 2, as in block520, one or more potential causes relating to one or more keywords of the query (e.g., drop, currency,) may be detected such as, for example, “no vote on event A” or “confidence vote occurred in May”. The detection operations may include taking/receiving as input topically related documents (obtained in step 1). The detection operations may analyze, identify, and return keywords that have a high probability (e.g., greater than a defined percentage or threshold) of being related to the causes associated with the query.

In step 3, as in block530, one or more causes' related documents may be identified, accessed, and/or retrieved. That is, in step 1, based upon the keywords from step 2, one or more matching documents (a list of causes) (e.g. a document/articled titled “A confidence vote has been asked to support May's proposal”), may be retrieved. Step 3 may also include associating each cause with the input query and assigning a confidence score to the cause in relation to relevancy to the input query. For example, a first cause (“cause 1”) may indicate “delay in event A deal vote” caused “drop in current” with 90% confidence or second cause (“cause 2”) may indicate “markets dislike the uncertainty over what will happen with government politics” with a 60% confidence score). Step 3 may also include providing a list of causes related to the input query.

Turning now toFIG. 6, an additional block diagram600depicts operations for providing causality augmented information responses from an information retrieval system. In one aspect, one or more of the components, modules, services, applications, and/or functions described inFIGS. 1-5may be used inFIG. 6. Repetitive description of like elements, components, modules, services, applications, and/or functions employed in other embodiments described herein is omitted for sake of brevity.

Again, as inFIG. 6, the various blocks of functionality are depicted with arrows designating the steps/blocks'600relationships with each other and to show process flow. Additionally, descriptive information is also seen relating each of the functional steps/blocks600. As will be seen, many of the functional steps/blocks500may also be considered “modules” of functionality, in the same descriptive sense as has been previously described inFIGS. 1-5. With the foregoing in mind, the module functional steps/blocks may also be incorporated into various hardware and software components of a system for image enhancement in accordance with the present invention. Many of the functional steps/blocks500may execute as background processes on various components, either in distributed computing components, or on the user device, or elsewhere.

Starting with block620, an information retrieval component may receive a query (e.g., as input such as, for example, “drop in currency”) from a user610and then search, identify, locate, retrieve, and/or a list of documents related to the user query (e.g., a list of documents and timestamp such as, for example, “currency value,” “stock market”, etc.)

In block630, a cause extraction component (e.g., a causality extraction module) may extract (from the list of documents/taking as input the list of documents) one or more potential causes (in the form of phrases). For example, the cause extraction component may take as input the list of documents (“Ds”) related to a query (“q”). For each document (“d”) in the list of documents (“Ds”), one or more sentences (“Ss”) may be extracted. For each sentence in the group of sentences Ss, a model M(s,q) (e.g., a machine learning model) may be used to obtain a confidence score indicating how causally-related is the sentence list of documents (“Ds”). A sample realization of model M may be performed with the assistance/help of a supervised (e.g., feature based, e.g., “caused by,” or “led to”) or semi-supervised (ontology-driven) operation. Thus, the cause extraction component may provide a list of causally relevant phrases (“Cs”) (e.g., a list of potential causes and when they occurred/happened such as, for example, “cessation,” “good Friday,” “troubles,” “May,” “Government leader” or “weight loss.”)

In block640, a causal retrieval system may use as input a list of phrases (e.g., the causally relevant phrases (“Cs”) and a list of the list of documents (“Ds”) related to a query (“q”) (e.g., the output of the causality extraction module of block630). The causal retrieval system may estimate an aggregated term distribution (“EQ”) from causally relevant phrases (“Cs”) and list of documents (“Ds”) so as to explore along possible directions of the relevant causes (e.g., “event A”) in the context of the query event (e.g., drop in currency value). The causal retrieval system may use the aggregated term distribution (“EQ”) to retrieve a list of documents about potential causes (“CDs”) and generate the potential causes (“CDs”). Thus, the causal retrieval system may generate/provide a list of documents about one or more potential causes relating to the query (e.g., articles “Event A news,” “May Government leader,” and “troubles”).

In block650, a chain event collector may use as input1) a query (“q”), a list of causes/list of causally relevant phrases (“Cs”) (from the output of the causality extraction module of block630), b) a list of causally related documents/list of documents about potential causes (“CDs”) (e.g., the output of the causal retrieval system of block640).

In operation, the chain event collector may create and keep a graph (e.g., an acyclic graph (where a node is equal to a document with causes in the document). At first iteration, the graph may be empty with no edges are available yet. The graph may be progressively populated through documents searches triggered by the chain event collector itself. Thus, from the second iteration on, each node in the graph starts to be connected.

For example, as depicted inFIG. 7, which depicts an internal state example of the chain event collector710(and various iterations results720), in a first iteration, the chain event collector710may receive document A, B, and C. At second iteration, (1) document A triggers a search with document D and E in the result, (2) document B triggered a search with document E and F in the result, (3) document C triggered a search with document D, G, H in the result. Thus, as depicted more clearly inFIG. 7, document A, B and C are the results of the first iteration. Document D, E, F, G, H are the results of the second iteration, where the Chain Event Collector triggered a new search. Each document keeps/maintains the causes. Edges among documents represent a relationship (who triggered a new search). Given the causality relationship, the documents may also be sorted in time (e.g., document D has been published before document A).

Additionally, search results may have multiple parent documents, as depicted inFIG. 7). The chain event collector710may analyze and check whether there are additional documents about potential causes (“CDs”) (CDs equal nodes in the graph). If there are additional documents about potential causes (“CDs”), the chain event collector may loop back to the list of retrieved documents. If there are no additional documents about potential causes (“CDs”), the chain event collector may output to the created graph (e.g., the acyclic graph of causally related documents) to the causality-driven aggregator component for block660. That is, the chain event collector may output a graph of related documents, extracted causes, and correlations (DAG of documents, with timestamps).

In block660, the causality-driven aggregator component, uses as input, the acyclic graph of causally related document (e.g., output of the chain event collector of block650).

In operation, the causality-driven aggregator component660may select the most connected nodes in the graph (e.g., those most relevant and connected documents), which may be referred to herein as a subset “FinalDocs.” The causality-driven aggregator component660may rank the list of phrases/list of causally relevant phrases (“Cs”) based on aggregating evidences from the documents in subset “FinalDocs.” in the context of the query (“q”). For example, the causality-driven aggregator component660may use the retrieval scores of a document (“d”) in the subset “FinalDocs.” and overlap information of terms in document (“d”) (e.g. “event A influence on government A′s economy”) with those in query (“q”) (“drop in currency”) and causes (“c”) in list of phrases/list of causally relevant phrases (“Cs”) (“event A”). Thus, the causality-driven aggregator component660may output/produce a re-ranked list of phrases with confidence scores and links (e.g., address links such as, for example, a uniform resource locator “URL”) to the documents containing re-ranked list of phrases. That is, the causality-driven aggregator component660may output/produce (for user610) a list of relevant-only causes670with links/connections to the originally identified data source (e.g., document).

Turning now toFIG. 8, a method800for providing causality augmented information responses by a processor is depicted, in which various aspects of the illustrated embodiments may be implemented. The functionality800may be implemented as a method executed as instructions on a machine, where the instructions are included on at least one computer readable medium or one non-transitory machine-readable storage medium. The functionality800may start in block802.

An query may be received as input (e.g., a user inputs a query), as in block804. A keyword-based search (e.g., identified keywords from the query) may be performed for locating and retrieving one or more documents (from one or more data sources), as in block806. One or more potential causes may be extracted, as in block808. A query (e.g., an additional query) may be performed for causal related documents, as in block810. Each of the results to the query may be linked (e.g., linked via an address link such as, for example, a uniform resource locator “URL”) to the source of the results, as in block812.

In block814, a determination operation may be performed to determine if there are prior causes (e.g., historical causes related to the original query). If yes at block814, one or more documents may be selected for an additional search (e.g., a more exhaustive and expansive search for potential causes relating to the query), as in block816. If not at block814, those of the located and retrieved documents may be aggregated, ranked, and filtered for the documents (e.g., optimized/best documents) being most related to the potential causes (e.g., optimized documents and causes), as in block818. The best/optimized documents and causes may be returned to a user (e.g., displayed via a GUI to a user), as in block820. The functionality800may end in block822.

Turning now toFIG. 9, a method900for providing causality augmented information responses by a processor is depicted, in which various aspects of the illustrated embodiments may be implemented. The functionality900may be implemented as a method executed as instructions on a machine, where the instructions are included on at least one computer readable medium or one non-transitory machine-readable storage medium. The functionality900may start in block902.

A query may be received (such as, for example, in an information retrieval system), as in block904. An information retrieval response may be augmented, based upon a query, with a plurality of selected causality data relating to the query, as in block906. The information retrieval response may be generated from an information retrieval system. The functionality900may end in block908.

In one aspect, in conjunction with and/or as part of at least one block ofFIGS. 8-9, the operations of800and900may include one or more of each of the following. The operations of800and900may extract the plurality of selected causality data from one or more data sources. The operations of800and900may perform a natural language processing (“NLP”) operation on one or more data sources to extract the plurality of selected causality data.

The operations of800and900may score each of the plurality of selected causality data according to a degree of relevancy in relation to semantic data extracted from one or more data sources, and/or assign a confidence score to each of the plurality of selected causality data indicating degree of confidence the plurality of selected causality data relates to the query.

The operations of800and900may rank the plurality of selected causality data extracted from one or more data sources in relation to the query or re-rank the plurality of selected causality data based on an assigned confidence score with one or more address links to the one or more data sources.

The operations of800and900may extract the plurality of selected causality data from one or more data sources based upon identified keywords in the query, perform a second query for one or more additional data sources relating to the plurality of selected causality data, link results from the second query with the one or more additional data sources, and aggregate and rank the plurality of selected causality data based upon filtering the one or more additional data sources.