方法 = 模型 + 策略 + 算法算法
所要學習的條件機率分佈或決策函數,模型的假設空間包含全部可能的條件機率分佈或決策函數。函數
\(F = \{ ~f~ | ~Y = f(X)~ \}\), \(F = \{ ~f~ | ~Y = f_{\theta}(X), \theta \in R^{n}~ \}\)學習
條件機率測試
\(F = \{ ~P~ | ~P(Y~|~X)~ \} \), \(F = \{ ~P~ | ~P_{\theta}(Y~|~X), \theta \in R^{n}~ \}\)spa
爲了從假設空間中選取最優模型,須要引用一些手段來評估模型。it
損失函數度量模型一次預測的好壞,經常使用的損失函數有:io
1. 0 - 1損失函數(0-1 loss function)function
\(L(Y,~f(x)) = \left\{\begin{array}{lcl} {~1, ~Y \neq f(x)~} \\ {~0, ~Y = f(x)~} \end{array} \right \} \)變量
2. 平方損失函數(quadratic loss function)lambda
\(L(Y,~f(x)) = (Y~-~f(x))^{2}\)
3. 絕對損失函數(absolute loss function)
\(L(Y,~f(x)) = |Y~-~f(x)|\)
4. 對數損失函數(logarithmic loss function)或對數似然損失函數(log-likelihood loss function)
\(L(Y,~f(x)) = -\log P(Y~|~x)\)
損失函數值越小,模型就越好。因爲模型的輸入,輸出\((X,~Y)\)是隨機變量,遵循聯合分佈\(P(X,~Y)\),因此損失函數的指望是
\(R_{exp}(f) = E_{p}[L(Y,~f(X))] = \int _{x \times y}L(y,~f(x))P(x,~y)dxdy\)
這是理論上模型\(f(x)\)關於聯合分佈\(P(X,~Y)\)的平均意義下的損失,稱爲風險函數(risk function)或指望損失(expected loss)。學習的目標就是選擇指望風險最小的模型,因爲聯合分佈\(P(Y~|~X)\)是未知的,\(R_{exp}(f)\)不能直接計算。
模型\(f(x)\)關於訓練數據集的平均損失稱爲經驗風險(empirical risk)或經驗損失(empirical loss),記做\(R_{emp}\):
\(R_{emp}(f) = \frac{1}{N} \sum\limits_{i=1}^{n} L(y_{i},~f(x_{i}))\)
指望風險\(R_{exp}(f)\)是模型關於聯合分佈的指望損失,經驗風險\(R_{emp}(f)\)是模型關於訓練樣本集的平均損失。根據大數定律,當樣本容量N趨於無窮時,經驗風險\(R_{emp}f(x)\)趨於指望風險\(R_{exp}f(x)\),因此一個很天然的想法是用經驗風險估計指望風險。可是,因爲現實中訓練樣本數目有限甚至很小,因此用經驗風險估計指望風險經常並不理想,要對經驗風險進行必定的矯正,這就關係到監督學習的兩個基本策略:經驗風險最小化和結構風險最小化。
在假設空間,損失函數以及訓練數據集肯定的狀況下,經驗風險函數式就能夠肯定,經驗風險最小化(empirical risk minimizatiion, ERM)的策略認爲,經驗風險最小的模型是最優模型。
\(\min\limits_{f \in F} \frac{1}{N} \sum\limits_{i=1}^{n} L(y_{i},~f(x_{i}))\)
當樣本容量是夠大時,經驗風險最小化能保證有很好的學習效果,在現實中被普遍應用,好比,極大似然估計(maximum likelihood estimation)就是經驗風險最小化的一個例子,當模型是條件機率分佈,損失函數是對數損失函數時,經驗風險最小化就等價於極大似然估計。
可是,當樣本容量很小時,經驗風險最小化學習的效果就未必很好,會產生「過擬合(over-fitting)」現象。
結構化風險最小化(structural risk minimization, SRM)是爲了防止過擬合而提出來的策略。結構風險在經驗風險上加上表示模型複雜度的正則化項(regularizer)或罰項(penalty term)。在假設空間,損失函數以及訓練數據集肯定的狀況下,結構風險的定義是:
\(R_{srm}(f) = \frac{1}{N} \sum\limits_{i=1}^{n}L(y_{i},~f(x_{i}))~+~ \lambda J(f)\)
其中\(J(f)\)爲模型的複雜度,是定義在假設空間 F 上的泛函,模型 f 越複雜,複雜度\(J(f)\)就越大;反之,模型 f 越簡單,複雜度\(J(f)\)就越小,也就是說,複雜度表示了對複雜模型的懲罰,\(\lambda \geq 0\)是係數,用以權衡經驗風險和模型複雜度,結構風險小須要經驗風險與模型複雜度同時小,結構風險小的模型每每對訓練數據以及未知的測試數據都有較好的預測。
結構風險最小化的策略認爲結構風險最小的模型是最優的模型:
\(\min\limits_{f \in F} \frac{1}{N} \sum\limits_{i=1}^{n}L(y_{i},~f(x_{i}))~+~ \lambda J(f)\)
算法是指學習模型的具體計算方法,統計學習基於訓練數據集,根據學習策略,從假設空間中選擇最優模型,最後須要考慮用什麼樣的計算方式求解最優模型。