DeepLearning4j relies on ND4J for preforming linear algebra operations such as matrix multiplication. Previously, we covered quite a few such libraries, for example, Apache Commons Math or Matrix Toolkit Java. Why do we need yet another linear algebra library?
There are two reasons for this. First, these libraries usually deal only with vectors and matrices, but for deep learning we need tensors. A tensor is a generalization of vectors and matrices to multiple dimensions; we can see vectors as one-dimensional tensors and matrices as two-dimensional ones. For deep learning, this is important because we have images, which are three-dimensional; not only do they have height and width, but also multiple channels. ...