Projects

  • Now 2024 - Ongoing

    Convolutional Neural Network (from scratch in C++)

    github.com/madmax755/cnn-from-scratch

    Custom implementation of a Convolutional Neural Network (CNN) for image classification without ML libraries.

    Features:

    • Convolutional layers with configurable kernels
    • Pooling layers
    • Dense layers for classification
    • Tensor3D class for efficient 3D data handling
    • AdamW optimiser
    • Model serialisation (save/load functionality)

    Results:

    • Trained model on MNIST dataset (+augmentation) to achieve a 99.4% accuracy - see demo
  • Oct 2024 - Nov 2024

    Gated Recurrent Unit (GRU) Neural Network (from scratch in C++)

    github.com/madmax755/gru-from-scratch

    Custom implementation of Gated Recurrent Unit (GRU) architecture for time series sequence processing without ML libraries.

    Features:

    • GRU cell implementation with MLP output layers
    • Configurable input, hidden, and output dimensions
    • AdamW optimiser
    • Financial metrics for stock prediction (profit/loss, directional accuracy)

    Results:

    • See demo to reveal the models strength and weaknesses on a sentiment analysis task
  • Sep 2024 - Oct 2024

    Feedforward Neural Network (from scratch in C++)

    github.com/madmax755/mlp-from-scratch

    Custom implementation of a feedforward MLP neural network without external ML libraries.

    Features:

    • Flexible network topology with configurable layer sizes
    • Multiple activation functions (ReLU, Sigmoid, Softmax)
    • Advanced optimisers (SGD, SGD+Momentum, NAG, Adam, AdamW)
    • Multi-threaded training for improved performance
    • Model serialisation (save/load functionality)
    • Evaluation metrics (accuracy, precision, recall, F1 score)

    Results:

    • Acheived 91% peak accuracy on a large-scale handwritten digit classification dataset (MNIST).
  • Sep 2024 - Ongoing

    Stock Price Predictor

    github.com/madmax755/stock-price-prediction-model

    • Engineered a comprehensive quantitative stock prediction model, processing 5+ years of daily price data for multiple stocks using Python, pandas, and scikit-learn.

    • Incorporated technical indicators (e.g., MACD, RSI, Bollinger Bands) and macroeconomic factors to capture complex market dynamics.

    • Applied statistical methods including VIF analysis and regularization techniques (Ridge, Lasso) to mitigate multicollinearity and prevent overfitting, redusing MSE by 41% over baseline models.

  • Aug 2024 - Ongoing

    Self-hosted Web Server

    maxkendall.com

    • Created portfolio, minesweeper, and personal todo-list websites, self-hosted on a Raspberry Pi Zero W using Nginx as a reverse proxy and the cloudflare API to handle dynamic DNS allocation.

    • Used HTML, JavaScript, and CSS to create responsive, mobile-friendly user interfaces.