Skip to main content

Neural Structured Learning is an open-source TensorFlow framework to train neural networks with structured signals

Project description

Neural Structured Learning (NSL) is a new learning paradigm to train neural
networks by leveraging structured signals in addition to feature inputs.
Structure can be explicit as represented by a graph or implicit as induced
by adversarial perturbation.

Structured signals are commonly used to represent relations or similarity
among samples that may be labeled or unlabeled. Leveraging these signals
during neural network training harnesses both labeled and unlabeled data,
which can improve model accuracy, particularly when the amount of labeled
data is relatively small. Additionally, models trained with samples that are
generated by adversarial perturbation have been shown to be robust against
malicious attacks, which are designed to mislead a model's prediction or
classification.

NSL generalizes to Neural Graph Learning as well as to Adversarial Learning.
The NSL framework in TensorFlow provides the following easy-to-use APIs and
tools for developers to train models with structured signals:

* Keras APIs to enable training with graphs (explicit structure) and
adversarial perturbations (implicit structure).

* TF ops and functions to enable training with structure when using
lower-level TensorFlow APIs.

* Tools to build graphs and construct graph inputs for training.

The NSL framework is designed to be flexible and can be used to train any
kind of neural network. For example, feed-forward, convolution, and
recurrent neural networks can all be trained using the NSL framework. In
addition to supervised and semi-supervised learning (a low amount of
supervision), NSL can in theory be generalized to unsupervised learning.
Incorporating structured signals is done only during training, so the
performance of the serving/inference workflow remains unchanged.

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 neural-structured-learning, version 1.3.1
Filename, size File type Python version Upload date Hashes
Filename, size neural_structured_learning-1.3.1-py2.py3-none-any.whl (120.6 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size neural-structured-learning-1.3.1.tar.gz (92.1 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