2 min readfrom Machine Learning

Your GNN is probably just an overcomplicated MLP (Tabular Leakage). We built SynthFin-AML to enforce strict causal boundaries. [P]

Our take

Standard graph neural network (GNN) evaluations often mask a critical flaw: temporal leakage. Our investigation into anti-money laundering models revealed widespread instances where GNNs effectively "look into the future" during training, leading to artificially inflated performance. To address this, we developed SynthFin-AML v10.0, a benchmark enforcing strict causal boundaries through a 3-snapshot architecture and distribution-aware data splitting. Initial results show GraphSAGE narrowly outperforms LightGBM, highlighting the value of graph structure when evaluated correctly. See "py-evoFE" for related work on automated feature engineering.

The recent scrutiny of graph neural network (GNN) evaluations in anti-money laundering (AML) applications, highlighted by the SynthFin-AML release, underscores a critical, often overlooked challenge in deploying AI models on dynamic data. The researchers’ discovery of widespread temporal leakage – essentially, models “seeing the future” during training – is a significant finding that casts doubt on the validity of many existing GNN benchmarks. It’s a reminder that even sophisticated architectures can be misled by flawed experimental setups. This issue echoes concerns raised in other areas of AI development, particularly as we move towards more complex, real-world applications. As explored in [AI agents need their own identity before they need a gateway], the reliability of AI systems hinges on rigorous evaluation and a clear understanding of their limitations, a principle that extends directly to the realm of dynamic graph analysis. Furthermore, the focus on ensuring distribution parity between fraud and retail transaction amounts, effectively eliminating another source of potential leakage, demonstrates a commendable level of methodological rigor.

The core problem, as the SynthFin-AML team rightly points out, lies in the common practice of using standard transductive random splits when working with dynamic graphs representing financial transactions. These splits inherently violate the temporal order, allowing the model to learn from future information, thereby artificially inflating performance metrics. Their proposed solution – a 3-snapshot architecture that enforces a strict point-in-time split – is a pragmatic and effective way to address this issue. The subsequent benchmarking against a LightGBM model, using carefully engineered graph features, provides a crucial reality check. While GNNs, as demonstrated by the 0.881 PR-AUC score, can offer a slight edge over traditional tree-based models (0.848), the difference isn’t dramatic, suggesting that the inherent complexity and overhead of GNNs may not always justify their use, particularly when dealing with relatively simple datasets. This is relevant to the broader conversation around feature engineering and model selection, as shown by [py-evoFE: Automated Evolutionary Feature Engineering for Tabular ML in Python (Genetic Algorithms + Scikit-Learn + Polars)], where automated feature engineering can sometimes outperform manually crafted features, even in graph-based contexts.

The decision to submit the benchmark to PyTorch Geometric is particularly noteworthy. Standardizing evaluation practices is essential for fostering reproducible research and ensuring that advancements in GNNs are genuinely meaningful. It highlights a growing awareness within the AI community of the importance of robust experimental design and the potential pitfalls of relying on flawed benchmarks. The team’s willingness to publicly share their dataset and code – SynthFin-AML v10.0 – is a testament to their commitment to advancing the field. The findings also subtly challenge the prevailing narrative that graph-based approaches are inherently superior for all financial data problems. The relatively small performance gap between GNNs and well-engineered tabular models suggests that a focus on data quality, feature engineering, and careful evaluation design may be more impactful than simply adopting a complex architecture. Considering the cost-performance trade-offs, as discussed in [Cohere Parse 5 loses the benchmark on points. It wins on cost per page], practical applications often benefit from simpler, more interpretable models, especially when marginal gains come at a significant complexity cost.

Looking ahead, the challenge lies in disseminating these findings and encouraging wider adoption of stricter evaluation standards for dynamic graphs. It’s likely that temporal leakage, or similar forms of data leakage, are pervasive in other graph domains beyond AML. The SynthFin-AML team’s work serves as a valuable reminder that rigorous evaluation isn't merely a formality; it’s a crucial step in building trustworthy and reliable AI systems. A key question to watch is whether the PyTorch Geometric community will embrace this new benchmark and integrate it into their standard evaluation pipelines. Furthermore, will other researchers build upon this work to develop even more robust and nuanced evaluation methodologies for dynamic graph data?

We noticed our anti-money laundering models were performing suspiciously well. After digging into standard baselines on dynamic graphs, we found widespread temporal leakage in message-passing. If you train a GNN on a static snapshot of a dynamic graph, your model is likely cheating by seeing future edges during training.

We got sick of reviewing papers with broken evals, so we released SynthFin-AML v10.0 (100k nodes, 1.2M edges) to force strict causal boundaries.

The Temporal Leakage Trap Standard transductive random splits fundamentally fail on financial transaction networks because they violate the arrow of time. If Node A sends funds to B on Day 2, and B to C on Day 10, a standard 2-hop GNN will pull the Day 10 edge into the loss calculation for Day 2. The model literally looks into the future to compute embeddings.

The Fix: 3-Snapshot Architecture To stop the model from cheating by looking ahead at the transaction graph, we enforced a strict 3-snapshot point-in-time split:

  • Train Graph (Edges ≤≤ Day 7)
  • Val Graph (Edges ≤≤ Day 8)
  • Test Graph (Edges ≤≤ Day 10)

By physically disjointing the temporal windows, we bound the receptive field of the GNN to the true causal horizon.

Graph vs Tabular Reality Check Most synthetic datasets suffer from distribution leakage, where fraud transaction amounts are statistically separable from normal retail traffic. We killed the "amount split cheat" by ensuring fraud and retail transaction amounts share the exact same lognormal distribution (μ=8.517,σ=0.8μ=8.517,σ=0.8).

With tabular leakage fixed, we benchmarked a tuned LightGBM against GraphSAGE to see if the GNN overhead actually pays off for AML. We engineered 11 point-in-time graph features (Weighted PageRank, neighbor volume aggregates) for the tree model.

Results (PR-AUC on strict temporal split):

  • LightGBM (11 features): 0.848
  • GraphSAGE (Inductive): 0.881

Spoiler: GraphSAGE barely beats trees here unless your edge features are incredibly dense. The gap isn't astronomical, but it’s a real, mathematically sound leap—not a leakage artifact.

To establish this as a stricter evaluation standard for dynamic graphs, we’ve submitted the benchmark upstream to PyTorch Geometric.

Curious if anyone else is getting GNNs to scale on tabular financial data without OOMing or if you have seen similar temporal leakage issues in other graph domains.

Repo: https://github.com/valiyevoktay-cmd/synthfin-aml-
PyTorch Geometric PR: #10774

submitted by /u/Glabmayt2075
[link] [comments]

Read on the original site

Open the publisher's page for the full experience

View original article