日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

一文解析網(wǎng)絡(luò)壓縮算法的原理實(shí)現(xiàn)及結(jié)果

454398 ? 來源:AI加速微信公眾號(hào) ? 作者:AI加速微信公眾號(hào) ? 2020-11-14 10:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

網(wǎng)絡(luò)壓縮在AI加速中可以說起到“四兩撥千斤”的作用,網(wǎng)絡(luò)參數(shù)的減小不僅僅降低了存儲(chǔ)和帶寬,而且使計(jì)算邏輯簡(jiǎn)單,降低了LUT資源。從本篇開始,我們就一起挖掘一下網(wǎng)絡(luò)壓縮算法的類型,原理,實(shí)現(xiàn),以及效果。寫這類算法類文章,一是學(xué)習(xí),二是希望能夠令更多做FPGA的人,不再將眼光局限于RTL,仿真,調(diào)試,關(guān)心一下算法,定會(huì)發(fā)現(xiàn)FPGA的趣味和神通。

網(wǎng)絡(luò)結(jié)構(gòu)

二值化網(wǎng)絡(luò),顧名思義,就是網(wǎng)絡(luò)參數(shù)只有兩個(gè)數(shù)值,這兩個(gè)數(shù)值是+1和-1。在DNN網(wǎng)絡(luò)中主要是乘和加法運(yùn)算,如果參數(shù)只有兩個(gè)數(shù)值,那么乘法的實(shí)現(xiàn)就很簡(jiǎn)單,僅僅需要符號(hào)判斷就可以了。比如輸入數(shù)據(jù)A,如果和1乘,不變;和-1乘,變?yōu)樨?fù)數(shù)。這用LUT很好實(shí)現(xiàn),還節(jié)省了DSP的使用。相對(duì)于單精度浮點(diǎn)數(shù),存儲(chǔ)減小16倍,帶寬也增加16倍。在計(jì)算單元數(shù)目相同情況下,比浮點(diǎn)運(yùn)算速率提高了16倍。當(dāng)然由于乘法和加法使用LUT數(shù)目減少,計(jì)算單元也會(huì)成倍增長(zhǎng),總的下來計(jì)算速率將大幅度提高。

網(wǎng)絡(luò)訓(xùn)練中使用的都是浮點(diǎn)類型參數(shù),這樣做是為了保證訓(xùn)練的精度。那么這些浮點(diǎn)類型的參數(shù)如何量化的只有兩個(gè)數(shù)值呢?論文中提出了兩種方法,第一種是粗暴型,直接根據(jù)權(quán)重參數(shù)的正負(fù),強(qiáng)行分出1和-1。即:

這里wb是二值參數(shù),w是實(shí)際權(quán)重參數(shù)。量化可以看做在原來數(shù)據(jù)基礎(chǔ)上增加了噪聲,導(dǎo)致數(shù)據(jù)間最短距離變大。比如原來數(shù)據(jù)的分辨率為R0,如果增加一個(gè)高斯噪聲s,那么其分辨率就增大了。這樣在DNN中矩陣乘法中也引入了噪聲,為:

數(shù)據(jù)分辨率的降低導(dǎo)致了有效信息的損失,但是在大量權(quán)重情形下,平均下來可以補(bǔ)償一定的信息損失,即如果有:

那么在權(quán)重?zé)o窮多時(shí),有:


圖1.1 數(shù)據(jù)增加了噪聲,導(dǎo)致數(shù)據(jù)分辨率降低

另外一種是隨機(jī)型,即以一定概率來選擇1和-1,論文中采用如下公式:

其中“hard sigmoid”函數(shù)為:

