​导读 |近日,云+社区技术沙龙“腾讯开源技术”圆满落幕。本次沙龙邀请了多位腾讯技术专家,深度揭秘了腾讯开源项目TencentOS tiny、TubeMQ、Kona JDK、TARS以及MedicalNet。本文是陈思宏老师关于致力于提供基于3D医疗影像大数据的预训练模型MedicalNet的详细介绍。

一、医疗影像AI概述

医疗影像 AI 实际上解决的是「患者看病难,医生诊断累」的全球普遍问题。

由于培养投入大,周期长,医护人员的数量在短时间内很难大幅度增加,而人工智能技术可以辅助医疗工作,缓解当前医护资源不足的状况。

人工智能对于医疗领域来说,主要有两个作用,一个是进行人群基础筛查,另一个是提升诊断质量。对于一些简单的疾病,人工智能能达到较高的诊断性能,用于人群疾病初筛的工作上,在一定程度上缓解缺乏医护人员的问题。而一些治疗难度较高的疾病,人工智能可以为医生诊断提供参考依据,起到提醒作用。

医疗影像包含丰富的诊断信息,是医疗诊断中非常常见的手段。医疗影像AI的“制造”方法如下:收集标注数据,再通过这些数据来训练人工智能模型,最终实现在系统中输入患者影像,获得接近资深医师的诊断结果。

二、MedicalNet与医疗影像AI发展的关系

近年来,图像与视频识别软件的发展,为医疗影像 AI 提供了很大帮助。但医护人员资源有限,标注数据成为了困难,导致可用于训练的同分布标注数据非常少,与数据驱动的深度学习形成矛盾,这就是目前医疗影像 AI 的发展瓶颈所在。

因此对于医疗影像 AI 的研究来说,亟需找到大规模数据集以及相应的模型,为大部分小数据医疗影像AI应用提供信息支持,而这也正是开发 MedicalNet 的动机。尽管每个同分布的医疗3D公开数据集数据量小,但多个医疗场景的数据集集合起来能形成较大规模数据集,MedicalNet 开发团队就将这些场景的数据集收集起来,用来训练不同的预训练模型,再开源相关预训练模型。这样一来,当有用户需要训练一个新模型时,就可以直接用 MedicalNet 模型进行迁移学习,即便新应用中数据量较小,用户最终仍旧可以训练出模型。

三、MedicalNet的技术实现

在 MedicalNet 的实现过程中,有不少难题需要通过技术来解决。其中包括像素含义不一,范围差异大,伪影频繁,成像质量低,边界模糊,对比度低;不同源数据,标注缺失;同一组织分辨率不一致,不同组织尺度差异大等等问题。

MedicalNet 开发团队主要通过两个方案来解决这些难题。首先是数据集筛选方案,主要目的是找出具备共通知识的数据集。具体做法如下:从每种场景的数据集中挑选少量数据,形成迷你数据集代理,通过代理快速训练成小网络,最后根据迷你数据集分割预测结果的好坏判断哪些数据集能够保留下来。

筛选完数据集之后,采用联合训练方案进行训练。先对数据进行空间和像素归一化预处理。为了获取更多标注信息,MedicalNet全部采用分割数据集。MedicalNet由编码和解码部分组成,编码部分为开源的模型。为了将更多的信息集中在编码部分,所以就把大部分参数都集中在了编码中。为解决数据集与数据集之间标注不统一的问题,在解码部分使用多任务形式对多个场景的标注数据进行隔离。在训练过程中,不同的skip-connection组合用于缓解梯度消失问题。训练完成后,编码部分可迁移到任意分割、分类以及检测等多种任务的模型中。

最终的实验结果证明,在3D医疗影像应用中,MedicalNet能帮助小数据场景的网络加快收敛速度,提升预测性能。

四、Q&A

Q:MedicalNet使用代码是否已开源?MedicalNet有无用到医院的某个功能上?A:MedicalNet相关代码已开源,详见https://github.com/Tencent/MedicalNet,MedicalNet目前也已经用于多个落地模块中。

讲师介绍

陈思宏,腾讯视觉算法高级研究员,14年起着手医疗影像AI相关工作,在MICCAI、TMI等顶级会议期刊发表过论文。主要致力于深度学习在医疗视频影像和3D影像的研发与应用。

