0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是深度學(xué)習(xí)中優(yōu)化算法

jf_78858299 ? 來源:人工智能大講堂 ? 作者:人工智能大講堂 ? 2023-02-13 15:31 ? 次閱讀

先大致講一下什么是深度學(xué)習(xí)中優(yōu)化算法吧,我們可以把模型比作函數(shù),一種很復(fù)雜的函數(shù):h(f(g(k(x)))),函數(shù)有參數(shù),這些參數(shù)是未知的,深度學(xué)習(xí)中的“學(xué)習(xí)”就是通過訓(xùn)練數(shù)據(jù)求解這些未知的參數(shù)。

由于這個函數(shù)太復(fù)雜了,沒辦法進行直接求解,所以只能換個思路:衡量模型的輸出與真實標(biāo)簽之間的差距,如果差距過大,則調(diào)整模型參數(shù),然后重新計算差距,如此反復(fù)迭代,直至差距在接受范圍內(nèi)。

深度學(xué)習(xí)中通過目標(biāo)函數(shù)或者損失函數(shù)衡量當(dāng)前參數(shù)的好壞,而調(diào)整模型參數(shù)的就是優(yōu)化算法。

所謂優(yōu)化, 就是利用關(guān)于最優(yōu)解的信息,不斷逼近最優(yōu)解, 目前深度學(xué)習(xí)中最常用的是梯度下降法, 梯度方向就是最優(yōu)解的信息,因為梯度方向指向最優(yōu)解方向, 沿著梯度方向前進即可靠近最優(yōu)解。

到這里,你是不是覺得優(yōu)化算法很簡單?其實,不然。讓我們進一步分析。

難點一:梯度(困難指數(shù)兩顆星)

所謂梯度下降法,當(dāng)然要計算梯度,前面那個復(fù)合函數(shù)再加上損失函數(shù),最終要優(yōu)化的函數(shù)是這個樣子:L(h(f(g(k(x)))),y),L是損失函數(shù),y是標(biāo)簽值。

復(fù)合函數(shù)通過鏈?zhǔn)椒▌t進行求導(dǎo),例如f(g(x)),

圖片

圖片

這就要求g(x)和f(x)都得可導(dǎo),對于神經(jīng)網(wǎng)絡(luò)而言,卷積層和全連接層都可以看作是矩陣與向量乘法,是可導(dǎo)的,剩下的就是激活函數(shù)和損失函數(shù),好在目前常用的MSE,交叉熵?fù)p失函數(shù),Sigmoid,Relu激活函數(shù)都是可導(dǎo)的。

所以,梯度的問題不大。

