我对深度学习和tensorflow是新手。我试图用tensorflow和places365标准数据集创建一个神经网络。你知道吗
我在tensorFlow的MNIST示例中看到,在begging时,必须加载所有数据。如果你有一个小的数据集,那就好了,但事实并非如此。Places365数据集每个类有5000个图像。我试图只加载10个类,但我的RAM内存不能处理所有这些。这不是必需的,因为每次迭代(epoch)我只使用128个图像。你知道吗
这不是一种分批划分数据集并在训练图像之前加载图像的方法吗?你知道吗
假设imageTrain是一个np.阵列在这里我加载了所有照片:
while(fin != (len(imageTrain)-1)):
ini = counter*BATCH_SIZE
fin = (counter + 1)*BATCH_SIZE
if fin > len(imageTrain):
fin = len(imageTrain) - 1
batch_imageTrain = np.reshape(imageTrain[ini:fin],[(fin-ini),256,256,1])
batch_labelTrain = labelTrain[ini:fin]
counter = counter + 1
有人能帮我吗? 先谢谢你。你知道吗
我想我找到了解决办法。正如它在这个链接中所说:
https://www.quora.com/How-do-I-load-images-efficiently-for-training-a-deep-neural-network-CNNs-My-images-are-too-big-to-load-all-of-them-into-memory
我可以保存在一个列表中,所有照片的名字,把它们淹没,然后只加载我需要训练的照片。 我提到的变量(imageTrain)将是一个字符串列表,其中每个字符串都是每个图像的路径。你知道吗
希望是明确的!你知道吗
相关问题 更多 >
编程相关推荐