Display program, information processing device, and display method
The display program and information processing device simplify large-scale graph data analysis by highlighting nodes with high contribution values, addressing the challenge of understanding complex machine learning model estimations.
Patent Information
- Application Number
- JP2021007512
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-01-20
- Publication Date
- 2025-01-15
- Estimated Expiration
- 2041-01-20
AI Technical Summary
Large-scale graph data with numerous nodes in machine learning models makes it difficult to understand which nodes significantly contribute to estimation results, leading to overwhelming information that hinders comprehension.
A display program and information processing device that acquires and displays the degree of contribution of relationships between nodes in a graph structure, highlighting nodes with contributions above a threshold value to facilitate understanding of the estimation basis.
Enables easy comprehension of the estimation basis by visually emphasizing nodes with significant contributions, reducing information overload and enhancing clarity in large-scale graph data analysis.
Smart Images

Figure 0007613123000001 
Figure 0007613123000002 
Figure 0007613123000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a technique for graphing the estimation results of a machine learning model. [Background technology]
[0002] In various fields, events, cases, phenomena, and behaviors are inferred using machine learning models generated by machine learning such as deep learning. Such machine learning models are often black boxes, making it difficult to explain the basis for inference. In recent years, a technology has been developed that generates a machine learning model by machine learning using graph data that shows the relationships between data as training data, and when inferring a graph structure using the machine learning model, assigns the contribution degree to the inference to the nodes and edges of the graph (relationships between nodes) and outputs the result. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2016-212838 A [Patent Document 2] International Publication No. 2015 / 071968 Summary of the Invention [Problem to be solved by the invention]
[0004] However, in the case of large-scale graph data with a huge number of nodes, for example, the above technology assigns a contribution level to each node, which results in a huge amount of information and makes it difficult to understand which nodes have a large contribution to the estimation.
[0005] In one aspect, an object of the present invention is to provide a display program, an information processing device, and a display method that are capable of outputting information that makes it easy to understand the basis for estimations made by a machine learning model. [Means for solving the problem]
[0006] In a first proposal, the display program causes a computer to execute a process of acquiring a contribution degree of each of a plurality of inter-node relationships included in a graph structure showing the inter-node relationships to an estimation result of a machine learning model. The display program causes a computer to execute a process of displaying a graph that connects a first structure showing a first class to which one or more nodes in the graph structure belong, and a second structure showing a first node that belongs to the first class and has an associated contribution degree equal to or greater than a threshold. Effect of the Invention
[0007] According to one embodiment, it is possible to output information that makes it easy to understand the basis for estimations made by a machine learning model. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating an information processing apparatus according to a first embodiment. [Diagram 2] FIG. 2 is a diagram for explaining the reference technique. [Diagram 3] FIG. 3 is a diagram for explaining generation of a graph structure taking into account the contribution degree. [Figure 4] FIG. 4 is a functional block diagram of the information processing device according to the first embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of training data. [Figure 6] FIG. 6 is a diagram illustrating an example of the estimated data. [Figure 7] FIG. 7 is a diagram illustrating an example of information stored in the ontology DB. [Figure 8] FIG. 8 is a diagram illustrating an example of information stored in the template DB. [Figure 9] FIG. 9 is a diagram for explaining the relationship between an ontology and a template. [Figure 10] FIG. 10 is a diagram illustrating the estimation results stored in the estimation result DB. [Figure 11]FIG. 11 is a diagram illustrating an example of information stored in the display format DB. [Figure 12] FIG. 12 is a diagram for explaining knowledge insertion. [Figure 13] FIG. 13 is a diagram for explaining the display of an ontology. [Figure 14] FIG. 14 is a diagram for explaining the visualization determination of mutation A. [Figure 15] FIG. 15 is a diagram for explaining the visualization determination of DB I. [Figure 16] FIG. 16 is a diagram explaining DB J's visualization judgment. [Figure 17] FIG. 17 is a diagram explaining the visualization of DB J. [Figure 18] FIG. 18 is a diagram for explaining the visualization determination of DB K. In FIG. [Figure 19] FIG. 19 is a diagram for explaining visualization judgment of the saved score. [Figure 20] FIG. 20 is a diagram for explaining the visualization determination of the structural change score. [Figure 21] FIG. 21 is a diagram illustrating visualization of the structural change scores. [Figure 22] FIG. 22 is a diagram for explaining visualization determination of frequency scores. [Diagram 23] FIG. 23 is a diagram for explaining calculation of the contribution of each edge of the first structure of the visualized graph data. [Figure 24] FIG. 24 is a diagram for explaining a display example of visualized graph data. [Diagram 25] FIG. 25 is a flowchart showing the flow of the visualization process. [Figure 26] FIG. 26 is a diagram illustrating an example of a hardware configuration. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, the display program, the information processing device, and the display method disclosed in the present application will be described in detail with reference to the accompanying drawings. Note that the present invention is not limited to these embodiments. In addition, each embodiment can be appropriately combined within a range that does not cause a contradiction.
[0010] FIG. 1 is a diagram for explaining an information processing device 10 according to a first embodiment. The information processing device 10 shown in FIG. 1 generates a machine learning model by machine learning using training data of a graph structure, inputs data to be estimated into the machine learning model, and acquires an estimation result including the contribution degree by which the machine learning model reaches an estimation. Then, the information processing device 10 aggregates each node included in the estimation result based on the contribution degree, thereby outputting information that makes it easy to understand the basis of the estimation by the machine learning model. Note that in the embodiment, an example will be described in which a machine learning model is used to estimate whether a graph structure having one or more nodes related to "Mutation A", which is an example of a case, causes a disease (pathogenic or benign).
[0011] Here, a reference technology for outputting the estimation result of a machine learning model will be described. FIG. 2 is a diagram for explaining the reference technology. The reference technology shown in FIG. 2 acquires an estimation result by inputting estimation target data, which is an example of a feature graph, to a machine learning model that has undergone machine learning. For example, the machine learning model is a model that estimates whether mutation A is pathogenic or benign. In addition, the estimation target data is data (hereinafter, sometimes referred to as graph data) with a graph structure showing the relationship between nodes, which is generated using triples (subject, predicate, object), which are a set of three elements (two nodes and an edge) acquired from a knowledge graph.
[0012] The reference technology inputs data to be estimated into a machine learning model, and obtains the estimation result for each node and the contribution to the relationship (edge) between the nodes. The reference technology then displays the contribution to the estimation by changing the color and thickness of the edge between the nodes according to the magnitude of the contribution. However, with this reference technology, when the data to be estimated has a large graph structure, it is difficult to understand which nodes have a large contribution to the estimation, and depending on the size of the display, it may not be possible to display the entire data, which is not very convenient for the user.
[0013] Therefore, the information processing device 10 according to the first embodiment uses the contribution degree to output an estimation result that makes it easy to understand the basis of the estimation by the machine learning model. Specifically, as shown in FIG. 1, the information processing device 10 generates training data from a knowledge graph, and generates a machine learning model by machine learning using the training data. Meanwhile, the information processing device 10 generates, from the knowledge graph, an ontology that defines triples that belong to the first structure to be visualized, and estimation target data. In addition, the information processing device 10 generates a template that defines triples that are easy for people to understand from the ontology by using an extraction model that has been machine-learned, etc.
[0014] Then, the information processing device 10 inputs the estimation target data into the machine learning model to obtain an estimation result including a contribution degree. After that, the information processing device 10 executes a visualization process of the estimation basis for the estimation result.
[0015] For example, the information processing device 10 acquires the contribution of each of a plurality of inter-node relationships (edges) included in a graph structure indicating the relationships between the nodes to an estimation result of a machine learning model. Then, the information processing device 10 displays a graph that connects a first structure indicating a first class to which one or more nodes in the graph structure belong, and a second structure indicating a first node that belongs to the first class and has an associated contribution equal to or greater than a threshold.
[0016] 3 is a diagram for explaining the generation of a graph structure taking into account the contribution degree. As shown in FIG. 3, the information processing device 10 determines whether to include a first structure representing a class or a second structure representing a single node depending on whether the contribution degree contributed to the estimation of the machine learning model is equal to or greater than a threshold, and generates a graph connecting them. Note that the information processing device 10 can also appropriately select nodes to be included in the second structure, taking into consideration that if information is reduced too much, it becomes more difficult to understand.
[0017] Next, a description will be given of a functional configuration of the information processing device 10. Fig. 4 is a functional block diagram showing a functional configuration of the information processing device 10 according to the first embodiment. As shown in Fig. 4, the information processing device 10 includes a communication unit 11, a storage unit 12, and a control unit 30.
[0018] The communication unit 11 controls communication with other devices. For example, the communication unit 11 receives a knowledge graph from an external server, receives various data and various instructions from an administrator terminal used by an administrator, and transmits the generated graph data to the administrator terminal.
[0019] The storage unit 12 stores various data and programs executed by the control unit 30. For example, the storage unit 12 stores a machine learning model 13, a knowledge graph DB 14, a training data DB 15, an inference data DB 16, an ontology DB 17, a template DB 18, an inference result DB 19, and a display format DB20.
[0020] The machine learning model 13 is a model generated by machine learning by the information processing device 10. For example, the machine learning model 13 is a model using a deep neural network (DNN) or the like, and other machine learning or deep learning can be adopted. The machine learning model 13 is also a model that outputs an estimated value "Pathogenic or Benign" and the contribution of each node to the estimated value. For example, the machine learning model 13 can be LIME (Local Interpretable Model-agnostic Explanations), SHAP (Shapley Additive exPlanations), or the like.
[0021] The knowledge graph DB 14 stores graph data related to knowledge. Here, knowledge is expressed as a triple, a set of three such as "for s (subject), the value (object) of r (predicate) is o." Note that s and o are sometimes called entities, and r is sometimes called a relation.
[0022] The training data DB 15 stores a plurality of training data used for machine learning of the machine learning model 13. Specifically, each training data stored in the training data DB 15 is data in which "graph data" and "teacher labels" are associated with each other, and is generated from a knowledge graph. Note that the training data can be generated using another machine learning model, or can be generated manually by an administrator or the like.
[0023] Fig. 5 is a diagram for explaining an example of training data. As shown in Fig. 5, the information processing device 10 acquires "The clinical significance (r: predicate) of mutation A (s: subject) is Pathogenic (o: object)" from the knowledge graph DB 14. In this case, the teaching label "Pathogenic" is set for "Mutation A".
[0024] Similarly, the information processing device 10 acquires "DB I (r: predicate) of mutation A (s: subject) describes Pathogenic (o: object)" from the knowledge graph DB 14. In this case, the teacher label "Pathogenic" is set for "Mutation A).
[0025] Furthermore, the information processing device 10 acquires "DB H (r: predicate) of mutation A (s: subject) describes Bengin (o: object)" from the knowledge graph DB 14. In this case, the teacher label "Bengin" is set for "Mutation A".
[0026] In this way, the information processing device 10 generates training data from the knowledge graph DB 14, in which "graph data" including "mutation A" is associated with a "teacher label" determined by the graph data.
[0027] The inference data DB 16 stores inference target data 16a of a target to be inferred using the machine learning model 13, and class data 16b relating to a class to which each node acquired from the knowledge graph belongs.
[0028] FIG. 6 is a diagram for explaining an example of estimation data. As shown in FIG. 6, the estimation target data 16a is information in which "subject, predicate, and object" are associated with each other. Here, the "subject" and the "object" indicate an instance, and the "predicate" indicates the relationship between two instances. In the example of FIG. 6, the subject node "Mutation A" and the object node "missense" are connected by an edge (relationship between nodes) of the predicate "type". Note that FIG. 6 illustrates the estimation target data 16a in a table format, but the estimation target data 16a may be graph data. In addition, the estimation target data 16a can be generated using another machine learning model, or can be generated manually by an administrator or the like.
[0029] As shown in FIG. 6, the class data 16b is data that associates a "node" with a "class." A "node" is data that corresponds to a subject included in a knowledge graph, and a "class" is a class to which a node belongs. For example, in the case of FIG. 6, the node "Mutation A" belongs to the class "Mutation," and the nodes "DB I," "DB J," and "DB K" each belong to the class "DB." Note that while FIG. 6 illustrates the class data 16b in a table format, the class data 16b may be graph data. The class data 16b may also be generated using another machine learning model, or may be generated manually by an administrator or the like.
[0030] The ontology DB 17 stores an ontology, which is a first structure indicating a first class to which a node to be visualized belongs. For example, the ontology is information on a cluster of nodes to which machine learning is to be performed, and is information on a feature graph for explaining the estimation basis of the machine learning model 13. In other words, the ontology can be generated using an aggregated node that aggregates nodes whose contribution rate included in the estimation result of the machine learning model 13 is less than a threshold value.
[0031] FIG. 7 is a diagram showing an example of information stored in ontology DB 17. As shown in FIG. 7, ontology DB 17 stores "subject, relation, object" in association with each other. The "subject" and "object" stored here indicate classes, and the "relation" indicates the relationship between the classes. In the example of FIG. 7, the class "mutation" and the class "type" are shown to be connected by the relation "type". Also, the class "mutation" and the class "DB" are shown to be connected by the relation "DB", and the class "mutation" and the class "index" are shown to be connected by the relation "index". The ontology stored here is generated by an administrator or the like.
[0032] The template DB 18 is data based on ontology, and stores templates that define groups (lumps) of nodes that are assumed to be easy to understand. FIG. 8 is a diagram showing an example of information stored in the template DB 18. As shown in FIG. 8, the template DB 18 stores each template that associates "subject, relation, object". Note that the "subject, relation, object" is the same as in FIG. 7, and therefore a detailed description will be omitted.
[0033] As shown in Fig. 8, the template “Paper” defines “DB, clinical significance, clinical significance”, “DB, paper, paper”, “paper, title, title”, and “paper, issue, issue sequence” as “subject, relation, object”. The template “Index” defines “Index, score, score” as “subject, relation, object”.
[0034] Here, the relationship between the ontology and the template will be described. FIG. 9 is a diagram for explaining the relationship between the ontology and the template. As shown in FIG. 9, in a feature graph generated based on the ontology, the graph structure included in the area surrounded by lines corresponds to the template. In other words, as the basis for the inference result "Pathogenic or Benign" for the class "Mutation", the evaluation of each class having a predetermined relationship with the class "DB" and each class having a predetermined relationship with the class "Index" is shown to be information that helps the user understand.
[0035] The inference result DB 19 stores an inference result obtained by inputting the inference target data 16a to the machine learning model 13 that has undergone machine learning. Specifically, the inference result DB 19 stores an inference result including an inference value “Pathogenic or Benign” and the contribution of each triple to the inference value, which is obtained by inputting the inference target data 16a shown in FIG. 6 to the machine learning model 13.
[0036] FIG. 10 is a diagram explaining the estimation results stored in the estimation result DB 19. As shown in FIG. 10, the estimation result DB 19 stores information in which an estimated value is associated with estimation target data. The "estimated value" stored here is an estimated value of the machine learning model 13, and in this embodiment, is "pathogenic" or "benign." The "estimation target data" is data of the estimation target input to the machine learning model 13. The "contribution degree" is the contribution degree of each triple to the estimated value.
[0037] Fig. 10 shows an example in which the estimated value "Pathogenic" is obtained for the estimation target data 16a shown in Fig. 6. It also shows that the contribution of the triple "mutation A, type, missense" in the estimation target data 16a to the estimated value "Pathogenic" is "0.01".
[0038] The display format DB20 stores information that defines the display format of the feature graph. Specifically, the display format DB20 stores definition information for changing the thickness and display color of the graph edges according to the contribution degree. Fig. 11 is a diagram showing an example of information stored in the display format DB20. As shown in Fig. 11, the display format DB20 stores "contribution degree, line thickness, and line display color" in association with each other.
[0039] The "contribution degree" stored here is the contribution degree obtained from the output of the machine learning model 13. "Line thickness" indicates the thickness of the line (relation) between nodes when displaying the feature graph, and "line display color" indicates the display color of the line between nodes when displaying the feature graph. In the example of FIG. 11, when the contribution degree is "0.00 to 0.04", the line thickness is "thickness 1" and the line display color is "color A", and when the contribution degree is "0.05 to 0.08", the line thickness is "thickness 2 (thickness 2>thickness 1)" and the line display color is "color B". In this way, the display format is set so that the greater the contribution degree, the more emphasized it is.
[0040] The control unit 30 is a processing unit that controls the entire information processing device 10, and includes a pre-processing unit 40 and an analysis unit 50. The pre-processing unit 40 executes pre-processing before the estimation result of the machine learning model 13 is visualized.
[0041] For example, the pre-processing unit 40 generates training data from the knowledge graph DB 14 using the method described in Fig. 5 and stores it in the training data DB 15. The pre-processing unit 40 also receives estimation target data 16a and class data 16b from an administrator terminal or the like and stores them in the estimation data DB 16. Similarly, the pre-processing unit 40 receives an ontology from an administrator terminal or the like and stores it in the ontology DB 17, and receives a template from the administrator terminal or the like and stores it in the template DB 18. The pre-processing unit 40 can not only receive each of the above data from the administrator terminal, but also automatically generate the data according to a generation model, generation rules, etc. generated by separate machine learning.
[0042] Furthermore, the pre-processing unit 40 generates the machine learning model 13 by machine learning using the training data stored in the training data DB 15. For example, the pre-processing unit 40 generates the machine learning model 13 by inputting graph data included in the training data to the machine learning model 13 and executing supervised learning of the machine learning model 13 so as to reduce an error between the output of the machine learning model 13 and the teacher label included in the training data.
[0043] The analysis unit 50 executes estimation using the generated machine learning model 13, and visualizes the estimation result. The analysis unit 50 includes an estimation execution unit 51, a knowledge insertion unit 52, a structure generation unit 53, and a display output unit .
[0044] The estimation execution unit 51 executes an estimation process using the machine learning model 13. For example, the estimation execution unit 51 inputs the estimation target data 16a stored in the estimation data DB 16 to the machine learning model 13 to obtain an estimation result. In addition, the estimation execution unit 51 obtains the contribution degree, to the estimation result, of each of a plurality of inter-node relationships included in a graph structure indicating the relationships between the nodes.
[0045] To explain the above example, the machine learning model 13 outputs the "contribution degree" of each triple included in the inference target data 16a together with the inference result "Pathogenic" or "Benign" in response to the input of the inference target data 16a. That is, the estimation execution unit 51 inputs the inference target data 16a shown in FIG. 6 to the machine learning model 13 to obtain the inference result shown in FIG. 10, and stores it in the inference result DB 19. The contribution degree is also called the confidence degree or contribution degree, and a known method used in machine learning can be adopted as a method for calculating the contribution degree.
[0046] The knowledge insertion unit 52 extracts knowledge specified by an administrator or the like from the knowledge graph and inserts it into the estimation result. Specifically, the knowledge insertion unit 52 extracts relevant data from the knowledge graph based on information defined in the template and inserts it into the estimation result so that the explanation of the estimation result of the machine learning model 13 is easier to understand. For example, when the template contains the explanation "Structural change score is 0.8", the knowledge insertion unit 52 inserts, as knowledge, the name and explanation of the algorithm for calculating the structural change score.
[0047] FIG. 12 is a diagram for explaining knowledge insertion. In FIG. 12, the estimated values in FIG. 10 are omitted for the sake of simplicity. As shown in FIG. 12, the knowledge insertion unit 52 inserts the knowledge "subject (paper), predicate (title), object (coport Y analysis)" into the estimation result shown in FIG. 10. At this time, the knowledge insertion unit 52 sets the contribution degree to "0" since this knowledge is not included in the estimation target data 16a and therefore does not contribute to the estimation. In other words, the knowledge insertion unit 52 adds a graph structure in which the node "paper" and the node "coport Y analysis" are connected by the edge "title".
[0048] The structure generation unit 53 generates graph data that connects a first structure indicating a first class to which one or more nodes in the graph structure belong, and a second structure indicating a first node that belongs to the first class and has an associated contribution degree equal to or greater than a threshold.
[0049] Specifically, the structure generating unit 53 determines whether or not to visualize a node (unaffiliated node) that belongs to a class not included in the ontology based on the contribution of a relationship in which the node is the "subject". Also, the structure generating unit 53 determines whether or not to visualize a node (affiliated node) that belongs to a class included in the ontology based on both the contribution of a relationship in which the node is the "subject" and the contribution of a relationship in which the opposite node "object" connected when the node is the "subject" is the "subject".
[0050] In this way, the structure generating unit 53 generates graph structure data (hereinafter, sometimes referred to as visualized graph data) that visualizes the estimation basis of the machine learning model 13 by connecting nodes with high contribution rates corresponding to the template to aggregate nodes generated based on the ontology. The detailed processing will be described later.
[0051] The display output unit 54 displays and outputs the visualized graph data generated by the structure generation unit 53. For example, the display output unit 54 generates visualized graph data in which emphasis is displayed according to the degree of contribution by changing the thickness and display color of edges (relationships, lines) connecting nodes in the visualized graph data in accordance with the definition information stored in the display format DB 20. Then, the display output unit 54 stores the visualized graph data after emphasis in the storage unit 12, displays it on a display or the like, or transmits it to an administrator terminal.
[0052] Next, a specific example of generating visualized graph data in which items that affect the estimation are extracted will be described with reference to FIG. 13 and subsequent figures. In the specific example, the threshold of the contribution degree is set to "0.14" as an example. In the specific example, the estimated values in FIG. 10 are omitted to simplify the description.
[0053] First, the structure generating unit 53 graphs the ontology after the knowledge insertion unit 52 inserts the knowledge. Fig. 13 is a diagram for explaining the display of the ontology. As shown in Fig. 13, the structure generating unit 53 generates graph data that connects a node "subject" and a node "object" with an edge "relationship" based on the ontology stored in the ontology DB 17. In the example of Fig. 13, the structure generating unit 53 generates graph data in which nodes are mutation, type, DB, index, clinical significance, paper, title, issue, and value, and the nodes are connected with the "relationship" of the ontology.
[0054] Next, the structure generation unit 53 sequentially selects each node included in the estimation result stored in the estimation result DB 19, and determines whether or not it needs to be visualized.
[0055] First, the structure generation unit 53 executes a visualization determination for "mutation A" in the estimation result. FIG. 14 is a diagram for explaining the visualization determination for mutation A. As shown in FIG. 14, the structure generation unit 53 selects the subject "mutation A" from the estimation result, and identifies the class "mutation" corresponding to "mutation A" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "mutation" is registered in a template.
[0056] Here, since the class "mutation" is not registered in the template, the structure generation unit 53 calculates the contribution degree only for the original subject "mutation A" that specified the class "mutation". Specifically, the structure generation unit 53 calculates the total contribution degree of the subject "mutation A" to be "0.07" based on the estimation result. As a result, since the contribution degree of the subject "mutation A" of "0.07" is smaller than the threshold value "0.14", the structure generation unit 53 determines that the subject "mutation A" is not to be visualized.
[0057] Next, the structure generation unit 53 executes a visualization determination for "DB I" of the estimation result. Fig. 15 is a diagram for explaining the visualization determination for DB I. As shown in Fig. 15, the structure generation unit 53 selects the subject "DB I" from the estimation result, and identifies a class "DB" corresponding to "DB I" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "DB" is registered in the template.
[0058] Here, since the class "DB" is registered in the template, the structure generating unit 53 calculates the contribution degree of the subject "DB I" by using the contribution degree of the node "DB I" which is an example of the first node and the contribution degree of the template of the class "DB". Specifically, the structure generating unit 53 acquires the relationships of "subject: DB, relationship: clinical significance, object: clinical significance" and "subject: DB, relationship: paper, object: paper" from the template.
[0059] In this state, the structure generation unit 53 obtains, from the estimation results, a contribution degree of "0.01" for "Subject: DB I, Predicate: Clinical Significance, Object: Pathogenic" where the subject is "DB I", and a contribution degree of "0.03" for "Subject: DB I, Predicate: Paper, Object: Paper X".
[0060] Furthermore, since the inference result includes "subject: paper X, predicate: issue, object: mouse experiment" with "paper X" as an example of a second node as the node, and the template registers a relationship from the class "DB" via the class "paper" to the class "issue", the structure generation unit 53 obtains a contribution degree of "0.01" for the inference result "subject: paper X, predicate: issue, object: mouse experiment".
[0061] As a result, the structure generating unit 53 calculates the contribution of "DB I" to the estimation result as "0.01+0.03+0.01=0.05." Here, since the contribution of the subject "DB I", "0.05", is less than the threshold value "0.14", the structure generating unit 53 determines that the subject "DB I" is not to be visualized.
[0062] Next, the structure generation unit 53 executes a visualization determination for "DB J" of the estimation result. Fig. 16 is a diagram for explaining the visualization determination for DB J. As shown in Fig. 16, the structure generation unit 53 selects the subject "DB J" from the estimation result, and identifies the class "DB" corresponding to "DB I" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "DB" is registered in the template.
[0063] Here, since the class "DB" is registered in the template, the structure generating unit 53 calculates the contribution of the subject "DB J" by using the contribution of the node "DB J" which is an example of the first node and the contribution of the template of the class "DB". Specifically, the structure generating unit 53 obtains the relationships of "subject: DB, relationship: clinical significance, object: clinical significance" and "subject: DB, relationship: paper, object: paper" from the template.
[0064] In this state, the structure generation unit 53 obtains, from the estimation results, a contribution degree of "0.03" for "Subject: DB J, Predicate: Clinical Significance, Object: Benign" where the subject is "DB J", and a contribution degree of "0.05" for "Subject: DB J, Predicate: Paper, Object: Paper Y."
[0065] Furthermore, the structure generation unit 53 specifies that the estimation result includes "subject: paper Y, predicate: title, object: cohort Y analysis," "subject: paper Y, predicate: issue, object: healthy subjects," and "subject: paper Y, predicate: issue, object: 231 people," with "paper Y" being an example of the second node as the node. In addition, since the template is registered with the relationship to the class "title" via the class "DB" or the class "paper," and the relationship to the class "issue" via the class "DB" or the class "paper," the structure generation unit 53 also acquires the contribution of these. In other words, the structure generation unit 53 obtains the contribution degree of "0" for "subject: paper Y, predicate: title, object: cohort Y analysis," the contribution degree of "0.15" for "subject: paper Y, predicate: issue, object: healthy subjects," and the contribution degree of "0.15" for "subject: paper Y, predicate: issue, object: 231 people."
[0066] As a result, the structure generation unit 53 calculates the contribution of "DB J" to the estimation result as "0.03+0.05+0.15+0.15=0.38." Here, since the contribution of the subject "DB J", "0.38", is equal to or greater than the threshold value "0.14", the structure generation unit 53 determines that the subject "DB J" is to be visualized.
[0067] Therefore, the structure generating unit 53 visualizes the graph related to the node "DB J" of the estimation result by making it appear in the feature graph as a third graph structure. FIG. 17 is a diagram for explaining the visualization of DB J. As shown in FIG. 17, the structure generating unit 53 adds the graph structure of the node "DB J" corresponding to the second structure to the ontology corresponding to the first structure. For example, the structure generating unit 53 creates a graph so that "DB J, Benign, cohort analysis, healthy subjects·231 people" are connected to "DB, clinical significance, paper, title, issue" of the ontology. Furthermore, the structure generating unit 53 connects "DB J", which is the second structure, to "mutation" of the first structure, similar to the relationship between "mutation" and "DB" included in the first structure.
[0068] Next, the structure generation unit 53 executes a visualization determination for "DB K" of the estimation result. FIG. 18 is a diagram for explaining the visualization determination for DB K. As shown in FIG. 18, the structure generation unit 53 selects the subject "DB K" from the estimation result, and identifies a class "DB" corresponding to "DB K" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "DB" is registered in the template.
[0069] Here, since the class "DB" is registered in the template, the structure generating unit 53 calculates the contribution degree of the subject "DB K" by using the contribution degree of the node "DB K" and the contribution degree of the template of the class "DB". Specifically, the structure generating unit 53 acquires the relationships of "subject: DB, relationship: clinical significance, object: clinical significance" and "subject: DB, relationship: paper, object: paper" from the template.
[0070] In this state, the structure generating unit 53 acquires a contribution degree of "0.05" for "subject: DB K, predicate: clinical significance, object: likewise benign" in which the subject is "DB K" from among the estimation results. Note that the structure generating unit 53 does not acquire a contribution degree related to the template because the estimation result does not include a contribution degree corresponding to the template.
[0071] As a result, the structure generation unit 53 calculates the contribution degree of "DB K" in the estimation result as "0.05." Here, since the contribution degree of the subject "DB K" of "0.05" is less than the threshold value of "0.14," the structure generation unit 53 determines that the subject "DB K" is not to be visualized.
[0072] Next, the structure generation unit 53 executes a visualization determination for the "saved score" of the estimation result. FIG. 19 is a diagram for explaining the visualization determination of the saved score. As shown in FIG. 19, the structure generation unit 53 selects the subject "saved score" from the estimation result, and identifies the class "index" corresponding to the "saved score" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "index" is registered in a template.
[0073] Here, since the class "index" is registered in the template, the structure generating unit 53 calculates the contribution degree of the subject "save score" by using the contribution degree of the node "save score" and the contribution degree of the template of the class "index". Specifically, the structure generating unit 53 obtains the relationship of "subject: index, relation: score, object: score" from the template.
[0074] In this state, the structure generating unit 53 obtains a contribution degree of "0.01" for "subject: preserved score, predicate: score, object: 0.7" in which the subject is "preserved score" from among the estimation results. Note that the structure generating unit 53 does not obtain a contribution degree related to the template because the estimation result does not include a contribution degree corresponding to the template.
[0075] As a result, the structure generation unit 53 calculates the contribution of the "preservation score" to the estimation result as "0.01." Here, since the contribution of the subject "preservation score" of "0.01" is less than the threshold value "0.14," the structure generation unit 53 determines that the subject "preservation score" is not to be visualized.
[0076] Next, the structure generation unit 53 executes a visualization determination for the "structural change score" of the estimation result. FIG. 20 is a diagram for explaining the visualization determination of the structural change score. As shown in FIG. 20, the structure generation unit 53 selects the subject "structural change score" from the estimation result, and identifies the class "index" corresponding to the "structural change score" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "index" is registered in a template.
[0077] Here, since the class "index" is registered in the template, the structure generation unit 53 calculates the contribution degree of the subject "structural change score" by using the contribution degree of the node "structural change score" and the contribution degree of the template of the class "index". Specifically, the structure generation unit 53 obtains the relationship of "subject: index, relation: score, object: score" from the template.
[0078] In this state, the structure generation unit 53 obtains a contribution degree of "0.16" for "subject: structure change score, predicate: score, object: 0.3" in which the subject is "structure change score" from among the estimation results. Note that the structure generation unit 53 does not obtain a contribution degree related to the template because the estimation result does not include a contribution degree corresponding to the template.
[0079] As a result, the structure generation unit 53 calculates the contribution of the "structural change score" of the estimation result to be "0.16." Here, since the contribution of the subject "structural change score" of "0.16" is equal to or greater than the threshold value "0.14," the structure generation unit 53 determines that the subject "structural change score" is to be visualized.
[0080] Therefore, the structure generation unit 53 visualizes the node "Structural change score" of the estimation result by making it appear in the feature graph. FIG. 21 is a diagram for explaining the visualization of the structural change score. As shown in FIG. 21, the structure generation unit 53 adds a graph structure of the node "Structural change score" corresponding to the second structure to the ontology corresponding to the first structure. For example, the structure generation unit 53 creates a graph so that "Structural change score, 0.3" is connected to "Index, Value" of the ontology. Furthermore, the structure generation unit 53 connects the "Structural change score" of the second structure to the "Mutation" of the first structure, similar to the relationship between "Mutation" and "Index" included in the first structure.
[0081] Next, the structure generation unit 53 executes a visualization determination for the "frequency score" of the estimation result. FIG. 22 is a diagram for explaining the visualization determination of the frequency score. As shown in FIG. 22, the structure generation unit 53 selects the subject "frequency score" from the estimation result, and identifies the class "index" corresponding to the "frequency score" by referring to the class data 16b. Then, the structure generation unit 53 refers to the template DB 18 and determines whether or not this class "index" is registered in a template.
[0082] Here, since the class "index" is registered in the template, the structure generation unit 53 calculates the contribution of the subject "frequency score" using the contribution of the node "frequency score" and the contribution of the template of the class "index". Specifically, the structure generation unit 53 obtains the relationship of "subject: index, relation: score, object: score" from the template.
[0083] In this state, the structure generating unit 53 obtains a contribution degree of "0.10" for "subject: frequency score, predicate: score, object: 0.4" in which the subject is "frequency score" from among the estimation results. Note that the structure generating unit 53 does not obtain a contribution degree related to the template because the estimation result does not include a contribution degree corresponding to the template.
[0084] As a result, the structure generation unit 53 calculates the contribution of the "frequency score" of the estimation result as "0.10." Here, since the contribution of the subject "frequency score" of "0.10" is less than the threshold value "0.14," the structure generation unit 53 determines that the subject "frequency score" is not to be visualized.
[0085] As described above, after the structure generation unit 53 executes the visualization determination for the estimation result, the display output unit 54 determines the display format according to the contribution degree.
[0086] First, the display output unit 54 calculates the contribution degree between each node in the first structure by summing up the contribution degrees of structures other than the structure extracted in the second structure.
[0087] FIG. 23 is a diagram for explaining the calculation of the contribution of each edge of the first structure of the visualized graph data. As shown in FIG. 23, the display output unit 54 sets the contribution of "0.01" for the class "Mutation" and the class "Type" according to the estimation result shown in FIG. 10 since the second structure is not connected. Also, for the class "Mutation" and the class "DB", the node "DB J" is connected as the second structure, so the display output unit 54 sets the total value of the contribution excluding "DB J" from the estimation result shown in FIG. 10. That is, the display output unit 54 acquires "Subject: Mutation A, Predicate: DB, Object: DB I, Contribution: 0.01" corresponding to the second node and "Subject: Mutation A, Predicate: DB, Object: DB K, Contribution: 0.01" corresponding to the third node from the estimation result, and sets the total value of the contribution to "0.02".
[0088] Similarly, for the class "mutation" and the class "index", since the node "structural change score" is connected as the second structure, the display output unit 54 sets the total contribution value excluding "structural change score" from the estimation result shown in Fig. 10. That is, the display output unit 54 obtains "subject: mutation A, predicate: index, object: conservation score, contribution: 0.01" and "subject: mutation A, predicate: index, object: frequency score, contribution: 0.01" from the estimation result, and sets the total contribution value to "0.02".
[0089] Similarly, for the class "DB" and the class "clinical significance", because the graph "DB J-Benign" is connected as the second structure, the display output unit 54 sets the total contribution value excluding "DB J-Benign" from the estimation result shown in Fig. 10. That is, the display output unit 54 obtains "subject: DB I, predicate: clinical significance, object: pathogenic, contribution: 0.01" and "subject: DB K, predicate: clinical significance, object: likewise benign, contribution: 0.05" from the estimation result, and sets the total contribution value to "0.06".
[0090] Similarly, for the class "index" and the class "score", since the graph "structural change score -0.3" is connected as the second structure, the display output unit 54 sets the total contribution value excluding "structural change score -0.3" from the estimation result shown in Fig. 10. That is, the display output unit 54 obtains "subject: conservation score, predicate: score, object: 0.7, contribution: 0.01" and "subject: frequency score, predicate: score, object: 0.4, contribution: 0.10" from the estimation result, and sets the total contribution value to "0.11".
[0091] Using this method, the display output unit 54 sets a contribution degree of "0.03" between "DB" and "Paper", a contribution degree of "0" between "Paper" and "Title", and a contribution degree of "0.01" between "Paper" and "Issue".
[0092] Thereafter, the display output unit 54 changes the thickness and display color of the lines between classes (nodes) according to the information stored in the display format DB 20, and outputs the visualized graph data after the change. Fig. 24 is a diagram explaining a display example of the visualized graph data. As shown in Fig. 24, the display output unit 54 highlights connection lines with high contributions, such as the connection line between "paper" and "healthy subjects", the connection line between "paper" and "231 people", and the connection line between "structural change score" and "0.3".
[0093] By displaying and outputting in this manner, users such as administrators can easily obtain information that has a high contribution to the estimation result. Note that the display example in Fig. 24 is merely an example, and does not limit the relationship between the contribution degree and the display format, the numerical value of the contribution degree, etc.
[0094] Next, the flow of the visualization process described above will be explained. Fig. 25 is a flowchart showing the flow of the visualization process. As shown in Fig. 25, when the process starts, the analysis unit 50 uses information stored in the ontology DB 17 to display an ontology, which is a first structure (S101).
[0095] Next, if there is an unprocessed node in the estimation result (S102: Yes), the analysis unit 50 selects one unprocessed node (S103). Then, the analysis unit 50 determines whether the class of the selected node is included in the template (S104).
[0096] Here, if the class of the selected node is included in the template (S104: Yes), the analysis unit 50 selects the class of the selected node (S105), and determines whether there is an unprocessed relationship connected to the selected class on the template (S106).
[0097] Then, if a relationship that satisfies S106 exists (S106: Yes), the analysis unit 50 selects the relationship that satisfies S106 (S107). Next, the analysis unit 50 selects an edge that corresponds to the selected relationship and has the selected node as its end point, selects the opposite node (S108), and repeats S105 and subsequent steps.
[0098] If there is no relationship satisfying S106 (S106: No), or if the class of the selected node is not included in the template (S104: No), the analysis unit 50 determines whether the contribution degree of the selected node and edge is equal to or greater than a threshold (S109).
[0099] Here, if the contribution rate is equal to or greater than a threshold (S109: Yes), the analysis unit 50 displays the selected nodes and edges as a second structure, connects each selected node to the corresponding class (first structure) with a line (S110), and repeats S102 and subsequent steps. On the other hand, if the contribution rate is less than the threshold (S109: No), the analysis unit 50 repeats S102 and subsequent steps without executing S110 so as not to include the selected node as a second node in the graph.
[0100] In addition, in S102, if there is no unprocessed node in the estimation result (S102: No), the analysis unit 50 determines whether or not all edges of the first structure have been processed (S111).
[0101] Here, if there are unprocessed edges (S111: No), the analysis unit 50 selects one unprocessed edge (S112) and changes the rank (color, etc.) of the edge (S113). Specifically, the analysis unit 50 calculates the total contribution from the contribution of edges that are equivalent to the selected edge and are not displayed as the second structure, and changes the rank (color, etc.) of the edge according to the calculation result. Note that, if there are no unprocessed edges (S111: Yes), the analysis unit 50 ends the visualization process.
[0102] As described above, the information processing device 10 executes machine learning of the graph, assigns estimated contributions to the edges of the graph, aggregates nodes for each ontology, and displays the edges according to the aggregated values of the contributions of the aggregated edges. In addition, when a point with a large sum of the contributions of adjacent edges exceeds a threshold, the information processing device 10 develops a graph connected to the point as a representative example according to a template including the ontology of the point.
[0103] As a result, the information processing device 10 can determine whether to include the first structure representing a class or the second structure representing a single node depending on whether the contribution rate to the estimation by the machine learning model 13 is equal to or greater than a threshold, and can express a graph by connecting them. As a result, the information processing device 10 can output information that makes it easy to understand the basis of the estimation by the machine learning model.
[0104] Furthermore, the information processing device 10 can use a template to identify and display important inferred aspects, and therefore can prevent the amount of information from being reduced too much, making the display difficult to see. For example, in the example of FIG. 24, the information processing device 10 can present the inference basis that "There are 231 healthy individuals with the same mutation, so it is considered to be benign" based on the display of "DB J-Benign" and "DB J-Paper X-Healthy Subjects". Furthermore, the information processing device 10 can present the inference basis that "The calculated value of the structural change was 0.3, which was somewhat low" based on the display of "Mutation-Index-Score" and "Structural Change Score-0.3".
[0105] The data examples, numerical values, thresholds, display examples, number of graph configurations, specific examples, etc. used in the above embodiment are merely examples and can be changed as desired. In addition, image data, voice data, time-series data, etc. can be used as training data, and the machine learning model 13 can also be used for image classification and various analyses.
[0106] In the above embodiment, the contribution degree is added to the triple, but the present invention is not limited to this, and the visualization determination can be performed according to the information obtained from the machine learning model. For example, even if the contribution degree is added to each relationship between two nodes or each node, the visualization determination can be performed for each node or between the nodes, instead of the triple, to perform the same processing.
[0107] In the above embodiment, the visualization determination based on the contribution degree is also performed for nodes belonging to classes not included in the ontology, which is the first structure, but the present invention is not limited to this. For example, it is also possible to exclude nodes belonging to classes not included in the ontology from the determination, and perform the visualization determination based on the contribution degree only for nodes belonging to classes included in the ontology.
[0108] The ontology can be generated using nodes excluding those between nodes whose contributions are less than a threshold in the estimation result. The insertion of knowledge described in the embodiment can be omitted. The template and the ontology can be processed as the same information.
[0109] The information including the processing procedures, control procedures, specific names, various data and parameters shown in the above documents and drawings can be changed arbitrarily unless otherwise specified.
[0110] In addition, each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure. In other words, all or part of them can be functionally or physically distributed and integrated in any unit according to various loads, usage conditions, etc.
[0111] Furthermore, each processing function performed by each device may be realized, in whole or in part, by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware using wired logic.
[0112] Fig. 26 is a diagram for explaining a hardware configuration example. As shown in Fig. 26, an information processing device 10 includes a communication device 10a, a hard disk drive (HDD) 10b, a memory 10c, and a processor 10d. The units shown in Fig. 26 are connected to each other via a bus or the like.
[0113] The communication device 10a is a network interface card or the like, and communicates with other devices. The HDD 10b stores programs and DBs that operate the functions shown in FIG.
[0114] The processor 10d reads out a program that executes the same processes as the respective processing units shown in FIG. 4 from the HDD 10b, etc., and loads it in the memory 10c, thereby operating a process that executes the respective functions described in FIG. 4, etc. For example, this process executes the same functions as the respective processing units possessed by the information processing device 10. Specifically, the processor 10d reads out a program having the same functions as the pre-processing unit 40, the analysis unit 50, etc., from the HDD 10b, etc. Then, the processor 10d executes a process that executes the same processes as the pre-processing unit 40, the analysis unit 50, etc.
[0115] In this way, the information processing device 10 operates as an information processing device that executes a display method by reading and executing a program. The information processing device 10 can also realize functions similar to those of the above-mentioned embodiment by reading the program from a recording medium using a medium reading device and executing the read program. Note that the program in this other embodiment is not limited to being executed by the information processing device 10. For example, the present invention can be similarly applied to cases where another computer or server executes a program, or where these execute a program in cooperation with each other.
[0116] This program can be distributed via a network such as the Internet. This program can also 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. [Explanation of symbols]
[0117] 10. Information processing device 11 Communications Department 12 Storage section 13 Machine Learning Models 14 Knowledge Graph DB 15 Training Data DB 16 Estimation Data DB 17 Ontology DB 18 Template DB 19 Estimation result DB 20 Display format DB 30 Control section 40 Pre-processing section 50 Analysis Department 51 Estimation and Execution Department 52 Knowledge Insertion Section 53 Structure generation part 54 Display output section
Claims
1. Obtaining a contribution of each of a plurality of relationships between nodes included in a graph structure indicating the relationships between the nodes to an estimation result of the machine learning model; displaying a graph connecting a first structure indicating a first class to which one or more nodes of the graph structure belong, and a second structure indicating a first node that belongs to the first class and has an associated contribution degree equal to or greater than a threshold; calculating a sum of the contribution degree associated with a second node included in the one or more nodes and the contribution degree associated with a third node connected to the second node; The process is executed by a computer, the process of displaying includes a process of displaying the graph including a third structure indicating the second node and the third node when the sum value is equal to or greater than a threshold value. A display program comprising:
2. the graph does not include a second node among the one or more nodes whose associated contribution is less than the threshold; 2. The display program according to claim 1,
3. The second node is a node connected to the first node and belongs to the first class.
2. The display program according to claim 1 .
4. The display process includes: a process of displaying the relationships between the nodes in the graph in accordance with the contribution degree between the nodes, with the contribution degree being emphasized as being greater; 4. The display program according to claim 1, further comprising:
5. Obtaining a contribution of each of a plurality of relationships between nodes included in a graph structure indicating the relationships between the nodes to an estimation result of the machine learning model; displaying a graph connecting a first structure indicating a first class to which one or more nodes of the graph structure belong, and a second structure indicating a first node that belongs to the first class and has an associated contribution degree equal to or greater than a threshold; calculating a sum of the contribution degree associated with a second node included in the one or more nodes and the contribution degree associated with a third node connected to the second node; A control unit that performs processing, the process of displaying includes a process of displaying the graph including a third structure indicating the second node and the third node when the sum value is equal to or greater than a threshold value.
23. An information processing apparatus comprising:
6. Obtaining the contribution of each of a plurality of triples included in the graph structure to the estimation result of the machine learning model; displaying a graph including a first structure that aggregates triples included in the plurality of triples, related to a first attribute, and having the contribution degree less than a threshold value among the graph structures, and a second structure that indicates triples included in the plurality of triples, related to the first attribute, and having the contribution degree equal to or greater than the threshold value, connected to the first structure; calculating a sum of the contribution degree associated with a second node included in the one or more nodes and the contribution degree associated with a third node connected to the second node; The computer executes the process, the process of displaying includes a process of displaying the graph including a third structure indicating the second node and the third node when the sum value is equal to or greater than a threshold value. A display method comprising:
Citation Information
Patent Citations
Method, device and program for analyzing directed graph
JP2004178270A
Discovery information system, method, and computer program
JP2016212838A
Computer-implemented method, computer system, and computer program for adaptive evaluation of meta-relationships in semantic graphs
JP2020525897A
Analysis system
WO2015071968A1
Information processing device, information processing method, and program
WO2019130974A1