What does it mean when your NN model has "multiple" inputs or outputs in Keras?
A Sequential model is not appropriate when:

- Your model has multiple inputs or multiple outputs
- Any of your layers has multiple inputs or multiple outputs
- You need to do layer sharing
- You want non-linear topology (e.g. a residual connection, a multi-branch model)

The docs suggest that you shouldn't use the Sequential API of Keras when you have such requirements as they also provide Functional API.

Assume that you want to caption an Image automatically. Now in the training time, you need to have images and texts both as Inputs at the same time, right? That's multiple inputs to the network.

Again, Assume that you want to do some image classification for some random image as well as predict the bbox coordinates of the desired object. Now you will have a regression output as well as a probability based output layer, right?

Another example for multiple outputs, Suppose you want to classify an image as to some class as well as find out which color has maximum coverage in the image or what's the color of the object (e.g. a black tee shirt, jeans etc). That will have multiple outputs at the very end.

The last variant possible is combination of both, having multiple inputs and outputs together.


Try to avoid it when your requirements are different or slightly involved...
Sample Image From link