李宏毅:Gated RNN and Sequence generation

1、RNN with gated machanism

(1)RNN

(2)deep RNN

(3)Bidirectional RNN

(4)Naive RNN

(5)LSTM

因爲LSTM中的input c變化是很慢的,所以它能夠記得很久之前的內容,不會有太大的變化。

h(t-1)和c(t-1)是上一個LSTM的output。

可以把c(t-1)也放進去。

z(i)決定z這個information能不能夠被拿進來使用。z(f)就是決定c(t-1)的information要不要在接下來的output中使用(c(t-1)其實是memory,代表過去的information)。z(o)決定最終的output能不能夠出來。

(6)GRU

GRU相比於LSTM,好處是參數比較少。一個是reset gate(r),一個是update gate(z),z有點像forget gate和input gate的角色。GRU中的h類似於LSTM中的c,h的變化是比較小的。GRU裏的input gate和forget gate是聯動的,一定要有新的東西進來,纔會忘掉東西,當你忘掉東西的時候,就會有新的東西進來。

2、sequence generation

(1)generation

(2)condition generation

(1)seq-to-seq

(2)dynamic conditional generation(等價於Attention-based model

α是一個score,表示h和z(key 關鍵字)有多match,match這個function是由你自己設計。

經softmax後,前兩個字的attention weight是0.5,說明此時machine比較關注前兩個字。

直到出現<EOS>就結束。

(3)tips for generation

用α代表attention的weight,上標代表attend在哪一個component(組件)上,下標表示是在產生第幾個word的時候的weight。但是有時候這樣的attention並不好,你需要加給weight加一個regularization。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章