2015.06.15 初版
2016.10.07 二版
一、機器學習簡介
機器學習是近20多年興起的一門多領域交叉學科,涉及機率論、統計學、逼近論、凸分析、計算複雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動「學習」的演算法。機器學習算法是一類從資料中自動分析獲得規律,並利用規律對未知資料進行預測的算法。
機器學習已廣泛應用於數據挖掘、計算機視覺、自然語言處理、生物特徵識別、搜尋引擎、醫學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰略遊戲和機器人等領域。
[定義] 機器學習定義
A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.
舉個例子,郵件系統是如何學習呢?套用以上定義:
- T(任務):將郵件分類為垃圾或非垃圾。
- E(經驗):觀察目前信箱的信是把哪些種類的郵件標記為垃圾,而哪些是非垃圾。
- P(效能):被正確分類成垃圾或非垃圾的郵件的數量。
下面是一個學習的範例流程:
二、機器學習的類別
無監督學習 (unsupervised learning):與監督學習相比,訓練集沒有人為標註的結果。常見的無監督學習算法有聚類。
半監督學習 (Semi-supervised learning):介於監督學習與無監督學習之間。
增強學習 (reinforcement learning):通過觀察來學習做成如何的動作。每個動作都會對環境有所影響,學習對象根據觀察到的周圍環境的反饋來做出判斷。
2.1 具體的機器學習演算法
- 構造條件機率:回歸分析和統計分類
- 人工神經網絡
- 決策樹
- 高斯過程回歸
- 線性判別分析
- 最近鄰居法
- 感知器
- 徑向基函數核
- 支持向量機
- 通過再生模型構造機率密度函數:
- 最大期望算法
- graphical model:包括貝葉斯網和Markov隨機場
- Generative Topographic Mapping
- 近似推斷技術:
- 馬爾可夫鏈
- 蒙特卡羅方法
- 變分法
- 最優化:大多數以上方法,直接或者間接使用最優化算法。
三、監督式學習 (Supervised learning)
監督式學習是一個機器學習中的方法,可以由訓練資料中學到或建立一個模式(learning model),並依此模式推測新的資料。訓練資料是由輸入和預期輸出所組成。函數的輸出可以是一個連續的值(也就是迴歸分析,regression),或是預測一個分類標籤(也就是分類, classification)。
一個監督式學習者的任務在觀察完一些訓練資料後,去預測這個函數對任何可能出現的輸入的值的輸出。要達到此目的,學習者必須以"合理"的方式從現有的資料中一般化到非觀察到的情況。在人類和動物感知中,則通常被稱為概念學習(concept learning)。
以下是監督式學習的數學模型:
- $x^i$:表示輸入的資料,也稱為輸入特徵。
- $y^i$:表示輸出的資料,也稱為目標變數,也就是我們想要估計的東西。
- $(x^i,y^i)$:將一個 $x(i)$ 與 $y(i)$ 配對之後,稱為一組訓練實例(training example)。
- $\{(x^i,y^i):i=1,...,m\}$:所有的練實例合起來稱為訓練組(training set),也就是指整個用來學習的資料庫。
- $X$:代表輸入資料的空間(space)。
- $Y$:代表輸出資料的空間。
在這裡我們就是要找到一個從$X$映射到$Y$的函數$h(x)$,而這個函數可以靠著 $x$ 來預測 $y$,傳統上這個 $h$ 就稱為一個假設(hypothesis),而整個流程就像這個圖:
3.1 過適 (overfitting)
知識發掘的方法在建立模型的過程中容易出現過適的情形,模型可能陷入只能解釋在訓練集樣本的關聯,而沒辦法一體適用。也就是說,機器學習所學到的假設(Hypothesis)過度貼近訓練資料(Training Data),而導致測試資料(Testing Data)錯誤率變得更大。
一個荒謬的模型模型只要足夠複雜,是可以完美地適應訓練資料。過適一般可以識為違反奧卡姆剃刀原則。為了避免過適現象,須要使用額外的技巧(如交叉驗證、early stopping、貝斯信息量準則、赤池信息量準則或model comparison)以指出何時會有更多訓練而沒有導致更好的一般化。
奧卡姆剃刀原則 : 若無必要,勿增實體。如果對於同一現象有兩種不同的假說,我們應該採取比較簡單的那一種。
3.2 偏差和變異之權衡 (Bias-Variance Tradeoff)
在給定一個固定數量的訓練例子,一個過度大數量的子空間會造成過擬合(overfit),或一個不足夠數量的子空間會造成不足擬合(underfit),因此在一個模型的選擇上需要進行偏差和變異的權衡。顯然複雜的模型能更好的擬合訓練集合,但是同時高複雜度的模型泛化能力差,造成了高變異。
舉兩個極端的例子:
- 記住訓練集合上所有資料的標籤,這樣的系統是低偏差、高變異。
- 無論輸入什麼資料,總是預測一個相同的標籤,這樣的系統是高偏差、低變異。
圖中橫坐標的右側是過度擬合overfit的情況,而左側是不足擬合underfit的情況。
References
Wiki - 機器學習
https://zh.wikipedia.org/wiki/机器学习
Machine Learning at UofT
http://learning.cs.toronto.edu
史丹佛大學機器學習(Machine Learning)上課筆記(一)
Wiki - 過適與監督學習
逍遙文工作室 - 偏差和變異之權衡 (Bias-Variance Tradeoff)