<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從算子角度理解優(yōu)化方法

          共 3649字,需瀏覽 8分鐘

           ·

          2021-04-29 11:25

          點(diǎn)擊上方小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

          本文轉(zhuǎn)自:深度學(xué)習(xí)這件小事


          在求解一個(gè)優(yōu)化問題時(shí),我們可以采用不同的優(yōu)化方法,而這些方法又可以從不同角度去理解。這篇文章我想講下如何從算子角度出發(fā)去理解許多已存在的優(yōu)化方法。有錯(cuò)誤的地方歡迎大家指出來。
          我們考慮一個(gè)非線性映射的零點(diǎn)問題,也就是求解一個(gè)  使得非線性映射  滿足
           這個(gè)怎么和優(yōu)化問題聯(lián)系起來呢,大概是三個(gè)角度:
          1. 對(duì)于無約束凸問題,其最優(yōu)解等價(jià)于求解梯度等于零,這時(shí)的  就是其梯度。
          2. 對(duì)于約束優(yōu)化問題,我們可以轉(zhuǎn)化為一個(gè)無約束的對(duì)偶問題,這時(shí)的A就是對(duì)偶問題的梯度
          3. 仍然是約束優(yōu)化問題,我們可以求解其KKT系統(tǒng),這時(shí)的A就是由KKT條件組成的一個(gè)非線性方程組。
          求解問題(1)的方法就是穩(wěn)定點(diǎn)迭代,也就是找一個(gè)算子  ,迭代去尋找解:
           這個(gè)  要滿足一些條件。
          1. 問題(1)的解  是算子  的穩(wěn)定點(diǎn),也就是滿足 
          2. 上述迭代可以收斂到穩(wěn)定點(diǎn),或者收斂的速度怎么去分析,這需要  滿足一些性質(zhì),比如nonexpansive,contractive,averaged operator等. 這些性質(zhì)是分析穩(wěn)定點(diǎn)迭代收斂性的關(guān)鍵。
          開始我們講了問題(1)怎么和優(yōu)化問題聯(lián)系起來,接著我們講下穩(wěn)定點(diǎn)迭代怎么和優(yōu)化方法聯(lián)系起來。這里介紹了  的幾種情況,然后說明其如何應(yīng)用到優(yōu)化問題中去。關(guān)于收斂性的東西不講。
          1.Forward operator: 


          1.1.考慮凸問題
          這個(gè)問題可以轉(zhuǎn)化為  。令  ,我們應(yīng)用forward operator去求解該方程
           這就是梯度算法。

          1.2.考慮線性約束問題
           因?yàn)槭羌s束問題,所以不能用梯度等于0去求解,一個(gè)思路就是分析其對(duì)偶問題。該問題的對(duì)偶問題為
           令  ,這等價(jià)于求解  。那么forward operator 就是
           關(guān)鍵在于次梯度怎么求,在我之前文章(鄧康康:原始對(duì)偶角度下的幾類優(yōu)化方法)中有提到過:
          其中,  為拉格朗日函數(shù)。所以迭代(7)等價(jià)于
          這就是dual descent method, 或者叫Uzawa method。

          2. Backward operator: 


          這個(gè)算子也叫resolvent operator。首先推導(dǎo)下穩(wěn)定點(diǎn)迭代:
           整合一下得到:  ,而這就等價(jià)于找到一個(gè)  滿足
           這就是proximal point iteration。接下來我們將該算子應(yīng)用到上面講到的A的三種情況。

          2.1. 還是考慮問題(3),我們運(yùn)用這個(gè)算子得到:
           這等價(jià)于
           整合一下我們知道
           這就是臨近點(diǎn)算法。

          2.2.接下來關(guān)注問題(5)的對(duì)偶問題
            ,令  。那么backward operator 就是
           這等價(jià)于一下迭代過程:
          其中  ,這個(gè)推導(dǎo)過程見(鄧康康:原始對(duì)偶角度下的幾類優(yōu)化方法),這就是增廣拉格朗日方法。

          2.3. 仍然是考慮問題(5),但這次我們考慮的是其KKT系統(tǒng)
          首先問題(5)kkt條件可以表示為:
          我們令  ,那么backward operator的穩(wěn)定點(diǎn)迭代為:
          根據(jù)(9)式,我們知道上述迭代等價(jià)于尋找  使得滿足
          從第二行得到: 
          從第一行得到:
          把(13)中的  代到(14)得到:
          這等價(jià)于
          總結(jié)一下(13)和(16)得到最終迭代形式為:
          這個(gè)方法叫做臨近增廣拉格朗日方法。



          前面講的都是求解問題  。接下來考慮兩個(gè)的情況,也就是:
           我們用到的算子叫做分裂算子。

           3.Forward backward splitting


          這個(gè)算子很好理解,就是前面講到的兩個(gè)算子的組合。具體形式為:
           考慮可分得優(yōu)化問題:
           其中  是一個(gè)光滑函數(shù)。這個(gè)問題等價(jià)于找到  滿足
           我們令  ,這樣就可以運(yùn)用Forward backward算子:
           有了前面兩節(jié)的討論,我們知道:
           是一個(gè)梯度迭代,
           是一個(gè)臨近點(diǎn)迭代。
          所以結(jié)合起來得到:
           這就是臨近梯度算法。

           4.Douglas-Rachford splitting


          為了簡潔,我用  和  分別表示基于A,B的backwood operator。那么Douglas-Rachford splitting可以表示為:
          考慮可分問題:
           他的對(duì)偶問題是:
           其中
           我們令  ,這樣就可以應(yīng)用Douglas-Rachford splitting:
           拆分一下:
          再引入一個(gè)新的變量 
           再引入 
           根據(jù)前面backward operator的推導(dǎo),我們知道臨近點(diǎn)迭代等價(jià)于增廣拉格朗日方法,所以第一行就等價(jià)于:
          將  代入第二行得到:  類似的第二行就等價(jià)于:
           最后再看下第三行:
          代入到(19)的  更新中:
          現(xiàn)在我們把  的更新放在一起:
          這就是ADMM算法。

          5.Peaceman-Rachford splitting

          這個(gè)算子的穩(wěn)定點(diǎn)迭代等價(jià)于對(duì)稱ADMM方法。也就是:
          這個(gè)方法我第一次見是在何炳生老師(我老師的老師)的一個(gè)講座上,用變分不等式的框架去分析的,還舉了個(gè)挑擔(dān)子的例子,說兩邊一樣重(對(duì)稱)才能跑得快,印象深刻。

          總結(jié)


          1. 這些算子怎么來的呢?用forward來舉例吧,我們本來要求  ,這等價(jià)于  ,然后令右邊的為  ,左邊為新的迭代點(diǎn)  ,這樣就得到了forward算子。其他的類似,都是這種思想去得到的,但也不能亂來。。你要滿足一些性質(zhì),不然收斂不了的。

          2. 可能有些人會(huì)困惑,為什么這些算子的穩(wěn)定點(diǎn)迭代剛好就對(duì)應(yīng)于一個(gè)已知的優(yōu)化方法呢,到底是算子先出來還是這些優(yōu)化方法先出來,在提出二者的時(shí)候,是獨(dú)立的還是參考了對(duì)方,我也困惑。。比如臨近點(diǎn)迭代應(yīng)用到對(duì)偶問題為什么剛好就是增廣拉格朗日方法。。這純屬巧合嗎,如果是這樣,那數(shù)學(xué)太美了

          3. 上面提到的都是一階算法,其實(shí)也可以用牛頓法去做,剛才說到的很多問題可以轉(zhuǎn)化為求解  ,進(jìn)而我們又可以去設(shè)計(jì)一個(gè)算子  ,并且最優(yōu)解滿足  。那么我可以直接應(yīng)用牛頓法去求解這兩類非線性方程組。

          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺公眾號(hào)后臺(tái)回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計(jì)數(shù)、添加眼線、車牌識(shí)別、字符識(shí)別、情緒檢測、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測、分割、識(shí)別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請(qǐng)按照格式備注,否則不予通過。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~




          瀏覽 57
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  后入视频在线观看 | 青青草精品视频在线 | 欧美操妣免费看 | re久久6热 | 操碰亚洲 |