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

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

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

3天內不再提示

batch normalization時的一些缺陷

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:Sahil Uppal ? 2020-11-03 17:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

導讀

batch normalization時的一些缺陷。

Batch Normalization確實是深度學習領域的重大突破之一,也是近年來研究人員討論的熱點之一。Batch Normalization是一種被廣泛采用的技術,使訓練更加快速和穩定,已成為最有影響力的方法之一。然而,盡管它具有多種功能,但仍有一些地方阻礙了該方法的發展,正如我們將在本文中討論的那樣,這表明做歸一化的方法仍有改進的余地。

我們為什么要用Batch Normalization?

在討論任何事情之前,首先,我們應該知道Batch Normalization是什么,它是如何工作的,并討論它的用例。

什么是Batch Normalization

在訓練過程中,當我們更新之前的權值時,每個中間激活層的輸出分布會在每次迭代時發生變化。這種現象稱為內部協變量移位(ICS)。所以很自然的一件事,如果我想防止這種情況發生,就是修正所有的分布。簡單地說,如果我的分布變動了,我會限制住這個分布,不讓它移動,以幫助梯度優化和防止梯度消失,這將幫助我的神經網絡訓練更快。因此減少這種內部協變量位移是推動batch normalization發展的關鍵原則。

它如何工作

Batch Normalization通過在batch上減去經驗平均值除以經驗標準差來對前一個輸出層的輸出進行歸一化。這將使數據看起來像高斯分布。

其中μ和*σ^2^*分別為批均值和批方差。

并且,我們學習了一個新的平均值和協方差γ和β。所以,簡而言之,你可以認為batch normalization是幫助你控制batch分布的一階和二階動量。

vgg16網絡的中間卷積層的特征分布輸出。(左)沒有任何歸一化,(右)應用了batch normalization

優點

我將列舉使用batch normalization的一些好處,但是我不會詳細介紹,因為已經有很多文章討論了這個問題。

更快的收斂。

降低初始權重的重要性。

魯棒的超參數。

需要較少的數據進行泛化。

1. 更快的收斂,2. 對超參數更魯棒

Batch Normalization的詛咒

好,讓我們回到本文的出發點,在許多情況下batch normalization開始傷害性能或根本不起作用。

在使用小batch size的時候不穩定

如上所述,batch normalization必須計算平均值和方差,以便在batch中對之前的輸出進行歸一化。如果batch大小比較大的話,這種統計估計是比較準確的,而隨著batch大小的減少,估計的準確性持續減小。

ResNet-50在Batch Norm使用32、16、8、4、2張/GPU圖像時的驗證錯誤

以上是ResNet-50的驗證錯誤圖??梢酝茢?,如果batch大小保持為32,它的最終驗證誤差在23左右,并且隨著batch大小的減小,誤差會繼續減小(batch大小不能為1,因為它本身就是平均值)。損失有很大的不同(大約10%)。

如果batch大小是一個問題,為什么我們不使用更大的batch?我們不能在每種情況下都使用更大的batch。在finetune的時候,我們不能使用大的batch,以免過高的梯度對模型造成傷害。在分布式訓練的時候,大的batch最終將作為一組小batch分布在各個實例中。

導致訓練時間的增加

NVIDIA和卡耐基梅隆大學進行的實驗結果表明,“盡管Batch Normalization不是計算密集型,而且收斂所需的總迭代次數也減少了?!钡敲總€迭代的時間顯著增加了,而且還隨著batch大小的增加而進一步增加。

ResNet-50 在ImageNet上使用 Titan X Pascal

你可以看到,batch normalization消耗了總訓練時間的1/4。原因是batch normalization需要通過輸入數據進行兩次迭代,一次用于計算batch統計信息,另一次用于歸一化輸出。

訓練和推理時不一樣的結果

例如,在真實世界中做“物體檢測”。在訓練一個物體檢測器時,我們通常使用大batch(YOLOv4和Faster-RCNN都是在默認batch大小= 64的情況下訓練的)。但在投入生產后,這些模型的工作并不像訓練時那么好。這是因為它們接受的是大batch的訓練,而在實時情況下,它們的batch大小等于1,因為它必須一幀幀處理??紤]到這個限制,一些實現傾向于基于訓練集上使用預先計算的平均值和方差。另一種可能是基于你的測試集分布計算平均值和方差值。

對于在線學習不好

與batch學習相比,在線學習是一種學習技術,在這種技術中,系統通過依次向其提供數據實例來逐步接受訓練,可以是單獨的,也可以是通過稱為mini-batch的小組進行。每個學習步驟都是快速和便宜的,所以系統可以在新的數據到達時實時學習。

