Skip to content

This is a web app where you can draw a letter in the russian alphabet and the ML algorithm will predict the letter that you drew.

License

Notifications You must be signed in to change notification settings

francofgp/Machine-Learning-Cyrillic-Classifier

Repository files navigation

Machine-Learning-Cyrillic-Classifier

This is a web app where you can draw a letter in the russian alphabet and the ML algorithm will predict the letter that you drew.
Little overview

You can visit the web page in the following links:

  1. Link 1 StreamlitShare host
  2. Link 2 Heroku host

Execute in your editor (Option 1)

Python 3.7 required

Use the package manager pip to install all the requirements.

pip install -r requirements.txt

Then to execute the app to:

streamlit run app.py

Execute in your editor (Option 2)

Python 3.7 required

Use the package manager conda to install the same virtual environment that I used, this command will create a new virtual environment with the same libraries that I used:

conda env create -f my_environment.yml

Then to execute the app to:

streamlit run app.py

Jupyter Notebook with the ML algorithm

In the file "clasificador cirilico.ipynb" you will find all the steps that I did to create a SVM classifier.
This jupyter notebook will generate the following files:

  • feature_matrix.pkl
  • model.pkl
  • pca.pkl
  • sc.pkl

This files are necessary for the streamlit app to work, in this files I stored the SVM model, the StandardScaler and the PCA, so I don't need to train the model every time that the model needs to predict one letter
The file "feature_matrix.pkl", it is where I to stored all the features off the images, with this files i dont have to wait to loop through the images every time I restart the kernel.

The file "generador dataframe cirilico.ipynb" is it used to generate the dataframe for the images themself.

Hosting files

The following files are just for the heroku deployment:

  • setup.sh
  • Procfile
  • runtime.txt

Dataset

The dataset comes from Thanks to This GitHub

Showcase

Example

Imgur

Language UI

English

Imgur

Español

Imgur

Русский

Imgur

License

MIT