GNINA 1.0: molecular docking with deep learning — TEI-tagged view

Andrew T. McNutt, Paul Francoeur, Rishal Aggarwal, Tomohide Masuda, Rocco Meli, Matthew Ragoza, Jocelyn Sunseri, David Ryan Koes · 2021 · computational chemistry · doi:10.1186/s13321-021-00522-2 · TEI xml · tagged edition · index · concepts · authors
Where this record's text came from. 2026-08-30 schema-0.3 pass: every quote verified as an exact substring of the staged text and anchored at merge time; concept terms verified present; every edge endpoint an existing node.
43 quotations on this page contain a reference number where the paper printed a superscript. This journal style prints citations as raised numerals — parameters12,13 — and the extraction flattened them into the line, so the sentence reads parameters 12 , 13 . The digits are citation markers and not part of what the author wrote. The quotes keep them for the same reason they keep every other extraction fault: a quote is reproduced exactly or it proves nothing.
Other fields define these differently the same word, defined another way in another discipline
deep learning 11 fields · convolutional neural networks 3 fields · machine learning algorithms 3 fields · Molecular docking 2 fields · sampling 2 fields · conformational space 2 fields · and 2 more →
Tags on this paper every tag the record carries, whether or not the words occur in the text below — a number is how many papers in the corpus carry that tag; a tag with no number is unique to this paper
Molecular docking3 non-covalent bonding conformation binding affinity2 sampling4 scoring conformational space2 scoring function knowledge based scoring functions physics based scoring functions force fields empirical scoring functions AutoDock Vina machine learning algorithms3 deep learning42 convolutional neural networks7 Gnina Smina Vina CNN scoring binding site autobox_ligand pose score Monte Carlo sampling exhaustiveness Metropolis acceptance criterion refinement3 rescoring flexible docking rigid protein target side chain redocking cross-docking PDBbind refined set v.2019 cross-docking dataset TopN Top1 RMSD2 Default Ensemble All Ensemble num_mc_saved num_modes autobox_add whole protein docking target-cognate RMSD CNNscore CNNaffinity low RMSD poses open development process system-or-tool-building173
Method, as described: Monte Carlo pose sampling followed by Vina refinement and CNN ensemble rescoring, evaluated with RMSD-based TopN on redocking and cross-docking benchmarks

Colour legend

Journal of Cheminformatics<title level="j">A work — the journal / venue title.
2021<date>A year or date.

Andrew T. McNuttpersName, Paul FrancoeurpersName, Rishal AggarwalpersName, Tomohide MasudapersName, Rocco MelipersName, Matthew RagozapersName, Jocelyn SunseripersName, David Ryan KoespersName (2021date). “GNINA 1.0: molecular docking with deep learning.” Journal of Cheminformaticstitle·j.

Object of study — GNINAterm 1.0 and convolutional-neural-network scoringterm inside a molecular-docking workflow

Research question — whether CNN rescoringterm improves redockingterm and cross-dockingterm pose ranking over Vinaterm while retaining practical runtime and generalizing to unseen protein-ligand systems

Contribution — an open-source GNINAterm 1.0 release, a five-model default CNN ensemble, tuned defaults, and controlled evaluations across four docking tasks

