自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

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

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

 [[418456]]

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

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

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

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

Step2:模型評(píng)估(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)細(xì)胞,電信號(hào)在神經(jīng)元上傳遞,類似于數(shù)值在神經(jīng)網(wǎng)絡(luò)中傳遞的過程。

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

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

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

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

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

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

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

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

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

如圖所示,這是一個(gè)4層的全連接神經(jīng)網(wǎng)絡(luò),每一層有兩個(gè)神經(jīng)元,每個(gè)神經(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和真實(shí)輸入大小匹配。

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

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

一些疑問

  • 為什么叫「 全連接 」?

    因?yàn)榫W(wǎng)絡(luò)中相鄰的兩層神經(jīng)元,前一層的每一個(gè)神經(jīng)元和后一層的每一個(gè)神經(jīng)元都有連接,所以叫做全連接;

  • 為什么叫「前饋」?

    因?yàn)橹翟诰W(wǎng)絡(luò)中傳遞的方向是由前往后傳(輸入層傳向輸出層),所以叫做Feedforward。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

接下來有幾個(gè)問題:

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

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

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

Step2:模型評(píng)估

損失示例

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

總體損失

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

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

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

——使用梯度下降。

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

反向傳播

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

思考題

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

隱藏層越多越好?

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

普遍性定理

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

有一個(gè)通用的理論:對(duì)于任何一個(gè)連續(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

云計(jì)算工具云中斷

2022-05-12 12:55:28

容器Kubernetes運(yùn)行容器

2022-10-12 14:33:15

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

2019-01-29 07:14:41

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

2019-10-24 15:56:30

Kubernetes虛擬化云原生

2022-03-24 14:05:56

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

2010-06-28 13:40:22

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

2010-11-15 09:56:30

2020-07-20 09:20:44

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

2021-10-12 09:23:29

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

2022-04-15 09:30:00

Kubernetes云計(jì)算多云

2009-08-03 13:43:02

C#日歷控件

2019-05-05 10:11:27

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

2010-09-29 16:04:54

Cisco IOS D

2018-01-17 08:36:31

云存儲(chǔ)策略步驟

2022-04-02 09:00:00

GitOps開發(fā)團(tuán)隊(duì)

2010-11-17 10:39:29

職場(chǎng)
點(diǎn)贊
收藏

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