Skip to main content

Search-Convolutional Neural Networks

Project description

SCNN
====

An implementation of search-convolutional neural networks [1], a new model for graph-structured data.

Installation
------------
Using pip:

pip install scnn

Usage
-----

import numpy as np
from scnn import SCNN, data
from sklearn.metrics import f1_score

# Parse the cora dataset and return an adjacency matrix, a design matrix, and a 1-hot label matrix
A, X, Y = data.parse_cora()

# Construct array indices for the training, validation, and test sets
n_nodes = A.shape[0]
indices = np.arange(n_nodes)
train_indices = indices[:n_nodes // 3]
valid_indices = indices[n_nodes // 3:(2* n_nodes) // 3]
test_indices = indices[(2* n_nodes) // 3:]

# Instantiate an SCNN and fit it to cora
scnn = SCNN()
scnn.fit(A, X, Y, train_indices=train_indices, valid_indices=valid_indices)

# Predict labels for the test set
preds = scnn.predict(X, test_indices)
actuals = np.argmax(Y[test_indices,:], axis=1)

# Display performance
print 'F score: %.4f' % (f1_score(actuals, preds))

References
----------

[1] http://arxiv.org/abs/1511.02136

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for scnn, version 1.3.1
Filename, size File type Python version Upload date Hashes
Filename, size scnn-1.3.1.tar.gz (20.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page