title: Getting error on ML-Engine predict but local predict works fine
body: <p>I have searched a lot here but unfortunately could not find an answer.</p>
  
  <p>I am running <code>TensorFlow 1.3</code> (installed via PiP on MacOS) on my local machine, and have created a model using the <a href="https://github.com/tensorflow/models/blob/master/object_detection/g3doc/detection_model_zoo.md" rel="nofollow noreferrer">provided</a> "<code>ssd_mobilenet_v1_coco</code>" checkpoints.</p>
  
  <p>I managed to train locally and on the ML-Engine (Runtime 1.2), and successfully deployed my savedModel to the ML-Engine.</p>
  
  <p>Local predictions (below code) work fine and I get the model results</p>
  
  <pre><code>gcloud ml-engine local predict --model-dir=... --json-instances=request.json
  
   FILE request.json: {"inputs": [[[242, 240, 239], [242, 240, 239], [242, 240, 239], [242, 240, 239], [242, 240, 23]]]}
  </code></pre>
  
  <p>However when deploying the model and trying to run on the ML-ENGINE for remote predictions with the code below:</p>
  
  <pre><code>gcloud ml-engine predict --model "testModel" --json-instances request.json(SAME JSON FILE AS BEFORE)
  </code></pre>
  
  <p>I get this error:</p>
  
  <pre><code>{
    "error": "Prediction failed: Exception during model execution: AbortionError(code=StatusCode.INVALID_ARGUMENT, details=\"NodeDef mentions attr 'data_format' not in Op&lt;name=DepthwiseConv2dNative; signature=input:T, filter:T -&gt; output:T; attr=T:type,allowed=[DT_FLOAT, DT_DOUBLE]; attr=strides:list(int); attr=padding:string,allowed=[\"SAME\", \"VALID\"]&gt;; NodeDef: FeatureExtractor/MobilenetV1/MobilenetV1/Conv2d_1_depthwise/depthwise = DepthwiseConv2dNative[T=DT_FLOAT, _output_shapes=[[-1,150,150,32]], data_format=\"NHWC\", padding=\"SAME\", strides=[1, 1, 1, 1], _device=\"/job:localhost/replica:0/task:0/cpu:0\"](FeatureExtractor/MobilenetV1/MobilenetV1/Conv2d_0/Relu6, FeatureExtractor/MobilenetV1/Conv2d_1_depthwise/depthwise_weights/read)\n\t [[Node: FeatureExtractor/MobilenetV1/MobilenetV1/Conv2d_1_depthwise/depthwise = DepthwiseConv2dNative[T=DT_FLOAT, _output_shapes=[[-1,150,150,32]], data_format=\"NHWC\", padding=\"SAME\", strides=[1, 1, 1, 1], _device=\"/job:localhost/replica:0/task:0/cpu:0\"](FeatureExtractor/MobilenetV1/MobilenetV1/Conv2d_0/Relu6, FeatureExtractor/MobilenetV1/Conv2d_1_depthwise/depthwise_weights/read)]]\")"
  }
  </code></pre>
  
  <p>I saw something similar here: <a href="https://github.com/tensorflow/models/issues/1581" rel="nofollow noreferrer">https://github.com/tensorflow/models/issues/1581</a></p>
  
  <p>About the problem being with the "data-format" parameter.
  But unfortunately I could not use that solution since I am already on TensorFlow 1.3.</p>
  
  <p>It also seems that it might be a problem with MobilenetV1: https:// github.com/ tensorflow/models/issues/2153</p>
  
  <p>Any ideas?</p>