批量,即Batch,是深度學(xué)習(xí)中的一個(gè)重要概念。批量通常指兩個(gè)不同的概念——如果對(duì)應(yīng)的是模型訓(xùn)練方法,那么批量指的是將所有數(shù)據(jù)處理完以后一次性更新權(quán)重或者參數(shù)的估計(jì);如果對(duì)應(yīng)的是模型訓(xùn)練中的數(shù)據(jù),那么批量通常指的是一次輸入供模型計(jì)算用的數(shù)據(jù)量。
基于批量概念的模型訓(xùn)練通常按照如下步驟進(jìn)行:
初始化參數(shù)
重復(fù)以下步驟
● 處理所有數(shù)據(jù)● 更新參數(shù)
和批量算法相對(duì)應(yīng)的是遞增算法,其步驟如下:
初始化參數(shù)
重復(fù)以下步驟
● A.處理一個(gè)或者一組數(shù)據(jù)點(diǎn)●B.更新參數(shù)。
這里的主要區(qū)別是批量算法一次處理所有的數(shù)據(jù);而在遞增算法中,每處理一個(gè)或者數(shù)個(gè)觀測(cè)值就要更新一次參數(shù)。在后向傳播算法中,“處理”對(duì)應(yīng)的具體操作就是計(jì)算損失函數(shù)的梯度變化曲線。如果是批量算法,則計(jì)算平均或者總的損失函數(shù)的梯度變化曲線;而如果是遞增算法,則計(jì)算損失函數(shù)僅在對(duì)應(yīng)于該觀測(cè)值或者數(shù)個(gè)觀測(cè)值時(shí)的梯度變化曲線。“更新”則是從已有的參數(shù)值中減去梯度變化率和學(xué)習(xí)速率的乘積。
在線學(xué)習(xí)和離線學(xué)習(xí)
在深度學(xué)習(xí)中,另外兩個(gè)常見(jiàn)的概念是在線學(xué)習(xí)和離線學(xué)習(xí)。在離線學(xué)習(xí)中,所有的數(shù)據(jù)都可以被反復(fù)獲取,比如上面的批量學(xué)習(xí)就是離線學(xué)習(xí)的一種。而在在線學(xué)習(xí)中,每個(gè)觀測(cè)值在處理以后會(huì)被遺棄,同時(shí)得到更新。在線學(xué)習(xí)永遠(yuǎn)是遞增算法的一種,但是遞增算法卻既可以離線學(xué)習(xí)也可以在線學(xué)習(xí)。
離線學(xué)習(xí)有如下幾個(gè)優(yōu)點(diǎn):
對(duì)于任何固定個(gè)數(shù)的參數(shù),目標(biāo)函數(shù)都可以直接被計(jì)算出來(lái),因此很容易驗(yàn)證模型訓(xùn)練是否在朝著所需要的方向發(fā)展。
計(jì)算精度可以達(dá)到任意合理的程度。
可以使用各種不同的算法來(lái)避免出現(xiàn)局部最優(yōu)的情況
可以采用訓(xùn)練、驗(yàn)證、測(cè)試三分法對(duì)模型的普適性進(jìn)行驗(yàn)證
可以計(jì)算預(yù)測(cè)值及其置信區(qū)間
在線學(xué)習(xí)無(wú)法實(shí)現(xiàn)上述功能,因?yàn)閿?shù)據(jù)并沒(méi)有被存儲(chǔ),不能反復(fù)獲取,因此對(duì)于任何固定的參數(shù)集,無(wú)法在訓(xùn)練集上計(jì)算損失函數(shù),也無(wú)法在驗(yàn)證集上計(jì)算誤差。這就造成在線算法一般來(lái)說(shuō)比離線算法更加復(fù)雜和不穩(wěn)定。但是離線遞增算法并沒(méi)有在線算法的問(wèn)題,因此有必要理解在線學(xué)習(xí)和遞增算法的區(qū)別。
偏移/閾值
在深度學(xué)習(xí)中,采用sigmoid激活函數(shù)的隱藏層或者輸出層的神經(jīng)元通常在計(jì)算網(wǎng)絡(luò)輸入時(shí)加入一個(gè)偏移值,稱(chēng)為Bias。對(duì)于線性輸出神經(jīng)元,偏移項(xiàng)就是回歸中的截距項(xiàng)。 跟截距項(xiàng)的作用類(lèi)似,偏移項(xiàng)可以被視為一個(gè)由特殊神經(jīng)元引起的鏈接權(quán)重,這是因?yàn)槠祈?xiàng)通常鏈接到一個(gè)取固定單位值的偏移神經(jīng)元。比如在一個(gè)多層感知器神經(jīng)網(wǎng)絡(luò)中,某一個(gè)神經(jīng)元的輸入變量為N維,那么這個(gè)神經(jīng)元在這個(gè)高維空間中根據(jù)參數(shù)畫(huà)一個(gè)超平面,一邊是正值,一邊為負(fù)值。所使用的參數(shù)決定了這個(gè)超平面在輸入空間的相對(duì)位置。如果沒(méi)有偏移項(xiàng),這個(gè)超平面的位置就被限制住了,必須通過(guò)原點(diǎn);如果多個(gè)神經(jīng)元都需要各自的超平面,那么就嚴(yán)重限制住了模型的靈活性。這就好比一個(gè)沒(méi)有截距項(xiàng)的回歸模型,其斜率的估計(jì)值在大多數(shù)情況下會(huì)大大偏移最優(yōu)估計(jì)值,因?yàn)樯傻臄M合曲線必須通過(guò)原點(diǎn)。因此,如果缺少偏移項(xiàng),多層感知器的普適擬合能力就不存在了。 通常來(lái)說(shuō),每個(gè)隱藏層和輸出層的神經(jīng)元都有自己的偏移項(xiàng)。但是如果輸入神經(jīng)已經(jīng)被等比例轉(zhuǎn)換到一個(gè)有限值域中,比如[0,1]區(qū)間,那么等第一個(gè)隱藏層的神經(jīng)元已經(jīng)設(shè)置過(guò)偏移項(xiàng)以后,后面任何層跟這些具備偏移項(xiàng)的神經(jīng)元有鏈接的其他神經(jīng)元就不需要再額外設(shè)置偏移項(xiàng)了。
標(biāo)準(zhǔn)化數(shù)據(jù) 在機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中,常常會(huì)出現(xiàn)對(duì)數(shù)據(jù)標(biāo)準(zhǔn)化這個(gè)動(dòng)作。那么什么是標(biāo)準(zhǔn)化數(shù)據(jù)呢?其實(shí)這里是用“標(biāo)準(zhǔn)化”這個(gè)詞代替了幾個(gè)類(lèi)似的但又不同的動(dòng)作。
下面詳細(xì)講解三個(gè)常見(jiàn)的“標(biāo)準(zhǔn)化”數(shù)據(jù)處理動(dòng)作。
(1)重放縮:通常指將一個(gè)向量加上或減去一個(gè)向量,再乘以或者除以一個(gè)常亮。比如將華氏溫度轉(zhuǎn)換成攝氏溫度就是一個(gè)重放縮的過(guò)程。
(2)規(guī)范化:通常指將一個(gè)向量除以其范數(shù),比如采用歐式空間距離,即用向量的方差作為范數(shù)來(lái)規(guī)范化向量。在深度學(xué)習(xí)中,規(guī)范化通常采用極差為范數(shù),即將向量減去最小值,并除以其極差,從而使數(shù)值范圍在0和1之間。
(3)標(biāo)準(zhǔn)化:通常指將一個(gè)向量移除其位置和規(guī)模的度量。比如一個(gè)服從正態(tài)分布的向量,可以減去其均值,并除以其方差來(lái)標(biāo)準(zhǔn)化數(shù)據(jù),從而獲得一個(gè)服從標(biāo)準(zhǔn)正態(tài)分布的向量。
-
標(biāo)準(zhǔn)化
+關(guān)注
關(guān)注
1文章
30瀏覽量
8074 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5516瀏覽量
121594
原文標(biāo)題:深度學(xué)習(xí)中常見(jiàn)概念
文章出處:【微信號(hào):Imgtec,微信公眾號(hào):Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
深度學(xué)習(xí)在汽車(chē)中的應(yīng)用
改善深層神經(jīng)網(wǎng)絡(luò)--超參數(shù)優(yōu)化、batch正則化和程序框架 學(xué)習(xí)總結(jié)
討論紋理分析在圖像分類(lèi)中的重要性及其在深度學(xué)習(xí)中使用紋理分析
深度學(xué)習(xí)介紹
超參數(shù)優(yōu)化是深度學(xué)習(xí)中的重要組成部分
理解Batch Normalization中Batch所代表具體含義的知識(shí)基礎(chǔ)
Batch的大小、災(zāi)難性遺忘將如何影響學(xué)習(xí)速率
batch normalization時(shí)的一些缺陷
![<b class='flag-5'>batch</b> normalization時(shí)的<b class='flag-5'>一</b>些缺陷](https://file.elecfans.com/web1/M00/CD/E2/o4YBAF-hIduAPvU_AAAYCUCYcBU807.png)
評(píng)論