Skip to main content

Machine Learning in Complex Networks

Project description

sknet Logo

Codecov branch

The sknet project is a scikit-learn and NetworkX compatible framework for machine learning in complex networks. It provides learning algorithms for complex networks, as well as transforming methods to turn tabular data into complex networks.

It started in 2021 as a project from volunteers to help to improve the development of research on the interface between complex networks and machine learning. It main focus is to help researchers and students to develop solutions using machine learning on complex networks.

:computer: Installation

The sknet installation is available via PiPy:

pip install scikit-net

:high_brightness: Quickstart

The following code snippet shows how one can transform tabular data into a complex network and then use it to create a classifier:

from sklearn.model_selection import train_test_split
from sklean.metrics import accuracy_score
from sklearn.datasets import load_iris
from sknet.network_construction import KNNConstructor
from sknet.supervised import EaseOfAccessClassifier

X, y = load_iris(return_X_y = True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33)

# The constructor responsible for transforming the tabular data into a complex network
knn_c = KNNConstructor(k=5)

classifier = EaseOfAccessClassifier()
classifier.fit(X_train, y_train, constructor=knn_c)
y_pred = classifier.predict(X_test)
accuracy_score(y_test, y_pred)

:pencil: Documentation

We provide an extensive API documentation as well with some user guides. The documentation is available on https://tnanukem.github.io/scikit-net/

Citation

If you used the scikit-net on your research project, please cite us using the following publication:

@article{Toledo2021,
doi = {10.21105/joss.03864},
url = {https://doi.org/10.21105/joss.03864},
year = {2021},
publisher = {The Open Journal},
volume = {6},
number = {68},
pages = {3864},
author = {Tiago Toledo},
title = {sknet: A Python framework for Machine Learning in Complex Networks},
journal = {Journal of Open Source Software}
}

Project details


Download files

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

Source Distribution

scikit-net-0.0.4.tar.gz (23.7 kB view hashes)

Uploaded Source

Built Distribution

scikit_net-0.0.4-py3-none-any.whl (32.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page