典型的在線學習pipeline

由于它依賴于外部數據源,數據可能單獨或批量到達。由于每次迭代中batch大小的變化,對輸入數據的尺度和偏移的泛化能力不好,最終影響了性能。

對于循環神經網絡不好

雖然batch normalization可以顯著提高卷積神經網絡的訓練和泛化速度,但它們很難應用于遞歸結構。batch normalization可以應用于RNN堆棧之間,其中歸一化是“垂直”應用的,即每個RNN的輸出。但是它不能“水平地”應用,例如在時間步之間,因為它會因為重復的重新縮放而產生爆炸性的梯度而傷害到訓練。

[^注]: 一些研究實驗表明,batch normalization使得神經網絡容易出現對抗漏洞,但我們沒有放入這一點,因為缺乏研究和證據。

可替換的方法

這就是使用batch normalization的一些缺點。在batch normalization無法很好工作的情況下,有幾種替代方法。

Layer Normalization

Instance Normalization

Group Normalization (+ weight standardization)

Synchronous Batch Normalization

總結

所以,看起來訓練深度神經網絡很簡單,但我不認為它很容易。從這個意義上說,我可以選擇的架構很少,每個模型都有固定的學習速度,固定的優化器和固定的技巧。這些技巧是通過自然選擇選擇的,就像有人想出了一些技巧,人們引入之后如果有效,就會保留,如果無效,人們最終會忘記,并沒有人再去使用它。除此之外,batch normalization是深度學習發展中的一個里程碑技術。然而,正如前面所討論的,沿著batch 維度進行歸一化引入了一些問題,這表明歸一化技術仍有改進的空間。

責任編輯:xj

原文標題:【重點】Batch Normalization的詛咒

文章出處:【微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

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

    關注

    8

    文章

    7254

    瀏覽量

    91789
  • Batch
    +關注

    關注

    0

    文章

    6

    瀏覽量

    7311
  • 深度學習
    +關注

    關注

    73

    文章

    5560

    瀏覽量

    122764

