一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內不再提示

從零開始建立一個神經網絡

倩倩 ? 來源:AI中國 ? 2020-04-17 15:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

動機:為了更好的理解深度學習,作者決定從零開始建立一個神經網絡,而不是像TensorFlow這樣的深度學習庫。相信理解神經網絡的內部工作對于任何有抱負的數(shù)據(jù)科學家來說都是很重要的。

什么是神經網絡?

大多數(shù)介紹神經網絡的文章在描述它們時會涉及到大腦類比,在不深入研究大腦類比的情況下,將神經網絡簡單描述為將固定數(shù)值映射到期望輸出的數(shù)學函數(shù)理解起來更容易。

神經網絡由以下部分組成:

輸入層,x

任意數(shù)量的隱藏層

輸出層,?

每層W和B之間的一組權重和偏差

為每個隱藏層選擇激活函數(shù)σ。在本教程中,我們將使用Sigmoid激活函數(shù)。

下圖顯示了2層神經網絡的體系結構(請注意,在計算神經網絡中的層數(shù)時通常會排除輸入層)

2層神經網絡的體系結構

Python創(chuàng)建一個神經網絡類很容易。

神經網絡訓練

簡單的2層神經網絡的輸出是:

您可能會注意到,在上面的等式中,權重W和偏差b是影響?的唯一變量。

當然,權重和偏差的正確度決定了預測的準確性。從輸入數(shù)據(jù)中微調權重和偏差的過程稱為神經網絡訓練。

訓練過程的每次迭代包含以下步驟:

計算預測輸出?,稱為前饋

更新權重和偏差,稱為反向傳播

下圖為過程順序圖。

前饋

正如我們在上面的順序圖中看到的,前饋只是一個簡單的演算,對于基本的2層神經網絡,神經網絡的輸出是:

可以在python代碼中添加一個前饋函數(shù)來做到這一點。簡單起見,使假設偏差為0。

然而,仍然需要一種方法來評估我們預測達到什么程度,損失函數(shù)可以做到這一點。

損失函數(shù)

損失函數(shù)有很多種,問題的性質決定該選擇哪種損失函數(shù)。在本教程中,作者將使用一個簡單的sqaures偏差作為損失函數(shù)。

也就是說,平方和誤差僅僅是每個預測值和實際值之差的平均值。因為差值被平方,所以要測量差值的絕對值。

作者的訓練目標是找到最佳的權重和偏差集合,以最大限度地減少損失函數(shù)。

反向傳播

現(xiàn)在作者已經測量了預測誤差,需要找到一種方法來傳播誤差,并更新權重和偏差。

