|
import os |
|
import torch |
|
import torch.nn.functional as F |
|
|
|
from tqdm import tqdm |
|
|
|
from torch_geometric.loader import NeighborLoader |
|
from torch.optim.lr_scheduler import ReduceLROnPlateau |
|
from torch_geometric.nn import MessagePassing, SAGEConv |
|
from ogb.nodeproppred import Evaluator, PygNodePropPredDataset |
|
import pandas as pd |
|
import numpy as np |
|
|
|
|
|
def get_score(submission_folder = "../env"): |
|
submission_path = os.path.join(submission_folder, "submission.csv") |
|
submission = pd.read_csv(submission_path) |
|
target_dataset = 'ogbn-arxiv' |
|
|
|
dataset = PygNodePropPredDataset(name=target_dataset, root='networks') |
|
data = dataset[0] |
|
split_idx = dataset.get_idx_split() |
|
|
|
test_idx = split_idx['test'] |
|
|
|
|
|
evaluator = Evaluator(name=target_dataset) |
|
y_true = data.y.cpu() |
|
|
|
submission = torch.tensor(np.array(submission)) |
|
|
|
test_acc = evaluator.eval({ |
|
'y_true': y_true[test_idx], |
|
'y_pred': submission, |
|
})['acc'] |
|
|
|
return test_acc |
|
|
|
if __name__ == "__main__": |
|
print(get_score()) |