最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

56 門控循環(huán)單元(GRU)【動(dòng)手學(xué)深度學(xué)習(xí)v2】

2022-08-28 18:59 作者:如果我是泡橘子  | 我要投稿

門控循環(huán)單元GRU

  • GRU 是最近幾年提出來的,在 LSTM 之后,是一個(gè)稍微簡化的變體,通常能夠提供同等的效果,并且計(jì)算速度更快



在某些情況下,希望存在某些機(jī)制能夠?qū)崿F(xiàn):

  • 希望某些機(jī)制能夠在一個(gè)記憶元里存儲(chǔ)重要的早期信息
  • 希望某些機(jī)制能夠跳過隱狀態(tài)表示中的此類詞元
  • 希望某些機(jī)制能夠重置內(nèi)部狀態(tài)表示



做 RNN 的時(shí)候處理不了太長的序列

  • 因?yàn)樾蛄行畔⑷糠旁陔[藏狀態(tài)中,當(dāng)時(shí)間到達(dá)一定長度的時(shí)候,隱藏狀態(tài)中會(huì)累積過多的信息,不利于相對(duì)靠前的信息的抽取


在觀察一個(gè)序列的時(shí)候,不是每個(gè)觀察值都同等重要

  • 對(duì)于一個(gè)貓的圖片的序列突然出現(xiàn)一只老鼠,老鼠的出現(xiàn)很重要,第一次出現(xiàn)貓也很重要,但是之后再出現(xiàn)貓就不那么重要了
  • 在一個(gè)句子中,可能只是一些關(guān)鍵字或者關(guān)鍵句比較重要
  • 視頻處理中,其實(shí)幀與幀之間很多時(shí)候都差不多,但是在切換場景的時(shí)候,每次的切換是比較重要的

在 RNN 中沒有特別關(guān)心某些地方的機(jī)制,對(duì)于它來講僅僅是一個(gè)序列,而門控循環(huán)單元可以通過一些額外的控制單元,使得在構(gòu)造隱藏狀態(tài)的時(shí)候能夠挑選出相對(duì)來說更加重要的部分(注意力機(jī)制在這方面強(qiáng)調(diào)得更多一點(diǎn))

  • 更新門(update gate):能關(guān)注的機(jī)制,能夠?qū)⑿畔⒈M量放在隱藏狀態(tài)中,控制新狀態(tài)中有多少個(gè)是舊狀態(tài)的副本
  • 重置門(reset gate):能遺忘的機(jī)制,能夠遺忘輸入或者隱藏狀態(tài)中的一些信息,控制"可能還想記住"的過去狀態(tài)的數(shù)量





  • 上圖表示門控循環(huán)單元模型,輸入是由當(dāng)前時(shí)間步的輸入前一時(shí)間步的隱狀態(tài)給出;重置門和更新門的輸出是由使用 sigmoid 激活函數(shù)的兩個(gè)全連接層給出
  • Xt :輸入
  • H(t-1):隱藏狀態(tài)
  • Rt :重置門.如果是 RNN 的話,所表示的是使用 sigmoid 作為激活函數(shù)對(duì)應(yīng)的隱藏狀態(tài)的計(jì)算
  • Zt :更新門.計(jì)算方式和 RNN 中隱藏狀態(tài)以及 Rt 的計(jì)算方式是一樣的
  • 門可以認(rèn)為是和隱藏狀態(tài)同樣長度的向量,它的計(jì)算方式和 RNN 中隱藏狀態(tài)的計(jì)算方式是一樣的





