US20230268035A1 - Method and apparatus for generating chemical structure using neural network - Google Patents
Method and apparatus for generating chemical structure using neural network Download PDFInfo
- Publication number
- US20230268035A1 US20230268035A1 US18/139,655 US202318139655A US2023268035A1 US 20230268035 A1 US20230268035 A1 US 20230268035A1 US 202318139655 A US202318139655 A US 202318139655A US 2023268035 A1 US2023268035 A1 US 2023268035A1
- Authority
- US
- United States
- Prior art keywords
- chemical structure
- neural network
- property
- new
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000000126 substance Substances 0.000 title claims abstract description 294
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 242
- 238000000034 method Methods 0.000 title claims description 100
- 230000014509 gene expression Effects 0.000 claims abstract description 151
- 230000036961 partial effect Effects 0.000 claims abstract description 84
- 230000008569 process Effects 0.000 claims description 42
- 230000004913 activation Effects 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 16
- 238000012886 linear function Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 6
- 239000010410 layer Substances 0.000 description 75
- 238000001994 activation Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 20
- IJGRMHOSHXDMSA-UHFFFAOYSA-N Atomic nitrogen Chemical compound N#N IJGRMHOSHXDMSA-UHFFFAOYSA-N 0.000 description 16
- 230000008859 change Effects 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 8
- 229910052799 carbon Inorganic materials 0.000 description 8
- 229910052757 nitrogen Inorganic materials 0.000 description 8
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 7
- 229910052760 oxygen Inorganic materials 0.000 description 7
- 239000001301 oxygen Substances 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 238000000611 regression analysis Methods 0.000 description 3
- 238000004618 QSPR study Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 208000021049 Carney complex type 2 Diseases 0.000 description 1
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000012769 display material Substances 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002844 melting Methods 0.000 description 1
- 230000008018 melting Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C10/00—Computational theoretical chemistry, i.e. ICT specially adapted for theoretical aspects of quantum chemistry, molecular mechanics, molecular dynamics or the like
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/40—Searching chemical structures or physicochemical data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/50—Molecular design, e.g. of drugs
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/70—Machine learning, data mining or chemometrics
Definitions
- the disclosure relates to methods and apparatuses for generating a chemical structure using a neural network.
- a neural network refers to a computational architecture that models a biological brain.
- various types of electronic systems have analyzed input data and generated optimized information by using neural networks.
- Embodiments of the disclosure relate to methods and apparatuses for generating a chemical structure using a neural network. Also, provided are computer-readable recording media including a program, which, when executed by a computer, performs the methods.
- the technical problems to be solved are not limited to these as described, but there may be other technical problems.
- a method of generating a chemical structure by using a neural network apparatus including: inputting a descriptor of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the descriptor of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determining an expression region for expressing the property in the descriptor, the expression region comprising a bit position in the descriptor; and generating a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- the determining of the expression region may include determining the expression region for expressing the property in the descriptor by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
- the determining of the expression region may include determining the expression region for expressing the property in the descriptor by applying a layer-wise relevance propagation (LRP) technique to the trained neural network, wherein an activation function applied to a node of the trained neural network may be designated as a linear function to apply the LRP technique to the trained neural network, and a mean square error (MSE) may be designated for optimization.
- LRP layer-wise relevance propagation
- the generating of the new chemical structure may include: obtaining a bit value of the bit position of the expression region in the descriptor; and generating the new chemical structure by applying a genetics algorithm to the bit value of the bit position and modifying the partial structure corresponding to the expression region.
- the generating of the new chemical structure may include: generating a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region; inputting a descriptor for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and generating a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and storing the new first chemical structure when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
- a neural network apparatus configured to generate a chemical structure including: a memory configured to store at least one program; and a processor configured to drive a neural network by executing the at least one program, wherein the processor is configured to: input descriptor of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the descriptor of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determine an expression region for expressing the property in the descriptor, the expression region comprising a bit position in the descriptor; and generate a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- a method of generating a chemical structure by using a neural network apparatus including: inputting an image of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determining an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image; and generating a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- the determining of the expression region may include determining the expression region for expressing the property in the image by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
- the determining of the expression region may include determining the expression region for expressing the property in the image by applying a layer-wise relevance propagation (LRP) technique to the trained neural network, wherein an activation function applied to a node of the trained neural network may be designated as a linear function to apply the LRP technique to the trained neural network, and a mean square error (MSE) may be designated for optimization.
- LRP layer-wise relevance propagation
- MSE mean square error
- the generating of the new chemical structure may include: obtaining pixel values of the one or more pixels of the expression region in the image; and generating the new chemical structure by applying Gaussian noise to the pixel values of the one or more pixels and modifying the partial structure corresponding to the expression region.
- the generating of the new chemical structure may include: when a plurality of expression regions expressing the particular property in the image are present, obtaining coordinate information in the image corresponding to the plurality of expression regions; calculating a center point in the image of the plurality of expression regions based on the coordinate information and obtaining a pixel value of the center point; and generating the new chemical structure by applying Gaussian noise to the pixel value and modifying the partial structure corresponding to the center point.
- the generating of the new chemical structure may include: generating a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region; inputting an image for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and generating a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and storing the new first chemical structure when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
- a neural network apparatus configured to generate a chemical structure including: a memory configured to store at least one program; and a processor configured to drive a neural network by executing the at least one program, wherein the processor is configured to: input an image of a chemical structure to a trained neural network that generates a property value of a property of the reference chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determine an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image; and generate a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- a non-transitory computer-readable recording medium includes a program, which, when executed by a computer, performs any one of the methods.
- FIG. 1 is a block diagram illustrating a hardware configuration of a neural network apparatus according to an embodiment
- FIG. 2 is a diagram illustrating a computation performed by a deep neural network (DNN) according to an embodiment
- FIG. 3 is a diagram illustrating a computation performed by a recurrent neural network (RNN) according to an embodiment
- FIG. 4 is a conceptual diagram illustrating a neural network system for generating a chemical structure according to an embodiment
- FIG. 5 is a diagram illustrating a method of representing a chemical structure, according to an embodiment
- FIG. 6 is a diagram illustrating a method of interpreting a neural network, according to an embodiment
- FIG. 7 is a diagram illustrating an example of changing an expression region of a descriptor to generate a new chemical structure according to an embodiment
- FIG. 8 is a diagram illustrating an example of changing a partial structure by changing a bit value of a descriptor according to an embodiment
- FIG. 9 is a diagram illustrating an example of changing a partial structure by changing a pixel value of an image according to an embodiment
- FIG. 10 is a diagram illustrating an example of changing a pixel value when there are a plurality of expression regions on an image according to an embodiment
- FIG. 11 is a flowchart of a method of generating a new chemical structure by changing a descriptor for a chemical structure in a neural network apparatus, according to an embodiment.
- FIG. 12 is a flowchart of a method of generating a new chemical structure by changing an image for a chemical structure in a neural network, apparatus according to an embodiment.
- Some embodiments of the disclosure may be represented by functional block configurations and various processing operations. Some or all of these functional blocks may be implemented using various numbers of hardware and/or software components that perform particular functions.
- the functional blocks of the disclosure may be implemented using one or more microprocessors or circuits executing instructions to perform a given function.
- the functional blocks of the disclosure may be implemented in various programming or scripting languages.
- the functional blocks may be implemented with algorithms executed by one or more processors.
- the disclosure may also employ conventional techniques for electronic configuration, signal processing, and/or data processing.
- the terms “mechanism”, “element”, “unit” and “configuration” may be used in a broad sense and are not limited to mechanical and physical configurations.
- connection lines or connection members between the components illustrated in the drawings are merely illustrative of functional connections and/or physical or circuit connections. In actual devices, connections between the components may be represented by various functional connections, physical connections, or circuit connections that may be replaced or added.
- a descriptor that is data used in a neural network system refers to an indicator value used to describe structural characteristics of a chemical structure and may be acquired by performing a relatively simple computation on a given chemical structure.
- a descriptor may include a molecular structure fingerprint indicating whether a particular partial structure is included (e.g., Morgan fingerprint and extended connectivity fingerprint (ECFP)).
- the descriptor may be a quantitative structure-property relationship (QSPR) model configured with a value that may be immediately calculated from a given chemical structure, for example, a molecular weight or the number of partial structures (e.g., rings) included in a molecular structure.
- QSPR quantitative structure-property relationship
- a property refers to a characteristic possessed by a chemical structure and may be a real number value measured by an experiment or calculated by a simulation.
- the property of the chemical structure may be expressed by a transmission wavelength, an emission wavelength, or the like with respect to light.
- the property of the chemical structure may be a voltage.
- calculation of the property may require complex simulations that necessitate additional calculation and computation beyond similar simulations for the descriptor.
- a structure refers to an atomic level structure of a chemical structure.
- the structure In order to derive a property by performing First Principles Calculation, the structure is required to be expressed at an atomic level.
- an atomic level structure needs to be derived to generate a novel chemical structure.
- the structure may be a structural formula based on atomic bonding relationships or a character string in a simple format (one-dimensional).
- the format of the character string expressing the structure may be a Simplified Molecular-input Line-entry System (SMILES) code, a Smiles Arbitrary Target Specification (SMARTS) code, an International Chemical Identifier (InChi) code, or the like.
- SILES Simplified Molecular-input Line-entry System
- SARTS Smiles Arbitrary Target Specification
- InChi International Chemical Identifier
- a factor refers to an element defining the relationships among the descriptor, the property, and the structure.
- the factor may be determined by machine learning based on a descriptor-property-structural formula stored in a database. Thus, how relationships between the factor, the descriptor, the property, and the structural formula may be determined.
- FIG. 1 is a block diagram illustrating a hardware configuration of a neural network apparatus 100 according to an embodiment.
- the neural network apparatus 100 may be implemented using various types of devices such as a personal computer (PC), a server, a mobile device, and an embedded device. Examples of the neural network apparatus 100 may include, but are not limited to, a smartphone, a tablet device, an augmented reality (AR) device, an Internet of Things (IoT) device, an autonomous vehicle, a robot, a medical device, and the like which perform speech recognition, image recognition, image classification, and the like using a neural network. Furthermore, the neural network apparatus 100 may be a dedicated hardware (HW) accelerator mounted on, connected to, or installed in the devices described above. The neural network apparatus 100 may be a hardware accelerator such as a neural processing unit (NPU), a tensor processing unit (TPU), or a neural engine, which are dedicated modules for driving a neural network, but is not limited thereto.
- NPU neural processing unit
- TPU tensor processing unit
- a neural engine which are dedicated modules for driving a neural network, but is not limited thereto.
- the neural network apparatus 100 includes a processor 110 and a memory 120 .
- FIG. 1 only illustrates components of the neural network apparatus 100 related to the embodiments of the disclosure. Thus, it is apparent to those skilled in the art that the neural network apparatus 100 may further include any other general-purpose components in addition to the components shown in FIG. 1 .
- the processor 110 controls the overall function for driving the neural network apparatus 100 .
- the processor 110 controls the overall operation of the neural network apparatus 100 by executing programs stored in the memory 120 of the neural network apparatus 100 .
- the processor 110 may be implemented as a central processing unit (CPU), a graphics processing unit (GPU), an application processor (AP), or the like provided in the neural network apparatus 100 , but is not limited thereto.
- the memory 120 is a hardware component that stores a variety of data processed in the neural network apparatus 100 .
- the memory 120 may store data processed and to be processed by the neural network apparatus 100 .
- the memory 120 may also store applications, drivers, and the like to be executed by the processor 110 of the neural network apparatus 100 .
- the memory 120 may include random access memory (RAM) such as dynamic random access memory (DRAM) and static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), a CD-ROM, Blue-ray or other optical disk storage, a hard disk drive (HDD), a solid state drive (SSD), or a flash memory.
- RAM random access memory
- DRAM dynamic random access memory
- SRAM static random access memory
- ROM read-only memory
- EEPROM electrically erasable programmable read-only memory
- CD-ROM Compact Disk Read Only Memory
- HDD hard disk drive
- SSD solid state drive
- the memory 120 may store a descriptor for a chemical structure and a property value numerically representing the property of the chemical structure, which match each other as one set or pair.
- the neural network apparatus 100 may read the descriptor and the property value corresponding thereto from the memory 120 or write the descriptor and the property value corresponding thereto in the memory 120 .
- the descriptor may include a plurality of bit values and the property value may be a value for a transmission wavelength, an emission wavelength, a voltage, or the like.
- the memory 120 may store an image for a chemical structure and a property value numerically representing the property of the chemical structure, which are associated with each other as one set or pair.
- the image may include n ⁇ m pixels (where n and m are natural numbers).
- n and m are natural numbers.
- the memory 120 may store a structure characteristic value representing a chemical structure and a descriptor and a property value, which match the structure characteristic value as one set or pair.
- the structure characteristic value may be a SMILES code or a SMARTS code, as a string format that expresses a chemical structure.
- the processor 110 may execute instructions to implement an artificial neural network (ANN), such as a deep neural network (DNN) and a recurrent neural network (RNN).
- ANN artificial neural network
- DNN deep neural network
- RNN recurrent neural network
- the processor 110 may allow the DNN to learn by using a descriptor and a property value corresponding to the descriptor and may determine a factor defining the relationship between the descriptor and the property value in this process. Then, the processor 110 may output a property value corresponding to a new descriptor as output data by driving the trained DNN by using, as input data, the new descriptor not used in the learning process of the DNN.
- the processor 110 may allow the RNN to learn by using a descriptor and a structure characteristic value and may determine a factor defining the relationship between the descriptor and the structure characteristic value in this process. Then, the processor 110 may output a structure characteristic value corresponding to a new descriptor as output data by driving the trained RNN by using, as input data, the new descriptor not used in the learning process of the RNN.
- the neural network apparatus 100 may further include a user interface.
- the user interface refers to a device or software used to input data to control the neural network apparatus 100 .
- Examples of the user interface may include, but are not limited to, a key pad, a dome switch, a touch pad (e.g., capacitive overlay type, resistive overlay type, infrared beam type, surface acoustic wave type, integral strain gauge type, and piezo electric type), a jog wheel, and a jog switch, along with a graphical user interface (GUI) that may be displayed for receiving user input.
- GUI graphical user interface
- FIG. 2 is a diagram illustrating a computation performed by a DNN according to an embodiment.
- a DNN 20 may have a structure including an input layer, hidden layers, and an output layer, perform a computation based on received input data (e.g., I 1 and I 2 ), and generate output data (e.g., O 1 and O 2 ) based on a computation result.
- received input data e.g., I 1 and I 2
- output data e.g., O 1 and O 2
- the DNN 20 may include an input layer (Layer 1), two hidden layers (Layer 2 and Layer 3), and an output layer (Layer 4). Because the DNN 20 may include many layers to process valid information, the DNN 20 may process complex data compared to a neural network including a single layer. Meanwhile, although the DNN 20 illustrated in FIG. 2 includes 4 layers, the DNN 20 is only an example and may also include more or fewer layers and more or fewer channels than those illustrated therein. That is, the DNN 20 may have various structures of layers different from that illustrated in FIG. 2 .
- Each of the layers included in the DNN 20 may have a plurality of channels.
- the channels may respectively correspond to a plurality of artificial nodes known as neurons, processing elements (PEs), units, or similar terms.
- Layer 1 may include two channels (nodes)
- Layers 2 and 3 may include three channels respectively.
- the layers are only examples and each of the layers included in the DNN 20 may have various numbers of channels (nodes) and interconnections to other nodes.
- the channels included in each of the layers of the DNN 20 may be interconnected to process data.
- a channel may perform a computation of data received from channels of one layer and output a computation result to channels of another layer.
- Input and output of each channel may be referred to as input activation and output activation. That is, activation may be not only an output of one channel but also a parameter corresponding to an input of channels included in a successive layer. Meanwhile, each of the channels may determine an activation thereof based on activations and weights received from channels included in a previous layer. The weight is a parameter used to calculate the output activation of each channel and may be a value assigned to the relationship between channels.
- Each of the channels may be processed by a computational unit or a processing element that receives an input and generates an output activation.
- the input-output of each channel may be mapped.
- ⁇ is an activation function
- w jk i is a weight from a k th channel included in an (i ⁇ 1) th layer to a j th channel included in an i th layer
- b j i is a bias of the j th channel included in the i th layer
- a j i is an activation of the j th channel of the i th layer
- an activation of a first channel CH1 of a second layer Layer 2 may be expressed as a 1 2 .
- ⁇ denotes an activation function such as Relu, sigmoid, and tanh.
- the activation of a particular channel in a particular layer may denote a result obtained by passing a value of ⁇ (w jk i ⁇ a k 1 ⁇ 1 )+b j i through the activation function.
- Equation 1 is only an example for describing the activation and the weight used to process data in the DNN 20 and the embodiment is not limited thereto.
- the neural network apparatus 100 may allow the DNN 20 to learn by using a descriptor (or image) and a property value, stored in a memory.
- the DNN 20 may determine a factor defining the relationship between a descriptor (or image) and a property value in a learning process using the descriptor and the property value.
- the descriptor may correspond to the values of a plurality of channels (nodes) of the input layer (Layer 1)
- the property value may correspond to the values of a plurality of channels (nodes) of the output layer (Layer 4)
- the factor may correspond to the values of a plurality of channels (nodes) of at least one hidden layer (Layers 2 and/or 3).
- the trained DNN 20 may be driven by receiving a new descriptor (or new image) as input data and thus may output a property value corresponding to the received new descriptor (or new image) as output data.
- FIG. 3 is a diagram illustrating a computation performed by an RNN according to an embodiment.
- An RNN 30 is a neural network that analyzes data changing with time such as time-series data and constructed by connecting a network between a reference time point t and a next time point t+1. That is, the RNN 30 is a neural network in which a temporal aspect is considered and capable of effectively learning a pattern from data sequentially input or data input with a sequence of features by modifying a model to allow a recursive input to a hidden layer of the neural network.
- a node s constituting a hidden layer of the RNN 30 is illustrated.
- the node s may perform a computation based on input data x and generate output data o.
- the RNN 30 may iteratively apply the same task to all sequences and a final output result of the node s is affected by a result of a previous calculation.
- An RNN 31 is an unfolded RNN 30 with a loop.
- the term “unfold” with respect to the RNN 30 refers to expressing the RNN 30 for the entire sequence.
- x t is an input value at a time step t
- s t is a hidden state at the time step t.
- the term s t may be expressed by Equation 2 below.
- Equation 2 a tanh or Relu function may be used as function f.
- the term s ⁇ 1 to calculate a first hidden state may generally be initialized to 0.
- o t is an output value at the time step t.
- s t is a memory portion of the network and stores information on events at previous time steps. The output value of depends only on the memory of the current time step t.
- the RNN 31 shares the parameters U, V, and W for all time steps. That is, because each step of the RNN 31 performs almost the same calculation except for an input value, the number of parameters to be learned may be reduced.
- the neural network apparatus 100 may allow the RNN 31 to learn by using a descriptor (or image) and a property value, stored in a memory.
- the neural network apparatus 100 may allow the RNN 31 to learn by using a factor and a property value, determined in a learning process of the DNN 20 .
- a SMILES code in each time step may be aggregated to output one SMILES code “ABCDEFG”, i.e., a structure characteristic value, as output data.
- the trained RNN 31 may be driven by receiving a new descriptor (or new image) as input data and thus may output a structure characteristic value corresponding to the received new descriptor (or new image) as output data.
- the trained RNN 31 may be driven by receiving a factor for a new descriptor (or new image) as input data and thus may output a structure characteristic value corresponding to the new descriptor (or new image) as output data.
- FIG. 4 is a conceptual diagram illustrating a neural network system for generating a chemical structure according to an embodiment.
- a neural network system configured to generate a chemical structure by using a DNN 410 and an RNN 420 is illustrated.
- a descriptor that is data used in the neural network system may be represented by an ECFP as an indicator value used to represent structural characteristics of a chemical structure.
- a property refers to a characteristic possessed by a chemical structure and may be a real number value indicating a transmission wavelength and an emission wavelength with respect to light.
- a structure refers to an atomic level structure of a chemical structure and may be represented by a SMILES code. For example, a structural formula may be expressed according to a SMILES code, as shown in Equation 3 below.
- the factor is an element defining the relationships among the descriptor, the property, and the structure.
- the factor may be at least one hidden layer.
- a factor defining the relationship between the descriptor and the property a factor defining the relationship between the descriptor and the structure, and the like may be determined for each hidden layer.
- the DNN 410 may be driven by receiving a descriptor as input data and output a property value corresponding to the received descriptor as output data. In a learning process using a descriptor and a property value, the DNN 410 may determine a factor defining the relationship between the descriptor and the property value.
- the RNN 420 may be driven by receiving a descriptor or a factor determined in a learning process of the DNN 410 as input data and output a structure characteristic value as output data.
- FIG. 5 is a diagram illustrating a method of representing a chemical structure 510 , according to an embodiment.
- the chemical structure 510 represents the shape of a molecule formed by a combination of atoms.
- the chemical structure 510 may be represented by the position of an atom, the distance between atoms, the strength of an atomic bond, and the like.
- the chemical structure 510 may be represented by a descriptor 520 including a plurality of bit values (1 or 0). It may be determined whether the chemical structure 510 includes a particular partial structure, through the descriptor 520 .
- the chemical structure 510 may be represented as an image 530 having a certain size.
- the image 530 may include three channels (red, green, and blue (RGB)) of n ⁇ m pixels (where n and m are natural numbers).
- RGB red, green, and blue
- 8 bits i.e., a value from 0 (black) to 255 (white), may be assigned to each pixel of the image 530 .
- bright red may be synthesized with an R channel value of 246, a G channel value of 20, and a B channel value of 50, and when all channel values are 255, white is synthesized.
- Atoms constituting the chemical structure 510 may be displayed in colors that are distinct from each other on the image 530 .
- the chemical structure 510 may include carbon (C), nitrogen (N), and oxygen (O), and on the image 530 , the carbon (C) may be displayed in black, the nitrogen (N) may be displayed in blue, and the oxygen (O) may be displayed in red.
- the value of a pixel at which the carbon (C) of the chemical structure 510 is located may be ‘0’
- the value of a pixel at which the nitrogen (N) is located may be ‘50’
- the value of a pixel at which the oxygen (O) is located may be ‘186’.
- the value of a pixel where no atom is present may be ‘255’.
- the color type in which a certain atom is displayed on the image 530 , the number of pixels constituting the image 530 , and the like are not limited to the above example.
- the descriptor 520 or the image 530 for the chemical structure 510 may be used as input data of a neural network, and a particular property value for the chemical structure 510 may be output as output data of the neural network.
- FIG. 6 is a diagram illustrating a method of interpreting a neural network, according to an embodiment.
- the neural network apparatus 100 may obtain a descriptor or image for a reference chemical structure to output a particular property value for the reference chemical structure.
- the descriptor may include a plurality of bit values
- the image may include n ⁇ m pixels (where n and m are natural numbers).
- the neural network apparatus 100 may input the descriptor or image for the reference chemical structure to the trained neural network as input data and drive the neural network, through an inference process 610 , to obtain a particular property value for the reference chemical structure as output data of the neural network.
- the neural network apparatus 100 may perform an interpretation process 620 to determine whether a particular property value is expressed by a partial structure in the reference chemical structure.
- the neural network apparatus 100 may interpret a trained neural network by using a Layer-wise Relevance Propagation (LRP) technique.
- LRP Layer-wise Relevance Propagation
- the LRP technique is a method of propagating relevance in a reverse direction (i.e., a direction from an output layer to an input layer) of the trained neural network.
- a node having the greatest relevance to an upper layer among a plurality of nodes of a lower layer obtains the greatest relevance from the corresponding node of the upper layer.
- a method of calculating relevance in the LRP technique may be expressed by Equation 4.
- a i and a j are an output value to be determined in a particular node of an i th layer and an output value to be determined in a particular node of a j th layer, respectively.
- w + ij is a weight value that connects the particular node of the i th layer to the particular node of the j th layer.
- R i and R j denote the relevance of the particular node of the i th layer and the relevance of the particular node of the j th layer, respectively.
- the neural network apparatus 100 may designate an activation function, applied to a node of a trained neural network, as a linear function by using a regression analysis method, and may designate Mean Square Error (MSE) for optimization.
- MSE Mean Square Error
- the neural network may be trained by designating an activation function of an output node as a linear function.
- a loss function may be designated as MSE in a neural network learning process.
- the technique that may be used in the interpretation process 620 to determine whether a particular property value is expressed by any partial structure in the reference chemical structure is not limited to the example described above.
- a plurality of nodes of the input layer may respectively correspond to bit values constituting the descriptor.
- the neural network apparatus 100 may obtain a node of the input layer (i.e., a bit position of the descriptor), which has the greatest relevance to the expression of a particular property value of the reference chemical structure, through the interpretation process 620 . Because the bit position of the descriptor corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus 100 may determine a particular partial structure, which has the greatest relevance to the expression of a particular property value of the reference chemical structure, by obtaining the bit position of the descriptor through the interpretation process 620 .
- the plurality of nodes of the input layer may respectively correspond to pixel values constituting the image.
- the neural network apparatus 100 may obtain a node of the input layer (i.e., pixel coordinates of the image), which has the greatest relevance to the expression of a particular property value of the reference chemical structure, through the interpretation process 620 . Because the pixel coordinates of the image corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus 100 may determine a particular partial structure, which has the greatest relevance to the expression of a particular property value of the reference chemical structure, by obtaining the pixel coordinates of the image through the interpretation process 620 .
- bit position of the descriptor and the pixel coordinates of the image which have the greatest relevance to the expression of a particular property value of the reference chemical structure, will be referred to as an expression region.
- FIG. 7 is a diagram illustrating an example of changing an expression region of a descriptor to generate a new chemical structure according to an embodiment.
- a descriptor 712 of a reference chemical structure 710 may be ‘11100011011010110’.
- the neural network apparatus 100 may sequentially input bit values constituting the descriptor 712 respectively to nodes of an input layer of the neural network (e.g., DNN) and output a property value (i.e., an ‘emission wavelength: 320 nm’) for the reference chemical structure 710 .
- the neural network apparatus 100 may obtain a node of the input layer (i.e., an expression region 713 of the descriptor 712 ), which has the greatest relevance to the expression of a wavelength value of the reference chemical structure 710 .
- the expression region 713 of the descriptor 712 may correspond to a particular position 711 in the reference chemical structure 710 .
- the expression region 713 corresponds to one bit value.
- the expression region 713 may correspond to a plurality of consecutive bit values, and a plurality of expression regions may be in the descriptor 712 .
- the neural network apparatus 100 may change a bit value of the expression region 713 to improve the property of the reference chemical structure 710 .
- the structure of the particular position 711 may be changed as the bit value of the expression region 713 is changed.
- a genetics algorithm may be used, and the details thereof will be described later with reference to FIG. 8 .
- the neural network apparatus 100 may change the bit value of the expression region 713 and/or a bit value around the expression region 713 .
- the neural network apparatus 100 may change the bit value of the expression region 713 and output a new descriptor 722 .
- the neural network apparatus 100 may apply a new partial structure 721 corresponding to the bit value ‘110100’ to the particular position 711 and generate a new chemical structure 720 to which the new partial structure 721 is applied.
- the neural network apparatus 100 may input the new descriptor 722 as input data of a neural network (e.g., RNN) and output a structure characteristic value as output data, and may generate the new chemical structure 720 based on the output structure characteristic value.
- a neural network e.g., RNN
- the neural network apparatus 100 may input the descriptor 722 of the new chemical structure 720 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to the descriptor 722 input into the neural network. That is, the neural network apparatus 100 may improve a property by changing a partial structure of the reference chemical structure 710 and generating the new chemical structure 720 .
- a property value i.e., ‘emission wavelength: 325 nm’
- the neural network apparatus 100 may repeatedly generate a chemical structure through the above-described process until a chemical structure having a property value close to a preset value (e.g., ‘emission wavelength: 350 nm’) is generated.
- a preset value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus 100 may compare a property value (e.g., ‘emission wavelength: 325 nm’) for the new chemical structure 720 to a preset value (e.g., ‘emission wavelength: 350 nm’) and generate a new chemical structure by changing the bit value of the expression region 723 of the descriptor 722 when the property value for the new chemical structure 720 is less than the preset value.
- a property value e.g., ‘emission wavelength: 325 nm’
- a preset value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus 100 may store the generated new chemical structure in a memory.
- FIG. 8 is a diagram illustrating an example of changing a partial structure by changing a bit value of a descriptor according to an embodiment.
- the neural network apparatus 100 may apply a genetics algorithm to a bit value constituting a descriptor of a reference chemical structure and perform a selection, intersection, or mutation operation on the bit value.
- the neural network apparatus 100 may change the descriptor of the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. As the descriptor of the reference chemical structure is changed or modified, a partial structure in the reference chemical structure may be mutated, removed, or replaced, or a partial structure may be added to the reference chemical structure.
- the neural network apparatus 100 may mutate the partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, the neural network apparatus 100 may change carbon (C) in a first position 810 in the reference chemical structure to nitrogen (N). Alternatively, the neural network apparatus 100 may change adjacent atoms 811 and 812 combined with an atom in the first position 810 to other atoms.
- the neural network apparatus 100 may add a partial structure to the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure.
- the neural network apparatus 100 may add a partial structure 823 to be connected to an atom in a second position 820 in the reference chemical structure.
- the neural network apparatus 100 may add a partial structure to be connected to adjacent atoms 821 and 822 combined with an atom in the second position 820 .
- the neural network apparatus 100 may add a partial structure 824 in the form of a condensed ring, connected to both an atom in the second position 820 and an adjacent atom 821 combined with the atom in the second position 820 .
- the neural network apparatus 100 may remove a partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, the neural network apparatus 100 may remove a partial structure 831 connected to an atom in a third position 830 in the reference chemical structure. Alternatively, the neural network apparatus 100 may change a ring structure by removing an atom in the third position 830 .
- the neural network apparatus 100 may replace a partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure.
- the neural network apparatus 100 may change a ring structure of the fourth position 840 in the reference chemical structure to a new partial structure 841 or 842 .
- FIG. 9 is a diagram illustrating an example of changing a partial structure by changing a pixel value of an image according to an embodiment.
- an image 912 of a reference chemical structure 910 may include 6 ⁇ 6 pixels. Atoms constituting the reference chemical structure 910 may be displayed in colors that are distinct from each other on the image 912 .
- the reference chemical structure 910 may include carbon (C), nitrogen (N), and oxygen (O), and on the image 912 , the carbon (C) may be displayed in black, the nitrogen (N) may be displayed in blue, and the oxygen (O) may be displayed in red.
- the value of a pixel at which the carbon (C) is located may be ‘0’
- the value of a pixel at which the nitrogen (N) is located may be ‘50’
- the value of a pixel at which the oxygen (O) is located may be ‘186’.
- the neural network apparatus 100 may sequentially input pixel values constituting the image 912 respectively to nodes of an input layer of a neural network (e.g., DNN) and thus may output a property value (i.e., an ‘emission wavelength: 320 nm’) for the reference chemical structure 910 .
- a neural network e.g., DNN
- the neural network apparatus 100 may obtain a node of the input layer (i.e., an expression region 913 of the image 912 ) which has the greatest relevance to the expression of a wavelength value of the reference chemical structure 910 .
- the expression region 913 of the image 912 may correspond to a particular position 911 in the reference chemical structure 910 .
- the expression region 913 corresponds to one pixel value.
- the expression region 913 may correspond to a plurality of adjacent pixel values, and a plurality of expression regions may be provided in the image 912 .
- the neural network apparatus 100 may change a pixel value of the expression region 913 and/or a pixel value around the expression region 913 to improve the property of the reference chemical structure 910 .
- the structure of the particular position 911 may be changed as the pixel value of the expression region 913 and/or the pixel value around the expression region 913 are changed.
- the pixel value of the expression region 913 and/or the pixel values around the expression region 913 may be changed by using Gaussian noise.
- Gaussian noise refers to a noise of which a distribution function of an arbitrary order is represented by a normal distribution.
- the neural network apparatus 100 may change the pixel value of the expression region 913 and/or the pixel value around the expression region 913 and thus output a new image 922 .
- the neural network apparatus 100 may apply a new partial structure 921 corresponding to a changed pixel value to the particular position 911 and generate a new chemical structure 920 .
- the neural network apparatus 100 may input the new image 922 as input data of a neural network (e.g., RNN) and output a structure characteristic value as output data, and may generate the new chemical structure 920 based on the output structure characteristic value.
- a neural network e.g., RNN
- the neural network apparatus 100 may input the image 922 of the new chemical structure 920 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to the image 922 input into the neural network. That is, the neural network apparatus 100 may improve a property by changing a partial structure of the reference chemical structure 910 and generating the new chemical structure 920 .
- a property value i.e., ‘emission wavelength: 325 nm’
- the neural network apparatus 100 may repeatedly generate a chemical structure through the above-described process until a chemical structure having a property value close to a preset value (e.g., ‘emission wavelength: 350 nm’) is generated.
- a preset value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus 100 may compare a property value (e.g., ‘emission wavelength: 325 nm’) for the new chemical structure 920 to a preset value (e.g., ‘emission wavelength: 350 nm’) and generate a new chemical structure by changing the pixel value of the expression region 913 and the pixel value around the expression region 913 in the image 922 when the property value for the new chemical structure 920 is less than the preset value.
- a property value e.g., ‘emission wavelength: 325 nm’
- a preset value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus 100 may store the generated new chemical structure in a memory.
- FIG. 10 is a diagram illustrating an example of changing a pixel value when there are a plurality of expression regions on an image according to an embodiment.
- an image 1012 of a reference chemical structure 1010 may include 6 ⁇ 6 pixels. Atoms constituting the reference chemical structure 1010 may be displayed in colors that are distinct from each other on the image 1012 .
- the value of a pixel at which the carbon (C) is located may be ‘0’
- the value of a pixel at which the nitrogen (N) is located may be ‘50’
- the value of a pixel at which the oxygen (O) is located may be ‘186’.
- the neural network apparatus 100 may sequentially input pixel values constituting the image 1012 to nodes of an input layer of a neural network (e.g., DNN) and output a property value (i.e., an ‘emission wavelength: 320 nm’) for the reference chemical structure 1010 .
- a neural network e.g., DNN
- a property value i.e., an ‘emission wavelength: 320 nm’
- the first expression region 1013 a and the second expression region 1013 b in the image 1012 may correspond to a first position 1011 a and a second position 1011 b in the reference chemical structure 1010 , respectively.
- the second position 1011 b corresponding to the second expression region 1013 b may be outside the reference chemical structure 1010 .
- the neural network apparatus 100 may obtain coordinate information on the image 1012 , which corresponds to the plurality of expression regions, i.e., the first expression region 1013 a and the second expression region 1013 b. For example, based on a lower left corner of the image 1012 having the origin (0,0), the coordinate information of the first expression region 1013 a may be (3, 3) and the coordinate information of the second expression region 1013 b may be (5, 3).
- the neural network apparatus 100 may output the coordinate information (4, 3) of a center point 1014 based on the coordinate information corresponding to the plurality of expression regions, i.e., the first expression region 1013 a and the second expression region 1013 b.
- the neural network apparatus 100 may change a pixel value of the center point 1014 and/or a pixel value around the center point 1014 to improve the property of the reference chemical structure 1010 .
- the structure of a particular position 1015 on the reference chemical structure 1010 corresponding to the center point 1014 may be changed.
- the pixel value of the center point 1014 and/or the pixel value around the center point 1014 may be changed by using Gaussian noise.
- the neural network apparatus 100 may change the pixel value of the center point 1014 and/or the pixel value around the center point 1014 and output a new image 1022 .
- the neural network apparatus 100 may apply a new partial structure 1021 corresponding to a changed pixel value to the particular position 1015 and generate a new chemical structure 1020 .
- the neural network apparatus 100 may input the image 1022 of the new chemical structure 1020 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to the image 1022 input into the neural network. That is, the neural network apparatus 100 may improve a property by changing a partial structure of the reference chemical structure 1010 and generating the new chemical structure 1020 .
- a property value i.e., ‘emission wavelength: 325 nm’
- FIG. 11 is a flowchart of a method of generating a new chemical structure by changing a descriptor for a chemical structure in a neural network apparatus according to an embodiment.
- the method of generating a chemical structure in a neural network apparatus relates to the embodiments described above with reference to the drawings, and thus, although omitted in the following descriptions, descriptions given above with reference to the drawings may also be applied to the method illustrated in FIG. 11 .
- the neural network apparatus may obtain a descriptor for a reference chemical structure.
- the descriptor is an indicator value used to represent the structural characteristics of a chemical structure.
- the descriptor may be obtained by performing a relatively simple operation on a given chemical structure.
- the descriptor may be represented by an ECFP and may include a plurality of bit values.
- the manner of expression of the descriptor is not limited thereto.
- the neural network apparatus may input a reference descriptor into a trained neural network and output a property value of a particular property for the reference chemical structure.
- the property refers to a characteristic possessed by a chemical structure and may be a real number value indicating a transmission wavelength and an emission wavelength with respect to light. Unlike the case of the descriptor, the computation of the property may require complex simulations and be time consuming.
- a memory of the neural network apparatus may store a descriptor for a particular chemical structure and a property value numerically representing the property of the particular chemical structure, which match each other as one set.
- the neural network apparatus may allow a neural network (e.g., DNN) to learn by using a descriptor and a property value, stored in a memory.
- a factor defining the relationship between the descriptor and the property value may be determined in the neural network.
- the neural network apparatus may output a property value corresponding to the reference descriptor as output data of the neural network by inputting the reference descriptor as input data of the trained neural network and driving the neural network.
- the neural network apparatus may determine an expression region that expresses a particular property in the reference descriptor.
- the neural network apparatus may perform an interpretation process to determine whether a particular property value is expressed by any partial structure in the reference chemical structure.
- the neural network apparatus may interpret the trained neural network by using an LRP technique.
- the LRP technique is a method of propagating relevance in a reverse direction (i.e., a direction from an output layer to an input layer) of the trained neural network.
- a node having the greatest relevance to an upper layer among a plurality of nodes of a lower layer obtains the greatest relevance from the corresponding node of the upper layer.
- the neural network apparatus may designate an activation function, applied to a node of the trained neural network, as a linear function, and may designate MSE for optimization.
- a plurality of nodes of the input layer of the neural network may respectively correspond to bit values constituting the descriptor.
- the neural network apparatus may obtain a node of the input layer, i.e., a bit position (or expression region) of the reference descriptor, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, through the interpretation process. Because the expression region of the reference descriptor corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus may determine a particular partial structure, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, by obtaining the expression region of the reference descriptor through the interpretation process.
- the neural network apparatus may generate a new chemical structure by changing a partial structure in the reference chemical structure which corresponds to the expression region.
- the neural network apparatus may receive a target property value as an input.
- the neural network apparatus may include a user interface that is a means for inputting data for controlling the neural network apparatus.
- the user interface may be a key pad, a touch pad, or the like, but is not limited thereto.
- the target property value is a numerical value of a particular property of a chemical structure to be finally generated in the neural network apparatus.
- the target property value may be a refractive index value, an elastic modulus, a melting point, a transmission wavelength, and/or an emission wavelength.
- the neural network apparatus may receive ‘emission wavelength: 350 nm’ as a target property value.
- the target property value may be set in an increasing (+) direction or a decreasing ( ⁇ ) direction rather than a numerical value.
- the neural network apparatus may generate a new chemical structure having a property value close to the target property value by changing a partial structure in the reference chemical structure.
- the neural network apparatus may output a new descriptor by changing a bit value of an expression region of the reference descriptor.
- the partial structure in the reference chemical structure may be changed as the bit value of the expression region of the reference descriptor is changed.
- a method of changing the bit value of the expression region may use a genetics algorithm, but is not limited thereto.
- the neural network apparatus may output a structure characteristic value corresponding to the new descriptor as output data of the neural network by inputting the new descriptor, in which the bit value of the expression region of the reference descriptor is changed, as input data of the trained neural network (e.g., RNN) and driving the neural network.
- the neural network apparatus may generate a new chemical structure based on the output structure characteristic value.
- the neural network apparatus may use a factor for the new descriptor, output in a learning process of the DNN, as input data of the trained neural network (e.g., RNN).
- the neural network apparatus may iteratively generate a chemical structure through the above-described process until a chemical structure having a property value close to a target property value (e.g., ‘emission wavelength: 350 nm’) is generated.
- a target property value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus may compare a property value for a new chemical structure to a target property value and generate a new chemical structure again by changing the bit value of the expression region of the reference descriptor when the property value for the new chemical structure is less than the target property value.
- the neural network apparatus may store the generated new chemical structure in a memory.
- FIG. 12 is a flowchart of a method of generating a new chemical structure by changing an image for a chemical structure in a neural network apparatus according to an embodiment.
- the neural network apparatus may obtain an image for a reference chemical structure.
- the image for the reference chemical structure may include n ⁇ m pixels (where n and m are natural numbers). For example, 8 bits, i.e., a value from 0 (black) to 255 (white), may be assigned to each pixel of the image.
- reference image the image for the reference chemical structure will be referred to as a reference image.
- the neural network apparatus may input the reference image into a trained neural network and output a property value of a particular property for the reference chemical structure.
- a memory of the neural network apparatus may store an image for a particular chemical structure and a property value numerically representing the property of the particular chemical structure, which match each other as one set.
- the neural network apparatus may allow a neural network (e.g., DNN) to learn by using an image and a property value, stored in a memory.
- a neural network e.g., DNN
- a factor defining the relationship between the image and the property value may be determined in the neural network.
- the neural network apparatus may output a property value corresponding to the reference image as output data of the neural network by inputting the reference image as input data of the trained neural network and driving the neural network.
- the neural network apparatus may determine an expression region that expresses a particular property in the image.
- a plurality of nodes of an input layer of the neural network may respectively correspond to pixel values constituting the image.
- the neural network apparatus may obtain a node of the input layer, i.e., pixel coordinates (or expression region) of the reference image, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, through the interpretation process. Because the expression region of the reference image corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus may determine a particular partial structure, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, by obtaining the expression region of the reference image through the interpretation process.
- the neural network apparatus may generate a new chemical structure by changing a partial structure in the reference chemical structure which corresponds to the expression region.
- the neural network apparatus may generate a new image by changing a pixel value of the expression region of the reference image and/or a pixel value around the expression region.
- a partial structure in the reference chemical structure may be changed as the pixel value of the expression region of the reference image and/or the pixel value around the expression region are changed.
- the pixel value of the expression region of the reference image and/or the pixel value around the expression region may be changed by using Gaussian Noise, but a method of changing the pixel value is not limited thereto.
- the neural network apparatus may output a structure characteristic value corresponding to the new image as output data of the neural network by inputting the new image, in which the pixel value of the expression region of the reference image and/or the pixel value around the expression region are changed, as input data of the trained neural network (e.g., RNN) and driving the neural network.
- the neural network apparatus may generate a new chemical structure based on the output structure characteristic value.
- the neural network apparatus may use a factor for the new image, output in a learning process of the DNN, as input data of the trained neural network (e.g., RNN).
- the neural network apparatus may iteratively generate a chemical structure through the above-described process until a chemical structure having a property value close to a target property value (e.g., ‘emission wavelength: 350 nm’) is generated.
- a target property value e.g., ‘emission wavelength: 350 nm’
- the neural network apparatus may compare a property value for a new chemical structure to a target property value and generate a new chemical structure again by changing the pixel value of the expression region of the reference image and/or the pixel value around the expression region when the property value for the new chemical structure is less than the target property value.
- the neural network apparatus may store the generated new chemical structure in a memory.
- a trained neural network may be interpreted to specify a partial structure expressing a property of a chemical structure.
- a new chemical structure having an improved property may be generated by changing the specified partial structure.
- the aforementioned embodiments may be embodied in the form of a recording medium storing instructions executable by a computer, such as a program module, executed by a computer.
- the computer-readable medium may be any recording medium that may be accessed by a computer and may include volatile and non-volatile media and removable and non-removable media.
- the computer-readable medium may include computer storage media and communication media.
- the computer storage media include volatile and non-volatile and removable and non-removable media implemented using any method or technology to store information such as computer-readable instructions, data structures, program modules, or other data.
- the communication media include computer-readable instructions, data structures, program modules, or other data in a modulated data signal, or other transport mechanisms and include any delivery media.
- unit may be a hardware component such as a processor or a circuit and/or a software component executed by the hardware component such as a processor.
Abstract
Generating a new chemical structure by using a neural network using an expression region that expresses a particular property in a descriptor or an image for a reference chemical structure. The new chemical structure may be generated by changing a partial structure in the reference chemical structure that corresponds to the expression region.
Description
- This application is a Divisional Application of U.S. patent application Ser. No. 16/269,092, filed on Feb. 6, 2019, which claims priority from Korean Patent Application No. 10-2018-0098373, filed on Aug. 23, 2018, in the Korean Intellectual Property Office, the disclosures of which are incorporated by reference herein in their entireties.
- The disclosure relates to methods and apparatuses for generating a chemical structure using a neural network.
- A neural network refers to a computational architecture that models a biological brain. With the advanced neural network technologies, various types of electronic systems have analyzed input data and generated optimized information by using neural networks.
- In recent years, extensive research has been conducted into methods of selecting chemical structures to be used in material development by evaluating properties of the chemical structures using neural network technologies. Particularly, there is a need to develop methods of generating new chemical structures satisfying a variety of requirements by using neural network technologies.
- Embodiments of the disclosure relate to methods and apparatuses for generating a chemical structure using a neural network. Also, provided are computer-readable recording media including a program, which, when executed by a computer, performs the methods. The technical problems to be solved are not limited to these as described, but there may be other technical problems.
- Additional aspects will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the presented embodiments.
- According to an aspect of an embodiment, there is provided a method of generating a chemical structure by using a neural network apparatus including: inputting a descriptor of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the descriptor of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determining an expression region for expressing the property in the descriptor, the expression region comprising a bit position in the descriptor; and generating a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- The determining of the expression region may include determining the expression region for expressing the property in the descriptor by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
- The determining of the expression region may include determining the expression region for expressing the property in the descriptor by applying a layer-wise relevance propagation (LRP) technique to the trained neural network, wherein an activation function applied to a node of the trained neural network may be designated as a linear function to apply the LRP technique to the trained neural network, and a mean square error (MSE) may be designated for optimization.
- The generating of the new chemical structure may include: obtaining a bit value of the bit position of the expression region in the descriptor; and generating the new chemical structure by applying a genetics algorithm to the bit value of the bit position and modifying the partial structure corresponding to the expression region.
- The generating of the new chemical structure may include: generating a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region; inputting a descriptor for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and generating a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and storing the new first chemical structure when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
- According to an aspect of an embodiment, there is provided a neural network apparatus configured to generate a chemical structure including: a memory configured to store at least one program; and a processor configured to drive a neural network by executing the at least one program, wherein the processor is configured to: input descriptor of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the descriptor of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determine an expression region for expressing the property in the descriptor, the expression region comprising a bit position in the descriptor; and generate a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- According to an aspect of an embodiment, there is provided a method of generating a chemical structure by using a neural network apparatus including: inputting an image of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determining an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image; and generating a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- The determining of the expression region may include determining the expression region for expressing the property in the image by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
- The determining of the expression region may include determining the expression region for expressing the property in the image by applying a layer-wise relevance propagation (LRP) technique to the trained neural network, wherein an activation function applied to a node of the trained neural network may be designated as a linear function to apply the LRP technique to the trained neural network, and a mean square error (MSE) may be designated for optimization.
- The generating of the new chemical structure may include: obtaining pixel values of the one or more pixels of the expression region in the image; and generating the new chemical structure by applying Gaussian noise to the pixel values of the one or more pixels and modifying the partial structure corresponding to the expression region.
- The generating of the new chemical structure may include: when a plurality of expression regions expressing the particular property in the image are present, obtaining coordinate information in the image corresponding to the plurality of expression regions; calculating a center point in the image of the plurality of expression regions based on the coordinate information and obtaining a pixel value of the center point; and generating the new chemical structure by applying Gaussian noise to the pixel value and modifying the partial structure corresponding to the center point.
- The generating of the new chemical structure may include: generating a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region; inputting an image for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and generating a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and storing the new first chemical structure when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
- According to an aspect of an embodiment, there is provided a neural network apparatus configured to generate a chemical structure including: a memory configured to store at least one program; and a processor configured to drive a neural network by executing the at least one program, wherein the processor is configured to: input an image of a chemical structure to a trained neural network that generates a property value of a property of the reference chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure; determine an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image; and generate a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
- According to an aspect of an embodiment, there is provided a non-transitory computer-readable recording medium includes a program, which, when executed by a computer, performs any one of the methods.
- These and/or other aspects will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings in which:
-
FIG. 1 is a block diagram illustrating a hardware configuration of a neural network apparatus according to an embodiment; -
FIG. 2 is a diagram illustrating a computation performed by a deep neural network (DNN) according to an embodiment; -
FIG. 3 is a diagram illustrating a computation performed by a recurrent neural network (RNN) according to an embodiment; -
FIG. 4 is a conceptual diagram illustrating a neural network system for generating a chemical structure according to an embodiment; -
FIG. 5 is a diagram illustrating a method of representing a chemical structure, according to an embodiment; -
FIG. 6 is a diagram illustrating a method of interpreting a neural network, according to an embodiment; -
FIG. 7 is a diagram illustrating an example of changing an expression region of a descriptor to generate a new chemical structure according to an embodiment; -
FIG. 8 is a diagram illustrating an example of changing a partial structure by changing a bit value of a descriptor according to an embodiment; -
FIG. 9 is a diagram illustrating an example of changing a partial structure by changing a pixel value of an image according to an embodiment; -
FIG. 10 is a diagram illustrating an example of changing a pixel value when there are a plurality of expression regions on an image according to an embodiment; -
FIG. 11 is a flowchart of a method of generating a new chemical structure by changing a descriptor for a chemical structure in a neural network apparatus, according to an embodiment; and -
FIG. 12 is a flowchart of a method of generating a new chemical structure by changing an image for a chemical structure in a neural network, apparatus according to an embodiment. - Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to like elements throughout. In this regard, the present embodiments may have different forms and should not be construed as being limited to the descriptions set forth herein. Accordingly, the embodiments are merely described below, by referring to the figures, to explain aspects. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. Expressions such as “at least one of,” when preceding a list of elements, modify the entire list of elements and do not modify the individual elements of the list such that expressions of or similar to “at least one of a, b, and c” include: only a, only b, only c, only a and b, only b and c, only a and c, and all of a, b, and c.
- The terms “according to some embodiments” or “according to an embodiment” used throughout the specification do not necessarily indicate the same embodiment.
- Some embodiments of the disclosure may be represented by functional block configurations and various processing operations. Some or all of these functional blocks may be implemented using various numbers of hardware and/or software components that perform particular functions. For example, the functional blocks of the disclosure may be implemented using one or more microprocessors or circuits executing instructions to perform a given function. Also, for example, the functional blocks of the disclosure may be implemented in various programming or scripting languages. The functional blocks may be implemented with algorithms executed by one or more processors. The disclosure may also employ conventional techniques for electronic configuration, signal processing, and/or data processing. The terms “mechanism”, “element”, “unit” and “configuration” may be used in a broad sense and are not limited to mechanical and physical configurations.
- Also, connection lines or connection members between the components illustrated in the drawings are merely illustrative of functional connections and/or physical or circuit connections. In actual devices, connections between the components may be represented by various functional connections, physical connections, or circuit connections that may be replaced or added.
- Meanwhile, with respect to the terms used herein, a descriptor that is data used in a neural network system refers to an indicator value used to describe structural characteristics of a chemical structure and may be acquired by performing a relatively simple computation on a given chemical structure. According to an embodiment, a descriptor may include a molecular structure fingerprint indicating whether a particular partial structure is included (e.g., Morgan fingerprint and extended connectivity fingerprint (ECFP)). Also, the descriptor may be a quantitative structure-property relationship (QSPR) model configured with a value that may be immediately calculated from a given chemical structure, for example, a molecular weight or the number of partial structures (e.g., rings) included in a molecular structure.
- In addition, a property refers to a characteristic possessed by a chemical structure and may be a real number value measured by an experiment or calculated by a simulation. For example, when the chemical structure is used as a display material, the property of the chemical structure may be expressed by a transmission wavelength, an emission wavelength, or the like with respect to light. When the chemical structure is used as a battery material, the property of the chemical structure may be a voltage. Unlike the descriptor, calculation of the property may require complex simulations that necessitate additional calculation and computation beyond similar simulations for the descriptor.
- Also, a structure refers to an atomic level structure of a chemical structure. In order to derive a property by performing First Principles Calculation, the structure is required to be expressed at an atomic level. Thus, an atomic level structure needs to be derived to generate a novel chemical structure. The structure may be a structural formula based on atomic bonding relationships or a character string in a simple format (one-dimensional). The format of the character string expressing the structure may be a Simplified Molecular-input Line-entry System (SMILES) code, a Smiles Arbitrary Target Specification (SMARTS) code, an International Chemical Identifier (InChi) code, or the like.
- In addition, a factor refers to an element defining the relationships among the descriptor, the property, and the structure. The factor may be determined by machine learning based on a descriptor-property-structural formula stored in a database. Thus, how relationships between the factor, the descriptor, the property, and the structural formula may be determined.
- Hereinafter, embodiments of the disclosure will be described in detail with reference to the accompanying drawings.
-
FIG. 1 is a block diagram illustrating a hardware configuration of aneural network apparatus 100 according to an embodiment. - The
neural network apparatus 100 may be implemented using various types of devices such as a personal computer (PC), a server, a mobile device, and an embedded device. Examples of theneural network apparatus 100 may include, but are not limited to, a smartphone, a tablet device, an augmented reality (AR) device, an Internet of Things (IoT) device, an autonomous vehicle, a robot, a medical device, and the like which perform speech recognition, image recognition, image classification, and the like using a neural network. Furthermore, theneural network apparatus 100 may be a dedicated hardware (HW) accelerator mounted on, connected to, or installed in the devices described above. Theneural network apparatus 100 may be a hardware accelerator such as a neural processing unit (NPU), a tensor processing unit (TPU), or a neural engine, which are dedicated modules for driving a neural network, but is not limited thereto. - Referring to
FIG. 1 , theneural network apparatus 100 includes aprocessor 110 and amemory 120.FIG. 1 only illustrates components of theneural network apparatus 100 related to the embodiments of the disclosure. Thus, it is apparent to those skilled in the art that theneural network apparatus 100 may further include any other general-purpose components in addition to the components shown inFIG. 1 . - The
processor 110 controls the overall function for driving theneural network apparatus 100. For example, theprocessor 110 controls the overall operation of theneural network apparatus 100 by executing programs stored in thememory 120 of theneural network apparatus 100. Theprocessor 110 may be implemented as a central processing unit (CPU), a graphics processing unit (GPU), an application processor (AP), or the like provided in theneural network apparatus 100, but is not limited thereto. - The
memory 120 is a hardware component that stores a variety of data processed in theneural network apparatus 100. For example, thememory 120 may store data processed and to be processed by theneural network apparatus 100. Thememory 120 may also store applications, drivers, and the like to be executed by theprocessor 110 of theneural network apparatus 100. Thememory 120 may include random access memory (RAM) such as dynamic random access memory (DRAM) and static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), a CD-ROM, Blue-ray or other optical disk storage, a hard disk drive (HDD), a solid state drive (SSD), or a flash memory. - The
memory 120 may store a descriptor for a chemical structure and a property value numerically representing the property of the chemical structure, which match each other as one set or pair. Theneural network apparatus 100 may read the descriptor and the property value corresponding thereto from thememory 120 or write the descriptor and the property value corresponding thereto in thememory 120. In an embodiment, the descriptor may include a plurality of bit values and the property value may be a value for a transmission wavelength, an emission wavelength, a voltage, or the like. - Although not shown in
FIG. 1 , thememory 120 may store an image for a chemical structure and a property value numerically representing the property of the chemical structure, which are associated with each other as one set or pair. In an embodiment, the image may include n×m pixels (where n and m are natural numbers). Hereinafter, the description of the descriptor applies equally to a case where the descriptor is replaced with the image. - The
memory 120 may store a structure characteristic value representing a chemical structure and a descriptor and a property value, which match the structure characteristic value as one set or pair. The structure characteristic value may be a SMILES code or a SMARTS code, as a string format that expresses a chemical structure. - The
processor 110 may execute instructions to implement an artificial neural network (ANN), such as a deep neural network (DNN) and a recurrent neural network (RNN). - The
processor 110 may allow the DNN to learn by using a descriptor and a property value corresponding to the descriptor and may determine a factor defining the relationship between the descriptor and the property value in this process. Then, theprocessor 110 may output a property value corresponding to a new descriptor as output data by driving the trained DNN by using, as input data, the new descriptor not used in the learning process of the DNN. - The
processor 110 may allow the RNN to learn by using a descriptor and a structure characteristic value and may determine a factor defining the relationship between the descriptor and the structure characteristic value in this process. Then, theprocessor 110 may output a structure characteristic value corresponding to a new descriptor as output data by driving the trained RNN by using, as input data, the new descriptor not used in the learning process of the RNN. - The
neural network apparatus 100 may further include a user interface. The user interface refers to a device or software used to input data to control theneural network apparatus 100. Examples of the user interface may include, but are not limited to, a key pad, a dome switch, a touch pad (e.g., capacitive overlay type, resistive overlay type, infrared beam type, surface acoustic wave type, integral strain gauge type, and piezo electric type), a jog wheel, and a jog switch, along with a graphical user interface (GUI) that may be displayed for receiving user input. -
FIG. 2 is a diagram illustrating a computation performed by a DNN according to an embodiment. - Referring to
FIG. 2 , aDNN 20 may have a structure including an input layer, hidden layers, and an output layer, perform a computation based on received input data (e.g., I1 and I2), and generate output data (e.g., O1 and O2) based on a computation result. - For example, as illustrated in
FIG. 2 , theDNN 20 may include an input layer (Layer 1), two hidden layers (Layer 2 and Layer 3), and an output layer (Layer 4). Because theDNN 20 may include many layers to process valid information, theDNN 20 may process complex data compared to a neural network including a single layer. Meanwhile, although theDNN 20 illustrated inFIG. 2 includes 4 layers, theDNN 20 is only an example and may also include more or fewer layers and more or fewer channels than those illustrated therein. That is, theDNN 20 may have various structures of layers different from that illustrated inFIG. 2 . - Each of the layers included in the
DNN 20 may have a plurality of channels. The channels may respectively correspond to a plurality of artificial nodes known as neurons, processing elements (PEs), units, or similar terms. For example, as illustrated inFIG. 2 ,Layer 1 may include two channels (nodes), and Layers 2 and 3 may include three channels respectively. However, the layers are only examples and each of the layers included in theDNN 20 may have various numbers of channels (nodes) and interconnections to other nodes. - The channels included in each of the layers of the
DNN 20 may be interconnected to process data. For example, a channel may perform a computation of data received from channels of one layer and output a computation result to channels of another layer. - Input and output of each channel may be referred to as input activation and output activation. That is, activation may be not only an output of one channel but also a parameter corresponding to an input of channels included in a successive layer. Meanwhile, each of the channels may determine an activation thereof based on activations and weights received from channels included in a previous layer. The weight is a parameter used to calculate the output activation of each channel and may be a value assigned to the relationship between channels.
- Each of the channels may be processed by a computational unit or a processing element that receives an input and generates an output activation. The input-output of each channel may be mapped. For example, when σ is an activation function, wjk i is a weight from a kth channel included in an (i−1)th layer to a jth channel included in an ith layer, bj i is a bias of the jth channel included in the ith layer, and aj i is an activation of the jth channel of the ith layer, an activation aj i may be calculated using
Equation 1 below. -
- As illustrated in
FIG. 2 , an activation of a first channel CH1 of asecond layer Layer 2 may be expressed as a1 2. In addition, a1 2 may have a value of a1 2=σ(w1,1 2×a1 1+w1,2 2×a2 1+b1 2) according toEquation 1. InEquation 1, σ denotes an activation function such as Relu, sigmoid, and tanh. As a result, the activation of a particular channel in a particular layer may denote a result obtained by passing a value of Σ(wjk i×ak 1−1)+bj i through the activation function. - However, the above-described
Equation 1 is only an example for describing the activation and the weight used to process data in theDNN 20 and the embodiment is not limited thereto. - In an embodiment, the
neural network apparatus 100 may allow theDNN 20 to learn by using a descriptor (or image) and a property value, stored in a memory. TheDNN 20 may determine a factor defining the relationship between a descriptor (or image) and a property value in a learning process using the descriptor and the property value. - That is, among
Layers 1 to 4 constituting theDNN 20, the descriptor (or image) may correspond to the values of a plurality of channels (nodes) of the input layer (Layer 1), the property value may correspond to the values of a plurality of channels (nodes) of the output layer (Layer 4), and the factor may correspond to the values of a plurality of channels (nodes) of at least one hidden layer (Layers 2 and/or 3). - Then, the trained
DNN 20 may be driven by receiving a new descriptor (or new image) as input data and thus may output a property value corresponding to the received new descriptor (or new image) as output data. -
FIG. 3 is a diagram illustrating a computation performed by an RNN according to an embodiment. - Hereinafter, descriptions given above with reference to
FIG. 2 will not be repeated for descriptive convenience. - An
RNN 30 is a neural network that analyzes data changing with time such as time-series data and constructed by connecting a network between a reference time point t and a next time point t+1. That is, theRNN 30 is a neural network in which a temporal aspect is considered and capable of effectively learning a pattern from data sequentially input or data input with a sequence of features by modifying a model to allow a recursive input to a hidden layer of the neural network. - Referring to
FIG. 3 , a node s constituting a hidden layer of theRNN 30 is illustrated. The node s may perform a computation based on input data x and generate output data o. TheRNN 30 may iteratively apply the same task to all sequences and a final output result of the node s is affected by a result of a previous calculation. - An
RNN 31 is an unfoldedRNN 30 with a loop. The term “unfold” with respect to theRNN 30 refers to expressing theRNN 30 for the entire sequence. In theRNN 31, xt is an input value at a time step t, and st is a hidden state at the time step t. The term st may be expressed byEquation 2 below. InEquation 2, a tanh or Relu function may be used as function f. The term s−1 to calculate a first hidden state may generally be initialized to 0. In addition, in theRNN 31, ot is an output value at the time step t. -
s t =f(U xt +W st−1 ) [Equation 2] - Here, st is a memory portion of the network and stores information on events at previous time steps. The output value of depends only on the memory of the current time step t.
- Meanwhile, unlike the existing neural network structure in which the parameters are different from each other, the
RNN 31 shares the parameters U, V, and W for all time steps. That is, because each step of theRNN 31 performs almost the same calculation except for an input value, the number of parameters to be learned may be reduced. - In an embodiment, the
neural network apparatus 100 may allow theRNN 31 to learn by using a descriptor (or image) and a property value, stored in a memory. Alternatively, theneural network apparatus 100 may allow theRNN 31 to learn by using a factor and a property value, determined in a learning process of theDNN 20. - For example, when W of the
RNN 31 is a factor determined in a learning process of theDNN 20 and a structure characteristic value represented by a SMILES code is “ABCD”, Ot−1 and xt may be “ABC”, and Ot and xt+1 may be “BCD”. Then, a SMILES code in each time step may be aggregated to output one SMILES code “ABCDEFG”, i.e., a structure characteristic value, as output data. - Then, the trained
RNN 31 may be driven by receiving a new descriptor (or new image) as input data and thus may output a structure characteristic value corresponding to the received new descriptor (or new image) as output data. Alternatively, the trainedRNN 31 may be driven by receiving a factor for a new descriptor (or new image) as input data and thus may output a structure characteristic value corresponding to the new descriptor (or new image) as output data. -
FIG. 4 is a conceptual diagram illustrating a neural network system for generating a chemical structure according to an embodiment. - Referring to
FIG. 4 , a neural network system configured to generate a chemical structure by using aDNN 410 and anRNN 420 is illustrated. - A descriptor that is data used in the neural network system may be represented by an ECFP as an indicator value used to represent structural characteristics of a chemical structure. A property refers to a characteristic possessed by a chemical structure and may be a real number value indicating a transmission wavelength and an emission wavelength with respect to light. A structure refers to an atomic level structure of a chemical structure and may be represented by a SMILES code. For example, a structural formula may be expressed according to a SMILES code, as shown in
Equation 3 below. -
OC1=C(C=C2C=CNC2=C1)C1=C(C=CC=C1)C1=CC2=C(NC=C2)C=C1 [Equation 3] - The factor is an element defining the relationships among the descriptor, the property, and the structure. The factor may be at least one hidden layer. When the factor includes a plurality of hidden layers, a factor defining the relationship between the descriptor and the property, a factor defining the relationship between the descriptor and the structure, and the like may be determined for each hidden layer.
- The
DNN 410 may be driven by receiving a descriptor as input data and output a property value corresponding to the received descriptor as output data. In a learning process using a descriptor and a property value, theDNN 410 may determine a factor defining the relationship between the descriptor and the property value. TheRNN 420 may be driven by receiving a descriptor or a factor determined in a learning process of theDNN 410 as input data and output a structure characteristic value as output data. -
FIG. 5 is a diagram illustrating a method of representing achemical structure 510, according to an embodiment. - Referring to
FIG. 5 , thechemical structure 510 represents the shape of a molecule formed by a combination of atoms. Thechemical structure 510 may be represented by the position of an atom, the distance between atoms, the strength of an atomic bond, and the like. - In an embodiment, the
chemical structure 510 may be represented by adescriptor 520 including a plurality of bit values (1 or 0). It may be determined whether thechemical structure 510 includes a particular partial structure, through thedescriptor 520. - In another embodiment, the
chemical structure 510 may be represented as animage 530 having a certain size. Theimage 530 may include three channels (red, green, and blue (RGB)) of n×m pixels (where n and m are natural numbers). In the image, 8 bits, i.e., a value from 0 (black) to 255 (white), may be assigned to each pixel of theimage 530. For example, bright red may be synthesized with an R channel value of 246, a G channel value of 20, and a B channel value of 50, and when all channel values are 255, white is synthesized. - Hereinafter, for convenience of description, a method in which the
chemical structure 510 is displayed as animage 530 by using one channel will be described. - Atoms constituting the
chemical structure 510 may be displayed in colors that are distinct from each other on theimage 530. Thechemical structure 510 may include carbon (C), nitrogen (N), and oxygen (O), and on theimage 530, the carbon (C) may be displayed in black, the nitrogen (N) may be displayed in blue, and the oxygen (O) may be displayed in red. - Referring to
FIG. 5 , on theimage 530 including 6×6 pixels, the value of a pixel at which the carbon (C) of thechemical structure 510 is located may be ‘0’, the value of a pixel at which the nitrogen (N) is located may be ‘50’, and the value of a pixel at which the oxygen (O) is located may be ‘186’. The value of a pixel where no atom is present may be ‘255’. - The color type in which a certain atom is displayed on the
image 530, the number of pixels constituting theimage 530, and the like are not limited to the above example. - The
descriptor 520 or theimage 530 for thechemical structure 510 may be used as input data of a neural network, and a particular property value for thechemical structure 510 may be output as output data of the neural network. -
FIG. 6 is a diagram illustrating a method of interpreting a neural network, according to an embodiment. - The
neural network apparatus 100 may obtain a descriptor or image for a reference chemical structure to output a particular property value for the reference chemical structure. In an embodiment, the descriptor may include a plurality of bit values, and the image may include n×m pixels (where n and m are natural numbers). - The
neural network apparatus 100 may input the descriptor or image for the reference chemical structure to the trained neural network as input data and drive the neural network, through aninference process 610, to obtain a particular property value for the reference chemical structure as output data of the neural network. - In this case, the
neural network apparatus 100 may perform aninterpretation process 620 to determine whether a particular property value is expressed by a partial structure in the reference chemical structure. - Referring to
FIG. 6 , in an embodiment, theneural network apparatus 100 may interpret a trained neural network by using a Layer-wise Relevance Propagation (LRP) technique. The LRP technique is a method of propagating relevance in a reverse direction (i.e., a direction from an output layer to an input layer) of the trained neural network. In the LRP technique, when the relevance is propagated between layers, a node having the greatest relevance to an upper layer among a plurality of nodes of a lower layer obtains the greatest relevance from the corresponding node of the upper layer. - A method of calculating relevance in the LRP technique may be expressed by
Equation 4. InEquation 4, ai and aj are an output value to be determined in a particular node of an ith layer and an output value to be determined in a particular node of a jth layer, respectively. w+ ij is a weight value that connects the particular node of the ith layer to the particular node of the jth layer. Ri and Rj denote the relevance of the particular node of the ith layer and the relevance of the particular node of the jth layer, respectively. -
- In an embodiment, for the application of the LRP technique, the
neural network apparatus 100 may designate an activation function, applied to a node of a trained neural network, as a linear function by using a regression analysis method, and may designate Mean Square Error (MSE) for optimization. Specifically, in the regression analysis method, because a final output value may include several integer values, the neural network may be trained by designating an activation function of an output node as a linear function. In order to implement the regression analysis method, a loss function may be designated as MSE in a neural network learning process. - However, the technique that may be used in the
interpretation process 620 to determine whether a particular property value is expressed by any partial structure in the reference chemical structure is not limited to the example described above. - When the input data of the neural network is a descriptor for the reference chemical structure, a plurality of nodes of the input layer may respectively correspond to bit values constituting the descriptor. The
neural network apparatus 100 may obtain a node of the input layer (i.e., a bit position of the descriptor), which has the greatest relevance to the expression of a particular property value of the reference chemical structure, through theinterpretation process 620. Because the bit position of the descriptor corresponds to a particular partial structure in the reference chemical structure, theneural network apparatus 100 may determine a particular partial structure, which has the greatest relevance to the expression of a particular property value of the reference chemical structure, by obtaining the bit position of the descriptor through theinterpretation process 620. - When the input data of the neural network is an image for the reference chemical structure, the plurality of nodes of the input layer may respectively correspond to pixel values constituting the image. The
neural network apparatus 100 may obtain a node of the input layer (i.e., pixel coordinates of the image), which has the greatest relevance to the expression of a particular property value of the reference chemical structure, through theinterpretation process 620. Because the pixel coordinates of the image corresponds to a particular partial structure in the reference chemical structure, theneural network apparatus 100 may determine a particular partial structure, which has the greatest relevance to the expression of a particular property value of the reference chemical structure, by obtaining the pixel coordinates of the image through theinterpretation process 620. - Hereinafter, the bit position of the descriptor and the pixel coordinates of the image, which have the greatest relevance to the expression of a particular property value of the reference chemical structure, will be referred to as an expression region.
-
FIG. 7 is a diagram illustrating an example of changing an expression region of a descriptor to generate a new chemical structure according to an embodiment. - Referring to
FIG. 7 , adescriptor 712 of areference chemical structure 710 may be ‘11100011011010110’. Theneural network apparatus 100 may sequentially input bit values constituting thedescriptor 712 respectively to nodes of an input layer of the neural network (e.g., DNN) and output a property value (i.e., an ‘emission wavelength: 320 nm’) for thereference chemical structure 710. - The
neural network apparatus 100 may obtain a node of the input layer (i.e., anexpression region 713 of the descriptor 712), which has the greatest relevance to the expression of a wavelength value of thereference chemical structure 710. Theexpression region 713 of thedescriptor 712 may correspond to aparticular position 711 in thereference chemical structure 710. InFIG. 7 , theexpression region 713 corresponds to one bit value. However, theexpression region 713 may correspond to a plurality of consecutive bit values, and a plurality of expression regions may be in thedescriptor 712. - The
neural network apparatus 100 may change a bit value of theexpression region 713 to improve the property of thereference chemical structure 710. The structure of theparticular position 711 may be changed as the bit value of theexpression region 713 is changed. As a method of changing the bit value of theexpression region 713, a genetics algorithm may be used, and the details thereof will be described later with reference toFIG. 8 . Theneural network apparatus 100 may change the bit value of theexpression region 713 and/or a bit value around theexpression region 713. - The
neural network apparatus 100 may change the bit value of theexpression region 713 and output anew descriptor 722. Referring toFIG. 7 , as a bit value ‘1’ of theexpression region 713 in thenew descriptor 722 is changed to ‘110100’, theneural network apparatus 100 may apply a newpartial structure 721 corresponding to the bit value ‘110100’ to theparticular position 711 and generate anew chemical structure 720 to which the newpartial structure 721 is applied. - In connection with a method of generating the
new chemical structure 720, theneural network apparatus 100 may input thenew descriptor 722 as input data of a neural network (e.g., RNN) and output a structure characteristic value as output data, and may generate thenew chemical structure 720 based on the output structure characteristic value. - The
neural network apparatus 100 may input thedescriptor 722 of thenew chemical structure 720 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to thedescriptor 722 input into the neural network. That is, theneural network apparatus 100 may improve a property by changing a partial structure of thereference chemical structure 710 and generating thenew chemical structure 720. - The
neural network apparatus 100 may repeatedly generate a chemical structure through the above-described process until a chemical structure having a property value close to a preset value (e.g., ‘emission wavelength: 350 nm’) is generated. - Specifically, the
neural network apparatus 100 may compare a property value (e.g., ‘emission wavelength: 325 nm’) for thenew chemical structure 720 to a preset value (e.g., ‘emission wavelength: 350 nm’) and generate a new chemical structure by changing the bit value of theexpression region 723 of thedescriptor 722 when the property value for thenew chemical structure 720 is less than the preset value. - When the property value for the new chemical structure generated through the above-described process is equal to or greater than the preset value, the
neural network apparatus 100 may store the generated new chemical structure in a memory. -
FIG. 8 is a diagram illustrating an example of changing a partial structure by changing a bit value of a descriptor according to an embodiment. - In an embodiment, the
neural network apparatus 100 may apply a genetics algorithm to a bit value constituting a descriptor of a reference chemical structure and perform a selection, intersection, or mutation operation on the bit value. - The
neural network apparatus 100 may change the descriptor of the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. As the descriptor of the reference chemical structure is changed or modified, a partial structure in the reference chemical structure may be mutated, removed, or replaced, or a partial structure may be added to the reference chemical structure. - Referring to
FIG. 8 , theneural network apparatus 100 may mutate the partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, theneural network apparatus 100 may change carbon (C) in afirst position 810 in the reference chemical structure to nitrogen (N). Alternatively, theneural network apparatus 100 may changeadjacent atoms first position 810 to other atoms. - In addition, the
neural network apparatus 100 may add a partial structure to the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, theneural network apparatus 100 may add apartial structure 823 to be connected to an atom in asecond position 820 in the reference chemical structure. Alternatively, theneural network apparatus 100 may add a partial structure to be connected toadjacent atoms second position 820. Alternatively, theneural network apparatus 100 may add apartial structure 824 in the form of a condensed ring, connected to both an atom in thesecond position 820 and anadjacent atom 821 combined with the atom in thesecond position 820. - In addition, the
neural network apparatus 100 may remove a partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, theneural network apparatus 100 may remove apartial structure 831 connected to an atom in athird position 830 in the reference chemical structure. Alternatively, theneural network apparatus 100 may change a ring structure by removing an atom in thethird position 830. - In addition, the
neural network apparatus 100 may replace a partial structure in the reference chemical structure by applying the genetics algorithm to the bit value constituting the descriptor of the reference chemical structure. For example, theneural network apparatus 100 may change a ring structure of thefourth position 840 in the reference chemical structure to a newpartial structure - However, the example of changing a partial structure by changing the bit value of the descriptor is not limited to the above descriptions.
-
FIG. 9 is a diagram illustrating an example of changing a partial structure by changing a pixel value of an image according to an embodiment. - Referring to
FIG. 9 , animage 912 of areference chemical structure 910 may include 6×6 pixels. Atoms constituting thereference chemical structure 910 may be displayed in colors that are distinct from each other on theimage 912. Thereference chemical structure 910 may include carbon (C), nitrogen (N), and oxygen (O), and on theimage 912, the carbon (C) may be displayed in black, the nitrogen (N) may be displayed in blue, and the oxygen (O) may be displayed in red. On theimage 912, the value of a pixel at which the carbon (C) is located may be ‘0’, the value of a pixel at which the nitrogen (N) is located may be ‘50’, and the value of a pixel at which the oxygen (O) is located may be ‘186’. - The
neural network apparatus 100 may sequentially input pixel values constituting theimage 912 respectively to nodes of an input layer of a neural network (e.g., DNN) and thus may output a property value (i.e., an ‘emission wavelength: 320 nm’) for thereference chemical structure 910. - The
neural network apparatus 100 may obtain a node of the input layer (i.e., anexpression region 913 of the image 912) which has the greatest relevance to the expression of a wavelength value of thereference chemical structure 910. Theexpression region 913 of theimage 912 may correspond to aparticular position 911 in thereference chemical structure 910. InFIG. 9 , theexpression region 913 corresponds to one pixel value. However, theexpression region 913 may correspond to a plurality of adjacent pixel values, and a plurality of expression regions may be provided in theimage 912. - The
neural network apparatus 100 may change a pixel value of theexpression region 913 and/or a pixel value around theexpression region 913 to improve the property of thereference chemical structure 910. The structure of theparticular position 911 may be changed as the pixel value of theexpression region 913 and/or the pixel value around theexpression region 913 are changed. In an embodiment, the pixel value of theexpression region 913 and/or the pixel values around theexpression region 913 may be changed by using Gaussian noise. Gaussian noise refers to a noise of which a distribution function of an arbitrary order is represented by a normal distribution. - The
neural network apparatus 100 may change the pixel value of theexpression region 913 and/or the pixel value around theexpression region 913 and thus output anew image 922. Referring toFIG. 9 , as the pixel value of theexpression region 913 and/or the pixel values around theexpression region 913 in thenew image 922 are changed, theneural network apparatus 100 may apply a newpartial structure 921 corresponding to a changed pixel value to theparticular position 911 and generate anew chemical structure 920. - In connection with a method of generating the
new chemical structure 920, theneural network apparatus 100 may input thenew image 922 as input data of a neural network (e.g., RNN) and output a structure characteristic value as output data, and may generate thenew chemical structure 920 based on the output structure characteristic value. - The
neural network apparatus 100 may input theimage 922 of thenew chemical structure 920 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to theimage 922 input into the neural network. That is, theneural network apparatus 100 may improve a property by changing a partial structure of thereference chemical structure 910 and generating thenew chemical structure 920. - The
neural network apparatus 100 may repeatedly generate a chemical structure through the above-described process until a chemical structure having a property value close to a preset value (e.g., ‘emission wavelength: 350 nm’) is generated. - Specifically, the
neural network apparatus 100 may compare a property value (e.g., ‘emission wavelength: 325 nm’) for thenew chemical structure 920 to a preset value (e.g., ‘emission wavelength: 350 nm’) and generate a new chemical structure by changing the pixel value of theexpression region 913 and the pixel value around theexpression region 913 in theimage 922 when the property value for thenew chemical structure 920 is less than the preset value. - When the property value for the new chemical structure generated through the above-described process is equal to or greater than the preset value, the
neural network apparatus 100 may store the generated new chemical structure in a memory. -
FIG. 10 is a diagram illustrating an example of changing a pixel value when there are a plurality of expression regions on an image according to an embodiment. - Referring to
FIG. 10 , animage 1012 of areference chemical structure 1010 may include 6×6 pixels. Atoms constituting thereference chemical structure 1010 may be displayed in colors that are distinct from each other on theimage 1012. For example, on theimage 1012, the value of a pixel at which the carbon (C) is located may be ‘0’, the value of a pixel at which the nitrogen (N) is located may be ‘50’, and the value of a pixel at which the oxygen (O) is located may be ‘186’. - The
neural network apparatus 100 may sequentially input pixel values constituting theimage 1012 to nodes of an input layer of a neural network (e.g., DNN) and output a property value (i.e., an ‘emission wavelength: 320 nm’) for thereference chemical structure 1010. - In an embodiment, there may be multiple nodes of an input layer that have the greatest relevance, or high relevance with respect to other nodes, to the expression of a wavelength value of the
reference chemical structure 1010. That is, there may be a plurality of expression regions, i.e., afirst expression region 1013 a and asecond expression region 1013 b, on theimage 1012. Thefirst expression region 1013 a and thesecond expression region 1013 b in theimage 1012 may correspond to afirst position 1011 a and asecond position 1011 b in thereference chemical structure 1010, respectively. As shown inFIG. 10 , thesecond position 1011 b corresponding to thesecond expression region 1013 b may be outside thereference chemical structure 1010. - When there are a plurality of expression regions, i.e., the
first expression region 1013 a and thesecond expression region 1013 b, on theimage 1012, theneural network apparatus 100 may obtain coordinate information on theimage 1012, which corresponds to the plurality of expression regions, i.e., thefirst expression region 1013 a and thesecond expression region 1013 b. For example, based on a lower left corner of theimage 1012 having the origin (0,0), the coordinate information of thefirst expression region 1013 a may be (3, 3) and the coordinate information of thesecond expression region 1013 b may be (5, 3). - The
neural network apparatus 100 may output the coordinate information (4, 3) of acenter point 1014 based on the coordinate information corresponding to the plurality of expression regions, i.e., thefirst expression region 1013 a and thesecond expression region 1013 b. Theneural network apparatus 100 may change a pixel value of thecenter point 1014 and/or a pixel value around thecenter point 1014 to improve the property of thereference chemical structure 1010. As the pixel value of thecenter point 1014 and/or the pixel value around thecenter point 1014 are changed, the structure of aparticular position 1015 on thereference chemical structure 1010 corresponding to thecenter point 1014 may be changed. In an embodiment, the pixel value of thecenter point 1014 and/or the pixel value around thecenter point 1014 may be changed by using Gaussian noise. - The
neural network apparatus 100 may change the pixel value of thecenter point 1014 and/or the pixel value around thecenter point 1014 and output anew image 1022. Referring toFIG. 10 , as the pixel value of thecenter point 1014 and/or the pixel value around thecenter point 1014 in thenew image 1022 are changed, theneural network apparatus 100 may apply a newpartial structure 1021 corresponding to a changed pixel value to theparticular position 1015 and generate anew chemical structure 1020. - The
neural network apparatus 100 may input theimage 1022 of thenew chemical structure 1020 into the neural network and output a property value (i.e., ‘emission wavelength: 325 nm’) corresponding to theimage 1022 input into the neural network. That is, theneural network apparatus 100 may improve a property by changing a partial structure of thereference chemical structure 1010 and generating thenew chemical structure 1020. -
FIG. 11 is a flowchart of a method of generating a new chemical structure by changing a descriptor for a chemical structure in a neural network apparatus according to an embodiment. - The method of generating a chemical structure in a neural network apparatus relates to the embodiments described above with reference to the drawings, and thus, although omitted in the following descriptions, descriptions given above with reference to the drawings may also be applied to the method illustrated in
FIG. 11 . - Referring to
FIG. 11 , inoperation 1110, the neural network apparatus may obtain a descriptor for a reference chemical structure. - The descriptor is an indicator value used to represent the structural characteristics of a chemical structure. The descriptor may be obtained by performing a relatively simple operation on a given chemical structure. In an embodiment, the descriptor may be represented by an ECFP and may include a plurality of bit values. However, the manner of expression of the descriptor is not limited thereto.
- Hereinafter, the descriptor for the reference chemical structure will be referred to as a reference descriptor.
- In
operation 1120, the neural network apparatus may input a reference descriptor into a trained neural network and output a property value of a particular property for the reference chemical structure. - The property refers to a characteristic possessed by a chemical structure and may be a real number value indicating a transmission wavelength and an emission wavelength with respect to light. Unlike the case of the descriptor, the computation of the property may require complex simulations and be time consuming.
- A memory of the neural network apparatus may store a descriptor for a particular chemical structure and a property value numerically representing the property of the particular chemical structure, which match each other as one set.
- In an embodiment, the neural network apparatus may allow a neural network (e.g., DNN) to learn by using a descriptor and a property value, stored in a memory. In a learning process using the descriptor and the property value, a factor defining the relationship between the descriptor and the property value may be determined in the neural network.
- The neural network apparatus may output a property value corresponding to the reference descriptor as output data of the neural network by inputting the reference descriptor as input data of the trained neural network and driving the neural network.
- In
operation 1130, the neural network apparatus may determine an expression region that expresses a particular property in the reference descriptor. - The neural network apparatus may perform an interpretation process to determine whether a particular property value is expressed by any partial structure in the reference chemical structure.
- In an embodiment, the neural network apparatus may interpret the trained neural network by using an LRP technique. The LRP technique is a method of propagating relevance in a reverse direction (i.e., a direction from an output layer to an input layer) of the trained neural network. In the LRP technique, when the relevance is propagated between layers, a node having the greatest relevance to an upper layer among a plurality of nodes of a lower layer obtains the greatest relevance from the corresponding node of the upper layer.
- For the application of the LRP technique, the neural network apparatus may designate an activation function, applied to a node of the trained neural network, as a linear function, and may designate MSE for optimization.
- A plurality of nodes of the input layer of the neural network may respectively correspond to bit values constituting the descriptor. The neural network apparatus may obtain a node of the input layer, i.e., a bit position (or expression region) of the reference descriptor, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, through the interpretation process. Because the expression region of the reference descriptor corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus may determine a particular partial structure, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, by obtaining the expression region of the reference descriptor through the interpretation process.
- In
operation 1140, the neural network apparatus may generate a new chemical structure by changing a partial structure in the reference chemical structure which corresponds to the expression region. - The neural network apparatus may receive a target property value as an input. In an embodiment, the neural network apparatus may include a user interface that is a means for inputting data for controlling the neural network apparatus. For example, the user interface may be a key pad, a touch pad, or the like, but is not limited thereto.
- The target property value is a numerical value of a particular property of a chemical structure to be finally generated in the neural network apparatus. In an embodiment, the target property value may be a refractive index value, an elastic modulus, a melting point, a transmission wavelength, and/or an emission wavelength. For example, the neural network apparatus may receive ‘emission wavelength: 350 nm’ as a target property value. Alternatively, the target property value may be set in an increasing (+) direction or a decreasing (−) direction rather than a numerical value.
- The neural network apparatus may generate a new chemical structure having a property value close to the target property value by changing a partial structure in the reference chemical structure.
- In an embodiment, the neural network apparatus may output a new descriptor by changing a bit value of an expression region of the reference descriptor. The partial structure in the reference chemical structure may be changed as the bit value of the expression region of the reference descriptor is changed. A method of changing the bit value of the expression region may use a genetics algorithm, but is not limited thereto.
- The neural network apparatus may output a structure characteristic value corresponding to the new descriptor as output data of the neural network by inputting the new descriptor, in which the bit value of the expression region of the reference descriptor is changed, as input data of the trained neural network (e.g., RNN) and driving the neural network. The neural network apparatus may generate a new chemical structure based on the output structure characteristic value. Alternatively, the neural network apparatus may use a factor for the new descriptor, output in a learning process of the DNN, as input data of the trained neural network (e.g., RNN).
- The neural network apparatus may iteratively generate a chemical structure through the above-described process until a chemical structure having a property value close to a target property value (e.g., ‘emission wavelength: 350 nm’) is generated.
- Specifically, the neural network apparatus may compare a property value for a new chemical structure to a target property value and generate a new chemical structure again by changing the bit value of the expression region of the reference descriptor when the property value for the new chemical structure is less than the target property value.
- When the property value of the new chemical structure generated through the above-described process is equal to or greater than the target property value, the neural network apparatus may store the generated new chemical structure in a memory.
-
FIG. 12 is a flowchart of a method of generating a new chemical structure by changing an image for a chemical structure in a neural network apparatus according to an embodiment. - Hereinafter, descriptions that are the same as those given with reference to
FIG. 11 are omitted. - Referring to
FIG. 12 , inoperation 1210, the neural network apparatus may obtain an image for a reference chemical structure. - In an embodiment, the image for the reference chemical structure may include n×m pixels (where n and m are natural numbers). For example, 8 bits, i.e., a value from 0 (black) to 255 (white), may be assigned to each pixel of the image.
- Hereinafter, the image for the reference chemical structure will be referred to as a reference image.
- In
operation 1220, the neural network apparatus may input the reference image into a trained neural network and output a property value of a particular property for the reference chemical structure. - A memory of the neural network apparatus may store an image for a particular chemical structure and a property value numerically representing the property of the particular chemical structure, which match each other as one set.
- In an embodiment, the neural network apparatus may allow a neural network (e.g., DNN) to learn by using an image and a property value, stored in a memory. In a learning process using the image and the property value, a factor defining the relationship between the image and the property value may be determined in the neural network.
- The neural network apparatus may output a property value corresponding to the reference image as output data of the neural network by inputting the reference image as input data of the trained neural network and driving the neural network.
- In
operation 1230, the neural network apparatus may determine an expression region that expresses a particular property in the image. - A plurality of nodes of an input layer of the neural network may respectively correspond to pixel values constituting the image. The neural network apparatus may obtain a node of the input layer, i.e., pixel coordinates (or expression region) of the reference image, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, through the interpretation process. Because the expression region of the reference image corresponds to a particular partial structure in the reference chemical structure, the neural network apparatus may determine a particular partial structure, which has the greatest relevance in the expression of a particular property value of the reference chemical structure, by obtaining the expression region of the reference image through the interpretation process.
- In
operation 1240, the neural network apparatus may generate a new chemical structure by changing a partial structure in the reference chemical structure which corresponds to the expression region. - In an embodiment, the neural network apparatus may generate a new image by changing a pixel value of the expression region of the reference image and/or a pixel value around the expression region. A partial structure in the reference chemical structure may be changed as the pixel value of the expression region of the reference image and/or the pixel value around the expression region are changed. In an embodiment, the pixel value of the expression region of the reference image and/or the pixel value around the expression region may be changed by using Gaussian Noise, but a method of changing the pixel value is not limited thereto.
- The neural network apparatus may output a structure characteristic value corresponding to the new image as output data of the neural network by inputting the new image, in which the pixel value of the expression region of the reference image and/or the pixel value around the expression region are changed, as input data of the trained neural network (e.g., RNN) and driving the neural network. The neural network apparatus may generate a new chemical structure based on the output structure characteristic value. Alternatively, the neural network apparatus may use a factor for the new image, output in a learning process of the DNN, as input data of the trained neural network (e.g., RNN).
- The neural network apparatus may iteratively generate a chemical structure through the above-described process until a chemical structure having a property value close to a target property value (e.g., ‘emission wavelength: 350 nm’) is generated.
- Specifically, the neural network apparatus may compare a property value for a new chemical structure to a target property value and generate a new chemical structure again by changing the pixel value of the expression region of the reference image and/or the pixel value around the expression region when the property value for the new chemical structure is less than the target property value.
- When the property value of the new chemical structure generated through the above-described process is equal to or greater than the target property value, the neural network apparatus may store the generated new chemical structure in a memory.
- According to the aforementioned embodiments, a trained neural network may be interpreted to specify a partial structure expressing a property of a chemical structure. In addition, a new chemical structure having an improved property may be generated by changing the specified partial structure.
- Also, the aforementioned embodiments may be embodied in the form of a recording medium storing instructions executable by a computer, such as a program module, executed by a computer. The computer-readable medium may be any recording medium that may be accessed by a computer and may include volatile and non-volatile media and removable and non-removable media. Also, the computer-readable medium may include computer storage media and communication media. The computer storage media include volatile and non-volatile and removable and non-removable media implemented using any method or technology to store information such as computer-readable instructions, data structures, program modules, or other data. The communication media include computer-readable instructions, data structures, program modules, or other data in a modulated data signal, or other transport mechanisms and include any delivery media.
- In addition, throughout the specification, the term “unit” may be a hardware component such as a processor or a circuit and/or a software component executed by the hardware component such as a processor.
- The above description of the disclosure is provided for the purpose of illustration, and it would be understood by those skilled in the art that various changes and modifications may be made without changing technical conception and essential features of the disclosure. Thus, it is clear that the above-described illustrative embodiments are illustrative in all aspects and do not limit the disclosure. For example, each component described to be of a single type may be implemented in a distributed manner. Likewise, components described to be distributed may be implemented in a combined manner.
- It should be understood that embodiments described herein should be considered in a descriptive sense only and not for purposes of limitation. Descriptions of features or aspects within each embodiment should typically be considered as available for other similar features or aspects in other embodiments.
- While one or more embodiments have been described with reference to the figures, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope as defined by the following claims.
Claims (13)
1. A method of generating a chemical structure by using a neural network apparatus, the method comprising:
inputting an image of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure;
determining an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image; and
generating a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
2. The method of claim 1 , wherein the determining comprises:
determining the expression region for expressing the property in the image by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
3. The method of claim 2 , wherein the determining comprises:
determining the expression region for expressing the property in the image by applying a layer-wise relevance propagation (LRP) technique to the trained neural network,
wherein an activation function applied to a node of the trained neural network is designated as a linear function to apply the LRP technique to the trained neural network, and a mean square error (MSE) is designated for optimization.
4. The method of claim 1 , wherein the generating comprises:
obtaining pixel values of the one or more pixels of the expression region in the image; and
generating the new chemical structure by applying Gaussian noise to the pixel values of the one or more pixels and modifying the partial structure corresponding to the expression region.
5. The method of claim 1 , wherein the expression region comprises a plurality of expression regions expressing the property and the generating comprises:
obtaining coordinate information in the image corresponding to the plurality of expression regions;
calculating a center point in the image of the plurality of expression regions based on the coordinate information and obtaining a pixel value of the center point; and
generating the new chemical structure by applying Gaussian noise to the pixel value and modifying the partial structure corresponding to the center point.
6. The method of claim 1 , wherein the generating comprises:
generating a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region;
inputting an image for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and
generating a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and storing the new first chemical structure when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
7. A neural network apparatus configured to generate a chemical structure, the neural network apparatus comprising:
a memory configured to store at least one program; and
a processor configured to control the neural network apparatus to implement a neural network by executing the at least one program, which when the at least one program is executed the processor is configured to:
input an image of a chemical structure to a trained neural network that generates a property value of a property of the chemical structure, the image of the chemical structure representing structural characteristics of the chemical structure and the property of the chemical structure being a characteristic possessed by the chemical structure,
determine an expression region for expressing the property in the image, the expression region comprising one or more pixels in the image, and
generate a new chemical structure by modifying a partial structure in the chemical structure, the partial structure corresponding to the expression region.
8. The neural network apparatus of claim 7 , wherein the processor when the at least one program is executed is further configured to determine the expression region for expressing the property in the image by the trained neural network performing an interpretation process to determine whether the property value is expressed by the partial structure in the chemical structure.
9. The neural network apparatus of claim 8 , wherein the processor when the at least one program is executed is further configured to:
determine the expression region for expressing the property in the image by applying a layer-wise relevance propagation (LRP) technique to the trained neural network; and
designate an activation function applied to a node of the trained neural network as a linear function to apply the LRP technique to the trained neural network and designate a mean square error (MSE) for optimization.
10. The neural network apparatus of claim 7 , wherein the processor when the at least one program is executed is further configured to obtain pixel values of the one or more pixels of the expression region in the image and to generate the new chemical structure by applying Gaussian noise to the pixel values of the one or more pixels and modifying the partial structure corresponding to the expression region.
11. The neural network apparatus of claim 7 , wherein the expression region comprises a plurality of expression regions expressing the property and the processor when the at least one program is executed is further configured to:
obtain coordinate information in the image corresponding to the plurality of expression regions;
calculate a center point in the image of the plurality of expression regions based on the coordinate information and obtaining a pixel value of the center point; and
generate the new chemical structure by applying Gaussian noise to the pixel value and modifying the partial structure corresponding to the center point.
12. The neural network apparatus of claim 7 , wherein the processor when the at least one program is executed is further configured to:
generate a new first chemical structure by modifying the partial structure in the chemical structure, the partial structure corresponding to the expression region;
input an image for the new first chemical structure to the trained neural network to output a property value of a particular property for the new first chemical structure; and
generate a new second chemical structure by changing a partial structure in the new first chemical structure, the partial structure corresponding to the expression region, when the property value of the particular property for the new first chemical structure is less than a preset value, and store the new first chemical structure in the memory when the property value of the particular property for the new first chemical structure is equal to or greater than the preset value.
13. A non-transitory computer-readable recording medium comprising a program, which, when executed by a computer, performs the method of claim 1 .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/139,655 US20230268035A1 (en) | 2018-08-23 | 2023-04-26 | Method and apparatus for generating chemical structure using neural network |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0098373 | 2018-08-23 | ||
KR1020180098373A KR102547802B1 (en) | 2018-08-23 | 2018-08-23 | Method and apparatus for generating chemical structure using neural network |
US16/269,092 US11670403B2 (en) | 2018-08-23 | 2019-02-06 | Method and apparatus for generating chemical structure using neural network |
US18/139,655 US20230268035A1 (en) | 2018-08-23 | 2023-04-26 | Method and apparatus for generating chemical structure using neural network |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/269,092 Division US11670403B2 (en) | 2018-08-23 | 2019-02-06 | Method and apparatus for generating chemical structure using neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230268035A1 true US20230268035A1 (en) | 2023-08-24 |
Family
ID=65904210
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/269,092 Active 2042-02-25 US11670403B2 (en) | 2018-08-23 | 2019-02-06 | Method and apparatus for generating chemical structure using neural network |
US18/139,655 Pending US20230268035A1 (en) | 2018-08-23 | 2023-04-26 | Method and apparatus for generating chemical structure using neural network |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/269,092 Active 2042-02-25 US11670403B2 (en) | 2018-08-23 | 2019-02-06 | Method and apparatus for generating chemical structure using neural network |
Country Status (4)
Country | Link |
---|---|
US (2) | US11670403B2 (en) |
EP (1) | EP3614314A1 (en) |
KR (1) | KR102547802B1 (en) |
CN (1) | CN110858504A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210287137A1 (en) * | 2020-03-13 | 2021-09-16 | Korea University Research And Business Foundation | System for predicting optical properties of molecules based on machine learning and method thereof |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1895436A1 (en) * | 2006-08-31 | 2008-03-05 | Silicos NV | Method for evolving molecules and computer program for implementing the same |
GB201209239D0 (en) | 2012-05-25 | 2012-07-04 | Univ Glasgow | Methods of evolutionary synthesis including embodied chemical synthesis |
KR102276339B1 (en) | 2014-12-09 | 2021-07-12 | 삼성전자주식회사 | Apparatus and method for training convolutional neural network for approximation of convolutional neural network |
CN107636693B (en) | 2015-03-20 | 2022-01-11 | 弗劳恩霍夫应用研究促进协会 | Relevance score assignment for artificial neural networks |
KR102523472B1 (en) | 2016-08-01 | 2023-04-18 | 삼성전자주식회사 | Method and apparatus for searching new material |
KR20180056013A (en) | 2016-11-18 | 2018-05-28 | 강원대학교산학협력단 | Method and apparatus for predicting toxicity of nano material |
KR102587959B1 (en) | 2018-01-17 | 2023-10-11 | 삼성전자주식회사 | Method and apparatus for generating chemical structure using neural network |
-
2018
- 2018-08-23 KR KR1020180098373A patent/KR102547802B1/en active IP Right Grant
-
2019
- 2019-02-06 US US16/269,092 patent/US11670403B2/en active Active
- 2019-02-26 CN CN201910140880.5A patent/CN110858504A/en active Pending
- 2019-03-21 EP EP19164409.5A patent/EP3614314A1/en active Pending
-
2023
- 2023-04-26 US US18/139,655 patent/US20230268035A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3614314A1 (en) | 2020-02-26 |
KR102547802B1 (en) | 2023-06-26 |
KR20200022595A (en) | 2020-03-04 |
US20200066377A1 (en) | 2020-02-27 |
CN110858504A (en) | 2020-03-03 |
US11670403B2 (en) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11581067B2 (en) | Method and apparatus for generating a chemical structure using a neural network | |
US11645541B2 (en) | Machine learning model interpretation | |
KR101899101B1 (en) | Apparatus and Method for Generating Prediction Model based on Artificial Neural Networks | |
KR102295805B1 (en) | Method for managing training data | |
US20230316379A1 (en) | Deep learning based visual compatibility prediction for bundle recommendations | |
KR102355489B1 (en) | Method for predicting drug-target protein interactions and device thereof | |
US20230268035A1 (en) | Method and apparatus for generating chemical structure using neural network | |
TWI824485B (en) | Method of optimizing neural network model | |
US11488007B2 (en) | Building of custom convolution filter for a neural network using an automated evolutionary process | |
CN112420125A (en) | Molecular attribute prediction method and device, intelligent equipment and terminal | |
CN112819151A (en) | Method and apparatus for recognizing image and training method | |
Stein | Generating high-quality explanations for navigation in partially-revealed environments | |
JP2021086371A (en) | Learning program, learning method, and learning apparatus | |
KR102455875B1 (en) | Method and apparatus for bone age assessment | |
US20220019911A1 (en) | Predictive models having decomposable hierarchical layers configured to generate interpretable results | |
CN113490955A (en) | System and method for generating a pyramid level architecture | |
KR102363370B1 (en) | Artificial neural network automatic design generation apparatus and method using UX-bit and Monte Carlo tree search | |
WO2022127603A1 (en) | Model processing method and related device | |
US20210174910A1 (en) | Method and apparatus for generating new chemical structure using neural network | |
KR102122232B1 (en) | Automatic Neural Network Generating Device and Method for Multi-Task | |
Bilokon et al. | Backpropagation artificial neural network learning algorithm process impact based on hyperparameters | |
EP4198837A1 (en) | Method and system for global explainability of neural networks | |
JP2022129815A (en) | Operation management support device and operation management support method | |
Xu | Exploring properties and limitations of Graph Neural Networks (GNNs) in Software Verification | |
JP2022045087A (en) | Model analysis device, model analysis method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |