【问题标题】:How to test neural network on entire testset using mxnet's dataset object?如何使用 mxnet 的数据集对象在整个测试集上测试神经网络?
【发布时间】:2018-08-24 16:16:26
【问题描述】:
我已经使用 mxnet 训练了一个 3D 卷积网络。我保存了网络架构和参数,目的是用它测试更多数据以检查其性能。由于我没有进行培训,因此我不想批量获取数据集。如何让网络读取整个数据集作为输入?直接将数据集对象传递给网络只是一个 4D 张量,而网络需要 5D。现在我正在使用数据加载器,但将批量大小设置为整个数据集,我觉得有一种更有效的方法可以做到这一点。
【问题讨论】:
标签:
python
machine-learning
mxnet
【解决方案1】:
DataLoader 需要 batch_size 或 BatchSampler。理论上,您可以编写一个 BatchSampler 将整个数据集作为一个批次提取,但我认为如果您的批次大小非常大,您不会看到显着的性能提升。此外,如果您有多个工人,使用批处理是有益的 - 您是否考虑过使用 num_workers > 0 来利用并行处理?