动手学深度学习54 循环神经网络
- 1. 循环神经网络RNN
- 2. QA
1. 循环神经网络RNN
h
t
h_t
ht 与
h
t
−
1
h_{t-1}
ht−1
x
t
−
1
x_{t-1}
xt−1有关
x
t
x_t
xt 与
h
t
h_t
ht
x
t
−
1
x_{t-1}
xt−1 有关
怎么把潜变量变成RNN–假设更简单
潜变量和隐变量的区别:隐变量通常是现实生活中存在的东西,只是我们没有观察到;潜变量可指代现实生活中不存在(人为创造)的东西。
隐变量:一个向量。
输出【o_t】发生在观察【x_t】之前。根据o_t和x_t的值计算损失。
φ:激活函数。输出不需要激活函数。
RNN: 在MLP中加了一项
W
h
h
h
t
−
1
W_{hh}h_{t-1}
Whhht−1, 和前一个时间状态的
h
t
−
1
h_{t-1}
ht−1发生关系。所有x的信息都存储到h里面。
W
h
h
W_{hh}
Whh存储时序信息。
n个输出的多分类交叉熵损失平均值,再取指数–困惑度。
做指数,损失数值会变大。
困惑度=1,下面候选词词概率最高。=2 候选两个词都很有可能。
clipping
g:表示所有层的梯度放在一起
theta:=5 或者=10
g值正常,不做处理,g过大,将值处理成theta,保证g不会过大–不会超过theta值,防止梯度爆炸。
可视化RNN:
https://www.bilibili.com/video/BV1z5411f7Bm/?vd_source=eb04c9a33e87ceba9c9a2e5f09752ef8
2. QA
循环神经网络可以认为是一个简单的递归网络。递归理解为何树一样的东西。
14: tracking? 目标追踪