A Brief Introduction to Artificial Intelligence
In 2015, AlphaGo, an artificial intelligence robot developed by Google, defeated Lee Shishi, the world champion of Go in Korea, and became the first artificial intelligence robot in the world to defeat human Go players. Since then, the term artificial intelligence has gradually entered the life of ordinary people. However, with the overwhelming coverage of the major media, it seems to add some mystery to the “artificial intelligence” technology. Next, from a personal point of view, I will briefly describe what artificial intelligence is, and two popular directions of artificial intelligence – machine learning and deep learning.
Wikipedia defines AI as follows:
Artificial Intelligence (AI) is also called Intelligence of Machine and Intelligence of Intelligence, which refers to the intelligence shown by machines made by human beings. Usually artificial intelligence refers to the technology of presenting human intelligence through ordinary computer programs.
The definition field of AI in general textbooks is “the research and design of intelligent agent”. Intelligent agent refers to a system that can observe and perceive the surrounding environment and take action to achieve the goal. The research of AI is highly technical and professional. The research fields are extremely deep and basically do not interfere with each other. Therefore, the research scope of AI can be said to be very wide.Generally speaking, the research scope of AI mainly includes the following seven aspects: knowledge, automatic planning, machine learning, language processing, computer vision, robotics and strong AI. For the research and implementation of artificial intelligence, machine learning is the most widely used method at present.
Simple understanding of machine learning is to analyze and design algorithms that allow computers to “learn automatically”.Human beings input the collected and sorted data sets into the computer. By designing some algorithms (such as artificial neural network), the computer can automatically analyze and find rules in these data, and use these rules to predict the unknown data. Among them, the application scope of machine learning is mainly data mining, prediction, recommendation system and so on.Now that we have talked about machine learning, we have to mention an important branch of it – deep learning.
Deep Learning is a branch of machine learning, which is developed on the basis of machine learning. In a sense, deep learning is also machine learning, which is based on the internal mechanism of deep learning. The structure of the early artificial neural network is relatively simple. Later, with the improvement of computer computing ability, people began to design more and more complex neural networks with the support of high-performance computers. Compared with the early stage, the complexity of the latter’s model structure has undergone tremendous changes. Therefore, people call it “deep learning”. It can be understood that in-depth learning is in the post-neural network era. The main applications of in-depth learning include computer vision, language processing and so on. Of course, it can also be used in recommendation system.
A graph can be used to briefly divide the category of AI.
Differences and Connections between Machine Learning and Deep Learning
Whether it is machine learning or deep learning, the essence of it is that the computer must find the inherent rules from the data input from the outside world, “automatically” generate a model, and then predict the unknown data. So how does the computer find the rule from the data input from outside? In fact, there are some similarities between computer and human learning methods, which are based on the characteristics of data. As mentioned earlier, machine learning is mainly used in data mining, prediction and recommendation systems. In fact, we can convert these types of data into mathematical expressions. For example, if we want to write a movie recommendation algorithm, we can convert these personal information into digital form according to the user’s gender, age, type of movie we like, which movies have been given high marks, such as the number 0 for male users, 1 for female users, and 0 for age, less than 10 years old. Users, 10-15 years old users, 16-24 years old users with 2, and so on, for the movie type, 0 for comedy, 1 for Science fiction, 2 for love drama, 3 for horror drama, etc., assuming that a user is Xiao Ming, gender male, 20 years old, like science fiction, so using data to express him is [0, 2, 1]. According to background records, he scored 9.5 points for a movie called Avenger Alliance 4 (assuming a full score of 10). We extracted all the users who scored more than 9 points for Avenger Alliance 4 movies from background data and analyzed their personal information. Then we found that the characteristics of these users were common (male, aged between 10 and 30 years old, like science fiction movies). Therefore, we can draw a conclusion that the user is male, aged between 10 and 30 years old, like the type of movies is science fiction, there is a high probability that you will like to watch the film “Avenger Alliance 4”. Based on the above analysis, the server backstage will recommend the movie to users who have not seen the movie Avenger Alliance 4. Of course, this is just a very simple case of machine learning. If you want a more accurate movie recommendation algorithm, you need to collect more user information than that. The higher the quality of the data, the higher the accuracy of the training algorithm model.
After machine learning, let’s take a look at in-depth learning. As mentioned earlier, the main application scenarios of in-depth learning are computer vision, language processing and so on. One of the most important directions of computer vision is image classification. As the name implies, it is to classify the images accurately so that the computer can recognize some objects, such as cats, dogs, cars, aircraft and so on. The first thing we need to do is feature extraction, but now the question is, what kind of features should we use to describe these object pictures? For example, we need to identify cars, trucks, motorcycles, trucks, etc. in the category of vehicles. If we label cars with the numbers 0, 1, 2 and 3 like machine learning, then let computers learn and classify them like machine learning. Although this is feasible, the accuracy of doing so will not be achieved. Very high, because the computer can not learn the characteristics of these car pictures very well when learning them, the computer does not know what features to judge this is a car, what kind of car is a truck. Machine learning seems to encounter bottlenecks in this scenario.
It may be suggested that the type of car be judged according to certain parts of the car. Yes, we can teach the computer to distinguish the type of car according to certain parts of the car. So, how can we tell the computer the characteristics of certain parts of various types of cars? In fact, we don’t need to tell the computer the characteristics of different types of car parts. We can use the convolution neural network algorithm, a well-known algorithm model in deep learning. Through the convolution neural network, the computer can learn the characteristics of various types of cars independently (without human intervention), and then classify them according to these characteristics. The specific point of training process is that after the sample image is input into the convolution neural network algorithm model, the model will extract the basic features (image pixels) from the sample. Later, with the gradual deepening of the model, higher features, such as lines, simple shapes (such as the edges of automobile wheels) are combined from these basic features. At this point, the features may still be abstract, and we can’t imagine what we can get by combining these features. Simple shapes can be further combined. The deeper the model is, the more complex features are gradually transformed (features begin to materialize, such as looking more like a motorcycle wheel than a body), which makes different types of cars more separable. This is, we can think that the convolutional neural network has completed the feature extraction, and then we will extract these features into the artificial neural network similar to machine learning algorithm, after repeated training, we can get a more satisfactory result.
Here’s a graph to show the difference between traditional machine learning and deep learning (the graph comes from TensorFlow’s Principles of Deep Learning Algorithms and Programming Practice)
We can see that the main difference between machine learning and in-depth learning is that machine learning needs to be extracted by artificial features before learning, while in-depth learning only needs to input data into the computer. The computer will use the volume neural network to extract features from data for many times, and then learn the extracted features. It can be said that deep learning is developed on the basis of machine learning, while deep learning is higher than machine learning.