哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

BN算法和過程

gVTR_Unf ? 來源: 機(jī)器學(xué)習(xí)煉丹術(shù) ? 作者:機(jī)器學(xué)習(xí)煉丹術(shù) ? 2020-09-07 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 BN的優(yōu)點(diǎn)

這里簡(jiǎn)單的介紹一下BN,在之前的文章中已經(jīng)詳細(xì)的介紹了BN算法和過程。

BN于2015年由 Google 提出,Google在ICML論文中描述的非常清晰,即在每次SGD時(shí),通過mini-batch來對(duì)相應(yīng)的activation做規(guī)范化操作,使得結(jié)果(輸出信號(hào)各個(gè)維度)的均值為0,方差為1。最后的“scale and shift”操作則是為了訓(xùn)練所需而“刻意”加入的BN能夠有可能還原最初的輸入,從而保證數(shù)據(jù)中有用信息的留存。

【BN的好處】

BN使得網(wǎng)絡(luò)中每層輸入數(shù)據(jù)的分布相對(duì)穩(wěn)定,加速模型學(xué)習(xí)速度;

BN使得模型對(duì)網(wǎng)絡(luò)中的參數(shù)不那么敏感,簡(jiǎn)化調(diào)參過程,使得網(wǎng)絡(luò)學(xué)習(xí)更加穩(wěn)定;

BN允許網(wǎng)絡(luò)使用飽和性激活函數(shù)(例如sigmoid,tanh等),緩解梯度消失問題;

BN具有一定的正則化效果。

2 BN的缺點(diǎn)

2.1 受限于Batch size

BN 沿著 batch 維度進(jìn)行歸一化,其受限于 Batch Size,當(dāng) Batch Size 很小時(shí),BN 會(huì)得到不準(zhǔn)確的統(tǒng)計(jì)估計(jì),會(huì)導(dǎo)致模型誤差明顯增加

【一般每塊 GPU 上 Batch Size =32 最合適?!?/p>

但對(duì)于目標(biāo)檢測(cè),語(yǔ)義分割,視頻場(chǎng)景等,輸入圖像尺寸比較大,而限于GPU顯卡的顯存限制,導(dǎo)致無法設(shè)置較大的 Batch Size,如 經(jīng)典的Faster-RCNN、Mask R-CNN 網(wǎng)絡(luò)中,由于圖像的分辨率較大,Batch Size 只能是 1 或 2.

2.2 訓(xùn)練集與測(cè)試集的分布

BN處理訓(xùn)練集的時(shí)候,采用的均值和方差是整個(gè)訓(xùn)練集的計(jì)算出來的均值和方差(這一部分沒有看懂的話,可能需要去看一下BN算法的詳解)

所以測(cè)試和訓(xùn)練的數(shù)據(jù)分布如果存在差異,那么就會(huì)導(dǎo)致訓(xùn)練和測(cè)試之間存在不一致現(xiàn)象(Inconsistency)。

3 Group Normalzation

Group Normalization(GN)是由2018年3月份何愷明團(tuán)隊(duì)提出,GN優(yōu)化了BN在比較小的mini-batch情況下表現(xiàn)不太好的劣勢(shì)。

Group Normalization(GN) 則是提出的一種 BN 的替代方法,其是首先將 Channels 劃分為多個(gè) groups,再計(jì)算每個(gè) group 內(nèi)的均值和方法,以進(jìn)行歸一化。GB的計(jì)算與Batch Size無關(guān),因此對(duì)于高精度圖片小BatchSize的情況也是非常穩(wěn)定的,

下圖是比較BN和GN在Batch Size越來越小的變化中,模型錯(cuò)誤率變化的對(duì)比圖:

因此在實(shí)驗(yàn)的時(shí)候,可以在嘗試使用GN來代替BN哦~

其實(shí)不難發(fā)現(xiàn),GN和LN是存在一定的關(guān)系的。

上圖中有四種Normalization的方法。就先從最簡(jiǎn)單的Instance Normalization開始分析:

