PPT《一天搞懂深度学习》的内容概要

发布于 2020-04-22 13:40:33

一天搞懂深度学习

这个 PPT 来源于d0evi1的博客,关于机器学习的学习资料推荐

概论

步骤

  1. 定义函数集
  2. 判断函数好坏
    1. 损失函数
    2. 交叉熵
  3. 选择最优函数
    1. 梯度下降法
      1. 存在局部最优解的问题
      2. 计算梯度的算法是反向传播算法,简称BP
    2. 越多的参数带来越好的预测能力
    3. 为什么在网络形状上,Deep比Fat更好
      1. 层数和单层参数量的均衡分配能带来最优的预测效果。在单层参数够多的情况下,增加层数带来的效果更好。
      2. 可以把神经网络和数字电路做类比,简单多层的结构使模型更简单
      3. Deep -> Modularization -> Less training data

神经网络

  1. 神经元由以下元素组成
    1. weights
    2. bias
    3. activation function
  2. 不同的连接导致不同的网络结构
  3. 全连接前馈神经网络
    1. Deep 的含义是包含很多隐藏的中间层
    2. 可选的输出层
      1. 使用 sigmoid 函数
      2. 使用 softmax 层

训练方法

发掘深度神经网络潜能的一些问题:

  1. 没办法得到很好的训练结果:重新选择训练方式
  2. 没有办法得到很好地测试结果:往往由于过度拟合导致,需要重新定义方法
    1. 层数过多可能出现反效果,使精确度下降
    2. 梯度消失问题

优化训练方法的手段

  1. 选择合适的损失函数:使用交叉熵的效果要好于均方差
  2. 每次训练使用少量数据能缩短训练周期,提高训练效率和精确度
  3. 激活函数
    1. 使用ReLU(Rectified Linear Unit)替代sigmoid - RBM(受限玻尔兹曼机)可以解决梯度消失的问题,可以训练更深的神经网络。激活函数类似于模拟电路的数字化,模拟信号最后输出0或1。
      1. Leaky ReLU
      2. Parametric ReLU
    2. Learnable activation function
  4. Adaptive learning rate
    1. 每几代都根据比率减小学习速率
  5. Momentum:一定程度上避免陷入局部最低点的问题
    1. 平原区学习速率非常缓慢
    2. 卡在小峰之前
    3. 卡在局部最小点

避免过度拟合(overfitting)的方法:

  1. 即时提早停止:使用交叉验证方式,及时发现预测精度下降
  2. Weight Decay:删除不必要的神经元连接
  3. Dropout
    1. dropout是删除神经元,dropconnect 是删除神经元连接
    2. dropout 优于 maxout
    3. dropout 可以抵抗输入噪声
  4. Network structure:其他形态的网络,例如CNN

神经网络变体

卷积神经网络(CNN)

通常情况下,一个CCN包含多次的卷积(convolution)、池化(max pooling),然后flatten,最终通过一个深度神经网络进行学习预测。

应用于图像、语音识别。核心思想在于一些物体的特征往往可以提取出来,并且可能出现在图片任何位置,而且通过卷积、池化可以大大减少输入数据,加快训练效率。

循环神经网络(RNN)

RNN的思想是将隐藏层的数据存储下来,然后作为输入给下一个网络学习。这种网络的想法可以解决自然语言中前后词语是存在关联性的,所以RNN可以把这些关联性放到网络中进行学习。

还存在双向的RNN结构、LSTM(long short-term memory。LSTM中三个控制信号分别控制输入、遗忘和输出)。

LSTM = Zo * (Zf * F(Cf)) * (Zi * z)

基于RNN的神经网络的损失函数输出存在巨大的跳跃性。

还有一些特殊的结构,比如 Clockwise RNN、Structurally Constrained Recurrent Network (SCRN)。

库的使用

  • keras 是 tensorflow 和 theano 的接口封装
  • keras 支持 LSTM、GRU(Gated Recurrent Unit,模型比LSTM简单)、SimpleRNN

其他前沿技术

分类

  • 监督学习
    • Ultra Deep Network
    • Attention Model
      • 文本语义分析
      • 视觉问答
      • 托福听力理解问答
  • 强化学习
  • 无监督学习
    • 认识图片
    • 理解文本含义
    • 无监督地学习人类语言(语音)

Ultra Deep Network

2015年出现了152层的Residual Net实现了图片3.57%错误率。

  • AlexNet 2012
  • VGG 2014
  • GoogleNet 2014
  • Residual Net 2015

Reinforcement Learning

通过奖励机制强化学习,并且做出相应的动作。

强化学习的困难:

  1. 牺牲短期奖励来获得长期奖励
  2. 每个动作动影响了后续收到的数据

Unsupervised Learning

  • Deep Style
  • 生成图片
    • VAE (Variation Auto-encoder)
    • GAN (Generative Adversarial Network)
  • 无需人工介入理解文字的含义
    • 词向量
    • 机器阅读
  • 语音理解
    • 语音碎片
    • 语音向量
    • 语音理解 Sequence-to-sequence auto-encoder
    • 语音生成 WavaNet (DeepMind)

为什么需要AI训练师

  • 训练师要根据不同模型属性挑选适合的模型来学习
  • 需要足够的经验才能操控模型效果