跳转到主要内容

使用多任务高斯过程进行个体化治疗效果的贝叶斯推理

项目描述

使用多任务高斯过程进行个体化治疗效果的贝叶斯推理

Tests Slack License

代码作者: Ahmed M. Alaa

论文: Ahmed M. Alaa, Mihaela van der Schaar, "使用多任务高斯过程进行个体化治疗效果的贝叶斯推理",NIPS 2017。

描述

基于电子健康记录不断增长的丰富性,我们研究了使用观察数据推断个体化治疗效果的问题。起源于潜在结果模型,我们提出了一种新颖的多任务学习框架,其中事实和反事实结果被建模为向量值再生核希尔伯特空间(vvRKHS)中函数的输出。我们开发了一种非参数贝叶斯方法,使用具有线性核心区域化核的多任务高斯过程(GP)作为vvRKHS上的先验,来学习治疗效果。贝叶斯方法使我们能够通过点估计置信区间来计算我们估计的个性化置信度,这对于实现精准医疗的全部潜力至关重要。通过基于风险的经验贝叶斯方法来调整多任务GP先验,缓解了选择偏差的影响,该方法同时最小化了事实结果的经验误差和(未观察到的)反事实结果的不确定性。我们在干预性社会项目观察数据集上进行了实验,该项目适用于早产儿,以及在等待心脏移植的心脏病患者中使用左心室辅助装置。在这两个实验中,我们都表明我们的方法显著优于现有技术。

安装

$ pip install cmgp

示例用法

from cmgp import CMGP
from cmgp.datasets import load
from cmgp.utils.metrics import sqrt_PEHE_with_diff

X_train, W_train, Y_train, Y_train_full, X_test, Y_test = load("twins")

model = CMGP(X_train, W_train, Y_train, max_gp_iterations=100)

pred = model.predict(X_test)

pehe = sqrt_PEHE_with_diff(Y_test, pred)

print(f"PEHE score for CMGP on {dataset} = {pehe}")

参考文献

  1. 使用多任务高斯过程进行个体化治疗效果的贝叶斯推理
  2. 估计异质性治疗效果的局限性:实用算法设计指南
  3. J. L. Hill. 因果推理的贝叶斯非参数建模。计算与图形统计学杂志,2012。

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面