🌈️ 點選題目可顯示解答與相關背景知識說明。
🌈️ 引用本站解答請註明出處 https://ipas.tw 。
1. 某零售企業建立一個銷售預測模型,希望評估該模型在不同月份的新資料上,是否仍能維持穩定的預測表現。資料科學團隊計畫利用統計方法檢驗模型對未觀察資料的適應能力與泛化效果。下列哪一種方法最適合用於此目的?
(A) F 檢定(F-test);
(B) 交叉驗證(Cross-Validation);
(C) 配對樣本t檢定(Paired-sample t-test);
(D) 卡方檢定(Chi-square Test)
看解答
正確答案是 (B) 交叉驗證(Cross-Validation)。
這題考驗的是機器學習模型評估(Model Evaluation)中,如何選擇正確的技術來驗證模型的「泛化能力(Generalization Ability)」。
題目情境診斷:
企業核心需求是:評估模型「在不同月份的新資料上,是否仍能維持穩定的預測表現」,並檢驗模型對「未觀察資料的適應能力與泛化效果」。
這是機器學習專案中為了防止模型過擬合(Overfitting)、確保模型上線後不會效能雪崩的標配檢驗流程。
(B) 為最合適的方法(機器學習泛化防線):
• 交叉驗證的本質: 交叉驗證(如 \(K\text{-fold}\) 交叉驗證或針對時間序列的滾動窗口交叉驗證)透過將現有資料切分為多組不同的訓練集(Training Set)與驗證集(Validation Set),讓模型在不同的資料子集上輪流進行訓練與測試。
• 評估穩定性: 這樣可以模擬模型遇到「未來、未曾見過的新資料」時的真實反應,透過多輪測試指標的平均值與變異程度,資料科學團隊就能精準評估模型在不同月份(異質環境)下的泛化效果與穩定性。
(A) 錯誤:
F 檢定(F-test)在線性迴歸中主要用來檢定「整個模型(多個自變數聯合)是否顯著」,或是用來比較兩個整體的「變異數(Variance)」是否相等。它是一個參數統計檢定工具,無法直接用來評估非線性機器學習模型對未觀察新資料的泛化能力與穩定度。
(C) 錯誤:
配對樣本 t 檢定(Paired-sample t-test)專門用來比較「同一組受試者在前後兩種情境下,連續型變數的平均值是否有顯著差異」(例如:同一群員工參加教育訓練「前」與「後」的考試分數對比)。這與評估預測模型的泛化能力無關。
(D) 錯誤:
卡方檢定(Chi-square Test)專門用來處理類別型資料(Categorical Data)的獨立性檢定(Independence)或適合度檢定(Goodness of Fit)。題目探討的是銷售預測模型(通常為連續型的數值預測,如營業額或銷量),且核心是評估泛化穩定度,卡方檢定完全不適用。
| 評估分析目標 | 核心技術方法 | 資料型態與應用情境 |
|---|---|---|
| 檢驗模型對新資料的適應力與泛化效果 (B) | 交叉驗證 (Cross-Validation) | 機器學習模型評估,模擬未觀察數據的穩定度。 |
| 比較整體模型的線性顯著性或兩組變異數 | F 檢定 (F-test) | 迴歸分析中檢定多元自變數的整體貢獻。 |
| 比較同一組樣本實驗前後的平均值差異 | 配對樣本 t 檢定 | 實驗室前後測、行銷活動前後業績對比。 |
| 檢定兩個類別變數之間是否互相獨立 | 卡方檢定 | 網頁 A/B 測試(點擊與不點擊 vs. 藍色與紅色按鈕)。 |
解題關鍵:在機器學習與資料科學的考試中,只要題目敘述的終極目標是 「評估模型穩定度」、「檢驗未觀察資料的適應力」 或 「評估泛化能力效果(Generalization)」,這在 ML 領域的標準對口技術就是秒選 「交叉驗證(Cross-Validation)」。
2. 在建立迴歸或分類模型時,若希望避免模型過度擬合(Overfitting),可透過加入正則化項以限制模型的複雜度。其中,L1正則化(Lasso)的主要效果為何?
(A) 增加模型參數的數量,以提升表現靈活度;
(B) 強化梯度穩定性,避免參數更新過度震盪;
(C) 產生稀疏模型(Sparse Model),使部分參數權重收斂為零;
(D) 提高學習率(Learning Rate),加速模型收斂速度
看解答
正確答案是 (C) 產生稀疏模型(Sparse Model),使部分參數權重收斂為零。
這題考驗的是機器學習中經典的正則化(Regularization)技術。正則化的核心目的是為了防止模型過擬合(Overfitting),透過在損失函數(Loss Function)後面加上一個用來懲罰(Penalty)參數模型複雜度的懲罰項。
(C) 為 L1 正則化(Lasso)的核心特徵:
• 數學原理: L1 正則化是在原本的損失函數(例如 MSE)後面,加上所有參數權重 \(w\) 的「絕對值之和」(即 \(L_1\text{-norm}\):\(\lambda \sum |w_i|\))。
• 稀疏性(Sparsity)的幾何意義: 在幾何空間中,L1 正則化的限制邊界是一個擁有許多「尖角」的菱形或多面體。當損失函數的等高線與這個菱形邊界相交時,極大概率會碰觸到尖角上(即某些座標軸上)。這會導致不重要的特徵所對應的參數權重直接被強迫壓縮歸零(\(w_i = 0\))。
• 自動進行特徵選取: 當部分參數變成 0 後,這些特徵就相當於被模型剔除了,最終留下來的都是真正關鍵的特徵。這種產生稀疏模型(Sparse Model)的特性,讓 Lasso 非常適合作為自動特徵選取(Feature Selection)的工具。
(A) 錯誤:
正則化的核心是「限制」模型複雜度、減少(或抑制)參數的影響力,而不是增加參數數量。增加參數數量反而會讓模型變得更複雜、更容易過擬合。
(B) 錯誤:
這通常是 L2 正則化(Ridge) 或特定優化器(如 Adam, RMSprop)的效果。L2 正則化加上的是參數的「平方和」(\(L_2\text{-norm}\)),它的幾何限制邊界是一個平滑的圓球體,效果是讓所有參數權重「同時均勻地變小(趨近於 0 但不為 0)」,從而讓模型更平滑、強化梯度穩定性。
(D) 錯誤:
正則化項與學習率(Learning Rate)的調整無關。學習率是由優化器(Optimizer)或學習率調度器(Scheduler)來控制的,正則化並不會提高學習率或加速初期收斂速度。
| 正則化類型 | 數學懲罰項 | 幾何限制邊界 | 參數縮減核心效果 | 最佳實務應用場景 |
|---|---|---|---|---|
| L1 正則化 (Lasso) (C) | 絕對值之和 (\(\sum \|w\)) | 帶尖角的菱形 | 部分權重直接歸零,產生稀疏模型(Sparse Model)(C)。 | 特徵數量極多,想自動進行特徵選取(Feature Selection)。 |
| L2 正則化 (Ridge) | 平方和 (\(\sum w^2\)) | 平滑的圓球形 | 限制權重大小,使其均勻趨近於 0,但不等於 0。 | 特徵之間高度相關(共線性),想保留所有特徵並維持模型穩定。 |
解題關鍵:在資料科學與機器學習的考題中,只要看到 「L1 正則化」 或 「Lasso」,大腦要瞬間觸發三大關鍵字連線:「絕對值」➔「稀疏模型(Sparse)」➔「權重歸零(特徵選取)」。看到這組套餐特徵,就能毫不猶豫秒選 C。
3. 在訓練非線性模型時,若目標函數為非凸函數(Non-convex Function),演算法在參數更新過程中可能出現多個極值點,導致最佳化結果不穩定。請問此時最可能發生下列哪一種情況?
(A) 梯度消失;
(B) 資料過少;
(C) 局部最優解;
(D) 過擬合
看解答
正確答案是 (C) 局部最優解(Local Optima)。
這題考驗的是機器學習與深度學習中最佳化理論(Optimization Theory)的核心觀念。
題目情境診斷(核心關鍵字:「非凸函數」、「多個極值點」):
凸函數(Convex Function): 在幾何上形狀像一個碗,「局部最小值就是全局最小值」。因此不論從哪裡開始走,使用梯度下降法(Gradient Descent)最終都能順利走到最底部的唯一最優解(Global Optimum)。
非凸函數(Non-convex Function): 函數表面像高低起伏的山脈,充滿了大量的坑洞、山谷與鞍點(Saddle Points)。這意味著目標函數在空間中會存在「多個極值點」。
(C) 為最可能發生的情況:
當演算法(如梯度下降法)在非凸函數的表面進行參數更新時,由於它是順著當前位置的陡峭程度(梯度)向下滑動,一旦它掉進了某一個山谷的底部(此時梯度為零),演算法就會誤以為已經達到了最低點而停止更新。
這個被困住的坑洞就是 局部最優解(Local Optima / Local Minima)。因為起始點隨機選擇的位置不同,演算法每次最終停下的坑洞也不同,這完美解釋了題目所說的「導致最佳化結果不穩定」的實務現象。
其他選項錯誤原因分析:
(A) 錯誤:
梯度消失(Vanishing Gradient)通常是因為神經網路層數太深,或者誤用了不合適的激活函數(如 Sigmoid、Tanh),導致在反向傳播時梯度經由連鎖律連續相乘而趨近於 0。雖然它也會讓模型停止學習,但其本質原因是「架構與激活函數」,與目標函數是否為非凸函數所帶來的「多個極值點困境」不同。
(B) 錯誤:
資料過少是屬於資料範疇(Data Scope)的問題,會導致模型難以捕捉真實分佈。而題目探討的是損失函數在參數空間中的幾何特性與最佳化尋路過程,兩者屬於不同維度的問題。
(D) 錯誤:
過擬合(Overfitting)是指模型在訓練集表現極佳,但在測試集表現很差(泛化能力弱)。非凸函數最佳化失敗(困在局部最優解)往往會導致模型連訓練集都學不好(即可能導致欠擬合 Underfitting,或者只是沒達到最完美的配置),兩者並非因果關係。
| 函數幾何類型 | 谷底(極值點)特徵 | 梯度下降法搜尋結果 | 最佳化穩定度評估 |
|---|---|---|---|
| 凸函數 (Convex) | 只有唯一一個谷底。 | 必定能找到全局最優解 (Global Optimum)。 | 高度穩定(條條大路通羅馬)。 |
| 非凸函數 (Non-convex) | 充滿多個大大小小的坑洞。 | 極易卡在半路上的局部最優解 (C)。 | 不穩定(容易卡在不同的山谷)。 |
解題關鍵:在機器學習與數學最佳化的考題中,只要看到 「非凸函數(Non-convex)」 或 「目標函數起伏不平有許多極值點」,這在物理意義上對應的頭號大敵就是 「局部最優解(Local Optima)」 或 「鞍點(Saddle Point)」,看到即可毫無懸念秒選 C。
4. 在執行 DBSCAN(Density-Based Spatial Clustering of Applications with Noise)群集分析時,若某資料點鄰域內的樣本數不足以形成核心點(Core Point),且該點未被任何核心點的鄰域所包含,也未與其他群集形成密度可達關係(Density Reachability),此資料點最終將被歸類為哪一種類型?
(A) 鄰近點(Neighbor Point);
(B) 雜訊點(Noise Point);
(C) 邊界點(Border Point);
(D) 潛在點(Potential Point)
看解答
正確答案是 (B) 雜訊點(Noise Point)。
這題考驗的是經典密度分群演算法 DBSCAN 在空間中將資料點進行角色定義的核心分類機制。
DBSCAN 是依據兩個超參數:半徑 \(\varepsilon\)(Eps)與鄰域內最少點數(MinPts),將空間中的所有資料點嚴格劃分為三大類別:
• 核心點(Core Point): 在半徑 \(\varepsilon\) 內,包含自己總共擁有大於或等於 MinPts 個鄰居的點。
• 邊界點(Border Point): 自己的鄰域內樣本數不足 MinPts,但是它落在某個核心點的半徑範圍內(即與核心點密度可達)。
• 雜訊點 / 離群點(Noise Point / Outlier): * 自己的鄰域內樣本數不足(不夠資格成為核心點)。
翻成白話文,它既不夠格當頭領(不是核心點),也沒有任何大哥罩著它(未被任何核心點包含),在江湖中處於完全孤立無援的狀態。
根據題目敘述:「樣本數不足以形成核心點」 且 「未被任何核心點的鄰域所包含」,這完全符合 雜訊點(B) 的定義。
| 角色名稱 | 自身半徑 ε 內的鄰居數 | 是否被其他核心點包含 | 演算法最終歸類命運 |
|---|---|---|---|
| 核心點 | \(\ge \text{MinPts}\) | 不論(它自己就是核心) | 成為群集的發源地與骨幹。 |
| 邊界點 (C) | \(< \text{MinPts}\) | 是(被包含、密度可達) | 劃入該核心點所屬的群集(群集的邊緣)。 |
| 雜訊點 (B) | \(< \text{MinPts}\) | 否(未被任何核心包含) (B) | 直接被標記為離群值 / 雜訊(不屬於任何群)。 |
(註:選項 A 與 D 屬於編造出來干擾的非標準統計名詞)
解題關鍵:在 DBSCAN 演算法的題目中,只要看到某個資料點 「既不是核心點」,又 「沒有待在任何核心點的守備範圍內(未被包含/不可達)」,這在空間中就是一個徹頭徹尾被孤立的邊緣點,在定義上唯一的標準答案就是秒選 「雜訊點(Noise Point)」。
5. 某智慧製造公司開發一套影像辨識系統,用於自動檢測生產線上的瑕疵產品。系統採用卷積神經網路(Convolutional Neural Network, CNN)作為主要模型架構,其中第一層卷積層(Convolutional Layer)主要負責的功能為下列何者?
(A) 自動提取輸入影像中的局部特徵;
(B) 降低影像維度以加速運算效率;
(C) 增加神經元與參數數量以提升模型容量;
(D) 整合所有特徵並輸出最終分類結果
看解答
正確答案是 (A) 自動提取輸入影像中的局部特徵。
這題考驗的是深度學習中卷積神經網路(CNN)各層核心組件的物理意義與功能分工。
(A) 為卷積層(Convolutional Layer)的核心功能(答案特徵):
卷積核(Filter/Kernel)的運作: 卷積層是 CNN 的靈魂。它利用多個隨機初始化的卷積核在輸入的影像上滑動(Sliding),進行矩陣內積的「卷積運算」。
局部特徵提取: 在網路的第一層(邊緣偵測階段),這些卷積核就像是無數個小放大鏡,專門負責捕捉影像中最基礎、最局部的幾何特徵,例如:邊緣(Edges)、線條(Lines)、色彩區塊或拐角(Corners)。這種「局部連接」與「權重共享」的特性,讓 CNN 能夠高效提取空間特徵。
其他選項錯誤原因分析:
(B) 錯誤(這是「池化層 Pool Layer」的職責):
在 CNN 中,負責降低影像空間維度(如空間長寬下採樣 Downsampling)、減少參數計算量並防止過擬合的組件是 池化層(Pooling Layer,如 Max Pooling),而非卷積層。
(C) 錯誤(違反 CNN 設計初衷):
卷積層採用了「局部連接(Local Connectivity)」與「權重共享(Weight Sharing)」兩大核心機制,其目的正是為了大幅「減少」模型的參數數量(相較於全連接層),而不是盲目增加參數來提升容量。
(D) 錯誤(這是「全連接層 FC Layer」與輸出層的職責):
在網路的末端,負責把前面所有卷積層和池化層提取出來的高階特徵「攤平(Flatten)」,並融合、整合所有特徵,最後透過 Softmax 函數輸出最終分類結果(良品或瑕疵品)的,是 全連接層(Fully Connected Layer)。
| 網路層級名稱 | 核心物理功能 | 智慧製造瑕疵檢測之實務想像 |
|---|---|---|
| 第一層卷積層 (A) | 利用 Filter 自動提取局部基礎特徵(線條、邊緣、表面刮痕形狀)。 | 捕捉金屬表面瑕疵的邊緣裂縫與小黑點。 |
| 池化層 (B) | 下採樣、降低空間維度、保留特徵不變性、減少運算量。 | 壓縮影像尺寸,只保留最明顯的瑕疵特徵(如最黑的點)。 |
| 高層卷積層 | 組合低階特徵,提取高階抽象特徵(如特定幾何圖形)。 | 將線條組合,辨識出這是一條「刮傷」或一個「氣孔」。 |
| 全連接層 (D) | 融合所有抽象特徵,並交由分類器進行最終決策輸出。 | 綜合判斷:這條裂縫太長,系統判定此產品為「瑕疵品」。 |
解題關鍵:在 CNN 架構考題中,只要看到 「卷積層(Convolutional Layer)」,反射動作就是尋找 「提取特徵(Feature Extraction)」 或 「局部特徵」 的描述。看到 A 選項完美命中此定義,即可秒選。
6. 某智慧城市團隊開發一套交通監控系統,用於即時辨識路口監視器影像中的車輛與行人。團隊比較後發現,卷積神經網路(Convolutional Neural Network, CNN)在訓練與推論效率上,明顯優於傳統的全連接神經網路(Fully Connected Neural Network, FCNN)。請問下列何者為主要原因?
(A) CNN 能自動學習影像的旋轉與比例不變性;
(B) CNN 可直接跳過人工特徵提取步驟進行分類;
(C) CNN 透過區域感知(Local Receptive Field)與參數共享(Parameter Sharing)機制,降低模型參數量與運算複雜度;
(D) CNN 捨棄激勵函數(Activation Function),以加快運算速度
看解答
正確答案是 (C) CNN 透過區域感知(Local Receptive Field)與參數共享(Parameter Sharing)機制,降低模型參數量與運算複雜度。
這題考驗的是卷積神經網路(CNN)之所以能高效處理高維度影像資料(如路口監視器影像)的底層核心數學機制。
傳統全連接網路(FCNN)的痛點(參數爆炸):
• 在 FCNN 中,下一層的每一個神經元都必須與上一層的所有神經元相連。
• 假設路口監視器的影像尺寸只有一張小型的彩色圖片 \(100 \times 100\) 像素,輸入層就有 \(100 \times 100 \times 3 (\text{RGB}) = 30,000\)个節點。如果第一層隱藏層有 \(1,000\) 個神經元,單單這兩層之間的連線權重(參數)就高達 \(30,000 \times 1,000 = 30,000,000\)(三千萬個參數)。如此龐大的參數量會帶來嚴重的計算負擔,且極易導致過擬合(Overfitting)。
(C) 為 CNN 勝出的核心原因:
• 區域感知(Local Receptive Field,或稱局部連接): CNN 的神經元不再與整張圖的所有像素相連,而是每次只關心一個局部的小區域(例如 \(3 \times 3\) 或 \(5 \times 5\) 的卷積核守備範圍)。這大幅切斷了不必要的連線。
• 參數共享(Parameter Sharing): 在同一張影像的卷積過程中,同一個卷積核(Filter)在整張圖上滑動時,使用的是同一組相同的權重參數。因為影像中「在左上角偵測到車輪輪廓的特徵提取器,同樣可以用來偵測右下角的車輪」。
• 這兩大機制使 CNN 的參數量比起全連接網路呈斷崖式下跌(通常可縮減數千到數萬倍),從而讓訓練與即時推論效率明顯優於 FCNN。
其他選項錯誤原因分析:
(A) 錯誤:
標準的 CNN 預設並不具備自帶的旋轉與比例不變性(它具備的是平移不變性 Translation Invariance)。如果訓練集裡都是正著的汽車,當監視器拍到倒過來或極度傾斜的車輛時,標準 CNN 往往無法準確辨識。實務上仍需依靠「資料增強(Data Augmentation)」如旋轉、縮放等手段來補足。
(B) 錯誤:
雖然 CNN 的確可以跳過人工手動設計特徵(如 HOG、SIFT 等傳統電腦視覺手法)的步驟,做到端到端(End-to-End)的自動特徵提取,但 FCNN(全連接網路)同樣也具備直接跳過人工特徵提取進行分類的能力。這並不是 CNN 在效率上「明顯優於」 FCNN 的主因。
(D) 錯誤:
CNN 絕對沒有捨棄激勵函數。非線性的激勵函數(如 ReLU、LeakyReLU)是神經網路能夠學習複雜特徵(如車輛和行人幾何結構)的數學關鍵。捨棄激勵函數會使整個網路退化為單純的線性組合,完全失去影像辨識的能力。
| 神經網路類型 | 連線機制 | 參數結構特徵 | 交通即時監控適用性評估 |
|---|---|---|---|
| 全連接網路 (FCNN) | 全域連接 (Global) | 每個像素都要獨立分配權重,參數量高達數百萬至數億。 | ❌ 不適用。運算太慢、記憶體爆表,無法做到低延遲的即時辨識。 |
| 卷積網路 (CNN) (C) | 區域感知 + 參數共享 | 同一個 Filter 共用一組權重,參數量極小。 | 完美適用!(C) 計算速度極快,能輕鬆處理監視器高畫質即時串流。 |
解題關鍵:在探討 「CNN 為什麼比全連接網路(DNN/FCNN)更適合處理影像、效率更高」 的經典考題中,答案必圍繞在 CNN 的兩大核心物理基石:「區域感知(局部連接)」 與 「參數共享」。看到 C 選項同時帶出這兩個關鍵詞,即可秒選。
7. 下列哪一種應用最適合採用長短期記憶網路(Long Short-Term Memory, LSTM)模型?
(A) 預測未來七天的電力需求變化趨勢;
(B) 辨識監視影像中不同類別的物件;
(C) 將大量顧客資料依相似特徵自動分群;
(D) 將高維度的感測器資料壓縮成低維表示
看解答
正確答案是 (A) 預測未來七天的電力需求變化趨勢。
這題考驗的是深度學習中長短期記憶網路(Long Short-Term Memory, LSTM)的模型特性與其最擅長處理的資料類型。
(A) 為 LSTM 的完美應用場景(時間序列預測):
核心技術需求: 電力需求變化(如每小時、每日的用電量)屬於典型的「時間序列資料(Time Series Data)」或「序列資料(Sequential Data)」。未來的用電量高度依賴於過去的歷史軌跡(例如昨天的用電量、上週同期的用電量,以及長期的季節性趨勢)。
LSTM 的數學優勢: LSTM 是一種特殊的循環神經網路(Recurrent Neural Network, RNN)。它引入了特殊的「記憶單元(Cell State)」與三個閘門機制(遺忘閘 Forget Gate、輸入閘 Input Gate、輸出閘 Output Gate),能夠有效解決傳統 RNN 遇到的梯度消失(Vanishing Gradient)問題。這使得 LSTM 具備強大的長期依賴(Long-Term Dependencies)捕捉能力,非常擅長從前後有順序關聯的資料中提取時間特徵。因此,預測未來七天的電力需求完全是它的主場。
其他選項錯誤原因分析:
(B) 錯誤(這是「卷積神經網路 CNN」的主場):
辨識影像中的物件(如車輛、行人、貓狗)屬於電腦視覺(Computer Vision)範疇。影像資料的核心特徵在於「空間幾何結構(網格像素)」,最適合採用具備區域感知與參數共享特性的 CNN(如 YOLO、ResNet),而非處理前後時間序列的 LSTM。
(C) 錯誤(這是「非監督式學習分群演算法」的主場):
將大量顧客資料依特徵「自動分群」,在機器學習中屬於非監督式學習(Unsupervised Learning)。標準解法是採用傳統的統計分群演算法,如 K-Means(K-平均演算法)、DBSCAN 或階層式分群(Hierarchical Clustering),不需要動用到專門處理序列資料的深度學習 LSTM 模型。
(D) 錯誤(這是「自編碼器 Autoencoder / PCA」的主場):
將高維度資料壓縮成低維表示(特徵降維 / 嵌入),在深度學習中最標準的架構是 自編碼器(Autoencoder) 的編碼器(Encoder)部分;若在傳統機器學習中則是 主成分分析(PCA) 或 t-SNE。除非該感測器資料有非常強烈的時間序列關聯且需要特製的時間壓縮,否則「通用型高維度資料壓縮」並不是 LSTM 的首選定義。
| 資料特徵類型 | 實務商務應用場景 | 最頂尖、最適合的模型選型 |
|---|---|---|
| 時間序列 / 連續語音 / 文本序列 (A) | 電力需求預測 (A)、股票預報、機器翻譯、語音辨識 | LSTM (長短期記憶網路) / Transformer |
| 空間網格 / 影像像素 (B) | 交通影像物件辨識 (B)、醫療影像病變檢測 | CNN (卷積神經網路) |
| 多維類別 / 數值特徵標籤 (C) | 顧客族群自動分類與畫像特徵分群 (C) | K-Means / DBSCAN / 決策樹群 |
| 高維矩陣 / 降維壓縮 (D) | 資料壓縮 (D)、影像去噪、異常檢測 | Autoencoder (自編碼器) / PCA |
解題關鍵:在資料科學的考試中,只要看到 「LSTM」,大腦要條件反射尋找與 「時間(Time)」、「序列(Sequence)」、「前後依賴關聯(Dependencies)」 有關的關鍵字。選項 A 的「未來七天趨勢預測」是唯一具備強烈時間序列特徵的題目,即可瞬間鎖定答案。
8. 資訊增益(Information Gain)常用於衡量特徵對分類結果的不確定性貢獻程度,並據以進行特徵選擇。此方法主要應用於下列哪一類模型架構中?
(A) 使用 L1 正則化進行特徵篩選的線性模型;
(B) 利用激活函數(Activation Function)進行特徵擷取的深度神經網路;
(C) 透過核函數(Kernel Function)將特徵映射至高維空間的分類模型;
(D) 透過遞迴分裂方式建立分類規則的決策樹模型
看解答
正確答案是 (D) 透過遞迴分裂方式建立分類規則的決策樹模型。
這題考驗的是機器學習中經典模型——決策樹(Decision Tree,如 ID3 演算法) 的核心構建機制與數學指標。
(D) 為資訊增益的標準應用場景(決策樹的分裂核心):
資訊熵(Entropy)的背景: 資訊熵是用來衡量一組資料中「不確定性」或「混亂程度」的指標。資料越雜亂、類別越多,熵值就越高。
資訊增益(Information Gain)的物理意義: 資訊增益是指「在得知某個特徵的資訊後,使得資料集混亂程度(不確定性)降低了多少」。
遞迴分裂(Recursive Splitting): 決策樹模型(特別是 ID3 演算法)在建立樹狀結構時,會遍歷所有的特徵,並計算如果把這個特徵當作分支節點,資料的資訊增益是多少。演算法會優先選擇「資訊增益最大」的特徵來對資料進行分裂,因為這個特徵能最大程度地把雜亂的資料切分得更純淨。這個不斷尋找最佳切分點的過程就是「遞迴分裂」。
其他選項錯誤原因分析:
(A) 錯誤(這是 Lasso 的主場):
使用 L1 正則化進行特徵篩選的線性模型(如 Lasso 迴報模型),是透過在損失函數中加入參數絕對值的懲罰項,強迫不重要的特徵權重收斂為零。它使用的是優化算法與權重懲罰,與資訊增益(Entropy)無關。
(B) 錯誤(這是 CNN/DNN 的主場):
深度神經網路是透過層層堆疊的權重矩陣與非線性激活函數(如 ReLU, Sigmoid),將輸入資料自動組合並映射成高階的抽象特徵。它的特徵擷取是依靠反向傳播(Backpropagation)與梯度下降法來更新參數,而非計算資訊增益。
(C) 錯誤(這是支持向量機 SVM 的主場):
透過核函數(Kernel Function)將低維度的線性不可分特徵,映射到高維度的特徵空間中使其線性可分,這是 支持向量機(Support Vector Machine, SVM) 的核心王牌技術,與資訊增益完全無關。
| 模型架構類型 | 核心特徵處理/轉換技術 | 數學與演算法核心指標 |
|---|---|---|
| 決策樹模型 (D) | 透過節點遞迴分裂進行特徵選擇 (D) | 資訊增益 (Information Gain) / 雙基尼係數 (Gini) |
| 線性模型 / Lasso (A) | L1 正則化(壓縮部分特徵權重至 0) | 權重絕對值懲罰項 (\(\lambda \sum \|w\|\)) |
| 深度神經網路 (B) | 權重矩陣 + 激活函數多層映射 | 梯度下降與反向傳播 (Backpropagation) |
| 支持向量機 SVM (C) | 核函數 (Kernel Trick) 高維映射 | 尋找最大邊界超平面 (Maximum Margin) |
解題關鍵:在資料科學的理論考題中,只要看到 「資訊增益(Information Gain)」 或 「資訊熵(Entropy)」,大腦要條件反射直接尋找 「決策樹(Decision Tree)」、「ID3 演算法」 或 「節點分裂(Splitting)」。兩者是綁定在一起的黃金拍檔,看到 D 選項即可瞬間鎖定正確答案。
9. 在建構以距離為基礎的機器學習模型(如KNN、SVM)時,下列哪一項資料前處理方式最為關鍵?
(A) 進行特徵縮放(Feature Scaling),使各特徵變數具有相似的數值範圍;
(B) 將連續型特徵變數轉換為類別型變數;
(C) 以平均值或中位數進行缺失值補齊;
(D) 進行隨機抽樣以平衡資料筆數
看解答
正確答案是 (A) 進行特徵縮放(Feature Scaling),使各特徵變數具有相似的數值範圍。
這題考驗的是機器學習資料前處理(Data Preprocessing)中,「特徵縮放(Feature Scaling)」對以距離為基礎(Distance-based)的演算法有多麼關鍵。
(A) 為最關鍵的前處理(消除尺度的降維打擊):
• 距離型演算法的命脈: K-近鄰演算法(KNN)與支持向量機(SVM)在底層運算時,高度依賴計算資料點之間的幾何距離(例如歐幾里得距離 \(d = \sqrt{\sum (x_1 - x_2)^2}\))。
• 未縮放的致命痛點: 假設我們要預測房價,資料集有兩個特徵:房間數(數值範圍通常是 1~5)與 年收入(數值範圍通常是 30,000 ~ 2,000,000)。如果在未經處理的情況下直接計算距離,年收入動輒幾萬、幾十萬的變異量,在平方和開根號的數學公式中會徹底掩蓋與支配房間數的貢獻。模型最終會誤把這當作只有「年收入」單一特徵起作用的模型,導致預測準確度全面崩盤。
• 特徵縮放的解法: 透過標準化(Standardization / Z-score Normalization)或最小最大縮放(Min-Max Scaling),將各特徵的數值範圍強行壓縮至相似的區間(如 0~1 或平均值為 0、標準差為 1)。這能確保每個特徵在幾何空間中都擁有相同的發言權,是 KNN、SVM 模型訓練前不可或缺的黃金步驟。
其他選項評估:
(B) 錯誤:
將連續型變數轉換為類別型變數(如將「年齡數字」離散化為「青年、中年、老年」)雖然有時可用於特定特徵工程,但對於 KNN 與 SVM 這類擅長處理連續幾何空間的距離模型而言,將其離散化反而會損失原本精準的距離資訊,並非最關鍵的步驟。
(C) 錯誤:
缺失值填補(Imputation)確實是多數機器學習的重要前處理,但它是對「所有含有遺漏值模型」的通用型要求,且非距離型模型(如決策樹、XGBoost)也有其對應的處理機制。相較於直接決定距離模型成敗的「特徵縮放」,(A) 選項對 KNN 和 SVM 具有更具體的針對性與關鍵性。
(D) 錯誤:
進行隨機抽樣以平衡資料筆數(如過取樣 SMOTE 或欠取樣),是用來解決「資料不平衡(Class Imbalance)」問題的。這與演算法本身是否為「以距離為基礎」的底層數學本質無直接因果關係。
| 演算法核心架構機制 | 典型代表模型 | 是否強烈需要特徵縮放? | 核心原因說明 |
|---|---|---|---|
| 以距離為基礎的運算 (Distance-based) | KNN, SVM (A), K-Means | ⭐⭐⭐⭐⭐ 絕對必要 | 避免大數值範圍的特徵完全支配距離計算。 |
| 梯度下降最佳化 (Gradient Descent) | 邏輯迴歸、線性迴歸、神經網路 | ⭐⭐⭐⭐ 需要 | 加速損失函數的等高線收斂,防止梯度更新時走冤枉路。 |
| 樹狀結構分裂規則 (Tree-based) | 決策樹、隨機森林、XGBoost | ❌ 不需要 | 樹節點每次只看單一特徵的相對切分點(大小關係),不受數值絕對尺度影響。 |
解題關鍵:在機器學習前處理的經典考題中,只要看到 「以距離為基礎(Distance-based)」 的模型(如 KNN、SVM、K-Means),其靈魂伴侶前處理步驟一定是 「特徵縮放(Feature Scaling / 標準化 / 正規化)」。兩者互為因果,看到 A 選項即可瞬間破題。
10. 下列哪一種應用情境最適合導入AutoML,以提升模型開發效率?
(A) 公司已有完整的MLOps平台與資深資料科學團隊,模型更新採固定流程;
(B) 製造部門的生產良率模型已長期穩定運作,只需定期調整參數;
(C) 行銷部門希望在短時間內比較多種顧客流失預測模型,缺乏專職工程師與時間進行手動建模;
(D) 財務部門正在開發高度客製化的信用風險評估模型,需要精細控制特徵工程與演算法細節
看解答
正確答案是 (C) 行銷部門希望在短時間內比較多種顧客流失預測模型,缺乏專職工程師與時間進行手動建模。
這題考驗的是企業在什麼樣的實務商業場景下,最適合導入 自動化機器學習(AutoML) 技術,以最大化其投資報酬率(ROI)並提升開發效率。
AutoML 的核心價值與定位:
AutoML(如 Google Cloud AutoML, H2O.ai, Auto-sklearn 等)的核心宗旨是「將機器學習的繁瑣流程自動化」。它能自動執行資料清洗、自動特徵工程、自動嘗試數十種演算法組合、以及自動調整超參數(Hyperparameter Tuning)。
它最無可取代的優勢在於:「降低技術門檻(民主化 AI)」 與 「極速縮短概念驗證(PoC)時間」。
(C) 為完美切入點(資源受限與快速迭代):
行銷部門面臨的痛點是:「時間緊迫(短時間內)」 且 「缺乏專職 AI 工程師」。
導入 AutoML 後,行銷人員或一般資料分析師只需把「顧客流失歷史資料」丟進系統,AutoML 就會在背景自動幫他們比較隨機森林、XGBoost、邏輯迴歸等模型的表現,並在幾小時內產出最佳模型。這完美解決了缺乏人力的困境,大幅提升開發效率。
其他選項不適合導入 AutoML 的原因:
(A) 錯誤:
公司既然已有完整的 MLOps 平台與資深資料科學團隊,且有固定的模型更新流程,代表該企業的 AI 基礎建設已經高度成熟。資深團隊通常需要針對業務場景進行深度程式碼優化,AutoML 這種「黑盒子」式的自動化工具對他們的邊際效益並不高。
(B) 錯誤:
製造部門的模型已經「長期穩定運作」,日常維護「只需定期調整參數」。這屬於標準的模型監控與微調(Fine-tuning)例行公事,直接透過既有的 MLOps 腳本自動化更新即可,完全不需要重新導入一套全新的 AutoML 系統來打亂既有穩定架構。
(D) 錯誤:
財務部門需要開發的是 「高度客製化」、「需要精細控制特徵工程與演算法細節」 的信用風險評估模型。
金融控管與信用審查(Credit Scoring)高度受到法規監管(Regulated),極度重視模型的「可解釋性(Explainable AI)」與特徵欄位的嚴格勾稽。AutoML 封裝好的自動化特徵轉換往往會變成難以解釋的黑盒子,無法滿足這種需要「精細純手工控制」的高難度核心模型需求。
| 企業內部情境特徵 | 核心技術與人力痛點 | AutoML 導入推薦指數 | 最佳實務建議 |
|---|---|---|---|
| 行銷/業務部門嘗試新題目 (C) | 缺乏專職 ML 工程師、需要快速看到 PoC 成果 (C)。 | ⭐⭐⭐⭐⭐ 極度推薦 | 直接導入 AutoML 快速驗證該業務題目的預測可行性。 |
| 核心業務需高度控制與法規監管 (D) | 需要極精細的特徵控制、高可解釋性要求。 | ⭐ 難以落實 | 交由資深資料科學家「純手工」撰寫白盒模型。 |
| 已有 MLOps 完整資深團隊 (A) | 團隊技術飽和,追求模型極致性能與自主研發。 | ⭐⭐ 效益不高 | 可將 AutoML 作為資深員工尋找特徵靈感的輔助工具。 |
解題關鍵:在資料科學管理與應用的考題中,只要看到 「AutoML」,其標準的商業生存空間必定是:「缺乏 AI 專家/專職工程師」、「需要在短時間內快速嘗試多種模型」 或 「想讓非技術背景的業務同仁也能享用 AI」。對齊這三大特徵,即可秒選 C。
11. 相較於 Grid Search,Random Search 在超參數調整上具備哪一項主要優勢?
(A) 可自動產生模型架構;
(B) 可使用更大的訓練集;
(C) 避免模型過擬合;
(D) 能更有效率搜尋高維參數空間
看解答
正確答案是 (D) 能更有效率搜尋高維參數空間。
這題考驗的是機器學習中超參數調優(Hyperparameter Tuning)的策略選擇。在實務上,網格搜尋(Grid Search)與隨機搜尋(Random Search)是最常見的兩種盲搜技術。
(D) 為隨機搜尋(Random Search)的核心統計學優勢:
• 網格搜尋(Grid Search)的死穴: 網格搜尋是「地毯式搜索」。它要求工程師為每個參數指定一組固定的數值,然後將它們相乘,組合成一個「規規矩矩的網格」進行地盤式測試。如果我們有 5 個超參數,每個想測 10 個值,總共就要跑 \(10^5 = 100,000\) 次模型訓練。在高維參數空間(超參數很多)時,這會引發嚴重的「維度災難」,算力根本無法承受。
• 超參數的重要性是不平等的: 在實務的模型中,通常只有少數幾個超參數(例如學習率)對模型表現有決定性的影響(重要參數),其餘的參數(例如某個微調的權重)影響極小(次要參數)。
• 隨機搜尋的破局點: 隨機搜尋是在定義好的連續區間內,隨機隨機地挑選配置組合。因為每次抽樣的參數值都不同,這能讓模型在重要參數的維度上,分配到更多、更分散的數值測試點,而不會像網格搜尋那樣,在同一個不重要的軸線上做重複、無意義的排列組合。
• 因此,在相同的運算資源(例如同樣只允許嘗試 100 次)限制下,Random Search 能以更少的計算代價,在廣大的高維空間中探索到更優秀的局部最優參數解,效率明顯勝出。
其他選項錯誤原因分析:
(A) 錯誤:
不論是 Grid Search 還是 Random Search,它們都只是單純的「參數數值搜尋工具」,完全不具備自動生成、設計、或是改變模型底層架構(如自動增加神經網路層數)的能力。
(B) 錯誤:
訓練集的大小是由硬體記憶體(RAM/VRAM)與資料集本身的規模決定的。這兩種超參數搜尋方法在執行時,底層使用的都是同一份訓練集,兩者在訓練集容量限制上沒有差別。
(C) 錯誤:
超參數搜尋的目的的確是為了找出「最不容易過擬合且表現最好」的參數組,但「避免過擬合」是這兩種調優方法的共同目標,並非 Random Search 相較於 Grid Search 的「主要專屬優勢」。
| 超參數調優方法 | 參數抽樣機制 | 遇上重要關鍵超參數時的表現 | 高維空間搜尋效率 |
|---|---|---|---|
| 網格搜尋 (Grid Search) | 固定步伐、地毯式硬碰硬組合 | 容易在次要參數上浪費算力,導致重要參數漏掉最佳切入點。 | ❌ 差。遇到參數多時,計算量呈指數級爆炸。 |
| 隨機搜尋 (Random Search) (D) | 範圍內完全隨機、跳躍式抽樣 | 每次抽樣都是全新的數值嘗試,能大幅提高重要參數的覆蓋率。 | ⭐⭐⭐⭐⭐ 高 (D)。能用極少的測試次數榨出好模型。 |
解題關鍵:在超參數調優的對比題中,只要看到 「Random Search(隨機搜尋)優於 Grid Search(網格搜尋)」 的原因,正確解法在 95% 的考題中都是指向同一個統計學結論:「在高維空間中效率更高(More efficient in high-dimensional spaces)」。記住這個黃金結論即可秒選 D。
12. 某智慧製造公司開發一套設備故障預測系統,利用感測器資料訓練深度神經網路(Deep Neural Network, DNN)模型,以提前偵測異常運作跡象。在訓練過程中,團隊發現模型收斂速度不穩定:有時過快導致過擬合,有時又遲遲無法達到最佳準確率。開發團隊可以藉由調整下列哪一項超參數(Hyperparameter)以改善此問題?
(A) 每個神經元的輸出結果;
(B) 損失函數(Loss Function)在訓練過程中的梯度變化值(Gradient);
(C) 學習率(Learning Rate),控制模型權重更新的速度;
(D) 模型在訓練後產生的權重值
看解答
正確答案是 (C) 學習率(Learning Rate),控制模型權重更新的速度。
這題考驗的是深度神經網路(DNN)在利用梯度下降法(Gradient Descent)進行最佳化時,「學習率(Learning Rate)」對模型收斂行為的決定性影響。
題目情境診斷:
• 團隊遇到的痛點是:模型「收斂速度不穩定」。
• 狀況一:「有時過快」,這通常是因為學習率設定得稍高,或者參數在初期衝得太快,導致模型迅速在訓練集上「背下答案」,進而引發過擬合(Overfitting)。
• 狀況二:「有時遲遲無法達到最佳準確率」,這通常是因為學習率設定得太小,導致模型每次更新權重的步伐像螞蟻爬行一樣,耗費大量時間也無法走到損失函數的谷底(收斂極慢),甚至在半路就耗盡了訓練輪數(Epochs)。
(C) 學習率是解決此問題的超參數代碼:
• 學習率(通常記為 \(\alpha\) 或 \(\eta\))是一個由工程師在訓練前必須手動設定的超參數(Hyperparameter)。
• 它是梯度下降更新公式中的「步長係數」:\(\theta_{new} = \theta_{old} - \text{學習率} \times \text{梯度}\)。
• 透過精細調整學習率(例如降低學習率、或是導入「學習率排程器 Learning Rate Scheduler / 衰減」機制),可以讓模型在初期快速前進,在接近谷底時減速慢行,從而徹底改善收斂速度不穩定的問題。
其他選項錯誤原因分析:
(A) 錯誤:
每個神經元的輸出結果是模型在前向傳播(Forward Propagation)過程中計算出來的中間狀態(State / Activation),它是隨著輸入資料動態變化的,不是由工程師手動設定與調整的「超參數」。
(B) 錯誤:
梯度變化值(Gradient)是損失函數對權重求導後得到的「數學斜率」。它是反向傳播(Backpropagation)自動計算出來的結果,引導模型該往哪個方向更新。雖然它與收斂有關,但它是模型內部計算出的變數,而非可以手動調整的超參數。
(D) 錯誤:
模型在訓練後產生的權重值(Weights)是神經網路的核心「參數(Parameter)」。它是模型透過大量資料學習、演化出來的最終成果,並非訓練前由我們去「調整以改善收斂問題」的超參數。
| 名詞分類 | 定義與控制權 | 本題對應項目 | 在收斂與訓練中扮演的角色 |
|---|---|---|---|
| 超參數 (Hyperparameter) | 在訓練前必須由工程師手動設定,用來控制訓練的規則。 | 學習率 (Learning Rate) (C) | 控制模型更新步伐的大小,直接決定收斂的快慢與穩定度。 |
| 模型參數 (Parameter) | 在訓練過程中,由演算法透過資料自動學習並更新的數值。 | 權重值 (D)、偏差值 (Bias) | 模型的大腦記憶體,負責記錄特徵規則。 |
| 執行期內部變數 | 程式運算時產生的中間數學結果。 | 神經元輸出 (A)、梯度值 (B) | 反向傳播與前向傳播的基礎數學催化劑。 |
解題關鍵:在深度學習的考題中,只要看到 「控制模型收斂速度」、「步伐太大/太小」、「無法到達谷底(最佳準確率)」 或 「收斂震盪不穩定」 的描述,這在超參數調校中對應的唯一正解就是秒選 「學習率(Learning Rate)」。
13. 標籤偏差(Label Bias)通常是因為什麼原因造成?
(A) 訓練資料量過大;
(B) 標記資料本身帶有主觀偏見;
(C) 模型結構設計不當;
(D) 特徵數量設定過多
看解答
正確答案是 (B) 標記資料本身帶有主觀偏見。
這題考驗的是機器學習倫理與資料工程中的「資料偏差(Data Bias)」觀念,特別是針對標籤偏差(Label Bias)的定義。
在監督式學習(Supervised Learning)中,資料集是由「特徵(Features)」與「標籤(Labels/Ground Truth)」所組成。模型是透過學習標籤來建立判斷標準。
(B) 為標籤偏差的根本成因:
• 何謂標籤偏差: 當我們在建立資料集並進行人工標記(Labeling)時,如果標記人員、歷史制度或評估標準本身存在歷史偏見、刻板印象或主觀不一致,這些偏見就會被直接寫進「標籤」裡。
• 實務案例: 企業若要開發 AI 履歷篩選系統,拿過去主管的歷史錄取紀錄(Label)來訓練模型。如果過去的主管在特定職位上存在性別偏見,使得該性別的錄取標籤(1)比例異常高,AI 就會學到這個偏見。
醫療影像標記中,不同醫生對於某個陰影是否算作「異常(1)」的主觀判斷標準不一,導致標籤本身產生雜訊與偏誤。
• 因此,這完全是源自於標記資料本身帶有的主觀偏見或歷史偏誤(B)。
其他選項評估:
(A) 錯誤:
訓練資料量過大(Data Volume)通常會讓模型學得更扎實、減少變異數(Variance),並不會直接導致「標籤」產生偏差。如果資料本身是乾淨且平衡的,資料量大反而是一件好事。
(C) 錯誤:
模型結構設計不當(如層數不夠、參數太少)通常會導致模型發生「欠擬合(Underfitting)」或「過擬合(Overfitting)」,這是屬於模型演算法架構(Model Capacity)的問題,而不是資料本身標籤被污染、偏頗的問題。
(D) 錯誤:
特徵數量設定過多(Features too many)會帶來「維度災難(Curse of Dimensionality)」或過擬合,這是輸入端(\(X\))的特徵工程問題,與輸出目標端(\(y\))的「標籤偏差」沒有因果關係。
| 偏差名稱 | 發生階段與核心成因 | 實務場景範例 |
|---|---|---|
| 標籤偏差 (Label Bias) (B) | 資料標記階段:歷史偏見、人工標記的主觀偏頗 (B)。 | 歷史徵才資料中隱含的性別或種族偏見。 |
| 選擇性偏差 (Selection Bias) | 資料收集階段:取樣群體不具代表性,無法反映真實分佈。 | 舉辦線上問卷調查卻想要推論全台灣不分年齡層的行為。 |
| 測量偏差 (Measurement Bias) | 資料收集階段:儀器失準、感測器故障或計算公式錯誤。 | 溫度計集體高估了 2°C,導致歷史溫度特徵集體失真。 |
解題關鍵:在機器學習的倫理與資料前處理考題中,只要看到 「標籤偏差(Label Bias)」,其問題的核心一定出在 「標籤(Label / 答案)」 身上。尋找與 「標記(Labeling)」、「主觀偏見」 或 「歷史偏誤紀錄」 有關的選項,即可一秒破題選出 B。
14. 下列哪一種AI應用情境中,模型的可解釋性(Explainability)最為關鍵?
(A) 電商平台利用深度學習模型預測用戶的下一次購買時間,以優化推播行銷策略;
(B) 新創公司使用機器學習演算法自動調整廣告出價策略,以提升點擊轉換率;
(C) 醫院導入AI模型分析病患影像並給出腫瘤惡性可能性,作為臨床醫師診斷依據;
(D) 銀行導入AI模型預測客戶流失率,並自動推薦留客優惠方案
看解答
正確答案是 (C) 醫院導入AI模型分析病患影像並給出腫瘤惡性可能性,作為臨床醫師診斷依據。
這題考驗的是機器學習落地應用中的「可解釋性 AI(Explainable AI, XAI)」決策情境。在某些產業中,AI 模型如果只是個「黑盒子(Black Box)」(只給出答案,卻不知道原因),將會帶來巨大的風險。
(C) 為最關鍵的應用情境(高風險、人命關天):
醫療診斷的特殊性: 醫療決策直接關係到病患的生命安全與身體健康。如果 AI 判定某個腫瘤有 95% 的機率是惡性,臨床醫師絕對不能「盲目相信」這個數字,而是需要知道 「AI 是看見了影像中的哪個陰影、邊緣形狀還是微小鈣化點才做出這個判斷」。
醫療法規與責任歸屬: 當醫師根據 AI 的建議進行手術或化療時,醫師必須承諾最終醫療責任。具備高度可解釋性的模型(例如能標註出關鍵特徵區域的類神經網路)才能讓醫師與病患建立信任感,因此在醫療、金融核貸、法律裁判等「高風險、高監管」領域,可解釋性最為關鍵。
其他選項不屬於最關鍵原因分析:
(A)、(B)、(D) 的共同特徵(低風險、容錯率高):
(A) 電商推播時間、(B) 廣告出價策略、以及 (D) 預測客戶流失率,皆屬於數位行銷與電商業績優化的範疇。
在這些情境下,企業追求的是「整體的統計轉換率與投報率(ROI)」。如果 AI 預測錯了某位客人的購買時間、或者不小心多花了一點广告費,最壞的結果頂多是行銷成本的些微損失,並不會造成生命財產安全或法律上的重大災難。
因此,這些部門通常願意犧牲可解釋性,轉而追求「預測準確度更高、但極難解釋」的複雜黑盒子模型(如 XGBoost 或深度學習模型)。
| 應用領域 | 代表案例 | 容錯率等級 | 對「可解釋性」的需求程度 | 核心原因說明 |
|---|---|---|---|---|
| 醫療診斷 (C) | 腫瘤影像辨識 (C)、手術風險評估 | ❌ 極低 (人命關天) | ⭐⭐⭐⭐⭐ 絕對關鍵 | 醫師需要勾稽醫療證據,並對病患安全與醫療法規負責。 |
| 金融法規 | 信用貸款審核、洗錢防制偵測 | ❌ 低 (高度監管) | ⭐⭐⭐⭐ 高 | 需符合金融監督法規,避免歧視並保障客戶申訴權利。 |
| 電商行銷 (A)(D) | 商品推薦、流失率預測 (A)(D) | ⭕ 高 (允許誤差) | ⭐ 低 | 只要大數據統計下來整體業績能提升,黑盒子模型完全可以接受。 |
| 廣告投放 (B) | 自動化廣告出價 (B) | ⭕ 高 (滾動微調) | ⭐ 低 | 追求即時(Real-time)運算與最大化點擊率,原因並不影響最終獲利。 |
解題關鍵:在資料科學管理與倫理的考題中,只要詢問 「哪裡最需要可解釋性(Explainability/XAI)」,解題思維就是尋找 「出錯代價最高、人命關天、或高度受到政府監管」 的選項。只要看到「醫療(腫瘤、診斷)」或「金融(核貸、信用風險)」,即可毫不猶豫秒選該項。
15. 在線性迴歸模型中,若R²值為0.85,其意義為何?
(A) 模型準確率為85%;
(B) 85%的變異可被模型解釋;
(C) 預測誤差為15%;
(D) 模型有85%的信心水準
看解答
正確答案是 (B) 85% 的變異可被模型解釋。
這題考驗的是線性迴歸分析中最重要的模型擬合度指標——判定係數(Coefficient of Determination,常記為 \(R^2\) 或 R-squared)的統計學物理意義。
(B) 為 \(R^2\) 的標準定義(核心考點):
• 數學本質: \(R^2\) 的公式定義為:
$$R^2 = 1 - \frac{SS_{res}}{SS_{tot}}$$
其中 \(SS_{res}\) 是殘差平方和(模型預測不出來的變異),\(SS_{tot}\) 是總變異(依變數 \(y\) 原始的總波動波動)。
• 統計學意義: 經過公式轉換後,\(R^2\) 代表的是「目標依變數(\(y\))的總變異當中,有多少比例可以被模型中的自變數(\(X\))所解釋」。
• 因此,當 \(R^2 = 0.85\) 時,在統計學上的標準嚴謹描述就是:「資料中 85% 的變異可以被該迴歸模型(或自變數)所解釋」。
其他選項錯誤原因分析:
(A) 錯誤(最常見的觀念混淆):
• 「準確率(Accuracy)」 是一個專屬於「分類模型(Classification)」的評估指標(例如:100 張照片中成功分類出 85 張貓狗)。
• 迴歸模型是用來預測「連續型數值」(例如房價、營業額),實務上我們不說迴歸模型的準確率是 85%,而是用平均絕對誤差(MAE)或均方根誤差(RMSE)來衡量實質誤差大小。
(C) 錯誤:
\(R^2 = 0.85\) 雖然代表模型無法解釋的變異比例為 15%(即 \(1 - R^2 = 0.15\)),但這 不等於 模型預測的「誤差值(Error Rate)」或真實數值上的「誤差百分比」。不能直接將其解讀為「預測誤差為 15%」。
(D) 錯誤:
「信心水準(Confidence Level)」 是推論統計學中進行「區間估計」或「假設檢定」時的專有名詞(常見的如 95% 或 99% 信心水準,對應顯著水準 \(\alpha = 0.05\))。這與衡量模型擬合能力的 \(R^2\) 值屬於完全不同的統計概念。
| 指標數值情境 | 統計學名詞代號物理意義 | 商務實務翻譯解讀 |
|---|---|---|
| \(R^2 = 0.85\) (B) | 判定係數 (Coefficient of Determination) | 依變數(如業績)有 85% 的波動規律已被模型抓到了 (B)。 |
| \(1 - R^2 = 0.15\) | 未解釋變異比例 (Unexplained Variance) | 有 15% 的波動是由模型沒納入的潛在雜訊或其它特徵引起的。 |
解題關鍵:在迴歸分析的考題中,只要看到詢問 「\(R^2\)(或 R-squared / 判定係數)的意義」,請在選項中直接尋找帶有 「解釋(Explain)」 與 「變異(Variance)」 這兩個詞的敘述。看到 B 選項完美契合這組關鍵字,即可秒殺破題。
16. 在二元分類問題中,若精確率(Precision)為0.8,召回率(Recall)為0.6,則F1分數(F1 Score)為何?
(A) 0.686;
(B) 0.700;
(C) 0.720;
(D) 0.750
看解答
正確答案是 (A) 0.686。
這題考驗的是分類模型評估指標中 F1 分數(F1 Score) 的數學計算公式。
F1 分數的本質是精確夾(Precision)與召回率(Recall)的「調和平均數(Harmonic Mean)」。它被廣泛用來綜合評估一個二元分類模型的表現,特別是在資料不平衡、需要同時兼顧精確率與召回率的場景。
其標準數學計算公式如下:
$$F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}$$
我們直接將題目給定的數值(\(\text{Precision} = 0.8\)、\(\text{Recall} = 0.6\))代入公式中計算:
$$2 \times 0.8 \times 0.6 = 0.96$$
$$0.8 + 0.6 = 1.4$$
$$F1 = \frac{0.96}{1.4} \approx 0.685714...$$
進行四捨五入取到小數點後三位,結果精準等於 0.686。因此,選項 (A) 為唯一正確答案。
如果我們盲目使用算術平均數(相加除以 2),這題算出來的結果會是 \(\frac{0.8 + 0.6}{2} = 0.700\)(即錯誤選項 B)。
調和平均數的懲罰機制:
統計學上之所以在這裡採用調和平均數,是為了懲罰「極度不平衡」的表現。
解題關鍵:只要在機器學習考題中看到要算 「F1 分數」,口訣就是:「相乘除以相加,最後再乘以 2」。
$$\left( \frac{0.48}{1.4} \right) \times 2 = 0.3428 \times 2 = 0.686$$
熟記這個核心公式,不論數字怎麼變都能在 10 秒內秒殺拿分。
17. 下列哪一種優化演算法內建動量(Momentum)的設計機制?
(A) SGD+Momentum;
(B) Adam;
(C) RMSProp;
(D) Adagrad
看解答
這題是一題標準的「複選題」或「題目敘述不夠嚴謹」的經典爭議考題。在實際的機器學習與深度學習考試中,這題的正確答案必須依據題目的嚴謹度來判定: 如果是單選題,最標準且最常給的官方答案是 (B) Adam(或部分基礎檢定會直接送分,若考題直白則可能指 A,以下為您詳細拆解)。
這題考驗的是深度學習中優化器(Optimizers)的演化史。所謂「動量(Momentum)」的物理意義,是指在更新參數時,會參考上一次更新的方向與速度,就像一顆球從山丘滾下來,帶有慣性,能幫助模型跨越局部最優解或鞍點。
我們來看各個選項的底層數學架構:
(A) SGD + Momentum:
它是「隨機梯度下降法(SGD)」額外加上動量機制。雖然它有動量,但「SGD」本身是不含動量的,是後面人為「外掛(+ Momentum)」上去的組合技。
(B) Adam (Adaptive Moment Estimation) ➔ 最標準的單選答案:
為什麼選它? 因為 Adam 的名字本身就叫「自適應動量估計」。
底層機制: Adam 是將 Momentum(動量) 與 RMSProp(自適應學習率) 完美結合的集大成者。它在演算法內部直接計算了「一階動量(First Moment Vector,即帶有動量的梯度累積)」與「二階動量(Second Moment Vector,即梯度的平方和)」。它是原生內建、骨子裡就包含動量的神級優化器。
(C) RMSProp 與 (D) Adagrad:
這兩個優化器的核心是 「自適應學習率(Adaptive Learning Rate)」。
他們的作法是根據歷史梯度的「平方和」來動態縮放每個參數的學習率(走得越頻繁的特徵,步伐變越小)。他們內部並沒有內建一階動量(Momentum)的慣性方向機制。
| 優化器名稱 | 內建一階動量(慣性方向) | 內建二階動量(自適應步長) | 物理行為想像 |
|---|---|---|---|
| SGD | ❌ 無 | ❌ 無 | 盲目跟著當前的斜率走,容易在峽谷中震盪。 |
| SGD+Momentum (A) | 外掛導入 | ❌ 無 | 滾動的小球,帶有慣性,能衝過平緩的鞍點。 |
| Adagrad (D) | ❌ 無 | 內建(累積平方和) | 根據歷史紀錄調整步伐,但後期步伐會變得太小而走不動。 |
| RMSProp (C) | ❌ 無 | 內建(指數移動平均) | 修正了 Adagrad 的缺點,只看最近的梯度平方來調整步伐。 |
| Adam (B) | 原生內建 (B) | 原生內建 | 結合兩者優點(方向看動量、步伐看最近波動),目前最通用的主流。 |
💡 實務考試破題策略:
• 如果這是一題正式的單選題: 毫不猶豫選 (B) Adam。因為只有 Adam 在其演算法架構的本質定義中,就將「Momentum」寫進了名字和核心一階矩(First Moment)的數學公式裡。
• 如果出題老師觀念較老舊: 有時出題者看到題目有「Momentum」五個字,就直接對應到 (A) 的名稱,但以現代資料科學的定義來看,(B) 是最嚴謹且內建動量的經典優化器。
18. 下列何者最能同時反映 XGBoost(eXtreme Gradient Boosting)相較於傳統梯度提升決策樹(Gradient Boosting Decision Tree, GBDT)的主要技術改進?
(A) 引入正則化項(Regularization)以抑制過擬合,並支援缺失值自動處理與並行化訓練;
(B) 改以隨機森林(Random Forest)架構取代樹模型以提升準確率;
(C) 以類神經網路(Neural Network)取代弱分類器(Weak Learners);
(D) 採用批次正規化(Batch Normalization)技術提升模型穩定性
看解答
正確答案是 (A) 引入正則化項(Regularization)以抑制過擬合,並支援缺失值自動處理與並行化訓練。
這題考驗的是機器學習中號稱「表格資料大王」的 XGBoost 其底層的核心技術改進。XGBoost 本質上是傳統 GBDT(梯度提升決策樹) 的高階工程與數學優化版本,它之所以能在各大資料科學競賽(如 Kaggle)中大放異彩,正是因為它解決了傳統 GBDT 的多項痛點。
(A) 完美總結了 XGBoost 的三大核心技術升級:
1. 引入正則化項(數學防線): 傳統 GBDT 的損失函數只考慮了殘差(誤差)。而 XGBoost 在目標函數(Objective Function)中直接加入了正則化懲罰項(同時包含 L1 樹葉結點懲罰 \(\alpha\) 與 L2 權重懲罰 \(\lambda\)),用來限制樹的複雜度與葉子節點的數量,從根本上有效抑制模型過擬合(Overfitting)。
2. 缺失值自動處理(Sparsity-aware Split Finding): 實務資料常有缺失值。XGBoost 內建自動尋找缺失值分裂方向的機制。在訓練時,它會分別把缺失值分到左子樹和右子樹,看哪邊的增益(Gain)最大,並將其設為預設路徑。因此,資料完全不需要手動補值即可直接送入模型。
3. 並行化訓練(工程優化): 雖然 Boosting 演算法在邏輯上是前後串行(Serial)生成的(第二棵樹要學第一棵樹的殘差),但 XGBoost 在「尋找最佳切分點」時,利用了預先排序(Pre-sorted)的區塊(Block)結構,讓硬體可以並行(Parallel)計算各個特徵的增益,大幅榨乾 CPU 多核心的效能,速度呈飛躍式提升。
其他選項錯誤原因分析:
(B) 錯誤:
XGBoost 與 GBDT 的底層基底模型(Base Learner)都依然是「決策樹(Decision Tree,通常是 CART 樹)」,並沒有把架構改成隨機森林。XGBoost 雖然借鑒了隨機森林的「列抽樣(Column Subsampling)」技術,但兩者的集成邏輯(Boosting vs. Bagging)截然不同。
(C) 錯誤:
XGBoost 是樹狀模型的極致。它所組合的弱分類器(Weak Learners)依然是決策樹(Tree-based),絕對沒有轉變成深度學習的類神經網路(Neural Network)。
(D) 錯誤:
批次正規化(Batch Normalization, BN) 是專屬於深度學習/神經網路(Deep Learning) 在訓練時用來加速收斂、防止梯度消失與爆炸的技術。樹狀模型(如 XGBoost)的切分只看數值的相對大小關係,完全不需要也不支援批次正規化。
| 技術特性維度 | 傳統 GBDT | XGBoost (A) |
|---|---|---|
| 目標函數(損失) | 僅包含損失誤差(一階導航)。 | 內建正則化項(泰勒展開式一階 + 二階導數,抗過擬合)(A)。 |
| 缺失值處理 | 必須在訓練前手動補齊(平均值或中位數)。 | 自動學習缺失值的最佳分裂方向(容忍稀疏矩陣)(A)。 |
| 計算運算效率 | 只能單核心序列計算,大數據時速度慢。 | 特徵內部並行化(Parallelization)計算,速度極快 (A)。 |
| 弱分類器基底 | 僅支援決策樹(CART)。 | 支援決策樹,亦支援線性分類器(gblinear)。 |
解題關鍵:在機器學習架構考題中,只要探討 「XGBoost 為何比 GBDT 強大 / 改進了什麼」,答案必定圍繞在三大黃金升級:「正則化(防止過擬合)」、「並行化(速度快)」、以及 「自動處理缺失值(特徵工程省事)」。看到 A 選項一次把這三個頂級特徵打包帶走,即可毫不猶豫秒選。
19. 某醫療機構開發疾病早期偵測模型,正樣本(確診病例)僅佔 3%。在模型訓練與評估過程中,下列哪一種作法最不適合用於提升對少數類病例的預測能力?
(A) 使用SMOTE 過採樣;
(B) 調整類別權重;
(C) 使用準確率(Accuracy)作為評估指標;
(D) 欠採樣多數類(Undersampling the majority class)
看解答
正確答案是 (C) 使用準確率(Accuracy)作為評估指標。
這題考驗的是機器學習在面對「不平衡資料集(Imbalanced Data)」時的處理策略。題目中明確提到:正樣本(確診病例)僅佔 3%,這代表負樣本(健康者)佔了 97%,是極度不平衡的典型醫療資料。
(C) 為什麼「最不適合」?(陷入準確率陷阱):
• 準確率(Accuracy)的盲點: 準確率的公式是 \(\frac{\text{答對的總個數}}{\text{所有的樣本總數}}\)。
• 極端案例: 想像一個完全不做任何機器學習、最笨的盲猜模型,它不論看到什麼資料,通通盲猜該病患「健康(負樣本)」。
• 可怕的後果: 因為健康的人佔了 97%,這個盲猜模型甚至不用經過任何訓練,就能輕易拿到高達 97% 的準確率!然而,那 3% 真正生病、急需被早期偵測出來的患者,全部都會被漏掉(召回率為 0)。
• 在醫療早期偵測的情境下,漏診(將病人判斷為健康)會導致延誤就醫,代價極高。因此,使用準確率作為評估指標會讓團隊被「97%」這個漂亮的數字所蒙蔽(即準確率陷阱),完全無法提升對少數類病例的預測能力。
其他選項適當性分析(為什麼它們適合?):
(A) 使用 SMOTE 過採樣(適合):
SMOTE(Synthetic Minority Over-sampling Technique)是一種聰明的演算法。它不是盲目複製少數類,而是透過在少數類(3% 的確診病例)的幾何空間鄰居之間進行插值,憑空創造出具有代表性的虛擬新樣本,藉此平衡資料庫的類別比例,能有效幫助模型學習少數類的特徵。
(B) 調整類別權重(適合):
透過在損失函數中加入權重(Class Weight),給予少數類(確診)更高的懲罰權重(例如將確診猜錯的代價設為健康的 30 倍)。這會強迫模型在訓練時「加倍奉還」對少數類的關注度,非常適合用來提升少數類的預測能力。
(D) 欠採樣多數類(適合):
隨機或有策略地剔除一部分多數類(97% 的健康樣本),讓健康與確診的樣本比例接近 1:1。這也是平衡資料、避免模型被多數類完全支配的常用手法。
| 處理維度分類 | 具體實務技術名稱 | 核心物理作用機制 | 本題情境適用性 |
|---|---|---|---|
| 資料層面 | SMOTE 過採樣 (A) | 透過數學插值生成全新的少數類樣本。 | 適合 |
| 資料層面 | 欠採樣多數類 (D) | 減少健康人的樣本數,平衡兩者比例。 | 適合 |
| 演算法層面 | 調整類別權重 (B) | 提高猜錯少數類的懲罰代價(Class Weight)。 | 適合 |
| 評估指標層面 | F1-Score / PR-AUC | 綜合權衡精確率與召回率,專打不平衡資料。 | 適合 |
| 評估指標層面 | 準確率 (Accuracy) (C) | 盲猜大宗類別就能拿高分,直接閹割少數類的辨識力。 | ❌ 最不適合 (C) |
解題關鍵:在資料科學考題中,只要看到 「不平衡資料(如 3% vs 97%)」 配合 「最不適合 / 盲點 / 陷阱」 的關鍵字,答案有 99% 都是指向 「準確率(Accuracy)」。此時正確的指標應改用 F1-Score、Recall(召回率)或 ROC-AUC。看到 C 選項即可秒殺。
20. 某電子商務公司為開發商品評論情感分析模型,希望模型能捕捉評論中不同特徵之間的關聯影響,例如「商品價格」與「顧客滿意度」的互動效果。下列哪一種特徵工程設計方式最適合用於建立互動特徵(Interaction Features)?
(A) 將單一特徵取平方;
(B) 對所有特徵進行對數轉換;
(C) 將兩個或多個特徵進行乘積或交互組合;
(D) 對特徵進行標準化
看解答
正確答案是 (C) 將兩個或多個特徵進行乘積或交互組合。
這題考驗的是機器學習特徵工程(Feature Engineering)中,「互動特徵(Interaction Features,或稱交互作用特徵)」的定義與建立方式。
(C) 為建立互動特徵的標準做法:
• 什麼是互動特徵? 在許多實務場景中,兩個獨立特徵對目標變數(如滿意度)的影響並不是單純相加的,而是會產生「\(1 + 1 > 2\)」或互相牽制的協同效應。這在統計學與機器學習中被稱為交互作用(Interaction Effect)。
• 數學實作方式: 最經典且最常用的做法,就是將這兩個特徵直接相乘(Product)。
• 本題實務想像: 假設 商品價格 高(數值大),如果單看這個特徵,通常會降低購買意願;但如果同時 商品品質 也極高(數值大),兩者相乘得到的互動特徵 價格 × 品質(代表 CP 值或奢華度),反而能正向解釋模型的顧客滿意度。透過相乘或交互組合(C),線性模型(如邏輯迴歸)就能捕捉到這種非線性的特徵關聯。
其他選項功能分析(為什麼不符題意?):
(A) 錯誤(這是「多項式特徵 Polynomial Features」而非互動特徵):
將單一特徵取平方(如 \(x_1^2\)),是為了讓線性模型能捕捉到該特徵自身的非線性彎曲趨勢(例如隨著年齡增長,體力先升後降的拋物線關係)。這只涉及「單一」特徵,無法呈現「不同特徵之間」的關聯影響。
(B) 錯誤(這是「資料轉換 Data Transformation」技術):
對特徵進行對數轉換(Log Transformation,如 \(\log(x)\)),主要目的是為了將「極度偏態(Skewed)」的資料(例如貧富差距極大的年收入、電商商品瀏覽量)拉回接近正態分佈,或者用來穩定變異數。它同樣是在單一特徵上做數學轉換,無法創造特徵間的互動。
(D) 錯誤(這是「特徵縮放 Feature Scaling」技術):
對特徵進行標準化(Standardization / Z-score),是為了消除特徵間的「單位尺度差異」(如將公噸和公克縮放到同一個範圍),以利於距離型模型(KNN/SVM)或梯度下降的收斂。它並不會改變特徵間的關係,也不會產生新的互動特徵。
| 特徵工程手法名稱 | 核心數學操作 | 主要解決的實務痛點 / 應用目的 |
|---|---|---|
| 互動特徵 (Interaction) (C) | 特徵相乘 (\(x_1 \times x_2\)) (C) | 捕捉不同特徵之間的協同效應、互動與關聯影響。 |
| 多項式特徵 (Polynomial) (A) | 單一特徵平方 (\(x_1^2\)) | 引入非線性關係,讓線性模型能畫出曲線。 |
| 對數轉換 (Log Transform) (B) | 取對數 (\(\log(x)\)) | 處理長尾分佈、偏態資料,使其符合正態分佈假設。標準化 (Standardization) (D)$\frac{x - \mu}{\sigma}$消除各欄位數值大小 |
| 標準化 (Standardization) (D) | \(\frac{x - \mu}{\sigma}\) | 消除各欄位數值大小尺度的差異,加速模型收斂。 |
解題關鍵:在特徵工程的觀念考題中,只要看到關鍵字 「互動特徵(Interaction Features)」、「特徵之間的關聯影響」 或 「互動效果」,在數學操作上對應的標準答案一定是尋找 「相乘(Product)」 或 「交互組合(Cross-product)」。看到 C 選項完美命中,即可秒選。
21. 某語音辨識系統開發團隊採用 Transformer 架構,為了讓模型能同時理解語音片段中的發音特徵、語速變化與語意脈絡等多層次資訊,團隊在設計中導入了多頭注意力(Multi-head Attention)機制。請問下列何者為此機制的主要優點?
(A) 減少模型參數量以降低訓練成本;
(B) 加速整體注意力計算過程;
(C) 從不同表示子空間(Representation Subspaces)同時捕捉多樣化關聯資訊;
(D) 避免梯度消失(Gradient Vanishing)問題
看解答
正確答案是 (C) 從不同表示子空間(Representation Subspaces)同時捕捉多樣化關聯資訊。
這題考驗的是現代深度學習(特別是大語言模型與語音辨識)中 Transformer 架構 的核心靈魂——多頭注意力(Multi-head Attention)機制的設計物理意義。
(C) 為多頭注意力機制的精髓(多視角並行觀察):
• 什麼是「頭(Head)」? 在 Transformer 中,如果只用一個注意力機制(Single-head),模型就像只有一隻眼睛,每次只能用同一種邏輯來計算序列中各個 token 之間的關聯度。
• 表示子空間(Representation Subspaces)的物理意義: 「多頭」代表將原始的高維度特徵空間,利用不同的權重矩陣(\(W_Q, W_K, W_V\))線性投影分割成多個低維度的「子空間」。
• 本題語音實務想像: 正如題目所述,語音訊號極其複雜。導入多頭機制後:
Head 1 可以專注在捕捉「發音特徵」(如音素的關聯);
Head 2 可以專注在捕捉「語速變化」(如時間軸上的長短音拉伸);
Head 3 則可以專注在長距離的「語意脈絡」。
• 最終,模型將這些不同子空間(不同頭)所收集到的多樣化關聯資訊進行拼接(Concat),形成一個極其立體且全面的特徵表示。這正是 (C) 所描述的完美技術特徵。
其他選項錯誤原因分析:
(A) 錯誤(反而增加了複雜度):
多頭注意力機制需要為每一個「頭」獨立配置一組投影權重矩陣(\(W_Q^i, W_K^i, W_V^i\))。相較於單頭注意力,它並不會減少模型參數量,反而會因為並行多組投影而略微增加運算參數與管理成本。
(B) 錯誤(它是「並行化」而非「加速單次計算」):
Transformer 的加速主要來自於其架構捨棄了 RNN 的「時間遞迴(串行)」,改用「自注意力(Self-Attention)」做到整句話一體化並行訓練。但多頭機制本身在計算時,各個頭之間是同時進行矩陣運算的,它的目的是「提升特徵豐富度」,而非「加速單次注意力矩陣的相乘速度」。
(D) 錯誤:
在 Transformer 中,主要用來對抗梯度消失、確保深層網路能順利訓練的技術是 殘差連接(Residual Connections / Skip Connections) 與 層正規化(Layer Normalization),並非多頭注意力機制。
| 核心技術名稱 | 數學實作本質 | 實務商務/技術翻譯解讀 |
|---|---|---|
| 多頭注意力 (Multi-head) (C) | 多組權重矩陣並行做線性投影。 | 拒絕單一視角!從不同表示子空間同時抓取多維度特徵(語意、語速、發音)(C)。 |
| 自注意力 (Self-Attention) | \(Attention(Q,K,V) = \text{softmax}(\frac{QK^T}{\sqrt{d_k}})V\) | 計算序列內部任意兩個元素(字與字、音與音)之間的長距離依賴關係。 |
解題關鍵:在 Transformer 相關考題中,只要看到詢問 「多頭注意力(Multi-head Attention)的優點/目的」,答案有 99% 的機率會精準出現 「不同子空間(Different Subspaces)」 或 「同時捕捉多樣化/多個層次的資訊」 這組經典論文關鍵字。看到 C 選項即可毫無懸念秒選。
22. 某電商平台希望預測顧客是否會購買特定商品。系統蒐集顧客的瀏覽紀錄、停留時間、商品類別偏好與過去購買行為,並以此推估「在觀察到這些行為特徵的情況下,該顧客會購買的機率」。若模型採用貝氏定理(Bayes’Theorem)進行推論,下列敘述何者最符合其核心運作機制?
(A) 根據歷史樣本自動分群,找出行為相似的顧客群;
(B) 以條件機率方式計算顧客屬於「會購買」或「不會購買」的分類機率;
(C) 以最小平方誤差(Mean Squared Error)為損失函數,預測顧客的購買金額;
(D) 依據回饋信號(Feedback Signal)透過強化學習(Reinforcement Learning)動態調整推薦策略
看解答
正確答案是 (B) 以條件機率方式計算顧客屬於「會購買」或「不會購買」的分類機率。
這題考驗的是機器學習中經典統計分類模型——貝氏分類器(Bayes Classifier,如單純貝氏 Naive Bayes)的底層數學核心「貝氏定理」。
(B) 為貝氏定理的核心機制(條件機率的轉換):
• 題目情境對應: 題目提到「在觀察到這些行為特徵的情況下(記為 \(X\)),該顧客會購買(記為 \(Y\))的機率」。
• 數學本質: 這是一個典型的條件機率(Conditional Probability)問題,數學符號表示為 \(P(Y|X)\),也就是給定特徵 \(X\) 下,類別 \(Y\) 發生的機率(這在統計學中稱為事後機率 Posterior Probability)。
• 貝氏定理的運作: 貝氏定理的公式為:
$$P(Y|X) = \frac{P(X|Y)P(Y)}{P(X)}$$
模型會透過歷史大數據,先計算出「會購買的人,通常有什麼瀏覽行為」的機率 \(P(X|Y)\)(事前概似度 Likelihood),以及「所有人之中會購買的基礎比例」 \(P(Y)\)(事前機率 Prior)。當新顧客進來並產生一連串瀏覽特徵 \(X\) 時,貝氏定理就能精準算出他是屬於「會購買 \(P(Y_{\text{會}}|X)\)」還是「不會購買 \(P(Y_{\text{不會}}|X)\)」的機率。因此,(B) 選項完美契合貝氏定理的底層定義。
其他選項錯誤原因分析:
(A) 錯誤(這是非監督式分群的主場):
根據歷史樣本自動分群(如 K-Means),是屬於非監督式學習(Unsupervised Learning),不需要標籤,目的在於找出資料間的幾何相似度,與基於機率推論的貝氏定理無關。
(C) 錯誤(這是迴歸分析的主場):
最小平方誤差(MSE)是用來衡量「連續型數值預測」(如預測房價、購買金額)的損失函數,通常與線性迴歸分析(Linear Regression)或類神經網路綁定。而題目是要預測「是否會購買」的二元分類問題,不適用 MSE。
(D) 錯誤(這是強化學習的主場):
依據環境的回饋信號(獎勵與懲罰)來動態調整策略,這是強化學習(Reinforcement Learning, RL)的核心定義(常應用於棋類 AI 或極度動態的個性化推薦系統),並非貝氏定理的靜態條件機率推論。
| 統計學概念 / 指標 | 機器學習實務對應 | 商業應用場景案例 |
|---|---|---|
| 條件機率 \(P(Y\|X)\) (B) | 貝氏定理 / 單純貝氏分類器 (B) | 給定特定瀏覽行為特徵,計算會/不會購買的分類機率 (B);垃圾郵件過濾。 |
| 歐氏幾何距離 | 非監督式學習分群 (A) | 客戶樣貌特徵自動貼標與分群 (A) |
| 最小平方誤差 (MSE) (C) | 迴歸模型預測 (C) | 預測客戶下個月的實質消費金額總計 (C) |
解題關鍵:在資料科學的基礎理論考題中,只要看到關鍵字 「貝氏定理(Bayes’ Theorem)」 或 「貝氏分類(Naive Bayes)」,大腦要條件反射直接尋找核心關鍵字:「條件機率(Conditional Probability)」。看到 B 選項精準命中,即可瞬間秒殺破題。
23. 一家再生能源公司希望預測未來三個月太陽能發電量的波動範圍。由於氣候條件具有高度隨機性,且輸入變數(如日照時數、雲量、溫度)之間存在不確定關係,工程團隊決定以隨機抽樣方式模擬多種可能情境,以估算整體發電量的機率分佈與風險區間。請問此時所採用的技術最符合下列哪一種方法?
(A) 蒙地卡羅方法(Monte Carlo Method);
(B) K-means聚類(K-means Clustering);
(C) 支持向量迴歸(Support Vector Regression, SVR);
(D) 特徵選取(Feature Selection)
看解答
正確答案是 (A) 蒙地卡羅方法(Monte Carlo Method)。
這題考驗的是資料科學與統計學中,如何利用隨機性與模擬技術來解決高不確定性問題的經典方法——蒙地卡羅模擬(Monte Carlo Simulation)。
(A) 為蒙地卡羅方法的標準定義(核心考點):
核心技術邏輯: 蒙地卡羅方法是一種基於「隨機抽樣(Random Sampling)」與「統計模擬」的計算方法。當面對系統極其複雜、變數高度隨機且彼此關係難以用精確公式定義的場景時,它不強求算出一條完美的公式,而是透過電腦進行成千上萬次的隨機試驗。
本題實務想像: 氣候條件(日照、雲量、溫度)非常多變。工程團隊透過對這些輸入變數的歷史分佈進行「隨機抽樣」,模擬出 10,000 種可能的天氣情境組合,並計算每種情境下的發電量。最終,將這 10,000 次的模擬結果匯總起來,就能畫出未來發電量的機率分佈圖,進而估算出風險區間(例如:有 95% 的機率發電量會落在某個範圍內)。這種透過「瘋狂隨機抽樣來推估機率與風險」的作法,正是蒙地卡羅方法的精髓。
其他選項錯誤原因分析:
(B) 錯誤(這是「非監督式分群」的主場):
K-means 聚類是用來將歷史資料依照「特徵幾何距離」自動分類成不同的群組(如將顧客分成高消費與低消費群)。它不具備隨機抽樣模擬、預測波動範圍或估算未來機率分佈的功能。
(C) 錯誤(這是「確定性迴歸預測」的主場):
支持向量迴歸(SVR)是一種機器學習的預測模型。給定一組輸入(日照、溫度),它會計算並輸出一個「確定的發電量點預測值(Deterministic Prediction)」。它本身無法直接透過「隨機抽樣模擬多種可能情境」來給出整體的機率分佈與風險區間。
(D) 錯誤(這是「前處理」技術):
特徵選取(如過濾法、包裝法)是資料前處理的步驟,目的是從眾多變數(日照、風速、濕度、氣壓)中挑選出對預測最有貢獻的關鍵欄位。它只是一個「挑選變數」的動作,並不是用來模擬未來情境的技術。
| 技術方法名稱 | 核心核心運作機制 | 典型實務商務應用場景 |
|---|---|---|
| 蒙地卡羅方法 (A) | 海量隨機抽樣、情境模擬與機率加總。 | 發電量波動與風險區間估算 (A)、金融衍生商品定價、專案時程風險評估。 |
| 支持向量迴歸 (SVR) (C) | 尋找最佳超平面與邊界帶,輸出點預測。 | 給定明天天氣,預測明天精準的發電量數值。 |
| K-means 聚類 (B) | 依據幾何距離將資料點自動分群。 | 太陽能發電廠設備依故障特徵進行自動分類。 |
解題關鍵:在資料科學與工程科學的考題中,只要看到關鍵字 「隨機抽樣方式模擬(Random Sampling / Simulation)」、「模擬多種可能情境」、「估算機率分佈與風險區間」,答案有 100% 的機率就是秒選 「蒙地卡羅方法(Monte Carlo Method)」。它是處理統計不確定性與風險工程的黃金代名詞。
24. 某房地產公司利用多元迴歸模型(Multiple Regression Model)預測房價,並繪製殘差圖(Residual Plot)檢查模型品質。結果顯示部分資料點的殘差極大,且在高價區樣本中出現系統性彎曲分佈現象。根據此觀察,下列何者為最可能的正確解釋?
(A) 模型過度擬合(Overfitting),導致在訓練資料上表現過好、泛化能力不足;
(B) 模型特徵數量不足,導致欠擬合(Underfitting);
(C) 模型存在異常值(Outlier)或非線性關係,違反迴歸假設;
(D) 殘差圖呈現隨機分佈,表示模型已完全符合所有假設
看解答
正確答案是 (C) 模型存在異常值(Outlier)或非線性關係,違反迴歸假設。
這題考驗的是線性迴歸分析中,如何透過殘差分析(Residual Analysis)與殘差圖(Residual Plot)來檢驗模型是否符合基本統計假設。
在理想狀態下,一個品質良好的線性迴歸模型,其殘差圖應該呈現「沒有任何特定幾何規律的隨機水平帶狀分佈」(平均值接近 0,且呈現均勻的散佈)。題目中提到了兩個關鍵的異常觀察,我們來一一拆解:
1. 「部分資料點的殘差極大」:
物理意義: 殘差的定義是「真實值 \(-\) 預測值」。殘差極大代表模型對這幾個特定房屋的價格預測得非常不準(可能嚴重高估或低估)。在統計學上,這些遠離大部隊的極端點就是典型的異常值(Outlier)。
2. 「在高價區樣本中出現系統性彎曲分佈現象」:
• 物理意義: 殘差圖一旦出現「彎曲」(例如漏斗狀、雙曲線或拋物線型的規律趨勢),就代表房價與特徵之間絕對不是單純的「線性關係」。高價位的房子其價格增長可能呈現指數型或二次方曲線(例如:坪數越大,每坪單價非線性飆升)。
• 線性迴歸模型(Linear Regression)的基本假設之一就是「自變數與依變數必須為線性關係」。出現規律彎曲意味著模型違反了線性關係的假設,必須透過特徵工程(如對房價取對數 \(\log(y)\) 或加入特徵平方項)來修正。
其他選項錯誤原因分析:
(A) 錯誤:
過度擬合(Overfitting)是指模型把訓練集裡的雜訊都背了下來,導致它在訓練集上的殘差「極小」,但在測試集(未見過的新資料)上表現很差。殘差圖通常是針對訓練好的模型進行數據分佈檢查,出現規律彎曲是「線性假設被違反」,不代表是過度擬合。
(B) 錯誤:
雖然特徵數量不足可能導致欠擬合,但欠擬合在殘差圖上的標準表現是整體的殘差數值都偏大。題目明確指出異常集中在「高價區」且呈現「系統性彎曲」,這具有非常強烈的「非線性關係」指向性,因此 (C) 是更精準、更全面的標準答案。
(D) 錯誤:
題目已經明確說明殘差出現了「系統性彎曲分佈」,這與「隨機分佈」完全相反,顯然模型並未符合線性迴歸的所有假設。
| 殘差圖呈現的幾何視覺特徵 | 背後代表的統計學物理意義 | 實務上推薦的解法 / 特徵工程 |
|---|---|---|
| 均勻、隨機、無規律的水平帶狀 | 模型品質優良,符合線性與常態假設。 | 保持現狀,模型已可上線使用。 |
| 明顯的拋物線、S型或系統性彎曲 (C) | 自變數與依變數之間存在非線性關係 (C)。 | 對特徵進行多項式轉換(平方項)或對依變數取對數 (\(\log\))。 |
| 個別資料點飛得極高或極低 (C) | 資料集中存在異常值 (Outlier) (C)。 | 檢查這幾筆房屋資料是否登錄錯誤,或進行異常值剔除/穩健迴歸。 |
| 呈現左窄右寬的「漏斗狀」或「喇叭狀」 | 違反「異質變異性(Heteroscedasticity)」假設。 | 對目標變數進行 Box-Cox 轉換或對數轉換。 |
解題關鍵:在迴歸診斷的考題中,只要殘差圖出現 「系統性彎曲(Systematic curvature / Poly trend)」,這在統計學上就是 「非線性關係(Non-linearity)」 的鐵證;而看到 「殘差極大」 就是 「異常值(Outlier)」 的代名詞。兩者完美對應選項 C。
25. 某金融機構正在建立傳統信用評分卡模型,採用邏輯迴歸(Logistic Regression)作為建模方法,並依循監理機關建議的標準化流程進行模型開發。下列哪一項不是傳統信用評分卡模型開發流程中的常見步驟?
(A) 使用生成式模型進行特徵學習;
(B) 進行特徵選擇與多重共線性(Multicollinearity)分析;
(C) 進行分箱(Binning)與資訊值(Information Value, IV)檢定;
(D) 使用樣本穩定性指標(Population Stability Index, PSI)檢驗模型穩定性
看解答
正確答案是 (A) 使用生成式模型進行特徵學習。
這題考驗的是金融科技(FinTech)與風控實務中,極為經典的「傳統信用評分卡(Credit Scoring Card,又稱 A卡/B卡)」標準開發流程。信用評分卡受到金融監理機關(如金管會、巴塞爾協議)的嚴格監管,其核心要求是「極高的可解釋性」與「穩定性」,因此其開發流程有著一套固定的標準化教科書步驟。
(A) 為什麼「不是」常見步驟?(違反傳統風控的白盒原則):
傳統評分卡的本質: 傳統評分卡(基於邏輯迴歸)是標準的「白盒子模型」,每一個分數怎麼來的都必須清清楚楚,以便客戶申訴或金檢審查。
生成式模型的技術衝突: 使用生成式模型(如 GAN、VAE 或生成式 AI)進行特徵學習,是現代深度學習的黑盒子手法。這會將原始特徵(如年收入、職業)轉換成人類無法理解的高維抽象特徵(Embedding),完全違反了監理機關對於「可解釋性」的要求。此外,傳統評分卡處理的是結構化表格資料,實務上完全不需要、也不會導入生成式模型來學習特徵。
其他選項為什麼是「常見的標準步驟」?
(B) 是標準步驟(多重共線性檢驗):
邏輯迴歸模型非常害怕多重共線性(Multicollinearity)(即自變數之間高度相關,例如「月收入」與「年收入」同時放進模型)。這會導致模型係數(Beta 值)不穩定、甚至正負號反轉。實務上一定會透過變異數膨脹因子(VIF)來篩選特徵,這是必經之路。
(C) 是標準步驟(評分卡的靈魂 - WoE 與 IV):
傳統評分卡最核心的特徵工程就是分箱(Binning)。例如將「年齡」連續變數切分成:20-25歲、26-35歲、36-50歲等區間。
接著會計算每個分箱的 WoE(證據權重),並利用 IV(資訊值,Information Value) 來篩選哪些特徵對預測「違約/不違約」最具備辨識力(通常 IV > 0.02 才納入考慮)。這兩個步驟是傳統評分卡的招牌技術。
(D) 是標準步驟(模型上線後的監控指標):
樣本穩定性指標(PSI) 是金融業用來評估「目前的客群分佈」與「當初訓練模型時的客群分佈」是否發生偏移(Data Drift)的黃金指標。如果 PSI > 0.25,代表客群已經大幅改變,模型必須強迫下線重新訓練。這是符合監理機關風控要求的必備流程。
| 開發階段流程 | 核心技術手法與指標 | 本題對應選項 | 監理與實務目的 |
|---|---|---|---|
| 1. 資料前處理 | 數據分箱 (Binning) | (C) | 將連續變數離散化,提升模型的穩健度與非線性捕捉能力。 |
| 2. 特徵篩選 | WoE 轉換與 IV 檢定 | (C) | 評估單一特徵對違約風險的解釋能力。 |
| 3. 模型建構 | VIF 檢驗多重共線性 | (B) | 確保邏輯迴歸的係數穩定、可解釋,無過度冗餘特徵。 |
| 4. 模型監控 | PSI 指標計算 | (D) | 監控客群是否偏移,確保模型上線後的穩定度與法規合規性。 |
解題關鍵:在金融風控與評分卡的考題中,只要看到 「傳統評分卡(Credit Scorecard)」 結合 「邏輯迴歸」,它的關鍵字就是高穩定、高度可解釋、純手工特徵工程(Binning, WoE, IV, VIF, PSI)。選項 A 的「生成式模型」屬於現代深度學習黑盒子,與傳統合規流程格格不入,即可直接鎖定為正確答案。
26. 在防止監督式學習模型過擬合(Overfitting)時,下列哪一種策略不屬於降低模型複雜度或限制學習能力的作法?
(A) 採用L1或L2正則化;
(B) 在訓練過程中使用Dropout 技術;
(C) 採取早期停止(Early Stopping)機制;
(D) 擴增輸入特徵變數以提升模型表達能力
看解答
正確答案是 (D) 擴增輸入特徵變數以提升模型表達能力。
這題考驗的是機器學習中對抗過擬合(Overfitting)的策略邏輯。
過擬合的根本原因通常是:模型的能力(容量/複雜度)太強,而資料量相對不足或特徵雜訊太多,導致模型把訓練集裡的細微雜訊和特殊案例當成了普遍規律。因此,防範過擬合的核心思維是「降低模型複雜度」或「對模型的學習能力進行限制」(這在統計學上稱為引入偏誤,以降低變異數 Bias-Variance Tradeoff)。
(D) 為什麼「不屬於」降低複雜度的作法?(反而會加劇過擬合):
擴增特徵變數: 當我們為模型增加更多、更細緻的輸入特徵(例如預測房價時,除了坪數、地段,還強行加入窗戶數量、大門顏色等不相關特徵),這在數學上會增加模型的自由度與高維參數空間,「提升了模型的表達能力」。
致命後果: 模型表達能力越強,就越容易在訓練集上畫出極其複雜、扭曲的決策邊界(Decision Boundary)來完美迎合所有資料點(包括雜訊)。這會直接引發維度災難(Curse of Dimensionality),反而會大幅加劇過擬合的風險,而不是抑制它。
其他選項為什麼屬於降低複雜度或限制學習能力的作法?
(A) 屬於降低複雜度(權重懲罰):
L1(Lasso)和 L2(Ridge)正則化是在損失函數後面加上特徵權重的懲罰項。L1 會直接把不重要的權重強迫歸零(產生稀疏矩陣);L2 則會把權重壓得非常接近零。這在底層數學上直接限縮了參數的活動範疇,屬於硬性降低模型複雜度。
(B) 屬於限縮學習能力(結構隨機簡化):
Dropout 常用於神經網路中。在每一次的訓練迭代(Iteration)中,它會隨機讓一部分的神經元「失聯(不參與運算)」(如圖所示)。這形同在訓練時強迫將一個龐大複雜的網路結構,隨機簡化成無數個局部精簡的小網路,防止神經元之間產生過度依賴(Co-adaptation),是極其經典的限制學習能力手段。
(C) 屬於限制學習能力(時間截斷):
早期停止(Early Stopping)是同時監控訓練集與驗證集(Validation Set)的損失。當發現驗證集的損失已經停止下降、甚至開始往上飆(代表開始過擬合)時,不管訓練輪數(Epochs)有沒有跑完,立刻強行拔掉插頭中止訓練。這在時間維度上限制了模型繼續「死記硬背」的能力。
| 策略手法名稱 | 核心物理作用機制 | 在模型複雜度上扮演的角色 |
|---|---|---|
| L1 / L2 正則化 (A) | 懲罰過大的權重值(壓縮參數空間)。 | ⬇️ 降低模型結構複雜度 |
| Dropout 技術 (B) | 每輪隨機關閉部分神經元,打破共適應性。 | ⬇️ 隨機簡化網路容量 |
| 早期停止 (C) | 在驗證集表現變差前,強行中斷訓練。 | ⬇️ 限制模型的學習時間與深度 |
| 特徵擴增 (D) | 引入更多欄位,使決策邊界能任意扭曲。 | ⬆️ 提高模型複雜度(加劇過擬合風險)(D) |
解題關鍵:在機器學習的核心觀念考題中,只要看到 「防止過擬合」 的反向手段,解題口訣就是:「減少特徵(降維)、增加資料(Data Augmentation)」。選項 D 的「擴增特徵變數」正好反其道而行,會讓模型變得更複雜、更失控,因此它絕對不屬於降低複雜度的策略,即可秒殺破題。
27. 某智慧製造團隊在開發瑕疵影像檢測模型時,發現使用線性激活函數(Activation Function)後,模型的訓練準確率長期停滯,懷疑模型無法學習到足夠複雜的特徵表達。若要改善此問題,下列哪一項調整方案最為合適?
(A) 增加卷積層(Convolutional Layer)數量,使網路更深以強化特徵提取;
(B) 將輸入影像先進行灰階化處理,降低運算量;
(C) 使用 Sigmoid 激活函數,以將輸出壓縮至[0,1]範圍;
(D) 改用 ReLU(Rectified Linear Unit)激活函數,以引入非線性並提升模型表達能力
看解答
正確答案是 (D) 改用ReLU(Rectified Linear Unit)激活函數,以引入非線性並提升模型表達能力。
這題考驗的是深度學習與神經網路中,激活函數(Activation Function)的核心物理意義。
題目情境診斷(線性函數的致命缺陷):
• 團隊遇到的痛點是:模型「訓練準確率長期停滯,無法學習到足夠複雜的特徵表達」。
• 原因是模型目前使用了線性激活函數(Linear Activation Function)。在數學上,多個線性層的堆疊(疊加),不論疊得再深,其最終結果都只能被化簡為一個單一的線性方程。
• 也就是說,如果不用非線性激活函數,神經網路就會失去「深度」的意義,退化成一個簡單的線性迴歸模型。而瑕疵檢測的影像特徵(如裂痕、刮傷、斑點)極其複雜,屬於高度非線性的幾何結構,線性模型根本無法捕捉。
(D) 改用 ReLU 激活函數是最佳解:
• 引入非線性: ReLU 的數學公式為 \(f(x) = \max(0, x)\)。它在 \(x > 0\) 時是線性的,在 \(x \le 0\) 時輸出為 0。這個簡單的「折線」設計,成功為神經網路引入了關鍵的非線性(Non-linearity)特徵,讓模型具備了逼近任意複雜函數的能力(通用近似定理)。
• 克服梯度消失: 相較於傳統的非線性函數(如 Sigmoid),ReLU 在正區間的導數(斜率)恆等於 1。這意味著在反向傳播時,梯度可以完好無損地向前傳遞,能有效避免深層網路中的梯度消失(Gradient Vanishing)問題,進而讓訓練準確率突破停滯。
其他選項錯誤原因分析:
(A) 錯誤(治標不治本):
如果不把激活函數改成「非線性」,即使你增加再多的卷積層、把網路挖得再深,它們在數學上依然會塌陷成一個單層的線性組合。只要底層是線性的,增加層數完全無法提升模型對複雜瑕疵特徵的表達能力。
(B) 錯誤:
灰階化處理只是降低了輸入資料的通道數(從 RGB 3通道變成 1通道),雖然能降低運算量,但它無法改變模型底層是「線性模型」的本質,對提升模型提取複雜特徵的能力毫無幫助。
(C) 錯誤(容易引發新問題):
Sigmoid 雖然也是非線性激活函數,但它在高值或低值區的飽和特性(斜率接近 0),會導致深層網路在反向傳播時發生嚴重的梯度消失。對於瑕疵檢測這種需要一定深度的 CNN 模型來說,改用 Sigmoid 反而會讓模型更難收斂。
| 激活函數名稱 | 數學公式 | 類型 | 對深度網路的影響與評價 |
|---|---|---|---|
| 線性 (Linear) | \(f(x) = kx\) | 線性 | 多層堆疊會塌陷為單層,完全無法學習影像等複雜非線性特徵。 |
| ReLU (D) | \(f(x) = \max(0, x)\) | 非線性 (D) | 計算極快,提供非線性表達力,且在正區間不飽和,能有效防止梯度消失 (D)。 |
| Sigmoid (C) | \(f(x) = \frac{1}{1 + e^{-x}}\) | 非線性 | 容易在大數或小數區發生「梯度飽和與消失」,不適合用於 CNN 的中間隱藏層。 |
解題關鍵:在深度學習考題中,只要看到模型 「長期停滯、無法學習複雜特徵」,且背景提到使用了 「線性激活函數」,解題思維就是必須立刻導入 「非線性」 來拯救模型。此時,尋找改用 「ReLU」 激活函數的選項,即可一秒破題。
28. 一家零售電商公司希望建立顧客流失預測模型,用以判斷哪些會員可能在三個月內不再消費。團隊以去年會員資料進行訓練,並僅採用「曾經購買三次以上」的活躍顧客紀錄作為樣本。模型上線後,對整體會員進行預測時,發現模型對於新註冊會員與低消費會員的預測準確率明顯偏低。下列何者為造成此現象最可能的原因?
(A) 特徵設計未排除與會員忠誠度高度相關的變數,導致特徵偏差(Feature Bias);
(B) 標記(Label)由人工標註,導致標籤偏差(Label Bias);
(C) 訓練樣本僅涵蓋高活躍顧客,造成取樣偏差(Sampling Bias);
(D) 模型未進行超參數調整,導致過擬合(Overfitting)
看解答
正確答案是 (C) 訓練樣本僅涵蓋高活躍顧客,造成取樣偏差(Sampling Bias)。
這題考驗的是資料工程與機器學習核心觀念中的「取樣偏差(Sampling Bias,或稱選擇性偏差 Selection Bias)」。
在機器學習中,有一個至關重要的黃金鐵律:「訓練資料的分佈,必須與未來預測時的真實資料分佈一致。」 如果兩者脫節,模型上線後就會遭遇慘烈的滑鐵盧。
題目情境診斷(樣本與真實世界的脫節):
訓練時的做法: 團隊「僅採用『曾經購買三次以上』的活躍顧客紀錄作為樣本」來訓練模型。這代表模型的大腦裡,全都是高活躍會員的行為模式(例如:頻繁瀏覽、有特定回購週期、累積點數多)。
上線後的做法: 團隊將這個模型「對整體會員進行預測」(整體會員包含了新註冊會員、只買過一次的低消費會員、以及活躍會員)。
痛點成因: 對於新註冊或低消費會員來說,他們根本沒有「購買三次以上」的歷史特徵,他們的行為特徵(如剛註冊、瀏覽時間短)在訓練集中完全沒有出現過。
模型因為從來沒學過這群人的特徵,自然無法對他們做出準確的判斷。這種因為「收集訓練資料時只挑選了特定群體,導致樣本無法代表整體真實母體」的現象,在統計與機器學習上被稱為取樣偏差(Sampling Bias)(C)。
其他選項錯誤原因分析:
(A) 錯誤:
特徵偏差通常是指特徵中包含了不該包含的資訊(例如包含了未來才發生的資訊導致資料洩漏 Data Leakage)。本題的致命傷是出在「人(樣本選錯了)」,而不是「欄位(特徵)設計不當」。
(B) 錯誤:
標籤偏差(Label Bias)是指「答案(是否流失)」的定義帶有人觀偏見。但題目中的流失定義(三個月內不再消費)是透過電商系統後台數據自動客觀判定的,並非由人工主觀標記,因此不存在標籤偏差。
(D) 錯誤:
雖然未調參可能導致過擬合,但本題已經明確點出「高活躍顧客」與「新會員/低消費會員」之間的樣本落差。這是標準的資料層面缺陷(Data Defect),即使把超參數調得再完美,也無法讓模型憑空學會它從未見過的「新會員行為模式」。
| 偏差名稱 | 發生階段與核心成因 | 本題情境對應 |
|---|---|---|
| 取樣偏差 (Sampling Bias) (C) | 資料篩選階段:訓練樣本只選了局部群體,無法代表真實全貌 (C)。 | 只用「老客戶」資料訓練,卻想拿來預測「新客戶」 (C)。 |
| 標籤偏差 (Label Bias) | 資料標記階段:人為標記標準不一或帶有歷史主觀偏見。 | 歷史考核紀錄中隱含了對特定背景人士的升遷偏見。 |
| 測量偏差 (Measurement Bias) | 資料收集階段:感測器故障、問卷設計引導錯誤導致數據集體失真。 | 設備溫度計集體高估了 5 度,導致歷史數據集體出現偏差。 |
解題關鍵:在機器學習的資料評估考題中,只要看到 「訓練時只選了某一種類型的資料(如:活躍顧客/特定地區/特定年齡)」,但 「上線預測時卻面對所有類型(如:全體會員/不分地區)」,這種因為「樣本挑選不均」導致的預測失敗,標準答案百分之百就是秒選 「取樣偏差(Sampling Bias)」 或 「選擇性偏差(Selection Bias)」。
29. 在工業設備故障預測專案中,模型訓練與超參數調整均依賴於一段歷史數據作為驗證集。然而,隨著設備運行環境與工況條件的變化,原有驗證集已無法充分反映現況,導致模型在實際部署後的預測準確率逐漸下降。下列哪一種策略最能有效提升模型在長期運行環境中的穩健性與泛化能力?
(A) 固定驗證集內容,並透過模型正則化技巧(如 L2 正則化)強化模型泛化;
(B) 將全部歷史資料納入訓練,不使用驗證集,依靠早期停止(Early Stopping)控制訓練;
(C) 簡化模型架構,減少模型參數數量以降低過擬合風險;
(D) 採用時間序列交叉驗證(Time Series Cross Validation)或滑動視窗驗證(Rolling Window Validation)方法,動態更新驗證資料以適應時間演進
看解答
正確答案是 (D) 採用時間序列交叉驗證(Time Series Cross Validation)或滑動視窗驗證(Rolling Window Validation)方法,動態更新驗證資料以適應時間演進。
這題考驗的是機器學習在處理工業時間序列(Time Series)或具有時間演進特性的資料時,如何對抗「概念漂移(Concept Drift)/ 資料漂移(Data Drift)」並建立正確的驗證策略。
題目情境診斷(時間序列的數據漂移):
核心痛點: 題目明確指出「隨著設備運行環境與工況條件的變化,原有驗證集已無法充分反映現況」。這在實務上非常常見(例如:工廠機器零件磨損、四季氣溫變化、生產排程更換),導致舊的歷史數據與現在的動態特徵脫節。
如果繼續沿用固定的舊驗證集來挑選超參數,挑出來的模型只會對「過去」最優,上線後面對「現在與未來」的新工況自然會準確率逐漸下降。
(D) 為最能有效提升長期運行穩健性的動態驗證策略:
滑動視窗驗證(Rolling Window Validation): 這是一種專門為時間序列設計的評估機制。它不會死守一段固定的歷史資料,而是像一個會隨時間向右滑動的方框(如圖所示)。當時間推移、新的設備數據進來時,它會自動將最新的數據納入驗證集,並將最古老的數據淘汰。
技術優勢: 透過這種動態更新驗證資料(Time Series Cross Validation)的機制,超參數調校與模型訓練永遠是在「最接近當前工況環境」的標準下進行評估。這能讓系統即時偵測到環境的演進,大幅提升模型在長期運行中的穩健性與泛化能力。
其他選項錯誤原因分析:
(A) 錯誤(治標不治本):
固定驗證集內容正是導致模型無法適應新環境的元凶。此時不論如何調整 L2 正則化,模型也只能在「舊環境」中優化,對於環境工況已經改變(漂移)的實際部署環境,泛化能力依然受限。
(B) 錯誤(違反統計邏輯,且實務上不可行):
「不使用驗證集」會讓團隊失去評估模型好壞的客觀依據。更重要的是,早期停止(Early Stopping)本身就必須「強烈依賴驗證集」的損失(Loss)變化來決定何時拔插頭。沒有驗證集,早期停止根本無法運作。
(C) 錯誤(無法解決數據漂移問題):
簡化模型架構、減少參數雖然能降低對舊資料的過擬合風險,但它無法賦予模型「理解新環境、新工況」的能力。面對環境條件的系統性改變,模型架構再簡單也無法扭轉準確率下降的趨勢。
| 驗證策略名稱 | 技術操作本質 | 適合的數據場景 | 面對環境改變(漂移)的表現 |
|---|---|---|---|
| 傳統留出法 (Holdout) | 固定切分一段歷史資料作為驗證集 (A)。 | 數據分佈恆定不變的靜態表格資料。 | ❌ 差。無法反映最新的工況環境變化。 |
| 滑動視窗驗證 (D) | 隨著時間推移,動態前進並更新驗證集 (D)。 | 工業傳感器時序數據、金融股票走勢 (D)。 | ⭐⭐ 優秀。能讓模型緊跟最新的工況特徵 (D)。 |
解題關鍵:在機器學習專案管理與時序資料的考題中,只要看到 「隨著時間演進環境改變」、「舊資料無法反映現況」 或 「上線後準確率逐漸下降(概念漂移)」,其最佳的特徵工程與驗證應對策略,百分之百是尋找帶有 「時間序列交叉驗證」、「滑動視窗(Rolling/Sliding Window)」 或 「動態更新」 的選項。看到 D 選項即可秒殺破題。
30. 某情感分析模型在英文資料集上取得macro F1-score = 0.91。當該模型部署於西班牙文資料集時,F1-score 驟降至0.58。下列哪一項解釋最合理,且與F1-score 變化相關?
(A) macro F1-score 本身波動性高,建議改用 micro-average F1-score 評估;
(B) 模型在西班牙文語料上過度擬合,導致評估結果偏高;
(C) 語言轉移造成召回率(Recall)下降,模型無法正確辨識關鍵情緒詞彙;
(D) 以均方誤差(MSE)取代 F1-score 評估可獲得更準確的結果
看解答
正確答案是 (C) 語言轉移造成召回率(Recall)下降,模型無法正確辨識關鍵情緒詞彙。
這題考驗的是自然語言處理(NLP)跨語言部署中的「領域偏移(Domain Shift) / 語言轉移(Language Transfer)」現象,以及其對核心評估指標 F1-score 的實質影響。
F1-score 是精確率(Precision)與召回率(Recall)的調和平均數。模型從英文環境(訓練域)轉移到西班牙文環境(測試域)時,表現從 0.91 暴跌到 0.58,屬於嚴重的泛化失敗。
(C) 為最合理的技術與指標解釋:
語言轉移的物理障礙: 模型是在英文資料上訓練的,它的大腦裡記憶的都是英文的情緒特徵(例如 "excellent", "terrible")。當它被直接部署到西班牙文環境時,面對滿畫面的西班牙文(例如 "excelente", "terrible" 雖然拼法相似但還有更多完全不同的詞彙如 "malo"),模型會因為「看不懂」而把大量帶有西班牙文情緒的評論誤判為非情緒評論。
指標因果關係(召回率下降): 這種「該抓出來的情緒卻大量漏抓」的現象,在統計上會直接導致召回率(Recall)劇烈塌陷。由於 F1-score 只要其中一項(Precision 或 Recall)極低就會被嚴重拉低,因此召回率的暴跌完美解釋了為什麼 F1-score 會從 0.91 驟降至 0.58。
其他選項錯誤原因分析:
(A) 錯誤:
雖然 Macro-F1 與 Micro-F1 在處理不平衡資料時的權重計算不同(Macro 平等對待每一類,Micro 平等對待每一個樣本),但指標的選擇是為了配合資料的分佈特性,並不能阻止或解釋模型因為更換語言而產生的實質性性能暴跌。
(B) 錯誤(邏輯矛盾):
選項敘述「模型在西班牙文語料上過度擬合,導致評估結果偏高」。然而,題目明確說明部署在西班牙文時 F1-score 是「驟降至 0.58」(結果偏低),選項的敘述與題目事實完全相反。
(D) 錯誤:
情感分析(如:正面、負面、中立)是標準的「分類問題(Classification)」。而均方誤差(MSE)是專門用來評估「迴歸問題(Regression)」(如預測房價、溫度)的損失函數。在分類問題中引進 MSE 不僅不具備統計學意義,也無法解決跨語言辨識失敗的問題。
| 部署情境演進 | 模型的實質底層遭遇 | 對評估指標的衝擊 | 實務上推薦的解法 |
|---|---|---|---|
| 英文 ➔ 西班牙文 (C) | 語言特徵完全改變(文字、語法偏移)(C)。 | 無法辨識新語言詞彙,漏判嚴重 ➔ 召回率 (Recall) 暴跌 ➔ F1-score 驟降 (C)。 | 使用多語言預訓練模型(如 mBERT, XLM-R),或在西班牙文資料上進行微調(Fine-tuning)。 |
解題關鍵:在 NLP 或跨領域機器學習考題中,只要看到模型 「從 A 領域(如英文/卡通圖)換到 B 領域(如西文/真實照片)」 導致指標 「暴跌」,解題核心思維就是尋找 「因為環境/語言改變,導致模型看不懂、大量漏抓特徵(Recall 下降)」 的因果描述。選項 C 完美勾勒出這個邏輯鏈,即可秒殺破題。
31. 某能源公司利用歷史氣象與用電資料,開發長期電力需求預測模型,採用深度神經網路架構進行訓練。在訓練過程中,模型在訓練集上的損失值持續下降,但在驗證集上,損失在第80輪後開始波動,呈現週期性上升與下降。團隊懷疑模型受到季節性資料波動與隨機噪音影響,導致驗證損失難以穩定收斂。若要在此情境下合理運用早期停止法(Early Stopping)以確保模型具最佳泛化能力,下列哪一項策略最為適當?
(A) 直接根據訓練集損失最低點停止訓練,以確保模型充分擬合所有樣本;
(B) 監控驗證集損失並設定適度的耐心值(Patience),在連續多輪未改善後再停止訓練;
(C) 改以測試集損失作為早停依據,以提升模型最終評估一致性;
(D) 將所有資料重新合併後訓練至收斂,避免因資料分割導致評估波動
看解答
正確答案是 (B) 監控驗證集損失並設定適度的耐心值(Patience),在連續多輪未改善後再停止訓練。
這題考驗的是深度學習在模型訓練實務中,如何設定與操作早期停止法(Early Stopping),特別是在面對「驗證集損失出現週期性波動或隨機噪音」時的調校策略。
題目情境診斷(波動與噪音干擾):
核心痛點: 模型在驗證集上的損失值(Validation Loss)並非完美地一路下滑,而是在第 80 輪後開始「波動、週期性上升與下降」。
這種現象在真實大數據(如電力需求、氣象資料)非常常見,因為資料中內建了強烈的季節性規律(如夏冬用電高峰)與日常隨機噪音。
如果我們把早停機制設得太敏感(例如只要有一輪變差就立刻中斷),模型很可能會在第 81 輪(剛好遇到小波動上升)就過早「陣亡」,錯失後面繼續收斂到更佳全域最優解的機會。
(B) 為應對波動最合適的早期停止策略(導入 Patience):
什麼是耐心值(Patience)? 耐心值是早期停止法中最核心的超參數。它告訴模型:「在驗證集損失停止改善(或開始上升)時,不要急著拔插頭,請再多觀察、忍耐個幾輪(例如設定 Patience = 10 或 15 輪)」。
技術優勢: 透過設定適度的 Patience,模型能夠成功「跨越」題目中提到的週期性小波動與隨機噪音。如果多看 10 輪後,驗證損失真的再也降不下去(證實模型已經開始過擬合),此時系統才會真正終止訓練,並自動退回(Restore)到歷史上驗證損失最低的那一輪。這能確保模型拿到最佳的泛化能力。
其他選項錯誤原因分析:
(A) 錯誤(過擬合的萬丈深淵):
早期停止法的靈魂就是絕對不能看「訓練集損失」來決定何時停下來。因為隨著訓練輪數增加,深度神經網路有能力把訓練集損失降到接近 0(死記硬背所有細節),但這時驗證集損失通常早已飆高,導致模型完全失去對未知新資料的泛化能力。
(B) 錯誤(嚴重的資料洩漏 Data Leakage):
測試集(Test Set)的唯一功能是模型全部訓練完成、超參數調好後的「最終大考模擬」,用來做最終盲測評估。絕對不能在訓練過程中讓模型大腦接觸到任何測試集的資訊(包括用它來當早停依據)。一旦改以測試集當早停依據,等於是將測試集的資訊洩漏到訓練決策中,會導致評估結果虛高、失真。
(D) 錯誤(本末倒置且無法操作):
如果把所有資料重合並不做分割,團隊就徹底失去了「驗證集」這個第三方裁判。正如前面所述,沒有了驗證集,早期停止法(Early Stopping)根本連啟動的數學依據都沒有,完全無法解決波動與過擬合的問題。
| 參數/機制名稱 | 核心物理作用與設定邏輯 | 本題對應情境效益 |
|---|---|---|
| 驗證集損失 (Val Loss) | 早停機制唯一合法監控的對象,代表外部客觀表現。 | 用來當作評估泛化能力的唯一風向球。 |
| 監控耐心值 (Patience) (B) | 允許驗證損失短暫變差的「寬限輪數」 (B)。 | 用來抵消季節性週期波動與噪音,避免模型早夭 (B)。 |
| 最佳權重重載 (Restore Weights) | 觸發早停時,自動將模型回復到 Val Loss 最低的那一輪。 | 確保部署上線的模型是歷史最完美的泛化版本。 |
解題關鍵:在機器學習的優化考題中,只要看到模型在驗證集上出現 「波動」、「震盪」 或 「隨機噪音影響」,而題目問你如何正確實作早期停止法時,考點一定是圍繞在 「耐心值(Patience)」 的設定。尋找帶有「設定適度耐心值」、「連續多輪未改善再停止」描述的選項 B,即可秒殺破題。
32. 某電信公司開發客戶流失預測模型,使用大量顧客行為特徵,例如通話時長、上網頻率、帳單金額、客服聯絡次數等。在訓練過程中,團隊發現部分特徵彼此高度相關,但同時也懷疑有些特徵對流失預測的貢獻度有限。若希望模型在避免過擬合(Overfitting)的同時,能自動篩選出較具代表性的特徵,採用下列哪一種方法最為合適?
(A) 使用早期停止法(Early Stopping)控制訓練回合數,避免過擬合(Overfitting);
(B) 同時移除多重共線性特徵並採用L2正則化(Ridge),以確保模型穩定收斂;
(C) 僅使用L2正則化(Ridge),抑制所有權重幅度但保留全部特徵;
(D) 採用L1正則化(Lasso),透過懲罰項使部分特徵係數縮為 0
看解答
正確答案是 (D) 採用L1正則化(Lasso),透過懲罰項使部分特徵係數縮為 0。
這題考驗的是機器學習中經典的線性模型正則化(Regularization)技術,特別是 L1 正則化(Lasso 迴歸) 與 L2 正則化(Ridge 迴歸) 在「特徵選擇」功能上的本質差異。
題目情境診斷(雙重核心訴求):
1. 訴求一: 避免模型過擬合(Overfitting)。
2. 訴求二: 面對貢獻度有限的冗餘特徵,希望模型能「自動篩選出較具代表性的特徵」。
(D) 為什麼是最佳解?(L1 具備天然的嵌入式特徵篩選功能):
• 數學本質: L1 正則化(Lasso)在損失函數中加入的是權重絕對值的和(\(L_1 \text{ norm} = \sum |\beta_i|\))。這種幾何幾何結構在最佳化求解時,會產生一個形如「正方形/菱形」的約束邊界。
• 特徵稀疏性(Sparsity): 當損失函數的等高線與 L1 的菱形約束邊界相交時,交點極大機率會落在「頂角」上。反映在權重係數上,就是會把許多不重要、貢獻度有限的特徵係數「直接強迫壓縮為 0」。
• 自動篩選: 係數變成 0 的特徵,在數學上等同於「被模型自動剔除/刪除」。最終留在模型中、係數不為 0 的特徵,就是被自動篩選出來最具代表性的關鍵欄位(如客服聯絡次數、通話時長)。因此,L1 正則化完美同時達成了防過擬合與自動特徵選擇的功能。
其他選項錯誤原因分析:
(A) 錯誤(無法解決特徵多餘的問題):
早期停止法(Early Stopping)雖然能透過時間截斷來防止模型過擬合,但它只是讓訓練停在泛化最佳的輪數。它完全沒有能力去改變特徵矩陣的結構,更無法幫你識別並自動剔除那些「貢獻度有限」的特徵。
(B) 與 (C) 錯誤(L2 正則化不具備特徵篩選能力):
L2 正則化(Ridge)在損失函數中加入的是權重平方和(\(L_2 \text{ norm} = \sum \beta_i^2\)),其約束邊界是一個「圓形」。
圓形邊界在最佳化時,只會把不重要特徵的係數「壓得非常接近 0」,但永遠不會精準等於 0。這意味著所有的特徵最終都會被保留在模型中,模型依然會帶著滿滿的冗餘特徵進行預測,無法達到題目「自動篩選特徵(精簡特徵數)」的期待。
| 正則化手法名稱 | 懲罰項數學架構 | 權重係數的最終分佈特徵 | 是否具備「自動特徵選擇」功能 |
|---|---|---|---|
| L1 正則化 (Lasso) (D) | 絕對值之和 \(\sum \|\beta_i\|\) (D) | 產生稀疏矩陣,許多不重要特徵的係數直接變為 0 (D)。 | ⭐⭐ 是 (D) |
| L2 正則化 (Ridge) (C) | 平方和 \(\sum \beta_i^2\) | 所有權重一起按比例縮小,但大家都大於 0、保留全員。 | ❌ 否 |
解題關鍵:在機器學習的基礎概念考題中,只要看到防過擬合的同時,要求模型能 「自動篩選特徵」、「特徵選擇(Feature Selection)」 或 「產生稀疏權重(Sparse Weights)」,這在數學上就是 「L1 正則化(Lasso)」 的專利代名詞。看到 D 選項直接秒選。
33. 某資料科學團隊正在開發一個客戶相似度比對系統,用於計算所有客戶之間的相似度分數。若系統需逐一比對每一位客戶與其他所有客戶的資料組合,此時演算法的時間複雜度最可能為哪一種?其代表意義為何?
(A) O(n) — 執行時間與資料量成線性關係;
(B) O(n²) — 執行時間與資料量平方成正比;
(C) O(1) — 執行時間固定不變;
(D) O(log n) — 執行時間與資料量呈對數成長關係
看解答
正確答案是 (B) \(O(n^2)\) — 執行時間與資料量平方成正比。
這題考驗的是演算法分析與資料科學實務中,最基礎且至關重要的時間複雜度(Time Complexity)概念,使用的是大 $O$ 符號(Big O Notation)。
題目情境診斷(雙重迴圈的物理意義):
• 題目提到「需逐一比對每一位客戶與其他所有客戶的資料組合」。
• 想像一下,如果我們總共有 \(n\) 位客戶:
第 1 位客戶要跟其他 \(n-1\) 個人比對。
第 2 位客戶也要跟其他 \(n-1\) 個人比對。
...
第 \(n\) 位客戶同樣要跟其他 \(n-1\) 個人比對。
• 在程式碼的實作上,這必須透過一個「雙重迴圈(Nested Loops,即迴圈裡面還有迴圈)」來完成:外層迴圈跑 \(n\) 次,內層迴圈也跑 \(n\) 次。
• 總共需要執行的比對次數大約是 \(n \times n = n^2\) 次(若排除重複比對與自己比對,精確次數為 \(\frac{n(n-1)}{2}\),但在大 \(O\) 符號的常數忽略法則下,最高階項依然是 \(n^2\))。因此,時間複雜度為 \(O(n^2)\)(B)。
代表意義與資料科學實務痛點(為什麼重要?):
「執行時間與資料量平方成正比」的恐怖之處:
• 當客戶數 \(n = 1,000\) 人時,計算量是 \(1,000^2 = 1,000,000\)(一百萬次),一般電腦能在幾毫秒內秒殺。
• 當電商規模成長,客戶數 \(n = 100,000\)(十萬人)時,計算量會暴增到 \(100,000^2 = 10,000,000,000\)(一百億次),這時一般的伺服器可能就要跑好幾個小時甚至當機。
• 這種隨著資料量線性增加,運算時間卻呈「幾何級數暴漲」的特性,就是 \(O(n^2)\) 演算法在面對大數據時的致命傷(通常需要改用局部敏感雜湊 LSH 或向量資料庫來降維優化)。
| 複雜度符號 | 本質名稱 | 實務程式碼 / 資料科學行為想像 | 面對大數據的友善度 |
|---|---|---|---|
| O(1) (C) | 常數時間 (Constant) | 不管客戶有多少人,我只查特定一個人的基本資料(如用 ID 主鍵直查)。 | 🌟 極佳(最快) |
| O(log n) (D) | 對數時間 (Logarithmic) | 在已經排序好的客戶名單中,用「二分搜尋法」找人。 | 🌟 優秀 |
| O(n) (A) | 線性時間 (Linear) | 從頭到尾把所有客戶的名單「掃描一遍」(單層迴圈)。 | 👍 良好 |
| O(n²) (B) | 平方時間 (Quadratic) (B) | 每個人都要跟其他人比對一次(雙重迴圈、矩陣全比對)(B)。 | ❌ 大數據的災難 (B) |
解題關鍵:在演算法與大數據考題中,只要看到關鍵字 「每兩兩配對」、「矩陣全比對」、「每筆資料都要跟其他所有資料比一次」,在數學上就是組合數的爆炸,對應的時間複雜度鐵定是 \(O(n^2)\)。看到 B 選項即可秒殺。
34. 某醫療人工智慧團隊正在開發心臟病風險預測模型,資料量僅有150筆,其中陽性個案不到8%。由於樣本數稀少且類別分布極不平衡,團隊希望在有限資料下,仍能準確評估模型在不同資料上的表現穩定性,同時避免訓練資料被過度切分而影響模型效能。若團隊希望在有限樣本下,同時兼顧資料的利用率與各類別在驗證折中的比例一致性,最適合採用下列哪一種交叉驗證方法?
(A) 5-Fold交叉驗證(5-Fold Cross Validation);
(B) 留一法交叉驗證(Leave-One-Out Cross Validation);
(C) 隨機交叉驗證(Random Cross Validation);
(D) 分層留一法交叉驗證(Stratified Leave-One-Out Cross Validation)
看解答
正確答案是:題目敘述與選項設計存在經典「考題瑕疵(語意衝突)」,本題最具備答題合理性的「折衷」標準答案應選 (A),但若純粹從數學定義與刪去法來看,官方設計的預期答案為 (D),以下為您詳細拆解這個進階考題的陷阱與實務盲點:
這題考驗的是機器學習在面對「極小數據(150筆)」且「極度不平衡(陽性 < 8%)」時的交叉驗證(Cross Validation)策略。
題目中同時塞入了三個互相牽制、甚至在數學上互相衝突的極端需求:
1. 「有限資料下,能準確評估模型在不同資料上的表現穩定性」 ➔ 提示需要重複多次驗證(K-Fold 或 留一法)。
2. 「避免訓練資料被過度切分而影響模型效能」 ➔ 意即每一次訓練時,丟進去訓練的樣本數要「越多越好」,這在數學上是指 \(K\) 值要大(例如留一法,每次可以用 149 筆訓練,只留 1 筆驗證,訓練資料最完整)。
3. 「兼顧資料的利用率與『各類別在驗證折中的比例一致性』」 ➔ 這是本題最重要的核心關鍵字! 「各類別比例一致性」在資料科學中叫做 「分層(Stratified)」,意思是每一折(Fold)裡面的陽性(8%)與陰性(92%)比例都要跟原始母體一模一樣。
選項深度剖析與致命衝突:為什麼選 (D) 是出題老師的「理論預期答案」,但在數學上是錯的?
• 出題者的邏輯: 老師看到「資料極少、想最大化訓練樣本(149筆)」 ➔ 直覺想到留一法(Leave-One-Out);又看到「各類別比例要一致」 ➔ 直覺想到分層(Stratified)兩者拼湊在一起,就創造了 (D) 分層留一法交叉驗證 這個選項。
• 數學上的致命物理錯誤(為什麼實務上根本不存在 D): 留一法(LOOCV)的定義是:「每一折的驗證集(Validation Set)裡面『只有 1 筆資料』」。
請問:如果驗證集裡只有「1 筆」資料,這筆資料要嘛是陽性(100%),要嘛是陰性(0%)。它在數學上絕對不可能同時具備「8% 陽性與 92% 陰性」的比例!
也就是說,「分層(Stratified)」與「留一(Leave-One-Out)」在統計學上是互斥的,根本無法同時實作。
為什麼實務上 (A) 5-Fold 交叉驗證(需搭配分層)才是最合理的解法?
如果我們採用標準的 分層 5-Fold 交叉驗證(Stratified 5-Fold CV):
• 總數 150 筆,分成 5 折,每一折有 30 筆資料作為驗證集。
• 因為有 「分層(Stratified)」 機制,這 30 筆驗證集中,會精準分配到 \(30 \times 8\% \approx 2.4\) 筆(約 2~3 筆)陽性個案,以及 27 筆陰性個案。
• 這樣每一折的驗證集才能真正做到「各類別比例一致性」,模型也才能客觀評估對少數類(陽性)的預測能力。雖然 5-Fold 每次訓練只用 80% 的資料(120筆),但它是唯一能滿足「比例一致性」的實行方案。
其他選項分析:
(B) 留一法交叉驗證(Leave-One-Out CV):
每次只拿 1 筆當驗證,要跑 150 次。雖然對 150 筆小數據來說算得動,且訓練資料利用率最高(99.3%),但正如前面所述,它完全無法落實「驗證折中的類別比例一致性」,會導致驗證變異數(Variance)極大。
(C) 隨機交叉驗證(Random Cross Validation):
隨機切分(Shuffle Split)不保證每一折的類別比例。在陽性個案不到 8%(總共只有約 12 筆陽性)的極端情況下,隨機切分極有可能導致某些折之中「連一筆陽性個案都沒有」,這會讓模型完全無法在該折評估對心臟病的偵測實力。
1. 如果在嚴謹的研究所、國家考試或大型認證中:
這題屬於典型的「文字黏貼式出題瑕疵」。出題者單純將題目中的關鍵字 「各類別比例一致性」➔ 對應「分層(Stratified)」,以及 「有限樣本下最大化資料利用率」➔ 對應「留一法(Leave-One-Out)」 進行文字組合。因此,官方公佈的標準答案通常會是 (D)。
2. 如果是實務操作或硬核技術檢定:
因為「分層留一法」在數學上是空集合,正確做法必須是 Stratified K-Fold (A)。
【建議】 應檢試時,遇到這種敘述,請優先迎合出題老師的字面關鍵字連連看,優先選 (D);若事後對答案發現官方選 A,則是因為官方發現了 D 的數學邏輯矛盾。
35. 某公司針對製程感測器資料進行主成分分析(PCA),經標準化與協方差矩陣分解後,得到三個主成分的特徵值如下:λ1=6.0, λ2=3.0, λ3=1.0。若團隊決定僅保留能解釋至少 80% 總變異量的主成分,以進行後續模型建構,下列哪一項敘述最合理且數據解讀正確?
(A) 前兩個主成分合計解釋90%的總變異量,因此可安全降維至二維,且仍保留大部分資訊;
(B) 第一主成分解釋60%的變異量,表示資料結構呈現明顯線性關係,僅保留一維即可避免過擬合;
(C) 雖然前兩個主成分可解釋超過 80% 變異量,但第二主成分貢獻仍高達30%,不宜捨棄第三主成分;
(D) 三個特徵值相差不大,顯示各主成分變異均衡,降維可能導致資訊損失
看解答
正確答案是 (A) 前兩個主成分合計解釋90%的總變異量,因此可安全降維至二維,且仍保留大部分資訊。
這題考驗的是數據科學中主成分分析(PCA, Principal Component Analysis)的降維決策機制,核心就在於計算「解釋變異量比例(Explained Variance Ratio)」。
在 PCA 中,協方差矩陣分解後得到的特徵值(Eigenvalues, \(\lambda\)),其數值大小直接代表了該主成分所能捕捉到的實質變異量(資訊量)大小。
我們來進行標準的數學計算:
1. 計算「總變異量(Total Variance)」:
將所有主成分的特徵值全部相加:
$$\text{總變異量} = \lambda_1 + \lambda_2 + \lambda_3 = 6.0 + 3.0 + 1.0 = 10.0$$
2. 計算各個主成分的「個別解釋比例」:
• 第一主成分 (\(PC_1\)): \(\frac{6.0}{10.0} = 60\%\)
• 第二主成分 (\(PC_2\)): \(\frac{3.0}{10.0} = 30\%\)
• 第三主成分 (\(PC_3\)): \(\frac{1.0}{10.0} = 10\%\)
3. 計算「累積解釋變異量(Cumulative Explained Variance)」:
如果只保留前兩個主成分(\(PC_1 + PC_2\)),它們合計能解釋的變異量比例為:
$$60\% + 30\% = 90\%$$
結合團隊決策標準進行評估:
團隊的目標是「僅保留能解釋至少 80% 總變異量的主成分」。
因為前兩個主成分加起來的累積解釋量高達 90%,已經成功突破了 80% 的門檻,這代表我們只要把資料降維到二維空間(只留 \(PC_1\) 與 \(PC_2\)),就能在捨棄不重要雜訊的同時,精準保留高達九成的原始感測器資訊。因此 (A) 的數據解讀與決策完全正確。
其他選項錯誤原因分析:
(B) 錯誤(解讀過於激進,且不符 80% 門檻):
雖然第一主成分單獨貢獻了 60%,但這並沒有達到團隊設定的「至少 80%」的硬性限制。如果只保留一維,我們會平白漏掉高達 40% 的重要製程資訊,降維過度會導致模型欠擬合。
(C) 錯誤(決策邏輯與題目設定衝突):
既然前兩個主成分就已經拿下了 90% 的解釋量(> 80%),依照團隊的降維標準,第三主成分(僅佔 10%)本來就屬於可以被安全割捨的微弱變異(通常被視為隨機噪音)。選項卻說不宜捨棄,違反了降維的初衷。
(D) 錯誤(數學事實解讀錯誤):
三個特徵值分別是 6.0、3.0、1.0,彼此之間存在高達 2 到 6 倍的顯著差距(並非選項所說的「相差不大」)。這正是典型資料結構分布不均勻、存在主要核心維度的特徵,非常適合進行 PCA 降維。
| 主成分維度 | 特徵值大小 | 個別解釋比例 | 累積解釋比例 | 是否符合 >80% 門檻 |
|---|---|---|---|---|
| 第一主成分 (\(PC_1\)) | 6.0 | 60% | 60% | ❌ 未達標 |
| 第二主成分 (\(PC_2\)) | 3.0 | 30% | 90% | ⭐⭐ 成功達標,在此切斷降維 (A) |
| 第三主成分 (\(PC_3\)) | 1.0 | 10% | 100% | 屬於可捨棄的弱變異 / 雜訊 |
解題關鍵:在 PCA 的應用考題中,看到特徵值列表,解題第一步一定是「把所有 $\lambda$ 加總當作分母」,接著把各項算成百分比。算出前兩項加總為 90% 後,直接與題目要求的「80%」進行對照,就能在 10 秒內鎖定正確答案 A。
36. 某銀行計畫與多家合作機構共同訓練一個AI信用風險預測模型,為避免客戶交易資料在傳輸與運算過程中外洩,技術團隊評估使用同態加密(Homomorphic Encryption)技術。下列何者最能正確描述同態加密在此應用中的關鍵特性?
(A) 系統以隨機雜訊(Noise)干擾輸出,確保統計結果不洩漏個資;
(B) 各參與銀行透過安全通道交換私鑰,確保模型參數一致;
(C) 將原始資料壓縮並同時加密,以減少加密後資料量與運算時間;
(D) 資料在加密狀態下仍可進行數值運算,模型訓練可於未解密資料上完成
看解答
正確答案是 (D) 資料在加密狀態下仍可進行數值運算,模型訓練可於未解密資料上完成。
這題考驗的是隱私安全計算(Privacy-Preserving Computation)與現代金融科技(FinTech)中非常熱門的前沿技術——同態加密(Homomorphic Encryption, HE)。
在傳統的加密技術(如 AES、RSA)中,資料就像是被鎖進了保險箱。如果想要對資料進行計算(例如把多個銀行的客戶帳單金額相加、或是計算信用風險模型的權重),就必須先把保險箱打開(解密)。然而,一旦在雲端或合作機構的伺服器上解密,資料就有被竊取、外洩或遭到內部人員窺探的風險。
(D) 完美描述了同態加密的「神級特性」:
核心定義: 同態加密的底層數學架構允許人們「直接對加密後的密文(Ciphertext)進行代數運算(如加法、乘法),而運算出來的結果在解密後,恰好等於直接對明文(Plaintext)進行相同運算的結果。」
本題實務想像: 多家銀行想聯手訓練 AI 模型。大家各自把敏感的客戶交易資料在本地端用同態加密鎖死,然後把這些「看起來像亂碼」的密文傳送到中央伺服器。中央伺服器的 AI 演算法可以直接在完全不解密、完全看不懂資料內容的情況下,對這些亂碼進行權重調整與模型訓練。訓練完成後,模型也是加密的,只有擁有私鑰的銀行才能解密看到最終的信用風險預測結果。這成功達成了「資料可用不可見」的最高安全境界。
其他選項錯誤原因與技術導正:
(A) 錯誤(這是「差分隱私」的定義):
「以隨機雜訊干擾輸出,確保統計結果不洩漏個資」是另一種隱私保護技術——差分隱私(Differential Privacy, DP)的經典做法。它是在數據查詢結果或模型梯度中加入數學雜訊,讓外界無法逆向推導出某個特定用戶的個資。
(B) 錯誤(這是「安全多方計算」或金鑰管理的盲點):
同態加密不需要大家去交換私鑰。私鑰一旦在網路路上傳輸或與合作機構共享,反而會造成極大的安全漏洞。各參與方通常是共享「公鑰」來進行加密運算,私鑰由各銀行自己嚴密保管。
(C) 錯誤(反而是同態加密的致命缺點):
同態加密在數學上非常複雜。資料經過同態加密後,資料量非但不會減少,反而會暴增數十甚至數百倍(密文擴張問題),且其運算時間極長(運算開銷通常是明文運算的數千倍)。這是目前同態加密在實務上難以全面普及的技術瓶頸,選項描述與技術事實完全相反。
| 技術名稱 | 核心物理運作機制 | 經典應用場景 |
|---|---|---|
| 同態加密 (HE) (D) | 對密文直接運算,解密後等於明文運算結果 (D)。 | 多方聯合將敏感個資上雲,進行盲算/暗箱模型訓練 (D)。 |
| 差分隱私 (DP) (A) | 在數據中添加適度的隨機數學雜訊 (A)。 | 政府發布人口統計數據、大廠收集用戶App行為日誌。 |
| 聯邦學習 (FL) | 資料不出庫、模型動態走,各方只交換模型梯度參數。 | 多家醫院在個資不離院的前提下,聯合訓練醫療影像AI。 |
解題關鍵:在資訊安全與 AI 結合的考題中,只要看到關鍵字 「同態加密(Homomorphic Encryption)」,大腦請直接聯想標準答案的定情句:「對密文進行運算」、「不需解密即可計算」 或 「在加密狀態下進行數值運算」。看到 D 選項精準命中,即可毫無懸念秒選。
37. 某跨銀行風控平台希望整合多家銀行的用戶行為資料,用於訓練信用風險預測模型。由於競爭與法規限制,各銀行僅願意提供加密後資料,且資料在任何時間不得被平台解密。同時,平台需建立安全通訊協議以確保資料在傳輸過程未被竄改或重放。 下列哪一組技術最能完整對應上述需求?
(A) 對稱加密(Symmetric Encryption)+ 單向雜湊(Hash Function)+ 非對稱加密(Asymmetric Encryption)+ 差分隱私(Differential Privacy);
(B) 同態加密(Homomorphic Encryption)+ 非對稱加密(Asymmetric Encryption)+ 單向雜湊( One-way Hash Function)+ 對稱加密(Symmetric Encryption);
(C) 差分隱私(Differential Privacy)+ 對稱加密(Symmetric Encryption)+ 同態加密(Homomorphic Encryption)+ 數位簽章(Digital Signature);
(D) 同態加密(Homomorphic Encryption)+ 安全多方計算(Secure Multi-party Computation, MPC)+ 雜湊函數(Hash Function)+ 對稱加密(Symmetric Encryption)
看解答
正確答案是 (B) 同態加密(Homomorphic Encryption)+ 非對稱加密(Asymmetric Encryption)+ 單向雜湊( One-way Hash Function)+ 對稱加密(Symmetric Encryption)。
(註:本題在部分官方考試實務中,其設計邏輯主要是考核傳統網路通訊協議安全組合,加上隱私計算技術的要素。)
題目中一共提出了三個核心的風控與資安訴求,我們將其逐一對應到最合適的密碼學技術:
1. 數據「整合與模型訓練」且「任何時間不得被平台解密」
對應技術:同態加密(Homomorphic Encryption)
技術原理: 如同前一題所述,同態加密是達成「資料可用不可見」的黃金技術。它允許風控平台直接對各家銀行提供的「密文」進行機器學習模型訓練與數值運算,平台在整個過程中完全不需要、也無法解密資料,完美符合「任何時間不得解密」的法規與競爭限制。
2. 安全通訊協議:確保傳輸過程「未被竄改」
對應技術:單向雜湊(One-way Hash Function) 與 非對稱加密(Asymmetric Encryption)
技術原理: 在網路安全通訊(如 TLS/SSL 協議)中,要確保資料未被竄改,通常會將資料透過單向雜湊函數(如 SHA-256)計算出訊息摘要(Digest)。傳輸方再利用非對稱加密中的私鑰對摘要進行加密(即數位簽章的原理),接收方收到後用公鑰解密比對雜湊值。只要資料在途中被動過哪怕一個位元,雜湊值就會完全對不上,以此確保「完整性(Integrity)」。
3. 安全通訊協議:確保傳輸過程未被「重放」
對應技術:對稱加密(Symmetric Encryption)與非對稱加密的混合應用(結合 Nonce/時間戳)
技術原理: 安全通訊協議(如 IPsec 或 TLS)在建立連線時,會先用非對稱加密安全地交換金鑰,隨後為了傳輸效率,會改用對稱加密(如 AES)來加密大量的實體傳輸資料。為了防止黑客截獲加密封包並原封不動地重新發送(即重放攻擊 Replay Attack),通訊協議會在對稱加密的結構中加入一次性隨機數(Nonce)或時間戳(Timestamp)。當接收方發現該隨機數已使用過或時間戳過期,就會直接丟棄該封包。
為什麼其他選項不夠完整或不正確?
(A) 與 (C) 錯誤(差分隱私無法防止數據被解密):
差分隱私(Differential Privacy) 的本質是在統計結果中加入「隨機數學雜訊」,用來防止外部人員透過統計結果逆向推導出個資。
致命缺點: 差分隱私無法讓平台在「不解密原始資料」的前提下進行聯合模型訓練。如果各銀行把明文給平台,平台就看得到明文,違反了題目「在任何時間不得被平台解密」的硬性限制。
(D) 錯誤(技術重疊且缺乏標準通訊協議要素):
雖然同態加密和安全多方計算(MPC)都屬於隱私計算,但兩者在架構上是互相競爭或互補的點對點計算架構。更重要的是,(D) 選項少了非對稱加密,而在現代資安標準中,沒有非對稱加密(公私鑰機制),安全通訊協議(如金鑰交換、身份驗證、數位簽章)根本無法在跨機構的網路上安全地建立。
| 題目指定之核心安全需求 | 密碼學/資料科學對應技術 | 本題選項 (B) 之配置效益 |
|---|---|---|
| 盲算模型、不可解密 | 同態加密 (Homomorphic Encryption) | 確保平台在不知道各行個資的前提下完成風控整合。 |
| 防竄改(完整性驗證) | 單向雜湊函數 (One-way Hash) | 計算資料指紋,任何微小改動都會導致雜湊值失效。 |
| 傳輸加密、身份辨識 | 非對稱加密 (Asymmetric) | 跨行之間安全交換連線金鑰,並進行身份驗證。 |
| 海量傳輸、防重放攻擊 | 對稱加密 (Symmetric) + 協議機制 | 負責實體資料的高速加密,並搭配時間戳防範重放。 |
解題關鍵:這題是標準的「複數需求組合題」。
1. 看到「整合資料且平台隨時不得解密」,鎖定必須有 「同態加密」 ➔ 淘汰 (A)。
2. 看到「安全通訊協議防竄改、防重放」,這在資安教科書中是標準的 「網路安全傳輸三劍客:對稱、非對稱、單向雜湊」 的大會師 ➔ 檢視剩餘選項,只有 (B) 完整配齊了這三項基礎安全通訊元素,即可順利破題。
38. 附圖程式碼所計算的是哪一類型的評估指標?

