fraud.ai — a concept demo for mortgage lending
Get that decision wrong one way, and a family that could actually afford the home gets bounced by an over-cautious process. Get it wrong the other way, and the loan closes on inflated income, undisclosed debt, or a straw buyer standing in for someone who couldn't qualify — a loss the lender usually doesn't discover until a repurchase demand or a delinquency, months later. This demo shows one way an AI system can widen that forty-second window without slowing every application down: it scores each application for anomaly risk the moment it's submitted, using signals an underwriter would eventually notice anyway — just faster, and across every application at once, not only the ones that happen to get a second look.
What you won't find on this page
Not marketing language — verifiable disciplines
Every vendor says "real AI." Here's what that has to mean, mechanically, for every number you're about to interact with below — not a claim, a description of how the rest of this page actually works.
Every number below is real — computed live by the same Isolation Forest this whole demo runs on, not a canned example. Click the button to score Devon's application the way the model actually would.
Loading Devon's application…
Click "Score this application" to send Devon's exact feature values through the real, fitted model and see the composite risk score it produces — the same formula used everywhere else in this demo.
Curious what a typical clean application looks like next to Devon's?
Next: Move the Threshold →Devon's score either clears the review line or it doesn't — and where that line sits is a real, adjustable decision, not a fixed constant.
Drag the red line left or right across the chart below. Every one of the 880 synthetic applications is plotted by its real composite risk score; the "flagged" and "cleared" counts update instantly as you move the line — this is the exact same threshold mechanism described in the composite score formula below.
What moving the line actually costs you
Precision and recall pull in opposite directions — drag the line above and watch why, live. Computed across all 880 synthetic applications (train + validation + held-out combined), so you can feel the trade-off yourself before Step 5's held-out-only proof gives you the real accuracy claim.
The composite score isn't just the Isolation Forest's raw anomaly number — it's a weighted blend of five real signals, and the weights are yours to adjust.
Drag any slider to change how much that signal counts toward the composite score. The other sliders automatically rescale so the weights always sum to 1 — a real constraint, not a display trick — and every application's score, the threshold chart above, and Devon's score all recompute live using the exact weighted-sum formula in the evidence panel.
Any two of the seven engineered signals can become the x/y axes below — not a fixed, permanently-chosen pair.
Pick an X-axis and a Y-axis from the dropdowns. The scatter re-renders using the real value of whichever two features you chose. Position is exact for those two dimensions only — color is never limited to 2D: every dot's color always reflects the full five-signal composite score (current weights included), computed from all seven engineered features, not an approximation of just the two you're viewing.
Position: exact on the two chosen axes. Color: exact full composite score across all 7 signals — nothing here is silently frozen or approximated.
Next: Verify the Proof →Everything above was exploration. This section is the actual evidence: what the model does on 141 applications it never saw while being built or tuned.
Loading evidence…
Draw one held-out application at a time first, then run the whole set — this mirrors how the proof itself was computed: one application, scored, one at a time, never batch-approximated.
Once you've seen a few individually, run the complete held-out set and watch the running recall/precision converge on the exact numbers in the evidence panel above.
Plain English: a point is anomalous if it takes very few random feature splits to separate it from everything else. The score turns "average number of splits to isolate this point" into a 0–1 number where higher means more anomalous.
s(x, n) = 2−E[h(x)] / c(n)
Liu, Ting & Zhou (2008),
the paper this method is from, defines c(n) — the normalizing
constant — as the average binary-search-tree
unsuccessful-search path length for n points:
c(n) = 2H(n−1) − 2(n−1)/n, H(i) ≈ ln(i) + 0.5772…
Plain English: blend the standardized Isolation Forest score with four domain-specific FinCEN/Fannie Mae-grounded red-flag signals, weighted so the weights always sum to 1 — the same constraint the sliders enforce live.
composite(x) = w_iso·z_iso + w_ami·z_ami + w_dtigap·z_dtigap + w_vel·z_vel + w_addr·addr_flag, Σw = 1
Plain English: of every genuinely fraudulent application in the held-out set, what fraction did the model actually flag?
recall = TP / (TP + FN)
sklearn.ensemble.IsolationForest, n_estimators=200,
contamination="auto", random_state=20260824,
fit on 563 training applications only, no fraud labels used in
fitting — the entire point of an unsupervised method. The
threshold is the 85th percentile of the composite score computed on that
same training population before the 141-application
held-out set was scored even once. This
run's named self-deception risk is train/test leakage via
held-out-set reuse: the Step 2 algorithm-selection bakeoff
already used one held-out split to compare methods, so a second,
differently-seeded split (never touched by that comparison or by model
fitting) was carved out specifically for this proof — see
the full write-up for the
exact guard.
Why trust this family of method at all? Isolation Forest is one of the most cited anomaly-detection algorithms in the field (Liu, Ting & Zhou 2008 has been cited thousands of times) and ships as a standard model in scikit-learn — it's already in production use for exactly this kind of rare-event scoring, including anomaly-based scoring integrated with classification models for Residential Mortgage-Backed Securities (RMBS) payment-risk prediction and widely in card-transaction fraud engines.
Everything above is real. It is also incomplete on purpose — a model is only as trustworthy as what its builders admit it can't yet do. This step isn't a disclaimer in a footer; it's the same held-out discipline from Step 5, pointed at the demo's own methodology instead of at an application.
Read the algorithm-selection record below — pulled live from the same evidence payload Step 5 renders, word for word, not written separately for marketing purposes.
Loading the algorithm-selection record…
Four specific, named ways this run's proof can mislead a reader who stops at the
headline recall number — each one is also in expected_failure_modes
on the raw technical write-up, not
softened for this page.
Loading known limitations…
Why show this at all? A technical buyer's next question after any accuracy number is always "where does this break?" Naming the answer first — specifically, not generically — is the fastest way to earn the benefit of the doubt on everything else on this page.
Not a black box
fraud.ai doesn’t ask you to take a vendor’s “proprietary AI” claim on faith. Each input to the composite score is grounded in a named regulator publication, a named GSE red-flag taxonomy, or a named peer-reviewed method — click through to the primary source on any card below, no lead-gen form required.
IsolationForest class fitted for this demo — no proprietary model behind the score.
scikit-learn.org ↗
“One of the most-cited anomaly-detection methods in machine learning — not a proprietary score invented for a sales demo.”
Liu, Ting & Zhou, “Isolation Forest,” IEEE ICDM 2008