IN:僅僅對(duì)每一個(gè)圖片的每一個(gè)通道最歸一化。也就是說,對(duì)【H,W】維度做歸一化。假設(shè)一個(gè)特征圖有10個(gè)通道,那么就會(huì)得到10個(gè)均值和10個(gè)方差;要是一個(gè)batch有5個(gè)樣本,每個(gè)樣本有10個(gè)通道,那么IN總共會(huì)計(jì)算出50個(gè)均值方差;

LN:對(duì)一個(gè)特征圖的所有通道做歸一化。5個(gè)10通道的特征圖,LN會(huì)給出5個(gè)均值方差;

GN:這個(gè)是介于LN和IN之間的一種方法。假設(shè)Group分成2個(gè),那么10個(gè)通道就會(huì)被分成5和5兩組。然后5個(gè)10通道特征圖會(huì)計(jì)算出10個(gè)均值方差。

BN:這個(gè)就是對(duì)Batch維度進(jìn)行計(jì)算。所以假設(shè)5個(gè)100通道的特征圖的話,就會(huì)計(jì)算出100個(gè)均值方差。5個(gè)batch中每一個(gè)通道就會(huì)計(jì)算出來一個(gè)均值方差。

在GN的論文中,給出了GN推薦的group Number:

第一個(gè)表格展示GN的group Number不斷減小,退化成LN的過程。其實(shí),分組32個(gè)group效果最好;

第二個(gè)表格展示GN的每一組的channel數(shù)目不斷減小,退化成IN的過程。每一組16個(gè)channel的效果最好,我個(gè)人在項(xiàng)目中也會(huì)有優(yōu)先嘗試16個(gè)通道為一組的這種參數(shù)設(shè)置。

4 PyTorch實(shí)現(xiàn)GN

importnumpyasnp importtorch importtorch.nnasnn classGroupNorm(nn.Module): def__init__(self,num_features,num_groups=32,eps=1e-5): super(GroupNorm,self).__init__() self.weight=nn.Parameter(torch.ones(1,num_features,1,1)) self.bias=nn.Parameter(torch.zeros(1,num_features,1,1)) self.num_groups=num_groups self.eps=eps defforward(self,x): N,C,H,W=x.size() G=self.num_groups assertC%G==0 x=x.view(N,G,-1) mean=x.mean(-1,keepdim=True) var=x.var(-1,keepdim=True) x=(x-mean)/(var+self.eps).sqrt() x=x.view(N,C,H,W)

當(dāng)然,你要是想問PyTorch是否已經(jīng)集成了GN?那必然的。下面的代碼比較了PyTorch集成的GN和我們手算的GN的結(jié)果。

importtorch importtorch.nnasnn x=torch.randn([2,10,3,3])+1 #Torch集成的方法 m=torch.nn.GroupNorm(num_channels=10,num_groups=2) #先計(jì)算前面五個(gè)通道的均值 firstDimenMean=torch.Tensor.mean(x[0,0:5]) #先計(jì)算前面五個(gè)通道的方差 firstDimenVar=torch.Tensor.var(x[0,0:5],False) #減去均值乘方差 y2=((x[0][0][0][1]-firstDimenMean)/(torch.pow(firstDimenVar+m.eps,0.5)))*m.weight[0]+m.bias[0] print(y2) y1=m(x) print(m.weight) print(m.bias) print(y1[0,0,0,1])

輸出結(jié)果:

tensor(0.4595,grad_fn=) Parametercontaining: tensor([1.,1.,1.,1.,1.,1.,1.,1.,1.,1.],requires_grad=True) Parametercontaining: tensor([0.,0.,0.,0.,0.,0.,0.,0.,0.,0.],requires_grad=True) tensor(0.4595,grad_fn=)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Google
    +關(guān)注

    關(guān)注

    5

    文章

    1814

    瀏覽量

    60633
  • 圖像
    +關(guān)注

    關(guān)注

    2

    文章

    1096

    瀏覽量

    42438
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    813

    瀏覽量

    14923

原文標(biāo)題:小白學(xué)圖像 | Group Normalization詳解+PyTorch代碼

