def __init__()

in source/sagemaker/sagemaker_graph_fraud_detection/dgl_fraud_detection/model/mxnet.py [0:0]


    def __init__(self, g, in_size, hidden_size, out_size, n_layers, embedding_size, ctx):
        super(HeteroRGCN, self).__init__()
        self.g = g
        self.ctx = ctx

        # Use trainable node embeddings as featureless inputs for all non target node types.
        with self.name_scope():
            self.embed_dict = {ntype: gluon.nn.Embedding(g.number_of_nodes(ntype), embedding_size)
                               for ntype in g.ntypes if ntype != 'target'}

            for child in self.embed_dict.values():
                self.register_child(child)

            # create layers
            # input layer
            self.layers = gluon.nn.Sequential()
            self.layers.add(HeteroRGCNLayer(embedding_size, hidden_size, g.etypes))
            # hidden layers
            for i in range(n_layers - 1):
                self.layers.add(HeteroRGCNLayer(hidden_size, hidden_size, g.etypes))
            # output layer
            # self.layers.add(HeteroRGCNLayer(hidden_size, out_size, g.etypes))
            self.layers.add(gluon.nn.Dense(out_size))