Featured image of post 當我們談起機器學習時,我們在說什麼🤖

當我們談起機器學習時,我們在說什麼🤖

關於機器學習核心工作的思考

引子

作為data science的學生,機器學習無疑是最核心的專業能力之一。25Spring終於上了心心念念的DDA3020 Machine Learning,但課程卻不如我的預期。這門課更像背誦課,學習各種算法是什麼,讓你去背它的推導公式(佔比50%的期末考試就是這麼設置的),而我預期的機器學習工程本質工作和實際訓練流程卻沒有講述,對於算法是淺嘗輒止,沒有深刻思考背後的原因和區別。這些能力主要還是要從自學和實踐中習得,再加上我從不上課,以及課程目的只是帶你入門過一遍的緣故,我想也不能全然怪學校。

機器學習這個領域很值得探索,畢竟是現代科技(AI, Fintech)特別前沿的知識,並且我對於機器學習在投資領域的應用,以及數據背後的模式分析特別感興趣。

我做的第一個ML價格模式分析領域的項目是利用LSTM來預測BTC價格(處理時序數據),也是我近期(2025.5.29)在做的項目,在調參的時候不禁有了“機器學習工程本質是在做什麼”的思考,因此便有了此文章。

機器學習能力的層次

level 1 代碼實現和工程化

了解算法的原理,知道怎麼用代碼實現和訓練。

不過現在豐富的python庫使得我們根本不用手動復現算法代碼,只要學習使用tensorflow, sklearn, pandas等python庫就可以了;

level 2 Model Tuning 模型選擇和調參

知道面對目前的場景使用什麼算法最合適,並且能夠做模型性能分析,調整參數和超參數來提高模型的Performance;

level 3 特徵工程和數據理解

data science, science of data! 核心就是data,對data的理解是核心競爭力。

給你一系列data,能否分析出什麼特徵具有真正的預測力?

如何做數據清洗,處理噪音和異常值?

如何提取真正有效的信息?

level 4 洞察與決策(業務能力)

數據和模型告訴我們什麼insight? 如何將預測轉化為/輔助可執行策略?

風險在哪?如何處理不確定性?

AI輔助下的level要求分析

可以發現,level 1 & 2是AI能夠很快給出建議和實現的工作,而leve 3 & 4則需要相當深刻的經驗和洞察來達到。

我目前的能力水平應該處於level 1到level2 & 3交叉,這需要很多實踐經驗積累。

特徵工程

特征工程就是从原始数据中提取和构造有预测力的特征的过程。

特徵與原始數據的關係

特徵可以說是數據的變換衍生,一個特徵相當於一個描述數據的維度。

比如原始數據是price和volume,這就相當於兩個原始特徵,而通過這兩個可以構造EMA,RSI和Price_Change_Rate等特徵,這些就是衍生特徵。

現在我們擁有五個特徵,也就是有了五種描述數據的維度。

特徵工程一般是從原始數據增加維度,而將特徵(如價格、均線、RSI)可視化分析的過程,就叫做“數據可視化”。但是太多特徵會有共線性的問題,並且維度越高,數據之間距離的差異就越小,過擬合風險會大大增大,所以我們可以用PCA來降維(原理是讓找到數據分佈方差最大的方向,利用了線性代數的SVD)

維度的統一理解(from AI)

“🎯 核心概念”: { “特征 = 维度”: “每个特征都是数据空间中的一个维度”, “数据点”: “在高维空间中的坐标点”, “机器学习”: “在高维空间中寻找模式和边界” },

🔄 维度变换

特征工程:增加维度,丰富数据表示 特征选择:选择重要维度,去除冗余 降维:压缩维度,保留主要信息 正则化:限制模型在高维空间的复杂度

⚖️ 平衡艺术

信息 vs 噪声:更多特征 = 更多信息 + 更多噪声 表达 vs 泛化:高维表达能力强,但泛化能力可能弱 计算 vs 性能:维度增加,计算复杂度指数增长

🚀 实践原则

领域驱动:基于业务理解创造有意义的特征 数据驱动:用数据验证特征的有效性 性能导向:以最终模型性能为评判标准 可解释性:在复杂度和可解释性间平衡

本質工作

这才是最本质的工作:❓ 我们要解决什么问题?📊 数据告诉我们什么故事?🎯 什么样的模式是我们真正想要捕捉的? 例如:BTC预测:不是简单的"价格预测",而是"在给定历史模式下,未来短期趋势的概率分布",需要理解:市场情绪、技术指标、宏观因素的交互作用。

ML的真正價值(from AI)

  1. 問題抽象能力 🧠
  • 將複雜業務問題轉化為數學問題
  • 理解問題的本質和約束條件
  1. 數據洞察能力 🔍
  • 從雜訊中提取信號
  • 發現隱藏的模式和關係
  1. 特徵工程創造力 🎨
  • 設計有預測力的特徵
  • 處理數據質量問題
  1. 模型選擇判斷力 🎯
  • 在複雜度和性能間平衡
  • 理解不同算法的適用場景
  1. 系統思維能力 🚀
  • 考慮模型的全生命週期
  • 處理模型的不確定性和風險

核心能力總結

  • 技術深度:理解算法原理,但不必重複造輪子
  • 業務廣度:連接技術與實際價值創造
  • 創新思維:在約束條件下找到最優解
  • 系統觀念:考慮模型的長期可維護性

高級ML工程師的思維模式(from AI)

  1. 問題分解能力 🎯

不是簡單思考「如何用LSTM預測BTC?」 而是要思考:

  • 什麼因素真正驅動BTC價格?
  • 我們的預測時間窗口應該是多長?
  • 模型的錯誤會造成什麼後果?
  • 如何在不確定性中做決策?
  1. 模型解釋能力 🔍

需要能夠解釋:

  • 模型預測了什麼
  • 為什麼這樣預測
  • 什麼時候預測失效
  • 預測的可信度如何
  1. 持續學習能力 📈

形成學習循環:

  • 觀察模型在真實世界的表現
  • 分析預測錯誤的原因
  • 調整特徵工程策略
  • 重新訓練和驗證模型

核心是問題解決的能力

庫和工具只是筆,真正的藝術在於你要畫什麼畫!🎨

和hacker的理念異曲同工呀:)

Last updated on May 30, 2025 00:00 UTC
comments powered by Disqus