Information output program, information output method, and information output device

The information output program enhances the explainability of graph AI models by identifying high-contribution nodes and extracting frequent graph patterns, addressing the limitations of conventional explanation techniques and improving model interpretability.

WO2025120706A1PCT designated stage expired Publication Date: 2025-06-12FUJITSU LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/043324
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-04
Publication Date
2025-06-12

AI Technical Summary

Technical Problem

Conventional explanation techniques for graph AI models struggle to comprehensively present multiple graph patterns that contribute to a specific prediction, limiting the model's explainability.

Method used

An information output program that identifies nodes with a high contribution degree to a prediction result, classifies these nodes, and extracts frequent graph patterns from partial graph data to provide comprehensive explanatory information about the trained graph machine learning model.

Benefits of technology

Improves the explainability of graph machine learning models by systematically identifying and presenting all contributing graph patterns, enhancing interpretability and understanding of model predictions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2023043324_12062025_PF_FP_ABST
    Figure JP2023043324_12062025_PF_FP_ABST
Patent Text Reader

Abstract

Conventional techniques for explaining graph machine learning models are problematic, for example, in that when there are a plurality of graph patterns that contribute to a specific prediction, it is not possible to comprehensively present these graph patterns. This information output program causes a computer to perform processing for: identifying, for each of a plurality of sets of graph data corresponding to at least any one label that corresponds to a prediction result of a trained graph machine learning model, one or more nodes, the contribution of which to the prediction result of the set of graph data satisfies a prescribed condition; identifying, in each of one or more groups obtained by classifying the identified one or more nodes, a frequent graph pattern from partial graph data including the identified one or more nodes; and outputting information indicating the identified frequent graph pattern, as explanatory information for the trained graph machine learning model. This allows for improved explanation of the graph machine learning model.
Need to check novelty before this filing date? Find Prior Art

Description

Information output program, information output method, and information output device

[0001] The present invention relates to an information output program, an information output method, and an information output device.

[0002] Conventionally, when applying machine learning techniques to graph data, a data format that can represent connections between people and things, the data is converted into some kind of vector data, and then trained using machine learning techniques that can learn vector data (such as decision trees or RandomForest).

[0003] In recent years, graph AI (Artificial Intelligence) such as ConvGNN (Convolutional Graph Neural Network, Graph Convolutional Network) has emerged, which can handle graph data as is.

[0004] On the other hand, since graph AI (models) have black box aspects, such as their internal structure, there are techniques for explaining graph AI models by presenting graph patterns that contribute to specific predictions (e.g., positive examples in binary classification).

[0005] Yuan, H., Tang, J., Hu, X., & Ji, S. XGNN: Towards Model-Level Explanations of Graph Neural Networks. https: / / doi.org / 10.1145 / 3394486.3403085

[0006] However, conventional techniques for explaining graph AI models (also known as graph machine learning models) have problems, such as being unable to comprehensively present multiple graph patterns that contribute to a particular prediction.

[0007] In one aspect, the objective is to improve the explainability of graph machine learning models.

[0008] In one aspect, the information output program causes a computer to execute a process of identifying, for each of a plurality of graph data corresponding to at least any label corresponding to the prediction result of a trained graph machine learning model, one or more nodes whose contribution to the prediction result of the graph data satisfies a predetermined condition, identifying a frequent graph pattern from partial graph data including the identified node in each of one or more groups obtained by classifying the identified nodes, and outputting information indicating the identified frequent graph pattern as explanatory information for the trained graph machine learning model.

[0009] In one aspect, the explainability of graph machine learning models can be improved.

[0010] FIG. 1 is a diagram illustrating an example of graph data. FIG. 2 is a diagram illustrating an example of explanatory information using a technology for explaining graph AI. FIG. 3 is a diagram illustrating problems with the conventional technology for explaining graph AI. FIG. 4 is a diagram illustrating an example of a graph AI explanation method according to this embodiment. FIG. 5 is a diagram illustrating an example of a configuration of an information output device 10 according to this embodiment. FIG. 6 is a diagram illustrating an example of input data according to this embodiment. FIG. 7 is a diagram illustrating an example of output data according to this embodiment. FIG. 8 is a diagram illustrating an example of the overall flow of graph AI explanation processing according to this embodiment. FIG. 9 is a diagram illustrating an example of a node identification processing with a high degree of contribution according to this embodiment. FIG. 10 is a diagram illustrating an example of a neighborhood graph according to this embodiment. FIG. 11 is a flowchart illustrating an example of the flow of graph AI explanation processing according to Example 1. FIG. 12 is a diagram illustrating an example of a frequent graph pattern identification method according to Example 2. FIG. 13 is a diagram illustrating an example of a relationship graph according to Example 2. FIG. 14 is a diagram illustrating an example of a frequent graph pattern extraction method according to Example 2. FIG. 15 is a flowchart illustrating another example of the flow of graph AI explanation processing according to Example 2. FIG. 16 is a diagram illustrating an example of input data according to Example 2. FIG. 17 is a diagram illustrating an example of output data according to Example 2. Fig. 18 is a diagram illustrating an example of a marker node according to Example 3. Fig. 19 is a diagram illustrating an example of a frequent graph pattern extraction method according to Example 3. Fig. 20 is a flowchart illustrating yet another example of the flow of the graph AI explanation process according to Example 3. Fig. 21 is a diagram illustrating an example of output data according to Example 3. Fig. 22 is a diagram illustrating an example of the hardware configuration of the information output device 10.

