chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何去掉batch normalization層來(lái)加速神經(jīng)網(wǎng)絡(luò)

深度學(xué)習(xí)自然語(yǔ)言處理 ? 來(lái)源:AI公園 ? 作者:AI公園 ? 2020-11-24 09:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

導(dǎo)讀

如何去掉batch normalization層來(lái)加速神經(jīng)網(wǎng)絡(luò)。

介紹

Batch Normalization是將各層的輸入進(jìn)行歸一化,使訓(xùn)練過(guò)程更快、更穩(wěn)定的一種技術(shù)。在實(shí)踐中,它是一個(gè)額外的層,我們通常添加在計(jì)算層之后,在非線(xiàn)性之前。它包括兩個(gè)步驟:

首先減去其平均值,然后除以其標(biāo)準(zhǔn)差

進(jìn)一步通過(guò)γ縮放,通過(guò)β偏移,這些是batch normalization層的參數(shù),當(dāng)網(wǎng)絡(luò)不需要數(shù)據(jù)的時(shí)候,均值為0、標(biāo)準(zhǔn)差為1。

Batch normalization在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練中具有較高的效率,因此得到了廣泛的應(yīng)用。但它在推理的時(shí)候有多少用處呢?

一旦訓(xùn)練結(jié)束,每個(gè)Batch normalization層都擁有一組特定的γ和β,還有μ和σ,后者在訓(xùn)練過(guò)程中使用指數(shù)加權(quán)平均值進(jìn)行計(jì)算。這意味著在推理過(guò)程中,Batch normalization就像是對(duì)上一層(通常是卷積)的結(jié)果進(jìn)行簡(jiǎn)單的線(xiàn)性轉(zhuǎn)換。

由于卷積也是一個(gè)線(xiàn)性變換,這也意味著這兩個(gè)操作可以合并成一個(gè)單一的線(xiàn)性變換!這將刪除一些不必要的參數(shù),但也會(huì)減少推理時(shí)要執(zhí)行的操作數(shù)量。

在實(shí)踐中怎么做?

用一點(diǎn)數(shù)學(xué)知識(shí),我們可以很容易地重新對(duì)卷積進(jìn)行排列來(lái)處理batch normalization。提醒一下,對(duì)一個(gè)輸入x進(jìn)行卷積之后再進(jìn)行batch normalization的運(yùn)算可以表示為:

那么,如果我們重新排列卷積的W和b,考慮batch normalization的參數(shù),如下:

我們可以去掉batch normalization層,仍然得到相同的結(jié)果!

注意:通常,在batch normalization層之前的層中是沒(méi)有bias的,因?yàn)檫@是無(wú)用的,也是對(duì)參數(shù)的浪費(fèi),因?yàn)槿魏纬?shù)都會(huì)被batch normalization抵消掉。

這樣做的效果怎樣?

我們將嘗試兩種常見(jiàn)的架構(gòu):

使用batch norm的VGG16

ResNet50

為了演示,我們使用ImageNet dataset和PyTorch。兩個(gè)網(wǎng)絡(luò)都將訓(xùn)練5個(gè)epoch,看看參數(shù)數(shù)量和推理時(shí)間的變化。

1. VGG16

我們從訓(xùn)練VGG16 5個(gè)epoch開(kāi)始(最終的準(zhǔn)確性并不重要):

參數(shù)的數(shù)量:

單個(gè)圖像的初始推理時(shí)間為:

如果使用了batch normalization折疊,我們有:

以及:

8448個(gè)參數(shù)被去掉了,更好的是,幾乎快了0.4毫秒!最重要的是,這是完全無(wú)損的,在性能方面絕對(duì)沒(méi)有變化:

讓我們看看它在Resnet50的情況下是怎么樣的!

2. Resnet50

同樣的,我們開(kāi)始訓(xùn)練它5個(gè)epochs:

初始參數(shù)量為:

推理時(shí)間為:

使用batch normalization折疊后,有:

和:

