Мне нужно реализовать операцию логического маскирования с использованием TPUEstimator.tf.boolean_mask не реализован.Есть ли обходной путь?
Следующий код отлично подходит для моей цели на CPU и GPU:
all_out = model.get_sequence_output()
P = tf.boolean_mask(all_out, P_mask)
all_out - тензор формы [?, 128, 768]
P_mask имеет форму [?, 128], а второе измерение закодировано в одну горячую точку для представления желаемого тензора для извлечения.
Желаемая форма P равна [?, 768]
Когда я запускаю это на TPU с помощью TPUEstimator, я получаю следующее сообщение об ошибке:
Compilation failure: Detected unsupported operations when trying to
compile graph _functionalize_body_1[] on XLA_TPU_JIT: Where (No
registered 'Where' OpKernel for XLA_TPU_JIT devices compatible with node
node boolean_mask/Where