【工具】survex一个解释机器学习生存模型的R包

文章目录

介绍

由于其灵活性和优越的性能,机器学习模型经常补充并优于传统的统计生存模型。然而,由于缺乏用户友好的工具来解释其内部操作和预测原理,它们的广泛采用受到阻碍。为了解决这个问题,我们引入了survex R包,它提供了一个内聚框架,通过应用可解释的人工智能技术来解释任何生存模型。所提出的软件的功能包括理解和诊断生存模型,这可以导致它们的改进。通过揭示决策过程的洞察力,例如变量效应和重要性,survex能够评估模型的可靠性和检测偏差。因此,可以在诸如生物医学研究和保健应用等敏感领域促进透明度和责任。

Due to their flexibility and superior performance, machine learning models frequently complement and outperform traditional statistical survival models. However, their widespread adoption is hindered by a lack of user-friendly tools to explain their internal operations and prediction rationales. To tackle this issue, we introduce the survex R package, which provides a cohesive framework for explaining any survival model by applying explainable artificial intelligence techniques. The capabilities of the proposed software encompass understanding and diagnosing survival models, which can lead to their improvement. By revealing insights into the decision-making process, such as variable effects and importances, survex enables the assessment of model reliability and the detection of biases. Thus, transparency and responsibility may be promoted in sensitive areas, such as biomedical research and healthcare applications.

代码

案例

r 复制代码
library(survex)
library(survival)
library(ranger)

vet <- survival::veteran

cph <- coxph(Surv(time, status) ~ ., data = vet, x = TRUE, model = TRUE)
exp <- explain(cph, data = vet[, -c(3,4)], y = Surv(vet$time, vet$status))
#> Preparation of a new explainer is initiated 
#>   -> model label       :  coxph (  default  ) 
#>   -> data              :  137  rows  6  cols 
#>   -> target variable   :  137  values ( 128 events and 9 censored ) 
#>   -> times             :  50 unique time points , min = 1.5 , median survival time = 80 , max = 999 
#>   -> times             :  (  generated from y as uniformly distributed survival quantiles based on Kaplan-Meier estimator  ) 
#>   -> predict function  :  predict.coxph with type = 'risk' will be used (  default  ) 
#>   -> predict survival function  :  predictSurvProb.coxph will be used (  default  ) 
#>   -> predict cumulative hazard function  :  -log(predict_survival_function) will be used (  default  ) 
#>   -> model_info        :  package survival , ver. 3.7.0 , task survival (  default  ) 
#>   A new explainer has been created!


shap <- model_survshap(exp, veteran[c(1:4, 17:20, 110:113, 126:129), -c(3,4)])

plot(shap)

参考

  • survex: an R package for explaining machine learning survival models
相关推荐
诺伦2 小时前
RiseClaw玄策:GEO优化工程实战,从零搭建生成式引擎优化体系
人工智能·chatgpt
星禾元亨2 小时前
企业 AI 落地 5 步路线图:诊断、企业知识库与 GEO 获客的工程化实施步骤
大数据·人工智能·自动化·创业创新
苏打水com2 小时前
内容合规红线:大模型生成内容,哪些能做哪些会犯法?
人工智能·安全·大模型
南京兴帝文化传媒有限公司2 小时前
本地生活服务商户GEO优化技术实践:AI大模型收录机制与地图POI权重算法拆解
大数据·人工智能·算法·生活·geo优化实操·csdn运营技巧·ai内容收录
2601_962293532 小时前
人工智能 & 神经网络完整入门路线(零基础可走,分阶段)
人工智能·python·深度学习·神经网络·机器学习
平原20182 小时前
AI 鞋履设计升级:一张主图与多角度详情图的生成流程
人工智能
人工智能时代 准备好了吗2 小时前
品牌更名后,旧名称与新名称的AI表现如何连续观察?
人工智能
慧一居士2 小时前
QoderWork 和 QoderWake 区别和使用场景对比
人工智能
余槐i2 小时前
使用Ollama本地部署和测试Kimi、GLM等多款大语言模型实战
人工智能·语言模型·自然语言处理·大模型·api
拓海SEO外贸2 小时前
关键词聚类(Keyword Clustering)怎么做
人工智能·机器学习·聚类