получение ошибки атрибуции, что AttributeError: модуль ‘tensorflow.python.framework.ops’ не имеет атрибута ‘_TensorLike’ в tensorflow?

#python-3.x #tensorflow #keras #image-segmentation

#python-3.x #tensorflow #keras #сегментация изображений

Вопрос:

Я пытаюсь создать модель, похожую на кодировщик-декодер, где я получаю следующую ошибку в model.fit

  AttributeError: module 'tensorflow.python.framework.ops' has no attribute '_TensorLike'

model.fit(train_dataloader,
      validation_data = test_dataloader,
      steps_per_epoch=len(train_dataset)//8,
      epochs=10)
  

Я использую keras 2.3.1 и segmentaion-model

Как ее устранить?

Ответ №1:

Эта проблема исправлена в последней версии keras 2.6.0

Обходной путь для более старой версии Keras

Изменение is_tensor в файле keras/backend/tensorflow_backend.py , начиная с keras с tensorflow 2.3.0

 from tensorflow.python.framework import tensor_util
def is_tensor(x):                                                                                                                                                      
    return tensor_util.is_tensor(x)
    #return isinstance(x, tf_ops._TensorLike) or tf_ops.is_dense_tensor_like(x)