Chapter 1: Introduction to Deep Learning
1.1 Artificial Intelligence
The strength of artificial intelligence divides it into 3 categories
(1) Artificial Narrow Intelligence (ANI)
(2) Artificial General Intelligence (AGI)
(3) Artificial Superintelligence (ASI)
1.2 Data mining, machine learning and deep learning
1.2.1 Data Mining
Data mining is the process of discovering and analyzing useful information in large databases. It is also known as KDD (knowledge discovery in database).
1.2.2 Machine Learning
Machine learning can be regarded as a way to realize artificial intelligence. It is similar to data mining and is also a multi-field interdisciplinary, involving probability theory, statistics, approximation theory, convex analysis, computational complexity theory and other disciplines.
1.2.3 Deep learning
With the development of neural networks, the current popular network structures are: Deep Neural Network (DNN), Convolutional Neural Network (CNN), Recurrent Recurrent Neural Network (RNN), Generative Adversarial Network (GAN), etc. The book will introduce in detail one by one, so I won’t repeat it here.
Chapter 2 Deep Learning Framework
TensorFlow
At present, Tensorflow is the most used framework in the world and the largest community. Because Google is produced, it is maintained and updated frequently, and it has a Python C++ interface and a very complete tutorial.
Because the language is too low-level , there are currently many tensorflow-based abstract libraries that encapsulate the functions of Tensorf1 ow to make it simple
Caffe
It can be seen from its name that it supports convolutional networks very well, and it is also written in C++, but it does not provide a Python interface, only provides ten+ interfaces
Theano
So in a way Tensorflow is like Theano’s child
Torch
The protagonist of this book, PyTorch, is predecessor to Torch. Its bottom layer is the same as the Torch framework, but a lot of content has been rewritten in Python, which is not only more flexible, supports dynamic graphs, but also provides a Python interface.
MXNe
The shortcomings of MXNet are also obvious. The tutorials are not perfect, and the community is not big because of not many people. At the same time, there are few competitions and papers based on MXNet every year, which makes the promotion and popularity of MXNet not high.
2.2 Introduction to PyTorch
2.2.1 What is PyTorch
Not only can it achieve powerful GPU acceleration, it also supports functional neural networks, which is not supported by many mainstream frameworks such as Tensorflow.
2.2.2 Why use PyTorch
- Mastering a framework cannot be done forever
- PyTorch, through a reverse automatic derivative technology, allows you to arbitrarily change the behavior of the neural network with zero delay, although this technology is not unique to PyTorch
- The design idea of PyTorch is linear, intuitive and easy to use. When you execute a line of code, it executes faithfully without an asynchronous world view.
- PyTorch's code is more concise than Tensorflow. At the same time, it is difficult to understand the underlying code of Tensorflow which is highly industrialized.
Advantages of pytorch:
2.3.1 Installation of Python development environment
https://pytorch.org/get-started/locally/
Chapter 3 Multilayer Fully Connected Neural Network
3.1 Warm up: PyTorch basics
3.1.1 Tensor (Tensor)
The most basic operation object processed in PyTorch is Tensor. Tensor is the English of tensor, which represents a multi-dimensional matrix
。。。
Due to the teacher’s request, TF should be passed during the summer, so this note should be an eunuch