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

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

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

引言

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

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

1、Convolution層:

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

層類(lèi)型: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: 卷積核的大小。如果卷積核的長(zhǎng)和寬不等,需要用kernel_h和kernel_w分別設(shè)定

其它參數(shù):

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

group: 分組,默認(rèn)為1組。如果大于1,我們限制卷積的連接操作在一個(gè)子集內(nèi)。如果我們根據(jù)圖像的通道來(lái)分組,那么第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è)置的一種層。

層類(lèi)型: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: 池化的步長(zhǎng),默認(rèn)為1。一般我們?cè)O(shè)置為2,即不重疊。也可以用stride_h和stride_w來(lái)設(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)層

此層是對(duì)一個(gè)輸入的局部區(qū)域進(jìn)行歸一化,達(dá)到“側(cè)抑制”的效果。可去搜索AlexNet或GoogLenet,里面就用到了這個(gè)功能

層類(lèi)型:LRN

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

  • local_size: 默認(rèn)為5。如果是跨通道LRN,則表示求和的通道數(shù);如果是在通道內(nèi)LRN,則表示求和的正方形區(qū)域長(zhǎng)度。
  • 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ù)對(duì)應(yīng)。

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

得到歸一化后的輸出

示例:

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

4、im2col層

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

看一看圖就知道了:

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

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

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

相關(guān)文章

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

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

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

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

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

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

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

    解析django的csrf跨站請(qǐng)求偽造

    本文主要介紹了解析django的csrf跨站請(qǐng)求偽造,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(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如何對(duì)image和label同時(shí)進(jìn)行隨機(jī)翻轉(zhuǎn)

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

    這篇文章主要介紹了pytorch如何對(duì)image和label同時(shí)進(jìn)行隨機(jī)翻轉(zhuǎn)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(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é)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下
    2022-02-02
  • Python中Playwright?與?pyunit?結(jié)合使用詳解

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

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

    Python中的異常處理以及自定義異常類(lèi)型方式

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

最新評(píng)論