第二部:《深度學習》24/100 卷積步長與填充策略 ⛓ 控制輸出尺寸的關鍵!

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

AI時代系列(2) 機器學習三部曲: 🔹 第二部:《深度學習 —— 神經網路的革命》

24/100 第三週:📌 卷積神經網路 CNN

24.卷積步長與填充策略 ⛓ 控制輸出尺寸的關鍵!

________________________________________

✅ 為何需要調整「步長」與「填充」?

在 CNN 中,控制特徵圖的空間尺寸(高與寬)非常重要,影響模型深度、計算量與最終輸出形狀。

📌 兩個參數決定特徵圖大小:

步長(Stride):每次滑動的步幅 → 控制「濾鏡移動速度」

填充(Padding):是否在圖像邊緣「補 0」 → 控制「是否邊緣裁切」

________________________________________

🧩 一、步長 Stride

stride = 1 每次滑動 1 格,最大保留特徵訊息 特徵圖尺寸變化最小

stride = 2 每次跳 2 格,快速降維 特徵圖大小約縮小一半

stride > 2 更快速壓縮圖像空間 計算快但可能損失細節

🔧 調整步長可以不使用 Pooling 就達到「空間下採樣」的效果!

________________________________________

🧩 二、填充 Padding

在卷積神經網路中,填充(Padding)類型會影響輸出特徵圖的尺寸與特性。valid 表示不補零,僅在濾鏡能完全套入的區域進行捲積,導致輸出尺寸縮小;same 則會在邊緣補 0,使輸出尺寸與輸入相同,便於多層卷積堆疊,實務中最常使用;causal 是時序資料專用的填充方式,常用於 1D 卷積(如語音、時間序列),可確保模型在每個時間點只使用過去資料,符合因果順序。選擇合適的填充方式,有助於控制模型結構與時間依賴性。

📌 same 可以確保特徵圖在深層網路中尺寸一致,適合 ResNet 等結構。

________________________________________

🔬 計算公式回顧(無 Pooling)

我們可以這樣解釋卷積層的輸出尺寸變化:

在卷積神經網路中,每次使用濾鏡掃描圖像時,輸出的大小會受到以下幾個因素影響:

輸入尺寸:圖像原本有多大(例如 28x28)。

濾鏡大小:一次掃描的區塊有多大(常見是 3x3)。

步長(Stride):濾鏡每次移動幾格(步長越大,輸出越小)。

填充方式(Padding):

same:會在圖像邊緣補零,讓輸出和輸入一樣大,方便多層堆疊。

valid:不補零,濾鏡只能掃描能完整套入的區域,輸出會變小。

📌 簡單記憶:

如果使用 same,輸出大小通常不變。

如果使用 valid,輸出大小會略小於輸入。

步長越大,輸出越小。

濾鏡越大,壓縮得越多。

這些設定會影響模型的特徵圖尺寸與運算量,因此設計卷積層時要注意這些參數是否適合你的資料與任務目標。

________________________________________

📦 TensorFlow / Keras 實作:

python

from tensorflow.keras import layers

model = tf.keras.Sequential([

layers.Conv2D(64, (3, 3), strides=2, padding='same', activation='relu'),

layers.Conv2D(64, (3, 3), strides=1, padding='valid', activation='relu')

])

padding='same' → 輸出尺寸與輸入相同(取決於 stride)

padding='valid' → 捲積後特徵圖縮小

這段程式碼建立了兩層卷積層的模型,第一層使用 padding='same' 搭配步長 strides=2,表示即使有補零,輸出尺寸仍會因步長大於 1 而縮小一半;第二層則使用 padding='valid',不補零,會讓特徵圖在卷積後進一步縮小。總結來說,same 可在步長為 1 時保持輸出尺寸不變,而 valid 則會在每次卷積後縮小特徵圖,有助於逐步壓縮空間資訊。

________________________________________

🧠 實際效果視覺對比:

以 28×28 的輸入圖像為例,使用大小為 3×3 的濾鏡,在不同的設定下會有不同的輸出結果:

Padding = same, Stride = 1 ➜ 輸出尺寸:28×28

說明:這是最常見的設定,使用“same”表示在圖像邊緣加上適當的 Padding,使濾鏡滑動後仍可保持與原圖相同的輸出尺寸。適合在保持圖像大小的情況下提取特徵。

Padding = valid, Stride = 1 ➜ 輸出尺寸:26×26

說明:“valid”代表不補零,濾鏡只能在圖像原始區域內滑動,導致每邊都少了一層(因為 3×3 濾鏡無法跨出邊界),所以尺寸減少為 26×26,常用於下採樣或精簡特徵圖。