[0011] Below, examples of the information output program, information output method, and information output device according to the present embodiment will be described in detail with reference to the drawings. Note that the present embodiment is not limited to these examples. Furthermore, each example can be appropriately combined within a consistent range.

[0012] First, we will explain the conventional technology for explaining graph AI and its problems using Figures 1 to 3. Graph data used to train graph AI models is a data format that can represent connections between people and things, and is used, for example, in social networking services (SNS), chemical compounds, communication histories, and transaction histories. In graph data, for example, the subject of a connection is represented as a node, and the connection itself is represented as an edge.

[0013] FIG. 1 is a diagram showing an example of graph data. The example in FIG. 1 is graph data representing a chemical compound. In FIG. 1, for example, circles represent nodes, lines connecting the nodes represent edges, and nodes represent atoms, and edges represent bonds between atoms. Nodes and edges can also be assigned labels to give them attribute information, which are called node labels and edge labels, respectively. In the example in FIG. 1, atomic types such as carbon and oxygen are represented by node labels, and bond types such as single bonds and double bonds are represented by edge labels. Note that one node or edge can also have multiple labels.

[0014] Next, we will explain graph AI, such as ConvGNN, an existing technology. Graph AI is a machine learning technology that can learn graph data, for example. Graph AI is characterized by its ability to handle graph data as is, without data conversion, as is the case with vector data. Because graph AI (models) have black box aspects, such as their internal structure, there is also XAI for graph AI (graph XAI), an existing technology that explains graph data prediction results and graph AI models.

[0015] FIG. 2 is a diagram showing an example of explanatory information based on a technology for explaining graph AI. In FIG. 2, the letters in the nodes represent node labels. The predicted data shown on the left side of FIG. 2 is, for example, graph data predicted using a graph AI model. The explanatory information shown in the center of FIG. 2 is graph elements that contributed to the prediction of the target graph data, output using existing technologies such as GraphSVX and GNNExplainer (nodes are highlighted as the relevant graph elements in GraphSVX, and edges are highlighted as the relevant graph elements in GNNExplainer). The explanatory information shown on the right side of FIG. 2 is explanatory information for a graph AI model, output using existing technologies such as XGNN for explaining graph AI models. The example on the right side of FIG. 2 is a graph pattern that contributes to a specific prediction, such as a positive example in binary classification.

[0016] However, graph AI model explanation techniques cannot comprehensively present, for example, multiple graph patterns that contribute to a specific prediction. FIG. 3 is a diagram illustrating the problems with conventional techniques for explaining graph AI. FIG. 3 shows an example of a case where multiple graph patterns contribute to a prediction. For example, in the XGNN for explaining the graph AI model described using FIG. 2, edges are sequentially added to an initial graph pattern (e.g., a single node) to search for a graph pattern that will yield a specific prediction result. Therefore, the search is completed when the current graph pattern matches one of the graph patterns that contribute to the prediction. Therefore, when there are multiple graph patterns that contribute to the prediction, as shown in FIG. 3, the entire structure of the graph pattern cannot be comprehensively found. Therefore, one of the objectives of this embodiment is to improve the explainability of a graph machine learning model by presenting all graph patterns.

[0017] 4 is a diagram illustrating an example of a graph AI explanation method according to this embodiment. Details will be described later, but in this embodiment, for example, as shown in FIG. 4, subgraph groups expected to include common graph patterns that contribute to the prediction are extracted from graph groups that result in specific prediction results. Then, in this embodiment, for example, graph patterns that frequently appear in each subgraph group are presented as graph patterns that contribute to the prediction. This makes it possible to comprehensively search all graph patterns and improve the explainability of the graph machine learning model.

[0018] [Functional Configuration of Information Output Device 10] Next, a functional configuration of the information output device 10 will be described. Fig. 5 is a diagram showing an example of the configuration of the information output device 10 according to this embodiment. As shown in Fig. 5, the information output device 10 has a communication unit 20, a storage unit 30, and a control unit 40.

[0019] The communication unit 20 is a processing unit that controls communication with other information processing devices, and is, for example, a communication interface such as a network interface card or a USB (Universal Serial Bus) interface.

