这是一篇关于皮肤癌分类的文章,核心就是分类器,由斯坦福大学团队发表,居然发到了nature上,让我惊讶又佩服,虽然在方法上没什么大的创新,但是论文本身的工作却意义重大,并且这篇17年见刊的文章,引用量已经达到1300多,让人佩服,值得学习。

【出发点】现有的皮肤癌分类系统由于数据量不够,同时只针对标准化的图像如皮肤镜图像和组织图像,通用性不够,还难以媲美医生的水平,也就是说不能投入实际使用

【论文核心】利用inceptionv3训练12万张图片,对皮肤癌的诊断达到可媲美皮肤科医生的水平

【论文贡献】1.从互联网上收集12万张皮肤癌图像,这其中大多数为普通的图像(不是医学设备产生的标准图像),并由皮肤科医生打上类别标签

2.设计一套分类算法,对收集的图像进行详细的分类

3.利用在imagenet上预训练的inceptionv3在皮肤癌图像上训练,可得到非常好的效果

下面详细讲一下这三个点,主要是第一点,这是一个工作量很大的事,也是我认为本文最大的贡献所在。

1.数据

之前的皮肤癌分类系统使用的数据集较小,通常小于1000张图像,于是本文作者就在互联网上收集了129450张图像,其中3374张是皮肤镜图像(皮肤镜是皮肤科医生诊断时使用的专业手持设备)

在这些图像中共包含2032中疾病,但是训练分类器的时候,作者将输出的类别精简为757类,具体是如何做的就是本文的第二点贡献啦,论文给出一个简洁直观的图示,可以看到是一个树结构,2032种疾病的每一个都是一个叶子结点,然后不断向上聚合,形成更大的结点。

数据集是如何划分的呢,127463张图像作为训练集和验证集,1942张作为测试集。

2.分类算法

分类算法的思路很简单,从根节点开始遍历,计算当前节点所属类别包含的图片数量,以上面的Benign节点为例,它包含的图片数就是该节点下面所有叶子节点的图片数目和,若该数目超出设定的阈值(本文为1000),则递归计算该节点的所有子节点,否则满足条件,将该节点设为用来训练的类别,即757之一。具体流程如下,思路还是很清晰的,也很合理。

3.网络

网络上其实没啥新意,对于这种开创性的工作,确实不需要说网络有多大的创新

那么本文的网络采用的是inceptionV3,很奇怪,另一篇cell上的关于眼病分类的文章采用的也是inceptionV3,其实现在普遍采用的分类器是resnet系列,而这两篇重量级高质量文章都采用了inceptionV3,很奇怪。

网络的输出为757类,具体见上面的图,都是各种细分的皮肤区域,然后根据自己的需要,你可以对输出概率进行求和,得出更大的更粗糙的类别的概率,这一点不难理解。

论文钟对这一点有一个更直观的图解,绿色的结点构成757类输出,红色结点是更加粗糙更大范围的分类,那么大类的概率就是对下面子类概率的简单求和。

【实验结果】本文的分类实际上只针对两种皮肤癌,也就产生了本文的两个任务:角质形成细胞癌(keratinocyte carcinomas)vs 良性脂溢性角化病(benign seborrheic keratoses);恶性黑色素瘤 vs 普通的痣,在 21 位经过认证的皮肤科医生的监督下,测试了它在活检证实的临床图像上的性能。第一例代表最常见的癌症的识别,第二例代表了最致命的皮肤癌的识别。深度卷积神经网络在这两个任务上的表现都达到了所有测试的专家的水平,证明了该人工智能的皮肤癌鉴定水平达到了媲美皮肤科医生的水平。论文中的测试集用了三种数据,也就是共有三种测试,分别是epidermal lesions(上皮病变),melanocytic lesions(黑素细胞病变)和melanocytic lesions(dermoscopy)(也是黑素病变,只不过采用的是皮肤镜图像),下面高能,图示三种任务,都是二分类的。

定量的评估呢,本文采用敏感性-特异性曲线,也就是正样本的召回率-负样本的召回率,后者会随着前者的增大而由1 降为0。上图吧,可以看到,完全超过医生的水平

那些红色的点就是皮肤科医生的水平,完全处于分类器的曲线下面,在不同的数据量和不同类的数据上都有91%以上的表现,我佛了。

总结下,这绝对是有重要贡献的好文章,赞!

