IP Library › Granted Patent US 11,593,660
Granted Patent B2
US 11,593,660 · App. 16/134,624 · Granted Feb 28, 2023

Subset conditioning using variational autoencoder with a learnable tensor train induced prior

Inventors: Aleksandr Aliper (Moscow, RU); Aleksandrs Zavoronkovs (Rockville, MD); Alexander Zhebrak (Moscow, RU); Daniil Polykovskiy (Moscow, RU); Maksim Kuznetsov (Moscow, RU); Yan Ivanenkov (Moscow, RU); Mark Veselov (Moscow, RU); Vladimir Aladinskiy (Moscow, RU); Evgeny Putin (Saint Petersburg, RU); Yuriy Volkov (Saint Petersburg, RU); Arip Asadulaev (Saint Petersburg, RU)
Assignee: INSILICO MEDICINE IP LIMITED
G06N3/088G06K9/6251G06K9/6262G06V20/69
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,593,660
App. No.
16/134,624
Granted
Feb 28, 2023
Kind
B2
Abstract

The proposed model is a Variational Autoencoder having a learnable prior that is parametrized with a Tensor Train (VAE-TTLP). The VAE-TTLP can be used to generate new objects, such as molecules, that have specific properties and that can have specific biological activity (when a molecule). The VAE-TTLP can be trained in a way with the Tensor Train so that the provided data may omit one or more properties of the object, and still result in an object with a desired property.

Claims (132)

1. A method for training a model to generate an object, the method comprising:

providing a model configured as a variational autoencoder with a learnable prior, wherein the learnable prior is parameterized by a tensor train decomposition;

providing a dataset having object data for an object and property data for a property of the object;

processing the object data of the dataset to obtain latent object data with an object encoder of the model, wherein the latent object data includes a distribution of latent variables having a mean and a variance;

sampling one or more latent variables from the obtained distribution of latent variables;

processing the sampled one or more latent variables with defined object properties to compute a probability of the samples having the defined object properties;

processing the sampled one or more latent variables through an object decoder to obtain a reconstructed object;

determining a reconstruction loss of the reconstructed object from an original object from the object data;

computing a Kullback-Leibler divergence from the probability of the samples having the defined object properties;

using the determined reconstruction loss and computed Kullback-Leibler divergence to compute a loss from the data set;

performing a gradient descent until the reconstructed object is sufficiently representative of the original object and has the defined object properties;

obtaining a trained model configured as a trained variational autoencoder with the learnable prior that is parameterized with the tensor train decomposition; and

providing the trained model.

2. The method of claim 1 , further comprising for a plurality of objects in the dataset:

process object data with the object encoder to obtain latent variable distributions;

sample one or more latent variables from the obtained latent variable distributions;

process the sampled one or more latent variables with a decoder to obtain the reconstructed object;

obtain a logarithm of probability that the sampled one or more latent variables have a defined property;

compute entropy of the obtained latent variable distributions;

compute logarithm of the logarithm of probability to obtain an obtained logarithm probability;

subtract the obtained logarithm probability from the entropy to obtain an approximation of the Kullback-Leibler divergence;

subtract approximation of the Kullback-Leibler divergence from the logarithm of probability; and

obtain an estimated lower bound objective for variational interference.

3. The method of claim 2 , further comprising:

first, computing a mean of all estimated lower bound objectives on all objects of the dataset; and

second, performing the gradient descent.

4. The method of claim 1 , further comprising:

defining one or more conditions for the objects; and

allowing one or more undefined conditions for the objects to have arbitrary initial values.

5. The method of claim 1 , wherein the computing of the probability of the samples having the defined object properties includes:

computing probability of object properties for the object with a tensor train distribution;

computing probability of both object properties and the latent code with a tensor train distribution; and

computing probability of the latent code conditioned on object properties by conditional probability formula.

6. The method of claim 1 , wherein the computing probability of both object properties and the latent code with a tensor train distribution includes:

set a buffer to an identity (eye) matrix;

determining whether an object property is discrete or continuous or undefined;

when the object property is discrete, computing a dot product with onehot (y j ) along middle index, wherein y j is the object property;

when the object property is continuous, computing a dot product with [N(y j |mu i , std i ), for all i] along middle index, wherein mu i is a mean of i and std i is a standard deviation of i-th normal component of mixture along j-th latent component;

when the object property is missed, computing a dot product with (1, 1, . . . , 1) along the middle index (perform manginalising),

from the obtained matrix, make the dot product with the buffer to obtain a new buffer; and

if all components are handled, compute trace of new buffer and set the trace as probability of (y 1 , . . . , y n ).

7. The method of claim 1 , further comprising further training the trained model with reinforced leaning, wherein the reinforced learning produces the reconstructed objects having a defined characteristic.

8. The method of claim 7 , wherein the training of the trained model with the reinforcement learning includes:

discarding the object encoder;

fixing weights of all layers of the object decoder except for a first layer of the object decoder;

performing the following steps until convergence:

estimate a mean and variance for each dimension of a previously obtained distribution of latent variables, the previously obtained distribution of latent variables being defined as a learnable prior;

obtain an exploration latent variable for each dimension from outside of the latent variables produced by learnable prior;

pass the exploration latent variable through the decoder to obtain a reconstructed object based on the exploration latent variable;

compute rewards for the reconstructed object based on at least one defined reward; and

apply a single gradient ascent step to maximize a total reward with respect to parameters of the learned prior and first layer of the decoder.

9. The method of claim 8 , when the object is a molecule, the reward includes:

a general biological activity self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with a biological activity in a biological pathway;

a specific biological activity self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with a biological activity with a specific biological substance; and

a trend self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with chemical motifs that devolved within a defined timeframe.

