Потребление памяти при увеличении набора данных Якобиана
Я пытаюсь повторить результаты из https://arxiv.org/abs/1602.02697, но использую изображения размером 224x224x3, следуя учебному пособию черного ящика https://github.com/tensorflow/cleverhans/blob/master/cleverhans_tutorials/mnist_blackbox.py
Тем не менее, я сталкиваюсь с ошибкой потребления памяти (вставлено ниже). Мне кажется, что источником проблемы может быть увеличение набора данных якобиана: https://github.com/tensorflow/cleverhans/blob/master/cleverhans/utils_tf.py
Но я не знаю, как это проверить.
Я бегу код на 8 ГБ GPU.
Может ли быть так, что этот метод не может работать на больших изображениях? Как я могу это исправить? В чем сложность метода?
...
2019-02-07 18:21:32.984709: I tensorflow/core/common_runtime/bfc_allocator.cc:645] Sum Total of in-use chunks: 7.31GiB
2019-02-07 18:21:32.984715: I tensorflow/core/common_runtime/bfc_allocator.cc:647] Stats:
Limit: 7860224000
InUse: 7848987648
MaxInUse: 7848987648
NumAllocs: 10041921
MaxAllocSize: 2424832000
2019-02-07 18:21:32.984831: W tensorflow/core/common_runtime/bfc_allocator.cc:271] ****************************************************************************************************
2019-02-07 18:21:32.984849: W tensorflow/core/framework/op_kernel.cc:1273] OP_REQUIRES failed at transpose_op.cc:199 : Resource exhausted: OOM when allocating tensor with shape[4,256,56,56] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc
1 ответ
Это, скорее всего, объясняется тем, что размер X_batch
удваивается на каждой итерации p_idxs
, Если вы замените L698-703 вызовом batch_eval
предоставляемые в CleverHans, вы, скорее всего, сможете вычислить это даже в ImageNet. Если это решит вашу проблему, не стесняйтесь подавать в качестве пиара в CleverHans на GitHub.