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

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

3天內不再提示

BP神經(jīng)網(wǎng)絡概述

lviY_AI_shequ ? 來源:未知 ? 作者:李倩 ? 2018-06-19 15:17 ? 次閱讀

1 BP神經(jīng)網(wǎng)絡概述

BP 神經(jīng)網(wǎng)絡是一類基于誤差逆向傳播 (BackPropagation, 簡稱 BP) 算法的多層前饋神經(jīng)網(wǎng)絡,BP算法是迄今最成功的神經(jīng)網(wǎng)絡學習算法。現(xiàn)實任務中使用神經(jīng)網(wǎng)絡時,大多是在使用 BP 算法進行訓練。值得指出的是,BP算法不僅可用于多層前饋神經(jīng)網(wǎng)絡,還可以用于其他類型的神經(jīng)網(wǎng)絡,例如訓練遞歸神經(jīng)網(wǎng)絡。但我們通常說 “BP 網(wǎng)絡” 時,一般是指用 BP 算法訓練的多層前饋神經(jīng)網(wǎng)絡。

2 神經(jīng)網(wǎng)絡的前饋過程

神經(jīng)網(wǎng)絡結構示意圖

上述過程,即為該神經(jīng)網(wǎng)絡的前饋 (forward propagation) 過程,前饋過程也非常容易理解,符合人正常的邏輯,具體的矩陣計算表達如

3 逆向誤差傳播 (BP過程)

我們的任務就是:給定了一組數(shù)據(jù)集,其中包含了輸入數(shù)據(jù)和輸出的真實結果,如何尋找一組最佳的神經(jīng)網(wǎng)絡參數(shù),使得網(wǎng)絡計算得到的推測值能夠與真實值吻合程度最高?

3.1 模型的損失函數(shù)

為了達到這個目標,這也就轉換為了一個優(yōu)化過程,對于任何優(yōu)化問題,總是會有一個目標函數(shù) (objective function),在機器學習的問題中,通常我們稱此類函數(shù)為:損失函數(shù) (loss function),具體來說,損失函數(shù)表達了推測值與真實值之間的誤差。抽象來看,如果把模型的推測以函數(shù)形式表達為?(這里的函數(shù)字母使用 h 是源于“假設 hypothesis“ 這一單詞),對于有m個訓練樣本的輸入數(shù)據(jù)而言,其損失函數(shù)則可表達為:

那么在該問題中的損失函數(shù)是什么樣的呢?拋開線性組合函數(shù),我們先著眼于最終的激活函數(shù),也就是的值,由于 sigmoid 函數(shù)具有很好的函數(shù)性質,其值域介于 0 到 1 之間,當自變量很大時,趨向于 1,很小時趨向于 0,因此,該模型的損失函數(shù)可以定義如下:

不難發(fā)現(xiàn),由于是分類問題,真實值只有取 0 或 1 兩種情況,當真實值為 1 時,輸出值a越接近 1,則 loss 越?。划斦鎸嵵禐?0 時,輸出值越接近于 0,則 損失函數(shù)越小 (可自己手畫一下函數(shù)的曲線)。因此,可將該分段函數(shù)整合為如下函數(shù):

該函數(shù)與上述分段函數(shù)等價。如果你了解Logistic Regression 模型的基本原理,那么損失函數(shù)這一部分與其完全是一致的,現(xiàn)在,我們已經(jīng)確定了模型的損失函數(shù)關于輸出量a的函數(shù)形式,接下來的問題自然就是:如何根據(jù)該損失函數(shù)來優(yōu)化模型的參數(shù)。

3.2 基于梯度下降的逆向傳播過程 (關于損失函數(shù)的逆向求導)

這里需要一些先修知識,主要是需要懂得梯度下降 (gradient descent)這一優(yōu)化算法的原理,這里我就不展開闡述該方法,不了解的讀者可以查看我之前的這篇較為簡單清晰的關于梯度下降法介紹的文章 ->[link]。由于如果將神經(jīng)網(wǎng)絡的損失函數(shù)完全展開將會極為繁瑣,這里我們先根據(jù)上面得到的關于輸出量a的損失函數(shù)來進行一步步的推導。

BP 的核心點在于逆向傳播,本質上來說,其實是將模型最終的損失函數(shù)進行逆向求導的過程,首先,我們需要從輸出層向隱含層的進行求導,也就是需要求得,這里就需要用到求導方法里的?鏈式求導法則。我們先求得 2 個必要的導數(shù)

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

    關注

    42

    文章

    4771

    瀏覽量

    100760
  • 機器學習
    +關注

    關注

    66

    文章

    8418

    瀏覽量

    132628
  • BP算法
    +關注

    關注

    0

    文章

    8

    瀏覽量

    7162

