CoauthorPhysicsDataset

class dgl.data.CoauthorPhysicsDataset(raw_dir=None, force_reload=False, verbose=False, transform=None)[source]

Bases: GNNBenchmarkDataset

β€˜Physics’ part of the Coauthor dataset for node classification task.

Coauthor CS and Coauthor Physics are co-authorship graphs based on the Microsoft Academic Graph from the KDD Cup 2016 challenge. Here, nodes are authors, that are connected by an edge if they co-authored a paper; node features represent paper keywords for each author’s papers, and class labels indicate most active fields of study for each author.

Reference: https://github.com/shchur/gnn-benchmark#datasets

Statistics

  • Nodes: 34,493

  • Edges: 495,924 (note that the original dataset has 247,962 edges but DGL adds the reverse edges and remove the duplicates, hence with a different number)

  • Number of classes: 5

  • Node feature size: 8,415

Parameters:
  • raw_dir (str) – Raw file directory to download/contains the input data directory. Default: ~/.dgl/

  • force_reload (bool) – Whether to reload the dataset. Default: False

  • verbose (bool) – Whether to print out progress information. Default: True.

  • transform (callable, optional) – A transform that takes in a DGLGraph object and returns a transformed version. The DGLGraph object will be transformed before every access.

num_classes

Number of classes for each node.

Type:

int

Examples

>>> data = CoauthorPhysicsDataset()
>>> g = data[0]
>>> num_class = data.num_classes
>>> feat = g.ndata['feat']  # get node feature
>>> label = g.ndata['label']  # get node labels
__getitem__(idx)

Get graph by index

Parameters:

idx (int) – Item index

Returns:

The graph contains:

  • ndata['feat']: node features

  • ndata['label']: node labels

Return type:

dgl.DGLGraph

__len__()

Number of graphs in the dataset