gpt4 book ai didi

machine-learning - MXNet ImageRecordIter 测试数据/标签格式

转载 作者:行者123 更新时间:2023-11-30 09:50:47 27 4
gpt4 key购买 nike

我在理解 MXNet ImageRecordIter 的工作原理时遇到了一些困难。 Here是我一直在使用的引用

首先,--test-ratio 标志实际上是做什么的?生成lst文件时,我无法分辨哪些行是测试数据。

我遇到的另一个更大的问题是标签的格式。如果我们有 N 个类,标准神经网络输出可能是一个具有 N 维的 softmax 向量。在这种情况下,正常的标签是 1 热编码,映射到我们的类的维度为 1。但 ImageRecordIter 似乎它的标签格式只是一个数字?幕后是否有一些魔法正在发生?

最佳答案

让我们首先从 --train-ratio--test-ratio 开始。这两个键仅用于将所有图像分割到测试组和训练组中。 Here is处理这些标志的代码中的精确位置。让我从那里复制粘贴逻辑:

    if args.train_ratio == 1.0:
write_list(args.prefix + str_chunk + '.lst', chunk)
else:
if args.test_ratio:
write_list(args.prefix + str_chunk + '_test.lst', chunk[:sep_test])
if args.train_ratio + args.test_ratio < 1.0:
write_list(args.prefix + str_chunk + '_val.lst', chunk[sep_test + sep:])
write_list(args.prefix + str_chunk + '_train.lst', chunk[sep_test:sep_test + sep])

可以看出,如果--train-ratio设置为1.0,它完全忽略任何测试比率,只转储文件中的所有图像(在我们的例子中caltech.lst)。这是造成困惑的主要原因,因为以下是填充 --train-ratio 默认值的方式:

cgroup.add_argument('--train-ratio', type=float, default=1.0,
help='Ratio of images to use for training.')

默认情况下它设置为1.0。因此,如果未设置--train-ratio,则--test-ratio 的设置无关紧要。记住这一点,让我们看一下 article 中的命令。 :

os.system('python %s/tools/im2rec.py --list=1 --recursive=1 --shuffle=1 --test-ratio=0.2 data/caltech data/101_ObjectCategories'%os.environ['MXNET_HOME'])

此处的命令仅包含 --test-ratio,因此它不会生成 2 个文件(./data/caltech_train.lst./data/caltech_test.lst)正如文章所声称的那样,而是由于上述原因而生成一个文件(./data/caltech.lst)。

为了解决这个问题,需要执行正确的命令:

os.system('python %s/tools/im2rec.py --list=1 --recursive=1 --shuffle=1 --test-ratio=0.2 --train-ratio=0.8 data/caltech data/101_ObjectCategories'%os.environ['MXNET_HOME'])

此时我希望清楚困惑的根源是什么以及所需的 key 如何工作。

现在,按照问题的第二部分。 im2rec.py 是一个用于准备数据的帮助程序脚本。它与您实际计划如何使用数据的方式无关。因此,它将标签存储为数字(顺便说一句,每个图像可能有超过 1 个标签)。此类列表的使用者可以将标签编号转换为他/她想要用于培训的任何内容。您可以将其与 SoftMax 一起使用,方法是创建一个大小等于标签数量的向量,并将索引等于标签编号的单元格设置为 1。

PS:如果读者有时间,我会鼓励使用固定命令向存储库提交拉取请求以及文章。

关于machine-learning - MXNet ImageRecordIter 测试数据/标签格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45497860/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com