From 0b7c866292125cc5d457ce400aaeab06aa364b6a Mon Sep 17 00:00:00 2001 From: Jiarui Li Date: Sat, 27 Jun 2026 13:34:30 +0800 Subject: [PATCH] Add mortality attribution evaluation --- all_future_model_interpretation.pdf | Bin 127021 -> 134033 bytes all_future_model_interpretation.tex | 211 +++++++++++++--------- evaluate_event_free_survival.py | 180 ++++++++++++++++--- future_event_free_survival.py | 269 ---------------------------- future_risk.py | 115 ++++++++++++ 5 files changed, 403 insertions(+), 372 deletions(-) delete mode 100644 future_event_free_survival.py create mode 100644 future_risk.py diff --git a/all_future_model_interpretation.pdf b/all_future_model_interpretation.pdf index 5f9cb8f23551592208929d96642b43efd7e28be8..e776721f674b49c07a7e5817037072d5afd1c6e0 100644 GIT binary patch delta 122765 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 Lfk9qf0pq^_h2$fy delta 115758 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 D-shB{ diff --git a/all_future_model_interpretation.tex b/all_future_model_interpretation.tex index 970b73d..7d7c980 100644 --- a/all_future_model_interpretation.tex +++ b/all_future_model_interpretation.tex @@ -37,12 +37,12 @@ all-future DeepHealth 模型应被解释为一个基于既往轨迹的未来新 \section{English} -\subsection{Model object} +\subsection{Model Object} For individual \(i\), let \(\mathcal{H}_i(t)\) denote the observed history up to query time \(t\). The all-future model produces \[ - h_i(t) = f_\theta(\mathcal{H}_i(t)), + h_i(t)=f_\theta(\mathcal{H}_i(t)), \] and, for each disease token \(d\) in the modeled disease vocabulary \(\mathcal{D}\), estimates a future first-occurrence risk over a horizon @@ -68,7 +68,7 @@ history itself we know This historical indicator is not learned by the model; it is read directly from the event history. -\subsection{Masking already occurred diseases} +\subsection{Masking Already Occurred Diseases} For a disease that has already occurred before or at \(t\), the model output for that disease should not be interpreted as recurrence risk or current disease @@ -77,10 +77,10 @@ should be masked: \[ p^{\mathrm{new}}_{i,d}(t,\tau) = - \left[1-m_{i,d}(t)\right]p_{i,d}(t,\tau). + [1-m_{i,d}(t)]p_{i,d}(t,\tau). \] -\subsection{Directly supported model-derived quantities} +\subsection{Directly Supported Quantities} The current model directly supports the following quantities. @@ -100,42 +100,64 @@ is the estimated probability of death within the next \(\tau\) years. Death is a terminal endpoint and should not be treated as an ordinary disease burden weight. -\paragraph{Probability of being alive with no new modeled disease.} -Using the model's disease-specific and death risks, one can summarize the -probability of no new modeled disease and survival over the next \(\tau\) years: -\[ - S^{\mathrm{all}}_i(t,\tau) - = - \left[1-p_{i,\mathrm{death}}(t,\tau)\right] - \prod_{d\in\mathcal{D}} - \left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. -\] -Equivalently, if the model is represented through cumulative hazards -\(\Lambda_{i,d}(t,\tau)=-\log[1-p_{i,d}(t,\tau)]\), -\[ - S^{\mathrm{all}}_i(t,\tau) - = - \exp\left( - -\Lambda_{i,\mathrm{death}}(t,\tau) - -\sum_{d\in\mathcal{D}} - [1-m_{i,d}(t)]\Lambda_{i,d}(t,\tau) - \right). -\] - -\paragraph{Probability of being alive with no new disease in a specified set.} +\paragraph{Future incident disease risk in a specified set.} For any analyst-specified subset of disease tokens \(G\subseteq\mathcal{D}\), +the model can summarize future incident risk within that set: \[ - S^{G}_i(t,\tau) + R^G_i(t,\tau) = - \left[1-p_{i,\mathrm{death}}(t,\tau)\right] - \prod_{d\in G} - \left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. + 1-\prod_{d\in G}\left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. \] -This is a subset-level future disease-free survival summary. If \(G\) is called -an organ system, the disease-to-organ grouping is external to the model and -must not be described as a learned organ score. +This quantity answers: ``What is the model-estimated probability that at least +one not-yet-observed disease in \(G\) first occurs within the next \(\tau\) +years?'' It does not include death. Mortality risk should be reported +separately as \(p_{i,\mathrm{death}}(t,\tau)\). -\subsection{Historical counts are not model-derived burden} +If \(G\) is called an organ system, the disease-to-organ grouping is external to +the model and should not be described as a learned organ score. + +\subsection{Model Attribution to Predicted Mortality Risk} + +The model can also be queried for a model-internal attribution of historical +disease sets to predicted mortality risk. For a disease set \(G\), define the +original mortality risk as +\[ + p_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau), +\] +and the risk after deleting historical disease tokens in \(G\) from the input +history as +\[ + p_{i,\mathrm{death}}^{(-G)}(t,\tau). +\] +On the probability scale, the attribution is +\[ + \Delta p^G_i(t,\tau) + = + p_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau) + - + p_{i,\mathrm{death}}^{(-G)}(t,\tau). +\] +A more stable primary scale is the cumulative-hazard scale: +\[ + \Lambda_{i,\mathrm{death}}(t,\tau) + = + -\log\left[1-p_{i,\mathrm{death}}(t,\tau)\right], +\] +\[ + \Delta \Lambda^G_i(t,\tau) + = + \Lambda_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau) + - + \Lambda_{i,\mathrm{death}}^{(-G)}(t,\tau). +\] + +This quantity should be described as model attribution to predicted mortality +risk. It is not a causal contribution, not an organ damage score, and not a +clinical disease-burden weight. Because diseases can interact within the +trajectory model, deleting an organ/system as a whole is generally more +interpretable than summing single-disease attributions. + +\subsection{Historical Counts Are Not Model-Derived Burden} One may count observed historical diseases: \[ @@ -148,7 +170,7 @@ model and should not be presented as a model-derived disease burden score. Without disease severity labels or disease weights, it treats all disease tokens equally. -\subsection{What the current model does not estimate} +\subsection{What the Current Model Does Not Estimate} The current model does not directly estimate: \begin{itemize}[leftmargin=1.5em] @@ -164,7 +186,7 @@ These interpretations require additional labels, mappings, weights, or model training objectives. Using the present all-future model to claim these quantities would be over-interpretation. -\subsection{Post-onset prognosis for the same new disease} +\subsection{Post-Onset Prognosis for the Same New Disease} For a disease \(d\) that newly occurs at time \(T_{i,d}\), the model cannot infer the clinical severity of that disease itself. However, after the disease @@ -180,7 +202,7 @@ be followed by different future disease and mortality risk profiles in people with different prior trajectories. It should not be described as direct disease severity. -\subsection{Future extension with reliable recurrence data} +\subsection{Future Extension with Reliable Recurrence Data} The above interpretation is constrained by the first-occurrence nature of the current disease sequence. UK Biobank does not provide a reliable longitudinal @@ -228,8 +250,8 @@ all-future 模型产生 \[ h_i(t)=f_\theta(\mathcal{H}_i(t)), \] -并且对模型疾病词表 \(\mathcal{D}\) 中的每个疾病 \(d\),估计未来 \(\tau\) 年内的首次 -发生风险: +并且对模型疾病词表 \(\mathcal{D}\) 中的每个疾病 \(d\),估计未来 \(\tau\) 年内的 +首次发生风险: \[ p_{i,d}(t,\tau) = @@ -248,23 +270,23 @@ all-future 模型产生 \] 这个历史发生指示量不是模型学出来的,而是直接从事件历史中读出的。 -\subsection{已经发生疾病的 mask} +\subsection{已经发生疾病的 Mask} 如果某个疾病在 \(t\) 之前或 \(t\) 时已经发生,那么该疾病对应的模型输出不应解释为复发 -风险,也不应解释为当前疾病活跃程度。在汇总未来新发疾病风险时,应对已经发生过的疾病 +风险,也不应解释为当前疾病活动程度。在汇总未来新发疾病风险时,应对已经发生过的疾病 进行 mask: \[ p^{\mathrm{new}}_{i,d}(t,\tau) = - \left[1-m_{i,d}(t)\right]p_{i,d}(t,\tau). + [1-m_{i,d}(t)]p_{i,d}(t,\tau). \] -\subsection{当前模型直接支持的派生量} +\subsection{当前模型直接支持的量} 当前模型直接支持以下几类量。 \paragraph{疾病层面的未来首次发生风险。} -对每个模型内疾病 \(d\), +对每一个模型内疾病 \(d\), \[ p^{\mathrm{new}}_{i,d}(t,\tau) \] @@ -277,38 +299,57 @@ all-future 模型产生 表示未来 \(\tau\) 年内死亡的概率。死亡是终末结局,不应作为普通疾病负担权重加入疾病 负担求和。 -\paragraph{未来无新病且存活的概率。} -利用疾病层面风险和死亡风险,可以汇总未来 \(\tau\) 年内无任何模型内新病且存活的概率: +\paragraph{指定疾病集合内的未来新发风险。} +对于任意由分析者预先指定的疾病 token 集合 \(G\subseteq\mathcal{D}\),模型可以汇总该 +集合内的未来新发风险: \[ - S^{\mathrm{all}}_i(t,\tau) + R^G_i(t,\tau) = - \left[1-p_{i,\mathrm{death}}(t,\tau)\right] - \prod_{d\in\mathcal{D}} - \left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. + 1-\prod_{d\in G}\left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. \] -如果用累计 hazard 表示,令 -\(\Lambda_{i,d}(t,\tau)=-\log[1-p_{i,d}(t,\tau)]\),则 +这个量回答的是:模型估计该个体在未来 \(\tau\) 年内,至少新发生一个 \(G\) 中尚未发生 +疾病的概率是多少。它不包含死亡;死亡风险应单独报告为 +\(p_{i,\mathrm{death}}(t,\tau)\)。 + +如果将 \(G\) 称为某个器官系统,那么疾病到器官的分组来自模型外部,不应表述为模型 +学到的器官评分。 + +\subsection{死亡风险预测的模型归因} + +模型还可以用于计算历史疾病集合对死亡风险预测的模型内部归因。对于疾病集合 \(G\), +令原始死亡风险为 \[ - S^{\mathrm{all}}_i(t,\tau) + p_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau), +\] +将输入历史中属于 \(G\) 的历史疾病 token 删除后,再次查询模型,得到 +\[ + p_{i,\mathrm{death}}^{(-G)}(t,\tau). +\] +在概率尺度上,归因可以写为 +\[ + \Delta p^G_i(t,\tau) = - \exp\left( - -\Lambda_{i,\mathrm{death}}(t,\tau) - -\sum_{d\in\mathcal{D}} - [1-m_{i,d}(t)]\Lambda_{i,d}(t,\tau) - \right). + p_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau) + - + p_{i,\mathrm{death}}^{(-G)}(t,\tau). +\] +更推荐的主尺度是累计 hazard: +\[ + \Lambda_{i,\mathrm{death}}(t,\tau) + = + -\log\left[1-p_{i,\mathrm{death}}(t,\tau)\right], +\] +\[ + \Delta \Lambda^G_i(t,\tau) + = + \Lambda_{i,\mathrm{death}}^{\mathrm{orig}}(t,\tau) + - + \Lambda_{i,\mathrm{death}}^{(-G)}(t,\tau). \] -\paragraph{未来无指定疾病集合新发且存活的概率。} -对于任意由分析者预先指定的疾病 token 集合 \(G\subseteq\mathcal{D}\),可以定义 -\[ - S^{G}_i(t,\tau) - = - \left[1-p_{i,\mathrm{death}}(t,\tau)\right] - \prod_{d\in G} - \left[1-p^{\mathrm{new}}_{i,d}(t,\tau)\right]. -\] -这只是指定疾病集合层面的未来 disease-free survival 汇总。如果将 \(G\) 称为某个器官系统, -那么疾病到器官的分组来自模型外部,不能描述为模型学到的器官评分。 +这个量应表述为疾病集合对死亡风险预测的模型归因。它不是因果贡献,不是器官损伤评分, +也不是临床疾病负担权重。由于轨迹模型中疾病之间可能存在交互,整体删除一个器官系统 +通常比逐个疾病归因后相加更容易解释。 \subsection{历史计数不是模型派生的疾病负担} @@ -333,8 +374,8 @@ all-future 模型产生 \item 不同疾病 token 之间的相对临床重要性。 \end{itemize} -这些解释都需要额外标签、映射、权重或新的训练目标。用当前 all-future 模型直接声称这些量, -属于过分解读。 +这些解释都需要额外标签、映射、权重或新的训练目标。用当前 all-future 模型直接声称 +这些量,属于过分解读。 \subsection{同一新发疾病后的预后差异} @@ -373,21 +414,25 @@ all-future 模型产生 \item 复发或重复事件风险:疾病已经发生后的未来 episode 风险; \item 死亡风险:与非致死事件竞争的终末结局风险。 \end{itemize} -如果复发 episode 还带有可靠的 episode 层面严重程度标签,例如住院强度、治疗升级或经过 -验证的严重程度分级,那么还可以进一步训练有监督的严重程度相关预后模型。但这些扩展都 -需要新的数据和新的训练目标,并不是当前 all-future first-occurrence 模型已经具备的能力。 +如果复发 episode 还带有可靠的 episode 层面严重程度标签,例如住院强度、治疗升级或 +经过验证的严重程度分级,那么还可以进一步训练有监督的严重程度相关预后模型。但这些 +扩展都需要新的数据和新的训练目标,并不是当前 all-future first-occurrence 模型已经 +具备的能力。 -\section{Recommended wording} +\section{Recommended Wording} \paragraph{English.} The all-future model is a history-conditioned incident disease and mortality -risk model. Its outputs support future disease-free survival summaries over the -modeled disease vocabulary, but do not directly quantify current disease -burden, organ damage, frailty, or disease severity. +risk model. Its outputs support separate reporting of future mortality risk and +future incident disease risk over analyst-specified disease sets. Historical +disease sets may be ablated to obtain model attribution to predicted mortality +risk, but this is not causal contribution and does not directly quantify current +disease burden, organ damage, frailty, or disease severity. \paragraph{中文。} -all-future 模型是基于既往轨迹的未来新发疾病和死亡风险模型。它的输出可以支持模型词表 -范围内的未来无新病且存活概率汇总,但不能直接量化当前疾病负担、器官损伤、衰弱程度或 -疾病严重度。 +all-future 模型是基于既往轨迹的未来新发疾病和死亡风险模型。它的输出可以支持分别 +报告未来死亡风险,以及指定疾病集合内的未来新发疾病风险。通过删除历史疾病集合可以 +得到其对死亡风险预测的模型归因,但这不是因果贡献,也不能直接量化当前疾病负担、 +器官损伤、衰弱程度或疾病严重度。 \end{document} diff --git a/evaluate_event_free_survival.py b/evaluate_event_free_survival.py index a03f055..5e9af6e 100644 --- a/evaluate_event_free_survival.py +++ b/evaluate_event_free_survival.py @@ -1,9 +1,12 @@ -"""Compute landmark future event-free survival summaries for DeepHealth. +"""Compute landmark future death and incident system-disease risks. For each selected patient and landmark age, this script computes: -* P(alive and no new modeled disease within tau years); -* P(alive and no new disease in each ICD-10 chapter-derived system); +* future death risk within tau years; +* future incident disease risk for each ICD-10 chapter-derived system; +* model attribution of each historical organ/system disease set to predicted + mortality risk, computed by deleting that system's historical disease tokens + and re-querying the model; * historical modeled-disease count; * historical modeled-disease count within each ICD-10 chapter-derived system. @@ -38,8 +41,9 @@ from evaluate_auc_v2 import ( resolve_eval_device, validate_dataset_metadata, ) -from future_event_free_survival import ( - future_event_free_survival_from_probabilities, +from future_risk import ( + death_risk_from_probabilities, + new_disease_risk_from_probabilities, probabilities_from_logits, ) from models import DeepHealth @@ -284,6 +288,75 @@ def collate_indexed_landmark_fn(batch: List[Dict[str, torch.Tensor]]) -> Dict[st } +def ablate_event_history_for_tokens( + batch: Dict[str, torch.Tensor], + token_ids: Sequence[int], +) -> Dict[str, torch.Tensor]: + """Return a batch with selected disease tokens removed from event history.""" + selected = {int(token) for token in token_ids} + if not selected: + return batch + + event_rows: list[torch.Tensor] = [] + time_rows: list[torch.Tensor] = [] + readout_rows: list[torch.Tensor] = [] + landmark_positions: list[torch.Tensor] = [] + + event_seq = batch["event_seq"] + time_seq = batch["time_seq"] + readout_mask = batch["readout_mask"] + padding_mask = batch["padding_mask"].bool() + for i in range(event_seq.shape[0]): + valid = padding_mask[i] + events = event_seq[i, valid] + times = time_seq[i, valid] + reads = readout_mask[i, valid] + keep = torch.ones_like(events, dtype=torch.bool) + for token in selected: + keep &= events != int(token) + + kept_events = events[keep] + kept_times = times[keep] + kept_reads = reads[keep] + if kept_events.numel() == 0: + kept_events = torch.tensor( + [CHECKUP_IDX], + dtype=event_seq.dtype, + device=event_seq.device, + ) + kept_times = batch["t_query"][i : i + 1].to( + dtype=time_seq.dtype, + device=time_seq.device, + ) + kept_reads = torch.ones(1, dtype=torch.bool, device=readout_mask.device) + + if bool(kept_reads.any()): + landmark_pos = torch.nonzero(kept_reads, as_tuple=False)[-1, 0] + else: + landmark_pos = torch.tensor( + int(kept_events.numel() - 1), + dtype=batch["landmark_pos"].dtype, + device=batch["landmark_pos"].device, + ) + kept_reads = torch.zeros_like(kept_events, dtype=torch.bool) + kept_reads[int(landmark_pos.item())] = True + + event_rows.append(kept_events) + time_rows.append(kept_times) + readout_rows.append(kept_reads) + landmark_positions.append(landmark_pos.to(dtype=batch["landmark_pos"].dtype)) + + out = dict(batch) + out["event_seq"] = pad_sequence(event_rows, batch_first=True, padding_value=PAD_IDX) + out["time_seq"] = pad_sequence(time_rows, batch_first=True, padding_value=0.0) + out["readout_mask"] = pad_sequence( + readout_rows, batch_first=True, padding_value=False + ) + out["padding_mask"] = out["event_seq"] > PAD_IDX + out["landmark_pos"] = torch.stack(landmark_positions) + return out + + @torch.no_grad() def infer_landmark_hidden( *, @@ -351,6 +424,42 @@ def make_occurred_mask( return occurred +def mortality_hazard_from_risk(risk: torch.Tensor, eps: float = 1e-7) -> torch.Tensor: + return -torch.log1p(-risk.clamp(0.0, 1.0 - float(eps))) + + +def death_risk_for_batch( + *, + model: DeepHealth, + batch: Dict[str, torch.Tensor], + device: torch.device, + model_target_mode: str, + readout_name: str, + readout_reduce: str, + dist_mode: str, + tau: float, +) -> torch.Tensor: + hidden = infer_landmark_hidden( + model=model, + batch=batch, + device=device, + model_target_mode=model_target_mode, + readout_name=readout_name, + readout_reduce=readout_reduce, + ) + logits = model.calc_risk(hidden) + rho = model.calc_weibull_rho(hidden) if dist_mode == "weibull" else None + death_rho = model.calc_death_rho(hidden) if dist_mode == "mixed" else None + probabilities = probabilities_from_logits( + logits, + tau, + dist_mode=dist_mode, + rho=rho, + death_rho=death_rho, + ) + return death_risk_from_probabilities(probabilities) + + def historical_counts_by_group( tokens: np.ndarray, *, @@ -373,12 +482,12 @@ def historical_counts_by_group( def output_name_for_run(run_path: Path, eval_split: str, tau: float) -> Path: - return run_path / f"event_free_survival_{eval_split}_tau{tau:g}y.csv" + return run_path / f"future_risk_{eval_split}_tau{tau:g}y.csv" def parse_args() -> argparse.Namespace: parser = argparse.ArgumentParser( - description="Compute landmark event-free survival summaries." + description="Compute landmark death and incident system-disease risks." ) parser.add_argument("--run_path", type=str, required=True) parser.add_argument("--output_path", type=str, default=None) @@ -496,7 +605,7 @@ def main() -> None: print(f"Output: {output_path}") rows: list[dict[str, Any]] = [] - for batch in tqdm(loader, desc="Event-free survival", dynamic_ncols=True): + for batch in tqdm(loader, desc="Future risks", dynamic_ncols=True): hidden = infer_landmark_hidden( model=model, batch=batch, @@ -521,20 +630,45 @@ def main() -> None: device=device, ) - all_survival = future_event_free_survival_from_probabilities( - probabilities, - occurred, - disease_ids=None, - vocab_size=int(dataset.vocab_size), - ).detach().cpu().numpy() + death_risk_tensor = death_risk_from_probabilities(probabilities) + death_hazard_tensor = mortality_hazard_from_risk(death_risk_tensor) + death_risk = death_risk_tensor.detach().cpu().numpy() - group_survival: dict[str, np.ndarray] = {} + group_risk: dict[str, np.ndarray] = {} for group in group_names: - group_survival[group] = future_event_free_survival_from_probabilities( + group_risk[group] = new_disease_risk_from_probabilities( probabilities, occurred, - disease_ids=organ_groups[group], - vocab_size=int(dataset.vocab_size), + organ_groups[group], + ).detach().cpu().numpy() + + group_mortality_attr_prob: dict[str, np.ndarray] = {} + group_mortality_attr_hazard: dict[str, np.ndarray] = {} + for group in group_names: + ids = torch.as_tensor(organ_groups[group], dtype=torch.long, device=device) + if ids.numel() == 0 or not bool(occurred[:, ids].any().item()): + zeros = np.zeros(batch["event_seq"].shape[0], dtype=np.float32) + group_mortality_attr_prob[group] = zeros + group_mortality_attr_hazard[group] = zeros + continue + + ablated_batch = ablate_event_history_for_tokens(batch, organ_groups[group]) + ablated_death_risk = death_risk_for_batch( + model=model, + batch=ablated_batch, + device=device, + model_target_mode=model_target_mode, + readout_name=readout_name, + readout_reduce=readout_reduce, + dist_mode=dist_mode, + tau=tau, + ) + ablated_death_hazard = mortality_hazard_from_risk(ablated_death_risk) + group_mortality_attr_prob[group] = ( + death_risk_tensor - ablated_death_risk + ).detach().cpu().numpy() + group_mortality_attr_hazard[group] = ( + death_hazard_tensor - ablated_death_hazard ).detach().cpu().numpy() row_indices = batch["row_idx"].cpu().numpy().astype(np.int64) @@ -559,11 +693,17 @@ def main() -> None: "tau": tau, "followup_end_time": float(meta["followup_end_time"]), "history_disease_count": int(total_count), - "event_free_survival_all": float(all_survival[j]), + "death_risk": float(death_risk[j]), } for group in group_names: out[f"history_count__{group}"] = int(group_counts[group]) - out[f"event_free_survival__{group}"] = float(group_survival[group][j]) + out[f"new_disease_risk__{group}"] = float(group_risk[group][j]) + out[f"mortality_attribution_probability__{group}"] = float( + group_mortality_attr_prob[group][j] + ) + out[f"mortality_attribution_hazard__{group}"] = float( + group_mortality_attr_hazard[group][j] + ) rows.append(out) df = pd.DataFrame(rows) diff --git a/future_event_free_survival.py b/future_event_free_survival.py deleted file mode 100644 index bc51aca..0000000 --- a/future_event_free_survival.py +++ /dev/null @@ -1,269 +0,0 @@ -from __future__ import annotations - -from collections.abc import Sequence -from typing import Any, overload - -import numpy as np - -try: - import torch - import torch.nn.functional as F -except ModuleNotFoundError: # pragma: no cover - optional for numpy-only use - torch = None - F = None - - -ArrayLike = Any - - -def _death_token(vocab_size: int) -> int: - if int(vocab_size) <= 0: - raise ValueError(f"vocab_size must be positive, got {vocab_size}") - return int(vocab_size) - 1 - - -def _infer_vocab_size(x: ArrayLike, vocab_size: int | None) -> int: - if x.ndim != 2: - raise ValueError(f"Expected a 2D array/tensor with shape (N, V), got {tuple(x.shape)}") - inferred = int(x.shape[1]) - if vocab_size is None: - return inferred - if int(vocab_size) != inferred: - raise ValueError(f"vocab_size={vocab_size} does not match input width {inferred}") - return int(vocab_size) - - -def _normalize_disease_ids( - disease_ids: Sequence[int] | np.ndarray | torch.Tensor | None, - *, - vocab_size: int, - excluded_token_ids: Sequence[int], -) -> list[int]: - death_idx = _death_token(vocab_size) - excluded = { - int(idx) - for idx in excluded_token_ids - if 0 <= int(idx) < vocab_size - } - excluded.add(death_idx) - if disease_ids is None: - return [idx for idx in range(vocab_size) if idx not in excluded] - - if torch is not None and isinstance(disease_ids, torch.Tensor): - raw = disease_ids.detach().cpu().reshape(-1).tolist() - else: - raw = np.asarray(disease_ids).reshape(-1).tolist() - - out: list[int] = [] - seen: set[int] = set() - for value in raw: - idx = int(value) - if idx < 0 or idx >= vocab_size: - raise ValueError(f"disease id {idx} is outside [0, {vocab_size})") - if idx in excluded: - continue - if idx not in seen: - seen.add(idx) - out.append(idx) - return out - - -@overload -def future_event_free_survival_from_probabilities( - probabilities: torch.Tensor, - occurred: torch.Tensor, - disease_ids: Sequence[int] | np.ndarray | torch.Tensor | None = None, - *, - vocab_size: int | None = None, - excluded_token_ids: Sequence[int] = (0, 1, 2), - eps: float = 1e-7, -) -> torch.Tensor: - ... - - -@overload -def future_event_free_survival_from_probabilities( - probabilities: np.ndarray, - occurred: np.ndarray, - disease_ids: Sequence[int] | np.ndarray | torch.Tensor | None = None, - *, - vocab_size: int | None = None, - excluded_token_ids: Sequence[int] = (0, 1, 2), - eps: float = 1e-7, -) -> np.ndarray: - ... - - -def future_event_free_survival_from_probabilities( - probabilities: ArrayLike, - occurred: ArrayLike, - disease_ids: Sequence[int] | np.ndarray | torch.Tensor | None = None, - *, - vocab_size: int | None = None, - excluded_token_ids: Sequence[int] = (0, 1, 2), - eps: float = 1e-7, -) -> ArrayLike: - """ - Compute P(alive and no new selected disease in the next tau years). - - Parameters - ---------- - probabilities: - Matrix with shape (N, V). Entry (i, d) is p_d(t, tau), the model's - future first-occurrence probability for token d over the chosen tau. - The death probability is always read from token V - 1. - - occurred: - Boolean matrix with shape (N, V). Entry (i, d) is True if disease d has - already occurred at or before query time t. Already occurred diseases do - not contribute to "new disease" risk. - - disease_ids: - Optional subset of disease tokens. If None, all non-death tokens are - included except excluded_token_ids. If provided, death and excluded - tokens are ignored here and death is still handled separately as - survival. - - vocab_size: - Optional vocabulary size. If omitted, inferred from probabilities. - - excluded_token_ids: - Technical tokens to exclude from "new disease" calculations. Defaults - to (0, 1, 2), matching PAD, CHECKUP, and NO_EVENT. - - Returns - ------- - Array/tensor with shape (N,): - Approximate probability of being alive and having no newly occurring - disease among the selected disease tokens over the same tau horizon. - """ - vocab_size = _infer_vocab_size(probabilities, vocab_size) - death_idx = _death_token(vocab_size) - selected = _normalize_disease_ids( - disease_ids, - vocab_size=vocab_size, - excluded_token_ids=excluded_token_ids, - ) - - if tuple(occurred.shape) != tuple(probabilities.shape): - raise ValueError( - "occurred must have the same shape as probabilities, got " - f"{tuple(occurred.shape)} vs {tuple(probabilities.shape)}" - ) - - if torch is not None and isinstance(probabilities, torch.Tensor): - probs = probabilities.clamp(min=0.0, max=1.0 - float(eps)) - occurred_bool = occurred.to(device=probs.device, dtype=torch.bool) - log_survival = torch.log1p(-probs[:, death_idx]) - if selected: - ids = torch.as_tensor(selected, dtype=torch.long, device=probs.device) - new_mask = ~occurred_bool[:, ids] - log_no_new = torch.log1p(-probs[:, ids]) * new_mask.to(probs.dtype) - log_survival = log_survival + log_no_new.sum(dim=1) - return torch.exp(log_survival) - - probs_np = np.clip(np.asarray(probabilities), 0.0, 1.0 - float(eps)) - occurred_bool_np = np.asarray(occurred, dtype=bool) - log_survival_np = np.log1p(-probs_np[:, death_idx]) - if selected: - selected_arr = np.asarray(selected, dtype=np.int64) - new_mask_np = ~occurred_bool_np[:, selected_arr] - log_no_new_np = np.log1p(-probs_np[:, selected_arr]) * new_mask_np - log_survival_np = log_survival_np + log_no_new_np.sum(axis=1) - return np.exp(log_survival_np) - - -def probabilities_from_logits( - logits: torch.Tensor, - tau_years: float | torch.Tensor, - *, - dist_mode: str = "exponential", - rho: torch.Tensor | None = None, - death_rho: torch.Tensor | None = None, - eps: float = 1e-8, -) -> torch.Tensor: - """ - Convert all-future logits to tau-year event probabilities. - - The death token is always treated as vocab_size - 1. For dist_mode="mixed", - non-death tokens use exponential hazards and the death token uses - death_rho. For dist_mode="weibull", rho must have the same shape as logits. - """ - if torch is None or F is None: - raise ImportError("probabilities_from_logits requires PyTorch.") - if logits.ndim != 2: - raise ValueError(f"logits must have shape (N, V), got {tuple(logits.shape)}") - if float(torch.as_tensor(tau_years).detach().min().cpu()) < 0: - raise ValueError("tau_years must be non-negative") - - mode = str(dist_mode).lower() - if mode not in {"exponential", "weibull", "mixed"}: - raise ValueError("dist_mode must be one of: exponential, weibull, mixed") - - rate = F.softplus(logits) + float(eps) - tau = torch.as_tensor(tau_years, dtype=rate.dtype, device=rate.device) - if tau.ndim == 0: - tau = tau.expand(logits.shape[0]) - if tau.ndim != 1 or tau.shape[0] != logits.shape[0]: - raise ValueError( - "tau_years must be a scalar or a 1D tensor with length N, got " - f"{tuple(tau.shape)} for N={logits.shape[0]}" - ) - - if mode == "exponential": - exposure = tau[:, None].expand_as(rate) - elif mode == "weibull": - if rho is None or rho.shape != logits.shape: - raise ValueError("rho must have the same shape as logits for dist_mode='weibull'") - exposure = torch.pow(tau[:, None].clamp_min(float(eps)), rho.to(rate.dtype)) - else: - exposure = tau[:, None].expand_as(rate).clone() - if death_rho is None: - raise ValueError("death_rho is required for dist_mode='mixed'") - death_idx = _death_token(logits.shape[1]) - death_shape = tuple(death_rho.shape) - death_rho = death_rho.to(device=rate.device, dtype=rate.dtype) - if death_rho.ndim == 2 and death_rho.shape[1] == 1: - death_rho = death_rho.squeeze(1) - if death_rho.ndim != 1 or death_rho.shape[0] != logits.shape[0]: - raise ValueError( - "death_rho must have shape (N,) or (N, 1), got " - f"{death_shape} for N={logits.shape[0]}" - ) - exposure[:, death_idx] = torch.pow(tau.clamp_min(float(eps)), death_rho) - - return -torch.expm1(-rate * exposure) - - -def future_event_free_survival_from_logits( - logits: torch.Tensor, - occurred: torch.Tensor, - tau_years: float | torch.Tensor, - disease_ids: Sequence[int] | np.ndarray | torch.Tensor | None = None, - *, - dist_mode: str = "exponential", - rho: torch.Tensor | None = None, - death_rho: torch.Tensor | None = None, - eps: float = 1e-8, -) -> torch.Tensor: - """ - Convenience wrapper for computing future event-free survival from logits. - - Returns P(alive and no new selected disease in the next tau years), with - death fixed to token vocab_size - 1. - """ - probabilities = probabilities_from_logits( - logits=logits, - tau_years=tau_years, - dist_mode=dist_mode, - rho=rho, - death_rho=death_rho, - eps=eps, - ) - return future_event_free_survival_from_probabilities( - probabilities=probabilities, - occurred=occurred, - disease_ids=disease_ids, - vocab_size=logits.shape[1], - excluded_token_ids=excluded_token_ids, - ) diff --git a/future_risk.py b/future_risk.py new file mode 100644 index 0000000..8480b1a --- /dev/null +++ b/future_risk.py @@ -0,0 +1,115 @@ +from __future__ import annotations + +from collections.abc import Sequence + +import torch +import torch.nn.functional as F + + +def death_token(vocab_size: int) -> int: + if int(vocab_size) <= 0: + raise ValueError(f"vocab_size must be positive, got {vocab_size}") + return int(vocab_size) - 1 + + +def probabilities_from_logits( + logits: torch.Tensor, + tau_years: float | torch.Tensor, + *, + dist_mode: str = "exponential", + rho: torch.Tensor | None = None, + death_rho: torch.Tensor | None = None, + eps: float = 1e-8, +) -> torch.Tensor: + """ + Convert all-future logits to tau-year event probabilities. + + Death is always treated as token vocab_size - 1. For dist_mode="mixed", + non-death tokens use exponential hazards and death uses death_rho. + """ + if logits.ndim != 2: + raise ValueError(f"logits must have shape (N, V), got {tuple(logits.shape)}") + if float(torch.as_tensor(tau_years).detach().min().cpu()) < 0: + raise ValueError("tau_years must be non-negative") + + mode = str(dist_mode).lower() + if mode not in {"exponential", "weibull", "mixed"}: + raise ValueError("dist_mode must be one of: exponential, weibull, mixed") + + rate = F.softplus(logits) + float(eps) + tau = torch.as_tensor(tau_years, dtype=rate.dtype, device=rate.device) + if tau.ndim == 0: + tau = tau.expand(logits.shape[0]) + if tau.ndim != 1 or tau.shape[0] != logits.shape[0]: + raise ValueError( + "tau_years must be a scalar or a 1D tensor with length N, got " + f"{tuple(tau.shape)} for N={logits.shape[0]}" + ) + + if mode == "exponential": + exposure = tau[:, None].expand_as(rate) + elif mode == "weibull": + if rho is None or rho.shape != logits.shape: + raise ValueError("rho must have the same shape as logits for dist_mode='weibull'") + exposure = torch.pow(tau[:, None].clamp_min(float(eps)), rho.to(rate.dtype)) + else: + exposure = tau[:, None].expand_as(rate).clone() + if death_rho is None: + raise ValueError("death_rho is required for dist_mode='mixed'") + death_idx = death_token(logits.shape[1]) + death_shape = tuple(death_rho.shape) + death_rho = death_rho.to(device=rate.device, dtype=rate.dtype) + if death_rho.ndim == 2 and death_rho.shape[1] == 1: + death_rho = death_rho.squeeze(1) + if death_rho.ndim != 1 or death_rho.shape[0] != logits.shape[0]: + raise ValueError( + "death_rho must have shape (N,) or (N, 1), got " + f"{death_shape} for N={logits.shape[0]}" + ) + exposure[:, death_idx] = torch.pow(tau.clamp_min(float(eps)), death_rho) + + return -torch.expm1(-rate * exposure) + + +def death_risk_from_probabilities(probabilities: torch.Tensor) -> torch.Tensor: + """Return p_death(t, tau), with death fixed to token vocab_size - 1.""" + if probabilities.ndim != 2: + raise ValueError( + f"probabilities must have shape (N, V), got {tuple(probabilities.shape)}" + ) + return probabilities[:, death_token(probabilities.shape[1])] + + +def new_disease_risk_from_probabilities( + probabilities: torch.Tensor, + occurred: torch.Tensor, + disease_ids: Sequence[int], +) -> torch.Tensor: + """ + Compute P(at least one selected disease newly occurs within tau years). + + Already occurred diseases are masked out. Death is not included here and + should be reported separately with death_risk_from_probabilities. + """ + if probabilities.ndim != 2 or occurred.shape != probabilities.shape: + raise ValueError( + "probabilities and occurred must both have shape (N, V), got " + f"{tuple(probabilities.shape)} and {tuple(occurred.shape)}" + ) + if not disease_ids: + return probabilities.new_zeros(probabilities.shape[0]) + + death_idx = death_token(probabilities.shape[1]) + ids = [ + idx + for idx in dict.fromkeys(int(x) for x in disease_ids) + if 0 <= idx < probabilities.shape[1] and idx != death_idx + ] + if not ids: + return probabilities.new_zeros(probabilities.shape[0]) + + idx_tensor = torch.as_tensor(ids, dtype=torch.long, device=probabilities.device) + p = probabilities[:, idx_tensor].clamp(0.0, 1.0 - 1e-7) + new_mask = ~occurred[:, idx_tensor].to(dtype=torch.bool) + log_no_new = torch.log1p(-p) * new_mask.to(dtype=p.dtype) + return -torch.expm1(log_no_new.sum(dim=1))