一、前言
本文章作为学习2023年《李宏毅机器学习课程》的笔记,感谢台湾大学李宏毅教授的课程,respect!!!
二、大纲
- 引例
- RNN历史
- 基本思想
- RNN变形
- RNN训练
三、引例
学习RNN之前先看一个例子:
假设要做一个火车订票系统(ticket booking system),给机器输入一句话“I would like to arrive Taipei on November 2nd. ”,期望机器能够自动识别“目的地”和“到达时间”,这该如何做到呢?
- 方法:训练一个神经网络(Feedforward network ),当输入看到Taipei时候就应该输出这是地名,看到November 2nd就应该输出时间,所以地名和时间就像是这句话的插槽(slot filling)一样。
但这个方法会有一个问题,比如我输入“leave Taipei on November 2nd. ”,同一个模型同样可以识别到地点和时间,但是这句话地点则是出发地,时间是出发时间。所以我们要把上下文语义信息关联上去,于是就有了RNN,也可以理解为有记忆的神经网络模型。
四、RNN历史
RNN称为递归神经网络,发展历史如下:
- 1980-1990 年代:RNN 的基础理论建立,但训练困难。
- 1997 年:LSTM 诞