1
Artificial intelligence is really here
Throughout the past and present, few computer technologies can have a long development life, most of the flash in the pan, such as: DOS, windows3.2, foxpro, Delphi, 80×86 assembly, there are many technologies are struggling, such as: VB, PB, Sqlserver, even Microsoft. NET has also been forced into a corner by powerful open source forces from around the world, so much so that it has to open source to the olive branch of Linux to continue to grow.
Late autumn 2013, a crisp fall day, big data at this time in China has began to stir, Hadoop as big data platform of the off-line calculation began quietly, machine learning began to sow the seed in China, but these are only limited within the big companies and universities, China’s land is not full of the breath of artificial intelligence, At the invitation of China Machine Press, I wrote a Practical Guide to Machine Learning (published in 2014 and now in its second edition). After writing this book, I had a strong hunch: Artificial intelligence and machine learning, future certainly will fire and it will certainly become a computer technology, the oldest in the history of technology, may be hundreds or even thousands of years, that humans emigrated to other planets, artificial intelligence is still prosperous ~, but, I never expected that book is less than 3 years, artificial intelligence have been in China blossom everywhere, fruits, Its development is faster than I imagined, and Ng’s public resignation letter has illustrated the current state of ai development in China.
“Just as electricity transformed many industries a century ago, ARTIFICIAL intelligence is transforming major industries such as healthcare, transportation, entertainment and manufacturing, enriching the lives of countless people. I’m more excited and excited than ever about where AI will take us. I am very honored to learn from the two ai powers, China and the United States. The US is good at creating new technologies and ideas, while China is good at applying AI technology to develop good products. I am very happy to have the opportunity to contribute to the rise of AI in Both China and the United States.”
— Andrew Ng, former chief scientist at Baidu
Note the above letter “China is a big country in AI”, as programmers, there is an opportunity to contribute to the development of AI technology in China, while opening up their own new career.
Machine learning technology has been widely applied and developed abroad. In November 2015, Google opened source its new TensorFlow machine learning system, which is faster, smarter, and more resilient. In January 2015, machine learning platform GraphLab changed its name to Dato, And raised $18.5 million in New funding from Vulcan Capital, Opus Capital, New Enterprise Associates, Madrona Venture Group, They previously raised $6.8 million in funding. In August 2015, Facebook launched “M”, believing that humans could not only answer questions that artificial intelligence could not answer, but also help improve artificial intelligence technology in the long run. “M” can not only answer questions, look up information and other basic functions, It can also help users complete operations such as purchasing goods, locating restaurants, and arranging travel plans. At the Neural Information Processing Systems 2015 (NIPS) conference in December 2015, Microsoft researchers and engineers unveiled more than 20 papers on new machine learning research. In addition, Microsoft has announced that machine learning is becoming part of Windows 10: Skype Translator will translate spoken languages into other languages in almost real time, much like the Universal Translator in Star Trek, allowing for face-to-face communication. The Cortana personal digital assistant learns and improves as it interacts with users, helping them manage their calendars, track deliveries, and even chat and tell jokes in a truly personalized interactive experience. Clutter, a member of Microsoft Office 2016, has learned that it can keep a user’s inbox tidy by identifying which emails are important to them and automatically redirecting them to a separate folder. In September 2015, Major General Steve Jones, commander of the US Army Medical Center, said at a conference of the US Army that in the future, intelligent robots could replace human beings to transport the wounded on the battlefield. The US military even announced in a high-profile way: In the future, robots may not save people on the battlefield, but robots, because armies of intelligent robots will take their place.
At the end of this section, I also look into the future of artificial intelligence:
In the near future, human beings may want to think: in the future world, what role will robots play, will replace human beings? How should humans and intelligent machines get along?
Humans began to study how best to implement the following three laws:
First, robots must not harm people;
Second, robots must obey orders from humans;
Third, robots can protect themselves without violating the above principles.
2
Artificial intelligence and big data
The era of big data has arrived, this is already a fact. However, with the high popularity of Hadoop, Spark and Storm, big data technology has become a common field of software development and programming. The technical threshold is getting lower and lower, and more and more people are flooding into this industry. History has proved that no technology field with long-term development is bound to be a flash in the pan. The answer is: no! With the participation of artificial intelligence, big data is based on the application of data analysis and mining technology. It is the combination of machine learning algorithm and data access technology. Statistical analysis, knowledge discovery and other means provided by machine learning are used to analyze massive data, while data access mechanism is used to realize efficient data read and write.
Hint: Here are two general concepts:
Data mining is a non-trivial process of identifying valid, novel, potentially useful, and ultimately understandable patterns in huge amounts of data.
Data analysis is to point to use appropriate statistical methods to collected a large number of first-hand information and secondary data analysis, in order to maximize the development of the function of data, play to the role of the data, it is in order to extract useful information and form a conclusion and the study on detailed data and summarized “the process of data analysis and data mining, Both help people collect and analyze data, turn it into information, and make judgments.
3
Artificial intelligence and pattern recognition
Programmers, ARTIFICIAL intelligence is not a programming technique. It is not data structures and algorithms. It is a combination of programming, data structures, algorithms and mathematics.
Let’s start by talking about pattern recognition, which has its origins in engineering, and machine learning, which has its origins in computer science, and the combination of these two different disciplines has brought about adjustments and developments in pattern recognition. Pattern recognition research mainly focuses on two aspects: one is to study how organisms (including people) perceive objects, which belongs to the category of cognitive science; Second, under the given task, how to use the computer to realize the theory and method of pattern recognition, which is the strength of machine learning, but also one of the contents of machine learning research.
Pattern recognition is widely used in computer vision, medical image analysis, optical word recognition, natural language processing, speech recognition, handwriting recognition, biometric recognition, document classification, search engines, etc., and these fields are also the stage of machine learning.
4
Here comes math! The crisis came
We’ve been talking about opportunities, but now it’s time to talk about crises, as you can see from section 3. Pattern recognition is coming
AI and machine learning are beautiful, programs, go into AI! Are you ready? ! Are you really ready? So let’s move on.
The entry threshold of artificial intelligence and machine learning is higher, especially the mathematical understanding ability of researchers has higher requirements, you must have to say, I understand data structure, computer algorithms, I do software development for many years, I am a system architect, are project management division, all kinds of high-end ~
But I tell you, the machine learning is a new field, is also a whole new level of understanding of machine learning algorithms tend to understand it from a mathematical formula and mathematical knowledge, all AI practitioners must step by step, by climbing up the mountain of mathematics into the field of machine learning, play mathematical foundation is very necessary, Once you master the mathematical analysis, linear algebra, probability and statistics, discrete mathematics, abstract algebra, statistics, mathematical modeling and mathematical theory, the understanding of machine learning algorithm is much easier, and wouldn’t be afraid of those who let a person boring and tedious mathematical symbols and mathematical formula, would like on the mathematical formula, and tries to derive a personally.
Mastering machine learning algorithms requires at least a basic knowledge of the following mathematics.
1) Calculus
The birth of calculus is an important theory after the establishment of Euclidean geometry system. Its emergence and development is known as “one of the keys to the emergence of modern technological civilization, which introduced several extremely successful ideas that played a decisive role in the development of many later mathematics”. Calculus has a wide range of applications in science, economics and engineering, solving problems that cannot be effectively solved by algebra alone. Calculus is based on algebra, trigonometry and analytic geometry, including differential calculus and integral calculus, including continuity, limit, calculus of functions of several variables, Gauss theorem and so on.
Calculus has been widely used in astronomy, mechanics, chemistry, biology, engineering, economics, computer science and other fields. For example, in the medical field, calculus can calculate the optimal branch Angle of blood vessels to maximize blood flow. In economics, calculus can determine the maximum benefit by calculating marginal cost and marginal profit; Calculus can be used to find approximations of equations; Use calculus to solve differential equations and calculate applications such as spacecraft using Euler’s method to obtain approximate curves in zero gravity.
In the field of machine learning and data analysis, calculus is the theoretical basis of many algorithms, such as multilayer perceptron neural network algorithm. Multilayer perceptron is a feedforward artificial neural network model. The algorithm is divided into two stages: forward propagation signal and back propagation error.
The forward signal transmission stage is the learning stage of the sample. The input information is transmitted from the input layer, and then transmitted to the output layer through the calculation of each hidden layer. The actual value of each unit is calculated, and the errors generated are apportioned to each unit of each layer. In the reverse propagation error stage, the network is modified and reviewed through the errors between the network output and the target output, and the errors of the forward output are propagated back to each layer for weight adjustment until the errors are minimized or the specified calculation times are reached. Calculus theory is widely used in multilayer perceptron model.
2) Linear algebra
Linear algebra is a mature basic discipline in higher mathematics. It has a wide range of contents, including not only the elementary parts of determinant, matrix, linear equations, but also the more in-depth theories of linear space, Euclidean space, unitary space, linear transformation and linear function, λ- matrix, eigenvalue of matrix, etc. Linear algebra also has a wide range of applications in mathematics, physics, social sciences, engineering and other fields.
Linear algebra theory is the basis of computing technology and plays an important role in the field of machine learning, data analysis and mathematical modeling. These fields often require the application of linear equations, matrices, determinants and other theories, and complete the calculation by computer.
3) the theory of probability
Probability theory is the mathematics of stochastic or uncertain phenomena, used to simulate situations in which experiments will produce different results under the same circumstances. The following probability theories are the basis of probability theory.
(1) Classical probability
(2) Conditional probability
(3) Probability axioms
Axiom 1:0 ≤P(A)≤1(A∈S)
Axiom 2: P(S)=1
Axiom 3: P(A∪B)=P(A)+P(B) if A∩B=0
(4) Probability distribution
Including binomial distribution, geometric distribution, Bernoulli distribution, Poisson distribution, uniform distribution, normal distribution, exponential distribution and so on. The probability distribution of random variables in sample space can be analyzed by cumulative distribution function and probability density function.
Probability theory plays an important role in machine learning and data analysis, such as Markov chain theory. Markov chain has given explanations for many phenomena in the real world, poisson process is markov chain of continuous time discrete state, Brownian motion is Markov chain of continuous time continuous state, etc.
Markov chain in computational mathematics, finance, economy, machine learning and data analysis have important applications in such fields as markov chain is in mathematics with characteristics of discrete time markov random process, under the condition of the given current knowledge or information, using only the current state of the forecast in the future, every step of the markov chain, the system according to the probability distribution, To change from one state to another or maintain the current state.
4) statistics
Statistics is the science of collecting, analyzing, expressing and interpreting data. As an effective tool of data analysis, statistical methods have been widely used in various fields of social science and natural science. Statistics is closely related to probability theory; the former is based on the latter. Statistics is divided into descriptive statistics and inferential statistics. Descriptive statistics describes or summarizes the concentration and dispersion of observations. The basic mathematical description includes the mean and standard deviation. Inferential statistics models the data in the data, calculates its probability and makes inferences about the parent population, mainly including hypothesis testing, estimation of digital characteristics, prediction of future observations, correlation prediction, regression, anova, time series, data mining, etc.
Both descriptive statistics and inferential statistics are the basis of data analysis techniques. By using descriptive statistics, data analysts can visualize data, turn summaries into graphs, and analyze data distribution characteristics. In addition, data can also be analyzed to understand the concentration and dispersion of observations within each variable. Through the method of inferential statistics, the unknown features of the data are inferred in the form of probability, and the overall quantitative characteristics are inferred on the basis of random sampling.
5) Discrete mathematics
Discrete mathematics is the floorboard of the several branches of mathematics, the study was based on the mathematical model of the discrete space is not continuous, its research content is very widespread, mainly include mathematical logic, set theory, information theory, number theory, combinatorial mathematics, graph theory, abstract algebra, topology, theoretical computer science, operations research, game theory, decision theory, etc.
Discrete mathematics is widely used in machine learning, algorithm design, information security, data analysis and other fields, such as: mathematical logic and set theory is the basis of expert system, the expert system is a kind of computer intelligent application system with specialized knowledge and experience, generally USES the knowledge representation and knowledge reasoning in artificial intelligence technology, the simulation is usually by domain experts to solve complex problems; Information theory, number theory, abstract algebra used in the field of information security; Coding theory closely related to information theory can be used to design efficient and reliable data transmission and data storage methods. Number theory is widely used in cryptography and cryptanalysis. DES, RSA and other algorithms in modern cryptography (including factor decomposition, discrete logarithm, prime number test, etc.) rely on number theory and abstract algebra theory. Operational research, game theory, and decision theory provide practical solutions to many economic, financial, and other data analysis problems, including rational allocation of resources, risk prevention and control, decision evaluation, and commodity supply and demand analysis.
That’s the core math for machine learning, but it’s not all. With the further study of machine learning, more mathematical branches will enter the field of machine learning. Therefore, only master college mathematics knowledge is not enough, but also need to march to a higher level, for non-mathematics graduates of friends, but also should learn other mathematical branch theory, such as functional analysis, complex function, partial differential equation, abstract algebra, constraint optimization, fuzzy mathematics, numerical calculation, etc..
I suggest you buy the following math books for reference at any time.
Finney, Weir, Giordano. Thomas calculus. Translated by Ye Qixiao, Wang Yaodong, tang Jing. Beijing: Higher Education Press 2003-1
Steven J.Leon. Linear Algebra. Trans. zhang Wenbo, Zhang Lijing. 8th Ed. Beijing: China Machine Press
Mendenhall, William, et al. Statistics. Translated by Fengzhen Liang, jing Guan. 5th Ed. Beijing: China Machine Press
Bertsekas, Dimitri P. et al. Introduction to probability. Trans. Zheng Zhongguo, Tong Xingwei. 2nd Ed. Beijing: Posts and Telecommunications Press
Kenneth H. Roshen et al. Discrete mathematics and its applications. Translated by Yuan Chongyi, qu Wanling, Zhang Guiyun. 6th Ed. Beijing: China Machine Press
Zeidler, Eberhard et al. A Mathematical Guide: A handbook of Practical Mathematics. Translated by Li Wenlin. Beijing: Science Press
They are all classic math books on machine learning, and you can consider putting them on your desk alongside design Patterns, Introduction to Algorithms, And Deeper Understanding of Computer Systems.
All this is just the tip of the iceberg of the math ai needs to know. The crisis is coming, but programmers, for AI, or fight, learn math ~
An OUTSTANDING person from MIT once mentioned in his BLOG that mathematics was never enough. In order to solve and research some problems in engineering, he had to go back to the library and pick up mathematics textbooks after work. He deeply felt that from university to work, the classroom learning and self-learning of mathematics is not little, but in the field of machine learning always found the need to supplement new mathematical knowledge. It seems that to master machine learning knowledge, you have to learn, learn, learn in the field of mathematics, all of which is very hard. To learn machine learning well, one must be prepared for hard work and persist in the pursuit of mathematical knowledge.
5
Programmers have to show up
Since it’s programmers going into AI, there’s a programmer advantage. The following techniques are recommended for programmers to learn when entering AI. (They don’t need to be explained, so only the list is provided. That’s speechless…) :
(1) python
(2) R
(3) SQL
(4) Linux shell and basic operation and maintenance knowledge
(5) Java (get excited, it’s everywhere, it’s on the list thanks to HADOOP and SPARK and STORM)
(6) the scala
Next comes architecture:
1.hadoop
2.spark
3.storm
4. Tensorflow, PaddlePaddle, Caffe
6
The core of the AI
Having said so much before, I guess you are under pressure. The pressure will be even greater
AI, full name for artificial intelligence, requires the use of programming, algorithms, data structures, mathematics, and more importantly, a machine learning way of thinking.
At the heart of AI are three things:
Feature extraction, for example, sorting a bunch of apples, weight, shape, growing season, and so on.
Model and algorithm selection, such as SVM, neural network, decision tree, semantic tree, knowledge base, various visual algorithms and so on.
Machine learning network construction, for example: although deep learning can automatically extract features, it still needs to define and train its parameters and specific network structure.
7
conclusion
Let’s to relax, AI as a development space is very big, development cycle is very long technologies, really is the best to enter the site to programmers, but the difficulty is big, yes, there is no denying the fact that a framework, a ready-made library, as an adjustable party is quite good, if so, it certainly can’t go on for a long time in the field of AI. You must understand the principle of these algorithms, should be free to implement these algorithms, deepen understanding, otherwise you can not complete the parameters of good AI library call, simple library is not ~
Opportunities and crises always coexist. I wish you all an early entry into the door of machine learning and artificial intelligence.
Only with this article and you study together, common progress, improper place please understand.
8
The last dessert
Is not the end of it ~ hee hee, no, no, there is a dessert, an AI practitioner’s development route, so that friends can easily enter the artificial intelligence industry.
The 0 step, why is the 0 step, because this step only needs to be familiar with and have use experience, do not need to master ~ then what is this step? Big data code farming (in the era of AI, the field technology is updated quickly, and it is also the field that ordinary programmers are most likely to switch to AI, but it is also the field that is most likely to be eliminated by the rapid development of technology ~) :
Learn hadoop construction and basics, ZooKeeper, MapReduce, hbase, Hive, Flume, Kafka, Spark Dataframe, Spark SQL, Spark Streaming, and Scala basics.
Why is it so easy to be obsolete if you just stay at Step 0, because Hadoop had its day, but in less than 2 years Spark has had its day, and now TensorFlow and PaddlePaddle are starting to take off.
Then, while you’re trying to learn spark, hadoop3.0 is out in beta and promises to be faster than spark.
Technology has been updated at an annual rate
The first step is to learn the data structure and algorithm and call the AI library with the program.
The second step is to use the big data access platform to access data and call the AI library.
Step 3: learn to adjust parameters and call the AI library.
Step 4, learn math hard, or call the AI library.
Step 5, learn the machine learning algorithm, or call the AI library.
The sixth step is to call the AI library, haha, the difference is, know the principle and core points of the algorithm, understand what kind of data and scenes to use what kind of algorithm, understand how to adjust parameters, so that the AI library can get the best effect.
The seventh step is to analyze the AI library to make better use of the AI library by programming the machine learning algorithm, understanding the internal implementation of the AI library, and, if necessary, directly writing the AI algorithm to work with the existing AI library.
Step 8: Learn mathematics in depth to meet the continuous development and challenges of AI technology.
Step 9… When the robot comes out, study the three laws.
Let me share with you some tips on improving the accuracy of machine learning algorithms:
First, conversion method
Second, optimize feature extraction
Third, adjust parameters
Fourth, the optimization of sample data and output results
Via: Artificial intelligence enthusiasts club