在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文告訴你AI模型QAT量化遇到震蕩問題應該如何解決呢?

冬至子 ? 來源:集智書童 ? 作者:小書童 ? 2023-05-23 15:00 ? 次閱讀

1、簡介

量化是優化神經網絡以實現高效推理和設備執行同時保持高精度的最成功方法之一。通過將常規32位浮點格式的權重和激活壓縮為更高效的低位定點表示,如INT8,這樣可以在邊緣設備上部署神經網絡時降低功耗并加速推理。

盡管量化具有明顯的功率和延遲優勢,但由于精度降低,量化是以增加噪聲為代價的。然而,近年來的研究人員已經表明,神經網絡對這種噪聲是魯棒的,并且可以使用訓練后量化技術(PTQ)以最小的精度下降量化到8比特。

PTQ可能非常有效,通常只需要訪問一個小的校準數據集,但當應用于神經網絡的低位量化(≤4位)時會受到影響。同時,量化感知訓練(QAT)已成為事實上的標準方法,用于實現低比特量化,同時保持接近全精度的精度。通過模擬訓練或微調期間的量化操作,網絡可以適應量化噪聲,并達到比PTQ更好的解決方案。

本文重點關注量化權重在量化感知訓練過程中發生的振蕩。在量化神經網絡的優化中,這是一個鮮為人知且研究不足的現象,在訓練期間和訓練后對網絡產生了重大影響。當使用流行的直通估計器(STE)進行QAT時,權重似乎在相鄰量化級別之間隨機振蕩,從而在優化過程中導致有害噪聲。有了這一見解,作者調研了QAT的最新進展,這些進展聲稱性能得到了改善,并評估了它們在解決這種振蕩行為方面的有效性。

權重振蕩的一個不利癥狀是,它們會破壞在訓練期間收集的批量歸一化層的估計推斷統計數據,導致驗證準確性差。作者發現這種效應在具有深度可分離層的高效網絡(如MobileNets或EfficientNets)的低位量化中尤為明顯,但可以通過在訓練后重新估計批量歸一化統計數據來有效解決。

雖然批量歸一化重新估計克服了振蕩的一個顯著癥狀,但它并沒有解決其根本原因。為此,我們提出了兩種有效減少振蕩的新算法:振蕩抑制和迭代權重凍結。通過在振蕩源處處理振蕩,本文的方法提高了精度,超出了批量歸一化重新估計的水平。本文表明,這兩種方法在高效網絡的4-bit和3-bit量化方面都取得了最先進的結果,如MobileNetV2、MobileNetV3和ImageNet上的EfficientNet lite。

2、QAT中的振蕩

首先研究了為什么權值在量化感知訓練中會振蕩,以及這種現象如何在實踐中影響神經網絡訓練。

2.1、量化感知訓練

image.png

2.2、振蕩問題

image.png

在附錄A.3中表明降低學習率會降低振蕩的振幅,但不會影響其頻率。

image.png

值得注意的是,這種行為與隨機舍入有相似之處,其中潛在權重與量化水平的接近程度與舍入到該水平的概率有關。然而,在STE中,隨機性的來源于梯度的離散性質,而不是采樣。可以注意到,振蕩并不是標準STE獨有的,而是存在于文獻中提出的STE的幾種變體中,在圖1中給出了其中的一小部分。

2.3、實踐中的振蕩

這些振蕩不僅僅是這個toy例子的副作用。它們確實存在于更大的神經網絡中,對它們的優化具有重要意義。圖2顯示了使用ImageNet上的LSQ訓練的MobileNetV2的深度可分離層中接近收斂的3位量化權重的進展。可以觀察到,許多權重似乎在2個相鄰的量化級別之間隨機振蕩。

image.png

在圖3中還可以看到,在假定的網絡收斂之后,很大一部分潛在權重正好位于網格點之間的決策邊界。這進一步強化了一個觀察結果,即很大一部分權重會振蕩而不收斂。

作者確定了與神經網絡訓練中的振蕩相關的2個主要問題:

批量歸一化推理統計的錯誤估計

