使用自己的数据集训练网络

Working with training a network of own dataset

我找到了有关如何 train a neural net 的教程。我应该如何使用自己的数据集训练 caffe module

有一个轴示例 Cats vs Dogs,我很清楚我需要如何处理由两种类型(DogsCats)组成的数据。我试着按照他的步骤去做,结果是 caffe module.

然后我想增加类型集,我的意思是,我只训练了 2 类型,现在我想要 19 类型(是的,19 - 不同的对象) 培训。

而我发现的问题是我应该如何增加主要选择 在咖啡模块中?

这是我发现问题的代码部分:

dog_images = [image for image in os.listdir(DATA_DIR) if 'dog' in image]
cat_images = [image for image in os.listdir(DATA_DIR) if 'cat' in image]

dog_train = dog_images[:int(len(dog_images)*0.7)]
dog_test = dog_images[int(len(dog_images)*0.7):]

cat_train = cat_images[:int(len(cat_images)*0.7)]
cat_test = cat_images[int(len(cat_images)*0.7):]

我不认为如果我有 19 类型,这意味着我需要 19 次来编写这样的代码 (upper)。

此外,我的图片不在不同的文件夹中,我有一个,大约有 4,000 张图片。

您不需要重复该代码 19 次。此代码的唯一目的是创建 'train.txt''test.txt' 文件,列出您的图像文件和每个图像的标签。
我不知道你是如何组织磁盘上的图像的(你说你有一个包含 4K 图像的文件夹)但你应该能够分辨出每个图像属于 label/class (0..18)。在文件 'train.txt''test.txt' 中拥有这些列表后,您可以使用 工具继续创建训练和验证数据集。