encoder
Encoder module for PrxteinMPNN.
This module contains the EncoderLayer and Encoder classes.
-
class prxteinmpnn.model.encoder.EncoderLayer(node_features, edge_features, hidden_features, *, key)[source]
Bases: Module
A single encoder layer for the ProteinMPNN model.
- Parameters:
node_features (int)
edge_features (int)
hidden_features (int)
key (PRNGKeyArray)
-
node_features_dim:
int
-
edge_features_dim:
int
-
edge_message_mlp:
MLP
-
norm1:
LayerNorm
-
dense:
MLP
-
norm2:
LayerNorm
-
edge_update_mlp:
MLP
-
norm3:
LayerNorm
-
_get_mlp_input(h, e, neighbor_indices)[source]
Return the input tensor [h_i, e_ij, h_j] for edge_message_mlp.
- Return type:
Array
- Parameters:
h (Int[Array, 'num_atoms num_features'])
e (Float[Array, 'num_atoms num_neighbors num_features'])
neighbor_indices (Int[Array, 'num_atoms num_neighbors'])
-
class prxteinmpnn.model.encoder.Encoder(node_features, edge_features, hidden_features, num_layers=3, *, key)[source]
Bases: Module
The complete encoder module for ProteinMPNN.
- Parameters:
node_features (int)
edge_features (int)
hidden_features (int)
num_layers (int)
key (PRNGKeyArray)
-
node_feature_dim:
int
-
layers:
tuple[EncoderLayer, ...]