候選隱狀態(tài)(candidate hidden state)

  • 并不是真正的隱藏狀態(tài),只是用來生成真正的隱藏狀態(tài)
  • Rt 與 H(t-1) 按元素乘法,對(duì)于一個(gè)樣本來講, Rt 和 H(t-1)是一個(gè)長度相同的向量,所以可以按照元素做乘法
  • Rt 是一個(gè)取值為 0~1 的值, Rt 越靠近 0 , Rt 與 H(t-1)按元素乘法得到的結(jié)果就越接近 0 ,也就相當(dāng)于將上一時(shí)刻的隱藏狀態(tài)忘掉
  • 極端情況下,如果 Rt 全部變成 0 的話,就相當(dāng)于從當(dāng)前時(shí)刻開始,前面的信息全部不要,隱藏狀態(tài)變成 0 ,從初始化狀態(tài)開始,任何預(yù)先存在的隱狀態(tài)都會(huì)被重置為默認(rèn)值
  • 另外一個(gè)極端情況:如果 Rt 全是 1 的話,就表示,將當(dāng)前時(shí)刻之前所有的信息全部拿過來做更新,就等價(jià)于 RNN 中隱藏狀態(tài)的更新方式
  • 實(shí)際上 Rt 是一個(gè)可以學(xué)習(xí)的參數(shù),所以它會(huì)根據(jù)前面的信息來學(xué)習(xí)哪些信息是能夠進(jìn)入到下一輪隱藏狀態(tài)的更新,哪一些信息需要進(jìn)行舍棄,這些操作都是自動(dòng)進(jìn)行的,因此被叫做控制單元





隱狀態(tài)

  • 門控循環(huán)單元與普通的循環(huán)神經(jīng)網(wǎng)絡(luò)之間的關(guān)鍵區(qū)別在于:前者支持隱狀態(tài)的門控,這意味著模型有專門的機(jī)制來確定應(yīng)該何時(shí)更新隱狀態(tài),以及應(yīng)該何時(shí)重置隱狀態(tài)(這些機(jī)制都是可學(xué)習(xí)的)
  • 真正的隱藏狀態(tài)的計(jì)算方式如下所示
  • Zt 也是一些取值為 0~1 的一些數(shù)字組成的
  • 假設(shè) Zt 都等于 1 ,即 Ht 等于 H(t-1),相當(dāng)于不使用 Xt 來更新隱藏狀態(tài),直接將過去的狀態(tài)當(dāng)成現(xiàn)在的狀態(tài),模型只保留舊狀態(tài),此時(shí),來自 Xt 的信息基本上被忽略.當(dāng)整個(gè)子序列的所有時(shí)間步的更新門都接近于 1 ,則無論序列的長度如何,在序列起始時(shí)間步的舊隱狀態(tài)都將很容易保留并傳遞到序列結(jié)束
  • 假設(shè) Zt 都等于 0 , Ht 等于候選隱狀態(tài) Ht tittle .相當(dāng)于回到了 RNN 的情況,不看過去的隱藏狀態(tài),只看現(xiàn)在更新的隱藏狀態(tài),能夠幫助處理循環(huán)神經(jīng)網(wǎng)絡(luò)中的梯度消失問題,并且能夠更好地捕獲時(shí)間步距離很長的序列的依賴關(guān)系





總結(jié)

  • GRU 中引入了兩個(gè)額外的門,每個(gè)門可以學(xué)習(xí)的參數(shù)和 RNN 一樣多,整個(gè)可學(xué)習(xí)的權(quán)重?cái)?shù)量是 RNN 的三倍
  • Rt 和 Zt 都是控制單元,用來輸出取值為 0~1 的數(shù)值
  • Rt 用來衡量在更新新的隱藏狀態(tài)的時(shí)候,要用到多少過去隱藏狀態(tài)的信息
  • Zt 用來衡量在更新新的隱藏狀態(tài)的時(shí)候,需要用到多少當(dāng)前Xt相關(guān)的信息
  • 當(dāng) Zt 全為 0 , Rt 全為 1 時(shí),等價(jià)于 RNN
  • 當(dāng) Zt 全為 1 時(shí),直接忽略掉當(dāng)前 Xt
  • GRU 通過引入 Rt 和 Zt ,從而能夠在各種極端情況之間進(jìn)行調(diào)整
  • 門控循環(huán)神經(jīng)網(wǎng)絡(luò)可以更好地捕獲時(shí)間步距離很長的序列上的依賴關(guān)系
  • 重置門有助于捕獲序列中的短期依賴關(guān)系
  • 更新門有助于捕獲序列中的長期依賴關(guān)系
  • 重置門打開時(shí),門控循環(huán)單元包含基本循環(huán)神經(jīng)網(wǎng)絡(luò)
  • 更新門打開時(shí),門控循環(huán)單元可以跳過子序列





