面试必备!卖萌屋算法工程师思维导图—统计机器学习篇
賣萌屋的妹子們(劃掉)作者團整理的算法工程師思維導圖,求職/自我提升/查漏補缺神器。該手冊一共分為數據結構與算法、數學基礎、統計機器學習和深度學習四個部分。
下面是第二部分統計機器學習的內容~
公眾號后臺回復【思維導圖】獲取完整手冊(Xmind腦圖源文件,學習起來更方便(? ?_?)?
統計機器學習
線性回歸
回歸方程:Y = WX
解析解:
損失函數-最小二乘法
用高斯概率密度函數表示出y,然后進行極大似然估計
理解:頻率派角度-誤差復合高斯分布的最大似然估計
求法:誤差服從正太分布(0,sigma) => y服從正太分布(wx,sigma)
正則化
從兩個角度理解:
頻率角度:維度太大無法求逆矩陣,且容易過擬合,給w加上約束?是半正定,不一定可逆, 為半正定加單位矩陣,是正定的,可逆
貝葉斯角度(最大后驗):參數符合laplace分布>L1正則,符合高斯分布>L2嶺回歸
線性分類
線性分類器是通過特征的線性組合來做出分類決定的分類器。數學上來說,線性分類器能找到權值向量w,使得判別公式可以寫成特征值的線性加權組合。
硬分類
感知機
二分類模型,y為{-1, 1} 損失函數:誤分類點到分類平面到距離,分對為0,分錯>0;?
Fisher判別分析
把樣本點投影到一個平面,類間均值差大,使得類內方差小
軟分類
P(Y|X) = P(X|Y)P(Y) / P(X)
判別模型直接求P(Y|X) 生成模型求P(X,Y)=>P(X|Y)P(Y)=>P(Y|X)
判別式: 邏輯回歸
由對數幾率=>sigmoid:
https://zhuanlan.zhihu.com/p/42656051公式推導:
https://zhuanlan.zhihu.com/p/44591359簡介:邏輯回歸是使用sigmoid作為鏈接函數的廣義線性模型,應用于二分類任務。它假設數據服從伯努利分布,對條件概率進行建模,通過極大似然估計的方法,運用梯度下降求解參數。
目標函數:
求解:迭代法(為什么不求解析解?換成矩陣形式后,X和exp(X)同時存在,無法求出解析解。)邏輯回歸的損失函數L是一個連續的凸函數,它只會有一個全局最優的點,不存在局部最優。可以用SGD。
Bias的可解釋性:對于偏差b (Bias),一定程度代表了正負兩個類別的判定的容易程度。假如b是0,那么正負類別是均勻的。如果b大于0,說明它更容易被分為正類,反之亦然。
線性決策邊界:
為什么不能用線性回歸做分類?
https://www.zhihu.com/question/319865092/answer/661614886
平方差的意義和交叉熵的意義不一樣。概率理解上,平方損失函數意味著模型的輸出是以預測值為均值的高斯分布,損失函數是在這個預測分布下真實值的似然度,softmax損失意味著真實標簽的似然度。
由來及其表達式:用線性回歸擬合?,得到對數幾率回歸
生成式:樸素貝葉斯
樸素貝葉斯是基于貝葉斯定理與特征條件獨立假設大分類方法,對于給定的x,對x,y的聯合分布建模(P(x|y)&P(y)),輸出后驗概率最大的Y,對P(x|y)采用了極大似然估計
當特征離散時為線性分類:離散特征的樸素貝葉斯分類器判別公式能夠寫成特征值的加權線性組合。
https://www.jianshu.com/p/469accb2e1a0假設:特征間相互獨立,P(x1|y)與P(x2|y)相互獨立 P(x1, x2, .., xn | Y) = P(x1|Y) * P(x2|Y) * ... * P(xn|Y)
求解:對于給定的x,對x,y的聯合分布建模(P(x|y)&P(y)),輸出后驗概率最大的Y,對P(x|y)采用了極大似然估計
max[P(x|y)P(y)],y服從伯努利分布,x|y服從categorial分布或高斯分布
一般假設樸素貝葉斯的特征為離散值
生成式:高斯判別分析
假定已知類中的x的分別服從高斯分布,對于二分類,p(x|y=0)和p(x|y=1)分別服從兩個高斯分布,方差一樣,y服從bernoulli(p),?
方差相同的情況下為線性分類(可以寫成特征值x的線性加權組合):
https://www.jianshu.com/p/469accb2e1a0方差相同時把消掉了,否則帶有就不是線性了
SVM
https://zhuanlan.zhihu.com/p/61123737
解讀:https://zhuanlan.zhihu.com/p/49331510
考點:https://zhuanlan.zhihu.com/p/76946313
分類
線性可分SVM
當訓練數據線性可分時,通過硬間隔(hard margin,什么是硬、軟間隔下面會講)最大化可以學習得到一個線性分類器,即硬間隔SVM
線性SVM
當訓練數據不能線性可分但是可以近似線性可分時,通過軟間隔(soft margin)最大化也可以學習到一個線性分類器,即軟間隔SVM
非線性SVM
當訓練數據線性不可分時,通過使用核技巧(kernel trick)和軟間隔最大化,可以學習到一個非線性SVM
線性可分SVM凸二次規劃形式的推導
拉格朗日乘子法和KKT條件
凸二次規劃求解
軟間隔最大化
序列最小優化算法(SMO)
核函數
常見問題
與感知機的區別
與邏輯回歸的對比
SVM優缺點
二分類到多分類
樹模型
常見算法
XGBOOST
優點:不用做特征標準化,可以處理缺失數據,對outlier不敏感
理解泰勒展開:
https://www.zhihu.com/question/25627482/answer/31229830理解GBDT:
https://www.zybuluo.com/yxd/note/611571官方文檔:
https://github.com/dmlc/xgboost/tree/master/demo http://xgboost.readthedocs.io/en/latest/parameter.html#general-parametershttp://xgboost.readthedocs.io/en/latest/python/python_api.html調參:
https://www.analyticsvidhya.com/blog/2016/03/complete-guide-parameter-tuning-xgboost-with-codes-python/ https://www.dataiku.com/learn/guide/code/python/advanced-xgboost-tuning.html源碼剖析:
https://wenku.baidu.com/view/44778c9c312b3169a551a460.html min_child_weight: https://www.zhihu.com/question/68621766scale_pos_weight: https://blog.csdn.net/h4565445654/article/details/72257538
節點分裂:H,Weighted Quantile Sketch, h對loss有加權的作用
稀疏值處理:行抽樣、列抽樣
Shrinkage:學習速率減小,迭代次數增多,有正則化作用
系統設計:Columns Block, Cache Aware Access Gradient-based One Side Sampling (GOSS) Exclusive Feature Bundling (EFB)
LightGBM
官方文檔:
http://lightgbm.readthedocs.io/en/latest/ https://github.com/Microsoft/LightGBM改進:直方圖算法;直方圖差加速;Leaf-wise建樹;特征并行和數據并行的優化
Random Forest
調參:
http://www.cnblogs.com/pinard/p/6160412.htmlhttps://www.zhihu.com/question/34470160/answer/114305935
https://zhuanlan.zhihu.com/p/25308120
原理:
http://www.cnblogs.com/pinard/p/6156009.html https://www.jianshu.com/p/dbf21ed8be88優化:
https://stackoverflow.com/questions/23075506/how-to-improve-randomforest-performance
信息熵相關概念
生成
ID3:信息增益
C4.5:信息增益比
CART:回歸-平方誤差/分類-基尼指數
剪枝
葉節點個數
預剪枝/后剪枝
圖模型
有向圖
https://www.zhihu.com/question/53458773/answer/554436625
貝葉斯網絡(Bayesian Networks, BNs)是有向圖, 每個節點的條件概率分布表示為P(當前節點|父節點)
從樸素貝葉斯到HMM:在輸出序列的y時,依據樸素貝葉斯只有?。沒有考慮yi之間的關系,因此加入,得到HMM
HMM
定義:HMM是關于時序的概率模型,由一個隱藏的馬爾可夫鏈生成不可觀測的狀態隨機序列,再由各個狀態生成觀測序列
三要素:初始狀態概率向量,狀態轉移矩陣A,觀測/發射概率矩陣B
假設:齊次馬爾可夫&觀測獨立
概率計算:給定三要素和觀測序列,生成觀測序列概率
學習問題:給定觀測序列,用極大似然估計三要素
預測/解碼:給定觀測序列和三要素,求最可能的狀態序列
樸素貝葉斯
https://www.zhihu.com/question/53458773/answer/554436625
無向圖
https://www.zhihu.com/question/53458773/answer/554436625
馬爾可夫網絡則是無向圖, 包含了一組具有馬爾可夫性質的隨機變量. 馬爾可夫隨機場(Markov Random Fields, MRF)是由參數(S,π,A)表示, 其中S是狀態的集合,π是初始狀態的概率, A是狀態間的轉移概率。一階馬爾可夫鏈就是假設t時刻的狀態只依賴于前一時刻的狀態,與其他時刻的狀態和觀測無關。這個性質可以用于簡化概率鏈的計算。
邏輯回歸
https://www.zhihu.com/question/265995680/answer/303148257
樸素貝葉斯與邏輯回歸的關系:都是對幾率P/(1-P)進行擬合。樸素貝葉斯基于條件獨立假設,另特征間相互獨立,通過P(X|Y)P(Y)=>聯合概率分布求得幾率
邏輯回歸擬合特征間的關系:用線性回歸逼近幾率
CRF
模型定義:
舉例:
https://zhuanlan.zhihu.com/p/104562658無向圖:在給一個節點打標簽時,把相鄰節點的信息考慮進來(馬爾可夫性:只與相鄰的兩個狀態有關)
線性鏈條件隨機場:P(Yi|X,Y1,...Yn) = P(Yi|X, Yi-1, Yi+1),只考慮當前和前一個 由輸入序列預測輸出序列的判別模型,對條件概率建模
觀測序列,狀態/標記序列
特征函數:轉移特征t(依賴當前和前一個位置),狀態特征s(依賴當前位置),t和s對取值為1或0
特征函數:
轉移特征t(依賴當前和前一個位置),狀態特征s(依賴當前位置),t和s對取值為1或0
與邏輯回歸比較:CRF是邏輯回歸的序列化版本
與HMM比較:每一個HMM模型都可以用CRF構造出來。CRF更加強大:
1.CRF可以定義數量更多,種類更豐富的特征函數。HMM從樸素貝葉斯而來,有條件獨立假設,每個觀測變量只與狀態變量有關。但是CRF卻可以著眼于整個句子s定義更具有全局性的特征函數
2.CRF可以使用任意的權重。將對數HMM模型看做CRF時,特征函數的權重由于是log形式的概率
https://zhuanlan.zhihu.com/p/31187060
1.HMM是生成模型,CRF是判別模型
2.HMM是概率有向圖,CRF是概率無向圖
3.HMM求解過程可能是局部最優,CRF可以全局最優(對數似然為凸函數)
4.CRF概率歸一化較合理,HMM則會導致label bias 問題
公眾號后臺回復【思維導圖】獲取完整手冊(Xmind腦圖源文件,學習起來更方便(? ?_?)?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的面试必备!卖萌屋算法工程师思维导图—统计机器学习篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ELECTRA模型精讲
- 下一篇: 真正的高阶特征交叉:xDeepFM与DC