scientific-skills/torchdrug/references/models_architectures.md
TorchDrug provides a comprehensive collection of pre-built model architectures for various graph-based learning tasks. This reference catalogs all available models with their characteristics, use cases, and implementation details.
Type: Spatial message passing Paper: Semi-Supervised Classification with Graph Convolutional Networks (Kipf & Welling, 2017)
Characteristics:
Best For:
Parameters:
input_dim: Node feature dimensionhidden_dims: List of hidden layer dimensionsedge_input_dim: Edge feature dimension (optional)batch_norm: Apply batch normalizationactivation: Activation function (relu, elu, etc.)dropout: Dropout rateUse Cases:
Type: Attention-based message passing Paper: Graph Attention Networks (Veličković et al., 2018)
Characteristics:
Best For:
Parameters:
input_dim, hidden_dims: Standard dimensionsnum_heads: Number of attention headsnegative_slope: LeakyReLU slopeconcat: Concatenate or average multi-head outputsUse Cases:
Type: Maximally powerful message passing Paper: How Powerful are Graph Neural Networks? (Xu et al., 2019)
Characteristics:
Best For:
Parameters:
input_dim, hidden_dims: Standard dimensionsedge_input_dim: Include edge featuresbatch_norm: Typically use truereadout: Graph pooling ("sum", "mean", "max")eps: Learnable or fixed epsilonUse Cases:
Type: Multi-relational message passing Paper: Modeling Relational Data with Graph Convolutional Networks (Schlichtkrull et al., 2018)
Characteristics:
Best For:
Parameters:
num_relation: Number of relation typeshidden_dims: Layer dimensionsnum_bases: Basis decomposition (reduce parameters)Use Cases:
Type: General message passing framework Paper: Neural Message Passing for Quantum Chemistry (Gilmer et al., 2017)
Characteristics:
Best For:
Parameters:
input_dim, hidden_dim: Feature dimensionsedge_input_dim: Edge feature dimensionnum_layer: Message passing iterationsnum_mlp_layer: MLP layers in message functionUse Cases:
Type: 3D geometry-aware convolution Paper: SchNet: A continuous-filter convolutional neural network (Schütt et al., 2017)
Characteristics:
Best For:
Parameters:
input_dim: Atom featureshidden_dims: Layer dimensionsnum_gaussian: RBF basis functions for distancescutoff: Interaction cutoff distanceUse Cases:
Type: Spectral convolution Paper: Convolutional Neural Networks on Graphs (Defferrard et al., 2016)
Characteristics:
Best For:
Parameters:
input_dim, hidden_dims: Dimensionsnum_cheb: Order of Chebyshev polynomialUse Cases:
Type: Molecular fingerprint learning Paper: Convolutional Networks on Graphs for Learning Molecular Fingerprints (Duvenaud et al., 2015)
Characteristics:
Best For:
Parameters:
input_dim, output_dim: Feature dimensionshidden_dims: Layer dimensionsnum_layer: Circular convolution depthUse Cases:
Type: Protein structure encoder Paper: Protein Representation Learning by Geometric Structure Pretraining (Zhang et al., 2023)
Characteristics:
Best For:
Parameters:
input_dim: Residue featureshidden_dims: Layer dimensionsnum_relation: Edge types (sequence, radius, KNN)edge_input_dim: Geometric features (distances, angles)batch_norm: Typically trueUse Cases:
Type: Protein language model (transformer) Paper: Biological structure and function emerge from scaling unsupervised learning (Rives et al., 2021)
Characteristics:
Best For:
Variants:
Use Cases:
Type: Masked language model for proteins
Characteristics:
Use Cases:
Type: Convolutional networks for sequences
Characteristics:
Use Cases:
Type: Recurrent network for sequences
Characteristics:
Use Cases:
Type: Translation-based embedding Paper: Translating Embeddings for Modeling Multi-relational Data (Bordes et al., 2013)
Characteristics:
Best For:
Parameters:
num_entity, num_relation: Graph sizeembedding_dim: Embedding dimensions (typically 50-500)Type: Rotation in complex space Paper: RotatE: Knowledge Graph Embedding by Relational Rotation in Complex Space (Sun et al., 2019)
Characteristics:
Best For:
Parameters:
num_entity, num_relation: Graph sizeembedding_dim: Must be even (complex embeddings)max_score: Score clipping valueType: Bilinear model
Characteristics:
Best For:
Type: Complex-valued embeddings
Characteristics:
Best For:
Type: Enhanced embedding model
Characteristics:
Best For:
Type: Normalizing flow for molecules
Characteristics:
Best For:
Parameters:
input_dim: Atom featureshidden_dims: Coupling layersnum_flow: Number of flow transformationsUse Cases:
Type: Contrastive learning
Characteristics:
Use Cases:
Type: Multi-view contrastive learning for proteins
Characteristics:
Use Cases:
Molecular Property Prediction:
Protein Tasks:
Knowledge Graphs:
Molecular Generation:
Retrosynthesis:
Small (< 1k):
Medium (1k-100k):
Large (> 100k):
Low:
Medium:
High: