This application is based upon and claims the benefit of priority from Japanese patent application No. 2020-141565, filed on Aug. 25, 2020, the disclosure of which is incorporated here in its entirety by reference.
The present invention relates to an evaluation metric value computation device, an evaluation metric value computation method, and a recording medium storing an evaluation metric value computation program.
Multi-objective reinforcement learning, which is a field of machine learning, is applied to problems of optimizing a graph structure representing information, such as molecular compounds and ICT (Information and Communication Technology) systems. The main objective of multi-objective reinforcement learning is to learn a cost function model that enables a search to satisfy multiple evaluation metrics.
In the above problems, especially the problem where the search state is represented by a graph, the evaluation metric represents a type of feature computed from the graph structure. The evaluation metric may be associated with a part of the graph or for the whole graph.
In general, several different functions are associated with each evaluation metric. In other words, both the input value to the function and the output value from the function are different for each type of evaluation metric.
A graph enclosed by a broken line shown in
J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018. describes a method for performing multi-objective reinforcement learning targeted at a graph representing a molecular compound, as shown in
In the method described in J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018., a single scalar value to which the values of the above multiple evaluation metrics are converted is used as a teacher label to train a cost function model for search.
The graph enclosed by a broken line shown in
Specifically, vertexes of the graph shown in
In the example shown in
The graph enclosed by a broken line shown in
The function fbandwidth shown in
In other words, in the example shown in
In addition, the candidate of the specified range is not limited to the range enclosing the edges of the graph shown in
T. Maruyama, T. Kuwahara, Y. Yakuwa, T. Kuroda, and Y Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. describes a method for deriving a system configuration that optimizes an evaluation metric by performing reinforcement learning on a graph representing an ICT system as shown in
Functional requirement is a requirement for the function required of the system. Functional requirement includes, “to analyze a video captured by a camera using analysis software” or “to monitor a result of the analysis”, for example.
The method described in T. Maruyama, T. Kuwahara, Y Yakuwa, T. Kuroda, and Y Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. derives a system configuration that satisfies an input functional requirement by searching for a system configuration that optimizes an evaluation metric. Whether or not the functional requirement is satisfied is expressed by a numerical value of 0 or 1, respectively.
The types of evaluation metrics used in the search methods described in the above J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018. and T. Maruyama, T. Kuwahara, Y Yakuwa, T. Kuroda, and Y Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. are not changed in each search. In addition, the search model used in the search methods described in J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018. and T. Maruyama, T. Kuwahara, Y. Yakuwa, T. Kuroda, and Y. Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. is learned to directly output a scalar value into which multiple evaluation metrics are merged.
Therefore, even if the evaluation metric to be optimized at the time of search is different from the evaluation metric used to compute the value of training data at the time of learning, the model for search computes the prediction value of the scalar value into which the evaluation metrics used at the time of learning are merged, when search is performed.
The search models used in the search methods described in J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018. and T. Maruyama, T. Kuwahara, Y. Yakuwa, T. Kuroda, and Y. Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. are models that are used on the assumption that the specified range, which is the range in which the evaluation metric is specified for the search state, is fixed within the range enclosing the entire graph.
Therefore, the above search model cannot handle evaluation metrics that are specified as a part of the graph. The reason is that the search model is not configured to allow the input of a specified range that encloses a part of the graph.
As a result of the above, the search methods described in J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018. and T. Maruyama, T. Kuwahara, Y. Yakuwa, T. Kuroda, and Y. Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019. are difficult to search depending on a type of an evaluation metric specified during the search and the specified range enclosing a part of the graph.
Therefore, one of the purposes of the present disclosure is to provide an evaluation metric value computation device, an evaluation metric value computation method, and a recording medium storing an evaluation metric value computation program that can output a comprehensive evaluation value depending on a range of a search state in which evaluation metrics are specified and a type of evaluation metric.
In an example embodiment of the present disclosure, an evaluation metric value computation device includes at least one processor and a memory coupled to the at least one processor, wherein the at least one processor is configured to one or more instruction to compute one or more values of evaluation metrics in one or more ranges in which each of the evaluation metrics may be specified in a graph using a predetermined function corresponding to a type of each of the evaluation metrics, for each range, when the graph in which the evaluation metric is specified at least in part is input, and select one or more values corresponding to the range in which the evaluation metric is specified in the graph from among computed one or more values of evaluation metrics.
In an example embodiment of the present disclosure, an evaluation metric value computation method includes computing one or more values of evaluation metrics in one or more ranges in which each of the evaluation metrics may be specified in a graph using a predetermined function corresponding to a type of each of the evaluation metrics, for each range, when the graph in which the evaluation metric is specified at least in part is input, and selecting one or more values corresponding to the range in which the evaluation metric is specified in the graph from among computed one or more values of evaluation metrics.
In an example embodiment of the present disclosure, a non-transitory computer readable information recording medium storing an evaluation metric value computation program, when executed by a computer, performs computing one or more values of evaluation metrics in one or more ranges in which each of the evaluation metrics may be specified in a graph using a predetermined function corresponding to a type of each of the evaluation metrics, for each range, when the graph in which the evaluation metric is specified at least in part is input, and selecting one or more values corresponding to the range in which the evaluation metric is specified in the graph from among computed one or more values of evaluation metrics.
According to the present disclosure, a comprehensive evaluation value can be output depending on a range of a search state in which evaluation metrics are specified and a type of evaluation metric.
[Description of Configuration]
Hereinafter, an example embodiment of the present disclosure will be described with reference to the drawings.
As mentioned above, there exists a method for exploratory optimization of a graph structure representing information represented by molecular compounds, ICT systems, etc., to satisfy a predetermined evaluation metric using a pre-trained cost function model.
The evaluation metric value computation device 100 of the present example embodiment deals with a cost function model and a learning method of the cost function model in the case where the evaluation metric, which is referred to when optimizing the structure, is given to a part of the graph structure and the evaluation metric may change with each search.
As shown in
As shown in
The evaluation metric value prediction unit 110 has the function of computing the value of the evaluation metric for the graph input from the graph input device 200 as a prediction value.
Specifically, the evaluation metric value prediction unit 110 receives as input a graph to which an evaluation metric is assigned. The evaluation metric value prediction unit 110 then computes, for each type of evaluation metric, the values of the evaluation metrics for the vertices and edges in the candidate of the specified range which is a range in which the evaluation metrics may be specified, among the vertices and edges constituting the input graph.
In other words, the evaluation metric value prediction unit 110 computes the values of the evaluation metrics for the candidate of the specified range in the input graph. It is noted that there may be multiple candidates of the specified range in a single graph.
The graph enclosed by a broken line shown in
The values s1 and s2 of the evaluation metrics enclosed by a broken line shown in
The evaluation metric value prediction unit 110 receives the graph shown in
The candidate of the specified range may be predefined for each type of evaluation metric. For example, the candidate of the specified range of the evaluation metric “bandwidth” may be predefined that it is set only to an edge that represents the communication corresponding to the IP layer among edges that constitute the graph representing the ICT system.
The value of the evaluation metric may consist of a plurality of values computed based on each of the plurality of evaluation metrics. The evaluation metric value prediction unit 110 may include in the computation results the value of the evaluation metric computed from at least the range specified by the evaluation metric in the graph.
The function used in the evaluation metric value prediction unit 110 can be any function as long as it is capable of computing a value of an evaluation metric. For example, the function may be a machine learning model such as a linear regression model or a graph neural network model.
When the function is a machine learning model, the machine learning model is preferably a model capable of computing a value of an evaluation metric, learned by methods such as reinforcement learning and supervised learning. The evaluation metric value prediction unit 110 may also compute a value of an evaluation metric using a simulator, actual measurement, or the like.
The evaluation metric value selection unit 120 has a function of selecting values of evaluation metrics corresponding to types of evaluation metrics specified in the input graph and a specified range from the values of evaluation metrics computed by the evaluation metric value prediction unit 110.
Specifically, the evaluation metric value selection unit 120 selects the value corresponding to the specified range which is the range in which the evaluation metric is specified in the graph input to the evaluation metric value prediction unit 110, among prediction values computed by the evaluation metric value prediction unit 110.
The values s1 and s2 of evaluation metrics enclosed by a broken line shown in
The values t1 and t2 of evaluation metrics enclosed by a broken line shown in
The graphs enclosed by a broken line shown in
The candidate of the specified range E is the specified range for which “bandwidth” is specified as the evaluation metric. Information indicating that the candidate of the specified range E is the specified range, where “bandwidth” is specified as the evaluation metric, is added to the value t1 of the evaluation metric.
The evaluation metric value selection unit 120 refers to the information on the evaluation metric and the specified range, which is added to the value of the evaluation metric computed by the evaluation metric value prediction unit 110. Next, the evaluation metric value selection unit 120 selects respective values s2 and t1 of evaluation metrics corresponding to the candidates of the specified range D and E which are the specified ranges given for the graph shown in
As described above, the evaluation metric value prediction unit 110 should compute the value of evaluation metric from at least the candidate of the specified range correspond to the specified range given for the input graph among the candidates of the specified range.
The value of the evaluation metric to be selected by the evaluation metric value selection unit 120 may be predetermined. For example, the evaluation metric value selection unit 120 may select the value of the evaluation metric corresponding to the candidate of the specified range with a predetermined condition.
The evaluation metric value merging unit 130 has a function of converting values of evaluation metrics selected by the evaluation metric value selection unit 120 into a scalar value.
Specifically, the evaluation metric value merging unit 130 receives as input the prediction value of the evaluation metric selected by the evaluation metric value selection unit 120. Next, the evaluation metric value merging unit 130 outputs a single scalar value representing the comprehensive evaluation value for the graph input to the evaluation metric value prediction unit 110.
As shown in
Next, the evaluation metric value merging unit 130 inputs the computation result value w1s2+w2t1 to the comprehensive evaluation metric value output device 300. The scalar value w1s2+w2t1 represents a linear sum of s2 and t1. The comprehensive evaluation metric value output device 300 outputs the input scalar value as a comprehensive evaluation value for the graph.
The conversion process to a scalar value by the evaluation metric value merging unit 130 may be any process in which the values of evaluation metrics is converted to a predetermined scalar value, even if the values of evaluation metrics are input in any order. In the conversion process by the evaluation metric value merging unit 130, a product, a maximum value, a minimum value, a mean value, a variance, etc. may be used in addition to a linear sum.
The conversion process to scalar values by the evaluation metric value merging unit 130 can be any process in which values of evaluation metrics are converted to arbitrary scalar values if the order in which they are input is fixed.
As described above, when the evaluation metric value prediction unit 110 of the present example embodiment computes one or more values of evaluation metrics in one or more ranges in which each of the evaluation metrics may be specified in a graph using a predetermined function corresponding to a type of each of the evaluation metrics, for each range, when the graph in which the evaluation metric is specified at least in part is input.
The evaluation metric value selection unit 120 of the present example embodiment selects one or more values corresponding to the range in which the evaluation metric is specified in the graph from among computed one or more values of evaluation metrics.
The evaluation metric value merging unit 130 of the present example embodiment outputs a scalar value obtained by converting the selected one or more values of evaluation metrics as a comprehensive evaluation value of the evaluation metric specified in the input graph. The evaluation metric value merging unit 130, for example, converts the multiple values of evaluation metrics into the scalar value by computing a linear sum of the selected multiple values of evaluation metrics.
The evaluation metric value prediction unit 110, the evaluation metric value selection unit 120, and the evaluation metric value merging unit 130 of the present example embodiment are realized, for example, by a CPU (Central Processing Unit) of a computer that operates according to an evaluation metric value computation program.
In the above case, the CPU reads an evaluation metric value computation program from a program recording medium such as a computer program storage device. Next, the CPU should operate as the evaluation metric value prediction unit 110, the evaluation metric value selection unit 120, and the evaluation metric value merging unit 130 according to the loaded evaluation metric value computation program.
[Description of Operation]
Hereinafter, the operation of the evaluation metric value computation device 100 of the present example embodiment will be described with reference to
First, a graph to which evaluation metrics are assigned is input from the graph input device 200 to the evaluation metric value prediction unit 110 of the evaluation metric value computation device 100 (step S101).
Next, the evaluation metric value prediction unit 110 computes values of evaluation metrics of the candidate of the specified range in the input graph as the prediction values, for each type of evaluation metric assigned to the input graph (step S102). The evaluation metric value prediction unit 110 inputs the computed prediction values to the evaluation metric value selection unit 120.
Next, the evaluation metric value selection unit 120 selects prediction values corresponding to the specified range in the graph input in step S101 among the prediction values computed in step S102 (step S103). The evaluation metric value selection unit 120 inputs the selected prediction values to the evaluation metric value merging unit 130.
Next, the evaluation metric value merging unit 130 converts the prediction values selected in step S103 into a scalar value (step S104). Next, the evaluation metric value merging unit 130 outputs the scalar value obtained by conversion in step S104 as the comprehensive evaluation value (step S105). After outputting the comprehensive evaluation value, the evaluation metric value computation device 100 ends the comprehensive evaluation value output processing.
[Description of Effects]
The evaluation metric value computation device 100 of the present example embodiment is a device that computes the comprehensive evaluation value depending on the range of search state specified by the evaluation metric and types of evaluation metrics.
The evaluation metric value computation device 100 comprises the evaluation metric value prediction unit 110 that, when a graph with an evaluation metric is input, computes values of the evaluation metrics in the range where the evaluation metric in the graph may be specified, using a learning model or the like, for each type of evaluation metric.
The evaluation metric value computation device 100 comprises the evaluation metric value selection unit 120 that selects prediction values computed according to the evaluation metric specified for the graph.
The evaluation metric value computation device 100 comprises the evaluation metric value merging unit 130 that outputs the comprehensive evaluation value of the evaluation metrics specified in the input graph by converting the values of the selected evaluation metrics into a scalar value.
The evaluation metric value computation device 100 of the present example embodiment can output a comprehensive evaluation value depending on a type of evaluation metric given to the input graph and the specified range. The reason is that the evaluation metric value prediction unit 110 can compute prediction values depending on the type of evaluation metric specified for the input graph, and the evaluation metric value selection unit 120 can select prediction values corresponding to the specified range of evaluation metrics among the computed prediction values.
The evaluation metric value computation device 100 of the present example embodiment can compute value of the changed evaluation metric even if the range of the evaluation metric or the type of the evaluation metric specified for the graph representing the molecular compound, ICT system, etc. is changed at the start of the search.
When the evaluation metric value computation device 100 is used, especially in problems where the structure of a graph representing a molecular compound, ICT system, etc. is searched in an exploratory manner, a solution based on the changed evaluation metric can be derived even if the evaluation metric referred to in the search is changed.
The following is an example of an industrial application of the present example embodiment. The evaluation metric value computation device 100 of the present example embodiment can be used for optimization of the structure of molecular compounds in the drug discovery industry. Specifically, a graph representing a molecular compound to which an evaluation metric is assigned is input to the evaluation metric value computation device 100.
The evaluation metric value prediction unit 110 uses a graph neural network as a function to compute the value of the evaluation metric, and the evaluation metric value merging unit 130 uses a linear sum for the conversion process to a scalar value, so that the evaluation metric value computation device 100 can be used to optimize the structure of molecular compounds.
In particular, the evaluation metric value computation device 100 of the present example embodiment can be applied to the problem of generating compounds in the field of drug discovery described in J. You, B. Liu, R. Ying, V. Pande, and J. Leskovec, “Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation,” Neural Information Processing Systems, 2018.
The evaluation metric value computation device 100 of the present example embodiment can also be used for the task of optimizing the structure of a graph representing an ICT system. Specifically, a graph representing an ICT system to which an evaluation metric has been assigned is input to the evaluation metric value computation device 100.
The evaluation metric value prediction unit 110 uses a graph neural network as a function to compute the value of the evaluation metric, and the evaluation metric value merging unit 130 uses a linear sum for the conversion process to a scalar value, so that the evaluation metric value computation device 100 is used to optimize the structure of the graph representing the ICT system.
In particular, the evaluation metric value computation device 100 of the present example embodiment can be applied to the search problem described in T. Maruyama, T. Kuwahara, Y. Yakuwa, T. Kuroda, and Y. Sato, “Accelerated Search for Search-Based Network Design Generation Scheme with Reinforcement Learning,” IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019., where multiple performance requirements are treated as evaluation metrics in addition to functional requirements.
The evaluation metric value computation device 100 of the present example embodiment is implemented in a computer 10. The evaluation metric value computation program that realizes the operation of the evaluation metric value computation device 100 is stored in the auxiliary memory device 13.
The CPU 11 reads the evaluation metric value computation program from the auxiliary memory device 13, expands it to the main memory device 12, and executes the processes described in the above example embodiment according to the expanded evaluation metric value computation program. The main memory device 12 is, for example, RAM (Random Access Memory).
The auxiliary memory device 13 is, for example, a non-temporary tangible medium. The non-temporary tangible media include magnetic disks, optical magnetic disks, CD-ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), semiconductor memory, etc., which are connected via the interface 14.
The input device 15 has the function of inputting data and processing instructions. The input device 15 is, for example, a keyboard or a mouse.
The output device 16 has the function to output data. The output device 16 is, for example, a display device such as a liquid crystal display device, or a printing device such as a printer.
When the evaluation metric value computation program is delivered to the computer 10 via communication lines, the computer 10 may expand the delivered program to the main memory device 12 and execute the above process.
Some or all of the components may be realized by general-purpose or dedicated circuitry, processors, or combinations of these. These may consist of a single chip or a number of chips connected via a bus. Some or all of each component may be realized by a combination of the above-mentioned circuits, etc. and programs.
When some or all of each component is realized by multiple information processing devices, circuits, etc., the multiple information processing devices, circuits, etc. may be centrally located or distributed. For example, the information processing devices, circuits, etc. may be implemented as a client-and-server system, cloud computing system, etc., each of which is connected via a communication network.
Next, an overview of the present disclosure will be explained.
With such a configuration, the evaluation metric value computation device can output a comprehensive evaluation value depending on a range of a search state in which evaluation metrics are specified and a type of evaluation metric.
The evaluation metric value computation device 20 may further comprises an output unit (for example, the evaluation metric value merging unit 130) which outputs a scalar value obtained by converting the selected one or more values of evaluation metrics as a comprehensive evaluation value of the evaluation metric specified in the input graph.
The output unit may also convert the multiple values of evaluation metrics into the scalar value by computing a linear sum of the selected multiple values of evaluation metrics.
With such a configuration, the evaluation metric value computation device can output the scalar value obtained by converting values of evaluation metrics as the comprehensive evaluation value.
The predetermined function may be a learning model. The learning model may be a graph neural network.
With such a configuration, the evaluation metric value computation device can compute the value of the evaluation metric using a model that has been learned to be able to compute the value of the evaluation metric.
The graph may be a graph representing an ICT system.
With such a configuration, the evaluation metric value computation device is used for the task of optimizing the structure of the graph representing the ICT system.
While the above disclosure has been particularly shown and described with reference to example embodiments thereof, the present invention is not limited to the above disclosure. It will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the claims.
Number | Date | Country | Kind |
---|---|---|---|
2020-141565 | Aug 2020 | JP | national |