Deep learning networks are identified from the regular single layer neural networks through their depth. Depth represents the number of node layers by which the data has to enter in a multi-step operation of pattern recognition.
Hence, in deep-learning networks, every layer of nodes trains on different sets of features depending on the previous layer`s output. The deeper you advance into the neural net, the features identified will be more sophisticated due to the fact that they aggregate and reunite features from the previous layer. Thus, this is commonly known as feature hierarchy and it is characterized by the increasing complexity and abstraction of the features. It is the set-up that permits deep learning networks to handle vast, high-dimensional sets with billions of parameters that go through nonlinear functions.
What is even more interesting, is the fact that these neural nets are able to discover latent structures in the unstructured data or raw media such as photography, texts, video or audio recordings. Thus, the most important issue that deep learning deals with is processing and clustering the world`s raw media by identifying similarities and anomalies in such data that no human being has ever organized in a functional database.
As an example, deep learning can analyse a million images, identify their similarities and cluster depending on their particularities. This represents the basis of the popular smart photo albums that are able to establish different kind of photo albums depending on location, event or type of photography. Also, the same idea can be applied to different types of data due to the fact that deep learning can cluster raw text such as emails or news articles. This is what we call messaging filters used in customer relationship management.
Well, the question that comes into the spotlight is how to opt for a specific deep net. The first step is to determine if the purpose is to build a classifier or if the goal is to identify patterns in the data. However, in order to get the patterns from a set of unlabelled data, an auto encoder or Restricted Boltzman Machine is required to be used, while the following steps should be considered:
- If there is the case for analysing texts, parsing and name entity recognition, a recursive neural tensor network or RNTN is required
- For language patterns that are used at character level, a recurrent net is to be used
- For identifying images, a deep belief network or DBN is required
- For recognizing objects, a RNTN is required
- For speech recognition, a recurrent net is required