In the previous sections of this chapter, we went through the theory of CNNs and the GoogleNet architecture. If this is the first time you're reading about these concepts, probably you are wondering about the complexity of the Scala code to implement CNN's models, train, and evaluate them. Adopting a high-level framework like DL4J, you are going to discover how many facilities come out-of-the-box with it and that the implementation process is easier than expected.
In this section, we are going to explore a real example of CNN configuration and training using the DL4J and Spark frameworks. The training data used comes from the MNIST database (http://yann.lecun.com/exdb/mnist/). It contains images of handwritten digits, with each image labeled by an integer. It is used to benchmark the performance of ML and DL algorithms. It contains a training...