Skip to content

Instantly share code, notes, and snippets.

@inwaves
Created April 20, 2022 15:06
Show Gist options
  • Save inwaves/890025fa3ed6da86dde939c08818300c to your computer and use it in GitHub Desktop.
Save inwaves/890025fa3ed6da86dde939c08818300c to your computer and use it in GitHub Desktop.
Model: GNNTransformer(
(gnn_node): GNN_node(
(node_encoder): ASTNodeEncoder(
(type_encoder): Embedding(98, 16)
(attribute_encoder): Embedding(10030, 16)
(depth_encoder): Embedding(21, 16)
)
(convs): ModuleList(
(0): GCNConv()
(1): GCNConv()
(2): GCNConv()
(3): GCNConv()
(4): GCNConv()
)
(batch_norms): ModuleList(
(0): BatchNorm1d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(1): BatchNorm1d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(2): BatchNorm1d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(3): BatchNorm1d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(4): BatchNorm1d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
)
)
(gnn2transformer): Linear(in_features=16, out_features=128, bias=True)
(transformer_encoder): TransformerNodeEncoder(
(transformer): TransformerEncoder(
(layers): ModuleList(
(0): TransformerEncoderLayer(
(self_attn): MultiheadAttention(
(out_proj): NonDynamicallyQuantizableLinear(in_features=128, out_features=128, bias=True)
)
(linear1): Linear(in_features=128, out_features=512, bias=True)
(dropout): Dropout(p=0.3, inplace=False)
(linear2): Linear(in_features=512, out_features=128, bias=True)
(norm1): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(norm2): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(dropout1): Dropout(p=0.3, inplace=False)
(dropout2): Dropout(p=0.3, inplace=False)
)
(1): TransformerEncoderLayer(
(self_attn): MultiheadAttention(
(out_proj): NonDynamicallyQuantizableLinear(in_features=128, out_features=128, bias=True)
)
(linear1): Linear(in_features=128, out_features=512, bias=True)
(dropout): Dropout(p=0.3, inplace=False)
(linear2): Linear(in_features=512, out_features=128, bias=True)
(norm1): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(norm2): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(dropout1): Dropout(p=0.3, inplace=False)
(dropout2): Dropout(p=0.3, inplace=False)
)
(2): TransformerEncoderLayer(
(self_attn): MultiheadAttention(
(out_proj): NonDynamicallyQuantizableLinear(in_features=128, out_features=128, bias=True)
)
(linear1): Linear(in_features=128, out_features=512, bias=True)
(dropout): Dropout(p=0.3, inplace=False)
(linear2): Linear(in_features=512, out_features=128, bias=True)
(norm1): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(norm2): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(dropout1): Dropout(p=0.3, inplace=False)
(dropout2): Dropout(p=0.3, inplace=False)
)
(3): TransformerEncoderLayer(
(self_attn): MultiheadAttention(
(out_proj): NonDynamicallyQuantizableLinear(in_features=128, out_features=128, bias=True)
)
(linear1): Linear(in_features=128, out_features=512, bias=True)
(dropout): Dropout(p=0.3, inplace=False)
(linear2): Linear(in_features=512, out_features=128, bias=True)
(norm1): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(norm2): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
(dropout1): Dropout(p=0.3, inplace=False)
(dropout2): Dropout(p=0.3, inplace=False)
)
)
(norm): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
)
(norm_input): LayerNorm((128,), eps=1e-05, elementwise_affine=True)
)
(masked_transformer_encoder): MaskedOnlyTransformerEncoder(
(masked_transformer): MaskedTransformerBlock(
(blocks): ModuleList()
)
)
(graph_pred_linear_list): ModuleList(
(0): Linear(in_features=128, out_features=5002, bias=True)
(1): Linear(in_features=128, out_features=5002, bias=True)
(2): Linear(in_features=128, out_features=5002, bias=True)
(3): Linear(in_features=128, out_features=5002, bias=True)
(4): Linear(in_features=128, out_features=5002, bias=True)
)
)
@inwaves
Copy link
Author

inwaves commented Apr 20, 2022

Parameters in graph prediction readout fn: 3,226,290
Parameters in transformer: 795,904
Total parameters: 4,186,418

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment