# Learning Materials

## The first book to start your journey

Books are the most direct resources to pick up the rationale of a subject. We recommend the following books for you which are categorized into machine learning theory, deep learning theory and programming languages.

### Books for Machine Learning Theory

Machine learning theory is a prerequisite to deep learning. Deep learning, one of the branches of machine learning, has a theoretical basis strongly relevant to machine learning. There have been various textbooks nowadays, from which we select an easier one for you. Please pay more attention to the chapters involving Neural Networks in the textbook.

book：《Machine Learning》（Zhihua Zhou，Tsinghua University Express, 2016）

### Books for Deep Learning Theory

Having consolidated your basis of machine learning, it is time to dive into deep learning. It's commonplace that deep learning theory leaves an obscure and abstract impression on learners, and tightly connects with mathematics. To help you smoothly get started with deep learning, we recommend the following easy-to-go textbook, which features a good explanation of both deep learning theory and its related mathematic basis.

book：《Deep Learning》（Goodfellow, Bengio, Courville)

### Books for Programming Languages

Python：

Python is our recommended programming language. On the one hand, Python is the main supportive language of mainstream deep learning frameworks; On the other hand, Python is easier than other languages for beginners. Python textbooks abounds in the market, and what lies here is a textbook that ingeniously balanced theoretical knowledge with practical operations. Through resolving the 52 questions in the book, running your answer code, and addressing the problems occurred in this process, you can gradually get the hang of Python.

Book：《Learn Python the Hard Way》（Zed Shaw）

C++：

C++ is adopted widely in low level part of frameworks. After you have gradually mastered basic operations of an open-source framework, programming in C++ is an important skill in the more advanced operations of a framework. C++ also requires frequent practical exercises like Python mentioned above. The book lying here is a quick-to-start textbook with introduction to functions and structures, and examples of resolutions.

Book：《Essential C++》（Lippman,S.B.）

## Open Lectures

Besides textbooks, face-to-face instructions from teachers would contribute a robust and quick boost to your learning of new technology. Compared with on-campus lectures, open video lectures can not only make your learning simpler, but also save your time and energy.

Currently, the courses about deep learning are mostly free and public. These courses will facilitate you to comprehend abstract theory embedded in deep learning in a more effortless way, and direct you straightly towards practical applications. Regards to the vitality, operability, continuity, and compactness, we recommend the following courses and their corresponding links are attached afterwards to exempt your time from searching.

### Lectures Aimed at Theory Analysis

Machine Learning : Delivered by Andrew Ng, Stanford University. This series of lectures encompasses detailed analysis on relevant algorithms.

Deep Learning : An online English course delivered by Prof. Hung-yi Lee. It is combined with the abroad research contributions, and at the same time it is suitable for novices to get started and understand deep learning.

The following are several lectures delivered in Chinese:

AI tech : The course named "Master Core AI Technology" organized by Baidu deciphers AI technology to Deep Learning in a comprehensive and fine-grained way. Each lesson lasts for 20 - 30 minutes.

Programming Languages Python tutorials，with 20 minutes each lesson, illustrates from the basis to advanced usage.

### PaddlePaddle Hands-on Training

Having equipped with a firm grasp of theory basis and programming ability, you can now commence a practical adventure to PaddlePaddle Fluid, and grow up from a beginner level to a medium or high level.

Our official open courses are presented on the official site. The courses embrace PaddlePaddle practical operations, scenarios applied with PaddlePaddle, and introduction to PaddlePaddle machine learning models. Developers can take full advantage of our official courses to start PaddlePaddle from scratch and gradually move to industrial application.

Click Here to embark on your sailing in our official deep learning video lectures.