core.models.gemnet.layers.embedding_block#
Copyright (c) Meta, Inc. and its affiliates.
This source code is licensed under the MIT license found in the LICENSE file in the root directory of this source tree.
Classes#
Initial atom embeddings based on the atom type |
|
Edge embedding based on the concatenation of atom embeddings and subsequent dense layer. |
Module Contents#
- class core.models.gemnet.layers.embedding_block.AtomEmbedding(emb_size, num_elements: int)#
Bases:
torch.nn.Module
Initial atom embeddings based on the atom type
- Parameters:
emb_size (int) – Atom embeddings size
- emb_size#
- embeddings#
- forward(Z)#
- Returns:
h – Atom embeddings.
- Return type:
torch.Tensor, shape=(nAtoms, emb_size)
- class core.models.gemnet.layers.embedding_block.EdgeEmbedding(atom_features, edge_features, out_features, activation=None)#
Bases:
torch.nn.Module
Edge embedding based on the concatenation of atom embeddings and subsequent dense layer.
- Parameters:
emb_size (int) – Embedding size after the dense layer.
activation (str) – Activation function used in the dense layer.
- dense#
- forward(h, m_rbf, idx_s, idx_t)#
- Parameters:
h
m_rbf (shape (nEdges, nFeatures)) – in embedding block: m_rbf = rbf ; In interaction block: m_rbf = m_st
idx_s
idx_t
- Returns:
m_st – Edge embeddings.
- Return type:
torch.Tensor, shape=(nEdges, emb_size)