MatConvnet工具箱文档翻译理解(3)
第2章 神經網絡計算
本章簡要介紹了神經網絡的計算方面,尤其是卷積神經網絡,強調了理解和使用MatConvNet所需的概念。
2.1概述
神經網絡(NN)是將數據x(例如圖像)映射到輸出向量y(例如圖像標簽)的函數。函數g = fL … f 1是較簡單函數序列fl的組合,稱為計算塊或層。令x1; x2; :::; xL是網絡中每個層的輸出,并且令x0 = x表示網絡輸入。通過應用具有參數wl的函數fl,從先前輸出xl-1計算每個中間輸出xl = fl(xl-1; wl)。
在卷積神經網絡(CNN)中,數據具有空間結構,是3D陣列或張量,其中第一兩維H1(高度)和W1(寬度)被解釋為空間維度。第三維度C1被解釋為特征通道的數量。因此,張量x1表示C1維特征向量的H1 * W1字段,每個空間位置一個。張量中的第四維N1跨越多個數據樣本,這些數據樣本被打包在單個批次中用于效率并行處理。一個批次中的數據樣本N1的數量被稱為批量基數。網絡被稱為卷積,因為函數f1是本地和轉換不變操作符(即非線性濾波器),如線性卷積。
還可以設想具有多于兩個空間維度的CNN,其中附加尺寸可以表示體積或時間。 事實上,幾乎沒有先驗對神經網絡中數據格式的限制。 許多有用的NN包含卷積層與處理其他數據類型(例如文本字符串)的層的混合,或者執行不嚴格符合CNN假設的其他操作。
MatConvNet包括各種圖層,包含在matlab /目錄中,例如vl_nnconv(卷積),vl_nnconvt(卷積轉置或去卷積)vl_nnpool(最大和平均池),vl_nnrelu(ReLU激活),vl_nnsigmoid(Sigmoid激活),vl_nnsoftmax(softmax運算符),vl_nnloss(分類正常丟失),vl_nnbnorm(分批正規化),vl_nnspnorm(空間規范化),vl_nnnormalize(局部響應規范化LRN)或vl_nnpdist(p距離)。?
有足夠多的層來實現許多有趣的最先進的網絡開箱即用,甚至從其他工具箱,如caffe導入。?
NNs通常用作分類器或回歸。在fig. 1.1的示例中,輸出^ y = f(x)是概率的向量,一個用于1000個可能的圖像標簽(狗,貓,三葉蟲,…)中的每一個。如果y是圖像x的真實標簽,我們可以通過損失函數來測量CNN性能,該損失函數對分類錯誤賦予懲罰。然后可以調整或學習CNN參數以最小化在標記的示例圖像的大數據集上的平均損失。
學習通常使用隨機梯度下降(SGD)的變體。 雖然這是一個有效的方法(對于這種類型的問題),但網絡可能包含幾百萬個參數,需要在數百萬的圖像上進行訓練; 因此,效率是MATLAB設計中的一個重要部分,如第1.4節中進一步討論的。 SGD還需要計算CNN導數,如下一節所述。
2.2網絡結構
在最簡單的情況下,NN中的層按順序排列; 然而,更復雜的互連也是可能的,并且事實上在許多情況下非常有用。 本節討論這種配置,并引入一個圖形符號來可視化它們。
2.2.1序列
首先考慮網絡中的計算塊f。 這可以表示示意性地作為接收數據x和參數w作為輸入并且產生數據y作為輸出的框:?
?
如上所述,在最簡單的情況下,塊被鏈接在序列f1-> f2-> … fL中,產生以下結構:?
給定輸入x0,評估網絡是評估所有塊的簡單問題。從左到右,其定義復合函數xL = f(x0; w1;:::; wL)。
2.2 網絡結構
2.2.2定向非循環圖
一個不限于一個接一個地鏈接層。 事實上,評估NN唯一的要求是,當必須評估層時,在其之前已經評估了其所有輸入。 當層之間的互連形成有向無環圖或簡稱DAG時,這是可能的。?
為了可視化DAG,引入用于網絡變量的附加節點是有用的,fig.2.1的示例中那樣。這里框表示函數,圓圈表示變量(參數被視為特殊類型的變量)。 在該示例中,x0和x4是CNN的輸入,x6和x7是輸出。?
函數可以采取任何數量的輸入(例如f3和f5取兩個)并且具有任何數量的輸出(例如f4具有兩個)。 這個圖的幾個值得注意的屬性:?
1圖表是二分的,在某種意義上,箭頭總是從框到圓和?
從圓圈到框。?
2函數可以有任意數量的輸入或輸出; 變量和參數可以具有任意數量的輸出(具有更多一個輸出的參數被共享在不同層之間); 變量最多只有一個輸入和參數無。?
3沒有輸入箭頭和參數的變量不由網絡計算,但必須在評估之前設置,即它們是輸入。 任何變量(或甚至參數)可以用作輸出,但是這些變量通常是沒有輸出的變量。?
4由于圖是非循環的,因此可以通過對函數和函數進行排序來評估CNN一個接一個地計算它們(在該示例中,評估函數階f1; f2; f3; f4; f5將工作)。
2.3計算具有反向傳播的導數
學習NN需要計算相對于網絡的損失的導數參數。使用稱為反向傳播的算法計算導數,其是用于導數的鏈規則的存儲器有效實現。首先,我們討論單層的導數,然后討論整個網絡的導數。
2.3.1張量函數的導數
···這一章公式太多,不知道怎么在這個編輯器頁面上打公式,暫時放一下,以后有時間再補上···主要是原理,在前面CNN基本模型里已經有分析,做這個主要還是為了用工具包···
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的MatConvnet工具箱文档翻译理解(3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Sound recording and
- 下一篇: 什么是飞鸽传书