为了账号安全,请及时绑定邮箱和手机立即绑定

100 NLP 问题及回答 | RNN| LSTM| GRU 部分系列

今天,我们将要讲解关于循环神经网络(RNN)和长短期记忆网络(LSTM)的问题的讲解。

25. 一个简单的单层RNN里有训练参数多少?

注:考虑到句子的自然流畅性,此处调整为“有训练参数多少”,更符合中文的问句表达方式。同时保留"RNN"作为技术术语,以确保对目标受众的适用性。

我们用一个单层的RNN网络作为例子。每一层中的每个门都有权重矩阵W_f、W_i、W_o、W_c:f代表遗忘门,i代表输入门,o代表输出门,c代表细胞门。

这些矩阵都是随时间变化的,每个矩阵会在每个时间步上被用到。

所以说,权重的数量就是:

    权值 = 4 乘以 输出维度 乘以 输入维度 + 4 乘以 输出维度 乘以 每个 输出维度 + 4 乘以 输出维度

一个很好的例子:一篇很好的文章

26. 循环神经网络是如何训练的?

每次RNN的时间步上,我们更新隐藏状态。如果有真实的输出 ( y_t ) (比如在文本生成中),我们计算这个时间步的损失。最后,在最终的损失计算后,我们通过时间展开反向传播。

在每个时间点t。

  1. 输入 ( x_t ) 给到了 RNN。
  2. 新的隐藏状态 ( ht ) 依据 ( h{t-1} ) 和当前的输入 ( x_t ) 计算出来。
  3. 计算出新的输出 ( y_t )。
27. RNN存在什么问题?

随时间的梯度消失指的是使用RNN时遇到的主要问题之一——解决长期依赖问题。然而,在进行时间反向传播时,梯度无法传到长序列中的初始时间步。

更长的训练周期——这种方法不太容易实现并行化。

递归模型通常将计算沿输入和输出序列中的符号位置展开。它们会生成一个隐藏状态序列ht,作为前一个隐藏状态h(t-1)的函数。这种固有的序列特性阻碍了在训练示例中进行并行化处理,在更长的序列长度下这一点变得至关重要,因为内存限制了在不同示例间进行批处理的能力。

28. 你知道哪些类型的循环神经网络吗?解释一下GRU和LSTM之间的区别?

LSTM 和 GRU 是 RNN 的主要变体。因为它们有更多的门,所以它们更加复杂。

  • vanilla RNN — 不使用任何门进行更新
  • LSTM
    它有三个主要的门:遗忘门、输入门和输出门。
    1. 遗忘门 — 将来自前一个隐藏状态和当前输入的信息通过Sigmoid函数传递,输出值在0到1之间。接近0的值意味着遗忘,接近1的值意味着保留。
    2. 输入门 — 决定在通过遗忘门丢弃不必要的信息后,哪些信息应该添加到细胞状态中。它根据前一个隐藏状态和当前输入来更新细胞状态。
    3. 输出门 — 根据当前状态决定下一个隐藏状态。

记住,隐藏状态不仅包含之前输入的信息,还用于预测。

  • GRU — LSTM的一种变体,其中我们将遗忘门和输入门合并成一个更新门。
  • 在每个时间步骤,GRU 计算一个“候选激活向量”,该向量结合了输入和上一个隐藏状态的信息。然后用此候选向量来更新下一个时间步骤的隐藏状态。
    1. 更新门 — 它告诉我们要丢弃哪些旧信息并添加哪些新信息
    1. 重置门 — 它根据当前输入决定忘记多少上一个隐藏状态的信息。

对比表链接:. 可视化指南

29. 我们可以在这样的网络中调整哪些参数?比如堆叠层数和层数。
  1. 层数(层)
  2. 是否双向的
  3. 隐藏单元的数量
30. 大家好,今天我们要讨论的是RNN中的梯度消失现象是什么?我们该如何解决这个问题?

梯度消失问题意味着梯度变得很小,使得参数难以得到有效更新来学习任何内容。相反,梯度爆炸问题指的是梯度变得过大,导致优化过程“过冲”损失函数的最小值。

要解决这个问题的话,我们可以用更高级的网络,比如LSTM和GRU,以及其他适用于各种网络的方法:

梯度截断(Gradient Clipping)

激活函数:用泄露ReLU(LeakyReLU)或其他类似函数替换ReLU。

ReLU 存在一个称为 消失的 ReLU 的问题,即在训练过程中,一些神经元不再激活并一直输出 0。来源:https://www.analyticsvidhya.com/blog/2021/06/the-challenge-of-vanishing-exploding-gradients-in-deep-neural-networks/

  • 批量标准化
31. 为什么在NLP中要使用卷积神经网络,以及如何使用?在注意力机制中又如何比较CNN呢?

CNNs可以通过滑动窗口来处理文本,这使它们能够捕捉到局部模式。这使得CNNs在提取如n-grams这样的局部特征方面非常有用。

这是最好的解释了
相关链接

觉得这些问题有意思吗?想在未来合作吗?订阅吧,让我们在LinkedIn上联系。

我也特别感激您对我的支持哦!

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消