Methods, apparatus, electronic devices and storage media for the generation of molecules
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2026-08-11
AI Technical Summary
但相关技术在分子优化的过程中构建的合成树的合成路径较长,增加了目标分子的合成成本
[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description.
Smart Images

Figure CN116844660B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of artificial intelligence technology, specifically to biological computing technology, and more particularly to a method, apparatus, electronic device, and storage medium for generating molecules. Background Technology
[0002] Molecular optimization is the process of finding molecules that meet specific property requirements within the vast chemical space. The syntheticity of the target molecule obtained through molecular optimization directly determines its practical value.
[0003] In related technologies, synthetic trees are constructed to ensure that the target molecule appears on the synthetic path as much as possible, thereby guaranteeing the syntheticity of the target molecule. However, the synthetic paths constructed during the molecule optimization process in these technologies are relatively long, increasing the synthesis cost of the target molecule. Summary of the Invention
[0004] A method, apparatus, electronic device, and storage medium for generating molecules are provided.
[0005] According to a first aspect, a method for generating a molecule is provided, comprising: obtaining a set of synthetic trees to be optimized, the set of synthetic trees to be optimized including multiple synthetic trees to be optimized, wherein the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length; performing molecular optimization on the set of synthetic trees to be optimized to obtain an optimized set of synthetic trees; determining a target synthetic tree in the optimized set of synthetic trees; and determining the root node of the target synthetic tree as a target molecule.
[0006] According to a second aspect, a molecule generation apparatus is provided, comprising: an acquisition module for acquiring a set of synthetic trees to be optimized, the set of synthetic trees to be optimized including multiple synthetic trees to be optimized, the maximum synthetic path length of the multiple synthetic trees to be optimized being a set length; an optimization module for performing molecular optimization on the set of synthetic trees to be optimized to obtain an optimized set of synthetic trees; a first determination module for determining a target synthetic tree in the optimized set of synthetic trees; and a second determination module for determining the root node of the target synthetic tree as a target molecule.
[0007] According to a third aspect, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to said at least one processor; wherein the memory stores instructions executable by said at least one processor, said instructions being executed by said at least one processor to enable said at least one processor to perform the molecule generation method described in the first aspect of this disclosure.
[0008] According to a fourth aspect, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause the computer to perform a method for generating molecules according to a first aspect of this disclosure.
[0009] According to a fifth aspect, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the steps of the method for generating molecules according to a first aspect of this disclosure.
[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0011] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:
[0012] Figure 1 This is a schematic flowchart of a method for generating molecules according to the first embodiment of this disclosure;
[0013] Figure 2 This is a schematic flowchart of a method for generating molecules according to a second embodiment of the present disclosure;
[0014] Figure 3 This is a schematic diagram of building a synthetic tree based on molecular building blocks according to the third embodiment of this disclosure;
[0015] Figure 4 This is a schematic flowchart of a method for generating molecules according to the fourth embodiment of this disclosure;
[0016] Figure 5 This is a schematic flowchart of a method for generating molecules according to the fifth embodiment of this disclosure;
[0017] Figure 6 This is a schematic diagram illustrating the principle of a molecule generation method according to the sixth embodiment of this disclosure;
[0018] Figure 7 This is a block diagram of a molecule generating apparatus according to the seventh embodiment of this disclosure;
[0019] Figure 8 This is a block diagram of a molecule generating apparatus according to the eighth embodiment of this disclosure;
[0020] Figure 9 This is a block diagram of an electronic device used to implement the methods of the embodiments of this disclosure. Detailed Implementation
[0021] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0022] Artificial intelligence (AI) is a technical science that studies and develops theories, methods, technologies, and application systems to simulate, extend, and expand human intelligence. Currently, AI technology has the advantages of high automation, high accuracy, and low cost, and has been widely applied.
[0023] Biocomputing refers to a new computing paradigm developed by utilizing the inherent information processing mechanisms of biological systems. Biocomputing research encompasses both devices and systems. Molecular devices are the basic units that utilize ordered systems composed of organic (or biological) materials at the molecular scale to provide information detection, processing, transmission, and storage through physicochemical processes at the molecular level. The structure and computational principles of biocomputing systems differ from traditional computing systems. Their structure is generally parallel and distributed, and information storage often combines short-term and long-term memory, achieved through learning. Biocomputing is a highly integrated discipline; the fusion of biology and computing will bring about significant breakthroughs and progress. Relying on biocomputing engines, massive amounts of biological data can be effectively utilized, transforming drug discovery from a "needle in a haystack" to a "guided search," ultimately benefiting human health.
[0024] The following describes, with reference to the accompanying drawings, a method, apparatus, electronic device, and storage medium for generating molecules according to embodiments of the present disclosure.
[0025] Figure 1 This is a schematic flowchart of a method for generating molecules according to the first embodiment of this disclosure.
[0026] like Figure 1 As shown, the method for generating molecules according to embodiments of this disclosure may specifically include the following steps:
[0027] S101, Obtain the set of composite trees to be optimized. The set of composite trees to be optimized includes multiple composite trees to be optimized. The maximum composite path length of the multiple composite trees to be optimized is a set length.
[0028] Specifically, the execution entity of the molecule generation method in this disclosure embodiment can be the molecule generation apparatus provided in this disclosure embodiment. This molecule generation apparatus can be a hardware device with data processing capabilities and / or the necessary software to drive the hardware device. Optionally, the execution entity may include a workstation, server, computer, user terminal, and other devices. The user terminal includes, but is not limited to, mobile phones, computers, intelligent voice interaction devices, smart home appliances, and vehicle terminals.
[0029] In this embodiment of the disclosure, the set of synthetic trees to be optimized is the set of synthetic trees to be molecularly optimized. The set of synthetic trees to be optimized includes multiple synthetic trees to be optimized. The set of synthetic trees to be optimized can be understood as a population to be evolved, and the synthetic trees to be optimized in the set can be understood as individuals to be evolved within that population. The set of synthetic trees to be optimized in this step can be the initial set of synthetic trees during the molecular optimization process, or it can be the set of synthetic trees generated during the molecular optimization process.
[0030] The leaf nodes of the synthesis tree can be molecular building blocks from the molecular building block library, and the root node of the synthesis tree is the output product molecule. The synthesis path length of multiple synthesis trees to be optimized in the set of synthesis trees to be optimized can be from 1 to a set length (e.g., L), that is, the maximum synthesis path length of multiple synthesis trees to be optimized is constrained to the set length L.
[0031] The molecular building block library includes multiple pre-defined molecular building blocks. Molecular building blocks are the basic units used to synthesize complex compounds with specific activities. In the field of chemistry, molecular building blocks are virtual molecular fragments or real molecules with active functional groups, which can be used for the "bottom-up" assembly of characteristic molecular structures.
[0032] S102, perform molecular optimization on the set of synthetic trees to be optimized to obtain the optimized set of synthetic trees.
[0033] In this embodiment of the disclosure, an evolutionary algorithm is used to perform molecular optimization on each synthetic tree to be optimized in the set of synthetic trees to be optimized obtained in step S101, resulting in multiple optimized synthetic trees. The set of multiple optimized synthetic trees constitutes the optimized synthetic tree set. Molecular optimization may include, but is not limited to, performing molecular mutations on the synthetic trees to be optimized.
[0034] S103, determine the target synthetic tree in the optimized synthetic tree set.
[0035] In this embodiment of the disclosure, the target synthetic tree is the synthetic tree that meets the user's expectations. Among the multiple optimized synthetic trees in the optimized synthetic tree set obtained in step S102, at least one optimized synthetic tree is selected as the target synthetic tree. A selection strategy can be preset, and the target synthetic tree is selected from the multiple optimized synthetic trees based on the preset selection strategy.
[0036] S104, the root node of the target synthesis tree is determined as the target molecule.
[0037] In this embodiment of the disclosure, the target molecule is the molecule that meets the user's expected attributes, which is also the final product of the molecule optimization process. The root node of the target synthesis tree determined in step S103 is determined as the target molecule, and the target synthesis tree corresponding to the target molecule is the synthesis path corresponding to the target molecule. The synthesis of the target molecule can be realized based on the synthesis path.
[0038] In summary, the molecule generation method of this disclosure involves obtaining a set of synthetic trees to be optimized, including multiple synthetic trees to be optimized, where the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length. Molecular optimization is performed on the synthetic trees to be optimized to obtain an optimized set of synthetic trees. A target synthetic tree is then determined from the optimized set, and the root node of the target synthetic tree is identified as the final target molecule. This disclosure generates a target synthetic tree by performing molecular optimization on the synthetic trees, thereby determining the target molecule and ensuring that the final generated target molecule is synthetically feasible. Furthermore, by setting the maximum synthetic path length of the synthetic trees and adding the synthetic path length as a constraint to the target molecule generation process, the synthesis cost of the target molecule is reduced.
[0039] Figure 2 This is a schematic flowchart of a method for generating molecules according to a second embodiment of the present disclosure.
[0040] like Figure 2 As shown, in Figure 1 Based on the illustrated embodiments, the molecule generation method of this disclosure specifically includes the following steps:
[0041] The step S101 in the above embodiment, "obtaining a set of synthetic trees to be optimized, the set of synthetic trees to be optimized includes multiple synthetic trees to be optimized, and the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length", may specifically include the following steps S201-S202.
[0042] S201, select multiple molecular building blocks from the molecular building block library as reaction substrates.
[0043] In this embodiment of the disclosure, the initial set of synthetic trees to be optimized can be generated based on multiple molecular building blocks in the molecular building block library and a preset reaction template.
[0044] like Figure 3 As shown, multiple molecular building blocks from the molecular building block library are selected as leaf nodes of the synthesis tree to be optimized, and the selected multiple molecular building blocks are used as the original reaction substrates.
[0045] S202, using a preset reaction template to connect molecular substrates, to obtain the synthetic tree to be optimized in the set of synthetic trees to be optimized, the maximum synthetic path length of the synthetic tree to be optimized is the set length.
[0046] In this embodiment of the disclosure, the preset reaction template corresponds to a specific chemical reaction equation. For example... Figure 3 As shown, a pre-set reaction template is used as the synthetic path (i.e., the connection path) of the synthetic tree to be optimized. Molecular substrates are connected using the pre-set reaction template, and multiple layers of synthetic trees to be optimized are constructed from the bottom up. Specifically: using the pre-set reaction template, molecular building blocks are connected to further assemble new molecular building blocks (as intermediate products). This process is iterated repeatedly, ultimately constructing multiple synthetic trees to be optimized, with molecular building blocks as nodes and reaction templates as connection paths. The root node of each synthetic tree to be optimized is the target molecule we desire (as the final product).
[0047] Step S102 in the above embodiment, "perform molecular optimization on the set of synthetic trees to be optimized to obtain the optimized set of synthetic trees", may specifically include the following steps S203-S204.
[0048] S203, determine the candidate synthetic trees to be optimized in the set of synthetic trees to be optimized.
[0049] In this embodiment of the disclosure, some of the synthetic trees to be optimized are selected as candidate synthetic trees to be optimized from the set of synthetic trees to be optimized, that is, some individuals are selected as elite individuals from the population to be optimized.
[0050] As a possible implementation method, such as Figure 4 As shown, the candidate synthetic trees to be optimized in the set of synthetic trees to be optimized can be determined through the following steps S401-S402:
[0051] S401, Calculate the fitness score of the synthetic trees to be optimized in the set of synthetic trees to be optimized.
[0052] In this embodiment of the disclosure, an evaluator can be used to calculate the fitness score of each synthetic tree to be optimized in the set of synthetic trees to be optimized.
[0053] As a first feasible implementation method, methods such as molecular docking can be used to calculate the binding force score between the root node of the synthetic tree to be optimized and the set protein, and the binding force score of the synthetic tree to be optimized can be used as the fitness score of the synthetic tree to be optimized.
[0054] As a second feasible implementation, the physicochemical property scores of the root node of the synthetic tree to be optimized can be calculated, and these scores can be used as the fitness scores of the synthetic tree to be optimized. The physicochemical property scores can be predicted using a model prediction method.
[0055] S402, the synthetic trees with the highest fitness scores of a set number are identified as candidate synthetic trees to be optimized.
[0056] In this embodiment of the disclosure, the synthetic trees to be optimized in the set of synthetic trees to be optimized are sorted in descending order of fitness score, and the top K synthetic trees to be optimized are determined as candidate synthetic trees to be optimized.
[0057] S204, Generate the optimized synthetic tree from the set of optimized synthetic trees based on the candidate synthetic trees to be optimized.
[0058] In this embodiment of the disclosure, multiple optimized synthetic trees are generated based on the selected TopK candidate synthetic trees to be optimized. Specifically, zero to multiple optimized synthetic trees can be generated based on a single candidate synthetic tree to be optimized.
[0059] Step S103 in the above embodiment, "determining the target synthetic tree in the optimized synthetic tree set", may specifically include the following steps S205-S206:
[0060] S205, increment the iteration count by one.
[0061] In this embodiment of the disclosure, the iteration number m is incremented by one, that is, m = m + 1.
[0062] S206, if the number of iterations reaches the preset iteration threshold, then the target synthetic tree in the optimized synthetic tree set is determined.
[0063] In this embodiment of the disclosure, the user can preset an iteration count threshold as needed. If the iteration count reaches the threshold, the iterative optimization process is stopped, and the target synthetic tree in the optimized synthetic tree set is determined.
[0064] The step "determine the target synthetic tree in the optimized synthetic tree set" can be implemented through the following steps: calculate the fitness score of the optimized synthetic trees in the optimized synthetic tree set, and determine the set number of optimized synthetic trees with the highest fitness score as the target synthetic trees.
[0065] In this embodiment of the disclosure, the process of determining the target synthetic tree based on the fitness score is similar to steps S401-S402 in the above embodiments, and will not be repeated here.
[0066] S207 If the number of iterations has not reached the iteration threshold, then the optimized synthetic tree set will be used as the synthetic tree set to be optimized.
[0067] In this embodiment of the disclosure, if the number of iterations does not reach the iteration threshold, the iterative optimization process continues, that is, the optimized synthetic tree set is used as the new synthetic tree set to be optimized, and step S203 is continued.
[0068] S208, the root node of the target synthesis tree is determined as the target molecule.
[0069] In this embodiment, step S208 is the same as step S104 in the above embodiment, and will not be described again here.
[0070] Furthermore, step S204 in the above embodiment, "generating the optimized synthetic tree in the optimized synthetic tree set based on the candidate synthetic tree to be optimized", may specifically include the following steps: performing molecular mutations on the leaf nodes of the candidate synthetic tree to be optimized to obtain the optimized synthetic tree.
[0071] In the embodiments of this disclosure, a candidate synthetic tree to be optimized can be mutated once or multiple times to obtain one or more optimized synthetic trees. Each mutation can involve molecular mutation of one or more leaf nodes in the candidate synthetic tree to be optimized.
[0072] Specifically, such as Figure 5 As shown, the optimized synthetic tree can be obtained through the following steps S501-S504:
[0073] S501, Identify the leaf nodes to be mutated in the leaf nodes of the candidate synthetic tree to be optimized.
[0074] In this embodiment of the disclosure, one or more leaf nodes are selected from the multiple leaf nodes of the candidate synthetic tree to be optimized as leaf nodes to be mutated, denoted as leaf nodes to be mutated.
[0075] S502, determine the candidate molecular building blocks corresponding to the leaf nodes to be mutated in the molecular building block library.
[0076] In this embodiment of the disclosure, the candidate molecular building block is a molecular building block that serves as a replacement for the leaf node to be mutated. A candidate molecular building block corresponding to the leaf node to be mutated is selected from the molecular building block library.
[0077] As a first feasible implementation, one or more molecular blocks in the molecular block library that have the highest similarity to the leaf node molecule to be mutated can be identified as candidate molecular blocks.
[0078] As a second feasible implementation, the remaining synthetic tree information after removing the leaf nodes to be mutated from the candidate synthetic tree to be optimized can be obtained, and candidate molecular blocks can be determined in the molecular block library based on the remaining synthetic tree information. For example, the remaining synthetic tree information can be input into a neural network model to obtain the probability values corresponding to each molecular block in the molecular block library output by the neural network model, and the molecular block with the highest probability value can be determined as a candidate molecular block.
[0079] As a third feasible implementation, molecular building blocks in the molecular building block library that have the same physicochemical properties as the leaf node to be mutated can be identified as candidate molecular building blocks. It should be noted that if there are multiple molecular building blocks in the molecular building block library that have the same physicochemical properties as the leaf node to be mutated, then one or more molecular building blocks with the highest similarity to the leaf node molecule to be mutated among these multiple molecular building blocks can be identified as candidate molecular building blocks.
[0080] S503, replace the leaf node to be mutated with the candidate molecule building block to obtain the mutated synthetic tree.
[0081] In this embodiment of the disclosure, the leaf nodes to be mutated in the candidate synthetic tree to be optimized are replaced with candidate molecular building blocks to obtain the replaced synthetic tree, that is, the mutated synthetic tree.
[0082] S504 determines the synthesized tree after mutation of the synthesizable root node as the optimized synthesized tree.
[0083] In this embodiment, if the mutated synthetic tree can successfully synthesize a root node, the mutation is successful, and the mutated synthetic tree is determined as the optimized synthetic tree. If the mutated synthetic tree cannot successfully synthesize a root node, the mutation fails, and the mutated synthetic tree is discarded.
[0084] In summary, the molecule generation method of this disclosure involves obtaining a set of synthetic trees to be optimized, including multiple synthetic trees to be optimized, where the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length. Molecular optimization is performed on the synthetic trees to be optimized to obtain an optimized set of synthetic trees. A target synthetic tree is determined from the optimized set, and the root node of the target synthetic tree is determined as the final target molecule. This disclosure generates a target synthetic tree by performing molecular optimization on the synthetic trees, thereby determining the target molecule and making the final generated target molecule synthetically feasible. Furthermore, by setting the maximum synthetic path length of the synthetic trees, the synthetic path length is added as a constraint to the target molecule generation process, reducing the synthesis cost of the target molecule. Additionally, during the molecular optimization process, a set number of synthetic trees with the highest fitness scores are determined as candidate synthetic trees to be optimized, and these candidate synthetic trees are optimized. By evolving elite individuals selected from the population to be evolved, the optimization effect is improved. A more accurate fitness score can be obtained by calculating the binding force score and / or physicochemical property score. By identifying candidate molecular building blocks through molecular similarity comparison, generation based on remaining synthetic tree information, and comparison of physicochemical properties, the probability of successful mutation of the synthetic tree corresponding to the identified candidate molecular building blocks is increased, further improving the optimization effect.
[0085] To clearly illustrate the method for generating molecules according to embodiments of this disclosure, the following is now combined with... Figure 6 Provide a detailed description. Figure 6 This is a schematic diagram illustrating the principle of a molecule generation method according to an embodiment of the present disclosure, such as... Figure 6 As shown, the molecule generation method of this disclosure includes: obtaining a set of synthetic trees to be optimized, wherein the set of synthetic trees to be optimized includes multiple synthetic trees to be optimized, and the maximum synthesis path length of the multiple synthetic trees to be optimized is a set length. The fitness score of each synthetic tree to be optimized in the set of synthetic trees to be optimized is calculated, and the Top K synthetic trees with the highest fitness scores are determined as mutation targets, i.e., candidate synthetic trees to be optimized. Molecular mutations are performed on the leaf nodes of the candidate synthetic trees to be optimized to obtain optimized synthetic trees. The iteration count is incremented by one. If the iteration count reaches a preset iteration count threshold, the iteration is stopped, and one or more optimized synthetic trees with the highest fitness scores are determined as target synthetic trees, and the root node of the target synthetic tree is determined as the final target molecule. If the iteration count does not reach the preset iteration count threshold, the iteration continues, i.e., the optimized synthetic trees are used as new synthetic trees to be optimized, and the subsequent optimization process continues.
[0086] Figure 7 This is a block diagram of a molecule generation apparatus according to a first embodiment of the present disclosure.
[0087] like Figure 7As shown, the molecule generation apparatus 700 of this embodiment includes: an acquisition module 701, an optimization module 702, a first determination module 703, and a second determination module 704. Wherein:
[0088] The acquisition module 701 is used to acquire a set of synthetic trees to be optimized. The set of synthetic trees to be optimized includes multiple synthetic trees to be optimized, and the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length.
[0089] The optimization module 702 is used to perform molecular optimization on the set of synthetic trees to be optimized, so as to obtain the optimized set of synthetic trees.
[0090] The first determining module 703 is used to determine the target synthetic tree in the optimized synthetic tree set.
[0091] The second determining module 704 is used to determine the root node of the target synthesis tree as the target molecule.
[0092] It should be noted that the above explanation of the molecular generation method embodiments also applies to the molecular generation apparatus of the present disclosure embodiments, and the specific process will not be repeated here.
[0093] In summary, the molecule generation apparatus of this disclosure acquires a set of synthetic trees to be optimized, including multiple synthetic trees to be optimized, where the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length. Molecular optimization is performed on the synthetic trees to be optimized to obtain an optimized set of synthetic trees. A target synthetic tree is determined from the optimized set, and the root node of the target synthetic tree is determined as the final target molecule. This disclosure generates a target synthetic tree by performing molecular optimization on the synthetic trees, thereby determining the target molecule and ensuring that the final generated target molecule is synthetically feasible. Furthermore, by setting the maximum synthetic path length of the synthetic trees and adding the synthetic path length as a constraint to the target molecule generation process, the synthesis cost of the target molecule is reduced.
[0094] Figure 8 This is a block diagram of a molecule generation apparatus according to a second embodiment of the present disclosure.
[0095] like Figure 8 As shown, the molecule generation apparatus 800 of this embodiment includes: an acquisition module 801, an optimization module 802, a first determination module 803, and a second determination module 804.
[0096] The acquisition module 801 has the same structure and function as the acquisition module 701 in the previous embodiment, the optimization module 802 has the same structure and function as the optimization module 702 in the previous embodiment, the first determination module 803 has the same structure and function as the first determination module 703 in the previous embodiment, and the second determination module 804 has the same structure and function as the second determination module 704 in the previous embodiment.
[0097] Furthermore, the leaf nodes of the synthetic tree to be optimized are molecular building blocks from the molecular building block library.
[0098] Furthermore, the acquisition module 801 includes: a selection unit 8011, used to select multiple molecular building blocks in the molecular building block library as reaction substrates; and a connection unit 8012, used to connect the molecular substrates using a preset reaction template to obtain the synthetic tree to be optimized in the set of synthetic trees to be optimized.
[0099] Furthermore, the optimization module 802 is further configured to: determine candidate synthetic trees to be optimized in the set of synthetic trees to be optimized; and generate optimized synthetic trees in the set of optimized synthetic trees based on the candidate synthetic trees to be optimized.
[0100] Furthermore, the optimization module 802 is further used to: calculate the fitness score of the synthetic trees to be optimized in the set of synthetic trees to be optimized; and determine the synthetic trees to be optimized with the highest fitness score of a set number as candidate synthetic trees to be optimized.
[0101] Furthermore, the optimization module 802 is further used to: calculate the binding force score between the root node of the synthetic tree to be optimized and the set protein; and use the binding force score as a fitness score.
[0102] Furthermore, the optimization module 802 is further used to: calculate the physicochemical property score of the root node of the synthetic tree to be optimized; and use the physicochemical property score as the fitness score.
[0103] Furthermore, the optimization module 802 is further used to: perform molecular mutations on the leaf nodes in the candidate synthetic tree to be optimized, so as to obtain the optimized synthetic tree.
[0104] Furthermore, the optimization module 802 is further used to: determine the leaf node to be mutated in the leaf nodes of the candidate synthesis tree to be optimized; determine the candidate molecular building block corresponding to the leaf node to be mutated in the molecular building block library; replace the leaf node to be mutated with the candidate molecular building block to obtain the mutated synthesis tree; and determine the mutated synthesis tree with synthesizable root nodes as the optimized synthesis tree.
[0105] Furthermore, the optimization module 802 is further used to: identify the molecular building block with the highest similarity to the leaf node molecule to be mutated in the molecular building block library as a candidate molecular building block.
[0106] Furthermore, the optimization module 802 is further used to: obtain the remaining synthetic tree information after removing the leaf nodes to be mutated from the candidate synthetic tree to be optimized; and determine candidate molecular building blocks in the molecular building block library based on the remaining synthetic tree information.
[0107] Furthermore, the optimization module 802 is further used to: input the remaining synthetic tree information into the neural network model to obtain the probability value corresponding to the molecular building block in the molecular building block library; and determine the molecular building block with the highest probability value as the candidate molecular building block.
[0108] Furthermore, the optimization module 802 is further used to: identify molecular building blocks in the molecular building block library that have the same physicochemical properties as the leaf node to be mutated as candidate molecular building blocks.
[0109] Furthermore, the first determining module 803 is further used to: increment the iteration number by one; and if the iteration number reaches a preset iteration number threshold, then determine the target synthetic tree in the optimized synthetic tree set.
[0110] Furthermore, the first determining module 803 is also used to: if the number of iterations does not reach the iteration threshold, then the optimized synthetic tree set is used as the synthetic tree set to be optimized.
[0111] Furthermore, the first determining module 803 is further used to: calculate the fitness score of the optimized synthetic trees in the optimized synthetic tree set; and determine the optimized synthetic trees with the highest fitness score as the target synthetic trees.
[0112] It should be noted that the above explanation of the molecular generation method embodiments also applies to the molecular generation apparatus of the present disclosure embodiments, and the specific process will not be repeated here.
[0113] In summary, the molecule generation apparatus of this disclosure acquires a set of synthetic trees to be optimized, including multiple synthetic trees to be optimized, where the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length. Molecular optimization is performed on the synthetic trees to be optimized to obtain an optimized set of synthetic trees. A target synthetic tree is determined from the optimized set, and the root node of the target synthetic tree is determined as the final target molecule. This disclosure generates a target synthetic tree by performing molecular optimization on the synthetic trees, thereby determining the target molecule and making the final generated target molecule synthetically feasible. Furthermore, by setting the maximum synthetic path length of the synthetic trees, the synthetic path length is added as a constraint to the target molecule generation process, reducing the synthesis cost of the target molecule. Additionally, during the molecular optimization process, a set number of synthetic trees with the highest fitness scores are determined as candidate synthetic trees to be optimized, and these candidate synthetic trees are optimized. By evolving elite individuals selected from the population to be evolved, the optimization effect is improved. A more accurate fitness score can be obtained by calculating the binding force score and / or physicochemical property score. By identifying candidate molecular building blocks through molecular similarity comparison, generation based on remaining synthetic tree information, and comparison of physicochemical properties, the probability of successful mutation of the synthetic tree corresponding to the identified candidate molecular building blocks is increased, further improving the optimization effect.
[0114] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0115] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0116] Figure 9 A schematic block diagram of an example electronic device 900 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0117] like Figure 9As shown, the electronic device 900 includes a computing unit 901, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 902 or a computer program loaded from a storage unit 908 into a random access memory (RAM) 903. The RAM 903 may also store various programs and data required for the operation of the electronic device 900. The computing unit 901, ROM 902, and RAM 903 are interconnected via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0118] Multiple components in electronic device 900 are connected to I / O interface 905, including: input unit 906, such as keyboard, mouse, etc.; output unit 907, such as various types of displays, speakers, etc.; storage unit 908, such as disk, optical disk, etc.; and communication unit 909, such as network card, modem, wireless transceiver, etc. Communication unit 909 allows electronic device 900 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0119] The computing unit 901 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 901 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 901 performs the various methods and processes described above, such as... Figures 1 to 6 The method for generating molecules is illustrated. For example, in some embodiments, the method for generating molecules may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 908. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 900 via ROM 902 and / or communication unit 909. When the computer program is loaded into RAM 903 and executed by computing unit 901, one or more steps of the semantic parsing method described above may be performed. Alternatively, in other embodiments, computing unit 901 may be configured to perform the method for generating molecules by any other suitable means (e.g., by means of firmware).
[0120] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0121] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0122] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0123] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0124] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), the Internet, and blockchain networks.
[0125] Computer systems can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service system that addresses the management difficulties and weak business scalability inherent in traditional physical hosts and VPS (Virtual Private Server) services. Servers can also be servers for distributed systems or servers incorporating blockchain technology.
[0126] According to embodiments of this disclosure, this disclosure also provides a computer program product, including a computer program, wherein the computer program, when executed by a processor, implements the steps of the molecule generation method shown in the above embodiments of this disclosure.
[0127] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0128] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A method for generating a molecule, comprising: Multiple molecular building blocks from a molecular building block library are selected as reaction substrates, and the molecular substrates are connected using a preset reaction template to obtain and acquire a set of synthetic trees to be optimized; wherein, the set of synthetic trees to be optimized includes multiple synthetic trees to be optimized, and the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length; The process involves: calculating the fitness score of each synthetic tree in the set of synthetic trees to be optimized; identifying a set number of synthetic trees with the highest fitness scores as candidate synthetic trees to be optimized; determining leaf nodes to be mutated among the leaf nodes of the candidate synthetic trees; identifying candidate molecular blocks corresponding to the leaf nodes to be mutated in a molecular block library; replacing the leaf nodes to be mutated with the candidate molecular blocks to obtain mutated synthetic trees; and identifying the mutated synthetic trees with synthesizable root nodes as optimized synthetic trees in the set of optimized synthetic trees. The method for determining the candidate molecular blocks includes: obtaining the remaining synthetic tree information after removing the leaf nodes to be mutated from the candidate synthetic trees to be optimized; inputting the remaining synthetic tree information into a neural network model to obtain probability values corresponding to the molecular blocks in the molecular block library; and identifying the molecular block with the highest probability value as the candidate molecular block. Increment the iteration count by one. If the iteration count reaches a preset iteration count threshold, calculate the fitness score of the optimized synthetic trees in the optimized synthetic tree set. Then, determine the target synthetic tree in the optimized synthetic tree set by selecting the set of optimized synthetic trees with the highest fitness scores from the optimized synthetic tree set. The root node of the target synthesis tree is determined as the target molecule.
2. The generation method according to claim 1, wherein, The leaf nodes of the synthetic tree to be optimized are the molecular building blocks in the molecular building block library.
3. The generation method according to claim 1, wherein, The calculation of the fitness score of the synthetic tree to be optimized in the set of synthetic trees to be optimized includes: Calculate the binding force score between the root node of the synthetic tree to be optimized and the specified protein; and The binding force score is used as the fitness score.
4. The generation method according to claim 1, wherein, The calculation of the fitness score of the synthetic tree to be optimized in the set of synthetic trees to be optimized includes: Calculate the physicochemical property scores of the root node of the synthetic tree to be optimized; and The scores of the physical and chemical properties are used as the fitness scores.
5. The generation method according to claim 1, wherein, The method for determining the candidate molecular building blocks further includes: The molecular building block with the highest similarity to the leaf node molecule to be mutated in the molecular building block library is identified as the candidate molecular building block.
6. The generation method according to claim 1, wherein, The method for determining the candidate molecular building blocks further includes: Molecular building blocks in the molecular building block library that have the same physicochemical properties as the leaf node to be mutated are identified as candidate molecular building blocks.
7. The generation method according to claim 1, further comprising: If the number of iterations does not reach the iteration threshold, then the optimized synthetic tree set is taken as the synthetic tree set to be optimized.
8. A molecule-generating apparatus, comprising: The acquisition module includes a selection unit and a connection unit. The selection unit is used to select multiple molecular building blocks from the molecular building block library as reaction substrates. The connection unit is used to connect the molecular substrates using a preset reaction template to obtain and acquire a set of synthetic trees to be optimized. The set of synthetic trees to be optimized includes multiple synthetic trees to be optimized, and the maximum synthetic path length of the multiple synthetic trees to be optimized is a set length. An optimization module is used to perform molecular optimization on the set of synthetic trees to be optimized, so as to obtain an optimized set of synthetic trees; The first determining module is used to increment the iteration count by one; if the iteration count reaches a preset iteration count threshold, then calculate the fitness score of the optimized synthetic trees in the optimized synthetic tree set; and determine the target synthetic tree in the optimized synthetic tree set by selecting the set of optimized synthetic trees with the highest fitness scores from the optimized synthetic tree set. The second determining module is used to determine the root node of the target synthesis tree as the target molecule.
9. The generating apparatus according to claim 8, wherein, The leaf nodes of the synthetic tree to be optimized are the molecular building blocks in the molecular building block library.
10. The generating apparatus according to claim 8, wherein, The optimization module is further used for: Calculate the binding force score between the root node of the synthetic tree to be optimized and the specified protein; and The binding force score is used as the fitness score.
11. The generating apparatus according to claim 8, wherein, The optimization module is further used for: Calculate the physicochemical property scores of the root node of the synthetic tree to be optimized; and The scores of the physical and chemical properties are used as the fitness scores.
12. The generating apparatus according to claim 8, wherein, The method for determining the candidate molecular building blocks further includes: The molecular building block with the highest similarity to the leaf node molecule to be mutated in the molecular building block library is identified as the candidate molecular building block.
13. The generating apparatus according to claim 8, wherein, The method for determining the candidate molecular building blocks further includes: Molecular building blocks in the molecular building block library that have the same physicochemical properties as the leaf node to be mutated are identified as candidate molecular building blocks.
14. The generating apparatus according to claim 8, wherein, The first determining module is further configured to: If the number of iterations does not reach the iteration threshold, then the optimized synthetic tree set is taken as the synthetic tree set to be optimized.
15. An electronic device comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-7.
16. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-7.
17. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the method according to any one of claims 1-7.