這篇文章主要介紹“batch、epoch、iteration的含義是什么”,在日常操作中,相信很多人在batch、epoch、iteration的含義是什么問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”batch、epoch、iteration的含義是什么”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
創(chuàng)新互聯(lián)是一家專業(yè)從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,創(chuàng)新互聯(lián)依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營(yíng)經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營(yíng)銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開(kāi)發(fā)服務(wù)!
第一種,遍歷全部數(shù)據(jù)集算一次損失函數(shù),然后算函數(shù)對(duì)各個(gè)參數(shù)的梯度,更新梯度。這種方法每更新一次參數(shù)都要把數(shù)據(jù)集里的所有樣本都看一遍,計(jì)算量開(kāi)銷大,計(jì)算速度慢,不支持在線學(xué)習(xí),這稱為Batch gradient descent,批梯度下降。
另一種,每看一個(gè)數(shù)據(jù)就算一下?lián)p失函數(shù),然后求梯度更新參數(shù),這個(gè)稱為隨機(jī)梯度下降,stochastic gradient descent。這個(gè)方法速度比較快,但是收斂性能不太好,可能在最優(yōu)點(diǎn)附近晃來(lái)晃去,hit不到最優(yōu)點(diǎn)。兩次參數(shù)的更新也有可能互相抵消掉,造成目標(biāo)函數(shù)震蕩的比較劇烈。
為了克服兩種方法的缺點(diǎn),現(xiàn)在一般采用的是一種折中手段,mini-batch gradient decent,小批的梯度下降,這種方法把數(shù)據(jù)分為若干個(gè)批,按批來(lái)更新參數(shù),這樣,一個(gè)批中的一組數(shù)據(jù)共同決定了本次梯度的方向,下降起來(lái)就不容易跑偏,減少了隨機(jī)性。另一方面因?yàn)榕臉颖緮?shù)與整個(gè)數(shù)據(jù)集相比小了很多,計(jì)算量也不是很大。
現(xiàn)在用的優(yōu)化器SGD是stochastic gradient descent的縮寫,但不代表是一個(gè)樣本就更新一回,還是基于mini-batch的。
那 batch epoch iteration代表什么呢?
(1)batchsize:批大小。在深度學(xué)習(xí)中,一般采用SGD訓(xùn)練,即每次訓(xùn)練在訓(xùn)練集中取batchsize個(gè)樣本訓(xùn)練;
(2)iteration:1個(gè)iteration等于使用batchsize個(gè)樣本訓(xùn)練一次;
(3)epoch:1個(gè)epoch等于使用訓(xùn)練集中的全部樣本訓(xùn)練一次,通俗的講epoch的值就是整個(gè)數(shù)據(jù)集被輪幾次。
比如訓(xùn)練集有500個(gè)樣本,batchsize = 10 ,那么訓(xùn)練完整個(gè)樣本集:iteration=50,epoch=1.
batch: 深度學(xué)習(xí)每一次參數(shù)的更新所需要損失函數(shù)并不是由一個(gè)數(shù)據(jù)獲得的,而是由一組數(shù)據(jù)加權(quán)得到的,這一組數(shù)據(jù)的數(shù)量就是batchsize。
batchsize最大是樣本總數(shù)N,此時(shí)就是Full batch learning;最小是1,即每次只訓(xùn)練一個(gè)樣本,這就是在線學(xué)習(xí)(Online Learning)。當(dāng)我們分批學(xué)習(xí)時(shí),每次使用過(guò)全部訓(xùn)練數(shù)據(jù)完成一次Forword運(yùn)算以及一次BP運(yùn)算,成為完成了一次epoch。
tf.clip_by_value(A, min, max):輸入一個(gè)張量A,把A中的每一個(gè)元素的值都?jí)嚎s在min和max之間。小于min的讓它等于min,大于max的元素的值等于max。
import tensorflow as tf; import numpy as np; A = np.array([[1,1,2,4], [3,4,8,5]]) with tf.Session() as sess: print sess.run(tf.clip_by_value(A, 2, 5)) 輸出: [[2 2 2 4] [3 4 5 5]]
到此,關(guān)于“batch、epoch、iteration的含義是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
網(wǎng)站題目:batch、epoch、iteration的含義是什么
網(wǎng)站網(wǎng)址:http://www.rwnh.cn/article10/jipego.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站導(dǎo)航、App開(kāi)發(fā)、品牌網(wǎng)站制作、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)