Skip to main content

A Command Line application and Python library to conjugate French, English, Spanish, Italian, Portuguese and Romanian verbs using Machine Learning techniques.

Project description

mlconjug3 PyPi Home Page
Package Maintenance Status Package Maintener OpenSSF Best Practices OpenSSF ScoreCard Build status on Windows, MacOs and Linux Pypi Python Package Index Status Anaconda Package Index Status Compatible Python versions Supported platforms Documentation Status Dependencies status Code Coverage Status Code Vulnerability Status Conda Follow me on Mastodon

mlconjug3

A Command Line application and Python library to conjugate verbs in French, English, Spanish, Italian, Portuguese and Romanian (more soon) using Machine Learning techniques.

  • Conjugate any verb in one of the supported languages, even completely new or made-up verbs, with the help of a pre-trained Machine Learning model.

  • The pre-trained models are composed of a binary feature extractor, a feature selector using Linear Support Vector Classification, and a classifier using Stochastic Gradient Descent.

  • Easily modify and retrain the models using any compatible classifiers from scikit-learn.

  • Uses Verbiste as the training data for the French model, and unsupervised learning techniques to generate the data for the English, Spanish, Italian, Portuguese and Romanian models.


Conjugation for the verb to be.

Supported Languages

  • French

  • English

  • Spanish

  • Italian

  • Portuguese

  • Romanian

Features

  • Command Line Interface tool.

  • Easy to use and intuitive API.

  • Includes pre-trained models with 99% + accuracy in predicting conjugation class of unknown verbs.

  • Easily train new models or add new languages.

  • Uses caching and multiprocessing for maximum performance.

  • Easily integrate mlconjug3 in your own projects.

  • Extensive documentation.

  • Powerful machine learning algorithms for accurate verb conjugation predictions.

  • Support for multiple languages including English, Spanish, French, and German.

  • Customizable settings to fine-tune performance and adapt to different use cases.

  • Robust error handling and troubleshooting capabilities.

  • Regular updates and improvements to ensure optimal performance.

  • Community support and contributions to continuously expand the library’s capabilities.

  • Integration with popular libraries such as scikit-learn and numpy for machine learning tasks.

Installation

To install mlconjug3, you have multiple options:

  • Using pip: This is the preferred method to install mlconjug3, as it will always install the most recent stable release. To install mlconjug3, run this command in your terminal:

$ pip install mlconjug3

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

  • Using pipx (recommended for users who want to avoid conflicts with other Python packages):

$ pipx install mlconjug3
  • Using conda: You can also install mlconjug3 by using Anaconda or Miniconda instead of pip. To install Anaconda or Miniconda, please follow the installation instructions on their respective websites. After having installed Anaconda or Miniconda, run these commands in your terminal:

$ conda config --add channels conda-forge
$ conda config --set channel_priority strict
$ conda install mlconjug3

If you already have Anaconda or Miniconda available on your system, just type this in your terminal:

$ conda install -c conda-forge mlconjug3

From sources

The sources for mlconjug3 can be downloaded from the Github repo.

You can either clone the public repository:

$ git clone git://github.com/SekouDiaoNlp/mlconjug3

Or download the tarball:

$ curl  -OL https://github.com/SekouDiaoNlp/mlconjug3/tarball/master

Once you have a copy of the source, get in the source directory and you can install it with:

$ python setup.py install

Alternatively, you can use poetry to install the software:

$ pip install poetry

$ poetry install

Academic publications citing mlconjug3

BibTeX

If you want to cite mlconjug3 in an academic publication use this citation format:

@article{mlconjug3,
  title={mlconjug3},
  author={Sekou Diao},
  journal={GitHub. Note: https://github.com/SekouDiaoNlp/mlconjug3 Cited by},
  year={2023}
}

Software projects using mlconjug3

  • Translation flask API for the Helsinki NLP models available in the Huggingface Transformers library.
  • NLP Suite is a package of tools designed for non-specialists, for scholars with no knowledge or little knowledge of Natural Language Processing.
  • This project offers tools to visualize the gender bias in pre-trained language models to better understand the prejudices in the data.
  • This project uses language models to generate text that is well suited to the type of publication.
  • Dockerized microservice with REST API for conjugation of any verb in French and Spanish.
  • A tool to Manage and tansform HTML documents.
  • A Tux bot.
  • Tweets the words of the French language. Largely inspired by the @botducul (identical lexicon, but code in Python) and the @botsupervnr.
    Posts on @botduslip. Stores the position of the last tweeted word in a Redis database.
  • This project offers a tool to help learn differnt verbal forms.
  • A collection of common NLP tasks such as dataset parsing and explicit semantic extraction.
  • This project offers a model which recognizes covid-19 masks.
  • Need an excuse for why you can’t show up in your Zoom lectures? Just generate one here!
  • Repository to store Natural Language Processing models.
  • This is a simple virtual assistant. With it, you can search the Internet, access websites, open programs, and more using just your voice.
    This virtual assistant supports the English and Portuguese languages and has many settings that you can adjust to your liking.
  • This python module responds to yes or no questions. It dishes out its advice at random.
    Disclaimer: Do not actually act on this advice ;)
  • Python+Flask web app that uses mlconjug to dynamically generate foreign language conjugation questions.
  • A dwarf-fortress adventure mode-inspired rogue-like Pygame Python3 game.
  • A WebApp to learn Spanish.
  • Application for German-French vocabulary with simple GUI.

Credits

This package was created with the help of Verbiste and scikit-learn.

The logo was designed by Zuur.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mlconjug3-3.10.0.tar.gz (36.1 MB view hashes)

Uploaded Source

Built Distribution

mlconjug3-3.10.0-py3-none-any.whl (36.2 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page