109 年 國立成功大學電腦與通信工程研究所丁組《人工智慧概論》

📄 試題原卷 免費註冊後即可對照原始考卷 PDF免費註冊

第 1 題10 分

(10%) 1: Linear perceptron is one of the earliest neural network models. However, it was found out that the model cannot even perform the XOR (exclusive OR) function. Please describe why such a model cannot perform XOR function.

登入後即可作答並保存紀錄。

這一題的完整詳解

本題考查的是單層感知器(Linear Perceptron)的表達能力限制。

核心觀念: 單層感知器本質上是在輸入空間中學習一個線性決策邊界。

詳解:
單層感知器(Linear Perceptron)是一種最基礎的神經網路模型,它接收輸入特徵,然後通過一個線性組合(加權和)並應用一個步階函數(step function)來產生輸出。其決策邊界是一個超平面(在二維空間中是一條直線)。

XOR(Exclusive OR)函數的真值表如下:

輸入 x1x_1輸入 x2x_2輸出 yy
000
011
101
110

我們可以用圖形來表示 XOR 函數的輸入空間和輸出。在二維平面上,輸入 (x1,x2)(x_1, x_2) 共有四種組合:(0,0), (0,1), (1,0), (1,1)。

  • (0,0) -> 0
  • (0,1) -> 1
  • (1,0) -> 1
  • (1,1) -> 0

如果我們嘗試在二維平面上畫出這四個點,並根據輸出來標記它們(例如,輸出為 0 的點標記為『-』,輸出為 1 的點標記為『+』):

  • (0,0) -
  • (0,1) +
  • (1,0) +
  • (1,1) -
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 2 題25 分

(25%) 2: (a) Please describe the supervised learning and the unsupervised learning.
(b) Classification and clustering are two data analysis approaches. Please describe the differences between the classification and clustering methods. Are they supervised or unsupervised learning? Why?

登入後即可作答並保存紀錄。

這一題的完整詳解

本題主要考查監督式學習與非監督式學習的定義,以及分類(Classification)與分群(Clustering)的異同與學習方式。

核心觀念: 機器學習主要分為監督式與非監督式學習,而分類與分群是兩種常見的數據分析方法,它們在目標、方法和學習模式上有所不同。

詳解:

(a) 監督式學習 (Supervised Learning) 與非監督式學習 (Unsupervised Learning)

  • 監督式學習 (Supervised Learning):

    • 定義: 在監督式學習中,訓練資料包含輸入特徵(features)和對應的正確輸出標籤(labels)。演算法的目標是學習一個映射函數,能夠根據輸入特徵預測出正確的輸出標籤。
    • 目的: 學習輸入與輸出之間的關係,以便對未見過的數據進行預測。
    • 常見應用: 分類(Classification)、迴歸(Regression)。
    • 例子: 給定一系列房屋的特徵(大小、地點、房間數)和它們的售價,學習預測新房屋的售價。給定一系列郵件的內容和它們是否為垃圾郵件的標記,學習辨識新的郵件是否為垃圾郵件。
  • 非監督式學習 (Unsupervised Learning):

    • 定義: 在非監督式學習中,訓練資料只包含輸入特徵,而沒有對應的輸出標籤。演算法的目標是從數據中發現潛在的結構、模式或關係。
    • 目的: 探索數據的內在結構,例如將數據分組、降維、尋找異常值等。
    • 常見應用: 分群(Clustering)、降維(Dimensionality Reduction)、關聯規則學習(Association Rule Learning)。
    • 例子: 將顧客根據他們的購買行為分群,以便進行市場細分。從大量數據中找出隱藏的模式。

(b) 分類 (Classification) 與分群 (Clustering) 的差異

特徵分類 (Classification)分群 (Clustering)
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 3 題15 分

(15%) 3: During the training of an Al model, we usually would divide the data into training set, validation set and test set. Please explain why we need to divide the data into three data sets, and the purpose of each of the data sets in the training.

登入後即可作答並保存紀錄。

這一題的完整詳解

本題考查機器學習模型訓練中常見的數據集劃分原則與目的。

核心觀念: 為了準確評估模型性能並避免過度擬合,需要將數據集劃分為訓練集、驗證集和測試集。

詳解:

