国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

淺析深度神經(jīng)網(wǎng)絡(luò)(DNN)反向傳播算法(BP)

電子工程師 ? 來源:博客園 ? 作者:劉建平Pinard ? 2021-03-22 16:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在深度神經(jīng)網(wǎng)絡(luò)(DNN)模型與前向傳播算法中,我們對DNN的模型和前向傳播算法做了總結(jié),這里我們更進(jìn)一步,對DNN的反向傳播算法(Back Propagation,BP)做一個總結(jié)。

1. DNN反向傳播算法要解決的問題

在了解DNN的反向傳播算法前,我們先要知道DNN反向傳播算法要解決的問題,也就是說,什么時候我們需要這個反向傳播算法?

回到我們監(jiān)督學(xué)習(xí)的一般問題,假設(shè)我們有m個訓(xùn)練樣本:{ ( x1 , y1 ) , ( x2 , y2 ) , ... , ( xm , ym ) },其中 x 為輸入向量,特征維度為 n_in ,而 y 為輸出向量,特征維度為 n_out 。我們需要利用這 m 個樣本訓(xùn)練出一個模型,當(dāng)有一個新的測試樣本 ( xtest , ? ) 來到時, 我們可以預(yù)測 ytest 向量的輸出。

如果我們采用DNN的模型,即我們使輸入層有 n_in 個神經(jīng)元,而輸出層有 n_out 個神經(jīng)元。再加上一些含有若干神經(jīng)元的隱藏層。此時我們需要找到合適的所有隱藏層和輸出層對應(yīng)的線性系數(shù)矩陣 W ,偏倚向量 b ,讓所有的訓(xùn)練樣本輸入計算出的輸出盡可能的等于或很接近樣本輸出。怎么找到合適的參數(shù)呢?

如果大家對傳統(tǒng)的機(jī)器學(xué)習(xí)的算法優(yōu)化過程熟悉的話,這里就很容易聯(lián)想到我們可以用一個合適的損失函數(shù)來度量訓(xùn)練樣本的輸出損失,接著對這個損失函數(shù)進(jìn)行優(yōu)化求最小化的極值,對應(yīng)的一系列線性系數(shù)矩陣W,偏倚向量b即為我們的最終結(jié)果。在DNN中,損失函數(shù)優(yōu)化極值求解的過程最常見的一般是通過梯度下降法來一步步迭代完成的,當(dāng)然也可以是其他的迭代方法比如牛頓法與擬牛頓法。如果大家對梯度下降法不熟悉,建議先閱讀我之前寫的梯度下降(Gradient Descent)小結(jié)。

對DNN的損失函數(shù)用梯度下降法進(jìn)行迭代優(yōu)化求極小值的過程即為我們的反向傳播算法。

2. DNN反向傳播算法的基本思路

在進(jìn)行DNN反向傳播算法前,我們需要選擇一個損失函數(shù),來度量訓(xùn)練樣本計算出的輸出和真實(shí)的訓(xùn)練樣本輸出之間的損失。你也許會問:訓(xùn)練樣本計算出的輸出是怎么得來的?這 個輸出是隨機(jī)選擇一系列 W ,b,用我們上一節(jié)的前向傳播算法計算出來的。即通過一系列的計算:

100042150-65815-2.jpg

計算到輸出層第L層對應(yīng)的 aL 即為前向傳播算法計算出來的輸出。

回到損失函數(shù),DNN可選擇的損失函數(shù)有不少,為了專注算法,這里我們使用最常見的均方差來度量損失。即對于每個樣本,我們期望最小化下式:

100042150-65814-1.jpg

其中,aL 和 y 為特征維度為 n_out 的向量,而 ||S||2 為 S 的L2范數(shù)。

損失函數(shù)有了,現(xiàn)在我們開始用梯度下降法迭代求解每一層的 W,b。

首先是輸出層第L層。注意到輸出層的 W,b 滿足下式:

100042150-65815-2.jpg

這樣對于輸出層的參數(shù),我們的損失函數(shù)變?yōu)椋?/p>

100042150-65816-3.jpg

這樣求解 W,b 的梯度就簡單了:

100042150-65817-4.jpg

注意上式中有一個符號 ⊙,它代表Hadamard積,對于兩個維度相同的向量 A ( a1 , a2 , ... an ) T 和 B ( b1 , b2 , ... bn ) T,則 A⊙B = ( a1b1,a2b2,... anbn ) T。

