【问题标题】:Dataset spliting in semantic segmentation语义分割中的数据集拆分
【发布时间】:2020-08-19 02:38:57
【问题描述】:

我正在从事生物医学图像分割任务。我从医院得到的数据被分成了训练集、验证集、测试集。但我对分裂感到困惑。

数据由来自不同患者的图像组成,每个患者从 3D 图像中获取 2~3 个 2D 切片。对于一位患者,他或她的 2 ~ 3 个切片彼此相邻或接近,这意味着 这些切片只有非常小的差异,裸眼几乎看不到眼睛。这 2~3 个切片分为训练集、测试集和验证集。所以训练集、测试集和验证集的比例接近1:1:1。

但是,我发现医学图像数据集的拆分主要基于患者。三组是不同患者的切片,而不是像医院的方式那样将同一患者的切片分成三组。我举个例子吧。

示例

令 i_j 为第 i 个患者的第 j 个切片,i_j & i_j+1 为相邻切片。所有切片编号如下:

1_1 1_2 1_3 / 2_1 2_2 2_3 / 3_1 3_2 3_3 / 4_1 4_2 / 5_1 5_2

医院的方式可能发生分裂:

训练: 1_1 2_1 3_1 4_1 5_1 Val: 1_2 2_2 3_2 4_2 测试: 1_3 2_3 3_3 5_2

可能以我的方式分裂:

训练: 1_1 1_2 1_3 2_1 2_2 2_3 4_1 4_2 Val: 3_1 3_2 3_3 测试: 5_1 5_2

我认为第一种方式,训练集、验证集和测试集其实太相似了。这会使验证集和训练集的准确率更高,但模型的泛化能力会更差。 那么哪种拆分方法是正确的呢?还是两者都可以?

【问题讨论】:

    标签: python dataset semantic-segmentation


    【解决方案1】:

    您的方式绝对是正确的方式。由于您指定的原因,医院的方法将导致大量过度拟合。

    【讨论】:

      猜你喜欢
      • 2020-08-14
      • 2019-04-18
      • 2019-09-05
      • 2021-02-19
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      • 2020-05-03
      • 1970-01-01
      相关资源
      最近更新 更多