ValueError: у оператора нет атрибута _xlaCompile - PullRequest
0 голосов
/ 01 июля 2019

Я обучил модель, которая использует tf.contrib.layers.recompute_grad.Сейчас я пытаюсь построить карты значимости из модели, но функция keras-vis visualize_saliency просто останавливается.

Я пробовал жестко программировать значимость (вдохновленный Блогом Юми ) следующим образом:

inp = mdl.input
outp = mdl.layers[lyr_idx].output

print('Input Layer: {}'.format(inp))
print('Output Layer: {}'.format(outp))

grad = K.gradients( outp, inp )[0]

print('Gradient Tensor: {}'.format(grad))

deriv_fn = K.function( [inp], [grad] )

print('Derivative Function: {}'.format(deriv_fn))

grad_eval = deriv_fn( [img_f[None,:,:,:]] )[0]
grad_eval = np.abs( grad_eval ).max( axis = (0,3) )

arr_min, arr_max = np.min( grad_eval ), np.max( grad_eval )
grad_eval = ( grad_eval - arr_min ) / ( arr_max - arr_min + K.epsilon )

print('Evaluated Gradient: {}'.format(grad_eval))

Я получаю вывод:

Input Layer: Tensor("input:0", shape=(?, 3, 65, 320), dtype=float32)
Output Layer: Tensor("output/BiasAdd:0", shape=(?, 1), dtype=float32)

и программа просто останавливается.Память GPU используется, но использование GPU 0% (без копий / чтения / записи).

Как при Ctrl+C при использовании функции keras-vis visualize_saliency, так и с моим собственным кодом, я замечаюследующая распечатка:

ValueError: Operation 'fc04/fc04/IdentityN' has no attr named '_XlaCompile'

В моей модели fc04 - это 4-й полностью связанный слой (просто слой keras.layers.Dense).Последний слой - это просто Dense слой с одним выходом, который появляется сразу после fc04.

Кто-нибудь может мне помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...