[0020] The storage unit 30 has a function of storing various data and programs executed by the control unit 40, and is realized by a storage device such as a memory or a hard disk. The storage unit 30 stores, for example, input data 31 and output data 32.

[0021] The input data 31 stores, for example, a plurality of graph data corresponding to at least any label corresponding to the prediction result of the trained graph machine learning model, and information about the input data such as node features and contribution rates.

[0022] FIG. 6 is a diagram illustrating an example of input data according to this embodiment. For example, a graph dataset for representing graph data representing a graph, as shown in FIG. 6, is stored in the input data 31. Note that the numbers in the graphs shown on the left side of FIG. 6 are serial numbers of the nodes. The graph dataset is, for example, a set of graph data representing graphs with the same or similar prediction results. Each graph data in the graph dataset includes, for example, a node list and an edge list, as shown in FIG. 6. The node list is, for example, a list of each node and its node label, and the node label may be a discrete value (or may be a character string). The edge list is, for example, a list of each edge (node ​​pair) and its edge label. The edge label is, for example, a discrete value (or may be a character string). If the node labels and edge labels in the original graph AI were real values, they may be required to be converted to discrete values ​​as shown in FIG. 6.

[0023] Also, for example, each set of node features and node contributions, an example of which is shown in FIG. 6, is stored in the input data 31. The node feature set is, for example, a matrix of nodes and node features (real-valued values). The node features are, for example, acquired when predicting graph data using graph AI. The node contribution set is, for example, a list of the contributions (real-valued values) of each node. The node contributions are, for example, calculated using graph XAI, an existing technology. Furthermore, the node contributions are normalized so that the contributions fall within a range of 0 to 1 within each graph in order to align the standards for high and low contributions for each graph (for example, if the contribution is greater than a threshold, it can be determined to be a high contribution). Note that each list shown in FIG. 6 is an example, and the number of nodes, the number of edges, the number of node features, etc. will differ for each graph.

[0024] Returning to the description of FIG. 5, the output data 32 stores information about the output data, such as frequent graph data extracted based on node features and contributions.

[0025] FIG. 7 is a diagram showing an example of output data according to this embodiment. Details will be described later, but for example, as shown in FIG. 7, a frequent graph data set for a cluster of high-contribution nodes that has been clustered and extracted based on node features and contribution degrees is stored in the output data 32. The format of the frequent graph data shown in FIG. 7 is, for example, the same as the graph data of the input data shown in FIG. 6. Note that there is no correlation between the node numbers of the frequent graph data shown in FIG. 7 and the graph data shown in FIG. 6. Furthermore, the frequent graph data may be used as is as output data, for example, or a graph may be drawn and output based on the frequent graph data as shown in FIG. 7.

[0026] The above information stored in the storage unit 30 is merely an example, and the storage unit 30 can store various information other than the above information.

[0027] The control unit 40 is a processing unit, such as a processor, that controls the entire information output device 10. The control unit 40 includes an identification unit 41, an output unit 42, and a creation unit 43. Each processing unit is an example of an electronic circuit included in the processor or an example of a process executed by the processor.

[0028] Next, before describing each processing unit, i.e., the identification unit 41, the output unit 42, and the creation unit 43, the overall flow of the graph AI explanation process executed by the information output device 10 will be described. Fig. 8 is a diagram showing an example of the overall flow of the graph AI explanation process according to this embodiment. Fig. 8 is an overall image diagram showing the flow of each process in the graph AI explanation process from left to right.

[0029] In the graph AI explanation process according to this embodiment, for example, as shown in FIG. 8 , nodes that contribute highly to a specific prediction result are first identified from multiple graphs that result in a specific prediction result using a trained graph machine learning model (step 1). Next, for example, as shown in FIG. 8 , a neighborhood graph set of nodes that contribute highly and have similar node features is extracted from the identified nodes with high contributions (step 2). Note that while there is no guarantee that clean clustering will occur as shown in FIG. 8 , such clustering can be expected by using node features. Then, for example, as shown in FIG. 8 , frequent graph patterns of the extracted neighborhood graph set are identified and presented (output) as explanation information (step 3).

[0030] Returning to the description of Figure 5, the identification unit 41 identifies, for each of a plurality of graph data corresponding to at least one label corresponding to the prediction result of the trained graph machine learning model, one or more nodes whose contribution to the prediction result of the graph data is equal to or greater than a predetermined threshold. The process of identifying nodes whose contribution is equal to or greater than a predetermined threshold corresponds to the process of identifying nodes with high contributions in step 1 in Figure 8, and is performed using conventional technology that explains the prediction results of individual graph data. The process of identifying nodes with high contributions will be described in more detail using Figure 9.

