深度學習-深度神經網路
中文名稱:深度學習/深度神經網路 英文名稱:Deep Learning / Deep Neural Networks
定義(Definition)
- 機器學習 (Machine Learning) 子領域
- 神經網絡是一種模擬生物神經系統的非線性模型,透過 多層神經元網路結構學習數據的深層特徵。
- 深度:使用多層神經網路自動學習特徵與決策邏輯的技術,可處理影像、語音、文字、推薦等複雜任務,透過大量資料與計算獲得強大表現。
- 適用於處理非結構化數據,如語音辨識、電腦視覺、自然語言處理 與生成式模型等;常見的開發框架包括 TensorFlow、PyTorch 等
什麼是深度學習?
深度學習是一種讓電腦「自己學習」的方法,透過模仿人類大腦神經元連結的方式(稱為神經網路),從大量資料中自動找到有用的特徵(特色),並做出判斷或決定。
這些神經網路由許多相互連結的神經元組成,每個神經元接收前一層的輸出,經過非線性轉換後,再將結果傳遞給下一層。當大量數據反覆輸入神經網路時,網路內部的連接權重會不斷調整,使得模型能夠自動從數據中提取出深層且抽象的特徵。相較於傳統的機器學習方法,深度學習不需要人類專家手動設計特徵,而是讓模型自行學習。
這種方法特別適合處理像影像、語音、文字這種「非結構化資料」,也就是資料沒有固定格式,傳統方法不容易處理。
簡單解釋專有名詞:
- 神經網路(Neural Network):一種由很多小單位(稱為神經元)組成的模型,模仿人腦神經元間的連結進行計算。
- 特徵(Feature):資料中可以幫助辨識或分類的重要資訊,例如影像中的邊緣、顏色等。
- 非結構化資料:沒有固定格式的資料,如照片、聲音、文章。
- TensorFlow:Google 開發的深度學習框架,提供大量工具方便建立和訓練神經網路,特別適合大規模分散式運算。
- PyTorch:由 Facebook 開發的深度學習框架,特色是動態計算圖,方便研究和開發,受到學術界和產業廣泛使用。
原理與技術
- 深度學習的核心是「多層神經網路」,簡單說,就是把神經網路堆疊成很多層,讓電腦能從簡單特徵學到複雜的概念,像是從辨識線條到辨識人臉。
- 神經網路由輸入層、隱藏層和輸出層組成,透過激勵函數(Activation Function)和反向傳播(Backpropagation)機制,逐步調整權重以最小化損失函數,最終學習出數據間的複雜映射關係。
三大經典模型
- 卷積神經網路(Convolutional Neural Networks)
- 循環神經網路(Recurrent Neural Networks)
- 生成對抗網路(Generative Adversarial Networks)
主要概念:
- 層(Layer):神經網路中的一層包含很多神經元,資料會從輸入層開始,逐層傳遞到輸出層。
- 激活函數(Activation Function):決定神經元是否「被激活」的數學函數,常見的有 ReLU(線性整流單元)、GELU(高斯誤差線性單元)。 ^6cfb67
- 這些激活函數能幫助避免 梯度消失(Gradient Vanishing) 問題,使網路能更有效率地學習。
- Softmax:一種用於多類別分類的函數,能把最後輸出轉換成每個類別的機率,且機率總和為1。
- 反向傳播(Backpropagation):訓練神經網路的方法,透過計算錯誤並往回調整參數,讓模型變得更準確。
- 正規化(Regularization):防止模型學得太複雜而只記住訓練資料(過擬合),常用方法有 Dropout(隨機丟棄神經元)和 Batch Normalization(批次正規化)。
深度學習的訓練流程
資料清理→分割訓練/驗證/測試→設計網路→設定損失(交叉熵、MSE)→調參→評估→部署→監控漂移。
- 資料準備
收集大量資料,並且要清理(去除錯誤或不完整的資料),再分成訓練集(用來學習)、驗證集(用來調整模型)和測試集(檢驗模型表現)。 - 設計模型
選擇適合的神經網路結構,例如卷積神經網路(CNN)適合影像,循環神經網路(RNN)適合序列資料。 - 設定損失函數
損失函數用來衡量模型預測和真實答案的差距,常見的有交叉熵(classification)和均方誤差(regression)。 - 訓練模型
利用反向傳播和優化器(如 Adam、SGD)調整模型參數,讓損失函數(Loss Function)的值越來越小。 - 評估模型
用驗證集測試模型表現,調整參數避免過擬合。 - 部署與監控
把模型放到實際應用中,並持續監控它的表現是否因資料改變而下降。
深度學習常用名詞解釋
- 卷積神經網路(CNN):專門處理影像的神經網路,能自動抓出影像中的邊緣、紋理等特徵。
- 循環神經網路(RNN):處理序列資料(像語音、文字)的模型,能記住前面的資訊。
- Transformer:一種最新且強大的序列模型,特別適合自然語言處理。
- 過擬合(Overfitting):模型學得太好,以至於只記住訓練資料,對新資料表現不好。
- 資料增強(Data Augmentation):透過旋轉、翻轉、噪音等方法增加訓練資料多樣性,提升模型泛化能力。
應用領域
- 電腦視覺:分類、檢測、分割、超解析、影像生成,在製造、醫療、安防皆常見。
- 自然語言處理:BERT/GPT 做理解與生成,客服、翻譯、摘要、程式輔助。
- 語音:語音辨識、合成(TTS)、說話人辨識,常用 CNN/RNN/Transformer 聲學模型。
- 推薦與廣告:預測點擊率、轉換率,使用深度特徵交互與序列建模。
- 時間序列與異常偵測:預測需求、設備故障,結合注意力提高長期記憶。
- 醫療/金融:風險評估、診斷輔助,需強調解釋性與合規。 共通重點:資料規模與品質是上限;訓練穩定性、正規化與合適架構選擇決定落地成功;部署需兼顧延遲、安全與監控。
3 題模擬練習題
- 深度學習相較傳統機器學習的主要差異?
- A. 不需要資料
- B. 透過多層網路自動學特徵,不依賴手工特徵
- C. 沒有參數
- D. 只能做回歸
- 正確答案:B;解析:深度模型可端到端學習表徵,資料與算力需求較高。
- 避免過擬合的做法?
- A. 無限制增加層數
- B. 使用正規化、資料增強、早停與交叉驗證
- C. 不做驗證
- D. 讓損失不下降
- 正確答案:B;解析:這些方法可提升泛化,隨意加深只會更容易過擬合。
- 部署時若延遲過高,可怎麼辦?
- A. 用更大的模型
- B. 量化、剪枝、蒸餾或使用推論加速框架
- C. 取消批次大小
- D. 刪除資料集
- 正確答案:B;解析:模型壓縮與硬體加速可降低延遲,且保持準確率。