Molecular representation learning method, system, device and medium based on incremental learning
Through incremental learning methods, the initial molecular characterization model is optimized using newly added data, which solves the problems of long training time and high computing power consumption in existing technologies and achieves efficient model updates and knowledge retention.
Patent Information
- Application Number
- CN202310915547.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-24
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2043-07-24
AI Technical Summary
In existing technologies, when new data is added after the molecular characterization model is trained, the entire model needs to be retrained, resulting in long training time and high computing power consumption.
An incremental learning method is used to build an initial model with the same structure and parameters as the pre-trained model. The new data is used to construct the comparative learning loss value, context loss value and regularization term, and iterative optimization is performed. Only the new data is trained, and the old model knowledge is retained.
It reduces the model training time and computing power consumption, while maintaining the model's knowledge accumulation and improving training efficiency.
Smart Images

Figure CN117133379B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of machine learning technology, and in particular to a molecular characterization learning method, system, device and medium based on incremental learning. Background Art
[0002] Molecular representation learning involves extracting and representing the structure and properties of molecules by converting them into vectors or representations that can be processed by machine learning models. Related technologies utilize pre-training, self-supervised contrastive learning, and graph neural networks to learn molecular representations from different perspectives.
[0003] During the application of molecular characterization models, new data may become available after model training is complete, and new pre-training tasks may be proposed in the future. For these situations, the relevant technology typically uses the new and old data to retrain the molecular characterization model, which takes a long time and consumes a lot of computing power. Summary of the Invention
[0004] The main purpose of the embodiments of the present application is to propose a molecular characterization learning method, system, device and medium based on incremental learning, which can reduce the training time of the model and reduce the consumption of computing power.
[0005] To achieve the above objectives, a first aspect of an embodiment of the present application proposes a molecular representation learning method based on incremental learning, the method comprising:
[0006] Constructing an initial first molecular characterization model, wherein a structure of the initial first molecular characterization model is the same as a structure of the second molecular characterization model, and a first model parameter of the initial first molecular characterization model is the same as a second model parameter of the second molecular characterization model; and the second molecular characterization model is pre-trained based on old data;
[0007] Acquiring a newly added molecular data set, preprocessing the molecules in the molecular data set, extracting representations of the molecules using the initial first molecular representation model, and obtaining first atomic representations, second atomic representations, and third atomic representations corresponding to the molecules;
[0008] Constructing a contrastive learning loss value based on the first atomic representation and the second atomic representation, constructing a context-based loss value based on the third atomic representation, and constructing a regularization term based on the first model parameter and the second model parameter;
[0009] Constructing a joint loss value based on the contrastive learning loss value, the context-based loss value, and the regularization term; wherein the regularization term is used to enable the first molecular representation model to retain knowledge of the second molecular representation model when iteratively optimizing the initial first molecular representation model;
[0010] The initial first molecular characterization model is iteratively optimized according to the joint loss value to obtain the first molecular characterization model that has completed pre-training.
[0011] In one embodiment, the acquiring of a newly added molecular dataset, preprocessing of molecules in the molecular dataset, and characterization extraction of the molecules using the initial first molecular characterization model to obtain a first atomic characterization, a second atomic characterization, and a third atomic characterization corresponding to the molecules include:
[0012] generating a corresponding initial molecular graph according to the molecules in the molecular dataset;
[0013] Performing three masking operations on the initial molecular graph to obtain a corresponding first masked molecular graph, a second masked molecular graph, and a third masked molecular graph;
[0014] The first molecular representation model is used to respectively perform representation extraction on the first masked molecular graph, the second masked molecular graph, and the third masked molecular graph to generate corresponding first atomic representation, second atomic representation, and third atomic representation.
[0015] In one embodiment, constructing a contrastive learning loss value based on the first atomic representation and the second atomic representation includes:
[0016] Inputting the first atomic representation and the second atomic representation into a first fully connected layer to generate corresponding first molecular representation and second molecular representation;
[0017] A contrastive learning loss value is constructed according to the first molecular representation and the second molecular representation.
[0018] In one embodiment, the contrastive learning loss value is:
[0019]
[0020] Among them, F mask1 、
[0021] sim is the cosine similarity function, τ is the temperature coefficient, when i equals j, 1 [i≠j] 1, when i is not equal to j [i≠j] is 0, F mask1 For the first molecular characterization, F mask2 For the second molecular characterization, numfeat is the dimension of molecular representation, num batch is the number of molecules, Loss cl is the contrastive learning loss value, For the i-th first molecule characterization, Characterize the i-th said second molecule.
[0022] In one embodiment, constructing a context-based loss value according to the third atomic representation includes:
[0023] generating a third atom mask feature according to the third atom representation, and inputting the third atom mask feature into a second fully connected layer to generate a corresponding predicted masked atom attribute;
[0024] A context-based loss value is constructed according to the predicted atomic attribute and the actual masked atomic attribute corresponding to the predicted atomic attribute.
[0025] In one embodiment, the context-based loss value is:
[0026]
[0027] in,
[0028]
[0029] The predicted masked atom attributes, P mask3 is the real masked atomic attribute, num atom_mask is the number of masked atoms, num prop is the number of atomic attributes, Loss cm is the context-based loss value.
[0030] In one embodiment, before iteratively optimizing the first molecular characterization model according to the joint loss value to obtain the pre-trained first molecular characterization model, the method further includes:
[0031] Iteratively optimize the parameters of the second fully connected layer according to the context-based loss value until the current number of iterations reaches a first preset threshold or the parameters of the second fully connected layer converge.
[0032] In one embodiment, the combined loss value is:
[0033]
[0034] in,
[0035] λ=exp(-ep),
[0036] Loss cl is the contrastive learning loss value, Loss cm is the context-based loss value, is the regularization term, is the first model parameter, is the second model parameter, and ep is the current iteration number.
[0037] To achieve the above objectives, a second aspect of the embodiments of the present application proposes a molecular characterization learning system based on incremental learning, the system comprising:
[0038] a model construction module, configured to construct an initial first molecular characterization model, wherein the structure of the initial first molecular characterization model is identical to the structure of the second molecular characterization model, and the first model parameters of the initial first molecular characterization model are identical to the second model parameters of the second molecular characterization model; and the second molecular characterization model is pre-trained based on old data;
[0039] a data acquisition module, configured to acquire a newly added molecular dataset, preprocess the molecules in the molecular dataset, extract the representations of the molecules using the initial first molecular representation model, and obtain a first atomic representation, a second atomic representation, and a third atomic representation corresponding to the molecules;
[0040] a loss value and regularization term construction module, configured to construct a contrastive learning loss value based on the first atomic representation and the second atomic representation, construct a context-based loss value based on the third atomic representation, and construct a regularization term based on the first model parameters and the second model parameters;
[0041] a joint loss value construction module, configured to construct a joint loss value based on the contrastive learning loss value, the context-based loss value, and the regularization term; wherein the regularization term is configured to enable the first molecular representation model to retain knowledge of the second molecular representation model when iteratively optimizing the initial first molecular representation model;
[0042] An optimization module is used to iteratively optimize the initial first molecular characterization model according to the joint loss value to obtain the first molecular characterization model that has completed pre-training.
[0043] To achieve the above-mentioned purpose, the third aspect of the embodiments of the present application proposes an electronic device, which includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, it implements the molecular representation learning method based on incremental learning described in the embodiment of the first aspect above.
[0044] To achieve the above-mentioned purpose, the fourth aspect of the embodiments of the present application proposes a storage medium, which is a computer-readable storage medium and stores a computer program. When the computer program is executed by a processor, it implements the molecular characterization learning method based on incremental learning described in the embodiment of the first aspect above.
[0045] The molecular representation learning method, system, device and medium based on incremental learning proposed in the embodiments of the present application can be applied to a molecular representation learning system based on incremental learning. By executing the molecular representation learning method based on incremental learning, an initial first molecular representation model is constructed, the molecules of the molecular data set are preprocessed, and then the corresponding molecules are represented and extracted using the initial first molecular representation model to obtain a first atomic representation, a second atomic representation, and a third atomic representation, thereby constructing a contrastive learning loss value, a context-based loss value and a regularization term, and then constructing a joint loss value, and iteratively optimizing the initial first molecular representation model using the joint loss value. During the iterative optimization process, the initial first molecular characterization model is optimized based on the newly added molecular data set by comparing the learning loss value and the context-based loss value; since when constructing the initial first molecular characterization model, the structure of the first molecular characterization model is the same as the structure of the pre-trained second molecular characterization model, and the first model parameters of the first molecular characterization model are the same as the second model parameters of the second molecular characterization model, the regularization term can enable the first molecular characterization model to retain the knowledge of the second molecular characterization model during the iterative optimization process. Therefore, the present application can only use the newly added data to train and optimize the initial first molecular characterization model, without the need to retrain the old data, which can reduce the training time of the model, as well as the consumption of computing power, and can enable the first molecular characterization model to retain the knowledge of the second molecular characterization model. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 This is an optional flowchart of a molecular representation learning method based on incremental learning provided by an embodiment of the present application;
[0047] Figure 2 yes Figure 1 Flow diagram of step S102;
[0048] Figure 3 yes Figure 1 Schematic diagram of the process of constructing the contrastive learning loss value in step S103;
[0049] Figure 4 yes Figure 1 A flowchart of constructing a context-based loss value in step S103;
[0050] Figure 5This is an optional flowchart of a molecular representation learning method based on incremental learning provided in another embodiment of the present application;
[0051] Figure 6 Schematic diagram of the structure of the molecular characterization learning system based on incremental learning provided in an embodiment of the present application;
[0052] Figure 7 This is another optional flowchart of the molecular representation learning method for incremental learning provided in an embodiment of the present application;
[0053] Figure 8 Schematic diagram of the functional modules of the molecular characterization learning system based on incremental learning provided in an embodiment of the present application;
[0054] Figure 9 This is a schematic diagram of the hardware structure of the electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0055] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0056] It should be noted that although the device schematics illustrate functional module divisions and the flowcharts illustrate logical sequences, in certain circumstances, the steps shown or described may be performed in a sequence that differs from the module divisions in the device or the sequence in the flowcharts. The terms "first," "second," and so on, in the specification, claims, and drawings, are used to distinguish similar items and are not necessarily used to describe a specific sequence or precedence.
[0057] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.
[0058] First, let’s analyze some of the terms used in this application:
[0059] Artificial intelligence (AI) is a new technical discipline that studies and develops theories, methods, technologies, and application systems for simulating, extending, and expanding human intelligence. A branch of computer science, AI seeks to understand the essence of intelligence and produce new intelligent machines that can respond in a manner similar to human intelligence. Research in this field includes robotics, speech recognition, image recognition, natural language processing, and expert systems. AI can simulate the information processes of human consciousness and thinking. It also encompasses the theories, methods, technologies, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, to perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results.
[0060] Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.
[0061] Molecular representation learning (MRL) involves extracting and representing the structure and properties of molecules by converting them into vectors or representations that can be processed by machine learning models. The goal of this task is to solve problems such as drug discovery, chemical reaction prediction, and molecular property prediction by learning effective molecular representations. By learning molecular representations on large-scale unlabeled datasets, the performance of downstream tasks such as molecular property prediction can be improved, thereby accelerating progress in areas such as drug development and materials design.
[0062] Incremental learning refers to a learning system that continuously learns new knowledge from new examples while retaining most of its previously learned knowledge. Incremental learning is very similar to the human learning model. As people grow, they learn and absorb new things every day. Learning is a gradual process, and humans generally do not forget what they have already learned.
[0063] Related technologies use techniques such as pre-training, self-supervised contrastive learning, and graph neural networks to learn molecular representations from different perspectives. Generally, molecular representation models are pre-trained on larger datasets to obtain pre-trained molecular representation models. However, in reality, due to issues such as data privacy or data acquisition, all training data cannot be obtained in a short period of time. Therefore, new data may be added after the molecular representation model is trained, and there may be new pre-training tasks proposed in the future. In order to further improve the representation capabilities of the pre-trained molecular representation model, the molecular representation model needs to learn from the new data. However, retraining the model using new and old data is costly, takes a long time to train, and consumes a lot of computing power.
[0064] Based on this, the embodiments of the present application provide a molecular characterization learning method, system, device and medium based on incremental learning, which can reduce the training time of the model and the consumption of computing power by only using new data to train and optimize the first molecular characterization model without retraining the old data.
[0065] The molecular representation learning method, system, device and medium based on incremental learning provided in the embodiments of the present application are specifically illustrated through the following embodiments. First, the molecular representation learning method based on incremental learning in the embodiments of the present application is described.
[0066] The embodiments of the present application can acquire and process relevant data based on artificial intelligence technology. Artificial Intelligence (AI) is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to achieve optimal results.
[0067] Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.
[0068] The molecular representation learning method based on incremental learning provided in the embodiment of the present application relates to the field of artificial intelligence technology. The molecular representation learning method based on incremental learning provided in the embodiment of the present application can be applied to a terminal, can be applied to a server side, or can be software running in a terminal or a server side. In some embodiments, the terminal can be a smart phone, a tablet computer, a laptop computer, a desktop computer, etc.; the server side can be configured as an independent physical server, or can be configured as a server cluster or a distributed system composed of multiple physical servers, or can be configured as a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application that implements a molecular representation learning method based on incremental learning, etc., but is not limited to the above forms.
[0069] The present application can be used in many general or special computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, and the like. The present application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. The present application can also be practiced in distributed computing environments in which tasks are performed by remote processing devices connected via a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media, including storage devices.
[0070] It should be noted that in each specific embodiment of the present application, when it comes to the need to perform relevant processing based on data related to the user's identity or characteristics, such as user information, user behavior data, user historical data, and user location information, the user's permission or consent will be obtained first. For example, when obtaining user stored data and the user's cached data access request, the user's permission or consent will be obtained first; when obtaining resource data, the present application embodiment will first obtain the user's permission or consent. Moreover, the collection, use and processing of these data will comply with relevant laws, regulations and standards. In addition, when the present application embodiment needs to obtain the user's sensitive personal information, it will obtain the user's separate permission or consent through a pop-up window or jump to a confirmation page. After clearly obtaining the user's separate permission or consent, the necessary user-related data for the present application embodiment to operate normally will be obtained.
[0071] Reference Figure 1 , Figure 1 This is an optional flowchart of the molecular representation learning method based on incremental learning provided in an embodiment of the present application. Figure 1 The method may include but is not limited to steps S101 to S105.
[0072] Step S101: construct a first molecular characterization model, wherein the structure of the first molecular characterization model is the same as the structure of the pre-trained second molecular characterization model, and the first model parameters of the first molecular characterization model are the same as the second model parameters of the second molecular characterization model; the second molecular characterization model is pre-trained based on old data.
[0073] For example, the second molecular characterization model can be directly copied to obtain the first molecular characterization model. In one embodiment, the first molecular characterization model can be constructed based on the structure of the second molecular characterization model so that the structure of the first molecular characterization model is the same as that of the second molecular characterization model, and the second model parameters of the second molecular characterization model are used as the first model parameters of the first molecular characterization model.
[0074] It should be noted that the second molecular representation model is a model pre-trained using old data. The second molecular representation model can be pre-trained using a self-supervised contrastive learning method based on the old data. For example, the second molecular representation model can be a model pre-trained using a graph neural network using a data augmentation method using self-supervised contrastive learning of representations (Molecular Contrastive Learning of Representations, MolClr) based on the old data.
[0075] Step S102: obtaining a newly added molecular data set, preprocessing the molecules in the molecular data set, extracting the representations of the molecules using the initial first molecular representation model, and obtaining first atomic representations, second atomic representations, and third atomic representations corresponding to the molecules;
[0076] For example, a newly added molecular dataset can be obtained from a drug molecule database, and the data newly stored in the drug molecule database can be used as the newly added molecular dataset. There are various methods for obtaining newly added molecular datasets from a drug molecule database, such as accessing the drug molecule database through a custom application, or directly copying the data newly stored in the drug molecule database as the newly added molecular dataset. However, regardless of the method used, data quality and security must be ensured.
[0077] It is worth noting that the old data refers to the data set obtained before the newly added molecular data set. For example, the old data can be the data of the drug molecule database before the newly added data is stored.
[0078] Step S103, constructing a contrastive learning loss value based on the first atomic representation and the second atomic representation, constructing a context-based loss value based on the third atomic representation, and constructing a regularization term based on the first model parameters and the second model parameters;
[0079] Step S104, constructing a joint loss value based on the contrastive learning loss value, the context-based loss value, and a regularization term; wherein the regularization term is used to enable the first molecular representation model to retain knowledge of the second molecular representation model when iteratively optimizing the initial first molecular representation model;
[0080] Step S105 , iteratively optimize the first molecular representation model according to the joint loss value to obtain a pre-trained first molecular representation model.
[0081] In steps S101 to S105 shown in the embodiment of the present application, an initial first molecular representation model is constructed to preprocess the molecules of the molecular data set by executing a molecular representation learning method based on incremental learning, and then the molecules are characterized and extracted by the initial first molecular representation model to obtain a first atomic representation, a second atomic representation, and a third atomic representation, thereby constructing a contrastive learning loss value, a context-based loss value, and a regularization term, and then constructing a joint loss value, and iteratively optimizing the first molecular representation model through the joint loss value. During the iterative optimization process, the initial first molecular characterization model is optimized based on the newly added molecular data set by comparing the learning loss value and the context-based loss value; since when constructing the initial first molecular characterization model, the structure of the first molecular characterization model is the same as the structure of the pre-trained second molecular characterization model, and the first model parameters of the first molecular characterization model are the same as the second model parameters of the second molecular characterization model, the regularization term can enable the first molecular characterization model to retain the knowledge of the second molecular characterization model during the iterative optimization process. Therefore, the present application can only use the newly added data to train and optimize the first molecular characterization model without retraining the old data, which can reduce the training time of the model and the consumption of computing power, and can enable the first molecular characterization model to retain the knowledge of the second molecular characterization model, and the knowledge of the second molecular characterization model is the knowledge obtained by pre-training based on the old data.
[0082] The molecular representation learning method based on incremental learning in the embodiment of the present application combines the self-supervised contrastive learning pre-training method and the context-based strategy pre-training method, and adds a regularization term to the joint loss value, thereby realizing the training and optimization of the first molecular representation model using only new data, and allowing the first molecular representation model to retain the knowledge of the second molecular representation model.
[0083] It's important to note that pre-training is typically performed using large-scale datasets, during which the model learns representations of molecular structure, chemical properties, and related features. These representations can be considered knowledge because they capture patterns and associations in the data. When training on a new dataset, traditional methods may require retraining the entire model, learning all molecular representations from scratch. However, incremental learning-based approaches allow the model parameters and knowledge learned from previous training to be leveraged, requiring only fine-tuning for the task on the new dataset. This allows the model to rapidly adapt to the new task without completely discarding previously learned useful information. Preserving previously learned knowledge improves the model's transferability and efficiency and reduces training costs, as only a small amount of training is required on the new task, rather than retraining the entire model from scratch. This approach is highly beneficial in practical applications for processing large-scale molecular datasets and conserving computational resources.
[0084] Molecular features, patterns, and representations learned through pre-training tasks refer to representations learned by the model from large-scale molecular datasets during pre-training. These representations capture patterns and associations in molecular structure and chemical properties. Specifically, pre-training tasks are often performed through self-supervised learning, meaning the model generates its own targets using unsupervised methods. In the molecular domain, common pre-training tasks include autoencoders, generating similar molecules, and predicting chemical properties. Through these pre-training tasks, the model learns a low-dimensional representation, or embedding space, of molecules that contains a rich set of molecular features and patterns. These features can be structural (such as atom types and bond connectivity) or physical (such as solubility and activity). By learning these features and patterns, the model gradually builds its understanding and representation capabilities for molecules. This representation can be considered the knowledge learned by the model during pre-training, encompassing an abstract representation of the underlying structure and properties of molecules. These representations can be leveraged in subsequent tasks, such as drug discovery and molecular design, to achieve better results and generalization.
[0085] Reference Figure 2 In some embodiments, step S102 may include but is not limited to steps S201 to S203.
[0086] Step S201, generating a corresponding initial molecular graph according to the molecules in the molecular data set;
[0087] For example, a molecular dataset contains multiple molecules, and the molecular data format is the simplified molecular-input line-entry system (SMILES), which is a specification that uses ASCII strings to clearly describe the molecular structure. By processing each SMILES-formatted molecule using the RDKIT program, a corresponding initial molecular graph is generated. The initial molecular graph is a 2D molecular graph, and all initial molecular graphs form a 2D molecular database U, where U = {G1, G2, ..., G n}, where n is the number of initial molecular graphs, and G1 represents the first initial molecular graph in the 2D molecular database.
[0088] For example, the numerator is num atom atoms, num bond atomic bonds, the initial molecular graph is represented as G(V,E), where V represents the atomic set of the molecule. Atom v i Contains num prop attributes, represented as E represents the atomic bond set of the molecule, E={e0,e1,......,enum bond}, if atom v i With atomic v j e k Key connected, e k Represented as e k =(v i ,v j ).
[0089] RDKit is an open-source toolkit for cheminformatics. It was developed by Greg Landrum and has numerous contributions from the RDKit open-source community. It has application programming interfaces (APIs) for Python, Java, C++, and C#.
[0090] Step S202, performing three masking operations on the initial molecular graph to obtain corresponding first masked molecular graph, second masked molecular graph, and third masked molecular graph;
[0091] For example, the atom v i Contains num prop The masking operation is: mask 15% of the atoms in each molecule. For example, in the V i A 15% subset of atoms is randomly selected from is the mask atom set of the i-th molecule, All properties of all atoms in become 0. Three masking operations are performed on each initial molecular graph to obtain the corresponding first mask molecular graph, second mask molecular graph, and third mask molecular graph, respectively. mask1 (V,E),G mask2 (V,E),G mask3 (V,E).
[0092] Step S203 : performing characterization extraction on the first masked molecular graph, the second masked molecular graph, and the third masked molecular graph respectively through the first molecular characterization model to generate corresponding first atomic characterization, second atomic characterization, and third atomic characterization.
[0093] Exemplarily, the first mask molecular graph, the second mask molecular graph, and the third mask molecular graph corresponding to the same initial molecular graph are characterized and extracted to generate corresponding first atomic representation, second atomic representation, and third atomic representation, wherein the first mask molecular graph corresponds to the first atomic representation, the second mask molecular graph corresponds to the second atomic representation, and the third mask molecular graph corresponds to the third atomic representation.
[0094] Reference Figure 3 In some embodiments, constructing the contrastive learning loss value based on the first atomic representation and the second atomic representation in step S103 includes but is not limited to steps S301 and S302:
[0095] Step S301: input the first atomic representation and the second atomic representation into the first fully connected layer to generate corresponding first molecular representation and second molecular representation;
[0096] Step S302: construct a contrastive learning loss value based on the first molecular representation and the second molecular representation.
[0097] Exemplarily, graph regularization is performed on the first atomic representation and the second atomic representation, and the graph-regularized first atomic representation and the second atomic representation are input into the first fully connected layer to generate corresponding first molecular representation and second molecular representation, wherein the first molecular representation corresponds to the first atomic representation, and the second molecular representation corresponds to the second atomic representation.
[0098] In one embodiment, the contrastive learning loss value is:
[0099]
[0100] Where sim(u,v)=u T v / (||u||×||v||),
[0101] F mask1 、
[0102] sim(u,v) is the cosine similarity function, u and v are the parameters of the cosine similarity function, τ is the temperature coefficient, which is a hyperparameter. When i is equal to j, 1 [i≠j] 1, when i is not equal to j [i≠j] is 0, F mask1 For the first molecular characterization, F mask2 For the second molecular characterization, num feat is the dimension of molecular representation, num batch is the number of molecules, Loss cl is the contrastive learning loss value, i and j are natural numbers, is the i-th first molecule characterization, Characterize the i-th second molecule.
[0103] It should be noted that the first fully connected layer is independent of the first molecular representation model and the second molecular representation model. Encoder used to represent the self-supervised contrastive learning pre-training method.
[0104] Reference Figure 4 In one embodiment, constructing a context-based loss value according to the third atomic representation in step S103 may include but is not limited to steps S401 and S402:
[0105] Step S401: generating a third atom mask feature based on the third atom representation, inputting the third atom mask feature into the second fully connected layer to generate corresponding predicted masked atom attributes;
[0106] Exemplarily, the third atom is characterized by num atom Indicates the number of atoms in the molecule corresponding to the third atomic representation, num atom_feat The masked atom set of the molecule corresponding to the third atomic representation is V mask , from V mask Extract the third atom mask feature F_atom corresponding to the third atom representation mask3 ,in, num atom_mask Indicates the number of masked atoms in the molecule corresponding to the third atomic representation, num atom_feat The third atomic mask feature is input to the second fully connected layer to obtain the predicted masked atomic properties.
[0107] It should be noted that the second fully connected layer is independent of the first molecular representation model and the second molecular representation model. The parameters θ of the second fully connected layer are MLP2Encoder for pre-trained methods to represent context-based policies.
[0108] Step S402 : constructing a context-based loss value according to the predicted atom attributes and the actual masked atom attributes corresponding to the predicted atom attributes.
[0109] It is worth noting that the real masked atomic properties refer to the unmasked atomic properties.
[0110] In one embodiment, the context-based loss value is:
[0111]
[0112] in,
[0113]
[0114] To predict the properties of masked atoms, P mask3 is the actual masked atomic attribute, num atom_mask is the number of masked atoms, num prop is the number of atomic attributes, Loss cm is the context-based loss value.
[0115] In one embodiment, in step S103, a regularization term is constructed according to the first model parameter and the second model parameter, specifically:
[0116]
[0117] in, is the regularization term, is the first model parameter, is the second model parameter.
[0118] In one embodiment, referring to Figure 5 The molecular representation learning method based on incremental learning in the embodiment of the present application includes the following steps before step S105:
[0119] Step S501, iteratively optimize the parameters of the second fully connected layer according to the context-based loss value until the current number of iterations reaches a first preset threshold or the parameters of the first fully connected layer converge.
[0120] Exemplarily, a third atom mask feature is generated according to the third atom representation, and the third atom mask feature is input to the second fully connected layer to generate the corresponding predicted masked atom attribute. A context-based loss value is constructed according to the predicted atom attribute and the real masked atom attribute corresponding to the predicted atom attribute, thereby calculating the context-based loss value. The parameter θ of the second fully connected layer is adjusted according to the context-based loss value. MLP2 Optimize and update until the current number of iterations reaches the first preset threshold or the parameters of the first fully connected layer converge. Before step S105, iteratively optimize and update the parameters of the second fully connected layer, so that the second fully connected layer can adapt to the molecular features output by the first molecular characterization model. It should be noted that the embodiment of the present application does not make a specific limitation on the first preset threshold, and those skilled in the art can set the first preset threshold according to actual needs. For example, the first preset threshold can be 10. The basis for judging the convergence of the parameters of the second fully connected layer can be that the context loss value no longer decreases after the recent updates.
[0121] It should be noted that, in step S501 , the first model parameters are not updated.
[0122] In some embodiments, the combined loss value is:
[0123]
[0124] in,
[0125] λ=exp(-ep),
[0126] Loss cl Loss is the comparative learning loss value. cm is the context-based loss value, is the regularization term, is the first model parameter, is the second model parameter, and ep is the current iteration number.
[0127] It should be noted that in the joint loss value, the current number of iterations includes the number of iterations in step S501. For example, if the number of iterations performed in step S501 is 10, then in step S105, the first molecular characterization model is optimized for the first time according to the joint loss value. At this time, the current number of iterations in the joint loss value is 11.
[0128] In some embodiments, the newly added molecular dataset is divided into three parts: a training set, a validation set, and a test set. The training set is used to pre-train the first molecular characterization model and calculate the joint loss value during the pre-training of the first molecular characterization model. The validation set is used to verify whether the joint loss value of the first molecular characterization model has converged during the pre-training of the first molecular characterization model. If the joint loss value converges, the pre-training of the first molecular characterization model is complete. The test set is used to test the pre-trained first molecular characterization model.
[0129] In step S105 of some embodiments, a joint loss value is calculated using the training set. Based on the joint loss value, gradient calculation is performed on the first model parameters, the parameters of the first fully connected layer, and the parameters of the second fully connected layer of the first molecular characterization model. Then, the first model parameters, the parameters of the first fully connected layer, and the parameters of the second fully connected layer are optimized to increase the current number of iterations by 1. It is then determined whether the current number of iterations is less than a second preset threshold. If the current number of iterations is greater than or equal to the second preset threshold, it indicates that pre-training is complete, and a pre-trained first molecular characterization model is obtained. If the current number of iterations is less than the second preset threshold, the first molecular characterization model is verified using the validation set, and the joint loss value is calculated based on the validation set to determine whether it has converged. If the joint loss value converges, it indicates that the pre-training of the first molecular characterization model is complete; if the joint loss value does not converge, the first molecular characterization model is continued to be pre-trained using the training set. The convergence of the joint loss value can be determined by the fact that the joint loss value no longer decreases after the last few updates.
[0130] Reference Figure 6 , Figure 6It is a structural diagram of a molecular representation learning system based on incremental learning provided in an embodiment of the present application. The molecular representation learning system based on incremental learning includes a data processing module and a model training module, wherein the data processing module is used to obtain a newly added molecular data set, pre-process the molecules of the molecular data set, generate a corresponding initial molecular graph according to the molecules of the molecular data set, perform three masking operations on the initial molecular graph, and obtain the corresponding first masked molecular graph, second masked molecular graph, and third masked molecular graph. The model training module includes a new molecular encoder, an old molecular encoder, a first fully connected layer and a second fully connected layer, wherein the new molecular encoder represents the first molecular representation model, the old molecular encoder represents the second molecular representation model, and the first model parameters of the first molecular representation model and the second model parameters of the second molecular representation model constitute a regularization term. The first masked molecular graph, the second masked molecular graph, and the third masked molecular graph are input to the first molecular representation model to obtain the corresponding first atomic representation, the second atomic representation, and the third atomic representation. The contrastive learning pre-training method is regarded as an old task, and the context-based pre-training method is regarded as a new task. The first atomic representation and the second atomic representation are input to the first fully connected layer to generate the corresponding first molecular representation and the second molecular representation. When calculating the contrastive learning loss value, the first and second molecular representations corresponding to molecule i are selected as the prediction results of the old task, while the first and second molecular representations corresponding to molecule j are selected as the true results of the old task. The contrastive learning loss value calculated is the loss of the old task. A third atomic mask feature is generated based on the third atomic representation, and the third atomic mask feature is input into the second fully connected layer to generate the corresponding predicted masked atomic attributes. The predicted masked atomic attributes are the prediction results of the new task, and the unmasked true masked atomic attributes are used as the true results of the new task. A context-based loss value is constructed based on the predicted atomic attributes and the true masked atomic attributes corresponding to the predicted atomic attributes. The context-based loss value is the new task loss. The parameters of the second fully connected layer are then iteratively optimized based on the context-based loss value until the current number of iterations reaches the first preset threshold or the parameters of the first fully connected layer converge. The first molecular representation model is then iteratively optimized based on the joint loss value to obtain a pre-trained first molecular representation model.
[0131] Reference Figure 7 , Figure 7 This is an optional flow chart of the molecular representation learning method based on incremental learning provided in the embodiment of the present application. Figure 7 In the method shown, the first preset threshold is 10. Figure 7 The method shown includes the following steps:
[0132] Step S701: construct an initial first molecular characterization model and obtain a new data set in the form of SMILES.
[0133] Step S702: Generate a corresponding initial molecular graph based on the molecules in the molecular dataset.
[0134] Step S703: perform three masking operations on the initial molecular graph to obtain corresponding first masked molecular graph, second masked molecular graph, and third masked molecular graph. The first masked molecular graph, the second masked molecular graph, and the third masked molecular graph are input into the molecular encoder of the first molecular representation model to perform representation extraction to obtain corresponding first atomic representation, second atomic representation, and third atomic representation.
[0135] Step S704: constructing a context-based loss value according to the third atomic representation, constructing a context-based loss value according to the third atomic representation, and constructing a regularization term according to the first model parameters and the second model parameters;
[0136] Step S705 , determining whether the current epoch is greater than 10, if the current epoch is greater than 10, executing step S706 , if the current epoch is less than or equal to 10, executing step S707 .
[0137] Step S706: Optimize the parameters of the second fully connected layer based on the context-based loss value.
[0138] Step S707: Optimize the first molecular characterization model according to the joint loss value.
[0139] Step S708, determining whether the current number of iterations is less than a second preset threshold. If so, proceed to step S707. If so, the training of the first molecular characterization model is completed.
[0140] It should be noted that each time step S706 or step S707 is executed, the number of iterations is increased by 1.
[0141] See also Figure 8 Another embodiment of the present application further provides a molecular representation learning system based on incremental learning, which can implement the above-mentioned molecular representation learning method based on incremental learning. The molecular representation learning system based on incremental learning includes:
[0142] A model construction module 810 is configured to construct an initial first molecular characterization model, wherein the structure of the initial first molecular characterization model is identical to the structure of the second molecular characterization model, and the first model parameters of the initial first molecular characterization model are identical to the second model parameters of the second molecular characterization model; the second molecular characterization model is pre-trained based on old data;
[0143] The data acquisition module 820 is used to acquire a newly added molecular data set, preprocess the molecules in the molecular data set, extract the representations of the molecules using the initial first molecular representation model, and obtain the first atomic representation, the second atomic representation, and the third atomic representation corresponding to the molecules;
[0144] A loss value and regularization term construction module 830 is used to construct a contrastive learning loss value based on the first atomic representation and the second atomic representation, construct a context-based loss value based on the third atomic representation, and construct a regularization term based on the first model parameter and the second model parameter;
[0145] a joint loss value construction module 840 for constructing a joint loss value based on the contrastive learning loss value, the context-based loss value, and a regularization term; wherein the regularization term is used to enable the first molecular representation model to retain knowledge of the second molecular representation model during iterative optimization of the initial first molecular representation model;
[0146] The optimization module 850 is used to iteratively optimize the initial first molecular representation model according to the joint loss value to obtain a pre-trained first molecular representation model.
[0147] This incremental learning-based molecular representation learning system can train and optimize the first molecular representation model using only newly added data by executing a molecular representation learning method based on incremental learning, without the need to retrain old data. This can reduce the training time of the model and the consumption of computing power, and can enable the first molecular representation model to retain the knowledge of the second molecular representation model, where the knowledge of the second molecular representation model is the knowledge obtained by pre-training based on the old data.
[0148] The specific implementation of the incremental learning-based molecular representation learning system is basically the same as the specific embodiment of the incremental learning-based molecular representation learning method described above, and will not be repeated here. On the premise of meeting the requirements of the embodiments of this application, the incremental learning-based molecular representation learning system can also be provided with other functional modules to implement the incremental learning-based molecular representation learning method described above.
[0149] The present application also provides an electronic device comprising a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the aforementioned incremental learning-based molecular characterization learning method. The electronic device can be any intelligent terminal, such as a tablet computer or an in-vehicle computer.
[0150] See also Figure 8 , Figure 8 The hardware structure of an electronic device according to another embodiment is shown. The electronic device includes:
[0151] The processor 901 can be implemented as a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application;
[0152] The memory 902 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 902 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program codes are stored in the memory 902 and are called by the processor 901 to execute the molecular representation learning method based on incremental learning in the embodiments of this application.
[0153] Input / output interface 903, used to implement information input and output;
[0154] Communication interface 904, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WiFi, Bluetooth, etc.);
[0155] Bus 905 , which transmits information between various components of the device (e.g., processor 901 , memory 902 , input / output interface 903 , and communication interface 904 );
[0156] The processor 901 , the memory 902 , the input / output interface 903 and the communication interface 904 are connected to each other in communication within the device via a bus 905 .
[0157] An embodiment of the present application also provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the above-mentioned molecular representation learning method based on incremental learning.
[0158] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely arranged relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0159] The embodiments described in the embodiments of this application are intended to more clearly illustrate the technical solutions of the embodiments of this application and do not constitute a limitation on the technical solutions provided by the embodiments of this application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0160] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or a combination of certain steps, or different steps.
[0161] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, i.e., they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of this embodiment.
[0162] Those skilled in the art will appreciate that all or some of the steps in the methods, systems, and functional modules / units in the devices disclosed above may be implemented as software, firmware, hardware, or appropriate combinations thereof.
[0163] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0164] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.
[0165] In the several embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For example, the division of the above units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0166] The units described above as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0167] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0168] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes multiple instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: various media that can store programs, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0169] The preferred embodiments of the present invention are described above with reference to the accompanying drawings, but are not intended to limit the scope of the present invention. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and essence of the present invention should be within the scope of the present invention.
Claims
1. A molecular representation learning method based on incremental learning, characterized in that: The method comprises: Constructing an initial first molecular characterization model, wherein a structure of the initial first molecular characterization model is the same as a structure of the second molecular characterization model, and a first model parameter of the initial first molecular characterization model is the same as a second model parameter of the second molecular characterization model; and the second molecular characterization model is pre-trained based on old data; Acquiring a newly added molecular data set, preprocessing the molecules in the molecular data set, extracting representations of the molecules using the initial first molecular representation model, and obtaining first atomic representations, second atomic representations, and third atomic representations corresponding to the molecules; Constructing a contrastive learning loss value based on the first atomic representation and the second atomic representation, constructing a context-based loss value based on the third atomic representation, and constructing a regularization term based on the first model parameter and the second model parameter; Constructing a joint loss value based on the contrastive learning loss value, the context-based loss value, and the regularization term; wherein the regularization term is used to enable the first molecular representation model to retain knowledge of the second molecular representation model when iteratively optimizing the initial first molecular representation model; Iteratively optimizing the initial first molecular characterization model according to the joint loss value to obtain a pre-trained first molecular characterization model; The acquiring of a newly added molecular dataset, preprocessing of molecules in the molecular dataset, characterization extraction of the molecules using the initial first molecular characterization model, and obtaining a first atomic characterization, a second atomic characterization, and a third atomic characterization corresponding to the molecules include: generating a corresponding initial molecular graph according to the molecules in the molecular dataset; Performing three masking operations on the initial molecular graph to obtain a corresponding first masked molecular graph, a second masked molecular graph, and a third masked molecular graph; The first molecular representation model is used to respectively perform representation extraction on the first masked molecular graph, the second masked molecular graph, and the third masked molecular graph to generate corresponding first atomic representation, second atomic representation, and third atomic representation.
2. The molecular representation learning method based on incremental learning according to claim 1, characterized in that The constructing a contrastive learning loss value according to the first atomic representation and the second atomic representation includes: Inputting the first atomic representation and the second atomic representation into a first fully connected layer to generate corresponding first molecular representation and second molecular representation; A contrastive learning loss value is constructed according to the first molecular representation and the second molecular representation.
3. The molecular representation learning method based on incremental learning according to claim 2, characterized in that The contrastive learning loss value is: , in, , is the cosine similarity function, is the temperature coefficient, when i equal j hour is 1, when i Not equal to j hour is 0, For the first molecular characterization, For the second molecular characterization, is the dimension of molecular representation, is the number of molecules, is the contrastive learning loss value, For the i The first molecular characterization, For the i The second molecule is characterized.
4. The molecular representation learning method based on incremental learning according to claim 1, characterized in that The constructing a context-based loss value according to the third atomic representation includes: generating a third atom mask feature according to the third atom representation, and inputting the third atom mask feature into a second fully connected layer to generate a corresponding predicted masked atom attribute; A context-based loss value is constructed according to the predicted atomic attribute and the actual masked atomic attribute corresponding to the predicted atomic attribute.
5. The molecular representation learning method based on incremental learning according to claim 4, characterized in that The context-based loss value is: , in, , , The predicted masked atom attributes, is the true masked atomic attribute, is the number of masked atoms, is the number of properties of the atom, is the context-based loss value.
6. The molecular representation learning method based on incremental learning according to claim 5, characterized in that Before iteratively optimizing the first molecular characterization model according to the joint loss value to obtain the pre-trained first molecular characterization model, the method further includes: Iteratively optimize the parameters of the second fully connected layer according to the context-based loss value until the current number of iterations reaches a first preset threshold or the parameters of the second fully connected layer converge.
7. The molecular representation learning method based on incremental learning according to claim 1, characterized in that The combined loss value is: , in, , , is the contrastive learning loss value, is the context-based loss value, is the regularization term, is the first model parameter, is the second model parameter, ep is the current iteration number.
8. A molecular representation learning system based on incremental learning, characterized in that: The system comprises: a model construction module, configured to construct an initial first molecular characterization model, wherein the structure of the initial first molecular characterization model is identical to the structure of the second molecular characterization model, and the first model parameters of the initial first molecular characterization model are identical to the second model parameters of the second molecular characterization model; and the second molecular characterization model is pre-trained based on old data; a data acquisition module, configured to acquire a newly added molecular dataset, preprocess the molecules in the molecular dataset, extract the representations of the molecules using the initial first molecular representation model, and obtain a first atomic representation, a second atomic representation, and a third atomic representation corresponding to the molecules; a loss value and regularization term construction module, configured to construct a contrastive learning loss value based on the first atomic representation and the second atomic representation, construct a context-based loss value based on the third atomic representation, and construct a regularization term based on the first model parameters and the second model parameters; a joint loss value construction module, configured to construct a joint loss value based on the contrastive learning loss value, the context-based loss value, and the regularization term; wherein the regularization term is configured to enable the first molecular representation model to retain knowledge of the second molecular representation model when iteratively optimizing the initial first molecular representation model; an optimization module, configured to iteratively optimize the initial first molecular characterization model according to the joint loss value to obtain a pre-trained first molecular characterization model; The acquiring of a newly added molecular dataset, preprocessing of molecules in the molecular dataset, characterization extraction of the molecules using the initial first molecular characterization model, and obtaining a first atomic characterization, a second atomic characterization, and a third atomic characterization corresponding to the molecules include: generating a corresponding initial molecular graph according to the molecules in the molecular dataset; Performing three masking operations on the initial molecular graph to obtain a corresponding first masked molecular graph, a second masked molecular graph, and a third masked molecular graph; The first molecular representation model is used to respectively perform representation extraction on the first masked molecular graph, the second masked molecular graph, and the third masked molecular graph to generate corresponding first atomic representation, second atomic representation, and third atomic representation.
9. An electronic device, characterized in that: The electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the molecular representation learning method based on incremental learning according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the molecular representation learning method based on incremental learning according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Chemical molecule related water solubility prediction method based on deep learning
CN114093435A
Methods and apparatus for multi-modal prediction using a trained statistical model
US20190370616A1