MatConvnet工具箱文档翻译理解(2)
1.2 MatConvNet一目了然
MatConvNet具有簡單的設計理念。 它不是將CNN包裹在軟件的復雜層上,而是暴露了直接作為MATLAB命令的計算CNN構造塊的簡單函數,例如線性卷積和ReLU運算符。這些構建塊易于組合成完整的CNN,并且可以用于實現復雜的學習算法。雖然提供了小型和大型CNN架構和培訓例程的幾個現實例子,但是總是可以回到基礎并構建自己的網絡,利用MATLAB在原型中的效率。通常不需要C編碼來嘗試新的體系結構。 因此,MatConvNet是計算機視覺和CNNs研究的理想操練場。?
MatConvNet包含以下元素:?
CNN計算塊?
一組計算CNN的基本構建塊的優化例程。例如,卷積塊由?
y = vl_nnconv(x,f,b)?
實現,其中x是圖像,f是過濾器組,b是偏移矢量(第4.1節)。 導數計算為?
[dzdx,dzdf,dzdb] = vl_nnconv(x,f,b,dzdy)?
其中dzdy是CNN輸出w.r.t y的導數(第4.1節),第四章詳細描述所有塊。
CNN封裝?
MatConvNet提供了一個簡單的包裝器,由vl_simplenn調用,實現具有線性拓撲(一個塊鏈)的CNN。?
它還提供了一個更加靈活的包裝器,支持具有任意拓撲的網絡,封裝在dagnn,DagNN MATLAB類中。
示例應用程序?
MatConvNet提供了幾個在MNIST,CIFAR10和ImageNet數據上學習具有隨機梯度下降和CPU或GPU的CNN的示例。
預訓練模型?
MatConvNet提供了幾種先進的預先訓練的CNN模型,可以用于現成的,用于分類圖像或在Caffe或DeCAF的精神下產生的圖像編碼。
1.3文檔和示例
有關MatConvNet的三個主要信息來源。?
**首先,網站包含所有功能的描述和幾個例子和教程。?
第二,有一個PDF手冊,其中包含大量有關工具箱的技術細節,包括構建塊的詳細數學描述。?
第三,MatConvNet附有幾個例子(第1.1節)。**
大多數示例是完全自包含的。?
例如,為了運行MNIST示例,它將MATLAB指向MatConvNet根目錄,并鍵入addpath <-examples,后跟cnn_mnist。?
由于問題大小,ImageNet ILSVRC示例需要一些更多準備,包括下載和預處理圖像(使用捆綁腳本utils /preprocess
1.5致謝
MatConvNet是一個社區項目,因此感謝所有貢獻者。我們衷心感謝NVIDIA支持這個項目,為我們提供了頂級的GPU和MathWorks,以進行關于如何改進庫的討論。?
在這個庫中的幾個CNN計算的實現是受到Caffe庫的啟發[5](然而,Caffe不是依賴),幾個示例網絡已經由Karen Simonyan作為[1]和[10]的一部分訓練。
總結
以上是生活随笔為你收集整理的MatConvnet工具箱文档翻译理解(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谁叫飞鸽传书啊?
- 下一篇: Windows下C语言网络编程快速入门