對網絡優化的不利影響

1、批量標準化的影響

在訓練批量歸一化過程中,層跟蹤每層輸出的平均值和方差的指數移動平均值(EMA),以便在推理過程中用作真實樣本統計的近似值。當訓練全精度神經網絡時,可以預期權重在接近收斂時會非常緩慢地變化。因此,預計每一層的輸出統計數據在迭代過程中都相當穩定,因此EMA是統計數據的一個很好的估計。

image.png

然而,QAT中的振蕩會導致整數權重的快速變化(見圖2),從而導致迭代之間的顯著分布偏移,甚至接近收斂。振蕩引起的輸出分布的突然而大的變化可能會破壞EMA統計數據,導致準確性的顯著下降。

事實上,有兩個因素放大了這種影響:

權重位寬

每個輸出通道的權重數量

image.png

比特寬度越低,量化級別之間的距離就越大,因為它與成比例。當振蕩權重從一個量化級別移動到另一個量化級時,它們在輸出分布中造成成比例的較大偏移。第二個重要因素是每個輸出通道的權重數量。權重的數量越小,單個權重對最終累積的貢獻就越大。當累積數量增加時,由于大數定律,振蕩的影響趨于平均。

在表1中,使用KL散度來量化population和 estimated statistics之間的差異,確實觀察到,與MobileNetV2中的逐點卷積和ResNet18中的全卷積相比,深度可分離層的KL發散要大得多。

這個問題的一個簡單直接的解決方案是在訓練后用一小部分數據重新估計批量歸一化統計。這種方法作者稱之為批處理歸一化(BN)重新估計,有時用于隨機量化公式。然而,作者認為由于振蕩權重,它在確定性QAT公式中也是必不可少的。

image.png

在表2中可以看到BN重新估計不僅提高了MobileNetV2的最終量化精度,而且降低了不同種子之間的方差。作者進一步觀察到,對于MobileNetV2,隨著比特寬度的減小,精度上的差距變大,而對于ResNet18,情況并非如此。

2、對訓練的影響

除了損害BN統計之外,振蕩還可能對訓練過程本身產生負面影響。為了說明這一點,首先表明,如果在兩種振蕩狀態之間隨機采樣振蕩權重,則具有3位權重的收斂MobileNetV2可以實現較低的訓練損失(和較高的驗證精度)。

image.png

在表3中給出了這個實驗的結果。可以觀察到,采樣網絡上的平均訓練損失與最終收斂模型的平均訓練損失相似。然而,許多樣本實現了較低的訓練損失,并且最佳隨機采樣網絡顯示出顯著較低的訓練損失。

作者還使用AdaRound的自適應來執行振蕩權重的二進制優化。在最終任務丟失時同時優化所有層的舍入,類似于文獻中使用模擬退火來解決二進制優化問題。可以看到,這種二進制優化在最佳隨機樣本和原始收斂網絡的基礎上顯著改進。這表明,權重振蕩會阻止網絡在訓練過程中收斂到最佳局部最小值,并可能對優化過程不利。

最后,在訓練的早期使用振蕩凍結技術防止振蕩會導致比振蕩權重的二元優化更高的驗證精度。這表明,振蕩不僅會阻止QAT在訓練結束時收斂到最佳局部最小值,而且還會導致優化器在訓練早期朝著次優方向發展。

3、克服QAT的振蕩問題

既然已經確定了振蕩在優化過程中可能會產生負面影響,特別是對于低位量化,所以就把重點放在如何克服它們上。首先,引入了一種用于量化振蕩的度量,然后提出了兩種新的技術,旨在防止在量化感知訓練過程中出現振蕩。

3.1、量化振蕩

在解決振蕩之前,需要一種在訓練中檢測和測量振蕩的方法。建議使用指數移動平均(EMA)來計算隨時間變化的振蕩頻率。然后,可以將最小頻率定義為振蕩權重的閾值。對于在迭代t中發生的振蕩,需要滿足兩個條件:

image.png

然后,使用指數移動平均(EMA)來跟蹤隨時間變化的振蕩頻率:

