最近,一位澳大利亚的人工智能博士候选人在 LinkedIn 上发布了一篇关于 SARS-CoV-2 病毒的研究文章。由于极具话题性且模型号称检测准确率可以达到 97.5%,这篇文章很快得到上万条评论、点赞与转发。然而,这样一个模型却被扒出背后只用了 50 张图片训练。
一周搭起准确率达 97% 的模型,事实是?
此前,一位澳大利亚的人工智能博士候选人宣布构建了一套深度学习模型,能够从肺部 X 光片中以 97.5% 的准确率 检测出患者是否感染了 COVID-19 病毒。因为国外疫情蔓延且医疗设施不足,因此人们对这个成果非常关注,短短时间就收获到了上万条评论、点赞和转发,其还创建了 Slack 工作组,得到了大量赞美。
从目前公布的消息来看,整个项目具有以下特点:
一套经过训练的 PyTorch 模型
容器化应用代码
一套 GitHub 库,并被翻译为多种语言
正在开发中的 Web 应用程序
正在开发中的移动应用程序
规划蓝图,有意在 AWS 中利用无服务器架构托管这套模型
在营销与赞助方面还有大量后续计划
而以上的一切,都在一周之内快速完成。随后,Reddit 网友扒出这套解决方案存在几个严重问题,并对此进行了整理与反驳。
只用了 50 张图像训练?
首先,这些网络的潜在神经表示非常复杂,因此必然需要使用大量训练样本才能完成模型训练。但截至提交时,这款 COVID-19 检测工具只见过 50 张肺部影像。
对于这样一套包含 150 多层、超过 2000 万个参数的网络来说,如此有限的训练样本集显然极为荒谬。
该模型通过肺部 X 射线影像进行学习
数据样本有问题
此外,样本中可能存在巨大的数据偏差,这 50 张图片并不包含相关人员是否感染病毒,而仅根据 COVID-19 急性病例造成的肺部操作做出标记。除非肺部已经被病毒破坏,否则该模型根本无法检测到感染迹象。此外,即使已经出现肺炎症状,如果尚不属于急性症状,仍然无法证明这套模型的准确度。
图像重复、代码混乱、模型有问题
最后,这套 COVID 模型基于高人气基准网络 ResNet-50。虽然后者确实属于图像识别与分类领域的常用方案,但 ResNet 的预训练一般只涵盖日常环境下的物体。换言之,ResNet 网络中的隐藏层更擅长识别几何形状与彩色图像,在 X 射线影像中,我们明显找不到这样的模式。也正因为如此,大多数医学神经网络才只能选择从零开始构建的开发方式。
进一步观察这套代码库,我们还发现了不少其他问题。训练、验证与测试数据集中包含重复的图像,大部分训练过程直接照搬 PyTorch 教程,混有大量不必要的代码;Github issues 也令人完全无法理解……
GitHub 地址:https://github.com/elcronos/COVID-19
项目负责人回应:我说了项目不可用
最初,个别开发者与项目负责人沟通并提出质疑时,对方回应称:
xxx,你好,我们的成果已经得到加拿大 xxx 研究机构放射科医生的支持与认可
然而,随着质疑声越来越多,项目负责人更新了 GitHub 中的介绍,并表示:
尽管该项目的结果“看起来很有希望”,但我明确指出该模型远没有可用,因此不应将其用于诊断或任何医疗决定。这是在进行中的工作,我们需要具有相关技能的人员的帮助。我还在 GitHub 存储库中指出,我正在寻找能够改善和收集更好数据集的开发者的帮助。
…
不幸的是,这个项目引起了相关专家的注意,他们没有注意模型尚未准备就绪,且需要更好的数据集并帮助创建更好的模型,也没有阅读我们的所有免责声明。就指责该项目具有误导性,甚至有人暗示我对此有商业意图。这对我的个人生活造成了一些负面影响,因此,我决定暂时退一步,暂时退出社交媒体。至少在接下来的几天,我将不活跃于此组中。
然而,这位负责人此前还在大肆宣扬此项目,并发起筹款。该项目负责人创建了一个包含多个子频道的 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 成果,弄清哪些是捏造的、哪些是真实的。
延展阅读:《李飞飞最新访谈:希望 AI 领域泡沫尽快消散,尤其是医疗部分》
如今,AI 技术仍然在以开创性的方式推进。忽略掉这一点,很容易陷入炒作的泥潭。
说到这里,任何有理智的开发者都不会贸然进入,将自己的命运完全交给运气。相反,只有首先建立起拥有 AI/ML、DataOps、架构、开发等领域专业知识的团队,才有可能在这场攻坚战中胜出。
最后,代码不能让世界变得更好也无妨,别祸乱即可。
参考链接:
https://www.reddit.com/r/MachineLearning/comments/fni5ow/d_why_is_the_ai_hype_absolutely_bonkers/
评论