Complete Documentation

Complete documentation of the entire GNNSubNet package can be found here.

Please see the documentation index page for tutorials and quick start guides.

GNN-SubNet: Disease Subnetwork Detection with Explainable Graph Neural Networks.

Documentation of the GNNSubNet module

class GNNSubNet.GNNSubNet.GNNSubNet(location=None, ppi=None, features=None, target=None, cutoff=950, normalize=True)[source]

The class GNNSubSet represents the main user API for the GNN-SubNet package.

download_TCGA(save_to_disk=False) None[source]

Warning: Currently not implemented!

Download some sample TCGA data. Running this function will download approximately 100MB of data.

explain(n_runs=1, classifier='graphcnn', communities=True)[source]
explain_chebconv(n_runs=10, explainer_lambda=0.8, communities=True, save_to_disk=False)[source]

Explain the model’s results.

explain_graphcheb(n_runs=10, explainer_lambda=0.8, communities=True, save_to_disk=False)[source]

Explain the model’s results.

explain_graphcnn(n_runs=10, explainer_lambda=0.8, communities=True, save_to_disk=False)[source]

Explain the model’s results.

predict(gnnsubnet_test, classifier='graphcnn')[source]
predict_chebconv(gnnsubnet_test)[source]
predict_graphcheb(gnnsubnet_test)[source]
predict_graphcnn(gnnsubnet_test)[source]
summary()[source]

Print a summary for the GNNSubSet object’s current state.

train(epoch_nr=20, method='graphcnn', learning_rate=0.01)[source]
train_chebconv(epoch_nr=20, shuffle=True, weights=False)[source]

Train the GNN model on the data provided during initialisation.

train_chebnet(epoch_nr=25, shuffle=True, weights=False, hidden_channels=10, K=10, layers_nr=1, num_classes=2)[source]

train_graphcheb(epoch_nr=20, shuffle=True, weights=False, hidden_channels=7, K=5, layers_nr=2, num_classes=2)[source]

train_graphcnn(num_layers=2, num_mlp_layers=2, epoch_nr=20, shuffle=True, weights=False, graph_pooling_type='sum1', neighbor_pooling_type='sum', learning_rate=0.1)[source]

Train the GNN model on the data provided during initialisation. num_layers: number of layers in the neural networks (INCLUDING the input layer) num_mlp_layers: number of layers in mlps (EXCLUDING the input layer) graph_pooling_type: how to aggregate entire nodes in a graph (mean, average) neighbor_pooling_type: sum! how to aggregate neighbors (mean, average, or max)