難點二:凸優(yōu)化和非凸優(yōu)化( 困難指數(shù)五顆星

深度學(xué)習(xí)由于多個隱藏層的疊加所形成的復(fù)合函數(shù),外加損失函數(shù),最終的函數(shù)往往不是凸函數(shù)。

所謂凸函數(shù),就是只有全局最優(yōu)解,通過梯度下降最終都能找到這個最優(yōu)解,對于機器學(xué)習(xí)中的線性回歸的損失函數(shù):最小二乘而言,它是一個凸函數(shù),也就是說能找到使損失函數(shù)達(dá)到最小值的全局最優(yōu)解。

在非凸函數(shù)中,存在大量的局部最優(yōu)解,局部極值隨著特征維度的增加呈指數(shù)增長,優(yōu)化算法很大概率找不到全局最優(yōu)解,這也是優(yōu)化算法最苦惱的地方。

如果只有局部最優(yōu)解,那情況還不算最糟糕,畢竟局部最優(yōu)解意味著從所有維度看都是最小值或者最大值,更糟糕的是鞍點,這種情況雖然一階導(dǎo)數(shù)都為零,但二階導(dǎo)數(shù)不同向,也就是說從某些維度看是極小值,而從某些維度看卻是極大值。

而且,不幸的是,隨著特征向量維度的增加,鞍點的數(shù)量也是隨著指數(shù)級增加的。

那如何逃離鞍點?

這里再次注意:這里我們所說的梯度下降指的是:使用全部樣本的損失的平均值來更新參數(shù),這就意味著梯度的精度非常高,會精確地逼近鞍點,但我們不希望這樣,我們希望能夠跳出鞍點,幸好,隨機梯度下降SGD或者其變體(比如Momentun、Adam、mini-batch)的出現(xiàn)很大程度上解決了該問題。

例如,mini-batch是指每次參數(shù)更新只是用一小批樣本,這是一種有噪聲的梯度估計,哪怕我們位于梯度為0的點,也經(jīng)常在某個mini-batch下的估計把它估計偏了,導(dǎo)致往前或者往后挪了一步摔下馬鞍,也就是mini-batch的梯度下降法使得模型很容易逃離特征空間中的鞍點。

既然,局部極值點也可接受,且又能有方法逃離鞍點,到這里你覺得問題就結(jié)束了嗎?還沒有,其實,神經(jīng)網(wǎng)絡(luò)中最讓人望而生畏的不是局部最優(yōu)點和鞍點,而是平坦地區(qū),這些地區(qū)一經(jīng)進入很難逃離。

圖片

總結(jié)來說,人們認(rèn)為的深度神經(jīng)網(wǎng)絡(luò)“容易收斂到局部最優(yōu)”,很可能是一種想象,實際情況是,我們可能從來沒有找到過“局部最優(yōu)”,更別說全局最優(yōu)了。

所以,與其擔(dān)憂陷入局部最優(yōu)點怎么跳出來,更不如去考慮數(shù)據(jù)集要怎么做才能讓網(wǎng)絡(luò)更好學(xué)習(xí),以及網(wǎng)絡(luò)該怎么設(shè)計才能更好的捕獲pattern,網(wǎng)絡(luò)該怎么訓(xùn)練才能學(xué)到我們想讓它學(xué)習(xí)的知識。

最后,也要為優(yōu)化算法鳴個不平。其實這并不是優(yōu)化算法的問題。是損失函數(shù)和網(wǎng)絡(luò)結(jié)構(gòu)的錯,是他們的復(fù)雜性導(dǎo)致優(yōu)化問題是一個非凸優(yōu)化問題,優(yōu)化算是是來解決問題的,而不是制造問題。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 優(yōu)化算法
    +關(guān)注

    關(guān)注

    0

    文章

    35

    瀏覽量

    9831
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4366

    瀏覽量

    63975
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5550

    瀏覽量

    122379
收藏 0人收藏
  • jf_657732991

評論

相關(guān)推薦
熱點推薦

目前主流的深度學(xué)習(xí)算法模型和應(yīng)用案例

深度學(xué)習(xí)在科學(xué)計算獲得了廣泛的普及,其算法被廣泛用于解決復(fù)雜問題的行業(yè)。所有深度學(xué)習(xí)
的頭像 發(fā)表于 01-03 10:28 ?2677次閱讀
目前主流的<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>算法</b>模型和應(yīng)用案例

深度學(xué)習(xí)多種優(yōu)化算法

深度學(xué)習(xí),有很多種優(yōu)化算法,這些算法需要在極高維度(通常參數(shù)有數(shù)百萬個以上)也即數(shù)百萬維的空
的頭像 發(fā)表于 08-28 09:52 ?2746次閱讀
<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>中</b>多種<b class='flag-5'>優(yōu)化</b><b class='flag-5'>算法</b>

深度模型優(yōu)化學(xué)習(xí)課件下載

深度模型優(yōu)化學(xué)習(xí)課件下載
發(fā)表于 04-07 16:21 ?3次下載
<b class='flag-5'>深度</b>模型<b class='flag-5'>中</b>的<b class='flag-5'>優(yōu)化</b>與<b class='flag-5'>學(xué)習(xí)</b>課件下載

深度學(xué)習(xí)算法進行優(yōu)化的處理器——NPU

NPU(Neural-network Processing Unit,嵌入式神經(jīng)網(wǎng)絡(luò)處理器)是針對深度學(xué)習(xí)*算法進行優(yōu)化的處理器。它能像人類神經(jīng)網(wǎng)絡(luò)一樣快速、高效地處理大量數(shù)據(jù),因此它
發(fā)表于 10-17 10:53 ?2752次閱讀

PyTorch教程-12.1. 優(yōu)化深度學(xué)習(xí)

12.1. 優(yōu)化深度學(xué)習(xí)? Colab [火炬]在 Colab 打開筆記本 Colab [mxnet] Open the notebook in Colab Colab
的頭像 發(fā)表于 06-05 15:44 ?732次閱讀
PyTorch教程-12.1. <b class='flag-5'>優(yōu)化</b>和<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>

從淺層到深層神經(jīng)網(wǎng)絡(luò):概覽深度學(xué)習(xí)優(yōu)化算法

優(yōu)化算法一直以來是機器學(xué)習(xí)能根據(jù)數(shù)據(jù)學(xué)到知識的核心技術(shù)。而好的優(yōu)化算法可以大大提高學(xué)習(xí)速度,加快
的頭像 發(fā)表于 06-15 11:20 ?924次閱讀
從淺層到深層神經(jīng)網(wǎng)絡(luò):概覽<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>優(yōu)化</b><b class='flag-5'>算法</b>

深度學(xué)習(xí)算法簡介 深度學(xué)習(xí)算法是什么 深度學(xué)習(xí)算法有哪些

深度學(xué)習(xí)算法簡介 深度學(xué)習(xí)算法是什么?深度
的頭像 發(fā)表于 08-17 16:02 ?9603次閱讀

深度學(xué)習(xí)算法工程師是做什么

深度學(xué)習(xí)算法工程師是做什么 深度學(xué)習(xí)算法工程師是一種高級技術(shù)人才,是數(shù)據(jù)科學(xué)
的頭像 發(fā)表于 08-17 16:03 ?1566次閱讀

什么是深度學(xué)習(xí)算法深度學(xué)習(xí)算法的應(yīng)用

。 在深度學(xué)習(xí),使用了一些快速的算法,比如卷積神經(jīng)網(wǎng)絡(luò)以及深度神經(jīng)網(wǎng)絡(luò),這些算法在大量數(shù)據(jù)處理
的頭像 發(fā)表于 08-17 16:03 ?2478次閱讀

深度學(xué)習(xí)算法的選擇建議

深度學(xué)習(xí)算法的選擇建議 隨著深度學(xué)習(xí)技術(shù)的普及,越來越多的開發(fā)者將它應(yīng)用于各種領(lǐng)域,包括圖像識別、自然語言處理、聲音識別等等。對于剛開始
的頭像 發(fā)表于 08-17 16:11 ?906次閱讀

深度學(xué)習(xí)算法庫框架學(xué)習(xí)

深度學(xué)習(xí)算法庫框架學(xué)習(xí) 深度學(xué)習(xí)是一種非常強大的機器學(xué)習(xí)
的頭像 發(fā)表于 08-17 16:11 ?905次閱讀

深度學(xué)習(xí)框架和深度學(xué)習(xí)算法教程

基于神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)方法。 深度學(xué)習(xí)算法可以分為兩大類:監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)。監(jiān)督
的頭像 發(fā)表于 08-17 16:11 ?1317次閱讀

