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.
   68   69   70   71   72   73   74   75   76   77   78