批次標準化 (BN - Batch Normalization)

更新於 發佈於 閱讀時間約 4 分鐘

「批次標準化 (BN - Batch Normalization)」是一種在深度學習中廣泛使用的技術,特別是在訓練非常深的網路(例如 CNN)時,用於提高模型的性能和穩定性。它通過標準化(即將數據調整為具有零均值和單位方差)網路中每一層的輸入來實現這一點。

你可以將批次標準化想像成在每一層神經元接收輸入之前,都對這些輸入數據進行一次「預處理」,使得它們的分布更加一致。

批次標準化的主要目標和優點:

  • 提高訓練速度: 批次標準化可以減少內部協變量偏移 (Internal Covariate Shift) 的問題。內部協變量偏移指的是在訓練過程中,由於前一層的參數不斷更新,導致後續層接收到的輸入數據的分布不斷變化。這會使得後續層需要不斷地適應新的輸入分布,從而減慢了學習速度。批次標準化通過將每一層的輸入數據標準化到相似的範圍內,減輕了這種偏移,使得網路可以更快地學習。
  • 允許使用更高的學習率: 標準化後的數據具有更穩定的分布,這使得我們可以更大膽地設置學習率,而不用擔心訓練過程發散。更高的學習率通常可以加快訓練速度。
  • 減少對權重初始化的依賴: 好的權重初始化對於訓練深度網路非常重要。批次標準化可以在一定程度上減輕這種依賴,使得模型對於不同的權重初始化更加魯棒。
  • 在一定程度上起到正則化的作用: 批次標準化在每個批次中計算均值和方差時引入了隨機性(因為每個批次的數據是不同的),這在一定程度上可以起到類似於 Dropout 的正則化效果,幫助模型提高泛化能力,減少過擬合。

批次標準化的工作原理:

批次標準化通常在每個隱藏層的激活函數之前進行。對於給定的層,批次標準化會對每個 mini-batch 中的激活值進行以下操作:

  1. 計算批次的均值 (Mean of the Batch): 對於該層的每個神經元(或每個特徵通道,在 CNN 中),計算當前 mini-batch 中所有樣本的激活值的均值。
  2. 計算批次的方差 (Variance of the Batch): 同樣地,計算當前 mini-batch 中所有樣本的激活值的方差。
  3. 標準化 (Normalization): 使用計算出的均值和方差對該層的每個激活值進行標準化,使其接近零均值和單位方差。
  4. 縮放和平移 (Scaling and Shifting): 標準化後的激活值可能會限制模型的表達能力。因此,批次標準化還引入了兩個可學習的參數:(gamma)(縮放因子)和 (beta)(平移因子)。對於每個神經元(或每個特徵通道),模型會學習一個最佳的 (gamma) 和 (beta),然後對標準化後的激活值進行縮放和平移,這樣,模型就可以根據需要學習到更適合任務的激活值分布。

批次標準化在 CNN 中的應用:

在卷積神經網路中,批次標準化通常在每個卷積層之後、激活函數之前進行。對於每個卷積核生成的特徵圖,批次標準化會對該特徵圖的每個通道(feature channel)進行標準化。

總結來說,批次標準化是一種非常有效的技術,可以加速深度神經網路的訓練,提高模型的穩定性和泛化能力。它通過在每個 mini-batch 中標準化層的激活值來減輕內部協變量偏移,並允許使用更高的學習率。

