Skip to content

A machine learning project for letter recognition using SVM, KNN, and Decision Tree, Random Forest, and Naive Bayes algorithms. Includes data preprocessing, model training, evaluation, and visualization, and research report.

License

Notifications You must be signed in to change notification settings

spignelon/Letter-Recognition_Project-ML

Repository files navigation

Letter Recognition Project

This repository contains the code, report, and related resources for the Letter Recognition Project, which focuses on classifying letters based on their features. The project implements machine learning algorithms such as Support Vector Machines (SVM), k-Nearest Neighbors (KNN), Decision Trees, Random Forest, and Naive Bayes.

Table of Contents

Project Description

The Letter Recognition Project aims to develop a machine learning model that can accurately classify letters based on their visual features. The project utilizes various classification algorithms, including SVM, KNN, Decision Trees, Random Forest, and Naive Bayes, to achieve high accuracy in letter classification. It includes data preprocessing steps, model training, evaluation, and visualization of results.

Dataset

The dataset used in this project is the "Letter Recognition Dataset" from the UCI Machine Learning Repository. It consists of 20,000 samples, with each sample representing a letter of the alphabet. The dataset contains 16 numerical features that capture different attributes of each letter. You can download the dataset from here or alternative link.

Code

The code is implemented in Python and is available in the Letter_Recognition.ipynb Jupyter Notebook. It includes data loading, preprocessing, model training, evaluation, and visualization. The code is well-documented and organized into sections for easy understanding and reproducibility.

Additionally, you can find the exported Python code from the Jupyter Notebook in the letter_recognition.py file.

Report

The research report for the Letter Recognition Project is available in the LetterRecognition_Research_Report.pdf file. The report provides a detailed analysis of the project, including the problem statement, methodology, experimental results, and conclusions. It also discusses future directions for potential enhancements and improvements.

Blog Post

For a detailed explanation of the project, you can refer to the blog post titled "Letter Recognition: Machine Learning for Classifying Capital Letters" available here.

Google Colab

To directly run and experiment with the project in an interactive environment, you can access the Google Colab notebook here.

Installation/Running

To run the code locally, follow these steps:

  1. Clone this GitHub repository:

    git clone https://github.com/spignelon/Letter-Recognition_Project-ML.git
    
  2. Install the required dependencies.

  3. Open and run the Letter_Recognition.ipynb Jupyter Notebook in your preferred environment.

License

This project is licensed under the terms of the MIT License.