Karthik Nishant
Karthik Nishant

Reputation: 11

No backports error while retraining Tensorflow's Inception v3 model

I have been trying to retrain Inception by following the tutorial here: https://www.tensorflow.org/tutorials/image_retraining. I get this error "No module named backports" when I run this

bazel-bin/tensorflow/examples/image_retraining/retrain --image_dir ~/marine_animal_species1

This is the full Traceback:

Traceback (most recent call last):

      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/examples/image_retraining/retrain.py", line 91, in <module>
        import tensorflow as tf
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/__init__.py", line 24, in <module>
        from tensorflow.python import *
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/__init__.py", line 64, in <module>
        from tensorflow.python.framework.framework_lib import *
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/framework/framework_lib.py", line 100, in <module>
        from tensorflow.python.framework.subscribe import subscribe
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/framework/subscribe.py", line 26, in <module>
        from tensorflow.python.ops import variables
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/ops/variables.py", line 26, in <module>
        from tensorflow.python.ops import control_flow_ops
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/ops/control_flow_ops.py", line 70, in <module>
        from tensorflow.python.ops import tensor_array_ops
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/ops/tensor_array_ops.py", line 33, in <module>
        from tensorflow.python.util import tf_should_use
      File "/home/karthik/tensorflow/bazel-bin/tensorflow/examples/image_retraining/retrain.runfiles/org_tensorflow/tensorflow/python/util/tf_should_use.py", line 28, in <module>
        from backports import weakref  # pylint: disable=g-bad-import-order
    ImportError: No module named backports

I use ubuntu 16.04. Thank you for the help.

Upvotes: 1

Views: 279

Answers (2)

helios
helios

Reputation: 369

sudo pip install backports.weakref
sudo pip3 install backports.weakref

Solved the problem for me.

Upvotes: 2

Jeet.Hathi
Jeet.Hathi

Reputation: 3

Install the weakref module from the backports namespace. You can get the wheel file from https://pypi.python.org/pypi/backports.weakref/1.0rc1 & install the downloaded wheel as such:

sudo pip install backports.weakref-1.0rc1-py2-none-any.whl # python2
sudo pip3 install backports.weakref-1.0rc1-py3-none-any.whl # python3

Then run your command

bazel-bin/tensorflow/...

This should solve your problem.

Upvotes: 0

Related Questions