(A) MAE;
(B) MSE;
(C) RMSE;
(D) R²
看解答
正確答案是 (B) MSE。
這題考驗的是機器學習中迴歸模型(Regression Model)最經典的評估指標——均方誤差(Mean Squared Error, MSE)。
我們可以將附圖中的 Python 程式碼公式與數學公式進行一對一的拆解:
• (y_true - y_pred):計算誤差(Error),即「真實值」與「預測值」之間的差距。
• 在 Python 中,**2 代表平方(Squared),也就是將誤差進行平方。這有兩個核心作用:
消除正負號的影響(避免正負誤差互相抵消)。
放大較大誤差的懲罰權重。
• sum(...):將所有樣本的誤差平方加總(\(\sum\))。
• / len(y_true):除以樣本的總數量,也就是計算平均(Mean)。
將以上步驟結合成數學公式,就是標準的 MSE 公式:
$$\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_{\text{true}} - y_{\text{pred}})^2$$
其他選項的程式碼寫法對照:
為了更清晰地理解差異,我們來看看其他三個迴歸指標在 Python 中會如何寫:
(A) MAE(平均絕對誤差,Mean Absolute Error):
特徵: 不用平方,而是取絕對值。
程式碼: return sum(abs(y_true - y_pred)) / len(y_true)
(C) RMSE(均方根誤差,Root Mean Squared Error):
特徵: 在 MSE 的計算結果外面,再加上開根號(Square Root)。
程式碼: return (sum((y_true - y_pred)**2) / len(y_true))**0.5
(D) \(R^2\)(決定係數,Coefficient of Determination):
特徵: 用來評估模型解釋資料變異量的比例,公式較為複雜,分母需要包含真實值的總平方和(TSS)。
| 指標縮寫 | 全名 | 核心數學特徵 | 英文直譯記憶法 |
|---|---|---|---|
| MAE | Mean Absolute Error | 使用 abs() 取絕對值 | 平均 ➔ 絕對 ➔ 誤差 |
| MSE (B) | Mean Squared Error | 使用 ** 2 取平方 (B) | 平均 ➔ 平方 ➔ 誤差 (B) |
| RMSE | Root Mean Squared | 平方後再開根號 ** 0.5 | 根 ➔ 平均 ➔ 平方 ➔ 誤差 |
解題關鍵:在機器學習的程式碼考題中,只要看到 (y_true - y_pred)**2(誤差的平方)外層套著 sum(...) / len(...)(求平均),這在定義上就是 Mean(平均)Squared(平方)Error(誤差)。看到關鍵字 Squared,即可瞬間秒殺選擇 (B) MSE。
39. 附圖程式碼實現的是哪一種正則化技術?

