Semi-structured multi-state delinquency model for mortgage default
Organizations: Business School, The University of Edinburgh, UK. · School of Management, Technische Universität München, Germany. · School of Business and Economics, Humboldt-Universität zu Berlin, Germany. · Scientific Computing Center, Karlsruhe Institute of Technology, Germany.
Abstract
We propose a semi-structured discrete-time multi-state model to analyse mortgage delinquency transitions. This model combines an easy-to-understand structured additive predictor, which includes linear effects and smooth functions of time and covariates, with a flexible neural network component that captures complex nonlinearities and higher-order interactions. To ensure identifiability when covariates are present in both components, we orthogonalise the unstructured part relative to the structured design. For discrete-time competing transitions, we derive exact transformations that map binary logistic models to valid competing transition probabilities, avoiding the need for continuous-time approximations. In simulations, our framework effectively recovers structured baseline and covariate effects while using the neural component to detect interaction patterns. We demonstrate the method using the Freddie Mac Single-Family Loan-Level Dataset, employing an out-of-time test design. Compared with a structured generalised additive benchmark, the semi-structured model provides modest but consistent gains in discrimination across the earliest prediction spans, while maintaining similar Brier scores. Adding macroeconomic indicators provides limited incremental benefit in this out-of-time evaluation and does not materially change the estimated borrower-, loan-, or duration-driven effects. Overall, semi-structured multi-state modelling offers a practical compromise between transparent effect estimates and flexible pattern learning, with potential applications beyond credit-transition forecasting.
Figures & tables
| Training Set | ||||||
| To state | ||||||
| 0 | 1 | 2 | 3 | Total | ||
| From state | 0 | 95,866 | 12,476 | - | - | 108,342 |
| (88.5%) | (11.5%) | - | - | (100%) | ||
| 1 | 8,245 | 2,674 | 5,860 | - | 16,779 | |
| (49.1%) | (15.9%) | (34.9%) | - | (100%) | ||
| Variable | Min. | Mean | Median | Max. | SD. |
| Credit Score | 386.00 | 747.81 | 756.00 | 832.00 | 46.72 |
| Original Interest Rate (%) | 2.25 | 3.96 | 3.99 | 6.12 | 0.50 |
| Original Loan-to-Value Ratio (%) | 6.00 | 73.85 | 79.00 | 339.00 | 17.34 |
| Mortgage Insurance (%) | 0.00 | 6.60 | 0.00 | 40.00 | 11.50 |
| Original Loan Term (months) | 96.00 | 318.42 | 360.00 | 360.00 | 74.08 |
| Original UPB ($) | 14,000.00 | 225,947.27 | 204,000.00 | 985,000.00 | 117,011.18 |
| Variable(s) | Cardinality |
| Number of Borrowers , First Time Homebuyer , Super Conforming | 2 |
| Channel , Loan Purpose , Mortgage Insurance Cancellation , Occupancy Status | 3 |
| Number of Units | 4 |
| Original Debt-to-Income Ratio , Property Type | 5 |
| Seller Name , Servicer Name | 31 |
| US state or territory | 54 |
| MSE (continuous-time) | MSE (discrete-time) | |||||
| Transition | 10K | 50K | 100K | 10K | 50K | 100K |
| 0 0 | 0.0016 (0.00024) | 0.0015 (0.00026) | 0.0015 (0.00022) | 0.0007 (0.0002) | 0.0006 (0.00017) | 0.0006 (0.00015) |
| 0 1 | 0.0013 (0.00017) | 0.0013 (0.00014) | 0.0012 (0.00014) | 0.0006 (0.00013) | 0.0005 (0.00013) | 0.0005 (0.00012) |
| 0 2 | 0.0006 (0.00006) | 0.0006 (0.00005) | 0.0006 (0.00005) | 0.0002 (0.00003) | 0.0001 (0.00003) | 0.0001 (0.00003) |
| 0 3 | 0.006 (0.00075) | 0.0057 (0.00059) | 0.0055 (0.0006) | 0.0018 (0.00045) | 0.0015 (0.00043) | 0.0015 (0.00038) |
| MAE (continuous-time) | MAE (discrete-time) | |||||
| # | Macro. Vars. | Transition | Initial LR | Decay Steps | Decay Rate | Optimizer | First-moment | Epochs | Batch Size |
| 1 | No | 0 1 | 0.00046416 | 10,000 | 0.99 | Adam | 0.80 | 37 | 32 |
| 2 | No | 1 0 | 0.01 | 10,000 | 0.80 | Adam | 0.99 | 40 | 32 |
| 3 | No | 1 2 | 0.01 | 15,000 | 0.99 | Adam | 0.80 | 27 | 32 |
| 4 | No | 2 0 | 0.01 | 15,000 | 0.90 | Adam | 0.99 | 47 | 32 |
| 5 | No | 2 1 | 0.01 | 10,000 | 0.80 | Adam | 0.99 | 99 | 32 |
| 6 | No | 2 3 | 0.01 | 15,000 | 0.99 | Adam | 0.90 | 39 | 32 |
| Name | 0 1 | 1 0 | 1 2 | 2 0 | 2 1 | 2 3 |
| channelC | -0.12 (-0.17, -0.07) | 0.06 (-0.04, 0.16) | 0.08 (-0.05, 0.21) | -0.25 (-0.53, 0.02) | 0.22 (-0.14, 0.57) | -0.30 (-0.52, -0.08) |
| channelR | -0.27 (-0.32, -0.22) | 0.09 (-0.00, 0.19) | 0.24 (0.12, 0.36) | -0.13 (-0.38, 0.12) | 0.08 (-0.26, 0.42) | -0.21 (-0.41, -0.01) |
| cnt_borrone | 0.48 (0.45, 0.51) | -0.19 (-0.25, -0.13) | 0.05 (-0.03, 0.13) | -0.02 (-0.18, 0.14) | 0.04 (-0.17, 0.25) | -0.03 (-0.15, 0.10) |
| cnt_units | -0.04 (-0.10, 0.02) | 0.17 (0.02, 0.32) | 0.17 (-0.01, 0.34) | 0.01 (-0.36, 0.37) | -0.13 (-0.63, 0.37) | 0.03 (-0.24, 0.29) |
| cov_dummy | 1.04 (1.00, 1.08) | -0.15 (-0.23, -0.07) | 1.51 (1.42, 1.61) | 0.14 (-0.05, 0.32) | -0.44 (-0.67, -0.22) | 1.15 (1.00, 1.30) |
| dti1 | 0.15 (0.07, 0.23) | -0.16 (-0.33, 0.01) | -0.05 (-0.28, 0.17) | -0.31 (-0.80, 0.18) | -0.26 (-0.86, 0.35) | -0.16 (-0.57, 0.25) |
| Name | 0 1 | 1 0 | 1 2 | 2 0 | 2 1 | 2 3 |
| channelC | -0.14 (-0.20, -0.11) | -0.01 (-0.13, 0.10) | 0.08 (-0.07, 0.20) | -0.24 (-0.48, -0.03) | 0.20 (-0.05, 0.50) | -0.16 (-0.37, 0.04) |
| channelR | -0.27 (-0.32, -0.22) | 0.08 (-0.03, 0.19) | 0.23 (0.10, 0.36) | -0.17 (-0.40, 0.08) | 0.11 (-0.20, 0.42) | -0.21 (-0.41, -0.04) |
| cnt_borrone | 0.47 (0.43, 0.51) | -0.20 (-0.26, -0.13) | 0.03 (-0.04, 0.13) | -0.02 (-0.17, 0.13) | 0.06 (-0.17, 0.25) | 0.00 (-0.10, 0.12) |
| cnt_units | -0.04 (-0.10, 0.00) | 0.11 (-0.01, 0.26) | 0.09 (-0.11, 0.28) | -0.16 (-0.49, 0.13) | -0.17 (-0.75, 0.25) | -0.10 (-0.28, 0.13) |
| cov_dummy | 1.02 (0.98, 1.06) | -0.16 (-0.24, -0.06) | 1.49 (1.39, 1.57) | 0.16 (-0.04, 0.34) | -0.43 (-0.66, -0.22) | 1.20 (1.05, 1.36) |
| dti1 | -0.04 (-0.10, 0.03) | -0.25 (-0.41, -0.07) | -0.08 (-0.35, 0.18) | -0.39 (-0.77, -0.01) | -0.23 (-0.78, 0.35) | -0.37 (-0.77, -0.03) |
| GAM | Semi-structured | |||||||||
| Span | MultiAUC | AUC1vsA | Brier | ECE | ACC | MultiAUC | AUC1vsA | Brier | ECE | ACC |
| 6-12 | 0.741 | 0.827 | 0.002 | 0.002 | 0.995 | 0.753 | 0.838 | 0.002 | 0.003 | 0.995 |
| 12-18 | 0.791 | 0.871 | 0.004 | 0.002 | 0.992 | 0.800 | 0.882 | 0.004 | 0.003 | 0.992 |
| 18-24 | 0.755 | 0.841 | 0.005 | 0.005 | 0.989 | 0.755 | 0.840 | 0.005 | 0.008 | 0.988 |
| GAM | Semi-structured | |||||||||
| Span | MultiAUC | AUC1vsA | Brier | ECE | ACC | MultiAUC | AUC1vsA | Brier | ECE | ACC |
| 6-18 | 0.708 | 0.778 | 0.002 | 0.003 | 0.995 | 0.715 | 0.783 | 0.002 | 0.005 | 0.995 |
| 12-24 | 0.720 | 0.780 | 0.004 | 0.003 | 0.993 | 0.721 | 0.778 | 0.004 | 0.005 | 0.993 |
| 18-30 | 0.727 | 0.797 | 0.005 | 0.007 | 0.988 | 0.727 | 0.796 | 0.005 | 0.010 | 0.988 |
| GAM | Semi-structured | |||||||||
| Span | MultiAUC | AUC1vsA | Brier | ECE | ACC | MultiAUC | AUC1vsA | Brier | ECE | ACC |
| 6-12 | 0.736 | 0.822 | 0.002 | 0.002 | 0.995 | 0.740 | 0.825 | 0.002 | 0.002 | 0.995 |
| 12-18 | 0.785 | 0.864 | 0.004 | 0.002 | 0.992 | 0.785 | 0.861 | 0.004 | 0.002 | 0.992 |
| 18-24 | 0.755 | 0.843 | 0.005 | 0.006 | 0.989 | 0.745 | 0.829 | 0.005 | 0.006 | 0.989 |
| GAM | Semi-structured | |||||||||
| Span | MultiAUC | AUC1vsA | Brier | ECE | ACC | MultiAUC | AUC1vsA | Brier | ECE | ACC |
| 6-18 | 0.705 | 0.776 | 0.002 | 0.003 | 0.995 | 0.706 | 0.779 | 0.002 | 0.003 | 0.995 |
| 12-24 | 0.718 | 0.781 | 0.004 | 0.003 | 0.993 | 0.713 | 0.777 | 0.004 | 0.003 | 0.993 |
| 18-30 | 0.730 | 0.802 | 0.005 | 0.008 | 0.988 | 0.723 | 0.793 | 0.005 | 0.007 | 0.988 |
Appendix figures & tables4 assets
Supplementary material from the paper’s appendix.
Appendix
| Variable | Min. | Mean | Median | Max. | SD. |
| Credit Score | 479.00 | 744.82 | 752.00 | 832.00 | 46.81 |
| Original Interest Rate (%) | 2.88 | 4.70 | 4.75 | 6.88 | 0.49 |
| Original Loan-to-Value Ratio (%) | 6.00 | 75.48 | 80.00 | 135.00 | 17.67 |
| Mortgage Insurance (%) | 0.00 | 8.12 | 0.00 | 35.00 | 12.16 |
| Original Loan Term (months) | 96.00 | 329.79 | 360.00 | 360.00 | 65.69 |
| Original UPB ($) | 16,000.00 | 213,876.98 | 188,000.00 | 1,124,000.00 | 117,053.28 |
| Variable(s) | Cardinality |
| Number of Borrowers , First Time Homebuyer , Super Conforming | 2 |
| Channel , Loan Purpose , Mortgage Insurance Cancellation , Occupancy Status | 3 |
| Number of Units | 4 |
| Original Debt-to-Income Ratio , Property Type | 5 |
| Seller Name | 32 |
| Servicer Name | 26 |
| Name | 0 1 | 1 0 | 1 2 | 2 0 | 2 1 | 2 3 |
| cci_lag | -1.19 (-1.57, -0.81) | -1.27 (-1.98, -0.56) | -1.88 (-2.87, -0.89) | -0.65 (-2.76, 1.47) | 0.14 (-2.34, 2.63) | -5.05 (-6.89, -3.21) |
| channelC | -0.12 (-0.17, -0.07) | 0.05 (-0.05, 0.15) | 0.08 (-0.05, 0.21) | -0.26 (-0.54, 0.01) | 0.21 (-0.14, 0.57) | -0.30 (-0.52, -0.08) |
| channelR | -0.27 (-0.32, -0.22) | 0.09 (-0.01, 0.18) | 0.24 (0.12, 0.36) | -0.14 (-0.40, 0.11) | 0.09 (-0.25, 0.43) | -0.21 (-0.41, -0.01) |
| cnt_borrone | 0.48 (0.45, 0.51) | -0.19 (-0.25, -0.12) | 0.05 (-0.02, 0.13) | -0.03 (-0.20, 0.13) | 0.03 (-0.17, 0.24) | -0.02 (-0.15, 0.10) |
| cnt_units | -0.04 (-0.10, 0.02) | 0.17 (0.02, 0.32) | 0.15 (-0.03, 0.33) | 0.03 (-0.33, 0.40) | -0.12 (-0.63, 0.38) | 0.05 (-0.22, 0.32) |
| cov_dummy | 1.10 (1.05, 1.15) | 0.01 (-0.08, 0.10) | 1.43 (1.32, 1.54) | 0.35 (0.11, 0.59) | -0.36 (-0.65, -0.08) | 1.34 (1.14, 1.54) |
| Name | 0 1 | 1 0 | 1 2 | 2 0 | 2 1 | 2 3 |
| cci_lag | -0.74 (-1.54, 0.16) | -1.01 (-1.76, -0.27) | -1.31 (-2.52, -0.04) | -0.94 (-2.16, 0.49) | -0.53 (-1.71, 0.83) | -2.06 (-3.12, -0.65) |
| channelC | -0.16 (-0.20, -0.11) | 0.01 (-0.13, 0.14) | 0.04 (-0.08, 0.17) | -0.18 (-0.44, 0.04) | 0.23 (-0.06, 0.55) | -0.24 (-0.45, -0.04) |
| channelR | -0.29 (-0.33, -0.25) | 0.07 (-0.06, 0.17) | 0.20 (0.08, 0.33) | -0.11 (-0.33, 0.14) | 0.10 (-0.19, 0.41) | -0.15 (-0.35, 0.03) |
| cnt_borrone | 0.47 (0.45, 0.49) | -0.24 (-0.31, -0.16) | 0.03 (-0.04, 0.13) | -0.03 (-0.22, 0.14) | 0.04 (-0.21, 0.21) | -0.00 (-0.13, 0.11) |
| cnt_units | -0.07 (-0.13, -0.02) | 0.12 (-0.01, 0.28) | 0.13 (-0.04, 0.30) | -0.04 (-0.50, 0.27) | -0.13 (-0.68, 0.30) | -0.02 (-0.19, 0.22) |
| cov_dummy | 1.02 (0.95, 1.10) | -0.05 (-0.17, 0.07) | 1.47 (1.36, 1.59) | 0.21 (-0.00, 0.40) | -0.41 (-0.65, -0.18) | 1.17 (0.96, 1.34) |