社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

让机器学习助力医疗领域

谷歌开发者 • 5 年前 • 609 次点击  

文 / Yun Liu,研究科学家和 Po-Hsuan Cameron Cheng,研究工程师,Google Health

将机器学习 (ML) 方法结合在医学领域并不新鲜,传统技术诸如决策树和逻辑回归等常用于推导既定的临床决策规则(如用于评估患者在冠心病预后风险的 TIMI 风险评分)。


近年来兴起一股在各种医疗应用中使用 ML 的浪潮(如从复杂的医疗记录中预测不良事件,以及提高基因组测序的准确性)。除了检测已知疾病外,ML 模型还可帮助梳理出过去未知的信号,如从视网膜眼底图像中检测出心血管疾病风险因素屈光不正


除了开发上述的这些模型外,了解如何将其运用到医疗工作流程中也很重要。先前的一些研究表明,在进行糖尿病眼部疾病分级诊断转移性乳腺癌时,相较于医生或模型单独进行分级和诊断,有 ML 模型辅助的医生能够实现更高的准确率。同样,医生能以交互方式利用基于 ML 的工具来搜索相似医学影像,这进一步说明基于 ML 的辅助工具能帮助医生提高工作效率


为了更好地为 ML 和医疗的融合研究提供指导,我们写了两篇文章,分别发表在 Nature Materials 和 《美国医学会杂志》(JAMA)。第一篇文章是让 ML 研究员更好地了解如何开发医疗 ML 解决方案,第二篇是让医生更好地了解 ML 是否有助于改善其临床工作。



如何开发医疗机器学习模型

在《如何开发医疗机器学习模型》(How to develop machine learning models for healthcare,发表于 Nature Materials)中,我们讨论了确保针对医疗环境的特定需求为该环境下 ML 模型的开发提供信息的重要性。从问题选择、数据收集和 ML 模型开发到验证、评估、部署和监控,这应贯穿于医疗应用技术开发的整个过程。


首先要考虑的是如何确定一个医疗问题,该问题既有迫切的临床需要,也需要基于 ML 模型的预测来提供可操作的数据分析。


例如,针对全球糖尿病盛行但缺少医疗专家的部分地区,用于检测糖尿病眼部疾病的 ML 可帮助减轻筛检的工作量。识别出问题后,必须谨慎处理数据,确保应用于数据的真实值标签或“参考标准”可靠且准确。为此,我们可以通过比较专家对相同数据(如视网膜眼底图像)的解释来验证标签,或者通过正交检查(如活检)来确认影像学结果。这一点颇为重要,因为无论是对训练有用的模型,还是准确衡量模型性能而言,高质量的参考标准都不可或缺。因此,ML 研究员必须与临床专家密切合作,进而确保用于训练和评估的参考标准的严谨性。


模型性能的验证在医疗领域也有很大不同,因为分布转移问题可能会非常明显。与典型的 ML 研究(通常使用单个随机测试分组)不同,医学领域使用多个独立的评估数据集来验证值,每个数据集拥有不同的患者群体,在人口统计或疾病亚型方面可能会有所差异。由于具体细节取决于问题,ML 研究员应通过与临床专家密切合作来设计研究,同时应特别注意确保模型验证和性能指标适合临床情景。


后续辅助工具的集成还需要进行周密设计,以确保无缝集成工作流,同时还需考虑这些工具对诊断准确性和工作流效率的影响。重要的是,在真实的患者护理中,对这些工具进行前瞻性研究以便更好地了解它们的实际影响具有重大价值。


最后,即使在完成验证和集成工作流程后,部署之旅也才刚刚开始:摆在我们前面的还有监管审批,以及对实际使用中意外错误模式或不良事件的持续监控。

开发、验证和实施医疗 ML 模型的两个转化流程示例,该流程基于我们在检测糖尿病眼病和转移性乳腺癌方面的工作



帮助医生更好地了解医疗领域的机器学习

在《医学文献用户指南:如何阅读涉及机器学习的文章》(Users’ Guide to the Medical Literature: How to Read Articles that use Machine Learning)(发表于 JAMA)中,我们总结了 ML 的关键概念,以此帮助医生评估 ML 研究是否适合纳入其工作流。这篇文章的目的是揭开 ML 的神秘面纱,帮助需要使用 ML 系统的医生了解其基本功能、何时使用它们以及其潜在限制。


在评估任何研究(不论是否涉及 ML 研究)时,医生的核心问题仍然是:参考标准是否可靠?评估是否公正?(例如评估误报率和漏报率,以及与临床医生的结果进行公正比较)评估是否适用于我接触的患者群体?ML 模型如何帮助照顾我的患者?


除了这些问题外,还应仔细检查 ML 模型,以确定其开发中使用的超参数是否针对独立于最终模型评估的数据集进行了调优。这一点颇为重要,因为不适当的调优可能会导致严重高估性能。例如,一个颇为复杂的模型在经训练后可以完全记住训练的数据集,但对新数据的泛化能力却较差。如要确保适当进行调优,需避免数据集命名出现歧义,最好使用受众最熟悉的术语:

两个领域的交集:针对术语“验证数据集 (validation dataset)”,ML 和医疗领域出现了歧义。ML 验证集通常指用于超参数调优的数据集,而“临床”验证集通常用于最终评估。为了减少混淆,我们选择将 (ML) 验证集称为 “tuning” 集



未来展望

当下是从事医疗 AI 研究的黄金年代。“从科研到临床”道路漫长,这个转化过程需要来自多个学科的研究人员和专家共同努力。通过这两篇文章,我们希望双方了解到,ML 研究院开发医疗模型时所看重的,以及医生评估这些模型时所强调的分别是什么,从而推动各个领域之间的深入合作,并最终对患者护理产生积极影响。



致谢

这些项目的主要贡献者包括 Yun Liu、Po-Hsuan Cameron Chen、Jonathan Krause、和 Lily Peng。感谢 Greg Corrado 和 Avinash Varadarajan 提供的建议,以及 Google Health 团队的支持。


如果您想详细了解 本文讨论 的相关内容,请参阅以下文档。这些文档深入探讨了这篇文章中提及的许多主题:

  • TIMI 风险评分
    https://www.ncbi.nlm.nih.gov/pubmed/10938172

  • 各种医疗应用中
    https://ai.googleblog.com/search/label/Health

  • 提高基因组测序的准确性
    https://ai.googleblog.com/2017/12/deepvariant-highly-accurate-genomes.html

  • 心血管疾病风险因素
    https://ai.googleblog.com/2018/02/assessing-cardiovascular-risk-factors.html

  • 屈光不正
    https://iovs.arvojournals.org/article.aspx?articleid=2683803

  • Nature Materials
    https://www.nature.com/nmat/

  • 美国医学会杂志
    https://jamanetwork.com/journals/jama

  • 如何开发医疗机器学习模型
    https://www.nature.com/articles/s41563-019-0345-0

  • pdf
    https://rdcu.be/bxGE4

  • 医学文献用户指南:如何阅读涉及机器学习的文章
    https://jamanetwork.com/journals/jama/fullarticle/2754798?guestAccessKey=fd274bef-2813-446f-bb10-e5134640922f

  • 记住训练的数据集

    https://arxiv.org/abs/1611.03530


更多 AI 相关阅读:



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53299
 
609 次点击