【医学影像】《Dermatologist-level classification of skin cancer with deep neural networks》论文笔记
这是一篇关于皮肤癌分类的文章,核心就是分类器,由斯坦福大学团队发表,居然发到了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》论文笔记的更多相关文章
- 【医学影像】《Identifying Medical Diagnoses and Treatable Diseases by Image-Based Deep Learning》论文笔记
这篇论文的作者是张康教授为首的团队,联合国内外众多医院及科研机构,合力完成,最后发表在cell上,实至名归. 从方法的角度上来说,与上一篇博客中的论文很相似,采用的都是InceptionV3模型,同时 ...
- 医学影像工作站程序ProDicom的说明
转载 http://blog.csdn.net/prodicom/article/details/4015064 注意:以下内容为转载,但保留了第一人称,请注意,以免造成不必要的麻烦. 医网联影像工作 ...
- 释放至强平台 AI 加速潜能 汇医慧影打造全周期 AI 医学影像解决方案
基于英特尔架构实现软硬协同加速,显著提升新冠肺炎.乳腺癌等疾病的检测和筛查效率,并帮助医疗科研平台预防"维度灾难"问题 <PAGE 1 LEFT COLUMN: CUSTOM ...
- C#开发医学影像胶片打印系统(一):万能花式布局的实现思路
本篇文章将介绍开发医学影像胶片打印系统(printscu模式)遇到不规则排版时的一种思路, 一般来讲,医院打印胶片时都是整张胶片打印,但有时需要将多个病人或一个病人的多个检查打印在同一张胶片上, 这时 ...
- 基于cornerstone.js的dicom医学影像查看浏览功能
最近由于项目需求,需要医学影像.dcm文件的预览功能,功能完成后,基于原生Demo做一个开源分享. 心急的小伙伴可以先看如下基于原生js的全部代码: 一.全部代码 <!DOCTYPE html& ...
- AI+医疗:使用神经网络进行医学影像识别分析 ⛵
作者:韩信子@ShowMeAI 计算机视觉实战系列:https://www.showmeai.tech/tutorials/46 行业名企应用系列:https://www.showmeai.tech/ ...
- C#开发PACS医学影像三维重建(一):使用VTK重建3D影像
VTK简介: VTK是一个开源的免费软件系统,主要用于三维计算机图形学.图像处理和可视化.Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的. 因为使用C#语言开发,而VTK是C++ ...
- [网摘][医学影像] DICOM 和 NIFTI 基础知识与区别
查找DICOM基础知识时,看到这篇文章里面写了一些关于使用深度学习进行医疗影像分析:文件格式篇.下文摘自:https://www.jiqizhixin.com/articles/2017-07-31 ...
- 使用医学影像开源库cornerstone.js解析Dicom图像显示到HTML中
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- java中interface使用
1.在C++中,类可以多重继承,一个类可以有好几个父类,但是在java中,类是不允许多重继承的,为了多重继承,java中出现了接口(interface)的定义.接口是可以多重继承的,接口的关键词是:i ...
- Discuz核心函数的解析
dz采用的是多入口的方式,在每个入口函数你能看到引用,启动核心类的语句(其余省略),如下: require './source/class/class_core.php'; C::app()-> ...
- Joomla3x-CKEditor4x-WordPaster整合示例
1.1. 集成到Joomla_3.4.7-ckeditor4x 资源下载:Joomla 3x, 1.1.1. 添加wordpaster文件夹 路径:/media/wordpaster/ 1.1 ...
- 【小梅哥FPGA进阶教程】第十四章 TFT屏显示图片
十四.TFT屏显示图片 本文由杭电网友曾凯峰贡献,特此感谢 学习了小梅哥的TFT显示屏驱动设计后,想着在此基础上通过TFT屏显示一张图片,有了这个想法就开始动工了.首先想到是利用FPGA内部ROM存储 ...
- ARM汇编中一些重要伪指令
IMPORT ,定义表示这是一个外部变量的标号,不是在本程序定义的 EXPORT ,表示本程序里面用到的变量提供给其他模块调用的. 以上两个在汇编和C语言混合编程的时候用到 ENDP 表示PRO ...
- 螺旋折线——第九届蓝桥杯C语言B组(省赛)第七题
原创 如图p1.png所示的螺旋折线经过平面上所有整点恰好一次. 对于整点(X, Y),我们定义它到原点的距离dis(X, Y)是从原点到(X, Y)的螺旋折线段的长度. 例如dis(0, 1)=3, ...
- Java网络编程のTCP/IP
TCP/IP参考模型和TCP/IP协议 与OSI参考模型相似,TCP/IP参考模型汲取了网络分层的思想,而且对网络的层次做了简化,并在网络各层都提供了完善的协议,这些协议构成了TCP/IP协议集,简称 ...
- MongoDB 主从复制 的设置
今天我们主要讨论mongodb的部署技术. 我们知道sql server能够做到读写分离,双机热备份和集群部署,当然mongodb也能做到,实际应用中我们不希望数据库采用单点部署, 如果碰到数据库宕机 ...
- Android-Handler+Message-消息机制
我的理解是,子线程要和主线程通讯,就需要Handler+Message-消息机制 案例一:倒计时Demo(子线程+Handler+Message) package liudeli.async; imp ...
- Arduino I2C + AC24C32 EEPROM
主要特性 AC24C32是Atmel的两线制串行EEPROM芯片,根据工作电压的不同,有-2.7.-1.8两种类型.主要特性有: 工作范围:-2.7类型范围4.5~5.5V,-1.8类型1.8~5.5 ...