成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深度學(xué)習(xí)的三個主要步驟!

人工智能 深度學(xué)習(xí)
本文詳細介紹了使用深度學(xué)習(xí)技術(shù)的三大主要步驟:神經(jīng)網(wǎng)絡(luò)(Neural network),模型評估(Goodness of function),選擇最優(yōu)函數(shù)(Pick best function)。

 [[418456]]

本文來自 李宏毅機器學(xué)習(xí)筆記 (LeeML-Notes) 組隊學(xué)習(xí), 詳細介紹了使用深度學(xué)習(xí)技術(shù)的三大主要步驟。

教程地址:https://github.com/datawhalechina/leeml-notes

深度學(xué)習(xí)的三個步驟:

Step1:神經(jīng)網(wǎng)絡(luò)(Neural network)

Step2:模型評估(Goodness of function)

Step3:選擇最優(yōu)函數(shù)(Pick best function)

Step1:神經(jīng)網(wǎng)絡(luò)

神經(jīng)網(wǎng)絡(luò)是由很多單元連接而成,這些單元稱為神經(jīng)元。

神經(jīng)網(wǎng)絡(luò)類似于人類的神經(jīng)細胞,電信號在神經(jīng)元上傳遞,類似于數(shù)值在神經(jīng)網(wǎng)絡(luò)中傳遞的過程。

在這個神經(jīng)網(wǎng)絡(luò)里面,一個神經(jīng)元就相當(dāng)于一個邏輯回歸函數(shù),所以上圖中有很多邏輯回歸函數(shù),其中每個邏輯回歸都有自己的權(quán)重和自己的偏差,這些權(quán)重和偏差就是參數(shù)。

圖中紅框表示的就是神經(jīng)元,多個神經(jīng)元以不同的方式進行連接,就會構(gòu)成不同結(jié)構(gòu)神經(jīng)網(wǎng)絡(luò)。神經(jīng)元的連接方式是由人工設(shè)計的。

  • 神經(jīng)元:神經(jīng)元的結(jié)構(gòu),如圖所示

  1. 每個 輸入 乘以其對應(yīng)的 權(quán)重 ,將結(jié)果 求和 ,得到 ;

  2. 將和代入 激活函數(shù) ,得到結(jié)果 。

全連接前饋神經(jīng)網(wǎng)絡(luò)

全連接:每一個神經(jīng)元的輸出都連接到下一層神經(jīng)元的每一個神經(jīng)元,每一個神經(jīng)元的輸入都來自上一層的每一個神經(jīng)元。

前饋:前饋(feedforward)也可以稱為前向,從信號流向來理解就是輸入信號進入網(wǎng)絡(luò)后,信號流動是單向的,即信號從前一層流向后一層,一直到輸出層,其中任意兩層之間的連接并沒有反饋(feedback),亦即信號沒有從后一層又返回到前一層。

  • 全連接前饋神經(jīng)網(wǎng)絡(luò)示例:

如圖所示,這是一個4層的全連接神經(jīng)網(wǎng)絡(luò),每一層有兩個神經(jīng)元,每個神經(jīng)元的激活函數(shù)都是sigmoid。

  • 網(wǎng)絡(luò)輸入為(1, -1),激活函數(shù)為sigmoid:

  • 網(wǎng)絡(luò)輸入為(0, 0),激活函數(shù)為sigmoid:

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

Input Layer:網(wǎng)絡(luò)的輸入層,Layer的size和真實輸入大小匹配。

Hidden Layers:處于輸入層和輸出層之間的網(wǎng)絡(luò)層。

Output Layer:網(wǎng)絡(luò)的最后一層,神經(jīng)元計算產(chǎn)生的結(jié)果直接輸出,作為模型的輸出。

一些疑問

  • 為什么叫「 全連接 」?

    因為網(wǎng)絡(luò)中相鄰的兩層神經(jīng)元,前一層的每一個神經(jīng)元和后一層的每一個神經(jīng)元都有連接,所以叫做全連接;

  • 為什么叫「前饋」?

    因為值在網(wǎng)絡(luò)中傳遞的方向是由前往后傳(輸入層傳向輸出層),所以叫做Feedforward。

  • Deep Learning,“Deep”體現(xiàn)在哪里?

神經(jīng)網(wǎng)絡(luò)的連接方式由人工設(shè)計,所以可以堆疊很多層神經(jīng)元構(gòu)成很“深”網(wǎng)絡(luò),如上圖所示2015年提出的ResNet就達到了152層的深度。

