Estimation device, training device, graph generation method, and network generation method
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-12
- Publication Date
- 2026-03-04
Smart Images

Figure 0007823891000014 
Figure 0007823891000015 
Figure 0007823891000016
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to an estimation device, a training device, a graph generation method, and a network generation method. [Background technology]
[0002] Research is being conducted into methods for generating molecular structures using trained generative models. These methods train generative models using molecular structures as training data, etc., to learn the mapping between molecular structures and corresponding fixed-length latent vectors. When generating molecular structures, the latent vectors are randomly changed or specific properties are targeted and searched for, allowing the molecular structure corresponding to the latent vector to be inferred.
[0003] In this molecular structure generative model, the way in which the molecular structure is represented (e.g., string format or graph format) has a significant impact on the performance of molecular structure generation. For example, when represented in string format, there may be cases in which the string representation output by the generative model does not correspond to a valid molecular structure, which may affect performance. When represented in graph format, there are no cases in which the graph representation does not correspond to a valid molecular structure, but it is difficult to efficiently learn molecular structures that frequently appear in organic compounds (e.g., phenyl groups).
[0004] In response to this, methods have been proposed in which the graph representation of the molecular structure is coarse-grained (for example, a tree representation in which a benzene ring is represented as a single node) and a tree representation is learned and generated. One such method uses a tree representation obtained by decomposing the graph representation of the molecular structure. However, these methods have the drawback of not being able to uniquely return the molecular structure to the coarse-grained tree representation. For this reason, reversible conversion to a molecular structure was achieved by using a graph representation in addition to the tree representation alone. However, this combination of methods requires a large amount of calculation, and the learning and generation processes take a long time. [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] W. Jin, et.al., “Junction Tree Variational Autoencoder for Molecular Graph Generation,” arXiv:1802.04364v4, March 29, 2019, [Internet], https: / / arxiv.org / abs / 1802.04364v4 Summary of the Invention [Problem to be solved by the invention]
[0006] The present disclosure provides an estimation device that quickly estimates the graph structure of a compound and a training device that trains a trained model of the inference device. [Means for solving the problem]
[0007] According to one embodiment, the estimation device includes one or more memories and one or more processors, which acquire tree information including node information and edge information from the latent representation, and generate a graph from the tree information, where the tree information includes node connectivity information. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram showing the configuration of an estimation device according to an embodiment. [Figure 2] FIG. 10 illustrates a transformation in estimation according to an embodiment. [Figure 3] FIG. 1 is a block diagram showing the configuration of a training device according to an embodiment. [Figure 4] FIG. 10 illustrates transformations in training according to one embodiment. [Figure 5] FIG. 4 is a diagram showing an example of site information according to an embodiment. [Figure 6] FIG. 4 is a diagram showing an example of site information according to an embodiment. [Figure 7]FIG. 4 is a diagram showing an example of site information according to an embodiment. [Figure 8] FIG. 4 is a diagram showing an example of site information according to an embodiment. [Figure 9] FIG. 10 is a diagram showing an example of assembly according to an embodiment. [Figure 10] FIG. 1 illustrates an example implementation of an estimation device or training device according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0009] First, the terms used in this disclosure will be explained.
[0010] "Tree decomposition" refers to a method of mapping a graph representation of a molecular structure into a tree representation.
[0011] A "singleton" refers to a node corresponding to an atom that is a branch point when the graph representation of a compound molecule is decomposed into a tree. If a branch point of the graph does not belong to a ring structure, it becomes a singleton node.
[0012] A "bond" is a representation of two covalently bonded atoms as a single node. However, in the case of a covalent bond that belongs to a ring structure, the following "ring" applies.
[0013] A "ring" is a node that corresponds to a ring structure when a graph representation of a compound molecule is decomposed into a tree. Typical compounds represented as rings include, but are not limited to, benzene, pyridine, pyrimidine, cyclobutadiene, cyclopentadiene, pyrrole, cyclooctatetraene, and cyclooctane. Any cyclic compound can be used.
[0014] "Site information" is information that indicates the relationship between tree-decomposed nodes and how they were connected in the original molecular structure. While typical tree decomposition is irreversible, the use of this site information ensures reversibility, allowing the tree representation obtained by tree decomposition to be reversely converted into a graph representation, in an embodiment of the present disclosure. Furthermore, a tree representation with this site information added is called a tree representation with site information.
[0015] In this disclosure, "node" and "edge" mainly refer to nodes and edges in a tree representation, but before and after tree decomposition, they will be interpreted as nodes and edges in a graph representation and nodes and edges in a tree representation, as appropriate.
[0016] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. The drawings and the description of the embodiment are shown as an example and are not intended to limit the present invention. In this disclosure, data represented as a graph may be referred to as type 1 data, data represented as a tree with site information may be referred to as type 2 data, and latent expressions may be referred to as type 3 data.
[0017] (estimation device) 1 is a block diagram showing an example of the configuration of an estimation device according to an embodiment. The estimation device 1 includes an input unit 100, a storage unit 102, a search unit 104, a decoding unit 106, a restoration unit 108, and an output unit 110. The estimation device 1 generates and outputs a chemical formula of a compound based on information input from the input unit 100 or a latent state automatically generated in the estimation device 1.
[0018] The input unit 100 accepts input from the outside. If necessary, the data received by the input unit 100 is stored in the storage unit 102. For example, the input unit 100 receives requests from a user and accepts information that serves as a seed for a search by the search unit 104.
[0019] The storage unit 102 stores information required for the operation of the estimation device 1. It may also store intermediate data generated in the processing of the estimation device 1, final generated data, etc. For example, in the case where information processing by software is specifically realized using hardware resources in various operations of the estimation device 1, the storage unit 102 stores a program related to this software. It may also store hyperparameters and parameters that constitute a trained neural network model.
[0020] The search unit 104 acquires data of a latent expression (third type) for generating a compound. For example, this latent variable may be acquired using a random value. As another example, the search unit 104 may acquire a latent variable by adding or multiplying an input latent variable or a latent variable based on an already acquired compound by a random value.
[0021] As yet another example, the search unit 104 may optimize the latent representation so as to obtain a better result based on the result decoded by the decoding unit 106 or the result restored by the restoration unit 108. For this optimization, a method based on metaheuristics such as PSO (Particle Swarm Optimization) may be used.
[0022] The decoding unit 106 uses the trained neural network model to decode the latent variables searched by the search unit 104. By decoding the latent variables, the decoding unit 106 obtains a tree representation with site information corresponding to the latent variables.
[0023] The decoding unit 106 configures a decoder neural network (hereinafter referred to as a decoder NN 120) using, for example, various parameters stored in the storage unit 102. The decoding unit 106 then inputs latent variables to the decoder NN 120 to obtain data in a tree representation with site information (second type). The decoder NN 120 is, for example, a model optimized by a method for generating an autoencoder.
[0024] That is, the decoding unit 106 converts data from the third type to the second type using a decoding NN 120 that receives data of the third type and outputs data of the second type.
[0025] For example, this neural network model is an optimized combination of an encoder that receives a tree representation with site information as input and outputs a latent variable, and a decoder that receives a latent variable and outputs a tree representation with site information as input. For example, the dimension of the latent variable that is the input to the decoder NN 120 may be lower than the dimension of the information contained in the tree representation with site information that is the output.
[0026] The restoration unit 108 outputs the chemical structural formula of the compound from the tree representation with site information output by the decoding unit 106. The restoration unit 108 converts the tree representation with site information into data of a chemical structural formula representation (graph representation, first type) by performing the inverse operation of tree decomposition. In other words, the restoration unit 108 converts data from the second type to the first type. This inverse conversion to a graph representation is called assembling. The assembling method will be explained in more detail in the explanation of the training device below.
[0027] At least one of the decoding unit 106 and the restoration unit 108 may perform an operation to determine the obtained results. For example, the decoding unit 106 may evaluate the output tree representation with site information using an evaluation function and select whether to output or re-search based on the score value. Similarly, the restoration unit 108 may evaluate the output information on the chemical structure formula using an evaluation function and select whether to output or re-search based on the score value.
[0028] The search unit 104 executes a re-search when at least one of the decoding unit 106 and the restoration unit 108 determines that a re-search should be performed. Note that this determination may not be made by the decoding unit 106 or the restoration unit 108, but may be made by the search unit 104 based on the output of the decoding unit 106 or the restoration unit 108.
[0029] The search unit 104 may search multiple latent variables at the same time. For example, when PSO is used as the search method, a search is performed on multiple latent variables that become particles in parallel. In this case, the decoding unit 106 may also generate multiple tree information pieces from multiple latent variables in parallel. Furthermore, the restoration unit 108 may also generate multiple chemical structure formula information pieces from multiple tree information in parallel. Here, tree information refers to tree information including node information and edge information. Hereinafter, information including node information and edge information may be simply referred to as tree information.
[0030] The output unit 110 outputs appropriate information. For example, the information output by the output unit 110 is a chemical structural formula. For example, the output unit 110 outputs the information on the chemical structural formula to the outside. The output unit 110 may also output the information on the chemical structural formula by storing it in the memory unit 102. In this way, the concept of "output" includes not only output to the outside but also storage in the internal memory unit 102.
[0031] If the search is completed in one go, the output unit 110 outputs the information. If the search unit 104 optimizes the output information, the output unit 110 may output only the final data, or may output the final data as well as data from multiple steps including intermediate data.
[0032] 2 is a chart showing the concept of the estimation process of the estimation device 1. The flow of the process of the estimation device 1 will be explained using this FIG.
[0033] First, the search unit 104 searches for a latent variable (third type data) z' (S100). As described above, this latent representation may be obtained as a random number, or a latent variable similar to a pre-generated latent representation of a compound may be obtained. For example, when it is desired to estimate a compound having properties or a structure similar to that of a certain compound, the structural formula (graph representation) of the compound is obtained as a latent representation z through tree decomposition and an encoder. Then, a small value or the like is added to this latent representation z, or a value close to 1 is multiplied to obtain the latent representation z' to be searched.
[0034] Next, the decoding unit 106 inputs the latent expression z' generated by the search unit 104 into the decoder NN 120 to obtain data of the site information-added tree expression (second type) (S102). Each molecular formula shown in the figure is a node in the site information-added tree expression, and the arrows indicate site information. The site information between each node is indicated by an arrow.
[0035] Next, the restoration unit 108 performs assembly using the tree representation with site information generated by the decoding unit 106, thereby obtaining a graph representation x' (first type data) of the compound (S104).
[0036] If further searching is required, the searching unit 104 may obtain a new latent expression (third type data) using data generated by at least one of the decoding unit 106 and the restoration unit 108, and repeat the search (S106).
[0037] Then, the data of the finally obtained compound is output and the process ends. In this way, the estimation device 1 is able to generate information on the compound x'.
[0038] (Training device) Next, the configuration and operation of the training device will be described.
[0039] 3 is a block diagram showing the configuration of a training device according to an embodiment. The training device 2 includes an input unit 200, a storage unit 202, a decomposition unit 204, an encoding unit 206, a decoding unit 208, a restoration unit 210, an updating unit 212, and an output unit 214.
[0040] The input unit 200 accepts input of data required for the operation of the training device 2. The training device 2 acquires, for example, data of a graph representation (first type) of a compound, which serves as training data, via the input unit 200. The training device 2 may also accept input of hyperparameters of a neural network model to be optimized, etc.
[0041] The storage unit 202 stores data required for the operation of the training device 2. Training data acquired by the training device 2 via the input unit 200 may be stored in the storage unit 202. Other operations are almost the same as those of the storage unit 102 of the estimation device 1, and therefore detailed explanations will be omitted.
[0042] The decomposing unit 204 performs tree decomposition on the first data acquired via the input unit 200, thereby converting the data into data of a tree representation (second type) with site information. As another example, the decomposing unit 204 may acquire data of the second type based on data of the first type stored in the storage unit 202. That is, the decomposing unit 204 converts data from the first type to the second type.
[0043] The encoding unit 206 inputs the second data generated by the decomposition unit 204 to the encoder NN 220 to obtain data of a latent representation (third type). The encoding unit 206 forms the encoder NN 220 based on, for example, various parameters of the model stored in the storage unit 202, and generates data of the third type from the data of the second type. In other words, the encoding unit 206 converts data from the second type to the third type.
[0044] The decoding unit 208 inputs the third type data generated by the encoding unit 206 to a decoder NN 222 to generate second type data. The decoder NN 222 and the decoding unit 208 correspond to the decoder NN 120 and the decoding unit 106 of the above-mentioned estimation device 1, respectively. In other words, the decoding unit 208 converts data from the third type to the second type.
[0045] The restoration unit 210 acquires the first type data by assembling the second type data output by the decoding unit 208. This restoration unit 210 corresponds to the restoration unit 108 of the above-mentioned estimation device 1. In other words, the restoration unit 210 converts the data from the second type to the first type.
[0046] The update unit 212 optimizes the encoder NN 220 and the decoder NN 222 based on the first type data of the compound output by the restoration unit 210. This optimization may use various optimization methods used for optimizing autoencoders. Furthermore, a VAE (Variational Autoencoder) method that treats latent variables as probability distributions may be used for optimizing the autoencoder.
[0047] As another example, the update unit 212 may update the model not based on the first type of data, but based on the second type of data output by the decoding unit 208. In this case, optimization is performed by comparing the data obtained by converting the first type of data in the training data into the second type with the data output by the decoding unit 208.
[0048] In this way, the update unit 212 performs parameter updates for the encoder and decoder using at least one of the first type and second type data. Preferably, the update unit 212 performs parameter updates using the second type data.
[0049] The output unit 214 outputs various parameters of the encoder and decoder that have been optimized by updating the parameters by the update unit 212. As with the estimation device 1, the output unit 214 may output the acquired data to an external device or to the storage unit 202.
[0050] When parameters and the like are stored in the storage unit 202, the training device 2 may be used as the estimation device 1 after training.
[0051] 4 is a chart showing the concept of the training process of the training device 2. The flow of the process of the training device 2 will be explained using this FIG.
[0052] First, the training device 2 acquires compound data x via the input unit 200. This data may be, for example, of the first type, i.e., data in a graphical representation.
[0053] Next, the decomposition unit 204 performs tree decomposition on this first type compound data to obtain second type data, that is, data in a tree representation with site information (S200).
[0054] Next, the encoding unit 206 inputs the second type data generated by the decomposing unit 204 to the encoder NN 220 to generate a latent representation z, which is third type data (S202).
[0055] Next, the decoding unit 208 inputs the latent expression z, which is the third type of data generated by the encoding unit 206, to the decoder NN 222 to obtain the second type of data (S204).
[0056] Next, the restoration unit 210 performs assembly from the second type data generated by the decoding unit 208 to obtain a graph representation of the compound, which is the first type data (S206).
[0057] Next, the update unit 212 updates the parameters of the encoder NN 220 and the decoder NN 222 based on the data restored by the restoration unit 210 (S208). As described above, the parameters may be updated based on the second type data generated by the decoding unit 208, rather than the first type data restored by the restoration unit 210. In this case, the process of S206 is not essential.
[0058] Then, the process ends by outputting the finally acquired parameters of the decoder NN 222. In this way, the training device 2 can generate information related to at least the decoder NN 222.
[0059] The output unit 214 may output not only the parameters of the decoder NN 222 but also the parameters of the encoder NN 220. In this case, the parameters of the encoder NN 220 can be used for further learning in the future.
[0060] The decoder NN 222 optimized by the training device 2 can be used as the decoder NN 120 in the estimation device 1. By using this trained inference model, the estimation device 1 can realize inference to generate the first type of data by specifying one point in the third type of data space.
[0061] (Tree decomposition) Next, the site-information-added tree decomposition in this disclosure will be described. The decomposition unit 204 and the reconstruction unit 210 of the training device 2 and the reconstruction unit 108 of the estimation device 1 perform conversion and assembly by tree decomposition, as described below.
[0062] The nodes decomposed into a tree become either singleton, bond, or ring nodes as mentioned above. There are four types of connections between nodes: bond-bond, bond-singleton (or singleton-bond), ring-bond (or bond-ring), and ring-ring.
[0063] Bond-bond is the case where two bonds connect to each other.
[0064] Bond-singleton is the case where one bond connects to a singleton which is a branch point.
[0065] A ring-bond is the case where one bond connects to a ring.
[0066] A ring-ring is when two rings are directly connected, either fused (connected by a single bond) or spiro-bonded (connected by only one atom).
[0067] When general tree decomposition is performed on a graph representation of a compound, information such as connection positions is lost in cases where rings are involved. Therefore, unique restoration is impossible using tree information alone. In this embodiment, in order to uniquely convert tree information and graph representation, node connection information indicating the connection relationships between nodes is added to the tree information as information about sites. As will be explained in detail later, this connection information includes, for example, information about the positions where nodes connect and information about the direction in which nodes connect.
[0068] The following describes in detail how the tree decomposition and assembly processes are performed for each of the above four cases.
[0069] Let us explain bond-bond connections. For example, if nodes CN and CN are connected by one edge, in the original graph representation, there are two possible cases: the bond nodes connect by sharing a carbon atom, and the bond nodes connect by sharing a nitrogen atom. In other words, in the tree representation, information about which atoms were shared in the original compound is lost, so the graph representation cannot be restored from the tree representation alone.
[0070] To deal with this, the decomposition unit 204 stores, as site information, which atoms are shared between nodes. By using this site information, the restoration units 108 and 210 can restore the graph representation.
[0071] In the case of bond-singleton connections, restoration is possible even with only a tree representation based on general tree decomposition. For example, if node CN and node C are connected by one edge, it can be determined that the two nodes share a carbon atom. Therefore, the restoration units 108 and 210 can obtain a graph representation without additional information.
[0072] In the case of ring-bond connections, in a typical tree decomposition, information about which atoms in the ring structure of the ring node the bond node is connected to is lost, so the graph representation cannot be reconstructed from the tree representation alone.
[0073] To address this, the decomposition unit 204 stores, as site information, the position of the ring to which the bond is connected, i.e., the atom to which the bond is connected. Based on this site information, the reconstruction units 108 and 210 can uniquely determine the connection position of the bond relative to the ring.
[0074] In the case of ring-ring connections, the situation is different between fused and spiro-bonded cases.
[0075] When two ring nodes are condensed, information about which bonds in the ring structure the two ring nodes share to condense is lost during tree decomposition. For this reason, the graph representation cannot be restored from the tree representation alone. To address this, the decomposition unit 204 stores which bonds were shared as site information. Furthermore, the direction in which the bond was connected is recorded as site direction information. By using this site information and site direction information, the restoration units 108 and 210 can restore the graph representation.
[0076] In the case of a spiro bond, the information about which atoms in the ring structure the two ring nodes share to bond with each other is lost during tree decomposition. For this reason, it is not possible to restore the graph representation from the tree representation alone. To address this, as in the case of ring-bond connections, it is possible to restore the graph by storing the site information about which atoms the two ring nodes share to connect with each other.
[0077] In this way, by adding site information regarding the connections to which the rings are related to the tree representation, it becomes possible to restore the tree representation to a graph representation. An example of site information will be described below.
[0078] The site information is determined appropriately in advance so that the partial atomic group of the compound represented by the node (two atoms connected by a covalent bond in the case of a bond node, and three or more atoms belonging to a ring structure in the case of a ring node) can be uniquely represented within the node. In the case of a bond node, for example, a numerical value such as 0 or 1 is assigned as site information to each atom included in the node. In the case of a ring node, for example, numbers are assigned so that all atoms are passed through in a clockwise direction from a reference atom. The reference atom whose site information is 0 may be, for example, the element name expressed in ASCII code and sorted in ascending order in a dictionary. Alternatively, it may be determined based on the atomic number.
[0079] For bond nodes with multiple candidates for 0, any atom may be set to 0. In the case of ring nodes, for example, when the atoms are arranged in numerical order from the candidate, the order may be such that the lowest ASCII code dictionary order is the one with the lowest atomic number, or the atomic number is arranged in order. In the case of atomic numbers, numbers of one to two digits may be used, or numbers extended to three digits may be used. For example, in the case of a ring node having six atoms, site information may be assigned to the lowest 18-digit number.
[0080] Furthermore, the present invention is not limited to the above, and any method may be used as long as the same site information is appropriately assigned to bond nodes or ring nodes having the same configuration. When assigning site information using the same method, in a node having symmetry such as a benzene ring, where there is no difference in dictionary order, any of the candidate atoms may be used as the reference.
[0081] In implementation, site information (including site direction information) may be added to all tree nodes. For example, in bond-singleton connections, site information may be set to any value or may be set to 0. In the following explanation, it is assumed that site information is added to all nodes. Of course, in bond-singleton connections, it is also possible to configure the system so that site information is not added.
[0082] First, the site information to be added will be described.
[0083] Fig. 5 is a diagram showing an example of site information. Fig. 5 shows site information related to bond-bond connections, but similar processing can be performed for bond-singleton cases. In the following diagram, circles indicate nodes, and arrows indicate directed edges with added features.
[0084] For example, node A and node B are both nodes that represent CN, and these nodes are connected. Carbon atoms (C) within the node are assigned the number 0, and nitrogen atoms (N) are assigned the number 1. There are two possible molecular structures represented by this tree representation: CH3NHCH3 and NH2CH2NH2, as shown in Figure 5. However, if 0 information is added to edge A → B and 0 information is added to edge B → A, the graph representation (compound) obtained by assembling this tree representation can be uniquely determined to be NH2CH2NH2.
[0085] Furthermore, for singletons, site information is not essential, but may be added in implementation.
[0086] The restoration units 108 and 210 perform restoration based on this site information.
[0087] 6 is a diagram showing an example of site information, which shows site information relating to a ring-bond connection, where node A is a ring and node B is a bond.
[0088] The "2" of node A is numbered starting from a specific atom in the ring of the graph of node A and going through all atoms. As shown in Figure 6, starting from S in the diagram, numbers are assigned in order from 0, 1, ..., 4. For node B, numbers are assigned from 0, 1, ..., 4, as in Figure 5.
[0089] The edge from node A to node B is assigned the number 2, which is the number of the connected atom, as site information, and the edge from node B to node A is assigned the number 0 as site information.
[0090] When such site information is available, the restoration units 108 and 210 can uniquely restore the graph on the right, rather than the graph on the left, in the diagram below from the tree information with the site information. For example, the restoration units 108 and 210 connect the atom at position 2 of node A based on the information of the edge from node A to node B, and the atom at position 0 of node B based on the information of the edge from node B to node A.
[0091] In the case of a connection between a ring and a bond, the reconstruction units 108 and 210 can uniquely reconstruct an atomic graph from tree information by adding the positions of the connecting atoms in the ring as site information as described above.
[0092] FIG. 7 is a diagram showing an example of site information, showing site information related to a ring-ring condensed connection. Both node A and node B are rings. For example, node A is a six-membered aromatic compound, and node B is a five-membered aromatic compound.
[0093] Node A is assigned numbers from 0 to 5 in order from a certain edge in the atomic graph. Similarly, node B is assigned numbers from 0 to 4. Unlike the case in Figure 6, numbers that serve as site information are assigned to the edges of the atomic graph, not to the nodes of the atomic graph.
[0094] In the case of a condensed connection, the number of the edge in the atomic graph and the direction of the connection are specified as the site information of the node. For example, the number 0 and the direction +1 are added as the site information of the edge A → B. Similarly, the number 3 and the direction +1 are added as the site information of the edge B → A. The direction means, for example, whether the connections are made in the order in which the numbers are added, or in the reverse order. For example, the direction is assigned clockwise, but this is just an example, and it can also be counterclockwise as long as it can be uniquely specified.
[0095] 7, if the site information of edge A → B is 0 (+1) and the site information of edge B → A is 3 (+1), node A is connected to 0 in the atomic graph in the + direction, and node B is connected to 3 in the atomic graph in the + direction. Therefore, the restoration units 108 and 210 can uniquely restore the connection state to the lower right side of the diagram.
[0096] In the example case of Figure 7, if the site information of edge A → B is 0 (+1), the site information of edge B → A may be 1 (-1) to indicate the same connection. In this way, there may be multiple ways to assign site information for the same connection, but it is sufficient if the atomic graph can be uniquely decoded from the tree information including the site information.
[0097] 8 is a diagram showing an example of site information, and shows site information relating to a ring-ring spiro connection. Node A and node B are both rings, and have the same configuration as in FIG.
[0098] In the case of spiro connections, the site direction information is set to 0. When restoring a tree representing a ring-ring structure to a graph, the restoration units 108 and 210 may first refer to the site direction information. If the site direction information is 0, as shown in FIG. 8, the restoration units 108 and 210 determine that the site information indicates the atom number and restore the graph information by connecting the specified atoms. On the other hand, if the site direction information is ±1, the restoration units 108 and 210 restore the graph information by connecting the edges based on the case in FIG. 7.
[0099] (Training method) By performing tree decomposition with site information added as described above, the training method for neural network models (encoder NN, decoder NN) is also changed from the usual machine learning method.
[0100] As an example, we use TreeGRU (Tree Gated Recurrent Unit) to train the site-attached information, but it can also be implemented using, for example, Tree LSTM (Tree Long Short Term Memory). TreeGRU uses the method shown in W. Jin, et al., "Junction Tree Variational Autoencoder for Molecular Graph Generation," arXiv:1802.04364v4, March 29, 2019. For example, this TreeGRU can optimize the autoencoder using VAE. These are just examples; any appropriate network formation and optimization method can be applied.
[0101] In this embodiment, the training can be expressed by the following formula:
number
number
number
number
number
number
[0102] EdgeTreeGRU() in formula (1) is a GRU designed to input and output a tree representation with site information as a message. x is a vector indicating features that indicate the type of node, etc., and is expressed, for example, as a one-hot vector. e is a vector indicating features of edge information, i.e., site information (including site direction information), and is expressed, for example, as a one-hot vector. h is a message vector between nodes. In this way, by defining a feature vector that includes site information and providing the message vector between nodes as the hidden vector of the GRU, processing can be performed in the same way as a GRU.
[0103] In each equation, σ() denotes a sigmoid function, odot denotes the product of elements, W and U denote weights, and b denotes a bias term.
[0104] The message vector h is calculated according to equations (1) to (6). Here, the site information is concatenated and calculated so that the information is included in the message vector of the GRU, as shown in equations (2), (4), and (5).
[0105] The encoding unit 206 uses EdgeTreeGRU() in the above formula (1) as a network representing the GRU to form an encoder NN 220. Similarly, the decoding unit 208 uses EdgeTreeGRU() to form a decoder NN 222. The decoding unit 208 decodes the site information as well as the graph information based on the following formula:
number
number
number
number
number
[0106] In each equation, u and W represent weights.
[0107] In equation (7), τ() represents ReLU. In decoding a node, the decoding unit 208 calculates the probability that the node has a child node based on equation (7), using the output z from the previous step, the feature x of the node, and the received message h.
[0108] In equation (8), q indicates the characteristics of the node when a child node is generated.
[0109] Furthermore, in this embodiment, the decoding unit 208 infers site information and site direction information in addition to inferring the above tree node information.
[0110] The decoding unit 208 calculates intermediate variables using the output of the previous step and the input message based on equation (9).
[0111] Furthermore, the decoding unit 208 obtains site information from the result of equation (9) and the weight based on equation (10), and infers site direction information from the result of equation (9) and the weight based on equation (11).
[0112] As a result, the decoding unit 208 obtains site-attached tree information from the latent variables. The above describes the operation of the encoding unit 206 and the decoding unit 208 as autoencoders, but it is also possible to use only the decoding NN. In the estimation device 1, the decoding unit 106 obtains site-attached tree information based on the calculations of equations (7) to (11) for the latent variables.
[0113] The update unit 212 calculates an evaluation value (loss) of the training data and the encoded and decoded tree information based on the above equation, and updates the weights U, W, u of each equation and, in some cases, the bias b based on this evaluation value. The loss is expressed, for example, by the following equation:
number
number
[0114] p_hat, q_hat, s_hat, and d_hat represent the grand truth values for the predicted values p, q, s, and d, respectively. s , w d is a hyperparameter for adjusting the balance between site information and site direction information, and must be set appropriately. Each L is a loss function that is set appropriately for each variable. In equation (13), a loss function modified to utilize site tagging information is defined, which is equation (12), which is the loss function for general TLSTM.
[0115] The update unit 212 updates the network parameters so as to minimize the cross-entropy loss shown in equation (13). By repeating this operation, the update unit 212 optimizes the encoder NN 220 and the decoder NN 222 (decoder NN 120). For example, q_hat can be obtained by the decomposition unit 204 performing site-attached tree decomposition on the atomic graph obtained as training data.
[0116] The optimization by the update unit 212 is performed using a common method. For example, a teacher forcing method, in which correct answer data is input to the next step of the GRU, may be used. Of course, other methods such as scheduled sampling and professor forcing may also be used.
[0117] (encoding) Having explained site information using Figures 5 to 8, we will now explain how to encode this site information. By using the encoding shown below, it is possible to execute training that reflects tree information with site information in the above training. When an atomic graph is input, the decomposition unit 204 adds site information and site direction information to nodes that will become bonds, singletons, and rings at the time of tree decomposition.
[0118] (one way) The site information may be assigned in one direction. The decomposition unit 204 encodes one side of the site information for one edge. There are two methods: encoding the site information on the departure side of the edge, and encoding the site information on the arrival side of the edge.
[0119] When encoding site information on the departure side of an edge, the site information is encoded by adding (site of node A, site direction) as edge features to the edge from node A to node B.
[0120] For example, the site information assigned to the edge from node A to node B in FIG. 6 is encoded as (2, 0), and the site information assigned to the edge from node B to node A is encoded as (0, 0).
[0121] 7, the site information assigned to the edge from node A to node B is (0, +1), and the site information assigned to the edge from node B to node A is (3, +1). Also, the site information assigned to the edge from node B to node A may be (1, -1).
[0122] For example, the site information assigned to the edge from node A to node B in Figure 8 is (0, 0), and the site information assigned to the edge from node B to node A is (3, 0). In this case, as described above, by setting the site direction to 0, it is indicated that it is a spiro connection, and it can be read that the information indicated by the site is not an edge of the graph, but a node of the graph.
[0123] When encoding site information on the arrival side of an edge, the site information is encoded by adding (site of node B, site direction) as edge features to the edge from node A to node B.
[0124] For example, the site information assigned to the edge from node A to node B in FIG. 6 is encoded as (0, 0), and the site information assigned to the edge from node B to node A is encoded as (2, 0).
[0125] For example, the site information assigned to the edge from node A to node B in FIG. 7 is (3, +1), and the site information assigned to the edge from node B to node A is (0, +1).
[0126] In this way, site information can be assigned using information seen from the node itself. Also, for example, in the situation shown in Figure 6, if one site information is available, the other site information is not required. For example, since the connecting atoms are the same atom, the same atom can be extracted from one site information in the other node and the result can be used as the site information. In this way, depending on the situation, site information may be omitted.
[0127] (bidirectional) Furthermore, instead of providing site information only on the node side or the other node side as described above, site information on both sides may be provided as edge features. In other words, site information on both sides may be encoded into one directed edge.
[0128] For example, the site information assigned to the edge from node A to node B in FIG. 6 is encoded as (2, 0, 0), and the site information assigned to the edge from node B to node A is encoded as (0, 2, 0).
[0129] For example, the site information assigned to the edge from node A to node B in FIG. 7 is encoded as (0, 3, +1), and the site information assigned to the edge from node B to node A is encoded as (3, 0, +1).
[0130] The site direction may be calculated, for example, by the numbers assigned to the nodes of the graph. Adjacent atomic nodes in node A are defined as ai and aj (i, j are atomic node numbers, where i < j, or i is the maximum atomic node number and j = 0). Adjacent atomic nodes in node B are defined as bl and bk (l, k are atomic node numbers). In this case, consider, as an example, the case where the ai-aj bond and the bl-bk bond are connected.
[0131] If l < k, the site direction is set to +1. For example, the site information of the edge from node A to node B is (i, l, +1). On the other hand, if l > k, the site direction is set to -1. For example, the site information of the edge from node A to node B is (i, l, -1). However, if one of l and k is 0 and the other is the maximum value of the atomic node number, the opposite is true.
[0132] By acquiring the site direction information in this way, it becomes possible to restore the uniquely decomposed tree information into a graph. Note that the above-mentioned method of assigning site directions is described as an example, and any appropriate assignment method that can uniquely convert site direction information into a graph for bonds that are condensed and connected within a ring may be used.
[0133] In this case as well, in the case of FIG. 6, if one site information is present, the other site information is not essential.
[0134] In training, it is desirable to use bidirectional site information, but this is not a limitation. This is thought to be because, in decoding, bidirectional site information allows information about nodes connected to a node to be read from both nodes, rather than being given by information from the other node.
[0135] In the estimation device 1 or the training device 2, the restoration unit 108, 210 reconstructs an atomic graph based on the site-attached tree information output by the decoding unit. For example, nodes may be restored sequentially from one node of the graph using an autoregressive method. In this embodiment, site information is present in addition to tree information, so that inference from each node to the next node can be uniquely determined. Node inference can be achieved by performing the reverse operation of the above-mentioned site information assignment.
[0136] 9 is a diagram illustrating the reconstruction of an atomic graph. The tree structure may be generated by a method similar to an autoregressive model of a recurrent neural network (RNN).
[0137] First, the restoration unit generates node 1 from the acquired latent vector as a predetermined starting node using the neural network model of the decoding unit.
[0138] Next, the restoration unit autoregressively generates node 2 based on the latent vector and information about node 1. In this step, as shown on the right side of the figure, a tree structure connecting node 1 and node 2 is obtained. To generate node 2, a neural network model having an autoregressive configuration, such as represented by an RNN, may be used.
[0139] The restoration unit repeats this operation until all nodes (for example, nodes up to node N) are generated. This repeated operation makes it possible to obtain a tree structure, that is, a molecular structure.
[0140] As described above, according to this embodiment, by adding site information at the timing of tree decomposition from an atomic graph, it is possible to uniquely realize restoration from tree information to an atomic graph. In this embodiment, a site-attached tree decomposition method is proposed as a method for solving unique restoration. Furthermore, it has been explained that an autoencoder can be used as a method for inferring this site-attached tree decomposition information from latent variables.
[0141] By using the method of this embodiment, it is possible to quickly restore atomic graph information from tree information. Therefore, by learning the mapping from latent representations to compounds, it is possible to construct a molecular generation model that can be used to design new compounds. Such a model can be constructed quickly for a variety of compound groups. Furthermore, by using the learned model, it becomes possible to quickly generate and design new compounds. This model can be applied to drug discovery and material discovery.
[0142] All of the above trained inference models may be concepts that include, for example, models that have been trained as described and then further distilled using general techniques.
[0143] A part or all of each device (estimation device 1 or training device 2) in the above-described embodiments may be configured as hardware, or may be configured as software (program) information processing executed by a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit), etc. In the case of software information processing, software that realizes at least some of the functions of each device in the above-described embodiments may be stored on a non-transitory storage medium (non-transitory computer-readable medium) such as a flexible disk, a CD-ROM (Compact Disc-Read Only Memory), or a USB (Universal Serial Bus) memory, and the software information processing may be executed by reading the software. Alternatively, the software may be downloaded via a communication network. Furthermore, the software may be implemented in a circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array), thereby executing the information processing by hardware.
[0144] The type of storage medium that stores the software is not limited. The storage medium is not limited to removable media such as magnetic disks or optical disks, but may be fixed storage media such as hard disks or memory. The storage medium may be provided inside the computer or outside the computer.
[0145] 10 is a block diagram showing an example of the hardware configuration of each device (estimation device 1 or training device 2) in the above-described embodiment. Each device may be realized as a computer 7 including, for example, a processor 71, a main storage device 72 (memory), an auxiliary storage device 73 (memory), a network interface 74, and a device interface 75, which are connected via a bus 76.
[0146] Although the computer 7 in FIG. 10 includes one of each component, it may also include multiple of the same component. Although FIG. 10 shows one computer 7, the software may be installed on multiple computers, and each of the multiple computers may execute the same or different parts of the software. In this case, a distributed computing configuration may be used in which the computers communicate with each other via a network interface 74 or the like to execute the processing. That is, each device (estimation device 1 or training device 2) in the above-described embodiment may be configured as a system in which one or more computers execute instructions stored in one or more storage devices to realize its functions. Furthermore, the system may be configured such that information transmitted from a terminal is processed by one or more computers provided on a cloud, and the processing results are transmitted to the terminal.
[0147] The various calculations of each device (estimation device 1 or training device 2) in the above-described embodiments may be executed in parallel using one or more processors, or using multiple computers via a network. Furthermore, the various calculations may be distributed to multiple processing cores within a processor and executed in parallel. Furthermore, some or all of the processes, means, etc. of the present disclosure may be executed by at least one of a processor and a storage device provided on a cloud that can communicate with computer 7 via a network. Thus, each device in the above-described embodiments may be implemented in the form of parallel computing using one or more computers.
[0148] The processor 71 may be an electronic circuit (processing circuit, processing circuitry, CPU, GPU, FPGA, ASIC, etc.) including a computer control device and arithmetic device. The processor 71 may also be a semiconductor device including a dedicated processing circuit. The processor 71 is not limited to an electronic circuit using electronic logic elements, but may also be realized by an optical circuit using optical logic elements. The processor 71 may also include an arithmetic function based on quantum computing.
[0149] The processor 71 performs arithmetic processing based on data and software (programs) input from each device, etc. configured inside the computer 7, and can output the arithmetic results and control signals to each device, etc. The processor 71 may control each component constituting the computer 7 by executing the OS (Operating System) of the computer 7, applications, etc.
[0150] Each device (estimation device 1 or training device 2) in the above-described embodiment may be realized by one or more processors 71. Here, the processor 71 may refer to one or more electronic circuits arranged on one chip, or may refer to one or more electronic circuits arranged on two or more chips or two or more devices. When multiple electronic circuits are used, the respective electronic circuits may communicate with each other via wire or wirelessly.
[0151] The main memory device 72 is a memory device that stores instructions executed by the processor 71, various data, etc., and information stored in the main memory device 72 is read by the processor 71. The auxiliary memory device 73 is a memory device other than the main memory device 72. Note that these memory devices refer to any electronic component that can store electronic information, and may be semiconductor memory. The semiconductor memory may be either volatile memory or non-volatile memory. The memory device for saving various data in each device (estimation device 1 or training device 2) in the above-mentioned embodiments may be realized by the main memory device 72 or the auxiliary memory device 73, or may be realized by an internal memory built into the processor 71. For example, the memory units 102 and 202 in the above-mentioned embodiments may be realized by the main memory device 72 or the auxiliary memory device 73.
[0152] Multiple processors may be connected (coupled) to one storage device (memory), or a single processor may be connected. Multiple storage devices (memories) may be connected (coupled) to one processor. When each device (estimation device 1 or training device 2) in the above-described embodiments is configured with at least one storage device (memory) and multiple processors connected (coupled) to this at least one storage device (memory), a configuration may be included in which at least one of the multiple processors is connected (coupled) to at least one storage device (memory). This configuration may also be realized by storage devices (memories) and processors included in multiple computers. Furthermore, a configuration in which a storage device (memory) is integrated with a processor (for example, a cache memory including an L1 cache and an L2 cache) may be included.
[0153] The network interface 74 is an interface for connecting to the communication network 8 wirelessly or via a wire. The network interface 74 may be an appropriate interface, such as one that conforms to an existing communication standard. Information may be exchanged with an external device 9A connected via the communication network 8 via the network interface 74. The communication network 8 may be any one of a WAN (Wide Area Network), a LAN (Local Area Network), a PAN (Personal Area Network), etc., or a combination thereof, as long as information is exchanged between the computer 7 and the external device 9A. An example of a WAN is the Internet, an example of a LAN is IEEE802.11 or Ethernet (registered trademark), and an example of a PAN is Bluetooth (registered trademark) or NFC (Near Field Communication), etc.
[0154] The device interface 75 is an interface such as a USB that directly connects to the external device 9B.
[0155] The external device 9A is a device connected to the computer 7 via a network. The external device 9B is a device connected directly to the computer 7.
[0156] For example, the external device 9A or the external device 9B may be an input device. The input device may be a device such as a camera, a microphone, a motion capture device, various sensors, a keyboard, a mouse, or a touch panel, and provides acquired information to the computer 7. Alternatively, the external device 9A or the external device 9B may be a device equipped with an input unit, a memory, and a processor, such as a personal computer, a tablet terminal, or a smartphone.
[0157] Furthermore, the external device 9A or the external device 9B may be, for example, an output device. The output device may be, for example, a display device such as an LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), a PDP (Plasma Display Panel), or an organic EL (Electro Luminescence) panel, or may be a speaker that outputs sound or the like. Alternatively, the output device may be a device including an output unit, a memory, and a processor, such as a personal computer, a tablet terminal, or a smartphone.
[0158] Furthermore, the external device 9A or the external device 9B may be a storage device (memory). For example, the external device 9A may be a network storage or the like, and the external device 9B may be a storage such as an HDD.
[0159] Furthermore, the external device 9A or the external device 9B may be a device having some of the functions of the components of each device (the estimation device 1 or the training device 2) in the above-described embodiments. In other words, the computer 7 may transmit or receive some or all of the processing results of the external device 9A or the external device 9B.
[0160] In this specification (including the claims), when the expression "at least one of a, b, and c" or "at least one of a, b, or c" (including similar expressions) is used, it includes any of a, b, c, ab, ac, bc, or abc. It may also include multiple instances of any element, such as aa, abb, aabbcc, etc. Furthermore, it also includes the addition of elements other than the enumerated elements (a, b, and c), such as having d, as in abcd.
[0161] In this specification (including the claims), when expressions such as "using data as input / based on / according to / in response to" (including similar expressions) are used, unless otherwise specified, this includes cases where various data itself is used as input, or where various data that has been processed in some way (e.g., noise-added, normalized, intermediate representation of various data, etc.) is used as input. Furthermore, when a statement is made that a result is obtained "based on / according to / in response to data," this includes cases where the result is obtained based solely on the data in question, as well as cases where the result is obtained as a result of being influenced by other data, factors, conditions, and / or states other than the data in question. Furthermore, when a statement is made that "data is output," this includes cases where various data itself is used as output, or where various data that has been processed in some way (e.g., noise-added, normalized, intermediate representation of various data, etc.) is output, unless otherwise specified.
[0162] When the terms "connected" and "coupled" are used in this specification (including the claims), they are intended as open-ended terms that encompass any of direct connection / coupling, indirect connection / coupling, electrically connection / coupling, communicatively connection / coupling, functionally connection / coupling, and physically connection / coupling. These terms should be interpreted appropriately according to the context in which they are used, but any form of connection / coupling that is not intentionally or naturally excluded should be interpreted as being included in these terms without limitation.
[0163] In this specification (including the claims), the expression "A configured to B" may include the physical structure of element A having a configuration capable of performing operation B, and the permanent or temporary setting / configuration of element A being configured / set to actually perform operation B. For example, if element A is a general-purpose processor, it is sufficient that the processor has a hardware configuration capable of performing operation B, and is configured to actually perform operation B by setting a permanent or temporary program (instruction). Also, if element A is a dedicated processor or dedicated arithmetic circuit, it is sufficient that the circuit structure of the processor is implemented to actually perform operation B, regardless of whether control instructions and data are actually attached.
[0164] When used in this specification (including the claims), terms implying containing or possessing (e.g., "comprising / including" and "having") are intended to be open-ended terms that include containing or possessing things other than the object designated by the object of the term. When the object of such a term implies no quantity or a singular number (e.g., an article such as "a" or "an"), the expression should be construed as not being limited to a specific number.
[0165] In this specification (including the claims), even if expressions such as "one or more" or "at least one" are used in some places and expressions that do not specify a quantity or that imply a singular number (expressions using the articles "a" or "an") are used in other places, the latter expressions are not intended to mean "one." In general, expressions that do not specify a quantity or that imply a singular number (expressions using the articles "a" or "an") should be interpreted as not necessarily being limited to a specific number.
[0166] In this specification, when a particular advantage / result is described as being obtained from a particular configuration of an embodiment, it should be understood that the same advantage / result can also be obtained from one or more other embodiments having the same configuration, unless otherwise stated. However, it should be understood that the presence or absence of the effect generally depends on various factors, conditions, and / or states, etc., and that the effect is not necessarily obtained by the configuration. The effect is merely obtained by the configuration described in the embodiment when various factors, conditions, and / or states, etc. are satisfied, and the effect does not necessarily occur in a claimed invention that defines the same or a similar configuration.
[0167] When used in this specification (including the claims), terms such as "maximize" include finding a global maximum, finding an approximation of a global maximum, finding a local maximum, and finding an approximation of a local maximum, and should be interpreted appropriately according to the context in which the term is used. It also includes finding approximations of these maxima probabilistically or heuristically. Similarly, when used in this specification (including the claims), terms such as "minimize" include finding a global minimum, finding an approximation of a global minimum, finding a local minimum, and finding an approximation of a local minimum, and should be interpreted appropriately according to the context in which the term is used. It also includes finding approximations of these minima probabilistically or heuristically. Similarly, when used in this specification (including the claims), terms such as "optimize" include finding a global optimum, finding an approximation of a global optimum, finding a local optimum, and finding an approximation of a local optimum, and should be interpreted appropriately according to the context in which the term is used. It also includes finding approximations of these optima probabilistically or heuristically.
[0168] In this specification (including claims), when multiple pieces of hardware perform a predetermined process, the pieces of hardware may cooperate to perform the predetermined process, or some of the hardware may perform all of the predetermined process. Furthermore, some of the hardware may perform part of the predetermined process, and other hardware may perform the rest of the predetermined process. In this specification (including claims), when an expression such as "one or more pieces of hardware perform a first process, and the one or more pieces of hardware perform a second process" is used, the hardware performing the first process and the hardware performing the second process may be the same or different. In other words, it is sufficient that the hardware performing the first process and the hardware performing the second process are included in the one or more pieces of hardware. Note that the hardware may include an electronic circuit, a device including an electronic circuit, or the like.
[0169] Although the embodiments of the present disclosure have been described in detail above, the present disclosure is not limited to the individual embodiments described above. Various additions, modifications, substitutions, partial deletions, etc. are possible within the scope of the conceptual idea and spirit of the present invention derived from the content defined in the claims and their equivalents. For example, in all of the above-described embodiments, when numerical values or formulas are used in the explanation, they are shown as examples and are not limited to these. Furthermore, the order of each operation in the embodiments is shown as an example and is not limited to these. [Explanation of symbols]
[0170] 1: Estimation device, 100: Input section, 102: Memory section, 104: Search Department, 106: Decoder, 108: Restoration department, 110: output unit, 2: Training equipment, 200: Input section, 202: Memory section, 204: Decomposition part, 206: Encoding section, 208: Decoding section, 210: Restoration section, 212: Update Department, 214: Output section
Claims
1. one or more memories; one or more processors; the one or more processors: Generate tree information including node information and edge information using the latent representation and the generative model; Generate a graph from the tree information; the tree information includes connection information of the nodes; The node connection information includes information on the connection position of the node connected to the edge and information on the connection direction of the node. Estimation device.
2. the graph is a graph of a molecular structure; The estimation device according to claim 1 .
3. The node a singleton node representing an atom indicating a branch point in the graph of said molecular structure; Bond nodes represent non-singleton nodes among non-cyclic atomic nodes. Ring nodes representing cyclic atomic structures, and The connection of the nodes is Singleton and bond nodes, Bond nodes and bond nodes, Bond nodes and ring nodes, Ring node and ring node, including one of the following: The estimation device according to claim 2 .
4. one or more memories; one or more processors; the one or more processors: Generate tree information including node information and edge information using the latent representation and the generative model; Generate a graph from the tree information; the tree information includes connection information of the nodes; the graph is a graph of a molecular structure, the nodes include at least a ring node representing a cyclic atomic structure; The connection of the nodes includes at least a ring node and a ring node; The node connection information includes information on the direction of the connecting bond when ring nodes share and connect bonds belonging to both ring nodes. Estimation device.
5. The node connection information includes information on the connection position of the node to which the edge connects and information on the connection direction of the node, The estimation device according to claim 4 .
6. the one or more processors: generating the latent representation from a second latent representation including information of a second tree having node information and edge information; The estimation device according to any one of claims 1 to 5.
7. the one or more processors: generating the latent representation using random values; The estimation device according to any one of claims 1 to 5.
8. the one or more processors: Generate multiple tree information in parallel from multiple latent representations. The estimation device according to any one of claims 1 to 7.
9. the latent representation includes latent variables; The estimation device according to any one of claims 1 to 8.
10. The generative model is a neural network having an autoregressive configuration. The estimation device according to any one of claims 1 to 9.
11. the one or more processors: generating the tree information in an autoregressive manner using the neural network; The estimation device according to claim 10.
12. the one or more processors: inputting the latent representation and information of the generated nodes into the neural network; The estimation device according to claim 11.
13. one or more memories; one or more processors; the one or more processors: obtaining information on a first tree from the first graph, the information including information on a first node and information on a first edge; generating a latent representation using information from the first tree and the first model; generating second tree information including second node information and second edge information using the latent representation and the second model; updating at least parameters of the first model or parameters of the second model based on at least a comparison result between the first graph and a second graph corresponding to information on the second tree, or a comparison result between information on the first tree and information on the second tree; the information on the first tree includes connection information on the first node; the connection information of the first node includes information on the connection position of the first node connected to the first edge and information on the connection direction of the first node; training equipment.
14. The connection information of the first node includes information on the direction of the connecting bond when the connection type of the first node is a ring node and a ring node, and these ring nodes are connected by sharing a bond belonging to both ring nodes.
14. The training device of claim 13.
15. one or more memories; one or more processors; the one or more processors: obtaining information on a first tree from the first graph, the information including information on a first node and information on a first edge; generating a latent representation using information from the first tree and the first model; generating second tree information including second node information and second edge information using the latent representation and the second model; updating at least parameters of the first model or parameters of the second model based on at least a comparison result between the first graph and a second graph corresponding to information on the second tree, or a comparison result between information on the first tree and information on the second tree; the information on the first tree includes connection information on the first node; The connection information of the first node includes information on the direction of the connecting bond when the connection type of the first node is a ring node and a ring node, and these ring nodes are connected by sharing a bond belonging to both ring nodes. training equipment.
16. The connection information of the first node includes information on the connection position of the first node to which the first edge connects and information on the connection direction of the first node.
16. The training device of claim 15.
17. The second model is a neural network having an autoregressive configuration. A training device according to any one of claims 13 to 16.
18. one or more processors Generate tree information including node information and edge information using the latent representation and the generative model; Generate a graph from the tree information; the tree information includes connection information of the nodes; The node connection information includes information on the connection position of the node connected to the edge and information on the connection direction of the node. Estimation method.
19. one or more processors Generate tree information including node information and edge information using the latent representation and the generative model; Generate a graph from the tree information; the tree information includes connection information of the nodes; the graph is a graph of a molecular structure, the nodes include at least a ring node representing a cyclic atomic structure; The connection of the nodes includes at least a ring node and a ring node; The node connection information includes information on the direction of the connecting bond when ring nodes share and connect bonds belonging to both ring nodes. Estimation method.
20. one or more processors obtaining information on a first tree from the first graph, the information including information on a first node and information on a first edge; generating a latent representation using information from the first tree and the first model; generating second tree information including second node information and second edge information using the latent representation and the second model; updating at least parameters of the first model or parameters of the second model based on at least a comparison result between the first graph and a second graph corresponding to the information on the second tree, or a comparison result between the information on the first tree and the information on the second tree; the information on the first tree includes connection information on the first node; the connection information of the first node includes information on the connection position of the first node connected to the first edge and information on the connection direction of the first node; Model generation method.
21. one or more processors obtaining information on a first tree from the first graph, the information including information on a first node and information on a first edge; generating a latent representation using information from the first tree and the first model; generating second tree information including second node information and second edge information using the latent representation and the second model; updating at least parameters of the first model or parameters of the second model based on at least a comparison result between the first graph and a second graph corresponding to information on the second tree, or a comparison result between information on the first tree and information on the second tree; the information on the first tree includes connection information on the first node; The connection information of the first node includes information on the direction of the connecting bond when the connection type of the first node is a ring node and a ring node, and these ring nodes are connected by sharing a bond belonging to both ring nodes. Model generation method.
22. Causing one or more processors to perform a method according to any one of claims 18 to 21. program.
Citation Information
Patent Citations
Information processing device, information processing method, and information processing program
WO2018078735A1