AttributeError: 'module' object has no attribute 'MutableMapping'
Question: I followed the instructions for installing Google Tensorflow and its
dependencies on an Ubuntu 14.04 g2.8xlarge aws instance. While trying to run
the example problems, I'm running into the error posted below. Any help would
be greatly appreciated. Thanks.

    
    
    Traceback (most recent call last):
      File "convolutional.py", line 30, in <module>
        import tensorflow.python.platform
      File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 23, in <module>
        from tensorflow.python import *
      File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 37, in <module>
        from tensorflow.core.framework.graph_pb2 import *
      File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/graph_pb2.py", line 6, in <module>
        from google.protobuf import descriptor as _descriptor
      File "/usr/local/lib/python2.7/dist-packages/google/protobuf/descriptor.py", line 50, in <module>
        from google.protobuf.pyext import _message
    AttributeError: 'module' object has no attribute 'MutableMapping'
    


Answer: This sounds like an incompatibility between TensorFlow and the version of
Protocol Buffers that's installed on your machine. The two best options are:

  1. Try to upgrade the Protobuf library in `/usr/local/lib/python2.7/dist-packages/google/protobuf/` to version 3.0.0a3 or higher.

  2. Install TensorFlow in a virtualenv, by following the instructions [here](https://www.tensorflow.org/versions/master/get_started/os_setup.html#virtualenv_install). This should install the appropriate version of protobuf alongside TensorFlow.

