Inspiration

Our project is inspired by the SB Software Challenge, which consists of implementing AI in the field of Cybersecurity. The project also has an educational aspect to it. We decided to focus on spam emails (phishing) due to how common they are and how much of a threat they pose in modern society.

What It Does

Our web application implements a logistic regression machine learning model trained with over 10,000 records of data using Python's "scikit-learn" and "joblib" libraries. The model can predict if a given email is spam or not with 94% accuracy.

Our project also implements an educational aspect meant to be used by employers who want to provide Cybersecurity training to their employees. The web application allows users (employees) to create an account and login. Upon doing so, users (employees) can take a quiz to assess their knowledge on spam emails. The quiz prompts sample emails from a pool of ~5000 emails, and the user (employee) has to identify whether the given email is spam or not. For each user (employee), the number of quizzes attempted and the results of said quizzes are available to the admin (employer).

How It Was Built

The machine learning model was built using Python, mainly with the "scikit-learn" and "joblib" libraries. Two datasets, totaling to over 10,000 records of data, were used to train the model. Other libraries used include: "flask", "numpy", "pandas", "matplotlib" and "seaborn".

As for the development of the web application, HTML, CSS, JavaScript, and PHP were used.

Challenges

Our web application involved two different processes, one of them being the machine learning application (Python), and the other being the web application (PHP). Ensuring a smooth communication between the two processes proved to be the biggest challenge. Using APIs, we were able to overcome this challenge.

Accomplishments

Being able to deliver a fully working and user friendly application in such a short time frame is an accomplishment we are proud of, especially considering we were able to train our own AI model using machine learning, and considering none of us had previous experience working with AI.

What We Learned

Bringing this project to life, we learned a lot. Most notably, we learned how to integrate machine learning using Python, as well as how to ensure smooth communication between different processes that are running simultaneously.

What's Next For Anti Phishing Academy

To further enhance the capabilities of our web application, we would have to look into increasing the size of the training data, consequently increasing the accuracy of our machine learning model.

Share this project:

Updates