将 Torchvision ImageFolder 与测试集一起使用
Using Torchvision ImageFolder with Test Set
我正在尝试使用 Udacity 课程中提供的 Sample Notebook 解决 Kaggle 上的狗对猫挑战。我已将文件重新排列到 train/
目录中的两个文件夹 dogs/
和 cats/
中,以便 ImageFolder
class 可以选择类别,但我没有不知道在测试文件夹中可以做什么?我没有准备好标签。
是直接不用ImageFolder API(好像课程用了,应该可以用,而且很方便),还是classes 还不知道。我在官方文档中找不到任何与此相关的内容,但应该可以看到课程解决方案就是这样做的。感谢您的帮助。
通常,在训练网络的上下文中,"test" 集实际上是一个 "validation" 集:它是模型 而不是 继续训练,但只接受评估。此验证集用于调整元参数(例如,时期数、学习率、批量大小等)。
因此,尽管验证 ("test") 集并未用于实际的 SGD 训练,但您确实拥有它的标签,它们用于估计训练模型的泛化误差。
由于您通常确实拥有该集的标签,因此您可以使用与训练集相同的 ImageFolder
class 来阅读它。
但是,如果您的测试集根本没有标签,您仍然可以使用 ImageFolder
class 来处理该集。您只需要创建一个虚拟子文件夹来表示集合的 "label":ImageFolder
假定图像根据其标签存储在子文件夹中。
我正在尝试使用 Udacity 课程中提供的 Sample Notebook 解决 Kaggle 上的狗对猫挑战。我已将文件重新排列到 train/
目录中的两个文件夹 dogs/
和 cats/
中,以便 ImageFolder
class 可以选择类别,但我没有不知道在测试文件夹中可以做什么?我没有准备好标签。
是直接不用ImageFolder API(好像课程用了,应该可以用,而且很方便),还是classes 还不知道。我在官方文档中找不到任何与此相关的内容,但应该可以看到课程解决方案就是这样做的。感谢您的帮助。
通常,在训练网络的上下文中,"test" 集实际上是一个 "validation" 集:它是模型 而不是 继续训练,但只接受评估。此验证集用于调整元参数(例如,时期数、学习率、批量大小等)。
因此,尽管验证 ("test") 集并未用于实际的 SGD 训练,但您确实拥有它的标签,它们用于估计训练模型的泛化误差。
由于您通常确实拥有该集的标签,因此您可以使用与训练集相同的 ImageFolder
class 来阅读它。
但是,如果您的测试集根本没有标签,您仍然可以使用 ImageFolder
class 来处理该集。您只需要创建一个虚拟子文件夹来表示集合的 "label":ImageFolder
假定图像根据其标签存储在子文件夹中。