原文標題:【重點】Batch Normalization的詛咒

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Debian和Ubuntu哪個好一些?

    兼容性對比Debian和Ubuntu哪個好一些,并為您揭示如何通過RAKsmart服務器釋放Linux系統的最大潛能。
    的頭像 發表于 05-07 10:58 ?322次閱讀

    樹莓派在自動化控制項目中的一些潛在應用

    自動化控制項目中的一些潛在應用。之前,我們已經為Arduino平臺探討了相同的話題。我們確定Arduino是個出色的教育工具,但由于一些限制,它無法在工業環境中完全
    的頭像 發表于 03-25 09:45 ?203次閱讀
    樹莓派在自動化控制項目中的<b class='flag-5'>一些</b>潛在應用

    使用DLPC3478+DLPA3005做了款板子,修改了batch file關燈但是無效,怎么回事?

    我們現在使用DLPC3478+DLPA3005做了款板子,使用TI官網的9.0.1的red_only固件可以驅動光機,但是光機開機會投splash,我修改了batch file關燈但是無效
    發表于 02-17 06:05

    SMA接頭的優勢和缺陷

    SMA接頭以其高精密性、良好的可靠性、穩定性好等特點,在電子元器件領域應用廣泛。但在使用過程中,因其材質及生產工藝的影響,在應用中,SMA接頭不可避免的會顯露出一些缺陷,今天我們就起來看看SMA接頭在應用領域到底有哪些
    的頭像 發表于 02-15 11:11 ?693次閱讀
    SMA接頭的優勢和<b class='flag-5'>缺陷</b>

    獨立服務器和云服務器哪個快一些?

    獨立服務器和云服務器哪個快一些?在數字服務部署中,獨立服務器與云服務器的速度差異并非絕對,需結合資源配置與應用場景綜合判斷。以下是UU云對獨立服務器和云服務器的核心維度對比分析:
    的頭像 發表于 02-05 10:08 ?398次閱讀

    AN-202: IC放大器用戶指南:去耦、接地及其他一些要點

    電子發燒友網站提供《AN-202: IC放大器用戶指南:去耦、接地及其他一些要點.pdf》資料免費下載
    發表于 01-13 15:16 ?2次下載
    AN-202: IC放大器用戶指南:去耦、接地及其他<b class='flag-5'>一些</b>要點

    AN29-關于DC-DC轉換器的一些想法

    電子發燒友網站提供《AN29-關于DC-DC轉換器的一些想法.pdf》資料免費下載
    發表于 01-08 13:57 ?0次下載
    AN29-關于DC-DC轉換器的<b class='flag-5'>一些</b>想法

    一些常見的動態電路

    無論是模電還是數電,理論知識相對來說還是比較枯燥,各種電路原理理解清楚不算容易,換種生動形象的方式或許會增加一些趣味性,也更容易理解這些知識。下面整理了一些常見的電路,以動態圖形的方式展示。 整流
    的頭像 發表于 11-16 09:26 ?1114次閱讀
    <b class='flag-5'>一些</b>常見的動態電路

    PCBA加工質量控制:如何識別與預防常見缺陷?

    站式PCBA智造廠家今天為大家講講PCBA加工過程中常見的缺陷有哪些?PCBA加工過程中可能遇到的缺陷。在PCBA貼片加工過程中,盡管追求盡善盡美,但難免會遇到一些加工
    的頭像 發表于 11-14 09:36 ?737次閱讀

    分享一些常見的電路

    理解模電和數電的電路原理對于初學者來說可能比較困難,但通過一些生動的教學方法和資源,可以有效地提高學習興趣和理解能力。 下面整理了一些常見的電路,以動態圖形的方式展示。 整流電路 單相橋式整流
    的頭像 發表于 11-13 09:28 ?818次閱讀
    分享<b class='flag-5'>一些</b>常見的電路

    PCB線路板常見缺陷原因分析:解鎖電路板制造的隱秘挑戰

    直接影響到整個設備的穩定性和可靠性。然而,常常會出現一些缺陷,這些缺陷可能會影響PCB的性能,甚至導致整個設備的故障。因此,了解這些常見的PCB缺陷及其原因,對于提高電子設備的質量和可
    的頭像 發表于 11-08 09:45 ?901次閱讀

    LED驅動器應用的一些指南和技巧

    電子發燒友網站提供《LED驅動器應用的一些指南和技巧.pdf》資料免費下載
    發表于 09-25 11:35 ?0次下載
    LED驅動器應用的<b class='flag-5'>一些</b>指南和技巧

    SMT錫膏加工中如何處理缺陷?

    在SMT貼片加工中,會出現一些加工缺陷和不良,錫膏缺陷就是其中之,但可以通過一些方法來避免,那么我們應該怎么做呢?以下是深圳佳金源錫膏廠家
    的頭像 發表于 09-03 16:03 ?523次閱讀
    SMT錫膏加工中如何處理<b class='flag-5'>缺陷</b>?

    關于一些有助于優化電源設計的新型材料

    眾所周知,人們對更高電源效率的追求正在推動性能的全方位提升。材料科學的進步對于優化電源設計和開發更高效、更緊湊和更可靠的解決方案發揮著關鍵作用。下文列出了一些有助于優化電源設計的新材料。
    的頭像 發表于 08-29 15:26 ?752次閱讀

    關于THS4521的一些使用問題求解

    我想請問關于THS4521的一些使用問題。 1、THS4521是否能將0-3V的單端信號轉換成共模信號為1,5V的差分信號。想把ths4521用于TMS320F28377S的16位ad采樣的前級電路,之間采用的12位adc,為單端信號,現在想對單端信號轉為差分信號。不知可不可以。
    發表于 08-20 08:28
    主站蜘蛛池模板: 在线观看免费高清 | 天天在线天天在线天天影视 | 亚洲一区二区在线播放 | 在线视频综合网 | 久久看片网 | 速度与激情一 | bl 高h文| 五月天丁香婷 | 五月婷婷欧美 | 久久网站免费 | 黄色在线观看视频网站 | 1024你懂的国产在线播放 | 国产女同视频 | 国产高清精品自在久久 | 成人在线一区二区 | 狠狠色成色综合网 | www日本免费 | 亚洲伊人久久大香线蕉综合图片 | 色草视频 | 国产精品欧美激情在线播放 | 免费看美女的逼 | 天天操狠狠操夜夜操 | 日本黄视频在线播放 | 国内精品91久久久久 | 欧美另类高清xxxxx | 1024 cc香蕉在线观看看中文 | 老湿影院免费体验区 | 在线免费亚洲 | 韩国三级久久精品 | 国产精品免费一级在线观看 | 黄色大片视频 | 亚洲成年人在线 | 在线网站你懂 | 成人黄色网址 | 国产亚洲一区二区在线观看 | 色偷偷88欧美精品久久久 | 1024你懂的国产日韩欧美 | 亚洲爱婷婷色婷婷五月 | 四虎成人免费观看在线网址 | 日韩免费网站 | 在线种子搜索 |