#python-3.x #tensorflow #keras
#python-3.x #tensorflow #keras
Вопрос:
Я пытаюсь использовать формат данных NCHW, т. Е. первый канал, в моем процессоре. Это слой maxpool как часть Resnet18.
MaxPooling2D(pool_size=[3, 3], strides=2, padding='same', data_format='channels_first')
И ошибка, которую я получаю, это:
InvalidArgumentError (see above for traceback): Default MaxPoolingOp only supports NHWC on device type CPU
[[Node: max_pooling2d_3/MaxPool = MaxPool[T=DT_FLOAT, data_format="NCHW", ksize=[1, 1, 3, 3], padding="SAME", strides=[1, 1, 2, 2], _device="/job:localhost/replica:0/task:0/device:CPU:0"](batch_normalization_51/cond/Merge)]]
Есть ли способ это исправить? Я тоже пробовал data_format="NCHW"
, но он выдал ту же ошибку.
Ответ №1:
Не могли бы вы, пожалуйста, попробовать с помощью простой модели отладить проблему? Это работает в моей системе с процессором.
model = Sequential()
model.add(MaxPooling2D(pool_size=[3, 3], strides=2, padding='same',
data_format='channels_first', input_shape=(3,224,224)))
model.summary()
X = np.random.randn(1,3,224,224)
Y = model.predict(X)
print(Y.shape)
(1, 3, 112, 112)
Комментарии:
1. он перестал выдавать эту ошибку при компиляции tensorflow на intel mkl, спасибо.
2. @newlearnershiv пожалуйста, рассмотрите возможность публикации короткого ответа, чтобы тема была полезна другим в будущем — в противном случае, возможно, лучше просто удалить вопрос
3. Из комментария @newlearnershiv я нашел эту полезную ссылку software.intel.com/content/www/us/en/develop/articles/… (вкратце, pip устанавливает intel-tensorflow и pip удаляет tensorflow)
Ответ №2:
pip install intel-tensorflow
проблема решена, но обучение, похоже, идет медленнее, чем раньше.