10. The method of claim 9 , wherein:

wherein the general biological activity self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with a biological activity in a kinase biological pathway;

a specific biological activity self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with a biological activity with a DDR1 kinase; and

a trend self-organizing Kohonen map which provides a reward for reconstructed objects that are molecules with chemical moieties that developed within a defined timeframe.

11. A method of generating an object with a desired property, comprising:

obtaining the trained model of claim 1 ;

identify a desired object property;

obtaining a latent code from a tensor train-induced joint distribution conditioned on the desired object property;

generating the object with the desired object property with the decoder; and

providing the generated object with the desired object property.

12. The method of claim 11 , comprising:

obtaining a plurality of generated objects with the desired object property;

filtering the plurality of generated objects based on one or more parameters; and

selecting one or more generated objects based on the filtering.

13. The method of claim 12 , comprising:

selecting a generated object;

obtaining a physical form of the selected generated object; and

validating the physical form of the selected generated object.

14. The method of claim 11 , comprising:

selecting a provided generated object;

obtaining a physical form of the selected generated object; and

validating the physical form of the selected generated object.

15. A method of generating an object with a desired property, comprising:

obtaining the trained model of claim 8 ;

identify a desired object property;

obtaining a latent code from a tensor train distribution conditioned on the desired object property;

generating the object with the desired object property with the decoder; and

providing the generated object with the desired object property.

16. The method of claim 15 , comprising:

obtaining a plurality of generated objects with the desired object property;

filtering the plurality of generated objects based on one or more parameters; and

selecting one or more generated objects based on the filtering.

17. The method of claim 16 , comprising:

selecting a generated object;

obtaining a physical form of the selected generated object; and

validating the physical form of the selected generated object.

18. The method of claim 15 , comprising:

selecting a provided generated object;

obtaining a physical form of the selected generated object; and

validating the physical form of the selected generated object.

19. The method of claim 11 , further comprising:

obtaining a learnable prior based on the latent code and desired properties;

obtaining a set of properties;

marginalize the learnable prior and the set of properties over a set of desired properties not in the set of specified properties;

conditioning the marginalized learnable prior over properties in the set of properties to obtain a distribution over latent space;

sampling the distribution over latent space; and

processing the sampled distribution over latent space with a decoder to obtain a generated object with predefined properties.

20. The method of claim 15 , further comprising:

obtaining a learnable prior based on the latent code and desired properties;

obtaining a set of properties;

marginalize the learnable prior and the set of properties over a set of desired properties not in the set of properties;

conditioning the marginalized learnable prior over properties in the set of properties to obtain a distribution over latent space;

sampling the distribution over latent space; and

processing the sampled distribution over latent space with a decoder to obtain a generated object with predefined properties.

21. A computer program product comprising:

a non-transient, tangible memory device having computer-executable instructions that when executed by a processor, cause performance of a method comprising:

providing a model configured as a variational autoencoder with a learnable prior, wherein the learnable prior is parameterized by a tensor train decomposition,

providing a dataset having object data for an object and condition data for a condition, wherein the condition may be a property of the object;

processing the object data of the dataset to obtain latent object data with an object encoder of the model, wherein the latent object data includes a distribution of latent variables having a mean and a variance;

sampling one or more latent variables from the obtained distribution of latent variables;

processing the sampled one or more latent variables with defined object properties to compute a probability of the samples having the defined object properties;

processing the sampled one or more latent variables through an object decoder to obtain a reconstructed object;

determining a reconstruction loss of the reconstructed object from an original object from the object data;

computing a Kullback-Leibler divergence from the probability of the samples having the defined object properties;

using the determined reconstruction loss and computed Kullback-Leibler divergence to compute a loss from the data set;

perform a gradient descent until the reconstructed object is sufficiently representative of the original object and has the defined object properties;

obtaining a trained model configured as a trained variational autoencoder with the learnable prior that is parameterized with the tensor train decomposition; and

providing the trained model.

22. The computer program product of claim 21 , wherein the executed method further comprises further training the trained model with reinforced leaning, wherein the reinforced learning produces the reconstructed objects having a defined characteristic, wherein the training of the trained model with the reinforced learning includes:

discarding the object encoder;

fixing weights of all layers of the object decoder except for a first layer of the object decoder;

performing the following steps until convergence:

estimate a mean and variance for each dimension of a previously obtained distribution of latent variables, the previously obtained distribution of latent variables being defined as a learnable prior;

obtain an exploration latent variable for each dimension from outside of the latent variables produced by the encoder;

pass the exploration latent variable through the object decoder to obtain a reconstructed object based on the exploration latent variable;

compute rewards for the reconstructed object based on at least one defined reward; and

apply a single gradient ascent step to maximize a total reward with respect to a parameter of the learned prior and first layer of the decoder.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2019
From: INSILICO MEDICINE, INC.
To: INSILICO MEDICINE IP LIMITED
Reel/Frame 049831/0678 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2019
From: INSILICO MEDICINE, INC.
To: INSILICO MEDICINE IP LIMITED
Reel/Frame 049640/0690 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2018
From: ALIPER, ALEKSANDR; ZAVORONKOVS, ALEKSANDRS; ZHEBRAK, ALEXANDER; POLYKOVSKIY, DANIIL; KUZNETSOV, MAKSIM; IVANENKOV, YAN; VESELOV, MARK; ALADINSKIY, VLADIMIR; PUTIN, EVGENY; VOLKOV, YURIY; ASADULAEV, ARIP
To: INSILICO MEDICINE, INC.
Reel/Frame 046903/0344 →
Continuity (1)
Related Publication 20200090049A1 · Mar 19, 2020
Cited By (1)
US 12,345,520