@@ -205,79 +205,5 @@ def run_cora():
205
205
print ("Validation F1:" , f1_score (labels [val ], val_output .data .numpy ().argmax (axis = 1 ), average = "micro" ))
206
206
print ("Average batch time:" , np .mean (times ))
207
207
208
- # =============================================================================
209
- # def load_pubmed():
210
- # #hardcoded for simplicity...
211
- # num_nodes = 19717
212
- # num_feats = 500
213
- # feat_data = np.zeros((num_nodes, num_feats))
214
- # labels = np.empty((num_nodes, 1), dtype=np.int64)
215
- # node_map = {}
216
- # with open("pubmed-data/Pubmed-Diabetes.NODE.paper.tab") as fp:
217
- # fp.readline()
218
- # feat_map = {entry.split(":")[1]:i-1 for i,entry in enumerate(fp.readline().split("\t"))}
219
- # for i, line in enumerate(fp):
220
- # info = line.split("\t")
221
- # node_map[info[0]] = i
222
- # labels[i] = int(info[1].split("=")[1])-1
223
- # for word_info in info[2:-1]:
224
- # word_info = word_info.split("=")
225
- # feat_data[i][feat_map[word_info[0]]] = float(word_info[1])
226
- # adj_lists = defaultdict(set)
227
- # with open("pubmed-data/Pubmed-Diabetes.DIRECTED.cites.tab") as fp:
228
- # fp.readline()
229
- # fp.readline()
230
- # for line in fp:
231
- # info = line.strip().split("\t")
232
- # paper1 = node_map[info[1].split(":")[1]]
233
- # paper2 = node_map[info[-1].split(":")[1]]
234
- # adj_lists[paper1].add(paper2)
235
- # adj_lists[paper2].add(paper1)
236
- # return feat_data, labels, adj_lists
237
- #
238
- # def run_pubmed():
239
- # np.random.seed(1)
240
- # random.seed(1)
241
- # num_nodes = 19717
242
- # feat_data, labels, adj_lists = load_pubmed()
243
- # features = nn.Embedding(19717, 500)
244
- # features.weight = nn.Parameter(torch.FloatTensor(feat_data), requires_grad=False)
245
- # # features.cuda()
246
- #
247
- # agg1 = MeanAggregator(features, cuda=True)
248
- # enc1 = Encoder(features, 500, 128, adj_lists, agg1, gcn=True, cuda=False)
249
- # agg2 = MeanAggregator(lambda nodes : enc1(nodes).t(), cuda=False)
250
- # enc2 = Encoder(lambda nodes : enc1(nodes).t(), enc1.embed_dim, 128, adj_lists, agg2,
251
- # base_model=enc1, gcn=True, cuda=False)
252
- # enc1.num_samples = 10
253
- # enc2.num_samples = 25
254
- #
255
- # graphsage = SupervisedGraphSage(3, enc2)
256
- # # graphsage.cuda()
257
- # rand_indices = np.random.permutation(num_nodes)
258
- # test = rand_indices[:1000]
259
- # val = rand_indices[1000:1500]
260
- # train = list(rand_indices[1500:])
261
- #
262
- # optimizer = torch.optim.SGD(filter(lambda p : p.requires_grad, graphsage.parameters()), lr=0.7)
263
- # times = []
264
- # for batch in range(200):
265
- # batch_nodes = train[:1024]
266
- # random.shuffle(train)
267
- # start_time = time.time()
268
- # optimizer.zero_grad()
269
- # loss = graphsage.loss(batch_nodes,
270
- # Variable(torch.LongTensor(labels[np.array(batch_nodes)])))
271
- # loss.backward()
272
- # optimizer.step()
273
- # end_time = time.time()
274
- # times.append(end_time-start_time)
275
- # print (batch, loss.data[0])
276
- #
277
- # val_output = graphsage.forward(val)
278
- # print ("Validation F1:", f1_score(labels[val], val_output.data.numpy().argmax(axis=1), average="micro"))
279
- # print ("Average batch time:", np.mean(times))
280
- # =============================================================================
281
-
282
208
if __name__ == "__main__" :
283
209
run_cora ()
0 commit comments