欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Caffe卷積神經(jīng)網(wǎng)絡(luò)視覺層Vision?Layers及參數(shù)詳解

 更新時(shí)間:2022年06月29日 11:31:00   作者:denny402  
這篇文章主要為大家介紹了Caffe卷積神經(jīng)網(wǎng)絡(luò)視覺層Vision?Layers及參數(shù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

所有的層都具有的參數(shù),如name, type, bottom, top和transform_param請參看我的前一篇文章:Caffe卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)層及參數(shù)

本文只講解視覺層(Vision Layers)的參數(shù),視覺層包括Convolution, Pooling,Local Response Normalization (LRN), im2col等層。

1、Convolution層:

就是卷積層,是卷積神經(jīng)網(wǎng)絡(luò)(CNN)的核心層。

層類型:Convolution

lr_mult: 學(xué)習(xí)率的系數(shù),最終的學(xué)習(xí)率是這個(gè)數(shù)乘以solver.prototxt配置文件中的base_lr。

如果有兩個(gè)lr_mult, 則第一個(gè)表示權(quán)值的學(xué)習(xí)率,第二個(gè)表示偏置項(xiàng)的學(xué)習(xí)率。一般偏置項(xiàng)的學(xué)習(xí)率是權(quán)值學(xué)習(xí)率的兩倍。

在后面的convolution_param中,我們可以設(shè)定卷積層的特有參數(shù)。

必須設(shè)置的參數(shù):

  • num_output: 卷積核(filter)的個(gè)數(shù)
  • kernel_size: 卷積核的大小。如果卷積核的長和寬不等,需要用kernel_h和kernel_w分別設(shè)定

其它參數(shù):

  • stride: 卷積核的步長,默認(rèn)為1。也可以用stride_h和stride_w來設(shè)置。
  • pad: 擴(kuò)充邊緣,默認(rèn)為0,不擴(kuò)充。 擴(kuò)充的時(shí)候是左右、上下對稱的,比如卷積核的大小為5*5,那么pad設(shè)置為2,則四個(gè)邊緣都擴(kuò)充2個(gè)像素,即寬度和高度都擴(kuò)充了4個(gè)像素,這樣卷積運(yùn)算之后的特征圖就不會變小。也可以通過pad_h和pad_w來分別設(shè)定。
  • weight_filler: 權(quán)值初始化。 默認(rèn)為“constant",值全為0,很多時(shí)候我們用"xavier"算法來進(jìn)行初始化,也可以設(shè)置為”gaussian"
  • bias_filler: 偏置項(xiàng)的初始化。一般設(shè)置為"constant",值全為0。
  • bias_term: 是否開啟偏置項(xiàng),默認(rèn)為true, 開啟

group: 分組,默認(rèn)為1組。如果大于1,我們限制卷積的連接操作在一個(gè)子集內(nèi)。如果我們根據(jù)圖像的通道來分組,那么第i個(gè)輸出分組只能與第i個(gè)輸入分組進(jìn)行連接。

如果設(shè)置stride為1,前后兩次卷積部分存在重疊。如果設(shè)置pad=(kernel_size-1)/2,則運(yùn)算后,寬度和高度不變。

示例:

layer {
  name: "conv1"
  type: "Convolution"
  bottom: "data"
  top: "conv1"
  param {
    lr_mult: 1
  }
  param {
    lr_mult: 2
  }
  convolution_param {
    num_output: 20
    kernel_size: 5
    stride: 1
    weight_filler {
      type: "xavier"
    }
    bias_filler {
      type: "constant"
    }
  }
}

2、Pooling層

也叫池化層,為了減少運(yùn)算量和數(shù)據(jù)維度而設(shè)置的一種層。

層類型:Pooling

必須設(shè)置的參數(shù):

kernel_size: 池化的核大小。也可以用kernel_h和kernel_w分別設(shè)定。

其它參數(shù):

  • pool: 池化方法,默認(rèn)為MAX。目前可用的方法有MAX, AVE, 或STOCHASTIC
  • pad: 和卷積層的pad的一樣,進(jìn)行邊緣擴(kuò)充。默認(rèn)為0
  • stride: 池化的步長,默認(rèn)為1。一般我們設(shè)置為2,即不重疊。也可以用stride_h和stride_w來設(shè)置。

示例:

layer {
  name: "pool1"
  type: "Pooling"
  bottom: "conv1"
  top: "pool1"
  pooling_param {
    pool: MAX
    kernel_size: 3
    stride: 2
  }
}

pooling層的運(yùn)算方法基本是和卷積層是一樣的。

如果設(shè)置stride為2,前后兩次卷積部分不重疊。100*100的特征圖池化后,變成50*50.

3、Local Response Normalization (LRN)層

