Подтвердить что ты не робот

Tensorflow: AttributeError: объект 'module' не имеет атрибута 'mul'

Я использовал shadoworflow для ONE day, но возникают некоторые проблемы, когда я импортирую shadoworflow, был бы атрибут AttributeError: 'module' не имеет атрибута 'XXXXXX'

Окружающая среда

Я использую ubuntu14.04, python2.7, CUDA toolkit 8.0 и CuDNN v5. И версии моих шести и протобуфов: Имя: шесть Версия: 1.10.0 Местоположение:/usr/local/lib/python2.7/dist-packages Требуется: Имя: protobuf Версия: 3.2.0 Местоположение:/usr/local/lib/python2.7/dist-packages Требуется: шесть, setuptools

вот мой тестовый код:

import tensorflow as tf
a = tf.placeholder(tf.int16)
b = tf.placeholder(tf.int16)
add = tf.add(a, b)
mul = tf.mul(a, b)
with tf.Session() as sess:
    # Run every operation with variable input
    print "Addition with variables: %i" % sess.run(add, feed_dict={a: 2, b: 3})
    print "Multiplication with variables: %i" % sess.run(mul, feed_dict={a: 2, b: 3})
4b9b3361

Ответ 2

Эта операция была ранее доступна в версиях 0.x. С выходом версии TF 1.0 они внесли изменения в API. В дополнение к

tf.mul, tf.sub и tf.neg устарели в пользу tf.multiply, tf.subtract и tf.negative

многие другие функции были переименованы и изменены следующим образом:

Несколько вызовов API python были изменены, чтобы больше напоминать NumPy тесно.

Таким образом, многие скрипты, которые вы уже нашли в Интернете или из книг, не будут работать. Хорошо, что большинство из них могут быть исправлены с их миграцией script. Его можно запустить с помощью tf_upgrade.py --infile foo.py --outfile foo-upgraded.py. Он не сможет решить все (ограничения перечислены здесь), но сэкономит вам много работы.

Ответ 3

Попробуйте использовать tf.multiply вместо tf.mul. Это работает для меня