機器學習與投資管理#

**機器學習(machine learning, ML)**自大量資料中萃取知識:從已知範例中學習,找出底層結構,並以最少的人為介入產生結構或預測。常見口訣:「找出模式、套用模式(find the pattern, apply the pattern)」。

在投資管理價值鏈中,ML 被廣泛應用於:

  • 訊號探勘與選股
  • 風險建模與信用評等
  • 投資組合最佳化
  • 文本與另類資料分析
  • 詐欺偵測

機器學習的三大類型#

監督式學習#

監督式學習(supervised learning):需要已標註的訓練資料——亦即配對的輸入($X$,特徵 features)與輸出($Y$,目標 target)。

依目標變數性質可細分:

  • 迴歸(regression):目標為連續變數,例如預測下一季報酬率
  • 分類(classification):目標為類別或順序變數,例如預測公司信用評等、是否破產

非監督式學習#

非監督式學習(unsupervised learning):訓練資料無標籤。演算法必須自行推斷特徵間的關係、摘要分布結構。

兩類主要問題:

  • 降維(dimension reduction):減少特徵數量並保留資訊
  • 群集(clustering):將觀察值分群

深度學習與強化學習#

  • 深度學習(deep learning):基於神經網路(neural networks),處理影像辨識、自然語言等複雜任務
  • 強化學習(reinforcement learning, RL):**代理人(agent)**透過與環境(或自我)互動,採取行動以最大化長期報酬

泛化能力與過度配適#

三類誤差#

樣本外誤差 = 偏誤誤差 + 變異誤差 + 基底誤差

  • 偏誤誤差(bias error):模型對訓練資料的配適程度
  • 變異誤差(variance error):模型結果在新樣本下的變化程度
  • 基底誤差(base error):資料本身的隨機性

泛化#

泛化(generalization):模型在樣本外預測時保留解釋力的能力。

過度配適(overfitting)是泛化能力差的主因:模型為了迎合訓練資料的細節,犧牲了對新資料點的預測能力。一個常見徵兆是訓練誤差極低、但驗證誤差顯著惡化

k 折交叉驗證#

k 折交叉驗證(k-fold cross-validation)

  1. 將訓練資料(排除測試樣本)隨機打散並分為 $k$ 個等量子樣本
  2. 每次用其中 $k-1$ 個子樣本訓練、剩餘 1 個作驗證
  3. 重複 $k$ 次,取平均誤差

可緩解單次留出(holdout)會過度縮減訓練集的問題。

正則化#

正則化(regularization):在高維資料估計或預測問題中,藉由降低模型複雜度來減少統計變異。

監督式學習演算法#

懲罰式迴歸與 LASSO#

LASSO(least absolute shrinkage and selection operator):在迴歸的損失函數中加入係數絕對值之和的懲罰項:

$$ \min \sum_{i=1}^{n} (y_i - \hat{y}i)^2 + \lambda \sum{j=1}^{k} |\hat{b}_j| $$

特徵越多懲罰越重;每個特徵必須有足夠貢獻才能抵消其懲罰。$\lambda$ 為超參數。

支援向量機#

支援向量機(support vector machine, SVM):分類器,尋找以**最大邊距(margin)**分離兩類資料點的最佳超平面。常用於二元分類。

K-近鄰#

K-近鄰(K-nearest neighbor, KNN):在現有資料集中,找出新觀察值的 $k$ 個最近鄰,依其多數類別進行分類。

分類與迴歸樹#

**分類與迴歸樹(classification and regression tree, CART)**可同時處理分類與迴歸:

  • 結構:根節點(root node) + 決策節點(decision nodes) + 終端節點(terminal nodes)
  • 每個決策節點代表單一特徵 $f$ 與切點 $c$
  • 演算法迭代地將資料分割為子群,直到產生帶有預測標籤的終端節點

集成學習與隨機森林#

  • 集成學習(ensemble learning):結合多個模型的預測,通常比任一單一模型更準確、更穩定
  • 隨機森林(random forest):由多棵不同決策樹組成(透過 bagging 或隨機減少訓練特徵)

非監督式學習演算法#

主成分分析#

主成分分析(principal components analysis, PCA):將高度相關的特徵轉換為較少的不相關複合變數

  • 從特徵共變異數矩陣產生特徵向量(eigenvectors)——即主成分
  • 特徵值(eigenvalues)——表示每個主成分解釋的總變異比例

K-Means 群集#

K-Means:將觀察值劃分為 $k$ 個不重疊的群集,每個群集以其**質心(centroid)**為代表;每個觀察值歸屬於距其質心最近的群集。

階層式群集#

階層式群集(hierarchical clustering):建構群集的階層結構。兩種主要策略:

  • 聚合式(agglomerative, bottom-up):每個觀察值起初為獨立群集 → 合併最近的兩個群集 → 重複直到全部合併
  • 分裂式(divisive, top-down):所有觀察值起初為單一群集 → 分割為兩個 → 重複直到每群只剩單一觀察值

神經網路與深度學習#

神經網路結構#

**神經網路(neural networks)**由節點(nodes)與連結(links)組成,包含三類層:

  • 輸入層(input layer)
  • 隱藏層(hidden layers):學習發生的地方;每個節點包含一個加總運算子與一個激勵函數(activation function)
  • 輸出層(output layer)

神經網路特別擅長處理非線性關係特徵間複雜交互

深度神經網路#

深度神經網路(deep neural networks, DNNs):含許多隱藏層(至少 2 層,常超過 20 層)。為近年人工智慧革命的核心。

選擇 ML 演算法#

依目標性質選擇:

flowchart TD
    A[有標註資料?] -->|有| B[監督式學習]
    A -->|無| C[非監督式學習]
    B --> D{目標變數}
    D -->|連續| E[迴歸<br/>LASSO, CART 迴歸樹]
    D -->|類別| F[分類<br/>SVM, KNN, CART, 隨機森林]
    C --> G{任務}
    G -->|降維| H[PCA]
    G -->|群集| I[K-Means<br/>階層式群集]
    B --> J[複雜非線性?]
    J -->|是| K[神經網路<br/>深度學習]

本章重點回顧#

  • 機器學習自資料中學習結構,分為監督式、非監督式、深度學習與強化學習
  • 監督式學習依目標連續或類別細分為迴歸與分類;非監督式主要處理降維與群集
  • 樣本外誤差 = 偏誤 + 變異 + 基底;泛化能力反映模型對新資料的預測力
  • 過度配適是泛化失敗的主因;k 折交叉驗證與正則化是常見對策
  • LASSO 透過絕對值懲罰實現變數選擇;SVM 找最大邊距超平面分類;KNN 以鄰居相似度分類
  • CART 可處理分類與迴歸;隨機森林是基於 CART 的集成學習方法
  • PCA 將相關特徵轉為不相關主成分;K-Means 與階層式群集是兩大群集方法
  • 神經網路擅長處理非線性與複雜交互;深度神經網路含許多隱藏層,是現代 AI 的核心
  • 強化學習透過代理人與環境互動,最大化長期報酬