<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Genet.</journal-id>
<journal-title>Frontiers in Genetics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Genet.</abbrev-journal-title>
<issn pub-type="epub">1664-8021</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fgene.2021.709500</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Genetics</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Improving <italic>de novo</italic> Molecule Generation by Embedding LSTM and Attention Mechanism in CycleGAN</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Wang</surname> <given-names>Feng</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1419660/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Feng</surname> <given-names>Xiaochen</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1419894/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Guo</surname> <given-names>Xiao</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
</contrib>
<contrib contrib-type="author">
<name><surname>Xu</surname> <given-names>Lei</given-names></name>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/794274/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Xie</surname> <given-names>Liangxu</given-names></name>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1088088/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Chang</surname> <given-names>Shan</given-names></name>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<xref ref-type="corresp" rid="c002"><sup>&#x002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/854058/overview"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Changzhou University Huaide College</institution>, <addr-line>Taizhou</addr-line>, <country>China</country></aff>
<aff id="aff2"><sup>2</sup><institution>School of Computer Science and Artificial Intelligence, Aliyun School of Big Data, Changzhou University</institution>, <addr-line>Changzhou</addr-line>, <country>China</country></aff>
<aff id="aff3"><sup>3</sup><institution>Institute of Bioinformatics and Medical Engineering, Jiangsu University of Technology</institution>, <addr-line>Changzhou</addr-line>, <country>China</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Xiangxiang Zeng, Hunan University, China</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Leyi Wei, Shandong University, China; Hui Ding, University of Electronic Science and Technology of China, China; Jianmin Wang, Yonsei University, South Korea</p></fn>
<corresp id="c001">&#x002A;Correspondence: Liangxu Xie, <email>xieliangxu@jsut.edu.cn</email></corresp>
<corresp id="c002">Shan Chang, <email>schang@jsut.edu.cn</email></corresp>
<fn fn-type="other" id="fn004"><p>This article was submitted to Computational Genomics, a section of the journal Frontiers in Genetics</p></fn>
</author-notes>
<pub-date pub-type="epub">
<day>05</day>
<month>08</month>
<year>2021</year>
</pub-date>
<pub-date pub-type="collection">
<year>2021</year>
</pub-date>
<volume>12</volume>
<elocation-id>709500</elocation-id>
<history>
<date date-type="received">
<day>14</day>
<month>05</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>19</day>
<month>07</month>
<year>2021</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x00A9; 2021 Wang, Feng, Guo, Xu, Xie and Chang.</copyright-statement>
<copyright-year>2021</copyright-year>
<copyright-holder>Wang, Feng, Guo, Xu, Xie and Chang</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>The application of deep learning in the field of drug discovery brings the development and expansion of molecular generative models along with new challenges in this field. One of challenges in <italic>de novo</italic> molecular generation is how to produce new reasonable molecules with desired pharmacological, physical, and chemical properties. To improve the similarity between the generated molecule and the starting molecule, we propose a new molecule generation model by embedding Long Short-Term Memory (LSTM) and Attention mechanism in CycleGAN architecture, LA-CycleGAN. The network layer of the generator in CycleGAN is fused head and tail to improve the similarity of the generated structure. The embedded LSTM and Attention mechanism can overcome long-term dependency problems in treating the normally used SMILES input. From our quantitative evaluation, we present that LA-CycleGAN expands the chemical space of the molecules and improves the ability of structure conversion. The generated molecules are highly similar to the starting compound structures while obtaining expected molecular properties during cycle generative adversarial network learning, which comprehensively improves the performance of the generative model.</p>
</abstract>
<kwd-group>
<kwd>LSTM</kwd>
<kwd>attention mechanism</kwd>
<kwd>Mol-CycleGAN</kwd>
<kwd>head-to-tail feature fusion</kwd>
<kwd>LA-CycleGAN</kwd>
</kwd-group>
<contract-num rid="cn001">BE2019650</contract-num>
<contract-sponsor id="cn001">Natural Science Foundation of Jiangsu Province<named-content content-type="fundref-id">10.13039/501100004608</named-content></contract-sponsor>
<counts>
<fig-count count="8"/>
<table-count count="5"/>
<equation-count count="13"/>
<ref-count count="40"/>
<page-count count="14"/>
<word-count count="0"/>
</counts>
</article-meta>
</front>
<body>
<sec id="S1">
<title>Introduction</title>
<p>Computer-aided drug Design (CADD) promotes the speed of drug discovery (<xref ref-type="bibr" rid="B17">Macalino et al., 2015</xref>). Beyond the traditional CADD, artificial intelligence (AI) is widely used in the process of new drug screening and optimization. AI is realized by using various kinds of machine learning or deep learning (DL) algorithms (<xref ref-type="bibr" rid="B5">Goodfellow et al., 2016</xref>; <xref ref-type="bibr" rid="B14">Lavecchia, 2019</xref>). Among different methods, DL method generally trains a large amount of sample data through neural networks to learn the molecular structure of the sample. Different from the traditional similar ligand searching, the DL model obtains the characteristic information and general rules from learning prior knowledge during the training process. In the field of DL, generative models can generate novel compounds effectively with the desired properties, which would reduce the cost of drug discovery (<xref ref-type="bibr" rid="B12">Jing et al., 2018</xref>; <xref ref-type="bibr" rid="B35">Wainberg et al., 2018</xref>). Drug discovery and design (<xref ref-type="bibr" rid="B23">Muegge et al., 2017</xref>; <xref ref-type="bibr" rid="B1">Agrawal, 2018</xref>) use the knowledge of available biomedicine (<xref ref-type="bibr" rid="B19">Mamoshina et al., 2016</xref>; <xref ref-type="bibr" rid="B33">Tang et al., 2019</xref>) to define the parameters and indicators that required by each drug molecule in the following processes: (1) Selection and confirmation of drug targets; (2) Discovery of seed compound (Hit); (3) Discovery and optimization of lead compounds (Lead); (4) Discovery of Candidate. Among the processes, molecule generation (<xref ref-type="bibr" rid="B38">Xu et al., 2019</xref>) emergences as new tool in the hit-to-lead and lead optimization phases of drug discovery.</p>
<p>The generation model (<xref ref-type="bibr" rid="B10">Jensen, 2019</xref>; <xref ref-type="bibr" rid="B36">Walters and Murcko, 2020</xref>) is used to generate new molecules with similar molecular activity to the trained compounds, and to learn the distribution characteristics of data by using unsupervised learning (<xref ref-type="bibr" rid="B28">Radford et al., 2015</xref>). The generative models normally use SMILES (<xref ref-type="bibr" rid="B37">Weininger, 1988</xref>; <xref ref-type="bibr" rid="B25">&#x00D6;zt&#x00FC;rk et al., 2016</xref>) grammar based on ASCII characters and molecular graphs based on Graph (<xref ref-type="bibr" rid="B15">Li et al., 2018</xref>; <xref ref-type="bibr" rid="B16">Lim et al., 2020</xref>) to describe molecules at the atomic level. For example, recurrent neural network (RNN) can generate a larger chemical space than the training set by using SMILES grammar to input a small part of molecular data set (<xref ref-type="bibr" rid="B2">Ar&#x00FA;s-Pous et al., 2019</xref>). Based on deep learning methods, several deep generative models have been proposed. Deep generative models are roughly divided into four categories: (1) Based on the Auto Encoder (AE) model used in semi-supervised learning and unsupervised learning; (2) Generative Adversarial Networks (GAN)(<xref ref-type="bibr" rid="B6">Goodfellow et al., 2014</xref>) model, which is composed of two architectures: generator and discriminator, and one-way generation that confronts each other during the training process; (3) Model based on RNN (<xref ref-type="bibr" rid="B22">M&#x00E9;ndez-Lucio et al., 2020</xref>); (4) Hybrid model based on the combination of deep generative model and reinforcement learning (RL) (<xref ref-type="bibr" rid="B7">Grisoni et al., 2020</xref>).</p>
<p>Different architectures are ongoing developed to generate more realistic molecules (<xref ref-type="bibr" rid="B29">Sarmad et al., 2019</xref>). Character-level recurrent neural network (CharRNN) (<xref ref-type="bibr" rid="B30">Segler et al., 2018</xref>) is trained on the SMILES molecular database. CharRNN is a chemical language model based on SMILES grammar specifications. It uses Maximum Likelihood Estimation (MLE) to optimize model parameters and improve the structural similarity of the generated molecules. CharRNN can generate molecules with new pharmacological properties. Variational Autoencoder (VAE) (<xref ref-type="bibr" rid="B4">G&#x00F3;mez-Bombarelli et al., 2018</xref>; <xref ref-type="bibr" rid="B31">Simonovsky and Komodakis, 2018</xref>) is a kind of &#x201C;encoder-decoder&#x201D; architecture. It proposes a new method based on the continuous coding of molecules to explore the chemical space. This model map high-dimensional data to latent space, and perform a new search based on directional gradients in chemical space. The Adversarial Autoencoder (AAE) (<xref ref-type="bibr" rid="B18">Makhzani et al., 2015</xref>; <xref ref-type="bibr" rid="B13">Kadurin et al., 2017</xref>) combines the ideas of adversarial training in VAE and GAN for the first time. Junction Tree Variational Autoencoder (JTN-VAE) (<xref ref-type="bibr" rid="B11">Jin et al., 2018</xref>) directly uses molecular graph expression. JTN-VAE alternatively generates linear SMILES strings to complete the task of molecule generation. First, the chemical substructure on the generated tree object is automatically decomposed, and the substructure on the training set is extracted. Then, these substructures are combined into a molecular map. Based on GAN, LatentGAN (<xref ref-type="bibr" rid="B27">Prykhodko et al., 2019</xref>) combines an autoencoder and a generative adversarial to carry out new molecular designs. CycleGAN (<xref ref-type="bibr" rid="B40">Zhu et al., 2017</xref>) combines two symmetrical GANs into a ring network, which has two generators and two discriminators to perform two data conversions. The Mol-CycleGAN model (<xref ref-type="bibr" rid="B21">Maziarka et al., 2020</xref>) extends CycleGAN to the JT-VAE framework to ensure that the generated compounds are always effective. The original molecular data set is entered into the &#x201C;encoder-decoder&#x201D; architecture in order to obtain a novel compound that is similar to the original molecular structure with the required pharmacological properties. Mol-CycleGAN does not use SMILES grammar and atomic ordering, which is a heavy training burden. The decoding method selected by the model is combined with the JT-VAE based on the Graph form, so that the generated molecule is always effective.</p>
<p>In this article, we proposed LA-CycleGAN by embedding CycleGAN architecture with long and short-term memory module (LSTM) (<xref ref-type="bibr" rid="B20">Mao et al., 2017</xref>) and Attention mechanism. We optimized the generator and discriminator of CycleGAN with the aim to improve the training performance of the network model and expand the chemical space. LSTM and Attention mechanism are used to solve long-term dependency problems when treating SMILES grammar inputs. The network layer of the generator of the confrontation network is merged end to end. Least Squares Generative Adversarial Network (LSGAN) (<xref ref-type="bibr" rid="B39">Yasonik, 2020</xref>) is used to learn the corresponding transformation by minimizing the loss. The results show that the optimized model improves the ability of structural transformation. The structure similarity between the generating molecule and the starting molecule is increased, which should satisfy the specific requirements for drug production.</p>
</sec>
<sec id="S2" sec-type="materials|methods">
<title>Materials and Methods</title>
<sec id="S2.SS1">
<title>LSTM</title>
<p>Long Short-Term Memory (LSTM) is a network structure extended from the RNN. This structure is mainly used to solve the problem of gradient disappearance and gradient explosion in the long sequence training process of SMILES grammar. The LSTM structure is shown in <xref ref-type="fig" rid="F1">Figure 1</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption><p>The flow chart of LSTM architecture.</p></caption>
<graphic xlink:href="fgene-12-709500-g001.tif"/>
</fig>
<p>Long Short-Term Memory (LSTM) can control the transmission state through three gating states. With the gating states, LSTM can process the characterization of various sequence lengths and perform globalization processing. Therefore, the SMILES can still have a better characterization when the SMILES type is longer. <italic>f</italic><sub><italic>t</italic></sub> stands for forget gate, whose structure purposefully deletes or adds information to the input sequence, and effectively handles the generation of molecular structures described in SMILES form. <italic>i</italic><sub><italic>t</italic></sub> stands for input gate used to update the unit state and determine whether the information is stored. <italic>C</italic><sub><italic>t</italic></sub> represents the output used by the output gate to control. As shown in Eq. (1).</p>
<disp-formula id="S2.Ex1">
<label>(1)</label>
<mml:math id="E1">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:munder>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mi mathvariant="normal">&#x03C3;</mml:mi>
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo movablelimits="false">&#x22C5;</mml:mo>
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo movablelimits="false">-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo movablelimits="false">,</mml:mo>
<mml:mi>x</mml:mi>
<mml:mmultiscripts>
<mml:mo movablelimits="false" stretchy="false">]</mml:mo>
<mml:mprescripts/>
<mml:mi>t</mml:mi>
<mml:none/>
</mml:mmultiscripts>
</mml:mrow>
<mml:mo movablelimits="false">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo movablelimits="false" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo movablelimits="false">&#x23DF;</mml:mo>
</mml:munder>
<mml:msub>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:munder>
<mml:mo rspace="5.3pt">&#x002A;</mml:mo>
<mml:mtext>tanh</mml:mtext>
</mml:mrow>
</mml:mrow>
<mml:munder>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mo movablelimits="false">(</mml:mo>
<mml:mtable displaystyle="true" rowspacing="0pt">
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi mathvariant="normal">&#x03C3;</mml:mi>
<mml:munder>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo movablelimits="false">&#x22C5;</mml:mo>
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo movablelimits="false">-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo movablelimits="false">,</mml:mo>
<mml:mi>x</mml:mi>
<mml:mmultiscripts>
<mml:mo movablelimits="false">+</mml:mo>
<mml:mprescripts/>
<mml:mi>t</mml:mi>
<mml:none/>
</mml:mmultiscripts>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo movablelimits="false" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo movablelimits="false">&#x23DF;</mml:mo>
</mml:munder>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:munder>
<mml:mo movablelimits="false" stretchy="false">]</mml:mo>
<mml:mo movablelimits="false">&#x002A;</mml:mo>
<mml:mi>C</mml:mi>
<mml:msub>
<mml:mi/>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo movablelimits="false">-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo movablelimits="false">+</mml:mo>
<mml:mi mathvariant="normal">&#x03C3;</mml:mi>
<mml:munder>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo movablelimits="false">&#x22C5;</mml:mo>
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo movablelimits="false">-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo movablelimits="false">,</mml:mo>
<mml:mi>x</mml:mi>
<mml:mmultiscripts>
<mml:mo movablelimits="false" stretchy="false">]</mml:mo>
<mml:mprescripts/>
<mml:mi>t</mml:mi>
<mml:none/>
</mml:mmultiscripts>
</mml:mrow>
<mml:mo movablelimits="false">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo movablelimits="false" stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo movablelimits="false">&#x23DF;</mml:mo>
</mml:munder>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:munder>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo lspace="12.5pt" movablelimits="false" rspace="5.3pt">&#x002A;</mml:mo>
<mml:mtext>tanh</mml:mtext>
<mml:munder>
<mml:munder accentunder="true">
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>C</mml:mi>
</mml:msub>
<mml:mo movablelimits="false">&#x22C5;</mml:mo>
<mml:mrow>
<mml:mo movablelimits="false" stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo movablelimits="false">-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo movablelimits="false">,</mml:mo>
<mml:mi>x</mml:mi>
<mml:mmultiscripts>
<mml:mo movablelimits="false" stretchy="false">]</mml:mo>
<mml:mprescripts/>
<mml:mi>t</mml:mi>
<mml:none/>
</mml:mmultiscripts>
</mml:mrow>
<mml:mo movablelimits="false">+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>C</mml:mi>
</mml:msub>
<mml:mo movablelimits="false" stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo movablelimits="false">&#x23DF;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:msup>
<mml:mi/>
<mml:mo movablelimits="false">&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:munder>
<mml:mo movablelimits="false" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mo movablelimits="false">)</mml:mo>
</mml:mrow>
<mml:mo movablelimits="false">&#x23DF;</mml:mo>
</mml:munder>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:munder>
</mml:math>
</disp-formula>
<p><italic>h</italic><sub><italic>t&#x2013;1</italic></sub> represents the output of the previous state and <italic>x</italic><sub><italic>t</italic></sub> represents the input to the current state. &#x03C3; represents the activation function of sigmoid on the gate and tanh represents the activation function on the state and output. <italic>W</italic> represents the weight, <italic>b</italic> represents the bias, and <italic>h</italic><sub><italic>t</italic></sub> represents the output of the current state. &#x2297; is unit times, and &#x2295; is unit plus.</p>
</sec>
<sec id="S2.SS2">
<title>Attention Mechanism</title>
<p>The Attention mechanism (<xref ref-type="bibr" rid="B34">Vaswani et al., 2017</xref>) also handles the chemical structural formula sequence globally. The vector generated by the LSTM module cannot fully represent the information of the entire sequence. The attention mechanism can retain the intermediate output results of the LSTM encoder on the input sequence. It is used to supplement the SMILES information lost by LSTM and perform secondary learning on the features that have not been learned. The process of re-modeling global information can effectively improve the performance of the model. The Attention mechanism is similar to the task mechanism of LSTM, which overcomes the problem of information loss in the feature expression process. It effectively focuses on the output results of the encoder according to the model target. The Attention mechanism is put at the bottom of the context vector insertion layer. The output vector of the LSTM is used as the input of the Attention mechanism, which is used to calculate the vector probability distribution of the feature. The method can capture the global information of the chemical formula structure. Attention mechanism solves the long-distance dependence of input sequence in RNN. The function of Attention mechanism is as shown in Eq. (2).</p>
<disp-formula id="S2.Ex3">
<label>(2)</label>
<mml:math id="E2">
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mpadded width="-5pt">
</mml:mpadded>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi/>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mtext>max</mml:mtext>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x2299;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mi>e</mml:mi>
<mml:msup>
<mml:mi>y</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
<mml:msqrt>
<mml:mi>d</mml:mi>
</mml:msqrt>
</mml:mfrac>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x002A;</mml:mo>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p><italic>Query</italic> represents the current molecule fragment, <italic>Key</italic> represents each molecule, and <italic>d</italic> is the vector dimension of <italic>query</italic> and <italic>key</italic>. <italic>Softmax</italic> is used to make the probability distribution of the result. <italic>Value</italic> represents the current molecule, and re-obtain important information. The attention mechanism can make deep neural network interpretable by capturing the important features. Attention mechanism assigns attention scores for the input features. The attention score can be interpreted as the importance of the feature, which will filter out the useless molecular feature information.</p>
</sec>
<sec id="S2.SS3">
<title>Model Architecture of LA-CycleGAN</title>
<p>During the optimization process of the model generated by Mol-CycleGAN, LSTM neural network and Attention mechanism are embedded in the framework of CycleGAN. The internal network layers of the generator and the discriminator are merged end to end. The first and last layers of the internal network layer are merged for the generator and the discriminator. During the training process, we use LSGAN loss and Batch Normalization (BN) (<xref ref-type="bibr" rid="B9">Ioffe and Szegedy, 2015</xref>). Mol-CycleGAN directly uses JT-VAE to generate latent vectors, which is convenient for molecular graphic expression. The purpose of CycleGAN is to learn the method from the original molecular data domain X to the target molecular data domain Y.</p>
<p>Through training mapping <sub><italic>G:X&#x2192;Y</italic></sub> and reverse mapping <sub><italic>F:Y&#x2192;X</italic></sub>, <sub><italic>F(G(X))&#x2248;X</italic></sub>, and <sub><italic>G(F(Y))&#x2248;Y</italic></sub> are established at the same time. In order to prevent generators G and F from stopping the conversion function after generating data, we use cycle consistency loss as an incentive, as in Eq. (3).</p>
<disp-formula id="S2.Ex4">
<label>(3)</label>
<mml:math id="E3">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo fence="true">||</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mtext>x</mml:mtext>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo fence="true">||</mml:mo>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo fence="true">||</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo fence="true">||</mml:mo>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>In order to prevent overfitting between input and output, the identity mapping loss is used to ensure that the generated molecule is close to the starting molecule, as in Eq. (4).</p>
<disp-formula id="S2.Ex5">
<label>(4)</label>
<mml:math id="E4">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo fence="true">||</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo fence="true">||</mml:mo>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo fence="true">||</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo fence="true">||</mml:mo>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>In order to ensure that the two generators can achieve mutual inversion, the overall loss function is used, where &#x03BB;<sub>1</sub> = 0.4, &#x03BB;<sub>2</sub> = 0.15, as in Eq. (5).</p>
<disp-formula id="S2.Ex6">
<label>(5)</label>
<mml:math id="E5">
<mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>X</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>X</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">&#x03BB;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">&#x03BB;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <italic>Dx</italic> is used to distinguish between <italic>X</italic> and <italic>F</italic>(<italic>Y</italic>), and <italic>D</italic><sub><italic>Y</italic></sub> is used to distinguish between <italic>Y</italic> and <italic>G</italic>(<italic>X</italic>). The two generators simultaneously carry out the reverse process of mutual fight against between optimization reduction and optimization increase. The overall loss function of the state is optimized according to Eq. (6).</p>
<disp-formula id="S2.E6">
<label>(6)</label>
<mml:math id="E6">
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mo>&#x002A;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo>&#x002A;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mpadded width="+2.8pt">
<mml:msub>
<mml:mtext>argmin</mml:mtext>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mpadded width="+2.8pt">
<mml:msub>
<mml:mtext>max</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>X</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mpadded>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>X</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>LS-GAN&#x2019;s confrontation loss is introduced, as in Eq. (7).</p>
<disp-formula id="S2.Ex8">
<label>(7)</label>
<mml:math id="E7">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>&#x223C;</mml:mo>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>Y</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mtext>y</mml:mtext>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The main idea of the molecular optimization method is to obtain molecular descriptors, which make the generated chemical molecules easier to synthesize and generate molecules similar to the original molecules.</p>
</sec>
<sec id="S2.SS4">
<title>Workflow</title>
<p>As shown in <xref ref-type="fig" rid="F2">Figure 2</xref>, GAN also generates discrete sequences when training potential chemical spaces. Then, the encoder can force the latent space to generate some continuously distributed sequences when training on the molecular data set. We construct a self-encoder in the generator of CycleGAN, and use the input data sequence as the learning target for characterization learning. The generator is composed of three components: encoder, converter, and decoder. The encoder is responsible for converting the SMILES string into a digital representation feature. The converter performs information conversion. The decoder reconstructs the features and obtains a new SMILES string. An encoded SMILES string is input into an LSTM model with 56 hidden neurons, which is constructed as a single-layer network. The encoder obtains the characteristic information and distribution law of the input original sequence data through LSTM. The vector output by the encoder through multiple feature combination is input to the converter constructed by the linear structure Sequential model. The latent vector output by the encoder is input to the converter. The converter plays a transitional role, converting various molecules from the source domain to the target domain, avoiding information loss. The LSTM module acts as a decoder. The vector of each output vector table of the decoder unit is restored to the size of the starting vector, and regain the characteristic information of low-level molecules. Then, the decoded molecules still retain the structure or characteristics of the original molecular data, and are converted into samples in the target domain.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption><p>The proposed architecture of LA-CycleGAN. LSTM with Attention mechanism are embedded in the generators.</p></caption>
<graphic xlink:href="fgene-12-709500-g002.tif"/>
</fig>
<p>We map the output vector of the decoder to the Attention mechanism, perform learning mapping on the vector output from the encoder and then calculate the distribution probability. The output feature information is fused into the layer fusion module to ensure that each original molecule input can be directly input to the final fully connected layer. In LA-CycleGAN, the use of head-to-tail feature fusion plays an important role in improving the similarity of molecular generation. In the process of generating, the low-level feature information at the head is accepted by the high-level feature information at the tail. By using the feature fusion, a thicker feature can be obtained from splicing the channel dimensions of the features. Therefore, the generated molecular dataset is closer to the molecules of the original data domain. The original feature information is retained, and the deviation between the generated sample and the original sample is reduced. The original molecular features remain in the generated molecular features, resulting in an effective molecular structure.</p>
<p>The discriminator inputs the original SMILES data set and the generated data together. The discriminator is composed of multiple dense layers to extract feature vectors from the data. In order to determine whether these features belong to a specific category. The output feature vector of the Attention mechanism is processed by the feedforward network layer with sigmoid activation, and the probability of sampling each character of the known character set in the data set is feedback. The last layer of the discriminator network is the dense layer and produce one-dimensional output. It is used to realize the judgment of the similarity difference of the generated molecules to continue the training of the discriminator. The network structure parameters of the new model are shown in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<table-wrap position="float" id="T1">
<label>TABLE 1</label>
<caption><p>LA-CycleGAN network layer structure parameters.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="left">Network layer structure (generator)</td>
<td valign="top" align="center">Units</td>
<td valign="top" align="center">Network layer structure (Discriminator)</td>
<td valign="top" align="center">Units</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Input</td>
<td valign="top" align="center">56</td>
<td valign="top" align="center">Input</td>
<td valign="top" align="center">56</td>
</tr>
<tr>
<td valign="top" align="left">Dense</td>
<td valign="top" align="center">56</td>
<td valign="top" align="center">Dense</td>
<td valign="top" align="center">56</td>
</tr>
<tr>
<td valign="top" align="left">LSTM</td>
<td valign="top" align="center">56</td>
<td valign="top" align="center">Dense</td>
<td valign="top" align="center">28</td>
</tr>
<tr>
<td valign="top" align="left">LSTM</td>
<td valign="top" align="center">28</td>
<td valign="top" align="center">Dense</td>
<td valign="top" align="center">56</td>
</tr>
<tr>
<td valign="top" align="left">LSTM</td>
<td valign="top" align="center">56</td>
<td valign="top" align="center">Attention</td>
<td valign="top" align="center">56, 64, 1</td>
</tr>
<tr>
<td valign="top" align="left">Attention</td>
<td valign="top" align="center">56, 64, 1</td>
<td valign="top" align="center">activation</td>
<td valign="top" align="center">Sigmoid</td>
</tr>
<tr>
<td valign="top" align="left">concatenate</td>
<td valign="top" align="center">57</td>
<td valign="top" align="center">Dense</td>
<td valign="top" align="center">1</td>
</tr>
<tr>
<td valign="top" align="left">Dense</td>
<td valign="top" align="center">56</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
</tr>
</tbody>
</table></table-wrap>
</sec>
<sec id="S2.SS5">
<title>Data Set</title>
<p>ZINC database (<xref ref-type="bibr" rid="B32">Sterling and Irwin, 2015</xref>) is a molecule structure database. The deep generative model requires training on a large amount of data to be able to learn patterns that can generalize and generate new molecules. Therefore, a molecular data set is extracted from the ZINC database containing 250,000 drugs. The chemical characteristics of drug molecules are generally defined by FeatureType and FeatureFamily. Each FeatureType uses smarts expressions to describe the mode and attributes of the molecule, and summarize and characterize the molecular structure from different degrees.</p>
<p>Molecules with the same activity generally have common chemical characteristics. FeatureFamily classifies features as a whole to achieve the matching effect of pharmacophore (<xref ref-type="bibr" rid="B24">Nastase et al., 2019</xref>), which is an effective way to determine whether a molecule has a certain type of pharmacodynamic characteristics. It can assist the structural design of drug molecules. The pharmacophore model is a model based on the characteristic elements of pharmacodynamics. Pharmacophore includes Aliphatic Rings, Aromatic Rings, Hydrogen-Bonding Acceptor (HBA), Hydrogen-Bond Donor (HBD), and other characteristic elements, which can test the ability of molecular structure transformation. The characteristic elements of the pharmacophore are incorporated into one of the standards for the generation of compound molecules, which can effectively avoid the generation of molecular structures with large errors in similar compounds. The new type of compound generated is contrary to the design requirements. Then, we select X and Y with different structure distributions, and test whether our model can learn transformation rules and apply them to molecules that the model has not seen before. According to the characteristics of the pharmacophore elements, the datasets with different features are divided as follows:</p>
<list list-type="simple">
<list-item>
<label>&#x2022;</label>
<p>Aliphatic Rings: Aliphatic Ring compounds refer to the hydrocarbon group in the molecule containing a carbocyclic ring, and this carbocyclic ring can be saturated and unsaturated. The molecule in X has exactly 1 alicyclic ring, while the molecule in Y has 2 or 3 Aliphatic Rings.</p>
</list-item>
<list-item>
<label>&#x2022;</label>
<p>Aromatic Rings: The molecule in X has exactly 2 Aromatic Rings, while the molecule in Y has 1, 3, or 4 Aromatic Rings.</p>
</list-item>
<list-item>
<label>&#x2022;</label>
<p>Hydrogen bond acceptor (HBA): The electronegative atom is the hydrogen acceptor. The molecule in X has 1 hydrogen bond, and the molecule in Y has 2&#x2013;3 hydrogen bond acceptors.</p>
</list-item>
<list-item>
<label>&#x2022;</label>
<p>Hydrogen bond donor (HBD): The molecule in X is a hydrogen bond, and the molecule in Y is 2, 3, or 4 hydrogen bond donors.</p>
</list-item>
</list>
</sec>
<sec id="S2.SS6">
<title>Performance Evaluation Index</title>
<p>We use the evaluation indicators provided by MOSES (<xref ref-type="bibr" rid="B26">Polykovskiy et al., 2020</xref>) to evaluate the generated molecules. The generative model is evaluated by comparing the fragment similarity, scaffold similarity, nearest neighbor similarity, Tanimoto coefficient, Fr&#x00E9;chet ChemNet Distance and internal diversity of the generated set <italic>G</italic>. <bold>Valid</bold> judges the generated SMILES string and checks the consistency of the valence and chemical bond of the generated molecule. <bold>Filters</bold> are part of the generated molecules, which pass the filters applied during the construction of the dataset to remove molecules containing charged atoms. <bold>Novelty</bold> is the proportion of generated molecules that do not appear in the training set, and low novelty represents overfitting. <bold>Success rate</bold> represents the success rate of molecular structure transformation. <bold>Uniqueness</bold> checks whether the model will collapse and only a few typical molecules are generated. <bold>Non-identity</bold> is the score when the generated molecule is different from the starting molecule.</p>
<p><bold>Fragment similarity (Frag)</bold> is defined as the cosine distance between fragment frequency vectors, such as Eq. (8).</p>
<disp-formula id="S2.E8">
<label>(8)</label>
<mml:math id="E8">
<mml:mrow>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mrow>
<mml:mtext>cos</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>G</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>For the fragment frequency vectors <italic>F</italic><sub><italic>G</italic></sub> and <italic>F</italic><sub><italic>R</italic></sub> of molecule <italic>G</italic> and molecule <italic>R</italic>, the size is equal to the vocabulary of all chemical fragments in the data set. The corresponding molecular element indicates the frequency of the corresponding fragment in the molecular set. This metric shows the similarity of the two groups of molecules at the chemical fragment level Degree and distance definition.</p>
<p><bold>Nearest neighbor similarity (SNN)</bold> is the average Tanimoto similarity between the generated molecule and the nearest molecule in the test set, as in the Eq. (9).</p>
<disp-formula id="S2.E9">
<label>(9)</label>
<mml:math id="E9">
<mml:mrow>
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:munder>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>G</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>G</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mrow>
<mml:munder>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>G</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The chemical structure encoded in the fingerprint, the nearest neighbor molecule <italic>m</italic><sub><italic>R</italic></sub> from the test set <italic>R</italic> and the molecule <italic>m</italic><sub><italic>G</italic></sub> in the generating set <italic>G</italic>.</p>
<p><bold>Internal Diversity (<italic>IntDiv</italic><sub><italic>p</italic></sub>)</bold> is the average pair-wise similarity of generated molecules, which is used to evaluate the chemical diversity in the generating set, as shown in Eq. (10).</p>
<disp-formula id="S2.E10">
<label>(10)</label>
<mml:math id="E10">
<mml:mrow>
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>D</mml:mi>
<mml:mi>i</mml:mi>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mfrac>
<mml:mrow>
<mml:munder>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>p</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mrow>
</mml:mrow>
<mml:mi>P</mml:mi>
</mml:mroot>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p><bold>Fr&#x00E9;chetChemNet Distance (FCD)</bold> can predict the biological activity of drugs, as shown in Eq. (11).</p>
<disp-formula id="S2.Ex9">
<label>(11)</label>
<mml:math id="E11">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mi>C</mml:mi>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x03BC;</mml:mi>
<mml:mi>G</mml:mi>
</mml:msub>
<mml:mo>-</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x03BC;</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:msup>
<mml:mo stretchy="false">|</mml:mo>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mi>T</mml:mi>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
</mml:msup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>&#x03BC;<sub><italic>G</italic></sub> and &#x03BC;<sub><italic>R</italic></sub> are mean vectors, &#x2211;<italic>G</italic> and &#x2211;<italic>R</italic> are the covariance matrix of the penultimate layer activity on sets <italic>G</italic> and <italic>R</italic>.</p>
<p><bold>Tanimoto coefficient</bold> based on molecular fingerprints is used to judge the degree of correlation between two data, as shown in Eq. (12).</p>
<disp-formula id="S2.E12">
<label>(12)</label>
<mml:math id="E12">
<mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mo largeop="true" symmetric="true">&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>&#x2229;</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mo largeop="true" symmetric="true">&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>&#x222A;</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p><bold>Scaffold similarity (Scaff)</bold> is the cosine distance between the frequency vectors of the molecular scaffold as in Eq. (13).</p>
<disp-formula id="S2.E13">
<label>(13)</label>
<mml:math id="E13">
<mml:mrow>
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>G</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mrow>
<mml:mtext>cos</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>G</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p><italic>S</italic><sub><italic>G</italic></sub> and <italic>S</italic><sub><italic>R</italic></sub> represent the frequency of the scaffold in molecule <italic>G</italic> and molecule <italic>R</italic>.</p>
<p>The above six indicators comprehensively examine the characteristics of the generated molecules. In order to quantitatively compare the distribution of the generated set and the test set, we use the following three auxiliary indicators:</p>
<p><bold>Molecular weight (MW)</bold>: It is the sum of the atomic weights in the molecule.</p>
<p><bold>logP:</bold> It reflects the distribution of a substance in oil and water. This value is the logarithmic value of the ratio of the partition coefficient between n-octanol and water. The larger the value of <italic>logP</italic> is, the more fat-soluble the substance is.</p>
<p><bold>Synthetics Accessibility Score (SA)</bold>: It used to evaluate the difficulty of compound synthesis.</p>
</sec>
</sec>
<sec id="S3">
<title>Results and Discussion</title>
<sec id="S3.SS1">
<title>Composition of Datasets</title>
<p>The data set is divided based on Aliphatic Rings, Aromatic Rings, HBA, and HBD. The data set size is shown in <xref ref-type="table" rid="T2">Table 2</xref>, which shows the train size and test size of the molecules in the data set. In all experiments, we use the training set (X<sub>train</sub> and Y<sub>train</sub>) to train and the test set (X<sub>test</sub> and Y<sub>test</sub>) to evaluate the model.</p>
<table-wrap position="float" id="T2">
<label>TABLE 2</label>
<caption><p>Structural transformations and dataset sizes.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="left">Dataset</td>
<td valign="top" align="center">Aliphatic Rings</td>
<td valign="top" align="center">Aromatic Rings</td>
<td valign="top" align="center">HBA</td>
<td valign="top" align="center">HBD</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">X<sub>train</sub></td>
<td valign="top" align="center">40,000</td>
<td valign="top" align="center">80,000</td>
<td valign="top" align="center">75,000</td>
<td valign="top" align="center">75,000</td>
</tr>
<tr>
<td valign="top" align="left">X<sub>test</sub></td>
<td valign="top" align="center">69,682</td>
<td valign="top" align="center">18,220</td>
<td valign="top" align="center">37,149</td>
<td valign="top" align="center">37,149</td>
</tr>
<tr>
<td valign="top" align="left">Y<sub>train</sub></td>
<td valign="top" align="center">40,000</td>
<td valign="top" align="center">80,000</td>
<td valign="top" align="center">75,000</td>
<td valign="top" align="center">75,000</td>
</tr>
<tr>
<td valign="top" align="left">Y<sub>test</sub></td>
<td valign="top" align="center">10,329</td>
<td valign="top" align="center">53,717</td>
<td valign="top" align="center">10,764</td>
<td valign="top" align="center">12,785</td>
</tr>
</tbody>
</table></table-wrap>
<p><xref ref-type="fig" rid="F3">Figure 3</xref> shows the experimental data set ratio distribution map in <xref ref-type="table" rid="T2">Table 2</xref>. The population of molecules with Aliphatic Rings, Aromatic Rings, HBA, and HBD and the distribution of X and Y are shown in <xref ref-type="fig" rid="F3">Figure 3</xref>. In each histogram, the blue columns represent the distribution of the ZINC-250K data set according to the four characteristics. The orange bars represent the distribution of the X data set. The green bars represent the distribution of the Y data set.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption><p>ZINC-250K data sets are distributed according to specified four characteristics. <bold>(A)</bold> Aliphatic Rings; <bold>(B)</bold> Aromatic Rings; <bold>(C)</bold> Hydrogen-Bonding Acceptor; <bold>(D)</bold> Hydrogen-Bonding Donor.</p></caption>
<graphic xlink:href="fgene-12-709500-g003.tif"/>
</fig>
</sec>
<sec id="S3.SS2">
<title>Structure Attributes</title>
<p>In the process of model training, due to the special structure of CycleGAN, the model will transform and reconstruct the structure of the molecular data on the two opposite regions X and Y. In <xref ref-type="table" rid="T3">Table 3</xref>, the structural performance and structural attributes of the model in the distribution of different characteristics are quantitatively computed, including Aliphatic Rings, Aromatic Rings, HBA, and HBD. A fully symmetrical structure is used in the model. When the model is constructing, we partly consider the problem of structural transformation. LA-CycleGAN model has been improved in terms of Success rate, Uniqueness and Non-identity as shown as the bolded data in <xref ref-type="table" rid="T3">Table 3</xref>. Aromatic Rings has the lowest conversion success rate and is the most difficult to convert. After optimization, Aliphatic Rings has the highest success rate for substructure conversion tasks. Under the distribution of HBA and HBD characteristics, the two data sets tend to be consistent in the direction of structural transformation. The success rate of HBA and HBD is only slightly different. Uniqueness has improved significantly in all distributions. This result shows that the LA-CycleGAN model can reduce the probability of repeated generation of molecules and avoid an increase in the overlap rate of molecules at the same region. During model verification, the Non-identity of HBA and HBD has been significantly improved after optimization. This result shows that the similarity of molecules has been improved with the conserved Aliphatic Rings. In summary, the LA-CycleGAN model presents the best ability to obtain data conversion over Mol-CycleGAN when training on a data set distributed according to Aliphatic Rings. It also proves that the data set is easy to change. It is easier to use in tests of drug production.</p>
<table-wrap position="float" id="T3">
<label>TABLE 3</label>
<caption><p>Structure conversion assessment of generated molecules.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="center" colspan="2">Model test<hr/></td>
<td valign="top" align="center" colspan="3"><italic>X&#x2192;<italic>G</italic>(<italic>X</italic>)</italic><hr/></td>
<td valign="top" align="center" colspan="3"><italic>Y&#x2192;<italic>F</italic>(<italic>Y</italic>)</italic><hr/></td>
</tr>
<tr>
<td valign="top" align="left">Data</td>
<td valign="top" align="center">Model</td>
<td valign="top" align="center">Success rate</td>
<td valign="top" align="center">Uniqueness</td>
<td valign="top" align="center">Non-identity</td>
<td valign="top" align="center">Success rate</td>
<td valign="top" align="center">Uniqueness</td>
<td valign="top" align="center">Non-identity</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Aliphatic Rings</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.534</td>
<td valign="top" align="center">0.976</td>
<td valign="top" align="center">0.908</td>
<td valign="top" align="center">0.422</td>
<td valign="top" align="center">0.990</td>
<td valign="top" align="center">0.890</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center"><bold>0.617</bold></td>
<td valign="top" align="center">0.982</td>
<td valign="top" align="center"><bold>0.998</bold></td>
<td valign="top" align="center"><bold>0.494</bold></td>
<td valign="top" align="center">0.991</td>
<td valign="top" align="center"><bold>0.999</bold></td>
</tr>
<tr>
<td valign="top" align="left">Aromatic Rings</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.535</td>
<td valign="top" align="center">0.986</td>
<td valign="top" align="center">0.908</td>
<td valign="top" align="center">0.421</td>
<td valign="top" align="center">0.995</td>
<td valign="top" align="center">0.889</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.536</td>
<td valign="top" align="center">0.990</td>
<td valign="top" align="center">0.997</td>
<td valign="top" align="center">0.427</td>
<td valign="top" align="center"><bold>0.999</bold></td>
<td valign="top" align="center">0.997</td>
</tr>
<tr>
<td valign="top" align="left">HBA</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.608</td>
<td valign="top" align="center">0.987</td>
<td valign="top" align="center">0.697</td>
<td valign="top" align="center">0.378</td>
<td valign="top" align="center">0.987</td>
<td valign="top" align="center">0.684</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.612</td>
<td valign="top" align="center"><bold>0.996</bold></td>
<td valign="top" align="center">0.995</td>
<td valign="top" align="center">0.382</td>
<td valign="top" align="center">0.993</td>
<td valign="top" align="center">0.999</td>
</tr>
<tr>
<td valign="top" align="left">HBD</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.602</td>
<td valign="top" align="center">0.985</td>
<td valign="top" align="center">0.658</td>
<td valign="top" align="center">0.380</td>
<td valign="top" align="center">0.988</td>
<td valign="top" align="center">0.648</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.612</td>
<td valign="top" align="center">0.991</td>
<td valign="top" align="center">0.996</td>
<td valign="top" align="center">0.420</td>
<td valign="top" align="center">0.994</td>
<td valign="top" align="center">0.998</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<attrib><italic>The item with the highest data value in the column is indicated in bold.</italic></attrib>
</table-wrap-foot>
</table-wrap>
<p>As shown in <xref ref-type="fig" rid="F4">Figure 4</xref>, in the distribution of Aliphatic Rings, without Aliphatic Ring molecules, there is only a difference in the number of rings between data sets X and Y. Therefore, the number of Aliphatic Rings in the newly generated molecular structure is significantly reduced, and the success rate of obtaining Aliphatic Ring conversion is higher. In the above-mentioned molecular data conversion processes based on the distribution of the characteristic element, molecules that do not contain the above-mentioned characteristic element are eliminated, which effectively improves the success rate of molecular transformation. At the same time, the number of molecules produced by the 3-ring Aliphatic Ring has increased significantly, and the number of Aliphatic Rings produced by the 1-ring and 2-ring Aliphatic Rings is still the largest as shown in <xref ref-type="fig" rid="F4">Figure 4</xref>.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption><p>The distribution of Aliphatic Rings that generate molecules. <bold>(A)</bold> Distribution of the number of Aliphatic Rings in X and G(X); <bold>(B)</bold> distribution of the number of Aliphatic Rings in Y and F(Y).</p></caption>
<graphic xlink:href="fgene-12-709500-g004.tif"/>
</fig>
</sec>
<sec id="S3.SS3">
<title>Similarity Evaluation</title>
<p>In the chemical space, the similarity of molecular structure will directly affect the biological activity of similar molecules. In <xref ref-type="fig" rid="F5">Figure 5</xref>, the Tanimoto similarity evaluation is performed on the data set of the distribution of various elements. It visually shows the similarity between each compound vector. Compared with Mol-CycleGAN, LA-CycleGAN achieve better Tanimoto similarity distribution between the generated molecules and the starting molecules. The Tanimoto similarity distribution also holds true for random molecules in the ZINC-250K data set. It can be seen that the molecular similarity of the LA-CycleGAN model is significantly increased. The Attention mechanism assigns different degrees of attention to different parts of the input data or feature map. Focused learning makes the weight distribution obtained in the process of molecule generation more concentrated, and can retain useful information. Finally, it will generate highly similar molecules. The distribution of similarity between the newly generated molecule and the starting molecule in the LA-CycleGAN model gradually tends to be consistent in the X and Y regions. Compared with the original model, the consistency of the similarity distribution of the optimized model has been adjusted and improved. To improve the similarity between two molecules, it is necessary to enhance the discrimination ability of the discriminator. Extract features from the input, and then add a dense layer of one-dimensional output to determine whether the extracted features belong to a specific category. The problem of judging true and false molecules is transformed into a binary classification problem. After convergence, the discriminator is used as a classifier for judging the true and false of molecular data.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption><p>Density map of Tanimoto similarity between corresponding molecules. <bold>(A)</bold> Tanimoto similarity for the Aliphatic Rings subset; <bold>(B)</bold> Tanimoto similarity for the Aromatic Rings subset; <bold>(C)</bold> Tanimoto similarity for the HBA subset; <bold>(D)</bold> Tanimoto similarity for the HBD subset. The left panel is from Mol-CycleGAN and the right panel is from LA-CycleGAN.</p></caption>
<graphic xlink:href="fgene-12-709500-g005.tif"/>
</fig>
<p><xref ref-type="table" rid="T4">Table 4</xref> shows the prediction and verification of the model from the data structure of the four different feature distributions to determine the effectiveness of the model&#x2019;s molecular generation. The Valid of the HBA distribution is the highest in the four different feature distributions. The Valid of the Aliphatic Rings distribution has not been changed. The effectiveness of the distribution of Aromatic Rings has increased the most. Novelty reveals the ability of the optimized model to generate new molecules. Aliphatic Rings generates the highest proportion of new molecules and the highest improvement. The LA-CycleGAN model has the highest IntDiv1 and IntDiv2 scores on the HBA distribution. The HBA molecule has the best performance in terms of generating internal diversity. The internal diversity of HBD distribution structure is slightly lower than that of HBA. It can be seen that the data structure based on the hydrogen bond system is easy to modify and reorganize molecules. Aromatic Rings has the most obvious performance in the Filters evaluation. As part of generating molecules, it can filter charged particles to satisfy the effectiveness of generated molecular compounds. At the same time, inhibiting the generation or deleting molecular fragments do not meet the designed expectations. In our evaluation, we divide the dataset according to the characteristics of the pharmacophore elements without considering the diversity of molecular skeletons. It would be an interesting study to compare the detailed effect of diversity of starting molecules on the diversity of generated molecule by finely tuning the degree of scaffold similarity in two sets X and Y (<xref ref-type="bibr" rid="B3">Benhenda, 2017</xref>; <xref ref-type="bibr" rid="B8">Gui et al., 2020</xref>).</p>
<table-wrap position="float" id="T4">
<label>TABLE 4</label>
<caption><p>Performance evaluation of model on generating molecules.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="left">Data</td>
<td valign="top" align="center">Model</td>
<td valign="top" align="center">Valid (&#x2191;)</td>
<td valign="top" align="center">Novelty (&#x2191;)</td>
<td valign="top" align="center">IntDiv<sub>1</sub> (&#x2191;)</td>
<td valign="top" align="center">IntDiv<sub>2</sub> (&#x2191;)</td>
<td valign="top" align="center">Filters (&#x2191;)</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Aliphatic</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.998</td>
<td valign="top" align="center">0.975</td>
<td valign="top" align="center">0.861</td>
<td valign="top" align="center">0.856</td>
<td valign="top" align="center">0.588</td>
</tr>
<tr>
<td valign="top" align="left">Rings</td>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.998</td>
<td valign="top" align="center"><bold>0.992</bold><sup>a</sup></td>
<td valign="top" align="center">0.869</td>
<td valign="top" align="center">0.863</td>
<td valign="top" align="center">0.644</td>
</tr>
<tr>
<td valign="top" align="left">Aromatic</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.996</td>
<td valign="top" align="center">0.988</td>
<td valign="top" align="center">0.867</td>
<td valign="top" align="center">0.861</td>
<td valign="top" align="center">0.615</td>
</tr>
<tr>
<td valign="top" align="left">Rings</td>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.998</td>
<td valign="top" align="center">0.988</td>
<td valign="top" align="center">0.868</td>
<td valign="top" align="center">0.872</td>
<td valign="top" align="center"><bold>0.682</bold></td>
</tr>
<tr>
<td valign="top" align="left">HBA</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.997</td>
<td valign="top" align="center">0.977</td>
<td valign="top" align="center">0.871</td>
<td valign="top" align="center">0.865</td>
<td valign="top" align="center">0.606</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center"><bold>0.998</bold></td>
<td valign="top" align="center">0.987</td>
<td valign="top" align="center"><bold>0.883</bold></td>
<td valign="top" align="center"><bold>0.877</bold></td>
<td valign="top" align="center">0.674</td>
</tr>
<tr>
<td valign="top" align="left">HBD</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.996</td>
<td valign="top" align="center">0.975</td>
<td valign="top" align="center">0.872</td>
<td valign="top" align="center">0.866</td>
<td valign="top" align="center">0.603</td>
</tr>
<tr>
<td valign="top" align="justify"/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.998</td>
<td valign="top" align="center">0.987</td>
<td valign="top" align="center">0.883</td>
<td valign="top" align="center">0.866</td>
<td valign="top" align="center">0.673</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<attrib><italic><sup><italic>a</italic></sup>The bolded data in <xref ref-type="table" rid="T4">Table 4</xref> represents the item with the highest data value in the column.</italic></attrib>
</table-wrap-foot>
</table-wrap>
<p><xref ref-type="table" rid="T5">Table 5</xref> shows the four evaluation indicators of FCD, SNN, Frag, and Scaff for the evaluation of the similarity of generated molecules. The chemical fragments generated by the model design have higher similarity and the optimized model has improved on these four evaluation indicators. Aliphatic Rings performs well in Fra, Scaff, and SNN. The fragments of the generated molecule and the starting molecule have the highest similarity ratio, and have a high degree of similarity in the direction of the chemical structure, so they have the same biological response. From an overall point of view, the performance of the LA-CycleGAN model has been comprehensively improved. LSTM solves the problem of gradient disappearance and improves the accuracy of molecule generation. The generated molecular data has a high proportion of scaffolds that are the same as the test set. Among the four data sets distributed according to characteristic elements, HBA has the most significant improvement and the highest proportion. FCD is the error function used to measure the activity of the resulting compound. In the optimized model, the result of Aromatic Rings achieves the smallest error and its biological activity is most similar to the starting molecule. In summary, from the four different chemical structure distributions, the model can generate pharmacophores with excellent biological activity.</p>
<table-wrap position="float" id="T5">
<label>TABLE 5</label>
<caption><p>Evaluation of the similarity of the generated molecules.</p></caption>
<table cellspacing="5" cellpadding="5" frame="hsides" rules="groups">
<thead>
<tr>
<td valign="top" align="center" colspan="2">Model test<hr/></td>
<td valign="top" align="center" colspan="2">FCD (&#x2193;)<hr/></td>
<td valign="top" align="center" colspan="2">SNN (&#x2191;)<hr/></td>
<td valign="top" align="center" colspan="2">Frag (&#x2191;)<hr/></td>
<td valign="top" align="center" colspan="2">Scaff (&#x2191;)<hr/></td>
</tr>
<tr>
<td valign="top" align="left">Data</td>
<td valign="top" align="center">Model</td>
<td valign="top" align="center">Test</td>
<td valign="top" align="center">TestSF</td>
<td valign="top" align="center">Test</td>
<td valign="top" align="center">TestSF</td>
<td valign="top" align="center">Test</td>
<td valign="top" align="center">TestSF</td>
<td valign="top" align="center">Test</td>
<td valign="top" align="center">TestSF</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Aliphatic Rings</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.574</td>
<td valign="top" align="center">0.600</td>
<td valign="top" align="center">0.498</td>
<td valign="top" align="center">0.486</td>
<td valign="top" align="center">0.954</td>
<td valign="top" align="center">0.475</td>
<td valign="top" align="center">0.277</td>
<td valign="top" align="center">0.090</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.568</td>
<td valign="top" align="center">0.600</td>
<td valign="top" align="center"><bold>0.502</bold><sup>a</sup></td>
<td valign="top" align="center"><bold>0.493</bold></td>
<td valign="top" align="center"><bold>0.963</bold></td>
<td valign="top" align="center"><bold>0.664</bold></td>
<td valign="top" align="center">0.374</td>
<td valign="top" align="center">0.108</td>
</tr>
<tr>
<td valign="top" align="left">Aromatic Rings</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.391</td>
<td valign="top" align="center">0.047</td>
<td valign="top" align="center">0.142</td>
<td valign="top" align="center">0.467</td>
<td valign="top" align="center">0.142</td>
<td valign="top" align="center">0.109</td>
<td valign="top" align="center">0.563</td>
<td valign="top" align="center">0.157</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center"><bold>0.361</bold></td>
<td valign="top" align="center"><bold>0.046</bold></td>
<td valign="top" align="center">0.481</td>
<td valign="top" align="center">0.471</td>
<td valign="top" align="center">0.166</td>
<td valign="top" align="center">0.471</td>
<td valign="top" align="center">0.577</td>
<td valign="top" align="center"><bold>0.199</bold></td>
</tr>
<tr>
<td valign="top" align="left">HBA</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.389</td>
<td valign="top" align="center">0.442</td>
<td valign="top" align="center">0.479</td>
<td valign="top" align="center">0.464</td>
<td valign="top" align="center">0.331</td>
<td valign="top" align="center">0.473</td>
<td valign="top" align="center">0.759</td>
<td valign="top" align="center">0.134</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.382</td>
<td valign="top" align="center">0.417</td>
<td valign="top" align="center">0.479</td>
<td valign="top" align="center">0.468</td>
<td valign="top" align="center">0.347</td>
<td valign="top" align="center">0.514</td>
<td valign="top" align="center"><bold>0.799</bold></td>
<td valign="top" align="center">0.141</td>
</tr>
<tr>
<td valign="top" align="left">HBD</td>
<td valign="top" align="center">Mol-CycleGAN</td>
<td valign="top" align="center">0.392</td>
<td valign="top" align="center">0.444</td>
<td valign="top" align="center">0.480</td>
<td valign="top" align="center">0.464</td>
<td valign="top" align="center">0.318</td>
<td valign="top" align="center">0.456</td>
<td valign="top" align="center">0.660</td>
<td valign="top" align="center">0.137</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">LA-CycleGAN</td>
<td valign="top" align="center">0.384</td>
<td valign="top" align="center">0.330</td>
<td valign="top" align="center">0.480</td>
<td valign="top" align="center">0.468</td>
<td valign="top" align="center">0.328</td>
<td valign="top" align="center">0.486</td>
<td valign="top" align="center">0.689</td>
<td valign="top" align="center">0.137</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<attrib><italic><sup><italic>a</italic></sup>The bolded data in <xref ref-type="table" rid="T5">Table 5</xref> represents the best value for the column.</italic></attrib>
</table-wrap-foot>
</table-wrap>
<p>We evaluate the generated molecules by using the evaluation indicators provided by MOSES. In <xref ref-type="fig" rid="F6">Figure 6</xref>, the Mol-CycleGAN model and the LA-CycleGAN model are compared from LogP, MW, and SA. LogP shows that the concentration ratio of octanol to water in the LA-CycleGAN model has increased significantly. Compared with Mol-CycleGAN, our LA-CycleGAN model has reproduced the best LogP distribution for the set of Aliphatic Rings, reaching 0.62. The overall Mol-Weight has been improved, and the overall molecular weight has been increased. Based on the molecular weight of the generated and tested sets, it can be judged whether the generated set is biased toward lighter or heavier molecules. In MW plots, the MW of the generation set of the improved model has been increased, which means that the generated set of the new model is biased toward heavier molecules. SA reveals the difficulty of drug synthesis and is used to evaluate learning models. Aliphatic Rings is the most difficult to synthesize drugs. The difficulty of synthesizing has decreased for the other three groups of compounds. For example, the SA decreases from 0.71 to 0.53 for the set of HBA.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption><p>Attribute distribution of generated molecules. LA-CycleGAN model provides <bold>(A)</bold> the improved logP, <bold>(B)</bold> molecule weight (MW) and <bold>(C)</bold> Synthetics Accessibility (SA) Score.</p></caption>
<graphic xlink:href="fgene-12-709500-g006.tif"/>
</fig>
<p>The visualization process of the Mol-CycleGAN and LA-CycleGAN model to generate molecules in the four data distributions is shown in <xref ref-type="fig" rid="F7">Figures 7</xref>, <xref ref-type="fig" rid="F8">8</xref>. As shown in molecular diagram, the obtained molecules are all effective molecules. For both models, the similarity of X and G(X) is generally higher than that of Y and F(Y). LA-CycleGAN displays comparative performance as the Mol-CycleGAN. Especially in the task of reproducing molecules of HBA and HBD, LA-CycleGAN produces higher similarity score than the Mol-CycleGAN as shown in <xref ref-type="fig" rid="F8">Figure 8</xref>. After optimizing the model, HBD obtained the highest similarity score, indicating that the similarity has been improved significantly.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption><p>Molecular structure diagram. <bold>(A)</bold> Molecules from the aliphatic ring subset; <bold>(B)</bold> molecules from aromatic ring subset. In each sub-figure, the upper layer shows the starting molecules, the middle layer shows the generated molecules, and the bottom layer shows the similarity score.</p></caption>
<graphic xlink:href="fgene-12-709500-g007.tif"/>
</fig>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption><p>Molecular structure diagram. <bold>(A)</bold> Molecules from the HBA subset; <bold>(B)</bold> molecules from HBD subset. In each sub-figure, the upper layer shows the starting molecules, the middle layer shows the generated molecules, and the bottom layer shows the similarity score.</p></caption>
<graphic xlink:href="fgene-12-709500-g008.tif"/>
</fig>
</sec>
</sec>
<sec id="S4">
<title>Conclusion</title>
<p>We proposed LA-CycleGAN as a new method of molecule generation by embedding LSTM and Attention mechanism in the CycleGAN model architecture. LSTM and Attention mechanisms are introduced to solve the problem of gradient disappearance and improve the accuracy of molecule generation. The generator in the CycleGAN uses Autoencoder to map the molecular structure into the latent chemical space. The decoder returns the sampled potential chemical space to the original space. Finally, the molecular map is obtained from the potential space of JT-VAE. The proposed model is evaluated by four subsets with different feature distributions extracted from the ZINC-250K dataset. The generated molecules between the Mol-CycleGAN model and the LA-CycleGAN model are quantitatively evaluated. The experimental results show that the similarity and success rate of molecules generated by the LA-CycleGAN model have been significantly improved over Mol-CycleGAN. The generated molecules have similar or even the same biological activity as the starting molecules. LA-CycleGAN model can act as one of molecule generation method to generate molecules with similar drug-like compounds. The attention-based deep neural network can be interpreted by furfure analyzing the relationship between the attention scores of features and the expected generated molecules. It would be an attractive work to make <italic>de novo</italic> molecular generation model interpretable in future study.</p></sec>
<sec id="S5">
<title>Data Availability Statement</title>
<p>The datasets presented in this study can be found in online repositories. The names of the repository/repositories and accession number(s) can be found below: <ext-link ext-link-type="uri" xlink:href="https://osf.io/42x7d/?view_only=c2cf708215804280bdf24c2bfb4f690b">https://osf.io/42x7d/?view_only=c2cf708215804280bdf24c2bfb4f690b</ext-link>, Open Science Framework.</p>
</sec>
<sec id="S6">
<title>Author Contributions</title>
<p>FW, LiX, and SC derived the concept. FW and XF wrote relevant code and performed the experimental work and analysis. XF, XG, and LeX wrote the original manuscript. FW, XF, XG, and LeX provided the feedback and critical input. LiX and SC prepared the revised version of the manuscript. All authors read and approved the final manuscript.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="h15">
<title>Publisher&#x2019;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
</body>
<back>
<fn-group>
<fn fn-type="financial-disclosure">
<p><bold>Funding.</bold> This work was supported by the fund of the Natural Science Foundation of Jiangsu Province (BE2019650 and BK20191032), the National Natural Science Foundation of China (22003020 and 81803430), the Changzhou Sci&#x0026;Tech Program (CJ20200045), and the Jiangsu &#x201C;Mass Innovation and Entrepreneurship&#x201D; Talent Programme.</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Agrawal</surname> <given-names>P.</given-names></name></person-group> (<year>2018</year>). <article-title>Artificial intelligence in drug discovery and development.</article-title> <source><italic>J. Pharmacovigil</italic></source> <volume>6</volume>:<issue>e173</issue>.</citation></ref>
<ref id="B2"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ar&#x00FA;s-Pous</surname> <given-names>J.</given-names></name> <name><surname>Blaschke</surname> <given-names>T.</given-names></name> <name><surname>Ulander</surname> <given-names>S.</given-names></name> <name><surname>Reymond</surname> <given-names>J. L.</given-names></name> <name><surname>Chen</surname> <given-names>H.</given-names></name> <name><surname>Engkvist</surname> <given-names>O.</given-names></name></person-group> (<year>2019</year>). <article-title>Exploring the GDB-13 chemical space using deep generative models.</article-title> <source><italic>J. Cheminform.</italic></source> <volume>11</volume> <fpage>1</fpage>&#x2013;<lpage>14</lpage>.</citation></ref>
<ref id="B3"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Benhenda</surname> <given-names>M.</given-names></name></person-group> (<year>2017</year>). <article-title>ChemGAN challenge for drug discovery: can AI reproduce natural chemical diversity?</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint].arXiv:1708.08227</comment></citation></ref>
<ref id="B4"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>G&#x00F3;mez-Bombarelli</surname> <given-names>R.</given-names></name> <name><surname>Wei</surname> <given-names>J. N.</given-names></name> <name><surname>Duvenaud</surname> <given-names>D.</given-names></name> <name><surname>Hern&#x00E1;ndez-Lobato</surname> <given-names>J. M.</given-names></name> <name><surname>S&#x00E1;nchez-Lengeling</surname> <given-names>B.</given-names></name> <name><surname>Sheberla</surname> <given-names>D.</given-names></name><etal/></person-group> (<year>2018</year>). <article-title>Automatic chemical design using a data-driven continuous representation of molecules.</article-title> <source><italic>ACS Central Sci.</italic></source> <volume>4</volume> <fpage>268</fpage>&#x2013;<lpage>276</lpage>. <pub-id pub-id-type="doi">10.1021/acscentsci.7b00572</pub-id> <pub-id pub-id-type="pmid">29532027</pub-id></citation></ref>
<ref id="B5"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Goodfellow</surname> <given-names>I.</given-names></name> <name><surname>Bengio</surname> <given-names>Y.</given-names></name> <name><surname>Courville</surname> <given-names>A.</given-names></name></person-group> (<year>2016</year>). <source><italic>Deep Learning.</italic></source> <publisher-loc>Cambridge</publisher-loc>: <publisher-name>MIT press</publisher-name>.</citation></ref>
<ref id="B6"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Goodfellow</surname> <given-names>I. J.</given-names></name> <name><surname>Pouget-Abadie</surname> <given-names>J.</given-names></name> <name><surname>Mirza</surname> <given-names>M.</given-names></name> <name><surname>Xu</surname> <given-names>B.</given-names></name> <name><surname>Warde-Farley</surname> <given-names>D.</given-names></name> <name><surname>Ozair</surname> <given-names>S.</given-names></name><etal/></person-group> (<year>2014</year>). <article-title>Generative adversarial networks.</article-title> <source><italic>Adv. Neural Inform. Process. Syst.</italic></source> <volume>3</volume> <fpage>2672</fpage>&#x2013;<lpage>2680</lpage>.</citation></ref>
<ref id="B7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Grisoni</surname> <given-names>F.</given-names></name> <name><surname>Moret</surname> <given-names>M.</given-names></name> <name><surname>Lingwood</surname> <given-names>R.</given-names></name> <name><surname>Schneider</surname> <given-names>G.</given-names></name></person-group> (<year>2020</year>). <article-title>Bidirectional molecule generation with recurrent neural networks.</article-title> <source><italic>J. Chem. Inform. Model.</italic></source> <volume>60</volume> <fpage>1175</fpage>&#x2013;<lpage>1183</lpage>. <pub-id pub-id-type="doi">10.1021/acs.jcim.9b00943</pub-id> <pub-id pub-id-type="pmid">31904964</pub-id></citation></ref>
<ref id="B8"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gui</surname> <given-names>J.</given-names></name> <name><surname>Sun</surname> <given-names>Z.</given-names></name> <name><surname>Wen</surname> <given-names>Y.</given-names></name> <name><surname>Tao</surname> <given-names>D.</given-names></name> <name><surname>Ye</surname> <given-names>J.</given-names></name></person-group> (<year>2020</year>). <article-title>A review on generative adversarial networks: algorithms, theory, and applications.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint].arXiv:2001.06937</comment></citation></ref>
<ref id="B9"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ioffe</surname> <given-names>S.</given-names></name> <name><surname>Szegedy</surname> <given-names>C.</given-names></name></person-group> (<year>2015</year>). &#x201C;<article-title>Batch normalization: accelerating deep network training by reducing internal covariate shift</article-title>,&#x201D; in <source><italic>Proceedings of the 32nd International Conference on Machine Learning</italic></source> <volume>Vol. 37</volume> (<publisher-loc>Lille</publisher-loc>: <publisher-name>PMLR</publisher-name>), <fpage>448</fpage>&#x2013;<lpage>456</lpage>.</citation></ref>
<ref id="B10"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jensen</surname> <given-names>J. H.</given-names></name></person-group> (<year>2019</year>). <article-title>A graph-based genetic algorithm and generative model/Monte Carlo tree search for the exploration of chemical space.</article-title> <source><italic>Chem. Sci.</italic></source> <volume>10</volume> <fpage>3567</fpage>&#x2013;<lpage>3572</lpage>. <pub-id pub-id-type="doi">10.1039/c8sc05372c</pub-id> <pub-id pub-id-type="pmid">30996948</pub-id></citation></ref>
<ref id="B11"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jin</surname> <given-names>W.</given-names></name> <name><surname>Barzilay</surname> <given-names>R.</given-names></name> <name><surname>Jaakkola</surname> <given-names>T.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Junction tree variational autoencoder for molecular graph generation</article-title>,&#x201D; in <source><italic>Proccedings of the International Conference on Machine Learning</italic></source>, Vol. 80 (Stockholm: PMLR), <fpage>2323</fpage>&#x2013;<lpage>2332</lpage>.</citation></ref>
<ref id="B12"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jing</surname> <given-names>Y.</given-names></name> <name><surname>Bian</surname> <given-names>Y.</given-names></name> <name><surname>Hu</surname> <given-names>Z.</given-names></name> <name><surname>Wang</surname> <given-names>L.</given-names></name> <name><surname>Xie</surname> <given-names>X. Q.</given-names></name></person-group> (<year>2018</year>). <article-title>Deep learning for drug design: an artificial intelligence paradigm for drug discovery in the big data era.</article-title> <source><italic>AAPS J.</italic></source> <volume>20</volume> <fpage>1</fpage>&#x2013;<lpage>10</lpage>. <pub-id pub-id-type="doi">10.1016/b978-0-12-820045-2.00002-7</pub-id></citation></ref>
<ref id="B13"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kadurin</surname> <given-names>A.</given-names></name> <name><surname>Aliper</surname> <given-names>A.</given-names></name> <name><surname>Kazennov</surname> <given-names>A.</given-names></name> <name><surname>Mamoshina</surname> <given-names>P.</given-names></name> <name><surname>Vanhaelen</surname> <given-names>Q.</given-names></name> <name><surname>Khrabrov</surname> <given-names>K.</given-names></name><etal/></person-group> (<year>2017</year>). <article-title>The cornucopia of meaningful leads: applying deep adversarial autoencoders for new molecule development in oncology.</article-title> <source><italic>Oncotarget</italic></source> <volume>8</volume>:<issue>10883</issue>. <pub-id pub-id-type="doi">10.18632/oncotarget.14073</pub-id> <pub-id pub-id-type="pmid">28029644</pub-id></citation></ref>
<ref id="B14"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lavecchia</surname> <given-names>A.</given-names></name></person-group> (<year>2019</year>). <article-title>Deep learning in drug discovery: opportunities, challenges and future prospects.</article-title> <source><italic>Drug Discov. Today</italic></source> <volume>24</volume> <fpage>2017</fpage>&#x2013;<lpage>2032</lpage>.doi: <pub-id pub-id-type="doi">10.1016/j.drudis.2019.07.006</pub-id> <pub-id pub-id-type="pmid">31377227</pub-id></citation></ref>
<ref id="B15"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>Y.</given-names></name> <name><surname>Zhang</surname> <given-names>L.</given-names></name> <name><surname>Liu</surname> <given-names>Z.</given-names></name></person-group> (<year>2018</year>). <article-title>Multi-objective de novo drug design with conditional graph generative model.</article-title> <source><italic>J. Cheminform.</italic></source> <volume>10</volume> <fpage>1</fpage>&#x2013;<lpage>24</lpage>.</citation></ref>
<ref id="B16"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lim</surname> <given-names>J.</given-names></name> <name><surname>Hwang</surname> <given-names>S. Y.</given-names></name> <name><surname>Moon</surname> <given-names>S.</given-names></name> <name><surname>Kim</surname> <given-names>S.</given-names></name> <name><surname>Kim</surname> <given-names>W. Y.</given-names></name></person-group> (<year>2020</year>). <article-title>Scaffold-based molecular design with a graph generative model.</article-title> <source><italic>Chem. Sci.</italic></source> <volume>11</volume> <fpage>1153</fpage>&#x2013;<lpage>1164</lpage>. <pub-id pub-id-type="doi">10.1039/c9sc04503a</pub-id> <pub-id pub-id-type="pmid">34084372</pub-id></citation></ref>
<ref id="B17"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Macalino</surname> <given-names>S. J.</given-names></name> <name><surname>Gosu</surname> <given-names>V.</given-names></name> <name><surname>Hong</surname> <given-names>S.</given-names></name> <name><surname>Choi</surname> <given-names>S.</given-names></name></person-group> (<year>2015</year>). <article-title>Role of computer-aided drug design in modern drug discovery.</article-title> <source><italic>Arch. Pharm. Res.</italic></source> <volume>38</volume> <fpage>1686</fpage>&#x2013;<lpage>1701</lpage>. <pub-id pub-id-type="doi">10.1007/s12272-015-0640-5</pub-id> <pub-id pub-id-type="pmid">26208641</pub-id></citation></ref>
<ref id="B18"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Makhzani</surname> <given-names>A.</given-names></name> <name><surname>Shlens</surname> <given-names>J.</given-names></name> <name><surname>Jaitly</surname> <given-names>N.</given-names></name> <name><surname>Goodfellow</surname> <given-names>I.</given-names></name> <name><surname>Frey</surname> <given-names>B.</given-names></name></person-group> (<year>2015</year>). <article-title>Adversarial autoencoders.</article-title> <source><italic>arXiv</italic></source> <comment>[preprint].arXiv:1511.05644</comment>.</citation></ref>
<ref id="B19"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mamoshina</surname> <given-names>P.</given-names></name> <name><surname>Vieira</surname> <given-names>A.</given-names></name> <name><surname>Putin</surname> <given-names>E.</given-names></name> <name><surname>Zhavoronkov</surname> <given-names>A.</given-names></name></person-group> (<year>2016</year>). <article-title>Applications of deep learning in biomedicine.</article-title> <source><italic>Mol. Pharm.</italic></source> <volume>13</volume> <fpage>1445</fpage>&#x2013;<lpage>1454</lpage>. <pub-id pub-id-type="doi">10.1021/acs.molpharmaceut.5b00982</pub-id> <pub-id pub-id-type="pmid">27007977</pub-id></citation></ref>
<ref id="B20"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mao</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>Q.</given-names></name> <name><surname>Xie</surname> <given-names>H.</given-names></name> <name><surname>Lau</surname> <given-names>R. Y. K.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Smolley</surname> <given-names>S. P.</given-names></name></person-group> (<year>2017</year>). &#x201C;<article-title>Least squares generative adversarial networks</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE International Conference on Computer Vision</italic></source> (<publisher-loc>New York, NY</publisher-loc>:<publisher-name>IEEE</publisher-name>), <fpage>2794</fpage>&#x2013;<lpage>2802</lpage>.</citation></ref>
<ref id="B21"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Maziarka</surname> <given-names>&#x0141;</given-names></name> <name><surname>Pocha</surname> <given-names>A.</given-names></name> <name><surname>Kaczmarczyk</surname> <given-names>J.</given-names></name> <name><surname>Rataj</surname> <given-names>K.</given-names></name> <name><surname>Danel</surname> <given-names>T.</given-names></name> <name><surname>Warcho&#x0142;</surname> <given-names>M.</given-names></name></person-group> (<year>2020</year>). <article-title>Mol-CycleGAN: a generative model for molecular optimization.</article-title> <source><italic>J. Cheminform.</italic></source> <volume>12</volume>:<issue>2</issue>.</citation></ref>
<ref id="B22"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>M&#x00E9;ndez-Lucio</surname> <given-names>O.</given-names></name> <name><surname>Baillif</surname> <given-names>B.</given-names></name> <name><surname>Clevert</surname> <given-names>D. A.</given-names></name> <name><surname>Rouqui&#x00E9;</surname> <given-names>D.</given-names></name> <name><surname>Wichard</surname> <given-names>J.</given-names></name></person-group> (<year>2020</year>). <article-title>De novo generation of hit-like molecules from gene expression signatures using artificial intelligence.</article-title> <source><italic>Nat. Commun.</italic></source> <volume>11</volume>:<issue>10</issue>.</citation></ref>
<ref id="B23"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Muegge</surname> <given-names>I.</given-names></name> <name><surname>Bergner</surname> <given-names>A.</given-names></name> <name><surname>Kriegl</surname> <given-names>J. M.</given-names></name></person-group> (<year>2017</year>). <article-title>Computer-aided drug design at Boehringer Ingelheim.</article-title> <source><italic>J. Comp. Aid. Mol. Design</italic></source> <volume>31</volume> <fpage>275</fpage>&#x2013;<lpage>285</lpage>. <pub-id pub-id-type="doi">10.1007/s10822-016-9975-3</pub-id> <pub-id pub-id-type="pmid">27650777</pub-id></citation></ref>
<ref id="B24"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Nastase</surname> <given-names>A. F.</given-names></name> <name><surname>Anand</surname> <given-names>J. P.</given-names></name> <name><surname>Bender</surname> <given-names>A. M.</given-names></name> <name><surname>Montgomery</surname> <given-names>D.</given-names></name> <name><surname>Griggs</surname> <given-names>N. W.</given-names></name> <name><surname>Fernandez</surname> <given-names>T. J.</given-names></name><etal/></person-group> (<year>2019</year>). <article-title>Dual pharmacophores explored via structure&#x2013;activity relationship (SAR) matrix: insights into potent, bifunctional opioid ligand design.</article-title> <source><italic>J. Med. Chem.</italic></source> <volume>62</volume> <fpage>4193</fpage>&#x2013;<lpage>4203</lpage>. <pub-id pub-id-type="doi">10.1021/acs.jmedchem.9b00378</pub-id> <pub-id pub-id-type="pmid">30916966</pub-id></citation></ref>
<ref id="B25"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>&#x00D6;zt&#x00FC;rk</surname> <given-names>H.</given-names></name> <name><surname>Ozkirimli</surname> <given-names>E.</given-names></name> <name><surname>&#x00D6;zg&#x00FC;r</surname> <given-names>A.</given-names></name></person-group> (<year>2016</year>). <article-title>A comparative study of SMILES-based compound similarity functions for drug-target interaction prediction.</article-title> <source><italic>BMC Bioinformatics</italic></source> <volume>17</volume>:<issue>128</issue>. <pub-id pub-id-type="doi">10.1186/s12859-016-0977-x</pub-id> <pub-id pub-id-type="pmid">26987649</pub-id></citation></ref>
<ref id="B26"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Polykovskiy</surname> <given-names>D.</given-names></name> <name><surname>Zhebrak</surname> <given-names>A.</given-names></name> <name><surname>Sanchez-Lengeling</surname> <given-names>B.</given-names></name> <name><surname>Golovanov</surname> <given-names>S.</given-names></name> <name><surname>Tatanov</surname> <given-names>O.</given-names></name> <name><surname>Belyaev</surname> <given-names>S.</given-names></name><etal/></person-group> (<year>2020</year>). <article-title>Molecular sets (MOSES): a benchmarking platform for molecular generation models.</article-title> <source><italic>Front. Pharmacol.</italic></source> <volume>11</volume>:<issue>565644</issue>. <pub-id pub-id-type="doi">10.3389/fphar.2020.565644</pub-id> <pub-id pub-id-type="pmid">33390943</pub-id></citation></ref>
<ref id="B27"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Prykhodko</surname> <given-names>O.</given-names></name> <name><surname>Johansson</surname> <given-names>S. V.</given-names></name> <name><surname>Kotsias</surname> <given-names>P. C.</given-names></name> <name><surname>Bjerrum</surname> <given-names>E. J.</given-names></name> <name><surname>Engkvist</surname> <given-names>O.</given-names></name> <name><surname>Chen</surname> <given-names>H.</given-names></name></person-group> (<year>2019</year>). <article-title>A de novo molecular generation method using latent vector based generative adversarial network.</article-title> <source><italic>J. Cheminform.</italic></source> <volume>11</volume>:<issue>74</issue>.</citation></ref>
<ref id="B28"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Radford</surname> <given-names>A.</given-names></name> <name><surname>Metz</surname> <given-names>L.</given-names></name> <name><surname>Chintala</surname> <given-names>S.</given-names></name></person-group> (<year>2015</year>). <article-title>Unsupervised representation learning with deep convolutional generative adversarial networks.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint].arXiv:1511.06434</comment>,</citation></ref>
<ref id="B29"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sarmad</surname> <given-names>M.</given-names></name> <name><surname>Lee</surname> <given-names>H. J.</given-names></name> <name><surname>Kim</surname> <given-names>Y. M.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>RL-GAN-NET: a reinforcement learning agent controlled GAN network for real-time point cloud shape completion</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</italic></source> <publisher-loc>Long Beach, CA</publisher-loc>. <fpage>5898</fpage>&#x2013;<lpage>5907</lpage>.</citation></ref>
<ref id="B30"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Segler</surname> <given-names>M. H. S.</given-names></name> <name><surname>Kogej</surname> <given-names>T.</given-names></name> <name><surname>Tyrchan</surname> <given-names>C.</given-names></name> <name><surname>Waller</surname> <given-names>M. P.</given-names></name></person-group> (<year>2018</year>). <article-title>Generating focused molecule libraries for drug discovery with recurrent neural networks.</article-title> <source><italic>ACS Central Sci.</italic></source> <volume>4</volume> <fpage>120</fpage>&#x2013;<lpage>131</lpage>. <pub-id pub-id-type="doi">10.1021/acscentsci.7b00512</pub-id> <pub-id pub-id-type="pmid">29392184</pub-id></citation></ref>
<ref id="B31"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Simonovsky</surname> <given-names>M.</given-names></name> <name><surname>Komodakis</surname> <given-names>N.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Graphvae: towards generation of small graphs using variational autoencoders</article-title>,&#x201D; in <source><italic>Proccedings of the 27thInternational Conference on Artificial Neural Networks</italic></source> (<publisher-loc>Cham</publisher-loc>:<publisher-name>Springer</publisher-name>), <fpage>412</fpage>&#x2013;<lpage>422</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-030-01418-6_41</pub-id></citation></ref>
<ref id="B32"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sterling</surname> <given-names>T.</given-names></name> <name><surname>Irwin</surname> <given-names>J. J.</given-names></name></person-group> (<year>2015</year>). <article-title>ZINC 15&#x2013;ligand discovery for everyone.</article-title> <source><italic>J. Chem. Inf. Model.</italic></source> <volume>55</volume> <fpage>2324</fpage>&#x2013;<lpage>2337</lpage>. <pub-id pub-id-type="doi">10.1021/acs.jcim.5b00559</pub-id> <pub-id pub-id-type="pmid">26479676</pub-id></citation></ref>
<ref id="B33"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tang</surname> <given-names>B.</given-names></name> <name><surname>Pan</surname> <given-names>Z.</given-names></name> <name><surname>Yin</surname> <given-names>K.</given-names></name> <name><surname>Khateeb</surname> <given-names>A.</given-names></name></person-group> (<year>2019</year>). <article-title>Recent advances of deep learning in bioinformatics and computational biology.</article-title> <source><italic>Front. Genet.</italic></source> <volume>10</volume>:<issue>214</issue>. <pub-id pub-id-type="doi">10.3389/fgene.2019.00214</pub-id> <pub-id pub-id-type="pmid">30972100</pub-id></citation></ref>
<ref id="B34"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Vaswani</surname> <given-names>A.</given-names></name> <name><surname>Shazeer</surname> <given-names>N.</given-names></name> <name><surname>Parmar</surname> <given-names>N.</given-names></name> <name><surname>Uszkoreit</surname> <given-names>J.</given-names></name> <name><surname>Jones</surname> <given-names>L.</given-names></name> <name><surname>Gomez</surname> <given-names>A. N.</given-names></name><etal/></person-group> (<year>2017</year>). <article-title>Attention is all you need.</article-title> <source><italic>arXiv</italic></source> <comment>[Preprint].arXiv:1706.03762</comment></citation></ref>
<ref id="B35"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wainberg</surname> <given-names>M.</given-names></name> <name><surname>Merico</surname> <given-names>D.</given-names></name> <name><surname>Delong</surname> <given-names>A.</given-names></name> <name><surname>Frey</surname> <given-names>B. J.</given-names></name></person-group> (<year>2018</year>). <article-title>Deep learning in biomedicine.</article-title> <source><italic>Nat. Biotechnol.</italic></source> <volume>36</volume> <fpage>829</fpage>&#x2013;<lpage>838</lpage>.</citation></ref>
<ref id="B36"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Walters</surname> <given-names>W. P.</given-names></name> <name><surname>Murcko</surname> <given-names>M.</given-names></name></person-group> (<year>2020</year>). <article-title>Assessing the impact of generative AI on medicinal chemistry.</article-title> <source><italic>Nat. Biotechnol.</italic></source> <volume>38</volume> <fpage>143</fpage>&#x2013;<lpage>145</lpage>. <pub-id pub-id-type="doi">10.1038/s41587-020-0418-2</pub-id> <pub-id pub-id-type="pmid">32001834</pub-id></citation></ref>
<ref id="B37"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Weininger</surname> <given-names>D.</given-names></name></person-group> (<year>1988</year>). <article-title>SMILES, a chemical language and information system. 1. Introduction to methodology and encoding rules.</article-title> <source><italic>J. Chem. Inf. Comput. Sci.</italic></source> <volume>28</volume> <fpage>31</fpage>&#x2013;<lpage>36</lpage>. <pub-id pub-id-type="doi">10.1021/ci00057a005</pub-id></citation></ref>
<ref id="B38"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>Y.</given-names></name> <name><surname>Lin</surname> <given-names>K.</given-names></name> <name><surname>Wang</surname> <given-names>S.</given-names></name> <name><surname>Wang</surname> <given-names>L.</given-names></name> <name><surname>Cai</surname> <given-names>C.</given-names></name> <name><surname>Song</surname> <given-names>C.</given-names></name><etal/></person-group> (<year>2019</year>). <article-title>Deep learning for molecular generation.</article-title> <source><italic>Future Med. Chem.</italic></source> <volume>11</volume> <fpage>567</fpage>&#x2013;<lpage>597</lpage>.</citation></ref>
<ref id="B39"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yasonik</surname> <given-names>J.</given-names></name></person-group> (<year>2020</year>). <article-title>Multiobjective de novo drug design with recurrent neural networks and nondominated sorting.</article-title> <source><italic>J. Cheminf.</italic></source> <volume>12</volume>:<issue>14</issue>.</citation></ref>
<ref id="B40"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhu</surname> <given-names>J. Y.</given-names></name> <name><surname>Park</surname> <given-names>T.</given-names></name> <name><surname>Isola</surname> <given-names>P.</given-names></name> <name><surname>Efros</surname> <given-names>A. A.</given-names></name></person-group> (<year>2017</year>). &#x201C;<article-title>Unpaired image-to-image translation using cycle-consistent adversarial networks</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE International Conference on Computer Vision</italic></source>, <publisher-loc>Venice</publisher-loc>, <fpage>2223</fpage>&#x2013;<lpage>2232</lpage>.</citation></ref>
</ref-list><glossary>
<title>Abbreviations</title>
<def-list id="DL1">
<def-item><term>GAN</term><def><p>Generative Adversarial Networks</p></def></def-item>
<def-item><term>DL</term><def><p>Deep Learning</p></def></def-item>
<def-item><term>VAE</term><def><p>variational autoencoder</p></def></def-item>
<def-item><term>JT-VAE</term><def><p>Junction Tree Variational Autoencoder</p></def></def-item>
<def-item><term>LSTM</term><def><p>Long Short-Term Memory</p></def></def-item>
<def-item><term>CBDD</term><def><p>Computer-aided drug Design</p></def></def-item>
<def-item><term>RNN</term><def><p>recurrent neural network.</p></def></def-item>
</def-list>
</glossary>
</back>
</article>