Skip to content

Building MLP model to detect phishing websites. The model is converted to TensorFlow Lite and deployed on an ESP32 for real-time edge inference.

Notifications You must be signed in to change notification settings

ananyakaligal/ESP32-EdgeInference

Repository files navigation

Phishing Website Classification Model on ESP32

This project involves building a machine learning classification model to detect phishing websites using the Phishing Websites dataset from the UC Irvine ML Repository. The trained model is converted to TensorFlow Lite (TFLite) format and ported to an ESP32 microcontroller for edge inference.

Steps to Build and Deploy (Summary)

  1. Preprocessing & Model Training:

    • Loaded and cleaned data with Pandas.
    • Split data into training, testing, and validation sets.
    • Built and trained a neural network model using TensorFlow/Keras.
  2. Model Conversion to TFLite:

    • Converted the trained model to TFLite format.
    • Applied quantization to reduce model size for ESP32.
    • Generated a C header file (model.h) using the xxd tool:
      xxd -i phishing_model.tflite > model.h
  3. Deployment on ESP32:

    • Developed ESP32 code using the TensorFlow Lite Micro library to load and run the model.
    • Included sample input data for inference testing.
    • Verified inference outputs on ESP32 for accuracy in phishing classification.

Tools and Libraries

About

Building MLP model to detect phishing websites. The model is converted to TensorFlow Lite and deployed on an ESP32 for real-time edge inference.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published