什么是 LSTM、BiLSTM 以及何时使用它们?

数据挖掘 机器学习 深度学习 rnn lstm
2021-10-09 00:51:03

我对深度学习非常陌生,我对了解什么是 LSTM 和 BiLSTM 以及何时使用它们(主要应用领域)特别感兴趣。为什么 LSTM 和 BILSTM 比 RNN 更受欢迎?

我们可以在无监督问题中使用这些深度学习架构吗?

3个回答

RNNLSTM类似的架构BiLSTM被用于学习问题是连续的,例如你有一个视频并且你想知道那是什么,或者你想让代理为你读取一行文档,它是一个文本图像并且是不是文本格式。我强烈建议你看看这里

LSTMs他们的双向变体很受欢迎,因为他们试图了解如何以及何时忘记以及何时不使用架构中的门。在以前RNN的架构中,梯度消失是一个大问题,导致这些网络无法学习太多。

使用双向LSTMs,您可以从头到尾一次向学习算法提供原始数据,从头到尾一次。这里有争论,但它通常比单向方法学习得更快,尽管它取决于任务。

是的,您也可以根据您的任务在无监督学习中使用它们。看看这里这里

人类不会每秒钟都从零开始思考。当你阅读这篇文章时,你会根据你对前面单词的理解来理解每个单词。你不会把所有东西都扔掉,重新开始思考。你的思想有持久性。

传统的神经网络无法做到这一点,这似乎是一个主要缺点。例如,假设您想对电影中每一点发生的事件进行分类。目前尚不清楚传统的神经网络如何利用其对电影中先前事件的推理来告知后来的事件。

递归神经网络解决了这个问题。它们是带有循环的网络,允许信息持续存在。

如需进一步阅读,请访问 Cohen 的博客

与 LSTM 相比,BLSTMorBiLSTM有两个网络,一个在方向上访问past信息forward,另一个在方向上future访问reverse维基

Bidirectional根据官方文档在这里添加了一个新类

model = Sequential()
model.add(Bidirectional(LSTM(num_channels, 
        implementation = 2, recurrent_activation = 'sigmoid'),
        input_shape=(input_length, input_dim)))

使用 IMDB 数据的完整示例将是这样的