原文標題:BP 神經(jīng)網(wǎng)絡 —— 逆向傳播的藝術

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    神經(jīng)網(wǎng)絡教程(李亞非)

      第1章 概述  1.1 人工神經(jīng)網(wǎng)絡研究與發(fā)展  1.2 生物神經(jīng)元  1.3 人工神經(jīng)網(wǎng)絡的構成  第2章人工神經(jīng)網(wǎng)絡基本模型  2.
    發(fā)表于 03-20 11:32

    labview BP神經(jīng)網(wǎng)絡的實現(xiàn)

    請問:我在用labview做BP神經(jīng)網(wǎng)絡實現(xiàn)故障診斷,在NI官網(wǎng)找到了機器學習工具包(MLT),但是里面沒有關于這部分VI的幫助文檔,對于”BP神經(jīng)網(wǎng)絡分類“這個范例有很多不懂的地方,
    發(fā)表于 02-22 16:08

    基于BP神經(jīng)網(wǎng)絡的辨識

    基于BP神經(jīng)網(wǎng)絡的辨識
    發(fā)表于 01-04 13:37

    【案例分享】基于BP算法的前饋神經(jīng)網(wǎng)絡

    `BP神經(jīng)網(wǎng)絡首先給出只包含一個隱層的BP神經(jīng)網(wǎng)絡模型(兩層神經(jīng)網(wǎng)絡): BP
    發(fā)表于 07-21 04:00

    如何設計BP神經(jīng)網(wǎng)絡圖像壓縮算法?

    ,并能在腦海中重現(xiàn)這些圖像信息,這不僅與人腦的海量信息存儲能力有關,還與人腦的信息處理能力,包括數(shù)據(jù)壓縮能力有關。在各種神經(jīng)網(wǎng)絡中,多層前饋神經(jīng)網(wǎng)絡具有很強的信息處理能力,由于其采用BP算法,因此也
    發(fā)表于 08-08 06:11

    BP神經(jīng)網(wǎng)絡的基礎數(shù)學知識分享

    一文看懂BP神經(jīng)網(wǎng)絡的基礎數(shù)學知識
    發(fā)表于 06-16 07:14

    基于BP神經(jīng)網(wǎng)絡的PID控制

    最近在學習電機的智能控制,上周學習了基于單神經(jīng)元的PID控制,這周研究基于BP神經(jīng)網(wǎng)絡的PID控制。神經(jīng)網(wǎng)絡具有任意非線性表達能力,可以通過對系統(tǒng)性能的學習來實現(xiàn)具有最佳組合的PID控
    發(fā)表于 09-07 07:43

    BP神經(jīng)網(wǎng)絡原理及應用

    BP神經(jīng)網(wǎng)絡原理及應用說明。
    發(fā)表于 04-27 10:48 ?14次下載

    人工神經(jīng)網(wǎng)絡bp神經(jīng)網(wǎng)絡的區(qū)別

    人工神經(jīng)網(wǎng)絡bp神經(jīng)網(wǎng)絡的區(qū)別? 人工神經(jīng)網(wǎng)絡(Artificial Neural Network, ANN)是一種模仿人腦神經(jīng)元網(wǎng)絡結構
    的頭像 發(fā)表于 08-22 16:45 ?4497次閱讀

    卷積神經(jīng)網(wǎng)絡bp神經(jīng)網(wǎng)絡的區(qū)別

    卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,簡稱CNN)和BP神經(jīng)網(wǎng)絡(Backpropagation Neural Networks,簡稱BPNN)是兩種
    的頭像 發(fā)表于 07-02 14:24 ?3946次閱讀

    bp神經(jīng)網(wǎng)絡和卷積神經(jīng)網(wǎng)絡區(qū)別是什么

    BP神經(jīng)網(wǎng)絡(Backpropagation Neural Network)和卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,簡稱CNN)是兩種不同類型的人工神經(jīng)網(wǎng)絡
    的頭像 發(fā)表于 07-03 10:12 ?1183次閱讀

    BP神經(jīng)網(wǎng)絡在處理不連續(xù)變量時的應用

    。 BP神經(jīng)網(wǎng)絡概述 BP神經(jīng)網(wǎng)絡是一種多層前饋神經(jīng)網(wǎng)絡,由輸入層、隱藏層和輸出層組成。每個
    的頭像 發(fā)表于 07-03 10:19 ?349次閱讀

    反向傳播神經(jīng)網(wǎng)絡bp神經(jīng)網(wǎng)絡的區(qū)別

    反向傳播神經(jīng)網(wǎng)絡(Backpropagation Neural Network,簡稱BP神經(jīng)網(wǎng)絡)是一種多層前饋神經(jīng)網(wǎng)絡,它通過反向傳播算法來調整網(wǎng)
    的頭像 發(fā)表于 07-03 11:00 ?804次閱讀

    BP神經(jīng)網(wǎng)絡和人工神經(jīng)網(wǎng)絡的區(qū)別

    BP神經(jīng)網(wǎng)絡和人工神經(jīng)網(wǎng)絡(Artificial Neural Networks,簡稱ANNs)之間的關系與區(qū)別,是神經(jīng)網(wǎng)絡領域中一個基礎且重要的話題。本文將從定義、結構、算法、應用及
    的頭像 發(fā)表于 07-10 15:20 ?1067次閱讀

    BP神經(jīng)網(wǎng)絡和卷積神經(jīng)網(wǎng)絡的關系

    BP神經(jīng)網(wǎng)絡(Backpropagation Neural Network)和卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,簡稱CNN)是兩種在人工智能和機器學習領域
    的頭像 發(fā)表于 07-10 15:24 ?1508次閱讀