# Cause-Specific Mortality Forecasting. A Constrained
Penalized Regression Model

Carlo Giovanni Camarda, María Durbán

<figure><img src="image_1.png" /></figure>

## To cite this version:

Carlo Giovanni Camarda, María Durbán. Cause-Specific Mortality Forecasting. A Constrained Penalized Regression Model. European Population Conference - EPC 2024, Jun 2024, Edinburgh, United Kingdom. hal-05456211

HAL Id: hal-05456211

https://hal.science/hal-05456211v1

Submitted on 13 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>
## Motivation

* Overall mortality trends are the summation of cause-specific mortality experiences

* Modelling and forecasting cause-specific mortality patterns allows us to

* recognize drivers of all-cause mortality

* identify emerging health challenges

* For a long time, it has been argued that all-cause mortality projections based on cause-specific mortality present serious drawbacks (Wilmoth, 1995)

* Recent developments:

* Lee-Carter based (Kjærgaard et al., 2019; Li et al., 2019; Lyu et al., 2020)

* Bayesian hierarchical model (Foreman et al., 2017)

* Tensor decompositions (Zhang et al., 2023; Cardillo et al., 2022)

# Cause-specific Mortality Forecasting
## A Constrained Penalized Regression Model

GIANCARLO CAMARDA

Institut national d'études démographiques

<figure><img src="image_3.png" /></figure>

MARÍA DURBÁN

Universidad Carlos III de Madrid

<figure><img src="image_4.png" /></figure>

European Population Conference
Edinburgh

June 12-15, 2024

## Data structure

<figure><img src="image_5.png" /></figure>

<figure><img src="image_6.png" /></figure>

* Data are two 3-D arrays

* Classified by age (a), year (t) and cause of death (c)

* Final layer of Y contains total number of deaths

* Each layer in E includes the same age-year matrix

## Example: USA mortality, males. Log-rates

<figure><img src="image_7.png" /></figure>

<figure><img src="image_8.png" /></figure>
## Example: USA mortality, males. Actual deaths

<figure><img src="image_9.png" /></figure>

<figure><img src="image_10.png" /></figure>

## Adding constraints on death counts

<figure><img src="image_11.png" /></figure>

* Additional constraints needed as the deaths-level:

$$C \mathbb{E}[y] = 0 \Rightarrow C(e * \mu) = 0 \Rightarrow C(e * \exp(B\alpha)) = 0$$

where C sums up cause-specific deaths and then subtracts the associated total number of deaths

$$C = [1 \ 1 \ 1 \ 1 \ 1 \ -1] \otimes I_m \otimes I_n = C_c \otimes I_m \otimes I_n$$

* C can be written as a Kronecker product

* ⇒ All inner operations can be embedded in a Generalized Linear Array Model (GLAM) framework (Currie et al., 2006)

## The model

<figure><img src="image_12.png" /></figure>

* Stochastic assumption:

$$y_{ijk} \sim P(\mu_{ijk} e_{ij})$$

* We model the linear predictor, vectorized:

$$\ln(\mu) = \eta = B\alpha$$

where

$$B = I_k \otimes B_t \otimes B_a = \begin{bmatrix} B_t \otimes B_a \\ B_t \otimes B_a \\ \vdots \\ B_t \otimes B_a \end{bmatrix}$$

<figure><img src="image_13.png" /></figure>

## About constraints and singularity

<figure><img src="image_14.png" /></figure>

* Many coefficients + all possible age-time constraints
  ⇒ singular system

* A compromise between # of coefficients and # of constraints

* Rich bases in $B_a$ and $B_t$ to ensure a good data-description

* Enforce constraints for a number of equally-spaced data-points

$$C = C_c \otimes I_m \otimes I_n = C_c \otimes C_t \otimes C_a$$

<figure><img src="image_15.png" /></figure>
<figure><img src="image_16.png" /></figure>

* We maximize a constrained penalized Poisson likelihood:

$$ \ell \ell_P = y' B \alpha - e' \exp(B \alpha) - \frac{1}{2} \alpha' P \alpha - \omega' C(e \ast \exp(B \alpha)) $$

* Smoothness over age and time for each cause is ensured by P (block-diagonal structure)

* Amount of smoothness is optimized by Bayesian Information Criterion taking each cause-specific age-time matrix independently

* Constraints are enforced by Lagrange multipliers ω

<figure><img src="image_17.png" /></figure>

* Future is a missing value problem (Currie et al., 2004)

* Augment deaths, exposures, B-splines

* Define 0/1 weight 3D array

* "Arbitrary" values for future years must comply to summation constraints

* Cause-specific CP-splines to enforce "reasonable" rate-of-aging and rate-of-change (Camarda, 2019)

<figure><img src="image_18.png" /></figure>

$$ B = I_k \otimes [B_{t_1} : B_{t_2}] \otimes B_a = \begin{bmatrix} [B_{t_1} : B_{t_2}] \otimes B_a \\ \vdots \\ [B_{t_1} : B_{t_2}] \otimes B_a \end{bmatrix} $$

<figure><img src="image_19.png" /></figure>

<figure><img src="image_20.png" /></figure>

<figure><img src="image_21.png" /></figure>

<figure><img src="image_22.png" /></figure>

Grey lines and areas depict model without summation constraints, i.e. CP-splines
## Outcomes: log-Rates over years

ined

<figure><img src="image_23.png" /></figure>

