alhemdrew/AiFraudDetectionSoftwareGAN
GitHub: alhemdrew/AiFraudDetectionSoftwareGAN
SafePayAI 是一个结合 GAN 合成数据与随机森林分类器的数字支付欺诈检测原型系统,提供从前端 Dashboard 到后端 AI 预测 API 的完整实现。
Stars: 0 | Forks: 0
# 🌟 SafePayAI - 本科生项目
**SafePayAI** 是一款由 AI 驱动的欺诈检测与防范软件,作为**计算机科学 / 软件工程理学学士(BSc)学位的部分结业项目**而开发。
它展示了**生成对抗网络(GANs)**在合成数据生成中的实际应用,以及使用**随机森林分类器**在数字支付系统中进行精准的实时欺诈检测。
本项目包含:
1. **软件**:Frontend (React) + Backend (Python Flask + AI 模型)
2. **文档资料**:项目报告、图表和研究文档
3. **README.md**:完整的说明、安装步骤、工作流程和系统架构
# ⚙️ 核心功能
## 前端
* 🔒 通过 Google Sign-In 进行安全的用户身份验证
* 📊 交易 Dashboard:监控历史记录、警报和分析数据
* 📱 适配移动端和桌面端的响应式界面
* 🎨 通过 Framer Motion 实现流畅动画
## 后端
* 🤖 AI 驱动的欺诈检测(GAN + 随机森林)
* ⚡ 通过 API 进行实时欺诈预测
* 🔄 合成数据生成以提升模型性能
* 📂 集成 Firebase 用于存储 UPI ID 和交易历史
# 📦 技术栈
### 前端
* React + Vite
* Tailwind CSS
* Framer Motion
* Radix UI
### 后端
* Python + Flask
* Firebase(身份验证 + 数据库)
* 使用 GANs 生成合成交易数据
* 使用随机森林分类器进行欺诈检测
# 🖼️ 用户界面快照

*SafePayAI 用户 Dashboard UI*

*欺诈检测警告*

*最近交易历史*
**Dashboard UI**
```
+--------------------------------+
| SafePayAI Dashboard |
|--------------------------------|
| Transactions | Analytics | User |
|--------------------------------|
| Transaction 1: 1000 NGN |
| Transaction 2: 500 NGN |
| Transaction 3: Fraud Alert 🔴 |
+--------------------------------+
```
**欺诈检测警告 UI**
```
+---------------------------+
| 🚨 Fraud Alert Detected! |
| Recipient: 012345@bank |
| Amount: 50,000 NGN |
| Status: Blocked |
+---------------------------+
```
**最近交易 UI**
```
+-------------------------------------+
| Recipient | Amount | Date | Status |
|-------------------------------------|
| 012345@bank | 1000 | 11-02-2026 | ✅ |
| 678901@bank | 2000 | 10-02-2026 | ⚠️ |
| 543210@bank | 5000 | 09-02-2026 | ✅ |
+-------------------------------------+
```
# ⚙️ 安装与设置
### 克隆仓库
```
git clone https://github.com/Alhemdrew/software/AiFraudDetectionSoftwareGAN.git
cd FraudDetectionUsingGAN
```
### 前端
```
cd fraudAI_Frontend_React
npm install
npm run dev
```
在浏览器中打开 `http://localhost:3000`。
### 后端
```
cd ../AI_model_server_Flask
pip install -r requirements.txt
```
* 确保存在 `best_rf_model.pkl` 文件。
* 启动 Flask 服务器:
```
python app.py
```
API 可在 `http://127.0.0.1:5000` 访问。
# 📈 AI 模型工作流程
1. **数据准备**
* 加载并预处理数据集(欺诈 + 非欺诈交易)。
* 拆分数据集:80% 训练 / 20% 测试。
* 特征归一化与编码。
2. **GAN 训练**
* Generator 创建合成交易。
* Discriminator 识别真实数据与合成数据。
* 使用 Binary Cross-Entropy 损失进行训练。
3. **数据增强**
* 生成合成交易以平衡数据集。
* 合并合成数据与真实数据。
4. **随机森林模型**
* 在增强后的数据集上训练分类器。
* 超参数调优与评估(准确率、F1 分数、AUC-ROC)。
5. **欺诈预测**
* 预处理输入的交易数据。
* 预测是否为欺诈(Fraud 或 Not Fraud)。
* 在 Dashboard 上实时显示结果。
6. **工作流自动化**
* 用于预处理、GAN 和随机森林的模块化脚本
* 无缝执行以实现实时预测
```
+---------------------------+
| AI Model |
|---------------------------|
| Input Transactions |
| GAN Synthetic Data |
| Random Forest Prediction |
| Fraud/Not Fraud Output |
+---------------------------+
```
# 🔗 API Endpoints
**Base URL:** `http://127.0.0.1:5000/`
### 首页
```
GET /
```
返回欢迎消息。
### 预测
```
POST /predict
```
**Request Body:**
```
{
"features": [value1, value2, ...]
}
```
**Response:**
```
{
"prediction": ["Fraud" or "Not Fraud"]
}
```
**错误响应:** 400 = 无数据,500 = 服务器错误
# 🏗️ 系统架构
```
+----------------------+
| Google Sign-In Auth |
+----------------------+
|
v
+----------------------+
| Firebase UID |
+----------------------+
|
v
+----------------------+
| UPI ID Management |
+----------------------+
|
v
+----------------------+
| Transaction Input |
+----------------------+
|
v
+----------------------+
| Fraud Verification |
+----------------------+
|
v
+----------------------+
| Transaction Exec |
+----------------------+
|
v
+----------------------+
| History Storage |
+----------------------+
```
# 📁 项目结构
```
SafePayAI/
│
├── fraudAI_Frontend_React/ # React frontend
├── AI_model_server_Flask/ # Python Flask backend
│ ├── models/
│ │ └── best_rf_model.pkl
│ ├── app.py
│ ├── utils.py
│ └── requirements.txt
├── paperwork/ # BSc project documents, diagrams, reports
│ └── placeholder.docx
└── README.md
```
# 📄 一个 BSc 项目
* 计算机科学 / 软件工程专业的部分 BSc 项目
* 重点:针对尼日利亚环境的数字支付系统欺诈检测
* 包含 **软件 + AI 模型 + 项目文档资料**
* 专为**评估、展示和作品集演示**而设计
标签:Apex, Python, React, Syscalls, 无后门, 机器学习, 欺诈检测, 逆向工具, 金融科技