一、 線性回歸與邏輯回歸:
機器學習中的監(jiān)督部分大多從樣本數(shù)據(jù)開始,首先構建滿足一定假設且邏輯合理、理論完備的“帶參”假設函數(shù),定義該假設函數(shù)下評價模型好壞的損失函數(shù),然后代入樣本使用迭代更新(牛頓或梯度下降法)或代數(shù)法(直接求解最優(yōu)參數(shù)表達式),求解最小化損失函數(shù)下的參數(shù)取值,最終使用該假設函數(shù)預測新樣本數(shù)值或類別。線性回歸是最簡單的機器學習算法,它最重要的假設是定義自變量x無誤差(噪聲),同時因變量y的誤差e滿足均值為0的正態(tài)分布,方差齊性,且與自變量無關,在此假設下構建線性假設函數(shù),求解最小化時的參數(shù)向量a,最終利用對新輸入特征作預測。但線性回歸預測的結果是連續(xù)的,并不能解決監(jiān)督學習中最普遍的分類問題。那有沒有辦法利用回歸的思想來構建分類模型呢?答案是邏輯回歸:使用logit變換的回歸算法。其實算法本身很簡單,無非是將樣本數(shù)據(jù)代入后,再,最后根據(jù)g(z)的大小來決定類別歸屬,閾值通常取0.5。仔細思考整個學習過程,有4個顯而易見的問題:
1、為什么它是一個回歸問題;
2、為什么要構建回歸方程后才代入g(z),即sigmoid函數(shù);
3、為什么要使用g(z)而不使用別的;
4、為什么使用最大似然而不是最小二乘求解系數(shù)。
首先介紹廣義線性模型對其概率函數(shù)的3個假設:(3)指數(shù)分布集中的參數(shù),即滿足回歸條件。前3個問題,從理論上講,線性回歸模型認為誤差項e服從均值為0的正態(tài)分布,因此,在給定x和時,因變量y也服從均值為的正態(tài)分布。邏輯回歸模型假定y服從伯努利分布,兩者均滿足廣義線性模型第一條假設。于是,將兩者的概率密度函數(shù)寫成指數(shù)分布集的形式并對應各部分,同時利用正態(tài)分布和伯努利分布的特點,前3個問題迎刃而解,具體可參考吳恩達廣義線性模型部分的筆記。直觀上,邏輯回歸建立的初衷是如何使用回歸方法求解二分類問題,如何將無窮定義域上的x映射為y=1的概率,如何使得y屬于正類時p(y|x)盡可能趨近于1,屬于負類時趨近于0才是問題的關鍵。正巧sigmoid函數(shù)滿足上述一切條件,僅此而已。
第4個問題,線性回歸模型可以從最大似然的角度解釋,只是它從誤差項e服從0均值正態(tài)分布的假定出發(fā),構建誤差項的最大似然函數(shù),同樣可以得到與最小二乘法一模一樣的最優(yōu)解。而邏輯回歸的目的是確定y的類別歸屬,屬于二分類問題,因此就無法使用經(jīng)典回歸連續(xù)y的最小二乘法,改用最大似然或重新構建損失函數(shù)的方法了,最終發(fā)現(xiàn)又是殊途同歸,求解同一個最優(yōu)化問題。
需要注意的是,在邏輯回歸中,由于sigmoid函數(shù)的特殊性,平方誤差非凸,因此只能考慮其他的損失函數(shù)類型,即log誤差,來構建損失函數(shù)。特別的,任何一個樣本數(shù)據(jù)都可以通過添加其他特征或提升特征的冪次等提升特征維度的方式完美擬合,但這極易產(chǎn)生過擬合,模型范化能力丟失,俗稱“維度詛咒”。因此,任何優(yōu)雅的最優(yōu)化問題都不應該僅僅是使誤差最小化,還要考慮模型的范化能力,避免過擬合,所以損失函數(shù)通常會在基本誤差函數(shù)的基礎上添加一個正則化項。其中,L1正則化lasso,它有棱有角的凸集可以稀疏模型特征系數(shù),即在參數(shù)估計的同時完成模型選擇,但缺點在于無法直接得到解析解,只能通過數(shù)值迭代求解。L2正則化ridge則是剛好相反,它可以快速得到參數(shù)的解析解,但參數(shù)估計完成后還需要額外處理模型選擇。
最后就是如何從邏輯回歸的二分類問題擴展到多分類。通常可以使用one vs. one和one vs. rest方式來擴展。前者關注將多類別中的任意2類分開,而不管其他,再重復迭代;后者關心將1類從其他類別中分開,再反復處理。
二、 深入理解SVM:
機器學習理論中首先要明確一個方法的Big Ideas,正如在編程領域中先將算法思想可以用偽代碼的方式描述出來一樣,Big Ideas表示整個學習方法的Intuition,而數(shù)學僅僅是描述這種Intuition的工具而已。因此,機器學習中數(shù)學的作用在于,先要知道什么問題可以用數(shù)學解決并大致了解如何解決。
因為Garbage In, Garbage Out的古話,機器學習關注最多的一個問題就是如何預處理原始數(shù)據(jù),將樣本特征有效提取出來喂給模型。比如,神經(jīng)網(wǎng)絡模型就是利用卷積的方法優(yōu)化了原始數(shù)據(jù)的特征表示。若某一種機器學習算法能比其他方法在某一類現(xiàn)實問題上有更強的表現(xiàn),即Killer App,通常就會大受歡迎。在神經(jīng)網(wǎng)絡最熱的時間里,能更有效解決手寫識別問題的SVM橫空出世。
監(jiān)督學習和決策邊界:不同的機器學習算法有各自不同的決策邊界,即在特征空間中區(qū)分樣本的方式不同。比如,決策樹算法中通常選取與特征空間坐標軸平行的線面為決策邊界,而KNN通常會以一個大致單調(diào)的線面區(qū)分。決策邊界也大致奠定了學習模型背后的數(shù)學思路,所以SVM就新提出了一種決策邊界的區(qū)分方式— 最大間隔!
假設在線性可分的樣本空間中,如何定義模型對樣本區(qū)分的優(yōu)劣呢?以二維特征空間的二分類問題為例,SVM提出在分割線兩側,最接近的樣本要離該分割線最遠。即,分割線兩側存在這樣一個閾值,閾值內(nèi)無任何其他樣本,同時該閾值越大越好。數(shù)學上表示為為正樣本,為負樣本。w表示與分割線垂直的法向量,u為特征空間中的坐標,b代表分割線上任意點在w方向上的投影,1為增強模型魯棒性的歸一化指標,算法目標就是求解w與b。
決策公式:上述兩個最大間隔表示為,其中(y=1:正樣本; y=-1:負樣本)。所以,當 時,表示樣本正好落在最大間隔上,即為最大間隔上的樣本點。(請注意,這里并不一定是支持向量?。?/p>
目標函數(shù):目標是最大間隔上樣本點的投影差最大,即距離最遠。投影差= ,其中w為與分割線垂直的法向量,u和u’分別為y=1和-1的最大間隔點。將決策公式代入投影差化簡= 。因此,要使投影差最大,即|w|最小,考慮到凸函數(shù)與優(yōu)化的方便性,最終的目標函數(shù)= 。
優(yōu)化理論:最優(yōu)化拉格朗日L=,分別求出w和b偏導=0的極值條件得: ,將其反代入L求得L’,因此原問題就轉換為求解各自樣本點所對應 的對偶問題,原問題的定義域是樣本空間內(nèi)的所有點,而可行域是最大間隔樣本點。機器學習的意義之一就是拿著最優(yōu)化的結論代入機器學習的目標中,有時會窺見某些專屬于機器學習新世界里的東西。
比如這里:因為SVM僅僅根據(jù)“最大間隔”就將如此美妙的數(shù)學推導與機器學習理論完美的糅合在一起,實在讓人嘆為觀止。