title: Why do we need to include_top=False if we need to change the input_shape?
body: <p>As far as I know, the input tuple enters from the convolution blocks.
  So if we want to change the input_tuple shape, modifying convolutions would make sense. 
  Why do we need to include_top=False and remove the fully connected layers at the end?</p>
  
  <p>On the other hand, if we have different number of classes,Keras has an option to change the softmax layer using no_of_classes</p>
  
  <p>I know that I am the one missing something here. Please help me</p>
  
  <p>Example: For Inception Resnet V2</p>
  
  <blockquote>
    <p>input_shape: optional shape tuple, only to be specified if include_top
    is False (otherwise the input shape has to be  (299, 299, 3) (with
    'channels_last' data format) or (3, 299, 299) (with 'channels_first'
    data format). It should have exactly 3 inputs channels, and width and
    height should be no smaller than 139. E.g. (150, 150, 3) would be one
    valid value.</p>
    
    <p>include_top: whether to include the fully-connected layer at the top
    of the network.</p>
  </blockquote>
  
  <p><a href="https://keras.io/applications/#inceptionresnetv2" rel="nofollow noreferrer">https://keras.io/applications/#inceptionresnetv2</a></p>