此層是對一個(gè)輸入的局部區(qū)域進(jìn)行歸一化,達(dá)到“側(cè)抑制”的效果??扇ニ阉鰽lexNet或GoogLenet,里面就用到了這個(gè)功能

層類型:LRN

參數(shù):全部為可選,沒有必須

  • local_size: 默認(rèn)為5。如果是跨通道LRN,則表示求和的通道數(shù);如果是在通道內(nèi)LRN,則表示求和的正方形區(qū)域長度。
  • alpha: 默認(rèn)為1,歸一化公式中的參數(shù)。
  • beta: 默認(rèn)為5,歸一化公式中的參數(shù)。
  • norm_region: 默認(rèn)為ACROSS_CHANNELS。有兩個(gè)選擇,ACROSS_CHANNELS表示在相鄰的通道間求和歸一化。WITHIN_CHANNEL表示在一個(gè)通道內(nèi)部特定的區(qū)域內(nèi)進(jìn)行求和歸一化。與前面的local_size參數(shù)對應(yīng)。

歸一化公式:對于每一個(gè)輸入, 去除以

得到歸一化后的輸出

示例:

layers {
  name: "norm1"
  type: LRN
  bottom: "pool1"
  top: "norm1"
  lrn_param {
    local_size: 5
    alpha: 0.0001
    beta: 0.75
  }
}

4、im2col層

如果對matlab比較熟悉的話,就應(yīng)該知道im2col是什么意思。它先將一個(gè)大矩陣,重疊地劃分為多個(gè)子矩陣,對每個(gè)子矩陣序列化成向量,最后得到另外一個(gè)矩陣。

看一看圖就知道了:

在caffe中,卷積運(yùn)算就是先對數(shù)據(jù)進(jìn)行im2col操作,再進(jìn)行內(nèi)積運(yùn)算(inner product)。這樣做,比原始的卷積操作速度更快。

看看兩種卷積操作的異同:

以上就是Caffe卷積神經(jīng)網(wǎng)絡(luò)視覺層Vision Layers及參數(shù)詳解的詳細(xì)內(nèi)容,更多關(guān)于Caffe視覺層Vision Layers的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實(shí)現(xiàn)在一行中交換兩個(gè)變量

    Python實(shí)現(xiàn)在一行中交換兩個(gè)變量

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)在一行中交換兩個(gè)變量功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-08-08
  • Python全排列操作實(shí)例分析

    Python全排列操作實(shí)例分析

    這篇文章主要介紹了Python全排列操作,結(jié)合實(shí)例形式分析了Python列表、字符串全排列算法,以及使用標(biāo)準(zhǔn)庫itertools進(jìn)行全排列的相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 解密Python中的作用域與名字空間

    解密Python中的作用域與名字空間

    名字空間對于 Python 來說是一個(gè)非常重要的概念,并且與名字空間這個(gè)概念緊密聯(lián)系在一起的還有名字、作用域這些概念,下面就來剖析這些概念是如何體現(xiàn)的
    2023-02-02
  • 解析django的csrf跨站請求偽造

    解析django的csrf跨站請求偽造

    本文主要介紹了解析django的csrf跨站請求偽造,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • python opencv實(shí)現(xiàn)圖像矯正功能

    python opencv實(shí)現(xiàn)圖像矯正功能

    這篇文章主要為大家詳細(xì)介紹了python opencv實(shí)現(xiàn)圖像矯正功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • pytorch如何對image和label同時(shí)進(jìn)行隨機(jī)翻轉(zhuǎn)

    pytorch如何對image和label同時(shí)進(jìn)行隨機(jī)翻轉(zhuǎn)

    這篇文章主要介紹了pytorch如何對image和label同時(shí)進(jìn)行隨機(jī)翻轉(zhuǎn)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python設(shè)計(jì)密碼強(qiáng)度校驗(yàn)程序

    Python設(shè)計(jì)密碼強(qiáng)度校驗(yàn)程序

    這篇文章主要介紹了Python如何設(shè)計(jì)密碼強(qiáng)度校驗(yàn)程序,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 用python實(shí)現(xiàn)PDF解密打印文件

    用python實(shí)現(xiàn)PDF解密打印文件

    大家好,本篇文章主要講的是用python實(shí)現(xiàn)PDF解密打印文件,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • Python中Playwright?與?pyunit?結(jié)合使用詳解

    Python中Playwright?與?pyunit?結(jié)合使用詳解

    這篇文章主要介紹了Python中Playwright?與?pyunit?結(jié)合使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Python中的異常處理以及自定義異常類型方式

    Python中的異常處理以及自定義異常類型方式

    這篇文章主要介紹了Python中的異常處理以及自定義異常類型方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02

最新評論