您現在的位置是:首頁 > 綜合

零基礎機器學習入門——淺談神經網路(二)

  • 由 智商249 發表于 綜合
  • 2021-10-13
簡介淺談神經網路(一)我們已經簡單地談了線性擬合問題,接下來我們聊一聊更普遍的方法:根據直線的斜率和擬合的誤差繪製曲線如下:誤差函式曲線從圖中可以看出,誤差的函式曲線是個二次曲線[微笑]透過導數計算斜率如圖,對曲線求導很簡單就計算出過某點直線的

曲線的斜率怎麼求

淺談神經網路(一)

我們已經簡單地談了線性擬合問題,接下來我們聊一聊更普遍的方法:

根據直線的斜率和擬合的誤差繪製曲線如下:

零基礎機器學習入門——淺談神經網路(二)

誤差函式曲線

從圖中可以看出,誤差的函式曲線是個二次曲線[微笑]

零基礎機器學習入門——淺談神經網路(二)

透過導數計算斜率

如圖,對曲線求導很簡單就計算出過某點直線的斜率。我們前面提過過,需要透過不斷旋轉直線來找到最優點。直線每次旋轉的幅度就是學習率(Learning Rate)[微笑]。如上圖一組資料只包含單一的波峰波谷,只是理想情況。現實情況非常複雜,都會包含好多個波峰波谷:

零基礎機器學習入門——淺談神經網路(二)

多波峰波谷資料

對於凹凸不平的誤差函式曲線,梯度下降時有可能陷入區域性最優解。下圖的曲線中有兩個坑,切線有可能在第一個坑的最底部趨於水平

知識儲備

1

曲線一次求導,得到曲線的斜率

2

斜率為0處為峰值(最大或最小值)

我們都學習過的微積分吧,用在這裡就是專門求曲線切線的工具。求切線斜率的過程就是計算導數(Derivative),用dy/dx或f‘(x)表示。如果要同時求多個曲線的切線,那麼其中某個切線的斜率就叫偏導數(Partial Derivative),用∂y/∂x表示。我們一般都是對多變數進行處理,導數也一般都是指偏導數。

以上是線性迴歸(Linear Regression)的基本內容,以此方法為基礎,把直線公式改為曲線公式,還可以擴展出二次迴歸、三次迴歸、多項式迴歸等多種曲線迴歸

零基礎機器學習入門——淺談神經網路(二)

曲線迴歸更精確

直線方程y=kx+b改為二次曲線方程y=ax^2+bx+c時,引數(Parameter)由2個(分別是k、b)變為3個(分別是a、b、c),特徵(Feature)由1個(x)變為2個(x^2和x)。三次曲線和複雜的多項式迴歸會增加更多的引數和特徵

到此為止都是總結一串數字的規律,那我們前面說的影象,在計算機中儲存是一個矩陣,包含好多串數字該怎麼處理呢?

下一節我們來聊聊更復雜的資料處理:

零基礎機器學習入門——淺談神經網路(三)

Top