Skip to content

lhandley1/Penguin-Classification-using-Perceptron-Models

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🐧 Penguin Classification using Perceptron Models

Overview

This project evaluates the performance of a single-layer Multi-Class Perceptron (MCP) and a Multi-Layer Perceptron (MLP) for classifying penguin species. The goal is to understand the effectiveness of these perceptron models on the Palmer Penguins dataset and compare their performance against the previous classification project using K-Nearest Neighbors (KNN) and Naive Bayes algorithms on the same dataset. This comparison aims to provide insights into the strengths and weaknesses of different classification approaches for this specific problem.

πŸ“œ Contents

This notebook covers the following key areas:

  • πŸ“Š Data Handling: Loading, cleaning, and preprocessing the Palmer Penguins dataset.
  • 🧠 Model Implementation: Building and implementing MCP and MLP models from scratch using NumPy.
  • πŸ”¬ Experimentation: Conducting experiments to evaluate model performance by varying:
    • πŸ“ˆ Number of training epochs
    • βš™οΈ Learning rates
    • πŸ“Š Training and testing data splits
    • Cross-validation techniques
  • 🎯 Evaluation: Assessing model accuracy based on experimental results and error analysis.

πŸ“Š Dataset

The project utilises the Palmer Penguins dataset, which contains physical measurements for three different penguin species (Adelie, Gentoo, and Chinstrap) collected from three islands in the Palmer Archipelago, Antarctica.

πŸ› οΈ Tech and Libraries πŸ› οΈ

  • 🐍 Python: The core programming language.
  • πŸ”’ NumPy: For numerical computations and implementing the models.
  • πŸ“ˆ Matplotlib: For data visualisation and plotting error curves.
  • 🐼 pandas: For data loading, manipulation, and analysis.
  • πŸ€– scikit-learn: For data splitting (train_test_split) and cross-validation (KFold).
  • 🐦 palmerpenguins: To easily load the dataset.

🧠 Models 🧠

  • Multi-Class Perceptron (MCP): A fundamental single-layer neural network adapted for classification with more than two classes.
  • Multi-Layer Perceptron (MLP): A more complex neural network with an input layer, one hidden layer, and an output layer, allowing for the learning of more intricate patterns.

πŸ™ Acknowledgements

This project utilises the palmerpenguins dataset, generously provided by Dr. Kristen Gorman and the Palmer Station, Antarctica LTER. πŸ™Œ


⬇️ Installation ⬇️

To run this notebook, you need to have Python and the required libraries installed. You can install the libraries using pip:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published