# US 10,482,355 B2 · Systems and methods for applying a convolutional network to spatial data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,482,355 B2
- Document ID: US10482355B2
- Status: Granted
- Kind: B2
- Application number: 16/011,373
- Filed: 2018-06-18
- Published: 2019-05-30
- Granted: 2019-11-19
- Earliest claimed: 2014-05-05
- Assignees: Atomwise Inc.
- Applicants: Atomwise Inc.
- Inventors: Abraham Samuel Heifets; Izhar Wallach; Michael Dzamba
- Web page: https://patentgrep.com/patent/US10482355B2

## CPC

- G16B 15/00: ICT specially adapted for analysing two-dimensional [2D] or three-dimensional [3D] molecular structures, e.g. structural or functional relations or structure alignment
- G06F 18/24: Classification techniques
- G06F 18/24137: {Distances to cluster centroïds}
- G06N 3/045: Combinations of networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/084: Backpropagation, e.g. using gradient descent
- G06N 3/088: Non-supervised learning, e.g. competitive learning
- G06N 3/09: Supervised learning
- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G06T 1/60: Memory management
- G06T 7/60: Analysis of geometric attributes
- G06T 15/08: Volume rendering
- G06V 10/454: {Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]}
- G06V 10/82: using neural networks
- G06V 30/19173: {Classification techniques}
- G16B 15/20: Protein or domain folding
- G16B 15/30: Drug targeting using structural data; Docking or binding prediction
- G16B 20/00: ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
- G16B 20/30: Detection of binding sites or motifs
- G16B 40/00: ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
- G16B 40/20: Supervised data analysis
- G06N 3/048: Activation functions
- G06N 20/00: Machine learning
- G06T 2200/04: involving 3D image data
- G06T 2200/28: involving image processing hardware
- G06T 2207/20084: Artificial neural networks [ANN]
- G06V 2201/04: Recognition of patterns in DNA microarrays
- G16B: BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

Systems and methods for test object classification are provided in which the test object is docked with a target object in a plurality of different poses to form voxel maps. The maps are vectorized and fed into a convolutional neural network comprising an input layer, a plurality of individually weighted convolutional layers, and an output scorer. The convolutional layers include initial and final layers. Responsive to vectorized input, the input layer feeds values into the initial convolutional layer. Each respective convolutional layer, other than the final convolutional layer, feeds intermediate values as a function of the weights and input values of the respective layer into another of the convolutional layers. The final convolutional layer feeds values into one or more fully connected layers as a function of the final layer weights and input values. The one or more full connected layers feed values into the scorer which scores each input vector to thereby classify the test object.

## Claims

### Claim 1

A computer system for characterization of a test object using spatial data, the computer system comprising:
at least one processor; and
memory addressable by the least one processor, the memory storing at least one program for execution by the at least one processor, the at least one program comprising instructions for:
(A) obtaining spatial coordinates for a target object;
(B) modeling the test object with the target object in each pose of a plurality of different poses, thereby creating a plurality of voxel maps, wherein each respective voxel map in the plurality of voxel maps comprises the test object in a respective pose in the plurality of different poses;
(C) inputting each respective voxel map in the plurality of voxel maps to a network architecture that includes (i) an input layer for sequentially receiving the plurality of voxel maps, (ii) a plurality of convolutional layers, and (iii) a scorer, wherein
the plurality of convolutional layers includes an initial convolutional layer and a final convolutional layer,
each layer in the plurality of convolutional layers is associated with a different set of weights,
responsive to a respective voxel map in the plurality of voxel maps, the input layer feeds values from the respective voxel map into the initial convolutional layer;
(D) obtaining a plurality of scores from the scorer, wherein each score in the plurality of scores corresponds to the input of a voxel map into the input layer; and
(E) using the plurality of scores to characterize the test object.

### Claim 2 (depends on 1)

The computer system of claim 1, wherein the scorer comprises a plurality of fully-connected layers and an evaluation layer wherein a fully-connected layer in the plurality of fully-connected layers feeds into the evaluation layer.

### Claim 3 (depends on 1)

The computer system of claim 1, wherein the scorer comprises a decision tree, a multiple additive regression tree, a clustering algorithm, principal component analysis, a nearest neighbor analysis, a linear discriminant analysis, a quadratic discriminant analysis, a support vector machine, an evolutionary method, a projection pursuit, or ensembles thereof.

### Claim 4 (depends on 1)

The computer system of claim 1, wherein the plurality of different poses comprises 2 or more poses, 10 or more poses, 100 or more poses, or 1000 or more poses.