現(xiàn)在,我們有26,560的參數(shù)被移除,更驚訝的hi,推理時(shí)間減少了1.5ms,性能一點(diǎn)也沒(méi)降。

責(zé)任編輯:lq!

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

    關(guān)注

    42

    文章

    4827

    瀏覽量

    106803
  • 參數(shù)
    +關(guān)注

    關(guān)注

    11

    文章

    1868

    瀏覽量

    33761
  • 線(xiàn)性
    +關(guān)注

    關(guān)注

    0

    文章

    218

    瀏覽量

    26141

原文標(biāo)題:使用Batch Normalization折疊來(lái)加速模型推理

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    CNN卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)原理及在MCU200T上仿真測(cè)試

    數(shù)的提出很大程度的解決了BP算法在優(yōu)化深層神經(jīng)網(wǎng)絡(luò)時(shí)的梯度耗散問(wèn)題。當(dāng)x>0 時(shí),梯度恒為1,無(wú)梯度耗散問(wèn)題,收斂快;當(dāng)x<0 時(shí),該的輸出為0。 CNN
    發(fā)表于 10-29 07:49

    NMSIS神經(jīng)網(wǎng)絡(luò)庫(kù)使用介紹

    :   神經(jīng)網(wǎng)絡(luò)卷積函數(shù)   神經(jīng)網(wǎng)絡(luò)激活函數(shù)   全連接函數(shù)   神經(jīng)網(wǎng)絡(luò)池化函數(shù)   Softmax 函數(shù)   神經(jīng)網(wǎng)絡(luò)支持功能
    發(fā)表于 10-29 06:08

    在Ubuntu20.04系統(tǒng)中訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗(yàn)

    , batch_size=512, epochs=20)總結(jié) 這個(gè)核心算法中的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和訓(xùn)練過(guò)程,是用來(lái)對(duì)MNIST手寫(xiě)數(shù)字圖像進(jìn)行分類(lèi)的。模型將圖像作為輸入,通過(guò)卷積和池化提取圖像的特征,然后通過(guò)全連接
    發(fā)表于 10-22 07:03

    CICC2033神經(jīng)網(wǎng)絡(luò)部署相關(guān)操作

    讀取。接下來(lái)需要使用擴(kuò)展指令,完成神經(jīng)網(wǎng)絡(luò)的部署,此處僅對(duì)第一卷積+池化的部署進(jìn)行說(shuō)明,其余與之類(lèi)似。 1.使用 Custom_Dtrans 指令,將權(quán)重?cái)?shù)據(jù)、輸入數(shù)據(jù)導(dǎo)入硬件加速
    發(fā)表于 10-20 08:00

    神經(jīng)網(wǎng)絡(luò)的并行計(jì)算與加速技術(shù)

    問(wèn)題。因此,并行計(jì)算與加速技術(shù)在神經(jīng)網(wǎng)絡(luò)研究和應(yīng)用中變得至關(guān)重要,它們能夠顯著提升神經(jīng)網(wǎng)絡(luò)的性能和效率,滿(mǎn)足實(shí)際應(yīng)用中對(duì)快速響應(yīng)和大規(guī)模數(shù)據(jù)處理的需求。神經(jīng)網(wǎng)絡(luò)并行
    的頭像 發(fā)表于 09-17 13:31 ?888次閱讀
    <b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的并行計(jì)算與<b class='flag-5'>加速</b>技術(shù)

    BP神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)原則

    BP(back propagation)神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)原則主要基于以下幾個(gè)方面: 一、層次結(jié)構(gòu) 輸入 :接收外部輸入信號(hào),不
    的頭像 發(fā)表于 02-12 16:41 ?1255次閱讀

    BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)的比較

    BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)在多個(gè)方面存在顯著差異,以下是對(duì)兩者的比較: 一、結(jié)構(gòu)特點(diǎn) BP神經(jīng)網(wǎng)絡(luò) : BP神經(jīng)網(wǎng)絡(luò)是一種多層的前饋神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 02-12 15:53 ?1316次閱讀

    BP神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)步驟詳解

    BP神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)步驟主要包括以下幾個(gè)階段:網(wǎng)絡(luò)初始化、前向傳播、誤差計(jì)算、反向傳播和權(quán)重更新。以下是對(duì)這些步驟的詳細(xì)解釋?zhuān)?一、網(wǎng)絡(luò)初始化 確定網(wǎng)絡(luò)結(jié)構(gòu) : 根據(jù)輸入和輸出數(shù)據(jù)的特性
    的頭像 發(fā)表于 02-12 15:50 ?1122次閱讀

    什么是BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法

    神經(jīng)網(wǎng)絡(luò)(即反向傳播神經(jīng)網(wǎng)絡(luò))的核心,它建立在梯度下降法的基礎(chǔ)上,是一種適合于多層神經(jīng)元網(wǎng)絡(luò)的學(xué)習(xí)算法。該算法通過(guò)計(jì)算每層網(wǎng)絡(luò)的誤差,并將這些誤差反向傳播到前一
    的頭像 發(fā)表于 02-12 15:18 ?1282次閱讀

    BP神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)的關(guān)系

    ),是一種多層前饋神經(jīng)網(wǎng)絡(luò),它通過(guò)反向傳播算法進(jìn)行訓(xùn)練。BP神經(jīng)網(wǎng)絡(luò)由輸入、一個(gè)或多個(gè)隱藏和輸出組成,通過(guò)逐
    的頭像 發(fā)表于 02-12 15:15 ?1348次閱讀

    BP神經(jīng)網(wǎng)絡(luò)的基本原理

    輸入、隱藏和輸出組成。其中,輸入負(fù)責(zé)接收外部輸入數(shù)據(jù),這些數(shù)據(jù)隨后被傳遞到隱藏。隱藏
    的頭像 發(fā)表于 02-12 15:13 ?1523次閱讀

    BP神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別中的應(yīng)用

    傳播神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network),是一種多層前饋神經(jīng)網(wǎng)絡(luò),主要通過(guò)反向傳播算法進(jìn)行學(xué)習(xí)。它通常包括輸入、一個(gè)或多個(gè)隱藏和輸出
    的頭像 發(fā)表于 02-12 15:12 ?1191次閱讀

    如何訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)模型

    BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是一種經(jīng)典的人工神經(jīng)網(wǎng)絡(luò)模型,其訓(xùn)練過(guò)程主要分為兩個(gè)階段:前向傳播和反向傳播。以下是訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)模型的步驟: 一、前向傳播 前向傳播是信號(hào)在
    的頭像 發(fā)表于 02-12 15:10 ?1468次閱讀

    深度學(xué)習(xí)入門(mén):簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)的構(gòu)建與實(shí)現(xiàn)

    深度學(xué)習(xí)中,神經(jīng)網(wǎng)絡(luò)是核心模型。今天我們用 Python 和 NumPy 構(gòu)建一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)由多個(gè)神經(jīng)元組成,神經(jīng)元之間通過(guò)
    的頭像 發(fā)表于 01-23 13:52 ?847次閱讀

    人工神經(jīng)網(wǎng)絡(luò)的原理和多種神經(jīng)網(wǎng)絡(luò)架構(gòu)方法

    在上一篇文章中,我們介紹了傳統(tǒng)機(jī)器學(xué)習(xí)的基礎(chǔ)知識(shí)和多種算法。在本文中,我們會(huì)介紹人工神經(jīng)網(wǎng)絡(luò)的原理和多種神經(jīng)網(wǎng)絡(luò)架構(gòu)方法,供各位老師選擇。 01 人工神經(jīng)網(wǎng)絡(luò) ? 人工神經(jīng)網(wǎng)絡(luò)模型之所
    的頭像 發(fā)表于 01-09 10:24 ?2258次閱讀
    人工<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的原理和多種<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>架構(gòu)方法