[0031] FIG. 9 is a diagram illustrating an example of a process for identifying nodes with high contributions according to this embodiment. FIG. 9 illustrates a process for identifying nodes with high contributions to a specific prediction result from a graph that results in a specific prediction result using a trained graph machine learning model. Identifying nodes with high contributions to the prediction result is optimally performed using a technique that presents nodes that contributed to the prediction, as shown in the upper route of FIG. 9 . However, it is also possible to use a method that identifies edges with high contributions to the prediction result, identified using a technique that presents edges that contributed to the prediction, as shown in the lower route of FIG. 9 , and then identify the nodes at both ends of the edge as nodes with high contributions to the prediction result.

[0032] Returning to the description of FIG. 5 , the identification unit 41 identifies a frequent graph pattern from subgraph data including adjacent nodes within a predetermined number of hops from the identified node in each of one or more groups obtained by classifying the identified nodes. For example, the group corresponds to a set of nodes with high contributions and similar node characteristics extracted in step 2 of FIG. 8 , and the subgraph data corresponds to the graph data of each graph in the neighborhood graph set. Furthermore, the process of identifying the frequent graph pattern corresponds to the process of identifying the frequent graph pattern in step 3 of FIG. 8 . Because there is no general definition of a neighborhood graph, a more specific description will be given using FIG. 10 .

[0033] FIG. 10 is a diagram showing an example of a neighborhood graph according to this embodiment. The neighborhood graph according to this embodiment is, for example, a subgraph of the original graph, and is information representing the graph structure around a target node, which is a node that contributes highly to the prediction result. In FIG. 10, for example, a range that can be traced from the target node of the original graph within two hops (e.g., the number of hops or the number of edges) is extracted as the neighborhood graph. Note that in the example of FIG. 10, the range from which the neighborhood graph is extracted is two hops from the target node, but it may be a range that is fewer or more hops.

[0034] Furthermore, as shown in step 2 of Figure 8, the neighborhood graph is extracted from the identified nodes with high contributions as a set of neighborhood graphs of nodes with high contributions and similar node features. Here, node features will be described in more detail. There is no general definition of node features either, so in this embodiment, for example, node features are assumed to satisfy the following requirements (1) to (3): (1) node features are intermediate data generated by the graph AI model when predicting graph data, (2) can be considered as features of nodes captured by the graph AI model, and (3) can define similarity between nodes within the same graph and between nodes in different graphs.

[0035] In addition, for example, in the graph AI model of ConvGNN, which is an existing technology, the input data to Pooling can be used as node features. For example, for each node, the features of the neighborhood graph of that node are reflected by Gconv, so the clustering result shown in Figure 8 can be expected.

[0036] Furthermore, the process by which the identification unit 41 identifies frequent graph patterns from the graph of the subgraph data, i.e., the neighborhood graph (set), can be realized by, for example, existing frequent graph mining technology such as gSpan. gSpan is, for example, a technique for extracting graph patterns that frequently appear in an input graph dataset, and searches for frequent graph patterns by sequentially adding edges starting from a frequent edge. Note that a frequent graph pattern is, for example, a graph pattern that appears in the graph dataset a predetermined threshold number of times or more, i.e., N times.

[0037] 5, the output unit 42 outputs, for example, information indicating the frequent graph patterns identified by the identification unit 41 as explanatory information for the trained graph machine learning model. The creation unit 43 will be described later.

[0038] [Example 1] [Processing Flow (Example 1)] The graph AI explanation process executed by the information output device 10 described above will be described as Example 1 along the flow with reference to Fig. 11. Fig. 11 is a flowchart showing an example of the flow of the graph AI explanation process according to Example 1.

[0039] 11, the information output device 10 acquires various data from the input data 31 (step S101). The various data may be, for example, the graph data set, the node feature set, and the node contribution set shown in FIG.

[0040] Next, the information output device 10 performs clustering, for example, for all nodes of all graphs in the graph data set acquired in step S101, using existing technology as described using Figure 8 based on the node features of the acquired node feature set (step S102).

[0041] Next, the information output device 10 extracts clusters from the clusters of nodes clustered in step S102, where the average node contribution within the cluster is equal to or greater than a certain value (step S103). Here, a cluster with an average node contribution equal to or greater than a certain value is, for example, a cluster of nodes (high-contribution nodes) that contribute highly to a specific prediction result according to a trained graph machine learning model. Note that, for example, high-contribution nodes may be extracted first and then clustered. More specifically, for example, the information output device 10 extracts high-contribution nodes from all graphs in the acquired graph dataset, and then clusters the extracted set of high-contribution nodes based on their node characteristics. Either process can extract one or more sets (clusters, groups) of nodes with high contributions and similar node characteristics, as shown in FIG. 8 . Then, the subsequent steps S104 and S105 are looped (repeated) for each extracted cluster until no unprocessed clusters remain, as shown in FIG. 11 .

