第二部:《深度學習》18/100 早停法與模型保存 🛑 避免過度訓練,保留最好版本!

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

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

18/100 第二週:多層感知器 MLP

18.早停法與模型保存 🛑 避免過度訓練,保留最好版本!

________________________________________

✅ 核心概念:

神經網路訓練越久不一定越好,太早停 = 還沒學會,太晚停 = 開始記住雜訊 → 過擬合!

📌 早停法(Early Stopping)能在模型效能停止進步時自動中斷訓練,

📌 模型保存(Checkpoint)能在最佳時刻儲存權重,避免白費好結果。

🎯 目標是:找出驗證集表現最好的模型版本,並及時保留!

________________________________________

🧠 什麼是「早停」?

早停(Early Stopping)是一種監控驗證集表現(如 accuracy、loss),當連續 N 次 epoch 沒有改善,就自動停止訓練的策略。

📌 典型流程:

1. 訓練進行中,監控驗證集 loss(或 accuracy)

2. 若「連續 N 輪沒改善」 → 停止訓練

3. 通常搭配 模型儲存(Checkpoints) 保留最佳版本

________________________________________

🛠 TensorFlow 實作範例:

python

from tensorflow.keras.callbacks import EarlyStopping, ModelCheckpoint

# 儲存模型最佳權重

checkpoint_cb = ModelCheckpoint("best_model.h5",

save_best_only=True,

monitor="val_loss")

# 設定早停

earlystop_cb = EarlyStopping(patience=5, restore_best_weights=True)

# 加入 callbacks

model.fit(x_train, y_train,

validation_split=0.2,

epochs=100,

callbacks=[earlystop_cb, checkpoint_cb])

在深度學習訓練中,**早停(EarlyStopping)模型檢查點(ModelCheckpoint)**是常用的技巧。早停能在驗證集表現連續數個回合未改善時自動停止訓練,避免過度擬合並節省時間;而模型檢查點則會在訓練過程中自動保存驗證效果最佳的權重,確保最終使用的模型表現最優。這樣的設計讓我們不用手動監控訓練過程,就能保留最佳結果並提升整體訓練效率。

________________________________________

🔁 常見參數說明:

patience: 容忍幾個 epoch 沒有進步才停止(常設為 3~10)

monitor: 監控目標,可選 "val_loss" 或 "val_accuracy"

restore_best_weights: 訓練結束時,自動還原最佳模型權重

save_best_only: 是否僅儲存最佳模型

________________________________________

🔍 模型保存的重要性

即使沒有早停,保存模型權重也是實務中的基本功:

python

# 儲存整個模型(架構+權重)

model.save("final_model.h5")

# 讀取模型

from tensorflow.keras.models import load_model

model = load_model("final_model.h5")

📦 模型保存能:

快速部署與載入

節省重訓時間

支援跨平台(雲端部署、行動端轉換)

________________________________________

📊 為何要早停 + 儲存?

問題 解法

訓練過久 → 過擬合 ✅ 使用 EarlyStopping

最佳模型被覆蓋 ✅ 使用 ModelCheckpoint

訓練波動無法掌握進度 ✅ 自動偵測最佳時間點停訓

模型訓練耗費大量時間 ✅ 中途停止並重複利用最佳模型

________________________________________

🧠 實務建議與技巧

patience=5~10 是較穩健的設置

可同時監控 val_loss 與 val_accuracy,交叉觀察

訓練前期「震盪」是正常,後期才要啟動 early stop 判斷

使用 restore_best_weights=True 很關鍵,否則最後一輪結果可能不是最佳

________________________________________

🎯 小結與啟示:

✅ 深度學習不只是訓練模型,更是「知道何時該停」

✅ 提早中斷、保留最佳,是 AI 訓練實戰的成熟策略