### Claim 5 (depends on 1)

The computer system of claim 1, wherein the plurality of different poses is obtained using a docking scoring function in one of markup chain Monte Carlo sampling, simulated annealing, Lamarckian Genetic Algorithms, or genetic algorithms.

### Claim 6 (depends on 1)

The computer system of claim 1, wherein the plurality of different poses is obtained by incremental search using a greedy algorithm.

### Claim 7 (depends on 1)

The computer system of claim 1, wherein the target object is a polymer.

### Claim 8 (depends on 7)

The computer system of claim 7, wherein the polymer is a protein, a polypeptide, a polynucleic acid, a polyribonucleic acid, a polysaccharide, or an assembly of any combination thereof.

### Claim 9 (depends on 1)

The computer system of claim 1, wherein the target object is a polymer and the spatial coordinates are a set of three-dimensional coordinates {x1, . . . , xN} for a crystal structure of the polymer resolved at a resolution of 2.5 Å or better.

### Claim 10 (depends on 1)

The computer system of claim 1, wherein the target object is a polymer and the spatial coordinates are a set of three-dimensional coordinates {x1, . . . , xN} for a crystal structure of the polymer resolved at a resolution of 3.3 Å or better.

### Claim 11 (depends on 1)

The computer system of claim 1, wherein the target object is a polymer and the spatial coordinates are an ensemble of three-dimensional coordinates for the polymer determined by nuclear magnetic resonance, neutron diffraction, or cryo-electron microscopy.

### Claim 12 (depends on 1)

The computer system of claim 1, wherein the test object is a chemical compound and using the plurality of scores to characterize the test object comprises taking a measure of central tendency of the plurality of scores, wherein
when the measure of central tendency satisfies a predetermined threshold value or predetermined threshold value range, the test object is deemed to have a first classification, and
when the measure of central tendency fails to satisfy the predetermined threshold value or predetermined threshold value range, the test object is deemed to have a second classification.

### Claim 13 (depends on 1)

The computer system of claim 1, wherein the using the plurality of scores to characterize the test object comprises taking a weighted average of the plurality of scores, wherein
when the weighted average satisfies a predetermined threshold value or predetermined threshold value range, the test object is deemed to have a first classification, and
when the weighted average fails to satisfy the predetermined threshold value or predetermined threshold value range, the test object is deemed to have a second classification.

### Claim 14 (depends on 13)

The computer system of claim 13 wherein the weighted average is a Boltzman average of the plurality of scores.

### Claim 15 (depends on 13)

The computer system of claim 13, wherein
the first classification is an IC50, EC50, Kd, or KI for the test object with respect to the target object that is above a first binding value, and
the second classification is an IC50, EC50, Kd, or KI for the test object with respect to the target object that is below the first binding value.

### Claim 16 (depends on 15)

The computer system of claim 15 wherein the first binding value is one nanomolar, ten nanomolar, one hundred nanomolar, one micromolar, one hundred micromolar, or one millimolar.

### Claim 17 (depends on 15)

The computer system of claim 15 wherein the first binding value is ten micromolar.

### Claim 18 (depends on 15)

The computer system of claim 15 wherein the first binding value is a predicted IC50, EC50, Kd, or KI for a different test object with respect to the target object.

### Claim 19 (depends on 1)

The computer system of claim 1, wherein the using the plurality of scores to characterize the test object comprises taking a weighted average of the plurality of scores, wherein when the weighted average satisfies a respective threshold value range in a plurality of threshold value ranges, the test object is deemed to have a respective classification in a plurality of a respective classifications that uniquely corresponds to the respective threshold value range.

### Claim 20 (depends on 19)

The computer system of claim 19, wherein each respective classification in the plurality of classifications is an IC50, EC50, Kd, or KI range for the test object with respect to the target object.

### Claim 21 (depends on 20)

The computer system of claim 20, wherein a first classification in the plurality of classifications is between one micromolar and ten micromolar, one micromolar and one millimolar, or one nanomolar and one micromolar.

### Claim 22 (depends on 20)

The computer system of claim 20, wherein a first classification in the plurality of classifications is between one nanomolar and 100 nanomolar.

### Claim 23 (depends on 1)

The computer system of claim 1, wherein the target object is a polymer with an active site, the test object is a chemical composition, and the modeling comprises docking the test object into the active site of the polymer.

### Claim 24 (depends on 1)