深度神經(jīng)需要特殊的訓(xùn)練技巧

隨著層數(shù)變多,網(wǎng)絡(luò)參數(shù)增多,隨之運算量增大,通常都是超過億萬級的計算。對于這樣復(fù)雜的結(jié)構(gòu),我們一定不會一個一個的計算,對于億萬級的計算,使用loop循環(huán)效率很低。

網(wǎng)絡(luò)的運算過程如圖所示:

上圖中,網(wǎng)絡(luò)的運算過程可看作是矩陣的運算。

網(wǎng)絡(luò)的計算方法就像是嵌套,所以整個神經(jīng)網(wǎng)絡(luò)運算就相當(dāng)于一連串的矩陣運算。

從結(jié)構(gòu)上看每一層的計算都是一樣的,也就是用計算機進行并行矩陣運算。這樣寫成矩陣運算的好處是,你可以使用GPU加速,GPU核心多,可以并行做大量的矩陣運算。

神經(jīng)網(wǎng)絡(luò)的本質(zhì):通過隱藏層進行特征轉(zhuǎn)換

隱藏層可以看作是對網(wǎng)絡(luò)輸入層輸入特征進行特征處理,在最后一層隱藏層進行輸出,這時的輸出可以看作一組全新的特征,將其輸出給輸出層,輸出層對這組全新的特征進行分類。

舉例:手寫數(shù)字識別

舉一個手寫數(shù)字體識別的例子:

輸入:一個16*16=256維的向量,每個pixel對應(yīng)一個dimension,有顏色用(ink)用1表示,沒有顏色(no ink)用0表示,將圖片展平為一個256維的向量作為網(wǎng)絡(luò)輸入。

輸出:10個維度,每個維度代表一個數(shù)字的置信度(可理解為是該數(shù)字的概率有多大)

從輸出結(jié)果來看,每一個維度對應(yīng)輸出一個數(shù)字,代表模型輸出為當(dāng)前分類數(shù)字的概率。說明這張圖片是2的可能性就是最大的。

在這個問題中,唯一確定的就是,輸入是256維的向量,輸出是10維的向量,我們所需要找的函數(shù)就是輸入和輸出之間的神經(jīng)網(wǎng)絡(luò)這個函數(shù)。

從上圖看神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)決定了函數(shù)集(function set),通常來講函數(shù)集中的函數(shù)越多越復(fù)雜,網(wǎng)絡(luò)的表達空間就越大,越能handle復(fù)雜的模式,所以說網(wǎng)絡(luò)結(jié)構(gòu)(network structured)很關(guān)鍵。

接下來有幾個問題:

  • 多少層?每層有多少神經(jīng)元?這個問我們需要用嘗試加上直覺的方法來進行調(diào)試。對于有些機器學(xué)習(xí)相關(guān)的問題,我們一般用特征工程來提取特征,但是對于深度學(xué)習(xí),我們只需要設(shè)計神經(jīng)網(wǎng)絡(luò)模型來進行就可以了。對于語音識別和影像識別,深度學(xué)習(xí)是個好的方法,因為特征工程提取特征并不容易。

  • 結(jié)構(gòu)可以自動確定嗎?有很多設(shè)計方法可以讓機器自動找到神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)的,比如進化人工神經(jīng)網(wǎng)絡(luò)(Evolutionary Artificial Neural Networks)但是這些方法并不是很普及 。

  • 我們可以設(shè)計網(wǎng)絡(luò)結(jié)構(gòu)嗎?可以的,比如 CNN卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network )

Step2:模型評估

損失示例

對于模型的評估,我們一般采用損失函數(shù)來反應(yīng)模型的優(yōu)劣,所以對于神經(jīng)網(wǎng)絡(luò)來說,我們可以采用交叉熵(cross entropy)函數(shù)來對  和 ̂ 的損失進行計算,接下來我們就通過調(diào)整參數(shù),讓交叉熵越小越好。

總體損失

對于損失,我們不單單要計算一筆數(shù)據(jù)的,而是要計算整體所有訓(xùn)練數(shù)據(jù)的損失,然后把所有的訓(xùn)練數(shù)據(jù)的損失都加起來,得到一個總體損失 。接下來就是在functon set里面找到一組函數(shù)能最小化這個總體損失 ,或者是找一組神經(jīng)網(wǎng)絡(luò)的參數(shù) ,來最小化總體損失 。

