研究生课程:高级人工智能-第5讲 序列数据的深度学习模型

《高级人工智能》课程笔记:第5讲 序列数据的深度学习模型

第5讲 序列数据的深度学习模型

循环神经网络

序列数据建模:

  • 学习序列数据,常需要转换输入序列到不同领域的输出序列
  • 如果没有分离的目标序列,可以通过预测输入序列中的下一项来得到“教师信号”
  • 预测序列的下一项,模糊了监督学习与非监督学习的差别

为什么不使用标准的神经网络?

  • 输入和输出数据在不同例子中可以有不同的长度
  • 不共享从文本的不同位置上学到的特征

RNN的特点:

  • 隐藏状态可以高效存储过去的很多信息
  • 非线性的状态转移可以允许通过很复杂的方式更新他们的隐藏状态

一般来说,RNN每一时间的输入和输出是不一样的

序列学习:对于序列数据是将序列项依次传入,每个序列项再对应不同的输出

时序展开:在RNN中每一个时间步骤用到的参数都是一样的

RNN可看作权值共享的多层、前向网络,训练权值约束的前向网络

Back Propagation Through Time:前向传播和反向传播

示例:

语言模型

新序列采样

字符级别的语言模型

序列生成

长序列的循环神经网络

训练长序列 (100 time steps) RNN中,梯度很容易膨胀或消散

即使好的初始化,也难以检测当前目标输出对很多步之前的输入的依赖关系

GRU

LSTM:

解决了RNN长期(like hundreds of time steps)记忆的问题

LSTM是一个存储单元,使用logistic和linear单元执行乘法运算

记忆单元:存储RNN的长期信息

LSTM vs GRU

GRU是更加简单的模型,更容易创建一个更大的网络,而且它只有两个门,在计算性上也运行得更快,可以扩大模型的规模。

LSTM更加强大和灵活,有三个门而不是两个。

双向循环神经网络(Bidirectional RNN)

深层循环神经网络(Deep RNNs)

序列模型

机器翻译

图片说明

使用集束搜索(Beam search algorithm)而不使用贪心搜索

改进集束搜索(Refinements to Beam Search),序列长度归一化

注意力模型


研究生课程:高级人工智能-第5讲 序列数据的深度学习模型
https://zhangzhao219.github.io/2022/09/28/UCAS/advanced-ai/advanced-ai-5/
作者
Zhang Zhao
发布于
2022年9月28日
许可协议