Although the exponential increase in computational power and the availability of larger datasets have led to the deep learning era, this certainly does not mean that best practices in data science should be ignored or that relevant datasets will be easily available for all applications.
In this chapter, we took a deep dive into the tf.data API, learning how to optimize the data flow. We then covered different, yet compatible, solutions to tackle the problem of data scarcity: data augmentation, synthetic data generation, and domain adaptation. The latter solution gave us the opportunity to present VAEs and GANs, which are powerful generative models.
The importance of well-defined input pipelines will be highlighted in the next chapter, as we will apply NNs to data of higher dimensionality: image sequences and videos.