Don't mention that the annual salary of programmers is 200,000, and the annual salary of artificial intelligence is 600,000!

https://blog.csdn.net/UFv59to8/article/details/79991124


2017 was an extraordinary year for AI:


  • AlphaGo beats humans again

  • Tencent announces entry into AI

  • Baidu driverless car on the Fifth Ring Road

  • AI education should start from the doll

  • Cambrian becomes the world's first unicorn of AI chips

  • Alibaba establishes Dharma Institute

  • Humanoid robot Sophia gets first citizenship

  • The state officially announced the four major artificial intelligence platforms

  • ..........


In recent years, the application of artificial intelligence technology in all walks of life has become more and more popular, and the supply of relevant professional and technical talents is also in short supply. Major companies or startups have spared no expense to recruit AI talents.


A recent statistics shows that the average annual salary of artificial intelligence-related positions reaches 300,000 to 600,000 yuan, and those who have worked for a long time can even earn an annual salary of one million. The following are statistics from some recruitment websites. Among the 56 positions with the highest salary (600,000-1,000,000, 1,000,000 + two grades), 30 require a master's degree or above, a ratio of 53%, which is higher than the average requirement for a master's degree in AI engineers. The ratio is 28.6%, which is twice as high.


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


It can be said that it is the best era for machine learning algorithm engineers, and the demand for such talents in all walks of life is very strong. Typical industries include the following sub-sectors:


Recommendation system: It solves the problem of efficient matching and distribution of information in massive data scenarios. Whether it is candidate set recall, result sorting, and user portraits, machine learning plays an important role.


Advertising system: There are many similarities with the recommendation system, but there are also significant differences. It is necessary to consider the interests of advertisers in addition to the platform and users. The two parties have become three parties, which makes some problems a lot more complicated.


Search system: Machine learning technology is widely used in many infrastructure and upper-level sorting aspects of the search system, and in many websites and apps, search is a very important traffic entry. The optimization of the search system by machine learning will directly affect the entire search system. website efficiency.


Risk control system: In particular, Internet financial risk control is another important battlefield for machine learning that has emerged in recent years. It is no exaggeration to say that the ability to use machine learning can largely determine the risk control ability of an Internet financial enterprise, and the risk control ability itself is the core competitiveness of these enterprises' business guarantees.


As the so-called "higher salary comes with greater responsibility", companies' requirements for algorithm engineers are gradually increasing. Therefore, this article will talk about the learning and growth route of machine learning algorithm engineers, and give some learning suggestions and materials.


Essential competencies for machine learning algorithm engineers


Becoming a qualified development engineer is not an easy task, it requires mastering a series of abilities from development to debugging to optimization, and each of these abilities requires sufficient effort and experience to master. It is even more difficult to become a qualified machine learning algorithm engineer (hereinafter referred to as algorithm engineer), because in addition to mastering the general skills of engineers, it is also necessary to master a not small machine learning algorithm knowledge network.

640?wx_fmt=png

Let's break down the skills required to become a qualified algorithm engineer, and let's take a look at what skills you need to master to be a qualified algorithm engineer.


01: Basic development capabilities


The so-called algorithm engineer first needs to be an engineer, then he must master some abilities that all development engineers need to master. In most positions in most companies, algorithm engineers are responsible for the entire process from algorithm design to algorithm implementation to algorithm launch.


02: Basics of Probability and Statistics


Probability and statistics can be said to be one of the cornerstones of the field of machine learning. From a certain point of view, machine learning can be regarded as a systematic way of thinking and cognition of the uncertain world based on probabilistic thinking. Learning to look at problems from the perspective of probability and describing problems in probabilistic language is one of the most important foundations for in-depth understanding and skilled use of machine learning technology.


In terms of statistics, some commonly used parameter estimation methods also need to be mastered, such as maximum likelihood estimation, maximum a posteriori estimation, and EM algorithm. These theories, like optimization theories, are theories that can be applied to all models and are the foundation of the foundation. These distributions run through various models of machine learning, and also exist in various data on the Internet and in the real world. Only by understanding the distribution of data can you know what to do with them.


03: Development languages ​​and development tools


In recent years, Python can be said to be the most popular language in the field of data science and algorithms. The main reason is that it has a low threshold for use, is easy to use, has a complete tool ecosystem, and is well supported by various platforms. But in terms of model training, there are some more focused tools that can give better training accuracy and performance, such as LibSVM, Liblinear, XGBoost, etc. In terms of big data tools, the current mainstream tools for offline computing are still Hadoop and Spark. For real-time computing, Spark Streaming and Storm are also more mainstream choices.


04: Machine Learning Theory (Most Important)


Although there are more and more open source toolkits out of the box, it does not mean that algorithm engineers can ignore the learning and mastery of the basic theory of machine learning. There are two main reasons for this:


Only by mastering the theory can you flexibly apply various tools and techniques, not just copy and apply them. Only on this basis can we truly have the ability to build a machine learning system and continuously optimize it. Otherwise, it can only be regarded as a machine learning brick mover, not a qualified engineer. If there is a problem, it will not be solved, let alone optimize the system.


The purpose of learning the basic theories of machine learning is not only to learn how to build a machine learning system, but more importantly, these basic theories embody a set of ideas and thinking modes, and their connotations include probabilistic thinking, matrix thinking, optimization Thinking and many other sub-fields, this set of thinking mode is very helpful for data processing, analysis and modeling in today's big data era. If you do not have this set of thinking in your mind, and you are still thinking about problems with the old non-probabilistic and scalar thinking in the face of the big data environment, then the efficiency and depth of thinking will be very limited.


Recommended learning resources for machine learning algorithm engineers


Statistical learning, basic theory , such as VC dimension, regularization, bias-variance tradeoff, optimization methods, information theory, etc. I recommend Professor Li Hang's "Statistical Learning Methods", which is a must-read for beginners.


Supervised learning , such as linear regression, logistic, decision tree, knn, SVM, neural network, Naive Bayes, etc. Recommend Zhou Zhihua's watermelon books "Machine Learning" and "Machine Learning in Practice", the classics of the classics.


Unsupervised learning , such as EM algorithm, clustering, competitive learning, etc., can refer to some chapters of "Machine Learning"


Deep learning , such as CNN, RNN, LSTM, etc., recommend Goodfellow's "Deep Learning", DL's bible.


Reinforcement learning , popular in recent years, the core algorithm of AlphaGo, recommend Richard Sutton's "Reinforcement Learning"


From my personal learning experience, reading is best combined with video tutorials. Among them, I recommend 4 to you:


  • Stanford Machine Learning by Andrew Ng

    Classics in Classics (http://cs229.stanford.edu/)


  • NG's deep learning course in NetEase Cloud Classroom : https://mooc.study.163.com/smartSpec/detail/1001319001.htm


  • Neural Network for Machine Learning by Geoffrey Hinton: The only course taught by Mr. Hinton, this course is definitely memorable: http://www.cs.toronto.edu/~tijmen/csc321/


  • Various courses on Coursera , including calculus, linear algebra, programming languages, etc., interested students can learn by themselves.


If you feel tired of studying by yourself and want to find some guides, you can listen to some free artificial intelligence introductory live courses, such as the next two free open courses in NetEase Cloud Classroom.


On April 12, NetEase Cloud Classroom prepared a live open class (free) on the introduction of artificial intelligence, which will take you closer to artificial intelligence from a practical perspective and teach you to make your own cute girl robot by hand~


Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325417511&siteId=291194637