Metadata-Version: 1.1
Name: mlconjug
Version: 2.1.11
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
Description: ========
        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 models.
        
        | The training data for the french model is based on Verbiste https://perso.b2b2c.ca/~sarrazip/dev/verbiste.html .
        | The training data for English, Spanish, Italian, Portuguese and Romanian was generated using unsupervised learning techniques
          using the French model as a model to query during the training.
        
        
        * 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.11 (2018-06-21)
        -------------------
        
        * Updated all provided pre-trained prediction models
            - The French Conjugator has accuracy of about 99.94% in predicting the correct conjugation class of a French verb. This is the baseline as i have been working on it for some time now.
            - The English Conjugator has accuracy of about 99.78% in predicting the correct conjugation class of an English verb. This is one of the biggest improvement since version 2.0.0
            - The Spanish Conjugator has accuracy of about 99.65% in predicting the correct conjugation class of a Spanish verb. It has also seen a sizable improvement since version 2.0.0
            - The Romanian Conjugator has accuracy of about 99.06% in predicting the correct conjugation class of a Romanian verb.This is by far the bigger gain. I modified the vectorizer to better take into account the morphological features or romanian verbs. (the previous score was about 86%, so it wil be nice for our romanian friends to have a trusted conjugator)
            - The Portuguese Conjugator has accuracy of about 96.73% in predicting the correct conjugation class of a Portuguese verb.
            - The Italian Conjugator has accuracy of about 94.05% in predicting the correct conjugation class of a Italian verb.
        
        
        
        2.1.9 (2018-06-21)
        ------------------
        
        * Now the Conjugator adds additional information to the Verb object returned.
            - If the verb under consideration is already in Verbiste, the conjugation for the verb is retrieved directly from memory.
            - If the verb under consideration is unknown in Verbiste, the Conjugator class now sets the boolean attribute 'predicted' and the float attribute confidence score to the instance of the Verb object the Conjugator.conjugate(verb) returns.
        * Added `Type annotations`_ to the whole library for robustness and ease of scaling-out
        * The performance of the Engish and Romanian Models have improved significantly lately. I guess in a few more iteration they will be on par with the French Model which is the best performing at the moment as i have been tuning its parameters for a caouple of year now. Not so much with the other languages, but if you update regularly you will see nice improvents in the 2.2 release.
        * Enhanced the localization of the program.
        * Now the user interface of mlconjug is avalaible in French, Spanish, Italian, Portuguese and Romanian, in addition to English.
        * `All the documentation of the project`_ have been translated in the supported languages.
        
        
        .. _Type annotations: https://github.com/python/typeshed
        .. _All the documentation of the project: https://mlconjug.readthedocs.io/en/latest/
        
        
        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.
        
        
        
        
        
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
