Chapter 5. Building Deep Networks

Now is no time to think of what you do not have. Think of what you can do with that there is

Ernest Hemingway, The Old Man and the Sea

In this chapter, we take a look at the suite of tools that are available in the DL4J and some real-world examples that you can use in your own projects. We begin by reviewing how we map specific deep networks to the appropriate problem. We end the chapter with a deep dive into many of the core examples that come with the library.


For information about DL4J installation and support, refer to Appendix G.

Matching Deep Networks to the Right Problem

A theme we introduced in Chapter 4 was how deep learning is about designing the network architecture to match the problem as opposed to hand-engineering features in the input data. In this chapter, we see examples of deep networks matched to specific types of problems. For the purposes of this chapter, we’ll call out applications specifically for the following:

  • Modeling columnar data
  • Modeling image data
  • Modeling sequence/time-series data
  • Natural Language Processing applications

The applications in this chapter illustrate the concepts of deep networks we’ve been building since Chapter 1. Although we don’t have an example of every architecture referenced in Chapter 4, we have compiled a set of examples to illuminate core concepts in deep learning such that you could easily extend most any example toward a new purpose. Let’s begin by reviewing the data types in ...

Get Deep Learning now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.