Skip to content

Conversation

@Serina-2002
Copy link

Summary

  • Adds a runnable example at examples/gnnfingers/gnnfingers_full_pipeline.py that:
    • trains victim models (node/graph), link-pred encoders, and an optional pairwise matcher,
    • generates positive/negative variants,
    • computes Fingerprinting AUROC and ARUC,
    • saves plots/CSVs/JSON under outputs/.
  • Includes examples/gnnfingers/README.md.
  • Uses PYGIP_DEVICE if set (e.g., cuda:0), otherwise falls back to CPU/GPU availability.
  • Resolves --outdir relative to the repo so outputs land in PyGIP/outputs/.

Why

A single end-to-end entry point makes it easy to reproduce fingerprint-based
ownership verification experiments and compare metrics quickly, matching the
repository’s example-first structure.

How to run

# Cora node classification + fingerprinting
python examples/gnnfingers/gnnfingers_full_pipeline.py --dataset Cora --variants 200 --save-plots

# PROTEINS graph classification + optional matcher
python examples/gnnfingers/gnnfingers_full_pipeline.py --dataset PROTEINS --variants 200 \
  --train-matcher --matcher-epochs 100 --matcher-lr 5e-4 --save-plots

@Edlison Edlison changed the base branch from main to dev September 30, 2025 01:21
@Edlison
Copy link
Contributor

Edlison commented Sep 30, 2025

Could you check that your code follows our implementation guideline? The new method should be under models/defense, and the examples folder should include only runnable scripts. If anything in the guideline is unclear, please let me know so we can align.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants