As we saw in previous chapters, reinforcement learning demonstrates insufficient adaptability to high-dimensional input data. This problem is overcome by using low-dimensional characteristics vectors to represent high-dimensional input. However, finding useful vectors of features can be complicated, as it requires a good understanding of the problem.
One way to change the dimensionality of data is the autoencoder. Autoencoders are artificial neural networks with a hidden layer, which has the desired dimensionality of the input data; both input and output levels have the same amount of units. In these models, the network is trained to reproduce the input values in the output level. As we saw in the previous section, the autoencoder learns two functions: an encoder function and a decoder function.
During reinforcement learning, the amount...