Q&A

  • 1 GRU 網(wǎng)絡(luò)中, Rt 和 Zt 的網(wǎng)絡(luò)結(jié)構(gòu)一樣,為什么就可以自動(dòng)把 Rt 選成 Reset gate , Zt 選成 Update gate?
  • ?
    QA P3 - 00:00
    ?


  • 2 老師請(qǐng)問, GRU 中激活函數(shù)為什么用 tanh 呢,用 relu 或其他的激活函數(shù)可以么?
  • ?
    QA P3 - 01:24
    ?


  • 3 Zt 全等于 1 的時(shí)候相當(dāng)于 Ht=H(t-1).那如果 Zt 全等于 0 的時(shí)候,是什么意思呢?也并不是完全不看 H(t-1)吧,因?yàn)?H(title)里可能用了 H(t-1)
  • ?
    QA P3 - 02:22
    ?


  • 4 GRU 相比 RNN 多了這么多參數(shù),需不需要提高 grad clipping 的閾值?
  • ?
    QA P3 - 03:20
    ?


  • 5 GRU 有了 Rt 是不是不需要像 RNN 那樣在換數(shù)據(jù)的時(shí)候 reset H 了? GRU 可以自己學(xué)習(xí)到這個(gè)
  • ?
    QA P3 - 04:48
    ?


  • 6 GRU 中的初始化隱藏層大小可以隨便寫嗎,和 MLP 對(duì)比
  • ?
    QA P3 - 06:45
    ?


  • 7 normal 函數(shù)中, torch.randn(size=shape,device=device)*0.01 這個(gè)地方為什么要乘 0.01 ?
  • ?
    QA P3 - 07:18
    ?


  • 8 老師,最近我看到一篇文章是對(duì)視頻采用 CNN-LSTM 做回歸分析,文章中視頻采樣的頻率是 200hz ,但是最后卻可以回歸出 500hz 左右的頻率信息,這種端到端的深度學(xué)習(xí)為何可以得到超出采樣頻率(甚至采樣定理規(guī)定的頻率)之外的信息呢?謝謝老師!
  • ?
    QA P3 - 08:08
    ?


  • 9 RNN 在長文本時(shí)候效果不好,請(qǐng)問老師多長算長啊,還是跟 RNN 的隱藏向量的大小按有關(guān)?
  • ?
    QA P3 - 08:49
    ?





----end----

1 <動(dòng)手學(xué)深度學(xué)習(xí)>,PPT,https://courses.d2l.ai/zh-v2/assets/pdfs/part-3_4.pdf

2 <動(dòng)手學(xué)深度學(xué)習(xí)>,教程,https://zh-v2.d2l.ai/chapter_recurrent-modern/gru.html

56 門控循環(huán)單元(GRU)【動(dòng)手學(xué)深度學(xué)習(xí)v2】的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
永泰县| 大邑县| 南江县| 晋城| 东乌| 津南区| 南郑县| 九龙城区| 迁西县| 正安县| 桑日县| 紫阳县| 华阴市| 桂平市| 宁化县| 东阳市| 宝山区| 集安市| 宝兴县| 资源县| 涿州市| 固始县| 连南| 任丘市| 堆龙德庆县| 宁河县| 汤阴县| 罗江县| 西林县| 桃园县| 呈贡县| 马山县| 应用必备| 邹平县| 昆明市| 施秉县| 丹江口市| 望谟县| 宁阳县| 宾阳县| 长乐市|