写点什么

吴边:基于 AI 的医疗影像实践与应用

  • 2019-10-08
  • 本文字数:3376 字

    阅读完需:约 11 分钟

吴边:基于AI的医疗影像实践与应用

互联网+医疗,曾被认为是技术难度相当大的一个结合,但随着人工智能、大数据、云计算的不断发展,智慧医疗时代已经来临。

6 月 30 日下午,在七牛架构师实践日第二十九期,微医人工智能资深技术专家吴边对于这一领域进行了《基于 AI 的医疗影像实践与应用》为题的实战分享。本文是对演讲内容的整理。



大家好!很高兴能参加七牛云组织的架构师实践日活动,让我能有机会跟大家关于医疗影像方面进行交流。

医疗人工智能的背景

首先我想大致讲一下医疗人工智能的背景。因为医疗是个非常庞大的领域,它从诊断这个最核心的部分开始往外延,一直服务到方方面面。从医院到社区到家庭,它的每个领域,只要是医疗信息化和大数据涉及的部门,都可以把人工智能嵌入进去。所以前不久,谷歌发布了报告,声称医疗人工智能可以开始起飞了。正是因为它确实是有用,对于医疗领域的那种巨大的需求。


医疗影像为什么需要人工智能参与?

今天我们主要讲医疗影像,影像里面就涉及到诊断,诊断就跟医生有关系。现在医院里阅片的过程,是通过专门的阅片医生,通过看各种仪器拿到的图片,找到病灶进行对比,从而诊断是什么疾病。那这里面为什么需要人工智能参与?


最主要的原因是人力资源跟不上。大家去医院看过病就知道,我们有时候拍一张片子,可能需要一周才能拿到,就是因为医生太少,结果就积压在那边。第二跟是因为工作量太大,医生看片的时间长了,很容易疲劳,疲劳就容易误诊,所以限制他们每天看的总数。最后一点,是因为人的心理,我们往往只去找我们想找的东西,一旦不注意,往往会对一些东西视而不见。对于医生来说,如果一种病的影像中有六种情况需要关注,而他当时如果正好只想着五种,剩下的那种一种可能就会容易被遗漏掉。


针对以上的问题,我们在微医云里已经开展了医疗人工智能的很多研究,这里面包括了全科和专科两种,专科主要是影像和各种介质的诊断,全科为交互式的机器人,可以与人进行对话交流,提供就医指导意见。

医学人工智能所面临的挑战

首先,医疗人工智能,与总体人工智能有什么关系?显然医疗人工智能很多受益于人工智能目前总体的发展,很多人工智能的最新技术,医学人工智能都可以直接拿来用,在研发上对我们助力是非常大的。但是医学人工智能,特别是影像领域也面临着特有的挑战。


第一是医疗影像的介质类型不同。它的对象不是我们人眼习惯看到的天然的东西,这样就会带来一个问题,缺少人生来就有的“熟悉感”,导致我们从直觉上分析它比较难。


第二个是数据缺乏。如果大家有搞过机器学习或自动学习,就知道标记的数据非常重要,但是经过标记的医学样本是非常缺乏的,究其原因,就在于医学是个非常专业的领域,必须要找有资格的专业从业者来进行标注,而不能像自然影像一样直接众包出去。而另一方面,不同的标注者经验参差不齐,为保证数据可靠必须要找专业医院、水平比较高的医生去做。而这些医生大多属于超负荷工作状态,人力很少,所以拿到数据的代价大,而且慢。


最后一个是模型的使用问题。因为我们现在做的很多神经网络模型,目前来说大部分还是黑箱,这对日常的应用没关系,但是对医学领域来说,医生使用一个模型只看到一个结果,但是他不知道为什么会导致这个结果。而目前我们的人工智能以辅助医生为主,最终诊断结果还是由医生签字负责。如果他不能理解,就会觉得不靠谱,就不愿意接受这样的东西。

面对挑战的应对之道

这里应对之道,首先我们要加强与医生的沟通,自己要成为专家。