我們注意到在求解輸出層的 W,b 的時候,有公共的部分

100042150-65818-5.jpg

因此我們可以把公共的部分即對 zL 先算出來,記為:

100042150-65819-6.jpg

現(xiàn)在我們終于把輸出層的梯度算出來了,那么如何計算上一層 L ? 1 層的梯度,上上層 L ? 2 層的梯度呢?這里我們需要一步步的遞推,注意到對于第l層的未激活輸出 zL ,它的梯度可以表示為:

100042150-65820-7.jpg

如果我們可以依次計算出第 l 層的 δl ,則該層的 Wl,bl 很容易計算?為什么呢?注意到根據(jù)前向傳播算法,我們有:

100042150-65821-8.jpg

所以根據(jù)上式我們可以很方便的計算出第 l 層的 Wl,bl 的梯度如下:

100042150-65822-9.jpg

那么現(xiàn)在問題的關(guān)鍵就是要求出 δl 了。這里我們用數(shù)學(xué)歸納法,第 L 層的 δL上面我們已經(jīng)求出, 假設(shè)第 l + 1 層的 δl+1 已經(jīng)求出來了,那么我們?nèi)绾吻蟪龅?l 層的 δl 呢?我們注意到:

100042150-65823-10.jpg

可見,用歸納法遞推 δl+1 和 δl 的關(guān)鍵在于求解

而 zl+1 和 zl 的關(guān)系其實(shí)很容易找出:

100042150-65824-11.jpg

這樣很容易求出:

將上式帶入上面 δl+1 和 δl 關(guān)系式我們得到:

現(xiàn)在我們得到了δl的遞推關(guān)系式,只要求出了某一層的 δl ,求解 Wl,bl 的對應(yīng)梯度就很簡單的。

(注意,上面的矩陣求導(dǎo)推導(dǎo)部分不太嚴(yán)謹(jǐn),定性理解即可。)

3. DNN反向傳播算法過程

現(xiàn)在我們總結(jié)下DNN反向傳播算法的過程。由于梯度下降法有批量(Batch),小批量(mini-Batch),隨機(jī)三個變種,為了簡化描述,這里我們以最基本的批量梯度下降法為例來描述反向傳播算法。實(shí)際上在業(yè)界使用最多的是mini-Batch的梯度下降法。不過區(qū)別僅僅在于迭代時訓(xùn)練樣本的選擇而已。

輸入: 總層數(shù) L ,以及各隱藏層與輸出層的神經(jīng)元個數(shù),激活函數(shù),損失函數(shù),迭代步長 α,最大迭代次數(shù)MAX與停止迭代閾值 ?,輸入的 m 個訓(xùn)練樣本{ ( x1 , y1 ) , ( x2 , y2 ) , ... , ( xm , ym ) }

輸出:各隱藏層與輸出層的線性關(guān)系系數(shù)矩陣 W 和偏倚向量 b

1) 初始化各隱藏層與輸出層的線性關(guān)系系數(shù)矩陣 W 和偏倚向量 b 的值為一個隨機(jī)值。

2)for iter to 1 to MAX:

2-1) for i = 1 to m:

a) 將DNN輸入 a1 設(shè)置為 xi
b) for l = 2 to L,進(jìn)行前向傳播算法計算

c) 通過損失函數(shù)計算輸出層的 δi,L
d) for l= L-1 to 2, 進(jìn)行反向傳播算法計算

2-2) for l = 2 to L,更新第 l 層的 Wl,Wl,bl:

2-3) 如果所有 W,b 的變化值都小于停止迭代閾值 ?,則跳出迭代循環(huán)到步驟3。

3) 輸出各隱藏層與輸出層的線性關(guān)系系數(shù)矩陣 W 和偏倚向量 b 。

4. DNN反向傳播算法小結(jié)

有了DNN反向傳播算法,我們就可以很方便的用DNN的模型去解決第一節(jié)里面提到了各種監(jiān)督學(xué)習(xí)的分類回歸問題。當(dāng)然DNN的參數(shù)眾多,矩陣運(yùn)算量也很大,直接使用會有各種各樣的問題。有哪些問題以及如何嘗試解決這些問題并優(yōu)化DNN模型與算法,我們在下一篇講。

