长短期记忆单元用于解决发生在循环单元中信息快速丢失的问题。LSTM 单元是逻辑回路,复制了为电脑设计内存单元的方式。相较于存储两个状态的 RNN 单元,LSTM 单元可存储四个:输出的当前值和最终值,以及「内存单元」状态的当前值和最终值。LSTM 单元包含三个「门」:输入门、输出门、遗忘门,并且也仅包含常规输入。这些门中每一个各有其权重,这意味着连接到这种类型的 cell 需要设置四个权重(而不是仅仅一个)。门函数很像流门(flow gate),而不像栅门(fence gates):它们可以让任何东西通过,只是一点点,没有,或者之间的任何。这通过与值在 0 到 1(储存在这一门值中)之间的输入信息相乘而发挥作用。输入门接着决定有多少输入可被加入到单元值中。输出门决定有多少输出值可通过剩余的网络被看到。遗忘门并不与输出单元的先前值相连接,但却与先前的内存单元值相连接。它决定了保留多少最终的内存单元状态。由于它不连接到输出,所以信息丢失更少,因为循环中没有放置激活函数。
Gated 循环单元是 LSTM 的一种变体。它们也是用门防止信息丢失,但也就两种门:更新门(update) 和重置门(reset)。这略微缺乏表现力,但更快。因为它们在处处都有更少的连接。其实,LSTM 和 GRU 之间有两个不同:GRU 没有输出门保护的隐单元态,而是把输入和遗忘门结合成了一个更新门。其中的思路是,如果你想要大量的新信息,可以遗忘一些旧信息(或者相反)。 层 将神经元连接成图的最基础方式是将一切相互连接,这可以在 Hopfield 网络和玻尔兹曼机中看到。当然,这意味着连接的数量会有指数级的增长,但表现力是不折不扣的。这被称为全连接。 而后,j2直播,有人发现将网络分成不同的层是有用的,其中一层的一系列或一组神经元之间不连接,但与其他组的神经元相连接。例如受限玻尔兹曼机中的网络层。如今,使用层的观念已经推广到了任何数量的层,在几乎所有的架构中都能看到。这也被称为全连接(可能有点混淆),因为实际上完全连接的网络很不常见。 卷积连接层要比全连接层更受限制:每个神经元只与其他组相近的神经元连接。图像和音频包含大量的信息,不能一对一地被用于直接馈送到网络(例如,一个神经元对应一个像素)。卷积连接的思路来自于对保留重要的空间信息的观察。结果证明,这是一个好的想法,被用于许多基于神经网络的图像和语音应用中。但这种设置没有全连接层更具表达力。其实它是一种「重要性」过滤的方式,决定这些紧凑的信息数据包中哪些是重要的。卷积连接对降维也很棒。依靠其实现,及时空间上非常远的神经元也能连接,但量程高于 4 或 5 的神经元就很少被用到了。注意,这里的「空间」通常指代二维空间,用这种二维空间表达神经元互相连接的三维面。连接范围在所有的维度都能被应用。 另一个选择当然就是随机连接神经元了(randomly connected neurons)。它也有两个主要变体:允许一部分所有可能的连接,或者连接层之间神经元的一部分。随机连接有利于线性地减少网络的表现,可被用于陷入表现问题的大型网络的全连接层。在某些情况下,有更多神经元的更稀疏的连接层表现更好,特别是当有大量的信息需要存储,但不需要交换时(有点类似于卷积连接层的效力,但却是随机的)。就像 ELM、ESN 和 LSM 中看到的,非常稀疏的连接系统(1% 或 2%)也会被用到。特别是在脉冲网络(spiking network)中,因为一个神经元有越多的连接,每个权重携带的能量越少,意味着越少的传播和模式重复。 延时连接是指神经元间并非从前面的层获得信息,而是从过去获得信息(大部分是之前的迭代)。这使得时间信息(时间、时序)可被存储。这类连接有时要手动重置,从而清除网络的「state」。与常规连接的主要不同是这些连接持续在变化,甚至在网络没被训练时。 下图展示了以上描述内容的一些小样本网络及其连接。在不知道什么连接什么时,我就会使用它(特别是在做 LSTM 或 GRU cell 时):
原文链接: 本文为机器之心编译,转载请联系本公众号获得授权。 ✄------------------------------------------------ 加入机器之心(全职记者/实习生):[email protected] 投稿或寻求报道:[email protected] 广告&商务合作:[email protected] (责任编辑:本港台直播) |