Architektura i Eksperymenty

Ostatnia aktualizacja: 2026-05-27


Architektura systemu

Opis ogólny

System detekcji fraudu na grafach transakcyjnych oparty na GNN, z rozszerzeniem o wykrywanie adversarial attacks (structure + feature perturbations). Główny wkład techniczny: rozszerzenie EDoG na feature attacks (EDoG-Combined), systematyczny red team 6 adaptive attack strategies oraz uczciwy benchmark prostszych GNN (GraphSAGE/GAT) vs złożonego GAAP.

Komponenty główne

KomponentOpisTechnologia
M1 – Graph BuilderBudowanie grafu transakcyjnego z surowych danychNetworkX, DGL
M2 – GNN ClassifierKlasyfikacja węzłów (fraud/legit) na grafieGraphSAGE, GAT, GCN (PyG)
M3 – Structure Anomaly DetectorEDoG: LP + GGD + OD na strukturze grafucustom, PyTorch
M4 – Feature Anomaly Detector (FAD)Isolation Forest + Autoencoder na cechach węzłówsklearn, PyTorch
M5 – EDoG-CombinedFuzja M3 + M4: s_final = α·s_structure + β·s_featureweighted ensemble
M6 – Attack GeneratorRL-S2V (structure) + gradient perturbation (features)custom

Przepływ danych

