Machine learning is an interdisciplinary subject, involving probability theory, statistics, algorithm complexity and other disciplines. It can discover and mine the potential value contained in the data. Machine learning has become a branch of artificial intelligence. Through self-learning algorithm, it can discover and mine the potential rules of data, so as to predict the unknown data. Machine learning has been widely used in computer science research, natural language processing, machine vision, voice, games and so on. Machine learning methods are mainly divided into three types, supervised learning, unsupervised learning and reinforcement learning. The following will introduce the essential differences of these three methods and their application fields.
1、 Supervised learning
The above figure shows the process of supervised learning training model. The training data in supervised learning are labeled with class labels. Supervised learning constructs the model by using the training data with class labels. We can predict the unknown data through the training model. For example, the machine learning algorithm used in handwritten numeral recognition belongs to supervised learning. Before training the model, we need to define which image represents the number, so that the computer can extract features from the data and get closer to the image class. Supervised learning can be divided into classification and regression. For example, the recognition of handwritten digits belongs to classification in supervised learning, and room prediction belongs to regression.
Classification is based on the learning of known data (with class labels) to achieve the prediction of new sample class labels. Class labels are discrete, unordered values. For example, the classification of spam belongs to two categories, in which the five pointed star represents non spam and the original represents spam. The model we need to train is the straight line in the graph, which can distinguish the spam from the spam. We can understand the horizontal axis and the vertical axis as two characteristics of distinguishing e-mail, and we can find that these data are discrete. The recognition of handwritten digits mentioned above belongs to multi classification.
Regression is to predict continuous output variables. We find the relationship between independent variable (input) and corresponding continuous dependent variable (output) from a large number of data, and predict the unknown data by learning this relationship. As shown in the figure below, a straight line is fitted by independent variables and dependent variables, so that the distance between the training data and the fitting line is the shortest. The most commonly used distance is the average square distance. Through the analysis of the training data, we can get the slope and intercept of this line, so we can predict the unknown data.
2、 Strengthen learning
Reinforcement learning is to build an agent to improve the performance of the system in the process of interacting with the environment. The current state information of the environment will include a feedback signal, through which we can evaluate the current system and improve the system. Through the interaction with the environment, the agent can obtain a series of behaviors through reinforcement learning, and the positive feedback can be maximized by the design of incentive system. Reinforcement learning is often used in the field of game, such as go game. The system will determine the position of the next step according to the current situation on the board, and take the victory or defeat at the end of the game as an incentive signal.
3、 Unsupervised learning
Unsupervised learning deals with no class label or the general trend of data is not clear. Through unsupervised learning, we can find the potential rules in the data without knowing the class label and output scalar and without feedback signal. Unsupervised learning can be divided into clustering and dimension reduction.
Clustering is an exploratory data analysis technology. Without any known information (class label, output variable, feedback signal), we can divide the data into clusters. When analyzing the data, the data in each cluster has a certain similarity, but there is a big difference between different clusters.
2. Dimension reduction
In fact, the data processed is high-dimensional (hundreds of thousands), which will lead to the huge amount of data we process each time, and the storage space is usually limited. Unsupervised dimensionality reduction technology is often used in the preprocessing of data features. Through dimensionality reduction technology, we can remove the noise in the data and the similar features in different dimensions, and compress the data into a low dimensional space to the greatest extent while retaining the important information of the data, but it will also reduce the accuracy of the algorithm.