How does machine learning get started? There is no clear answer. This site for the majority of beginners, recommended machine learning (including deep learning) simple entry route and learning materials, after the entry, you will know what part of the knowledge they need to enhance, but also know what materials to learn.

Machine learning formal learning route \

How to learn machine learning well? The normal route looks something like this:

1. Learn the basics of math

Mathematical analysis (calculus), linear algebra, probability theory and statistics, applied statistics, numerical analysis, ordinary differential equations, partial differential equations, numerical partial differential equation, operational research, discrete mathematics, stochastic process, stochastic partial differential equations, abstract algebra, and real variable function, functional analysis, complex function, mathematical modeling, topology, differential geometry, the asymptotic analysis…

2. Study classic machine learning books and tutorials

Classic books: Duda’s Pattern Classification, Mitchell’s Machine Learning, Li Hang’s Statistical Learning Methods, Zhou Zhihua’s Machine Learning……

Ng: Machine Learning, Deep Learning.

Lin Xuantian, fundamentals of machine learning, machine learning techniques.

.

3. Learn programming languages well

Proficient in Python, Java, R, MATLAB, C++ and other programming languages.

4. Read the paper

Learn English well, read classic papers, and read the latest machine learning papers, such as top conference papers, and grasp the latest technical direction.

5. Participate in actual projects \

Such as dachang internship, participation in Kaggle, Tianchi data competition……

After learning according to the above route, although it may not be able to become a giant in the industry, there is no problem for the doctor to graduate.

Problems with the above methods: \

  • Most learners do not want to learn for scientific research, but want to use machine learning as a tool.
  • Most learners don’t have enough time to learn so many materials and don’t know how to make a choice.
  • Some materials are too difficult. The author assumes that learners have a certain foundation and omits some steps. Many beginners feel like this when they read them:

\

Figure: Many documents omit key steps

In fact, the purpose of most people to learn machine learning is to use machine learning algorithms and tools, solve some problems, understand the basic principles of the algorithm, and do not need to learn so deeply. The learning route above, the first to dissuade a lot of people. Few people can learn the basics of mathematics as well as doctorates, and few can finish classics and popular tutorials in the hope of getting a quick start on machine learning.

In this case, this site recommends a quick introduction to machine learning.

A quick introduction to machine learning

1. Basic knowledge

I am familiar with basic mathematics knowledge, mainly advanced mathematics, linear algebra, probability theory and mathematical statistics. These three courses should be required for undergraduate study. If you really forget them, please read this article: “Mathematical Basis of Machine Learning”, you can download this article to see the mathematical materials, do not need to understand all, but the basic formula should be roughly understood, can find the formula from the data, there are two formula summary materials:

1) Mathematical basis of machine learning. Docx

(Chinese version, the formulas of advanced mathematics, Linear Algebra, probability theory and mathematical Statistics are summarized)

2) Mathematical Foundations of Machine Learning at Stanford University. PDF

(Original English materials, very comprehensive, we recommend students who are good at English to learn this material directly).

I strongly suggest laying a good mathematical foundation, which determines the height of machine learning practitioners.

However, if you have too little time and want to get into machine learning, study one of the two formula summaries above.

2. Machine learning tutorials

1) The best introduction to machine learning

It should be Mr. Ng’s open course machine Learning. This course is for beginners and focuses on practical application rather than mathematical derivation. This course started early, but is still the most popular open machine learning course, with very high grades and coursework (octave version).

Notes for this course:

  • Chapter 5, The Octave Tutorial, and Chapter 18, Application Examples, are a bit out of date.
  • Instead of doing homework on the original Octave, you can do homework on the modified Python version.
  • If you watch the open class of Deep Learning with Ng, you can learn the relevant content of Deep Learning directly in the fourth, fifth and sixth weeks.
  • It’s recommended that you finish this tutorial within three months, but if you don’t understand something, don’t worry, come back later when you need it.
  • This course is recommended in conjunction with the course notes. Notes are available for download on this site

