Dice_loss用于验证集

时间:2018-02-13 00:24:23

标签: niftynet

我正在使用NiftyNet来处理MRI张图片。似乎主程序只有两个选项:

  1. 训练,根据训练集更新权重;
  2. 推断,预测。
  3. 我想使用hyperparameters设置调整validation,有没有方便的方法来计算验证集的dice_loss?我知道有dice_loss计算功能,但从那里开始可能会非常痛苦......

    任何建议都将不胜感激!

1 个答案:

答案 0 :(得分:1)

要获得一个近似的想法,您可以使用验证监控功能。如果将数据集拆分为培训,验证和测试(使用exclude_fraction_for_validationexclude_fraction_for_inference字段或使用预定义的dataset_split_file csv文件),则可以计算批次使用validate_every_nvalidation_max_iter参数在整个培训过程中验证失败。

在下一个版本(以及repo上的dev分支)中有一个名为evaluate的新操作,它允许您在推断后在输出上运行计算指标(包括Dice)

您需要在配置文件中添加[EVALUATION]标题,并在运行推理操作后使用评估操作。它将在MODEL_DIR /评估中创建csv文件,其中包含每个主题的度量标准,并在数据集上进行聚合。

默认情况下,它假定您要评估测试集(如果您使用过exclude_fraction_for_inferencedataset_split_file)或所有数据(否则)。要将其用于验证集,(1)使用额外参数运行推理--dataset_to_infer =验证,然后(2)使用额外参数运行评估--dataset_to_infer =验证。