Downloads · 30 days
0
Dee-ui/ieee-cis-fraud-detector
ieee-cis-fraud-detector is a tabular classification model from Dee-ui. Use it for the tabular classification task on the model card, and read the license before you ship it in a product. The card lists the license as mit.
A lightgbm model that scores card transactions for fraud risk, trained on the IEEE-CIS Fraud Detection dataset.
Downloads · 30 days
0
Access
Public
Updated Aug 27, 2026
Repo size
34.8 MB
Likes
1
Public
Click a slice to open those files.
.joblib34.8 MB · 100%
From the Hugging Face model README
A lightgbm model that scores card transactions for fraud risk, trained on the IEEE-CIS Fraud Detection dataset.
Full project: https://github.com/Dee-ui/ieee-cis-fraud-detection
| File | Contents |
|---|---|
feature_engineer.joblib | The fitted transformer. Turns a raw transaction into 284 features. |
final_model.joblib | The trained model. |
final_model_metadata.json | Feature list, threshold, and the scores it was measured at. |
Both files are needed. The model expects features in one exact order, which only the transformer produces.
Measured on a held-out period that comes strictly after everything it was trained on, 2018-04-20 to 2018-05-31.
| Metric | Baseline | This model |
|---|---|---|
| PR-AUC | 0.0344 | 0.6068 |
| Cross-validated PR-AUC | - | 0.6334 |
Operating threshold 0.4222, chosen by a cost model at a 2% manual review capacity, not left at the default 0.5.
import joblib, json, pandas as pd
from huggingface_hub import hf_hub_download
repo = "Dee-ui/ieee-cis-fraud-detector"
engineer = joblib.load(hf_hub_download(repo, "feature_engineer.joblib"))
model = joblib.load(hf_hub_download(repo, "final_model.joblib"))
metadata = json.load(open(hf_hub_download(repo, "final_model_metadata.json")))
# A raw transaction. Any column you leave out is treated as unknown.
transaction = pd.DataFrame([{
"TransactionID": 3663549, "TransactionDT": 18403224,
"TransactionAmt": 31.95, "ProductCD": "W", "card1": 10409,
}])
features = engineer.transform(transaction)
probability = model.predict_proba(features[metadata["feature_names"]])[:, 1][0]
print(probability, "review" if probability >= metadata["chosen_threshold"] else "pass")
MIT.