rushjais/transaction-pattern-analyzer

GitHub: rushjais/transaction-pattern-analyzer

一个针对商业交易数据的异常检测原型,通过特征工程和多种检测方法识别可疑支出行为。

Stars: 0 | Forks: 0

# 金融交易模式分析器 利用特征工程和无监督异常检测技术,检测商业交易数据中的异常支出行为。 ## 概述 本项目通过一个现实的探索性原型探讨了这个问题——它并非生产系统。重点在于**特征工程和可解释性**,而非模型复杂性。 ## 笔记本 打开 `transaction_analysis.ipynb` 查看完整分析: 1. 合成数据集生成(6,400 笔交易,5 家企业,12 个月) 2. 探索性分析 3. 特征工程 — 10 个上下文特征 4. 三种异常检测方法对比 5. 可视化与结果 6. 客观的局限性与后续步骤 7. SQL 实现 — SQLite 中的核心异常逻辑 ## 核心思想 原始交易金额本身是糟糕的异常信号。一笔 10,000 美元的付款对某家企业来说可能是常规操作,而对另一家来说则可能触目惊心。有趣的工作在于构建**具备上下文感知的特征**: | 特征 | 捕捉内容 | |---|---| | `amount_zscore_biz` | 在*该账户的*历史记录中是否异常? | | `amount_zscore_vendor` | 在*该供应商关系*中是否异常? | | `is_new_vendor` | 是否为首次向该收款方付款? | | `rolling_7d_count` | 本周交易频率是否激增? | | `is_near_duplicate` | 48 小时内是否存在相同金额 + 相同供应商? | ## 方法 | 方法 | 描述 | |---|---| | 基于规则的评分 | 人类可读的阈值,完全可审计 | | Z-score 复合 | 统计基线,对 SQL 友好 | | Isolation Forest | 基于树的无监督 ML | | SQL 查询 | SQLite 中的核心异常逻辑 — 生产就绪 | ## 技术栈 Python · pandas · NumPy · scikit-learn · matplotlib · SQLite *一个探索金融科技/企业银行业务背景下异常检测的组合项目。*
标签:Apex, pandas, Python, scikit-learn, SQLite, Z-score, 业务交易, 云计算, 交易分析, 代码示例, 孤立森林, 开源安全, 异常检测, 支出监控, 数据分析, 无后门, 无监督学习, 机器学习, 欺诈检测, 特征工程, 规则引擎, 逆向工具, 金融科技, 金融风控