Giter Club home page Giter Club logo

yhjohn163 / nlp-architect Goto Github PK

View Code? Open in Web Editor NEW

This project forked from intellabs/nlp-architect

0.0 2.0 0.0 139.88 MB

NLP Architect by Intel AI Lab: A Python library for exploring the state-of-the-art deep learning topologies and techniques for natural language processing and natural language understanding

Home Page: http://nlp_architect.nervanasys.com/

License: Apache License 2.0

Groovy 0.29% Python 81.37% Perl 4.07% Shell 0.08% JavaScript 0.20% CSS 0.10% HTML 0.03% Jupyter Notebook 13.86%

nlp-architect's Introduction



A Deep Learning NLP/NLU library by Intel® AI Lab

GitHub Website DOI GitHub release

Overview | Models | Installation | Examples | Documentation | Tutorials | Contributing

NLP Architect is an open source Python library for exploring state-of-the-art deep learning topologies and techniques for Natural Language Processing and Natural Language Understanding. NLP Architect's main purpose is to provide easy usage of NLP and NLU models while providing state-of-art and robust implementation.

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:

  • Core NLP models used in many NLP tasks and useful in many NLP applications
  • Novel NLU models showcasing novel topologies and techniques
  • Simple REST API server (doc):
    • serving trained models (for inference)
    • plug-in system for adding your own model
  • 4 Demos of models (pre-trained by us) showcasing NLP Architect (Dependency parser, NER, Intent Extraction, Q&A)
  • Based on optimized Deep Learning frameworks:
  • Documentation website and tutorials
  • Essential utilities for working with NLP models - Text/String pre-processing, IO, data-manipulation, metrics, embeddings.

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 from source (Github)

Includes core library and all content (example scripts, datasets, tutorials)

Clone repository

git clone https://github.com/NervanaSystems/nlp-architect.git
cd nlp-architect

Install (in develop mode)

pip install -e .

Install from pypi (using pip install)

Includes only core library

pip install nlp-architect

Further installation options

Refer to our full installation instructions page on our website for complete details on how to install NLP Architect and other backend installations such as MKL-DNN or GPU backends.

Models

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

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

Components instrumental for conversational AI:

End-to-end Deep Learning-based NLP models:

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 aspires to enable quick development of state-of-art NLP/NLU algorithms and to showcase Intel AI's efforts in deep-learning software optimization (Tensorflow MKL-DNN, etc.) The library is designed around the life cycle of model development - pre-process, build model, train, validate, infer, save or deploy.

The main design guidelines are:

  • Deep Learning framework agnostic
  • Develop topologies utilized in NLP models
  • NLP/NLU models implementation using included topologies
  • Showcase End-to-End applications (Solutions) utilizing one or more NLP Architect model
  • Generic dataset loaders, textual data processing utilities, and miscellaneous utilities that support NLP model development (loaders, text processors, io, metrics, etc.)
  • Pythonic API for training and inference
  • REST API servers with ability to serve trained models via HTTP
  • Extensive model documentation and tutorials

Demo UI examples

Dependency parser

Intent Extraction

Packages

Package Description
nlp_architect.api Model server API interfaces
nlp_architect.common Common packages
nlp_architect.contrib Framework extensions
nlp_architect.data Datasets, data loaders and data classes
nlp_architect.models NLP, NLU and End-to-End neural models
nlp_architect.pipelines End-to-end NLP apps
nlp_architect.server API Server and demos UI
nlp_architect.solutions Solution applications
nlp_architect.utils Misc. I/O, metric, pre-processing and text utilities

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,
  author       = {Izsak, Peter and
                  Bethke, Anna and
                  Korat, Daniel and
                  Yaccobi, Amit and
                  Mamou, Jonathan and
                  Guskin, Shira and
                  Nittur Sridhar, Sharath and
                  Keller, Andy and
                  Pereg, Oren and
                  Eirew, Alon and
                  Tsabari, Sapir and
                  Green, Yael and
                  Kothapalli, Chinnikrishna and
                  Eavani, Harini and
                  Wasserblat, Moshe and
                  Liu, Yinyin and
                  Boudoukh, Guy and
                  Zafrir, Ofir and
                  Tewani, Maneesh},
  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: [email protected]

nlp-architect's People

Contributors

aloneirew avatar andy-nervana avatar bethke avatar brettkoonce avatar chinnikrishna2231 avatar danielkorat avatar heavani avatar hkvision avatar indie avatar jmamou avatar maheshwarigagan avatar maneesht avatar nlsapp avatar ofirzaf avatar orenpereg avatar peteriz avatar s1113950 avatar several27 avatar sharathns93 avatar shira-g avatar yinyinl avatar yoptar avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.