(A) L1正則化;
(B) L2正則化;
(C) Dropout;
(D) Batch Normalization
看解答
正確答案是 (C) Dropout。
這題考驗的是深度學習中經典正則化技術 Dropout(隨機失聯) 的底層實作機制,特別是現代框架(如 PyTorch、TensorFlow)普遍採用的「反向 Dropout(Inverted Dropout)」算法。我們可以逐行拆解這段 Python 程式碼的底層物理意義:
1. if training:(區分訓練與推論階段):
• Dropout 的靈魂特徵就在於:它只在「訓練(Training)」時啟動,在「測試/推論(Inference/Evaluation)」時必須關閉。
• 程式碼中用 if training: 與 else: return x 完美體現了這個機制——測試時(else),所有神經元都必須正常工作,不作任何變動直接返回輸入 x。
2. mask = np.random.binomial(1, p, size=x.shape)(產生二項分佈遮罩):
• np.random.binomial(1, p, ...) 是一個伯努利分佈(白話來說就是丟銅板)。它會隨機產生一個由 0 和 1 組成的矩陣(Mask),其維度與輸入 x 完全相同。
• 其中,每個位置有 \(p\) 的機率保留為 1,有 \(1-p\) 的機率變為 0。(註:此處的 \(p\) 代表保留機率 Keep Probability)。
3. return x * mask / p(矩陣相乘與縮放放):
• x * mask:讓輸入 x 乘以這個由 0 和 1 組成的遮罩。乘上 0 的地方,該神經元的輸出就會徹底歸零(被隨機關閉);乘上 1 的地方則完好保留。這就是 Dropout 的核心動作。
• 除以 p(Inverted Dropout 的關鍵): 因為訓練時隨機關閉了部分神經元,輸出的總期望值會變小。為了讓訓練和測試時的資料能量(期望值)保持一致,程式碼在訓練階段直接除以 p 進行縮放(Scale Up)。這樣一來,測試階段(else)就不需要再做額外的縮放處理,這正是現代深度學習框架的標準做法。
其他選項為什麼錯?
(A) L1 正則化 / (B) L2 正則化:
這兩種技術是在損失函數(Loss Function)後面加上權重的絕對值懲罰(L1)或平方和懲罰(L2)。它們是在優化器更新權重時起作用,完全不需要在網絡的前向傳播(forward)中去隨機產生 0/1 遮罩來關閉神經元。
(D) Batch Normalization(批次標準化):
它的目的是將每一層的輸入數據進行減去均值、除以標準差的標準化處理(使數據符合均值 0、方差 1),它的程式碼特徵會出現計算均值(mean)和方差(var)的動作,而不是隨機丟銅板(binomial)。
| 正則化技術名稱 | 前向傳播(Forward)核心特徵程式碼 | 核心物理本質 |
|---|---|---|
| Dropout (C) | binomial(1, p) 產生 0/1 遮罩,且區分 if training (C) | 在訓練時隨機將部分神經元輸出歸零,防止過擬合 (C)。 |
| Batch Normalization | (x - mean) / sqrt(var + eps) * gamma + beta | 對批次資料進行動態標準化,加速收斂。 |
| L1 / L2 正則化 | loss += lambda * sum(abs(w)) 或 sum(w**2) | 作用於損失函數,懲罰過大的權重。 |
解題關鍵:在深度學習的前向傳播(forward)考題中,只要看到 if training: 搭配 np.random.binomial(二項/伯努利分佈) 產生 0 與 1 的 Mask,並將輸入乘上該 Mask 的設計,不用懷疑,這百分之百就是 Dropout 的底層原始碼實現。
40. 依據附圖程式碼進行資料處理,下列何者正確?

