Welcome to AutoNLU
==================
**Auto**\ mated **N**\ atural **L**\ anguage **U**\ nderstanding, powered by state-of-the-art deep learning
If you are interested in using AutoNLU, visit us at https://deepopinion.ai
What is it?
-----------
AutoNLU is a framework to train and use state-of-the-art Natural
Language Understanding (NLU) solutions to solve practical text
analysis problems in as few as 5 lines of code:
.. image:: ../../media/five-lines-of-code.png
:width: 500px
:align: center
:alt: Five lines of code to have a fully working system in AutoNLU
AutoNLU is currently in beta, but is used by multiple companies in
production and has proved to be reliable and stable.
Python versions 3.6, 3.7, and 3.8 on Linux, MacOS, and Windows are
supported.
Supported Tasks
---------------
AutoNLU currently supports three different text classification tasks
and two sequence labeling tasks.
- **text classification**
- **Label task**: You want to predict exactly one label for each piece
of text. A typical use case would be **sentiment analysis** where
you would like to assign one sentiment to each piece of text.
- **Class task**: You want to predict an arbitrary number of classes
(from a given list) for each piece of text. A typical use case would
be **topic detection**, since a text can have none of the possible
topics, but it can also have multiple topics.
- **ClassLabel task**: You want to predict one label from a list of
possible labels for each of a list of classes. A typical use case
would be **aspect based sentiment analysis**, where we want to
predict exactly one sentiment for a number of different aspects.
- **sequence labeling**
- **token classification**: You like to search a text for some key
words e.g. *persons*, *locations*, *organizations*, etc. Such a
task is also known as **named entity recognition** (NER).
- **question answering**: You like to search given text documents
for answers to individual questions. *Question answering* highlights
words in a given document that qualify as answer to the posed
question.
Core Features
-------------
- **Simple API** Easy to use API that just works. Designed for
developers, engineers and data scientists to achieve the most in a
few simple lines of code. As much automation as possible and as
flexible as needed.
- **Always Up-to-Date in NLP** NLP is the fastest moving field in AI.
With AutoNLU you don’t have to worry about the latest research to
get state-of-the-art results - this is on us! You benefit from
advances in the field simply by using the latest version of AutoNLU.
- **Extensively Tested** We use our extensive database of industry
datasets to test AutoNLU and ensure it produces high-quality results
for a broad set of use cases.
- **Deep Learning First** AutoNLU makes state-of-the-art deep learning
in NLP accessible for everyone without having to worry about the
complexities of dealing with modern deep learning algorithms.
- **Plug and Play** In two lines of code you can instantly use trained
task models to predict your data and get results, e.g. by connecting
to our Model Library.
- **Less Data Labeling** Reduce the manual data labeling effort by 75%
and significantly improve model quality by using the Active Learning
feature in AutoNLU.
- **Interoperability** AutoNLU, `DeepOpinion Studio
`_ and other `DeepOpinion
`_ products are fully interoperable and
models can be easily exchanged between the platforms.
The Power of AutoNLU
~~~~~~~~~~~~~~~~~~~~
The following image compares a general tutorial, classifying Google
Play Store reviews, using the Huggingface transformers library on the
left and the same task solved using AutoNLU on the right.
.. image:: ../../media/tutorial_to_autonlu.png
:align: center
:alt: Normal Huggingface Transformers tutorial to AutoNLU
The AutoNLU solution even provides more functionality than the
tutorial code on the left (e.g. automatic early stopping, evaluation
of the model in regular intervals during training, logging all results
to TensorBoard for easy visualization, no need to set hyperparameters,
etc.).
**AutoNLU does the right things for you, and just works!**
.. toctree::
:maxdepth: 2
:caption: Getting Started
installation
basic_usage
system_comparison
.. toctree::
:maxdepth: 1
:caption: Tutorials
tutorials/01_predict_absa.ipynb
tutorials/02_train_label_task.ipynb
tutorials/03_train_class_task.ipynb
tutorials/04_train_class_label_task.ipynb
tutorials/05_active_learning.ipynb
tutorials/06_model_finetuning.ipynb
tutorials/07_model_pruning.ipynb
tutorials/08_model_distillation.ipynb
tutorials/09_automl.ipynb
tutorials/10_token_classification.ipynb
tutorials/11_question_answering.ipynb
tutorials/12_data_cleaning.ipynb
tutorials/14_topic_model.ipynb
.. toctree::
:maxdepth: 1
:caption: Concepts
software_architecture
.. toctree::
:maxdepth: 2
:caption: Known Issues
known_issues
.. toctree::
:maxdepth: 1
:caption: Changelog
changelog
.. toctree::
:maxdepth: 3
:caption: API Reference
model
automl
datacleaner
topic_modelling
studio
utils
samplehash
teacher
datadependence
translator
simplemodel
document
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`