算法面经总结(15)机器学习常见知识
1、正負樣本不均衡的處理方法
(1)上采樣:通過將小眾類樣本復制多份,來得到多個不同數(shù)據(jù)集,每個數(shù)據(jù)集訓練一個模型
??????? 缺點:反復出現(xiàn)一些樣本,容易過擬合??? 解決:生成新數(shù)據(jù)時加入隨機擾動
(2)下采樣:從大眾類中選取部分樣本
??????? 缺點:丟失部分信息,只學到了總體的一部分? 解決:boosting和bagging
(3)數(shù)據(jù)合成
(4)加權(quán),對不同類別分錯的代價不同,采用Focal loss
2、學習到某層loss為0,梯度消失怎么辦
產(chǎn)生原因:隨著層數(shù)的加深,激活函數(shù)(sigmoid,導數(shù)值得范圍在【0,0.25】)的輸出值的整體分布逐漸往激活函數(shù)的取值區(qū)間上下限(飽和區(qū))靠近,從而導致在反向傳播時低層神經(jīng)網(wǎng)絡的梯度消失。
解決方法
(1)使用Relu,maxout等激活函數(shù)代替
(2)使用BN
(3)適當調(diào)整學習率和權(quán)重衰減項
(4)LSTM結(jié)構(gòu)
(5)殘差網(wǎng)絡
補充:梯度爆炸的原理:同樣的道理,當權(quán)重初始化為一個較大值時,雖然和激活函數(shù)的導數(shù)相乘會減小這個值,但是隨著神經(jīng)網(wǎng)絡的加深,梯度呈指數(shù)級增長,就會引發(fā)梯度爆炸。
3、LR與NN之間的關(guān)系
??????? 可以將LR認為只含有一個神經(jīng)元的單層的神經(jīng)網(wǎng)絡
4、機器學習項目中的開發(fā)流程
(1)理解實際問題。抽象為機器學習能處理的數(shù)學問題,理解實際業(yè)務場景問題是機器學習的第一步
(2)數(shù)據(jù)獲取。數(shù)據(jù)決定機器學習的上限,總的來說數(shù)據(jù)要有代表性。對于分類,數(shù)據(jù)傾斜不能過于嚴重,不同類數(shù)據(jù)量要均衡。不僅如此還要對評估數(shù)據(jù)的量級等內(nèi)存的消耗。如數(shù)據(jù)量過大可以考慮減少訓練樣本、降維或者使用分布式機器學習系統(tǒng)。同時數(shù)據(jù)預處理、清洗也很重要,
(3)特征工程。包括從原始數(shù)據(jù)中特征構(gòu)建、特征提取、特征選擇。
(4)模型訓練、診斷、調(diào)優(yōu)。判斷過擬合、欠擬合。
(5)模型驗證、誤差分析
5、生成式模型、判別式模型
判別式模型:尋找不同類別之間的最優(yōu)分類面,反映異類數(shù)據(jù)之間的差異
生成式模型:以統(tǒng)計的角度表示數(shù)據(jù)的分布情況,能夠反映同類數(shù)據(jù)本身的相似度
區(qū)別:判別式模型估計的是直接求條件概率分布P(y|x)
????????? 生成式模型估計的是先求聯(lián)合概率分布P(x,y),再根據(jù)貝葉斯公式求P(y|x)
生成式模型有樸素貝葉斯、貝葉斯網(wǎng)絡、高斯混合模型
判別式模型有LR、KNN、傳統(tǒng)神經(jīng)網(wǎng)絡
6、BP算法
??????? 思想是由后一級的誤差計算前一級的誤差,從而極大減少計算量
??????? 假設(shè)神經(jīng)網(wǎng)絡有l(wèi)+1層,記l層的輸入為,激活函數(shù),輸出,從l層到l+1層的參數(shù)矩陣是,則
????????????????????????????????????????
??????? 設(shè)某個數(shù)據(jù)點產(chǎn)生的損失為C,則(由于C可以表示成的函數(shù))
?????????????????????????????????????? 且
?? ? ? ? ? ? ? ???
7、L1、L2區(qū)別
??????? 對L2下的目標函數(shù)進行求導可得,權(quán)重w每次乘上的是小于1的倍數(shù)進行收斂,而且其導數(shù)在w等于0時沒有辦法做到兩邊異號,所以L2更平滑
??????? 對L1下的目標函數(shù)進行求導可得,w每次都是減去一個常數(shù)的線性收斂,L1比L2更快收斂到比較小的值,且在x等于0時能保證兩邊導數(shù)異號。
8、連續(xù)特征離散化的好處
原因:算法需要,相對于連續(xù)特征更容易理解,克服數(shù)據(jù)中的隱藏缺陷,結(jié)果更穩(wěn)定
好處:離散特征增加或者減少更加容易,易于快速迭代
????????? 稀疏向量內(nèi)積乘法運算快,易存儲
????????? 有很強的魯棒性
????????? 可以進行特征交叉
???????? 簡化模型的作用
9、偏差與方差
偏差:預測值的期望和真實值之間的差異,偏差越大,越偏離真實數(shù)據(jù)。學習能力不強導致,衡量欠擬合。
方差:預測值的變化情況,離散程度,也就是離其期望值的距離,學習能力太強導致,衡量過擬合。
10、選擇模型
如果特征數(shù)量大到和樣本差不多,選用LR或者線性核的SVM
如果特征數(shù)量小,樣本數(shù)量正常,則選用SVM+高斯核函數(shù)
如果特征數(shù)量大,樣本數(shù)量很大,則需要手動添加一些特征變?yōu)榈谝环N情況
11、極大似然估計和最大后驗的區(qū)別
MLE:在已經(jīng)得到試驗結(jié)果(即樣本)的情況下,估計滿足這個分布的參數(shù),將使這個樣本出現(xiàn)的概率最大的參數(shù)作為其真實參數(shù)的估計。用似然函數(shù)求解
MAP:根據(jù)經(jīng)驗數(shù)據(jù),獲得對難以觀察的量的點估計。與MLE不同的是,MAP融入了被估計量的先驗分布,即模型參數(shù)本身的概率分布。
聯(lián)系:MAP=MLE*先驗概率
12、EM算法-最大期望算法
????????有時候因為樣本的產(chǎn)生和隱含變量有關(guān)(隱含變量是不能觀察的),而求模型的參數(shù)時一般采用最大似然估計,由于含有了隱含變量,所以對似然函數(shù)參數(shù)求導是求不出來的,這時可以采用EM算法來求模型的參數(shù)的(對應模型參數(shù)個數(shù)可能有多個)
??????? 在概率模型中尋找參數(shù)最大似然估計或者最大后驗估計的算法,其中概率模型依賴于無法觀測的隱變量。
??????? 經(jīng)過兩個步驟的交替計算:
??????? 第一步是計算期望(E),選取一組參數(shù),求出在該參數(shù)下隱含變量的條件概率值
??????? 第二步時最大化(M),在E步上求得最大似然估計值計算參數(shù)的值,M步上找到的參數(shù)估計值被用于下一個E步的計算中,不斷交替進行。
13、余弦相似度距離
余弦相似度距離:余弦相似度用向量空間中兩個向量夾角的余弦相似值作為衡量兩個個體間差異的大小。相比距離度量,余弦相似度更加注重兩個向量在方向上的差異而非距離或者長度。
14、什么樣的模型對缺失值敏感
??????? 樹模型對于缺失值敏感度較低,涉及到距離度量時,缺失值就比較重要,如KNN、SVM,線性函數(shù)的代價函數(shù)往往涉及距離,神經(jīng)網(wǎng)絡、貝葉斯對缺失值也不敏感。
15、貝葉斯定理
16、對偶的概念
????????一個優(yōu)化問題可以從兩個角度進行考察,一個是原始問題,一個是二重問題,就是對偶問題,一般情況下對偶問題給出主問題最優(yōu)值的下界,在強對偶性成立的情況下由對偶問題可以得到主問題的最優(yōu)下界,對偶問題是凸優(yōu)化問題,可以進行較好的求解,SVM中就是將primal問題轉(zhuǎn)換為dual問題進行求解,從而進一步引入核函數(shù)的思想。
17、如何進行特征選擇
????????特征選擇是一個重要的數(shù)據(jù)預處理過程,主要有兩個原因:一是減少特征數(shù)量、降維,使模型泛化能力更強,減少過擬合;二是增強對特征和特征值之間的理解
????????常見的特征選擇方式:
????????(1)去除方差較小的特征
????????(2)正則化。L1正則化能夠生成稀疏的模型。L2正則化的表現(xiàn)更加穩(wěn)定,由于有用的特征往往對應系數(shù)非零。
????????(3)隨機森林,對于分類問題,通常采用基尼不純度或者信息增益,對于回歸問題,通常采用的是方差或者最小二乘擬合。一般不需要feature engineering、調(diào)參等繁瑣的步驟。它的兩個主要問題,1是重要的特征有可能得分很低(關(guān)聯(lián)特征問題),2是這種方法對特征變量類別多的特征越有利(偏向問題)。
????????(4)穩(wěn)定性選擇。是一種基于二次抽樣和選擇算法相結(jié)合較新的方法,選擇算法可以是回歸、SVM或其他類似的方法。它的主要思想是在不同的數(shù)據(jù)子集和特征子集上運行特征選擇算法,不斷的重復,最終匯總特征選擇結(jié)果,比如可以統(tǒng)計某個特征被認為是重要特征的頻率(被選為重要特征的次數(shù)除以它所在的子集被測試的次數(shù))。理想情況下,重要特征的得分會接近100%。稍微弱一點的特征得分會是非0的數(shù),而最無用的特征得分將會接近于0。
18、歐式距離與馬氏距離
?????? 馬式距離
?????????歐式距離具有:平移不變性; 旋轉(zhuǎn)不變性
??????? 馬氏距離具有:平移不變性; 旋轉(zhuǎn)不變性;尺度縮放不變性;不受量綱影響的特性
?
?以上內(nèi)容均來源于各個版主、??途W(wǎng)總結(jié)
總結(jié)
以上是生活随笔為你收集整理的算法面经总结(15)机器学习常见知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python画图使用新罗马体
- 下一篇: 社交新零售品牌运营必须要知道几点