[医疗AKI]基于迁移学习个性化模型的 AKI 预测模型的开发和验证

[医疗AKI]基于迁移学习个性化模型的 AKI 预测模型的开发和验证

基于迁移学习个性化模型的 AKI 预测模型的开发和验证

这是基于堪萨斯大学医学中心 (KUMC) 的电子健康记录 (EHR) 构建和验证用于急性肾损伤 (AKI) 预测的具有迁移学习 (PMTL) 的个性化模型的工作目录。

作者:刘康,胡勇、刘梅 暨南大学

版权所有 (c) 2021 暨南大学
根据 MIT 开源许可条款共享和享用。


背景

急性肾损伤 ( AKI ) 是一种异质性综合征,影响 10-15% 的住院患者和 50% 以上的重症监护病房 (ICU) 患者。在此应用中,我们建议建立个性化预测模型,以识别有医院内获得性 AKI 风险的患者及其风险因素,并在不同的异质性患者亚组中对模型进行外部验证。该项目的开展旨在实现以下目标:

目标 1 - PMTL 的开发:开发个性化 AKI 预测模型方法,并使用来自堪萨斯大学医学中心 (KUMC) 去识别临床数据存储库(本体叙述健康企业存储库)的电子病历 (EMR) 数据进行内部交叉验证。 * 任务 1.1:数据提取和质量检查
* 任务 1.2:探索性数据分析(例如数据清理和表示策略、特征工程)
* 任务 1.3:开发相似样本匹配模块和相似性度量优化模块 * 任务 1.4:解决相似样本匹配后样本量减少的问题(开发迁移学习模块) * 任务 1.5:开发拟议的个性化模型(PMTL)

目标 2 - PMTL 验证:验证异质性患者的 PMTL。我们实施了一个自动化软件包来为每位普通患者开发 PMTL。在普通患者、高风险亚组、低风险患者和先前 AKI 预测文献研究的亚组中验证了 PMTL 的预测性能,并与全局、亚组和先前模型进行了相应的比较。同一患者的 PMTL 预测结果在不同的实验中不会改变;不同人群的 PMTL 性能变化是由所选测试样本的变化引起的。* 任务 2.1:在所有测试样本中测试 PMTL
* 任务 2.2:将普通患者和低风险患者的 PMTL 与全局模型进行比较 * 任务 2.3:比较高风险患者的 PMTL、全局和亚组模型 * 任务 2.4:比较先前文献中亚组中的 PMTL、全局、亚组和先前模型

目标3 - 风险因素的相互作用分析:分析并可视化不同亚群中最重要的预测因子的作用变化,并探索与作用变化相关的预测因子的相互作用。 * 任务3.1:根据预测因子在提高一般患者模型性能方面的重要性对其进行排序 * 任务3.2:评估预测因子在不同亚群和人群中的影响变化。 * 任务3.3:基于元回归和亚群分析,分析预测因子的相互作用。


数据预处理

对于数据集中的每一例住院病例(就诊),我们从 EMR 中提取了所有人口统计信息、生命体征数据、药物、既往病史和入院诊断。对于测试实验室,我们提取了一组选定的实验室变量,这些变量可能代表与 AKI 相关的合并症的潜在存在()。SCr 和 eGFR 未被列为预测因子,因为它们用于确定 AKI 的发生。

变量带有时间戳,数据集中的每次遭遇都由一系列临床事件表示,这些临床事件由每日汇总的临床观察向量构建而成。对于 AKI 患者,预测点是 AKI 发作前 1 天,对于非 AKI 患者,预测点是最后一次 SCr 记录前 1 天。我们执行了以下数据预处理过程:

  1. 药物暴露包括住院药物(即住院期间使用的药物)和门诊药物(即药物核对和之前的门诊处方)。药物名称通过映射到 RxNorm 成分进行规范化。如果在预测点前 7 天内服用药物,则药物暴露定义为真。
  2. 中的大学健康系统联盟 (  ) 数据源收集的所有患者精确诊断相关组 (  )表示。我们对入院诊断进行了独热编码,将其转换为二进制表示。
  3. 患者病史被记录为主要诊断(ICD-9 代码根据医疗保健研究和质量机构的临床分类软件 (CCS) 诊断类别分组)。我们在预测点之前考虑了每个主要诊断的存在/不存在。
  4. 根据常用标准对生命体征进行分类,缺失值被视为唯一类别。使用预测点之前的最后记录值。
  5. 实验室被归类为“未知”、“存在且正常”或“存在且异常”。使用预测点之前的最后记录值。
  6. 人口统计数据根据独热编码被转换成二进制变量。

要求