[0042] Next, the information output device 10 extracts a neighborhood graph of each node in the cluster extracted in step S103 (step S104), as described with reference to Fig. 8 and Fig. 10. Note that, for example, the neighborhood graph of a node with a low contribution may or may not be extracted.

[0043] Next, the information output device 10 extracts frequent graphs from the neighborhood graph set extracted in step S104 using an existing frequent graph mining technology such as gSpan, and presents (outputs) them as explanatory information (step S105). The explanatory information may be, for example, the frequent graph dataset shown in FIG. 7 or a frequent graph drawn based on the frequent graph dataset as shown in FIG. 7. Furthermore, if multiple frequent graphs are extracted, the number of frequent graphs to be output as explanatory information may be narrowed down based on, for example, a predetermined criterion. After step S105 is executed, the graph AI explanation process shown in FIG. 11 ends.

[0044] [Example 2] In Example 1 described with reference to FIG. 11, for example, when extracting frequent graphs using existing frequent graph mining technology such as gSpan, there are problems such as those shown in the following (1) to (3), and the extracted frequent graphs may not be sufficient as explanatory information.

[0045] FIG. 12 illustrates an example of a method for identifying frequent graph patterns in Example 2. In graphs 1 to 3 shown in FIG. 12, each node and each edge has multiple labels. In the example shown in FIG. 12, each node has node labels: nl1 = A / B / C / D, nl2 = a / b / c, and each edge has edge labels: el1 = X / Y / Z, el2 = x / y, each with two labels. For example, (1) gSpan can only handle one type of label, so it must treat multiple labels as a single label and cannot consider each label independently. Also, (2) gSpan cannot determine that "two graphs are the same if this label is ignored." Also, (3) it is desirable to be able to treat labels as wildcards because not all labels for a particular node or edge necessarily contribute to prediction.

[0046] Therefore, in the second embodiment, for example, as shown in FIG. 12, it is possible to identify a frequently occurring label for each label in a graph having a plurality of node labels and edge labels, and wildcards can be used in the node labels and edge labels when determining frequency.

[0047] For this reason, the information output device 10 creates, for example, a graph representing the relationships between the nodes, edges, node labels, and edge labels of the original graph (hereinafter referred to as a "relationship graph"), and identifies frequent graph patterns for the created set of relationship graphs. Note that the original graph here is, for example, a graph of subgraph data, i.e., a neighborhood graph. Then, the information output device 10 presents (outputs) as explanatory information, for example, a graph representation of the identified frequent graph pattern converted into the original graph representation.

[0048] FIG. 13 is a diagram illustrating an example of a relationship graph according to the second embodiment. As illustrated in FIG. 13 , the information output device 10 creates a relationship graph that represents, for example, the relationships between nodes, edges, node labels, and edge labels in the original graph. That is, the creation unit 43 of the information output device 10 creates second subgraph data that represents the relationships between nodes, edges, node labels, and edge labels based on, for example, the subgraph data. This second subgraph data corresponds, for example, to a relationship graph. As illustrated in FIG. 13 , the relationship graph represents, for example, not only the nodes in the original graph, but also the edges, node labels, and edge labels, converted into nodes and node labels, and is created so that related parts in the original graph are connected by edges. Furthermore, FIG. 13 also illustrates relationship graphs for graphs with and without wildcards in the original graph. As illustrated on the right side of FIG. 13 , if the original graph contains a wildcard, for example, the wildcard part in the relationship graph can be treated as anything by not assigning a node or node label to the wildcard part, i.e., the part can be treated as a wildcard.

[0049] Fig. 14 is a diagram illustrating an example of a frequent graph pattern extraction method according to Example 2. Fig. 14 illustrates a method for extracting frequent graph patterns from graphs 1 to 3, each of which has two labels for each node and each edge.

[0050] As shown in FIG. 14, first, the information output device 10 creates a relationship graph representing the relationships between nodes, edges, node labels, and edge labels for each of graphs 1 to 3, and converts the graphs into a relationship graph representation.

[0051] Next, the information output device 10 extracts frequent graph patterns for the relationship graphs corresponding to graphs 1 to 3, for example, as shown in Fig. 14 (hereinafter, the extracted frequent graph patterns may be referred to as "frequent relationship graphs"). Note that, since each node and label in a relationship graph has only one label, an existing frequent graph mining technology such as gSpan may be used to extract frequent graph patterns from the relationship graph.

[0052] Then, the information output device 10 converts the extracted frequent graph pattern into the original graph representation and outputs it as a frequent graph pattern, for example, as shown in Fig. 14. Note that, for example, the information output device 10 can use a wildcard when converting into the original graph representation, as shown in Fig. 14. That is, the identification unit 41 of the information output device 10 identifies a frequent graph pattern from, for example, second subgraph data corresponding to the relationship graph.

