机器学习笔记 :LSTM 变体 (conv-LSTM、Peephole LSTM、 coupled LSTM、conv-GRU)
1 LSTM復習
機器學習筆記 RNN初探 & LSTM_UQI-LIUWJ的博客-CSDN博客
機器學習筆記:GRU_UQI-LIUWJ的博客-CSDN博客_gru 機器學習
?2 PeepholeLSTM
就是計算輸入門、遺忘門和輸出門 的時候,我們不僅僅考慮h和x,還將C考慮進來
3? coupled? LSTM
輸入門和遺忘門二合一
4 Conv LSTM?
?可以看到conv LSTM中也使用了peephole LSTM的結構——cell部分也用于遺忘門和輸入門的計算
對于使用了peephole 的LSTM,我們有如下的計算流程
????????在這里紅色和紫色框起來的地方 都是 哈達瑪積(逐元素乘積),計算量是很大的,同時參數量也是很大的 [*表示 卷積操作 ●表示哈達瑪積]
? ? ? ?在conv lstm 中,對于紅色和紫色框起來的部分使用矩陣乘法而不是逐元素乘積
? ? ? ? 對于conv-LSTM,輸入是,w是時間窗口,a,b是 grid的尺寸;k是特征數量
? ? ? ? ?另一種convLSTM的理解方法是,我們普通的LSTM可以看成最后兩個維度都是1 的ConvLSTM,其中卷積核大小為1×1
4.1 ConvLSTM VS CNN+LSTM
????????對于時間序列預測問題而言,一般來說不存在conLSTM的結構,因為對于convlstm來說,輸入是矩陣形式的,即每一個時間步都是一個矩陣輸入(例如視頻分類問題),而典型的時間序列預測的每一個時間步輸入是一個向量(多變量時間序列預測)或一個標量(單變量時間序列預測)。
????????因此在時間序列預測中,一般是使用conv1d+lstm的方式來做,例如輸入是一個長度為10的sequence,經過conv1d(padding)之后仍舊是長度為10的sequence,然后這個sequence再送入LSTM,cnn作為濾波器存在,cnn和lstm的網絡結構是完全獨立的;
??????????cnn+lstm是無法直接處理視頻問題的,因為視頻的每一個時間步是一張圖像,不考慮多通道問題則至少是一個矩陣,而LSTM中,輸入部分和上一個時間步的hidden state的傳入部分一般來說是向量。
4.2 圖示ConvLSTM
?換言之,我們可以理解為,H,C以及sequence的每個元素X都是三維的tensor,每次我們都是用卷積操作來生成下一個sequence的H和C
5 ConvGRU
和Conv-LSTM類似,也是用 矩陣乘法代替逐元素哈達瑪積
參考文獻
【串講總結】RNN、LSTM、GRU、ConvLSTM、ConvGRU、ST-LSTM - 知乎 (zhihu.com)
總結
以上是生活随笔為你收集整理的机器学习笔记 :LSTM 变体 (conv-LSTM、Peephole LSTM、 coupled LSTM、conv-GRU)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NTU课程笔记 :CV6422(4) s
- 下一篇: 论文笔记 A Spatial-Tempo