文章出處:【微信號(hào):Unfinished_coder,微信公眾號(hào):機(jī)器視覺CV】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    電子工程師必看:HGTG10N120BN等IGBT器件深度剖析

    電子工程師必看:HGTG10N120BN等IGBT器件深度剖析 在電子工程領(lǐng)域,IGBT(Insulated Gate Bipolar Transistor,絕緣柵雙極型晶體管)作為一種重要的功率
    的頭像 發(fā)表于 04-22 14:20 ?65次閱讀

    Onsemi FDC655BN N 溝道邏輯電平 MOSFET 介紹

    Onsemi FDC655BN N 溝道邏輯電平 MOSFET 介紹 在電子設(shè)計(jì)領(lǐng)域,MOSFET 作為關(guān)鍵器件,廣泛應(yīng)用于各類電路中。今天,我們將深入了解 Onsemi 推出的一款 N 溝道邏輯
    的頭像 發(fā)表于 04-21 14:10 ?89次閱讀

    PID控制的算法

    PID及其衍生算法是應(yīng)用最廣泛的算法之一,是當(dāng)之無愧的萬能算法,如果能夠熟練掌握PID算法的設(shè)計(jì)與實(shí)現(xiàn)過程,對(duì)于一般的研發(fā)人員來講,應(yīng)該是足
    發(fā)表于 01-23 08:18

    講解C語(yǔ)言代碼的實(shí)現(xiàn)過程

    重點(diǎn)講解C語(yǔ)言代碼的實(shí)現(xiàn)過程,算法的C語(yǔ)言實(shí)現(xiàn)過程具有一般性,通過PID算法的C語(yǔ)言實(shí)現(xiàn),可以以此類推,設(shè)計(jì)其它算法的C語(yǔ)言實(shí)現(xiàn)。 第一步:
    發(fā)表于 01-21 07:58

    用于單片機(jī)幾種C語(yǔ)言算法

    : 數(shù)字濾波無需其他的硬件成本,只有一個(gè)計(jì)算過程,可靠性高,不存在阻抗匹配問題。尤其是數(shù)字濾波可以對(duì)頻率很低的信號(hào)進(jìn)行濾波,這是模擬濾波器做不到的。 數(shù)字濾波使用軟件算法實(shí)現(xiàn),多輸入通道可共用一個(gè)濾波程序
    發(fā)表于 11-27 06:00

    SM4算法實(shí)現(xiàn)分享(一)算法原理

    SM4分組加密算法采用的是非線性迭代結(jié)構(gòu),以字為單位進(jìn)行加密、解密運(yùn)算,每次迭代稱為一輪變換,每輪變換包括S盒變換、非線性變換、線性變換、合成變換。加解密算法與密鑰擴(kuò)展都是采用32輪非線性迭代結(jié)構(gòu)
    發(fā)表于 10-30 08:10

    Camellia算法的實(shí)現(xiàn)(基于開源蜂鳥E203協(xié)處理器)

    FL函數(shù)和FL-1函數(shù)的運(yùn)算過程,運(yùn)算過程與上面的F函數(shù)類似,拆分成基本運(yùn)算就是異或,移位和與運(yùn)算等。 本文主要解釋了Camellia算法的原理,以及實(shí)現(xiàn)過程,下一篇文檔將會(huì)介紹Cam
    發(fā)表于 10-30 07:04

    如何使用恢復(fù)算法來實(shí)現(xiàn)開平方運(yùn)算

    本文主要描述如何使用恢復(fù)算法來實(shí)現(xiàn)開平方運(yùn)算。 簡(jiǎn)介 開平方的恢復(fù)算法其實(shí)與除法的恢復(fù)算法十分相似。首先我們假設(shè)X為輸入的操作數(shù)(它應(yīng)該為正數(shù)),而他的平方根可以表示為Qn=0.q1q2q3
    發(fā)表于 10-24 13:33

    國(guó)密系列算法簡(jiǎn)介及SM4算法原理介紹

    一、 國(guó)密系列算法簡(jiǎn)介 國(guó)家商用密碼算法(簡(jiǎn)稱國(guó)密/商密算法),是由我國(guó)國(guó)家密碼管理局制定并公布的密碼算法標(biāo)準(zhǔn)。其分類1所示: 圖1 國(guó)家商用密碼
    發(fā)表于 10-24 08:25

    加密算法的應(yīng)用

    保證信息傳輸過程中的安全性。只有經(jīng)過特定的解密算法才能還原出原始的明文。因此,加密算法是一種保護(hù)信息安全的手段。 3. 加密算法的分類 根據(jù)加密
    發(fā)表于 10-24 08:03

    AES和SM4算法的可重構(gòu)分析

    相似的實(shí)現(xiàn)過程,可以進(jìn)行可重構(gòu)設(shè)計(jì)。同時(shí),這兩種算法在加解密過程中會(huì)頻繁使用寄存器來存儲(chǔ)數(shù)據(jù) 二、可重構(gòu)S盒設(shè)計(jì)思路 在GF下,AES的S盒輸出公式為 Z=M(X^-1)+V, SM4的S盒公式
    發(fā)表于 10-23 07:26

    e203除法器算法改進(jìn)(一)

    的除法運(yùn)算大多使用SRT-4算法進(jìn)行設(shè)計(jì)。以下是我們針對(duì)除法器進(jìn)行改進(jìn)的算法。 前導(dǎo)零預(yù)處理 為了加快除法的運(yùn)算過程,通常采用前導(dǎo)零預(yù)處理的方法對(duì)除數(shù)以及被除數(shù)預(yù)處理。在處理期間必須保證結(jié)果的正確性
    發(fā)表于 10-22 07:13

    AI的核心操控:從算法到硬件的協(xié)同進(jìn)化

    ? ? ? ?人工智能(AI)的核心操控涉及算法、算力和數(shù)據(jù)三大要素的深度融合,其技術(shù)本質(zhì)是通過硬件與軟件的協(xié)同優(yōu)化實(shí)現(xiàn)對(duì)復(fù)雜任務(wù)的自主決策與執(zhí)行。這一過程依賴多層技術(shù)棧的精密配合,從底層的芯片架構(gòu)
    的頭像 發(fā)表于 09-08 17:51 ?1159次閱讀

    DFT算法與FFT算法的優(yōu)劣分析

    一概述 在諧波分析儀中,我們常常提到的兩個(gè)詞語(yǔ),就是DFT算法與FFT算法,那么一款功率分析儀/諧波分析儀采用DFT算法或者FFT算法,用戶往往關(guān)注的是能否達(dá)到所要分析諧波次數(shù)的目的,
    的頭像 發(fā)表于 08-04 09:30 ?1784次閱讀

    基于FPGA實(shí)現(xiàn)FOC算法之PWM模塊設(shè)計(jì)

    哈嘍,大家好,從今天開始正式帶領(lǐng)大家從零到一,在FPGA平臺(tái)上實(shí)現(xiàn)FOC算法,整個(gè)算法的框架如下圖所示,如果大家對(duì)算法的原理不是特別清楚的話,可以先去百度上學(xué)習(xí)一下,本教程著重介紹實(shí)現(xiàn)過程
    的頭像 發(fā)表于 07-17 15:21 ?3712次閱讀
    基于FPGA實(shí)現(xiàn)FOC<b class='flag-5'>算法</b>之PWM模塊設(shè)計(jì)
    加查县| 察隅县| 泗阳县| 奉贤区| 邯郸县| 永平县| 文登市| 南皮县| 永川市| 和龙市| 聂拉木县| 宜兰市| 长沙县| 西乌珠穆沁旗| 慈利县| 大名县| 诸城市| 泾川县| 郯城县| 古浪县| 连云港市| 临沧市| 闵行区| 从江县| 霍州市| 文登市| 什邡市| 图片| 镇江市| 修文县| 霍林郭勒市| 德庆县| 陇西县| 康保县| 上虞市| 来凤县| 福泉市| 镇原县| 玉树县| 台北市| 牙克石市|