本教程介绍了使用英特尔优化的Tensorflow和Horovod基于Medical Segmentation Decathlon数据集在腾讯云多个节点服务器上进行3D U-Net模型的训练和推理。包括模型介绍,模型训练推理和结果展示。
【课程大纲】
1. 分布式AI实践课程简介
2. 腾讯云集群环境搭建
3. 运行分布式AI训练和推理
4. 分布式AI计算实践
本次课程主要介绍使用Intel优化的TensorFlow、Intel MPI Library和Horovod在腾讯云上使用Segmentation Decathlon Dataset中脑肿瘤(BraTS)数据分布式训练一个3D U-Net模型并使用训练出来的模型进行推理。这个模型在仅使用FLAIR(Fluid-attenuated inversion recovery,磁共振成像液体衰减反转恢复序列)Channel的情况下,整个肿瘤的Dice Coefficient能够达到> 0.85。
本次课程主要使用到的软件环境:
这些软件已经提前安装在了Intel的分布式AI镜像中,之家直接安装即可使用。
U-Net是卷积神经网络(Convultional Neural Network )的一种变形,可以利用数据增强(Data Augmentation)可以对一些较少样本的数据进行训练。其网络结构类似于字母U(见右图),因此命名U-Net。
U-Net主要分成两个部分:收缩路径(Contracting Path),扩展路径(Expanding Path)。收缩路径用来捕捉图片的上下文信息(Context Information),扩展路径用来对图片中需要分割出的部分进行定位(Localization)。医学方面相关的数据在获取成本上比其他的数据大非常多,因此U-Net对于医学领域深度学习在较少样本的医学影像的情况有很大的帮助。
医学影像很多时候都是块状的,也就是说是由很多个切片构成一整张图的存在。如果用2D的图像处理模型去处理3D,需要将医学影像图片(包括训练数据和标注数据)切片送进去设计的模型进行训练,这样处理的效率不高。如左下图所示,3D U-Net基于2D U-Net,它和2D U-Net的结构基本是一样的,唯一不同的就是全部2D操作换成了3D。这样子块状图像就不需要单独输入每个切片进行训练,而是可以采取图片整张作为输入到模型中。
MSD(Medical Segmentation Decathlon) 提供了10个不同的语义切分的数据和任务可供研究者测试研究机器学习/深度学习算法的普遍可适性。MSD希望实现一个在没有人为干预的情况下,能够解决每个任务的通用算法/模型或者学习系统。使用Medical Segmentation Decathlon的一般步骤:
这个实验里,我们只使用Intel优化的TensorFlow和Horovod去分布式训练脑肿瘤的任务模型并推理结果。
创建SSH服务器执行目录执行mkdir -p /var/run/sshd。启动SSH服务器执行/usr/sbin/sshd -D&。
默认的参数配置下,原图被分为[Height, Width, Depth] = [144, 144, 144] 的图块且每一个train batch同时处理8个图块,但这需要>=40Gb的内存。如果没有足够大的内存,可设置参数例如--patch_height=16 --patch_width=16 --patch_depth=16 将图块尺寸缩小处理,同时也可以用--bz=4 指定batch size将其缩小。
推理命令:
推理的过程中会打印出验证集的平均Dice Coefficient。对于每一个验证集的样本,它会在predictions_directory保存其predictions, MRI images和ground truth masks。
课程学习交流
云服务器(cloud virtual machine,cvm)为您提供安全可靠的弹性计算服务。 只需...
拥有高速计算与图形处理能力的云服务器 gpu 服务器,高性能服务器,视频编解码,图形图像工作站,图形...
fpga 云服务器(fpga cloud computing)是基于fpga(field progr...
课程一经售出,若非平台(即腾讯产业互联网学堂/腾讯云官网)技术原因均不予退款,平台技术原因是指:由平台技术故障引发的连续超过24小时课程无法正常观看,视频无法正常播放、PPT/PDF课程无法观看。如用户个人网络原因、观看设备故障、用户账号丢失等原因不属于平台技术故障。