Running inference on ESP32
Deep learning is a supervised learning method in ML. Similar to the human brain, it contains neurons, ie. computational units. Neural networks (NNs) are implementations of the deep learning method. A neural network has several layers of neurons and each layer can have a different number of neurons. In the last layer, the neural network generates its prediction. There are different types of layers, such as a fully connected layer, convolutional layer, pooling layer, etc. In a fully connected layer, all neurons are connected to every neuron in the next layer so that they can pass their calculations to the next layer fully. The following figure shows an NN with fully connected layers:
Figure 10.3: A fully-connected NN (Source: Wikimedia Commons)
An NN utilizes number arrays, or tensors, as a data structure. For example, a vector is a One-Dimensional (1D) tensor, and a matrix is a 2D tensor. A scalar, a single number, is a 0D tensor. Data is represented...