(A) np.linalg.inv(A) 計算矩陣 A 的行列式;
(B) v1 * v2 結果為 array([5, 7, 9]);
(C) np.dot(v1, v2) 結果為 np.int64(32);
(D) np.linalg.eig(A) 計算矩陣 A 的反矩陣
看解答
正確答案是 (C) np.dot(v1, v2) 結果為 np.int64(32)。
這題考驗的是 Python 科學計算核心套件 NumPy 的基礎線性代數運算,包含向量內積、矩陣乘法以及常見線性代數函式。我們來逐一計算與檢視每個選項:
(C) 為什麼完全正確?(向量內積 Dot Product):
• 數學定義: np.dot(v1, v2) 在處理兩個一維向量時,執行的是標準的內積(Dot Product)運算。計算方式為「對應位置元素相乘後全部加總」。
• 計算公式:
$$\text{v1} \cdot \text{v2} = (1 \times 4) + (2 \times 5) + (3 \times 6)$$
$$\text{v1} \cdot \text{v2} = 4 + 10 + 18 = 32$$
• 資料型態: NumPy 預設會將整數計算結果包裝為 np.int64 或是 np.int32(取決於作業系統環境),數值確實為 32。因此 (C) 選項敘述完全正確。
其他選項錯誤原因與技術導正:
(A) 錯誤(函式功能張冠李戴):
• np.linalg.inv(A) 的 inv 代表 Inverse,它是用來計算矩陣 A 的「反矩陣(\(A^{-1}\))」,而不是行列式。
• 補充:如果要計算矩陣 A 的行列式(Determinant),應該使用的函式是 np.linalg.det(A)。
(B) 錯誤(這是元素對應相乘,而非相加):
• 在 NumPy 中,v1 * v2 執行的是 Hadamard Product(元素對應相乘 Element-wise Multiplication)。
• 正確計算: array([1*4, 2*5, 3*6]) \(\rightarrow\) array([4, 10, 18])。
• 選項中的 array([5, 7, 9]) 其實是執行了向量相加(v1 + v2),運算子完全弄錯了。
(D) 錯誤(函式功能張冠李戴):
• np.linalg.eig(A) 的 eig 代表 Eigenvalues/Eigenvectors,它是用來計算矩陣 A 的「特徵值與特徵向量」。
• 正如前面 (A) 選項所述,計算反矩陣應該使用 np.linalg.inv(A)。
| NumPy 語法 | 數學物理本質 | 本題資料的正確計算結果 |
|---|---|---|
| v1 + v2 | 向量相加(Element-wise Add) | array([5, 7, 9])(選項 B 的陷阱) |
| v1 * v2 | 向量對應相乘(Element-wise Mul) | array([4, 10, 18]) |
| np.dot(v1, v2) (C) | 向量內積(Dot Product) (C) | 32 (C) |
| np.linalg.inv(A) | 反矩陣(Matrix Inverse) | \(\begin{bmatrix} -2 & 1 \\ 1.5 & -0.5 \end{bmatrix}\) |
| np.linalg.det(A) | 行列式(Matrix Determinant) | \(1 \times 4 - 2 \times 3 = -2\) |
| np.linalg.eig(A) | 特徵值與特徵向量(Eigen) | 回傳矩陣 A 的特徵值與特徵向量對。 |
解題關鍵:這是一題經典的 NumPy 觀念與計算混合題。解題時看到 (B) 拿相加的結果來騙相乘,直接剔除;看到 (A) 與 (D) 對於 inv(反矩陣)和 eig(特徵值)的定義完全顛倒,也能瞬間劃掉。此時動手算一下 (C) 的向量內積:\(4 + 10 + 18 = 32\),即可信心十足地秒選 C。
41. 考慮擲出骰子並採用Monte Carlo方法估算條件機率,參考附圖程式碼。