這實(shí)際上是對(duì)sigmoid函數(shù)進(jìn)行了線性化,這樣做的目的可以減少計(jì)算量。因?yàn)榫€性計(jì)算只有一個(gè)乘法和加法,而sigmoid函數(shù)有指數(shù)計(jì)算。使用隨機(jī)量化更能均衡化量化引入的噪聲,消除噪聲造成的信息損失。粗暴型量化可能因?yàn)闄?quán)重參數(shù)分布不同而發(fā)生較大的“不平衡”,比如負(fù)數(shù)權(quán)重較多,那么導(dǎo)致-1遠(yuǎn)遠(yuǎn)多于+1,這樣就會(huì)出現(xiàn)權(quán)重偏移在負(fù)方向多一些。如果使用隨機(jī)概率模型,即使負(fù)數(shù)權(quán)重多,也會(huì)有一定概率出現(xiàn)+1,彌補(bǔ)了+1較少的情況。

圖1.2 粗暴型和隨機(jī)型量化:隨機(jī)型量化的分布更加均勻

訓(xùn)練過程

訓(xùn)練過程主要包括三個(gè)部分:

1) 前向傳播:給定輸入數(shù)據(jù),一層一層的計(jì)算,前一層激活函數(shù)的結(jié)果作為下一層的輸入;

2) 反向傳播:計(jì)算每一層代價(jià)函數(shù)的梯度,從最后一層開始計(jì)算,反向計(jì)算前一層,一直到計(jì)算出第一層的梯度值;

3) 更新參數(shù):根據(jù)計(jì)算出來的梯度和前一時(shí)刻的參數(shù),計(jì)算出下一時(shí)刻的參數(shù)。

計(jì)算過程可以用圖2.1表示:

圖2.1 訓(xùn)練過程

圖2.2 訓(xùn)練算法

每次量化發(fā)生在計(jì)算出浮點(diǎn)參數(shù)之后,然后在進(jìn)行前向計(jì)算,得到代價(jià)函數(shù),進(jìn)行反向計(jì)算代價(jià)函數(shù)梯度,接著利用前一刻參數(shù)計(jì)算出下一刻數(shù)據(jù),不斷迭代直到收斂。

結(jié)果

論文在三個(gè)數(shù)據(jù)集上進(jìn)行了測(cè)試:MNIST,CIFAR-10,SVHN。

MNIST有6萬張內(nèi)容為0-9數(shù)字的訓(xùn)練圖片,以及1萬張用于測(cè)試的28x28大小的灰度圖片。論文研究了兩種量化方式下訓(xùn)練時(shí)間,以及測(cè)試出錯(cuò)率。從中看出隨機(jī)量化出錯(cuò)率更低,更適合用于二值量化。

圖3.1 不同量化方式下的訓(xùn)練時(shí)間以及測(cè)試錯(cuò)誤率:點(diǎn)線表示訓(xùn)練誤差,連續(xù)線表示測(cè)試錯(cuò)誤率

CIFAR-10圖片內(nèi)容比MNIST復(fù)雜一些,包含了各種動(dòng)物。有5萬張訓(xùn)練圖片和1萬張32x32大小的測(cè)試圖片。

SVHN也是0-9數(shù)字圖片,含有604K張訓(xùn)練圖片和26K的32x32大小的測(cè)試圖片。以上三種數(shù)據(jù)集下使用二值網(wǎng)絡(luò)的結(jié)果如下圖:

圖3.2 三種數(shù)據(jù)集結(jié)果(錯(cuò)誤率)比較

從中看出二值網(wǎng)絡(luò)錯(cuò)誤率幾乎和其他網(wǎng)絡(luò)模型差不多,但是其大大壓縮了網(wǎng)絡(luò)模型。

結(jié)論

二值化網(wǎng)絡(luò)中參數(shù)只用兩個(gè)數(shù)值表示,實(shí)際上僅僅考慮了權(quán)重的符號(hào)作用。在三種小型簡(jiǎn)單的數(shù)據(jù)集上表現(xiàn)良好。

文獻(xiàn)

1 Matthieu Courbariaux, Y.B., Binary Connect Training Deep Neural Networks with binary weights during propagations. ArXiv preprint, 2016.

編輯:hfy


