技術筆記 / 機器學習與資料科學

迷航指南:TensorFlow,XGBoost,Random Forest,KNN,SVM, 與 CMA-ES 的關係

—— 一次搞懂機器學習、深度學習與最佳化演算法的地圖

AI 開發的領域時,我們常會被各種名詞轟炸:TensorFlow, Keras, Scikit-learn, XGBoost, CMA-ES... 它們有些是「工具」,有些是「演算法」,有些是「數學概念」。

你是否也有這樣的疑問:

"TensorFlow 是不是只能拿來跑 LSTM?隨機森林跟 XGBoost 是另一掛的嗎?CMA-ES 又是什麼,它算機器學習嗎?"

這篇文章將為您拆解這張 AI 演圖。


1. 深度學習 vs. 傳統機器學習:工具的楚河漢界

首先,回答您的第一個核心問題:TensorFlow 是不是只能用在 LSTM 或 MLP?

TensorFlow / PyTorch:深度學習的重型武器

Scikit-learn / XGBoost:傳統機器學習的瑞士軍刀

隨機森林 (Random Forest)、KNN (K-Nearest Neighbors)、SVM 等演算法,通常被稱為「傳統機器學習 (Classical Machine Learning)」。

小結:


2. 它們全部都叫「機器學習」嗎?

是的,廣義來說,它們都在 人工智慧 (AI) ➔ 機器學習 (Machine Learning) 的大傘下。

但我們通常會這樣細分:

分類 代表演算法 特性 適用場景 (交易為例)
深度學習 (Deep Learning) LSTM, MLP, Transformer 黑盒子、參數極多、能自動提取特徵。 預測股價走勢、分析K線圖形、NLP 分析財報新聞。
傳統監督式學習 (Supervised ML) XGBoost, Random Forest, KNN 可解釋性較高、處理表格資料 (Tabular Data) 強項。 根據 MACD, RSI 等指標預測漲跌機率。
非監督式學習 (Unsupervised ML) Pattern Matching (特徵空間法), K-Means 沒有標準答案,尋找資料結構。 尋找歷史上相似的 K 線型態 (Pattern Matching)。

3. 異類突起:CMA-ES 也是機器學習嗎?

CMA-ES (Covariance Matrix Adaptation Evolution Strategy) 的定位比較特殊。

嚴格來說,它屬於 演化計算 (Evolutionary Computation) 或 黑盒最佳化 (Black-box Optimization),而不是典型的「監督式機器學習」。

關鍵差異:

所以,CMA-ES 算是 ML 嗎?

在廣義的 AI 領域中,它是「最佳化演算法」。但在現代用法中,它常被視為 強化學習 (Reinforcement Learning) 的一種替代方案,或者被歸類為 AI 中的 Search Algorithm。


4. 終極圖解:它們如何在其系統中協作?

這才是最精彩的部分。 中,這些技術往往是串聯使用的,而不是互斥的。

想像您的交易機器人是一個團隊:

角色 A:分析師 (Deep Learning / Traditional ML)

角色 B:圖形比對員 (Pattern Matching)

角色 C:教練 / 調參師 (CMA-ES)


總結

  1. TensorFlow 是深度學習的專武 (LSTM, MLP),別拿它殺雞焉用牛刀去跑隨機森林。

  2. Random Forest, KNN, XGBoost 是傳統機器學習的強者,通常使用 Scikit-learn 或 XGBoost 獨立套件。

  3. CMA-ES 不是用來預測行情的,它是用來尋找最強參數的最佳化演算法。

在 GitHub 看原文