留言
avatar-img
留言分享你的想法!
avatar-img
郝信華 iPAS AI應用規劃師 學習筆記
1會員
149內容數
現職 : 富邦建設資訊副理 經濟部 iPAS AI應用規劃師
2025/05/26
「ReLU (Rectified Linear Unit)」是一種非常常見且廣泛應用於人工神經網路(包括卷積神經網路)中的激活函數。 你可以將激活函數想像成神經元中的一個開關,它決定了神經元的輸出應該是什麼。ReLU 函數尤其簡單且有效。 ReLU 的數學定義: ReLU 函數的數學表達式非常
2025/05/26
「ReLU (Rectified Linear Unit)」是一種非常常見且廣泛應用於人工神經網路(包括卷積神經網路)中的激活函數。 你可以將激活函數想像成神經元中的一個開關,它決定了神經元的輸出應該是什麼。ReLU 函數尤其簡單且有效。 ReLU 的數學定義: ReLU 函數的數學表達式非常
2025/05/26
「全連接層 (Fully Connected Layer)」是傳統神經網路和卷積神經網路 (CNN) 中常見的一種層類型。在全連接層中,每個神經元都與前一層的所有神經元相連接。 你可以將全連接層想像成一個將前面提取到的所有特徵信息「匯總」起來,並進行最終的分類或預測的階段。 全連接層的工作原理:
2025/05/26
「全連接層 (Fully Connected Layer)」是傳統神經網路和卷積神經網路 (CNN) 中常見的一種層類型。在全連接層中,每個神經元都與前一層的所有神經元相連接。 你可以將全連接層想像成一個將前面提取到的所有特徵信息「匯總」起來,並進行最終的分類或預測的階段。 全連接層的工作原理:
2025/05/26
「池化層 (Pooling Layer)」是卷積神經網路 (CNN) 中一個重要的組成部分,通常會放在一個或多個卷積層之後。池化層的主要作用是減小特徵圖的空間尺寸(寬度和高度),同時保留重要的特徵信息。 你可以將池化層想像成對卷積層輸出的特徵圖進行「濃縮」或「概括」,從而降低數據的複雜性。 池化
2025/05/26
「池化層 (Pooling Layer)」是卷積神經網路 (CNN) 中一個重要的組成部分,通常會放在一個或多個卷積層之後。池化層的主要作用是減小特徵圖的空間尺寸(寬度和高度),同時保留重要的特徵信息。 你可以將池化層想像成對卷積層輸出的特徵圖進行「濃縮」或「概括」,從而降低數據的複雜性。 池化
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
當你邊吃粽子邊看龍舟競賽直播的時候,可能會順道悼念一下2300多年前投江的屈原。但你知道端午節及其活動原先都與屈原毫無關係嗎?這是怎麼回事呢? 本文深入探討端午節設立初衷、粽子、龍舟競渡與屈原自沉四者。看完這篇文章,你就會對端午、粽子、龍舟和屈原的四角關係有新的認識喔。那就讓我們一起解開謎團吧!
Thumbnail
當你邊吃粽子邊看龍舟競賽直播的時候,可能會順道悼念一下2300多年前投江的屈原。但你知道端午節及其活動原先都與屈原毫無關係嗎?這是怎麼回事呢? 本文深入探討端午節設立初衷、粽子、龍舟競渡與屈原自沉四者。看完這篇文章,你就會對端午、粽子、龍舟和屈原的四角關係有新的認識喔。那就讓我們一起解開謎團吧!
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
本系列將討論 LLM 時代中,分散 ML workload 的各種方法。作為系列的第一篇,我們將提及 High-level 的概論,譬如分散式訓練的各種切法、Model Parallelism 的相依問題,以及改善 Network Topology 等課題。
Thumbnail
本系列將討論 LLM 時代中,分散 ML workload 的各種方法。作為系列的第一篇,我們將提及 High-level 的概論,譬如分散式訓練的各種切法、Model Parallelism 的相依問題,以及改善 Network Topology 等課題。
Thumbnail
本篇文章介紹如何使用PyTorch構建和訓練圖神經網絡(GNN),並使用Cora資料集進行節點分類任務。通過模型架構的逐步優化,包括引入批量標準化和獨立的消息傳遞層,調整Dropout和聚合函數,顯著提高了模型的分類準確率。實驗結果表明,經過優化的GNN模型在處理圖結構數據具有強大的性能和應用潛力。
Thumbnail
本篇文章介紹如何使用PyTorch構建和訓練圖神經網絡(GNN),並使用Cora資料集進行節點分類任務。通過模型架構的逐步優化,包括引入批量標準化和獨立的消息傳遞層,調整Dropout和聚合函數,顯著提高了模型的分類準確率。實驗結果表明,經過優化的GNN模型在處理圖結構數據具有強大的性能和應用潛力。
Thumbnail
延續上一篇訓練GAM模型,這次我們讓神經網路更多層更複雜一點,來看訓練生成的圖片是否效果會更好。 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 資料集分割處理的部分在延續上篇文章,從第五點開始後修改即可,前面都一樣 訓練過程,比較圖 是不是CNN的效果比MLP還要好,
Thumbnail
延續上一篇訓練GAM模型,這次我們讓神經網路更多層更複雜一點,來看訓練生成的圖片是否效果會更好。 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 資料集分割處理的部分在延續上篇文章,從第五點開始後修改即可,前面都一樣 訓練過程,比較圖 是不是CNN的效果比MLP還要好,
Thumbnail
透過這篇文章,我們將瞭解如何使用PyTorch實作圖神經網絡中的訊息傳遞機制,從定義消息傳遞的類別到實作消息傳遞過程。我們也探討了各種不同的消息傳遞機制,並通過對單次和多次傳遞過程的結果,可以看到節點特徵如何逐步傳遞與更新。
Thumbnail
透過這篇文章,我們將瞭解如何使用PyTorch實作圖神經網絡中的訊息傳遞機制,從定義消息傳遞的類別到實作消息傳遞過程。我們也探討了各種不同的消息傳遞機制,並通過對單次和多次傳遞過程的結果,可以看到節點特徵如何逐步傳遞與更新。
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 新模型和 Human Baselines 排名將不斷變化,Human Baselines 的位置自從基礎模型出現以來,它就不再具有多大意義了,這些排名只是表明經典 NL
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 新模型和 Human Baselines 排名將不斷變化,Human Baselines 的位置自從基礎模型出現以來,它就不再具有多大意義了,這些排名只是表明經典 NL
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Trainin
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Trainin
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著來談 Transformer 架構中的 Feedforward Network (FFN): 其為全連接的神經網路架構 回顧 AI說書 - 從0開始 - 64
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著來談 Transformer 架構中的 Feedforward Network (FFN): 其為全連接的神經網路架構 回顧 AI說書 - 從0開始 - 64
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News