The computer system of claim 1, wherein a convolutional layer in the plurality of convolutional layers has a plurality of filters and wherein each filter in the plurality of filters convolves a cubic input space of N3 with stride Y, where N is an integer of two or greater and Y is a positive integer.

### Claim 25 (depends on 24)

The computer system of claim 24, wherein the different set of weights associated with the convolutional layer are associated with respective filters in the plurality of filters.

### Claim 26 (depends on 1)

The computer system of claim 1, wherein the scorer comprises a plurality of fully-connected layers and a logistic regression cost layer wherein a fully-connected layer in the plurality of fully-connected layers feeds into the logistic regression cost layer.

### Claim 27 (depends on 1)

The computer system of claim 1, wherein the scorer comprises a decision tree, a multiple additive regression tree, a clustering algorithm, principal component analysis, a nearest neighbor analysis, a linear discriminant analysis, a quadratic discriminant analysis, a support vector machine, an evolutionary method, a projection pursuit, or ensembles thereof.

### Claim 28 (depends on 1)

The computer system of claim 1, wherein
the target object is a polymer with an active site,
the test object is a chemical composition,
the modeling comprises performing a molecular dynamics run of the target object and the test object thereby forming a trajectory of the target object and the test object together over time, and
a subset of the plurality of different poses is obtained by taking snapshots of the trajectory over a period of time.

### Claim 29 (depends on 1)

The computer system of claim 1, wherein, the (C) inputting each respective voxel map to the network architecture further includes:
unfolding each voxel map into a corresponding vector, thereby creating a plurality of vectors; and
inputting each respective vector in the plurality of vectors to the network architecture.

### Claim 30 (depends on 1)

The computer system of claim 1, wherein each respective convolutional layer, other than the final convolutional layer, feeds intermediate values as a function of weights of the respective convolutional layer and input values of the respective convolutional layer into another of the convolutional layers; and wherein the final convolutional layer feeds values into the scorer.

### Claim 31

A computer implemented method comprising:
(A) obtaining spatial coordinates for a target object;
(B) modeling the test object with the target object in each pose of a plurality of different poses, thereby creating a plurality of voxel maps, wherein each respective voxel map in the plurality of voxel maps comprises the test object in a respective pose in the plurality of different poses;
(C) inputting each respective voxel map in the plurality of voxel maps to a network architecture that includes (i) an input layer for sequentially receiving the plurality of voxel maps, (ii) a plurality of convolutional layers, and (iii) a scorer, wherein
the plurality of convolutional layers includes an initial convolutional layer and a final convolutional layer,
each layer in the plurality of convolutional layers is associated with a different set of weights,
responsive to a respective voxel map in the plurality of voxel maps, the input layer feeds values from the respective voxel map into the initial convolutional layer;
(D) obtaining a plurality of scores from the scorer, wherein each score in the plurality of scores corresponds to the input of a voxel map into the input layer; and
(E) using the plurality of scores to characterize the test object.

### Claim 32 (depends on 31)

The computer implemented method of claim 31, wherein the inputting (C) comprises directly inputting each respective voxel map in the plurality of voxel maps to the network architecture or inputting each respective voxel map in the plurality of voxel maps to the network architecture in the form of a corresponding vector.

### Claim 33

A non-transitory computer readable storage medium storing at least one program configured for execution by at least one processor of a computer system, the at least one program comprising instructions for:
(A) obtaining spatial coordinates for a target object;
(B) modeling the test object with the target object in each pose of a plurality of different poses, thereby creating a plurality of voxel maps, wherein each respective voxel map in the plurality of voxel maps comprises the test object in a respective pose in the plurality of different poses;
(C) inputting each respective voxel map in the plurality of voxel maps to a network architecture that includes (i) an input layer for sequentially receiving the plurality of voxel maps, (ii) a plurality of convolutional layers, and (iii) a scorer, wherein
the plurality of convolutional layers includes an initial convolutional layer and a final convolutional layer,
each layer in the plurality of convolutional layers is associated with a different set of weights,
responsive to a respective voxel map in the plurality of voxel maps, the input layer feeds values from the respective voxel map into the initial convolutional layer;
(D) obtaining a plurality of scores from the scorer, wherein each score in the plurality of scores corresponds to the input of a voxel map into the input layer; and
(E) using the plurality of scores to characterize the test object.

### Claim 34 (depends on 33)

The non-transitory computer readable storage medium of claim 33, wherein the inputting (C) comprises directly inputting each respective voxel map in the plurality of voxel maps to the network architecture or inputting each respective voxel map in the plurality of voxel maps to the network architecture in the form of a corresponding vector.
