内镜下肠道息肉的识别是过去十几年来“经久不衰”的研究课题,因为技术难度太大一直没有被有效解决。近日,全球权威学术期刊NatureBiomedicalEngineering刊出了针对结肠内窥镜下癌前病变的计算机识别研究的论文:《Developmentandvalidationofadeep-learningalgorithmforthedetectionofpolypsduringcolonoscopy》。该研究不仅解决了本领域的技术难点并获得优异的验证结果,其严谨的论证和科学实验方法也为AI研究提出了更高的标准。肠镜操作手法和肠癌早筛方法的发明人,一系列内镜教科书的作者,日本国宝级科学家工藤进英教授亲自为该研究撰写了评论。本文仅提炼、翻译了文章的核心内容,以飨读者。
研究内容
结直肠癌是在美国发病率和死亡率排名第二的癌症,也是少数可以通过早筛手段有效检出和预防的癌症,结直肠癌早筛的金标准就是使用内窥镜发现息肉和腺瘤[1,2,3],每提升1%的腺瘤检出率肠癌发病率将会降低3%[4]。全球有大量的研究表明,在内窥镜下的检查,由于肠道准备情况、医生的操作水平和经验、医生的疲劳程度等方面的因素漏诊率在6%~27%[5]。
这项研究的作者之一,哈佛医学院教授、BIMDC医院的高级内镜中心主任TylerBerzin团队早在年就撰文展望AI在辅助结肠镜息肉检查的临床意义,并提出了AI辅助内窥镜诊断的产品设想[6]。
在这项研究中,科学家们使用来自个病人的张结肠镜的图像作为训练样本,其中张是阴性样本,张是含有癌前病变的阳性样本,由医生标注了息肉位置,所有的病变均有病理金标准的确认。所有医院年及以前保存的病例数据。
研究分四个数据集进行算法的验证,其中DatasetA和DatasetB是图片验证集,DatasetC和DatasetD是视频验证集。
?DatasetA包含来自医院接受结肠镜检查的位连续门诊病人的检查报告中的张结肠镜图像,其中张是含有至少一个息肉的阳性样本,均有活检病理确认,其余为阴性样本。算法在该验证集上的敏感度为94.38%,特异度为95.92%,ROC曲线的AUC值为0.。其中张图片含有等色同时扁平且直径小于5mm息肉,这类息肉是易被漏诊的极端情况,但在该子验证集测试算法的敏感度仍旧能够高达91.65%。
图算法在DatasetA上的ROC曲线
?DatasetB是公开数据集CVC-ClinicDB,含有张含有息肉的阳性图片以及人工标注结果,不含病理对照。算法在该验证集上的敏感度为88.24%。该研究也强调,此公开数据集图像的分辨率*,远低于算法设计时的默认最小分辨率*;所以这个验证集上算法的敏感度稍有不及在实际临床数据下的测试效果。
表算法在DatasetA和DatasetB的性能总结
视频的测试方法是将结肠镜检查的录像通过视频设备播放并输出,算法所在的计算机获取该视频流并逐帧处理并保存。
?DatasetC包含从年5-7月在临床试验中随机的的个息肉病人的检查录像中截取的个连续性息肉视频片段,其中所有的息肉均有活检病理对照。每段视频记录某个息肉从最初出现到消失在视野中的全过程。这40多分钟的视频共计帧,动态视频中的连续帧包含大量因镜头运动而导致的模糊或失焦的图像,算法逐帧敏感度仍旧高达91.64%,息肉的敏感度则是%。阳性视频测试中还有一个重要指标是跟踪持续性,即任意两个连续的阳性帧被正确检测的概率,系统实现了88.93%的跟踪持续性,可以理解为被漏掉的阳性帧的分布是相对分散。
?DatasetD包含年1-2月在临床试验中随机的54个无息肉病人的全长检查录像,这些录像均经过9名医师专家小组审阅并确认无息肉。这是非常严苛的测试特异度的方法,在息肉的计算机识别的研究历史上,暂无其他团队使用过全长检查录像作为测试样本。全长检查录像包含非检查的进镜过程、非充气、非清洁、操作速度不均匀等会严重干扰识别目标的情况,对特异度的挑战非常大。在这分钟的万帧的全阴性视频测试下,算法实现了95.40%的特异度。
视频测试中,使用一块英伟达TitanXGPU处理每帧图像的算法延迟是43ms左右,如果加上软件获取图像和将算法处理结果显示出来的总时间整体延迟为76.8ms。在并行计算架构下,系统每秒能够处理30帧。
上述四个验证集除了公开数据集外,均含有病人统计信息、息肉特征信息和病理对照信息。
人工智能在消化内镜领域的应用,目前主要分为两大方向,一是辅助诊断CADx,通过设备的光学能力,例如几百倍的放大内镜,窄带光NBI,荧光技术,加之深度学习判断病灶的性质,以求代替病理诊断[7,8]。然而这种依赖病灶表面的细微特征来预测病理结构的方式还有待考证。虽然一些传统的深度学习模型在这个领域实现了相对高的预测性能[9,10],但其与病理结构并不能%对应,加之各国现行的临床规范有较大改变,所以并未获得大规模应用。
另一个大方向是辅助检测CADe,即AI只提供视野中可见病灶的位置,具体的诊断还需要临床医生当场决断。这个类型的应用主要解决人类肉眼的局限性,在疲劳、经验不足、注意力分散的情况下,AI检测为内镜医生提供有效辅助。由于对临床规范和实践并无本质影响,这类型的应用只要达到了相应的技术指标将会比较容易被广泛接受。
这项研究属于后者,其临床意义十分显著:在结肠镜检查中,临床医生和设备厂商多年以来的共同目标就是提升ADR(腺瘤检出率),即筛查病人中检出腺瘤的比例。这项研究已经证明了计算机可以作为第二观察者在结肠镜检查中实时为临床医生提示病灶。此前有临床试验表明配有护士或培训生等非专业人士作为第二观察者的结肠镜检查对ADR的提升达30%[11,12,13],而已经达到专家水准的AI作为第二观察者对ADR的提升将非常值得期待。
这项研究点明了临床适用的实时病灶检测系统的三个基本要求:1)统一的效果。算法必须在任何时间对每一特定帧做出完全相同的判断,而不存在所谓持续的“学习”和“进化”;2)高敏感度和高特异度,敏感度描述的是系统正确的判断阳性的能力,特异度则表达了系统正确的判断阴性的能力。这里的指标一定不是精确率、准确率等一些严重受到测试样本阴性阳性比例影响的指标;3)低延迟。系统必须要在接近实时的情况下运行,并且每秒钟能够提供25帧以上的输出,对临床医生的实际操作才会起到实时提示的作用。
为了验证这样一个系统,必须使用前瞻性收集的测试样本。因为验证算法对历史数据的概括能力并无实际临床价值,而验证算法对未来尤其是自然分布的未来数据判断的准确性才是真正的价值点。
为了让验证数据集能够代表真实临床环境中的未来事件,这项研究在临床采用了连续纳入随机病人的方法获取数据。而我们发现大量的计算机医学识别类的研究,并不是按照这种方式进行的,往往是同一批数据,按照一定的比例分出训练集和测试集,甚至有1/5循环测试;这样的方法很可能导致验证集和测试集的数据部分重复,比如同一个病人在同一次检查中的同一个病灶的若干图片,就会分别属于训练集和验证集,从而导致所谓的测试结果并不具有说服力。而这项研究的验证集不但与训练集有严格的时间顺序区分,而且前瞻性收集的验证集的时间跨度长达两年。
以往大量的计算机医学识别研究还有另外一个共性是,将整体数据集中绝大部分划归为训练集,比较少部分作为验证集。例如Google在年10月在JAMA发表的糖尿病视网膜病变AI分级的论文,采用了12.8万张训练样本,但是仅仅测试张,验证集是训练集的不到1/10[14]。年2月,斯坦福团队在Nature上发布的皮肤癌AI判断的论文,用了12.9万张训练样本,更是仅仅测试了千余张,验证集不到1/[15]。这项研究中,张的训练样本并不算少,图片测试中的张验证集是训练样本的5倍,而视频逐帧测试中的的验证集达到万,是训练集的多倍。这是在目前AI医学领域中的大规模验证,也是这项研究的亮点之一,相信能够带给计算机界一些启发。
这项研究与以往该领域的大量研究相比,在技术实现上的一个巨大亮点是着重局部特征的识别,而不完全依赖病灶的结构特征。因为肠道环境复杂,息肉形态各异,很多息肉并不具备明显的隆起特征甚至边缘特征,例如癌变概率比较高的锯齿状腺瘤SSAP;很多正常组织也会表现为息肉状隆起。而事实上,优秀的内镜医生在寻找肠道息肉等癌前病变时,也会广泛北京中科白癜风医院医生北京白癜风治疗的医院在哪里