为了运行预测模型并生成最终报告,必须满足以下基础设施要求:

  • Python:需要版本 >=3.7.4。
  • :python 中广泛使用的机器学习包。我们的大部分实验使用 0.19.2 版本,但校准实验需要 0.24.2 版本。
  • :用于元回归的 Python 包。

模型验证

以下说明用于从我们的研究队列中生成最终报告。

第一部分:数据准备

  1. 请确保患者的类别标签(AKI 或非 AKI)放在用于模型训练和测试的数据表的最后一列。
  2. 在我们的python代码中编辑输入和输出的文件路径。

第二部分:PMTL 的发展

  1. 比较个性化建模的不同方法
  • 目的:通过比较相似样本匹配、相似性度量优化和解决验证集中样本量减少的不同方法,确定适合个性化建模的方法。
  • 代码:这些实验使用的主要代码保存在“  ”文件夹中。例如,“PM-KNN_PCA.py”表示相似样本匹配基于“k-最近邻”算法,PCA用于特征选择,不执行相似度优化。所有代码都可以输出有和没有迁移学习的模型的预测。
  1. 开发 PMTL
  • 代码:PMTL训练最终使用的代码是“PMTL_training.py”。它输出相似样本匹配的优化相似度度量。

第三部分:PMTL 验证

  1. 在普通患者中的验证
  • 保存 “PMTL_training.py”从训练数据中学习到的相似度度量。
  • 通过指定保存相似度测量的文件路径以及训练集和测试集的路径来编辑文件夹“ ”中的“ PMTL_testing.py ” 。
  • 运行“PMTL_testing.py”,它将输出每个患者的 PMTL 预测(具有特定数量的相似样本)和全局模型(使用 100% 样本构建)以及 PMTL 中每个患者的预测因子的逻辑回归系数。
  • 运行“Model_comparison.py”(在文件夹“  ”中)来比较 PMTL 和全局模型之间的模型区分,或者使用像(为 AUROC 提出)这样的软件。
  • 运行“Calibration_analysis.py”(在文件夹“  ”中)来比较模型校准
  1. 在高风险和低风险患者中验证
  • 通过指定保存用于确定高风险子组的特征列表的文件路径以及训练集和测试集的路径,编辑文件夹“ ”中的“ Subgroup_modeling_in_subgroups_of_our_data.py ” 。
  • 运行“Subgroup_modeling_in_subgroups_of_our_data.py”,会输出这些高风险亚组中每个患者的亚组模型预测,其余低风险患者的预测概率设置为0,可以用EXCEL轻松筛选出来。可以和一般患者的情况进行类似的模型对比。
  1. 在先前研究中的亚组中进行验证
  • 编辑“ ”文件夹中的“ Subgroup_modeling_in_subgroups_in_previous_study.py ”,指定保存先前研究中确定的子组所使用的特征列表的文件路径、训练集和测试集的路径以及一般患者的 PMTL 预测结果的路径。
  • 运行“AUC_of_model_in_subgroups_in_previous_study.py”,它将输出子组、全局和个性化模型的AUROC。
  • 编辑“ ”文件夹中的“AUC_std_in_subgroups_in_previous_study_PMTL.py”,指定保存先前研究中确定的子组所使用的特征列表的文件路径以及一般患者的 PMTL 预测结果的路径。
  • 运行“AUC_std_in_subgroups_in_previous_study_PMTL.py”,它将输出PMTL的AUROC标准差,我们可以用它将PMTL与以前研究中的模型进行比较。

第四部分:预测因子相互作用分析

  • 编辑“ ”文件夹中的“AUC_gain_of_predictors_in_global_model_and_PMTL.py”和“AUC_gain_change_in_subgroups.py”,指定训练集、测试集、一般患者的 PMTL 预测结果(保存每个 PMTL 的截距)和每个一般患者的 PMTL 系数的文件路径。文件路径保存用于确定高风险亚组的特征列表,这也是“AUC_gain_change_in_subgroups.py”所需要的。
  • 运行“AUC_gain_of_predictors_in_global_model_and_PMTL.py”,输出PMTL和全局模型对一般患者的预测中各预测因子的AUROC增益(即移除一个预测因子后模型的AUROC变化量),然后可以用EXCEL对预测因子的重要性进行排序。
  • 运行“AUC_gain_change_in_subgroups.py”。它输出每个预测因子在预测不同子组时对 PMTL 和全局模型的 AUROC 增益。
  • 编辑“ ”文件夹中的“AUC_with_top_predictors_PMTL.py”和“AUC_with_top_predictors_global_model.py”,指定训练集、测试集、您选择的重要特征列表和用于确定高风险子组的特征列表的文件路径。“AUC_with_top_predictors_PMTL.py”也需要保存每个一般患者的 PMTL 系数的文件路径。
  • 运行“AUC_with_top_predictors_PMTL.py”和“AUC_with_top_predictors_global_model.py”。当仅考虑重要预测因子时,它会输出 PMTL 和全局模型在预测不同子组时的 AUROC。
  • 编辑“SE_analysis_for_PMTL.py”,指定训练集、测试集以及在训练集中学习到的相似度度量的文件路径。
  • 运行“SE_analysis_for_PMTL.py”,输出PMTL估计系数的标准误差。当样本量不能显著大于潜在预测因子时,不建议使用此脚本;在这种情况下,例如我们在子组模型中估计系数的标准误差,我们多次抽样训练集并重建模型,但这种方法在PMTL中花费了相当长的时间。
  • 通过指定目标预测因子列表、测试集、每个一般患者的 PMTL 系数以及 PMTL 中系数估计的标准误差的文件路径来编辑“Interaction_discover_by_meta_regression.py”
  • 运行“Interaction_discover_by_meta_regression.py”,返回的结果可以帮助我们分析哪些因素可能与目标预测因子相互作用。

