creep24/TS-GNN

GitHub: creep24/TS-GNN

本文提出 TS-GNN 模型,通过时间-语义差异建模提升信用卡欺诈检测中对抗伪装行为的能力。

Stars: 0 | Forks: 0

```markdown 此仓库提供了我们提出的模型 **TS-GNN**(Temporal-Semantic Graph Neural Network,用于信用卡欺诈检测)的匿名化实现。TS-GNN 旨在通过利用交易图中时间差异和语义差异来对抗欺诈伪装。该模型由三个核心模块组成: * **TSDM**:时间-语义差异建模(Temporal-Semantic Discrepancy Modeling),用于量化连接节点之间的时间与语义差异。 * **DAT**:差异感知注意力机制(Discrepancy-Aware Attention Mechanism),根据差异感知边可信度分配注意力权重。 * **ARGU**:异常保留门控单元(Anomaly-Retaining Gated Unit),在保留异常模式的同时自适应更新节点状态。 我们在两个公开数据集上评估了 TSGNN:**IEEE-CIS** 和 **CreditCard**,展示了其在识别伪装成正常交易的欺诈案例方面的有效性。 ## 📁 项目结构 ``` . ├── models/ # Model modules: tsdm.py, dat.py, argu.py, tsgnn.py ├── data1.zip # Zipped dataset files (IEEE-CIS or CreditCard) ├── main.py # Entry point for training and evaluation ├── requirements.txt # Python dependencies └── README.md # Project overview and instructions ``` ## 📦 依赖要求 * Python >= 3.8 * PyTorch >= 2.0 * PyTorch Geometric >= 2.2 * pandas, scikit-learn, numpy 使用以下命令安装所有依赖: ``` pip install -r requirements.txt ``` ## 🚀 快速开始 ### 1. 解压数据集 在根目录中解压 `data1.zip`,它会自动创建 `data/` 文件夹,其中包含处理后的数据集文件: ``` unzip data1.zip ``` ### 2. 验证数据内容 `data/` 目录应包含以下文件: * `transaction.csv`:节点特征 * `label.csv`:节点标签 * `test_identity.csv`:测试集交易身份 * `train_identity.csv`:训练集交易身份 请确保目录结构如下: ``` data/ ├── transaction.csv ├── label.csv ├── test_identity.csv ├── train_identity.csv ``` ### 3. 训练模型 执行以下命令在特定数据集上训练 TS-GNN: ``` python main.py --dataset ieee ``` 你可以自定义以下参数: * `--layers`:GNN 层数 * `--hidden_dim`:隐藏状态维度 * `--lr`:学习率 * `--epochs`:总训练轮数 例如: ``` python main.py --dataset ieee --layers 2 --hidden_dim 64 --lr 1e-3 --epochs 200 ``` ```
标签:AI Security, Anomaly Detection, Apex, BSD, Credit Card Fraud, Graph Neural Network, PyTorch, PyTorch Geometric, Temporal-Semantic, Transaction Graph, 交易图, 信用欺诈检测, 凭据扫描, 图神经网络, 异常保留, 数据挖掘, 时序建模, 时间序列, 机器学习, 欺诈伪装, 欺诈识别, 注意力机制, 深度学习, 节点嵌入, 语义差异, 逆向工具, 金融风控