1. 程式人生 > >斯坦福大學公開課機器學習:Neural network-model representation(神經網絡模型及神經單元的理解)

斯坦福大學公開課機器學習:Neural network-model representation(神經網絡模型及神經單元的理解)

如何 work 單元 pre 結果 mda s函數 額外 權重

神經網絡是在模仿大腦中的神經元或者神經網絡時發明的。因此,要解釋如何表示模型假設,我們先來看單個神經元在大腦中是什麽樣的。如下圖,我們的大腦中充滿了神經元,神經元是大腦中的細胞,其中有兩點值得我們註意,一是神經元有細胞主體,二是神經元有一定數量的輸入神經。這些輸入神經叫做樹突,可以把它們想象成輸入電線,它們接收來自其他神經元的信息,神經元的輸出神經叫做軸突,這些輸出神經是用來給其他神經元傳遞信號或者傳送信息的。簡而言之,神經元是一個計算單元,它從輸入神經接受一定數目的信息,並做一些計算,然後將結果通過它的軸突傳送到其他節點,或者大腦中的其他神經元。右下圖是一組神經元的示意圖,神經元利用微弱的電流進行溝通,這些弱電流也稱作動作電位,其實就是一些微弱的電流,所以如果神經元想要傳遞一個消息,它就會就通過它的軸突發送一段微弱電流給其他神經元。這是一條連接到輸入神經或者連接另一個神經元樹突的神經,接下來這個神經元接收這條消息做一些計算。它有可能會反過來將在軸突上的自己的消息傳給其他神經元。這就是所有人類思考的模型:我們的神經元把自己的收到的消息進行計算並向其他神經元傳遞信息。這也是我們的感覺和肌肉運轉的原理,如果你想活動一塊肌肉,就會觸發一個神經元給你的肌肉發送脈沖,並引起你的肌肉收縮。如果一些感官,比如說眼睛想要給大腦傳遞一個消息,那麽它就像這樣發送電脈沖給大腦。

技術分享圖片

Neuron model:logistic unit

在一個神經網絡裏,或者說在我們在電腦上實現的人工神經網絡裏,我們將使用一個非常簡單的模型,來模擬神經元的工作。我們將神經元模擬成一個邏輯單元,當畫一個黃色圓圈時(黃色小圈代表一個單一的神經元,下圖所示),你應該把它想象成作用類似於神經元的東西,然後我們通過它的樹突或者說它的輸入神經傳遞給它一些信息,然後神經元做一些計算,並通過它的輸出神經,即它的軸突輸出計算結果,當畫一個像這樣的圖表時,就表示對h(x)的計算,h(x)等於1除以1+e的負θ轉置乘以x。通常,x和θ是參數向量。這是一個簡單的模型,甚至說是一個過於簡單的模擬神經元的模型。它被輸入x1、x2和x3,然後輸出一些類似這樣的結果。當繪制一個神經網絡時,通常只繪制輸入節點x1、x2和x3。但有時也可以這樣做:增加一個額外的節點x0,這個x0節點,有時也被稱作偏置單位或偏置神經元,但因為x0總是等於1,所以有時候會畫出它,有時不會畫出,這取決於它是否對例子有利。現在討論最後一個關於神經網絡的術語,有時我們會說這是一個神經元,一個有s型函數或者邏輯函數作為激勵函數的人工神經元。在神經網絡術語中,激勵函數只是對類似非線性函數g(z)的另一個術語稱呼,g(z)等於1除以1加e的-z次方。到目前為止,θ一直被稱為模型的參數,以後大概會繼續將這個術語與“參數”相對應,而不是與神經網絡。在關於神經網絡的文獻裏,有時可能會看到人們談論一個模型的權重,權重其實和模型的參數是一樣的東西。

技術分享圖片

神經網絡其實就是不同的神經元組合在一起的集合,具體來說,就是我們輸入單元x1、x2和x3(如下圖),有時候也可以畫上額外的節點x0. 這裏有個神經元,我們寫成a1(2),a2(2),a3(2)。然後再次說明,我們可以在這裏添加一個a0,和一個額外的偏度單元,它的值永遠是1,最後我們在最後一層有第三個節點,正是這第三個節點,輸出假設函數h(x)計算的結果。再多說一點關於神經網絡的術語網絡中的第一層也被稱為輸入層,因為我們在這一層輸入我們的特征項x1、x2和x3,最後一層也稱為輸出層,中間的兩層也被稱作隱藏層,隱藏層不是一個很合適的術語,但是直覺上我們知道在監督學習中,你能看到輸入,也能看到正確的輸出。而隱藏層的值,你在訓練集裏是看不到的。它的值不是x,也不是y,所以我們叫它隱藏層。稍後我們會看到神經網絡可以有不止一個的隱藏層,但在這個例子中,我們有一個輸入層—第1層、一個隱藏層—第2層和一個輸出層—第3層。但實際上任何非輸入層或非輸出層的層就被稱為隱藏層。

技術分享圖片

為了解釋神經網絡具體的計算步驟,下圖有些記號要解釋,使用a上標(j)、下標i表示第j層的第i個神經元或單元。具體來說,a上標(2)、下標1,表示第2層的第一個激活值,所謂激勵(activation)是指由一個具體神經元讀入計算並輸出的值。此外,神經網絡被這些矩陣參數化,θ上標(j) 將成為一個波矩陣控制著從一層,比如說從第一層到第二層或者第二層到第三層的作用。下圖的第一個隱藏單元是這樣計算它的值的:a(2)1等於s函數或者說s激勵函數,也叫做邏輯激勵函數,作用在這種輸入的線性組合上的結果。第二個隱藏單元,等於s函數作用在這個線性組合上的值。參數矩陣控制了來自三個輸入單元、三個隱藏單元的映射。因此θ1的維數將變成3。θ1將變成一個3乘4維的矩陣。更一般的, 如果一個網絡在第j層有sj個單元,在j+1層有sj+1個單元,那麽矩陣θ(j),即控制第j層到第j+1層映射的矩陣的維度為sj+1* (sj+1)。所以θ(j)的維度是sj+1行、sj+1列。

技術分享圖片

斯坦福大學公開課機器學習:Neural network-model representation(神經網絡模型及神經單元的理解)