在訓練機器學習模型時,將原始數據集劃分為三個獨立的部分——訓練集(Training Set)、驗證集(Validation Set)和測試集(Test Set)——是標準做法。這樣做的目的是為了客觀、準確地評估模型的泛化能力(Generalization Ability)。

  • 訓練集 (Training Set):

    • 目的: 用於訓練模型。模型在訓練集上學習其參數(例如神經網路的權重和偏差)。
    • 用途: 演算法通過在訓練集上進行迭代學習,不斷調整模型參數,以最小化在訓練數據上的損失函數。
  • 驗證集 (Validation Set):

    • 目的: 用於調整模型的超參數(Hyperparameters)和模型選擇。
    • 用途: 在模型訓練過程中,我們需要選擇合適的超參數(如學習率、正則化強度、神經網路層數、神經元數量等)。我們在訓練集上訓練模型,然後使用驗證集來評估不同超參數組合下的模型性能。選擇在驗證集上表現最好的超參數組合。
    • 重要性: 驗證集幫助我們監控模型是否出現過度擬合(Overfitting)或欠度擬合(Underfitting)。如果模型在訓練集上的誤差很低,但在驗證集上的誤差很高,這表明模型可能過度擬合了訓練數據的噪聲或細節,而無法很好地泛化到新數據。
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 4 題20 分

(20%)4: Gradient descent has been commonly adopted in the training of a deep neural network. Please describe the basic operation theory why gradient descent can be used to tune a network. Please also give the update equation using the gradient descent for updating a parameter w in a deep neural network.

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題旨在測驗深度學習(Deep Learning)中最核心的數值最佳化演算法——**梯度下降法(Gradient Descent, GD)**的數學理論基礎與參數更新機制。主要評量以下觀念:

  1. 最佳化目標(Optimization Objective):神經網路的訓練本質為最小化損失函數(Loss Function L(w)L(\mathbf{w})),藉此尋找最優的權重參數組合 w∗\mathbf{w}^*。
  2. 梯度的幾何與數學意義:多元微積分中,純量函數 L(w)L(\mathbf{w}) 在當前點的梯度 ∇L(w)\nabla L(\mathbf{w}) 代表函數值**上升最快(Steepest Ascent)的方向;反之,負梯度方向 −∇L(w)-\nabla L(\mathbf{w}) 則是函數值下降最快(Steepest Descent)**的方向。
  3. 一階泰勒展開式(First-order Taylor Expansion):證明在局部微小步長下,沿著負梯度方向移動能嚴格保證損失函數值遞減。
  4. 反向傳播演算法(Backpropagation)與連鎖律(Chain Rule):深度神經網路如何有效率地計算深層參數 ww 對總損失 LL 的偏導數 ∂L∂w\frac{\partial L}{\partial w}。

解題方法

1. 梯度下降法用於調校神經網路之基本運作原理(Basic Operation Theory)

在深度神經網路中,給定一組訓練資料與目標標籤,網路的預測誤差透過損失函數 L(w)L(w)(或記為 Cost Function J(w)J(w))來衡量。訓練神經網路的目標即為求解最佳化問題:

min⁡wL(w)\min_{w} L(w)

梯度下降法之所以能有效調整(tune)網路參數以降低損失,其數學原理可由**一階泰勒展開式(First-order Taylor Approximation)**推導證明:

  • 推導過程:
    假設當前參數為 ww,若我們給予參數一個微小的擾動(更新量)Δw\Delta w,將損失函數在 ww 處進行一階泰勒展開:

    L(w+Δw)≈L(w)+∂L(w)∂wΔwL(w + \Delta w) \approx L(w) + \frac{\partial L(w)}{\partial w} \Delta w

    為了使更新後的損失值小於更新前的損失值(即 L(w+Δw)<L(w)L(w + \Delta w) < L(w)),更新引起的變化量 ΔL\Delta L 必須為負值:

    ΔL=L(w+Δw)−L(w)≈∂L(w)∂wΔw<0\Delta L = L(w + \Delta w) - L(w) \approx \frac{\partial L(w)}{\partial w} \Delta w < 0

    若在多維參數空間 w\mathbf{w} 下,上式寫為內積形式 ΔL≈∇L(w)TΔw\Delta L \approx \nabla L(\mathbf{w})^T \Delta \mathbf{w}。由柯西–敘瓦茲不等式(Cauchy-Schwarz Inequality)可知,當移動方向 Δw\Delta \mathbf{w} 與梯度向量 ∇L(w)\nabla L(\mathbf{w}) 方向完全相反時,內積值達到最小負值(下降速率最大)。

  • 結論:
    因此,只要設定參數的移動量正比於負梯度,即令 Δw=−η∂L∂w\Delta w = -\eta \frac{\partial L}{\partial w}(其中 η>0\eta > 0 為微小的常數),代回展開式可得:

    L(w+Δw)≈L(w)−η(∂L(w)∂w)2≤L(w)L(w + \Delta w) \approx L(w) - \eta \left( \frac{\partial L(w)}{\partial w} \right)^2 \le L(w)
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 5 題10 分

(10%)5: A convolutional neural network often adopts several convolutional layers of different kernel sizes. What are the advantages and disadvantages of using a smaller kernel size convolution mask compared to using a large kernel size convolution mask?