[0053] In this way, for example, labels in the original graph can be considered individually because they exist as independent nodes in the relationship graph, and wildcard labels in the original graph can be considered indirectly because they correspond to nodes that do not exist in the relationship graph.

[0054] The second embodiment is not limited to the case where each node and each edge in the graph has multiple labels, but can also be applied to the case where each node and each edge has a single label (one for each).

[0055] [Processing Flow (Example 2)] Next, as Example 2, another example of the graph AI explanation processing executed by the information output device 10 will be described along the flow with reference to Fig. 15. Fig. 15 is a flowchart showing another example of the flow of the graph AI explanation processing according to Example 2.

[0056] Steps S201 to S204 of the graph AI explanation process shown in Fig. 15 are similar to steps S101 to S104 of the graph AI explanation process of Example 1 shown in Fig. 11. However, the various data acquired in step S201 may be, for example, the graph data set, node feature set, and node contribution set shown in Fig. 16.

[0057] FIG. 16 is a diagram showing an example of input data according to the second embodiment. The explanation of the various data shown in FIG. 16 is almost the same as the explanation of the various data shown in FIG. 6, except that, as shown in FIG. 16, each node and each edge in the graph has a plurality of labels, two each. Therefore, for example, as shown in FIG. 16, the node list of the graph data is a matrix of each node and its corresponding node label, and the edge list is a matrix of each edge (node ​​pair) and its corresponding edge label. Note that, for example, the number of node labels and the number of edge labels are the same for all graphs.

[0058] 15, steps S201 to S204 are the same as steps S101 to S104 of the graph AI explanation process shown in Fig. 11, and therefore the explanation will begin with step S205. As shown in Fig. 15, the information output device 10 converts the neighborhood graph extracted in step S204 into a relationship graph (step S205), for example, as described using Fig. 13.

[0059] Next, the information output device 10 extracts frequent relationship graphs from the set of relationship graphs converted in step S205 (step S206), for example, as described with reference to FIG.

[0060] Next, the information output device 10 converts the frequent relationship graph extracted in step S206 into the original graph representation, as described with reference to FIG. 14, and presents (outputs) it as explanatory information (step S207). The explanatory information may be, for example, the frequent graph dataset shown in FIG. 17 or a frequent graph drawn based on the frequent graph dataset, as shown in FIG. 17. FIG. 17 is a diagram showing an example of output data according to the second embodiment. As shown in FIG. 17, the explanatory information output in step S207 may use, for example, a wildcard "*" for node labels and edge labels that are treated as wildcards. After step S207 is executed, the graph AI explanation process shown in FIG. 15 ends.

[0061] [Example 3] For example, when extracting frequent graphs using existing frequent graph mining techniques such as gSpan, if a certain graph is frequent, its subgraphs will also be frequent graphs. This means that, when extracting frequent graph patterns that serve as explanatory information using this existing frequent graph mining technique, there is a possibility that frequent graph patterns that do not include high-contribution nodes will also be extracted. However, frequent graph patterns that do not include high-contribution nodes are likely to have little value as explanatory information, and therefore it is desirable to exclude them.

[0062] Therefore, in Example 3, the information output device 10 adds a marker node to the relationship graph, connects it to a node corresponding to the central node (high contribution node) of the neighborhood graph, and excludes the marker node if it is not included in the frequent graph pattern of the relationship graph. This makes it possible to identify frequent graph patterns that include the central node (high contribution node) of the neighborhood graph and whose position is also fixed.

[0063] 18 is a diagram illustrating an example of a marker node according to Example 3. As illustrated in Fig. 18 , in Example 3, a new marker node is added and connected to a node in the relationship graph that corresponds to the central node (high contribution node) of the neighborhood graph. That is, the creation unit 43 of the information output device 10 creates second subgraph data corresponding to the relationship graph, including, for example, a marker node that indicates the central node of the neighborhood graph.

[0064] 19 is a diagram illustrating an example of a frequent graph pattern extraction method according to Example 3. FIG. 19 illustrates a method for extracting frequent graph patterns including high contribution nodes from graphs 1 to 3.

[0065] 19, the information output device 10 first creates a relationship graph representing the relationships between nodes, edges, node labels, and edge labels for each of graphs 1 to 3, and converts the graphs into a relationship graph representation. In addition, at this time, the information output device 10 connects a marker node to a node corresponding to a central node (high contribution node) in the relationship graph, as shown in FIG.

[0066] Next, the information output device 10 extracts frequent graph patterns for the relationship graphs corresponding to graphs 1 to 3, for example, as shown in FIG. 19, using an existing frequent graph mining technique such as gSpan.