事件 A:擲出偶數
事件 B:擲出大於3
請問下列何者為條件機率P(A∣B)的正確值?
(A) A_and_B.sum() / (A.sum() * B.sum());
(B) A_and_B.sum() / (A.sum() + B.sum());
(C) A_and_B.sum() / A.sum();
(D) A_and_B.sum() / B.sum()
看解答
正確答案是 (D) A_and_B.sum() / B.sum()。
這題考驗的是如何利用蒙地卡羅方法(Monte Carlo Method)的隨機模擬數據,來計算統計學中的條件機率(Conditional Probability)。
1. 條件機率的數學定義
根據條件機率的標準公式,在給定事件 \(B\) 發生的情況下,事件 \(A\) 發生的機率 \(P(A|B)\) 定義為:
$$P(A|B) = \frac{P(A \cap B)}{P(B)}$$
2. 轉換為蒙地卡羅頻率估算
蒙地卡羅方法的核心思維是「用事件發生的頻率(次數)來逼近真實的機率」。當模擬次數 \(n\)(本題為 100,000 次)足夠大時,機率可以寫成次數的比值:
• \(P(A \cap B)\) 可以用「\(A\) 與 \(B\) 同時發生的總次數」來估算。
• \(P(B)\) 可以用「事件 \(B\) 發生的總次數」來估算。
因此,公式可以轉換為:
$$P(A|B) \approx \frac{\text{事件 } A \text{ 與事件 } B \text{ 同時發生的次數}}{\text{事件 } B \text{ 發生的次數}}$$
3. 對應 Python / NumPy 程式碼
我們來檢視程式碼中各變數透過 .sum() 計算出來的物理意義:
• A、B、A_and_B 都是由布林值(True / False)組成的 NumPy 陣列。
• 在 Python 中對布林值陣列進行 .sum() 加總時,True 會被當作 1,False 會被當作 0。因此:
B.sum() = 事件 \(B\) 發生的總次數(骰子大於 3 的次數)。
A_and_B.sum() = 事件 \(A\) 且事件 \(B\) 同時發生的總次數(骰子又是偶數且又大於 3 的次數,即擲出 4 或 6 的次數)。
將這些布林加總代入蒙地卡羅的估算公式:
$$\text{條件機率 } P(A|B) = \frac{\text{A_and_B.sum()}}{\text{B.sum()}}$$
這完美對應到了選項 (D)。
| 統計學概念符號 | 概念白話解釋 | 對應的 NumPy 程式碼運算 |
|---|---|---|
| \(N_B\) | 骰子大於 3 的總次數(分母限制的樣本空間) | B.sum() |
| \(N_{A \cap B}\) | 骰子是偶數且大於 3 的總次數(分子滿足的事件) | A_and_B.sum() |
| \(P(A\|B)\) (D) | 在已知大於 3 的前提下,是偶數的條件機率 (D) | A_and_B.sum() / B.sum() (D) |
解題關鍵:不論程式碼寫得再複雜,只要看到要求 「條件機率 \(P(A|B)\)」,根據口訣:「直線後面的字母就是分母」。因為後面是 \(B\),所以分母必定是與 \(B\) 相關的計數(即 B.sum()),而分子一定是兩者交集(A_and_B.sum())。據此即可在 5 秒內鎖定正確答案 (D)。
VGG16是由牛津大學 Visual Geometry Group(VGG)在2014年提出的經典卷積神經網路(Convolutional Neural Network, CNN)架構。該模型以簡潔且規則的層堆疊設計聞名,廣泛應用於影像分類、特徵提取及遷移學習等任務。附圖程式碼載入了預訓練的VGG16模型,並輸出其完整層級結構及參數統計摘要(如附表)。請根據此資訊回答42~45題。

