This project is a group assignment for COMP309, where we develop a predictive machine learning model to classify whether a stolen bicycle is likely to be returned or not. The model is deployed as an API, with a frontend interface built using React.
The goal of this project is to:
- Data Exploration: Load, clean, visualize, and analyze a dataset of bicycle thefts in Toronto.
- Data Modeling: Prepare the dataset by transforming, selecting, and managing features for effective prediction.
- Predictive Model Building: Create and evaluate supervised machine learning classifiers using Python libraries such as Scikit-learn, Pandas, and Numpy.
- API Deployment: Use Flask to deploy the trained model as a RESTful API.
- Frontend Development: Build a React-based web application to interact with the API and provide predictions.
- Data Exploration: Statistical analysis, visualizations, and insights into the dataset.
- Machine Learning Models: Logistic Regression, Decision Trees, and other classification algorithms.
- Model Evaluation: Confusion matrix, ROC curves, and performance metrics.
- API Service: Exposes the predictive model for external use with serialization/deserialization via Pickle.
- Frontend Interface: React-based UI for easy interaction with the API.
- Landon Essex
- Benjamin Lefebvre
- Noveen Mirza
- Jeff Sy
- Konain Zahra