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

三種梯度下降算法的區別(BGD, SGD, MBGD)

開發 前端 算法
我們在訓練網絡的時候經常會設置 batch_size,這個 batch_size 究竟是做什么用的,一萬張圖的數據集,應該設置為多大呢,設置為 1、10、100 或者是 10000 究竟有什么區別呢?

前言

我們在訓練網絡的時候經常會設置 batch_size,這個 batch_size 究竟是做什么用的,一萬張圖的數據集,應該設置為多大呢,設置為 1、10、100 或者是 10000 究竟有什么區別呢?

 

  1. # 手寫數字識別網絡訓練方法  
  2. network.fit(  
  3. train_images,  
  4. train_labels,  
  5. epochs=5,  
  6. batch_size=128) 

批量梯度下降(Batch Gradient Descent,BGD)

梯度下降算法一般用來最小化損失函數:把原始的數據網絡喂給網絡,網絡會進行一定的計算,會求得一個損失函數,代表著網絡的計算結果與實際的差距,梯度下降算法用來調整參數,使得訓練出的結果與實際更好的擬合,這是梯度下降的含義。

批量梯度下降是梯度下降最原始的形式,它的思想是使用所有的訓練數據一起進行梯度的更新,梯度下降算法需要對損失函數求導數,可以想象,如果訓練數據集比較大,所有的數據需要一起讀入進來,一起在網絡中去訓練,一起求和,會是一個龐大的矩陣,這個計算量將非常巨大。當然,這也是有優點的,那就是因為考慮到所有訓練集的情況,因此網絡一定在向最優(極值)的方向在優化。

隨機梯度下降(Stochastic Gradient Descent,SGD)

與批量梯度下降不同,隨機梯度下降的思想是每次拿出訓練集中的一個,進行擬合訓練,進行迭代去訓練。訓練的過程就是先拿出一個訓練數據,網絡修改參數去擬合它并修改參數,然后拿出下一個訓練數據,用剛剛修改好的網絡再去擬合和修改參數,如此迭代,直到每個數據都輸入過網絡,再從頭再來一遍,直到參數比較穩定,優點就是每次擬合都只用了一個訓練數據,每一輪更新迭代速度特別快,缺點是每次進行擬合的時候,只考慮了一個訓練數據,優化的方向不一定是網絡在訓練集整體最優的方向,經常會抖動或收斂到局部最優。

小批量梯度下降(Mini-Batch Gradient Descent,MBGD)

小批量梯度下降采用的還是計算機中最常用的折中的解決辦法,每次輸入網絡進行訓練的既不是訓練數據集全體,也不是訓練數據集中的某一個,而是其中的一部分,比如每次輸入 20 個。可以想象,這既不會造成數據量過大計算緩慢,也不會因為某一個訓練樣本的某些噪聲特點引起網絡的劇烈抖動或向非最優的方向優化。

對比一下這三種梯度下降算法的計算方式:批量梯度下降是大矩陣的運算,可以考慮采用矩陣計算優化的方式進行并行計算,對內存等硬件性能要求較高;隨機梯度下降每次迭代都依賴于前一次的計算結果,因此無法并行計算,對硬件要求較低;而小批量梯度下降,每一個次迭代中,都是一個較小的矩陣,對硬件的要求也不高,同時矩陣運算可以采用并行計算,多次迭代之間采用串行計算,整體來說會節省時間。

看下面一張圖,可以較好的體現出三種剃度下降算法優化網絡的迭代過程,會有一個更加直觀的印象。

 

三種梯度下降算法的區別(BGD, SGD, MBGD)

總結

梯度下降算法的調優,訓練數據集很小,直接采用批量梯度下降;每次只能拿到一個訓練數據,或者是在線實時傳輸過來的訓練數據,采用隨機梯度下降;其他情況或一般情況采用批量梯度下降算法更好。

責任編輯:未麗燕 來源: RAIS.blog
相關推薦

2017-07-25 12:59:10

機器學習梯度下降算法

2024-06-04 13:02:10

2009-08-26 18:14:11

C#排序算法

2018-01-17 15:02:28

VMware網絡連接

2011-01-18 15:35:59

jQueryJavaScriptweb

2009-12-10 15:46:22

動態路由協議

2018-07-19 11:03:12

NASDASSAN

2017-05-08 08:39:12

梯度算法Octave機器學習

2010-09-24 19:18:22

SQL索引

2020-08-20 20:51:17

打散算法打散法原算法

2015-09-14 09:31:44

結對設計

2013-04-01 09:55:03

OpenStack存儲

2012-07-17 09:16:16

SpringSSH

2017-03-22 12:25:29

機器學習梯度下降法

2018-07-10 09:15:48

服務器DIMM類型

2018-03-28 16:10:23

閱讀源碼境界

2022-05-30 07:07:35

Java監聽文件Java 8

2021-08-03 10:16:15

存儲InnoDB引擎

2019-03-28 07:31:03

2010-09-25 14:38:29

SQL分頁
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区三区欧美在线 | 久久久高清 | 成人片免费看 | 日日操操| 中文字幕1区2区3区 亚洲国产成人精品女人久久久 | 欧美激情精品久久久久 | 久久久久久久久久久久久9999 | 日韩靠逼 | 精品国产一二三区 | 色小姐综合网 | 久久不卡视频 | 成人啊啊啊 | 欧美日韩一区精品 | 精品一区久久 | 国产精品久久久久久久毛片 | 天堂网中文字幕在线观看 | 亚洲最大看片网站 | 国产免费一区 | 国产一级一级毛片 | 午夜久久久久 | 日韩精品免费看 | 亚洲一区二区在线播放 | 免费在线看黄 | 亚洲欧美精品国产一级在线 | 美女天天干 | 国产精品揄拍一区二区 | 欧美视频一区二区三区 | 国产精品免费在线 | 91精品国产乱码久久久 | 狠狠干狠狠操 | 国产精品二区三区 | 欧美在线视频一区二区 | 99精品欧美一区二区三区 | 午夜精品一区二区三区在线视 | 天天操伊人| 久久草视频 | 在线免费av电影 | 国产精品视频一区二区三区四区国 | 国产欧美精品一区二区 | 国产午夜亚洲精品不卡 | 精品少妇一区二区三区日产乱码 |