Deep Learning. Deep Learning Related Microservices
Let’s discuss now the issues mentioned previously: deep learning related microservices and methods.
Deep Learning Methods
There are two main types of deep learning methods:
- Learning with a tutor
The first method uses specially selected data to obtain the desired result. It requires a lot of human assistance because data are selected manually. However it is good for classification and regression.
Imagine you are an owner of the company and you would like to determine the impact of financial rewards on the contract period of each of your employees. Provided you have a collection of data selected beforehand, deep learning with a tutor will be efficient and perhaps even indispensable.
The second method of deep learning does not provide any available answers and operation algorithms. It aims at detecting hidden patterns in data. It is usually applied to clustering and associative tasks, for example, you can use it if you need to divide customers into groups according to the type of behavior. «Customers who bought this item also bought» on Amazon is a kind of associative task.
Whereas deep learning with a tutor is often more comfortable, opting for self-learning is still preferable, even though the second method is more complicated, as DL is believed to be an independently functioning neural net.
Importance of Deep Learning
Computers started applying image recognition technologies long ago. However, the results were far from being encouraging. Computer vision influenced deep learning enormously. Currently these two techniques are responsible for all the recognition tasks.
In particular, it’s Facebook team who succeeded the most in recognizing faces in pictures applying deep learning methods. It is not just an improvement of the technology but the crucial moment, overturning all the ideas you may have had about the deep learning before: «Comparing two pictures, you can establish with a probability of 97.53% if they represent one and the same person. The program developed by Facebook team is able do it with a probability of 97.25% whatever is the light and no matter if the person is looking right to the camera or is standing in profile».
Speech recognition has also changed a lot. The team of Baidu, one of the most powerful China search engines, has developed a system of speech recognition able to outperform humans in text writing speed and accuracy. Texts were written in English and Mandarine using mobile devices.
What is particularly interesting, developing a common neural net for two absolutely different languages was not especially difficult: «People got used to thinking English and Chinese are two absolutely different languages requiring each a different approach», says Andrew Ng, the head of Baidu research center. «For the moment learning algorithms are still so general, that you can simply learn».
Google uses deep learning to manage energy resources in data centers of the company. They succeeded in reducing cooling energy consumption by 40%, increasing thus energy consumption efficiency by approximately 15% and saving millions of dollars.
Deep Learning Related Microservices
Here is a short list of services related to Deep Learning.
Illustration Tagger. This service allows tagging images rated as «protected», «dubious», «dangerous», «copyrighted» or «general» to make an idea about the image even before seeing it. Additional features: Illustration2Vec
Age classification tool applies image analysis technologies to determine the age of the person in the picture. Places 365 Classifier uses a trained neural net and a database for 2016 to locate people by their pictures (for example, to determine if a person is found in a village, at the pharmacy, in a hotel room, in the mountains etc). Don’t forget about InceptionNet, the heir apparent of the InceptionNet from Google. Analyzing a car in a picture, this neural net can suggest five best models of the same brand.
Deep Learning Related Open Source Frameworks
Deep Learning is available due to certain projects with an open-source code. This list contains both the most famous and some less popular technologies. It is based on the orientation, complexity and academic character of the neural net. Here is the list:
- Based on JVM
- Freely available
- Integrated with Hadoop and Spark
- Popular on Academia
- Incredibly simple
- Edited in Python and Numpy
- Based on Lua
- Home version is used by Facebook and Twitter
- Contains trained neural net models
- Additional feature for Theano from Google
- Edited in Python and Numpy
- Often applied where it is necessary to find a solution for a certain range of problems
- Not intended for general use. Strong emphasis on computer vision
- Edited in C++
- Has a Python interface