数据量不足,MedicalNet 如何助力医疗影像 AI 突破瓶颈?的更多相关文章

  1. 区域医疗移动医疗影像解决方案--基于HTML5的PACS--HTML5图像处理【转】

    基于HTML5的PACS--图像伪彩 摘要: 要查看此系统更多的图像处理功能请参考:区域医疗移动医疗影像解决方案--基于HTML5的PACS--HTML5图像处理套用句广告语:哪里不会点哪里,so e ...

  2. NGK公链助力医疗行业数据安全

    近年来医疗领域的数据泄露事件时有发生,医疗行业数据面临着医疗数据获得不易及缺乏有效管理和数据安全机制问题.而区块链的去中心化.分布式账本等特点正好契合医疗领域的需求点. 医疗数据市场痛点 一.医疗信息 ...

  3. 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)

    分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间 这里共享一个脚本 CREATE TABLE #tab ...

  4. 使用rowid抽取数据方法以及大数据量游标卡住的应对

    平时工作的时候,经常会遇到这种事情,从一个大表A中,抽取字段a在一个相对较小B的表的数据,比如,从一个详单表中,抽取几万个用户号码的话单出来.这种时候,一般来说, 做关联查询: create tabl ...

  5. 大数据量冲击下Windows网卡异常分析定位

    背景 mqtt的服务端ActiveMQ在windows上,多台PC机客户端不停地向MQ发送消息. 现象 观察MQ自己的日志data/activemq.log里显示,TCP链接皆异常断开.此时尝试从服务 ...

  6. POI3.8解决导出大数据量excel文件时内存溢出的问题

    POI3.8的SXSSF包是XSSF的一个扩展版本,支持流处理,在生成大数据量的电子表格且堆空间有限时使用.SXSSF通过限制内存中可访问的记录行数来实现其低内存利用,当达到限定值时,新一行数据的加入 ...

  7. Oracle普通表->分区表转换(9亿数据量)

    背景介绍: 环境:Linux 5.5 + Oracle 10.2.0.4 某普通表T,由于前期设计不当没有分区,如今几年来的数据量已达9亿+, 空间占用大约350G,在线重定义为分区表不现实,故采取申 ...

  8. jquery.datatable.js与CI整合 异步加载(大数据量处理)

    http://blog.csdn.net/kingsix7/article/details/38928685 1.CI 控制器添加方法 $this->show_fields_array=arra ...

  9. 查看数据库表的数据量和SIZE大小的脚本修正

    在使用桦仔的分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)的脚本时,遇到下面一些错误 这个是因为这些表的Schema是Maint,而不是默认的dbo,造成下面这段SQ ...

随机推荐

  1. php检测函数

    验证字符串是否为电子邮箱  var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));       //bob@example.co ...

  2. H3C 基本的局域网间路由

  3. WPF 使用 Composition API 做高性能渲染

    在 WPF 中很多小伙伴都会遇到渲染性能的问题,虽然 WPF 的渲染可以甩浏览器渲染几条街,但是还是支持不了游戏级的渲染.在 WPF 使用的 DX 只是优化等级为 9 和 DX 9 差不多的性能,微软 ...

  4. H3C备份/恢复下次启动配置文件

  5. es6笔记 day2---函数默认参数、箭头函数、剩余参数

    函数变化: 1.函数默认参数 2.函数参数默认是已经定义了,不能再使用let.const声明 3.扩展运算符.rest运算符 ...就是扩展运算符,它的作用就是把数组给展开 结合函数使用传参,也可以将 ...

  6. dotnet 获取用户设备安装了哪些 .NET Framework 框架

    从注册表可以拿到当前用户安装的 .NET Framework 版本,本文告诉大家如何解析这些信息 在注册表的当前设备的 SOFTWARE\Microsoft\NET Framework Setup\N ...

  7. 防火墙TCP的单向控制

    网络拓扑: 如上图所示,防火墙分为external/internal/dmz三个安全zone,其中10.133.1.100/32为dmz区的一台squid缓存服务器,10.158.1.10/32,10 ...

  8. 闲着没事,做个chrome浏览器插件,适合初学者

    时光偷走的,永远都是我们眼皮底下看不见的珍贵. 本插件功能:替换掉网页中的指定图片的src地址. 使用插件前: 使用插件后: 鲜花(闲话):这个网站的不加水印的图片连接被保存在,图片的data-ima ...

  9. Docker Desktop for Windows Experience

    Docker Desktop for Windows Experience: https://github.com/poazy/boazy-learn/blob/master/doc/Docker%2 ...

  10. java中获取url传值时的int类型参数的方法

    int parameterName=Integer.valueOf(request.getParameter("你所要获得的int类型的参数名"));