Cross-disciplinary analysis
content-tags & facets: phenomenon · claim-type · cross-domain-transfer · mechanism · claim-relation · replication-status · limitation — grounded in the full text
phenomenonsampling, scoring, pose ranking, runtime, flexibility, and generalization in molecular docking — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”
claim-typemethod — “The docking pipeline of Gnina (Fig. 1 ) is described in detail, providing background for the derivation of default usage. A default CNN ensemble is selected for optimizing the docking performance and runtime of the docking pipeline. This ensemble is then used to investigate the different CNN scoring options available to the user, followed by a thorough investigation of the docking parameters. Finally, we examine both the generalizability and scoring power of Gnina .”
method — evidence — “The docking pipeline of Gnina (Fig. 1 ) is described in detail, providing background for the derivation of default usage. A default CNN ensemble is selected for optimizing the docking performance and runtime of the docking pipeline. This ensemble is then used to investigate the different CNN scoring options available to the user, followed by a thorough investigation of the docking parameters. Finally, we examine both the generalizability and scoring power of Gnina .”
object of study — evidence — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”
research question — evidence — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”
contribution — evidence — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”
mechanismsampling Searches ligand conformational space before poses are ranked. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”mechanisms[0]
mechanismscoring Assigns pose fitness, determines retention, and orders surviving conformations. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”mechanisms[1]
mechanismautobox_ligand Builds a Cartesian search prism from ligand coordinate extrema plus added spacing. — “Open Babel [ 42 , 43 ], a chemical toolbox allowing the reading and writing of over 100 chemical file formats, is used for parsing the inputs, allowing commonly used structural data formats (e.g. PDB, sdf, mol, etc.) as well as gzipped versions of such files to be used. The binding site can be specified as a Cartesian box or by providing a ligand file (autobox_ligand). When autobox_ligand is used to define the binding site, a rectangular prism is constructed using the minimum and maximum values for the x , y , and z coordinates of the ligand to which additional spacing (autobox_add) is added in every dimension (Figs. 1 , 2 ). In Gnina , if any side of this auto-generated box is smaller than the longest distance between any two atoms in the ligand, then those sides are extended to that longest distance, ensuring that the ligand can rotate freely within the defined box without incurring an out-of-box penalty that is applied to all docked poses to constrain them to the specified binding site search space.”mechanisms[2]
mechanismCNN models Predict pose quality and affinity from protein-ligand representations. — “Next, the scoring functions are setup. Similar to Smina , if the user opts to not use the CNN scoring function for a part of the pipeline they can specify their own empirical scoring function to Gnina or choose one of the built-in scoring functions, i.e. Vina, Vinardo [ 44 ], etc. CNN scoring functions can be specified by providing model and/or weights files or by selecting a built-in model. The available built-in CNN models include crossdock_default2018, dense, general_default2018, redock_default2018, and default2017, each of which is trained using different training data and/or a different model architecture. Additionally, each model, except for default2017, has five variants that are trained on the same data and have the same architecture, but are initialized with a different random seed. For each CNN model type, we refer to the variant with the highest docking performance as the base model name, and the remaining variants are given sequential numbers (i.e. general_default2018, general_default2018_1, general_default2018_2, general_default2018_3, and general_default2018_4); the ensemble of these five variants is denoted with ‘_ensemble’ (i.e. general_default2018_ensemble). The architecture and training of these models are described elsewhere [ 34 , 45 ]. CNN calculations are performed using the cuDNN accelerated Caffe deep learning framework [ 46 ]. These models are trained to predict both a pose score (a probability that the pose has a low root mean square deviation (RMSD) to the binding pose) and the binding affinity (pK). The pose score is used for all pose optimization tasks. The scoring function used in each step of the Gnina pipeline is determined by cnn_scoring (defined below), defaulting to only using the CNN scoring for the final resorting of ligand conformations and the empirical scoring function everywhere else in the pipeline.”mechanisms[3]
mechanismMonte Carlo sampling Mutates translations, rotations, and torsions across parallel chains. — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”mechanisms[4]
mechanismMetropolis acceptance criterion Accepts or rejects energy-minimized ligand mutations by score. — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”mechanisms[5]
mechanismrefinement Moves retained ligand poses toward local scoring-function minima. — “Following the completion of Monte Carlo sampling, the saved conformations from each Monte Carlo chain are aggregated and the num_mc_saved top scoring conformations are retained for further analysis. The top scoring conformations are then refined. If an empirical scoring function is specified for refinement (cnn_scoring set to “none” or “rescore”), a functional formulation, rather than a grid approximation, of the scoring function is used to carry out refinement in order to get the locally optimal pose. Refinement shifts the ligand pose to a local energy minimum using the gradients of the scoring function. After the ligand pose has been refined, the final affinities and scores are calculated for the pose using the specified CNN models and/or the specified scoring function. Finally, the top scoring conformations are sorted by pose_sort_order (default “CNNscore”) and output with Open Babel in the user-specified format if an output file was provided.”mechanisms[6]
mechanismrescoring Applies CNNs after empirical refinement and reorders final poses by CNNscore. — “The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoring (Fig. 1 , 2 ). If “none” is selected for cnn_scoring, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Smina pipeline. The only differences are that Smina computes with double (64 bit) precision rather than the single (32 bit) precision used by Gnina and Smina does not include the autobox_extend parameter when creating the sampling box. When “rescoring” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformations after their refinement with the empirical scoring function. In this case, the specified CNN models are used to score each of the ligand conformations and the output ligand conformations are resorted based on the score calculated by the CNN model(s). The “refinement” option utilizes the CNN for the refinement of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformations by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinement after the Monte Carlo chains, and the sorting of the final output.”mechanisms[7]
mechanismDefault Ensemble selection Greedily adds models according to redocking and cross-docking Top1. — “When using CNN scoring, the user can utilize a single CNN model or an ensemble of CNN models where the final score is an average of each CNN model’s score. It has been shown that ensembles of predictors improve performance over a single predictive model [ 56 ]. However, due to the high computational cost of applying CNN models in comparison to empirical scoring functions, it is desirable to select a subset of the available models that provides improved scoring while limiting computational cost. The default CNN model ensemble was selected using a greedy forward algorithm. The ensemble was built in an iterative process using the “rescoring” option for CNN scoring so as to minimize the computational time for each iteration. In each round of the selection, models were chosen for their Top1 performance. We evaluate all of the versions of each CNN model (i.e. dense, dense_1, dense_2, dense_3, dense_4). In the first round of selection, all of the CNN models were tested for their individual ability to predict Top1 on both the cross-docking and redocking datasets. The next round of selection required testing of all two-model combinations with the model selected in the first step. Model selection continued, exploring all possible combinations of the built-in CNN models. The selection process concluded after five CNN models were selected for inclusion in the default ensemble.”mechanisms[8]
mechanismdownsampling Caps each pocket at one hundred receptor-ligand pairs to control combinatorial cost. — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”mechanisms[9]
mechanismTopN Counts systems with a sub-two-angstrom pose inside the first N ranks. — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”mechanisms[10]
mechanismunseen-system filtering Removes every protein or ligand present in any CNN training set before generalization testing. — “All of the CNN models were trained on some subset of the cross-docking and redocking datasets. Generalization can be evaluated by determining the performance of the CNN scoring functions on the subset of the datasets that were not seen in training. This evaluation is carried out by removing any protein or ligand contained within the training data of the CNN models. All of the CNN models have been trained on different sets, so fully testing generality requires the removal of all of the proteins and ligands in the training set from both the redocking and cross-docking datasets. We removed all PDB IDs that were in the training sets of the CNN models [ 18 , 45 ], leaving 441 and 178 protein-ligand pairs for the redocking and cross-docking sets, respectively.”mechanisms[11]
mechanismflexible side chains Samples side-chain torsion angles while leaving the receptor backbone fixed. — “Gnina allows the sampling of side chain, but not backbone, conformational space. More specifically, side chain torsion angles are sampled as part of the Monte Carlo search. Side chain flexibility can be specified manually or semi-automatically in several different ways:”mechanisms[12]
mechanismCNNscore thresholding Uses score thresholds to estimate the probability that a top pose has low RMSD. — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”mechanisms[13]
builds-on Smina and AutoDock Vina — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”claim_relations[0]
extends deep-learning scoring of pre-generated protein-ligand poses — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[1]
contrasts-with Smina/Vina empirical scoring — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[2]
sensedocking as both conformational search and fitness-based ranking — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”senses[0]
sensepose fitness as a retention and rank criterion rather than experimental affinity — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”senses[1]
senseknowledge-based scoring as frequency-derived rather than force-derived — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”senses[2]
senseempirical scoring as fitted energy-term weighting rather than equal weighting — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”senses[3]
senseCNN pose score as probability of low RMSD rather than binding affinity — “Next, the scoring functions are setup. Similar to Smina , if the user opts to not use the CNN scoring function for a part of the pipeline they can specify their own empirical scoring function to Gnina or choose one of the built-in scoring functions, i.e. Vina, Vinardo [ 44 ], etc. CNN scoring functions can be specified by providing model and/or weights files or by selecting a built-in model. The available built-in CNN models include crossdock_default2018, dense, general_default2018, redock_default2018, and default2017, each of which is trained using different training data and/or a different model architecture. Additionally, each model, except for default2017, has five variants that are trained on the same data and have the same architecture, but are initialized with a different random seed. For each CNN model type, we refer to the variant with the highest docking performance as the base model name, and the remaining variants are given sequential numbers (i.e. general_default2018, general_default2018_1, general_default2018_2, general_default2018_3, and general_default2018_4); the ensemble of these five variants is denoted with ‘_ensemble’ (i.e. general_default2018_ensemble). The architecture and training of these models are described elsewhere [ 34 , 45 ]. CNN calculations are performed using the cuDNN accelerated Caffe deep learning framework [ 46 ]. These models are trained to predict both a pose score (a probability that the pose has a low root mean square deviation (RMSD) to the binding pose) and the binding affinity (pK). The pose score is used for all pose optimization tasks. The scoring function used in each step of the Gnina pipeline is determined by cnn_scoring (defined below), defaulting to only using the CNN scoring for the final resorting of ligand conformations and the empirical scoring function everywhere else in the pipeline.”senses[4]
senserescoring as CNN use only after empirical refinement — “The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoring (Fig. 1 , 2 ). If “none” is selected for cnn_scoring, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Smina pipeline. The only differences are that Smina computes with double (64 bit) precision rather than the single (32 bit) precision used by Gnina and Smina does not include the autobox_extend parameter when creating the sampling box. When “rescoring” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformations after their refinement with the empirical scoring function. In this case, the specified CNN models are used to score each of the ligand conformations and the output ligand conformations are resorted based on the score calculated by the CNN model(s). The “refinement” option utilizes the CNN for the refinement of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformations by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinement after the Monte Carlo chains, and the sorting of the final output.”senses[5]
senserefinement as CNN-guided local optimization after Monte Carlo selection — “The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoring (Fig. 1 , 2 ). If “none” is selected for cnn_scoring, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Smina pipeline. The only differences are that Smina computes with double (64 bit) precision rather than the single (32 bit) precision used by Gnina and Smina does not include the autobox_extend parameter when creating the sampling box. When “rescoring” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformations after their refinement with the empirical scoring function. In this case, the specified CNN models are used to score each of the ligand conformations and the output ligand conformations are resorted based on the score calculated by the CNN model(s). The “refinement” option utilizes the CNN for the refinement of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformations by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinement after the Monte Carlo chains, and the sorting of the final output.”senses[6]
senseall-mode as CNN use throughout sampling, refinement, and final sorting — “The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoring (Fig. 1 , 2 ). If “none” is selected for cnn_scoring, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Smina pipeline. The only differences are that Smina computes with double (64 bit) precision rather than the single (32 bit) precision used by Gnina and Smina does not include the autobox_extend parameter when creating the sampling box. When “rescoring” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformations after their refinement with the empirical scoring function. In this case, the specified CNN models are used to score each of the ligand conformations and the output ligand conformations are resorted based on the score calculated by the CNN model(s). The “refinement” option utilizes the CNN for the refinement of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformations by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinement after the Monte Carlo chains, and the sorting of the final output.”senses[7]
senseredocking as cognate-pose recovery — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”senses[8]
sensecross-docking as non-cognate receptor transfer — “However, redocking is not the normal use case of a molecular docking pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking dataset provides a meaningful method for the evaluation of the ligand RMSD from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.”senses[9]
senseTopN as success within a rank cutoff rather than raw RMSD — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”senses[10]
senseexhaustiveness as chain count rather than chain length — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”senses[11]
sensewhole-protein docking as unknown-pocket search — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”senses[12]
senseflexible docking as side-chain flexibility without backbone flexibility — “Gnina allows the sampling of side chain, but not backbone, conformational space. More specifically, side chain torsion angles are sampled as part of the Monte Carlo search. Side chain flexibility can be specified manually or semi-automatically in several different ways:”senses[13]
senseCNNscore as calibrated pose-quality confidence only after task context is considered — “Finally, we evaluate the ability of the CNN ensembles to score ligand conformations. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redocking and cross-docking benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vina scoring function. The CNN models are able to generalize to unseen examples and properly score the ligand conformations such that the low RMSD poses are ranked higher more often than when using the Vina scoring function. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-docking there is at least a 56% probability that the pose is less than 2 Å RMSD from the correct pose. If redocking is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformation; however, particularly when cross-docking, high scoring poses are less common (Fig. 13 b).”senses[14]
controlsingle-precision GNINA with CNNs disabled versus double-precision Smina — held — “Gnina is a fork of Smina that allows the utilization of CNN models as scoring functions. Therefore, without the use of the CNN models Gnina should function exactly as Smina does. However, unlike Smina , Gnina does computation with single (32 bit) precision rather than double (64 bit) precision due to the need to shift calculations to the GPU for efficient CNN scoring. Therefore, we ensure that the use of single precision does not negatively affect the docking power of the pipeline. The effect of this precision change can be evaluated by running Gnina without using any CNN scoring and with autobox_extend turned off, allowing us to compare to Smina docking results. We consider only redocking results as cross-docking results would require significantly more computation, and identification of differences due to precision can be done using only redocking results. Results for redocking do not show a significant difference for the output poses. A majority of the output poses are exactly the same, with slight differences seen for some output poses (Additional file 1 : Figs. S2 and S3).” — rules out precision and implementation differences as an explanation for performance — “Gnina is a fork of Smina that allows the utilization of CNN models as scoring functions. Therefore, without the use of the CNN models Gnina should function exactly as Smina does. However, unlike Smina , Gnina does computation with single (32 bit) precision rather than double (64 bit) precision due to the need to shift calculations to the GPU for efficient CNN scoring. Therefore, we ensure that the use of single precision does not negatively affect the docking power of the pipeline. The effect of this precision change can be evaluated by running Gnina without using any CNN scoring and with autobox_extend turned off, allowing us to compare to Smina docking results. We consider only redocking results as cross-docking results would require significantly more computation, and identification of differences due to precision can be done using only redocking results. Results for redocking do not show a significant difference for the output poses. A majority of the output poses are exactly the same, with slight differences seen for some output poses (Additional file 1 : Figs. S2 and S3).”controls[0]
controldownsampling fractions for each cross-docking pocket — held — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).” — rules out bias introduced by the one-hundred-pair cap — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”controls[1]
controlproteins and ligands absent from every CNN training set — held — “We evaluate all of the CNN models on a subset of the data that was not seen during training to ensure that the CNN models are able to generalize to unseen protein-ligand systems. We also show the Vina results for the same subset of protein-ligand systems. The CNN models’ docking performance decrease relative to the full sets when looking at the top pose, (comparing Figs. 12 to 4 ). Redocking Top1 performance drops from 73% to 68% on the Default Ensemble for the filtered set and the full set, respectively, while Vina remains at about 57%. Cross-docking Top1 performance increases from 37% to 42% for the Default Ensemble and decreases from 27% to 23% when using the Vina scoring function. Overall, the Default Ensemble still shows a strong docking performance boost when used to rescore poses rather than using the Vina scoring function to score poses even on protein-ligand systems not seen during training.” — rules out training overlap as the explanation for generalization — “All of the CNN models were trained on some subset of the cross-docking and redocking datasets. Generalization can be evaluated by determining the performance of the CNN scoring functions on the subset of the datasets that were not seen in training. This evaluation is carried out by removing any protein or ligand contained within the training data of the CNN models. All of the CNN models have been trained on different sets, so fully testing generality requires the removal of all of the proteins and ligands in the training set from both the redocking and cross-docking datasets. We removed all PDB IDs that were in the training sets of the CNN models [ 18 , 45 ], leaving 441 and 178 protein-ligand pairs for the redocking and cross-docking sets, respectively.”controls[2]
controlredocking and cross-docking benchmarks — held — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .” — rules out dependence on only the easier cognate-receptor task — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”controls[3]
controldefined-pocket and whole-protein search spaces — held — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .” — rules out dependence on knowing the exact binding pocket — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”controls[4]
noteSmina and AutoDock Vina — GNINA is implemented as a Smina/Vina fork. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”claim_relations[0]
notedeep-learning scoring of pre-generated protein-ligand poses — The paper integrates CNN scoring into the complete docking workflow. — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[1]
weightdeep-learning scoring of pre-generated protein-ligand poses — 0.95 — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[1]
noteSmina/Vina empirical scoring — Every task compares GNINA CNN scoring with the inherited empirical baseline. — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[2]
weightSmina/Vina empirical scoring — 0.95 — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”claim_relations[2]
notesampling —part-of→ Molecular docking — Explicit whole-part statement. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concept_edges[0]
relationsampling —part-of→ Molecular docking — Sampling is one of the two main steps composing molecular docking. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concept_edges[0]
notescoring —part-of→ Molecular docking — Explicit whole-part statement. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concept_edges[1]
relationscoring —part-of→ Molecular docking — Scoring is one of the two main steps composing molecular docking. — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concept_edges[1]
notephysics based scoring functions —same-as→ force fields — Explicit alternate name. — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concept_edges[2]
relationphysics based scoring functions —same-as→ force fields — Physics-based scoring functions are also referred to as force fields. — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concept_edges[2]
auditGnina —is-a→ Smina — Audit 2026-09-28: DOUBTFUL - read against its full span and kept, but the span says Gnina is a FORK of Smina; is-a is loose. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[3]
noteGnina —is-a→ Smina — Direct categorical software-fork statement. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[3]
relationGnina —is-a→ Smina — Gnina is a fork of Smina. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[3]
auditSmina —is-a→ Vina — Audit 2026-09-28: DOUBTFUL - read against its full span and kept, but the span says Smina is a FORK of Vina; is-a is loose. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[4]
noteSmina —is-a→ Vina — Direct categorical software-fork statement. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[4]
relationSmina —is-a→ Vina — Smina is a fork of Vina. — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concept_edges[4]
auditTopN —operationalised-as→ RMSD — Audit 2026-09-28: DOUBTFUL - read against its full span and kept, but the span defines TopN as the share of systems with an RMSD-good pose in the top N; operationalised-as is loose. — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concept_edges[5]
noteTopN —operationalised-as→ RMSD — Exact numerical operational definition. — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concept_edges[5]
relationTopN —operationalised-as→ RMSD — TopN is computed from whether pose RMSD is below two angstroms within the first N ranks. — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concept_edges[5]
noteDefault Ensemble —contrasted-with→ AutoDock Vina — Direct performance comparison. — “We show that our computational docking software Gnina is able to outperform AutoDock Vina scoring by using CNN models to rescore generated poses. Without using a CNN model, our software is equivalent to using the Smina docking software, which is a fork of Vina. Gnina allows the user to utilize CNN models as scoring functions within the docking pipeline in a variety of ways. The various CNN scoring options allow the specified CNN models to replace the scoring function in the sampling, refinement, and rescoring steps of the docking pipeline. We first establish an ensemble of built-in CNN models to be used as the default ensemble. This ensemble of models is selected for its docking and runtime performance. The selected ensemble, termed the Default Ensemble, is able to exceed the ranking performance of Vina (Top1 increases from 58% to 73% and from 27% to 37% for redocking and cross-docking, respectively) while only adding two seconds to the average compute time when utilizing GPUs. It also significantly outperforms any single model or any ensemble of identical models while being significantly faster than an ensemble of all models. The Default Ensemble performs almost equally well when performing refinement of the sampled poses rather than using the Vina scoring function. Refinement with the CNN models is not recommended as the compute cost is significant and the performance is less than simply using the CNN models to rescore the poses refined by the Vina scoring function.”concept_edges[6]
relationDefault Ensemble —contrasted-with→ AutoDock Vina — The Default Ensemble is directly compared with and outperforms Vina scoring. — “We show that our computational docking software Gnina is able to outperform AutoDock Vina scoring by using CNN models to rescore generated poses. Without using a CNN model, our software is equivalent to using the Smina docking software, which is a fork of Vina. Gnina allows the user to utilize CNN models as scoring functions within the docking pipeline in a variety of ways. The various CNN scoring options allow the specified CNN models to replace the scoring function in the sampling, refinement, and rescoring steps of the docking pipeline. We first establish an ensemble of built-in CNN models to be used as the default ensemble. This ensemble of models is selected for its docking and runtime performance. The selected ensemble, termed the Default Ensemble, is able to exceed the ranking performance of Vina (Top1 increases from 58% to 73% and from 27% to 37% for redocking and cross-docking, respectively) while only adding two seconds to the average compute time when utilizing GPUs. It also significantly outperforms any single model or any ensemble of identical models while being significantly faster than an ensemble of all models. The Default Ensemble performs almost equally well when performing refinement of the sampled poses rather than using the Vina scoring function. Refinement with the CNN models is not recommended as the compute cost is significant and the performance is less than simply using the CNN models to rescore the poses refined by the Vina scoring function.”concept_edges[6]
weightDefault Ensemble —contrasted-with→ AutoDock Vina — 0.95 — “We show that our computational docking software Gnina is able to outperform AutoDock Vina scoring by using CNN models to rescore generated poses. Without using a CNN model, our software is equivalent to using the Smina docking software, which is a fork of Vina. Gnina allows the user to utilize CNN models as scoring functions within the docking pipeline in a variety of ways. The various CNN scoring options allow the specified CNN models to replace the scoring function in the sampling, refinement, and rescoring steps of the docking pipeline. We first establish an ensemble of built-in CNN models to be used as the default ensemble. This ensemble of models is selected for its docking and runtime performance. The selected ensemble, termed the Default Ensemble, is able to exceed the ranking performance of Vina (Top1 increases from 58% to 73% and from 27% to 37% for redocking and cross-docking, respectively) while only adding two seconds to the average compute time when utilizing GPUs. It also significantly outperforms any single model or any ensemble of identical models while being significantly faster than an ensemble of all models. The Default Ensemble performs almost equally well when performing refinement of the sampled poses rather than using the Vina scoring function. Refinement with the CNN models is not recommended as the compute cost is significant and the performance is less than simply using the CNN models to rescore the poses refined by the Vina scoring function.”concept_edges[6]
noterescoring —contrasted-with→ refinement — Direct runtime comparison. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”concept_edges[7]
relationrescoring —contrasted-with→ refinement — CNN refinement takes an order of magnitude longer than CNN rescoring. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”concept_edges[7]
weightrescoring —contrasted-with→ refinement — 0.95 — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”concept_edges[7]
auditexhaustiveness —causes→ TopN — Audit 2026-09-28: DOUBTFUL - read against its full span and kept, but 'TopN' does not occur; the span reports an increase in docking performance; endpoint variant. — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”concept_edges[8]
effect directionexhaustiveness —causes→ TopN — increases — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”concept_edges[8]
noteexhaustiveness —causes→ TopN — Flat observed parameter effect. — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”concept_edges[8]
relationexhaustiveness —causes→ TopN — Increasing exhaustiveness increases docking performance measured by TopN. — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”concept_edges[8]
weightexhaustiveness —causes→ TopN — 0.95 — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”concept_edges[8]
auditnum_mc_saved —causes→ TopN — Audit 2026-09-28: DOUBTFUL - read against its full span and kept, but 'TopN' does not occur; the span reports a docking performance boost; endpoint variant. — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concept_edges[9]
effect directionnum_mc_saved —causes→ TopN — increases — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concept_edges[9]
notenum_mc_saved —causes→ TopN — Flat observed parameter effect. — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concept_edges[9]
relationnum_mc_saved —causes→ TopN — Increasing num_mc_saved increases the chance of accurate poses and docking performance. — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concept_edges[9]
weightnum_mc_saved —causes→ TopN — 0.95 — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concept_edges[9]
outcomecontrol — held — “Gnina is a fork of Smina that allows the utilization of CNN models as scoring functions. Therefore, without the use of the CNN models Gnina should function exactly as Smina does. However, unlike Smina , Gnina does computation with single (32 bit) precision rather than double (64 bit) precision due to the need to shift calculations to the GPU for efficient CNN scoring. Therefore, we ensure that the use of single precision does not negatively affect the docking power of the pipeline. The effect of this precision change can be evaluated by running Gnina without using any CNN scoring and with autobox_extend turned off, allowing us to compare to Smina docking results. We consider only redocking results as cross-docking results would require significantly more computation, and identification of differences due to precision can be done using only redocking results. Results for redocking do not show a significant difference for the output poses. A majority of the output poses are exactly the same, with slight differences seen for some output poses (Additional file 1 : Figs. S2 and S3).”controls[0]
outcomecontrol — held — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”controls[1]
outcomecontrol — held — “All of the CNN models were trained on some subset of the cross-docking and redocking datasets. Generalization can be evaluated by determining the performance of the CNN scoring functions on the subset of the datasets that were not seen in training. This evaluation is carried out by removing any protein or ligand contained within the training data of the CNN models. All of the CNN models have been trained on different sets, so fully testing generality requires the removal of all of the proteins and ligands in the training set from both the redocking and cross-docking datasets. We removed all PDB IDs that were in the training sets of the CNN models [ 18 , 45 ], leaving 441 and 178 protein-ligand pairs for the redocking and cross-docking sets, respectively.” — “We evaluate all of the CNN models on a subset of the data that was not seen during training to ensure that the CNN models are able to generalize to unseen protein-ligand systems. We also show the Vina results for the same subset of protein-ligand systems. The CNN models’ docking performance decrease relative to the full sets when looking at the top pose, (comparing Figs. 12 to 4 ). Redocking Top1 performance drops from 73% to 68% on the Default Ensemble for the filtered set and the full set, respectively, while Vina remains at about 57%. Cross-docking Top1 performance increases from 37% to 42% for the Default Ensemble and decreases from 27% to 23% when using the Vina scoring function. Overall, the Default Ensemble still shows a strong docking performance boost when used to rescore poses rather than using the Vina scoring function to score poses even on protein-ligand systems not seen during training.”controls[2]
outcomecontrol — held — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.” — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”controls[3]
outcomecontrol — held — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.” — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”controls[4]
relationcorrect binding pose → binding affinity — A correct pose is a prerequisite for determining binding affinity. — “Determination of the correct binding pose of a small molecule is a prerequisite for determining its binding affinity and affords the opportunity to utilize the pose for lead optimization. Correct evaluation of binding affinity is critical for downstream tasks such as virtual screening or for determining if a compound is important for more experimental analysis. Molecular docking must compute a pose and a binding affinity quickly for it to beneficial when millions of ligands are being queried in a drug discovery pipeline [ 1 ]. Sampling the entire conformational space of a molecule is computationally demanding; therefore, we compromise on the speed and accuracy of docking to provide poses that are close to native while not requiring the full search of conformational space. This compromise requires docking software to focus on the accuracy and ranking power of the scoring function to highlight low energy conformations and reduce extraneous sampling.”unhoused_relations[0]
relationempirical scoring functions → physics based scoring functions — Empirical scoring functions address limitations of physics-based scoring. — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”unhoused_relations[1]
weightempirical scoring functions → physics based scoring functions — 0.95 — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”unhoused_relations[1]
relationmachine learning algorithms → large amount of data — Machine-learning algorithms require a large amount of data to generalize. — “Machine learning (ML) represents another growing class of scoring functions [ 8 ]. ML algorithms learn arbitrary relationships between observations and outputs while classical scoring functions assume a specific functional form [ 14 ]. There has been considerable progress in other biomedical fields with the utilization of ML models [ 15 ]. However, machine learning algorithms require a large amount of data to properly generalize to unseen information. The last 20 years has seen a noteworthy increase in the quantity of available protein structures [ 16 ]. A plethora of databases annotate structural data with experimental binding affinity data, including PDBbind and BindingDB [ 17 – 19 ]. This information has been utilized to leverage machine learning algorithms as scoring functions. A number of traditional ML approaches have been used as scoring functions, including random forests (RF-Score [ 20 ] and SFCScore [ 21 ]), support vector machines (SVR-Score [ 22 ], ID-Score [ 23 ], SVR-EP [ 24 ]), artificial neural networks (NNscore [ 25 ] and BsN-Score [ 26 ]), and gradient boosted decision trees (BT-dock [ 27 ] and ESPH T-Bind [ 28 ]). These ML methods have been able to match or exceed existing traditional scoring functions. ML methods allow a more robust fit to training data, but are limited to features manually extracted from structural data.”unhoused_relations[2]
relationGnina → AutoDock Vina — GNINA is descended through Smina from AutoDock Vina. — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”unhoused_relations[3]
relationrigid protein target → biochemical aspects of the system — A rigid receptor can fail to represent binding-induced structural change. — “Molecular docking is often performed using a rigid protein target and only samples the conformational space of the ligand, as described above. This is a good approximation when redocking to a receptor that does not undergo conformational change upon ligand binding, but it fails to accurately represent the biochemical aspects of the system when the protein undergoes significant structural changes upon binding [ 48 ]. Allowing the whole target to be flexible is too computationally expensive for docking; however, some protein flexibility can be accounted for by sampling the conformational space of side chains in the binding site [ 49 ] while leaving the backbone fixed. The local flexibility of the binding site could be especially beneficial for cross-docking, i.e. docking a ligand to a non-cognate receptor. Assuming a rigid receptor during cross-docking is not realistic when potentially very different ligands are docked to the same receptor.”unhoused_relations[4]
weightrigid protein target → biochemical aspects of the system — 0.95 — “Molecular docking is often performed using a rigid protein target and only samples the conformational space of the ligand, as described above. This is a good approximation when redocking to a receptor that does not undergo conformational change upon ligand binding, but it fails to accurately represent the biochemical aspects of the system when the protein undergoes significant structural changes upon binding [ 48 ]. Allowing the whole target to be flexible is too computationally expensive for docking; however, some protein flexibility can be accounted for by sampling the conformational space of side chains in the binding site [ 49 ] while leaving the backbone fixed. The local flexibility of the binding site could be especially beneficial for cross-docking, i.e. docking a ligand to a non-cognate receptor. Assuming a rigid receptor during cross-docking is not realistic when potentially very different ligands are docked to the same receptor.”unhoused_relations[4]
relationflexible docking → computational cost — Flexible docking incurs much higher computational cost. — “Given the much higher computational cost of flexible docking, the optimization of Gnina default parameters and training of new CNN models for this specific task is outside the scope of the present work and will be addressed in future versions of Gnina . However, it is clear that improvements for flexible docking are system-dependent and, therefore, accounting for the increased computational cost, it is reasonable to use rigid docking as the default docking method.”unhoused_relations[5]
relationredocking → normal use case — Redocking is not the normal molecular-docking use case. — “However, redocking is not the normal use case of a molecular docking pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking dataset provides a meaningful method for the evaluation of the ligand RMSD from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.”unhoused_relations[6]
relationdownsampling → combinatorial size — Downsampling makes the combinatorial cross-docking set computationally tractable. — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”unhoused_relations[7]
weightdownsampling → combinatorial size — 0.95 — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”unhoused_relations[7]
relationrefinement → computational time — CNN refinement requires substantially more computation than rescoring. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”unhoused_relations[8]
relationautobox_add → TopN — Expanding a precisely known search box decreases docking performance. — “We next evaluate the size of the targeted binding site (box). The autobox_add parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligand input to Gnina . In redocking (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational space of the ligand. A higher value of autobox_add is necessary to ensure that the correct binding site, which may differ from the binding site of the autobox_ligand, is included in the search space. This is shown during cross-docking (Additional file 1 : Figure S7b), where only the binding site of the cognate ligand is known. A low value of autobox_add artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_add to keep the box small while still providing room for error in the selection of the binding site.”unhoused_relations[9]
weightautobox_add → TopN — 0.95 — “We next evaluate the size of the targeted binding site (box). The autobox_add parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligand input to Gnina . In redocking (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational space of the ligand. A higher value of autobox_add is necessary to ensure that the correct binding site, which may differ from the binding site of the autobox_ligand, is included in the search space. This is shown during cross-docking (Additional file 1 : Figure S7b), where only the binding site of the cognate ligand is known. A low value of autobox_add artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_add to keep the box small while still providing room for error in the selection of the binding site.”unhoused_relations[9]
relationwhole protein docking → local energy minima — Whole-protein search can trap ligands in local minima far from the binding site. — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”unhoused_relations[10]
weightwhole protein docking → local energy minima — 0.95 — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”unhoused_relations[10]
relationflexible docking → connectivity issues — Flexible docking produced residue-connectivity problems in nine systems. — “Out of the 7970 systems in the cross-docking dataset, flexible side chains are not identified for 24 protein-ligand complexes (see Additional file 1 : Table T3 for details). Such systems are discarded from the following analysis of flexible docking since they are equivalent to rigid docking. Additionally, 9 systems were problematic when computing RMSDs for the flexible residues because of connectivity issues. Disulfide bonds between cysteine residues are allowed to break during sampling (with a software warning), which results in a different connectivity in the output file for four systems. In the other five systems, the connectivity between flexible residues in the input and output file was found to be different and therefore they were discarded (see Additional file 1 : Table T3 for details). All nine systems with connectivity issues were removed from the analysis, resulting in a dataset of 7937 cross-docked complexes.”unhoused_relations[11]
weightflexible docking → connectivity issues — 0.95 — “Out of the 7970 systems in the cross-docking dataset, flexible side chains are not identified for 24 protein-ligand complexes (see Additional file 1 : Table T3 for details). Such systems are discarded from the following analysis of flexible docking since they are equivalent to rigid docking. Additionally, 9 systems were problematic when computing RMSDs for the flexible residues because of connectivity issues. Disulfide bonds between cysteine residues are allowed to break during sampling (with a software warning), which results in a different connectivity in the output file for four systems. In the other five systems, the connectivity between flexible residues in the input and output file was found to be different and therefore they were discarded (see Additional file 1 : Table T3 for details). All nine systems with connectivity issues were removed from the analysis, resulting in a dataset of 7937 cross-docked complexes.”unhoused_relations[11]
relationtarget-cognate RMSD → flexible docking advantage — Any flexible-docking advantage at high target-cognate RMSD remained inconclusive. — “Figure 11 b shows the average RMSD difference between rigid and flexible docking for different 1 Å intervals of target-cognate side chains RMSDs. For low target-cognate RMSDs, which correspond to a highly similar binding site and therefore a situation akin to redocking, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chains RMSDs, indicating a lower similarity between binding sites, the situation is less clear. Flexible docking seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chains RMSDs. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chains RMSD higher than 6 Å is low and therefore the apparent improvement in ligand RMSD for flexible docking is inconclusive.”unhoused_relations[12]
weighttarget-cognate RMSD → flexible docking advantage — 0.7 — “Figure 11 b shows the average RMSD difference between rigid and flexible docking for different 1 Å intervals of target-cognate side chains RMSDs. For low target-cognate RMSDs, which correspond to a highly similar binding site and therefore a situation akin to redocking, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chains RMSDs, indicating a lower similarity between binding sites, the situation is less clear. Flexible docking seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chains RMSDs. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chains RMSD higher than 6 Å is low and therefore the apparent improvement in ligand RMSD for flexible docking is inconclusive.”unhoused_relations[12]
relationCNNscore → pose quality confidence — CNNscore can indicate confidence in generated-pose quality. — “Finally, we evaluate the ability of the CNN ensembles to score ligand conformations. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redocking and cross-docking benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vina scoring function. The CNN models are able to generalize to unseen examples and properly score the ligand conformations such that the low RMSD poses are ranked higher more often than when using the Vina scoring function. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-docking there is at least a 56% probability that the pose is less than 2 Å RMSD from the correct pose. If redocking is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformation; however, particularly when cross-docking, high scoring poses are less common (Fig. 13 b).”unhoused_relations[13]
weightCNNscore → pose quality confidence — 0.95 — “Finally, we evaluate the ability of the CNN ensembles to score ligand conformations. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redocking and cross-docking benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vina scoring function. The CNN models are able to generalize to unseen examples and properly score the ligand conformations such that the low RMSD poses are ranked higher more often than when using the Vina scoring function. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-docking there is at least a 56% probability that the pose is less than 2 Å RMSD from the correct pose. If redocking is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformation; however, particularly when cross-docking, high scoring poses are less common (Fig. 13 b).”unhoused_relations[13]
relationnew CNN models → extensive sampling — Task-specific smoother models may reduce the need for extensive sampling. — “Gnina demonstrates significant improvements over a popular empirical scoring function, but many challenges remain. The failure of using gradients from the CNN scoring to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring function, may significantly reduce the need for extensive sampling and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible docking task would likely improve performance in this area. Gnina 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development process.”unhoused_relations[14]
weightnew CNN models → extensive sampling — 0.7 — “Gnina demonstrates significant improvements over a popular empirical scoring function, but many challenges remain. The failure of using gradients from the CNN scoring to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring function, may significantly reduce the need for extensive sampling and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible docking task would likely improve performance in this area. Gnina 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development process.”unhoused_relations[14]
no type for thiscorrect binding pose → binding affinity — A correct pose is a prerequisite for determining binding affinity. — “Determination of the correct binding pose of a small molecule is a prerequisite for determining its binding affinity and affords the opportunity to utilize the pose for lead optimization. Correct evaluation of binding affinity is critical for downstream tasks such as virtual screening or for determining if a compound is important for more experimental analysis. Molecular docking must compute a pose and a binding affinity quickly for it to beneficial when millions of ligands are being queried in a drug discovery pipeline [ 1 ]. Sampling the entire conformational space of a molecule is computationally demanding; therefore, we compromise on the speed and accuracy of docking to provide poses that are close to native while not requiring the full search of conformational space. This compromise requires docking software to focus on the accuracy and ranking power of the scoring function to highlight low energy conformations and reduce extraneous sampling.”unhoused_relations[0]
no type for thisempirical scoring functions → physics based scoring functions — Empirical scoring functions address limitations of physics-based scoring. — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”unhoused_relations[1]
no type for thismachine learning algorithms → large amount of data — Machine-learning algorithms require a large amount of data to generalize. — “Machine learning (ML) represents another growing class of scoring functions [ 8 ]. ML algorithms learn arbitrary relationships between observations and outputs while classical scoring functions assume a specific functional form [ 14 ]. There has been considerable progress in other biomedical fields with the utilization of ML models [ 15 ]. However, machine learning algorithms require a large amount of data to properly generalize to unseen information. The last 20 years has seen a noteworthy increase in the quantity of available protein structures [ 16 ]. A plethora of databases annotate structural data with experimental binding affinity data, including PDBbind and BindingDB [ 17 – 19 ]. This information has been utilized to leverage machine learning algorithms as scoring functions. A number of traditional ML approaches have been used as scoring functions, including random forests (RF-Score [ 20 ] and SFCScore [ 21 ]), support vector machines (SVR-Score [ 22 ], ID-Score [ 23 ], SVR-EP [ 24 ]), artificial neural networks (NNscore [ 25 ] and BsN-Score [ 26 ]), and gradient boosted decision trees (BT-dock [ 27 ] and ESPH T-Bind [ 28 ]). These ML methods have been able to match or exceed existing traditional scoring functions. ML methods allow a more robust fit to training data, but are limited to features manually extracted from structural data.”unhoused_relations[2]
no type for thisGnina → AutoDock Vina — GNINA is descended through Smina from AutoDock Vina. — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”unhoused_relations[3]
no type for thisrigid protein target → biochemical aspects of the system — A rigid receptor can fail to represent binding-induced structural change. — “Molecular docking is often performed using a rigid protein target and only samples the conformational space of the ligand, as described above. This is a good approximation when redocking to a receptor that does not undergo conformational change upon ligand binding, but it fails to accurately represent the biochemical aspects of the system when the protein undergoes significant structural changes upon binding [ 48 ]. Allowing the whole target to be flexible is too computationally expensive for docking; however, some protein flexibility can be accounted for by sampling the conformational space of side chains in the binding site [ 49 ] while leaving the backbone fixed. The local flexibility of the binding site could be especially beneficial for cross-docking, i.e. docking a ligand to a non-cognate receptor. Assuming a rigid receptor during cross-docking is not realistic when potentially very different ligands are docked to the same receptor.”unhoused_relations[4]
no type for thisflexible docking → computational cost — Flexible docking incurs much higher computational cost. — “Given the much higher computational cost of flexible docking, the optimization of Gnina default parameters and training of new CNN models for this specific task is outside the scope of the present work and will be addressed in future versions of Gnina . However, it is clear that improvements for flexible docking are system-dependent and, therefore, accounting for the increased computational cost, it is reasonable to use rigid docking as the default docking method.”unhoused_relations[5]
no type for thisredocking → normal use case — Redocking is not the normal molecular-docking use case. — “However, redocking is not the normal use case of a molecular docking pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking dataset provides a meaningful method for the evaluation of the ligand RMSD from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.”unhoused_relations[6]
no type for thisdownsampling → combinatorial size — Downsampling makes the combinatorial cross-docking set computationally tractable. — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”unhoused_relations[7]
no type for thisrefinement → computational time — CNN refinement requires substantially more computation than rescoring. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”unhoused_relations[8]
no type for thisautobox_add → TopN — Expanding a precisely known search box decreases docking performance. — “We next evaluate the size of the targeted binding site (box). The autobox_add parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligand input to Gnina . In redocking (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational space of the ligand. A higher value of autobox_add is necessary to ensure that the correct binding site, which may differ from the binding site of the autobox_ligand, is included in the search space. This is shown during cross-docking (Additional file 1 : Figure S7b), where only the binding site of the cognate ligand is known. A low value of autobox_add artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_add to keep the box small while still providing room for error in the selection of the binding site.”unhoused_relations[9]
no type for thiswhole protein docking → local energy minima — Whole-protein search can trap ligands in local minima far from the binding site. — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”unhoused_relations[10]
no type for thisflexible docking → connectivity issues — Flexible docking produced residue-connectivity problems in nine systems. — “Out of the 7970 systems in the cross-docking dataset, flexible side chains are not identified for 24 protein-ligand complexes (see Additional file 1 : Table T3 for details). Such systems are discarded from the following analysis of flexible docking since they are equivalent to rigid docking. Additionally, 9 systems were problematic when computing RMSDs for the flexible residues because of connectivity issues. Disulfide bonds between cysteine residues are allowed to break during sampling (with a software warning), which results in a different connectivity in the output file for four systems. In the other five systems, the connectivity between flexible residues in the input and output file was found to be different and therefore they were discarded (see Additional file 1 : Table T3 for details). All nine systems with connectivity issues were removed from the analysis, resulting in a dataset of 7937 cross-docked complexes.”unhoused_relations[11]
no type for thistarget-cognate RMSD → flexible docking advantage — Any flexible-docking advantage at high target-cognate RMSD remained inconclusive. — “Figure 11 b shows the average RMSD difference between rigid and flexible docking for different 1 Å intervals of target-cognate side chains RMSDs. For low target-cognate RMSDs, which correspond to a highly similar binding site and therefore a situation akin to redocking, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chains RMSDs, indicating a lower similarity between binding sites, the situation is less clear. Flexible docking seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chains RMSDs. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chains RMSD higher than 6 Å is low and therefore the apparent improvement in ligand RMSD for flexible docking is inconclusive.”unhoused_relations[12]
no type for thisCNNscore → pose quality confidence — CNNscore can indicate confidence in generated-pose quality. — “Finally, we evaluate the ability of the CNN ensembles to score ligand conformations. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redocking and cross-docking benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vina scoring function. The CNN models are able to generalize to unseen examples and properly score the ligand conformations such that the low RMSD poses are ranked higher more often than when using the Vina scoring function. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-docking there is at least a 56% probability that the pose is less than 2 Å RMSD from the correct pose. If redocking is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformation; however, particularly when cross-docking, high scoring poses are less common (Fig. 13 b).”unhoused_relations[13]
no type for thisnew CNN models → extensive sampling — Task-specific smoother models may reduce the need for extensive sampling. — “Gnina demonstrates significant improvements over a popular empirical scoring function, but many challenges remain. The failure of using gradients from the CNN scoring to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring function, may significantly reduce the need for extensive sampling and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible docking task would likely improve performance in this area. Gnina 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development process.”unhoused_relations[14]
limitationThe complete molecular conformational space is too expensive to sample. — “Determination of the correct binding pose of a small molecule is a prerequisite for determining its binding affinity and affords the opportunity to utilize the pose for lead optimization. Correct evaluation of binding affinity is critical for downstream tasks such as virtual screening or for determining if a compound is important for more experimental analysis. Molecular docking must compute a pose and a binding affinity quickly for it to beneficial when millions of ligands are being queried in a drug discovery pipeline [ 1 ]. Sampling the entire conformational space of a molecule is computationally demanding; therefore, we compromise on the speed and accuracy of docking to provide poses that are close to native while not requiring the full search of conformational space. This compromise requires docking software to focus on the accuracy and ranking power of the scoring function to highlight low energy conformations and reduce extraneous sampling.”limitations[0]
limitationKnowledge-based scores can inherit training-set feature bias and be difficult to interpret. — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”limitations[1]
limitationPhysics-based scoring accuracy is limited by model complexity and force assumptions. — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”limitations[2]
limitationMachine-learning scoring needs large datasets to generalize to unseen systems. — “Machine learning (ML) represents another growing class of scoring functions [ 8 ]. ML algorithms learn arbitrary relationships between observations and outputs while classical scoring functions assume a specific functional form [ 14 ]. There has been considerable progress in other biomedical fields with the utilization of ML models [ 15 ]. However, machine learning algorithms require a large amount of data to properly generalize to unseen information. The last 20 years has seen a noteworthy increase in the quantity of available protein structures [ 16 ]. A plethora of databases annotate structural data with experimental binding affinity data, including PDBbind and BindingDB [ 17 – 19 ]. This information has been utilized to leverage machine learning algorithms as scoring functions. A number of traditional ML approaches have been used as scoring functions, including random forests (RF-Score [ 20 ] and SFCScore [ 21 ]), support vector machines (SVR-Score [ 22 ], ID-Score [ 23 ], SVR-EP [ 24 ]), artificial neural networks (NNscore [ 25 ] and BsN-Score [ 26 ]), and gradient boosted decision trees (BT-dock [ 27 ] and ESPH T-Bind [ 28 ]). These ML methods have been able to match or exceed existing traditional scoring functions. ML methods allow a more robust fit to training data, but are limited to features manually extracted from structural data.”limitations[3]
limitationOrdinary redocking is easier than the intended use on non-cocrystallized ligand-receptor pairs. — “However, redocking is not the normal use case of a molecular docking pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking dataset provides a meaningful method for the evaluation of the ligand RMSD from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.”limitations[4]
limitationThe cross-docking data were too combinatorially large to evaluate without downsampling. — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”limitations[5]
limitationFull CNN use during every Monte Carlo mutation could not finish the core set in reasonable time. — “We evaluate the performance of the Default Ensemble with the “rescore,” and “refinement” options of cnn_scoring. The usage of the “all” option was unable to complete on the PDBbind Core set in a reasonable amount of time, so it was not considered. The “all” option requires usage of the CNN scoring function for every mutation of the ligand within every Monte Carlo chain with each usage of the CNN scoring function having a high computational cost. This leaves us with the “refinement” and “rescoring” options of cnn_scoring. Figure 6 shows the Default Ensemble performs nearly as well with either option. We can also see that using cnn_emp_weight with both mix_emp_energy and mix_emp_force does not significantly alter the docking performance when using the “refinement” option (Additional file 1 : Figure S5).”limitations[6]
limitationCNN refinement cost an order of magnitude more than final rescoring. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”limitations[7]
limitationWhole-protein docking traps ligands in local minima far from the true binding site. — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”limitations[8]
limitationFlexible docking produced connectivity problems and excluded systems. — “Out of the 7970 systems in the cross-docking dataset, flexible side chains are not identified for 24 protein-ligand complexes (see Additional file 1 : Table T3 for details). Such systems are discarded from the following analysis of flexible docking since they are equivalent to rigid docking. Additionally, 9 systems were problematic when computing RMSDs for the flexible residues because of connectivity issues. Disulfide bonds between cysteine residues are allowed to break during sampling (with a software warning), which results in a different connectivity in the output file for four systems. In the other five systems, the connectivity between flexible residues in the input and output file was found to be different and therefore they were discarded (see Additional file 1 : Table T3 for details). All nine systems with connectivity issues were removed from the analysis, resulting in a dataset of 7937 cross-docked complexes.”limitations[9]
limitationThe apparent flexible-docking benefit at very dissimilar pockets was based on few systems and remained inconclusive. — “Figure 11 b shows the average RMSD difference between rigid and flexible docking for different 1 Å intervals of target-cognate side chains RMSDs. For low target-cognate RMSDs, which correspond to a highly similar binding site and therefore a situation akin to redocking, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chains RMSDs, indicating a lower similarity between binding sites, the situation is less clear. Flexible docking seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chains RMSDs. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chains RMSD higher than 6 Å is low and therefore the apparent improvement in ligand RMSD for flexible docking is inconclusive.”limitations[10]
limitationDefault CNN models were not specifically trained for flexible docking. — “Given the much higher computational cost of flexible docking, the optimization of Gnina default parameters and training of new CNN models for this specific task is outside the scope of the present work and will be addressed in future versions of Gnina . However, it is clear that improvements for flexible docking are system-dependent and, therefore, accounting for the increased computational cost, it is reasonable to use rigid docking as the default docking method.”limitations[11]
limitationHigh-confidence CNN scores were uncommon for cross-docking. — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”limitations[12]
limitationCNN scoring gradients failed to meaningfully improve docking results. — “Gnina demonstrates significant improvements over a popular empirical scoring function, but many challenges remain. The failure of using gradients from the CNN scoring to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring function, may significantly reduce the need for extensive sampling and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible docking task would likely improve performance in this area. Gnina 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development process.”limitations[13]
Content tags
content-observations: finding · quantity · variable · definition · key-term — grounded in the full text
findingGNINA CNN rescoring outperformed Vina on redocking and cross-docking with either defined pockets or whole-protein search spaces. — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.findings[0]
findingThe derived CNN ensemble generalized to unseen proteins and ligands. — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.findings[1]
findingNearly all single CNN models outperformed Vina, while the Default Ensemble outperformed every single model. — “When the Default Ensemble is compared to the ensembles of each of the individual CNN model types, we see that the Default Ensemble is able to outperform all of the ensembles composed of one model type (Fig. 4 ). The ensemble selection procedure determined five CNN models whose combined performance on ranking low RMSD poses first beats the performance of the ensemble utilizing all of the built-in models while significantly reducing computational cost. The All Ensemble is the ensemble composed of all 16 CNN models built-in to the Gnina software. The Default Ensemble is able to meet the docking performance of this large ensemble, even when considering cross-docking results per pocket (Additional file 1 : Fig. S4), while only being composed of five models. Reducing the number of models in the ensemble enables the computations to be several seconds faster for an average docking run (Fig. 5 ). This reduction is likely due to the inclusion of only two of the dense models which take the longest to run because of the high number of parameters in the models. The computational speedup afforded by the Default Ensemble over the All Ensemble increases when no GPU is used for docking (Additional file 1 : Table S2). The computational speed boost can have a significant impact when performing a large number of docking runs or when there is no GPU available for enhanced parallelism of the scoring computation.”content_tags.findings[2]
findingThe five-model Default Ensemble matched the full sixteen-model ensemble with lower computational cost. — “When the Default Ensemble is compared to the ensembles of each of the individual CNN model types, we see that the Default Ensemble is able to outperform all of the ensembles composed of one model type (Fig. 4 ). The ensemble selection procedure determined five CNN models whose combined performance on ranking low RMSD poses first beats the performance of the ensemble utilizing all of the built-in models while significantly reducing computational cost. The All Ensemble is the ensemble composed of all 16 CNN models built-in to the Gnina software. The Default Ensemble is able to meet the docking performance of this large ensemble, even when considering cross-docking results per pocket (Additional file 1 : Fig. S4), while only being composed of five models. Reducing the number of models in the ensemble enables the computations to be several seconds faster for an average docking run (Fig. 5 ). This reduction is likely due to the inclusion of only two of the dense models which take the longest to run because of the high number of parameters in the models. The computational speedup afforded by the Default Ensemble over the All Ensemble increases when no GPU is used for docking (Additional file 1 : Table S2). The computational speed boost can have a significant impact when performing a large number of docking runs or when there is no GPU available for enhanced parallelism of the scoring computation.”content_tags.findings[3]
findingCNN refinement performed almost as well as rescoring but took an order of magnitude longer. — “However, from looking at the average time to perform molecular docking for one system we see that “refinement” takes an order of magnitude longer than “rescoring” (Additional file 1 : Figure S6). Time for performing “rescoring” on an average system is similar to the time to perform docking with the Vina scoring function. We find it reasonable to use “rescore” as the default option for the CNN scoring due to its docking performance and runtime.”content_tags.findings[4]
findingExhaustiveness improved docking performance, but gains after eight chains were not significant for a known pocket. — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”content_tags.findings[5]
findingSaving more Monte Carlo poses improved performance but increased refinement and scoring cost. — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”content_tags.findings[6]
findingExpanding a precisely known binding box reduced redocking performance. — “We next evaluate the size of the targeted binding site (box). The autobox_add parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligand input to Gnina . In redocking (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational space of the ligand. A higher value of autobox_add is necessary to ensure that the correct binding site, which may differ from the binding site of the autobox_ligand, is included in the search space. This is shown during cross-docking (Additional file 1 : Figure S7b), where only the binding site of the cognate ligand is known. A low value of autobox_add artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_add to keep the box small while still providing room for error in the selection of the binding site.”content_tags.findings[7]
findingCNN rotations and minimum-RMSD filtering did not materially alter performance. — “Changes to the CNN rotations do not significantly change the scoring of the Default Ensemble (Additional file 1 : Figure S8). The CNN Ensemble is able to determine the correct score for the ligand pose regardless of the rotation of the ligand and protein complex. Altering the value of the minimum RMSD filter does not change the results of the docking (Additional file 1 : Figure S9). Filtering out poses with similar conformations increases the diversity of poses that the CNN ensemble ranks. However, the CNN ensemble is able to accurately rank the poses it sees, providing high scores to poses with low RMSD to the known binding pose.”content_tags.findings[8]
findingWhole-protein docking reduced Top1 performance because its search space was much larger. — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”content_tags.findings[9]
findingWhole-protein docking benefited more strongly from additional exhaustiveness than defined-pocket docking. — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”content_tags.findings[10]
findingFlexible docking showed no clear overall advantage over rigid docking. — “Figure 11 a shows the difference in RMSDs for the ligand top pose between flexible and rigid docking versus the target-cognate RMSD. For higher target-cognate RMSDs, indicating differences in the binding pocket between the target and cognate receptor, one would expect flexible docking to perform better. However, as we can see, the difference in ligand RMSD between flexible and rigid docking for the top pose varies widely between systems and there in no clear advantage in flexible docking. The overall RMSD distributions for the ligand top poses (Additional file 1 : Figure S11) are fairly similar, with slightly more systems with low RMSD for rigid docking than flexible docking.”content_tags.findings[11]
findingAt low pocket similarity, any apparent flexible-docking advantage was inconclusive because few systems occupied the high-RMSD bins. — “Figure 11 b shows the average RMSD difference between rigid and flexible docking for different 1 Å intervals of target-cognate side chains RMSDs. For low target-cognate RMSDs, which correspond to a highly similar binding site and therefore a situation akin to redocking, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chains RMSDs, indicating a lower similarity between binding sites, the situation is less clear. Flexible docking seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chains RMSDs. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chains RMSD higher than 6 Å is low and therefore the apparent improvement in ligand RMSD for flexible docking is inconclusive.”content_tags.findings[12]
findingThe unseen-system subset retained a strong Default Ensemble advantage over Vina. — “We evaluate all of the CNN models on a subset of the data that was not seen during training to ensure that the CNN models are able to generalize to unseen protein-ligand systems. We also show the Vina results for the same subset of protein-ligand systems. The CNN models’ docking performance decrease relative to the full sets when looking at the top pose, (comparing Figs. 12 to 4 ). Redocking Top1 performance drops from 73% to 68% on the Default Ensemble for the filtered set and the full set, respectively, while Vina remains at about 57%. Cross-docking Top1 performance increases from 37% to 42% for the Default Ensemble and decreases from 27% to 23% when using the Vina scoring function. Overall, the Default Ensemble still shows a strong docking performance boost when used to rescore poses rather than using the Vina scoring function to score poses even on protein-ligand systems not seen during training.”content_tags.findings[13]
findingHigher CNNscores implied a greater probability of a low-RMSD pose. — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”content_tags.findings[14]
findingCNNscore confidence was substantially more common in redocking than cross-docking. — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”content_tags.findings[15]
findingThe selected ensemble improved Top1 from 58% to 73% for redocking and from 27% to 37% for cross-docking. — “We show that our computational docking software Gnina is able to outperform AutoDock Vina scoring by using CNN models to rescore generated poses. Without using a CNN model, our software is equivalent to using the Smina docking software, which is a fork of Vina. Gnina allows the user to utilize CNN models as scoring functions within the docking pipeline in a variety of ways. The various CNN scoring options allow the specified CNN models to replace the scoring function in the sampling, refinement, and rescoring steps of the docking pipeline. We first establish an ensemble of built-in CNN models to be used as the default ensemble. This ensemble of models is selected for its docking and runtime performance. The selected ensemble, termed the Default Ensemble, is able to exceed the ranking performance of Vina (Top1 increases from 58% to 73% and from 27% to 37% for redocking and cross-docking, respectively) while only adding two seconds to the average compute time when utilizing GPUs. It also significantly outperforms any single model or any ensemble of identical models while being significantly faster than an ensemble of all models. The Default Ensemble performs almost equally well when performing refinement of the sampled poses rather than using the Vina scoring function. Refinement with the CNN models is not recommended as the compute cost is significant and the performance is less than simply using the CNN models to rescore the poses refined by the Vina scoring function.”content_tags.findings[16]
findingThe authors recommend rigid docking as the default because flexible-docking improvements were system dependent and expensive. — “We tested the impact of performing cross-docking with flexible side chains (flexible docking). For high binding pocket similarity, flexible docking resulted in a slight deterioration of average ligand top pose RMSDs, as expected. However, for low binding pocket similarity there is no clear advantage for flexible docking, whose success is very much system-dependent. In light of this and given the much higher computational cost, rigid docking remains the most suitable default docking procedure.”content_tags.findings[17]
quantity58% to 73% — defined-pocket redocking Top1 improvement from CNN rescoring — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.quantities[0]
quantity27% to 37% — defined-pocket cross-docking Top1 improvement from CNN rescoring — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.quantities[1]
quantity31% to 38% — whole-protein redocking Top1 improvement — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.quantities[2]
quantity12% to 16% — whole-protein cross-docking Top1 improvement — “Molecular docking computationally predicts the conformation of a small molecule when binding to a receptor. Scoring functions are a vital piece of any molecular docking pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gnina docking software, which utilizes an ensemble of convolutional neural networks (CNNs) as a scoring function. We also explore an array of parameter values for Gnina 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1), is compared to AutoDock Vina scoring when utilizing explicitly defined binding pockets or whole protein docking. Gnina , utilizing a CNN scoring function to rescore the output poses, outperforms AutoDock Vina scoring on redocking and cross-docking tasks when the binding pocket is defined (Top1 increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1 increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gnina under an open source license for use as a molecular docking tool at https://github.com/gnina/gnina .”content_tags.quantities[3]
quantity4852 — high-quality PDBbind 2019 refined-set crystal structures — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”content_tags.quantities[4]
quantity4260 — filtered redocking protein-ligand pairs — “Both of the datasets were filtered to ensure the protein-ligand structures can be parsed by Gnina . ProDy [ 51 ] was used to separate the complexes into protein and ligand files while removing any water or other extra crystallized molecules. Our goal is the binding pose prediction of a small molecule at its target site, therefore we utilized RDKit [ 52 ] to filter both the redocking and cross-docking datasets to include only ligands with molecular masses greater than 150 Da and less than 1000 Da. Any ligand that was not able to be parsed with RDKit was also removed. In addition, we visually inspected the ligands of the cross-docking dataset with Pymol [ 53 ] to ensure that each ligand for a given binding pocket overlapped. If a ligand was non-overlapping it was marked as problematic. Lastly, for the UROK pocket, 4ZKO was removed as the receptor did not align properly and the ligands from 4MNW and 4MNX were also marked as problematic due to their binding pose depending on a chain from the kinase being in a protein-protein complex rather than a holo structure as in the other members of the pocket. The final filtered datasets were composed of 4,260 and 820,280 protein-ligand pairs for the redocking (PDBbind [ 18 ]) and cross-docking (Wierbowski et al. [ 50 ]) datasets, respectively.”content_tags.quantities[5]
quantity820280 — filtered cross-docking protein-ligand pairs before downsampling — “Both of the datasets were filtered to ensure the protein-ligand structures can be parsed by Gnina . ProDy [ 51 ] was used to separate the complexes into protein and ligand files while removing any water or other extra crystallized molecules. Our goal is the binding pose prediction of a small molecule at its target site, therefore we utilized RDKit [ 52 ] to filter both the redocking and cross-docking datasets to include only ligands with molecular masses greater than 150 Da and less than 1000 Da. Any ligand that was not able to be parsed with RDKit was also removed. In addition, we visually inspected the ligands of the cross-docking dataset with Pymol [ 53 ] to ensure that each ligand for a given binding pocket overlapped. If a ligand was non-overlapping it was marked as problematic. Lastly, for the UROK pocket, 4ZKO was removed as the receptor did not align properly and the ligands from 4MNW and 4MNX were also marked as problematic due to their binding pose depending on a chain from the kinase being in a protein-protein complex rather than a holo structure as in the other members of the pocket. The final filtered datasets were composed of 4,260 and 820,280 protein-ligand pairs for the redocking (PDBbind [ 18 ]) and cross-docking (Wierbowski et al. [ 50 ]) datasets, respectively.”content_tags.quantities[6]
quantity7970 — downsampled cross-docking protein-ligand pairs — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”content_tags.quantities[7]
quantity92 — unique cross-docking binding pockets after downsampling — “Due to the combinatorial size of the cross-docking dataset, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking dataset to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking dataset, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gnina and Smina to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).”content_tags.quantities[8]
quantity2 angstrom — RMSD threshold defining a good pose — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”content_tags.quantities[9]
quantity263 — complexes in the runtime benchmark subset — “Avg Time Per System: Properly benchmarking the time for the various CNN scoring options on both the redocking and cross-docking datasets would take a significant amount of time, so we utilize a filtered version of the PDBbind v.2016 [ 54 ] core set to determine runtime. This set consists of 263 complexes. The average runtime is calculated per system using the hyperfine benchmarking tool [ 55 ], computing the runtime for a minimum of 5 docking runs for each system (additional runs are automatically performed by hyperfine if high variability is encountered). We then average docking runtime over the whole PDBbind core set, to provide the average time for one docking run of the PDBbind core set. Timing evaluations were done on a dual 16-core 2.3 GHz Intel Xeon 5218 with 96 GB of RAM and a 11 GB RTX 2080 Ti GPU using CUDA 10.2 and cuDNN 7.6.5. All benchmarking runs were done on an otherwise unloaded system with four cores requested (cpu=4).”content_tags.quantities[10]
quantity5 — CNN models in the Default Ensemble — “The iterative process for construction of the default CNN ensemble, denoted Default Ensemble, is shown in Additional file 1 : Table S1. The five selected models are dense, general_default2018_3, dense_3, crossdock_default2018, and redock_default2018. We now evaluate the docking performance boost that this ensemble provides over any single CNN model type (e.g. crossdock_default2018, dense, etc.) or an ensemble of the same CNN model type (e.g. crossdock_default2018_ensemble, dense_ensemble, etc.). We compare the CNN model(s) docking performance by evaluating TopN on both the redocking and the cross-docking tasks. The CNN models are used in the “rescoring” option for the CNN scoring to output 9 ligand conformations.”content_tags.quantities[11]
quantity16 — CNN models in the All Ensemble — “When the Default Ensemble is compared to the ensembles of each of the individual CNN model types, we see that the Default Ensemble is able to outperform all of the ensembles composed of one model type (Fig. 4 ). The ensemble selection procedure determined five CNN models whose combined performance on ranking low RMSD poses first beats the performance of the ensemble utilizing all of the built-in models while significantly reducing computational cost. The All Ensemble is the ensemble composed of all 16 CNN models built-in to the Gnina software. The Default Ensemble is able to meet the docking performance of this large ensemble, even when considering cross-docking results per pocket (Additional file 1 : Fig. S4), while only being composed of five models. Reducing the number of models in the ensemble enables the computations to be several seconds faster for an average docking run (Fig. 5 ). This reduction is likely due to the inclusion of only two of the dense models which take the longest to run because of the high number of parameters in the models. The computational speedup afforded by the Default Ensemble over the All Ensemble increases when no GPU is used for docking (Additional file 1 : Table S2). The computational speed boost can have a significant impact when performing a large number of docking runs or when there is no GPU available for enhanced parallelism of the scoring computation.”content_tags.quantities[12]
quantity8 — default exhaustiveness for a defined binding pocket — “Changes in the exhaustiveness alter the amount of sampling that occurs. When the exhaustiveness is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformation provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustiveness of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gnina . If the exhaustiveness is greater than the CPUs provided to Gnina , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gnina , an exhaustiveness level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding site.”content_tags.quantities[13]
quantity50 — default number of conformations saved per Monte Carlo chain — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”content_tags.quantities[14]
quantity9 — default number of output modes — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”content_tags.quantities[15]
quantity87% — redocking systems whose top pose had CNNscore above 0.8 — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”content_tags.quantities[16]
quantity15% — cross-docked ligands whose top pose had CNNscore above 0.8 — “We show in Fig. 13 that poses with high CNNscores are more likely to be low RMSD to the known binding pose. However, when the CNNscore threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscore, we can see that the CNN models are much more confident in the poses when they are performing the redocking task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscore for the cross-docking task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscores imply that a pose is more likely to have a low RMSD.”content_tags.quantities[17]
variableRMSD (pose-accuracy outcome) — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”content_tags.variables[0]
variableTopN (ranked docking-performance outcome) — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”content_tags.variables[1]
variableAvg Time Per System (runtime outcome) — “Avg Time Per System: Properly benchmarking the time for the various CNN scoring options on both the redocking and cross-docking datasets would take a significant amount of time, so we utilize a filtered version of the PDBbind v.2016 [ 54 ] core set to determine runtime. This set consists of 263 complexes. The average runtime is calculated per system using the hyperfine benchmarking tool [ 55 ], computing the runtime for a minimum of 5 docking runs for each system (additional runs are automatically performed by hyperfine if high variability is encountered). We then average docking runtime over the whole PDBbind core set, to provide the average time for one docking run of the PDBbind core set. Timing evaluations were done on a dual 16-core 2.3 GHz Intel Xeon 5218 with 96 GB of RAM and a 11 GB RTX 2080 Ti GPU using CUDA 10.2 and cuDNN 7.6.5. All benchmarking runs were done on an otherwise unloaded system with four cores requested (cpu=4).”content_tags.variables[2]
variableexhaustiveness (Monte Carlo sampling intensity) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[3]
variableautobox_add (binding-box expansion parameter) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[4]
variablenum_modes (number of output ligand poses) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[5]
variablenum_mc_saved (poses saved per Monte Carlo chain) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[6]
variablemin_rmsd_filter (minimum diversity threshold between output poses) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[7]
variablecnn_rotation (number of rotated views shown to the CNN) — “Gnina has many parameters that alter the molecular docking pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redocking and the cross-docking datasets. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the sampling procedure, such as exhaustiveness, autobox_add, num_modes, num_mc_saved, and min_rmsd_filter which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo sampling procedure. As previously stated, exhaustiveness determines the number of Monte Carlo chains run during the sampling procedure. autobox_add increases the size of the binding box that the Monte Carlo chains sample. num_modes determines the number of ligand poses output by Gnina at the completion of the docking procedure. This is separate from num_mc_saved which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSD between all pairs of ligand poses is calculated. min_rmsd_filter removes one pose from a pair if the RMSD of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoring function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformation, cnn_rotation.”content_tags.variables[8]
variableCNNscore (pose rank and confidence indicator) — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”content_tags.variables[9]
variableCNNaffinity (predicted binding-affinity output) — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”content_tags.variables[10]
variabletarget-cognate RMSD (binding-pocket similarity dimension) — “Figure 11 a shows the difference in RMSDs for the ligand top pose between flexible and rigid docking versus the target-cognate RMSD. For higher target-cognate RMSDs, indicating differences in the binding pocket between the target and cognate receptor, one would expect flexible docking to perform better. However, as we can see, the difference in ligand RMSD between flexible and rigid docking for the top pose varies widely between systems and there in no clear advantage in flexible docking. The overall RMSD distributions for the ligand top poses (Additional file 1 : Figure S11) are fairly similar, with slightly more systems with low RMSD for rigid docking than flexible docking.”content_tags.variables[11]
definitionmolecular docking — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”content_tags.definitions[0]
definitionsampling — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”content_tags.definitions[1]
definitionscoring function — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”content_tags.definitions[2]
definitionempirical scoring function — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”content_tags.definitions[5]
definitiondeep learning — “Deep learning (DL) methods allow direct inference of features from inputs. They learn a representation of the inputs via layers of simple, non-linear models which transform the representation to higher abstractions to learn complex functions [ 29 ]. DL methods have demonstrated success in a variety of fields, such as computer vision and natural language processing [ 30 , 31 ]. In recent years, there has been significant progress with DL methods in the drug discovery field with many models employing a convolutional framework. Convolutional neural networks (CNN) leverage convolutions to infer features directly from input tensors, usually images. CNNs have shown potential in virtual screening (AtomNet [ 32 ], DeepVS [ 33 ], Ragoza et al. [ 34 ]) and binding affinity prediction (PotentialNet [ 35 ], K DEEP [ 36 ], Pafnucy [ 37 ]). A number of methods have been proposed to capitalize on the power of DL scoring functions. MedusaNet uses a CNN within the docking pipeline to guide the sampling of the base docking method [ 38 ]. The base docking method, Medusa, provides a variety of ligand poses. The CNN evaluates the 3D coordinate representation of the poses to determine if a pose should be retained. Nguyen et al. [ 39 ] describe a generative adversarial network (GAN) for pose prediction. Their network utilizes an encoder with low-dimensional mathematical representations of the protein-ligand complex and a decoder utilizing convolutional layers to generate and rank ligand poses for the D3R grand challenge. Masuda et al. [ 40 ] use a receptor structure as the prior to their GAN to sample novel ligands appropriate to the identified binding site.”content_tags.definitions[6]
definitionredocking — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”content_tags.definitions[7]
definitioncross-docking — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”content_tags.definitions[8]
definitionTopN — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”content_tags.definitions[9]
definitionTop1 — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”content_tags.definitions[10]
definitionCNNaffinity — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”content_tags.definitions[11]
definitionCNNscore — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”content_tags.definitions[12]
definitionexhaustiveness — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”content_tags.definitions[13]
definitionautobox_add — “Open Babel [ 42 , 43 ], a chemical toolbox allowing the reading and writing of over 100 chemical file formats, is used for parsing the inputs, allowing commonly used structural data formats (e.g. PDB, sdf, mol, etc.) as well as gzipped versions of such files to be used. The binding site can be specified as a Cartesian box or by providing a ligand file (autobox_ligand). When autobox_ligand is used to define the binding site, a rectangular prism is constructed using the minimum and maximum values for the x , y , and z coordinates of the ligand to which additional spacing (autobox_add) is added in every dimension (Figs. 1 , 2 ). In Gnina , if any side of this auto-generated box is smaller than the longest distance between any two atoms in the ligand, then those sides are extended to that longest distance, ensuring that the ligand can rotate freely within the defined box without incurring an out-of-box penalty that is applied to all docked poses to constrain them to the specified binding site search space.”content_tags.definitions[14]
definitionDefault Ensemble — “The iterative process for construction of the default CNN ensemble, denoted Default Ensemble, is shown in Additional file 1 : Table S1. The five selected models are dense, general_default2018_3, dense_3, crossdock_default2018, and redock_default2018. We now evaluate the docking performance boost that this ensemble provides over any single CNN model type (e.g. crossdock_default2018, dense, etc.) or an ensemble of the same CNN model type (e.g. crossdock_default2018_ensemble, dense_ensemble, etc.). We compare the CNN model(s) docking performance by evaluating TopN on both the redocking and the cross-docking tasks. The CNN models are used in the “rescoring” option for the CNN scoring to output 9 ligand conformations.”content_tags.definitions[15]
Concepts
terms this paper carries, each with the sentence it was cut from — the layer that joins one paper to another. Terms with no quote yet are on CONCEPTS.html.
conceptMolecular docking — not defined in this paper's own words; computational prediction of receptor-ligand binding conformation — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[0]
conceptnon-covalent bonding — not defined in this paper's own words; interaction predicted between receptor and ligand — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[1]
conceptconformation — not defined in this paper's own words; a sampled or predicted molecular pose — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[2]
conceptbinding affinity — not defined in this paper's own words; predicted strength of receptor-ligand binding — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[3]
conceptsampling — not defined in this paper's own words; search over conformational space — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[4]
conceptscoring — not defined in this paper's own words; fitness evaluation and ranking of sampled poses — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[5]
conceptconformational space — not defined in this paper's own words; possible receptor-ligand geometries — “Molecular docking is a computational procedure in which the non-covalent bonding of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformation and, usually, the binding affinity of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: sampling and scoring. Sampling refers to an extensive search of the conformational space of the molecules being docked. This conformational space is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational space, the receptor is typically kept rigid. The other vital piece of molecular docking is the scoring function. Every sampled pose is evaluated by the scoring function for its fitness. The fitness determines the conformations that are retained from sampling and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.”concepts[6]
conceptscoring function — not defined in this paper's own words; mapping from conformations to rankable numbers — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concepts[7]
conceptknowledge based scoring functions — not defined in this paper's own words; structural-frequency scoring family — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concepts[8]
conceptphysics based scoring functions — not defined in this paper's own words; force-field scoring family — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concepts[9]
conceptforce fields — not defined in this paper's own words; physical interaction-energy scoring functions — “Scoring functions provide a mapping from the conformational space of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functions are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functions leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functions can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functions, often referred to as force fields, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functions are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].”concepts[10]
conceptempirical scoring functions — not defined in this paper's own words; experimentally fitted weighted-energy scoring family — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”concepts[11]
conceptAutoDock Vina — not defined in this paper's own words; empirical molecular-docking baseline — “Empirical scoring functions address the limitations of physics based scoring functions by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functions, including X-Score, AutoDock Vina, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functions, empirical and physics based scoring functions may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring function requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functions. The three categories of scoring functions are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinity. AutoDock Vina (called “Vina”) utilizes an empirical scoring function explicitly tuned to structural data [ 10 ]. The Vina scoring function is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vina can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vina demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functions that are able to model non-linear relationships between inputs.”concepts[12]
conceptmachine learning algorithms — not defined in this paper's own words; models learning observation-output relationships — “Machine learning (ML) represents another growing class of scoring functions [ 8 ]. ML algorithms learn arbitrary relationships between observations and outputs while classical scoring functions assume a specific functional form [ 14 ]. There has been considerable progress in other biomedical fields with the utilization of ML models [ 15 ]. However, machine learning algorithms require a large amount of data to properly generalize to unseen information. The last 20 years has seen a noteworthy increase in the quantity of available protein structures [ 16 ]. A plethora of databases annotate structural data with experimental binding affinity data, including PDBbind and BindingDB [ 17 – 19 ]. This information has been utilized to leverage machine learning algorithms as scoring functions. A number of traditional ML approaches have been used as scoring functions, including random forests (RF-Score [ 20 ] and SFCScore [ 21 ]), support vector machines (SVR-Score [ 22 ], ID-Score [ 23 ], SVR-EP [ 24 ]), artificial neural networks (NNscore [ 25 ] and BsN-Score [ 26 ]), and gradient boosted decision trees (BT-dock [ 27 ] and ESPH T-Bind [ 28 ]). These ML methods have been able to match or exceed existing traditional scoring functions. ML methods allow a more robust fit to training data, but are limited to features manually extracted from structural data.”concepts[13]
conceptdeep learning — not defined in this paper's own words; hierarchical representation-learning approach — “Deep learning (DL) methods allow direct inference of features from inputs. They learn a representation of the inputs via layers of simple, non-linear models which transform the representation to higher abstractions to learn complex functions [ 29 ]. DL methods have demonstrated success in a variety of fields, such as computer vision and natural language processing [ 30 , 31 ]. In recent years, there has been significant progress with DL methods in the drug discovery field with many models employing a convolutional framework. Convolutional neural networks (CNN) leverage convolutions to infer features directly from input tensors, usually images. CNNs have shown potential in virtual screening (AtomNet [ 32 ], DeepVS [ 33 ], Ragoza et al. [ 34 ]) and binding affinity prediction (PotentialNet [ 35 ], K DEEP [ 36 ], Pafnucy [ 37 ]). A number of methods have been proposed to capitalize on the power of DL scoring functions. MedusaNet uses a CNN within the docking pipeline to guide the sampling of the base docking method [ 38 ]. The base docking method, Medusa, provides a variety of ligand poses. The CNN evaluates the 3D coordinate representation of the poses to determine if a pose should be retained. Nguyen et al. [ 39 ] describe a generative adversarial network (GAN) for pose prediction. Their network utilizes an encoder with low-dimensional mathematical representations of the protein-ligand complex and a decoder utilizing convolutional layers to generate and rank ligand poses for the D3R grand challenge. Masuda et al. [ 40 ] use a receptor structure as the prior to their GAN to sample novel ligands appropriate to the identified binding site.”concepts[14]
conceptconvolutional neural networks — not defined in this paper's own words; convolutional models used for pose scoring — “Deep learning (DL) methods allow direct inference of features from inputs. They learn a representation of the inputs via layers of simple, non-linear models which transform the representation to higher abstractions to learn complex functions [ 29 ]. DL methods have demonstrated success in a variety of fields, such as computer vision and natural language processing [ 30 , 31 ]. In recent years, there has been significant progress with DL methods in the drug discovery field with many models employing a convolutional framework. Convolutional neural networks (CNN) leverage convolutions to infer features directly from input tensors, usually images. CNNs have shown potential in virtual screening (AtomNet [ 32 ], DeepVS [ 33 ], Ragoza et al. [ 34 ]) and binding affinity prediction (PotentialNet [ 35 ], K DEEP [ 36 ], Pafnucy [ 37 ]). A number of methods have been proposed to capitalize on the power of DL scoring functions. MedusaNet uses a CNN within the docking pipeline to guide the sampling of the base docking method [ 38 ]. The base docking method, Medusa, provides a variety of ligand poses. The CNN evaluates the 3D coordinate representation of the poses to determine if a pose should be retained. Nguyen et al. [ 39 ] describe a generative adversarial network (GAN) for pose prediction. Their network utilizes an encoder with low-dimensional mathematical representations of the protein-ligand complex and a decoder utilizing convolutional layers to generate and rank ligand poses for the D3R grand challenge. Masuda et al. [ 40 ] use a receptor structure as the prior to their GAN to sample novel ligands appropriate to the identified binding site.”concepts[15]
conceptGnina — not defined in this paper's own words; CNN-integrated molecular-docking software — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”concepts[16]
conceptSmina — not defined in this paper's own words; Vina fork extended by GNINA — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concepts[17]
conceptVina — not defined in this paper's own words; ancestor empirical docking workflow — “Gnina is a fork of Smina [ 41 ] which is a fork of Vina[ 10 ]. The docking pipeline of Gnina utilizes the enhanced support for scoring enabled in Smina to allow the use of CNNs as scoring functions. In typical usage, Gnina is provided with a receptor structure, a ligand structure, and a specification for a binding site on the receptor (Fig. 2 ).”concepts[18]
conceptCNN scoring — not defined in this paper's own words; CNN use within sampling, refinement, or rescoring — “Previous work has largely evaluated deep learning protein-ligand scoring on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gnina molecular docking software, a fork of Smina [ 41 ] and AutoDock Vina [ 10 ] that supports CNN scoring as an integral part of the docking workflow. Gnina is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensemble of CNN models. Performance of Gnina is evaluated for the redocking, cross-docking, flexible docking, and whole protein docking tasks and is found to significantly outperform Smina /Vina in all cases.”concepts[19]
conceptbinding site — not defined in this paper's own words; receptor region defining the docking search space — “Open Babel [ 42 , 43 ], a chemical toolbox allowing the reading and writing of over 100 chemical file formats, is used for parsing the inputs, allowing commonly used structural data formats (e.g. PDB, sdf, mol, etc.) as well as gzipped versions of such files to be used. The binding site can be specified as a Cartesian box or by providing a ligand file (autobox_ligand). When autobox_ligand is used to define the binding site, a rectangular prism is constructed using the minimum and maximum values for the x , y , and z coordinates of the ligand to which additional spacing (autobox_add) is added in every dimension (Figs. 1 , 2 ). In Gnina , if any side of this auto-generated box is smaller than the longest distance between any two atoms in the ligand, then those sides are extended to that longest distance, ensuring that the ligand can rotate freely within the defined box without incurring an out-of-box penalty that is applied to all docked poses to constrain them to the specified binding site search space.”concepts[20]
conceptautobox_ligand — not defined in this paper's own words; ligand-based binding-box specification — “Open Babel [ 42 , 43 ], a chemical toolbox allowing the reading and writing of over 100 chemical file formats, is used for parsing the inputs, allowing commonly used structural data formats (e.g. PDB, sdf, mol, etc.) as well as gzipped versions of such files to be used. The binding site can be specified as a Cartesian box or by providing a ligand file (autobox_ligand). When autobox_ligand is used to define the binding site, a rectangular prism is constructed using the minimum and maximum values for the x , y , and z coordinates of the ligand to which additional spacing (autobox_add) is added in every dimension (Figs. 1 , 2 ). In Gnina , if any side of this auto-generated box is smaller than the longest distance between any two atoms in the ligand, then those sides are extended to that longest distance, ensuring that the ligand can rotate freely within the defined box without incurring an out-of-box penalty that is applied to all docked poses to constrain them to the specified binding site search space.”concepts[21]
conceptpose score — not defined in this paper's own words; CNN probability of low RMSD — “Next, the scoring functions are setup. Similar to Smina , if the user opts to not use the CNN scoring function for a part of the pipeline they can specify their own empirical scoring function to Gnina or choose one of the built-in scoring functions, i.e. Vina, Vinardo [ 44 ], etc. CNN scoring functions can be specified by providing model and/or weights files or by selecting a built-in model. The available built-in CNN models include crossdock_default2018, dense, general_default2018, redock_default2018, and default2017, each of which is trained using different training data and/or a different model architecture. Additionally, each model, except for default2017, has five variants that are trained on the same data and have the same architecture, but are initialized with a different random seed. For each CNN model type, we refer to the variant with the highest docking performance as the base model name, and the remaining variants are given sequential numbers (i.e. general_default2018, general_default2018_1, general_default2018_2, general_default2018_3, and general_default2018_4); the ensemble of these five variants is denoted with ‘_ensemble’ (i.e. general_default2018_ensemble). The architecture and training of these models are described elsewhere [ 34 , 45 ]. CNN calculations are performed using the cuDNN accelerated Caffe deep learning framework [ 46 ]. These models are trained to predict both a pose score (a probability that the pose has a low root mean square deviation (RMSD) to the binding pose) and the binding affinity (pK). The pose score is used for all pose optimization tasks. The scoring function used in each step of the Gnina pipeline is determined by cnn_scoring (defined below), defaulting to only using the CNN scoring for the final resorting of ligand conformations and the empirical scoring function everywhere else in the pipeline.”concepts[22]
conceptMonte Carlo sampling — not defined in this paper's own words; parallel stochastic conformational search — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”concepts[23]
conceptexhaustiveness — number of Monte Carlo chains — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”concepts[24]
conceptMetropolis acceptance criterion — not defined in this paper's own words; score-based mutation acceptance rule — “The docking procedure uses Monte Carlo sampling to search the ligand conformational space. exhaustiveness (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring function is specified for guiding sampling, this minimization is performed using a fast, grid-based approximation of that scoring function. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoring function is specified, no such approximation is used since CNN scoring is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformation determines if it will be accepted using the Metropolis acceptance criterion. Each Monte Carlo chain retains its top scoring ligand conformations, and the number retained is user configurable with num_mc_saved (default 50).”concepts[25]
conceptrefinement — not defined in this paper's own words; local pose optimization after sampling — “Following the completion of Monte Carlo sampling, the saved conformations from each Monte Carlo chain are aggregated and the num_mc_saved top scoring conformations are retained for further analysis. The top scoring conformations are then refined. If an empirical scoring function is specified for refinement (cnn_scoring set to “none” or “rescore”), a functional formulation, rather than a grid approximation, of the scoring function is used to carry out refinement in order to get the locally optimal pose. Refinement shifts the ligand pose to a local energy minimum using the gradients of the scoring function. After the ligand pose has been refined, the final affinities and scores are calculated for the pose using the specified CNN models and/or the specified scoring function. Finally, the top scoring conformations are sorted by pose_sort_order (default “CNNscore”) and output with Open Babel in the user-specified format if an output file was provided.”concepts[26]
conceptrescoring — not defined in this paper's own words; final CNN evaluation and rank ordering — “The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoring (Fig. 1 , 2 ). If “none” is selected for cnn_scoring, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Smina pipeline. The only differences are that Smina computes with double (64 bit) precision rather than the single (32 bit) precision used by Gnina and Smina does not include the autobox_extend parameter when creating the sampling box. When “rescoring” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformations after their refinement with the empirical scoring function. In this case, the specified CNN models are used to score each of the ligand conformations and the output ligand conformations are resorted based on the score calculated by the CNN model(s). The “refinement” option utilizes the CNN for the refinement of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformations by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinement after the Monte Carlo chains, and the sorting of the final output.”concepts[27]
conceptflexible docking — not defined in this paper's own words; docking with sampled side-chain conformations — “Figure 11 a shows the difference in RMSDs for the ligand top pose between flexible and rigid docking versus the target-cognate RMSD. For higher target-cognate RMSDs, indicating differences in the binding pocket between the target and cognate receptor, one would expect flexible docking to perform better. However, as we can see, the difference in ligand RMSD between flexible and rigid docking for the top pose varies widely between systems and there in no clear advantage in flexible docking. The overall RMSD distributions for the ligand top poses (Additional file 1 : Figure S11) are fairly similar, with slightly more systems with low RMSD for rigid docking than flexible docking.”concepts[28]
conceptrigid protein target — not defined in this paper's own words; fixed-receptor approximation — “Molecular docking is often performed using a rigid protein target and only samples the conformational space of the ligand, as described above. This is a good approximation when redocking to a receptor that does not undergo conformational change upon ligand binding, but it fails to accurately represent the biochemical aspects of the system when the protein undergoes significant structural changes upon binding [ 48 ]. Allowing the whole target to be flexible is too computationally expensive for docking; however, some protein flexibility can be accounted for by sampling the conformational space of side chains in the binding site [ 49 ] while leaving the backbone fixed. The local flexibility of the binding site could be especially beneficial for cross-docking, i.e. docking a ligand to a non-cognate receptor. Assuming a rigid receptor during cross-docking is not realistic when potentially very different ligands are docked to the same receptor.”concepts[29]
conceptside chain — not defined in this paper's own words; receptor component allowed to move in flexible docking — “Gnina allows the sampling of side chain, but not backbone, conformational space. More specifically, side chain torsion angles are sampled as part of the Monte Carlo search. Side chain flexibility can be specified manually or semi-automatically in several different ways:”concepts[30]
conceptredocking — not defined in this paper's own words; cognate ligand-receptor benchmark task — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”concepts[31]
conceptcross-docking — not defined in this paper's own words; non-cognate receptor benchmark task — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”concepts[32]
conceptPDBbind refined set v.2019 — not defined in this paper's own words; high-quality redocking benchmark — “There are two primary ways to evaluate molecular docking: redocking a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-docking). In order to best evaluate the performance of Gnina for molecular docking, we evaluate its performance on both of these tasks. Redocking the cognate ligand demonstrates the sampling and scoring power of the molecular docking pipeline, as the RMSD from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redocking requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019 [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinity. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinity data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.”concepts[33]
conceptcross-docking dataset — not defined in this paper's own words; non-cognate pose benchmark — “However, redocking is not the normal use case of a molecular docking pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking dataset provides a meaningful method for the evaluation of the ligand RMSD from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.”concepts[34]
conceptTopN — not defined in this paper's own words; rank-sensitive fraction of good poses — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concepts[35]
conceptTop1 — not defined in this paper's own words; good-pose success at rank one — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concepts[36]
conceptRMSD — not defined in this paper's own words; distance from predicted pose to binding pose — “TopN : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSD from each output pose to the binding pose. In redocking, the binding pose is defined by the crystal pose. In cross-docking, we define the binding pose as the conformation of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSD to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopN) is reported for redocking. In the case of cross-docking, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopN for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1.”concepts[37]
conceptDefault Ensemble — not defined in this paper's own words; selected five-CNN scoring ensemble — “The iterative process for construction of the default CNN ensemble, denoted Default Ensemble, is shown in Additional file 1 : Table S1. The five selected models are dense, general_default2018_3, dense_3, crossdock_default2018, and redock_default2018. We now evaluate the docking performance boost that this ensemble provides over any single CNN model type (e.g. crossdock_default2018, dense, etc.) or an ensemble of the same CNN model type (e.g. crossdock_default2018_ensemble, dense_ensemble, etc.). We compare the CNN model(s) docking performance by evaluating TopN on both the redocking and the cross-docking tasks. The CNN models are used in the “rescoring” option for the CNN scoring to output 9 ligand conformations.”concepts[38]
conceptAll Ensemble — not defined in this paper's own words; all built-in CNN models combined — “When the Default Ensemble is compared to the ensembles of each of the individual CNN model types, we see that the Default Ensemble is able to outperform all of the ensembles composed of one model type (Fig. 4 ). The ensemble selection procedure determined five CNN models whose combined performance on ranking low RMSD poses first beats the performance of the ensemble utilizing all of the built-in models while significantly reducing computational cost. The All Ensemble is the ensemble composed of all 16 CNN models built-in to the Gnina software. The Default Ensemble is able to meet the docking performance of this large ensemble, even when considering cross-docking results per pocket (Additional file 1 : Fig. S4), while only being composed of five models. Reducing the number of models in the ensemble enables the computations to be several seconds faster for an average docking run (Fig. 5 ). This reduction is likely due to the inclusion of only two of the dense models which take the longest to run because of the high number of parameters in the models. The computational speedup afforded by the Default Ensemble over the All Ensemble increases when no GPU is used for docking (Additional file 1 : Table S2). The computational speed boost can have a significant impact when performing a large number of docking runs or when there is no GPU available for enhanced parallelism of the scoring computation.”concepts[39]
conceptnum_mc_saved — not defined in this paper's own words; poses retained from each chain — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concepts[40]
conceptnum_modes — not defined in this paper's own words; final output pose count — “Increasing the num_mc_saved parameter increases the chances of sampling accurate docking poses, as increasing the number of output conformations from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinement and final scoring. As num_mc_saved gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_saved to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_saved and num_modes affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modes) (Fig. 9 ). This is due to num_modes forcing each Monte Carlo chain to output a number of poses greater than num_mc_saved. Increasing the default value of num_modes to a value higher than 50 (the default value for num_mc_saved) will again increase computational overhead, so the default value is set to 9.”concepts[41]
conceptautobox_add — not defined in this paper's own words; binding-box expansion — “We next evaluate the size of the targeted binding site (box). The autobox_add parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligand input to Gnina . In redocking (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational space of the ligand. A higher value of autobox_add is necessary to ensure that the correct binding site, which may differ from the binding site of the autobox_ligand, is included in the search space. This is shown during cross-docking (Additional file 1 : Figure S7b), where only the binding site of the cognate ligand is known. A low value of autobox_add artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_add to keep the box small while still providing room for error in the selection of the binding site.”concepts[42]
conceptwhole protein docking — not defined in this paper's own words; docking without a known binding pocket — “Next, we evaluate the performance of docking when using the whole protein as the defined binding site. Whole protein docking can be used for new protein targets when the true binding site is unknown. The performance of docking is expected to be reduced as the sampling space has been significantly increased. When using the whole protein for the sampling space, the ligand tends to get stuck at local energy minima which are distant from the actual binding site. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo sampling procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vina and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redocking performance decreases from 73% to 38% at Top1 with exhaustiveness at 8 while cross-docking decreases from 37% to 16% at Top1 with exhaustiveness at 8 (cross-docking per pocket Top1 is shown in Additional file 1 : Figure S10). The larger potential docking space requires more sampling to find a ligand conformation with low RMSD to the known binding pose. As expected, with whole protein docking we see greater increases in performance with increased sampling (exhaustiveness). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustiveness from 8 to 16 in whole protein docking Top9 increases from 48% to 58% and 22% to 29% for redocking and cross-docking, respectively. If the binding pocket is explicitly defined, the same change in exhaustiveness only increases Top9 from 87% to 88% and 53% to 55% for redocking and cross-docking, respectively. For this reason, when performing whole protein docking, we recommend setting the value of exhaustiveness as high as possible given time constraints.”concepts[43]
concepttarget-cognate RMSD — not defined in this paper's own words; binding-pocket similarity measure — “Figure 11 a shows the difference in RMSDs for the ligand top pose between flexible and rigid docking versus the target-cognate RMSD. For higher target-cognate RMSDs, indicating differences in the binding pocket between the target and cognate receptor, one would expect flexible docking to perform better. However, as we can see, the difference in ligand RMSD between flexible and rigid docking for the top pose varies widely between systems and there in no clear advantage in flexible docking. The overall RMSD distributions for the ligand top poses (Additional file 1 : Figure S11) are fairly similar, with slightly more systems with low RMSD for rigid docking than flexible docking.”concepts[44]
conceptCNNscore — not defined in this paper's own words; zero-to-one pose rank and confidence output — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”concepts[45]
conceptCNNaffinity — not defined in this paper's own words; CNN-predicted binding affinity — “The CNN models output both a CNNscore and a CNNaffinity for each of the conformations output by Gnina . CNNaffinity is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscore is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSD to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscore can affect the percentage of poses in which the RMSD to the crystal pose is less than 2 Å.”concepts[46]
conceptlow RMSD poses — not defined in this paper's own words; poses near the known binding conformation — “Finally, we evaluate the ability of the CNN ensembles to score ligand conformations. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redocking and cross-docking benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vina scoring function. The CNN models are able to generalize to unseen examples and properly score the ligand conformations such that the low RMSD poses are ranked higher more often than when using the Vina scoring function. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-docking there is at least a 56% probability that the pose is less than 2 Å RMSD from the correct pose. If redocking is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformation; however, particularly when cross-docking, high scoring poses are less common (Fig. 13 b).”concepts[47]
conceptopen development process — not defined in this paper's own words; community contribution model for future GNINA releases — “Gnina demonstrates significant improvements over a popular empirical scoring function, but many challenges remain. The failure of using gradients from the CNN scoring to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring function, may significantly reduce the need for extensive sampling and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible docking task would likely improve performance in this area. Gnina 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development process.”concepts[48]

Full text — tagged

GNINAterm 1.0: molecular dockingterm with deep learningterm Abstract Molecular dockingterm computationally predicts the conformationterm of a small molecule when binding to a receptor. Scoring functionsterm are a vital piece of any molecular dockingterm pipeline as they determine the fitness of sampled poses. Here we describe and evaluate the 1.0 release of the Gninaterm docking software, which utilizes an ensemble of convolutional neural networksterm (CNNs) as a scoring functionterm. We also explore an array of parameter values for Gninaterm 1.0 to optimize docking performance and computational cost. Docking performance, as evaluated by the percentage of targets where the top pose is better than 2Å root mean square deviation (Top1term), is compared to AutoDock Vinaterm scoringterm when utilizing explicitly defined binding pockets or whole protein dockingterm. Gninaterm , utilizing a CNN scoringterm function to rescore the output poses, outperforms AutoDock Vinaterm scoringterm on redockingterm and cross-dockingterm tasks when the binding pocket is defined (Top1term increases from 58% to 73% and from 27% to 37%, respectively) and when the whole protein defines the binding pocket (Top1term increases from 31% to 38% and from 12% to 16%, respectively). The derived ensemble of CNNs generalizes to unseen proteins and ligands and produces scores that correlate well with the root mean square deviation to the known binding pose. We provide the 1.0 version of Gninaterm under an open source license for use as a molecular dockingterm tool at https://github.com/gninaterm/gninaterm .

The online version contains supplementary material available at 10.1186/s13321-021-00522-2.

Keywords: Molecular dockingterm, Deep learningterm, Structure-based drug design Introduction Molecular dockingterm is a computational procedure in which the non-covalent bondingterm of molecules, e.g. a protein receptor and a ligand, is predicted. This prediction outputs the conformationterm and, usually, the binding affinityterm of the small molecule in its predicted minimal energy state and is used to virtually screen large libraries of compounds [ 1 – 3 ]. Docking is composed of two main steps: samplingterm and scoringterm. Samplingterm refers to an extensive search of the conformational spaceterm of the molecules being docked. This conformational spaceterm is vast, due in part to both the receptor and ligand being flexible allowing for each molecule to adjust its shape due to the influence of the other. In order to constrain this large conformational spaceterm, the receptor is typically kept rigid. The other vital piece of molecular dockingterm is the scoring functionterm. Every sampled pose is evaluated by the scoring functionterm for its fitness. The fitness determines the conformationsterm that are retained from samplingterm and is used to rank the retained poses in the order of their likelihood of being correct. The final output of docking is a set of ranked poses of the docked molecule.

Determination of the correct binding pose of a small molecule is a prerequisite for determining its binding affinityterm and affords the opportunity to utilize the pose for lead optimization. Correct evaluation of binding affinityterm is critical for downstream tasks such as virtual screening or for determining if a compound is important for more experimental analysis. Molecular dockingterm must compute a pose and a binding affinityterm quickly for it to beneficial when millions of ligands are being queried in a drug discovery pipeline [ 1 ]. Samplingterm the entire conformational spaceterm of a molecule is computationally demanding; therefore, we compromise on the speed and accuracy of docking to provide poses that are close to native while not requiring the full search of conformational spaceterm. This compromise requires docking software to focus on the accuracy and ranking power of the scoring functionterm to highlight low energy conformationsterm and reduce extraneous samplingterm.

Scoring functionsterm provide a mapping from the conformational spaceterm of the ligand and receptor to the set of real numbers so that poses may be ranked. Typically, scoring functionsterm are grouped into three categories; knowledge based, physics based, and empirical [ 1 ]. Knowledge based scoring functionsterm leverage the statistics from a set of structural binding data. A number of geometric properties are computed from structures of protein-ligand complexes, such as atom-atom pairwise contacts. The calculated frequencies can be used in a method such as potential of mean force (PMF), which creates a potential based on the Boltzmann distribution of the properties, to calculate the score of a pose [ 4 , 5 ]. Knowledge based scoring functionsterm can be biased by features present in their training sets though calculations of scores are quick at test time [ 1 ]. They require a large database of known structures and can be difficult to interpret when trying to understand a score [ 6 ]. Physics based scoring functionsterm, often referred to as force fieldsterm, utilize physically derived energetics of interactions to compute scores. The final score is a summation of energy terms such as Coulombic and Van der Waals forces [ 7 ]. Accuracy of physics based scoring functionsterm are limited by their complexity and the assumptions we place on the fundamental forces dictating interactions between molecules, though understanding of these forces is continually increasing [ 8 ].

Empirical scoring functionsterm address the limitations of physics based scoring functionsterm by using a combination of manually selected energy terms. Rather than giving each energy term identical weighting, the weights of each term are determined via a fit to experimental data. A large proportion of docking software use empirical scoring functionsterm, including X-Score, AutoDock Vinaterm, and ChemScore [ 9 – 11 ]. Unlike knowledge based scoring functionsterm, empirical and physics based scoring functionsterm may be easily interpreted to determine the contributing factors of a given score since each energy term can be individually queried. Fitting empirical scoring functionterm·def requires a plethora of experimental structural data and prevents the combination of terms from separately trained scoring functionsterm. The three categories of scoring functionsterm are limited to features extracted from structural information and often assume there is a linear relationship between the features and the binding affinityterm. AutoDock Vinaterm (called “Vinaterm”) utilizes an empirical scoring functionterm·def explicitly tuned to structural data [ 10 ]. The Vinaterm scoring functionterm is a weighted sum of atomic interactions. Steric, hydrophobic, and hydrogen bonding interactions are calculated and are adjusted by the number of rotatable bonds to account for entropic penalties. The weights of the terms were computed via a non-linear fit to structural data. Nguyen et al. [ 12 ] show that Vinaterm can more accurately predict the binding pose than its predecessor, AutoDock 4 [ 13 ]. Vinaterm demonstrates the power of modelling non-linear relationships with its increased docking performance. Therefore, we search for alternative scoring functionsterm that are able to model non-linear relationships between inputs.

Machine learning (ML) represents another growing class of scoring functionsterm [ 8 ]. ML algorithms learn arbitrary relationships between observations and outputs while classical scoring functionsterm assume a specific functional form [ 14 ]. There has been considerable progress in other biomedical fields with the utilization of ML models [ 15 ]. However, machine learning algorithmsterm require a large amount of data to properly generalize to unseen information. The last 20 years has seen a noteworthy increase in the quantity of available protein structures [ 16 ]. A plethora of databases annotate structural data with experimental binding affinityterm data, including PDBbind and BindingDB [ 17 – 19 ]. This information has been utilized to leverage machine learning algorithmsterm as scoring functionsterm. A number of traditional ML approaches have been used as scoring functionsterm, including random forests (RF-Score [ 20 ] and SFCScore [ 21 ]), support vector machines (SVR-Score [ 22 ], ID-Score [ 23 ], SVR-EP [ 24 ]), artificial neural networks (NNscore [ 25 ] and BsN-Score [ 26 ]), and gradient boosted decision trees (BT-dock [ 27 ] and ESPH T-Bind [ 28 ]). These ML methods have been able to match or exceed existing traditional scoring functionsterm. ML methods allow a more robust fit to training data, but are limited to features manually extracted from structural data.

Deep learningterm (DL) methods allow direct inference of features from inputs. They learn a representation of the inputs via layers of simple, non-linear models which transform the representation to higher abstractions to learn complex functions [ 29 ]. DL methods have demonstrated success in a variety of fields, such as computer vision and natural language processing [ 30 , 31 ]. In recent years, there has been significant progress with DL methods in the drug discovery field with many models employing a convolutional framework. Convolutional neural networksterm (CNN) leverage convolutions to infer features directly from input tensors, usually images. CNNs have shown potential in virtual screening (AtomNet [ 32 ], DeepVS [ 33 ], RagozapersName et al. [ 34 ]) and binding affinityterm prediction (PotentialNet [ 35 ], K DEEP [ 36 ], Pafnucy [ 37 ]). A number of methods have been proposed to capitalize on the power of DL scoring functionsterm. MedusaNet uses a CNN within the docking pipeline to guide the samplingterm of the base docking method [ 38 ]. The base docking method, Medusa, provides a variety of ligand poses. The CNN evaluates the 3D coordinate representation of the poses to determine if a pose should be retained. Nguyen et al. [ 39 ] describe a generative adversarial network (GAN) for pose prediction. Their network utilizes an encoder with low-dimensional mathematical representations of the protein-ligand complex and a decoder utilizing convolutional layers to generate and rank ligand poses for the D3R grand challenge. MasudapersName et al. [ 40 ] use a receptor structure as the prior to their GAN to sample novel ligands appropriate to the identified binding siteterm.

Previous work has largely evaluated deep learningterm protein-ligand scoringterm on already generated poses. In this work, we describe and comprehensively evaluate version 1.0 of the Gninaterm molecular dockingterm software, a fork of Sminaterm [ 41 ] and AutoDock Vinaterm [ 10 ] that supports CNN scoringterm as an integral part of the docking workflow. Gninaterm is evaluated here for its ability to properly score and rank binding poses for protein-ligand complexes. We describe how the default settings which balance docking accuracy and runtime were determined, including the selection of a default ensembleterm of CNN models. Performance of Gninaterm is evaluated for the redockingterm, cross-dockingterm, flexible dockingterm, and whole protein dockingterm tasks and is found to significantly outperform Sminaterm /Vinaterm in all cases.

Methods The docking pipeline of Gninaterm (Fig. 1 ) is described in detail, providing background for the derivation of default usage. A default CNN ensemble is selected for optimizing the docking performance and runtime of the docking pipeline. This ensemble is then used to investigate the different CNN scoringterm options available to the user, followed by a thorough investigation of the docking parameters. Finally, we examine both the generalizability and scoringterm power of Gninaterm .

The Gninaterm samplingterm and scoringterm algorithm shown with relevant commandline parameters and the scope of CNN scoringterm Molecular dockingterm pipeline Gninaterm is a fork of Sminaterm [ 41 ] which is a fork of Vinaterm[ 10 ]. The docking pipeline of Gninaterm utilizes the enhanced support for scoringterm enabled in Sminaterm to allow the use of CNNs as scoring functionsterm. In typical usage, Gninaterm is provided with a receptor structure, a ligand structure, and a specification for a binding siteterm on the receptor (Fig. 2 ).

Example Gninaterm usage Open Babel [ 42 , 43 ], a chemical toolbox allowing the reading and writing of over 100 chemical file formats, is used for parsing the inputs, allowing commonly used structural data formats (e.g. PDB, sdf, mol, etc.) as well as gzipped versions of such files to be used. The binding siteterm can be specified as a Cartesian box or by providing a ligand file (autobox_ligandterm). When autobox_ligandterm is used to define the binding siteterm, a rectangular prism is constructed using the minimum and maximum values for the x , y , and z coordinates of the ligand to which additional spacing (autobox_addterm) is added in every dimension (Figs. 1 , 2 ). In Gninaterm , if any side of this auto-generated box is smaller than the longest distance between any two atoms in the ligand, then those sides are extended to that longest distance, ensuring that the ligand can rotate freely within the defined box without incurring an out-of-box penalty that is applied to all docked poses to constrain them to the specified binding siteterm search space.

Next, the scoring functionsterm are setup. Similar to Sminaterm , if the user opts to not use the CNN scoringterm function for a part of the pipeline they can specify their own empirical scoring functionterm·def to Gninaterm or choose one of the built-in scoring functionsterm, i.e. Vinaterm, Vinardo [ 44 ], etc. CNN scoringterm functions can be specified by providing model and/or weights files or by selecting a built-in model. The available built-in CNN models include crossdock_default2018, dense, general_default2018, redock_default2018, and default2017, each of which is trained using different training data and/or a different model architecture. Additionally, each model, except for default2017, has five variants that are trained on the same data and have the same architecture, but are initialized with a different random seed. For each CNN model type, we refer to the variant with the highest docking performance as the base model name, and the remaining variants are given sequential numbers (i.e. general_default2018, general_default2018_1, general_default2018_2, general_default2018_3, and general_default2018_4); the ensemble of these five variants is denoted with ‘_ensemble’ (i.e. general_default2018_ensemble). The architecture and training of these models are described elsewhere [ 34 , 45 ]. CNN calculations are performed using the cuDNN accelerated Caffe deep learningterm framework [ 46 ]. These models are trained to predict both a pose scoreterm (a probability that the pose has a low root mean square deviation (RMSDterm) to the binding pose) and the binding affinityterm (pK). The pose scoreterm is used for all pose optimization tasks. The scoring functionterm used in each step of the Gninaterm pipeline is determined by cnn_scoringterm (defined below), defaulting to only using the CNN scoringterm for the final resorting of ligand conformationsterm and the empirical scoring functionterm·def everywhere else in the pipeline.

The docking procedure uses Monte Carlo samplingterm to search the ligand conformational spaceterm. exhaustivenessterm (default 8) defines the number of Monte Carlo chains that are run for the ligand. Chains are run in parallel using up to cpu threads. The number of steps for the Monte Carlo chains are calculated based on the number of mobile atoms and the number of degrees of freedom within the ligand. This calculation can be ignored and the user may explicitly specify the number of steps for the Monte Carlo chains with num_mc_steps. Each step of a Monte Carlo chain mutates the ligand by randomly selecting one of the following operations: random translation, random rotation of the entire molecule, or randomly setting the torsional angles of the ligand. The Monte Carlo process selects random resetting of the torsional angles with a higher probability than the other mutations. After the mutation, an approximate energy minimization of the ligand is performed. If an empirical scoring functionterm·def is specified for guiding samplingterm, this minimization is performed using a fast, grid-based approximation of that scoring functionterm. A grid is pre-calculated for each ligand atom type and a single atom of that type is used to calculate values for each grid point. The full ligand is scored by interpolating values from the grid for each of its atoms and summing the result. If a CNN scoringterm function is specified, no such approximation is used since CNN scoringterm is not additive with respect to the individual atoms [ 47 ]. The score for the minimized conformationterm determines if it will be accepted using the Metropolis acceptance criterionterm. Each Monte Carlo chain retains its top scoringterm ligand conformationsterm, and the number retained is user configurable with num_mc_savedterm (default 50).

Following the completion of Monte Carlo samplingterm, the saved conformationsterm from each Monte Carlo chain are aggregated and the num_mc_savedterm top scoringterm conformationsterm are retained for further analysis. The top scoringterm conformationsterm are then refined. If an empirical scoring functionterm·def is specified for refinementterm (cnn_scoringterm set to “none” or “rescore”), a functional formulation, rather than a grid approximation, of the scoring functionterm is used to carry out refinementterm in order to get the locally optimal pose. Refinementterm shifts the ligand pose to a local energy minimum using the gradients of the scoring functionterm. After the ligand pose has been refined, the final affinities and scores are calculated for the pose using the specified CNN models and/or the specified scoring functionterm. Finally, the top scoringterm conformationsterm are sorted by pose_sort_order (default “CNNscoreterm”) and output with Open Babel in the user-specified format if an output file was provided.

The usage of the CNN models within the docking pipeline can be selected by the user using cnn_scoringterm (Fig. 1 , 2 ). If “none” is selected for cnn_scoringterm, then the CNN models are not used at all in the docking pipeline, making the pipeline essentially identical to the Sminaterm pipeline. The only differences are that Sminaterm computes with double (64 bit) precision rather than the single (32 bit) precision used by Gninaterm and Sminaterm does not include the autobox_extend parameter when creating the samplingterm box. When “rescoringterm” is selected (the default), the specified CNN models are not used until the final sorting of resultant ligand conformationsterm after their refinementterm with the empirical scoring functionterm·def. In this case, the specified CNN models are used to score each of the ligand conformationsterm and the output ligand conformationsterm are resorted based on the score calculated by the CNN model(s). The “refinementterm” option utilizes the CNN for the refinementterm of the ligand poses after they have been selected by the Monte Carlo chains and then sorts the refined ligand conformationsterm by the CNN score for output. Finally, the “all” option utilizes the CNN for all aspects of the docking pipeline including the minimization within the Monte Carlo chains, the refinementterm after the Monte Carlo chains, and the sorting of the final output.

Flexible dockingterm Molecular dockingterm is often performed using a rigid protein targetterm and only samples the conformational spaceterm of the ligand, as described above. This is a good approximation when redockingterm to a receptor that does not undergo conformational change upon ligand binding, but it fails to accurately represent the biochemical aspects of the system when the protein undergoes significant structural changes upon binding [ 48 ]. Allowing the whole target to be flexible is too computationally expensive for docking; however, some protein flexibility can be accounted for by samplingterm the conformational spaceterm of side chainsterm in the binding siteterm [ 49 ] while leaving the backbone fixed. The local flexibility of the binding siteterm could be especially beneficial for cross-dockingterm, i.e. docking a ligand to a non-cognate receptor. Assuming a rigid receptor during cross-dockingterm is not realistic when potentially very different ligands are docked to the same receptor.

Gninaterm allows the samplingterm of side chainterm, but not backbone, conformational spaceterm. More specifically, side chainterm torsion angles are sampled as part of the Monte Carlo search. Side chainterm flexibility can be specified manually or semi-automatically in several different ways: flexible side chainsterm can be defined in a PDBQT file (flex parameter), they can be selected using a comma-separated list of residue identifiers (chain, residue number, and, optionally, insertion code; flexres parameter), or they can be selected based on their distance from a given ligand (flexdist and flexdist_ligand parameters).

The last option, used in this work, is similar to the autobox_ligandterm option described above. The flexdist parameter allows the specification of a threshold distance from the flexdist_ligand. If a residue has any side chainterm atoms that are within this distance of the specified ligand, then the entire residue side chainterm is marked as flexible.

Given the increased computational cost of samplingterm side chainterm conformationsterm, two additional options are provided for flexible dockingterm. flex_limit allows users to specify a hard upper bound for the number of flexible side chainsterm. If flex_limit is exceeded for a particular system, docking does not run and Gninaterm terminates with a warning. This option is particularly useful to avoid possible bottlenecks in large virtual screening tasks. The less strict flex_max option allows users to prune the list of flexible side chainsterm in order to make the calculation more manageable for large systems; if there are more than flex_max side chainsterm identified as flexible, only the conformational spaceterm of the flex_max closest to flexdist_ligand is sampled during docking.

Flexible side chainsterm are selected at the very beginning of the docking procedure and the selection is not updated during samplingterm. When using autobox_ligandterm to automatically define the search space as described above, flexible side chainsterm are included in the calculation of the box bounds. The usage of CNN models for docking with flexible side chainsterm can be selected by the user in the same way it is done for docking with a rigid receptor, as described above.

Data There are two primary ways to evaluate molecular dockingterm: redockingterm a cognate ligand to its receptor and docking a ligand to a non-cognate receptor (cross-dockingterm). In order to best evaluate the performance of Gninaterm for molecular dockingterm, we evaluate its performance on both of these tasks. Redockingterm the cognate ligand demonstrates the samplingterm and scoringterm power of the molecular dockingterm pipeline, as the RMSDterm from the crystal pose can be measured to exactly determine the accuracy of the produced poses. Analysis of redockingterm requires a set of high quality structures in which the native binding pose of the ligand has been solved. For this purpose we utilize the PDBbind refined set v.2019term [ 18 ]. The PDBbind database is a curated set of protein-ligand complexes containing both structural information and binding affinityterm. The PDBbind database is updated annually with new experimentally determined structures annotated with binding affinityterm data. The refined set is a subset of the entire PDBbind dataset that retains only the structures with resolution higher than 2.5 Å, high quality affinity measurements, and binary protein-ligand complexes. The 2019 release of the refined set contains 4,852 high quality crystal structures of native protein-ligand binding poses.

However, redockingterm is not the normal use case of a molecular dockingterm pipeline. Docking will ordinarily be performed on proteins-ligand pairs that have no co-crystallized structure. Often a new ligand will be docked into a receptor whose co-crystallized ligand is a different molecule. Wierbowski et al. [ 50 ] recently published a dataset that provides a benchmark precisely for this task. This cross-docking datasetterm provides a meaningful method for the evaluation of the ligand RMSDterm from the known and predicted poses. A reference structure is selected for the protein, then the “known” binding pose of a ligand is defined by the ligand’s position when an alignment is performed between the reference structure and the ligand’s co-crystal receptor structure. The dataset is composed of 94 unique protein binding pockets and 4,399 unique ligands, with an average of 46 ligands per target.

Both of the datasets were filtered to ensure the protein-ligand structures can be parsed by Gninaterm . ProDy [ 51 ] was used to separate the complexes into protein and ligand files while removing any water or other extra crystallized molecules. Our goal is the binding pose prediction of a small molecule at its target site, therefore we utilized RDKit [ 52 ] to filter both the redockingterm and cross-docking datasetsterm to include only ligands with molecular masses greater than 150 Da and less than 1000 Da. Any ligand that was not able to be parsed with RDKit was also removed. In addition, we visually inspected the ligands of the cross-docking datasetterm with Pymol [ 53 ] to ensure that each ligand for a given binding pocket overlapped. If a ligand was non-overlapping it was marked as problematic. Lastly, for the UROK pocket, 4ZKO was removed as the receptor did not align properly and the ligands from 4MNW and 4MNX were also marked as problematic due to their binding pose depending on a chain from the kinase being in a protein-protein complex rather than a holo structure as in the other members of the pocket. The final filtered datasets were composed of 4,260 and 820,280 protein-ligand pairs for the redockingterm (PDBbind [ 18 ]) and cross-dockingterm (Wierbowski et al. [ 50 ]) datasets, respectively.

Due to the combinatorial size of the cross-docking datasetterm, more filtering was required to make computational time tractable. Each unique protein binding pocket can be used to group the protein-ligand complexes as all of the receptor structures in the group share a common pocket. These groupings allow the cross-docking datasetterm to be downsampled for each pocket. Each pocket was either kept in full, or reduced to a random sample of 100 receptor-ligand pairs, whichever was smaller. We then removed any of the ligands that were previously listed as problematic. The downsampling results in 7970 protein-ligand pairs and 92 unique protein binding pockets in the cross-docking datasetterm, where in no case is a ligand paired to its cognate receptor. Notably, 2 pockets were removed (ALDR and CP3A4) due to all of the ligands either failing the filtering, or being marked as problematic. We evaluate the docking performance differences for various fractions of the total complexes per pocket for both Gninaterm and Sminaterm to ensure the downsampling does not bias the performance of either software (Additional file 1 : Fig. S1).

Evaluation metrics TopNterm : We evaluate docking performance by examining the output poses. The Open Babel obrms tool [ 42 , 43 ] is used to determine the RMSDterm from each output pose to the binding pose. In redockingterm, the binding pose is defined by the crystal pose. In cross-dockingterm, we define the binding pose as the conformationterm of the ligand when the cognate protein structure is aligned with the reference structure. If the RMSDterm to the known binding pose is less than 2 Å then we consider the pose to be “good.” The percentage of systems with a good pose ranked in the top N (TopNterm) is reported for redockingterm. In the case of cross-dockingterm, we consider all poses of a ligand across an ensemble of non-cognate receptors. We calculate the TopNterm for each target individually and report the average across the 92 systems. Averaging is performed to avoid over-representing targets with a large number of ligands. This metric can be computed for any number of output poses, computing only the top pose is Top1term.

Avg Time Per Systemterm·var: Properly benchmarking the time for the various CNN scoringterm options on both the redockingterm and cross-docking datasetsterm would take a significant amount of time, so we utilize a filtered version of the PDBbind v.2016 [ 54 ] core set to determine runtime. This set consists of 263 complexes. The average runtime is calculated per system using the hyperfine benchmarking tool [ 55 ], computing the runtime for a minimum of 5 docking runs for each system (additional runs are automatically performed by hyperfine if high variability is encountered). We then average docking runtime over the whole PDBbind core set, to provide the average time for one docking run of the PDBbind core set. Timing evaluations were done on a dual 16-core 2.3 GHz Intel Xeon 5218 with 96 GB of RAM and a 11 GB RTX 2080 Ti GPU using CUDA 10.2 and cuDNN 7.6.5. All benchmarking runs were done on an otherwise unloaded system with four cores requested (cpu=4).

Default model selection When using CNN scoringterm, the user can utilize a single CNN model or an ensemble of CNN models where the final score is an average of each CNN model’s score. It has been shown that ensembles of predictors improve performance over a single predictive model [ 56 ]. However, due to the high computational cost of applying CNN models in comparison to empirical scoring functionsterm, it is desirable to select a subset of the available models that provides improved scoringterm while limiting computational cost. The default CNN model ensemble was selected using a greedy forward algorithm. The ensemble was built in an iterative process using the “rescoringterm” option for CNN scoringterm so as to minimize the computational time for each iteration. In each round of the selection, models were chosen for their Top1term performance. We evaluate all of the versions of each CNN model (i.e. dense, dense_1, dense_2, dense_3, dense_4). In the first round of selection, all of the CNN models were tested for their individual ability to predict Top1term on both the cross-dockingterm and redockingterm datasets. The next round of selection required testing of all two-model combinations with the model selected in the first step. Model selection continued, exploring all possible combinations of the built-in CNN models. The selection process concluded after five CNN models were selected for inclusion in the default ensembleterm.

Default CNN scoringterm method Gninaterm allows the usage of CNN scoringterm in various steps of the molecular dockingterm process (Fig. 1 ). The CNN scoringterm option allows the user to change how the CNN is used to evaluate a ligand pose. If the CNN is not used at all in the scoringterm process (“none” option), then the molecular dockingterm pipeline is essentially the same as Sminaterm . The “rescoringterm” option has the lowest computational cost of the options that utilize the CNN models. With this option CNN models are used to score and re-sort the ligand conformationsterm selected and refined by the non-CNN scoring functionterm, defaulting to the Vinaterm scoring functionterm. For additional computational cost, the “refinementterm” option can be specified to use the CNN models for the refinementterm of the ligands after they have been selected by the Monte Carlo chains. In addition to refining the ligand conformationsterm, the CNN models are used to score and resort the output poses, as the “rescore” option does. However, the Monte Carlo chains continue utilizing the non-CNN scoring functionterm. The “all” option uses the CNN models as the scoring functionterm throughout the course of the molecular dockingterm procedure and has the highest computational cost by orders of magnitude. The CNN model is used for the selection process within the Monte Carlo chains, the refinementterm process after Monte Carlo selection, and the scoringterm and resorting of the poses before output. This option is very computationally intensive as the CNN is regularly queried for the energy of a particular conformationterm during the Monte Carlo samplingterm procedure.

In addition to the values allowed for cnn_scoringterm, the user is provided with cnn_empirical_weight to combine the non-CNN and the CNN scoringterm functions. Using mix_emp_force the refinementterm of the ligand poses can be computed with a linear combination of the CNN gradients and the non-CNN scoring functionsterm force. mix_emp_energy uses the same linear combination of the scoring functionsterm for computing the score of a given pose. The weighting of the Vinaterm scoring functionterm within the linear combination is selected with cnn_empirical_weight (default 1.0).

The default usage of the CNNs within the Gninaterm docking pipeline demands high accuracy while limiting computational costs. Therefore, each of the CNN scoringterm options is evaluated for both docking performance and runtime. Docking performance can be calculated on both the redockingterm and cross-docking datasetsterm via TopNterm. To this end, Gninaterm is used with one of the CNN scoringterm options with the default CNN ensemble selected above to compute 9 ligand poses for each protein ligand system. We also investigate various values of cnn_empirical_weight while using the “refinementterm” option to determine if a linear combination of the non-CNN and CNN scoringterm functions provides greater docking performance. We use both mix_emp_energy and mix_emp_force with the cnn_empirical_weight parameter to use the linear combination of Vinaterm and the default CNN ensemble for both refinementterm of poses and final scoringterm.

Parameter exploration Gninaterm has many parameters that alter the molecular dockingterm pipeline (Fig. 2 ). A default value is found for each of these parameters to provide the best all around default behavior. In exploring the various values of the parameters we find the optimal value for both the redockingterm and the cross-docking datasetsterm. Additionally, we also consider that the user may not know the exact location of the binding pocket on the receptor and may have to use the entire protein as the autobox for the docking pipeline. Therefore, our setting exploration considers the case in which the specific binding pocket is known and the case in which the whole protein is used to define a binding box. Some parameters directly impact the samplingterm procedure, such as exhaustivenessterm, autobox_addterm, num_modesterm, num_mc_savedterm, and min_rmsd_filterterm·var which are described below. These parameters control, to some extent, the extensiveness of the search during the Monte Carlo samplingterm procedure. As previously stated, exhaustivenessterm determines the number of Monte Carlo chains run during the samplingterm procedure. autobox_addterm increases the size of the binding box that the Monte Carlo chains sample. num_modesterm determines the number of ligand poses output by Gninaterm at the completion of the docking procedure. This is separate from num_mc_savedterm which defines the number of ligand poses saved for each Monte Carlo chain. The number of ligand poses retained after all of the Monte Carlo chains are completed is determined by either the number of modes or the number of Monte Carlo saved, whichever is larger. After all of the Monte Carlo chains have completed and the poses have been refined and sorted, the RMSDterm between all pairs of ligand poses is calculated. min_rmsd_filterterm·var removes one pose from a pair if the RMSDterm of the pair is less than the value of the parameter. This ensures the poses returned by the docking procedure are all different from one another. When using the CNN scoringterm function, another setting is how many different rotations of the protein-ligand complex the CNN is able to see for each conformationterm, cnn_rotationterm·var.

Evaluations for all of the parameters are carried out on both the redockingterm and cross-docking datasetsterm. Each setting is varied individually using the default CNN ensemble determined above. The values explored for each parameter are defined in Tables 1 and 2 . Values were explored around the previously set defaults for each of the parameters. Each value produced a set of poses, which was used to calculate a TopNterm.

Parameters explored when the binding pocket has been defined Parameters explored when the binding pocket is not known and the whole protein is used for docking CNN scoringterm performance All of the CNN models were trained on some subset of the cross-dockingterm and redockingterm datasets. Generalization can be evaluated by determining the performance of the CNN scoringterm functions on the subset of the datasets that were not seen in training. This evaluation is carried out by removing any protein or ligand contained within the training data of the CNN models. All of the CNN models have been trained on different sets, so fully testing generality requires the removal of all of the proteins and ligands in the training set from both the redockingterm and cross-docking datasetsterm. We removed all PDB IDs that were in the training sets of the CNN models [ 18 , 45 ], leaving 441 and 178 protein-ligand pairs for the redockingterm and cross-dockingterm sets, respectively.

The CNN models output both a CNNscoreterm and a CNNaffinityterm for each of the conformationsterm output by Gninaterm . CNNaffinityterm is the affinity of the docked complex as determined by the CNN, this metric has been evaluated in a previous work [ 45 ]. The CNNscoreterm is a value between 0 and 1 that is used to rank the poses of the ligand, where a score of 1 denotes a perfect ligand pose. We would like to investigate if there is a correlation between high scores and low RMSDterm to the crystal pose. For ease of analysis, we only consider the top ranked pose. Using the top ranked pose for each complex, we investigate how filtering the poses by their CNNscoreterm can affect the percentage of poses in which the RMSDterm to the crystal pose is less than 2 Å.

Results Sminaterm Comparison Gninaterm is a fork of Sminaterm that allows the utilization of CNN models as scoring functionsterm. Therefore, without the use of the CNN models Gninaterm should function exactly as Sminaterm does. However, unlike Sminaterm , Gninaterm does computation with single (32 bit) precision rather than double (64 bit) precision due to the need to shift calculations to the GPU for efficient CNN scoringterm. Therefore, we ensure that the use of single precision does not negatively affect the docking power of the pipeline. The effect of this precision change can be evaluated by running Gninaterm without using any CNN scoringterm and with autobox_extend turned off, allowing us to compare to Sminaterm docking results. We consider only redockingterm results as cross-dockingterm results would require significantly more computation, and identification of differences due to precision can be done using only redockingterm results. Results for redockingterm do not show a significant difference for the output poses. A majority of the output poses are exactly the same, with slight differences seen for some output poses (Additional file 1 : Figs. S2 and S3).

Default model selection The iterative process for construction of the default CNN ensemble, denoted Default Ensembleterm, is shown in Additional file 1 : Table S1. The five selected models are dense, general_default2018_3, dense_3, crossdock_default2018, and redock_default2018. We now evaluate the docking performance boost that this ensemble provides over any single CNN model type (e.g. crossdock_default2018, dense, etc.) or an ensemble of the same CNN model type (e.g. crossdock_default2018_ensemble, dense_ensemble, etc.). We compare the CNN model(s) docking performance by evaluating TopNterm on both the redockingterm and the cross-dockingterm tasks. The CNN models are used in the “rescoringterm” option for the CNN scoringterm to output 9 ligand conformationsterm.

The docking performance of the Default Ensembleterm is compared to the single model options in Fig. 3 . While nearly all models are able to outperform Vinaterm, we can see that the newly selected Default Ensembleterm significantly outperforms all of the single models on both the redockingterm task and the cross-dockingterm task.

Docking using the single CNN models and the newly selected Default Ensembleterm for rescoringterm the output poses. The binding pocket is defined by the known binding ligand. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å When the Default Ensembleterm is compared to the ensembles of each of the individual CNN model types, we see that the Default Ensembleterm is able to outperform all of the ensembles composed of one model type (Fig. 4 ). The ensemble selection procedure determined five CNN models whose combined performance on ranking low RMSD posesterm first beats the performance of the ensemble utilizing all of the built-in models while significantly reducing computational cost. The All Ensembleterm is the ensemble composed of all 16 CNN models built-in to the Gninaterm software. The Default Ensembleterm is able to meet the docking performance of this large ensemble, even when considering cross-dockingterm results per pocket (Additional file 1 : Fig. S4), while only being composed of five models. Reducing the number of models in the ensemble enables the computations to be several seconds faster for an average docking run (Fig. 5 ). This reduction is likely due to the inclusion of only two of the dense models which take the longest to run because of the high number of parameters in the models. The computational speedup afforded by the Default Ensembleterm over the All Ensembleterm increases when no GPU is used for docking (Additional file 1 : Table S2). The computational speed boost can have a significant impact when performing a large number of docking runs or when there is no GPU available for enhanced parallelism of the scoringterm computation.

Docking using the ensemble of each type of CNN model, the full ensemble of CNN models, and the newly selected Default Ensembleterm for rescoringterm the output poses. The binding pocket is defined by the known binding ligand. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å Evaluation of the average time to dock one protein-ligand system from the PDBbind core set v.2016. Top1term is the percentage of top ranked targets with a RMSDterm less than 2 Å When comparing Figs. 3 and 4 we can see that the ensembles composed of the individual model types are able to outperform their single model counterparts. We therefore omit the single models for the remaining evaluations.

Default CNN scoringterm method We evaluate the performance of the Default Ensembleterm with the “rescore,” and “refinementterm” options of cnn_scoringterm. The usage of the “all” option was unable to complete on the PDBbind Core set in a reasonable amount of time, so it was not considered. The “all” option requires usage of the CNN scoringterm function for every mutation of the ligand within every Monte Carlo chain with each usage of the CNN scoringterm function having a high computational cost. This leaves us with the “refinementterm” and “rescoringterm” options of cnn_scoringterm. Figure 6 shows the Default Ensembleterm performs nearly as well with either option. We can also see that using cnn_emp_weight with both mix_emp_energy and mix_emp_force does not significantly alter the docking performance when using the “refinementterm” option (Additional file 1 : Figure S5).

Comparing the Default CNN Ensemble for use in only rescoringterm of the poses output by the Monte Carlo chains or the refinementterm of the poses followed by a rescoringterm of the poses. The “refine” option has nearly the same docking performance as the “rescore” option when cross-dockingterm. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å However, from looking at the average time to perform molecular dockingterm for one system we see that “refinementterm” takes an order of magnitude longer than “rescoringterm” (Additional file 1 : Figure S6). Time for performing “rescoringterm” on an average system is similar to the time to perform docking with the Vinaterm scoring functionterm. We find it reasonable to use “rescore” as the default option for the CNN scoringterm due to its docking performance and runtime.

Parameter exploration Changes in the exhaustivenessterm alter the amount of samplingterm that occurs. When the exhaustivenessterm is increased, we see an increase in the performance of docking (Fig. 7 ). This is as expected as more Monte Carlo chains randomly mutating the ligand conformationterm provides the docking procedure with more opportunities to randomly sample the correct pose. However, there are no significant performance gains after a value of 8. An exhaustivenessterm of 16 provides some performance boost, but this boost may be accompanied by a doubling of the computational time. The Monte Carlo chains are evaluated in parallel, but parallelism is limited by the number of cores available to Gninaterm . If the exhaustivenessterm is greater than the CPUs provided to Gninaterm , the number of simultaneously running Monte Carlo chains is equal to the number of CPUs. Therefore, in typical usage of Gninaterm , an exhaustivenessterm level of 8 is sufficient for adequate performance levels while minimizing the computational load when targeting a specific binding siteterm.

Evaluating the role of exhaustivenessterm in the performance of docking with the Default CNN Ensemble by analyzing TopNterm. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å Increasing the num_mc_savedterm parameter increases the chances of samplingterm accurate docking poses, as increasing the number of output conformationsterm from each Monte Carlo chain increases the likelihood of finding the correct pose. However, this will also increase computational time due to the fact that more poses require refinementterm and final scoringterm. As num_mc_savedterm gets closer to 100, we see that the docking performance boost is reduced (Fig. 8 ). Therefore, we select a new default value of 50 for num_mc_savedterm to minimize the computational overhead while still increasing the performance of the docking routine. The num_mc_savedterm and num_modesterm affect one another; the number of poses saved from each Monte Carlo chain is the maximum of the two values. When looking at the first 9 poses, we see an increase in the docking performance with a substantially greater value for the number of output poses (num_modesterm) (Fig. 9 ). This is due to num_modesterm forcing each Monte Carlo chain to output a number of poses greater than num_mc_savedterm. Increasing the default value of num_modesterm to a value higher than 50 (the default value for num_mc_savedterm) will again increase computational overhead, so the default value is set to 9.

Evaluation of the Number of Monte Carlo Saved in the performance of docking with the Default CNN Ensemble by analyzing TopNterm. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å Evaluating a much greater number of modes on the performance of docking with the Default CNN Ensemble by analyzing TopNterm. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å We next evaluate the size of the targeted binding siteterm (box). The autobox_addterm parameter increases the search space for the docking program to be larger than the rectangular prism defined by the autobox_ligandterm input to Gninaterm . In redockingterm (Additional file 1 : Figure S7a), the expansion of the search space decreases performance as the expanded search space increases the potential conformational spaceterm of the ligand. A higher value of autobox_addterm is necessary to ensure that the correct binding siteterm, which may differ from the binding siteterm of the autobox_ligandterm, is included in the search space. This is shown during cross-dockingterm (Additional file 1 : Figure S7b), where only the binding siteterm of the cognate ligand is known. A low value of autobox_addterm artificially improves docking performance when the binding pose is known by unrealistically constraining the search space. We therefore select a default value of 4 for autobox_addterm to keep the box small while still providing room for error in the selection of the binding siteterm.

Changes to the CNN rotations do not significantly change the scoringterm of the Default Ensembleterm (Additional file 1 : Figure S8). The CNN Ensemble is able to determine the correct score for the ligand pose regardless of the rotation of the ligand and protein complex. Altering the value of the minimum RMSDterm filter does not change the results of the docking (Additional file 1 : Figure S9). Filtering out poses with similar conformationsterm increases the diversity of poses that the CNN ensemble ranks. However, the CNN ensemble is able to accurately rank the poses it sees, providing high scores to poses with low RMSDterm to the known binding pose.

Whole protein dockingterm Next, we evaluate the performance of docking when using the whole protein as the defined binding siteterm. Whole protein dockingterm can be used for new protein targets when the true binding siteterm is unknown. The performance of docking is expected to be reduced as the samplingterm space has been significantly increased. When using the whole protein for the samplingterm space, the ligand tends to get stuck at local energy minima which are distant from the actual binding siteterm. Most of the protein surface is not hospitable for ligand binding, so once a potential pocket is discovered, exploring more of the protein surface has a low probability during the Monte Carlo samplingterm procedure. Comparing Figs. 10 to 7 shows that the docking performances of both Vinaterm and the Default CNN Ensemble are reduced from when the binding pocket was explicitly defined. Redockingterm performance decreases from 73% to 38% at Top1term with exhaustivenessterm at 8 while cross-dockingterm decreases from 37% to 16% at Top1term with exhaustivenessterm at 8 (cross-dockingterm per pocket Top1term is shown in Additional file 1 : Figure S10). The larger potential docking space requires more samplingterm to find a ligand conformationterm with low RMSDterm to the known binding pose. As expected, with whole protein dockingterm we see greater increases in performance with increased samplingterm (exhaustivenessterm). By again comparing Figs. 10 with 7 we see that this boost in performance is larger than when the binding pocket is defined explicitly and does not exhibit the same diminishing returns. When increasing exhaustivenessterm from 8 to 16 in whole protein dockingterm Top9 increases from 48% to 58% and 22% to 29% for redockingterm and cross-dockingterm, respectively. If the binding pocket is explicitly defined, the same change in exhaustivenessterm only increases Top9 from 87% to 88% and 53% to 55% for redockingterm and cross-dockingterm, respectively. For this reason, when performing whole protein dockingterm, we recommend setting the value of exhaustivenessterm as high as possible given time constraints.

Increasing the exhaustivenessterm when using the whole protein as the binding box. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å Flexible dockingterm We now test the performance of Gninaterm for docking with flexible side chainsterm. Since receptor flexibility is only useful in the context of cross-dockingterm, we limit our tests to the cross-docking datasetterm; allowing side-chain re-arrangements would only deteriorate the performance in redockingterm given that the receptor is already in the correct conformationterm.

Flexible dockingterm is computationally more expensive than docking with a rigid receptor because of the larger number of degrees of freedom to be sampled. For this reason, we only use the default parameters carefully selected above. In order to define the side chainsterm to be treated as flexible, autobox_ligandterm is also used as flexdist_ligand and flexdist is set to 3.5 Å, which gives a reasonable representation of the protein-ligand binding siteterm [ 57 ]. Therefore, conformationsterm for all side chainsterm with at least one atom within 3.5 Å from flexdist_ligand are sampled during docking.

Out of the 7970 systems in the cross-docking datasetterm, flexible side chainsterm are not identified for 24 protein-ligand complexes (see Additional file 1 : Table T3 for details). Such systems are discarded from the following analysis of flexible dockingterm since they are equivalent to rigid docking. Additionally, 9 systems were problematic when computing RMSDsterm for the flexible residues because of connectivity issues. Disulfide bonds between cysteine residues are allowed to break during samplingterm (with a software warning), which results in a different connectivity in the output file for four systems. In the other five systems, the connectivity between flexible residues in the input and output file was found to be different and therefore they were discarded (see Additional file 1 : Table T3 for details). All nine systems with connectivity issues were removed from the analysis, resulting in a dataset of 7937 cross-docked complexes.

In order to assess the performance of flexible dockingterm compared to rigid docking, we look at RMSDterm differences between ligands docked with both methods in relation to the similarity between binding pockets of the cognate and docking target receptors. The similarity of the binding pockets is assessed via side chainsterm RMSDterm between the docking target (non-cognate receptor) and the cognate receptor, which we denote target-cognate RMSDterm. This is distinct form either the side chainterm RMSDterm between docking input and output (target-pose RMSDterm) and the side chainterm RMSDterm between cognate receptor and docking output (cognate-pose RMSDterm). The target-cognate RMSDterm is computed by finding the best match between residues in the target and cognate receptors that are within 3.5 Å from the ligand being docked.

Figure 11 a shows the difference in RMSDsterm for the ligand top pose between flexible and rigid docking versus the target-cognate RMSDterm. For higher target-cognate RMSDsterm, indicating differences in the binding pocket between the target and cognate receptor, one would expect flexible dockingterm to perform better. However, as we can see, the difference in ligand RMSDterm between flexible and rigid docking for the top pose varies widely between systems and there in no clear advantage in flexible dockingterm. The overall RMSDterm distributions for the ligand top poses (Additional file 1 : Figure S11) are fairly similar, with slightly more systems with low RMSDterm for rigid docking than flexible dockingterm.

Comparison between rigid and flexible dockingterm with the default Gninaterm parameters: ( a ) ligand RMSDterm differences between rigid and flexible dockingterm versus target-cognate side chainterm RMSDsterm, ( b ) average ligand RMSDterm difference for different 1 Å intervals of target-cognate side chainsterm RMSDterm Figure 11 b shows the average RMSDterm difference between rigid and flexible dockingterm for different 1 Å intervals of target-cognate side chainsterm RMSDsterm. For low target-cognate RMSDsterm, which correspond to a highly similar binding siteterm and therefore a situation akin to redockingterm, rigid docking seems to be advantageous on average, as expected. In the other hand, for higher target-cognate side chainsterm RMSDsterm, indicating a lower similarity between binding sitesterm, the situation is less clear. Flexible dockingterm seems to be equivalent or slightly more advantageous, on average, especially at higher target-cognate side chainsterm RMSDsterm. However, as it can be inferred from Fig. 11 a, the number of systems with target-cognate side chainsterm RMSDterm higher than 6 Å is low and therefore the apparent improvement in ligand RMSDterm for flexible dockingterm is inconclusive.

When performing flexible dockingterm, the side chainsterm identified as flexible are included in the calculation of the bounds for the box defining the search space. This results in a larger search space for flexible dockingterm compared to rigid docking, which in turn might require a higher exhaustivenessterm for better samplingterm (although by default the number of Monte Carlo steps is already proportional to the number of degrees of freedom, hence the increased computational cost of flexible dockingterm). It is also worth stressing that we used the default CNN models, which were not explicitly trained for flexible dockingterm.

Given the much higher computational cost of flexible dockingterm, the optimization of Gninaterm default parameters and training of new CNN models for this specific task is outside the scope of the present work and will be addressed in future versions of Gninaterm . However, it is clear that improvements for flexible dockingterm are system-dependent and, therefore, accounting for the increased computational cost, it is reasonable to use rigid docking as the default docking method.

CNN scoringterm performance We evaluate all of the CNN models on a subset of the data that was not seen during training to ensure that the CNN models are able to generalize to unseen protein-ligand systems. We also show the Vinaterm results for the same subset of protein-ligand systems. The CNN models’ docking performance decrease relative to the full sets when looking at the top pose, (comparing Figs. 12 to 4 ). Redockingterm Top1term performance drops from 73% to 68% on the Default Ensembleterm for the filtered set and the full set, respectively, while Vinaterm remains at about 57%. Cross-dockingterm Top1term performance increases from 37% to 42% for the Default Ensembleterm and decreases from 27% to 23% when using the Vinaterm scoring functionterm. Overall, the Default Ensembleterm still shows a strong docking performance boost when used to rescore poses rather than using the Vinaterm scoring functionterm to score poses even on protein-ligand systems not seen during training.

CNN model ensembles evaluated on the subset of proteins and ligands not present in their training datasets. Ensemble models used with the default arguments defined above. TopNterm is the percentage of targets ranked above or at N with a RMSDterm less than 2 Å Finally, we examine the importance of the output CNNscoreterm as a measure of the confidence of the prediction.

We show in Fig. 13 that poses with high CNNscoresterm are more likely to be low RMSDterm to the known binding pose. However, when the CNNscoreterm threshold is close to 1, each CNN ensemble has few poses remaining. Comparing the percentage of complexes remaining when thresholding by CNNscoreterm, we can see that the CNN models are much more confident in the poses when they are performing the redockingterm task: 87% of systems have a top pose with a score higher than 0.8. All of the CNN ensembles identify fewer poses with a high CNNscoreterm for the cross-dockingterm task: only 15% of cross-docked ligands have a pose with a score higher than 0.8 (Additional file 1 : Figure S12). In general, higher CNNscoresterm imply that a pose is more likely to have a low RMSDterm.

Thresholding the top pose by the score determined by the CNN. Top1term is the percentage of top ranked targets with a RMSDterm less than 2 Å Discussion We show that our computational docking software Gninaterm is able to outperform AutoDock Vinaterm scoringterm by using CNN models to rescore generated poses. Without using a CNN model, our software is equivalent to using the Sminaterm docking software, which is a fork of Vinaterm. Gninaterm allows the user to utilize CNN models as scoring functionsterm within the docking pipeline in a variety of ways. The various CNN scoringterm options allow the specified CNN models to replace the scoring functionterm in the samplingterm, refinementterm, and rescoringterm steps of the docking pipeline. We first establish an ensemble of built-in CNN models to be used as the default ensembleterm. This ensemble of models is selected for its docking and runtime performance. The selected ensemble, termed the Default Ensembleterm, is able to exceed the ranking performance of Vinaterm (Top1term increases from 58% to 73% and from 27% to 37% for redockingterm and cross-dockingterm, respectively) while only adding two seconds to the average compute time when utilizing GPUs. It also significantly outperforms any single model or any ensemble of identical models while being significantly faster than an ensemble of all models. The Default Ensembleterm performs almost equally well when performing refinementterm of the sampled poses rather than using the Vinaterm scoring functionterm. Refinementterm with the CNN models is not recommended as the compute cost is significant and the performance is less than simply using the CNN models to rescore the poses refined by the Vinaterm scoring functionterm.

We next derive the default parameters when using the Default Ensembleterm for docking with Gninaterm . autobox_addterm increases the amount of space around the defined binding pocket to allow more volume for samplingterm to investigate. Increases in autobox_addterm decrease the accuracy of the predicted binding pose when the precise binding pocket is known. However, a higher autobox_addterm is necessary if the true binding siteterm is not known. We find that increases in exhaustivenessterm, or the number of Monte Carlo chains run, boost the performance of the docking procedure at the cost of extra computation. We also show that our Default Ensembleterm with an exhaustivenessterm value of 8 (Top1term 73% on redockingterm and 37% on cross-dockingterm) is able to outperform the Vinaterm scoring functionterm with double the exhaustivenessterm (Top1term 58% on redockingterm and 27% on cross-dockingterm). This shows that using the Default Ensembleterm for rescoringterm is more valuable than doubling the amount of samplingterm of the docking procedure. Similarly, increasing the number of poses saved from each Monte Carlo chain, num_mc_savedterm, and the number of poses output by the docking pipeline, num_modesterm, increases the performance of the docking routine at the expense of increased computation. The value of the cnn_rotationterm·var and the value of min_rmsd_filterterm·var do not seem to alter the performance of the docking pipeline. The default arguments for Gninaterm when the binding pocket is explicitly defined are: autobox_addterm (4), exhaustivenessterm (8), num_mc_savedterm (50), num_modesterm (9), min_rmsd_filterterm·var (1.0), and cnn_rotationterm·var (0).

However, when the exact binding pocket is not known and the whole protein is used as the defined binding pocket we see that exhaustivenessterm has a much greater impact on performance. We see that the Default Ensembleterm with exhaustivenessterm 16 (Top1term 43% on redockingterm and 20% on cross-dockingterm) is able to outperform the Vinaterm scoring functionterm even when the exhaustivenessterm is quadrupled to 64 (Top1term 38% on redockingterm and 16% on cross-dockingterm). Again, this shows the importance of using the Default Ensembleterm for rescoringterm rather than increasing exhaustivenessterm with the Vinaterm scoring functionterm. The Default Ensembleterm still shows docking performance improvements with increasing exhaustivenessterm on both redockingterm and cross-dockingterm when the exact binding pocket is unknown. We therefore recommend the largest value of exhaustivenessterm that can be used given time constraints when performing whole protein dockingterm.

We tested the impact of performing cross-dockingterm with flexible side chainsterm (flexible dockingterm). For high binding pocket similarity, flexible dockingterm resulted in a slight deterioration of average ligand top pose RMSDsterm, as expected. However, for low binding pocket similarity there is no clear advantage for flexible dockingterm, whose success is very much system-dependent. In light of this and given the much higher computational cost, rigid docking remains the most suitable default docking procedure.

Finally, we evaluate the ability of the CNN ensembles to score ligand conformationsterm. In order to ensure that our CNN models are generalizing to unseen protein-ligand complexes, we filter the redockingterm and cross-dockingterm benchmark datasets to only include protein-ligand pairs that were not seen during training of the CNNs. We show that our CNN model ensembles are able to outperform the Vinaterm scoring functionterm. The CNN models are able to generalize to unseen examples and properly score the ligand conformationsterm such that the low RMSD posesterm are ranked higher more often than when using the Vinaterm scoring functionterm. The score output can provide a probability of a pose being less than 2 Å from the binding pose. When the CNN outputs a score greater than 0.8 during cross-dockingterm there is at least a 56% probability that the pose is less than 2 Å RMSDterm from the correct pose. If redockingterm is performed, then this probability is 79%. The score output by the CNN models can be used as an indicator of the confidence in the quality of the generated ligand conformationterm; however, particularly when cross-dockingterm, high scoringterm poses are less common (Fig. 13 b).

Gninaterm demonstrates significant improvements over a popular empirical scoring functionterm·def, but many challenges remain. The failure of using gradients from the CNN scoringterm to meaningfully improve docking results points to the need to train new models specifically for this task. Such models, by learning a smoother energy surface than a classical scoring functionterm, may significantly reduce the need for extensive samplingterm and make full CNN docking more computationally tractable. Additionally, new models trained specifically for the flexible dockingterm task would likely improve performance in this area. Gninaterm 1.0 provides a solid framework for these and other improvements. We look forward to receiving contributions and feedback from the community to further enhance the software in future releases as part of our open development processterm.

Supplementary Information Additional file 1: Figure S1 : Analyzing the effect on docking performance when downsampling the cross-docking datasetterm to include a fraction of the protein-ligand pairs per pocket. Figure S2 : Comparison of the RMSDterm(Å) of the top 3 poses output by Gninaterm with no CNN in the docking pipeline and Sminaterm. Figure S3 : Comparison of the minimum and maximum RMSDterm(Å) poses output by Gninaterm with no CNN in the docking pipeline and Sminaterm. Figure S4 : Cross-dockingterm results using a defined binding pocket. Figure S5 : Evaluating different values of cnn emp weight on docking performance when using the Default Ensembleterm. Figure S6 : Time to perform one docking run when using the Default Ensembleterm for “rescore” or refine” in comparison to only using the Vinaterm scoring functionterm. Figure S7 : Evaluating the effect on docking performance when the value of autobox add is changed while using the Default Ensembleterm for rescoringterm. Figure S8 : Evaluating the effect on docking performance when the value of cnn rotation is changed while using the Default Ensembleterm for rescoringterm. Figure S9 : Evaluating the effect on docking performance when the value of min rmsdterm filter is changed while using the Default Ensembleterm for rescoringterm on both the redockingterm and cross-docking datasetsterm. Figure S10 : Cross-dockingterm results using the whole protein as the defined binding pocket. Figure S1 : Ligand RMSDterm distributions for the top pose in the cross-docking datasetterm, for both flexible and rigid docking. Figure S12 : Thresholding the cross-dockingterm results by CNNscoreterm and evaluating Top1term(%) per pocket. A pose is retained if the CNN score is greater than the value on the x-axis. Grey cells indicate that no poses are left in the pocket. Table S1 : Optimal Model Ensemble Selection. Performance given by Top1term, the percent of systems with RMSDterm less than 2 Å from the top pose to the known binding pose. Table S2 : Average time to dock one protein-ligand system from the filtered PDBbind core set v.2016. Comparing runtime when GPU is used to when no GPU is used for docking. Table S3 : Pocket, ligand and receptor identifiers for the systems excluded from the analysis of flexible dockingterm, together with the reason for exclusion.

Acknowledgements The authors thank Monica Dayao, Rosalie Nolen, and Jonathan King for their comments during the preparation of the manuscript. RM thanks Philip Biggin, Andrew Anighoro and Irfan Alibay for fruitful discussions and support. We also thank Zelda, Lily, and Eddie for their canine support.

Author contributions All authors contributed to the development and evaluation of the software. All authors assisted in the preparation of this manuscript. All authors read and approved the final manuscript.

Funding This work is supported by R01GM108340 from the National Institute of General Medical Sciences and is supported in part by the University of Pittsburgh Center for Research Computing through the resources provided. RM is supported by funding from the Biotechnology and Biological Sciences Research Council (BBSRC) National Productivity Investment Fund (NPIF) [BB/S50760X/1] and Evotec (UK) via the Interdisciplinary Biosciences DTP at the University of Oxford [BB/MO11224/1] and was supported by the Google Summer of Code 2019 program.

Availability of data and materials Project name: Gninaterm . Project home page: https://github.com/gninaterm/gninaterm . Operating systems: Linux (Docker container available). Programming language : C++, CUDA. Other requirements: CUDA, Open Babel 3. License: GPL2/Apache License. Any restrictions to use by non-academics: None. All data and scripts used in the creation of this manuscript are available at https://github.com/dkoes/GNINA-1.0 . Source code, scripts, and models are available via the project homepage, https://github.com/gninaterm .All data and scripts used in the creation of this manuscript are available at https://github.com/dkoes/GNINA-1.0 . Source code, scripts, and models are available via the project homepage, https://github.com/gninaterm .

Declarations Competing interests The authors declare that they have no competing interests.

Footnotes References Associated Data Supplementary Materials Additional file 1: Figure S1 : Analyzing the effect on docking performance when downsampling the cross-docking datasetterm to include a fraction of the protein-ligand pairs per pocket. Figure S2 : Comparison of the RMSDterm(Å) of the top 3 poses output by Gninaterm with no CNN in the docking pipeline and Sminaterm. Figure S3 : Comparison of the minimum and maximum RMSDterm(Å) poses output by Gninaterm with no CNN in the docking pipeline and Sminaterm. Figure S4 : Cross-dockingterm results using a defined binding pocket. Figure S5 : Evaluating different values of cnn emp weight on docking performance when using the Default Ensembleterm. Figure S6 : Time to perform one docking run when using the Default Ensembleterm for “rescore” or refine” in comparison to only using the Vinaterm scoring functionterm. Figure S7 : Evaluating the effect on docking performance when the value of autobox add is changed while using the Default Ensembleterm for rescoringterm. Figure S8 : Evaluating the effect on docking performance when the value of cnn rotation is changed while using the Default Ensembleterm for rescoringterm. Figure S9 : Evaluating the effect on docking performance when the value of min rmsdterm filter is changed while using the Default Ensembleterm for rescoringterm on both the redockingterm and cross-docking datasetsterm. Figure S10 : Cross-dockingterm results using the whole protein as the defined binding pocket. Figure S1 : Ligand RMSDterm distributions for the top pose in the cross-docking datasetterm, for both flexible and rigid docking. Figure S12 : Thresholding the cross-dockingterm results by CNNscoreterm and evaluating Top1term(%) per pocket. A pose is retained if the CNN score is greater than the value on the x-axis. Grey cells indicate that no poses are left in the pocket. Table S1 : Optimal Model Ensemble Selection. Performance given by Top1term, the percent of systems with RMSDterm less than 2 Å from the top pose to the known binding pose. Table S2 : Average time to dock one protein-ligand system from the filtered PDBbind core set v.2016. Comparing runtime when GPU is used to when no GPU is used for docking. Table S3 : Pocket, ligand and receptor identifiers for the systems excluded from the analysis of flexible dockingterm, together with the reason for exclusion.

Data Availability Statement Project name: Gninaterm . Project home page: https://github.com/gninaterm/gninaterm . Operating systems: Linux (Docker container available). Programming language : C++, CUDA. Other requirements: CUDA, Open Babel 3. License: GPL2/Apache License. Any restrictions to use by non-academics: None. All data and scripts used in the creation of this manuscript are available at https://github.com/dkoes/GNINA-1.0 . Source code, scripts, and models are available via the project homepage, https://github.com/gninaterm .All data and scripts used in the creation of this manuscript are available at https://github.com/dkoes/GNINA-1.0 . Source code, scripts, and models are available via the project homepage, https://github.com/gninaterm .

Interpretive notes.
• Highlighted spans are tagged entities: persName (author), title (venue), placeName (place), date (year), and term (a key concept: domain / ai / method).
• Eponymous or retrospective terms (e.g. “Nash equilibrium”, “segregation”) do not appear in the original source and so are not highlighted — a deliberate choice (see Report 4).
• Some entries begin with a word in capitals. EVIDENCE CORRECTED means the finding still stands and it was our quotation that was wrong — it has been replaced. RETRACTED means the entry itself was wrong; it stays on the page, marked, with its reason, rather than being deleted. WITHDRAWN AND REPLACED means a corrected version of it appears in the entries below. Each mark carries its own reason, because the reasons differ from one entry to the next. An entry we have WITHDRAWN is removed from this page and kept in the record, with its reason. A line reading Audit and a date is a later re-reading of the entry against its whole sentence: DOUBTFUL means it was kept, and the reason says what is loose about it.
• Quotation marks inside the tagger's sentence. Where a tag is the tagger's own sentence, a phrase in quotation marks inside it is borrowed from the paper — the tagger's wording around it is not. The paper's own sentence is the evidence quote shown on the same row, so the borrowing can be checked against the thing borrowed from without leaving this page. Nothing inside quotation marks anywhere on this page is ours: if it is quoted, it is the paper's. Whose words a concept carries. A concept entry records a term the paper itself uses, so the term, the sense given for it, and its evidence are the paper's own words, quoted where the paper fixes them. This is the opposite of a sense entry in the tag table, which is the tagger's sentence about how the paper uses a term. Where a concept entry could not be grounded in the paper's words, the entry says so on its own row.
• Counts: 1 work · 1 date.
Meta-Tagging Project · record mcnutt2021-gnina-molecular-docking-deep-learning.
© 2026 Shir Sivroni