System, computer-implemented method and computer program (coherent hyperedge for document question answering)
The system addresses coherence and accuracy issues in document QA by generating coherent hyperedges within a hypergraph, enhancing the reliability of question answering in long documents and multiple sources.
Patent Information
- Application Number
- JP2025125023
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-29
- Filing Date
- 2025-07-25
- Publication Date
- 2026-02-10
AI Technical Summary
Existing document question answering (QA) systems, particularly those using large-scale language models (LLMs), are prone to hallucinations and struggle with coherence, especially in long documents, failing to accurately represent relationships between multiple entities.
A system that generates coherent hyperedges via a hypergraph, where nodes represent entities and hyperedges represent relationships between them, associated with probability weights, to select a set of coherent hyperedges for natural language queries, improving coherence and accuracy in document QA.
Enhances the coherence and accuracy of document QA by reducing hallucinations and enabling effective question answering across long documents or multiple sources, leveraging probability weights to link entities coherently.
Smart Images

Figure 2026021281000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates generally to document question answering (QA), and more particularly to coherent hyperedges for document QA. Summary of the Invention [Problem to be solved by the invention]
[0002] LLM for document QA is prone to hallucinations (e.g., instances where a machine learning model, particularly in natural language processing, generates information or details that are plausible but factually inaccurate or meaningless). [Means for solving the problem]
[0003] The following presents a summary to provide a basic understanding of one or more embodiments. This summary is not intended to identify key or critical elements or to delineate the scope of particular embodiments or the claims. Its sole purpose is to present concepts in a simplified form as a prelude to the more detailed description that is presented later. In one or more embodiments described herein, a device, system, computer-implemented method, apparatus, or computer program product that facilitates coherent hyperedges for document question answering (QA) is described.
[0004] According to one or more embodiments, a system is provided. The system may include a non-transitory computer-readable memory capable of storing computer-executable components. The system may further include a processor operably coupled to the non-transitory computer-readable memory and capable of executing at least one of the computer-executable components capable of generating, via an underlying model, a hypergraph including nodes and hyperedges, where the nodes represent entities in the information source and where the hyperedges represent relationships between two or more of the nodes, where the hyperedges are associated with respective probability weights. In various aspects, at least one of the computer-executable components may further select, from the hyperedges, a set of coherent hyperedges for a natural language question representing coherent information from the information source.
[0005] According to one or more embodiments, a computer-implemented method is provided. In various embodiments, the computer-implemented method can include generating, by a system operatively coupled to a processor and via an underlying model, a hypergraph including nodes and hyperedges, where the nodes represent entities and where the hyperedges represent relationships between two or more of the nodes, where the hyperedges are associated with respective probability weights. In various aspects, the computer-implemented method can include selecting, by the system and from the hyperedges, a set of coherent hyperedges for a natural language query representing coherent information from information sources.
[0006] According to one or more embodiments, a computer program product for facilitating coherent hyperedges for document QA is provided. In various embodiments, the computer program product can comprise a non-transitory computer-readable memory having program instructions embodied therein. In various aspects, the program instructions can be executable by the processor to cause the processor to generate, via the processor, a base model, where nodes represent entities and where hyperedges represent relationships between two or more of the nodes, where the hyperedges are associated with respective probability weights. In various aspects, the program instructions can be further executable by the processor to cause the processor to select, by the processor and from the hyperedges, a set of coherent hyperedges for a natural language query that represent coherent information from the information sources. [Brief explanation of the drawings]
[0007] One or more embodiments are described below in the Detailed Description section with reference to the following drawings.
[0008] [Figure 1] 1 illustrates a block diagram of an example, non-limiting system that facilitates coherent hyperedges for document QA, in accordance with one or more embodiments described herein.
[0009] [Figure 2] 1 illustrates a block diagram of an example, non-limiting system comprising a knowledge graph, a hypergraph, an underlying model, and a database that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein.
[0010] [Figure 3] 1 illustrates a non-limiting block diagram of an example of extracting entities from an information source, according to one or more embodiments described herein.
[0011] [Figure 4] 1 illustrates a non-limiting block diagram of an example knowledge graph, according to one or more embodiments described herein.
[0012] [Figure 5] 1 illustrates a non-limiting block diagram of an example hypergraph, according to one or more embodiments described herein.
[0013] [Figure 6] 1 illustrates a non-limiting block diagram of an example of generating a hypergraph via a base model, according to one or more embodiments described herein.
[0014] [Figure 7] 1 illustrates a block diagram of an example, non-limiting system including a query component, an embedding component, and an embedding model that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein.
[0015] [Figure 8] 1 illustrates a non-limiting block diagram of an example of generating a coherent hyperedge, according to one or more embodiments described herein.
[0016] [Figure 9] 1 illustrates a non-limiting block diagram of an example of generating an embedding according to one or more embodiments described herein.
[0017] [Figure 10] 1 illustrates a block diagram of an example, non-limiting system with generative large-scale language models and natural language responses that facilitate coherent hyperedges for document QA, according to one or more embodiments described herein.
[0018] [Figure 11] FIG. 1 illustrates an example, non-limiting block diagram of how a natural language response can be generated based on a natural language query and a set of coherent hyperedges, according to one or more embodiments described herein.
[0019] [Figure 12] 1 illustrates an example, non-limiting diagram of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0020] [Figure 13] 1 illustrates an example, non-limiting diagram of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0021] [Figure 14] 1 illustrates an example, non-limiting diagram of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0022] [Figure 15] 1 illustrates example, non-limiting information sources according to one or more embodiments described herein. [Figure 16] 1 illustrates example, non-limiting information sources according to one or more embodiments described herein.
[0023] [Figure 17] 1 illustrates a non-limiting diagram of an example of generating a hypergraph from an information source, according to one or more embodiments described herein.
[0024] [Figure 18] 1 illustrates a non-limiting diagram of an example user chatbot, according to one or more embodiments described herein.
[0025] [Figure 19] 1 illustrates a block diagram of an example, non-limiting system including a training component that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein.
[0026] [Figure 20] 1 illustrates an example, non-limiting block diagram of how a base model may be trained according to one or more embodiments described herein.
[0027] [Figure 21] 1 illustrates a flow diagram of an example, non-limiting, computer-implemented method for facilitating coherent hyperedges for document QA, according to one or more embodiments described herein. [Figure 22] 1 illustrates a flow diagram of an example, non-limiting, computer-implemented method for facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0028] [Figure 23] 1 illustrates a block diagram of an example non-limiting operating environment that can facilitate one or more embodiments described herein. DETAILED DESCRIPTION OF THE INVENTION
[0029] According to one or more embodiments, a system is provided. The system may include a non-transitory computer-readable memory capable of storing computer-executable components. The system may further include a processor operably coupled to the non-transitory computer-readable memory and capable of executing at least one of the computer-executable components capable of generating, via an underlying model, a hypergraph including nodes and hyperedges, where the nodes represent entities in the information source and where the hyperedges represent relationships between two or more of the nodes, where the hyperedges are associated with respective probability weights. In various aspects, at least one of the computer-executable components may further select, from the hyperedges, a set of coherent hyperedges for a natural language query representing coherent information from the information source. Such embodiments may provide advantages of improving the coherence of document question answering and enabling document question answering for long documents or multiple documents.
[0030] In one or more embodiments of the above-described system, generating the hypergraph can include extracting entities from the information source; generating a knowledge graph including nodes and edges, where the nodes represent entities and the edges are pairwise relationships between the nodes, where the edges are associated with respective probability weights; and generating the hypergraph using the knowledge graph based on the respective probability weights of the edges. Such embodiments can provide the advantage of reducing hallucination in large-scale language models for document question answering.
[0031] In one or more embodiments of the above-described system, at least one of the computer-executable components can further embed the hyperedges and natural language questions via a text embedding model. Such an embodiment can provide the advantage of reducing hallucination in large-scale language models for document question answering.
[0032] In one or more embodiments of the above-described system, at least one of the computer-executable components can further select the set of coherent hyperedges based on the similarity between the natural language question and the hyperedges using semantic search. Such an embodiment can provide the advantage of improving the coherence of document question answers.
[0033] In one or more embodiments of the above-described system, at least one of the computer-executable components may further input the natural language question and the set of coherent hyperedges into a generative large-scale language model to generate a natural language response. Such an embodiment may provide the advantage of enabling document question answering for long documents or multiple documents.
[0034] In one or more embodiments of the above-described system, the probability weight associated with a hyperedge can be a function of proximity between at least one of entity location, source length, or thematic entity category. Such an embodiment can provide the advantage of improving coherence in document question answering.
[0035] In one or more embodiments of the above-described system, a probability weight associated with a hyperedge can quantify the probability of coherently linking two or more of the nodes with the hyperedge. Such an embodiment can provide the advantage of improving the coherence of document question answering.
[0036] In one or more embodiments of the above-described system, the probability weights associated with edges can quantify the probability that the nodes are coherently related. Such embodiments can provide the advantage of improving the coherence of document question answering.
[0037] In one or more embodiments of the above-described system, the entities may include entities extracted from the information source using natural language processing or user-identified entities. Such embodiments may provide the advantage of reducing hallucination in large-scale language models for document question answering.
[0038] In one or more embodiments of the above-described system, the hyperedges can be stored in a database, and selecting the set of coherent hyperedges includes retrieving the set of coherent hyperedges from the database in response to receiving a natural language query. Such an embodiment can provide the advantage of improving processing efficiency for document question answering.
[0039] In one or more embodiments of the above-described system, training the base model can include pre-training the base model with a first training dataset to generate natural language, where the first training dataset includes a plurality of text data; and training the base model with a second training dataset to generate a hypergraph, where the second training dataset includes the text data and the corresponding hypergraph. Such an embodiment can provide the advantage of reducing hallucination in large-scale language models for document question answering.
[0040] The above-described systems may further implement a computer-implemented method or a computer program product.
[0041] The following detailed description is merely exemplary and is not intended to limit the embodiments and / or their application or uses, nor is it intended to be bound by any expressed or implied information presented in the preceding Background or Summary sections or in the Detailed Description section.
[0042] One or more embodiments are now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a more thorough understanding of one or more embodiments. It will be apparent, however, that in various instances, one or more embodiments may be practiced without these specific details.
[0043] Document question answering (QA) is a subfield of natural language processing (NLP) that focuses on developing systems that can answer questions based on the content of sources such as documents. Document QA systems deal with unstructured or semi-structured text, such as articles, reports, or manuals. Such systems utilize advanced NLP techniques to understand the context and extract relevant information.
[0044] Various existing techniques for performing document QA include using NLP techniques such as named entity recognition (NER) along with the use of large-scale language models (LLMs) to generate answers to natural language questions. Additionally, existing techniques for performing document QA can include generating knowledge graphs to determine answers based on structured data.
[0045] Unfortunately, such existing techniques tend to generate incoherent responses and therefore cannot be reliably implemented for document QA. For example, LLM for document QA is prone to hallucination (e.g., instances in which a machine learning model generates plausible but factually inaccurate or meaningless information or details, particularly in natural language processing). Even after extensive training, which can be laborious and time-consuming, LLM may not be able to accurately and coherently generate a knowledge graph representing a source of information.
[0046] Furthermore, such existing techniques cannot accurately perform long document QA, which is a piece of text that often spans several pages or consists of a significant number of words, often exceeding several hundred (e.g., a research paper, a legal contract, a technical manual, a book, or a long report). That is, the context window in LLM may be insufficient to enable accurate and coherent long document QA.
[0047] Furthermore, extracting coherent information for such existing techniques can be difficult. In particular, NER can enable entity extraction from sources; however, it can only extract simple binary relationships (e.g., relationships between only two entities). Therefore, coherent information on relationships between multiple entities is not extracted, hindering the coherence of entity extraction for document QA.
[0048] Various embodiments of the present disclosure can be implemented to generate solutions to these problems. The embodiments described herein include systems, computer-implemented methods, and computer program products that can enable document QA via coherent hyperedges.
[0049] In various embodiments described herein, there can be an information source. Further, in various embodiments, the graph component can generate a hypergraph through the base model. The hypergraph can include nodes and hyperedges. The nodes of the hypergraph can represent entities from the information source. The hyperedges of the hypergraph can represent relationships between two or more nodes. In various aspects, training the base model can include training the base model with a training dataset to generate a hypergraph, where the training dataset includes text data and a corresponding hypergraph. Additionally, the hyperedges can be associated with respective probability weights that quantify the probability of coherently linking two or more of the nodes with the hyperedge. In various embodiments, a natural language question can be received, and the selection component can select from the hyperedges a set of coherent hyperedges for the natural language question that represent coherent information from the information source. In various aspects, the generation LLM can receive as input a natural language question and a set of coherent hyperedges and generate as output a natural language response. Further, the selection component can select a subset of the set of coherent hyperedges associated with the natural language question. In some cases, semantic search can be used to determine which hyperedges in a set of coherent hyperedges are relevant to a natural language question.
[0050] Various embodiments described herein can be considered advantageous over existing techniques. Indeed, a generative LLM with coherent hyperedges can exhibit higher information coherence. In other words, a generative LLM can have a higher tendency to accurately or reliably perform document QA on input text. Furthermore, building a hypergraph via a foundation model can enable document QA across long documents or multiple sources. Thus, various embodiments described herein can be considered a way to perform more coherent and accurate document QA compared to existing techniques.
[0051] The embodiments illustrated in one or more of the figures described herein are merely exemplary, and thus the architecture of the embodiments is not limited to the systems, devices, and / or components shown therein, nor to any particular order, connection, and / or coupling of the systems, devices, and / or components shown therein. For example, in one or more embodiments, a non-limiting system described herein, such as non-limiting system 100 as shown in FIG. 1, and / or that system may further comprise, be associated with, and / or be coupled to, one or more computers and / or computing-based elements described herein with reference to an operating environment, such as operating environment 2300 shown in FIG. 23. For example, non-limiting system 100 may be associated with, such as being accessible via, computing environment 2500 described below with reference to FIG. 25, thereby distributing aspects of processing between non-limiting system 100 and computing environment 2500. In one or more described embodiments, a computer and / or computing-based element may be used in connection with performing one or more of the systems, devices, components, and / or computer-implemented operations shown and / or described in connection with FIG. 1 and / or other figures described herein.
[0052] 1 illustrates a block diagram of an example, non-limiting system 100 that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein. The non-limiting system 100 can include a processor 104, a memory 106, a coherent hypergraph construction component 101, an access component 110, a graph component 112, and / or a selection component 118.
[0053] The non-limiting system 100 and / or components of the non-limiting system 100 can be utilized to use hardware and / or software to solve problems that are highly technical in nature (e.g., related to document QA, natural language processing, generative language models, etc.) that are not abstract and cannot be performed as a set of mental activities by a human. Furthermore, some of the processing performed may be performed by specialized computers for performing defined tasks related to document QA. The non-limiting system 100 and / or components of the system can be utilized to solve new problems that arise through advances in the above-mentioned technologies, computer architectures, and / or the like. The non-limiting system 100 can provide technical improvements to document QA, such as by improving processing efficiency for long document QA, improving the performance of large-scale language models for QA, and / or improving the coherence of machine learning models.
[0054] The discussion will briefly expand on the processor 104 and memory 106 of non-limiting system 100. For example, in one or more embodiments, non-limiting system 100 can include a processor 104 (e.g., a computer processing unit, a microprocessor, a classical processor, and / or the like). In one or more embodiments, components associated with non-limiting system 100 described herein with or without reference to one or more figures of one or more embodiments can include one or more computer- and / or machine-readable, writable, and / or executable components and / or instructions that can be executed by processor 104 to enable performance of one or more processes defined by such components and / or instructions.
[0055] In one or more embodiments, non-limiting system 100 can include computer-readable memory (e.g., memory 106) that can be operatively coupled to processor 104. Memory 106 can store computer-executable instructions that, when executed by processor 104, cause processor 104 and / or one or more other components of non-limiting system 100 (e.g., coherent hypergraph construction component 101, access component 110, graph component 112, graph component 112, and / or selection component 118) to perform one or more actions. In one or more embodiments, memory 106 can store computer-executable components (e.g., coherent hypergraph construction component 101, access component 110, graph component 112, graph component 112, and / or selection component 118).
[0056] In one or more embodiments, non-limiting system 100 can be coupled (e.g., communicatively, electrically, operatively, optically, and / or similarly functionally) to one or more external systems (e.g., an electrical output generating system, not shown, one or more output targets, an output target controller, and / or the like), sources, and / or devices (e.g., classical computing devices, communication devices, and / or the like), such as via a network. In one or more embodiments, one or more of the components of system 100 can reside in the cloud and / or can reside locally within a local computing environment (e.g., at a designated location).
[0057] In addition to the processor 104 and / or memory 106 described above, the non-limiting system 100 may include one or more computer and / or machine readable, writable and / or executable components and / or instructions that, when executed by the processor 104, may enable performance of one or more operations defined by such components and / or instructions.
[0058] In various embodiments, there may be information sources 108. In various instances, information sources 108 may have any suitable size (e.g., any suitable number of pages, sections, paragraphs, portions, etc.). In various aspects, information sources 108 may be any suitable electronic data (e.g., one or more scalars, one or more vectors, one or more matrices, one or more tensors, one or more strings, or any suitable combination thereof). In some aspects, any of the information sources 108 may be any suitable electronic data or file. In various aspects, information sources 108 may indicate, specify, communicate, describe, explain, display, or otherwise represent any suitable information (e.g., may include textual data, may graphically represent figures or drawings, may include data tables, may include metadata), textually, numerically, or graphically.
[0059] As a non-limiting example, the information source 108 may be a service manual or handbook (or any paragraph, page, chapter, or other portion thereof). As another non-limiting example, the information source 108 may be an excerpt from a textbook (or any paragraph, page, section, or other portion thereof). As yet another non-limiting example, the information source 108 may be a cost analysis report (or any paragraph, page, section, or other portion thereof). As yet another non-limiting example, the information source 108 may be a technical paper (or any page, section, or portion thereof). As yet another non-limiting example, the information source 108 may be a web page (or any paragraph, page, section, or other portion thereof). As yet another non-limiting example, the information source 108 may be different sections of a document (or any paragraph, page, chapter, or other portion thereof).
[0060] In various instances, any of the information sources 108 may be written or otherwise created via any suitable word processing software (e.g., Microsoft Word®) or via any suitable quantitative analysis software (e.g., Microsoft Excel®).
[0061] In any case, it may be desirable to generate a hypergraph 114 to coherently represent information sources 108 so that questions about the information sources 108 can be answered automatically and coherently via hypergraph query techniques. As described herein, a coherent hypergraph 102 for a natural language question answering system can facilitate or achieve such an objective.
[0062] In various embodiments, a coherent hypergraph 102 for a natural language question answering system can include a coherent hypergraph construction component 101. In various aspects, the coherent hypergraph construction component 101 can include subcomponents (e.g., an access component 110, a graph component 112, a selection component 118).
[0063] In various embodiments, the coherent hypergraph construction component 101 can include an access component 110. In various aspects, the access component 110 can electronically access the information sources 108. As a non-limiting example, the access component 110 can electronically retrieve or otherwise acquire the information sources 108 from any suitable centralized or decentralized data structure (not shown) or from any suitable centralized or decentralized computing device (not shown). In any case, the access component 110 can electronically access the information sources 108, such that the access component 110 can serve as a conduit through which other components of the coherent hypergraph 102 for the natural language question answering system can electronically interact with the information sources 108. In various embodiments, the access component 110 can electronically access the natural language questions 120.
[0064] In various embodiments, the coherent hypergraph construction component 101 can include a graph component 112. In various aspects, the graph component 112 can generate the hypergraph 114 via the foundation model 116, as described herein. In various aspects, the graph component 112 can electronically store, maintain, control, or otherwise access the hypergraph 114. The hypergraph 114 can include nodes and hyperedges. The nodes of the hypergraph 114 can represent entities from the information source 108. The hyperedges of the hypergraph 114 can represent relationships between the nodes (e.g., can represent relationships between entities from the information source 108). In particular, the hyperedges can represent relationships between two or more nodes of the hypergraph 114. In various instances, the hypergraph 114 can be any suitable graph data structure having nodes and hyperedges that can represent any information described or communicated by the information source 108.
[0065] An advantage of such an embodiment is that it allows for linking more than two entities from the source, as opposed to a binary relationship between only two entities.
[0066] In various embodiments, the graph component 112 may electronically store, maintain, control, or otherwise access the base model 116. In various cases, the base model 116 may have or otherwise exhibit any suitable deep learning internal architecture. For example, the base model 116 may have an input layer, one or more hidden layers, and an output layer. In various cases, any of such layers may be coupled together by any suitable inter-neuron or inter-layer connections, such as forward connections, skip connections, or recurrent connections. Furthermore, in various cases, any of such layers may be any suitable type of neural network layer having any suitable learnable or trainable internal parameters. For example, any of such input layer, one or more hidden layers, or output layer may be a convolutional layer, where the learnable or trainable parameter may be a convolution kernel. As another example, any of such input layer, one or more hidden layers, or output layer may be a dense layer, where the learnable or trainable parameter may be a weight matrix or a bias value. As yet another example, any of such input layers, one or more hidden layers, or output layers may be batch normalization layers whose learnable or trainable parameters may be shift factors or scale factors. As yet another example, any of such input layers, one or more hidden layers, or output layers may be transformer layers whose learnable or trainable parameters may be input state weight matrices or hidden state weight matrices. Furthermore, in various instances, any of such layers may be any suitable type of neural network layer having any suitable fixed or non-trainable internal parameters. For example, any of such input layers, one or more hidden layers, or output layers may be nonlinear layers, padding layers, pooling layers, or concatenation layers.
[0067] Regardless of the specific internal architecture implemented within the base model 116 (e.g., the specific number, type, or organization of layers), the base model 116 can be configured for natural language processing and hypergraph generation. In other words, the base model 116 can be configured to receive information sources 108 (which can have any suitable numerical or graphical data attached) as input and to generate a hypergraph 114, where such hypergraph 114 represents information from the information sources 108 (e.g., representing entities from the information sources 108 and relationships between such entities). Furthermore, the base model 116 can be configured to determine respective probability weights associated with hyperedges. More specifically, hyperedges are associated with respective probability weights that quantify the probability of coherently linking two or more of the nodes in the hyperedge. In other words, each probability weight defines the probability that the nodes are coherently related in the hyperedge.
[0068] In various embodiments, the coherent hypergraph construction component 101 can include a selection component 118. In various aspects as described herein, the selection component 118 can select, from the hyperedges, a set of coherent hyperedges for a natural language question 120 that represents coherent information from the information sources 108.
[0069] 2 illustrates a block diagram of an example, non-limiting system 200 including a knowledge graph, a hypergraph, an underlying model, and a database that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein. As shown, system 200 may, in some cases, include the same components as system 100 and may further include a knowledge graph 202, an extraction component 204, and a database 206.
[0070] In various embodiments, the extraction component 204 can extract entities from the information source 108. In various cases, the extraction component 204 can extract one or more entities from the information source 108 using any suitable document retrieval technique.
[0071] As a non-limiting example, the extraction component 204 can apply any suitable keyword-based document retrieval technique to the information sources 108. In such cases, the extraction component 204 can identify one or more keywords contained in or described in the natural language question 120 (e.g., via named entity extraction), and the extraction component 204 can search the information sources 108 for any sections (e.g., pages, paragraphs, subsections), if any, that also contain or describe those one or more keywords.
[0072] As yet another non-limiting example, the graph component 112 can apply any suitable probability-based document retrieval technique to the information sources 108. For example, the graph component 112 can utilize a Term Frequency - Inverse Document Frequency (TF-IDF) retrieval technique. As another example, the graph component 112 can utilize a Best Match25 retrieval technique.
[0073] Regardless of the type of document retrieval technique implemented, the graph component 112 can search the information sources 108 to identify one or more entities. In various cases, the extraction component 204 can identify the entity type of each of the entities (e.g., city, chemical, material, etc.). In some cases, the extraction component 204 can extract any suitable data from the information sources 108.
[0074] As a non-limiting example, the extraction component 204 can extract text from the information source 108 (e.g., extract an image caption, extract one or more paragraphs). As another non-limiting example, the extraction component 204 can extract figures or drawings from the information source 108 (e.g., extract a diagram). As yet another non-limiting example, the extraction component 204 can extract tables from the information source 108 (e.g., extract a data table, extract a chart). As yet another non-limiting example, the extraction component 204 can extract metadata from the information source 108 (e.g., extract the author, extract a unique identifier for the document, extract the document type, extract the modification date, extract the publisher of the document).
[0075] In any instance, the information source 108 can be viewed as including multiple isolated pieces of information. Accordingly, the extraction component 204 can extract such isolated information (e.g., text, figures, tables, metadata) from the information source 108. The extraction component 204 can then extract entities from the extracted isolated information of the information source 108. For example, the extraction component 204 can utilize any suitable natural language processing technique (e.g., via named entity extraction) to extract such entities from the information source 108.
[0076] In various instances, generating the hypergraph 114 may include generating a knowledge graph 202. In various embodiments, the graph component 112 may generate the knowledge graph 202 based on the entities and relationships between the entities extracted by the extraction component 204. The nodes of the knowledge graph 202 may represent entities, and the edges of the knowledge graph 202 may be pairwise relationships between the nodes (e.g., pairwise relationships between entities extracted from the information sources 108). In other words, the edges of the knowledge graph 202 may represent binary relationships between two entities. In various instances, the knowledge graph 202 may be any suitable graph data structure having nodes and edges that may represent any information described or communicated by the information sources 108.
[0077] In various aspects, edges of the knowledge graph 202 can be associated with respective probability weights. That is, each probability weight associated with an edge of the knowledge graph 202 can quantify the probability that the nodes are coherently related. Specifically, each probability weight can define the probability that the two nodes in the respective edge are coherently related.
[0078] In various embodiments, the graph component 112 can generate a hypergraph 114 from the knowledge graph 202. Specifically, the graph component 112 can construct the hypergraph 114 based on the respective probability weights of the edges of the knowledge graph 202. Thus, the hypergraph 114 can represent the information sources 108 based on the respective probability weights associated with the edges, which indicate the probability of coherence between the nodes.
[0079] In various embodiments, the hypergraph 114 may be stored in a database 206. The database 206 may be any suitable database capable of storing graph-like structures, relationships, or queries (e.g., a graph database, a document store, a relational database). In various cases, the database 206 may be deployed in any suitable manner (e.g., cloud-based, private cloud, hybrid cloud, on-premise, managed service, database-as-a-service). In any case, the hypergraph 114 may be accessed from the database 206 in response to receiving a natural language question 120.
[0080] FIG. 3 illustrates a non-limiting block diagram 300 of an example of extracting entities from an information source according to one or more embodiments described herein.
[0081] In various embodiments, the extraction component 204 can extract entities from the information sources 108 via any suitable natural language processing method. For example, the extraction component 204 can utilize a deep learning neural network 302 to extract entities and relationships between entities.
[0082] In various embodiments, the extraction component 204 may electronically store, maintain, control, or otherwise access the deep learning neural network 302. In various cases, the deep learning neural network 302 may have or otherwise exhibit any suitable deep learning internal architecture. For example, the deep learning neural network 302 may have an input layer, one or more hidden layers, and an output layer. In various cases, any of such layers may be coupled together by any suitable inter-neuron or inter-layer connections, such as forward connections, skip connections, or recurrent connections. Furthermore, in various cases, any of such layers may be any suitable type of neural network layer having any suitable learnable or trainable internal parameters. For example, any of such input layer, one or more hidden layers, or output layer may be a convolutional layer, where the learnable or trainable parameter may be a convolutional kernel. As another example, any of such input layers, one or more hidden layers, or output layers may be dense layers whose learnable or trainable parameters may be weight matrices or bias values. As yet another example, any of such input layers, one or more hidden layers, or output layers may be batch normalization layers whose learnable or trainable parameters may be shift factors or scale factors. As yet another example, any of such input layers, one or more hidden layers, or output layers may be transformer layers whose learnable or trainable parameters may be input state weight matrices or hidden state weight matrices. Furthermore, in various instances, any of such layers may be any suitable type of neural network layer having any suitable fixed or non-trainable internal parameters. For example, any of such input layers, one or more hidden layers, or output layers may be nonlinear layers, padding layers, pooling layers, or concatenation layers.
[0083] Regardless of the specific internal architecture (e.g., the specific number, type, or organization of layers) implemented within the deep learning neural network 302, the deep learning neural network 302 can be configured for named entity extraction. In other words, the deep learning neural network 302 can be configured to receive as input an information source 108 (which can be accompanied by any suitable numerical or graphical data) and to identify and classify entities 304 (e.g., a person's first name, an organization, a location, etc.) within the input information source, where such text data is from the information source 108.
[0084] In various embodiments, extraction component 204 (e.g., deep learning neural network 302) can output any suitable number of entities identified in information source 108. For example, in various embodiments, entities 304 can include i entities: entity 304(1) through entity 304(i), where i>1, for any suitable positive integer. In various aspects, entities 304 can be any suitable electronic data (e.g., one or more scalars, one or more vectors, one or more matrices, one or more tensors, one or more strings, or any suitable combination thereof). In various aspects, entities 304 can be any suitable general or generic features, aspects, properties, characteristics, or categories extracted from information source 108.
[0085] FIG. 4 illustrates a non-limiting block diagram 400 of an example knowledge graph according to one or more embodiments described herein.
[0086] 4 illustrates a non-limiting example of a knowledge graph 202. While knowledge graph 202 is shown as including six entities along with a set of relationships between such entities, it should be noted that knowledge graph 202 may include any suitable number of entities 304 in any suitable manner via any suitable number of relationships that represent whatever information is being described or communicated by information sources 108. That is, the structure of entities and relationships in knowledge graph 202 may depend on the information sources 108 received or accessed. In other words, knowledge graph 202 may include any suitable number of nodes in any suitable manner via any suitable number of edges.
[0087] 4, knowledge graph 202 may include nodes representing entities 304 and edges representing relationships between two nodes. The edges of knowledge graph 202 may be viewed as relationships between entities 304. In various aspects, entity 304(1) may have relationship 402 with entity 304(2) or relationship 404 with entity 304(3). Further, in various aspects, entity 304(2) may have relationship 408 with entity 304(4), entity 304(3) may have relationship 406 with entity 304(4), entity 304(4) may have relationship 410 with entity 304(5), entity 304(5) may have relationship 412 with entity 304(6), and entity 304(6) may have relationship 414 with entity 304(2). In various embodiments, the relationships between entities 304 may be semantic relationships (eg, conveying interactions, dependencies, or attributes that exist between entities 304).
[0088] As a non-limiting example, assume that relationship 402 is a "part-of" relationship, where entity 304(1) represents a car engine and entity 304(2) represents a particular engine part (e.g., a piston). As another non-limiting example, assume that relationship 410 is an "employ-of" relationship, where entity 304(4) represents a person and entity 304(5) represents an organization. As yet another non-limiting example, assume that relationship 410 is a "located-in" relationship, where entity 304(6) represents a city and entity 304(4) represents a state.
[0089] In various embodiments, edges in knowledge graph 202 can be associated with respective probability weights that quantify the probability of coherence between two nodes. As a non-limiting example, the probability weight for relationship 410 can be 0.98, where relationship 404 is an "authored-by" relationship, where entity 304(1) represents a person and entity 304(3) represents a research paper. That is, the probability of coherence that the person is linked to the research paper is 0.98.
[0090] FIG. 5 illustrates a non-limiting block diagram 500 of an example hypergraph, according to one or more embodiments described herein.
[0091] 5 illustrates a non-limiting example of a hypergraph 114. While the hypergraph 114 is illustrated as including six entities and two hyperedges representing relationships between such entities, it should be noted that the hypergraph 114 can include any suitable number of entities 304 in any suitable manner via any suitable number of hyperedges that represent whatever information is being described or communicated by the information source 108. That is, the structure of the entities and relationships in the hypergraph 114 can depend on the information source 108 received or accessed. In other words, the hypergraph 114 can include any suitable number of nodes in any suitable manner via any suitable number of hyperedges.
[0092] In various aspects, the hypergraph 114 may include nodes representing entities 304 and hyperedges representing relationships between two or more of the nodes. That is, a hyperedge of the hypergraph 114 may represent a relationship between two or more of the entities 304. In some cases, a hyperedge may include more than one relationship between entities. Furthermore, the relationships of the more than one relationship may be different from one another (e.g., a hyperedge may include a "is part of" relationship and a "is located at" relationship). In other cases, the relationships of the more than one relationship may be the same (e.g., a hyperedge may include a first "is part of" relationship and a second "is part of" relationship).
[0093] 5, in various aspects, hypergraph 114 may include a first hyperedge representing a relationship between entity 304(1), entity 304(2), entity 304(3), entity 304(4), and entity 304(5). That is, the first hyperedge may include relationship 502 between entity 304(1) and entity 304(2), relationship 504 between entity 304(1) and entity 304(3), relationship 506 between entity 304(2) and entity 304(6), and relationship 508 between entity 304(2) and entity 304(4). Further, as shown in FIG. 5, hypergraph 114 may include a second hyperedge representing a relationship between entity 304(3), entity 304(4), entity 304(5), and entity 304(6). That is, the second hyperedge may include relationship 510 between entity 304(3) and entity 304(4), relationship 512 between entity 304(4) and entity 304(5), and relationship 514 between entity 304(5) and entity 304(6). In various embodiments, the relationships between entities 304 may be semantic relationships (e.g., conveying interactions, dependencies, or attributes that exist between entities 304).
[0094] As a non-limiting example, assume that in a first hyperedge, relationship 502 is a "is part of" relationship and relationship 504 is a "manufactured-by" relationship, where entity 304(1) represents a car engine, entity 304(2) represents a particular engine part (e.g., a piston), and entity 304(3) represents an automobile company.
[0095] As another non-limiting example, assume that in a second hyperedge, relationship 510 is a "collaborate on" relationship, relationship 512 is a "funded-by" relationship, and relationship 514 is a "located in" relationship. Further assume that entity 304(3) represents a person, entity 304(4) represents a research project, entity 304(5) represents an organization, and entity 304(6) represents a city.
[0096] In various embodiments, hyperedges of the hypergraph 114 may be associated with respective probability weights that quantify the probability of coherence between the nodes in the hyperedge. As a non-limiting example, the probability weight for a first hyperedge may be 0.96. That is, the probability that all nodes in the first hyperedge are coherently linked is 0.96.
[0097] In various embodiments, hypergraph 306 may include the same structure as knowledge graph 202. Specifically, in instances where hypergraph 114 is generated from knowledge graph 202, hypergraph 114 may include the same entities and relationships (e.g., the same nodes and relationships) as knowledge graph 202, and may further include hyperedges that include two or more of the entities and / or one or more of the relationships.
[0098] FIG. 6 illustrates a non-limiting block diagram 600 of an example of generating a hypergraph via an underlying model, according to one or more embodiments described herein.
[0099] In various embodiments, the base model 116 can be trained to generate the hypergraph 114 based on the information source 108. Non-limiting aspects of training the base model 116 are described with respect to FIGS.
[0100] In various instances, the hypergraph 114 can be generated via the base model 116. Alternatively, the hypergraph 114 can be generated from the knowledge graph 202 based on probability weights of the edges of the knowledge graph 202. In various embodiments, generating the hypergraph 114 via the base model 116 can include the base model 116 receiving the information source 108 as input and generating the hypergraph 114 as output. Additionally, the base model 116 can further determine respective probability weights associated with the hyperedges of the hypergraph 114 based on the information source 108. In various aspects, the graph component 112 can electronically execute the base model 116 against the information source 108. In various instances, such execution can cause the base model 116 to generate the hypergraph 114 and respective probability weights associated with the hyperedges of the hypergraph 114.
[0101] In various embodiments, the selection component 118 can filter or select a set of coherent hyperedges from the hypergraph 114 based on respective probability weights associated with the hyperedges of the hypergraph 114. In various aspects, the set of coherent hyperedges can be stored in the database 206 for later retrieval, i.e., in response to receiving the natural language query 120, the set of coherent hyperedges can be accessed electronically from the database 206.
[0102] 7 illustrates a block diagram of an example, non-limiting system 700 that includes a query component, an embedding component, and an embedding model that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein. As shown, system 700 may, in some instances, include the same components as system 200 and may further include a query component 702, an embedding component 704, and an embedding model 706.
[0103] In various embodiments, the embedding component 704 can electronically store, maintain, control, or otherwise access the embedding model 706. In various aspects, the embedding component 704 can electronically access the hypergraph 114. In some cases, the embedding component 704 can electronically access the hypergraph 114 from the database 206.
[0104] In various embodiments, the embedding component 704 can electronically execute the embedding model 706 for the hypergraph 114. In particular, the embedding component 704 can electronically execute the embedding model 706 for a set of coherent hyperedges of the hypergraph 114 selected by the selection component 118 based on respective probability weights associated with the hyperedges. In various instances, such execution can cause the embedding model 706 to generate a set of embeddings for the hypergraph 114.
[0105] Additionally, the embedding component 704 can electronically execute the embedding model 706 against the natural language question 120. In various instances, such execution can cause the embedding model 706 to generate a set of embeddings for the natural language question 120.
[0106] In various embodiments, the selection component 118 can electronically access the embeddings generated by running the embedding model 706 on the natural language question 120 and the hypergraph 114. Accordingly, the selection component 118 can utilize a semantic search on the embeddings of the natural language question 120 and the hypergraph 114. The semantic search can include comparing the embeddings of the natural language question 120 with the embeddings of the hypergraph 114 to find similarity vectors between the embeddings. Thus, the selection component 118 can determine which hyperedges in the set of coherent hyperedges are relevant to the natural language question 120 based on the semantic search.
[0107] In various embodiments, the selection component 118 can determine which, if any, of the embeddings of the set of coherent hyperedges are sufficiently similar (e.g., in terms of Euclidean distance or cosine similarity) to the embeddings of the natural language question 120. If the embedding of any given hyperedge from the set of coherent hyperedges is within any suitable threshold level of similarity of the embedding of the natural language question 120, then the given hyperedge can be considered to be substantially related or otherwise associated with the natural language question 120 (e.g., as including such text, numeric, or graphical data).
[0108] In various aspects, the query component 702 can identify an answer for any given natural language question about the information source 108 by leveraging the set of coherent hyperedges selected by the selection component 118 .
[0109] FIG. 8 illustrates a non-limiting block diagram 800 of an example of generating a coherent hyperedge according to one or more embodiments described herein.
[0110] In various embodiments, the selection component 118 can receive the hypergraph 114 and respective probability weights associated with the hyperedges of the hypergraph 114. In response, the selection component 118 can filter or select the set of coherent hyperedges 802 from the hypergraph 114 based on the respective probability weights associated with the hyperedges of the hypergraph 114. Specifically, the selection component 118 can select the set of coherent hyperedges 802 from the hyperedges of the hypergraph 114 based on a defined threshold of the respective probability weights. In various aspects, the defined threshold can be any suitable threshold for determining the coherence of the hyperedges. For example, the defined threshold can be user-defined to meet a desired level of coherence in the set of coherent hyperedges 802.
[0111] FIG. 9 illustrates a non-limiting block diagram 900 of an example of generating an embedding according to one or more embodiments described herein.
[0112] In various embodiments, the embedding model 706 can receive as input the set of coherent hyperedges 802 and the natural language question 120. Accordingly, the embedding model 706 can generate as output an embedding 902. The embedding 902 can include an embedding of the set of coherent hyperedges 802 and an embedding of the natural language question 120.
[0113] In various aspects, the embeddings 902 of the hypergraph 114 and the embeddings of the natural language questions 120 may be in any suitable format (e.g., may include latent vector representations). For example, the embeddings 902 may be numerical vectors representing the natural language questions 120 or the nodes, hyperedges, or subgraphs of the hypergraph 114. In any case, the embedding model 706 may include any suitable internal architecture (e.g., deep learning neural networks, hypergraph neural networks), and any suitable embedding techniques may be utilized to learn and generate the embeddings 902.
[0114] 10 illustrates a block diagram of an example, non-limiting system 1000 with generative large-scale language models and natural language responses that facilitate coherent hyperedges for document QA, according to one or more embodiments described herein. As shown, system 1000 may, in some cases, include the same components as system 700 and may further include generative large-scale language models and natural language responses 1004.
[0115] In various embodiments, the access component 110 can electronically receive, retrieve, or otherwise access the natural language question 120 from any suitable data structure or source. In various aspects, the natural language question 120 can be any suitable plain text question asking about any aspect of the information source 108. As a non-limiting example, if the information source 108 is related to health care, the natural language question 120 can ask what the symptoms of a disease are. As another non-limiting example, if the information source 108 is related to travel, the natural language question 120 can ask what the top-rated hotels are in a certain city. In various instances, the natural language question 120 can be provided or entered by a user via any suitable human-computer interface device (e.g., via a keyboard, keypad, touchscreen, or voice control system).
[0116] In various aspects, the query component 702 can electronically store, maintain, control, or otherwise access the generated LLM 1002. In various cases, the generated LLM 1002 can have or otherwise exhibit any suitable deep learning internal architecture. For example, the generated LLM 1002 can have an input layer, one or more hidden layers, and an output layer. In various cases, any of such layers can be coupled together by any suitable inter-neuron or inter-layer connections, such as forward connections, skip connections, or recurrent connections. Furthermore, in various cases, any of such layers can be any suitable type of neural network layer having any suitable learnable or trainable internal parameters. For example, any of such input layer, one or more hidden layers, or output layer can be a convolutional layer, where the learnable or trainable parameter can be a convolution kernel. As another example, any of such input layer, one or more hidden layers, or output layer can be a dense layer, where the learnable or trainable parameter can be a weight matrix or a bias value. As yet another example, any of such input layers, one or more hidden layers, or output layers may be a batch normalization layer, where the learnable or trainable parameter may be a shift factor or a scale factor. As yet another example, any of such input layers, one or more hidden layers, or output layers may be a transformer layer, where the learnable or trainable parameter may be an input state weight matrix or a hidden state weight matrix. Furthermore, in various instances, any of such layers may be any suitable type of neural network layer, having any suitable fixed or non-trainable internal parameters. For example, any of such input layers, one or more hidden layers, or output layers may be a nonlinear layer, a padding layer, a pooling layer, or a concatenation layer.
[0117] Regardless of the specific internal architecture implemented within the generative LLM 1002 (e.g., the specific number, type, or organization of layers), the generative LLM 1002 can be configured for question answering. That is, the generative LLM 1002 can be configured to receive as input a natural language question and a set of coherent hyperedges 802, and to generate as output a corresponding natural language answer. In particular, the generative LLM 1002 can be configured to receive a subset of the set of coherent hyperedges selected by the selection component 118 that are deemed relevant to the natural language answer 1004. In response, by utilizing the generative LLM 1002 and the set of coherent hyperedges 802, the query component 702 can generate the natural language answer 1004. That is, by executing the natural language question 120 against the set of coherent hyperedges 802, the query component 702 can generate the natural language answer 1004. Non-limiting aspects are described with respect to FIG. 11 .
[0118] FIG. 11 illustrates an example, non-limiting block diagram 1100 of how a natural language response can be generated based on a natural language query and a set of coherent hyperedges, according to one or more embodiments described herein.
[0119] In various embodiments, as mentioned above, the natural language question 120 can be a plain text question provided by a user that asks for information about the information source 108. In various aspects, the query component 702 can electronically execute the generative LLM 1002 on the natural language question 120 and the set of coherent hyperedges 802. In various cases, such execution can cause the generative LLM 1002 to generate a natural language answer 1004. More specifically, the query component 702 can feed or route the natural language question 120 to an input layer of the generative LLM 1002. In various aspects, the natural language question 120 can complete a forward pass through one or more hidden layers of the generative LLM 1002. In various cases, the output layer of the generative LLM 1002 can calculate or compute the natural language answer 1004 based on activation maps or feature maps generated by the one or more hidden layers.
[0120] In various aspects, generating the natural language response 1004 can include electronically executing the natural language response 1004 against the set of coherent hyperedges 802. In various cases, such execution can be facilitated in any suitable manner (e.g., in an SQL manner, a SPARQL manner, a GraphQL manner, a Cypher manner). In any case, such execution can generate the natural language response 1004. In various aspects, the natural language response 1004 can be any suitable electronic data (e.g., one or more scalars, one or more vectors, one or more matrices, one or more tensors, one or more strings, or any suitable combination thereof) that can be considered to represent any information asked or requested in the natural language question 120. As a non-limiting example, consider again the case above where the natural language question 120 can ask what the symptoms of a disease are if the information source 108 is related to healthcare. In such cases, the natural language response 1004 may describe or identify one or more potential symptoms of the disease listed in the set of coherent hyperedges 802.
[0121] In various aspects, the query component 702 can electronically render the natural language response 1004 on any suitable electronic display (e.g., a screen) so that the natural language response 1004 can be viewable by a user. In other cases, the query component 702 can electronically transmit the natural language response 1004 to any other suitable computing device (e.g., a smartphone) associated with the user so that the user can perceive the natural language response 1004.
[0122] Accordingly, as described herein, a coherent hypergraph 102 for a natural language question answering system can then utilize the set of coherent hyperedges 802 to answer real questions about the information source 108, or any other suitable information source, that a real user might have.
[0123] In order for the coherent hypergraph 102 for a natural language question answering system to function accurately, correctly, or reliably, the generative LLM 1002 may first be trained as described with respect to FIGS. 21-22.
[0124] FIG. 12 illustrates an example, non-limiting diagram 1200 of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0125] FIG. 12 illustrates a multi-stage flow diagram that facilitates various embodiments described herein. For example, as shown, stage 1, stage 2, and stage 3 can include generating a hypergraph 114 from a knowledge graph 202. In particular, stage 1 can include extracting and identifying entities 304. In various aspects, extracting and identifying entities 304 can include receiving an information source 108. For example, the information source 108 can be a document 1202 or a web page 1204. In various aspects, extracting and identifying entities 304 can include extracting isolated information from the information source 108. As a non-limiting example, the extraction component 204 can extract text 1206, graphics 1208, metadata 1210, or tables 1212 from the information source 108. In response, the extraction component 204 can utilize natural language processing to identify entities 304. For example, the extraction component 204 can electronically execute a deep learning neural network 402 on the isolated information from the information source 108 to extract entities 304. The entity 304 is
number
number
[0126] In various embodiments, the entities 304 may include entities extracted by the extraction component 204 or user-identified entities. That is, the user-identified entities may be provided or entered by a user via any suitable human-computer interface device (e.g., via a keyboard, keypad, touchscreen, or voice control system). Accordingly, the set of nodes may be:
number
number
[0127] In various embodiments, each probability weight associated with an edge in the knowledge graph 202 is expressed as P(E i )=f(v i ,v j ), where P(E i ) is the node v i and node v j are coherently related. Accordingly, in stage 3, a respective probability weight P(E i), the graph component 112 can generate the hypergraph 114. Specifically, the graph component 112 can generate the hypergraph 114 by using the respective probability weights P(E i ), the hyperedges (eg, relationships between two or more nodes) of the hypergraph 114 can be determined.
[0128] Hypergraph 114 is
number
number
[0129] In various embodiments, each probability weight associated with a set of hyperedges in the hypergraph 114 is expressed as P(H i )=g(P(E i ),P(E j ),...), where P(H i) quantifies the probability of coherently linking two or more nodes with a hyperedge. In various embodiments, each probability weight associated with a set of hyperedges can be a function of proximity between the locations of the entities, specifically, between the physical or conceptual proximity of the entities within the hyperedge. As a non-limiting example, entities located in the same geographic area may have a higher probability of being coherently related. In various instances, each probability weight associated with a set of hyperedges can be a function of proximity between the lengths of the information sources 108, specifically, the size or scope of the information sources 108. As a non-limiting example, information sources 108 with longer lengths may provide more context or evidence about the relationship between the nodes, which influences the respective probability weights. In various aspects, each probability weight associated with a set of hyperedges can be a function of proximity between thematic entity categories, specifically, the category or theme to which the entities belong. As a non-limiting example, entities within the same thematic category (e.g., all related to healthcare, all related to semiconductor structures) may have a higher probability of being coherently related.
[0130] In any case, the respective probability weights P(H i ), the selection component 118 can select a subset of the set of coherently related hyperedges H. Specifically, the selection component 118 can filter out hyperedges from the set of hyperedges H that do not meet a defined threshold of coherence between nodes.
[0131] FIG. 13 illustrates an example, non-limiting diagram 1300 of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0132] In various embodiments, instead of generating the hypergraph 114 from the knowledge graph 202, the hypergraph 114 can be generated via the base model 116. More specifically, the graph component 112 can prepare and generate multimodal input from dissociated information of the information source 108. In this manner, the graph component 112 can input the multimodal input to the base model 116. That is, the graph component 112 can electronically execute the base model 116 on the multimodal input to generate the hypergraph 114 and respective probability weights associated with a set of hyperedges in the hypergraph 114.
[0133] In various embodiments, a respective probability weight P(H i ), selection component 118 may select a subset of the set H of coherently related hyperedges. Specifically, selection component 118 may filter out hyperedges from the set H of hyperedges that do not meet a defined threshold of coherence between nodes. Accordingly, the subset of the set H of coherently related hyperedges may be stored in database 206.
[0134] FIG. 14 illustrates an example, non-limiting diagram 1400 of facilitating coherent hyperedges for document QA, according to one or more embodiments described herein.
[0135] 14 illustrates a multi-stage flow diagram facilitating various embodiments described herein that may follow various stages described by FIGS. 12 and 13. For example, as shown, stage 4, stage 5, and stage 6 may include generating a natural language answer 1004 based on the natural language question 120 and the set of coherent hyperedges 802. In particular, stage 4 may include embedding the natural language question 120 and the set of coherent hyperedges 802 via an embedding model 706. In various aspects, the embedding component 704 may electronically execute the embedding model 706 on the natural language question 120 and the set of coherent hyperedges 802 to generate a vector embedding. The embedding 1402 of the natural language question 120 may be generated by V Q and the embedding 1404 of the set of coherent hyperedges 802 is V H This can be shown as:
[0136] In various embodiments, stage 5 can include performing a semantic search on embeddings 1402 and 1404. As a non-limiting example, selection component 118 can utilize a vector similarity method for the semantic search. As another non-limiting example, selection component 118 can utilize k-th nearest clusters for the semantic search. In any case, selection component 118 can select a subset of the set of coherent hyperedges associated with natural language question 120 based on the semantic search.
[0137] Accordingly, in stage 6, the query component 702 can execute the generative LLM 1002 on the natural language question 120 and a subset of the set of coherent hyperedges associated with the natural language question 120. In various aspects, the query component 702 can generate an input prompt from the natural language question 120 and the subset of the set of coherent hyperedges, where the input prompt can be input to the generative LLM 1002. The generative LLM 1002 can then output a natural language response 1004 corresponding to the natural language question 120.
[0138] In various embodiments, the query component 702 can further utilize an output processor for quality control of the natural language response 1004. As a non-limiting example, the query component 702 can perform quality control by removing hateful text, vulgar language, ethics, bias, and / or relevance. In various aspects, the generative LLM 1002 can be trained to perform such quality control on the natural language response 1004. In particular, for example, the generative LLM 1002 can utilize automated rating metrics that can be used to iteratively improve the generative LLM 1002 based on the automated rating metrics. As another non-limiting example, the generative LLM 1002 can be fine-tuned with additional training datasets designed to reduce such bias or inappropriate output. As yet another non-limiting example, the query component 702 can utilize post-processing techniques (e.g., rule-based filtering, fact checking, consistency checking). As yet another non-limiting example, the query component 702 can utilize a feedback loop that collects feedback from users and iteratively improves the generative LLM 1002 based on the feedback.
[0139] In any instance, the generation LLM 1002 can generate a natural language response 1004 that responds to the natural language question 120 .
[0140] 15-16 illustrate example non-limiting information sources 1500 and 1600 according to one or more embodiments described herein.
[0141] 15 illustrates an example, non-limiting information source 1500. As shown, the information source 1500 may be a patent application relating to dielectric materials. In various aspects, the entities 304 of the information source 1500 may be extracted from the information source 1500 (e.g., via the deep learning neural network 302, via the foundation model 116). For example, as shown, the entities 304 of the information source 1500 may include an author 1502, a dopant concentration 1504, a leakage current 1506, a dielectric thickness 1508, a top layer 1510, and a bottom layer 1512.
[0142] 16 illustrates an example, non-limiting information source 1600. As shown, the information source 1600 may be a report published by a company. In various aspects, the entities 304 of the information source 1600 may be extracted from the information source 1600 (e.g., via a deep learning neural network 302, via a foundation model 116). For example, as shown, the separated information or entities 304 of the information source 1600 may include an organization 1602, unstructured text 1604, a composite table 1606, economic social governance key point indicators 1608, emissions 1610, and diversity 1612.
[0143] FIG. 17 illustrates a non-limiting diagram 1700 of an example of generating a hypergraph from information sources, according to one or more embodiments described herein.
[0144] As a non-limiting example of generating the hypergraph 114 from the information source 108, the information source 108 can be a text excerpt 1702 of a patent application relating to dielectric materials. In various embodiments, the base model 116 can receive the text excerpt 1702 as input and, in response, generate the hypergraph 1706 as output. As shown, the hypergraph 1706 can include nodes and hyperedges that represent any information conveyed in the text excerpt 1702. The hyperedges that include such nodes can be associated with respective probability weights 1704 that quantify the probability of coherence between the nodes in the respective hyperedge. For example, a hyperedge of the hypergraph 1706 includes a relationship between node 1708, node 1710, node 1712, node 1714, and node 1716. Such a hyperedge is associated with a probability weight of 0.99.
[0145] In various aspects, the selection component 118 can select a subset of hyperedges based on their respective probability weights 1704. Such a subset can be considered the set of coherent hyperedges 802. For example, a user can define a coherence threshold to be 0.99. In response, the selection component 118 can eliminate hyperedges having respective probability weights lower than 0.99 from the set of coherent hyperedges 802.
[0146] FIG. 18 illustrates a non-limiting diagram 1800 of an example of a user chatbot, according to one or more embodiments described herein.
[0147] As shown in FIG. 18 , in response to the user asking a natural language question 120, a natural language response 1004 can be visually rendered to the user via any suitable human-computer interface device. In various aspects, the natural language response 1004 can be displayed to the user in any suitable manner. As a non-limiting example, there can be a user chatbot 1802 that can facilitate communication with the user. Thus, in response to receiving the information source 108 from the user and generating the set of coherent hyperedges 802, the user can ask any suitable number of natural language questions 120 via the human-computer interface device. Accordingly, for each question, the selection component 118 can access the set of coherent hyperedges 802 and select a subset of the set of coherent hyperedges 802 that is associated with the natural language question 120. In this manner, the set of coherent hyperedges 802 and the subset of the natural language question 120 can be input into the generation LLM 1002 to generate the natural language response 1004.
[0148] 19 illustrates a block diagram of an example, non-limiting system 1900 including a training component that facilitates coherent hyperedges for document QA, according to one or more embodiments described herein. As shown, system 1900 may, in some cases, include the same components as system 1000 and may further include a training component 1902. In various cases, training component 1902 may train deep foundation model 116 using any suitable training paradigm. In some cases, such training may be facilitated in a supervised manner, as described with respect to FIG. 20.
[0149] In various cases, if the base model 116 has not yet undergone any training, the training component 1902 may randomly initialize the trainable internal parameters (e.g., convolution kernels, weight matrices, bias vectors) of the base model 116. In contrast, if the base model 116 has already undergone at least some training, the training component 1902 may refrain from initializing the trainable internal parameters of the base model 116.
[0150] In various aspects, the training component 1902 may run the base model 116 against the information source 108, thereby causing the base model 116 to generate some output. In particular, the training component 1902 may feed the information source 108 to an input layer of the base model 116, and the information source 108 may complete a forward pass through one or more hidden layers of the base model 116, which may cause the output layer of the base model 116 to compute an output based on the activations provided by the one or more hidden layers.
[0151] It should be noted that the format, size, or dimensionality of the output can be controlled or otherwise dictated by the number, configuration, or size of neurons or other internal parameters (e.g., convolution kernels) included in or otherwise configuring the output layer of the base model 116. Thus, the output can be forced to have any suitable or desired format, size, or dimensionality by adding, removing, or otherwise adjusting neurons or other internal parameters to, from, or within the output layer of the base model 116. The output can thus be viewed as a predicted or inferred hypergraph that the base model 116 believes should convey the information of the information source 108 (e.g., accurately represents the information source 108). In various instances, if the base model 116 has undergone no or little prior training, the output may be highly inaccurate (e.g., may differ significantly from the corresponding ground truth hypergraph).
[0152] In any case, the training component 1902 can calculate an error or loss (e.g., mean absolute error (MAE), mean squared error (MSE), cross-entropy error) between the output and the ground truth hypergraph. In various aspects, the training component 1902 can update trainable internal parameters of the base model 116 by performing backpropagation (e.g., stochastic gradient descent) driven by the calculated error or loss.
[0153] In various embodiments, such a training procedure can be repeated for any suitable number of information source-and-hypergraph pairs. Such training ultimately allows the trainable internal parameters of the base model 116 to be iteratively optimized to accurately infer hypergraph relationships based on the input information sources. Note that the training component 1902 can implement any suitable training batch size, any suitable training termination criteria, or any suitable error, loss, or objective function.
[0154] Further, in various embodiments, the training component 1902 can train the deep learning neural network 302, the embedding model 706, or the generative LLM 1002 using any suitable training paradigm. For example, the training component 1902 can train the deep learning neural network 302 in a similar manner to generate entities 304 from the information sources 108. However, the deep learning neural network 302 can instead be trained in a supervised manner with information source-and-entity pairs. That is, the deep learning neural network 302 can receive the information sources as input and generate a set of entities identified from the information sources as output.
[0155] Also, for example, the training component 1902 can train the generative LLM 1002 in a similar manner to generate entities 304 from information sources 108. However, instead, the generative LLM 1002 can be trained in a supervised manner with question-and-answer pairs. Specifically, such question-and-answer pairs can further include corresponding coherent hyperedges received as training input. That is, the generative LLM 1002 can receive a natural language question and a set of coherent hyperedges as input and generate a natural language answer as output.
[0156] In various embodiments, training the base model 116 can include two stages. Specifically, the base model can be pre-trained with a first training dataset to generate natural language. In various cases, the first training dataset can include multiple text data (e.g., a corpus, multiple documents, natural language text). In various aspects, the base model 116 can then be trained with a second training dataset to generate a hypergraph. The second training dataset can include text data and a corresponding hypergraph. For example, the second training set can include documents and a corresponding hypergraph that accurately conveys information within the documents. The second training dataset can include any suitable number of text data-hypergraph pairs to train the fm 126.
[0157] FIG. 20 illustrates an example, non-limiting block diagram 2000 of how a deep learning neural network may be trained according to one or more embodiments described herein.
[0158] In various aspects, before training begins, the training component 1902 can initialize the trainable internal parameters (e.g., convolution kernels, weight matrices, bias values) of the base model 116 in any suitable manner (e.g., via random initialization).
[0159] In various embodiments, there can be training inputs 2002 and ground truth annotations 2004. When it is desired to train the base model 116, the training inputs 2002 can be a training source, and the ground truth annotations 2004 can be a correct or accurate generated hypergraph that is known or assumed to correspond to the training inputs 2002.
[0160] In any case, the training component 1902 can execute the base model 116 on training inputs 2002, thereby causing the base model 116 to generate outputs 2006. More specifically, in some cases, the training component 1902 can provide or route the training inputs 2002 to an input layer of the base model 116, the training inputs 2002 can complete a forward pass through one or more hidden layers of the base model 116, and the output layer of the base model 116 can calculate outputs 2006 based on activation maps or feature maps provided by one or more hidden layers of fm.
[0161] Note that the format, size, or dimensionality of the output 2006 may be dictated by the number, configuration, size, or other characteristics of the neurons, convolution kernels, or other internal parameters of the output layer (or any other layer) of the base model 116. Accordingly, the output 2006 may be forced to have any desired format, size, or dimensionality by adding, removing, or otherwise adjusting characteristics of the output layer (or any other layer) of the base model 116.
[0162] In various aspects, when the output 2006 is generated by the base model 116, the output 2006 can be considered a predicted or inferred hypergraph generated by the base model 116 based on the training input 2002. In various instances, the ground truth annotations 2004 can be considered whatever correct or accurate results (e.g., correct or accurate hypergraphs) that are known or assumed to correspond to the training input 2002. Note that if the base model 116 has undergone no or little prior training, the output 2006 may be significantly inaccurate. In other words, the output 2006 may differ significantly from the ground truth annotations 2004.
[0163] In various aspects, the training component 1902 can calculate an error (e.g., mean absolute error (MAE), mean squared error (MSE), cross entropy error) between the output 2006 and the ground truth annotations 2004. In various instances, the training component 1902 can progressively update trainable internal parameters of the base model 116 (or the base model 116) via backpropagation (e.g., stochastic gradient descent) based on the calculated error.
[0164] In various instances, such a run-and-update procedure can be repeated for any suitable number of input-annotation pairs, ultimately allowing the trainable internal parameters of the base model 116 to be iteratively optimized to accurately generate the hypergraph. In various aspects, the training component 1902 can utilize any suitable training batch size, any suitable error / loss function, or any suitable training termination criteria.
[0165] Although the disclosure herein primarily describes the base model 116 as being trained in a supervised manner, this is merely a non-limiting example for ease of explanation and illustration. In various embodiments, the base model 116 can be trained using any other suitable training paradigm, such as unsupervised training or reinforcement learning.
[0166] 21 illustrates a flow diagram of an example, non-limiting, computer-implemented method 2100 that can facilitate coherent hyperedges for document QA, in accordance with one or more embodiments described herein. In various instances, a coherent hypergraph 102 for a natural language question answering system can facilitate the computer-implemented method 2100.
[0167] In various embodiments, operation 2102 may include accessing an information source (eg, 108) by a device (eg, 110) operably coupled to a processor (eg, 104).
[0168] In various aspects, operation 2104 can include generating, by the device (e.g., via 112) and via the underlying model (e.g., 116), a hypergraph (e.g., 114) including nodes and hyperedges, where the nodes represent entities (e.g., 304) within the information source, and where the hyperedges represent relationships between two or more of the nodes, where the hyperedges are associated with respective probability weights.
[0169] In various cases, operation 2106 may include selecting, by the device (e.g., via 118), a set of coherent hyperedges (e.g., 802) for a natural language question (e.g., 120) that represents coherent information from the information sources.
[0170] 22 illustrates a flow diagram of an example, non-limiting, computer-implemented method 2200 that can facilitate coherent hyperedges for document QA, in accordance with one or more embodiments described herein. In various instances, a coherent hypergraph 102 for a natural language question answering system can facilitate the computer-implemented method 2200.
[0171] In various cases, operation 2202 may include determining, by the device (e.g., via 118), whether there are any probability weights of hyperedges that are below a defined threshold of coherence. If so, the computer-implemented method 2200 may proceed to operation 2204. If not, the computer-implemented method 2200 may instead proceed to operation 2206.
[0172] In various aspects, operation 2204 may include removing, by the device (e.g., via 118), the hyperedge from the set of coherent hyperedges.
[0173] In various cases, operation 2206 may include receiving, by the device (e.g., via 110), a natural language question (e.g., 120).
[0174] In various cases, operation 2208 may include embedding, by the device (e.g., via 704), the natural language question and the set of coherent hyperedges into a vector.
[0175] In various cases, operation 2210 may include performing, by a device (e.g., 118), a semantic search on the natural language question and the vector of the set of coherent hyperedges.
[0176] In various cases, operation 2212 may include selecting, by a device (e.g., 118), a subset of the set of coherent hyperedges that are relevant to the natural language query based on a semantic search.
[0177] For simplicity of explanation, the computer-implemented and non-computer-implemented methods provided herein are illustrated and / or described as a series of acts. It should be understood that the subject innovation is not limited by the acts and / or the order of acts shown; for example, acts can occur in one or more orders and / or simultaneously and with other acts not shown and described herein. Moreover, not all acts shown can be utilized to implement computer-implemented and non-computer-implemented methods in accordance with the described subject matter. In addition, the computer-implemented methods described below and throughout this specification can be stored on an article of manufacture, thereby enabling the computer-implemented methods to be transported and transferred to a computer. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage medium.
[0178] Systems and / or devices have been described (and / or further described) herein with respect to interactions between one or more components. Such systems and / or components may include one or more of those components or subcomponents specified therein, the specified components and / or subcomponents, and / or additional components. Subcomponents may be implemented as components communicatively coupled to other components rather than being contained within a parent component. One or more components and / or subcomponents may be combined into a single component that provides an aggregate function. A component may interact with one or more other components not specifically described herein for the sake of brevity but known by those skilled in the art.
[0179] One or more embodiments described herein may utilize hardware and / or software to solve highly technical problems that are not abstract and cannot be performed as a set of mental activities by a human. For example, a human, or even thousands of humans, cannot efficiently, accurately, and / or effectively generate a hypergraph with coherent hyperedges that represent information sources via a foundational model, as one or more embodiments described herein can enable this process. A human mind, or a human with pen and paper, cannot generate a hypergraph with coherent hyperedges that represent information sources via a foundational model, as can be done by one or more embodiments described herein.
[0180] Systems and / or devices are described (and / or further described) herein with respect to interactions between one or more components. Such systems and / or components may include one or more of those components or subcomponents identified therein, the identified components and / or subcomponents, and / or additional components. Subcomponents may be implemented as components communicatively coupled to other components rather than being contained within a parent component. One or more components and / or subcomponents may be combined into a single component that provides aggregate functionality. Components may interact with one or more other components not specifically described herein for brevity, but known by those skilled in the art.
[0181] Figure 23 illustrates a block diagram of an example, non-limiting operating environment in which one or more embodiments described herein may be facilitated. Figure 23 and the following discussion are intended to provide a general description of a suitable operating environment 2300 in which one or more embodiments described herein in Figures 1-9 may be implemented.
[0182] Various aspects of the present disclosure are described through descriptive text, flowcharts, block diagrams of computer systems, and / or block diagrams of machine logic included in embodiments of a computer program product (CPP). For any flowchart, depending on the technology involved, operations may be performed in an order different from that shown in a given flowchart. For example, again depending on the technology involved, two operations shown in successive flowchart blocks may be performed in the reverse order, as a single integrated step, simultaneously, or in an at least partially overlapping manner.
[0183] A computer program product embodiment ("CPP embodiment" or "CPP") is a term used in this disclosure to describe any set of one or more storage media (also referred to as "media") collectively contained in one or more storage devices that collectively contain machine-readable code corresponding to instructions and / or data for performing the computer operations specified in a given CPP claim. A "storage device" is any tangible device that can hold and store instructions for use by a computer processor. The computer-readable storage medium may be, but is not limited to, an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, a mechanical storage medium, or any suitable combination of the foregoing. Some known types of storage devices that include these media include diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded device (such as pits / lands formed on the major surface of a punch card or disk), or any suitable combination of the foregoing. Computer-readable storage media, as the term is used in this disclosure, is not to be construed as storage in the form of a transient signal per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses passing through fiber optic cables, electrical signals communicated through wires, and / or other transmission media. As will be appreciated by those skilled in the art, data is typically moved at some infrequent time during the normal operation of a storage device, such as during access, defragmentation, or garbage collection, but the above does not qualify a storage device as transient because the data is not transient while it is stored.
[0184] Computing environment 2300 includes an example of an environment for execution of at least a portion of computer code involved in performing the inventive method, such as coherent hyperedge code 2326. In addition to block 2326, computing environment 2300 includes, for example, computer 2301, wide area network (WAN) 2302, end user device (EUD) 2303, remote server 2304, public cloud 2305, and private cloud 2306. In this embodiment, computer 2301 has a processor set 2310 (including processing circuitry 2320 and cache 2321), a communications fabric 2311, volatile memory 2312, persistent storage 2313 (including operating system 2322 and block 2326, as identified above), a peripheral device set 2314 (including a user interface (UI), a device set 2325, storage 2324, and an Internet of Things (IoT) sensor set 2325), and a network module 2315. The remote server 2304 includes a remote database 2330. The public cloud 2305 includes a gateway 2340, a cloud orchestration module 2341, a set of host physical machines 2342, a set of virtual machines 2343, and a set of containers 2344.
[0185] Computer 2301 may take the form of a desktop computer, a laptop computer, a tablet computer, a smartphone, a smartwatch or other wearable computer, a mainframe computer, a quantum computer, or any other form of computer or mobile device now known or later developed that is capable of executing programs, accessing a network, or querying a database, such as remote database 2330. As is well understood in the field of computer technology, and depending on the technology, execution of a computer-implemented method may be distributed among multiple computers and / or among multiple locations. While, in this presentation of computing environment 2300, to keep the presentation as concise as possible, the detailed discussion focuses on a single computer, specifically computer 2301. Although computer 2301 is not shown in FIG. 23 within the cloud, it may be located within the cloud. However, computer 2301 need not reside within the cloud except to any extent that may be expressly indicated.
[0186] Processor set 2310 includes one or more computer processors of any type now known or later developed. Processing circuitry 2320 may be distributed across multiple packages, e.g., multiple linked integrated circuit chips. Processing circuitry 2320 may implement multiple processor threads and / or multiple processor cores. Cache 2321 is memory located within the processor chip package and is typically used for data or code that should be available for fast access by threads or cores executing on processor set 2310. Cache memory is typically organized into multiple levels depending on relative proximity to the processing circuitry. Alternatively, some or all caches for a processor set may be located “off-chip.” In some computing environments, processor set 2310 may be designed to operate with qubits and perform quantum computing.
[0187] Computer-readable program instructions are typically loaded onto computer 2301 and cause processor set 2310 of computer 2301 to perform a series of operational steps, thereby realizing a computer-implemented method, whereby the instructions so executed instantiate the flowcharts of the computer-implemented methods contained herein (collectively "methods of the present invention") and / or methods set forth herein. These computer-readable program instructions are stored in various types of computer-readable storage media, such as cache 2321 and other storage media discussed below. The program instructions and associated data are accessed by processor set 2310 to control and direct the execution of the methods of the present invention. In computing environment 2300, at least some of the instructions for executing the methods of the present invention may be stored in block 2326 in persistent storage 2313.
[0188] Communications fabric 2311 is the signal-conducting pathway that allows various components of computer 2301 to communicate with one another. Typically, this fabric is made up of switches and conductive pathways, such as the switches and conductive pathways that make up buses, bridges, physical input / output ports, etc. Other types of signal communication pathways may be used, such as fiber optic and / or wireless communication pathways.
[0189] Volatile memory 2312 may be any type of volatile memory now known or later developed. Examples include dynamic random access memory (RAM) or static RAM. Typically, volatile memory is characterized by random access, although this is not required unless expressly indicated. In computer 2301, volatile memory 2312 is located in a single package and is internal to computer 2301, although alternatively or additionally, volatile memory may be distributed across multiple packages and / or located external to computer 2301.
[0190] Persistent storage 2313 is any form of non-volatile storage for a computer, now known or later developed. The non-volatility of this storage means that the stored data remains regardless of whether power is supplied to computer 2301 and / or directly to persistent storage 2313. Persistent storage 2313 may be read-only memory (ROM), but typically at least a portion of persistent storage allows data to be written, data to be deleted, and data to be rewritten. Some well-known forms of persistent storage include magnetic disks and solid-state storage devices. Operating system 2322 may take several forms, such as various known proprietary operating systems or open-source Portable Operating System Interface-type operating systems that utilize a kernel. The code contained in block 2326 typically includes at least some of the computer code involved in performing the methods of the present invention.
[0191] Peripheral device set 2314 includes a set of peripheral devices of computer 2301. Data communication connections between peripheral devices and other components of computer 2301 may be implemented in various ways, such as Bluetooth® connections, near field communication (NFC) connections, connections formed by cables (such as universal serial bus (USB)-type cables), insertion-type connections (e.g., Secure Digital (SD) cards), connections formed through local area communication networks, and even connections formed through wide area networks such as the Internet. In various embodiments, UI device set 2325 may include components such as display screens, speakers, microphones, wearable devices (such as goggles and smartwatches), keyboards, mice, printers, touchpads, game controllers, and haptic devices. Storage 2324 may be external storage, such as an external hard drive, or insertable storage, such as an SD card. Storage 2324 may be persistent and / or volatile. In some embodiments, storage 2324 may take the form of a quantum computing storage device for storing data in the form of qubits. In embodiments where computer 2301 is required to have a large amount of storage (e.g., where computer 2301 stores and manages a large database locally), then this storage may be provided by a peripheral storage device designed to store very large amounts of data, such as a storage area network (SAN) shared by multiple, geographically distributed computers. IoT sensor set 2325 consists of sensors that may be used in Internet of Things applications. For example, one sensor may be a thermometer and another sensor may be a motion detector.
[0192] Network module 2315 is a collection of computer software, hardware, and firmware that enables computer 2301 to communicate with other computers over WAN 2302. Network module 2315 may include hardware such as a modem or Wi-Fi® signal transceiver, software for packetizing and / or depacketizing data for communication network transmission, and / or web browser software for communicating data over the Internet. In some embodiments, the network control and network forwarding functions of network module 2315 are performed on the same physical hardware device. In other embodiments (e.g., embodiments utilizing Software-Defined Networking (SDN)), the control and forwarding functions of network module 2315 are performed on physically separate devices, such that the control function manages several different network hardware devices. Computer-readable program instructions for carrying out the methods of the present invention may be downloaded to computer 2301 from an external computer or external storage device, typically through a network adapter card or network interface included in network module 2315.
[0193] The WAN 2302 is any wide area network (e.g., the Internet) capable of communicating computer data over non-local distances using any technology for communicating computer data, now known or later developed. In some embodiments, the WAN may be replaced and / or supplemented by a local area network (LAN) designed to communicate data between devices located in a local area, such as a Wi-Fi network. WANs and / or LANs typically include copper transmission cables, optical fiber transmissions, wireless transmissions, and computer hardware such as routers, firewalls, switches, gateway computers, and edge servers.
[0194] End-user device (EUD) 2303 is any computer system used and controlled by an end user (e.g., a customer of the enterprise operating computer 2301) and may take any of the forms described above in connection with computer 2301. EUD 2303 typically receives useful and useful data from the operation of computer 2301. For example, in the hypothetical case where computer 2301 is designed to provide recommendations to the end user, the recommendations would typically be communicated from network module 2315 of computer 2301 over WAN 2302 to EUD 2303. In this manner, EUD 2303 can display or otherwise present the recommendations to the end user. In some embodiments, EUD 2303 can be a client device such as a thin client, a heavy client, a mainframe computer, a desktop computer, and the like.
[0195] Remote server 2304 is any computer system that provides at least some data and / or functionality to computer 2301. Remote server 2304 may be controlled and used by the same entity that operates computer 2301. Remote server 2304 represents a machine that collects and stores useful and useful data for use by other computers, such as computer 2301. For example, in the hypothetical case where computer 2301 is designed and programmed to provide recommendations based on historical data, then this historical data may be provided to computer 2301 from remote database 2330 of remote server 2304.
[0196] A public cloud 2305 is any computer system available for use by multiple entities that provides on-demand availability of computer system resources and / or other computer capabilities, particularly data storage (cloud storage) and computing capacity, without requiring direct, active management by users. Cloud computing typically leverages resource sharing to achieve coherence and economies of scale. Direct, active management of the computing resources of the public cloud 2305 is performed by the computer hardware and / or software of a cloud orchestration module 2341. The computing resources provided by the public cloud 2305 are typically implemented by virtual computing environments running on various computers that comprise the computers of a host physical machine set 2342, which is the universe of physical computers within and / or available to the public cloud 2305. The virtual computing environments (VCEs) typically take the form of virtual machines from a virtual machine set 2343 and / or containers from a container set 2344. It is understood that these VCEs may be stored as images and transferred among and between various hosts of physical machines either as images or after instantiation of the VCE. Cloud orchestration module 2341 manages the transfer and storage of images, deploys new instantiations of VCEs, and manages the active instantiation of VCE deployments. Gateway 2340 is a collection of computer software, hardware, and firmware that enables public cloud 2305 to communicate over WAN 2302.
[0197] We now provide some further explanation of virtual computing environments (VCEs). A VCE can be stored as an "image." A new, active instance of a VCE can be instantiated from the image. Two well-known types of VCEs are virtual machines and containers. A container is a VCE that uses operating system-level virtualization. This refers to a feature of an operating system in which the kernel allows the existence of multiple isolated user space instances called containers. These isolated user space instances typically behave as actual computers from the perspective of the programs running within them. A computer program running on a typical operating system can utilize all of the computer's resources, such as connected devices, files and folders, network shares, CPU power, and quantifiable hardware capabilities. However, a program running inside a container can only use the contents of the container and of the devices assigned to the container; this feature is known as containerization.
[0198] Private cloud 2306 is similar to public cloud 2305, except that the computing resources are available only for use by a single enterprise. While private cloud 2306 is shown in communication with WAN 2302, in other embodiments, the private cloud may be completely disconnected from the Internet and accessible only through a local / private network. A hybrid cloud is a composite of multiple clouds of different types (e.g., private, community, or public cloud types), often each implemented by a different vendor. While each of the multiple clouds remains a separate, discrete entity, the larger hybrid cloud architecture is bound together by standardized or proprietary technologies that enable orchestration, management, and / or data / application portability between the constituent clouds. In this embodiment, both public cloud 2305 and private cloud 2306 are part of a larger hybrid cloud.
[0199] The embodiments described herein may relate to one or more of a system, a method, an apparatus, and / or a computer program product at any possible level of technical detail of integration. A computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions for causing a processor to perform aspects of one or more embodiments described herein. A computer-readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. Computer-readable storage media may be, for example, but not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, superconducting storage devices, and / or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media may also include portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or raised structures in grooves with instructions recorded thereon, and / or any suitable combination of the above. Computer-readable storage media as used herein should not be construed as transitory signals per se, such as radio waves and / or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides and / or other transmission media (e.g., light pulses passing through fiber optic cables), and / or electrical signals transmitted through wires.
[0200] The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to each computing / processing device and / or to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing / processing device. The computer-readable program instructions for carrying out the operations of one or more embodiments described herein may be source code and / or object code written in any combination of one or more programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, and / or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk®, C++, or the like, and / or procedural programming languages such as the “C” programming language and / or similar programming languages. The computer-readable program instructions may be executed entirely on the computer, partially on the computer, as a standalone software package, partially on the computer, and / or partially on a remote computer, or entirely on a remote computer and / or server. In the latter scenario, the remote computer may be connected to the computer through any type of network, including a local area network (LAN) and / or a wide area network (WAN), and / or the connection to the external computer may be made (e.g., through the Internet using an Internet Service Provider).In one or more embodiments, electronic circuitry, including, for example, programmable logic circuitry, field programmable gate arrays (FPGAs), and / or programmable logic arrays (PLAs), may execute computer-readable program instructions by utilizing state information of the computer-readable program instructions to personalize the electronic circuitry to perform aspects of one or more embodiments described herein.
[0201] Aspects of one or more embodiments described herein will be described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to one or more embodiments described herein. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, and / or other programmable data processing apparatus to generate a machine, such that the instructions executing on the processor of the computer or other programmable data processing apparatus form means for implementing the function / act specified in the block or blocks of the flowchart illustrations and / or block diagrams. These computer-readable program instructions can also be stored on a computer-readable storage medium that can instruct a computer, programmable data processing apparatus, and / or other device to function in a particular manner, such that the computer-readable storage medium having stored instructions thereon can include an article of manufacture including instructions that can implement aspects of the function / act specified in the block or blocks of the flowchart illustrations and / or block diagrams. Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, and / or other device to cause a series of operational acts to be performed on the computer, other programmable apparatus, and / or other device to generate a computer-implemented process, whereby the instructions executing on the computer, other programmable apparatus, and / or other device implement the function / acts specified in the flowchart and / or block diagram block or blocks.
[0202] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and / or operation of possible implementations of systems, computer-implementable methods, and / or computer program products according to one or more embodiments described herein. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, and / or portion of instructions, including one or more executable instructions for implementing the specified logical function(s). In one or more alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may be executed substantially concurrently, depending on the functionality involved, and / or the blocks may sometimes be executed in the reverse order, or a combination thereof. It should also be noted that each block of the block diagrams and / or flowchart illustrations, and / or combinations of blocks in the block diagrams and / or flowchart illustrations, may be implemented by special-purpose hardware-based systems that may perform the specified functions and / or operations and / or execute one or more combinations of special-purpose hardware and / or computer instructions.
[0203] While the subject matter has been described above in the general context of computer-executable instructions for a computer program product executing on a computer and / or multiple computers, those skilled in the art will recognize that one or more embodiments herein can also be implemented, at least in part, in parallel with one or more other program modules. Generally, program modules include routines, programs, components, and / or data structures that perform particular tasks and / or implement particular abstract data types. Furthermore, the computer-implemented methods described above can be practiced with single-processor and / or multiprocessor computer systems, minicomputing devices, mainframe computers, and other computer system configurations, including computers, handheld computing devices (e.g., PDAs, phones), and / or microprocessor-based or programmable consumer and / or industrial electronic devices. The illustrated aspects can also be practiced in distributed computing environments where tasks are performed by remote processing devices linked through a communications network. However, one or more, if not all, aspects of one or more embodiments described herein can be implemented on a stand-alone computer. In a distributed computing environment, program modules can be located in both local and remote memory storage devices.
[0204] As used herein, the terms “component,” “system,” “platform,” and / or “interface” may refer to and / or include computer-related entities or entities related to an operating machine having one or more specific functionalities. The entities described herein may be hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and / or a computer. By way of illustration, both an application running on a server and the server may be a component. One or more components may reside within a process and / or thread of execution, and a component may be local on one computer and / or distributed between two or more computers. In another example, each component may execute from various computer-readable media having various data structures stored thereon. Components may communicate via local and / or remote processes, such as according to signals comprising one or more data packets (e.g., data from one component interacting with another component in a network, such as the Internet, with local systems, distributed systems, and / or other systems via signals). As another example, a component may be a device having inherent functionality provided by mechanical parts operated by electrical or electronic circuits operated by software and / or firmware applications executed by a processor. In such cases, the processor may be internal and / or external to the device and may execute at least a portion of the software and / or firmware applications.As yet another example, a component may be a device that provides inherent functionality without mechanical parts through electronic components, which may include a processor and / or other means for executing software and / or firmware that provides at least a portion of the functionality of the electronic component. In some aspects, a component may emulate an electronic component via, for example, a virtual machine in a cloud computing system.
[0205] Additionally, the term "or" is intended to mean an inclusive "or," rather than an exclusive "or." That is, unless otherwise specified or clear from the context, "X utilizes A or B" is intended to mean any of the natural inclusive permutations. That is, in any of the foregoing examples, "X utilizes A or B" is satisfied if X utilizes A, if X utilizes B, or if X utilizes both A and B. Furthermore, as used in this specification and the accompanying drawings, the articles "a" and "an" should generally be construed to mean "one or more" unless specifically stated otherwise or unless the context clearly indicates a reference to the singular form. As used herein, the terms "example" and / or "exemplary" are utilized to mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter described herein is not limited by such examples. Additionally, any aspect or design described herein as "example" and / or "exemplary" is not necessarily to be construed as preferred or advantageous over other aspects or designs, and is not intended to exclude equivalent exemplary structures and techniques known to those skilled in the art.
[0206] The term "processor" as used herein may refer to virtually any computing processing unit and / or device, including, but not limited to, a single-core processor, a single processor with software multithreading execution capabilities; a multi-core processor; a multi-core processor with software multithreading execution capabilities; a multi-core processor with hardware multithreading technology; a parallel platform; and / or a parallel platform with distributed shared memory. Additionally, a processor may refer to an integrated circuit, an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a field-programmable gate array (FPGA), a programmable logic controller (PLC), a complex programmable logic device (CPLD), discrete gate or transistor logic, discrete hardware components, and / or any combination thereof designed to perform the functions described herein. Furthermore, a processor may utilize nanoscale architectures, such as, but not limited to, molecular and quantum dot-based transistors, switches, and / or gates, to optimize space utilization and / or enhance the performance of associated equipment. A processor may be implemented as a combination of computing processing units.
[0207] As used herein, terms such as “store,” “storage,” “data store,” “data storage,” “database,” and substantially any other information storage component associated with the operation and functionality of a component are used to refer to a “memory” or a “memory component” entity embodied in a component that includes memory. The memory and / or memory components described herein can be either volatile or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example and not limitation, nonvolatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), flash memory, and / or nonvolatile random access memory (RAM) (e.g., ferroelectric RAM (FeRAM)). Volatile memory can include RAM, which may act as external cache memory, for example. By way of example, and not limitation, RAM may be available in many forms, such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM), direct Rambus RAM (DRRAM), direct Rambus dynamic RAM (DRDRAM), and / or Rambus dynamic RAM (RDRAM). Additionally, the described memory components of the systems and / or computer-implemented methods herein are intended to include, but are not limited to, these and / or any other suitable types of memory.
[0208] What has been described above includes only example systems and computer-implemented methods. Of course, for purposes of describing one or more embodiments, it is not possible to describe every conceivable combination of components and / or computer-implemented methods, but one of ordinary skill in the art may recognize that many additional combinations and / or permutations of one or more embodiments are possible. Furthermore, to the extent terms such as "including," "having," "comprising," and the like are used in the detailed description, claims, appendices, and / or drawings, such terms are intended to be inclusive in the same manner as the term "comprising" is interpreted when used as a transitional phrase in the claims.
[0209] The description of various embodiments has been presented for purposes of illustration and is not intended to be exhaustive or limited to the embodiments described herein. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein has been selected to best explain the principles of the embodiments, practical applications and / or technical improvements over technologies found in the market, and / or to enable others skilled in the art to understand the embodiments described herein.
Claims
1. memory for storing computer-executable components; and 1. A processor, comprising: generating, via the base model, a hypergraph comprising nodes and hyperedges, wherein the nodes represent entities in the information source, and wherein the hyperedges represent relationships between two or more of the nodes, and wherein the hyperedges are associated with respective probability weights; selecting from the hyperedges a set of coherent hyperedges for a natural language query that represents coherent information from the information sources; a processor executing at least one of the computer-executable components; A system comprising:
2. generating the hypergraph extracting said entities from said information source; generating a knowledge graph comprising the nodes and edges, where the nodes represent the entities, where the edges are pairwise relationships between the nodes, where the edges are associated with respective probability weights; and generating the hypergraph using the knowledge graph based on the respective probability weights of the edges; The system of claim 1 , comprising:
3. At least one of the computer-executable components further comprises: Embedding the hyperedges and the natural language question via a text embedding model The system of claim 1 .
4. At least one of the computer-executable components further comprises: Using semantic search, select the set of coherent hyperedges based on the similarity between the natural language question and the hyperedges. The system of claim 1 .
5. At least one of the computer-executable components further comprises: inputting the natural language question and the set of coherent hyperedges into a generative large-scale language model to generate a natural language response; The system of claim 1 .
6. The system of claim 1 , wherein the probability weight associated with the hyperedge is a function of proximity between at least one of the entity locations, source lengths, or thematic entity categories.
7. The system of claim 1 , wherein the probability weight associated with the hyperedge quantifies the probability of coherently linking two or more of the nodes with a hyperedge.
8. The system of claim 2 , wherein the probability weight associated with the edge quantifies the probability that the nodes are coherently related.
9. The system of claim 2 , wherein the entities include entities extracted from the information source using natural language processing or user-identified entities.
10. The hyperedges are stored in a database, and selecting the set of coherent hyperedges comprises: retrieving the set of coherent hyperedges from the database in response to receiving the natural language query. Contains The system of claim 1 .
11. Training the base model comprises: pre-training the base model with a first training data set to generate natural language, where the first training data set includes a plurality of text data; and training the base model with a second training data set to generate the hypergraph, wherein the second training data set includes text data and a corresponding hypergraph. The system of claim 1 , comprising:
12. generating, by a system operatively coupled to a processor and via an underlying model, a hypergraph having nodes and hyperedges, wherein the nodes represent entities in the information source, and wherein the hyperedges represent relationships between two or more of the nodes, and wherein the hyperedges are associated with respective probability weights; and selecting by said system and from said hyperedges a set of coherent hyperedges for a natural language query representing coherent information from said information sources. A computer-implemented method comprising:
13. The step of generating the hypergraph comprises: extracting said entities from said information source; generating a knowledge graph comprising the nodes and edges, where the nodes represent entities and where the edges are pairwise relationships between the nodes, where the edges are associated with respective probability weights; and generating the hypergraph using the knowledge graph based on the respective probability weights of the edges; The computer-implemented method of claim 12, comprising:
14. selecting, by the system and using semantic search, the set of coherent hyperedges based on similarity between the natural language question and the hyperedges. The computer-implemented method of claim 12 further comprising:
15. inputting the natural language question and the set of coherent hyperedges into a generative large-scale language model by the system to generate a natural language response. The computer-implemented method of claim 12 further comprising:
16. The computer-implemented method of claim 12 , wherein the probability weight associated with the hyperedge is a function of proximity between at least one of the entity locations, information source lengths, or thematic entity categories.
17. The computer-implemented method of claim 12 , wherein the probability weight associated with the hyperedge quantifies the probability of coherently linking more than one of the nodes with a hyperedge.
18. Training the base model comprises: pre-training the base model with a first training data set to generate natural language, where the first training data set includes a plurality of text data; and training the base model with a second training data set to generate the hypergraph, wherein the second training data set includes text data and a corresponding hypergraph. The computer-implemented method of claim 12, comprising:
19. 1. A computer program for extracting coherent information from a source, the computer program comprising: generating, by said processor and via an underlying model, a hypergraph comprising nodes and hyperedges, wherein said nodes represent entities in said information source, wherein said hyperedges represent relationships between two or more of said nodes, wherein said hyperedges are associated with respective probability weights; and selecting, by said processor and from said hyperedges, a set of coherent hyperedges for a natural language query representing coherent information from said information sources. A computer program for executing
20. Training the base model comprises: pre-training the base model with a first training data set to generate natural language, where the first training data set includes a plurality of text data; and training the base model with a second training data set to generate the hypergraph, wherein the second training data set includes text data and a corresponding hypergraph.
20. The computer program of claim 19, comprising: