The Futuristic Fraud Detection System is a web application designed to detect fraudulent transactions using advanced machine learning algorithms. It consists of both backend and frontend components, providing a seamless user experience for inputting transaction data and visualizing fraud predictions.
-
- Load and Preprocess Data: Preprocesses transaction data by loading CSV files, handling missing values, scaling numerical features, and oversampling using SMOTE to address class imbalance.
- Advanced Feature Engineering: Enhances data by adding advanced features like polynomial features and NLP features to improve model performance.
-
- Gradient Boosting Classifier: Trains a Gradient Boosting Classifier using grid search for hyperparameter tuning.
- Model Evaluation: Evaluates model performance using metrics like ROC-AUC score and classification report.
-
- RESTful API: Provides a Flask API for making predictions on new transaction data.
- API Endpoints: Exposes endpoints for predicting fraud probabilities and integrating with the frontend.
-
- Input Transaction Data: Allows users to input transaction data, including date, amount, and various features.
- Prediction Chart: Visualizes fraud predictions using a line chart to display the probability of fraud over time.
-
- Navbar: Provides navigation links to different pages, including the dashboard, about page, and contact page.
-
- Not Found Page: Displays a 404 page when users navigate to non-existing routes, providing a user-friendly error message.
- Python
- Flask
- scikit-learn
- imbalanced-learn
- React
- React Router
- Chart.js
- react-datepicker
- Backend Setup:
- Install Python dependencies using
pip install -r requirements.txt
. - Run the Flask server using
python app.py
.
- Install Python dependencies using
- Frontend Setup:
- Install Node.js dependencies using
npm install
. - Start the development server using
npm start
.
- Install Node.js dependencies using
- Accessing the Application:
- Open the browser and navigate to
http://localhost:3000
to access the frontend dashboard.
- Open the browser and navigate to
- Implement user authentication and authorization for secure access to the application.
- Enhance the frontend UI with additional features like data visualization and user interactions.
- Deploy the application to production servers for real-world usage.
This project is licensed under the MIT License.