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

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

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

3天內不再提示

深入了解神經網絡

人工智能君 ? 來源:人工智能君 ? 作者:人工智能君 ? 2022-07-08 10:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本章將介紹用于解決實際問題的深度學習架構的不同模塊。前一章使用PyTorch的低級操作構建了如網絡架構、損失函數和優化器這些模塊。本章將介紹用于解決真實問題的神經網絡的一些重要組件,以及PyTorch如何通過提供大量高級函數來抽象出復雜度。本章還將介紹用于解決真實問題的算法,如回歸、二分類、多類別分類等。
本章將討論如下主題:
?詳解神經網絡的不同構成組件;
?探究PyTorch中用于構建深度學習架構的高級功能;
?應用深度學習解決實際的圖像分類問題。
3.1詳解神經網絡的組成部分
上一章已經介紹了訓練深度學習算法需要的幾個步驟。
1.構建數據管道。
2.構建網絡架構。
3.使用損失函數評估架構。
4.使用優化算法優化網絡架構的權重。
上一章中的網絡由使用PyTorch數值運算構建的簡單線性模型組成。盡管使用數值運算為玩具性質的問題搭建神經架構很簡單,但當需要構建解決不同領域的復雜問題時,如計算機視覺和自然語言處理,構建一個架構就迅速變得復雜起來。大多數深度學習框架,如PyTorch、TensorFlow和Apache MXNet,都提供了抽象出很多復雜度的高級功能。這些深度學習框架的高級功能稱為層(layer)。它們接收輸入數據,進行如同在前面一章看到的各種變換,并輸出數據。解決真實問題的深度學習架構通常由1~150個層組成,有時甚至更多。抽象出低層的運算并訓練深度學習算法的過程如圖3.1所示。

poYBAGLHlGaAeEG8AAD5hFaFo4k373.png

圖3.1
3.1.1層——神經網絡的基本組成
在本章的剩余部分,我們會見到各種不同類型的層。首先,先了解其中最重要的一種層:線性層,它就是我們前面講過的網絡層結構。線性層應用了線性變換:
Y=Wx+b
線性層之所以強大,是因為前一章所講的功能都可以寫成單一的代碼行,如下所示。
上述代碼中的myLayer層,接受大小為10的張量作為輸入,并在應用線性變換后輸出一個大小為5的張量。下面是一個簡單例子的實現:
可以使用屬性weights和bias訪問層的可訓練參數:
線性層在不同的框架中使用的名稱有所不同,有的稱為dense層,有的稱為全連接層(fully connected layer)。用于解決真實問題的深度學習架構通常包含不止一個層。在PyTorch中,可以用多種方式實現。
一個簡單的方法是把一層的輸出傳入給另一層:
每一層都有自己的學習參數,在多個層的架構中,每層都學習出它本層一定的模式,其后的層將基于前一層學習出的模式構建。把線性層簡單堆疊在一起是有問題的,因為它們不能學習到簡單線性表示以外的新東西。我們通過一個簡單的例子看一下,為什么把線性層堆疊在一起的做法并不合理。
假設有具有如下權重的兩個線性層:
層 權重
Layer1 3.0
Layer2 2.0
以上包含兩個不同層的架構可以簡單表示為帶有另一不同層的單層。因此,只是堆疊多個線性層并不能幫助我們的算法學習任何新東西。有時,這可能不太容易理解,我們可以用下面的數學公式對架構進行可視化:
Y= 2(3X1) -2Linear layers
Y= 6(X1) -1Linear layers
為解決這一問題,相較于只是專注于線性關系,我們可以使用不同的非線性函數,幫助學習不同的關系。
深度學習中有很多不同的非線性函數。PyTorch以層的形式提供了這些非線性功能,因為可以采用線性層中相同的方式使用它們。
一些流行的非線性函數如下所示:
?sigmoid
?tanh
?ReLU
?Leaky ReLU
3.1.2非線性激活函數
非線性激活函數是獲取輸入,并對其應用數學變換從而生成輸出的函數。我們在實戰中可能遇到數個非線性操作。下面會講解其中幾個常用的非線性激活函數。
1.sigmoid
sigmoid激活函數的數學定義很簡單,如下:

pYYBAGLHlImAORw5AAAcERtbSOY338.png

簡單來說,sigmoid函數以實數作為輸入,并以一個0到1之間的數值作為輸出。對于一個極大的負值,它返回的值接近于0,而對于一個極大的正值,它返回的值接近于1。圖3.2所示為sigmoid函數不同的輸出。

poYBAGLHlHeAc0KjAABJ_t7RiYQ215.png

圖3.2
sigmoid函數曾一度被不同的架構使用,但由于存在一個主要弊端,因此最近已經不太常用了。當sigmoid函數的輸出值接近于0或1時,sigmoid函數前一層的梯度接近于0,由于前一層的學習參數的梯度接近于0,使得權重不能經常調整,從而產生了無效神經元。
2.tanh
非線性函數tanh將實數值輸出為-1到1之間的值。當tanh的輸出極值接近-1和1時,也面臨梯度飽和的問題。不過,因為tanh的輸出是以0為中心的,所以比sigmoid更受偏愛,如圖3.3所示。

pYYBAGLHlJ2AL8RjAABLvvoiKWw943.png

圖3.3
3.ReLU
近年來ReLU變得很受歡迎,我們幾乎可以在任意的現代架構中找到ReLU或其某一變體的身影。它的數學公式很簡單:
f(x)=max(0,x)
簡單來說,ReLU把所有負值取作0,正值保持不變。可以對ReLU函數進行可視化,如圖3.4所示。

