久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的?

 吳敬銳 2019-10-24

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

來(lái)源:towardsdatascience 編譯:Simons’Road

如今,,即便是結(jié)構(gòu)非常復(fù)雜的神經(jīng)網(wǎng)絡(luò),只要使用Keras,,TensorFlow,,MxNet或PyTorch等先進(jìn)的專(zhuān)業(yè)庫(kù)和框架,僅需幾行代碼就能輕松實(shí)現(xiàn),。而且,,你不需要擔(dān)心權(quán)重矩陣的參數(shù)大小,也不需要刻意記住要用到的激活函數(shù)公式,,這可以極大的避免我們走彎路并大大簡(jiǎn)化了建立神經(jīng)網(wǎng)絡(luò)的工作,。然而,我們還是需要對(duì)神經(jīng)網(wǎng)絡(luò)內(nèi)部有足夠的了解,,這對(duì)諸如網(wǎng)絡(luò)結(jié)構(gòu)選擇,、超參數(shù)調(diào)整或優(yōu)化等任務(wù)會(huì)有很大幫助。本文我們將會(huì)從數(shù)學(xué)角度來(lái)充分了解神經(jīng)網(wǎng)絡(luò)是如何工作的,。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖1. 訓(xùn)練集的可視化

如圖1所示,是一個(gè)典型的數(shù)據(jù)二分類(lèi)問(wèn)題,,兩類(lèi)的點(diǎn)分別形成了各自的圓,,這種數(shù)據(jù)分布對(duì)于許多傳統(tǒng)的機(jī)器學(xué)習(xí)算法來(lái)說(shuō)很難,,但對(duì)于輕量級(jí)的神經(jīng)網(wǎng)絡(luò)卻很容易勝任。為了解決該問(wèn)題,,我們將使用具有圖2所示結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),,包括五個(gè)全連接層,每層具有不同數(shù)量的單元,。對(duì)于隱藏層,,我們將使用ReLU作為其激活函數(shù),而使用Sigmoid作為輸出層,。 這是一個(gè)非常簡(jiǎn)單的結(jié)構(gòu),,但對(duì)于我們要解決的問(wèn)題而言卻已經(jīng)擁有足夠的能力了。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖2. 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

正如之前提到的,,只需幾行代碼便足以創(chuàng)建和訓(xùn)練一個(gè)模型,就能實(shí)現(xiàn)測(cè)試集中的分類(lèi)結(jié)果幾乎達(dá)到100%的準(zhǔn)確度,。而我們的任務(wù),就是為所選的網(wǎng)絡(luò)設(shè)定超參數(shù),,如層數(shù),、每層的神經(jīng)元數(shù)、激活函數(shù)和迭代次數(shù)等?,F(xiàn)在讓我們看一個(gè)很酷的可視化,,來(lái)看看學(xué)習(xí)過(guò)程究竟發(fā)生了什么。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖3. 訓(xùn)練過(guò)程可視化

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

讓我們首先回答這個(gè)關(guān)鍵問(wèn)題:什么是神經(jīng)網(wǎng)絡(luò)? 它是一種在生物學(xué)啟發(fā)下構(gòu)建計(jì)算機(jī)程序的方法,,能夠?qū)W習(xí)并找到數(shù)據(jù)中的聯(lián)系,。 如圖2所示,網(wǎng)絡(luò)是按層排列的“神經(jīng)元”的集合,,通過(guò)權(quán)重互聯(lián)互通的聯(lián)系在了一起形成網(wǎng)絡(luò),。

每個(gè)神經(jīng)元接收一組編號(hào)從1到n 的x值作為輸入,用來(lái)計(jì)算預(yù)測(cè)的y(^)值,。向量x實(shí)際上包含來(lái)自訓(xùn)練集的m個(gè)樣本之一的特征值,。比較重要的是,每個(gè)神經(jīng)元都有自己的一組參數(shù),,通常稱(chēng)為w(權(quán)重列向量)和b(偏差),,它們會(huì)學(xué)習(xí)過(guò)程中發(fā)生變化。每次迭代中,,神經(jīng)元基于其當(dāng)前權(quán)重向量w來(lái)計(jì)算輸入向量x加權(quán)平均后的值并加上偏置b,。最后,,該計(jì)算結(jié)果會(huì)通過(guò)非線性激活函數(shù)g,本文的后面部分會(huì)提及一些最常用的激活函數(shù),。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖4. 單個(gè)神經(jīng)元

我們已經(jīng)對(duì)單個(gè)神經(jīng)元的工作有所了解了,下面讓我們?cè)偕钊雽W(xué)習(xí)一下如何對(duì)整個(gè)神經(jīng)網(wǎng)絡(luò)層進(jìn)行計(jì)算,,并將所有圖進(jìn)行向量化,,最后將計(jì)算合并到矩陣方程中。 為了統(tǒng)一符號(hào),,方程中[l]表示為所選層,,下標(biāo)表示該層中神經(jīng)元的索引。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖5 單層

