Page 73 - Data Science Algorithms in a Week
P. 73
Machine Learning Applied to Autonomous Vehicles 57
biological eyes. To understand convolutional networks, imagine that we want to
detect features such as edges or other visual elements. The filters can detect these
features, so a CNN acts like a filter in the space domain.
Note that all concepts of machine learning such as how to translate a problem into a
fixed length array of floating-point numbers, which type of algorithm to use,
normalization, correlation, overfitting, and so on are also applicable in deep learning.
Deep Learning Concepts
Deep CNN is a new type of neural networks and one of the classes of deep neural
networks. CNN works by successively representing small portions of the features of the
problem in a hierarchical fashion and combining them in a multiple layer network (with
several hidden layers). This successive representation means that the first layer(s) will be
engineered to detect specific features. The next layers will combine these features into
simpler profiles/forms and into patterns to make the identification more resistant to
positions, resolutions, scales, brightness, noise, and rotations. The last layer (s) will
match that input example (i.e., a particular image acquired) and all of its forms and
patterns to a class. CNN has provided very high levels of predictions in computer vision,
image processing, and voice recognition.
CNN's remind us of neural network architectures such as the Neocognitron and
L3NET-5. CNN's can have many layers. A classical architecture will have at least 4
layers: input, convolution, pooling, and a fully connected one. CNN's can have several
convolution layers, several pooling layers, and several fully connected ones.
Deep learning is an emergent concept of many technologies such as:
The Rectified linear unit (ReLU) has become the standard activation function for
the hidden layers of a deep neural network. The output layer uses a linear or
Softmax activation function depending on whether the neural network supports
or does not support regression or classification. ReLU is defined as ( ) =
(0, ). The function returns 0 if x is negative, otherwise it returns x.
Filters: Convolutional neural networks (CNNs) breaks up the image into smaller
pieces. Selecting a width and height that defines a filter or patch is the first step.
CNN uses filters to split an image into smaller patches. The size of these patches
matches the filter size. Then CNN simply slides this patch horizontally or
vertically to focus on a different piece of the image making convolution. The
amount by which the filter slides is referred to as the stride. How many neurons
does each patch connect to? That is dependent on our filter depth. If we have a
depth of k, we connect each patch of pixels to k neurons in the next layer.