一. 引言
1.機器學習是什么
Arthur Samuel:在進行特定編程的情況下污秆,給予計算機學習能力的領域。
Tom Mitchell:一個程序被認為能從經驗E中學習痰驱,解決任務T既鞠,達到性能度量值P,當且僅當朦肘,有了經驗E后饭弓,經過P評判,程序在處理T時的性能有所提升媒抠。
2.機器學習導圖
圖的左半部分列出了常用的機器學習算法與它們之間的演化關系弟断,分為有監(jiān)督學習,無監(jiān)督學習趴生,強化學習3大類阀趴。右半部分列出了典型算法的總結比較,包括算法的核心點如類型冲秽,預測函數(shù)舍咖,求解的目標函數(shù),求解算法锉桑。
另一個角度總結:
3.機器學習分類及應用
分類
監(jiān)督學習:對于有標簽的數(shù)據進行學習排霉,目的是能夠正確判斷無標簽的數(shù)據。通俗的講,老師教授學生知識攻柠,并告知學習過程中的對與錯球订,讓學生可以從所學知識的經驗和技能中對沒有學過的問題進行正確回答,這就是監(jiān)督學習瑰钮,用于預測數(shù)據的回歸冒滩、分類標簽的分類、順序的排序等問題浪谴。
無監(jiān)督學習:對于無標簽的數(shù)據進行學習开睡,目的是不僅能夠解決有明確答案的問題,也可以對沒有明確答案的問題進行預測苟耻。通俗的講篇恒,學生通過自學學習知識,達到可以正確回答有答案的問題凶杖,也可以對無答案的問題進行預測歸類胁艰。常用于聚類、異常檢測等智蝠。
強化學習:學生學習知識時腾么,沒有老師對其進行對與錯的判定,需要學生根據自己所擁有的信息自己判定對于錯杈湾,如果能夠判定出來解虱,則為有監(jiān)督學習;如果判定不出來對與錯漆撞,則為無監(jiān)督學習饭寺。常用于機器人的自動控制、游戲的人工智能叫挟、市場戰(zhàn)略的最優(yōu)化等。
應用
監(jiān)督學習應用:手寫文字識別限煞、聲音處理抹恳、圖像處理、垃圾郵件分類與攔截署驻、網頁檢索奋献、基因診斷、股票預測......(回歸旺上、分類瓶蚂、排序)
無監(jiān)督學習應用:人造衛(wèi)星故障診斷、視頻分析宣吱、社交網站解析窃这、聲音信號解析.....(聚類、異常檢測)
強化學習應用:機器人的自動控制征候、計算機游戲中的人工智能杭攻、市場戰(zhàn)略的最優(yōu)化(回歸祟敛、分類、聚類兆解、降維)
4.機器學習方法
- 生成式分類
- 判別式分類
生成式分類和判別式分類
已知模式x, 求分類類別y的條件概率最大的類別:
條件概率改寫為y的函數(shù):
聯(lián)合概率p(x,y)和后驗概率p(y|x)成正比,故直接求聯(lián)合概率最大值即可:
條件概率p(y|x)也稱后驗概率, 聯(lián)合概率p(x,y)也稱數(shù)據生成概率
直接對后驗概率學習的過程稱為判別式分類
通過預測數(shù)據生成概率學習的過程稱為生成式分類
數(shù)據生成概率已知時可推出后驗概率: , 反之不可以.
統(tǒng)計概率和樸素貝葉斯
- 統(tǒng)計概率方法
已知樣本, 求運用最大似然方法來求模式:
目標: 由訓練集得到高精度的
- 樸素貝葉斯方法
計算模式的先驗概率,運用貝葉斯定理來求數(shù)據集D的后驗概率:
目標: 如何精確計算后驗概率
5.強化學習(RL),監(jiān)督學習(SL)和無監(jiān)督學習(UL)的區(qū)別和聯(lián)系
下面這段話解釋了得很清楚:
Reinforcement learning is a problem. Deep learning is an approach to solving problems.There is a deep learning approach to supervised learning, unsupervised learning, semi-supervised learning, and reinforcement learning.
劃重點:
- Supervised Learning: given data, predict labels
- Unsupervised Learning: given data, learn about that data
- Reinforcement learning: given data, choose action to maximize expected long-term reward
- RL更像控制系統(tǒng)家族里的,流著控制的血液馆铁,披著機器學習的外衣,需要data锅睛,training以此來支持決策埠巨。RL可以decision-making,不同于決策樹之類的決策现拒,是控制角度的決策辣垒,意味著就有失誤,伴隨著收益與懲罰(股票具练,博弈乍构,游戲得分等等)。
細一點來說扛点,RL與SL的區(qū)別有:
- 喂數(shù)據的方式不同:強化學習(RL)的數(shù)據是序列的哥遮、交互的、并且還是有反饋的(Reward)-【MDP]陵究。這就導致了與監(jiān)督學習(SL)在優(yōu)化目標的表現(xiàn)形式的根本差異:RL是一個決策模型眠饮,SL更偏向模式挖掘,低階的函數(shù)逼近與泛化铜邮。RL是agent自己去學習仪召,SL是跟著programmer的idea在收斂。
- RL的target是估計得來的松蒜,符合bellman等式扔茅,SL的target是fixed label;RL可以融合SL來訓練秸苗,RL還可以自己博弈來生成樣本召娜。[交互特性,也可以放到第一點中]
- RL可以進行l(wèi)ifelong形式的學習惊楼。RL有“生命”的【你可能也不知道你訓練出來的模型到底能干什么】玖瘸,SL沒有。
二. 機器學習模型
1. 線性模型
一維輸入+基函數(shù)形式:
非線性時, 可以表示復雜模型
基函數(shù):
(1) 多項式
(2)三角多項式
多維輸入形式:
是基函數(shù)向量的第j個因子, 是參數(shù)向量的第j個因子.
基函數(shù):
(1) 乘法模型
模型表現(xiàn)力豐富, 其中, b'代表各維參數(shù)個數(shù), 參數(shù)總和, 易導致維數(shù)災難.
(2) 加法模型
參數(shù)總和, 復雜度小, 表現(xiàn)力差
2. 核模型
線性模型基函數(shù)和訓練樣本無關,核模型的基函數(shù)會使用輸入樣本.
核模型是二元核函數(shù), 以的方式線性結合:
高斯核:
, 其中表示范數(shù), h和c是高斯函數(shù)帶寬和均值
高斯核函數(shù)圖:
一維高斯核
如圖, 只在各個樣本
參數(shù)個數(shù)不依賴輸入變量維數(shù)d, 只由樣本數(shù)n決定
樣本數(shù)n很大時, 將樣本的子集作為核均值計算, 抑制了計算負荷:
核模型是參數(shù)向量的線性形式, 因此也是基于參數(shù)的線性模式的特例.
基于參數(shù)的線性模型稱為參數(shù)模型, 核模型稱為非參數(shù)模型
核映射: 核模型易擴展,當輸入樣本不是向量時(字符串,決策樹, 圖表等),通過構造兩個樣本x和x'的和核函數(shù)來建模.
3. 層級模型
非線性模型: 和參數(shù)相關的不是線性的模型均稱為非線性模型
非線性模型中的層級模型:
上式中, 是包含參數(shù)向量的基函數(shù), 是參數(shù)向量
層級模型是基于參數(shù)向量的非線性形式
S型基函數(shù):
高斯基函數(shù):
使用S型核函數(shù)的層級模型稱為人工神經網絡
上式中的高斯函數(shù)和核模型中的高斯核相同,但是帶寬和均值非固定
層級模型會對耦合系數(shù),帶寬和均值都進行學習, 因此層級模型比核函數(shù)更靈活.
人工神經網絡學習過程艱難: 參數(shù)和函數(shù)不是一一對應的
常采用貝葉斯方法學習人工神經網絡
三. 最小二乘法(LS)
1. 無約束最小二乘法
對模型均方誤差最小化時的參數(shù)學習的方法.
若無特別說明, 下文提到的最小二乘法通指無約束的.
均方誤差:
LS: Least Squares
學習目標:
平方誤差是殘差的范數(shù), 最小二乘法也稱 損失最小化學習法
加權最小二乘法
對訓練樣本平方差通過權重加權, 再使用最小二乘法:
核模型的最小二乘法求解:
上式, 將設計矩陣置換為核矩陣K:
線性模型中的應用
平方誤差:
構成的nxb階設計矩陣:
關于參數(shù)向量的偏微分:
時取得最小值, 此時最小二乘解滿足
解得:
注: 只有有逆矩陣時上式才成立
廣義逆矩陣: 是對逆矩陣的推廣, 只有方陣, 非奇異矩陣才有逆矩陣, 單矩形矩陣或奇異矩陣都可以定義廣義逆矩陣
令廣義逆矩陣為:
, 則可寫為:
最小二乘法學習基于三角多項式基函數(shù)的線性模型:
無約束最小二乘法解的性質
設計矩陣的奇異值分解:
分別稱為奇異值, 左奇異向量, 右奇異向量.
- 奇異值非負
- 奇異向量滿足正交性
的廣義逆矩陣:
是標量的廣義逆矩陣,
最小二乘解表示為:
模型輸出向量變換為列向量:
因此, 是的正交投影矩陣, 最小二乘法輸出向量是值域的正交投影得到的.
帶入真實函數(shù)中的參數(shù):
可知, 真的輸出值向量就存在于中
結論: 用最小二乘法的向量若是由的正投影得到的, 則可以有效去除y中的噪音:
噪聲期望為0是, 就是真是參數(shù)的無偏估計:
上式, E為噪聲的期望
漸近無偏性:
增加訓練樣本n, 上式$E[\hat \theta_{LS}]會向著模型中最優(yōu)參數(shù)方向收斂的性質
大規(guī)模學習
一般線性模型為凸函數(shù).
凸函數(shù): 連接任意兩點的線段一定在函數(shù)上不:
凸函數(shù)只有一個峰值,因此通過梯度法一定可以得到均方差在值域范圍內的全局最優(yōu)解
梯度法的收斂速度強烈依賴梯度下降步長, 以及收斂結果判定方式(提前終止).
2.帶約束條件的最小二乘法
單純的最小二乘法容易過擬合, 帶約束的最小二乘法能控制模型復雜度, 降低過擬合.
部分空間約束的LS
含參線性模型, 使用全體參數(shù)空間:
將參數(shù)空間限制在一定范圍內, 防止過擬合:
P是維矩陣,是P的值域的正交投影矩陣
部分空間約束的最小二乘法解通過將設計矩陣置換為求得:
下圖展示了添加部分空間約束對模型的影響:
上圖用三角多項式作為基函數(shù):
圖(b)添加了約束條件, 將參數(shù)限制在
的部分空間內:
L2約束的LS
1. 標準L2約束的LS
部分空間約束的LS(最小二乘法), 正交投影矩陣P的設置自由度高, 操作難度大, 基于L2約束的LS相對較容易.
約束條件如下:
L2參數(shù)空間:
如圖, 是一個參數(shù)空間原點為圓心,R為半徑內的圓(一般為超球)
引入拉格朗日對偶問題:
利用拉格朗日對偶問題, 求解:
的最優(yōu)解問題, 可得到最優(yōu)化問題的解.
上式中拉格朗日待定因子的解由圓半徑R決定
簡化版(不由R決定):
上式表示對樣本擬合程度, 與組合得到最小是, 防止過擬合
上式令關于的導數(shù)為0, L2約束的LS的解可通過下式求解:
上式結論:
- 將矩陣相加提高其正則性, 進而更穩(wěn)定地進行逆矩陣求解.
- L2約束的LS也成為L2正則化的LS, 稱為正則項, 為正則化參數(shù)
- L2正則化有時也稱嶺回歸
將設計矩陣做奇異值分解:
帶入上上式, 則L2約束的LS解表示為:
上式結論:
- 時, L2約束的LS蛻化為一般的LS
- 設計矩陣計算條件惡劣,包含極小的奇異值時, 變得極大, 訓練輸出噪聲會增加
- 分母中加入正的常數(shù), 避免過大, 進而可防止過擬合
2. 高斯核模型的L2約束優(yōu)化
高斯核模型
L2約束優(yōu)化
, 加入正則化項, 很好地抑制了過擬合.
根據標準高斯分布的函數(shù)圖, 我們對比可以看出圖中標紅位置出現(xiàn)了過擬合.
2. 更一般L2約束的LS
標準L2約束的LS
問題表示:
求解:
更一般的L2約束的LS
使用正則化矩陣G, 可得到更一般的表示:
問題表示:
求解:
更一般的L2約束的LS解求解過程, 和標準L2約束的LS大體相同:
-
參數(shù)空間:
矩陣G對稱正定時, 將數(shù)據限制在橢圓區(qū)域內. 下圖為更一般的L2約束的LS參數(shù)空間:
3. 模型選擇
部分空間約束或L2約束的LS, 都過分依賴正交投影矩陣P和 正則化參數(shù)λ的選擇
- 選擇合適的P和λ至關重要
采用不同的輸入樣本, 決定算法中各個參數(shù)值的過程稱為模型選擇
下圖展示一個高斯核模型+L2約束的LS中, 帶寬和正則化參數(shù)的變化對學習結果的影響:
模型選擇流程:
實際應用中常用交叉驗證法, 拿出一部分訓練樣本做測試, 不參與學習, 值評價最終學習結果的泛化誤差
交叉驗證法流程:
K折交叉驗證:
訓練集分割為k個集合, 需進行k次學習, 由于各學習過程相互獨立, 可以并行計算.
留一交叉驗證:
設有n個樣本, 每次留下一個樣本做測試集, 其余n-1個訓練, 共需要訓練n次, 測試n次
計算繁瑣, 樣本利用率高, 適合小樣本學習