Padding = same, Stride = 2 ➜ 輸出尺寸:14×14

說明:步伐設為 2 表示濾鏡每次跳兩格滑動,因此尺寸會縮小為原來的一半。這是在保留特徵的同時,快速降低圖像尺寸,提升計算效率。

Padding = valid, Stride = 2 ➜ 輸出尺寸:13×13

說明:此設定同時不補零且步伐為 2,因此除了縮小尺寸外,還因為不補零而導致邊緣資訊損失更多,進一步壓縮圖像尺寸,適合進一步降維與資訊濃縮。

________________________________________

⚠️ 設計提醒:

捲積層 越深 → 特徵圖越小 → 留意尺寸不能小於 1

多層堆疊時使用 same 可避免尺寸不一致

若特徵圖太小再接 Dense 會導致維度錯誤或學不到東西!

________________________________________

🎯 小結與啟示:

✅ 步長控制「移動速度」= 特徵圖壓縮速度

✅ 填充決定「邊界保留」= 是否會裁切資訊

✅ 兩者配合才能打造靈活、精確又高效的 CNN 結構設計

✅ 要控制計算資源與模型表現,就從這兩個參數開始!



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
8會員
137內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/09/04
池化層能縮小特徵圖,減少計算與參數並防止過擬合。MaxPooling 突顯重要特徵,AveragePooling 抗雜訊,GlobalAveragePooling 減少參數。雖無學習權重,卻能提升模型對平移、旋轉等變化的容忍度,是 CNN 穩健高效的關鍵。
2025/09/04
池化層能縮小特徵圖,減少計算與參數並防止過擬合。MaxPooling 突顯重要特徵,AveragePooling 抗雜訊,GlobalAveragePooling 減少參數。雖無學習權重,卻能提升模型對平移、旋轉等變化的容忍度,是 CNN 穩健高效的關鍵。
2025/09/04
卷積層透過濾鏡在圖像上滑動,提取局部特徵並生成特徵圖,能有效學習邊緣、紋理與形狀。其超參數如濾鏡大小、步幅、padding 與濾鏡數量會影響輸出效果。相比 MLP,CNN 透過參數共享與局部感知減少參數量並保留空間資訊,能逐層學習由低階到高階的語意特徵,成為影像辨識的關鍵技術。
2025/09/04
卷積層透過濾鏡在圖像上滑動,提取局部特徵並生成特徵圖,能有效學習邊緣、紋理與形狀。其超參數如濾鏡大小、步幅、padding 與濾鏡數量會影響輸出效果。相比 MLP,CNN 透過參數共享與局部感知減少參數量並保留空間資訊,能逐層學習由低階到高階的語意特徵,成為影像辨識的關鍵技術。
2025/09/04
卷積神經網路(CNN)模仿人類視覺皮質,利用區域感受野、參數共享與層層堆疊學習特徵,能有效降低參數並保留空間資訊,克服 MLP 處理影像的不足。代表性模型 LeNet-5 開啟影像辨識革命,後續 CNN 廣泛應用於圖像分類、醫療診斷、自動駕駛與手機應用,成為深度學習處理視覺與語音資料的核心技術。
2025/09/04
卷積神經網路(CNN)模仿人類視覺皮質,利用區域感受野、參數共享與層層堆疊學習特徵,能有效降低參數並保留空間資訊,克服 MLP 處理影像的不足。代表性模型 LeNet-5 開啟影像辨識革命,後續 CNN 廣泛應用於圖像分類、醫療診斷、自動駕駛與手機應用,成為深度學習處理視覺與語音資料的核心技術。
看更多
你可能也想看
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
呈上篇介紹如何訓練模型,此篇就主要介紹如何利用訓練好的模型來生成圖片 [深度學習][Python]DCGAN訓練生成手寫阿拉伯數字_生成篇 生成的結果 生成的圖片大小會根據,當初設置的生成器輸出大小來決定,當你使用生成對抗網絡(GAN)生成圖像時,生成器模型的最後一層通常會決定生成圖
Thumbnail
呈上篇介紹如何訓練模型,此篇就主要介紹如何利用訓練好的模型來生成圖片 [深度學習][Python]DCGAN訓練生成手寫阿拉伯數字_生成篇 生成的結果 生成的圖片大小會根據,當初設置的生成器輸出大小來決定,當你使用生成對抗網絡(GAN)生成圖像時,生成器模型的最後一層通常會決定生成圖
Thumbnail
本文參考TensorFlow官網Deep Convolutional Generative Adversarial Network的程式碼來加以實作說明。 示範如何使用深度卷積生成對抗網路(DCGAN) 生成手寫數位影像。
Thumbnail
本文參考TensorFlow官網Deep Convolutional Generative Adversarial Network的程式碼來加以實作說明。 示範如何使用深度卷積生成對抗網路(DCGAN) 生成手寫數位影像。
Thumbnail
本文將延續上一篇文章,經由訓練好的GAN模型中的生成器來生成圖片 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 [深度學習][Python]訓練CNN的GAN模型來生成圖片_訓練篇 相較之下CNN的GAN生成的效果比較好,但模型也相對比較複雜,訓練時間花的也比較
Thumbnail
本文將延續上一篇文章,經由訓練好的GAN模型中的生成器來生成圖片 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 [深度學習][Python]訓練CNN的GAN模型來生成圖片_訓練篇 相較之下CNN的GAN生成的效果比較好,但模型也相對比較複雜,訓練時間花的也比較
Thumbnail
延續上一篇訓練GAM模型,這次我們讓神經網路更多層更複雜一點,來看訓練生成的圖片是否效果會更好。 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 資料集分割處理的部分在延續上篇文章,從第五點開始後修改即可,前面都一樣 訓練過程,比較圖 是不是CNN的效果比MLP還要好,
Thumbnail
延續上一篇訓練GAM模型,這次我們讓神經網路更多層更複雜一點,來看訓練生成的圖片是否效果會更好。 [深度學習][Python]訓練MLP的GAN模型來生成圖片_訓練篇 資料集分割處理的部分在延續上篇文章,從第五點開始後修改即可,前面都一樣 訓練過程,比較圖 是不是CNN的效果比MLP還要好,
Thumbnail
本文將延續上一篇文章,經由訓練好的VAE模型其中的解碼器,來生成圖片。 [深度學習]訓練VAE模型用於生成圖片_訓練篇 輸入產生的隨機雜訊,輸入VAE的解碼器後,生成的圖片
Thumbnail
本文將延續上一篇文章,經由訓練好的VAE模型其中的解碼器,來生成圖片。 [深度學習]訓練VAE模型用於生成圖片_訓練篇 輸入產生的隨機雜訊,輸入VAE的解碼器後,生成的圖片
Thumbnail
透過這篇文章,我們將瞭解如何使用PyTorch實作圖神經網絡中的訊息傳遞機制,從定義消息傳遞的類別到實作消息傳遞過程。我們也探討了各種不同的消息傳遞機制,並通過對單次和多次傳遞過程的結果,可以看到節點特徵如何逐步傳遞與更新。
Thumbnail
透過這篇文章,我們將瞭解如何使用PyTorch實作圖神經網絡中的訊息傳遞機制,從定義消息傳遞的類別到實作消息傳遞過程。我們也探討了各種不同的消息傳遞機制,並通過對單次和多次傳遞過程的結果,可以看到節點特徵如何逐步傳遞與更新。
Thumbnail
本篇文章專注於消息傳遞(message passing)在圖神經網絡(GNN)中的應用,並以簡單的例子解釋了消息傳遞的過程和機制。
Thumbnail
本篇文章專注於消息傳遞(message passing)在圖神經網絡(GNN)中的應用,並以簡單的例子解釋了消息傳遞的過程和機制。
Thumbnail
GNN發展背景 傳統的深度學習模型如在計算機視覺(CV)和自然語言處理(NLP)領域中極為成功,主要是處理結構化數據如影像和文本。這些數據類型通常具有固定且規律的結構,例如影像是由有序的像素點組成。然而,在真實世界中,許多數據是非結構化的,如化合物結構(原子和分子)。這些數據雖然具有一定的規則性,
Thumbnail
GNN發展背景 傳統的深度學習模型如在計算機視覺(CV)和自然語言處理(NLP)領域中極為成功,主要是處理結構化數據如影像和文本。這些數據類型通常具有固定且規律的結構,例如影像是由有序的像素點組成。然而,在真實世界中,許多數據是非結構化的,如化合物結構(原子和分子)。這些數據雖然具有一定的規則性,
Thumbnail
卷積神經網路(CNN)是一種專門用於影像相關應用的神經網路。本文介紹了CNN在影像辨識中的應用,包括圖片的組成、Receptive Field、Parameter Sharing、以及Pooling等技術。通過本文,讀者將瞭解CNN在影像辨識領域的優勢和運作原理。
Thumbnail
卷積神經網路(CNN)是一種專門用於影像相關應用的神經網路。本文介紹了CNN在影像辨識中的應用,包括圖片的組成、Receptive Field、Parameter Sharing、以及Pooling等技術。通過本文,讀者將瞭解CNN在影像辨識領域的優勢和運作原理。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News