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

时间:2018-03-20 15:35:25

标签: python machine-learning neural-network deep-learning caffe

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

有一个例子Cats vs Dogs,对我来说很清楚,我需要如何处理由两种类型(DogsCats)组成的数据。我试图按照他的步骤,得到一个结果caffe module

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

我发现的问题是我应该如何增加主要选择 在一个caffe模块?

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

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张图片。

1 个答案:

答案 0 :(得分:2)

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