【深度学习基础】《深度学习》李宏毅

目录

Lecture I: Introduction of Deep Learning

1. 深度学习的步骤

2. 全连接前馈神经网络(Fully Connect Feedforward Network)

2.1 神经元

2.2. 激励函数

2.3 Softmax layer

2.4 网络结构

2.5 应用举例(数字识别)

3. 对函数进行优化(goodness of function)

3.1 学习目标(Learning Target)

3.2 损失(Loss)

4. 选择最好的函数(How to pick the best function)

4.1 梯度下降(Gradient Descent)

5. Keras

Example: Handwriting Digit Recognition

Lecture II: Tips for Training Deep Neural Network

1. 选择合适的loss function

2. Mini-batch

3. 新的激活函数(activation function)

3.1 ReLU

3.2 Maxout

3.3 合适的学习率(Adagrad)

3.4 冲量(Momentum)

4. Early Stopping

5. Weight Decay

6. Dropout

Lecture III: Variants of Neural Network

Connected Neural Network(CNN)

1. 一个神经元只需要检测一个pattern

2. Subsampling

3. Max Pooling

4. Flatten

5. CNN整体过程

Recurrent Neural Network(RNN)

1. 基本概念

2. 双向RNN(Bidirectional RNN)

3. 长短期记忆网络(Long Short-term Memory, LSTM)

Lecture IV: Next Wave

1. Supervised Learning

2. Reinforcement Learning

3. Unsupervised Learning


Lecture I: Introduction of Deep Learning

1. 深度学习的步骤

机器学习的步骤:

Step 1: 定义一个函数集合(define a set of function)

Step 2: 对函数进行优化(goodness of function)

Step 3: 选择最好的函数(pick the best function)

将图像识别抽象为一个函数,以下举例说明:

深度学习的步骤:

Step 1: 定义神经网络(Neural Network)

Step 2: 对函数进行优化(goodness of function)

Step 3: 选择最好的函数(pick the best function)

2. 全连接前馈神经网络(Fully Connect Feedforward Network)

2.1 神经元

2.2. 激励函数

对于激励函数的理解:https://blog.csdn.net/hyman_yx/article/details/51789186

2.3 Softmax layer

传统输出层:

softmax layer作为输出层(重点)

2.4 网络结构

备注:激励函数设定见3图。

2.5 应用举例(数字识别)

将图片划分为16*16,每一个像素作为一个输入的x,X的维度为256*1。

建立模型后,

 

3. 对函数进行优化(goodness of function)

3.1 学习目标(Learning Target)

3.2 损失(Loss)

4. 选择最好的函数(How to pick the best function)

4.1 梯度下降(Gradient Descent)

5. Keras

Example: Handwriting Digit Recognition

Lecture II: Tips for Training Deep Neural Network

1. 选择合适的loss function

例如:

平方误差(loss='mse'),交叉熵(loss='categorical_crossentropy')

      

当使用softmax作为输出层时,选择交叉熵作为loss。见下图。

2. Mini-batch

下图中为mini-batch的代码解释。

3. 新的激活函数(activation function)

由于存在梯度消失问题,所以需要选择新的activation function.

3.1 ReLU

ReLU会将复杂的网络部分置0,简化网络。

model.add(Activation('sigmoid'))
// 改变为
model.add(Activation('relu'))

3.2 Maxout

ReLU是一种特殊的Maxout函数。

3.3 合适的学习率(Adagrad)

开始的学习率设置的较大,每一个epoch都将学习率降低。

其他:

  • Adagrad
  • RMSprop
  • Adadelta
  • "No more pesky learning rates"
  • AdaSecant
  • Adam
  • Nadam

3.4 冲量(Momentum)

4. Early Stopping

Early Stopping可以防止过拟合。详细见下图。

5. Weight Decay

6. Dropout

Dropout可以是一种模型融合。

Lecture III: Variants of Neural Network

Connected Neural Network(CNN)

1. 一个神经元只需要检测一个pattern

2. Subsampling

3. Max Pooling

4. Flatten

5. CNN整体过程

Recurrent Neural Network(RNN)

1. 基本概念

在RNN中,隐层神经元的输出值都被保存到记忆单元中,下一次再计算输出时,隐层神经元会将记忆单元中的值认为是输入的一部分来考虑。

举例:

2. 双向RNN(Bidirectional RNN)

3. 长短期记忆网络(Long Short-term Memory, LSTM)

 

Lecture IV: Next Wave

1. Supervised Learning

  • Ultra Deep Network

  • Attention Model

2. Reinforcement Learning

3. Unsupervised Learning

  • Image: Realizing what the World Looks Like
  • Text: Understanding the Meaning of Words
  • Audio: Learning human language without supervision

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值