先对与自然影像不同的介质类型进行简单介绍。最典型的是 X 光(左上),这个大家应该都比较熟悉。旁边是断层扫描,包括 X-CT、核磁共振成像等,它们的特点是 3D 的。下图居中是病理,它把人体的组织样本放大到可以看到细胞的程度,从而进行细胞学判断。右下是眼底影像。其他还包括超声和心电图,心电图是 1 维时间信息,但是我们可以把它当做一个广义的影像来看待。常规也是有的,比如左下是皮肤病的一个照片,我们也可以由这个照片去做诊断,这个用一般的数码相机就可以。


非完全标记

另一个是非完全标记。



这是一张病理图,左侧图中,黑圈部分是医生标的有癌细胞的地方。可以看到他只标了粗的、大的比较明显的区域。右侧两图是眼底照片,圈里面高亮的地方是病灶,但是也有很多地方没有标进去的。为什么没有标?因为太细太多了,多到如果一个个全部标记,医生实在受不了。我们看到的只是其中一张,真正的数据需要成千上万图,你如果都去标,医生很快就吃不消。因此他只会把这种比较明显的、大的标出来。


还有一种情况如下图。



这是 CT 里面的,标注的形式问题也不少。因为 CT 是一个三维的数据,我们人类虽然生活在三维的空间,但习惯看到的是二维的表面,所以我们实在没办法直接感知这种三维。因此最常见的办法,是把 3D 数据分层,把每一层东西标注。但是这样工作量太大,CT 扫描往往有几百层。因此在这张癌症肿瘤的图上,一个常见的做法是医生只把肿瘤最大的那一层标注,其他层就不再标注。还有稍微好一点的,所谓的 2.5D 的做法,是在若干个互相垂直的平面上标记,剩下的就不标。


我们做过机器学习的就知道,这里标的是正样本,是“有病”区域,没有标的是负样本,没有病。但是这边有病标成没有病,就是伪的负样本,对我们的模型会造成干扰。


所以目前常用的有这样几种方法:重采样方法、loss 加权、弱监督学习。其实他们想做的事情都是同一件事情,是要减少未标记的内容,一些伪负样本造成的影响,不对机器学习过程产生影响,这样会把它们忽略掉。

弱监督学习

我们先看个例子:弱监督学习。在病理图像的诊断中,我们自己遇到过和下面这个论文中提到的同样的场景:粗标记的一个代表,这个代表只告诉你一批样本里面有病或没病,但没有具体告诉你是哪一张有病。在下图中,粗标记只告诉你这张图上是不是有病变,但是不会告诉你癌变具体有多少,发生在什么位置。也就是说这个标记是一个很粗的范围,并不十分细致。



那么面对这样的情况,我们的方法是什么呢?先把大块这张图分成很多小块,把每个小块单独分类。下图是对小块进行分类的分类器,分成正样本、负样本。然后把这两个结果融合起来,只要小样本有病的,我就把整个大模块标记为有病。这个做法通过选择可以在机器训练的时候,可以把信号反向传播回去,但是有一个选择的过程。比如我们有时可以选择这八个分类结果,他们有病的最大值、概率值,然后把它作为一个最大值的操作。但是一般最大值不是反向可逆的,我们就改为类似于这样的一个过程,它错误纰漏可以反向从那边传回去。


医疗影像案例:眼底影像

眼底影像是通过眼底机器拍到的人视网膜照片。因为视网膜是很敏感的组织,人的很多疾病,像内分泌疾病、糖尿病等,很快会导致视网膜发生改变。同时视网膜相当于是给大脑上开了一个窗口,通过它我们可以得知很多神经系统疾病。



我们之前做的研究,怎么样通过视网膜去判断一个人脑中风的风险。下面呈现的是一个糖尿病病例,这边都是一些病灶,要去把这些病灶全部找出来。



上图画框的地方,是医生给我们做标记。但是在图中有箭头指的地方,同样是有病变的,但是医生没有把它标进去。我们怎么来处理这个问题呢?第一是在这里加上一个常规的 SSD 的网络,然后这边进来了以后,这条通路是常规的通路,但我们这边加了一个这样的模块,把这个样本录进来之后,因为这个地方已经是 H-W-d 维的矩阵,在每个位置上都是一个样本。我们先把这些样本进行聚类,聚类的过程就是一个迭代的过程。聚类只对那些我们认定的这些部位进行。对这些已经标记的东西作为中心聚类了以后,我们就把剩下所有的这些没有标记的东西,跟它们进行对比。如果它的特征差别比较大的话,我们就把它的权重给降下来。也就是说我们把它认为是一个伪的负样本,反之则维持正常的权重。这样就在 AI 学习中避免了伪负样本的干扰。


