Home

Awesome

:warning: DISCONTINUATION OF PROJECT - This project will no longer be maintained by Intel. This project has been identified as having known security escapes. Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project. Intel no longer accepts patches to this project.

<p align="center"> <br> <img src="https://raw.githubusercontent.com/IntelLabs/nlp-architect/master/docs-source/source/assets/nlp_architect_logo_trans.png" width="400"/> <br> <p> <h2 align="center"> A Deep Learning NLP/NLU library by <a href="https://www.intel.ai/research/">IntelĀ® AI Lab</a> </h2> <p align="center"> <a href="https://github.com/IntelLabs/nlp-architect/blob/master/LICENSE"> <img alt="GitHub" src="https://img.shields.io/github/license/IntelLabs/nlp-architect.svg?color=blue&style=flat-square"> </a> <a href="https://intellabs.github.io/nlp-architect"> <img alt="Website" src="https://img.shields.io/website/http/intellabs.github.io/nlp-architect.svg?down_color=red&down_message=offline&style=flat-square&up_message=online"> </a> <a href="https://github.com/IntelLabs/nlp-architect/releases"> <img alt="GitHub release" src="https://img.shields.io/github/release/IntelLabs/nlp-architect.svg?style=flat-square"> </a> <a href="https://pepy.tech/project/nlp-architect"> <img src="https://pepy.tech/badge/nlp-architect"> </a> </p> <h4 align="center"> <a href="#overview">Overview</a> | <a href="#models">Models</a> | <a href="#installing-nlp-architect">Installation</a> | <a href="https://github.com/IntelLabs/nlp-architect/tree/master/examples">Examples</a> <a href="https://intellabs.github.io/nlp-architect/"></a> | <a href="https://intellabs.github.io/nlp-architect">Documentation</a> | <a href="https://github.com/IntelLabs/nlp-architect/tree/master/tutorials">Tutorials</a> | <a href="https://intellabs.github.io/nlp-architect/developer_guide.html">Contributing</a> </h4>

NLP Architect is an open source Python library for exploring state-of-the-art deep learning topologies and techniques for optimizing Natural Language Processing and Natural Language Understanding Neural Networks.

Overview

NLP Architect is an NLP library designed to be flexible, easy to extend, allow for easy and rapid integration of NLP models in applications and to showcase optimized models.

Features:

Installing NLP Architect

We recommend to install NLP Architect in a new python environment, to use python 3.6+ with up-to-date pip, setuptools and h5py.

Install using pip

Install core library only

pip install nlp-architect

Install from source (Github)

Includes core library, examples, solutions and tutorials:

git clone https://github.com/IntelLabs/nlp-architect.git
cd nlp-architect
pip install -e .  # install in developer mode

Running Examples and Solutions

To run provided examples and solutions please install the library with [all] flag which will install extra packages required. (requires installation from source)

pip install .[all]

Models

NLP models that provide best (or near) in class performance:

Natural Language Understanding (NLU) models that address semantic understanding:

Optimizing NLP/NLU models and misc. optimization techniques:

Solutions (End-to-end applications) using one or more models:

Documentation

Full library documentation of NLP models, algorithms, solutions and instructions on how to run each model can be found on our website.

NLP Architect library design philosophy

NLP Architect is a model-oriented library designed to showcase novel and different neural network optimizations. The library contains NLP/NLU related models per task, different neural network topologies (which are used in models), procedures for simplifying workflows in the library, pre-defined data processors and dataset loaders and misc utilities. The library is designed to be a tool for model development: data pre-process, build model, train, validate, infer, save or load a model.

The main design guidelines are:

Note

NLP Architect is an active space of research and development; Throughout future releases new models, solutions, topologies and framework additions and changes will be made. We aim to make sure all models run with Python 3.6+. We encourage researchers and developers to contribute their work into the library.

Citing

If you use NLP Architect in your research, please use the following citation:

@misc{izsak_peter_2018_1477518,
  title        = {NLP Architect by Intel AI Lab},
  month        = nov,
  year         = 2018,
  doi          = {10.5281/zenodo.1477518},
  url          = {https://doi.org/10.5281/zenodo.1477518}
}

Disclaimer

The NLP Architect is released as reference code for research purposes. It is not an official Intel product, and the level of quality and support may not be as expected from an official product. NLP Architect is intended to be used locally and has not been designed, developed or evaluated for production usage or web-deployment. Additional algorithms and environments are planned to be added to the framework. Feedback and contributions from the open source and NLP research communities are more than welcome.

Contact

Contact the NLP Architect development team through Github issues or email: nlp_architect@intel.com