腾讯AI Lab姚建华:数字病理+AI将成为未来趋势 丨CCF-GAIR 2019
编者按:7月12日-7月14日,2019第四届全球人工智能与机器人峰会(CCF-GAIR 2019)于深圳正式召开。峰会由中国计算机学会(CCF)主办,雷锋网 (公众号:雷锋网) 、香港中文大学(深圳)承办,深圳市人工智能与机器人研究院协办,得到了深圳市政府的大力指导,是国内人工智能和机器人学术界、工业界及投资界三大领域的顶级交流博览盛会,旨在打造国内人工智能领域极具实力的跨界交流合作平台。
7月14日,腾讯AI Lab医疗中心首席科学家姚建华发表了主题为《AI在病理诊断中的前沿研究和应用》。
腾讯AI Lab是公司级的实验室,姚建华向雷锋网介绍,现在AI Lab有超过70名研究员和超过300名工程师,研究方向包括计算机视觉、机器学习、语音识别、自然语言处理,医疗是实验室的主要应用场景之一。
腾讯AI Lab为腾讯首款将人工智能技术运用在医学领域的AI产品——腾讯觅影提供算法技术支持。2017年11月,科技部公布首批国家新一代人工智能开放创新平台名单,并明确依托公司腾讯建设医疗影像国家新一代人工智能开放创新平台。
姚建华认为,病理诊断是一个非常复杂的过程,主观性很强,一致率比较低。因此利用人工智能技术,可以帮助医生提高诊断的可重复性,提高准确率和效率,从一定程度上缓解病理医生不足的状况。
但是对于病理分析而言,病理的图像尺寸非常大,对计算机的处理性能提出挑战,此外,医生经常要识别病理图像中非常细微组织的变化。在自然图像中比较成功的算法往往在病理图像中不能达到相应的效果,因此,工程人员就需要开发特殊的算法。
目前,病理AI的主要研究领域有三部分:
第一,开发基于AI技术的病理诊断模型,以提高医生的诊断效率,提高微小病变和疑难病例的识别能力。
第二,病理组学,从病理中提取对诊疗有用的特征,进行定量化分析,发现病理特征和诊疗之间的关联性。
第三则是更高级的功能,利用病理数据来开发基于AI技术的病理预后预测模型,预测治疗的效果以及五年的总生存率。
姚建华博士说到,这三个方向可以覆盖从基层医院到三甲医院的不同应用场景。
围绕染色归一化、结直肠癌病理诊断、结直肠息肉分类、淋巴结转移检测、免疫组化(IHC)等方面的临床痛点,姚博士所在的团队都提出了一些有针对性的解决方法。
以下为姚建华博士的现场演讲内容,雷锋网作了不改变原意的编辑及整理:
姚建华:大家下午好。首先简要介绍一下腾讯近年在人工智能的发展历程。
近十年来,腾讯一直在积累人工智能方面的技术,2014年腾讯优图实验室成立,2016年AI实验室成立,2018年机器人实验室成立。
2017年腾讯发布了腾讯觅影,去年成立了一个AI医疗中心,现在已经积累了丰富的人工智能方面的资源,包括海量的数据和大规模的GPU计算集群。同时,我们申请了超过1500项的专利,在顶会上也发表了超过300篇论文。
腾讯AI实验室是公司级的实验室,使命是深耕前沿研究,打造AI基础能力,同时赋能业务场景,实现开放共赢。现在AI Lab有超过70名研究员和超过300名工程师,研究方向包括计算机视觉、机器学习、语音识别、自然语言处理。应用场景是游戏、医疗、内容、社交、机器人,医疗是实验室主要的方向。
2017年11月,科技部公布首批国家新一代人工智能开放创新平台名单,并明确依托公司腾讯建设医疗影像国家新一代人工智能开放创新平台。腾讯首款将人工智能技术运用在医学领域的AI产品——腾讯觅影,腾讯医疗健康事业部、腾讯AI Lab等团队合作,从创新创业、全产业链合作、学术科研和普惠公益等方面推动医疗人工智能的发展。
腾讯“觅影”获得业界的认可,入选一些国家项目,获得了一些表彰。
我们已经开发了一系列的AI医疗产品,影像方面有早期的食管癌筛查、早期肺癌筛查、糖网病变的检测和结直肠筛查、早期乳腺癌筛查和早期宫颈癌筛查等等AI影像产品。
AI辅诊方面,智能导诊技术准确率达到98%,特征识别率超过98%,诊疗风险监控系统预测准确率高达96%。这些产品已经落地到医院和一些诊所。
我们现在和国内超过100家三甲医院达成合作,医疗影像方面累计处理超过2.7亿影像图片,服务超过160万的患者,高风险提示有21万例。AI辅/导诊系统导入了300家医院,进行了470万精确的导诊。
前面是腾讯AI医疗方面的介绍,接下来从技术方面讲一下我们在病理和人工智能方面做的前沿研究和落地。
病理是诊断、预后和指导治疗的金标准,病理医生也被称为是“医生的医生”。
在一个典型的诊断流程中,CT、MRI可以筛查病灶的位置,进行基本定性。如果要确诊,实际上要取出一些组织采样,然后制成切片,通过显微镜下观察组织和细胞结构的变化来对癌症进行定性、分级、分类和分型,以此为后续的手术和化疗、放疗等治疗方案提供指导。
病理是诊疗中非常重要的环节。现在中国病理医生极其缺乏,仅满足需求的15%。而且,病理诊断实际上是一个非常复杂的过程,主观性很强,一致率比较低。
因此利用人工智能技术,我们可以帮助医生提高诊断的可重复性、准确率、效率,从一定程度上缓解病理医生不足的状况。
近年来,人工智能尤其是深度学习技术,在自然图像的识别和理解上取得了很大成功,但是自然图像和病理图像有很大的区别。花鸟和街景这类自然图像的特点是数据量大、获取容易,手机就可以获取自然图像,普通人可以标注,不需要专业训练,利用一些外包可以获得很多标注数据。自然图像的尺寸一般很小,计算机处理起来比较容易。另外,识别的物体在图像中的面积比较大。
右边是一张病理图像在不同放大倍数下的图像,第一张是全局,是一个采样的轮廓。第二张放大4倍以后可以看到一些纹路。第三张放大40倍以后可以看到一些细胞和组织的细微结构。
病理图像的特点是数据量比较少,获取成本比较高,需要昂贵的专门的扫描仪把切片扫描成图像,扫描一张高分辨率图像一般需要20-30分钟。病理数据需要专家和医生标注,一张高分辨率的图像有几万乘几万,也就是上亿的像素,计算机处理起来有很大挑战。
另外,对于病理分析,我们经常要识别病理图像中非常细微组织的变化。因此,在自然图像中比较成功的算法往往在病理图像中不能达到相应的效果,我们就需要开发特殊的算法。
病理AI主要从三个方面进行研究和开发:
第一,开发基于AI技术的病理诊断模型,以提高医生的诊断效率,提高微小病变和疑难病例的识别能力。
第二,病理组学。从病理中提取对诊疗有用的特征,进行定量化分析,发现病理特征和诊疗之间的关联性。
第三,利用病理数据来开发基于AI技术的病理预后预测模型,可以利用病理信息来预测治疗的效果以及五年的总生存率和五年无远处转移率。
这三个方向大概可以覆盖从基层医院到三甲医院的不同应用场景。
围绕这三个方面,列举几个我们正在开发项目的例子。
刚刚提到,病理图像的获取非常困难。首先,病理切片的制作就是一个非常复杂的流程,从采样到固定、脱水、包埋、切片、染色,经常需要两到三天时间,而且没有标准化,因此在不同医院和中心的制作流程有差异性。
另外,这个切片要通过数字扫描仪扫描成图像。现在市面上有不少家扫描仪的公司,扫描仪的色差和白平衡等差异也会造成图像的差异,所以病理图像有很大差异性。
右边是四个不同病理中心的病理图像,颜色、色彩和风格有很大的差异性,这些差异对病理医生来说诊断影响不大,但是对于AI算法会造成显著影响,因此我们需要进行色彩归一化,这也是处理病理数据的一个重要步骤。
大部分的病理切片是H&E染色 (苏木精,伊红染色),将细胞核染成深褐色,将细胞液染成浅红色。我们可以对H&E染色的强度提取出染色特征向量。左边是数据集中染色的特征向量,全部画在一个颜色空间里面,这个向量差别非常大。如果我们在里面做一个聚类,可以发现,来自同一个中心的染色风格比较接近的会聚在一起。我们染色归一化的算法是要找到一个转化法,将多种染色风格转化成同一种染色风格。
现在染色归一化的算法主要是基于图像分解的算法,先算出H&E染色程度,得到染色特征矩阵。通过矩阵变化的方式来实现不同风格之间的转换,这对算法精度有一定的要求,对噪音和伪影也比较敏感。
我们在CycleGAN的思路上设计了一个方法。一般GAN的方法是只有单方向的对抗和生成,我们是加入了两个回路,一个正向回路是从A到B的转化,再从B回到A。反向回路是从B到A再从A回到B,这样可以保证转换的一致性。
同时,我们把刚才提到的染色特征矩阵加入到这个框架里面,可以辅助一对多的转换,这样就可以把多种染色风格转换成一种染色风格。
这是染色归一化的结果。上面是来自五个不同中心淋巴结的H&E病理切片,下面是染色归一化给归一化到第二个中心的结果,它们的风格各异,经过归一化之后有了比较一致的风格。
我们跟其他算法进行比较,将算法作为一个分类的前处理,看是否可以提高分类算法的性能。大家可以看这个图表中列了一些比较,在没有归一化情况下,分类的准确度是0.78,归一化之后可以提高到0.88,比现在其他基于矩阵运算的算法性能都要好。
刚才提到,病理诊断是一个非常复杂的过程,一般病理医生需要经过大概十年的专业训练才能够独立出报告。这边举了一个结直肠癌诊断的例子。如果做结直肠的诊断,这里有一些步骤和任务。
首先要判断出病理切片里面有没有病灶区域,如果有的话,需要对病灶区域进行良恶性的分类和分型。如果是良性,还要分增生性息肉、错构瘤、腺瘤;恶性分为普通腺癌、粘液腺癌、印戒细胞癌、腺鳞癌等。
如果是恶性肿瘤,还要根据细胞异型性和结构异型性来进行分级,分为高分化、中分化和低分化。
然后我们还要进行TNM分期,比如肿瘤的大小、进入到哪一层、有没有淋巴结转移、有没有转移到远端其他器官。
最后,对于某一些癌症还要进行免疫组化,得到分子分型的结构信息,以便指导后续的靶向治疗。
我们看到,结直肠癌的诊断就需要完成这么多任务,如果开发AI算法,要针对每个任务设计一个专门的AI算法,实际上是一个非常复杂的任务。
刚才提到病理诊断最基本的是,对病灶进行分类和分型。
还是以结直肠为例,第一步是区分我们采下来的息肉是腺瘤还是腺癌,这是良性和恶性的主要指标,后续的治疗方案是完全不一样的。
病理图像非常大,有几万乘以几万的像素,因此算法无法一次性处理整张图片,我们在处理中经常是把整个图片切成小的Patch,然后分别处理。
医生诊断的时候是找出整个图里面最严重的病灶,比如最严重的腺癌,把这个作为整图的标签。但是,整图里面有各种各样的病灶,既有腺瘤,也有腺癌,如果我们用分Patch的方法,只有整图的标签,对每个Patch没有标签,因此训练的时候需要采取特殊方法才能够得到比较好的训练模型。
这是我们的结直肠息肉分类的方法框架。首先,我们给一张WSI病理的整图,切分成几个Patch,把每个Patch分到一个卷积神经网进行分类。起初每个Patch是用整图标签,每个整图只有一个整图标签,但是刚才提到,这实际上是不准确的,整图标签是那个图中最严重的区域,对其他区域来说不准。
因此我们设计了迭代的方式更正每个Patch的标签。我们引用了两个新Loss,Rectified Cross-Entropy loss和Upper Transition loss。经过迭代过程以后,可以得到每个小Patch的标签,最后生成一个热点图,用来解释诊断的结果。
这是我们新提出的两个损失函数,一个是Rectified Cross-Entropy loss,对于分类概率比较低的噪音patch就把它的权值变成0,比较高的就强化它的作用,权值变为1,其他是进行线性插值。对于另外一个Upper Transtion loss,每个小Patch的标签不可能超过整图标签,因为整图是最严重的区域,这个loss是抑制分类错了的一些patch。
我们在400张结直肠息肉HE切片做了分类,分了三类:正常、腺瘤、腺癌。第一行的图是腺癌的例子,第二行的图是腺瘤的例子。
第一列是原图,我们病理医生勾画出腺瘤和腺癌的区域,实际训练中只用了整图标签,并没有用这些区域。
第二列是用Resnet 50预测的一个结果,在Pacth的分类中有很多错误,把腺瘤的区域分成了腺癌,因此造成整张图的分类都是错误的。
第三列是现在算法的一个分类结果,我们可以看到把小Patch也分对了。
右边的表是性能的比较,可以看到我们的算法和Resnet 50比起来,不管是Patch还是整图的性能都有了很大的提升。
下一个例子是淋巴结转移检测的例子。淋巴结转移反映肿瘤扩散到局部淋巴结的程度,淋巴结转移检测决定了N分期和后续的淋巴结清扫治疗方案。在诊断过程中,医生需要检查超过12个淋巴结,工作量还是比较大的。
第一行是淋巴结的原图,第二行是我们把转移癌的病灶圈起来了,可以看到它们的大小差异非常大,有一些颜色差异也是非常大。大的区域非常容易被检测出来,但是小的病灶在实际中很容易被漏掉,有的甚至放大很多倍才能看清楚,因此我们需要算法帮助医生检测出小的病灶,又不能有太多假阳,这个对算法精度的要求还是比较高的。
这是我们的算法框架。我们在整图中截取一些Patch,在每个Patch中进行检测,最后把它组合起来形成最终结果。我们用的网络是LinkNet,也是编码解码器的一个结构。另外,我们也有一些后处理的算法优化最终的结果。我们在Camelyon16公开数据集中开发和测试我们的算法。我们现在算法召回率是0.85@1.8FP,病理医生是0.73@0FP,可以比医生可以发现更小的淋巴结病灶。
同时,我们优化了这些算法,做了模型剪枝和压缩,让算法在显微镜图像下实时给医生反馈,医生看到之后就马上提醒他可能的转移病灶。我们的算法跟传统的相比较,性能有了略微提高,轻量模型在速度上有了显著提升,这样可以得到实时淋巴结病灶的检测。
免疫组化是近年来发展起来的非常重要的病理分析方法。实际上是利用抗原、抗体特异性结合的原理,通过化学反应,用附着在抗体上的染色剂来确定细胞和组织中的抗原,比如蛋白质、多肽的成分。这是靶向治疗用药和预后的重要指标。IHC的免疫组化指标有上百种,大多是有和无的定性分析,一些指标需要准确量化,具有比较高的临床意义。
比如神经内分泌癌中Ki-67,乳腺癌的HER-2和肺癌的PD-L1。我们看到一张图片有很多细胞,人工计数非常耗时耗力,一般临床诊断中医生都是大概估算,并没有真正统计准确的指数,因此主观性比较强,容易产生错误,缺乏标准。
如果我们用AI算法,可以快速精准地得到IHC的指数。IHC的染色分为两种,一种是染细胞核中的蛋白,比如Ki-67指数,另外一种是染细胞膜上的蛋白,比如HER-2(人类表皮生长因子受体2),这两种是不同的,因此我们开发两种不同的算法。
这是计算Ki-67指数的框架。Ki-67是细胞增殖指数,反映癌症的增殖速度和活跃程度,是一个非常重要的指标。它的定义是癌症区域中染色成深色的细胞与所有细胞的比例,同时扣除淋巴细胞和介质之间的细胞。我们的算法要检测出里面染成深色的细胞和浅色的细胞,统计出比例。
我们用了Mask-RCNN,将细胞分为三类,阳性细胞是红色,阴性细胞是绿色,其他是介质细胞和淋巴细胞。我们可以得到一个准确的Ki-67指数,比例是51.7%,医生平时的诊断很难得到这样准确的数,有人说40%,有人说70%,差别还是非常大的。
最后为AI病理做一个总结,AI病理实际上是一个比较新的方向,存在着一些挑战,主要体现在数据量比较小,样本不均衡,图像不标准,数据标注比较困难,诊断存在一些模糊性。
尽管存在这些挑战,我们认为数字病理+AI是未来的趋势,也可以为医生提高诊断效率、准确率和一致率。通过病理数据、影像数据和基因数据的融合,可以增强病理医生的诊断能力,实现精准医疗。
提问:我想问一下,现在的深度学习的可解释性是比较差的,甚至在医学上找不到对应的医学解释,我想请问,这对我们医疗AI的落地或者走入临床是否会有影响?
姚建华:这确实是医疗AI面临的主要问题。实际上这也是我们主要的研究方向。刚才我举了例子,分成每个小Patch,分析每个Patch的结果,可以告诉医生哪个Patch是什么样的类别。另外一个主要原因,现在有一些性能还没有达到特别好,如果AI性能做得非常准确,解释性有时候也没有那么重要。因为现在没有那么准,所以解释性就变得更加重要,因为我们还是在辅助医生。但这确实是医疗AI面临的主要问题。
提问:姚博士您好,病理的每个组织的每个检测看的东西都不一样,是不是导致AI需要多模块,每一个检测是不同的模型,还是中间可以有通用的东西?
姚建华:这个问题很好。确实是这样,不同病理组织差别不一样,对于病理医生也一样,病理医生经常也是分科的,有一些病理医生只看结直肠,有的只看乳腺,我们开发AI算法也要考虑到不同病种和病灶需要不同的模型。实际上,有一些底层模块还是可以共享的,比如最基本的细胞分割或者癌症区域的检测,这些在某种程度上是可以共享的,但是在整个应用层面上确实跟病灶并不是关联性非常大。
。