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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

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

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

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

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

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

概述

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

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

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

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

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

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

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

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

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

RNNs應用

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

1對1

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

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

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

音樂生成
多對1

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

情感分類
多對多

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

命名實體識別
多對多

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

機器翻譯
RNN 類型 圖解 例子

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

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

時間反向傳播

在每個時間點進行反向傳播。在時間步,損失相對于權重矩陣的偏導數(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ā)生這種情況,是因為很難捕捉到長期的依賴關系,因為乘法梯度可以隨著層的數(shù)量呈指數(shù)遞減/遞增。

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

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

門的類型

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

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

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

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

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

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

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

RNN的變體

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

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

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

原文標題:神經(jīng)網(wǎng)絡RNN圖解

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

責任編輯:haq

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

原文標題:神經(jīng)網(wǎng)絡RNN圖解

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

收藏 人收藏

    評論

    相關推薦

    RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別

    神經(jīng)網(wǎng)絡是機器學習領域中的一種強大工具,它們能夠模擬人腦處理信息的方式。隨著技術的發(fā)展,神經(jīng)網(wǎng)絡的類型也在不斷增加,其中循環(huán)神經(jīng)網(wǎng)絡RNN)和傳統(tǒng)
    的頭像 發(fā)表于 11-15 09:42 ?335次閱讀

    LSTM神經(jīng)網(wǎng)絡與傳統(tǒng)RNN的區(qū)別

    在深度學習領域,循環(huán)神經(jīng)網(wǎng)絡RNN)因其能夠處理序列數(shù)據(jù)而受到廣泛關注。然而,傳統(tǒng)RNN在處理長序列時存在梯度消失或梯度爆炸的問題。為了解決這一問題,LSTM(長短期記憶)神經(jīng)網(wǎng)絡
    的頭像 發(fā)表于 11-13 09:58 ?314次閱讀

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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