Metadata-Version: 2.1
Name: mlconjug
Version: 2.1.8
Summary: A Python library to conjugate French, English, Spanish, Italian, Portuguese and Romanian verbs using Machine Learning techniques.
Home-page: https://github.com/SekouD/mlconjug
Author: SekouD
Author-email: sekoud.python@gmail.com
License: MIT license
Keywords: mlconjug conjugation conjugaison conjugación coniugazione conjugação conjugare verbs verbes verbos ML machine-learning NLP linguistics linguistique linguistica verbiste sklearn scikit-learn
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Education
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Utilities
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: Spanish
Classifier: Natural Language :: Italian
Classifier: Natural Language :: Portuguese
Classifier: Natural Language :: Romanian
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Requires-Dist: cython
Requires-Dist: Click (>=6.0)
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: scikit-learn

========
MLConjug
========


.. image:: https://img.shields.io/pypi/v/mlconjug.svg
        :target: https://pypi.python.org/pypi/mlconjug
        :alt: Pypi Python Package Index Status

.. image:: https://img.shields.io/travis/SekouD/mlconjug.svg
        :target: https://travis-ci.org/SekouD/mlconjug
        :alt: Linux Continuous Integration Status

.. image:: https://ci.appveyor.com/api/projects/status/6iatj101xxfehbo8/branch/master?svg=true
        :target: https://ci.appveyor.com/project/SekouD/mlconjug
        :alt: Windows Continuous Integration Status

.. image:: https://readthedocs.org/projects/mlconjug/badge/?version=latest
        :target: https://mlconjug.readthedocs.io/en/latest/?badge=latest
        :alt: Documentation Status

.. image:: https://pyup.io/repos/github/SekouD/mlconjug/shield.svg
        :target: https://pyup.io/repos/github/SekouD/mlconjug/
        :alt: Depedencies Update Status

.. image:: https://codecov.io/gh/SekouD/mlconjug/branch/master/graph/badge.svg
        :target: https://codecov.io/gh/SekouD/mlconjug
        :alt: Coverage Status


| A Python library to conjugate verbs in French, English, Spanish, Italian, Portuguese and Romanian (more soon)
    using Machine Learning techniques.
| Any verb in one of the supported language can be conjugated, as the module contains a Machine Learning model of how the verbs behave.
| Even completely new or made-up verbs can be successfully conjugated in this manner.
| The supplied pre-trained models are composed of:

- a binary feature extractor,
- a feature selector using Linear Support Vector Classification,
- a classifier using Stochastic Gradient Descent.

| MLConjug uses scikit-learn to implement the Machine Learning algorithms.
| Users of the library can use any compatible classifiers from scikit-learn to modify and retrain the model.

The training data is based on Verbiste https://perso.b2b2c.ca/~sarrazip/dev/verbiste.html .


* Free software: MIT license
* Documentation: https://mlconjug.readthedocs.io.

Supported Languages
-------------------

- French
- English
- Spanish
- Italian
- Portuguese
- Romanian


Features
--------

- Easy to use API.
- Includes pre-trained models with 99% + accuracy in predicting conjugation class of unknown verbs.
- Easily train new models or add new languages.
- Easily integrate MLConjug in your own projects.
- Can be used as a command line tool.

Credits
---------

This package was created with the help of Verbiste_ and scikit-learn_.

.. _Verbiste: https://perso.b2b2c.ca/~sarrazip/dev/verbiste.html
.. _scikit-learn: http://scikit-learn.org/stable/index.html



============
Installation
============


Stable release
--------------

To install MLConjug, run this command in your terminal:

.. code-block:: console

    $ pip install mlconjug

This is the preferred method to install MLConjug, as it will always install the most recent stable release.

If you don't have `pip`_ installed, this `Python installation guide`_ can guide
you through the process.

.. _pip: https://pip.pypa.io
.. _Python installation guide: http://docs.python-guide.org/en/latest/starting/installation/


From sources
------------

The sources for MLConjug can be downloaded from the `Github repo`_.

You can either clone the public repository:

.. code-block:: console

    $ git clone git://github.com/SekouD/mlconjug

Or download the `tarball`_:

.. code-block:: console

    $ curl  -OL https://github.com/SekouD/mlconjug/tarball/master

Once you have a copy of the source, you can install it with:

.. code-block:: console

    $ python setup.py install


.. _Github repo: https://github.com/SekouD/mlconjug
.. _tarball: https://github.com/SekouD/mlconjug/tarball/master


=======
History
=======


2.1.5 (2018-06-15)
------------------

* Added localization.
* Now the user interface of mlconjug is avalaible in French, Spanish, Italian, Portuguese and Romanian, in addition to English.


2.1.2 (2018-06-15)
------------------

* Added invalid verb detection.


2.1.0 (2018-06-15)
------------------

* Updated all language models for compatibility with scikit-learn 0.19.1.


2.0.0 (2018-06-14)
------------------

* Includes English conjugation model.
* Includes Spanish conjugation model.
* Includes Italian conjugation model.
* Includes Portuguese conjugation model.
* Includes Romanian conjugation model.


1.2.0 (2018-06-12)
------------------

* Refactored the API. Now a Single class Conjugator is needed to interface with the module.
* Includes improved french conjugation model.
* Added support for multiple languages.


1.1.0 (2018-06-11)
------------------

* Refactored the API. Now a Single class Conjugator is needed to interface with the module.
* Includes improved french conjugation model.


1.0.0 (2018-06-10)
------------------

* First release on PyPI.






