
ग्राफ न्यूरल नेटवर्क पर एक ब्लैक-बॉक्स प्रोटोकॉल के अंतर्गत मॉडल-निष्कर्षण हमलों और स्वामित्व सुरक्षा उपायों (वॉटरमार्किंग, आउटपुट पर्टर्बेशन, क्वेरी डिटेक्शन) के मूल्यांकन हेतु बेंचमार्क और लाइब्रेरी।
एक एकल पुनरुत्पादनीय ब्लैक-बॉक्स प्रोटोकॉल के अंतर्गत ग्राफ न्यूरल नेटवर्क पर मॉडल-निष्कर्षण हमलों और स्वामित्व रक्षाओं के मूल्यांकन के लिए एक एकीकृत बेंचमार्क और लाइब्रेरी।
GraphIP-Bench क्यों · मुख्य बातें · त्वरित शुरुआत · अनुसंधान प्रश्न · लेआउट · उद्धरण
क्लाउड सेवाओं के रूप में तैनात ग्राफ न्यूरल नेटवर्क को मॉडल-निष्कर्षण हमलों के माध्यम से चुराया जा सकता है: एक विरोधी सावधानीपूर्वक चुने गए क्वेरी सबमिट करता है, एंडपॉइंट द्वारा लौटाए गए लेबल या विश्वास स्कोर रिकॉर्ड करता है, और एक स्थानीय सरोगेट को प्रशिक्षित करता है जो लक्ष्य के व्यवहार की नकल करता है। एक सफल चोरी मालिक की बौद्धिक संपदा को लीक करती है, प्रति-क्वेरी राजस्व को कमजोर करती है, और प्रतिस्पर्धियों को कम लागत पर मालिकाना कार्यक्षमता को फिर से बनाने देती है।
स्वामित्व रक्षाओं की एक बढ़ती श्रृंखला — वॉटरमार्किंग, फिंगरप्रिंटिंग, आउटपुट परेशानी, क्वेरी-पैटर्न पहचान — ऐसी चोरी को रोकने या ट्रेस करने का प्रयास करती है। लेकिन इस क्षेत्र में प्रयोगात्मक अभ्यास खंडित है: अध्ययन निजी स्प्लिट, असंगत बजट और असंगत मेट्रिक्स का उपयोग करते हैं; कुछ मौजूदा टेस्टबेड मजबूती या गोपनीयता पर केंद्रित हैं और मॉडल निष्कर्षण के साथ-साथ स्वामित्व सत्यापन को बाहर रखते हैं।
GraphIP-Bench इस अंतर को संबोधित करता है। यह दो पूरक ट्रैक के मूल्यांकन को मानकीकृत करता है — निष्कर्षण ट्रैक (एक विरोधी एक सरोगेट को प्रशिक्षित करता है जो तैनात GNN की नकल करता है) और स्वामित्व ट्रैक (मॉडल मालिक निष्कर्षण के बाद वॉटरमार्क या फिंगरप्रिंट सत्यापित करता है) — साझा स्प्लिट, क्वेरी और बजट के साथ एक एकल ब्लैक-बॉक्स प्रोटोकॉल के अंतर्गत। फिर हम एक संयुक्त हमला-और-रक्षा ट्रैक जोड़ते हैं जो हर रक्षित लक्ष्य पर हर निष्कर्षण हमला चलाता है और निकाले गए सरोगेट पर वॉटरमार्क उत्तरजीविता को मापता है — वह सेटिंग जो वास्तव में निर्धारित करती है कि कोई रक्षा उपयोगी है या नहीं।
| घटक | यह आपको क्या देता है |
|---|---|
| 12 आक्रमण | छह MEA-शैली बेसलाइन (MEA0–MEA5), adversarial (AdvMEA), centrality-संचालित (CEGA), structure-aware (Realistic), और तीन data-free प्रकार (DFEA_I/II/III) |
| 12 रक्षा | 5 ownership-tracing (BackdoorWM, RandomWM, SurviveWM, ImperceptibleWM, Integrity) + 7 information-limiting (OP_low, OP_high, PR_2bit, PR_top1, PRADA, AdaptMisinfo, GradRedir) |
| 10 डेटासेट | Homophilic citation (Cora, CiteSeer, PubMed), coauthor/product (CoauthorCS, CoauthorPhysics, Computers, Photo), बड़े पैमाने पर (OGBN-Arxiv), heterophilic (RomanEmpire, AmazonRatings) |
| 3 बैकबोन × 3 कार्य | GCN, GAT, GraphSAGE, नोड वर्गीकरण, लिंक प्रेडिक्शन, ग्राफ वर्गीकरण पर |
| संयुक्त ट्रैक | निकाले गए surrogate पर surrogate निष्ठा और वॉटरमार्क उत्तरजीविता, सभी एक ही प्रोटोकॉल के अंतर्गत |
| पुनरुत्पादनीयता | सार्वजनिक स्प्लिट, साझा क्वेरी सेट, निश्चित सीड, JSON-Lines आउटपुट, तैयार एग्रीगेशन स्क्रिप्ट |
एक प्रोटोकॉल, दो पक्षप्रत्येक आक्रमण का मूल्यांकन प्रत्येक रक्षा के विरुद्ध समान स्प्लिट, बजट और endpoint मान्यताओं के अंतर्गत किया जाता है। निष्ठा, स्वामित्व सत्यापन, उपयोगिता और कंप्यूट लागत एक साझा मीट्रिक सूट पर रिपोर्ट की जाती है। |
वॉटरमार्क उत्तरजीविता, केवल एम्बेडिंग नहींसंयुक्त ट्रैक मापता है कि मॉडल के वास्तव में निकाले जाने के बाद वॉटरमार्क अभी भी सत्यापित होता है या नहीं — उस अंतराल को उजागर करते हुए जिसे एकल-मॉडल मूल्यांकन छोड़ देते हैं। |
Heterophilic और बड़े पैमाने के ग्राफमुख्य प्रोटोकॉल के सात homophilic ग्राफ से आगे, हम आक्रमण और रक्षा व्यवहार का तनाव-परीक्षण करने के लिए OGBN-Arxiv (169K नोड, 40 वर्ग) और heterophilic RomanEmpire / AmazonRatings जोड़ते हैं। |
संरचना से ही पुनरुत्पादनीयनिश्चित सीड, साझा क्वेरी सेट, और प्रति (dataset, attack, defense, regime, budget, seed) सेल JSON-Lines आउटपुट रिकॉर्ड। एकल-सीड रन सीधे पेपर के संबंधित सेल से तुलनीय है। |
| संकेत | बेंचमार्क में पैमाना |
|---|---|
| एक्सट्रैक्शन आक्रमण | 12 |
| स्वामित्व / information-limiting रक्षा | 12 |
| ग्राफ डेटासेट | 10 |
| GNN बैकबोन | 3 (GCN, GAT, GraphSAGE) |
| ग्राफ-लर्निंग कार्य | 3 (node / link / graph) |
| डेटा-उपलब्धता व्यवस्थाएँ | 4 (both, features-only, structure-only, data-free) |
| मानकीकृत क्वेरी बजट | 5 (0.05× — 1.00× परीक्षण आकार) |
| प्रति सेल सीड | 3 |
| मूल्यांकन ट्रैक | 3 (extraction, ownership, joint) |
git clone https://github.com/LabRAI/GraphIP-Bench.git
cd GraphIP-Bench
conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt
एक्सट्रैक्शन ट्रैक का एक सेल चलाएँ:
python scripts/run_rq1_single.py \
--dataset Cora \
--attack MEA0 \
--regime both \
--budget 0.25 \
--seed 0 \
--gpu \
--output-dir outputs/RQ1
एक ही डेटासेट पर संयुक्त आक्रमण-और-रक्षा ट्रैक चलाएँ:
python examples/run_joint_evaluation.py \
--dataset Cora \
--seed 0 \
--gpu
प्रत्येक रन outputs/ में प्रत्येक (attack, defense, regime, budget, seed) ट्यूपल के लिए एक JSON-Lines रिकॉर्ड लिखता है। रिकॉर्ड्स को scripts/ में मौजूद हेल्पर्स (जैसे merge_rq1_rq5_faithful_results.py) की सहायता से मर्ज और विश्लेषित किया जा सकता है।
GraphIP-Bench Linux (अनुशंसित) को Python 3.10+ के साथ सपोर्ट करता है। हम PyTorch / DGL / PyG के वर्ज़न पिन करते हैं क्योंकि DGL 2.1.0 के graphbolt कर्नेल केवल CUDA 12.1 पर PyTorch 2.0–2.2 के लिए प्री-बिल्ट शेयर्ड लाइब्रेरीज़ के रूप में उपलब्ध होते हैं।
conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt
python -m venv .venv && source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
| लाइब्रेरी | संस्करण | पिन क्यों किया गया |
|---|---|---|
| PyTorch | 2.2.1 + cu121 | DGL 2.1.0 graphbolt wheels केवल PT 2.0–2.2 / CUDA 12.1 का समर्थन करते हैं |
| DGL | 2.1.0 + cu121 | लोडर द्वारा उपयोग किए जाने वाले Graphbolt कर्नेल |
| PyTorch Geometric | 2.7.0 | लिंक-प्रेडिक्शन और ग्राफ-क्लासिफिकेशन एडाप्टर |
| OGB | 1.3.6 | OGBN-Arxiv लोडर |
| NumPy | < 2.0 | DGL कर्नेल ABI |