免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
深度神經(jīng)網(wǎng)絡(luò)、激活函數(shù)、梯度下降、反向傳播等概念的快速理解

TensorFlow 深度學(xué)習(xí)讀寫(xiě)筆記

Python搭建開(kāi)發(fā)環(huán)境-Anaconda+PyCharm的安裝和入門(mén)教程

Jupyter Notebook神器-免費(fèi)體驗(yàn)來(lái)自微軟的Azure Notebook

Windows 10 本地搭建TensorFlow(CPU版本)深度學(xué)習(xí)環(huán)境

主流深度學(xué)習(xí)框架-MXNet、Caffe、TensorFlow、Torch、Theano

機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)算法比較

TensorFlow 的計(jì)算模型、數(shù)據(jù)模型和運(yùn)行模型

Windows下的Jupyter Notebook 安裝與自定義啟動(dòng)(圖文詳解)

結(jié)合TensorFlow Playground理解神經(jīng)網(wǎng)絡(luò)的主要功能

TensorFlow讀書(shū)筆記:使用placeholder填充方式讀取數(shù)據(jù)

記錄TensorFlow訓(xùn)練過(guò)程中數(shù)據(jù)變化趨勢(shì)-weight、bias、loss等

記錄TensorFlow訓(xùn)練過(guò)程中數(shù)據(jù)變化趨勢(shì)-直方圖(Histogram)

本文主要介紹深度神經(jīng)網(wǎng)絡(luò)的基本概念,包括激活函數(shù)、梯度下降算法、反向傳播算法和損失函數(shù)的概念,以及部分計(jì)算公式,省略了具體的推導(dǎo)公式。

深度神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)和思想

神經(jīng)網(wǎng)絡(luò)的基本單位是神經(jīng)元,每個(gè)神經(jīng)元分別接受輸入和輸出,但與感知器(perceptron)不同的是,除了進(jìn)行加權(quán)計(jì)算,還需要利用激活函數(shù)輸出。

網(wǎng)絡(luò)的最左邊一層被稱為輸入層,其中的神經(jīng)元被稱為輸入神經(jīng)元。

最右邊及輸出層包含輸出神經(jīng)元。

中間層被稱為隱含層,因?yàn)槔锩娴纳窠?jīng)元既不是輸入也不是輸出。下面的4層網(wǎng)絡(luò)具有2個(gè)隱含層。

神經(jīng)網(wǎng)絡(luò)的基本思想就是建立在感知器和激活函數(shù)上的。對(duì)于多個(gè)輸入,在神經(jīng)網(wǎng)絡(luò)經(jīng)過(guò)多個(gè)神經(jīng)元計(jì)算之后,得到多個(gè)或者單個(gè)輸出。檢查輸出結(jié)果是否與期望的一致,如果不一致,就對(duì)神經(jīng)網(wǎng)絡(luò)中神經(jīng)元的權(quán)重進(jìn)行調(diào)整,我們已經(jīng)知道,神經(jīng)元權(quán)重的細(xì)微調(diào)整會(huì)引起輸出結(jié)果的細(xì)微變化,這樣多個(gè)神經(jīng)元組合起來(lái),逐漸調(diào)整,直到符合預(yù)期的輸出結(jié)果,我們就可以認(rèn)為神經(jīng)網(wǎng)絡(luò)訓(xùn)練成功了!這里所說(shuō)的訓(xùn)練調(diào)整的方法,利用到了梯度下降法,對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行反向傳播。

對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程,就是不斷調(diào)整網(wǎng)絡(luò)中w和b的值,目標(biāo)是整個(gè)網(wǎng)絡(luò)表現(xiàn)出我們想要的行為。

激活函數(shù)的理論解釋

激活函數(shù)是用來(lái)加入非線性因素的,解決線性模型所不能解決的問(wèn)題。

激活函數(shù)用來(lái)對(duì)前面計(jì)算得到的結(jié)果做一個(gè)非線性計(jì)算,這樣,人工神經(jīng)網(wǎng)絡(luò)的表現(xiàn)力會(huì)更好。

