def forward(self, graph_list, node_feat, edge_feat): n2e_sp, e2e_sp, e2n_sp, subg_sp = S2VLIB.PrepareLoopyBP(graph_list) if type(node_feat) is torch.cuda.FloatTensor: n2e_sp = n2e_sp.cuda() e2e_sp = e2e_sp.cuda() e2n_sp = e2n_sp.cuda() subg_sp = subg_sp.cuda() node_feat = Variable(node_feat) edge_feat = Variable(edge_feat) n2e_sp = Variable(n2e_sp) e2e_sp = Variable(e2e_sp) e2n_sp = Variable(e2n_sp) subg_sp = Variable(subg_sp) h = self.loopy_bp(node_feat, edge_feat, n2e_sp, e2e_sp, e2n_sp, subg_sp) return h
def forward(self, graph_list, node_feat, edge_feat): n2e_sp, e2e_sp, e2n_sp, subg_sp = S2VLIB.PrepareLoopyBP(graph_list) if is_cuda_float(node_feat): n2e_sp = n2e_sp.cuda() e2e_sp = e2e_sp.cuda() e2n_sp = e2n_sp.cuda() subg_sp = subg_sp.cuda() node_feat = Variable(node_feat) if edge_feat is not None: edge_feat = Variable(edge_feat) n2e_sp = Variable(n2e_sp) e2e_sp = Variable(e2e_sp) e2n_sp = Variable(e2n_sp) subg_sp = Variable(subg_sp) h = self.loopy_bp(node_feat, edge_feat, n2e_sp, e2e_sp, e2n_sp, subg_sp) return h