42. 在深度神經網路中,不同層的參數量(parameter count)差異極大。有些層雖然數量少但計算量大,有些則相反。了解參數分佈情形,有助於模型壓縮與遷移學習設計。請問在 VGG16 中,下列何者的參數量最多?
(A) 卷積層(Conv2d);
(B) 全連接層(Linear);
(C) ReLU 激活函數;
(D) 池化層(MaxPool2d, AdaptiveAvgPool2d)
看解答
這題的正確答案是 (B) 全連接層(Linear)。
我們可以從附圖的統計摘要中,透過以下幾個關鍵數據來分析各種類型層的參數量(Param #):
全連接層 (Linear): 模型後半段共有三個 Linear 層(Linear-33、Linear-36、Linear-39)。光是 Linear-33 這一層的參數量就高達 102,764,544(約 1.02 億),加上另外兩層,全連接層的總參數量超過了 1.23 億,佔了整個模型總參數量(138,357,544)的 90% 左右。
卷積層 (Conv2d): 雖然 VGG16 有高達 13 個卷積層,且部分層(如 Conv2d-18 等)的參數量達到了百萬等級(1,180,160 或 2,359,808),但全部卷積層的參數加總大約只有 1,400 多萬,遠低於全連接層。
ReLU 激活函數 與 池化層 (MaxPool2d, AdaptiveAvgPool2d):
從圖中可以看到,這兩類層的 Param # 欄位全都是 0。因為它們只負責進行非線性轉換與特徵圖降維(特徵提取),本身並不具備需要透過訓練學習的權重(Weights)或偏置(Bias)。
答題結論:在經典的 VGG16 架構中,全連接層(Linear) 集中了絕大部分的參數量(這也是後續現代 CNN 架構如 ResNet 改用全域平均池化 Global Average Pooling 來取代大尺寸全連接層,以大幅壓縮參數量的原因)。
43. 在神經網路中,了解各層的運算量分佈,有助於模型壓縮與硬體加速的策略設計。請問在VGG16中,下列何者運算量(FLOPs)最多?
(A) 卷積層(Conv2d);
(B) 全連接層(Linear);
(C) ReLU激活函數;
(D) 池化層(MaxPool2d, AdaptiveAvgPool2d)
看解答
這題的正確答案是 (A) 卷積層(Conv2d)。
這是一個在深度學習硬體加速與模型優化中非常經典的觀念:「全連接層參數多,卷積層計算量大。」
雖然在前一題我們看到全連接層(Linear)佔了 VGG16 將近 90% 的參數量,但如果論及運算量(FLOPs,浮點運算次數),則是卷積層(Conv2d)佔了絕對的統治地位(通常佔整個網路總運算量的 90% 到 95% 以上)。
為什麼卷積層的運算量最大?
我們可以從兩者的運算特徵來分析:
• 卷積層 (Conv2d):特徵圖尺寸大,局部權重重複滑動計算
卷積層的參數雖然相對少(因為權重共享),但它的滑動視窗(Kernel)必須在整張特徵圖(Feature Map)上一步一步滑動做點積運算。
例如模型剛開始的 Conv2d-3 層:
輸入與輸出的特徵圖尺寸高達 \(150 \times 150\)。
雖然該層參數只有 36,928 個,但這組參數必須在 \(150 \times 150 = 22,500\) 個位置上重複進行乘加運算。
這使得前段卷積層即便參數量小,其運算量依然呈現爆炸性成長。
• 全連接層 (Linear):特徵圖已大幅降維,只計算一次矩陣乘法
進入全連接層之前,特徵圖已經過多次下採樣(Pooling)。在 VGG16 中,到了 Linear-33 之前,特徵圖尺寸已經被壓縮到只有 \(7 \times 7\)。
雖然它的權重矩陣非常龐大(\(512 \times 7 \times 7 \times 4096 \approx 1.02\) 億個參數)。
但它本質上只做一次大規模的矩陣與向量乘法,不需要像卷積層那樣在空間上重複滑動計算。
• ReLU 與 池化層:
這兩者屬於逐元素(Element-wise)或局部區域的最大值比較運算,不涉及複雜的矩陣乘加法,因此運算量(FLOPs)極低。
| 網路層類型 | 參數量 (Parameters) | 運算量 (FLOPs) | 性能瓶頸類型 |
|---|---|---|---|
| 卷積層 (Conv2d) | 較少 (約 10%) | 極多 (約 90%+) | 計算密集型 (Compute-bound) |
| 全連接層 (Linear) | 極多 (約 90%) | 較少 (約 10%) | 記憶體頻寬密集型 (Memory-bound) |
因此,在進行硬體加速(如 GPU/TPU 優化)時,優化卷積運算(如使用 Winograd 演算法或 GEMM 矩陣化)是提升推論速度的關鍵;而在進行模型輕量化(如剪枝、壓縮)時,砍掉全連接層的參數則是減少模型體積的首要目標。
44. VGG16層數深且結構規則,由多層卷積、池化及全連接層組成。了解各層的輸入/輸出維度、參數量及記憶體需求,有助於掌握CNN模型的組成邏輯與實作技巧。根據VGG16的模型架構,下列敘述何者正確?
(A) AdaptiveAvgPool2d的輸出會被攤平後傳入第一個全連接層;由於前一層池化輸出空間為 4×4,所以第一個線性層的輸入維度是 512×4×4 = 8192;
(B) Linear-33(第一個全連接層)報出的102,764,544參數只包含權重,偏差(bias)沒有算在內;
(C) 根據列出的「Estimated Total Size (MB) = 624.98」,表示訓練此模型只需大約625MB的GPU記憶體(包含所有optimizer state與梯度),所以一張 1 GB的GPU就足夠訓練;
(D) VGG16包含13層卷積層(conv)與3層全連接層(FC),總參數數目約為 138,357,544(約138.36M)
看解答
這題的正確答案是 (D) VGG16包含13層卷積層(conv)與3層全連接層(FC),總參數數目約為 138,357,544(約138.36M)。
我們來逐一分析各個選項,找出正確與錯誤的地方:
(D) 為什麼正確?
• 結構組成: VGG16 的名稱中「16」代表的就是含有具備權重參數的 16 層,包含 13 層卷積層(圖中的 Conv2d-1 到 Conv2d-29,共 13 個)與 3 層全連接層(Linear-33、Linear-36、Linear-39),\(13 + 3 = 16\) 層。
• 總參數數: 圖中倒數第 8 行明確寫著 Total params: 138,357,544,換算下來確實約為 138.36M。
其他選項為什麼錯誤?
(A) 錯誤原因:前一層池化輸出的空間尺寸並非 4×4
從附圖中可以看到,AdaptiveAvgPool2d-32 的 Output Shape 是 [-1, 512, 7, 7]。因此,它將特徵圖的空間尺寸固定調整為了 7×7(而非 4×4)。
第一個線性層 Linear-33 的輸入維度計算方式應為 \(512 \times 7 \times 7 = 25,088\)。
(B) 錯誤原因:PyTorch 的 Linear 層預設包含偏差(Bias)
torch.nn.Linear 報出的參數量同時包含了權重(Weights)與偏差(Bias)。
我們可以驗證一下 Linear-33 的參數計算:
$$\text{參數量} = (\text{輸入維度} \times \text{輸出維度}) + \text{偏差數}$$
$$(25088 \times 4096) + 4096 = 102,760,448 + 4096 = 102,764,544$$
這個數字與圖中完全吻合,證明偏差已被計算在內。
(C) 錯誤原因:訓練所需的記憶體遠大於靜態預估大小
圖中的 Estimated Total Size (MB): 624.98 只是模型權重、輸入資料與前向/反向傳播特徵圖(Activation Maps)的基礎佔用量。 在訓練(Training)階段,還需要儲存:
1. 每個參數的梯度(Gradient,大小與參數相同)。
2. 優化器的狀態(Optimizer States,例如使用 Adam 優化器時,需要額外佔用參數量的 2 到 3 倍記憶體)。
3. 批次大小(Batch Size)帶來的倍數增長。
因此,實際訓練 VGG16 往往需要數 GB 甚至十幾 GB 的 GPU 記憶體,1 GB 的顯存絕對不夠用(會發生 Out of Memory, OOM)。
45. 在實務應用中,我們常使用遷移學習(transfer learning)技巧,即載入預訓練模型(如VGG16),凍結部分層的參數,只針對特定任務重新訓練最後幾層,這種做法可節省訓練時間並提升模型效能。假設你要對VGG16進行遷移學習(transfer learning),希望凍結卷積層的參數,只訓練最後全連接層(classifier)。下列哪段程式碼寫法正確?

看解答
這題的正確答案是 (B)。
這是一個非常經典的 PyTorch 遷移學習(Transfer Learning)特徵提取(Feature Extraction)實作題。核心目標是:「凍結前端的卷積層(負責提取通用特徵),並重新定義及訓練後端的全連接層(負責特定新任務的分類)」。
我們來拆解為什麼 (B) 是正確的,以及其他選項錯在哪裡:
(B) 為什麼正確?
在 torchvision 的 VGG16 架構原始碼中,網路主要被拆分為兩大模組:
1. model.features:包含所有的卷積層、ReLU 與最大池化層(即負責提取影像特徵的部分)。
2. model.classifier:包含最後的三個全連接層(負責將特徵映射到類別機率)。
• 程式碼解析:

這段程式碼精準地只抓取 model.features(卷積層部分)的參數,並將其 requires_grad 設為 False。這意味著在反向傳播時,PyTorch 不會計算這些卷積層的梯度,成功將它們「凍結」。
隨後,model.classifier[6] = torch.nn.Linear(4096, 10) 將最後一個分類層替換為輸出維度為 10 的全新線性層。新創建的 PyTorch 層預設 requires_grad = True,因此在訓練時,只有這個新層會被優化更新,完全符合題目要求。
其他選項為什麼錯誤?
(A) 錯誤原因:把整個模型(包含全連接層)都凍結了 model.parameters() 會遍歷整個網路所有層的參數。如果在這裡將所有參數的 requires_grad 都設為 False,接著雖然替換了 model.classifier[6],但前面的 model.classifier[0](Linear-33)和 model.classifier[3](Linear-36)也會被凍結。題目要求是「只訓練最後全連接層(classifier)」,選項 (A) 導致部分的 classifier 層無法被訓練。
(C) 錯誤原因:凍結了原本應該要訓練的分類層 model.classifier.parameters() 抓取的是全連接層的參數。程式碼把分類層的參數凍結,反而讓卷積層保持開放訓練(requires_grad = True),這與題目「凍結卷積層,訓練全連接層」的需求完全相反。
(D) 錯誤原因:語法錯誤,無法凍結任何參數 在 PyTorch 中,requires_grad 是個別參數(Tensor)的屬性,而不是整個模型(nn.Module)物件的屬性。直接對 model.requires_grad = False 進行賦值在 PyTorch 中是不允許的(會報錯或無法傳遞給內部的 parameters),必須使用 for 迴圈遍歷參數,或者使用模型內建的 model.requires_grad_(False) 方法。
46.

假設研究人員已將含有雜訊的手寫數字影像存放在變數 noisy 中。部分資料經視覺化後的外觀如下:


他們嘗試使用 PCA 進行降噪,並希望能保留影像的主要特徵,同時去除影像中的雜訊。然而,當程式執行後,觀察到影像仍然含有明顯的雜訊。研究人員懷疑是程式中某個步驟的設定不正確,導致PCA沒有發揮降噪的作用,需要修改程式碼才能讓降噪有效。請問哪一段程式碼需要修改,才能讓 PCA 對 noisy 影像有效去噪?
(A) 程式碼 A;
(B) 程式碼 B;
(C) 程式碼 C;
(D) 程式碼 D
看解答
這題的正確答案是 (B) 程式碼 B。
為什麼是「程式碼B」需要修改?
在實務上使用主成分分析(PCA)來進行影像降噪(Denoising)時,核心原理是:只保留解釋變異量最高的前幾個主要成分(Principal Components),並丟棄代表雜訊的微小成分。
目前的錯誤點(程式碼B):

在建立 PCA 物件時,如果括號內留空(即不指定參數 n_components),scikit-learn 預設會保留所有可能的主成分(即 n_components = min(樣本數, 特徵數))。
這樣做會導致:
1. 程式碼D pca.transform(noisy) 雖然把資料投影到了 PCA 空間,但因為成分一個都沒少,它完整保留了資料中的「特徵」與「雜訊」。
2. 程式碼E pca.inverse_transform(components) 再把資料還原回影像空間時,就會得到一模一樣、完全沒有過濾掉任何雜訊的原始髒亂影像。
要如何修改程式碼B才能有效去噪?
必須在初始化 PCA 時限制保留的成分數量。常見的有效改法有以下兩種:
1. 指定保留固定數量的主成分(例如只留前 12 或 20 個最重要的特徵):

2. 指定希望保留的總解釋變異量比例(例如保留 80% 的主要資訊,自動過濾掉最後 20% 的雜訊細節):

其他選項為什麼不需要修改?
(A) 程式碼 A:from sklearn.decomposition import PCA 是正確導入套件的語法。
(C) 程式碼 C:pca.fit(noisy) 負責計算雜訊資料的共變異數矩陣、特徵值與特徵向量,是建立投影矩陣的標準步驟。
(D) 程式碼 D:pca.transform(noisy) 將原始影像降維到主成分空間,如果前面有做好 n_components 的限制,這個步驟就能成功把低變異的雜訊特徵丟棄。
47. 研究人員在對 digits 資料集進行分類時,決定使用KNN並搭配交叉驗證來評估模型準確率。他們撰寫了四組不同的程式碼來進行 KNN 訓練與交叉驗證,但不確定哪幾組程式碼能正確執行並輸出準確率。每組程式碼在資料切割、模型訓練、交叉驗證函數的使用上略有差異,研究人員希望找出可以正確完成任務的程式碼組合,以確保模型評估的可靠性。

請問哪幾組程式碼能正確使用KNN搭配交叉驗證,對digits資料集進行訓練並輸出準確率?
(A) 程式碼A、程式碼B、程式碼C、程式碼D;
(B) 程式碼A、程式碼C;
(C) 程式碼A、程式碼B;
(D) 程式碼C、程式碼D
看解答
這題的正確答案是 (B) 程式碼A、程式碼C。
這題有一個非常細微且聰明的考點,主要卡在題目要求的「輸出準確率 (Accuracy)」,以及 scikit-learn 對於多分類 (Multi-class) 任務指標設定的語法限制。
我們來逐一分析這四組程式碼:
為什麼「程式碼 A」與「程式碼 C」是正確的?
1. 題目要求的任務: digits 資料集(手動辨識數字)是一個經典的多分類任務(共有 0 到 9,總共 10 個類別)。
2. 評估指標設定:
• 程式碼 A: 設定 scoring="accuracy",這能正確計算多分類的整體準確率,程式可以順利執行並正常輸出。
• 程式碼 C: 直接設定 cv=5(代表由 scikit-learn 自動建立 5-fold 分層交叉驗證),並且同樣使用 scoring="accuracy"。語法與參數完全正確。
為什麼「程式碼 B」與「程式碼 D」是錯誤的?
這兩組程式碼的共通問題在於:它們都設定了 scoring="f1"。
• 核心錯誤點: 在 scikit-learn 的 cross_val_score 中,字串 "f1" 預設僅適用於二分類 (Binary Classification) 任務。
• 執行結果:因為 digits 是多分類(10 個類別),當程式碼 B 或 D 執行到 cross_val_score(..., scoring="f1") 時,系統會不知道該如何將二分類的 F1-score 計算公式應用到多類別上,因此會直接拋出錯誤(ValueError: Target is multiclass but average='binary')並中斷執行,根本無法輸出結果。
• 正確的 F1 寫法(補充): 如果是多分類任務想要評估 F1-score,必須明確指定平均策略,字串要改寫為 "f1_macro"、"f1_micro" 或 "f1_weighted",直接寫 "f1" 是沒辦法跑的。
結論:
• 能成功執行且符合題目要求的只有 程式碼 A 與 程式碼 C。
• 程式碼 B、D 則會因為 scoring="f1" 用於多分類而報錯潰散。
48. 參考下圖程式碼,下列何者正確?

A:X_train -= X_train.mean(axis=0) 將每個訓練集特徵的平均值調整為 0
B:X_train /= X_train.std(axis=0) 將每個訓練集特徵的標準差調整為 0
C:X_train 處理結果會將資料壓縮到 0 和 1 之間
D:標準化結果防止梯度爆炸或消失
E:標準化是屬於特徵選擇(Feature Selection)方法
F:X_train 程式碼應修正為 X_train = X_train.std(axis=0),
X_test 程式碼應修正為 X_test = X_test.std(axis=0)
(A) A、B、C、D;
(B) A、E;
(C) A、D;
(D) A、C、F
看解答
這題的正確答案是 (C) A、D。
這是一題考查資料預處理中「標準化(Standardization / Z-score Normalization)」觀念的經典題目。我們來逐一分析各個敘述的對錯:
為什麼 A、D 是正確的?
A:X_train -= X_train.mean(axis=0) 將每個訓練集特徵的平均值調整為 0 (正確)
這行程式碼是將原始資料減去該特徵欄位的平均值(零均值化,Zero-centering),處理後的資料平均值必定為 0。
D:標準化結果防止梯度爆炸或消失 (正確)
在類神經網路中,如果不同特徵的數值範圍差異極大(例如一個是 0~1,另一個是 1~100000),會導致損失函數的等高線變成極度扁平的橢圓形,使得梯度下降時產生劇烈震盪,甚至引發梯度爆炸或消失。標準化將所有特徵縮放到相近的尺度(平均值 0、標準差 1),能讓網絡中的權重更新更穩定,有效緩解此問題。
其他敘述為什麼錯誤?
B:將每個訓練集特徵的標準差調整為 0 (錯誤)
除以標準差 X_train.std(axis=0) 是為了將特徵的縮放比例一致化,處理後的標準差會變成 1(縮放為單位方差),而不是 0(標準差為 0 代表所有數值都一模一樣)。
C:X_train 處理結果會將資料壓縮到 0 和 1 之間 (錯誤)
這是「最大最小縮放(Min-Max Scaling)」的效果。Z-score 標準化後的資料理論上符合標準正態分佈,數值通常會分佈在 -3 到 3 之間,並不會被限制在 0 和 1 之間。
E:標準化是屬於特徵選擇 (Feature Selection) 方法 (錯誤)
標準化屬於特徵縮放(Feature Scaling)或資料轉換(Data Transformation),並沒有汰除或選擇任何特徵欄位。
F:X_train 程式碼應修正為... (錯誤)
圖中的寫法 -= 與 /= 是原位運算(In-place operation),本身就是非常高效且正確的 Z-score 標準化寫法。
註(實務盲點): 雖然圖中語法能執行,但實務上對 X_test 進行標準化時,必須使用 X_train 的平均值與標準差,而不是使用 X_test 自身的統計量,以防資料洩漏(Data Leakage)。但單就本題給定的選項組合來看,(C) A、D 是最精準且唯一的正確答案。
49. 參考下圖執行結果,下列何者正確?

(A) activation="relu" 其數學式為 \(f(x) = \frac{1}{1 + e^{-x}}\)
(B) 空格1值為110,空格2值為100;
(C) 空格1值為100,空格2值為110;
(D) activation="sigmoid" 一般用於多類別分類預測模型
看解答
這題的正確答案是 (B) 空格1值為110,空格2值為100。
以下是根據附圖程式碼與神經網路原理的詳細分析:
1. 參數計算原理
全連接層(Dense Layer)的參數量計算公式為:
$$\text{參數量} = (\text{輸入神經元數量} \times \text{輸出神經元數量}) + \text{偏置值(Bias, 與輸出數量相同)}$$
2. 其他選項錯誤原因
50. 參考下圖執行結果,下列何者正確?


A:空格1須填入 "b-"
B:空格2須填入 "b--"
C:空格1須填入 "r-"
D:空格2須填入 "r--"
E:驗證損失明顯較訓練損失減少更明顯
(A) B、C;
(B) A、C、D;
(C) A、D;
(D) C、D、E
看解答
這題的正確答案是 (C) A、D。
這是一題考查 matplotlib 繪圖參數(折線顏色與樣式短碼)與機器學習損失曲線(Loss Curve)解讀的綜合題。我們來逐一拆解分析:
1. 判斷折線顏色與樣式 (空格1 與 空格2)
對照 AI05-114-2-50-2.jpg 的圖例(Legend)與圖形外觀:
Training Loss (訓練損失): 在圖中是一條藍色的實線。
Validation Loss (驗證損失): 在圖中是一條紅色的虛線。
在 matplotlib.pyplot.plot 的格式字串(format string)中:
顏色代號:b 代表藍色 (blue)、r 代表紅色 (red)。
線條樣式:- 代表實線 (solid line)、-- 代表虛線 (dashed line)。
因此:
空格1 控制 Training Loss,要畫出「藍色實線」,字串必須填入 "b-"(敘述 A 正確)。
空格2 控制 Validation Loss,要畫出「紅色虛線」,字串必須填入 "r--"(敘述 D 正確)。
2. 其他敘述為什麼錯誤?
B、C 錯誤: 顏色與線條樣式與實際輸出的圖表完全顛倒。
E:驗證損失明顯較訓練損失減少更明顯(錯誤): 從圖表中可以看到,隨著 Epochs 增加,藍色的訓練損失(Training Loss)一路上平滑地持續下降(從 0.65 降到約 0.40)。然而,紅色的驗證損失(Validation Loss)大約在第 15 個 Epoch 之後就停滯在 0.45 左右,甚至開始出現輕微的震盪與飽和,這說明訓練損失的減少遠比驗證損失明顯(這也是模型開始出現輕微過擬合 Overfitting 的典型特徵)。
結論:符合正確敘述的組合只有 A 與 D,故選 (C)。