編輯:jq

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

    關(guān)注

    0

    文章

    28

    瀏覽量

    15603
  • dnn
    dnn
    +關(guān)注

    關(guān)注

    0

    文章

    61

    瀏覽量

    9499
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    算法工程師需要具備哪些技能?

    (PCA)、異常檢測等。強(qiáng)化學(xué)習(xí):Q-learning、Policy Gradient等(適用于游戲AI、機(jī)器人控制)。 深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)基礎(chǔ):前向傳播反向
    發(fā)表于 02-27 10:53

    神經(jīng)網(wǎng)絡(luò)的初步認(rèn)識

    日常生活中的智能應(yīng)用都離不開深度學(xué)習(xí),而深度學(xué)習(xí)則依賴于神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)。什么是神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)的核心思想是模仿生物
    的頭像 發(fā)表于 12-17 15:05 ?324次閱讀
    <b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的初步認(rèn)識

    自動駕駛中常提的卷積神經(jīng)網(wǎng)絡(luò)是個啥?

    在自動駕駛領(lǐng)域,經(jīng)常會聽到卷積神經(jīng)網(wǎng)絡(luò)技術(shù)。卷積神經(jīng)網(wǎng)絡(luò),簡稱為CNN,是一種專門用來處理網(wǎng)格狀數(shù)據(jù)(比如圖像)的深度學(xué)習(xí)模型。CNN在圖像處理中尤其常見,因?yàn)閳D像本身就可以看作是由像素排列成的二維網(wǎng)格。
    的頭像 發(fā)表于 11-19 18:15 ?2076次閱讀
    自動駕駛中常提的卷積<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>是個啥?

    CNN卷積神經(jīng)網(wǎng)絡(luò)設(shè)計原理及在MCU200T上仿真測試

    數(shù)的提出很大程度的解決了BP算法在優(yōu)化深層神經(jīng)網(wǎng)絡(luò)時的梯度耗散問題。當(dāng)x&gt;0 時,梯度恒為1,無梯度耗散問題,收斂快;當(dāng)x&lt;0 時,該層的輸出為0。 CNN
    發(fā)表于 10-29 07:49

    NMSIS神經(jīng)網(wǎng)絡(luò)庫使用介紹

    NMSIS NN 軟件庫是一組高效的神經(jīng)網(wǎng)絡(luò)內(nèi)核,旨在最大限度地提高 Nuclei N 處理器內(nèi)核上的神經(jīng)網(wǎng)絡(luò)的性能并最??大限度地減少其內(nèi)存占用。 該庫分為多個功能,每個功能涵蓋特定類別
    發(fā)表于 10-29 06:08

    在Ubuntu20.04系統(tǒng)中訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗(yàn)

    , batch_size=512, epochs=20)總結(jié) 這個核心算法中的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和訓(xùn)練過程,是用來對MNIST手寫數(shù)字圖像進(jìn)行分類的。模型將圖像作為輸入,通過卷積和池化層提取圖像的特征,然后通過全連接層進(jìn)行分類預(yù)測。訓(xùn)練過程中,模型通過最小化損失函數(shù)來優(yōu)化
    發(fā)表于 10-22 07:03

    液態(tài)神經(jīng)網(wǎng)絡(luò)(LNN):時間連續(xù)性與動態(tài)適應(yīng)性的神經(jīng)網(wǎng)絡(luò)

    1.算法簡介液態(tài)神經(jīng)網(wǎng)絡(luò)(LiquidNeuralNetworks,LNN)是一種新型的神經(jīng)網(wǎng)絡(luò)架構(gòu),其設(shè)計理念借鑒自生物神經(jīng)系統(tǒng),特別是秀麗隱桿線蟲的
    的頭像 發(fā)表于 09-28 10:03 ?1211次閱讀
    液態(tài)<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>(LNN):時間連續(xù)性與動態(tài)適應(yīng)性的<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>

    神經(jīng)網(wǎng)絡(luò)的并行計算與加速技術(shù)

    隨著人工智能技術(shù)的飛速發(fā)展,神經(jīng)網(wǎng)絡(luò)在眾多領(lǐng)域展現(xiàn)出了巨大的潛力和廣泛的應(yīng)用前景。然而,神經(jīng)網(wǎng)絡(luò)模型的復(fù)雜度和規(guī)模也在不斷增加,這使得傳統(tǒng)的串行計算方式面臨著巨大的挑戰(zhàn),如計算速度慢、訓(xùn)練時間長等
    的頭像 發(fā)表于 09-17 13:31 ?1125次閱讀
    <b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的并行計算與加速技術(shù)

    如何在機(jī)器視覺中部署深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)

    圖 1:基于深度學(xué)習(xí)的目標(biāo)檢測可定位已訓(xùn)練的目標(biāo)類別,并通過矩形框(邊界框)對其進(jìn)行標(biāo)識。 在討論人工智能(AI)或深度學(xué)習(xí)時,經(jīng)常會出現(xiàn)“神經(jīng)網(wǎng)絡(luò)”、“黑箱”、“標(biāo)注”等術(shù)語。這些概念對非專業(yè)
    的頭像 發(fā)表于 09-10 17:38 ?901次閱讀
    如何在機(jī)器視覺中部署<b class='flag-5'>深度</b>學(xué)習(xí)<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>

    無刷電機(jī)小波神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)子位置檢測方法的研究

    摘要:論文通過對無刷電機(jī)數(shù)學(xué)模型的推導(dǎo),得出轉(zhuǎn)角:與三相相電壓之間存在映射關(guān)系,因此構(gòu)建了一個以三相相電壓為輸人,轉(zhuǎn)角為輸出的小波神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn)轉(zhuǎn)角預(yù)測,并采用改進(jìn)遺傳算法來訓(xùn)練網(wǎng)絡(luò)結(jié)構(gòu)與參數(shù),借助
    發(fā)表于 06-25 13:06

    神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)在電機(jī)故障診斷中的應(yīng)用

    的診斷誤差。仿真結(jié)果驗(yàn)證了該算法的有效性。 純分享帖,需要者可點(diǎn)擊附件免費(fèi)獲取完整資料~~~*附件:神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)在電機(jī)故障診斷中的應(yīng)用.pdf【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版
    發(fā)表于 06-16 22:09

    基于FPGA搭建神經(jīng)網(wǎng)絡(luò)的步驟解析

    本文的目的是在一個神經(jīng)網(wǎng)絡(luò)已經(jīng)通過python或者M(jìn)ATLAB訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型,將訓(xùn)練好的模型的權(quán)重和偏置文件以TXT文件格式導(dǎo)出,然后通過python程序?qū)xt文件轉(zhuǎn)化為coe文件,(coe
    的頭像 發(fā)表于 06-03 15:51 ?1202次閱讀
    基于FPGA搭建<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的步驟解析

    AI神經(jīng)網(wǎng)絡(luò)降噪算法在語音通話產(chǎn)品中的應(yīng)用優(yōu)勢與前景分析

    隨著人工智能技術(shù)的快速發(fā)展,AI神經(jīng)網(wǎng)絡(luò)降噪算法在語音通話產(chǎn)品中的應(yīng)用正逐步取代傳統(tǒng)降噪技術(shù),成為提升語音質(zhì)量的關(guān)鍵解決方案。相比傳統(tǒng)DSP(數(shù)字信號處理)降噪,AI降噪具有更強(qiáng)的環(huán)境適應(yīng)能力、更高
    的頭像 發(fā)表于 05-16 17:07 ?1511次閱讀
    AI<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>降噪<b class='flag-5'>算法</b>在語音通話產(chǎn)品中的應(yīng)用優(yōu)勢與前景分析

    XMOS人工智能降噪——AI降噪讓極端嘈雜環(huán)境下的通話和拾音變得可能

    AI驅(qū)動的語音捕獲功能,可在各種極具挑戰(zhàn)性的環(huán)境中用深度神經(jīng)網(wǎng)絡(luò)DNN算法來降噪。
    的頭像 發(fā)表于 04-21 15:50 ?1195次閱讀
    XMOS人工智能降噪——AI降噪讓極端嘈雜環(huán)境下的通話和拾音變得可能

    神經(jīng)網(wǎng)絡(luò)壓縮框架 (NNCF) 中的過濾器修剪統(tǒng)計數(shù)據(jù)怎么查看?

    無法觀察神經(jīng)網(wǎng)絡(luò)壓縮框架 (NNCF) 中的過濾器修剪統(tǒng)計數(shù)據(jù)
    發(fā)表于 03-06 07:10