title: Input(shape=(6,7)) expects 3 dimensions on model.predict
body: <pre><code>ValueError: Error when checking input: 
  expected input_1 to have 3 dimensions, but got array with shape (6, 7)
  </code></pre>
  
  <pre><code>_____________________________________________________________________________
  Layer (type)                    Output Shape         Param #     Connected to
  ==============================================================================
  input_1 (InputLayer)            (None, 6, 7)         0
  </code></pre>
  
  <pre><code>
      out1, out2 = model.predict(board)
  
  </code></pre>
  
  <pre><code>
      inputs = Input(shape=(6,7))
      inputs_reshape = Reshape((6,7,1))(inputs) # channels, batch_size, rows, cols
      net = Conv2D(4, kernel_size=3, activation='relu', 
              padding='same', data_format='channels_last')(inputs_reshape)
      net = Flatten()(net)
      pi = Dense(7, activation='softmax', name='pi')(net) 
      v = Dense(1, activation='tanh', name='v')(net)
  
      model = Model(inputs=inputs, outputs=[v, pi])
  </code></pre>
  
  <p>from the keras.io docs, it says that the <code>shape</code> dimensions for <code>Input()</code> does not include the batch size, and that <code>mdoel.predict()</code> sets <code>batch_size=32</code> by default. </p>
  
  <p>if <code>model.predict(data)</code> expects <code>data.shape</code> to be <code>(batches, 6,7)</code>, what's the difference between <code>model.predict(data, batch_size=1</code> and <code>model.predict_on_batch(data)</code></p>