0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

神經(jīng)網(wǎng)絡(luò)中最經(jīng)典的RNN模型介紹

Dbwd_Imgtec ? 來源:人工智能與算法學(xué)習(xí) ? 作者:人工智能與算法學(xué) ? 2021-05-10 10:22 ? 次閱讀

神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的載體,而神經(jīng)網(wǎng)絡(luò)模型中,最經(jīng)典非RNN模型所屬,盡管它不完美,但它具有學(xué)習(xí)歷史信息的能力。后面不管是encode-decode 框架,還是注意力模型,以及自注意力模型,以及更加強(qiáng)大的Bert模型家族,都是站在RNN的肩上,不斷演化、變強(qiáng)的。

這篇文章,闡述了RNN的方方面面,包括模型結(jié)構(gòu),優(yōu)缺點(diǎn),RNN模型的幾種應(yīng)用,RNN常使用的激活函數(shù),RNN的缺陷,以及GRU,LSTM是如何試圖解決這些問題,RNN變體等。

這篇文章最大特點(diǎn)是圖解版本,其次語言簡練,總結(jié)全面。

概述

傳統(tǒng)RNN的體系結(jié)構(gòu)。Recurrent neural networks,也稱為RNNs,是一類允許先前的輸出用作輸入,同時(shí)具有隱藏狀態(tài)的神經(jīng)網(wǎng)絡(luò)。它們通常如下所示:

7fe7268e-b0f0-11eb-bf61-12bb97331649.png

對于每一時(shí)步, 激活函數(shù) ,輸出被表達(dá)為:

7ff32b82-b0f0-11eb-bf61-12bb97331649.png

7fff71c6-b0f0-11eb-bf61-12bb97331649.png

這里8017485a-b0f0-11eb-bf61-12bb97331649.png是時(shí)間維度網(wǎng)絡(luò)的共享權(quán)重系數(shù) ?是激活函數(shù)

8020a5d0-b0f0-11eb-bf61-12bb97331649.png

下表總結(jié)了典型RNN架構(gòu)的優(yōu)缺點(diǎn):

處理任意長度的輸入 計(jì)算速度慢
模型形狀不隨輸入長度增加 難以獲取很久以前的信息
計(jì)算考慮了歷史信息 無法考慮當(dāng)前狀態(tài)的任何未來輸入
權(quán)重隨時(shí)間共享
優(yōu)點(diǎn) 缺點(diǎn)

RNNs應(yīng)用

RNN模型主要應(yīng)用于自然語言處理和語音識別領(lǐng)域。下表總結(jié)了不同的應(yīng)用:

1對1

802ca506-b0f0-11eb-bf61-12bb97331649.png

傳統(tǒng)神經(jīng)網(wǎng)絡(luò)
1對多

805de940-b0f0-11eb-bf61-12bb97331649.png

音樂生成
多對1

80695140-b0f0-11eb-bf61-12bb97331649.png

情感分類
多對多

807612c2-b0f0-11eb-bf61-12bb97331649.png

命名實(shí)體識別
多對多

8081fa9c-b0f0-11eb-bf61-12bb97331649.png

機(jī)器翻譯
RNN 類型 圖解 例子

損失函數(shù) 對于RNN網(wǎng)絡(luò),所有時(shí)間步的損失函數(shù) 是根據(jù)每個(gè)時(shí)間步的損失定義的,如下所示:

808d7aac-b0f0-11eb-bf61-12bb97331649.png

時(shí)間反向傳播

在每個(gè)時(shí)間點(diǎn)進(jìn)行反向傳播。在時(shí)間步,損失相對于權(quán)重矩陣的偏導(dǎo)數(shù)表示如下:

8098d26c-b0f0-11eb-bf61-12bb97331649.png

處理長短依賴

常用激活函數(shù)

RNN模塊中最常用的激活函數(shù)描述如下:

80a46d02-b0f0-11eb-bf61-12bb97331649.png

80b0309c-b0f0-11eb-bf61-12bb97331649.png

