号称准确率 97% 的开源肺炎检测模型:照搬 PyTorch 教程、50 张图片就训练完了

简介: 此前,一位澳大利亚的人工智能博士候选人宣布构建了一套深度学习模型,能够从肺部 X 光片中以 97.5% 的准确率 检测出患者是否感染了 COVID-19 病毒。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

最近,一位澳大利亚的人工智能博士候选人在 LinkedIn 上发布了一篇关于 SARS-CoV-2 病毒的研究文章。由于极具话题性且号称准确率可以达到 97.5%,这篇文章很快得到上万条评论、点赞与转发。然而,这样一个模型却被扒出背后只用了 50 张图片训练。

CE033D64_AF68_46a7_92ED_422531F237EB

一周搭起准确率达 97% 的模型,事实是?

此前,一位澳大利亚的人工智能博士候选人宣布构建了一套深度学习模型,能够从肺部 X 光片中以 97.5% 的准确率 检测出患者是否感染了 COVID-19 病毒。因为国外疫情蔓延且医疗设施不足,因此人们对这个成果非常关注,短短时间就收获到了上万条评论、点赞和转发,其还创建了 Slack 工作组,得到了大量赞美。

从目前公布的消息来看,整个项目具有以下特点:

  • 一套经过训练的 PyTorch 模型
  • 容器化应用代码
  • 一套 GitHub 库,并被翻译为多种语言
  • 正在开发中的 Web 应用程序
  • 正在开发中的移动应用程序
  • 规划蓝图,有意在 AWS 中利用无服务器架构托管这套模型
  • 在营销与赞助方面还有大量后续计划

而以上的一切,都在一周之内快速完成。随后,Reddit 网友扒出这套解决方案存在几个严重问题,并对此进行了整理与反驳。

21F6AC4F_29F1_4719_A39C_D58FA7938105

只用了 50 张图像训练?

首先,这些网络的潜在神经表示非常复杂,因此必然需要使用大量训练样本才能完成模型训练。但截至提交时,这款 COVID-19 检测工具只见过 50 张肺部影像。

对于这样一套包含 150 多层、超过 2000 万个参数的网络来说,如此有限的训练样本集显然极为荒谬。

63AE4A63_A0E5_435d_9ECA_021295BABEB6

数据样本有问题

此外,样本中可能存在巨大的数据偏差,这 50 张图片并不包含相关人员是否感染病毒,而仅根据 COVID-19 急性病例造成的肺部操作做出标记。除非肺部已经被病毒破坏,否则该模型根本无法检测到感染迹象。此外,即使已经出现肺炎症状,如果尚不属于急性症状,仍然无法证明这套模型的准确度。

图像重复、代码混乱、模型有问题

最后,这套 COVID 模型基于高人气基准网络 ResNet-50。虽然后者确实属于图像识别与分类领域的常用方案,但 ResNet 的预训练一般只涵盖日常环境下的物体。换言之,ResNet 网络中的隐藏层更擅长识别几何形状与彩色图像,在 X 射线影像中,我们明显找不到这样的模式。也正因为如此,大多数医学神经网络才只能选择从零开始构建的开发方式。

进一步观察这套代码库,我们还发现了不少其他问题。训练、验证与测试数据集中包含重复的图像,大部分训练过程直接照搬 PyTorch 教程,混有大量不必要的代码;Github issues 也令人完全无法理解……
GitHub 地址: https://github.com/elcronos/COVID-19

项目负责人回应:我说了项目不可用

最初,个别开发者与项目负责人沟通并提出质疑时,对方回应称:

xxx,你好,我们的成果已经得到加拿大 xxx 研究机构放射科医生的支持与认可

然而,随着质疑声越来越多,项目负责人更新了 GitHub 中的介绍,并表示:

尽管该项目的结果“看起来很有希望”,但我明确指出该模型远没有可用,因此不应将其用于诊断或任何医疗决定。这是在进行中的工作,我们需要具有相关技能的人员的帮助。我还在 GitHub 存储库中指出,我正在寻找能够改善和收集更好数据集的开发者的帮助。

不幸的是,这个项目引起了相关专家的注意,他们没有注意模型尚未准备就绪,且需要更好的数据集并帮助创建更好的模型,也没有阅读我们的所有免责声明。就指责该项目具有误导性,甚至有人暗示我对此有商业意图。这对我的个人生活造成了一些负面影响,因此,我决定暂时退一步,暂时退出社交媒体。至少在接下来的几天,我将不活跃于此组中。

完整版声明参照: https://github.com/elcronos/COVID-19
然而,这位负责人此前还在大肆宣扬此项目,并发起筹款。该项目负责人创建了一个包含多个子频道的 Slack 讨论组,其中有 一个 #marketing 频道,专门用于沟通以及筹措资金。另外,#sponsors 频道则负责与潜在投资者交流,向其报告未来的投资回报前景。

Slack 讨论组: https://app.slack.com/client/T010AJ5H31N/learning-slack
此外,名为 #datascientists 的频道中没多少有用的内容,里面充斥着热情满满但没什么经验的新手。同样的,#doctors 频道情况也差不多,唯一有价值的内容就是来自专业医疗人员的反对意见,例如并不推荐利用肺部 X 射线诊断 COVID-19 感染。最后一个子频道 #researchers 则几乎没人。

