CLAM: A Deep-Learning-based Pipeline for Data Efficient and Weakly Supervised Whole-Slide-level Analysis
(CNS复现)CLAM——Chapter_00
(CNS复现)CLAM——Chapter_01
(CNS复现)CLAM——Chapter_02
(CNS复现)CLAM——Chapter_03
我在前两个礼拜的一篇教程中讲过,我要开始追踪这个课题组的五篇文章。但是因为一些原因导致我心态爆炸,所以这件事情就一直耽搁着。
今天打完疫苗心态有所恢复,在这摸鱼的一个月的时间里面,我对我自己的博客定位做了很深入的思考,最终得出了今后博客的定位。我的所有博客的定位就是单细胞或者深度学习相关的CNS文献复现。
不讲废话了,直接开始
首先我们看一下官方介绍:
CLAM: 是一种高通量且可解释的方法,可使用幻灯片级别的标签对数据进行有效的整个幻灯片图像(WSI)分类,而无需任何ROI提取或补丁级别的注释,并且能够处理多类子类型化问题。经过训练的模型在三个不同的WSI数据集上进行了测试,可适应WSI切除和活检以及智能手机显微镜图像(显微照片)的独立测试队列。
环境配置,什么好说的了,直接跟着官方指南走就行。
这里需要注意一点就是,topk可能按指南的Code是没办法安装的,所以我是直接下载下来后,将topk文件拖到代码目录下的
官方环境配置指南:
https://github.com/mahmoodlab/CLAM/blob/master/docs/INSTALLATION.md
还好当时没有开始写教程,刚刚发现代码新增了一部分关于可视化的内容,不过好像并不影响
如果大家看过文章的话会发现,该模型的主要用途是一种病理切片的辅助诊断系统,最终的想法是要完成一种语义分割:(如果是二分类)将病灶和非病灶区域通过模型输出的注意力得分进行可视化。
这个模型最大的难点就2个:
- 的数据太大
- 无法对label进行标注
文章提出了一种方法来解决这两个问题——将超大图片分割成小patch然后对patch进行聚类
因此该模型的训练阶段主要是分为4个部分:
- 切割出图形的边界,去掉大部分的背景色,
- 将大图切成小图
这两个步骤全部在 文件中进行
- 对每一张大图进行特征提取
该步骤在中执行
- 模型训练
该步骤在中执行
对于复现的话主要分为两个部分:
- 根据官方信息跑一边
- 解读重要的数据预处理流程:关于代码的执行步骤不可能每个都讲,基本只讲我认为重要的(或者我不懂的然后查懂的,关于没查懂的也会做批注方便后续回来看),因此与其说是教程,更确确切的应该是我自己的实验记录
对于CLAM这个算法,官方给出了两个版本。分别针对不同的数据类型:
- 针对 的二分类任务
- 针对 的多分类模型
本系列主要针对二分类,多分类道理相通
官方给出了 3 个数据下载源:
这里的话我是选择 数据源,一共要下载两个数据一个是 文件,还有一个是 文件
因为电脑带不动太大的数据,所以选择了 LSCC 和 LUAD 这两套数据
将硬盘中的数据移动到工作目录
数据源如下:
其中,
- 是从github上下载的所有代码
- 是刚刚下载下来的两个文件
为了加快后续的分析,我随机挑选了几个样本构成
到该步骤,前期准备就绪开始跑流程
这一步骤,一共生成4个文件,具体如下:
其中,
- 文件中储存的image代表过滤掉的前景可视化
- 是将 中被框起来的部分的分割,将超巨大的图片分割为256*256的小patch,这些小 patch 被认为是原始 image 的特在图
- 没用
- 这里记录了每张 image 的处理的参数
在跑官方代码的时候,要先生成 文件,文件内容如下:
输出的文件是 ,文件形式大致如下:
但是,这种层级结构是不能满足后续的输入需求的。所以要新建一个名为 的文件夹,将这两个文件放入该文件夹中。最后的层级结构应该如下:
与步骤2相同,步骤三执行前要先生成 文件,文件内容如下:
其中第一列为case_id,这个要使用之前下载的cohort.csv文件获取,生成Step.03所需要的csv文件代码如下:
在跑代码的时候我们需要打开 文件,并找到如下位置修改:
找到csv_path 修改为自己的csv即可
执行这一步骤后,会在工作目录下生成 文件,该文件中储存所有的输出对象
同样,打开 文件,找到并做如下修改
这个步骤和 是完全一样的
在执行这个步骤的时候要对配置文件和模型参数做一下修改,具体修改如下:
打开 文件,找到如下几个位置并做修改即可
然后运行即可
最终可视化结果如图:
官方基本流程运行完毕,这一篇是复现细节的必要途径。接下来的几篇主要针对Step1-4展开深度的解析,主要是为了让我自己清楚他怎么做的数据处理,和思考他为什么这么做。
到此这篇pointnet++复现可视化(tempo 可视化)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/do-docker-k8s/73173.html