【医学影像】《Dermatologist-level classification of skin cancer with deep neural networks》论文笔记的更多相关文章

  1. 【医学影像】《Identifying Medical Diagnoses and Treatable Diseases by Image-Based Deep Learning》论文笔记

    这篇论文的作者是张康教授为首的团队,联合国内外众多医院及科研机构,合力完成,最后发表在cell上,实至名归. 从方法的角度上来说,与上一篇博客中的论文很相似,采用的都是InceptionV3模型,同时 ...

  2. 医学影像工作站程序ProDicom的说明

    转载 http://blog.csdn.net/prodicom/article/details/4015064 注意:以下内容为转载,但保留了第一人称,请注意,以免造成不必要的麻烦. 医网联影像工作 ...

  3. 释放至强平台 AI 加速潜能 汇医慧影打造全周期 AI 医学影像解决方案

    基于英特尔架构实现软硬协同加速,显著提升新冠肺炎.乳腺癌等疾病的检测和筛查效率,并帮助医疗科研平台预防"维度灾难"问题 <PAGE 1 LEFT COLUMN: CUSTOM ...

  4. C#开发医学影像胶片打印系统(一):万能花式布局的实现思路

    本篇文章将介绍开发医学影像胶片打印系统(printscu模式)遇到不规则排版时的一种思路, 一般来讲,医院打印胶片时都是整张胶片打印,但有时需要将多个病人或一个病人的多个检查打印在同一张胶片上, 这时 ...

  5. 基于cornerstone.js的dicom医学影像查看浏览功能

    最近由于项目需求,需要医学影像.dcm文件的预览功能,功能完成后,基于原生Demo做一个开源分享. 心急的小伙伴可以先看如下基于原生js的全部代码: 一.全部代码 <!DOCTYPE html& ...

  6. AI+医疗:使用神经网络进行医学影像识别分析 ⛵

    作者:韩信子@ShowMeAI 计算机视觉实战系列:https://www.showmeai.tech/tutorials/46 行业名企应用系列:https://www.showmeai.tech/ ...

  7. C#开发PACS医学影像三维重建(一):使用VTK重建3D影像

    VTK简介: VTK是一个开源的免费软件系统,主要用于三维计算机图形学.图像处理和可视化.Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的. 因为使用C#语言开发,而VTK是C++ ...

  8. [网摘][医学影像] DICOM 和 NIFTI 基础知识与区别

    查找DICOM基础知识时,看到这篇文章里面写了一些关于使用深度学习进行医疗影像分析:文件格式篇.下文摘自:https://www.jiqizhixin.com/articles/2017-07-31 ...

  9. 使用医学影像开源库cornerstone.js解析Dicom图像显示到HTML中

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. c语言和设计模式

    在网上看到一个博客专门写了关于设计模式的文章,感觉很有用.其实,我感觉数据结构 算法 设计模式 这三样同等重要啊. 数据结构 算法相对而言接触的比较多,但设计模式这个东西真的一头雾水,有时候觉得别人写 ...

  2. ECC 算法

    一.简介 1)椭圆曲线密码学的初级读本 http://8btc.com/thread-1240-1-1.html 2)ECC加密算法入门介绍 http://www.pediy.com/kssd/ped ...

  3. Partial Functions(偏函数)

    如果你想定义一个函数,而让它只接受和处理其参数定义域范围内的子集,对于这个参数范围外的参数则抛出异常,这样的函数就是偏函数(顾名思异就是这个函数只处理传入来的部分参数). 偏函数是个特质其的类型为Pa ...

  4. dedecms开启报错调试

    位置:/include/common.inc.php //error_reporting(E_ALL); error_reporting(E_ALL || ~E_NOTICE); 替换成 error_ ...

  5. Oracle VirtualBox 问题汇总

    1.打开虚拟机时报硬盘UUID 已经存在:错误信息: Cannot register the hard disk 'F:\VirtualBox VMs\cl-11r2-rac2\cl-11r2-rac ...

  6. 新年奉献MVC+EF(CODEFIRST)+EASYUI医药MIS系统(转)

    出处:http://www.cnblogs.com/chenlinzhi/p/4332628.html 本人闲来无事就把以前用Asp.net做过的一个医药管理信息系统用mvc,ef ,easyui重新 ...

  7. [GO]结构体类型添加方法

    package main import "fmt" type Person struct { name string sex byte age int } //带有接收者的函数叫方 ...

  8. Ubuntu重复循环启动的快速解决方法

    如果因为在配置java或者adb环境变量时修改profile文件导致的在登录界面输入密码后重复循环启动的问题,下面总结网上和实践找到快速解决的方法啦! 1.在登录界面按下ctrl+alt+F1进入命令 ...

  9. Redis缓存相关

    Redis缓存服务搭建及实现数据读写 RedisHelper帮助类 /// <summary> /// Redis 帮助类文件 /// </summary> public cl ...

  10. FPGA的时钟质量对设计的影响

    小梅哥编写,未经许可严禁用于任何商业用途 近期,一直在调试使用Verilog编写的以太网发送摄像头数据到电脑的工程(以下简称以太网图传).该工程基于今年设计的一款FPGA教学板AC620.AC620上 ...