poYBAGLHlKeAI2nYAABHxGJ09ns971.png

圖3.4
使用ReLU函數的一些好處和弊端如下。
?有助于優化器更快地找到正確的權重集合。從技術上講,它使隨機梯度下降收斂得更快。
?計算成本低,因為只是判斷了閾值,并未計算任何類似于sigmoid或tangent函數計算的內容。
?ReLU有一個缺點,即當一個很大的梯度進行反向傳播時,流經的神經元經常會變得無效,這些神經元稱為無效神經元,可以通過謹慎選擇學習率來控制。我們將在第4章中討論調整學習率的不同方式時,了解如何選擇學習率。
4.Leaky ReLU
Leaky ReLU嘗試解決一個問題死角,它不再將飽和度置為0,而是設為一個非常小的數值,如0.001。對某些用例,這一激活函數提供了相較于其他激活函數更優異的性能,但它不是連續的。

審核編輯 黃昊宇

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

    關注

    42

    文章

    4838

    瀏覽量

    107753
  • 人工智能
    +關注

    關注

    1817

    文章

    50094

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    神經網絡教程(李亞非)

      第1章 概述  1.1 人工神經網絡研究與發展  1.2 生物神經元  1.3 人工神經網絡的構成  第2章人工神經網絡基本模型  2.1 MP模型  2.2 感知器模型  2.3
    發表于 03-20 11:32

    labview BP神經網絡的實現

    是classes(層級嗎?),希望有前輩能夠詳細的幫我講解下這個范例!!!謝謝!!!!(本人已對BP神經網絡的理論知識有了了解
    發表于 02-22 16:08

    卷積神經網絡如何使用

    卷積神經網絡(CNN)究竟是什么,鑒于神經網絡在工程上經歷了曲折的歷史,您為什么還會在意它呢? 對于這些非常中肯的問題,我們似乎可以給出相對簡明的答案。
    發表于 07-17 07:21

    【案例分享】ART神經網絡與SOM神經網絡

    今天學習了兩個神經網絡,分別是自適應諧振(ART)神經網絡與自組織映射(SOM)神經網絡。整體感覺不是很難,只不過一些最基礎的概念容易理解不清。首先ART神經網絡是競爭學習的一個代表,
    發表于 07-21 04:30

    人工神經網絡實現方法有哪些?

    人工神經網絡(Artificial Neural Network,ANN)是一種類似生物神經網絡的信息處理結構,它的提出是為了解決一些非線性,非平穩,復雜的實際問題。那有哪些辦法能實現人工神經
    發表于 08-01 08:06

    卷積神經網絡原理及發展過程

    Top100論文導讀:深入理解卷積神經網絡CNN(Part Ⅰ)
    發表于 09-06 17:25

    如何構建神經網絡

    原文鏈接:http://tecdat.cn/?p=5725 神經網絡是一種基于現有數據創建預測的計算系統。如何構建神經網絡神經網絡包括:輸入層:根據現有數據獲取輸入的層隱藏層:使用反向傳播優化輸入變量權重的層,以提高模型的預測
    發表于 07-12 08:02

    基于BP神經網絡的PID控制

    最近在學習電機的智能控制,上周學習了基于單神經元的PID控制,這周研究基于BP神經網絡的PID控制。神經網絡具有任意非線性表達能力,可以通過對系統性能的學習來實現具有最佳組合的PID控制。利用BP
    發表于 09-07 07:43

    神經網絡移植到STM32的方法

    問題,一個是神經網絡的移植,另一個是STM32的計算速度。神經網絡的移植網絡采用的是最簡單的BP神經網絡,基本原理可以自己去了解一下,大概就
    發表于 01-11 06:20

    遷移學習

    神經網絡訓練方法卷積神經網絡介紹經典網絡結構介紹章節目標:深入了解神經網絡的組成、訓練和實現,掌握深度空間特征分布等關鍵概念,為深度遷移學習
    發表于 04-21 15:15

    機器學習簡介與經典機器學習算法人才培養

    神經網絡訓練方法卷積神經網絡介紹經典網絡結構介紹章節目標:深入了解神經網絡的組成、訓練和實現,掌握深度空間特征分布等關鍵概念,為深度遷移學習
    發表于 04-28 18:56

    卷積神經網絡模型發展及應用

    入了近二十年的停滯。1986 年到 1988 年是神經網絡模型發展的第二階段,稱為第二 代神經網絡模型。1986 年 Rumelhart 等人提出了誤 差反向傳播算法(back
    發表于 08-02 10:39

    卷積神經網絡CNN架構分析-LeNet

    對于神經網絡和卷積有了粗淺的了解,關于CNN 卷積神經網絡,需要總結深入的知識有很多:人工神經網絡 ANN卷積
    發表于 11-16 13:28 ?3124次閱讀
    卷積<b class='flag-5'>神經網絡</b>CNN架構分析-LeNet

    深度神經網絡與基本神經網絡的區別

    在探討深度神經網絡(Deep Neural Networks, DNNs)與基本神經網絡(通常指傳統神經網絡或前向神經網絡)的區別時,我們需要從多個維度進行
    的頭像 發表于 07-04 13:20 ?2848次閱讀

    BP神經網絡和人工神經網絡的區別

    BP神經網絡和人工神經網絡(Artificial Neural Networks,簡稱ANNs)之間的關系與區別,是神經網絡領域中一個基礎且重要的話題。本文將從定義、結構、算法、應用及未來發展等多個方面,詳細闡述BP
    的頭像 發表于 07-10 15:20 ?3280次閱讀