NiftyNet选择性采样器批次不是从混合卷中获取的?

时间:2018-03-23 10:25:30

标签: niftynet

我正在使用选择性采样器对三个CT体积进行训练,以确保在RoI周围采集足够的样本(由于类不平衡),以及一些随机样本。我还通过缩放,旋转和翻转来扩充数据,这会在创建样本时花费大量时间。

将sample_per_volume设置为某个较大的值(例如32768)和batch_size设置为128,看起来NiftyNet将从第一个卷中取出128个样本的256个迭代,然后切换到仅从第2个卷中取样的样本(使用损失急剧下降等等。我希望每批128个样本是从所有训练量中获取的大致均匀混合样本。

我已经尝试将sample_per_volume设置为batch_size的大约1/3,以便每次迭代重新选择样本,但这会使每次迭代的速度从大约2s减慢到50-60s。

我误解了什么吗?或者有没有办法解决这个问题,以确保我的批次由所有训练数据的混合样本组成?感谢。

1 个答案:

答案 0 :(得分:1)

样本填充queue_length文件中给出的长度为.ini的队列。然后将它们从队列中随机取出以填充批次。

我会增大queue_length参数。然后将填充来自几个不同主题的数据。