深度學(xué)習(xí)編譯工具鏈的核心——圖優(yōu)化

等,需要調(diào)整優(yōu)化網(wǎng)絡(luò)中使用的算子或算子組合,這就是深度學(xué)習(xí)編譯工具鏈的核心——圖優(yōu)化。圖優(yōu)化
的頭像 發(fā)表于 05-16 14:24 ?1486次閱讀
<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>編譯工具鏈<b class='flag-5'>中</b>的核心——圖<b class='flag-5'>優(yōu)化</b>

深度學(xué)習(xí)算法在嵌入式平臺上的部署

隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)算法在各個領(lǐng)域的應(yīng)用日益廣泛。然而,將深度學(xué)習(xí)算法部署到資源
的頭像 發(fā)表于 07-15 10:03 ?2541次閱讀

NPU在深度學(xué)習(xí)的應(yīng)用

設(shè)計的硬件加速器,它在深度學(xué)習(xí)的應(yīng)用日益廣泛。 1. NPU的基本概念 NPU是一種專門針對深度學(xué)習(xí)
的頭像 發(fā)表于 11-14 15:17 ?1589次閱讀

電子發(fā)燒友

中國電子工程師最喜歡的網(wǎng)站

  • 2931785位工程師會員交流學(xué)習(xí)
  • 獲取您個性化的科技前沿技術(shù)信息
  • 參加活動獲取豐厚的禮品