Step3:選擇最優(yōu)函數(shù)

如何找到最優(yōu)的函數(shù)和最好的一組參數(shù)?

——使用梯度下降。

具體流程: 是一組包含權(quán)重和偏差的參數(shù)集合,隨機找一個初始值,接下來計算一下每個參數(shù)對應(yīng)的偏微分,得到的一個偏微分的集合∇ 就是梯度,有了這些偏微分,我們就可以更新梯度得到新的參數(shù),這樣不斷反復(fù)進行,就能得到一組參數(shù)使得損失函數(shù)的值最小。

反向傳播

在神經(jīng)網(wǎng)絡(luò)訓(xùn)練中,我們需要將計算得到的損失向前傳遞,以計算各個神經(jīng)元連接的權(quán)重對損失的影響大小,這里用到的方法就是反向傳播。我們可以用很多框架來進行計算損失,比如說TensorFlow,Pytorch,theano等。

思考題

為什么要用深度學(xué)習(xí),深層架構(gòu)帶來哪些好處?那是不是隱藏層越多越好?

隱藏層越多越好?

從圖中展示的結(jié)果看,毫無疑問,理論上網(wǎng)絡(luò)的層次越深效果越好,但現(xiàn)實中是這樣嗎?

普遍性定理

參數(shù)更多的模型擬合數(shù)據(jù)效果更好是很正常的。

有一個通用的理論:對于任何一個連續(xù)的函數(shù),都可以用足夠多的神經(jīng)元來表示。那為什么我們還需要深度(Deep)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)呢,是不是直接用一層包含很多神經(jīng)元的網(wǎng)絡(luò)(Fat)來表示就可以了?

責(zé)任編輯:張燕妮 來源: Datawhale
相關(guān)推薦

2022-07-15 15:56:51

云計算工具云中斷

2022-05-12 12:55:28

容器Kubernetes運行容器

2019-01-29 07:14:41

2022-10-12 14:33:15

數(shù)字化轉(zhuǎn)型網(wǎng)絡(luò)安全數(shù)據(jù)中心

2021-01-15 10:51:32

物聯(lián)網(wǎng)安全物聯(lián)網(wǎng)IOT

2023-03-19 17:24:43

2010-08-02 23:40:42

Linux NFS

2022-03-24 14:05:56

數(shù)字孿生IT領(lǐng)導(dǎo)者數(shù)據(jù)分析

2019-10-24 15:56:30

Kubernetes虛擬化云原生

2012-05-27 18:24:12

蘋果

2010-11-15 09:56:30

2022-04-15 09:30:00

Kubernetes云計算多云

2020-07-20 09:20:44

云計算云安全數(shù)據(jù)

2010-06-28 13:40:22

SNMP協(xié)議服務(wù)

2021-10-12 09:23:29

物聯(lián)網(wǎng)安全物聯(lián)網(wǎng)IOT

2009-08-03 13:43:02

C#日歷控件

2019-05-05 10:11:27

數(shù)據(jù)中心效率DCIM

2018-01-17 08:36:31

云存儲策略步驟

2022-04-02 09:00:00

GitOps開發(fā)團隊

2010-10-09 21:42:13

SNMP網(wǎng)絡(luò)安全
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成人精品视频在线 | 粉嫩一区二区三区性色av | 99草免费视频 | 日韩1区2区 | 永久精品| 国精日本亚洲欧州国产中文久久 | 久久久久国产一区二区三区四区 | 一区二区久久电影 | 亚洲人成人一区二区在线观看 | 国产欧美在线视频 | 女人毛片a毛片久久人人 | 99精品免费 | 亚洲成人精品久久久 | 亚洲一区二区在线播放 | 99精品一区二区三区 | 免费一级毛片 | 国产中文字幕在线 | 天天搞天天搞 | 成人自拍视频 | 天天爱爱网 | 一级片免费视频 | 99热在线免费 | 成人三级视频 | 福利网址 | 久久偷人| 国产精品久久久久久吹潮 | 五月婷婷丁香 | 亚洲免费在线 | 久久久精品一区二区三区四季av | 久久久久国产 | 一区二区三区精品视频 | 日韩中文欧美 | 99精品国自产在线 | 午夜欧美 | 亚洲一区二区三区免费 | 日韩在线不卡 | 91麻豆精品国产91久久久久久 | 精品国产一区二区三区免费 | 999精品视频 | 国产乱一区二区三区视频 | 免费欧美视频 |