image.png

3.2、振蕩阻尼

當權重振蕩時,它們總是在兩個量化區間之間的決策閾值附近移動。這意味著振蕩權重總是接近量化bin的邊緣。為了抑制振蕩行為,使用了一個正則化項,該項鼓勵潛在權重靠近bin的中心而不是邊緣。將類似于權重衰減的阻尼損失定義為:

image.png

獨立于標度s,因此間接獨立于位寬。進一步將潛在權重剪裁到量化網格的范圍,使得只有在量化期間沒有被剪裁的權重才會獲得正則化效果。這對于避免在基于LSQ的范圍學習中與量化尺度梯度的任何有害相互作用很重要。這種正則化的缺點是,它不僅影響振蕩的權重,而且還會阻礙不處于振蕩狀態的權重的移動。

3.3、振蕩權值的迭代凍結

作者提出了另一種更有針對性的方法,通過在訓練中凍結權重來防止權重振蕩。在這種方法中,跟蹤訓練期間每個權重的振蕩頻率,如方程(4)所述。如果任何權重的振蕩頻率超過閾值,該權重將被凍結,直到訓練結束。在整數域中應用凍結,以便在優化過程中scale 的潛在變化不會導致不同的舍入。

當一個權重振蕩時,它不一定在兩種振蕩狀態下花費相等的時間。正如在第2.2節的示例中所示,權重處于每個狀態的可能性線性地取決于該量化狀態與最優值的距離。結果,隨著時間的推移,所有量化值的期望將對應于最優值。一旦權重的頻率超過閾值,它就可能處于兩種量化狀態中的任何一種。為了將權重凍結到更頻繁的狀態,使用指數移動平均值(EMA)記錄以前的整數值。然后,通過四舍五入EMA將最頻繁的整數狀態分配給凍結權重。

image.png

在算法1中總結了提出的迭代權重凍結。注意,該算法可以與任何基于梯度的優化器組合使用,并且不限于特定的量化公式或梯度估計器。在迭代級別上凍結權重的想法與迭代修剪密切相關,在迭代修剪中,小權重被迭代修剪(凍結為零)。

4、實驗

4.1、消融實驗

1、振蕩阻尼

image.png

image.png

image.png

在表4中,作者研究了阻尼損失的強度如何影響網絡的最終精度以及訓練結束時振蕩權重的比例。在前3行中可以觀察到,隨著系數λ的增加,振蕩權重的比例降低,BN重新估計前后的精度差距縮小。然而,過多的阻尼會損害最終的精度,這表明過度的正則化會抑制權重在量化級別之間的有益移動。

解決這個問題的方法是在訓練過程中逐漸增加正規化權重。這允許潛在權重在訓練的第一階段更自由地移動,同時通過應用更強的正則化來減少接近收斂的有害振蕩。

作者發現λ的余弦退火計劃在實踐中效果良好。Han等人也注意到,這種規則化在訓練的早期階段是有害的,但實際上采用了兩階段優化過程。這樣的策略可以顯著抑制振蕩,同時不會損害準確性。最佳阻尼配置比BN后重新估計基線提高了近1%,比BN前重新估計基線改善了5%以上。

在圖4(左)中還看到了阻尼對圖3中相同深度可分離層的潛在重量分布的影響。正如預期的那樣,潛在權重現在聚集在量化bin中心周圍,在決策邊界幾乎沒有任何權重。

2、迭代權重凍結

image.png

在表5中展示了迭代權重凍結算法對各種凍結閾值的有效性。在整個訓練過程中使用恒定的閾值,可以看到殘差振蕩的數量隨著閾值的降低而顯著減少,并且網絡中只保留一些低頻振蕩。還可以看到,前BN重新估計精度更接近后BN重新估計準確性,正如人們在訓練結束時振蕩較少時所預期的那樣。

然而,如果振蕩閾值變得太低,那么在訓練的早期階段,太多的權重會被凍結,從而降低最終的準確性。為了解決這個問題,對凍結閾值應用了一個類似于阻尼中使用的退火計劃。這能夠使用更強的凍結閾值,并在訓練結束時凍結幾乎所有的振蕩,此時它們最具破壞性。