Videos, notes, and Python code assignments can be downloaded from this article.

2) Machine learning cheat sheet

A machine learning cheat sheet (understanding machine Learning like reciting TOEFL Vocabulary) \

Make machine learning concepts as handy as a cheat sheet for memorizing TOEFL words! Machine learning all kinds of memorized concepts in minutes! Take a week to read this advice, and skim it. It doesn’t matter if you don’t understand something. Make a note and check it when you use it later.

3) Statistical Learning Methods by Li Hang

Support vector machine, Boosting, maximum entropy, conditional random field and other statistical learning methods are introduced in detail. There are certain requirements for mathematics foundation, which is the classic of the classic, many domestic online courses, Internet enterprises interview, written questions, more or less, refer to the content of this book, for beginners, a little difficult, but if you want to pass the interview written test, this book should understand, try to deduce the algorithm.

4) The best introduction to deep learning

“Deep Learning” by Ng \

This video course illustrates the main algorithms and frameworks of deep learning in the simplest way possible, with code assignments and quizzes. After learning deep learning, you can get started. Study Suggestions for each chapter:

  • Chapter 1: Neural networks and deep learning

Some of the content is an updated version of the fourth and fifth weeks of the Open machine Learning course

  • Chapter two: Improving deep neural networks

There is almost no overlap with the Machine Learning open course.

  • Chapter 3: Structured Machine learning Projects

Part of the content is an updated version of Week 6 of machine learning.

  • Chapter 4: Convolutional neural networks

This part is mainly used for image, target detection, equivalent to Stanford CS231n deep learning and computer vision – the simplification of the course taught by Li Feifei.

  • Chapter 5: Sequence model

This part is mainly used for natural language processing. Note that the symbols in the RNN/LSTM structure are a little different from the original paper. The symbols in our usual blog and paper are slightly different from those in Mr. Ng’s course.

For course videos, notes, and Python code assignments, please visitThis articleDownload.

5) Handout on Deep Learning in a Day by Li Hongyi

The handout on deep learning by Professor Li Hongyi of National Taiwan University is the easiest introduction to deep learning I have ever seen. The 300-page handout can explain the basic principles of deep learning systematically and easily, just as vivid as a machine learning cheat sheet. \

It is recommended that you spend a few days looking through this handout to get a basic understanding of what deep learning is and what it does.

3. Learn programming languages well

Since this is just a beginning, only Python is recommended.

The main code tool for machine learning is Python. How much do you need to learn Python? Personal feeling: entry is the most important, at least to learn to encounter problems can check the degree of 100 degrees.

1) Python installation:

Anaconda is a Python distribution for scientific computing. It supports Linux, Mac, and Windows operating systems, and provides package management and environment management capabilities. It is easy to solve the problems of having multiple versions of Python, switching, and installing various third-party packages. Push the download address: www.anaconda.com/download/… (Python version 3.6)

IDE: PyCharm is recommended. Download it for free from www.jetbrains.com/

2) Recommended materials for getting started with Python

A. Data Analysis with Python

This book is a hands-on guide to how to efficiently solve a wide variety of data analysis problems using Python libraries including NumPy, Pandas, Matplotlib, and IPython.

This was the first python primer I read, and if you run the code all at once, you can basically solve most of the data analysis problems.

Download address: suggested to buy the book, the source code can be searched on Baidu.

Note: the second version of the Chinese translation has been written, suggested search download.

B. How to get started with thon

This is a jupyter Notebook file that illustrates the main syntax of Python.

Download: pan.baidu.com/s/1snmeqlR…

C. Nanjing University Python video tutorial

This tutorial is highly recommended, covering the main Python syntax and common libraries.

Video download address: yun.baidu.com/s/1cCbERs secret…

After reading these three materials, you have a basic introduction to Python and can use machine learning libraries such as SciKit-learn to solve machine learning problems.

4) Learning of the main framework of deep learning

