jocpae/VesselGraph

dependency on official ogb

FeynmanDNA opened this issue · 2 comments

Hi, i noticed in the ./source/ you guys have your own folder of ogb.

I am wondering when the baseline_models code calls the ogb.*, is it calling from the official ogb or from your own source/ogb?

for example in source/baseline_models/node_classification/gnn/gnn.py

sys.path.append(str(Path(os.path.abspath(__file__)).parents[3]))

import argparse

import torch
import torch.nn.functional as F

import torch_geometric.transforms as T
from torch_geometric.nn import GCNConv, SAGEConv

from ogb.nodeproppred import PygNodePropPredDataset, Evaluator

Also ogb is not listed in the requirements.txt file, so is the official ogb a dependency?

Hi @FeynmanDNA,

Thank you very much for your question. We are always happy when people are utilizing VesselGraph and are happy to provide more information, if things are not completely clear. You are absolutely correct, we included a modified copy of the official OGB repository in our VesselGraph repository for the following reasons:

  1. Currently, our graphs are not officially included in the OGB dataset. Thus, we cannot use the original OGB package to load our graphs or train on our graphs without modifications. If you would like to add further graphs, this is always possible by describing your graphs in the make_master_file.py.

  2. Our "custom copy" allows us to have a working state, irrespective of further modifications made by the OGB team. The main changes with respect to the official repository are modifications of the make_master_file.py and the resulting csvs, for both link prediction and node classification.

We do not recommend having the OGB package in the requirements, as having both (our OGB and the original OGB packages) will result in version clashes. So having no dependency to the official OGB package is more or less as design choice intentionally made by the team of VesselGraph.

I hope I was able to clear things up, if you have any further questions, we are happy to help.

Thank you for your prompt reply an the clarification!

I have added a note on the README in another PR #7 , hope it helps