Example #1
0
def test_tgcn_layer():
    """
    Testing the T-GCN Layer.
    """
    number_of_nodes = 100
    edge_per_node = 10
    in_channels = 64
    out_channels = 16

    X, edge_index = create_mock_data(number_of_nodes, edge_per_node,
                                     in_channels)
    edge_weight = create_mock_edge_weight(edge_index)

    layer = TGCN(in_channels=in_channels, out_channels=out_channels)

    H = layer(X, edge_index)

    assert H.shape == (number_of_nodes, out_channels)

    H = layer(X, edge_index, edge_weight)

    assert H.shape == (number_of_nodes, out_channels)

    H = layer(X, edge_index, edge_weight, H)

    assert H.shape == (number_of_nodes, out_channels)
Example #2
0
def test_tgcn_layer():
    """
    Testing the T-GCN Layer.
    """
    number_of_nodes = 100
    edge_per_node = 10
    in_channels = 64
    out_channels = 16

    device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
    X, edge_index = create_mock_data(number_of_nodes, edge_per_node,
                                     in_channels)
    X = X.to(device)
    edge_index = edge_index.to(device)
    edge_weight = create_mock_edge_weight(edge_index).to(device)

    layer = TGCN(in_channels=in_channels, out_channels=out_channels).to(device)

    H = layer(X, edge_index)

    assert H.shape == (number_of_nodes, out_channels)

    H = layer(X, edge_index, edge_weight)

    assert H.shape == (number_of_nodes, out_channels)

    H = layer(X, edge_index, edge_weight, H)

    assert H.shape == (number_of_nodes, out_channels)
Example #3
0
 def __init__(self, edge_index, n_agnts,n_inter,  dim_in, filters, n_phase):
     super(TempGraphNet, self).__init__()
     
     self.recurrent = TGCN(in_channels = dim_in, out_channels = filters)
     # self.recurrent = A3TGCN(in_channels = node_features, out_channels = filters, periods = 12)
     self.linear = torch.nn.Linear(filters, n_phase)
     self.n_agnts = n_agnts
     self.n_inter = n_inter
     self.filters = filters
     self.edge_index = edge_index
     self.reset_state()
Example #4
0
    def __init__(self, h, z, k):
        super(IGNNK, self).__init__()
        self.time_dimension = h
        self.hidden_dimnesion = z
        self.order = k

        self.recurrent = TGCN(h, 32).to(torch.device("cuda:0"))

        # self.recurrent = AGCRN(number_of_nodes = 64,
        #                       in_channels = h,
        #                       out_channels = 32,
        #                       K = 2,
        #                       embedding_dimensions = 4)

        self.recurrent = GCLSTM(64, 32, 1)

        self.GNN1 = D_GCN(self.time_dimension, self.hidden_dimnesion,
                          self.order)
 def __init__(self, node_features):
     super(RecurrentGCN, self).__init__()
     self.recurrent = TGCN(node_features, 32)
     self.linear = torch.nn.Linear(32, 1)