
How it worksnnUNet是什么会自动适应数据集的语义分割框架主要用在医学。具体来说包括网络超参、数据预处理等内容它都会自动根据数据集来决定训练出一个strong UNet baseline为什么“自动配置”很重要数据集太多样了手动配置费劲、易错、难扩展2D/3D不同模态和通道数图像尺寸和体素密度voxel spacing各向异性anisotropy类不平衡目标结构性质target-structure properties体素对应像素即3D图像的最小信息单元spacing我翻译叫密度实际上比较接近2D图像的dpidot-per-inch概念也就是单位物理尺寸中的单元数单位是 个不过spacing是它的倒数即一个体素的物理尺寸单位是 毫米一般由3个数构成表示3个轴向的密度。其实spacing这个概念也适用于2D图像用2个数表示各向异性spacing在不同轴上数值不同的情况比如[0.5 0.5 1.0]此时物理上的正方体在图像上是长方体1mm x 1mm x 1mm的正方体占2 x 2 x 1的体素区域深度方向被压扁了类不平衡有类间不平衡和类内不平衡两种类间很好理解不同类别的数据量不平衡类内下面的内容来自AI请自行甄别正误有三种典型情况子类不平衡、特征空间密度不均、难易样本失衡例子如下子类不平衡鸟类可以分很多种具体的鸟比如麻雀和鹦鹉它们的数量不平衡特征空间密度不均因为视角等原因同一个类的数据在特征空间中形成了多个簇这些簇的样本数量不平衡比如人脸图像中正脸和侧脸数量不同子类不平衡也可能导致这个问题难易样本失衡一般情况下是容易判别的样本多难判别的样本少但你也可能故意反过来收集或者构造数据目标结构性质大概指的是要分割的物体器官、细胞等、场景病变模式等的结构性质大小、形状等甚至还有“物体嵌套在物体里”之类的物体间关系等应用场景监督学习的语义分割尤其适合 从头训练、生物医学数据集 和 非标准成像设置非标准成像设置简单来说就是什么稀奇古怪的拍摄方式都无所谓nnUNet只从实际数据中推断配置不做过多要求主要配置根据数据集nnUNet会产生 2d、3d_fullres、3d_lowres和3d_cascade_fullres 四种网络总体结构和其它相关配置其中cascade似乎是最少创建的自适应是怎么做到的nnUNet有三种决策方式用在不同配置项上固定参数有稳定的、默认的值不随数据集而变基于规则的通过启发式规则根据 数据集指纹 决定取值数据集指纹一些对于决策比较重要的信息比如图像尺寸、spacing等。nnU-Net 利用这些信息来确定预处理流程、目标spacing不同的spacing要统一缩放到某个目标值、patch尺寸和网络拓扑比如网络层数等经验参数靠经验或观察的结果选值实际发生了什么总体来说工作流如下把数据集变成nnUNet的格式提取数据集指纹创建plans预处理训练一个或多个配置比较这些配置的结果决定后处理流程推理未完26/8/5