# The depth of the neural network

2022-08-06 09:33:05

## 4. 深度神经网络

### 4.1 深度学习简介 #### 4.1.1 The main difference between deep learning and machine learning

• • 卷积神经网络 CNN

• 循环神经网络 RNN

• 生成对抗网络 GAN

• 深度强化学习等

### 4.3 神经网络

#### 4.3.1 人工神经网络 ANN

• 简称神经网络NN
• A computational model that mimics the structure and function of biological neural networks

• There are no loops in the network、环

• 输入层
• 输出层
• 隐藏层

#### 4.3.3 特点

• 同一层的神经元之间没有连接

• 第N层的每个神经元和第N-1层的所有神经元相连 → full connected

• 第N-1层神经元的输出就是第N层神经元的输入
• 每个连接都有一个权值

#### 4.3.4 工作原理

• ### 4.4 激活函数

The essence is to introduce nonlinear factors into the neural network,通过激活函数,Neural networks can fit various curves.

#### 4.4.1 常用的激活函数

• Sigmoid/logistics函数

• • sigmoid函数一般只用于二分类的输出层

• tanh 双曲正切曲线

• • 隐藏层使用

• RELU

• • 目前最常用

• LeakReLu

• 对RELU的改进
• • softmax

• • “Map to probability values”

• 用于多分类,The purpose is to present the results of the classification in the form of probabilities

• 其他激活函数

• • #### 4.4.2 如何选择激活函数

• 隐藏层

• 优先选择RELU激活函数

• Watch out for neuron death issues
• 如果RELU效果不好,尝试其他

• 不使用sigmoid

• 输出层

• 二分类 → sigmoid
• 多分类 → softmax
• 回归问题 → identity

### 4.5 参数初始化

#### 4.5.1 权重W

• 随机初始化

• 随机初始化从均值为0,标准差是1的高斯分布中取样,使用一些很小的值对参数W进行初始化.
• 标准初始化

• Takes values ​​uniformly and randomly from an interval
• Xavier初始化

• 基本思想：The variance of the activations and gradients of each layer remains the same during the propagation process

• tf.keras实现方法

• 正态化Xavier初始化
• 标准化Xavier初始化
• He初始化

• Kaiming初始化

• 基本思想：正向传播时,激活值的方差保持不变; 反向传播时,关于状态值的梯度的方差保持不变

• tf.keras实现方法

• 正态化He初始化
• 标准化He初始化

• 直接初始化为0

### 4.6 神经网络的搭建

#### 4.6.1 tf.keras

• 利用Sequential构建

• The layers are stacked in a certain order
• • 利用function API构建

• • Model类构建

• Complex network models can be constructed
• 通过model的子类进行构建
• ### 4.7 神经网络的优缺点

#### 4.7.1 优点

• 精度高、性能优于其他的机器学习方法,Even more than humans in some areas
• 可以近似任意的非线性函数
• 有大量的框架和库可供调用

#### 4.7.2 缺点

• 黑箱,很难解释模型是怎么工作的
• 训练时间长,需要大量的计算力
• 网络结构复杂,需要调整超参数
• 小数据集上表现不佳,容易发生过拟合