對(duì)單個(gè)單元而言,,我們使用x和y(^)分別表示特征列向量和預(yù)測(cè)值。然后使用向量a表示相應(yīng)的層,,而向量x對(duì)應(yīng)層0的輸入,,即輸入層。層中的每個(gè)神經(jīng)元根據(jù)以下等式執(zhí)行計(jì)算:

為了清楚起見(jiàn),,以第2層為例展開(kāi):

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

如您所見(jiàn),對(duì)于每層我們都必須執(zhí)行類(lèi)似操作,,那么使用for循環(huán)效率就會(huì)不高,。為了加快計(jì)算速度,我們將使用向量化的方法,。 首先,,通過(guò)將轉(zhuǎn)置后的權(quán)重w行向量堆疊在一起就 構(gòu)建得到矩陣W. 類(lèi)似地,我們將層中的每個(gè)神經(jīng)元的偏置堆疊在一起,,從而得到列向量b,。 這樣我們就能構(gòu)建出一個(gè)矩陣方程,能夠一次便對(duì)層中所有神經(jīng)元進(jìn)行計(jì)算,。下面我們寫(xiě)下使用的矩陣和向量的維數(shù),。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的?

到目前為止,,得到的方程只適用于這一個(gè)例子,。 在神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程中,您通常使用大量數(shù)據(jù),,最多可達(dá)數(shù)百萬(wàn)條,。因此,下一步要做的將是跨多個(gè)示例的矢量化。 假設(shè)我們的數(shù)據(jù)集包含m個(gè)示例,,每個(gè)示例都具有nx特征,。首先,我們將每層的列向量x,,a和z組合在一起,,分別創(chuàng)建X,A和Z矩陣,,然后我們重寫(xiě)先前的方程,。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的?

激活函數(shù)

激活函數(shù)是神經(jīng)網(wǎng)絡(luò)的關(guān)鍵元素之一,。沒(méi)有它們,,我們的神經(jīng)網(wǎng)絡(luò)只能成為線性函數(shù)的組合,就只能具備有限的擴(kuò)展性,,也不會(huì)擁有超越邏輯回歸的強(qiáng)大能力,。引入非線性元素則會(huì)使得學(xué)習(xí)過(guò)程中擁有更大的靈活性和創(chuàng)建復(fù)雜表示的功能。 激活函數(shù)也會(huì)對(duì)學(xué)習(xí)速度產(chǎn)生重大影響,,這也是主要的選擇標(biāo)準(zhǔn)之一,。下圖6中,顯示了一些常用的激活函數(shù),。目前,,最受歡迎的隱藏層可能是ReLU。但如果我們要處理二分類(lèi)問(wèn)題時(shí),,尤其是我們希望從模型返回的值在0到1的范圍內(nèi)時(shí),我們有時(shí)仍然使用sigmoid激活函數(shù),。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖6.目前最流行的激活函數(shù)及其衍生的圖解

損失函數(shù)

我們主要通過(guò)損失函數(shù)的值來(lái)觀察學(xué)習(xí)過(guò)程的進(jìn)展。一般來(lái)說(shuō),,損失函數(shù)旨在顯示我們與“理想”解決方案的距離,。在本文的例子中,我們使用二進(jìn)制交叉熵作為損失函數(shù),,但根據(jù)不同的問(wèn)題可以應(yīng)用不同的函數(shù),。本文使用的函數(shù)由下列公式描述,并且在學(xué)習(xí)過(guò)程中其值的變化過(guò)程可視化顯示在圖7中,,顯示了損失函數(shù)如何隨迭代次數(shù)而準(zhǔn)確度逐漸提高,。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的?

圖7.學(xué)習(xí)過(guò)程中準(zhǔn)確度和損失函數(shù)值的變化

神經(jīng)網(wǎng)絡(luò)是如何學(xué)習(xí)的,?

整個(gè)學(xué)習(xí)過(guò)程是圍繞如何調(diào)整參數(shù)W和b使得損失函數(shù)最小化進(jìn)行的,。為了實(shí)現(xiàn)這一目標(biāo),我們將結(jié)合微積分并使用梯度下降法來(lái)找到函數(shù)最小值,。在每次迭代中,,相對(duì)于神經(jīng)網(wǎng)絡(luò)的每個(gè)參數(shù)計(jì)算損失函數(shù)對(duì)應(yīng)的偏導(dǎo)數(shù)值,。導(dǎo)數(shù)具備很好的描述函數(shù)斜率的能力。通過(guò)可視化,,我們可以清楚地看到梯度下降是如何改變參數(shù)變量使得目標(biāo)函數(shù)的值在圖中向下移動(dòng),。如圖8所示,可以看到每次成功的迭代都朝著最小值點(diǎn)方向進(jìn)行,。在我們的神經(jīng)網(wǎng)絡(luò)中,,它以相同的方式工作,每次迭代時(shí)計(jì)算的梯度代表應(yīng)該移動(dòng)的方向,。主要區(qū)別在于,,在我們的神經(jīng)網(wǎng)絡(luò)范例中,我們有更多的參數(shù)需要操作,。因此變得更為復(fù)雜,,那么究竟怎樣才能計(jì)算出最優(yōu)參數(shù)呢?

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖8. 模型訓(xùn)練中的梯度下降