最佳凍結閾值比BN后重新估計基線提高了近1%,比BN前重新估計基線改善了5%以上。它的精度與振蕩阻尼相當,同時殘差振蕩顯著減少(0.04%對1.11%)。

在圖4(右)中可以看到迭代權值凍結如何改變MobileNetV2的層conv.3.1的潛在權值分布。大部分潛在權值現在被凍結在bin中心,去除在圖3中決策邊界觀察到的峰值。

4.2、與其他QAT方法的比較

image.png

將克服振蕩的方法與其他QAT替代方案進行了比較,并證明了它們在流行的高效神經網絡的低比特量化中的有效性。為了與文獻中現有的方法進行比較,作者對權重和激活進行了量化。在表6中展示了MobileNetV2的結果,并證明兩種算法在3-bits和4-bits量化方面都優于文獻中所有競爭的QAT技術。

image.png

image.png

還在表7和表8中分別獲得了MobileNetV3 Small和EfficientNet lite的最新結果。在所有情況下,本文的振蕩預防方法都比常用的LSQ基線顯著提高(>1%),表明本文的方法對其他高效網絡的普遍適用性。

可以注意到,與LSQ基線相比,振蕩抑制導致訓練時間增加了約33%。另一方面,迭代權重凍結在實現類似性能的同時,計算開銷可以忽略不計。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 振蕩器
    +關注

    關注

    28

    文章

    3960

    瀏覽量

    140355
  • 神經網絡
    +關注

    關注

    42

    文章

    4804

    瀏覽量

    102644
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    在LTspice中導入模型遇到相關問題

    我在LTspice中仿真ADA2200芯片的模型。首先我從ADI官網下載了這個芯片的模型文件然后在LTspice中進行了Create Symbol操作:接下來在LTspice中搭建簡單電路圖:最后運行仿真,卻報錯了:請問下各位有遇到
    發表于 09-03 21:30

    多層板的焊盤到底應該怎么設計?華秋文告訴

    最近,又有下了PCB多層板的朋友來問:多層板的焊盤到底應該怎么設計?怎么我在你們這里下單幾次,也聽了你們的建議,還是不能完全解決,只是比在其他地方做好上些!你們不會在騙我?好吧,這類的事情
    發表于 09-16 15:59

    X-CUBE-AI 7.1.0生成代碼初始化錯誤如何解

    大家好。 我在使用 X-CUBE-AI 7.1.0 版時遇到了問題。當我加載神經網絡的 TFlite 模型并生成代碼時,我在初始化輸入和輸出緩沖區時遇到了問題。特別是我對這個分配
    發表于 12-26 10:15

    【KV260視覺入門套件試用體驗】Vitis AI 進行模型校準和來量化

    量化 七、Vitis AI 通過遷移學習訓練自定義模型 八、Vitis AI 將自定義模型編譯并部署到KV260中 鋪墊 校準和
    發表于 10-15 10:51

    文告訴如何用好AD797

    震蕩...中點電壓偏離正常值較多...聲音不自然...遇到了這些狀況,使得很多朋友對該款運放產生了懷疑,甚至認為自己買到了假貨。 其實,遇到這些情況,大多是對該運放特性不了解導致的。只有深入
    發表于 11-29 06:41

    文告訴芯片材料的新選擇

    隨著芯片不斷微縮,或是應用于諸如AI或機器學習系統的傳感器等新器件。材料已經成為整個半導體供應鏈的項日益嚴峻的挑戰。
    的頭像 發表于 07-23 10:29 ?5894次閱讀

    Google發布新API,支持訓練更小更快的AI模型

    Google發布了 Quantification Aware Training(QAT)API,使開發人員可以利用量化的優勢來訓練和部署模型AI模型
    的頭像 發表于 04-09 21:55 ?2041次閱讀
    Google發布新API,支持訓練更小更快的<b class='flag-5'>AI</b><b class='flag-5'>模型</b>

    文告訴什么是電機短時運行?

    本文小編告訴大家什么是電機短時運行。
    的頭像 發表于 12-14 22:12 ?4270次閱讀

    利用NVIDIA TensorRT實現推理的QAT量化

    在這篇文章中,我們簡要介紹了基本的量化概念和 TensorRT 的量化工具箱,然后回顧了 TensorRT 8 . 0 是如何處理 Q / DQ 網絡的。我們對量化工具箱提供的 resnet50
    的頭像 發表于 03-31 16:51 ?4292次閱讀

    使用NVIDIA QAT工具包實現TensorRT量化網絡的設計

      目前, TensorFlow 在其開源軟件 模型優化工具包 中提供非對稱量化。他們的量化方法包括在所需層的輸出和權重(如果適用)處插入 QDQ 節點,并提供完整模型或部分層類類型的
    的頭像 發表于 06-21 16:54 ?4575次閱讀
    使用NVIDIA <b class='flag-5'>QAT</b>工具包實現TensorRT<b class='flag-5'>量化</b>網絡的設計

    文告訴繞線電感線圈在使用中為什么會有噪音

    谷景告訴繞線電感線圈在使用中為什么會有噪音 編輯:谷景電子 在電感設備中,繞線電感線圈是種常見的電子元器件,廣泛應用于各類電路中。但是,在使用過程中,有些繞線電感線圈會出現噪音,給電路帶來不便
    的頭像 發表于 07-19 21:24 ?1287次閱讀

    Vitis AI校準和量化代碼

    Vitis AI 校準和量化代碼導入必要的模塊執行校準過程評估量化模型準確度導出量化模型?
    發表于 10-15 17:14 ?3次下載

    何解決電源上下電瞬間波形震蕩問題?

    何解決電源上下電瞬間波形震蕩問題? 在現代電子設備中,電源的穩定性和可靠性顯得尤為重要。但在實際應用中,常常會遇到電源上下電瞬間波形震蕩的問題,該問題會導致電子設備運行不穩定、設備壽
    的頭像 發表于 10-25 11:07 ?2465次閱讀

    何解決開關電源調試中遇到的問題?

    般在使用電氣設備之前都會調試,以便及時發現問題并采取措施解決。開關電源也樣會進行調試,那么在調試開關電源的過程中會遇到哪些問題?又該如何解
    的頭像 發表于 01-29 16:39 ?855次閱讀

    是德科技如何賦能醫療AI模型應用

    自從ChatGPT爆火以來,各種AI模型紛紛亮相,如百度科技的言,科大訊飛的訊飛星火,華為的盤古AI
    的頭像 發表于 02-28 09:35 ?2548次閱讀
    主站蜘蛛池模板: 美女免费毛片 | 免费国产zzzwww色 | 精品国产第一国产综合精品gif | 国产毛片久久久久久国产毛片 | 97capcom超频在线 | 婷婷亚洲视频 | 四虎最新免费观看网址 | 在线黄色免费观看 | 操吧 | 高清午夜毛片 | 日韩一级生活片 | 激情久久久久久久久久 | 一个色在线视频 | 五月亭亭激情五月 | 欧美老汉色| 亚洲高清不卡视频 | 一区二区三区高清视频在线观看 | 有坂深雪在线 | 农村苗族一级特黄a大片 | 天天躁狠狠躁夜夜躁2021 | 男女性高爱潮免费的国产 | 噜噜啪啪 | 国产无套粉嫩白浆 | 2021年最热新版天堂资源中文 | 网www天堂资源在线 网红和老师啪啪对白清晰 网络色综合久久 | 国产午夜视频在线观看网站 | 二级黄绝大片中国免费视频0 | 色婷婷影院在线视频免费播放 | 草伊人| 欧美亚洲在线 | 国产亚洲高清在线精品不卡 | 国产精品自在线天天看片 | 99自拍视频| 日本特级淫片免费看 | 电影一区二区三区 | 色婷婷六月丁香七月婷婷 | 免费一级特黄a | 宅男lu66国产在线播放 | 国产精品手机在线 | 色五五月| 奇米狠狠操|