The main frameworks for deep learning, the most basic, should be Tensorflow and Keras. There are many tutorials, you can choose to learn, this site recommends a simple way to get started:

Introduction to a.T ensorflow

The second course 3.11 of Ng’s Deep Learning open course introduces the basic usage of Tensorflow (corresponding to note P251). After learning these usages, you can basically understand most of the codes. In combination with the code assignments of this course, you can search baidu for the places you don’t understand.

Introduction to b.K eras

The python Deep Learning book and accompanying code, written by Francois Chollet, the father of Keras and now a researcher of Artificial intelligence at Google, is a detailed introduction to the exploration and practice of deep learning using Python and Keras. Including computer vision, natural language processing, production modeling and other applications. The book contains more than 30 code examples and detailed step-by-step explanations.

The author posted the code on Github, which covers almost everything in this book. After learning this book, readers will have the ability to build their own deep learning environment, build image recognition models, and generate images and words. But there is one small regret: the code is explained and commented entirely in English, which can be a struggle even for those with good English skills.

This site has made Chinese explanation and annotation for all the code, and downloaded some data sets required by the code (especially the data set of “Cat and dog war”), and localized some of the images, all the codes passed the test. (Please run in file order, there is some correlation before and after the code). \

We believe that this book and code are the best tools for beginners to get started with deep learning and Keras.

E-books and Chinese annotation code please clickdownload.

4. Read the paper \

1) Learn English well and read some excellent papers

Choose to read some classic papers, English is really not good, enter the paper title search baidu.com, many blogs will have a detailed explanation of the classic papers.

Look at the key of the paper: reproduce the author’s algorithm.

According to the paper, after replicating the successful algorithm, you usually have a deep understanding of the paper. Classic papers are reproducible, github has them, and the latest good papers are usually searchable as well.

2) Learn to organize papers

Zotero, a powerful paper management tool, can take notes on the paper, and support synchronization between different computers.

5. Get involved in real projects

If there are internship opportunities, try to go, can learn a lot of things.

If you don’t have an internship opportunity, you can try to participate in Kaggle competitions. You don’t need to win many rankings. You can search past competitions, download data, download other people’s public codes, and replay them.

There are similar competitions in China, such as Tianchi, DF and so on.

Generally, in 2-3 competitions can achieve top1%, code ability is basically no problem.

However, it is not recommended to spend too much time in the competition. Most of the time in the competition is devoted to feature engineering, which is not necessarily useful in practical work. As long as it can solve problems, it is ok.

6. Talk to learners

There are many ways to communicate, such as attending academic activities and laboratory discussions, but I think the most effective way to communicate is to join some academic discussion organizations, such as wechat group and QQ group. “Smell tao has successively specialized in the art industry”, do not understand very normal, do not understand will ask, “three people, there must be my teacher.”

Photo: QQ group is a good way to communicate

Third, summary

Learn machine learning, as far as possible to lay a good mathematical foundation, machine learning practitioners do not have a solid mathematical foundation, can only use some tools and framework, equivalent to some martial artists can only play tricks, laymen feel very powerful, but the actual combat must be black and blue. It can be said that the mathematical foundation is the ceiling of machine learning practitioners. Why machine learning practitioners with higher education tend to earn higher wages is usually positively related to the basic knowledge mastered.

The method of this article, only suitable for a quick entry, entry, you will know which aspects of the lack of their own will find information to learn.

The method in this paper is for reference only.

Please follow and share ↓↓↓\

Machine learning beginners \

QQ group: 654173748

Past wonderful review \

  • Machine learning for Beginners

  • Printable version of Machine learning and Deep learning course notes \

  • Ng personal notes on machine learning course online edition \

  • DeepLearning. Ai DeepLearning course notes online edition

  • Introduction to Deep Learning – Python Deep Learning, annotated version of the original code in Chinese and ebook

  • Zotero paper Management tool

  • The mathematical foundations of machine learning