neural-structured-learning  by tensorflow

TensorFlow library for training neural networks with structured signals

Created 6 years ago
1,008 stars

Top 37.1% on SourcePulse

GitHubView on GitHub
Project Summary

Neural Structured Learning (NSL) is a TensorFlow framework for training neural networks by incorporating structured signals, such as explicit graph relationships or implicit adversarial perturbations. It aims to improve model accuracy, especially with limited labeled data, and enhance robustness against adversarial attacks. The target audience includes researchers and developers working with graph data, semi-supervised learning, or adversarial robustness.

How It Works

NSL integrates structured signals directly into the neural network training process. It provides Keras APIs and lower-level TensorFlow operations to handle explicit structures (like graphs) and implicit structures (like adversarial perturbations). This approach allows leveraging both labeled and unlabeled data, enhancing generalization and robustness without altering the serving/inference workflow.

Quick Start & Requirements

  • Install via pip: pip install neural-structured-learning
  • Requires TensorFlow 1.15+ or TensorFlow 2.x (excluding v2.1).
  • Tutorials and examples are available on YouTube and Colab.

Highlighted Details

  • Generalizes to Neural Graph Learning and Adversarial Learning.
  • Supports various neural network architectures (feed-forward, CNN, RNN).
  • Can be extended to unsupervised learning scenarios.
  • Inference performance remains unaffected by structured signal integration during training.

Maintenance & Community

Contributions are welcomed via case studies, code improvements, and new algorithms. Pointers to external repositories and academic publications using NSL are featured. Feedback is collected via a form, and issues/bugs are managed through GitHub issues. Questions can be directed to Stack Overflow with the "nsl" tag.

Licensing & Compatibility

The repository does not explicitly state a license in the provided README. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The framework has a known incompatibility with TensorFlow v2.1. The README does not detail specific limitations regarding supported graph types, adversarial attack methods, or performance benchmarks.

Health Check
Last Commit

7 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
1 stars in the last 30 days

Explore Similar Projects

Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Edward Sun Edward Sun(Research Scientist at Meta Superintelligence Lab), and
5 more.

attorch by BobMcDear

0.2%
576
PyTorch nn module subset, implemented in Python using Triton
Created 2 years ago
Updated 1 month ago
Feedback? Help us improve.