Tensorflow: L'utilisation d'un `tf.Tensor` comme `bool` Python n'est pas autorisée.

Créé le 3 juil. 2016  ·  3Commentaires  ·  Source: tensorflow/tensorflow

Informations sur l'environnement

Système d'exploitation : Linux Mint 17.3 Rosa
$uname -a

Linux Pabeda 3.19.0-32-generic #37~14.04.1-Ubuntu SMP jeu. 22 octobre 09:41:40 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

$python -c "importer tensorflow ; print(tensorflow. version )"
0.9.0

Étapes à reproduire

$ git clone https://github.com/ilblackdragon/tf_examples.git
$ python titanic.py

Qu'as-tu essayé?

  1. J'essaie de lancer le tutoriel sur : https://medium.com/@ilblackdragon/tensorflow -tutorial-part-1-c559c63c0cb1#.1a7hit535

    les erreurs

/usr/local/lib/python2.7/dist-packages/skflow/io/data_feeder.py:217 : VisibleDeprecationWarning : l'utilisation d'un nombre non entier au lieu d'un entier entraînera une erreur dans le futur
out.itemset((i, self.y[sample]), 1.0)
Traceback (appel le plus récent en dernier) :
Fichier "titanic.py", ligne 30, dans
tflr.fit(X_train, y_train)
Fichier "/usr/local/lib/python2.7/dist-packages/skflow/estimators/base.py", ligne 227, dans fit
feed_params_fn=self._data_feeder.get_feed_params)
Fichier "/usr/local/lib/python2.7/dist-packages/skflow/trainer.py", ligne 146, en train
si résumés :
Fichier "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", ligne 528, dans __nonzero__
raise TypeError("L'utilisation d'un tf.Tensor comme Python bool n'est pas autorisée. "
TypeError : L'utilisation d'un tf.Tensor tant que bool Python n'est pas autorisée. Utilisez if t is not None: au lieu de if t: pour tester si un tenseur est défini, et utilisez les opérations logiques TensorFlow pour tester la valeur d'un tenseur.

Commentaire le plus utile

@ilblackdragon , que pensez-vous de la réponse de @thinxer ?

Tous les 3 commentaires

Il ne s'agit pas d'un problème TensorFlow. Vous devez signaler à https://github.com/ilblackdragon/tf_examples pas ici.

Quoi qu'il en soit, pour y remédier, suivez simplement les instructions : remplacez if t par if t is not None .

@ilblackdragon , que pensez-vous de la réponse de @thinxer ?

Fermeture pour l'instant car il s'agit d'un comportement prévu. L'utilisation de conversions booléennes implicites est sujette aux erreurs, c'est pourquoi elle est interdite. Merci!

Cette page vous a été utile?
0 / 5 - 0 notes