✅ 模型儲存與載入功能 = 跨任務、跨平台、跨時間的知識延續



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
8會員
137內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/09/04
權重初始化決定神經網路能否順利啟動學習。若全部設為零,對稱性無法打破;隨機過大或過小則會造成梯度爆炸或消失。常見方法中,Xavier 適合 Sigmoid/Tanh,He 初始化適合 ReLU 系列,能提升收斂速度與穩定性;隨機正態易不穩定,Zero 無法收斂。正確初始化策略是深度學習成功的第一步。
2025/09/04
權重初始化決定神經網路能否順利啟動學習。若全部設為零,對稱性無法打破;隨機過大或過小則會造成梯度爆炸或消失。常見方法中,Xavier 適合 Sigmoid/Tanh,He 初始化適合 ReLU 系列,能提升收斂速度與穩定性;隨機正態易不穩定,Zero 無法收斂。正確初始化策略是深度學習成功的第一步。
2025/09/04
批次訓練決定每次更新使用多少資料,影響速度與穩定性。Batch GD 穩定但耗資源,SGD 更新快卻波動大,Mini-Batch 則折衷最常用。常見批次大小為 32~128,能兼顧效率與收斂穩定性,並適合 GPU 加速。批次過大可能導致泛化下降或記憶體不足,因此需根據資料與硬體調整。
2025/09/04
批次訓練決定每次更新使用多少資料,影響速度與穩定性。Batch GD 穩定但耗資源,SGD 更新快卻波動大,Mini-Batch 則折衷最常用。常見批次大小為 32~128,能兼顧效率與收斂穩定性,並適合 GPU 加速。批次過大可能導致泛化下降或記憶體不足,因此需根據資料與硬體調整。
2025/09/04
損失函數是模型學習的方向指引。分類任務用交叉熵,能精準衡量機率差異並加速收斂;迴歸任務用均方誤差,適合連續數值預測但對離群值敏感。若誤用 MSE 做分類,會導致收斂慢且準確率差。選對損失函數才能提升模型效能。
2025/09/04
損失函數是模型學習的方向指引。分類任務用交叉熵,能精準衡量機率差異並加速收斂;迴歸任務用均方誤差,適合連續數值預測但對離群值敏感。若誤用 MSE 做分類,會導致收斂慢且準確率差。選對損失函數才能提升模型效能。
看更多
你可能也想看
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
資料前處理(Data Preprocessing)中的重要角色-缺失值處理。從檢查、刪除到填充缺失值,以及插值法和機器學習算法的應用方法。Pandas 缺失值處理基礎方法、進階填充缺失值、鐵達尼號存活預測資料集的示例和機器學習算法填補缺失值方法的介紹與使用。
Thumbnail
資料前處理(Data Preprocessing)中的重要角色-缺失值處理。從檢查、刪除到填充缺失值,以及插值法和機器學習算法的應用方法。Pandas 缺失值處理基礎方法、進階填充缺失值、鐵達尼號存活預測資料集的示例和機器學習算法填補缺失值方法的介紹與使用。
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
本文介紹了AI助手在數據收集和訓練過程中的工作原理和不斷進步的過程。關注的內容包括從公開的網絡資源、書籍、文章等渠道收集數據,數據的清洗和結構化處理,知識庫的增量更新以及訓練算法和模型的優化。如果大家對AI助手的發展還有任何其他感興趣的話題或建議,歡迎隨時告訴我們,讓我們共同探索,攜手進步。
Thumbnail
本文介紹了AI助手在數據收集和訓練過程中的工作原理和不斷進步的過程。關注的內容包括從公開的網絡資源、書籍、文章等渠道收集數據,數據的清洗和結構化處理,知識庫的增量更新以及訓練算法和模型的優化。如果大家對AI助手的發展還有任何其他感興趣的話題或建議,歡迎隨時告訴我們,讓我們共同探索,攜手進步。
Thumbnail
微調(Fine tune)是深度學習中遷移學習的一種方法,其中預訓練模型的權重會在新數據上進行訓練。 本文主要介紹如何使用新的訓練圖檔在tesseract 辨識模型進行Fine tune 有關於安裝的部分可以參考友人的其他文章 Tesseract OCR - 繁體中文【安裝篇】 將所有資料
Thumbnail
微調(Fine tune)是深度學習中遷移學習的一種方法,其中預訓練模型的權重會在新數據上進行訓練。 本文主要介紹如何使用新的訓練圖檔在tesseract 辨識模型進行Fine tune 有關於安裝的部分可以參考友人的其他文章 Tesseract OCR - 繁體中文【安裝篇】 將所有資料
Thumbnail
Sequential Feature Selection(SFS) 用中文來解釋為,逐一特徵選取訓練,找出最重要的特徵,以提高模型的性能和效率 SFS 的一些用途包括: 維度縮減: 在高維度數據中,許多特徵可能是多餘或不重要的,使用 SFS 可以找到最能代表數據的特徵,從而減少計算和記憶體需求
Thumbnail
Sequential Feature Selection(SFS) 用中文來解釋為,逐一特徵選取訓練,找出最重要的特徵,以提高模型的性能和效率 SFS 的一些用途包括: 維度縮減: 在高維度數據中,許多特徵可能是多餘或不重要的,使用 SFS 可以找到最能代表數據的特徵,從而減少計算和記憶體需求
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News