[0067] The information output device 10 then converts the extracted frequent graph patterns back to their original graph representations and outputs them as frequent graph patterns, as shown in FIG. 14 , for example, but excludes frequent graph patterns that do not include high-contribution nodes from the presentation targets. For example, in the example of FIG. 14 , frequent graph pattern 2 does not include a high-contribution node, so the information output device 10 excludes frequent graph pattern 2 from the presentation targets and presents only frequent graph pattern 1. That is, the identification unit 41 of the information output device 10 identifies, for example, from the second subgraph data corresponding to the relationship graph, a frequent graph pattern that includes a marker node indicating a node whose contribution to the prediction result of the graph data is equal to or greater than a predetermined threshold. Note that, for convenience, in the example of FIG. 14 , frequent graph pattern 2 is output. However, because it is possible to determine whether a marker node is included when a frequent relationship graph is extracted, if a frequent relationship graph does not include a marker node, the frequent graph pattern does not need to be output.

[0068] [Processing Flow (Example 3)] Next, as Example 3, another example of the graph AI explanation processing executed by the information output device 10 will be described along the flow with reference to Fig. 20. Fig. 20 is a flowchart showing another example of the flow of the graph AI explanation processing according to Example 3.

[0069] Steps S301 to S303 of the graph AI explanation process shown in Fig. 20 are similar to steps S101 to S103 of the graph AI explanation process of Example 1 shown in Fig. 11 or steps S201 to S203 of the graph AI explanation process of Example 2 shown in Fig. 15. Therefore, the various data acquired in step S301 may be the graph data set, node feature set, and node contribution set shown in Fig. 6 as in Example 1, or the graph data set, node feature set, and node contribution set shown in Fig. 16 as in Example 2. The explanation of Fig. 20 will also begin with step S304.

[0070] As shown in FIG. 20, the information output device 10 extracts a neighborhood graph of each node in the cluster, as described with reference to FIG. 18, for example, and obtains the position of the central node (high contribution node) (step S304).

[0071] Next, the information output device 10 converts the neighborhood graph into a relationship graph, for example, as described using FIG. 18, adds a marker node, and connects it to the node corresponding to the central node whose position was obtained in step S304 (step S305).

[0072] Next, the information output device 10 extracts frequent relationship graphs from the set of relationship graphs converted in step S305, as described with reference to FIG. 19, and excludes frequent relationship graphs that do not include a marker node (step S306).

[0073] Next, the information output device 10 converts the frequent relationship graph including the marker node extracted in step S306 back into the original graph representation, as described with reference to FIG. 19, and presents (outputs) the original graph representation including the central node position as explanatory information (step S307). The explanatory information may be, for example, the frequent graph dataset shown in FIG. 21 or a frequent graph drawn based on the frequent graph dataset as shown in FIG. 21. FIG. 21 is a diagram illustrating an example of output data according to the third embodiment. As shown in FIG. 21, the explanatory information output in step S307 may include, for example, position information of the central node or a frequent graph in which the central node is highlighted. After step S307 is executed, the graph AI explanation process shown in FIG. 20 ends.

[0074] [Effect] As described above, the information output device 10 identifies, for each of a plurality of graph data corresponding to at least one label corresponding to the prediction result of the trained graph machine learning model, one or more nodes whose contribution to the prediction result of the graph data satisfies a predetermined condition, identifies frequent graph patterns from partial graph data including the identified nodes in each of one or more groups obtained by classifying the identified nodes, and outputs information indicating the identified frequent graph patterns as explanatory information about the trained graph machine learning model.

[0075] In this way, the information output device 10 extracts a proximity graph from the high-contribution nodes identified from the graph data and outputs frequent graph patterns of the proximity graph set as explanatory information for the trained graph machine learning model, thereby improving the explainability of the graph machine learning model.

[0076] In addition, the subgraph data includes adjacent nodes that are within a predetermined number of hops from the identified node, and the information output device 10 creates second subgraph data that indicates the relationships between nodes, edges, node labels, and edge labels based on the subgraph data, and the process of identifying frequent graph patterns executed by the information output device 10 includes a process of identifying frequent graph patterns from the second subgraph data in each of the groups.

[0077] This allows the information output device 10 to further improve the explainability of the graph machine learning model.

[0078] In addition, the process of creating second subgraph data executed by the information output device 10 includes a process of creating the second subgraph data including a marker node indicating the central node of the identified neighborhood graph, and the process of identifying frequent graph patterns from the second subgraph data includes a process of identifying frequent graph patterns including the marker node from the second subgraph data in each of the groups.

[0079] This allows the information output device 10 to further improve the explainability of the graph machine learning model.

[0080] [System] The information, including the processing procedures, control procedures, specific names, various data, and parameters shown in the above documents and drawings, may be changed as desired unless otherwise specified. Furthermore, the specific examples, distributions, and numerical values ​​described in the embodiments are merely examples and may be changed as desired.

