我正在使用 Chollet 的教科书“使用 Python 进行深度学习”,并且正在研究其中一个示例。
我的代码几乎与他的相同,但我遇到目录错误。这是我的代码:
import os, shutil
original_dataset_dir = '/Users/myusername/Downloads/dogscats_2'
base_dir = '/Users/myusername/Downloads/cats_and_dogs_small'
os.mkdir(base_dir)
train_dir = os.path.join(base_dir, 'train')
os.mkdir(train_dir)
validation_dir = os.path.join(base_dir, 'validation')
os.mkdir(validation_dir)
test_dir = os.path.join(base_dir, 'test')
os.mkdir(test_dir)
train_cats_dir = os.path.join(train_dir, 'cats')
os.mkdir(train_cats_dir)
train_dogs_dir = os.path.join(train_dir, 'dogs')
os.mkdir(train_dogs_dir)
validation_cats_dir = os.path.join(validation_dir, 'cats')
os.mkdir(validation_cats_dir)
validation_dogs_dir = os.path.join(validation_dir, 'dogs')
os.mkdir(validation_dogs_dir)
test_cats_dir = os.path.join(test_dir, 'cats')
os.mkdir(test_cats_dir)
test_dogs_dir = os.path.join(test_dir, 'dogs')
os.mkdir(test_dogs_dir)
fnames = ['cat.{}.jpg'.format(i) for i in range(1000)]
for fname in fnames:
src = os.path.join(original_dataset_dir, fname)
dst = os.path.join(train_cats_dir, fname)
shutil.copyfile(src, dst)
print(src, dst)
我在最后一个单元格上收到错误消息“[Errno 2] 没有这样的文件或目录:'/Users/myusername/Downloads/dogscats_2/train/cat.0.jpg'”。我的文件夹的组织方式如下 dogscats_2>valid>dogs。主文件夹包含三个相关文件夹,即 train、valid 和 test 文件夹,每个文件夹中都有 dog 和 cat 文件夹。我认为最后一个单元格会添加适当的路径来训练、验证和测试数据,所以不确定还发生了什么。最后一行的输出是“/Users/brasilgu/dogs-vs-cats/cat.0.jpg /Users/myusername/Downloads/dogs_and_cats_small/train/cats/cat.0.jpg”