80d89fc8-b0f0-11eb-bf61-12bb97331649.png

Sigmoid Tanh RELU

梯度消失/爆炸

在RNN中經(jīng)常遇到梯度消失和爆炸現(xiàn)象。之所以會發(fā)生這種情況,是因?yàn)楹茈y捕捉到長期的依賴關(guān)系,因?yàn)槌朔ㄌ荻瓤梢噪S著層的數(shù)量呈指數(shù)遞減/遞增。

梯度修剪 梯度修剪是一種技術(shù),用于執(zhí)行反向傳播時(shí),有時(shí)遇到的梯度爆炸問題。通過限制梯度的最大值,這種現(xiàn)象在實(shí)踐中得以控制。

81016e4e-b0f0-11eb-bf61-12bb97331649.png

門的類型

為了解決消失梯度問題,在某些類型的RNN中使用特定的門,并且通常有明確的目的。它們通常標(biāo)注為,等于:

810dd972-b0f0-11eb-bf61-12bb97331649.png

其中,是特定于門的系數(shù),是sigmoid函數(shù)。主要內(nèi)容總結(jié)如下表:

更新門 過去對現(xiàn)在有多重要? GRU, LSTM
關(guān)聯(lián)門 丟棄過去信息? GRU, LSTM
遺忘門 是不是擦除一個(gè)單元? LSTM
輸出門 暴露一個(gè)門的多少? LSTM
門的種類 作用 應(yīng)用

GRU/LSTM Gated Recurrent Unit(GRU)和長-短期記憶單元(LSTM)處理傳統(tǒng)RNNs遇到的消失梯度問題,LSTM是GRU的推廣。下表總結(jié)了每種結(jié)構(gòu)的特征方程:

8117f952-b0f0-11eb-bf61-12bb97331649.png

注:符號表示兩個(gè)向量之間按元素相乘。

RNN的變體

下表總結(jié)了其他常用的RNN模型:

812661c2-b0f0-11eb-bf61-12bb97331649.png

814b70ac-b0f0-11eb-bf61-12bb97331649.png

原文標(biāo)題:神經(jīng)網(wǎng)絡(luò)RNN圖解

文章出處:【微信公眾號:Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:神經(jīng)網(wǎng)絡(luò)RNN圖解

