1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        干貨|簡單理解梯度下降及線性回歸

        共 2602字,需瀏覽 6分鐘

         ·

        2021-06-13 14:11

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

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

        一、線性回歸


        在回歸分析中,一個(gè)自變量和一個(gè)因變量的關(guān)系可用一條直線近似表示,稱為一元線性回歸分析。當(dāng)自變量大于一個(gè)的時(shí)候,稱為多元線性回歸。以房價(jià)-住宅面積為例。


        每組數(shù)據(jù)(住宅面積,房價(jià))可以在坐標(biāo)軸中用點(diǎn)表示



        我們希望模型擬合出一條直線 y=ax+b,以此表示住宅面積和房價(jià)之間的關(guān)系。當(dāng)二維坐標(biāo)系上分布的點(diǎn)離直線的距離之和越?。ù蠖鄶?shù)點(diǎn)離直線很近),擬合的效果越好。此時(shí)你輸入X(住宅面積),模型就會(huì)輸出一個(gè)與真實(shí)值相近的預(yù)測值(房價(jià))。更一般直線方程表示為:




        用向量的內(nèi)積表示方程會(huì)帶來很多便利(以后會(huì)知道的)。

        但如果房價(jià)不僅與住宅面積有關(guān),還和臥室的數(shù)量有關(guān)。直線方程仍然可以同樣的式子(向量的內(nèi)積)表示。



        顯然,這時(shí)的點(diǎn)分布在一個(gè)三維空間,我們要用一個(gè)平面去擬合房價(jià)與住宅面積以及臥室之間的關(guān)系,如果三維空間上的點(diǎn)離平面的距離之和最?。ù蠖鄶?shù)點(diǎn)離平面很近),我們認(rèn)為此時(shí)的模型是最好的。

        這樣我們把在二維的線性回歸推廣到三維。在n維空間中,n-1個(gè)自變量與1個(gè)因變量的關(guān)系可以表示為n-1維的超平面。


        上面我們將坐標(biāo)系中上所有點(diǎn)到超平面(超過3維則無法畫出圖像)的距離之和作為模型好壞的判別標(biāo)準(zhǔn)。距離之和越小,則可認(rèn)為模型越好。則我們的損失函數(shù)定義為:



        損失函數(shù)的值 等于 對每個(gè)樣本點(diǎn)的預(yù)測值與實(shí)際值差的平方和求和。之所以對平方和求和,是為了避免正負(fù)誤差相互抵消 。(使用預(yù)測值與實(shí)際值差與使用上面的距離是等價(jià)的,而且計(jì)算量更?。?/2 是為了之后求偏導(dǎo)的時(shí)候可以讓式子的系數(shù)等于1而存在。(1/2有沒有都沒關(guān)系,系數(shù)只要非0,對結(jié)果都不會(huì)有影響,因?yàn)樵诒容^兩個(gè)不同模型的優(yōu)劣的時(shí)候,實(shí)際是比較他們損失函數(shù)的值,兩個(gè)數(shù)值乘以同一個(gè)非0因子,他們的大小關(guān)系不會(huì)改變。)


        得出損失函數(shù)之后,我們就得到了一個(gè)求解最佳模型的策略——求解使損失函數(shù)達(dá)到最小的參數(shù)??。這里給大家介紹一種求解最優(yōu)解的一個(gè)辦法梯度下降。


        二、梯度下降(GradientDescent)


        學(xué)過高等數(shù)學(xué)的pong友肯定知道,順著梯度方向,函數(shù)值增加最快,逆著梯度函數(shù)值下降越快。所以在求解一個(gè)無約束求最值的問題,梯度下降是一個(gè)非常常用的方法。(求最大和求最小是等價(jià)的,例如上面的損失函數(shù)加一個(gè)負(fù)號(hào),學(xué)習(xí)的過程就變成一個(gè)求解損失函數(shù)取最大值時(shí)的模型參數(shù)過程)



        梯度下降的過程可以概括為一個(gè)遞推表達(dá)式:

        更新后的參數(shù) = 當(dāng)前參數(shù) - 學(xué)習(xí)速度*當(dāng)前梯度

        上式中,學(xué)習(xí)速度又稱步長,用來控制每次迭代參數(shù)的改變量。所以梯度下降的關(guān)鍵在于不斷計(jì)算當(dāng)前的梯度,按照一定的學(xué)習(xí)速度,更新模型參數(shù),直到收斂到極值。


        關(guān)于能否達(dá)到全局最優(yōu)值。如果該函數(shù)是凸函數(shù),則必定能收斂大最小值;否則能否達(dá)到全局最優(yōu)不僅取決于初值,學(xué)習(xí)速度也會(huì)影響。如上圖所示,初值選取不一樣,梯度下降所指向的極小值也不一樣。如果說學(xué)習(xí)速度過大,梯度下降有可能會(huì)進(jìn)入到另一局部最優(yōu)解中。


        梯度下降算法也有很多種,最常見的有批量梯度下降算法、隨機(jī)梯度下降算法,他們各有有優(yōu)缺點(diǎn)。


        批量梯度下降: 求梯度的時(shí)候利用了所有的樣本


        隨機(jī)梯度下降:求梯度的時(shí)候隨機(jī)使用一個(gè)樣本

        • 批量梯度可以保證每次更新參數(shù)可以使得模型被優(yōu)化,因?yàn)榕刻荻认陆邓愠龅奶荻仁钦_的(使用了所有的樣本);而隨機(jī)梯度下降由于每次更新只選擇使用一個(gè)樣本來求梯度,所求出的梯度往往沒有那么準(zhǔn)確。但是批量梯度下降每次迭代的開銷很大(數(shù)據(jù)量很大時(shí),計(jì)算梯度非常耗時(shí)間)。

        • 隨機(jī)梯度計(jì)算的梯度雖然不是很準(zhǔn)確,但是它迭代的速度很快,每次接近最小值一點(diǎn)點(diǎn),也還是能達(dá)到極值。在接近極值的時(shí)候,隨機(jī)梯度會(huì)在極值附近震蕩,不容易踩到極小值。所以在數(shù)據(jù)量很大,對精度要求并沒特別嚴(yán)苛的時(shí)候使用隨機(jī)梯度下降是一個(gè)不錯(cuò)的選擇。

        • 也有一個(gè)小批量梯度下降算法,每次只用少量的數(shù)據(jù)計(jì)算梯度,提高了梯度的準(zhǔn)確率,也不需要很大迭代的開銷。但是并不能說明這種方法比隨機(jī)梯度和批量梯度好。


        此外,在梯度下降中,要適當(dāng)控制學(xué)習(xí)速度,特別是在接近最優(yōu)值附近的時(shí)候,過大的學(xué)習(xí)速率會(huì)越過最優(yōu)值,在最優(yōu)值附近震蕩。還有在開始學(xué)習(xí)的時(shí)候,如果學(xué)習(xí)速率很小,則需要更多次迭代才能達(dá)到局部最優(yōu)。


        三、梯度下降求解線性回歸



        回到線性回歸,用批量梯度下降來求解線性回歸模型的最佳參數(shù)。(用隨機(jī)梯度也是可以,這里不過是舉例)那么我們首先要求解梯度



        上式為J(??)對??求偏導(dǎo),1/2其實(shí)只是為了抵消求導(dǎo)產(chǎn)生的那個(gè)2的因子。更新一次的過程如下所示。



        訓(xùn)練的過程就是不斷的求偏導(dǎo),更新模型參數(shù),直到損失函數(shù)收斂,訓(xùn)練過程就結(jié)束了。


        訓(xùn)練完的線性回歸模型接受你的輸入,然后輸出一個(gè)預(yù)測值。


        下載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ì)分),請掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會(huì)根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會(huì)請出群,謝謝理解~


        瀏覽 25
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

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

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            日韩亚洲天堂 | 一级A片处破外女免费 | 无码免费观看 | 一级Aa视频免费看 | 伊人在线网址 | 色综合久 | 性视频网 | 黄片骚逼 | 啊灬嗯灬轻点啊灬好深啊灬岳 | aaa国产|