Skip to main content

MNIST digit recognition project

Project description

lev-antipov-bivt-2216 - MNIST Digit Recognition Project

Project Organization

├── LICENSE            <- Open-source license if one is chosen
├── Makefile           <- Makefile with convenience commands like `make data` or `make train`
├── README.md          <- The top-level README for developers using this project.
├── data
│   ├── external       <- Data from third party sources.
│   ├── interim        <- Intermediate data that has been transformed.
│   ├── processed      <- The final, canonical data sets for modeling.
│   └── raw            <- The original, immutable data dump.
│
├── docs               <- A default mkdocs project; see www.mkdocs.org for details
│
├── models             <- Trained and serialized models, model predictions, or model summaries
│
├── notebooks          <- Jupyter notebooks. Naming convention is a number (for ordering),
│                         the creator's initials, and a short `-` delimited description, e.g.
│                         `1.0-jqp-initial-data-exploration`.
│
├── pyproject.toml     <- Project configuration file with package metadata for 
│                         ds_core and configuration for tools like black
│
├── references         <- Data dictionaries, manuals, and all other explanatory materials.
│
├── reports            <- Generated analysis as HTML, PDF, LaTeX, etc.
│   └── figures        <- Generated graphics and figures to be used in reporting
│
├── requirements.txt   <- The requirements file for reproducing the analysis environment, e.g.
│                         generated with `pip freeze > requirements.txt`
│
├── setup.cfg          <- Configuration file for flake8
│
└── src   <- Source code for use in this project.
    │
    ├── __init__.py             <- Makes ds_core a Python module
    │
    ├── config.py               <- Store useful variables and configuration
    │
    ├── dataset.py              <- Scripts to download MNIST dataset
    │
    ├── features.py             <- Code to preprocess MNIST images
    │
    ├── modeling                
    │   ├── __init__.py 
    │   ├── predict.py          <- Code to run model inference with trained models          
    │   └── train.py            <- Code to train Logistic Regression model
    │
    └── plots.py                <- Code to create visualizations

Quick Start

1. Download MNIST Dataset

python -m ds_core.dataset

2. Preprocess Data

python -m ds_core.features

3. Train Model

python -m ds_core.modeling.train

4. Make Predictions

python -m ds_core.modeling.predict

5. Generate Visualizations

python -m ds_core.plots

Running Tests

pytest tests/

Project Features

  • Dataset Loading: Automatic download and loading of MNIST dataset from Yann LeCun's website
  • Preprocessing: Image normalization (0-1 range) and flattening (28x28 → 784)
  • Model: Logistic Regression classifier with multinomial solver
  • Evaluation: Accuracy metrics and confusion matrix
  • Visualization: Sample images and confusion matrix plots

Expected Results

The Logistic Regression model typically achieves ~92% accuracy on the MNIST test set.

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

mnist_mlops_lib-0.0.1.dev1.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mnist_mlops_lib-0.0.1.dev1-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file mnist_mlops_lib-0.0.1.dev1.tar.gz.

File metadata

  • Download URL: mnist_mlops_lib-0.0.1.dev1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mnist_mlops_lib-0.0.1.dev1.tar.gz
Algorithm Hash digest
SHA256 c0f8852c69c21b57c57649e9e95f797bf05729e3363aacd96cf754e8b621e926
MD5 cfbf739daaf4a4d632c84e2a3527c258
BLAKE2b-256 6fa0dfb508dd9c0157eeb58077d0d45b3a76bc980e6b9806fcbda9299a0c440a

See more details on using hashes here.

File details

Details for the file mnist_mlops_lib-0.0.1.dev1-py3-none-any.whl.

File metadata

File hashes

Hashes for mnist_mlops_lib-0.0.1.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 fbac856042fe9f222c84b0722ea38d631dd0c09e86281f2462d6443046a12d37
MD5 b204f78f6d97abaeea7d7e45446a12a9
BLAKE2b-256 b972797c4bf24d99b7a59e52d2c3d642820c459e89c0d4c76f2ac89f0db2f8bb

See more details on using hashes here.

Supported by

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