Read more

iOS App的打包和上架流程

iOS App的打包和上架流程

1. 创建账号 苹果开发者账号几种开发者账号类型 个人开发者账号 1. 费用:99 美元/年(688.00元) 2. 协作人数:仅限开发者自己 3. 不需要填写公司的邓百氏编码( D-U-N-S Number) 4. 支持账号下的 app 上线 App Store 5. 需要创建 Apple ID 公司开发者账号: 1. 费用:99 美元/年(688.00元) 2. 允许多个开发者协作开发 3. 需要填写公司的邓百氏编码( D-U-N-S Number) 4. 该账号下的 app 可上线至 App Store 5. 需要创建

By Ne0inhk
iOS App 上架流程图文教学

iOS App 上架流程图文教学

目录 在上架App 之前必须先准备好开发者帐号,但申请开发者帐号因法兰克早在之前已经申请好了,故就跳过此步骤,直接从产生凭证到上传App开始讲起。首先,要将自己辛苦写好的App 送审的话,则要依序做完下列几件事情即可。 * 在产生.cer(凭证档) * 在产生App ID * 在产生Provisioning Profile * 在送审App .cer(凭证档) 凭证档的用意是要告诉Apple 说这台电脑是开发者在使用的,若在本机没有安装是无法打包App 上架的。另外凭证是会到期的,一年后必须重新安装,到期日即为从注册成为开发者后开始算一年。 App ID 包含要上架App 的相关设定。 Provisioning Profile 该档案是要告诉Apple 说,即将要被上传的App 资讯,包含凭证档(.cer) 和App ID 等。若有使用Apple ID 登入Xcode,则会自动在本机产生档案,将不需要额外再做设定。(这个动作在早期是要手动新增的) 开发者后台 1.

By Ne0inhk
iOS App的上架和版本更新流程

iOS App的上架和版本更新流程

一、前言: 作为一名iOSDeveloper,把开发出来的App上传到App Store是必要的。下面就来详细讲解一下具体流程步骤。 二、准备: 1. 一个已付费的开发者账号(账号类型分为个人(Individual)、公司(Company)、企业(Enterprise)、高校(University)四种类型,每年资费分别为$99、$99、$299、免费。)。 1. 一个已经开发完成的项目。 三、检查: 1. 你的Xcode必须是正式版的,beta版本的Xcode是不能上传项目的。 1. 上传使用的Mac的OS X系统必须也是正式版的,beta版本也不行。 1. 请确认你安装的Xcode是从App Store或者是开发者网站下载的,而不是从其它渠道获取的安装包安装的,因为非官方途径下载的Xcode可能带有XcodeGhost 病毒。如何检查? 检查 四、生成发布证书: 1. 打开苹果开发者中心:,点击:Account developer

By Ne0inhk
已上架的App在AppStore上无法搜索到的问题

已上架的App在AppStore上无法搜索到的问题

前言 如果还没有苹果开发者账号,自行并缴费成为开发者。 证书配置 Win系统请使用 进行生成。 发布证书(三个端只需一个即可 格式.p12 上传到后台 私钥证书) 1 打开appuploader,新建iOS Distribution (App Store And Ad Hoc)类型的证书,如果有了其实可以不用创建,一个苹果账号只能创建三个 所有app都可以共用 2 下载生成的.p12格式的证书,密码填到后台IOS证书私钥密码 P8证书(APNs Auth Key 三个端只需一个即可 上传到 DCloud UniPush) 1 在苹果开发者账号 -Certificates, Identifiers & Profiles中,选择左侧Key,点击+新建。 2 填写Key Name,勾选Apple

By Ne0inhk