As we have said in previous chapters, hidden layers of neural networks can be used to automatically build features on top of each other. This way of building features automatically from raw data is quite efficient. For example, if we want to build an image classification algorithm that classifies different types of artwork, we don't need to hand-craft features; we can outsource this process to the network.
This also has the advantage of creating a different and compact representation of the main features that are important in our task. These can potentially be used to algorithmically generate new instances of the object of our classification. In our example, we would be able to generate realistic artwork. We will see how we can generate new instances in more detail in Chapter 7, Working with Generative Algorithms.
There is another important aspect...