JoshuaLadios/Fraud_Detection_Pipeline

GitHub: JoshuaLadios/Fraud_Detection_Pipeline

该项目是一个基于Python的金融交易数据清洗与欺诈检测流水线,通过规则引擎对交易进行欺诈评分,并结合Docker容器化和Power BI实现可复现部署与可视化分析。

Stars: 0 | Forks: 0

# 金融交易 ETL 与欺诈检测流水线 ## 项目概述 本项目是一个数据流水线,旨在处理和清理原始金融交易数据,检测潜在的欺诈交易,并生成干净的数据集以供进一步分析。该流水线支持 CSV 和 Excel 输入,执行全面的数据清理,应用基于规则的欺诈检测,并保存结果用于报告或可视化。 此外,该流水线集成了 Power BI 进行可视化,并使用 Docker 进行了完全容器化,以确保可复现性并便于部署。 ### 功能 - 数据库设置(可选):在加载数据之前确保目标 SQL Server 数据库已存在。 - 数据清理与标准化: - 修复不一致的日期格式 - 清理产品名称、支付方式和交易状态 - 确保数值列(数量、价格、total_sales)准确无误 - 欺诈检测规则: - 可疑的产品名称 - 无效或过去的日期 - 批量数量交易 - 完成且价格为零的交易 - 未知的支付方式或交易状态 - 日志记录:记录所有流水线事件和错误,以便追溯 - 未知列处理:将未知或意外的列保存到单独的文件夹中以供审查 - 容器化:完全容器化的流水线,便于部署 - Power BI 可视化:预置的 Power BI 报告,用于分析销售趋势和欺诈检测 ### 输出 运行流水线后,您将获得: - Final_Files/Final_Cleaned_Fraud_Data_.csv → 带有欺诈分数的清理后数据 - Review_Files/Columns_To_Review_.csv → 供手动检查的未知列 - pipeline.log → 流水线执行的详细日志 ### Power BI 可视化 Power BI 报告提供了对清理后的金融交易数据集的综合可视化,并突出了流水线检测到的潜在欺诈模式。关键洞察包括: - 总销售额概览:按产品和时间聚合的销售额,展示了表现最佳的产品,如耳机、咖啡机和智能手机。 - 欺诈检测分析:可视化欺诈分数,并基于规则标准标记可疑交易,帮助识别诸如零价格完成销售或异常数量等模式。 - 支付方式分布:按支付类型(Paypal、Creditcard、Cash)划分交易明细,突出显示任何异常或意外的值。 - 交易状态趋势:随时间追踪状态(Completed、Pending、Failed),以监控操作流程和可能的瓶颈。 - 产品与客户洞察:检查产品受欢迎程度和客户交易行为,辅助进行定向营销或风险评估。 - 此报告使利益相关者能够快速解释复杂的交易数据,检测欺诈活动,并做出明智的业务决策。 ### 技术栈 Python (pandas, numpy) - 数据处理与清理 SQLAlchemy - SQL Server 连接与数据库设置 Docker - 容器化 Power BI - 数据可视化 日志记录 - 流水线可追溯性 ### 欺诈检测规则 规则 - 描述 - 权重 可疑产品名称 - 产品不在有效列表中 - 20 可疑日期 - 交易日期 < 2000-01-01 -25 批量数量 - 数量 > 500 - 5 完成且价格为零 - 价格 = 0 & 状态 = Completed - 20 未知支付方式 - 支付方式未知 - 15 未知状态 交易状态未知 15 欺诈分数 ≥ 20 → 标记为可能欺诈
标签:请求拦截, 逆向工具