聲明:本文內(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)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1664

    文章

    22509

    瀏覽量

    639542
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4810

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    linux的壓縮和解壓操作

    進(jìn)行壓縮,然后傳輸壓縮的文件,這樣可以減少文件傳輸所需要的帶寬和時(shí)間,在網(wǎng)絡(luò)接收到文件之后再解壓,就可以得到文件了。 文件的壓縮有兩種方式:有損壓縮
    發(fā)表于 12-23 06:56

    REFFRIDGED111TRC2SL:冰箱壓縮機(jī)驅(qū)動(dòng)參考設(shè)計(jì)板的深度解析

    REFFRIDGED111TRC2SL:冰箱壓縮機(jī)驅(qū)動(dòng)參考設(shè)計(jì)板的深度解析 在電子工程師的日常工作中,尋找合適的參考設(shè)計(jì)板對(duì)于產(chǎn)品開發(fā)至關(guān)重要。今天我們就來詳細(xì)解析下 Infineo
    的頭像 發(fā)表于 12-21 11:00 ?1333次閱讀

    電能質(zhì)量在線監(jiān)測(cè)裝置支持哪些數(shù)據(jù)壓縮算法?

    增強(qiáng)。以下是主流算法的詳細(xì)支持情況: 、無損壓縮算法(核心用于關(guān)鍵數(shù)據(jù)) 算法名稱 核心原理 適用數(shù)據(jù)類型
    的頭像 發(fā)表于 12-12 14:08 ?705次閱讀
    電能質(zhì)量在線監(jiān)測(cè)裝置支持哪些數(shù)據(jù)<b class='flag-5'>壓縮</b><b class='flag-5'>算法</b>?

    應(yīng)用于暫態(tài)波形存儲(chǔ)的數(shù)據(jù)壓縮算法需要考慮哪些因素?

    應(yīng)用于暫態(tài)波形存儲(chǔ)的數(shù)據(jù)壓縮算法,需圍繞 暫態(tài)波形特性 (突變性、關(guān)鍵特征依賴性)、 工業(yè)場(chǎng)景需求 (實(shí)時(shí)性、硬件限制)及 數(shù)據(jù)應(yīng)用價(jià)值 (故障溯源、合規(guī)性)綜合考量,核心需關(guān)注以下六大維度:
    的頭像 發(fā)表于 11-05 15:02 ?457次閱讀

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

    對(duì)明文進(jìn)行分組加密變換。SM4加密算法由32次迭代運(yùn)算和次反序變換R組成。 設(shè)輸入明文為(X0,X 1,X 2,X 3),共128位,設(shè)密輸出為(Y0,Y 1,Y 2,Y 3),輪密鑰為rki
    發(fā)表于 10-30 08:10

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

    項(xiàng)目構(gòu)想 我們開始就選擇信息安全作為芯來杯比賽方向,并以Camellia算法作為算法原型。借助蜂鳥E203的協(xié)處理,能加速Camellia算法的運(yùn)算,并通過比較軟件
    發(fā)表于 10-30 07:04

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

    篇分享文檔介紹了Camellia算法的基本原理,這篇文檔我們來介紹Camellia的具體實(shí)現(xiàn)方式。 如上圖所示為Camellia加解密系統(tǒng)的結(jié)構(gòu),PC端上位機(jī)通過串
    發(fā)表于 10-30 06:35

    AES加解密算法邏輯實(shí)現(xiàn)及其在蜂鳥E203SoC上的應(yīng)用介紹

    這次分享我們會(huì)簡(jiǎn)要介紹AES加解密算法的邏輯實(shí)現(xiàn),以及如何將AES算法做成硬件協(xié)處理器集成在蜂鳥E203 SoC上。 AES算法介紹 AES算法
    發(fā)表于 10-29 07:29

    如何使用恢復(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.q1
    發(fā)表于 10-24 13:33

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

    保證,而國(guó)產(chǎn)密碼算法實(shí)現(xiàn)了密碼算法的自主可控,對(duì)于保障我國(guó)的國(guó)家安全具有重要意義。目前,我國(guó)大力推廣國(guó)密算法的應(yīng)用,并涌現(xiàn)出系列國(guó)家商用密
    發(fā)表于 10-24 08:25

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

    稱加密算法中,加密和解密使用同個(gè)密鑰,因此密鑰必須保密,只有密鑰的持有者才能進(jìn)行解密操作。 對(duì)稱加密算法具有加密速度快、加密效率高、實(shí)現(xiàn)簡(jiǎn)單等優(yōu)點(diǎn),因此在許多場(chǎng)景下被廣泛應(yīng)用。例如
    發(fā)表于 10-24 08:03

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

    e203內(nèi)部除法操作使用加減交替迭代法進(jìn)行運(yùn)算,除幾個(gè)特殊運(yùn)算外,正常的除法操作需要33個(gè)周期才能輸出運(yùn)算結(jié)果,極大程度地影響了系統(tǒng)的性能。我們對(duì)e203的除法器進(jìn)行了新的算法實(shí)現(xiàn)并改進(jìn)。目前高性能
    發(fā)表于 10-22 07:13

    數(shù)據(jù)濾波算法的具體實(shí)現(xiàn)步驟是怎樣的?

    ? 數(shù)據(jù)濾波算法在電能質(zhì)量在線監(jiān)測(cè)裝置中的具體實(shí)現(xiàn),需圍繞 “ 數(shù)據(jù)采集→預(yù)處理→算法執(zhí)行→參數(shù)適配→效果驗(yàn)證→結(jié)果輸出 ” 的全流程展開,核心是結(jié)合裝置硬件特性(采樣率、ADC 精度
    的頭像 發(fā)表于 10-10 16:45 ?1027次閱讀

    低內(nèi)存場(chǎng)景下的高效壓縮利器:FastLZ壓縮庫應(yīng)用實(shí)踐指南

    在資源受限環(huán)境中,數(shù)據(jù)壓縮既要追求速度又要節(jié)省內(nèi)存。本文聚焦FastLZ壓縮庫,深入探討其在低內(nèi)存場(chǎng)景下的應(yīng)用實(shí)踐,通過解析其核心算法與優(yōu)化策略,帶您掌握如何利用該庫
    的頭像 發(fā)表于 07-22 15:13 ?531次閱讀
    低內(nèi)存場(chǎng)景下的高效<b class='flag-5'>壓縮</b>利器:FastLZ<b class='flag-5'>壓縮</b>庫應(yīng)用實(shí)踐指南

    基于FPGA的壓縮算法加速實(shí)現(xiàn)

    本設(shè)計(jì)中,計(jì)劃實(shí)現(xiàn)對(duì)文件的壓縮及解壓,同時(shí)優(yōu)化壓縮中所涉及的信號(hào)處理和計(jì)算密集型功能,實(shí)現(xiàn)對(duì)其的加速處理。本設(shè)計(jì)的最終目標(biāo)是證明在充分并行化的硬件體系結(jié)構(gòu) FPGA 上
    的頭像 發(fā)表于 07-10 11:09 ?2619次閱讀
    基于FPGA的<b class='flag-5'>壓縮</b><b class='flag-5'>算法</b>加速<b class='flag-5'>實(shí)現(xiàn)</b>
    福州市| 察雅县| 樟树市| 祁连县| 红原县| 海盐县| 苍梧县| 冕宁县| 南部县| 钦州市| 昌图县| 嵊州市| 克拉玛依市| 黑山县| 清水县| 千阳县| 衡南县| 新竹市| 三门县| 大埔县| 阿勒泰市| 利川市| 黑龙江省| 阜康市| 额敏县| 盐山县| 东港市| 闽侯县| 尉犁县| 巴林左旗| 南汇区| 延津县| 诸城市| 公主岭市| 奉化市| 探索| 赣州市| 自治县| 石城县| 汶上县| 舒城县|