前向全連接神經(jīng)網(wǎng)絡是一種經(jīng)常采用的人工神經(jīng)網(wǎng)絡,如下圖:

再給一個示例,堅持看下去:

深度學習。
我們可以看到上面的神經(jīng)網(wǎng)絡有很多層,那么抽象一下,下面這種神經(jīng)網(wǎng)絡類型就叫做深度學習。

深度學習是指有多個隱藏層的人工神經(jīng)網(wǎng)絡,我們終于揭開了深度學習這個馬甲,從數(shù)學角度來講,它沒有什么好神秘的。
一個應用例子。
輸入一個手寫字,判定屬于哪個數(shù)字(假如限定0-9),大家似曾相識吧。

圖片是256*256像素,數(shù)字化后,1代表有色,0代表無色,這樣,輸入就變成1個256維變量,輸出每個位置數(shù)據(jù)表達的是屬于該位置數(shù)據(jù)的置信度,比如輸出分類器自上而下分別代表1,2,3,4,5,..0,輸出的數(shù)據(jù)代表的是這個數(shù)字的置信度,這里輸出中2的位置的置信度最大是0.7,則判定這張圖片分類成2。
圖像識別也是這么來的,只不過輸出的分類除了數(shù)字,可能還包括動物,比如貓,狗,用的識別工具就是人工神經(jīng)網(wǎng)絡,下圖示例了識別過程,核心就是,尋找一張合適的神經(jīng)網(wǎng)絡。

那么,到底如何實現(xiàn)呢?
首先,準備一堆的訓練圖片和標識:

其次,訓練目標如下圖所示,要求在輸入圖片1的時候,對應的y1要最大,輸入圖片2的時候,對應的y2要最大。

再次,要設置一個損失函數(shù)L,標識訓練的好壞,也就是訓練識別的結果跟實際盡量匹配,假如輸入的圖片是1,則最后y1最好是1,而其他y2-y10最好全是0,這樣損失函數(shù)L就是最小,即0,如下圖示例:

而如何讓L最小呢,這是神經(jīng)網(wǎng)絡最核心的東西,大家前面已經(jīng)看到,實際上這個網(wǎng)絡的未知數(shù)有權重w,偏移量b(常量),我們一般叫它神經(jīng)網(wǎng)絡的參數(shù)θ,這是一個未知數(shù)求解的問題。
如何選擇θ,讓L最小,需要進行求解。
不做非常艱難的公式推導,我只給出結果,由于L是w的函數(shù),假設向量W是兩維w1,w2,則函數(shù)圖形化后如下:

我們的目的就是去尋找這張圖L的最低點,一旦最低點確定,w1,w2也確定了,那整個神經(jīng)網(wǎng)絡就確定了,一般采用梯度下降方法,就是對W求導,能夠明確參數(shù)增減的方向,如果你微積分還記得的話。
尋找的辦法一般步驟如下:
首先,初始化W,也就是w1,w2,就是隨便找一組初始化參數(shù)。
其次,計算L對W的導數(shù)(也就是梯度),判斷W參數(shù)應該的走向,然后重置W:

最后,當選擇的W使得L最小值變化不大時,就終止,表示此時選擇的參數(shù)可以滿意了。
就好比你在玩帝國時代,需要探索地圖的最低點:

由于神經(jīng)網(wǎng)絡有很多層次,很多激活函數(shù),因此這個求解的方法非常復雜,其中反向傳播算法(Backpropagation)是最通用的一種求解方法。