flowchart TD
    RAW([Raw transaction data]) --> M1[M1 Graph Builder]
    M1 --> G([G = V, E, X])
    G --> M2[M2 GNN Classifier\nGraphSAGE / GAT / GCN]
    M2 --> SCORES([Node fraud scores - baseline])
    G --> M3[M3 Structure Anomaly\nLP + GGD + OD]
    G --> M4[M4 Feature Anomaly\nIsolation Forest + Autoencoder]
    M3 --> s_struct([s_structure])
    M4 --> s_feat([s_feature])
    s_struct --> M5[M5 EDoG-Combined\ns = α·s_struct + β·s_feat]
    s_feat --> M5
    M5 --> ADV([Adversarial node detection])
    M6[M6 Attack Generator\nRL-S2V + gradient] --> GP([Perturbed graph G'])
    GP --> M5

Stack technologiczny

WarstwaTechnologiaUzasadnienie
JęzykPython 3.11+standard ML
GNN frameworkPyTorch Geometric (PyG)GraphSAGE, GAT, GCN, GAAP
Graph analysisNetworkX, DGLgraph construction, EDoG
Adversarialcustom RL-S2Vstructure attacks
DaneYelpChi, Amazon, Cora, Citeseer, Ellipticpubliczne benchmark datasety
Pomiar / evalAUC-ROC, AP (Average Precision)imbalanced fraud datasets

Eksperymenty

FG-EXP-1: GNN Benchmark — Prostota vs Złożoność na Publicznych Fraud Datasets

Status: planned Priorytet: high Powiązany pomysł: FG-1 Dodano: 2026-05-27

Hipoteza: Prosty GraphSAGE osiąga ≥95% AUC modelu GAAP na YelpChi i Amazon datasets, przy 5× mniejszej złożoności obliczeniowej (GFLOPS) — co wskazuje, że złożona agregacja globalna (DyBEM) nie jest konieczna dla standardowych fraud benchmarków.

Dane:

  • Dataset: YelpChi (publiczny, 45,954 węzłów, ~6% fraud), Amazon Reviews (publiczny, 11,944 węzłów)
  • Podział: te same podziały co GAAP (80/10/10 lub opublikowane standardowe)
  • Preprocessing: normalizacja cech węzłów, usunięcie NaN

Metoda:

  1. Implementacja: GraphSAGE, GAT, GCN, MLP (baseline) w PyG
  2. Walidacja: odtwórz wyniki GAAP (AUC z paper) na tych samych podziałach
  3. Uczciwe porównanie: ten sam split, te same metryki, 5 uruchomień z różnymi seedami
  4. Ablacja: czy global aggregation (DyBEM) naprawdę poprawia wyniki vs standard SAGE?
  5. Cost-benefit: AUC vs czas trenowania vs GFLOPS per model

Modele / Baseline:

ModelOpis
MLPbez struktury grafu
GCNGraph Convolutional Networks
GraphSAGEinductive, mini-batch
GATattention-based
GAAP (odtworzenie)SOTA z Du 2025

Metryki:

  • Główna: AUC-ROC (próg sukcesu: GraphSAGE ≥95% GAAP AUC)
  • Dodatkowe: Average Precision, F1 @0.5 threshold, czas trenowania [s], GFLOPS
  • Test statystyczny: Wilcoxon signed-rank (5 seedów, GraphSAGE vs GAAP)

Wyniki: (do wypełnienia po wykonaniu)

ModelAUC (YelpChi)AUC (Amazon)Train time [s]

Wnioski: (do wypełnienia po wykonaniu)


FG-EXP-2: EDoG-Combined — Rozszerzenie na Feature Attacks

Status: planned Priorytet: high Powiązany pomysł: FG-2 Dodano: 2026-05-27

Hipoteza: EDoG-Combined (struktura + cechy węzłów) osiąga AUC >0.85 na combined attacks (structure + feature perturbations simultaneously) — istotnie wyższy (DeLong test, p<0.05) niż EDoG-original (<0.70 na tych samych atakach) na grafach Cora i Citeseer.

Dane:

  • Dataset: Cora (2,708 węzłów, 7 klas), Citeseer (3,327 węzłów), syntetyczne ER/BA graphs
  • Podział: standardowy (train/val/test jak w EDoG paper)
  • Preprocessing: combined attacks: RL-S2V (structure) + gradient perturbation (cechy, ε=0.05)

Metoda:

  1. Reprodukcja EDoG-original: Link Predictor (LP) + Graph Generation Detector (GGD) + Outlier Detector (OD)
  2. Implementacja FAD: Isolation Forest na node features + Autoencoder (z=32)
  3. EDoG-Combined: s_final = α·s_structure + β·s_feature (grid search α, β)
  4. Generowanie combined attacks: jednoczesne RL-S2V (dodaj/usuń krawędzie) + gradient feature perturbation
  5. Ewaluacja: AUC per attack type (structure-only, feature-only, combined)

Modele / Baseline:

ModelOpis
EDoG-originalbaseline z Xu 2022
FAD onlyIsolation Forest na features
EDoG-CombinedLP+GGD+OD+FAD fuzja

Metryki:

  • Główna: AUC na combined attacks (próg sukcesu: >0.85 vs <0.70 baseline)
  • Dodatkowe: AUC per attack type, false positive rate na clean grafach
  • Test statystyczny: DeLong test (EDoG-Combined vs EDoG-original, α=0.05)

Wyniki: (do wypełnienia po wykonaniu)

ModelAUC (structure-only)AUC (feature-only)AUC (combined)

Wnioski: (do wypełnienia po wykonaniu)


FG-EXP-3: Red Team EDoG — 6 Adaptive Attack Strategies

Status: planned Priorytet: high Powiązany pomysł: FG-3 Dodano: 2026-05-27

Hipoteza: Spośród 6 adaptive attack strategies (A1-A6) przynajmniej 2 nowe strategie (Gradual Injection lub Subgraph Targeting) osiągają wyższy evasion rate niż A1 (Low-Score Targeting, baseline z EDoG paper) — wykazując niezidentyfikowane wektory ataku wymagające nowych defensywnych środków.

Dane:

  • Dataset: Cora, Citeseer (publiczne)
  • Podział: standardowy
  • Preprocessing: każda strategia ataku generuje perturbacje grafu zgodnie z definicją

Metoda:

  1. A1: Low-Score Targeting — replika z EDoG paper (baseline)
  2. A2: Gradual Injection — stopniowe wstrzykiwanie krawędzi fraudu (nie jednorazowo)
  3. A3: Subgraph Targeting — atakuj izolowany subgraf z nieskorelowanymi cechami
  4. A4: OutlierDetect Evasion — perturbacje minimalizujące outlier score
  5. A5: Ensemble Confusion — jednoczesny atak na LP + GGD + OD
  6. A6: Temporal Adaptive — powolne zmiany imitujące naturalną ewolucję grafu
  7. Pomiar: evasion rate (% fraudu niezidentyfikowanego) per strategia przy budżecie perturbacji B

Modele / Baseline:

ModelOpis
EDoG-original (target)obrońca
A1: Low-Score Targetingbaseline attacker (EDoG paper)
A2–A6: novel strategiesnowe strategie atakujące

Metryki:

  • Główna: evasion rate @ B=5% perturbacji (próg: A2 lub A3 > A1 evasion rate)
  • Dodatkowe: evasion rate vs budżet (krzywa), czas generowania ataku
  • Test statystyczny: paired t-test (nowe strategie vs A1, α=0.05)

Wyniki: (do wypełnienia po wykonaniu)

StrategiaEvasion rate @B=5%Evasion rate @B=10%Czas generowania

Wnioski: (do wypełnienia po wykonaniu)


Pipeline danych

Dane wejściowe: publiczne grafy (YelpChi, Amazon, Cora, Citeseer) pobierane przez PyG dataset loaders. Ataki generowane on-the-fly: RL-S2V (PyTorch) dla structure attacks, gradient perturbation (autograd) dla feature attacks. Format wyjściowy: PyG Data objects z perturbowanymi edge_index i x.

Wymagania techniczne

Środowisko

Python: 3.11+
GPU: opcjonalnie ale zalecane dla GNN trenowania
RAM: min. 8 GB
Dysk: ~2 GB (grafowe datasety)

Kluczowe biblioteki

# requirements-research.txt
torch>=2.0
torch-geometric>=2.4
scikit-learn>=1.3
networkx>=3.1
numpy>=1.25
deeprobust>=0.2     # adversarial graph attacks

Status eksperymentów

IDTytułStatusPriorytetETAWynik
FG-EXP-1GNN benchmark prostota vs złożonośćplannedhigh
FG-EXP-2EDoG-Combined feature attacks extensionplannedhigh
FG-EXP-3Red team EDoG — 6 adaptive strategiesplannedhigh