In recent years, with the rise of big data, cloud computing, mobile Internet, artificial intelligence technology, "machine learning" has become a hot term in the industry. From the field of communication Internet experts, to a variety of enterprises, and even ordinary people, the "machine learning" technology knows. So what exactly is machine learning, and what does it have to do with our common concepts of "AI", "neural Network", and "Data mining"? What are the basic branches and basic methods of machine learning? In this article, we will explain these issues in the simplest and most understandable language.
question one: what is the relationship between "machine learning" and "AI" ?
With the "machine learning" fire, there is also a word, namely "artificial intelligence". Everyone must remember not long ago Alaphgo, with the machine beat go top master Li Shishi, people also have to sigh: "Artificial intelligence" era really came.
So what is the relationship between "machine learning" and "AI"? In fact, "artificial intelligence" is a very large subject area, which contains many sub-domains, such as "machine learning", "Data mining", "Pattern recognition", "Natural language processing" and so on. These sub-areas may have intersections, but the focus is often different. For example, "machine learning" is more focused on algorithmic aspects. In general, "artificial intelligence" is a subject area, is the ultimate goal of our research, and "machine learning" is the core of this field, more important, focusing on the algorithm of a discipline, it can be said that "artificial intelligence" and "machine learning" is the inclusion and inclusion of the relationship.
question two: what is the relationship between "machine learning" and "neural network" and "deep learning" ?
Recently, the word "neural network", "deep learning" and other words fire, many small partners may be more confused about the two and "machine learning" is what the relationship. In fact. Machine learning is mainly the research of various algorithms, classical machine learning algorithms have several major categories: Regression algorithm, decision tree, Bayesian algorithm, support vector machine, neural network, clustering and so on. See here everyone should understand, "neural network" is just "machine learning" one of the many algorithms. In the various algorithms of machine learning, it is possible that with the change of times and the application of technology, a particular algorithm will be more popular in a certain time period than other algorithms, which is why many people who do not understand "machine learning" have a little knowledge of "neural network" in recent years.
Deep learning actually has a smaller scope, which is one of the "neural network" algorithms. In recent years, with the increase of computing power and the increase of computational data, the "deep learning" algorithm which is difficult to realize has played its advantages well. In recent years, some machine learning tasks have achieved better results with the development of deep learning algorithms.
question three: what is the relationship between "machine learning" and "Data mining "?
With the development of big data, "data mining" technology has also entered people's eyes. Many enterprises are now recruiting, there will be "data mining/machine learning engineer" such a post. Look at the data mining of books, a large part of the content is about machine learning algorithms. So what's the difference between data mining and machine learning, Nick?
First, the focus of the two is different. Machine learning focuses on theory and algorithms, more focused on finding more efficient and concise algorithms, and data mining more attention to practical applications, such as more emphasis on data analysis of the process, data storage, algorithm selection, can be said, data mining is a practical application of machine learning.
In terms of content, it can generally be thought of as: data Mining = machine learning + data processing. In other words, data mining is a bit more extensive than machine learning. However, they have their own strengths.
Above we can explain the machine learning, data mining in the field of beginners are easy to confuse a few problems, which for machine learning to open a good head, the following we can specifically introduce the field of machine learning knowledge.
What is machine learning? Baidu Encyclopedia on Machine Learning has such a simple explanation: machine learning is a multidisciplinary interdisciplinary, involving probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines. Specialized in computer simulation or realization of human learning behavior, in order to acquire new knowledge or skills, reorganize the existing knowledge structure to continuously improve their performance. It is the core of artificial intelligence, is the fundamental way to make the computer intelligent, its application throughout the field of artificial intelligence, it mainly uses induction, synthesis rather than deduction.
We don't have to worry about whether the definition on Baidu Encyclopedia is particularly accurate, at least it says the basic content of machine learning. It mainly studies some algorithms, these algorithms can let the computer simulation of human learning. It involves the mathematics field of probability theory, statistic theory, convex analysis and so on, it is the core of artificial intelligence.
In this way, machine learning seems to be cool-it can make computers mimic human learning. Some small partners may feel inscrutable, in fact, all models are based on simple and somewhat foolish. So instead of thinking about how big a pattern it needs to be for "simulating human learning," The simplest machine learning algorithms are basically doing two things: Classification and regression. The so-called classification, which is given a number of parameters of a thing, to judge its category, give a simple example: there is a person, his black skin, curly hair, thick lips, let you judge him from Asia, Africa, or Europe. It is clear that the average person will judge him from Africa. Must he come from Africa? Not necessarily, but he is the most likely from Africa. Therefore, if you enter the attribute group {black skin, curly hair, thick lip} to the computer, it will automatically "learn" and give a judgment (he is an African). This is an example of a classification, the return of the example is also very simple, a class of students in accordance with the size of the height of the queue, after the row if the first 30 students to the height of the value, then speculated that the 31st classmate height should also be able to speculate a sorta. This is the classification and regression. In fact, although the human learning process seems complex, but often also by a number of categorical regression composition.
In general, we divide machine learning algorithms into 3 categories: supervised learning, unsupervised learning, and semi-supervised learning. Here's a quick introduction.
Supervised learning: Supervised learning is a way of learning that requires certain training data. The training data is the data that we have tested beforehand that contains the attribute set and contains the result. This kind of learning often trains a "model" through certain training data, after which only data with no result of the attribute set can be nested into the model and get its results. It's like we've trained in our brains that "a man with black skin, curly hair, thick lips" is an African model, and given us a person with such attributes, we will naturally get the same results as Africans.
Supervised learning is the largest branch of machine learning, there are many algorithms that have been very successful so far, such as the common decision tree algorithm family, neural network algorithm family, support vector machine algorithm family, Bayesian algorithm family and so on.
Unsupervised learning: Non-supervised learning and supervised learning correspond, there is no training sequence, this learning method needs to take all the data, and then rely on "Birds of a feather, people and groups." This is like having a group of people, according to "skin color, hair color" two attributes to classify, found a group of people skin color is white, hair color is gold, there are a group of people color is yellow, hair color is black, there is a group of people skin color is black, hair color is black, do not need training, we very naturally to have different attributes of people grouped together. The common unsupervised learning is mainly clustering algorithm family.
Semi-supervised learning: semi-supervised learning between supervised learning and unsupervised learning, it has a part of the training data, but the number is small. Semi-supervised learning through this part of the training data to train another part of the data, and then the new training data into the training data set to continue training, so constantly iterative, will slowly produce a large training data set. Semi-supervised learning has important applications in many fields, because sometimes it is not easy to get a lot of tagged data. The common semi-supervised learning has semi-supervised SVM, semi-supervised graph learning, semi-supervised clustering and so on.
Finally, introduce the basic flow of data analysis and see where machine learning is located.
Data analysis is mainly in the field of data mining, the basic processes include business analysis, data exploration, data preprocessing, modeling, model evaluation, visual presentation and other steps. Of these, the first 3 steps are mainly preparatory work for the processing of the resulting data into an easy-to-model form, our machine learning model is mainly embodied in the "Model building" and "model evaluation" two steps. In the "Build model", we will choose the appropriate machine learning algorithm to model according to the trained data, and in the evaluation, we will use the test data to evaluate the model we just built. The commonly used evaluation parameters are precision, recall rate, etc., the commonly used evaluation methods are self-help method, leave-out method, K-fold cross-validation method and so on.
A survey of machine learning algorithms