為了適當?shù)恼{整權重和偏差,需要知道損失函數(shù)關于權重和偏差的導數(shù)。

可以從演算中得知,函數(shù)的導數(shù)就是函數(shù)的斜率。

梯度下降算法

如果有導數(shù),可以簡單地通過增加/減少更新權重和偏差(參見上圖)。這被稱為梯度下降。

然而,我們不能直接計算損失函數(shù)的權重和偏差,因為損失函數(shù)的方程不包含權重和偏差。因此,我們需要鏈式規(guī)則來計算它。

鏈式規(guī)則用于計算損失函數(shù)相對于權重的導數(shù)。簡單起見,只顯示了假設1層神經網絡的偏導數(shù)

得到相對于權重的損失函數(shù)的導數(shù)(斜率),以便適當調整權重。

現(xiàn)在,將反向傳播函數(shù)添加到Python代碼中。

為了深入理解演算的應用和反向傳播中的鏈式規(guī)則,作者強烈推薦3Blue1Brown撰寫教程。

結合在一起

現(xiàn)在已經有了完整的python代碼來做前饋和反向傳播,將神經網絡應用于一個例子上,來看看它的完成度。

神經網絡應該學習理想的權重集合來表示這個函數(shù)。注意,通過檢查來計算權重并不是不重要的。

來看看訓練神經網絡進行1500次迭代后會發(fā)生什么。查看下面每個迭代圖的損失,可以清楚地看到損耗單調遞減到最小。這與之前的梯度下降算法一致。

1500次迭代后神經網絡的最終預測(輸出)。

從上圖可以看出前饋和后向傳播算法成功地訓練了神經網絡,并且預測與實際值相差不大。

請注意,預測和實際值之間可以存在細微的差異。因為它可以防止過擬合,使神經網絡更好地歸納看不見的數(shù)據(jù)。

下一步是什么?

幸運的是,關于神經網絡和深度學習還有很多需要了解的內容。例如:

除了Sigmoid函數(shù),還可以使用哪些激活函數(shù)?

訓練神經網絡時的學習率

利用卷積進行圖像分類任務

最后的想法

作者從頭開始學習了神經網絡。

盡管TensorFlow和Keras等深度學習庫可以在不完全了解神經網絡的內部工作的情況下輕松構建深度網絡,但有抱負的數(shù)據(jù)科學家可以更深入地了解神經網絡。

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

    關注

    42

    文章

    4814

    瀏覽量

    103496
  • 函數(shù)
    +關注

    關注

    3

    文章

    4379

    瀏覽量

    64773
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    低功耗+AI識別:基于樹莓派的 LoRa 神經網絡安防系統(tǒng)!

    這篇博客展示了如何使用樹莓派上的神經網絡USB插件來檢測或“推斷”一個人的位置,從而構建安全系統(tǒng)。Arduino型接收器從零開始構建,通
    的頭像 發(fā)表于 06-24 16:24 ?987次閱讀
    低功耗+AI識別:基于樹莓派的 LoRa <b class='flag-5'>神經網絡</b>安防系統(tǒng)!

    BP神經網絡與卷積神經網絡的比較

    BP神經網絡與卷積神經網絡在多個方面存在顯著差異,以下是對兩者的比較: 、結構特點 BP神經網絡 : BP神經網絡
    的頭像 發(fā)表于 02-12 15:53 ?646次閱讀

    BP神經網絡的優(yōu)缺點分析

    BP神經網絡(Back Propagation Neural Network)作為種常用的機器學習模型,具有顯著的優(yōu)點,同時也存在些不容忽視的缺點。以下是對BP神經網絡優(yōu)缺點的分析
    的頭像 發(fā)表于 02-12 15:36 ?905次閱讀

    什么是BP神經網絡的反向傳播算法

    神經網絡(即反向傳播神經網絡)的核心,它建立在梯度下降法的基礎上,是種適合于多層神經元網絡的學習算法。該算法通過計算每層
    的頭像 發(fā)表于 02-12 15:18 ?757次閱讀

    BP神經網絡與深度學習的關系

    ),是種多層前饋神經網絡,它通過反向傳播算法進行訓練。BP神經網絡由輸入層、或多個隱藏層和輸出層組成,通過逐層遞減的方式調整
    的頭像 發(fā)表于 02-12 15:15 ?846次閱讀

    BP神經網絡的基本原理

    BP神經網絡(Back Propagation Neural Network)的基本原理涉及前向傳播和反向傳播兩核心過程。以下是關于BP神經網絡基本原理的介紹: 、
    的頭像 發(fā)表于 02-12 15:13 ?837次閱讀

    深度學習入門:簡單神經網絡的構建與實現(xiàn)

    深度學習中,神經網絡是核心模型。今天我們用 Python 和 NumPy 構建簡單的神經網絡神經網絡由多個
    的頭像 發(fā)表于 01-23 13:52 ?518次閱讀

    人工神經網絡的原理和多種神經網絡架構方法

    在上篇文章中,我們介紹了傳統(tǒng)機器學習的基礎知識和多種算法。在本文中,我們會介紹人工神經網絡的原理和多種神經網絡架構方法,供各位老師選擇。 01 人工神經網絡 ? 人工
    的頭像 發(fā)表于 01-09 10:24 ?1177次閱讀
    人工<b class='flag-5'>神經網絡</b>的原理和多種<b class='flag-5'>神經網絡</b>架構方法

    卷積神經網絡與傳統(tǒng)神經網絡的比較

    神經網絡,也稱為全連接神經網絡(Fully Connected Neural Networks,F(xiàn)CNs),其特點是每層的每個神經元都與下
    的頭像 發(fā)表于 11-15 14:53 ?1848次閱讀

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

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

    LSTM神經網絡的結構與工作機制

    的結構與工作機制的介紹: 、LSTM神經網絡的結構 LSTM神經網絡的結構主要包括以下幾個部分: 記憶單元(Memory Cell) : 記憶單元是LSTM網絡的核心,負責在整個序列
    的頭像 發(fā)表于 11-13 10:05 ?1622次閱讀

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

    神經網絡(RNN) RNN的基本結構 RNN是種特殊的神經網絡,它能夠處理序列數(shù)據(jù)。在RNN中,每個時間步的輸入都會通過循環(huán)結構傳遞到
    的頭像 發(fā)表于 11-13 09:58 ?1194次閱讀

    關于卷積神經網絡,這些概念你厘清了么~

    必須通過決策閾值做出決定。 另一個區(qū)別是AI并不依賴固定的規(guī)則,而是要經過訓練。訓練過程需要將大量貓的圖像展示給神經網絡以供其學習。最終,神經網絡將能夠獨立識別圖像中是否有貓。關鍵的
    發(fā)表于 10-24 13:56

    matlab 神經網絡 數(shù)學建模數(shù)值分析

    matlab神經網絡 數(shù)學建模數(shù)值分析 精通的可以討論下
    發(fā)表于 09-18 15:14

    如何構建多層神經網絡

    構建多層神經網絡(MLP, Multi-Layer Perceptron)模型是在機器學習和深度學習領域廣泛使用的技術,尤其在處理分類和回歸問題時。在本文中,我們將深入探討如何從頭開始
    的頭像 發(fā)表于 07-19 17:19 ?1545次閱讀