常見(jiàn)的激活函數(shù)有:sigmoid, tanh, relu 以及它們的變種。

神經(jīng)元節(jié)點(diǎn) a的值,可以寫(xiě)成向量的形式:

再將每個(gè)節(jié)點(diǎn)的值的計(jì)算公式都整合在一起,寫(xiě)成矩陣運(yùn)算的方式:

神經(jīng)網(wǎng)絡(luò)中的一層,就是對(duì)數(shù)據(jù)的一次非線性映射。

Wx+B 實(shí)現(xiàn)了對(duì)輸入數(shù)據(jù)的范圍轉(zhuǎn)換、空間旋轉(zhuǎn)以及平移操作,而非線性的激活函數(shù)f()則完成了對(duì)輸入數(shù)據(jù)原始空間的扭曲。

當(dāng)網(wǎng)絡(luò)層數(shù)變多時(shí),在前面層網(wǎng)絡(luò)已經(jīng)學(xué)習(xí)到初步特征的基礎(chǔ)上,后面層網(wǎng)絡(luò)可以形成更加高級(jí)的特征,對(duì)原始空間的扭曲也更大。很多復(fù)雜的任務(wù)需要高度的非線性的分界面,深度更深的網(wǎng)絡(luò)可以比淺層的神經(jīng)網(wǎng)絡(luò)有更好的表達(dá)。

梯度下降算法原理

梯度下降方法是常用的參數(shù)優(yōu)化方法,經(jīng)常被用在神經(jīng)網(wǎng)絡(luò)中的參數(shù)更新過(guò)程中。

神經(jīng)網(wǎng)絡(luò)中,將樣本中的輸入X和輸出Y當(dāng)做已知值(對(duì)于一個(gè)樣本[X,Y],其中X和Y分別是標(biāo)準(zhǔn)的輸入值和輸出值,X輸入到模型中計(jì)算得到Y(jié),但是模型中的參數(shù)值我們并不知道,所以我們的做法是隨機(jī)初始化模型的參數(shù),不斷更新迭代這些參數(shù),使得模型的輸出與Y接近),將連接權(quán)(weight)和偏置值(bias)當(dāng)做自變量,誤差L(loss 損失函數(shù)的值)作為因變量。

梯度下降的目的是找到全部連接權(quán)和偏置值在取何值的情況下誤差最小。

經(jīng)常有人把梯度下降的過(guò)程比作從山頂走到谷底,一次走多遠(yuǎn)比作“學(xué)習(xí)率(Learning Rate)”。那么,它的數(shù)學(xué)表現(xiàn)形式是什么呢?

這就是梯度下降算法的迭代公式,當(dāng)梯度下降為零時(shí),w、b收斂,訓(xùn)練結(jié)束。

其中 α 是學(xué)習(xí)率(Learing Rate);另外兩個(gè)分別是損失函數(shù)對(duì)W和b的偏導(dǎo)數(shù)。

用來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)的反向傳播算法是梯度下降法,它需要計(jì)算損失函數(shù)對(duì)眾多權(quán)重(weight)和偏置值(bias)的偏導(dǎo)數(shù)。

反向傳播算法

(1)殘差δ定義:損失函數(shù)對(duì)神經(jīng)元節(jié)點(diǎn)v 偏導(dǎo)數(shù)。

利用殘差可以以統(tǒng)一的形式表示各層節(jié)點(diǎn)的連接權(quán)和偏置值的迭代公式。

計(jì)算損失函數(shù)對(duì)權(quán)值 w 和 b 的偏導(dǎo)數(shù),可以轉(zhuǎn)換為計(jì)算每一層每個(gè)節(jié)點(diǎn)的“殘差”。

最后一層的殘差計(jì)算公式(省去推導(dǎo)過(guò)程):