文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    如何理解RNN與LSTM神經(jīng)網(wǎng)絡(luò)

    在深入探討RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))與LSTM(Long Short-Term Memory,長短期記憶網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)之前,我們首先需要明
    的頭像 發(fā)表于 07-09 11:12 ?399次閱讀

    rnn是遞歸神經(jīng)網(wǎng)絡(luò)還是循環(huán)神經(jīng)網(wǎng)絡(luò)

    RNN(Recurrent Neural Network)是循環(huán)神經(jīng)網(wǎng)絡(luò),而非遞歸神經(jīng)網(wǎng)絡(luò)。循環(huán)神經(jīng)網(wǎng)絡(luò)是一種具有時(shí)間序列特性的神經(jīng)網(wǎng)絡(luò),能
    的頭像 發(fā)表于 07-05 09:52 ?433次閱讀

    rnn是什么神經(jīng)網(wǎng)絡(luò)模型

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)模型,它能夠處理序列數(shù)據(jù),并對序列中的元素進(jìn)行建模。
    的頭像 發(fā)表于 07-05 09:50 ?460次閱讀

    rnn是什么神經(jīng)網(wǎng)絡(luò)

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)連接的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),并且具有記憶能力。與傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)(Feedforward
    的頭像 發(fā)表于 07-05 09:49 ?448次閱讀

    rnn神經(jīng)網(wǎng)絡(luò)模型原理

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),具有記憶功能。RNN在自然語言處理、語音識別、時(shí)間序列預(yù)測等領(lǐng)
    的頭像 發(fā)表于 07-04 15:40 ?440次閱讀

    RNN神經(jīng)網(wǎng)絡(luò)適用于什么

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),它可以處理序列數(shù)據(jù),具有記憶功能。RNN在許多領(lǐng)域都有廣泛的應(yīng)用,以下是一些
    的頭像 發(fā)表于 07-04 15:04 ?668次閱讀

    rnn神經(jīng)網(wǎng)絡(luò)基本原理

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),并且能夠捕捉時(shí)間序列數(shù)據(jù)中的動態(tài)特征。RNN在自然語言處理、語
    的頭像 發(fā)表于 07-04 15:02 ?553次閱讀

    遞歸神經(jīng)網(wǎng)絡(luò)是循環(huán)神經(jīng)網(wǎng)絡(luò)

    遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,簡稱RNN)和循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,簡稱RNN)實(shí)際上是同一個(gè)概念,只是不同的
    的頭像 發(fā)表于 07-04 14:54 ?549次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)算法原理及特點(diǎn)

    )相比,RNN在處理序列數(shù)據(jù)時(shí)具有明顯的優(yōu)勢。本文將介紹循環(huán)神經(jīng)網(wǎng)絡(luò)的原理、特點(diǎn)及應(yīng)用。 1. 循環(huán)神經(jīng)網(wǎng)絡(luò)的原理 1.1 基本概念 循環(huán)神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 07-04 14:49 ?395次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)有哪些基本模型

    循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks,簡稱RNN)是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),并且能夠捕捉序列數(shù)據(jù)中的時(shí)序信息。RNN的基本
    的頭像 發(fā)表于 07-04 14:43 ?338次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理是什么

    結(jié)構(gòu)具有循環(huán),能夠?qū)⑶耙粋€(gè)時(shí)間步的信息傳遞到下一個(gè)時(shí)間步,從而實(shí)現(xiàn)對序列數(shù)據(jù)的建模。本文將介紹循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理。 RNN的基本結(jié)構(gòu) 1.1 神經(jīng)元模型
    的頭像 發(fā)表于 07-04 14:26 ?510次閱讀

    什么是RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))?RNN的基本原理和優(yōu)缺點(diǎn)

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種專門用于處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),它能夠在序列的演進(jìn)方向上進(jìn)行遞歸,并通過所有節(jié)點(diǎn)(循環(huán)單元)的鏈?zhǔn)竭B接來捕捉序列中
    的頭像 發(fā)表于 07-04 11:48 ?2156次閱讀

    GRU是什么?GRU模型如何讓你的神經(jīng)網(wǎng)絡(luò)更聰明 掌握時(shí)間 掌握未來

    適用于處理圖像識別和計(jì)算機(jī)視覺任務(wù)。今天要給大家介紹一位新朋友,名為GRU。 Gated RecurrentUnit(GRU)是一種用于處理序列數(shù)據(jù)的循環(huán)神經(jīng)網(wǎng)絡(luò)RNN模型。 先來
    發(fā)表于 06-13 11:42 ?1213次閱讀
    GRU是什么?GRU<b class='flag-5'>模型</b>如何讓你的<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>更聰明 掌握時(shí)間 掌握未來

    助聽器降噪神經(jīng)網(wǎng)絡(luò)模型

    抑制任務(wù)是語音增強(qiáng)領(lǐng)域的一個(gè)重要學(xué)科, 隨著深度神經(jīng)網(wǎng)絡(luò)的興起,提出了幾種基于深度模型的音頻處理新方法[1,2,3,4]。然而,這些通常是為離線處理而開發(fā)的,不需要考慮實(shí)時(shí)性。當(dāng)使用神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 05-11 17:15

    什么是RNN (循環(huán)神經(jīng)網(wǎng)絡(luò))?

    循環(huán)神經(jīng)網(wǎng)絡(luò) (RNN) 是一種深度學(xué)習(xí)結(jié)構(gòu),它使用過去的信息來提高網(wǎng)絡(luò)處理當(dāng)前和將來輸入的性能。RNN 的獨(dú)特之處在于該網(wǎng)絡(luò)包含隱藏狀態(tài)和
    發(fā)表于 02-29 14:56 ?3746次閱讀
    什么是<b class='flag-5'>RNN</b> (循環(huán)<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>)?