深度学习平台(DLP)软件是一个用于深度学习应用开发的免编程软件平台,致力于为广大深度学习应用开发者打造一个高效并且具备良好用户体验的开发工具。DLP软件可前往DLP官网免费下载:www.ai-dlp.com
在上一篇文章中,笔者介绍了FCN,以及如何用DLP去搭建一个FCN网络用于MRI图像的语义分割。本文将介绍如何利用DLP对进行模型训练和部署。
3. 模型训练
在训练模块中,DLP会实时更新训练指标,如下图。在本教程中,我们观察三个训练指标:训练损失(Training loss)、测试损失(Test loss),以及测试准确度(Test accuracy)。请注意,测试数据的准确度开始时非常高(略高于98%)。 这是符合预期的,由于每个MRI图像中代表左心室的像素少于2%, 因此网络只需将每个像素都判别为背景就可达到如此高的准确度。这就是为什么我们需要更长时间地训练模型,以确保它学习数据的内在特征,从而获得更好的表现,而不是将所有像素都作为背景进行懒惰分类。
笔者在GTX 1080Ti上进行了训练,整个训练时间大约3小时。训练完成时,弹出消息对话框通知训练完成。点击确定,然后点击“NextStep”按钮进入“Deploy”页面。
4. 模型部署
如果读者正确地遵循本教程进行模型训练,在完成训练后即可使用模型对未经验证的MRI图像进行推理。笔者将使用之前下载的数据集中的子目录“test_images”下的MRI图像,这些图像是Sunnybrook左心室分割挑战数据集测试集的一个子集。
在进行推理之前,需要准备两个文件:1. deploy.prototxt文件;2. 标签文件。
标签文件label.txt文件应该包含以下内容:
文件中的两行分别代表语义分割任务中的两个类别: 0 - 背景(不属于左心室的区域)、1 - 左心室区域。
接下来创建deploy.prototxt文件。在之前模型定义时,点击“Train”按钮时,系统会提示将网络保存为.prototxt文件格式。复制保存的文件,重命名为“deploy.prototxt”并打开文件,删除四个数据层(Data layer),损失层(Loss layer),和准确度层(Accuracy layer),然后在文件的顶部,插入以下内容:
读者也可以在这里(https://pan.baidu.com/s/1OJKRpX4YSbWFGgtnxx1Eww)下载“deploy.prototxt”文件和标签文件。
接下来点击Model下方的齿轮按钮来配置推理引擎。在配置面板中: 指定是否在推理期间使用GPU,执行的推理类型,刚刚训练生成的caffemodel模型路径,以及刚刚创建的deploy.prototxt和label.txt。
完成引擎配置后,齿轮按钮将变为绿色,表示已提供所有必需的参数,然后点击开关按钮以启动推理引擎。推理引擎启动后,加载一个MRI图像,等待数秒之后,推理结果将会显示在右侧面板中。
并且,DLP会同时将推理生成的结果图片写至指定文件夹,如下图所示:
此处需要注意的是,如果当前工作目录是默认目录的话,那么DLP可能没有写入权限,推理无法进行,因此读者务必修改当前工作目录至其他文件夹下。
至此,我们就完成了利用DLP训练一个MRI图像语义分割模型,由于时间原因,笔者并没有将模型训练到准确度很高的地步,读者可自己去尝试提升模型的精度。
下期预告:DLP教程系列之交通图像语义分割
领取专属 10元无门槛券
私享最新 技术干货