1腊瑟、如何解決類別不平衡問(wèn)題
從數(shù)據(jù)角度
-
主動(dòng)獲妊峋:獲取更多的少量樣本數(shù)據(jù)
針對(duì)少量樣本數(shù)據(jù)汗贫,可以盡可能去擴(kuò)大這些少量樣本的數(shù)據(jù)集司蔬,或者盡可能去增加他們特有的特征來(lái)豐富數(shù)據(jù)的多樣性沐序。譬如琉用,如果是一個(gè)情感分析項(xiàng)目,在分析數(shù)據(jù)比例時(shí)發(fā)現(xiàn)負(fù)樣本(消極情感)的樣本數(shù)量較少策幼,那么我們可以盡可能在網(wǎng)站中搜集更多的負(fù)樣本數(shù)量邑时。
-
算法采樣:上采樣、下采樣特姐、生成合成數(shù)據(jù)
ADASYN采樣方法:
基本思想是根據(jù)學(xué)習(xí)難度的不同晶丘,對(duì)不同的少數(shù)類的樣本使用加權(quán)分布。其中唐含,更難學(xué)習(xí)的少數(shù)類的樣本比那些更容易學(xué)習(xí)的少數(shù)類的樣本要產(chǎn)生更多的合成數(shù)據(jù)铣口。因此,ADASYN方法通過(guò)以下兩種方式改善了數(shù)據(jù)分布的學(xué)習(xí):(1)減少由于類別不平衡帶來(lái)的偏差觉壶;(2)自適應(yīng)地將分類決策邊界轉(zhuǎn)移到困難的例子脑题。
SMOTE采樣方法:
從少數(shù)類創(chuàng)建新的合成點(diǎn),以增加其基數(shù)铜靶。但是SMOTE算法也有一定的局限性叔遂。
具體有兩項(xiàng)他炊,一是在近鄰選擇時(shí),存在一定的盲目性已艰。在算法執(zhí)行過(guò)程中痊末,需要確定K值,即選擇幾個(gè)近鄰樣本哩掺,這個(gè)需要根據(jù)具體的實(shí)驗(yàn)數(shù)據(jù)和實(shí)驗(yàn)人自己解決凿叠。二是該算法無(wú)法克服非平衡數(shù)據(jù)集的數(shù)據(jù)分布問(wèn)題,容易產(chǎn)生分布邊緣化的問(wèn)題嚼吞。由于負(fù)類樣本的分布決定了其可選擇的近鄰盒件,如果一個(gè)負(fù)類樣本處在負(fù)類樣本的邊緣,則由此負(fù)類樣本和近鄰樣本產(chǎn)生的樣本也會(huì)處在邊緣舱禽,從而無(wú)法確定正負(fù)類的分類邊界炒刁。
從評(píng)價(jià)指標(biāo)角度
謹(jǐn)慎選擇AUC作為評(píng)價(jià)指標(biāo):對(duì)于數(shù)據(jù)極端不平衡時(shí),可以觀察觀察不同算法在同一份數(shù)據(jù)下的訓(xùn)練結(jié)果的precision和recall誊稚,這樣做有兩個(gè)好處翔始,一是可以了解不同算法對(duì)于數(shù)據(jù)的敏感程度,二是可以明確采取哪種評(píng)價(jià)指標(biāo)更合適里伯。針對(duì)機(jī)器學(xué)習(xí)中的數(shù)據(jù)不平衡問(wèn)題城瞎,建議更多PR(Precision-Recall曲線),而非ROC曲線疾瓮,具體原因畫(huà)圖即可得知全谤,如果采用ROC曲線來(lái)作為評(píng)價(jià)指標(biāo),很容易因?yàn)锳UC值高而忽略實(shí)際對(duì)少兩樣本的效果其實(shí)并不理想的情況爷贫。
不要只看Accuracy:Accuracy可以說(shuō)是最模糊的一個(gè)指標(biāo)了认然,因?yàn)檫@個(gè)指標(biāo)高可能壓根就不能代表業(yè)務(wù)的效果好,在實(shí)際生產(chǎn)中漫萄,我們可能更關(guān)注precision/recall/mAP等具體的指標(biāo)卷员,具體側(cè)重那個(gè)指標(biāo),得結(jié)合實(shí)際情況看腾务。
從算法角度
選擇對(duì)數(shù)據(jù)傾斜相對(duì)不敏感的算法毕骡。如樹(shù)模型等。
集成學(xué)習(xí)(Ensemble集成算法)岩瘦。首先從多數(shù)類中獨(dú)立隨機(jī)抽取出若干子集未巫,將每個(gè)子集與少數(shù)類數(shù)據(jù)聯(lián)合起來(lái)訓(xùn)練生成多個(gè)基分類器,再加權(quán)組成新的分類器启昧,如加法模型叙凡、Adaboost、隨機(jī)森林等密末。
將任務(wù)轉(zhuǎn)換成異常檢測(cè)問(wèn)題握爷。譬如有這樣一個(gè)項(xiàng)目跛璧,需要從高壓線的航拍圖片中,將松動(dòng)的螺絲/零件判斷為待檢測(cè)站點(diǎn)新啼,即負(fù)樣本追城,其他作為正樣本,這樣來(lái)看燥撞,數(shù)據(jù)傾斜是非常嚴(yán)重的座柱,而且在圖像質(zhì)量一般的情況下小物體檢測(cè)的難度較大,所以不如將其轉(zhuǎn)換為無(wú)監(jiān)督的異常檢測(cè)算法物舒,不用過(guò)多的去考慮將數(shù)據(jù)轉(zhuǎn)換為平衡問(wèn)題來(lái)解決色洞。
2、數(shù)據(jù)不符合正態(tài)分布怎么辦茶鉴?
可以做box-cox變換
如何確定λ呢?假設(shè)經(jīng)過(guò)轉(zhuǎn)換后的因變量就是服從正態(tài)分布的景用,然后畫(huà)出關(guān)于λ的似然函數(shù)涵叮,似然函數(shù)值最大的時(shí)候,λ的取值就是這里需要確定的值伞插。
3割粮、K-Means算法原理及改進(jìn),遇到異常值怎么辦媚污?評(píng)估算法的指標(biāo)有哪些舀瓢?
-
k-means原理
在給定K值和K個(gè)初始類簇中心點(diǎn)的情況下,把每個(gè)點(diǎn)(亦即數(shù)據(jù)記錄)分到離其最近的類簇中心點(diǎn)所代表的類簇中耗美,所有點(diǎn)分配完畢之后京髓,根據(jù)一個(gè)類簇內(nèi)的所有點(diǎn)重新計(jì)算該類簇的中心點(diǎn)(取平均值),然后再迭代的進(jìn)行分配點(diǎn)和更新類簇中心點(diǎn)的步驟商架,直至類簇中心點(diǎn)的變化很小堰怨,或者達(dá)到指定的迭代次數(shù)。 -
改進(jìn)
a. K-means++:假設(shè)已經(jīng)選取了n個(gè)初始聚類中心(0<n<K)蛇摸,則在選取第n+1個(gè)聚類中心時(shí):距離當(dāng)前n個(gè)聚類中心越遠(yuǎn)的點(diǎn)會(huì)有更高的概率被選為第n+1個(gè)聚類中心备图。在選取第一個(gè)聚類中心(n=1)時(shí)同樣通過(guò)隨機(jī)的方法。從而讓K個(gè)聚類中心離得盡可能遠(yuǎn)赶袄。
b. mini batch kmeans:每次取一小部分?jǐn)?shù)據(jù)集對(duì)簇中心進(jìn)行更新揽涮,加快收斂速度
c. ISODATA:對(duì)于難以確定k的時(shí)候,使用該方法饿肺。思路是當(dāng)簇內(nèi)樣本數(shù)目小于閾值或者兩個(gè)簇的中心點(diǎn)距離小于閾值蒋困,則進(jìn)行融合;當(dāng)簇內(nèi)標(biāo)準(zhǔn)差大于閾值或者簇內(nèi)樣本數(shù)目超過(guò)最小樣本數(shù)目的兩倍時(shí)敬辣,進(jìn)行拆分
d. kernel kmeans:kmeans用歐氏距離計(jì)算相似度家破,也可以使用kernel映射到高維空間再聚類 -
遇到異常值
a. 有條件的話使用密度聚類先聚類颜说,剔除異常值
b. 多元高斯分布異常點(diǎn)檢測(cè)
c. 使用PCA或自動(dòng)編碼機(jī)進(jìn)行異常點(diǎn)檢測(cè):使用降維后的維度作為新的特征空間,其降維結(jié)果可以認(rèn)為剔除了異常值的影響(因?yàn)檫^(guò)程是保留使投影后方差最大的投影方向)
d. isolation forest:基本思路是建立樹(shù)模型汰聋,一個(gè)節(jié)點(diǎn)所在的樹(shù)深度越低门粪,說(shuō)明將其從樣本空間劃分出去越容易,因此越可能是異常值烹困。 -
評(píng)估聚類算法的指標(biāo)
a. 外部法(基于有標(biāo)注):Jaccard系數(shù)玄妈、FM指數(shù)、Rand指數(shù)
b. 內(nèi)部法(無(wú)標(biāo)注):DB指數(shù)髓梅、Dunn指數(shù)
c. 此外還要考慮到算法的時(shí)間空間復(fù)雜度拟蜻、聚類穩(wěn)定性等
4、GBDT(梯度提升樹(shù))
GBDT是提升樹(shù)的一種枯饿,與提升樹(shù)一樣酝锅,采用前向優(yōu)化算法,即從前往后奢方,不斷建立基模型來(lái)優(yōu)化目標(biāo)目標(biāo)函數(shù)搔扁。每次訓(xùn)練一個(gè)新的基模型時(shí),都是去擬合目標(biāo)函數(shù)對(duì)于當(dāng)前模型(所有訓(xùn)練好的基模型加和)的梯度的負(fù)數(shù)蟋字。若目標(biāo)函數(shù)為平方損失函數(shù)稿蹲,則負(fù)梯度即為真實(shí)值與當(dāng)前擬合值的殘差。為什么不直接去擬合殘差呢而是去擬合負(fù)梯度呢鹊奖?這是因?yàn)槠椒綋p失函數(shù)對(duì)異常值比較敏感苛聘,需要用到一些更加穩(wěn)健的損失函數(shù),擬合負(fù)梯度從而讓目標(biāo)函數(shù)沿著梯度相反的方向下降忠聚。
5设哗、余弦距離與歐式距離求相似度的差別
- 歐氏距離能夠體現(xiàn)個(gè)體數(shù)值特征的絕對(duì)差異,所以更多的用于需要從維度的數(shù)值大小中體現(xiàn)差異的分析两蟀,如使用用戶行為指標(biāo)分析熬拒、用戶價(jià)值的相似度或差異。余弦距離更多的是從方向上區(qū)分差異垫竞,而對(duì)絕對(duì)的數(shù)值不敏感澎粟,更多的用于使用用戶對(duì)內(nèi)容評(píng)分來(lái)區(qū)分興趣的相似度和差異,同時(shí)修正了用戶間可能存在的度量標(biāo)準(zhǔn)不統(tǒng)一的問(wèn)題(因?yàn)橛嘞揖嚯x對(duì)絕對(duì)數(shù)值不敏感)欢瞪。
- 總體來(lái)說(shuō)活烙,歐氏距離體現(xiàn)數(shù)值上的絕對(duì)差異,而余弦距離體現(xiàn)方向上的相對(duì)差異遣鼓。
①例如啸盏,統(tǒng)計(jì)兩部劇的用戶觀看行為,用戶A的觀看向量為(0,1)骑祟,用戶B為(1,0)回懦;此時(shí)二者的余弦距很大气笙,而歐氏距離很小怯晕;我們分析兩個(gè)用戶對(duì)于不同視頻的偏好潜圃,更關(guān)注相對(duì)差異,顯然應(yīng)當(dāng)使用余弦距離舟茶。
②而當(dāng)我們分析用戶活躍度谭期,以登陸次數(shù)(單位:次)和平均觀看時(shí)長(zhǎng)(單:分鐘)作為特征時(shí),余弦距離會(huì)認(rèn)為(1,10)吧凉、(10,100)兩個(gè)用戶距離很近隧出;但顯然這兩個(gè)用戶活躍度是有著極大差異的,此時(shí)我們更關(guān)注數(shù)值絕對(duì)差異阀捅,應(yīng)當(dāng)使用歐氏距離胀瞪。
6、判別模型和生成模型的區(qū)別饲鄙?
7凄诞、異常檢測(cè)方法
1、基于模型的方法
單維情況下:
- 3σ法則
- 箱線圖
- Grubbs test
高維情況下:
- 多元高斯分布
2傍妒、基于距離的方法
- k最近鄰
3幔摸、基于聚類的方法
- 密度聚類
4摸柄、基于劃分的方法
- 孤立森林
5颤练、基于線性的方法
- PCA
6、基于非線性的方法
- 自編碼器
7驱负、基于時(shí)間序列的方法
- 環(huán)比
- 同比
- 同比振幅
與其用x(t)的值嗦玖,不如用x(t) – x(t-1)的值,也就是把絕對(duì)值變成變化速度跃脊∮畲欤可以直接利用這個(gè)速度值,也可以是 x(t) – x(t-1) 再除以 x(t-1)酪术,也就是一個(gè)速度相對(duì)于絕對(duì)值的比率器瘪。比如t時(shí)刻的在線900人,t-1時(shí)刻的在線是1000人绘雁,那么可以計(jì)算出掉線人數(shù)是10%橡疼。這個(gè)掉線比率在歷史同時(shí)刻是高還是低?那么就和前面一樣處理了庐舟。
優(yōu)點(diǎn)是比絕對(duì)值要敏感欣除,規(guī)避了業(yè)務(wù)曲線內(nèi)在的線性趨勢(shì);缺點(diǎn)是容易在低峰期誤警挪略。
- 動(dòng)態(tài)閾值
參考過(guò)去一段時(shí)間內(nèi)的均值历帚、最大值以及最小值
8滔岳、特征選擇的方法
- 多元線性回歸中:前向搜索、后向搜索挽牢、逐步回歸
- 過(guò)濾:計(jì)算特征與標(biāo)簽之間的卡方谱煤、互信息、相關(guān)系數(shù)(只能識(shí)別線性關(guān)系)卓研,過(guò)濾掉取值較低的特征趴俘。或者使用樹(shù)模型建模奏赘,通過(guò)樹(shù)模型的importance進(jìn)行選擇
- 包裹:把最終將要使用的學(xué)習(xí)器的性能作為特征子集的評(píng)價(jià)標(biāo)準(zhǔn)寥闪,如LVW
- 嵌入法:L1正則化可以將不重要的特征降到0、樹(shù)模型抽取特征
- 降維:PCA磨淌、LDA等
9疲憋、樹(shù)模型降低過(guò)擬合的方法
- 增加數(shù)據(jù)
- 特征選擇、特征降維
- bagging
- 正則項(xiàng)
- early stopping
- 剪枝
- 控制樹(shù)深
- subsampe & subfeature
9梁只、PCA與LDA的異同點(diǎn)
- 相同點(diǎn)
- 兩者均可以對(duì)數(shù)據(jù)進(jìn)行降維
- 兩者在降維時(shí)均使用了矩陣特征分解的思想
- 兩者都假設(shè)數(shù)據(jù)符合高斯分布
獨(dú)立一定不相關(guān)镀梭,不相關(guān)不一定獨(dú)立,“只有”高斯的時(shí)候揽惹,兩者才等價(jià)盔沫。
- 不同點(diǎn)
- LDA是有監(jiān)督的降維方法,而PCA是無(wú)監(jiān)督的降維方法
- LDA降維最多降到類別數(shù)k-1(k為類別數(shù))的維數(shù)构舟,而PCA沒(méi)有這個(gè)限制
- LDA除了可以用于降維灰追,還可以用于分類
- LDA選擇分類性能最好的投影方向,而PCA選擇樣本點(diǎn)投影具有最大方差的方向