HTML + TeX

Computational XGBoost model

PenuX maps early laboratory data to a boosted-tree score and an estimated probability of later Atlanta-defined severe acute pancreatitis (SAP).

Research use only. The equations and feature importances are research outputs, not a bedside scoring rule.

Feature vector

\[X_t=[\mathrm{WBC},\mathrm{CRP},\mathrm{BUN},\mathrm{Cr},\mathrm{Glu},\mathrm{Ca},\mathrm{ALB},\mathrm{LDH},\mathrm{AMY},\mathrm{Hb},\mathrm{APTT},\mathrm{PT},\ldots]\]

Only measurements available at or before prediction time are eligible. Future organ-failure variables or post-deterioration interventions are excluded.

XGBoost

Boosted-tree score

\[S(X)=\sum_{m=1}^{M}\eta f_m(X)\]

Each tree contributes a nonlinear correction; this is why XGBoost does not have one linear coefficient per laboratory variable.

Probability

\[p_{raw}(X)=\sigma(S(X))=\frac{1}{1+e^{-S(X)}}\]

When calibration is enabled, a development-only mapping \(g\) gives \(p_{cal}=g(p_{raw})\).

High-sensitivity operating point

\[T_{watch}=\arg\max_T\mathrm{Specificity}(T)\quad\mathrm{s.t.}\quad\mathrm{Sensitivity}(T)\ge0.98\]
\[\mathrm{Alert}(X)=\mathbf{1}\{p_{cal}(X)\ge T_{watch}\}\]

The threshold is locked from out-of-fold development predictions and is not moved after inspection of the final test cohort.

Learned feature weights: XGBoost gain

The table below is loaded from model-weights.json, generated from the 1,289-record Guilin Multi-ML cohort. The source target is explicitly normalized from raw 0=SAP, 1=non-SAP to PenuX 1=SAP.

total records
development SAP prevalence
scale_pos_weight
RankFeatureGain weightSplits
Loading model weights…
Do not interpret gain as a coefficient.

Gain is an unsigned measure of how much a feature improved tree objectives when it was used for splits. It cannot be multiplied by a raw lab value to reproduce the XGBoost probability. Direction and patient-specific contribution require SHAP/PDP or direct tree inference.

Outcome

\[Y=\begin{cases}1,&\text{later Atlanta-defined SAP}\\0,&\text{non-SAP}\end{cases}\]

Open the synthetic simulator →