Machine Learning, ML
Machine learning (ML) is an extensive subsection of artificial intelligence that studies methods for constructing algorithms capable of learning.
There are other definitions.
Machine learning is the “AI section, exploring methods that allow computers to improve their characteristics based on their experience.”
Brief history and high hopes
The first program based on self-learning algorithms was developed by Arthur Samuel in 1952. It was intended for the game of checkers. Samuel gave the first definition of the term "machine learning": this is "the area of research for the development of machines that are not pre-programmed." TM Mitchell gave a more precise definition of the term “learning”: it is said that a computer program is trained on the basis of experience E in relation to a certain class of problems T and a measure of quality P, if the quality of solving problems from T, measured on the basis of P, improves with gaining experience E.
In 1957, the first model of the neural network was proposed, which implemented machine learning algorithms similar to the modern ones. Currently, a variety of machine learning systems are being developed for use in such technologies of the future as the Internet of Things, Industrial Internet of Things, in the concept of a "Smart city", in the creation of unmanned vehicles, and in many others.
The fact that machine learning has high hopes now is indicated by the following facts.
- Google believes that soon its products "will no longer be the result of traditional programming - they will be based on machine learning";
- Google, Facebook, Apple, Amazon, Microsoft and the Chinese company Baidu have entered the fight for talented specialists in the field of artificial intelligence;
- Mark Zuckerberg, CEO of Facebook, personally - by phone and video chat - is involved in his company's attempts to entice the best graduates;
- Attendance at the most important academic conferences in this area has nearly quadrupled;
- New products such as Siri from Apple, M from Facebook, Echo from Amazon were created using machine learning.
Machine learning methods
In the most general case, two types of machine learning are distinguished: precedent training, or inductive learning, and deductive learning. Since the latter is usually referred to the field of expert systems, the terms “machine learning” and “learning by precedents” can be considered synonymous. This training method is now in trend, but expert systems are in crisis. The knowledge bases on which they are based are difficult to reconcile with the relational data model, therefore industrial DBMS cannot be effectively used to fill expert knowledge bases.
Learning from precedents, in turn, is divided into three main types: supervised learning, unsupervised learning, or unsupervised learning, and reinforcement learning.
In addition to the above, other teaching methods are being developed: active, multitasking, multivariate, transfer, etc. In recent years, “deep learning” has been especially successful, with the use of which the learning algorithms can be successfully combined with and without a teacher.
This training method is used in cases where there are large amounts of data, for example, thousands of photographs of pets with markers (tags, labels): this is a cat, and this is a dog. It is necessary to create an algorithm which allowed machine, according to a photo that it didn’t see before, determine whether it depicts a cat or a dog. The person who has put down the markers in advance is in the role of "teacher" in this case. The machine itself chooses the signs by which it distinguishes cats from dogs. Therefore, in the future, the algorithm can be quickly reconfigured to solve another problem, for example, to recognize chickens and ducks. The machine, again, will itself perform a difficult and painstaking job of identifying the signs by which these birds will be distinguished. A neural network, which is trained to recognize cats, you can quickly learn to process the results of computed tomography.
Although there are already quite a lot of marked data, there are still much more data without tags. These are images without captions, audio recordings without comments, texts without annotations. The task of the machine with unsupervised learning is to find the links between individual data, identify patterns, choose patterns, organize data or describe their structure, perform data classification. Uncontrolled training is used, for example, in recommender systems, when, based on the analysis of previous purchases, products are offered to the buyer in the online store that may be of more interest to others. Or when, after viewing a video clip on the YouTube portal, visitors are offered dozens of links to videos that are somewhat similar to those viewed. Or when Google responds to the same query by ranking the links in the search results for one user differently than for the other, because it takes into account the search history.
Such training is a special case of supervised learning, but in this case the teacher is the "environment". A machine (it is often called an “agent” in this situation) does not have preliminary information about the environment, but has the ability to perform some actions in it. The environment responds to these actions and thereby provides the agent with data that allows it to respond to and learn from them. In fact, the agent and the environment form a feedback system.
Reinforcement learning is used to solve more complex problems than learning with and without a teacher. It is used, for example, in navigation systems for robots that learn to avoid collisions with obstacles empirically, receiving feedback at each collision. Reinforcement training is also used in logistics, in tasks scheduling, in training machines for logic games (poker, backgammon, go, etc.).
Neural networks and deep learning
Machine learning uses different technologies and algorithms. In particular, discriminant analysis, Bayes classifiers, and many other mathematical methods can be used. But at the end of the 20th century, more and more attention was paid to artificial neural networks (ANN). New explosion of interest began in 1986, after the substantial development of the so-called “Error back propagation method”, which was successfully applied to the neural network training.
ANN is a system of artificial neurons connected and interacting with each other, made on the basis of relatively simple processors. Each ANN processor periodically receives signals from some processors (or from sensors, or from other signal sources) and periodically sends signals to other processors. Together, these simple processors connected to a network are capable of solving rather complex tasks.
Most often, neurons are placed in the network by levels (they are also called layers). Neurons of the first level are, usually, input. They receive data from the outside (for example, from facial recognition sensors) and, after processing, transmit impulses to the neurons through synapses to the next level. Neurons of the second level (it is called hidden, because it is not directly connected with either the input or the output of the ANN) process the received pulses and transmit them to the neurons at the output level. Since we are talking about imitation of neurons, each input level processor is associated with several hidden level processors, each in turn, is associated with several output level processors. This is the simplest ANN's architecture, which is capable of learning and can find simple relationships in the data.
Deep learning can only be applied to more complex ANNs that contain several hidden levels. At the same time, the levels of neurons can be interleaved by layers that perform complex logical transformations. Each subsequent network level is looking for relationships in the previous one. Such an ANN is able to find not only simple relationships, but also relationships between relationships. Thanks to the transition to a neural network with in-depth training, Google managed to dramatically improve the quality of its popular product Translator. In particular, the quality of translation between English and French increased immediately by 7 points, i.e. more than 20%. The previous system, which performed phrasal statistical machine translation, has achieved a similar improvement over its entire existence (since 2006).
Machine learning for business
The machine learning market is growing fast. In 2016, its volume surpassed the $1 billion, and by 2025, according to forecasts, it may increase up to $39.98 billion.
At the end of 2016, MIT Technology Review and Google Cloud conducted a joint study on "Machine learning: a new way to gain competitive advantage." 375 qualified respondents from different countries of the world, working in small and large companies from various industries (production, services, finance) were surveyed. As a result, it turned out that 60% of companies already use machine learning (ML), and in a third of them, this technology has moved from the innovation stage to the maturity stage. Moreover, 26% of companies already receive a competitive advantage at the expense of ML. A quarter of companies invest in ML more than 15% of the funds allocated for the development of IT, and largely return their investments.
Machine learning and, in particular, neural networks should be used to solve business problems in cases where:
- large amount of various data has been accumulated, but there are no programs for their processing and systematization;
- existing data are distorted, incomplete or not systematized;
- the data is so different that it is difficult to identify the links and patterns that exist between them.
Business problems that can be solved by means of machine learning and neural networks:
- Forecasting: demand, sales, filling the warehouse, loading equipment and other resources, further development of the enterprise, etc.
- Identify: trends, hidden relationships, anomalies, repeatable elements, etc.
- Recognition: photo, video, audio content, attempts at fraud, lies, internal threats, external attacks on the security system, etc.
- Automation: operators work in online chat rooms, telephone operators, etc.
- Classification: analysis of the composition of customers, clients, customers and their segmentation according to various parameters.
- Clustering: classification by parameters that were not originally known.
- Development: chat bots.
Examples of the implementation of machine learning
Alibaba, the world's largest marketplace, makes extensive use of machine learning and other AI tools. As a result, its virtual windows adapt to each customer, and the search system gives him the best options. Chat bot Ali Xiaomi can independently handle most customer support calls. Moreover, the neural network developed by Alibaba for the first time surpassed human results in passing tests from Stanford University. These tests include exercises to read or listen to certain information, and then answers to test questions.
The American trading network Target found that using machine learning can predict not only the behavior of customers, but also changes in their lives, such as pregnancy. The Target algorithms work so accurately that, using the data on purchases, they can determine the trimester of pregnancy of the woman.
Popular photo hosting Pinterest uses machine learning to show its users the most interesting photos.
Lukas Biewald, CEO of Figure Eight (formerly CrowdFlower), which offers many machine learning projects, believes that it is already making noticeable changes in the work of many firms. And not only companies that can spend huge amounts of money on research and development, such as Google or Microsoft, are working on this. Lukas is sure that every Fortune 500 company is already working much more efficiently and making more money thanks to machine learning.
Among companies with Ukrainian roots, we should mention the startup Neuromation, which in February 2017 during the ICO attracted $ 71.6 million of investments.
The Neuromation platform allows you to create an artificial learning environment for deep learning of neural networks using a large number of examples. Data for learning ANNs are generated using the computing power of the blockchain community. The company made such an original decision because earlier, in the process of working on systems using computer vision, it faced the problem of a lack of computing resources. Renting resources from Amazon or Google cloud services for a startup turned out to be overwhelming. And because of the mining boom, it was almost impossible to buy a video card. So the idea was to take the computing power for rent from the miners, which eventually grew into the creation of a neural platform.