国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
教程:采用梯度下降算法實(shí)現(xiàn)線性回歸!

作者:Adarsh Menon

在這個(gè)教程中,你可以了解梯度下降算法將如何工作,并在python中從頭開始實(shí)現(xiàn)。首先我們看一下線性回歸是什么,然后定義損失函數(shù)。我們學(xué)習(xí)了梯度下降算法的工作原理,最后我們將在給定的數(shù)據(jù)集上實(shí)現(xiàn)它,并進(jìn)行預(yù)測(cè)。

在每次迭代時(shí)更新m和c的值以獲得最優(yōu)解

線性回歸

在統(tǒng)計(jì)學(xué)中,線性回歸是一種線性方法,用于對(duì)因變量與一個(gè)或多個(gè)自變量之間的關(guān)系進(jìn)行建模。設(shè)X為自變量,Y為因變量。我們將在這兩個(gè)變量之間定義一個(gè)線性關(guān)系,如下所示:

這是你在高中學(xué)習(xí)的線性方程。m是直線的斜率,c是y截距。如今我們將使用這個(gè)方程用給定的數(shù)據(jù)集訓(xùn)練我們的模型,并預(yù)測(cè)任何給定X值的Y值。我們今天的挑戰(zhàn)是確定m和c的值,使得對(duì)應(yīng)于這些值的線是最佳擬合直線或給出最小誤差。

損失函數(shù)

損失是我們預(yù)測(cè)的m和c值的誤差。我們的目標(biāo)是最小化這個(gè)誤差,以獲得最準(zhǔn)確的m和c值。

我們將使用均方誤差函數(shù)來計(jì)算損失。這個(gè)函數(shù)有三個(gè)步驟:

  1. 對(duì)于給定x,找到實(shí)際y和預(yù)測(cè)y值之間的差值(y=mx+c)。
  2. 把這個(gè)差值進(jìn)行平方。
  3. 找出X中每個(gè)值的平方均值。

均方誤差方程

這是yi實(shí)際值,? i是預(yù)測(cè)值。讓我們替換? i的值:

替換 ? i的值

所以我們將誤差平方并找出均值。因此,名稱均方誤差?,F(xiàn)在我們已經(jīng)定義了損失函數(shù),讓我們進(jìn)入有趣的部分 - 最小化它,并找到m和c。

梯度下降算法

梯度下降是尋找函數(shù)最小值的迭代優(yōu)化算法。這里的函數(shù)是我們的損失函數(shù)。

了解梯度下降

說明梯度下降算法的工作原理

想象一個(gè)山谷和一個(gè)沒有方向感的人想要到達(dá)山谷的底部。當(dāng)斜坡陡峭時(shí),他沿著斜坡走下坡時(shí),步幅較大,當(dāng)斜坡不那么陡峭時(shí),步幅較小。他根據(jù)自己目前的位置決定下一個(gè)位置,并在他到達(dá)山谷底部時(shí)停下來,這是他的目標(biāo)。

讓我們嘗試將梯度下降算法應(yīng)用于m和c,并逐步逼近它:

1.最初讓m = 0和c = 0。設(shè)L是我們的學(xué)習(xí)率。這可以控制m值隨每一步的變化程度。 L可以是0.0001的這樣小的數(shù)值,以獲得良好的準(zhǔn)確性。

2.計(jì)算損失函數(shù)相對(duì)于m的偏導(dǎo)數(shù),并插入其中x,y,m和c的當(dāng)前值,得到導(dǎo)數(shù)值D。

關(guān)于m的導(dǎo)數(shù)

Dc 是相對(duì)于m的偏導(dǎo)數(shù)的值。類似地,我們找到關(guān)于c,Dc的偏導(dǎo)數(shù):

關(guān)于c的導(dǎo)數(shù)

3.現(xiàn)在我們使用以下等式更新m和c的當(dāng)前值:

4.我們重復(fù)這個(gè)過程,直到我們的損失函數(shù)是一個(gè)非常小的值或理想情況下為0(這意味著0誤差或100%準(zhǔn)確度)。我們現(xiàn)在剩下的m和c的值將是最佳值。

現(xiàn)在回到我們的類比,m可以被認(rèn)為是圖中人員的當(dāng)前位置。D等于斜率的陡度,L是他移動(dòng)的速度?,F(xiàn)在我們使用上面的等式計(jì)算的m的新值將是他的下一個(gè)位置,并且L×D將是步幅的大小。當(dāng)斜率更陡(D更大)時(shí),他需要邁出更大的步幅,當(dāng)它更陡(D更小)時(shí),他邁出更小的步幅。最后他到達(dá)山谷的底部,相當(dāng)于我們的損失= 0。

現(xiàn)在有了m和c的最佳值,我們的模型已經(jīng)準(zhǔn)備好進(jìn)行預(yù)測(cè)了。

實(shí)施模型

現(xiàn)在讓我們將上面的所有內(nèi)容轉(zhuǎn)換為代碼并查看我們的模型!

梯度下降算法是機(jī)器學(xué)習(xí)中最簡(jiǎn)單、應(yīng)用最廣泛的算法之一,主要是因?yàn)樗梢詰?yīng)用于任何函數(shù)來優(yōu)化它。學(xué)習(xí)它為掌握機(jī)器學(xué)習(xí)奠定了基礎(chǔ)。你可以在這里找到數(shù)據(jù)集和代碼:

https//github.com/chasinginfinity/ml-from-scratch/tree/master/02%20Linear%20Regression%20using%20Gradient%20Descent

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
淺顯易懂!「高中數(shù)學(xué)」讀懂梯度下降的數(shù)學(xué)原理
「機(jī)器學(xué)習(xí)入門」(7) 線性回歸算法:原理、公式推導(dǎo)、損失函數(shù)
零基礎(chǔ)入門深度學(xué)習(xí)(2)
神經(jīng)網(wǎng)絡(luò)如何學(xué)習(xí)的?
機(jī)器學(xué)習(xí)干貨,一步一步通過Python實(shí)現(xiàn)梯度下降的學(xué)習(xí)
UC頭條:這就是微積分的強(qiáng)大之處——數(shù)據(jù)可視化中的運(yùn)用
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服