🛠 Projects

Here are some of the projects I have worked on. For more up to date information on what I am working on, be sure to checkout my GitHub.

🛡 Adversarially Robust CNNs & LSTMs

CNNs, LSTMs, Adversarial Machine Learning

An ongoing area of research involves defenses against adversarial examples, which are specifically designed inputs that attack the model's inference. We explore the impact on adversarial examples against common deep learning classification architectures such as CNNs and RNNs, specifically testing on a CNN and CNN-LSTM hybrid, trained on the CIFAR-10 dataset. We implemented an efficient adversarial attack known as the Fast-Gradient Sign Method (FGSM) to generate perturbations against the baseline model. We then developed more robust networks specifically to defend against adversarial attacks by performing data augmentation on the original dataset with adversarial examples. We then trained our improved networks on this dataset. Our baseline models had a 80.374% accuracy for the CNN and 79.001% for the CNN-LSTM hybrid architecture, and when attacked with adversarial examples with ε = 0.1, their accuracies dropped to 9.375% and 12.679%, respectively. In comparison, our robust models trained on examples with ε = 0.2 defended well against these attacks, achieving a validation accuracy of 75.488% for the CNN architecture and 74.056% for the CNN-LSTM hybrid architecture, which is an absolute increase of 64.142% for the CNN architecture and 61.375% for the CNN-LSTM hybrid architecture, respectively. When comparing architectures, although there were strengths to the CNN-LSTM hybrid architecture, the CNN outperformed it in terms of accuracy and training time for adversarial examples.

💻 NLP-based Malware Detection of PDFs

Natural Language Processing, Transformers, Python

November - December 2022

The threat presented by malware hidden in Portable Document Formats (PDFs) is a serious issue to the average Internet user, with the ability of a PDF to execute purposefully-embedded JavaScript serving as a method of obscuring malicious scripts and data. While there are several existing Machine Learning-based models designed for PDF malware detection, the usage of transformers to statically analyze PDFs for malware has not yet been explored. Due to their attention mechanisms and ability to process data in parallel, transformers hold great potential for analyzing large quantities of data in detail without being excessively computationally demanding. By preprocessing PDFs as byte strings, generating meaningful word embeddings using one-hot encoding and variable n-grams, and feeding these results to a fine-tuned transformer model, we have produced a model that classifies a testing set of PDFs as malicious or benign with 96.67% accuracy. After evaluating the performance of our model, we can note that this is a feasible method of performing robust static analysis on PDF files. However, it is important to continue refining the current model and exploring additional methods of improving the accuracy and precision of the model on a varied dataset.

📕 Wikisafe

React.js, Flask, Solidity (Ethereum)

October 2022

Wikisafe is a revolutionary new crowdsourcing web application that innovates the process of crowdsourcing information. This application leverages the Ethereum blockchain to validate contributions to crowdsourced articles and prevents vandalism to these vital resources. Additionally, Wikisafe provides several fidelity machine learning models that seek to improve the overall contributor experience through automating parts of the process such as summarization, captioning, and figure generation. Contributors can start simply by signing up for an account and begin contributing and utilizing the features. Communities are able to collectively share knowledge and improve free and accessible education globally around the world with incredible ease, security, and quality!

♻️ Recycling Elevated (Re)

React.js, Flask, PyTorch, Computer Vision

April 2022

Ever finish your cup of boba and wonder, can I recycle this or not? Introducing Re, an interactive web app that lets you take a photo of your trash and tells you which bin it belongs to! To begin, register an account on the site, and start taking photos! Re tracks the number of trash items you have scanned, and it features a global leaderboard of users who scan the most trash.

✔️ RendeYou

React.js, Express.js, MongoDB

January - March 2022

RendeYou is a MERN Stack full stack web application that connects users with an emphasis on immediate meetups with friends.

🫀 OrganSafe

React.js, Flask, Solidity (Ethereum)

February 2022

OrganSafe is a revolutionary web application that tackles the growing health & security problem of black marketing of donated organs. The verification of organ recipients leverages the Ethereum Blockchain to provide critical security and prevent improper allocation for such a pivotal resource. Users can also register on OrganSafe with their health information and desired donation and then application's algorithms will automatically match the users based on qualifying priority for available donations. Hospitals can easily track donations of organs and easily record when recipients receive their donation.

🌈 Qwerty

React.js, JavaScript, Firebase

January 2022

Qwerty is the first social website focused on connecting students with similar classes and gender identities. To get started simply input your information and our system will automatically connect you with other students. If there are no other students with similar gender identities only your classes will be considered in the matching system. Have fun, and good luck with studying!