Skip to content

tk-0602/Machine-Learning-Projects

Repository files navigation

Machine-Learning-Projects

A collection of Machine Learning projects I completed for coursework in my 4th year at university.

CNN - Image Classification with the Mars Curiosity Rover

This project focused on classifying images taken by the Curiosity Mars Rover into one of 25 distinct categaroies using a Convolutional Neural Network (CNN). After this, the model was changed to perform binary classification and categorise the images based on if they contained a part of the rover or not.

Data Link
Mars surface image (Curiosity rover) labeled dataset NASA's Open Data Portal
  • Utilised ImageDataGenerator to load and rescale the image data, and prepared batches for training while also exploring and pre-processing the dataset.
  • Implemented a CNN model (using TensorFlow and Keras libraries to perform the classification task) to train on 3746 images and experimented with the network architecture for this particular problem.
  • Optimised hyperparameters such as batch size and dropout to improve accuracy while reducing runtime.
  • Evaluated the initial model's performance with accuracy and loss plots, and a histogram showing the distribution of Correct vs Incorrect predictions per class.

CNN - Image Classification from a Kaggle-sourced anime dataset

This project also classified images; however, these images were from a subset of popular anime titles in a Kaggle dataset. For training, validation and testing, 6573, 1618 and 2040 images were used, respectively; this was a collection of approximately 300 images representing each of the 28 chosen classes.

Data Link
Original dataset Kaggle
Modified dataset (Used in this project) Google Drive
  • Developed and trained a CNN to perform classification, labelling each of the training images with a predicted class from the 28 available.
  • Combined part of the image pre-processing into the CNN with a lamda layer in between the input and first convolutional layers, resizing each image as it is put into the network.
  • Experimented with the network architecture and hyperparameters to result in a CNN optimised for this dataset and task.
  • Evaluated the model's performance through a combination of:
    • Accuracy and Loss plots
    • Histograms of the Correct vs. Incorrect label predictions per class
    • Line graphs of the model's percentage accuracy for each class
    • Confusion matrices

MLP - Prediction of z-band brightness of quasars, given the brightness in i- and r-bands

This project used machine learning to predict a quasar's brightness in the z-band after training a Multi-Layer Perceptron (MLP) on the quasar's brightness in the i- and r-bands.

Data Link
PennState Center for Astrostatistics Data & Tutorials
SDSS quasar catalog SDSS_quasar.dat
  • Created a heatmap of the dataset to visualise correlations between different variables, choosing the optimal set to perform multi-variable regression with.
  • Developed and trained an MLP on the selected data after pre-processing, allowing the network to take in the i- and r-band magnitudes.
  • Tuned hyperparameters like batch size, learning rate, dropout and hidden layers to optimise the network performance.
  • Evaluated the model using Mean Squared Error (MSE), achieving an MSE loss of 0.072, and residual analysis on the test data.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors