I am a Tensorflow beginner and I am trying to learn how to use Tensorflow. I understand that we can build a network model and create a pair of inputs and labels for the network to train, i.e.
inputs = tf.placeholder(tf.float32, [None, patch_size, patch_size, num_channels], name="inputs")
labels = tf.placeholder(tf.float32, [None, patch_size, patch_size, num_channels], name="labels")
network = build_network(inputs, ...)
optimizer = get_optimizer(labels, ...)
session.run(optimizer, {inputs: input_batch, labels: label_batch})
save.save(session, path)
Let's say patch_size is 50 for training in the above case.
Now when we try to perform testing, we can re-use some of the above code to build the network model and run the test. Let's say I set the patch size to 180. How did Tensorflow treat it if I restore the checkpoints but specify a different patch_size to build the network model?
patch_size=180
inputs = tf.placeholder(tf.float32, [None, patch_size, patch_size, num_channels], name="inputs")
labels = tf.placeholder(tf.float32, [None, patch_size, patch_size, num_channels], name="labels")
network = build_network(inputs, ...)
saver.restore(session, path)
prediction = session.run(network, {inputs:, input_batch})
As far as I can tell Tensorflow could accept different train input size (batch size 50) and test input size (batch size 180).
So how does Tensorflow work this out internally to predict the output when the train and test input sizes are different?
Is it okay to use different input sizes?
Are there any advantages or disadvantages of using different input sizes?