[0081] Furthermore, the specific form of distribution or integration of the components of each device is not limited to that shown in the drawings. That is, all or some of the components may be functionally or physically distributed or integrated in any unit depending on various loads, usage conditions, etc. Furthermore, all or any part of the processing functions of each device may be realized by a CPU (Central Processing Unit) and a program analyzed and executed by the CPU, or may be realized as hardware using wired logic.

[0082] [Hardware] Fig. 22 is a diagram illustrating an example of the hardware configuration of the information output device 10. As shown in Fig. 22, the information output device 10 has a communication interface 10a, a hard disk drive (HDD) 10b, a memory 10c, and a processor 10d. The components shown in Fig. 22 are connected to each other via a bus or the like.

[0083] The communication interface 10a is a network interface card or the like, and communicates with other servers. The HDD 10b stores programs and databases that operate the functions shown in FIG.

[0084] The processor 10d is a hardware circuit that operates a process that executes each function described in FIG. 5 and other figures by reading a program that executes the same processing as each processing unit shown in FIG. 5 from the HDD 10b or the like and expanding the program into the memory 10c. That is, this process executes the same functions as each processing unit possessed by the information output device 10. Specifically, the processor 10d reads a program having the same functions as the identification unit 41, the output unit 42, the creation unit 43, and the like from the HDD 10b or the like. Then, the processor 10d executes a process that executes the same processing as the identification unit 41 and the like.

[0085] In this way, the information output device 10 operates as an information processing device that executes operation control processing by reading and executing a program that executes processing similar to that of each processing unit shown in Figure 5. The information output device 10 can also realize functions similar to those of the above-mentioned embodiment by reading a program from a recording medium using a medium reading device and executing the read program. Note that the program in these other embodiments is not limited to being executed by the information output device 10. For example, this embodiment may also be applied to cases where another information processing device executes a program, or where the information output device 10 and another information processing device cooperate to execute a program.

[0086] 5 can be distributed via a network such as the Internet. This program can be recorded on a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, a magneto-optical disk (MO), or a digital versatile disk (DVD), and can be executed by being read out from the recording medium by a computer.

[0087] REFERENCE SIGNS LIST 10 Information output device 10a Communication interface 10b HDD 10c Memory 10d Processor 20 Communication unit 30 Storage unit 31 Input data 32 Output data 40 Control unit 41 Identification unit 42 Output unit 43 Creation unit

Claims

1. For each of a plurality of graph data corresponding to at least any label corresponding to the prediction result of a trained graph machine learning model, identify one or more nodes whose contribution degree to the prediction result of the graph data satisfies a predetermined condition, and in each of one or more groups obtained by classifying the identified nodes, identify a frequent graph pattern from partial graph data including the identified nodes, and output information indicating the identified frequent graph pattern as explanation information about the trained graph machine learning model. A computer is caused to execute the process. An information output program characterized by that.

2. The partial graph data includes adjacent nodes within a predetermined number of hops from the identified nodes, and based on the partial graph data, the computer is caused to execute a process of creating second partial graph data indicating the relationship between the nodes, edges, node labels, and edge labels, and the process of identifying the frequent graph pattern includes, in each of the groups, a process of identifying the frequent graph pattern from the second partial graph data. The information output program according to claim 1, characterized by that.

3. The process of creating the second partial graph data includes a process of creating the second partial graph data including a marker node indicating the identified node, and the process of identifying the frequent graph pattern from the second partial graph data includes, in each of the groups, a process of identifying the frequent graph pattern including the marker node from the second partial graph data. The information output program according to claim 2, characterized by that.

4. For each of a plurality of graph data corresponding to at least any label corresponding to the prediction result of a trained graph machine learning model, identify one or more nodes whose contribution degree to the prediction result of the graph data satisfies a condition, and in each of one or more groups obtained by classifying the identified nodes, identify a frequent graph pattern from partial graph data including the identified nodes, and output information indicating the identified frequent graph pattern as explanation information about the trained graph machine learning model. A computer executes the process. An information output method characterized by that.

5. For each of a plurality of graph data corresponding to at least any one of the labels corresponding to the prediction results of the trained graph machine learning model, identify one or more nodes whose contribution degree to the prediction result of the graph data satisfies a predetermined condition, and in each of one or more groups obtained by classifying the identified nodes, identify a frequent graph pattern from the partial graph data including the identified nodes, and output information indicating the identified frequent graph pattern as explanation information about the trained graph machine learning model. An information output device characterized by having a control unit that executes the process.

Citation Information

Patent Citations

  • Determination result presentation program, determination result presentation method and determination result presentation device

    JP2022070561A

  • Explaining graph-based predictions using network motif analysis

    JP2022117452A