Как исправить AttributeError: объект «Tensor» не имеет атрибута «numpy»

AttributeError: объект «Tensor» не имеет ошибок атрибута «numpy», поскольку значение параметра run_eagerly установлено как False. Существует две версии модуля TensorFlow: Tensorflow 1. x и Tensorflow 2. x. В Tensorflow 1. x нам приходится устанавливать этот параметр вручную, но в Tensorflow 2.0 по умолчанию он равен True.

Решение 1: включите eager_execution (только для Tenorflow 1.x)

Если вы используете TensorFlow 1. x, нам нужно явно вызвать eager_execution.

Решение 2: вызвать run_functions_eagerly(для Tensorflow 2.x)

Установите для функции tf.enable_eager_execution() значение True.

Решение 3

Еще одно решение для исправления ошибки AttributeError: объект «Tensor» не имеет атрибута «numpy», преобразуйте Tensor в массив NumPy, используя метод .numpy() объекта Tensor.

Выход

В этом коде Python сначала мы импортировали библиотеку tensorflow и определили тензор с помощью метода tf.constant(). Чтобы преобразовать тензор в массив numpy, мы использовали функцию tensor.numpy(). Если вы запустите приведенный выше код, мы не получим ошибки AttributeError: ‘Tensor’ object has no attribute ‘numpy’, вместо этого он вернет этот вывод: '[[11, 21], [19, 46]]'.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python