在神經網路中,多元微積分被廣泛應用於模型引數的更新

下面我們一起來看看吧

在神經網路中,多元微積分被廣泛應用於模型引數的更新

本教程分為三個部分:

再論函式的概念

多元函式的導數

多元微積分在機器學習中的應用

我們已經熟悉了函式概念,作為定義因變數和自變數之間關係的規則。我們已經看到,函式通常由y=f(x),其中輸入(或自變數),x,以及輸出(或因變數),y,是單個實數。

這種函式接受一個獨立變數並定義輸入和輸出之間的一對一對映,稱為單變數功能。

例如,假設我們僅僅根據溫度來預測天氣。在這種情況下,天氣是我們試圖預測的因變數,它是溫度作為輸入變數的函式。因此,這樣一個問題可以很容易地被構造成一個單變數函式。

然而,讓我們說,我們現在想要根據我們的天氣預報的溼度水平和風速,除了溫度。我們不能透過單變數函式來做到這一點,在單變數函式中,輸出完全依賴於單個輸入。

因此,我們把注意力轉向多變數函式,因為這些函式可以接受多個變數作為輸入。

形式上,我們可以將多元函式表示為幾個實際輸入變數之間的對映,n,一個真正的產出:

在神經網路中,多元微積分被廣泛應用於模型引數的更新

例如,考慮以下拋物面:

f(x,y) =x2 2y2

這是一個多變數函式,它包含兩個變數,x和y,作為輸入,因此n=2,產生輸出。我們可以透過圖形化它的價值來使它形象化x和y在-1到1之間。

在神經網路中,多元微積分被廣泛應用於模型引數的更新

類似地,我們可以使用多變數函式作為輸入。然而,想象它們可能是困難的,因為所涉及的維度的數量。

我們甚至可以透過考慮對映多個輸入的函式來進一步推廣函式的概念,n,對於多個輸出,m:

在神經網路中,多元微積分被廣泛應用於模型引數的更新

這些函式更常被稱為向量值職能。

這個微積分與變化率的研究有關。對於一些單變數函式,g(x),這可以透過計算其導數來實現:

在神經網路中,多元微積分被廣泛應用於模型引數的更新

導數對多變數函式的推廣是梯度。

求多個變數函式的梯度的技術是一次改變每一個變數,同時保持其他變數不變。以這種方式,我們將採取偏導數我們的多元函式相對於每一個變數,每一次。

梯度就是這些偏導數的集合。

為了更好地視覺化這一技術,讓我們首先考慮以下形式的一個簡單的單變數二次函式:

g(x) =x2

在神經網路中,多元微積分被廣泛應用於模型引數的更新

在某個點找到這個函式的導數,x,則需要將方程應用於g’(x)我們早些時候已經定義了。或者,我們可以透過使用權力規則來選擇捷徑,以發現:

G‘(X)) = 2x

此外,如果我們不得不想象在前面考慮過的拋物線面切片時,有一架飛機經過y=0,我們意識到結果的橫截面f(x,y)是二次曲線,g(x) =x2。因此,我們可以計算導數(或陡度,或坡度)拋物線面的方向。x的導數f(x,y)但是保持y常量。我們將此稱為部分導數f(x,y)關於x,並將其表示為?表示除了x但目前還沒有考慮這些問題。因此,偏導數相對於x的f(x,y)是:

在神經網路中,多元微積分被廣泛應用於模型引數的更新

我們也可以x常數(或者,換句話說,透過將拋物線面切成一個經過常數值的平面來求它的橫截面)。x)的偏導數f(x,y)關於y,如下:

在神經網路中,多元微積分被廣泛應用於模型引數的更新

我們所做的就是我們找到了f(x,y)在每個x和y方向。結合兩個單變數導數作為最後一步,給出多元導數(或梯度):

在神經網路中,多元微積分被廣泛應用於模型引數的更新

同樣的技術仍然適用於高維函式。

偏導數在神經網路中被廣泛應用於模型引數(或權值)的更新。

我們見過在最小誤差函式的情況下,最佳化演算法將尋求跟隨其梯度下坡。如果這個誤差函式是單變數的,因此是一個獨立權重的函式,那麼最佳化它只需要計算它的一元導數。

然而,一個神經網路包含多個權重(每個權重歸因於一個不同的神經元),其中誤差是一個函式。因此,更新權重值需要對所有這些權重計算誤差曲線的梯度。

這就是多元微積分的應用發揮作用的地方。

誤差曲線的梯度是透過求誤差相對於每個權重的偏導數來計算的;或者在其他條件下,透過保持除所考慮的權值以外的所有權重不變來求誤差函式的導數。這使得每個權重可以獨立於其他權重進行更新,從而達到找到一組最優權重的目標。

頂部