Inspiration
The birth of Fraud Genie started with the realization that small businesses are the most vulnerable entities to credit card fraud. A real-time solution that identifies and flags potential fraudulent payments will help strengthen a foundational aspect of our nation’s economy. Our mission was clear: empower merchants with a reliable and real-time fraud detection system, combined with insightful analytics.
What it does
Our team developed a web application that leverages machine learning techniques to flag potentially fraudulent transactions in real time. The heart of our solution lies in its capacity to harness the power of data analytics. By examining transaction patterns, we can rapidly identify suspicious activities and mitigate potential fraud. Additionally, our application provides merchants with valuable insights into fraud trends, enabling them to make data-driven decisions.
How we built it
Our application's backbone relies on an extensive dataset of over 1,000,000 records, obtained from simulated transactions. This dataset includes 23 features, such as transaction details, customer information, and geographic data. We converted categorical data into numerical forms and engineered new features, including customer-to-merchant distance, transaction history, and more. With a clean and enriched dataset, our next step was to train machine learning models. We split the data into training, validation, and test sets, taking extra care to ensure that the most recent transactions were reserved for testing. Leveraging Python's machine learning libraries, we experimented with various models, including Random Forest, XGBoost, K-Nearest Neighbors, and Logistic Regression. Cross-validation and hyper-parameter tuning were essential steps in the training process to avoid overfitting. We chose metrics like precision, recall, F1-score, and ROC-AUC score to assessing our model's performance accurately given the data imbalance. In the end, we found that the XGBoost model performed best on the training and unseen testing data (f1 score above 98%), indicating solid understanding of data patterns without overfitting. In building our web application dashboard for the small businesses, we employed a robust technology stack. On the frontend, we harnessed JavaScript and React to create an intuitive user interface. For the backend, we opted for Flask, a Python web framework, to manage the logic and seamlessly connect the data with our frontend. The frontend communicates with the backend using a combination of CORS and fetch APIs maintaining a reliable connection over the host network. The dashboard also allows the merchant to choose their threshold value based on the business’ risk tolerance and flags the transactions accordingly. Our dashboard boasts interactive data visualization through Plotly, ensuring that our users have access to real-time and historical data, geographic visualizations, and detailed fraud analytics. Such data can be extremely valuable in mapping our product’s efficiency over time for the vendor.
Challenges we ran into
Notably, the dataset posed challenges due to its inherent imbalance; fraud cases are rare in comparison to legitimate transactions. To address this issue, our team delved into extensive data preprocessing and feature engineering.
Accomplishments that we're proud of
Our web application offers merchants the power of real-time fraud detection and valuable insights into their business. By addressing the issue of fraudulent transactions head-on, our solution is poised to safeguard merchants from financial loss and strengthen the trust of their customers. Our journey was fraught with data challenges and model optimizations, but our passion for creating impactful technology has driven us to develop an application that makes a tangible difference in the world of commerce.
What we learned
We recognized the substantial impact of credit card fraud on small businesses and embraced a mission to empower merchants with real-time fraud detection and actionable insights. Handling the imbalanced dataset shed light on the complexities of data preprocessing and feature engineering, emphasizing their pivotal role in machine learning's success. Experimenting with various machine learning models and hyperparameter tuning underlined the importance of selecting the right tools for the task, with XGBoost emerging as a standout performer. Additionally, our venture underscored the significance of robust technology stacks in building a user-friendly dashboard, bridging the gap between frontend and backend seamlessly. Above all, we learned that our passion for impactful technology extends beyond data and code, with Fraud Genie serving as a testament to technology's potential to address real-world issues and enhance business operations.
What's next for FraudGenie
One of our foremost objectives is to emphasize the unique data points and innovative features that distinguish our application from the rest. We aim to further leverage these distinctive attributes to sharpen our fraud detection system's accuracy and performance. Additionally, we plan to transition to a cloud platform, enabling seamless scalability and real-time functionality, crucial for providing rapid flag notifications to merchants. A pivotal milestone includes transforming our model into an API that will allow issuers to effortlessly access flag notifications and delve into detailed analytics, making fraud mitigation an efficient process. While addressing security and compliance is essential, we are unwavering in our commitment to prioritizing our core mission and technological advancements, allowing us to forge ahead with our vision of safeguarding small businesses from the perils of credit card fraud. Furthermore, model optimization remains an ongoing priority as we continue to fine-tune and enhance our machine learning algorithms to adapt to evolving fraud trends and data patterns.
Log in or sign up for Devpost to join the conversation.