​导读 |近日,云+社区技术沙龙“腾讯开源技术”圆满落幕。本次沙龙邀请了多位腾讯技术专家,深度揭秘了腾讯开源项目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. Python--day65--母版和继承的基本使用

  2. java IO的概述和File方法

    IO流用来处理设备之间的数据传输        Java对数据的操作是通过流的方式        Java用于操作流的对象都在IO包中 File类在整个IO包中与文件本身有关的操作类,所有的与文件本身 ...

  3. js基础——正则表达式

    1.创建方式: var box = new RegExp('box');//第一个参数字符串 var box = new RegExp('box','ig');//第二个参数可选模式修饰符 等同于 v ...

  4. 5款顶尖Windows文件传输工具

    5款顶尖Windows文件传输工具 英文原文: Drasko 日常工作中,公司里的系统管理员或其他岗位的员工都需要传递大量各种类型的文件和文档.其中一些可以通过 email 收发.但由于 email ...

  5. dotnet 非泛型 类型 System.Collections.IEnumerable 不能与类型实参一起使用

    如果在开发的时候遇到非泛型 类型"IEnumerable"不能与类型参数一起使用,那么就是变量的命名空间没弄对 在 dotnet 里面有 System.Collections.IE ...

  6. dotnet 使用 System.CommandLine 写命令行程序

    在写命令行程序的时候,会遇到命令行解析的问题,以及参数的使用和规范化等坑.现在社区开源了命令行项目,可以帮助小伙伴快速开发命令行程序,支持自动的命令行解析和规范的参数 我写过一篇关于命令行解析的博客C ...

  7. blink接收器

    blink: [autorun] OPEN="AutoInst.exe"  [AskRebootTitle] Dlg1=System Settings Change Dlg2=št ...

  8. map实现删除给定字符串中的小写字母

    def del_lowerletters(s): if s>='a' and s<='z': return " " else: return s print(" ...

  9. 027.MFC_映射消息

    映射消息MFC中的消息映射宏 DECLARE_MESSAGE_MAP BEGIN_MEASSAGE_MAP END_MESSAGE_MAP向导自动映射消息手动添加映射消息 MFC会帮我们自动映射大部分 ...

  10. 浅析 Nginx 网络事件

    Nginx 是一个事件驱动的框架,所谓事件主要指的是网络事件,Nginx 每个网络连接会对应两个网络事件,一个读事件一个写事件.在深入了解 Nginx 各种原理及在极端场景下的一些错误场景处理时,需要 ...