即輸出層的第 i 個(gè)節(jié)點(diǎn)的殘差為:(該點(diǎn)的激活值a-該點(diǎn)的真實(shí)值y)*該點(diǎn)激活函數(shù)f() 對(duì)該點(diǎn)值(v)的導(dǎo)數(shù)。

對(duì)于第K-1層的殘差,可以根第K層的殘差計(jì)算出來(lái)。

倒數(shù)第二層的第 i 個(gè)節(jié)點(diǎn)的殘差的值,等于最后一層所有節(jié)點(diǎn)的殘差值和連接此節(jié)點(diǎn)的權(quán)值 w 相乘之后的累加,再乘以此節(jié)點(diǎn)上的激活函數(shù)對(duì)它的導(dǎo)數(shù)值。

不斷地重復(fù)這個(gè)過(guò)程,就得到了K-3, K-4, K-5,…2層上所有節(jié)點(diǎn)的殘差值。

(2)基于殘差,求偏導(dǎo)數(shù),計(jì)算更新值

在計(jì)算所有節(jié)點(diǎn)上的殘差之后,就可以根據(jù)公式得到損失函數(shù)對(duì)所有W和b的偏導(dǎo)數(shù):

獲得偏導(dǎo)數(shù)計(jì)算結(jié)果之后,在利用下面的公式對(duì)參數(shù)W和b進(jìn)行更新。

如果多個(gè)樣本作為一個(gè)分組進(jìn)行訓(xùn)練,則將W和b的偏導(dǎo)數(shù)做累加求平均后,再更新參數(shù)值:

(3)反向傳播算法的思路

  • 給定一個(gè)樣本 (x, y) ,我們首先隨機(jī)初始化網(wǎng)絡(luò)中參數(shù)W 和 b 接近0的隨機(jī)值,然后進(jìn)行“前向計(jì)算”。從輸入層開(kāi)始,根據(jù)公式逐層計(jì)算神經(jīng)網(wǎng)絡(luò)中所有節(jié)點(diǎn)的激活值,包括最終輸出層的輸出。
  • 對(duì)于每一層節(jié)點(diǎn),計(jì)算其“殘差” δ,其含義是該節(jié)點(diǎn)的值對(duì)最終輸出層的結(jié)果和真實(shí)值的偏差造成了多大的影響。
  • 反向傳播就是從最后一層開(kāi)始,一層一層往前計(jì)算每一層神經(jīng)元的殘差值。
  • 根據(jù)殘差值計(jì)算損失函數(shù)對(duì)權(quán)值W和b的偏導(dǎo)數(shù),然后根據(jù)一定的學(xué)習(xí)率(Learning Rate)更新參數(shù)W和b的值。

損失函數(shù)(Loss Function)

損失函數(shù)有很多種,可以根據(jù)使用場(chǎng)景選擇不同的損失函數(shù)。最簡(jiǎn)單的情況是可以使用兩個(gè)值的差的絕對(duì)值作為損失函數(shù)。

總之,損失函數(shù)用于衡量預(yù)測(cè)值與實(shí)際值的偏離程度,損失值越小表示預(yù)測(cè)值越接近真實(shí)值。如果預(yù)測(cè)是完全精確的,則損失值為0;如果損失值不為0,則表示預(yù)測(cè)和真實(shí)值不一致。損失值越大,表示差的越遠(yuǎn)。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
人工智能神經(jīng)網(wǎng)絡(luò)中的基礎(chǔ)概念有哪些?
[DL學(xué)習(xí)筆記](méi)從人工神經(jīng)網(wǎng)絡(luò)到卷積神經(jīng)網(wǎng)絡(luò)
一文讀懂神經(jīng)網(wǎng)絡(luò)(附解讀&案例)
人工神經(jīng)網(wǎng)絡(luò)ANN的一些概念的集合
干貨|神經(jīng)網(wǎng)絡(luò)及理解反向傳播
神經(jīng)網(wǎng)絡(luò)簡(jiǎn)易教程
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服