用了这个技术以后,我们的模型就把之前没有找到的地方都标记了出来,就是图中蓝箭头指向的地方,相比原来的结果,有了一个巨大的提升。


作者介绍:


吴边,毕业于浙江大学生物医学工程专业,对类脑计算和人工智能有深厚的兴趣,拥有计算神经学,人工神经网络和机器学习方面的多年研究经验。曾任华盛顿州立大学研究助理教授,现任微医医疗影像智能研发工作负责人,睿医人工智能研究院高级研究员,致力于用深度学习等技术解决医疗领域的智能化需求。


本文转载自公众号七牛云(ID:qiniutek)。


原文链接:


https://mp.weixin.qq.com/s/mYhXyfpz4KcBq_LLAI9KBw


2019-10-08 10:251365

评论

发布
暂无评论
发现更多内容

什么是数据字典?

奔向架构师

数据库 9月日更

如何使用项目奖金?

石云升

团队管理 管理 9月日更

从月薪7.5K再到拿到字节跳动20K*14薪那天,我泪目了,没人知道我付出了多少

Java架构师迁哥

83天,从外包到拿下阿里offer,没想到我的阿里梦居然也能实现

Java架构师迁哥

李某逆道而行闭关三月,直接四杀斩获阿里/腾讯/京东/百度等大厂offer

Java架构师迁哥

联邦学习框架浅析

趣链科技

二本Java菜鸟9面字节遭虐,苦修数月深造这份 Java面试宝典,终进阿里

Java 程序员 架构 面试 计算机

大专的我,闭关苦学56天,含泪拿下阿里offer,五轮面试,六个小时灵魂拷问

Java架构师迁哥

Android的Ftp断点上传---Aria使用笔记

Changing Lin

9月日更

架构实战营-模块三作业

南山先生

「架构实战营」

内网渗透横向攻击流程

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

【架构训练营】【模块三】【作业】【学生管理系统架构文档】

简直走不拐弯

作业 架构训练营

花2个月备战字节,3轮面试拿下总包60W Offer!

Java架构师迁哥

外包学生管理系统的架构文档

晓波

架构实战营

开发者的多媒体梦工厂: AV Pipeline Kit究竟是什么?

脑极体

CSS交互动画指南之keyframes

devpoint

CSS css3 9月日更

架构实战营 - 模块三作业

Alex.Wu

Opus从入门到精通(一):简介

轻口味

android 音视频 9月日更

给我站出来!谁说在程序员过了三十岁进不去大厂的!

Java架构师迁哥

中原银行分布式缓存实践

中原银行

redis 中间件 分布式缓存 中原银行

0基础架构入门 - 3(学生管理系统 - 详细架构设计文档)

felix

架构实战营 0基础架构入门

足足50W字!行业把我逼成了 “内卷王” 把Github上所有面试题都整理了一遍

Java架构师迁哥

抑制不住的喜悦!耗时2个月整理的Java面试指南在Github上破百万star!

Java架构师迁哥

超24W字,2021最新一线大厂Java高级架构师面试题总结,共计480页

Java架构师迁哥

存储中间件架构梳理

十二万伏特皮卡丘

双非二本,外包苦熬4年,花20天吃透这份Java天梯图,成功上岸京东

Java架构师迁哥

阿里JDK源码小册(2021版)火了!下载量超60W次!

Java架构师迁哥

Go 专栏|并发编程:goroutine,channel 和 sync

AlwaysBeta

Go 语言

云智一体破解AI落地“最后一公里”难题,企业智能化转型再获新利器

百度大脑

人工智能

面试官zookeeper 是如何实现一致性的?我大意了,让我回去等通知

Java 面试 分布式 后端

架构实战营第二期-模块三作业

娜酱

#架构实战营

吴边:基于AI的医疗影像实践与应用_AI&大模型_吴边_InfoQ精选文章