登入後即可作答並保存紀錄。

這一題的完整詳解

本題考查卷積神經網路(CNN)中卷積核(Kernel)大小的選擇對模型性能的影響。

核心觀念: 卷積核的大小影響了卷積操作感受野的大小,進而影響模型提取特徵的能力、計算複雜度和參數數量。

詳解:

在卷積神經網路(CNN)中,卷積核(或稱濾波器、卷積掩碼)的大小是一個重要的超參數。通常,卷積核的大小有多種選擇(例如 3×33 \times 3, 5×55 \times 5, 7×77 \times 7 等)。當使用不同大小的卷積核時,會帶來不同的優勢和劣勢。

使用較小尺寸卷積核(Small Kernel Size, e.g., 3×33 \times 3)的優點與缺點:

  • 優點 (Advantages):
    1. 更少的參數數量: 較小的卷積核意味著更少的參數。例如,一個 3×33 \times 3 的卷積核有 9 個參數,而一個 7×77 \times 7 的卷積核有 49 個參數。參數數量的減少可以降低模型的訓練複雜度,減少記憶體佔用,並有助於防止過度擬合。
    2. 更低的計算複雜度: 每個卷積核的操作計算量較小,因此在相同輸入尺寸下,使用小卷積核可以加快計算速度。
    3. 更深層次的結構: 通過堆疊多個小卷積核層,可以構建出更深層次的網路。例如,兩個連續的 3×33 \times 3 卷積層可以模擬一個 5×55 \times 5 卷積層的感受野,但參數數量(2×(3×3)=182 \times (3 \times 3) = 18)遠少於一個 5×55 \times 5 卷積層(5×5=255 \times 5 = 25)。這種結構上的靈活性使得網路能夠學習到更豐富、更層次化的特徵。
    4. 捕捉局部細節: 小卷積核更擅長捕捉圖像中的局部細節和邊緣信息。
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 6 題20 分

(20%)6: Deep convolutional neural networks often adopt the mini-batch training with output normalization (mentioned as batch normalization) in certain layers. Please describe the batch normalization and the training procedure adopting batch normalization.

登入後即可作答並保存紀錄。

這一題的完整詳解

本題考查深度卷積神經網路中的一種重要技術——批量歸一化(Batch Normalization),以及它在訓練過程中的應用。

核心觀念: 批量歸一化是一種用於加速和穩定深度神經網路訓練的技術,它通過歸一化層的輸入,減少內部協變量偏移(Internal Covariate Shift),並允許使用更高的學習率。

詳解:

批量歸一化 (Batch Normalization, BN)

批量歸一化是一種神經網路層,它被應用在激活函數之前(或之後,取決於具體實現),用於歸一化每一層的輸入。其主要目的是解決深度神經網路訓練中的一個關鍵問題:內部協變量偏移 (Internal Covariate Shift, ICS)。

  • 內部協變量偏移 (ICS): 在網路訓練過程中,由於每一層的參數都在不斷更新,導致每一層的輸入數據的分布會不斷改變。這種輸入數據分布的改變會使得後續層的學習變得困難,因為它們需要不斷適應變化的輸入分布。這就像在訓練一個模型,但輸入數據的平均值和方差一直在變,模型需要不斷重新學習。

批量歸一化通過對每一層的輸入進行歸一化,使這些輸入在每次迭代時都具有相似的統計特性(通常是零均值和單位方差),從而減輕了 ICS 問題。

批量歸一化的操作:

對於一個小批量(mini-batch)數據,對於一個特定的神經層,批量歸一化在訓練時對該層的輸入(假設是 zz)進行以下操作:

  1. 計算小批量均值 (Mini-batch mean):
    μB=1m∑i=1mz(i)\mu_B = \frac{1}{m} \sum_{i=1}^m z^{(i)}
    其中 mm 是小批量的大小,z(i)z^{(i)} 是小批量中第 ii 個樣本的輸入。

  2. 計算小批量方差 (Mini-batch variance):
    σB2=1m∑i=1m(z(i)−μB)2\sigma_B^2 = \frac{1}{m} \sum_{i=1}^m (z^{(i)} - \mu_B)^2

  3. 歸一化 (Normalization):
    z^(i)=z(i)−μBσB2+ϵ\hat{z}^{(i)} = \frac{z^{(i)} - \mu_B}{\sqrt{\sigma_B^2 + \epsilon}}
    其中 ϵ\epsilon 是一個很小的常數,用於防止除以零。

  4. 縮放和平移 (Scale and Shift):
    γ(i)=γz^(i)+β\gamma^{(i)} = \gamma \hat{z}^{(i)} + \beta

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

其他考古題