Age 35

<figure><img src="image_24.png" /></figure>

## Outcomes: log-Rates over years

ined

<figure><img src="image_25.png" /></figure>

Age 95

<figure><img src="image_26.png" /></figure>

## Outcomes: log-Rates over years

ined

<figure><img src="image_27.png" /></figure>

Age 55

<figure><img src="image_28.png" /></figure>

## Outcomes: log-Rates over ages

ined

<figure><img src="image_29.png" /></figure>

<figure><img src="image_30.png" /></figure>
## Outcomes: summary measures for overall mortality

inedoj

<figure><img src="image_31.png" /></figure>

<figure><img src="image_32.png" /></figure>

EPC 2024

Camarda & Durbán

Cause-Specific Mortality Forecasting

17

GIANCARLO CAMARDA & MARÍA DURBÁN

Cause-specific mortality forecasting.
A Constrained Penalized Regression Model

Thanks for your attention.
Comments and questions?

ined

<figure><img src="image_33.png" /></figure>

INSTITUT NATIONAL
D'ÉTudes DÉMOGRAPHIQUES

<figure><img src="image_34.png" /></figure>

## Concluding remarks

inedoj

<figure><img src="image_35.png" /></figure>

* Our proposed approach smooths and forecasts cause-specific and overall mortality simultaneously

* Non-linear summation constraints at the death count level are incorporated by Lagrange multipliers

* Scoring algorithm is derived and embedded in a GLAM framework (not shown here)

* For US males: More pessimistic future trends with narrower confidence intervals

* Future research:

* Account for age-grouped data

* Back-test for model performance

* Extension to female/male and regional mortality settings

EPC 2024

Camarda & Durbán

Cause-Specific Mortality Forecasting

18

## Main bibliography

inedoj

<figure><img src="image_36.png" /></figure>

* Camarda, C.G. (2019). Smooth Constrained Mortality Forecasting. *Demographic Research*

* Camarda, C.G. and Durban, M. (2023). Coherent cause-specific mortality forecasting via constrained penalized regression models. *Proc. International Workshop Stat Mod*

* Cardillo, G., Giordani, P., Levantesi, S. and Nigri, A. (2022). A tensor-based approach to cause-of-death mortality modeling. *Annals of Operations Research*

* Currie, I.D., Durban, M. and Eilers, P.H.C. (2004). Smoothing and Forecasting Mortality Rates. *Statistical Modelling*

* Currie, I.D., Durban, M. and Eilers, P.H.C. (2006). Generalized Linear Array Models with Applications to Multidimensional Smoothing. *Journal of Royal Statistical Society. Series B*

* Foreman, K.J., Li, G., Best, N. and Ezzati, M. (2017). Small Area Forecasts of Cause-Specific Mortality: Application of a Bayesian Hierarchical Model to US Vital Registration Data. *Journal of the Royal Statistical Society: Series C*

* Kjærgaard, S., Ergemen, Y.E., Kallestrup-Lamb, M. et al. (2019). Forecasting causes of death by using compositional data analysis: the case of cancer deaths. *Journal of the Royal Statistical Society. Series C*

* Li, H., Li, H., Lu, Y and Panagiotelis, A. (2019). A forecast reconciliation approach to cause-of-death mortality modeling. *Insurance: Mathematics and Economics*

* Lyu, P., De Waegenaere, A. and Melenberg, B. (2021). A Multi-population Approach to Forecasting All-Cause Mortality Using Cause-of-Death Mortality Data. *North American Actuarial Journal*

* Wilmoth, J.R. (1995). Are mortality projections always more pessimistic when disaggregated by cause of death? *Mathematical Population Studies*

* Zhang, X., Huang, F., Hui, F. and Haberman, S. (2023). Cause-of-Death Mortality Forecasting Using Adaptive Penalized Tensor Decompositions. *Insurance: Mathematics and Economics*
<figure><img src="image_37.png" /></figure>

* To maximize

$$ \ell_P = y' B \alpha - e' \exp(B \alpha) - \frac{1}{2} \alpha' P \alpha - \omega' C (e \ast \exp(B \alpha)) - \omega' C (e \ast \exp(B \alpha)) $$

* We derive the following scoring algorithm:

$$ \begin{bmatrix} B' \tilde{W} B + P + B' \text{diag}(C' \tilde{\omega}) \tilde{V} B & B' \tilde{V} C' \\ C \tilde{V} B & 0 \end{bmatrix} \begin{bmatrix} \tilde{\alpha} \\ \tilde{\omega} \end{bmatrix} = \begin{bmatrix} B' \tilde{W} \tilde{z} + B' \text{diag}(C' \tilde{\omega}) \tilde{V} B \tilde{\alpha} \\ C \tilde{V} B \tilde{\alpha} - C \gamma \end{bmatrix} $$

where

* $\gamma = \exp \eta$, $V = \text{diag}(\gamma)$

* $W$ and $z$ Poisson regression weights and working response

* With no summation constraint the model simply reduces to a series of two-dimensional GLAMs

<figure><img src="image_38.png" /></figure>

* Confidence intervals are calculated by

$$ \text{Var}(B\hat{\alpha}) = BRB' $$

where $R$ is the top-left block of the inverse of the matrix on the left hand side of the scoring algorithm

* Uncertainty around functions of estimated coefficients $\hat{\alpha}$ (e.g. life expectancy) is computed analytically by delta-method