機器學習入門(1)-初探機器學習
機器學習定義與三大類型,介紹監督與無監督學習應用,並探討損失函數與梯度下降等核心概念。
什麼是機器學習?
機器學習是一個讓電腦能夠在沒有明確編程的情況下學習的研究領域。Arthur Samuel 在 1959 年提出的經典定義:「Field of study that gives computers the ability to learn without being explicitly programmed」,至今仍然被廣泛引用。
機器學習的問題主要可以歸類為以下三大類型:
- 監督式學習(Supervised Learning):基於有標籤的數據進行訓練,目的是學習輸入與輸出之間的關係。
- 無監督式學習(Unsupervised Learning):基於無標籤的數據進行訓練,目的是探索數據的結構或模式。
- 強化學習(Reinforcement Learning):透過與環境互動,學習策略以最大化獎勵。
此外,還有一些延伸方法,例如半監督式學習(Semi-Supervised Learning)和自監督學習(Self-Supervised Learning),這些技術在特定場景中發揮了重要作用,但不在本次討論範圍內。
機器學習的概念
- 先選擇一個模型(Model),也可以稱作函數集,它擁有無窮個函數(function)
- 透過機器找出最好的函數
- 再透過這個最好的函數,幫我們做出預測
監督式學習(Supervised Learning)
監督式學習是一種基於有標籤數據的訓練方式,其目的是學習輸入與輸出之間的對應關係,並用於預測新數據的結果。 常見的應用場景包括:
迴歸 (Regression)
用於預測連續值,例如房價預測、銷量預測。
分類 (Classification)
用於預測類別,例如垃圾郵件分類、影像中的物體識別。
無監督式學習(Unsupervised Learning)
無監督式學習是一種基於無標籤數據的訓練方式,其目的是探索數據的內部結構或模式。
常見方法包括:
- 聚類(Clustering):將數據分組,例如客戶分群。
- 降維(Dimensionality Reduction):壓縮數據維度,例如主成分分析(PCA)。
其他
- 半監督式學習(Semi-Supervised Learning):結合少量有標籤數據與大量無標籤數據進行訓練,應用於標籤成本較高的場景。
- 遷移學習(Transfer Learning):將已有模型的知識應用到新問題上,尤其在數據稀少的情況下非常有效。
- 強化學習(Reinforcement Learning):通過不斷與環境互動,學習如何採取最佳行動來獲取最大化回報。
損失函數(Loss Function)
損失函數用於衡量模型的預測結果與實際目標之間的差距,是模型優化的關鍵指標。如:
- 均方誤差 (Mean Squared Error, MSE):用於迴歸問題。
- 交叉熵損失 (Cross-Entropy Loss):用於分類問題。
優化算法
梯度下降法(Gradient Descent)
梯度下降是一種用於最小化損失函數的優化算法,通過不斷調整模型參數以逐步接近最優解。
常見的變體包括:
- 批量梯度下降(Batch Gradient Descent)
- 隨機梯度下降(Stochastic Gradient Descent, SGD)
- 小批量梯度下降(Mini-Batch Gradient Descent)