File size: 982 Bytes
697cf75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env python3
"""Score the first FDB test rows with the released pipeline:  python examples/quickstart.py [n]

Needs the FDB package, and Kaggle API credentials for the Kaggle-hosted sets (see system_one_fraud/fdb.py).
"""
import json
import sys
from pathlib import Path

ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(ROOT))

from system_one_fraud import FraudPipeline  # noqa: E402
from system_one_fraud.fdb import load_split  # noqa: E402

n = int(sys.argv[1]) if len(sys.argv) > 1 else 8
key = json.loads((ROOT / "release.json").read_text())["set"]
_, test, _ = load_split(key)
rows = test.head(n)
pipe = FraudPipeline.from_pretrained(ROOT)
states, _ = pipe.states(rows)
print("System One evidence for the first row:")
print(json.dumps(states[0], indent=1, ensure_ascii=False))
ids = rows["EVENT_ID"] if "EVENT_ID" in rows.columns else rows.index
for event_id, p in zip(ids, pipe.predict_proba(rows)):
    print(f"{event_id}  probability = {p:.4f}")