How do I decide the optimal number of layers for a neural network?
There is a technique called Pruning in neural networks, which is used just for this same purpose.

The pruning is done on the number of hidden layers. The process is very similar to the pruning process of decision trees. The pruning process is done as follows:


Train a large, densely connected, network with a standard training
algorithm
Examine the trained network to assess the relative importance of the
weights
Remove the least important weight(s)
retrain the pruned network
Repeat steps 2-4 until satisfied


However, there are several optimized methods for pruning neural nets, and it is also a very active area of research.