另一方面,UI/UX 频道产出的内容倒是颇为丰富。此项计划目前已经拥有 5 款不同的徽标,外加一套专门用于移动与 Web 应用程序的界面。
因此,对于这份声明,大部分开发者并不买账,不少人认为 在当前的特殊情况下,这类存在严重问题的项目不应发布并大肆宣传(甚至有开发者调侃道宣传的工作量大概是开发工作的 20 倍)。

医学诊断中的深度学习

深度卷积网络在疾病的诊断与治疗方面确实具有一系列潜在优势。近年来发表的众多科学出版物中都在高度关注这一全新发展方向:
2016 年,来自伦敦的一组研究人员发表一种新方法,以包含 8 万张眼底照片的数据集为基础,能够以 86% 的准确率诊断出患者因糖尿病引发的视网膜病变。

同一年,来自乌干达的研究人员利用包含 10000 个对象的数据集,评估了卷积神经网络(CNN)对微观血液涂片的分析能力。
两位日本研究人员通过包含 55 万例 CT 扫描影像的数据集,对肺结节进行一轮规模浩大的分类操作。

但前文提到的新冠病毒检测完全不同,稍微浏览其公布的代码库,就能看出该作者对深度学习及 AI 技术的认知严重不足。更糟糕的是,众多开发者都在质疑其明显是想利用此次疫情爆发对自己进行推广。

说好的代码改变世界呢?

深度学习绝不是百试百灵的解决方案。近年来,无数没有做好准备的企业匆匆在内部建立起数据团队,最终却发现成本迅速提升的同时得不到任何有意义的产出。

此前,李飞飞在接受访谈时曾提到:
泡沫确实存在,过度夸张、炒作可以说铺天盖地。作为科学家,我希望这些泡沫都尽快消散。只有关注坚实内核的人们才能推动 AI 进步并带来真正的收益,这一点在医疗保健与医药等领域尤其重要。

另外,我们绝不应该利用技术制造不公、偏见或者扩大原已存在的不平等现象。对于 AI 技术,我希望尽可能降低它的接触门槛、增加公平性并缓解种种相关矛盾。只要处理得当,我们完全有机会利用 AI 技术创造出更美好的未来。当然,前提是我们得认真梳理现有 AI 成果,弄清哪些是捏造的、哪些是真实的。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-04-03
本文作者:赵钰莹,核子可乐
本文来自:“InfoQ”,了解相关信息可以关注“InfoQ

相关文章
|
5天前
|
机器学习/深度学习 算法 PyTorch
PyTorch模型优化与调优:正则化、批归一化等技巧
【4月更文挑战第18天】本文探讨了PyTorch中提升模型性能的优化技巧,包括正则化(L1/L2正则化、Dropout)、批归一化、学习率调整策略和模型架构优化。正则化防止过拟合,Dropout提高泛化能力;批归一化加速训练并提升性能;学习率调整策略动态优化训练效果;模型架构优化涉及网络结构和参数的调整。这些方法有助于实现更高效的深度学习模型。
|
5天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch与迁移学习:利用预训练模型提升性能
【4月更文挑战第18天】PyTorch支持迁移学习,助力提升深度学习性能。预训练模型(如ResNet、VGG)在大规模数据集(如ImageNet)训练后,可在新任务中加速训练,提高准确率。通过选择模型、加载预训练权重、修改结构和微调,可适应不同任务需求。迁移学习节省资源,但也需考虑源任务与目标任务的相似度及超参数选择。实践案例显示,预训练模型能有效提升小数据集上的图像分类任务性能。未来,迁移学习将继续在深度学习领域发挥重要作用。
|
7天前
|
Android开发 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(二十)(2)
PyTorch 2.2 中文官方教程(二十)
36 0
PyTorch 2.2 中文官方教程(二十)(2)
|
7天前
|
iOS开发 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(二十)(1)
PyTorch 2.2 中文官方教程(二十)
40 0
PyTorch 2.2 中文官方教程(二十)(1)
|
PyTorch 算法框架/工具 并行计算
PyTorch 2.2 中文官方教程(十九)(4)
PyTorch 2.2 中文官方教程(十九)
24 0
|
7天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十八)(4)
PyTorch 2.2 中文官方教程(十八)
48 1
|
7天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十八)(3)
PyTorch 2.2 中文官方教程(十八)
18 1
PyTorch 2.2 中文官方教程(十八)(3)
|
7天前
|
并行计算 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十七)(4)
PyTorch 2.2 中文官方教程(十七)
21 2
PyTorch 2.2 中文官方教程(十七)(4)
|
7天前
|
PyTorch 算法框架/工具 机器学习/深度学习
PyTorch 2.2 中文官方教程(十七)(2)
PyTorch 2.2 中文官方教程(十七)
32 1
PyTorch 2.2 中文官方教程(十七)(2)
|
7天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十五)(1)
PyTorch 2.2 中文官方教程(十五)
42 1