這時(shí)候我們就需要引入計(jì)算最優(yōu)參數(shù)的算法——反向傳播(BP),,它允許我們計(jì)算一個(gè)非常復(fù)雜的梯度,也正是我們需要的,。根據(jù)以下公式來(lái)調(diào)整神經(jīng)網(wǎng)絡(luò)的參數(shù),。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的?

在上面的等式中,,α表示學(xué)習(xí)率,,這個(gè)超參數(shù)可以自定義調(diào)整。選擇合適的學(xué)習(xí)率是至關(guān)重要的,,如果我們將其設(shè)置得太低,,那么我們的神經(jīng)網(wǎng)絡(luò)會(huì)學(xué)習(xí)得非常慢,如果設(shè)置得太高那么損失函數(shù)就不會(huì)到達(dá)最小值了,。 dW和db分別是W和b相對(duì)于損失函數(shù)的偏導(dǎo)數(shù),,可以上述公式推導(dǎo)而的。 dW和db的尺寸也是分別和W和b對(duì)應(yīng)的,。圖9顯示了神經(jīng)網(wǎng)絡(luò)中的操作順序,,我們可以清楚地看到前向傳播和反向傳播是如何協(xié)同工作以優(yōu)化損失函數(shù)的。

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

圖9. 前向傳播和反向傳播

通過(guò)前向傳播的預(yù)測(cè)和反向傳播糾正信號(hào),,就能不斷的根據(jù)數(shù)據(jù)來(lái)調(diào)整網(wǎng)絡(luò),最終實(shí)現(xiàn)了神經(jīng)網(wǎng)絡(luò)從數(shù)據(jù)中學(xué)習(xí)的能力,。

在使用神經(jīng)網(wǎng)絡(luò)時(shí),,至少要了解內(nèi)部運(yùn)行過(guò)程的基礎(chǔ)知識(shí)才能得心應(yīng)手。盡管在本文中提到了一些比較重要的知識(shí),但這僅僅是冰山一角,。 如果希望深入理解神經(jīng)網(wǎng)絡(luò)的運(yùn)行機(jī)理,,請(qǐng)使用像Numpy一樣的基礎(chǔ)工具來(lái)編寫(xiě)一個(gè)自己的小型神經(jīng)網(wǎng)絡(luò)吧!你會(huì)得到想不到的收獲,!

-The End-

將門(mén)是一家以技術(shù)創(chuàng)新為切入口的早期創(chuàng)新發(fā)掘機(jī)構(gòu),,旗下設(shè)有將門(mén)創(chuàng)新服務(wù)、將門(mén)技術(shù)社群以及將門(mén)投資基金,。

將門(mén)創(chuàng)新服務(wù)專(zhuān)注于使創(chuàng)新的技術(shù)落地于真正的應(yīng)用場(chǎng)景,,激活和實(shí)現(xiàn)全新的商業(yè)價(jià)值,服務(wù)于行業(yè)領(lǐng)先企業(yè)和技術(shù)創(chuàng)新型創(chuàng)業(yè)公司,。

將門(mén)技術(shù)社群專(zhuān)注于幫助技術(shù)創(chuàng)新型的創(chuàng)業(yè)公司提供來(lái)自產(chǎn),、學(xué)、研,、創(chuàng)領(lǐng)域的核心技術(shù)專(zhuān)家的技術(shù)分享和學(xué)習(xí)內(nèi)容,,使創(chuàng)新成為持續(xù)的核心競(jìng)爭(zhēng)力。

將門(mén)投資基金專(zhuān)注于投資通過(guò)技術(shù)創(chuàng)新激活商業(yè)場(chǎng)景,,實(shí)現(xiàn)商業(yè)價(jià)值的初創(chuàng)企業(yè),,關(guān)注技術(shù)領(lǐng)域包括機(jī)器智能、物聯(lián)網(wǎng),、自然人機(jī)交互,、企業(yè)計(jì)算。在兩年的時(shí)間里,,將門(mén)投資基金已經(jīng)投資了包括量化派,、碼隆科技、禾賽科技,、寬拓科技,、杉數(shù)科技、迪英加科技等數(shù)十家具有高成長(zhǎng)潛力的技術(shù)型創(chuàng)業(yè)公司,。

如果您是技術(shù)領(lǐng)域的初創(chuàng)企業(yè),不僅想獲得投資,,還希望獲得一系列持續(xù)性,、有價(jià)值的投后服務(wù),歡迎發(fā)送或者推薦項(xiàng)目給我“門(mén)”: [email protected]

從數(shù)學(xué)角度看神經(jīng)網(wǎng)絡(luò)是如何工作的,?

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多