
分類(lèi)是我們?cè)诠I(yè)界經(jīng)常遇到的場(chǎng)景,本文探討了3種常用的分類(lèi)器,邏輯回歸LR,決策樹(shù)DT和支持向量機(jī)SVM。
這三個(gè)算法都被廣泛應(yīng)用于分類(lèi)(當(dāng)然LR,DT和SVR也可以用于回歸,但是本文先不討論)。我經(jīng)??吹饺藗儠?huì)問(wèn),這個(gè)問(wèn)題我該使用LR呢還是決策樹(shù)(或者GBDT)還是SVM呢。然后你會(huì)聽(tīng)到一個(gè)“經(jīng)典”而且“絕對(duì)正確”的答案:”It depends.”這個(gè)答案簡(jiǎn)直毫無(wú)卵用。所以本文將探討一下面臨模型選擇的時(shí)候到底depends on what。
接下來(lái)是一個(gè)簡(jiǎn)單的2-D的解釋?zhuān)劣谙蚋呔S度的擴(kuò)展延伸,就靠你們了~
從最重要的問(wèn)題入手:我們?cè)诜诸?lèi)時(shí)想要做什么~聽(tīng)起來(lái)很蠢有木有,重新組織一下問(wèn)題~為了完成分類(lèi),我們嘗試得到一個(gè)分類(lèi)邊界或者是一個(gè)你和曲線(xiàn),哪個(gè)方式能夠在我們的特征空間里更好的進(jìn)行分類(lèi)呢?
特征空間聽(tīng)起來(lái)很fancy,看一個(gè)簡(jiǎn)單的例子,我有一些樣本數(shù)據(jù),特征(x1,x2)和標(biāo)簽(0或1)。
可以看到我們的特征是2-D的,不同的顏色代表著不同的類(lèi)別標(biāo)簽,我們想要使用算法來(lái)獲得一個(gè)曲線(xiàn)來(lái)區(qū)分這些不同類(lèi)別的樣本。
其實(shí)可以很直觀(guān)的看出來(lái),這個(gè)場(chǎng)景下圓是一個(gè)比較理想的分類(lèi)邊界。而不同的分類(lèi)邊界也就是LR,DT和SVM的區(qū)別所在。
首先看一下邏輯回歸,對(duì)于LR給出的決策邊界,我們對(duì)于這個(gè)經(jīng)典的S型曲線(xiàn)會(huì)有不少困惑:
其實(shí)這個(gè)藍(lán)色的曲線(xiàn)并不是決策邊界,它只是把二分類(lèi)的答案使用連續(xù)值輸出置信度的一個(gè)方式,例如給出分類(lèi)結(jié)果為1的置信度。LR決策面其實(shí)是一條直線(xiàn)(高維情況下平面或超平面),為什么呢?
來(lái)看下邏輯回歸的公式:
為了判定樣本屬于哪一類(lèi),需要設(shè)置一個(gè)截?cái)喾謹(jǐn)?shù),高于這個(gè)分?jǐn)?shù)就預(yù)測(cè)為正例,低于這個(gè)分?jǐn)?shù)就預(yù)測(cè)為負(fù)例。例如階段分?jǐn)?shù)是c,所以我們的決策過(guò)程如下:
Y=1 當(dāng) p>c,否則為0。因而解決了之前的一個(gè)問(wèn)題:LR的決策邊界其實(shí)是一條直線(xiàn)。
所以對(duì)于之前的數(shù)據(jù)集我們得到的LR的決策邊界如下:
可以看出來(lái)LR的效果并不好,因?yàn)椴还苣阍趺凑{(diào),決策邊界都是線(xiàn)性的,無(wú)法擬合出來(lái)一個(gè)圓形的決策邊界,所以L(fǎng)R比較適合解決線(xiàn)性可分的問(wèn)題(雖然你也可以通過(guò)對(duì)特征進(jìn)行變換從而使樣本數(shù)據(jù)線(xiàn)性可分,但是目前不討論這個(gè)東西,這個(gè)是特征工程的工作,和模型沒(méi)關(guān)系)。
現(xiàn)在看一下決策樹(shù)的工作原理,決策樹(shù)是按照單個(gè)變量進(jìn)行一層一層的規(guī)則過(guò)濾,例如:
x1大于或小于const或者x2大于或小于某個(gè)const做的工作是使用直線(xiàn)來(lái)劃分特征空間,如下圖:
如果我們讓決策樹(shù)更復(fù)雜一點(diǎn),例如深度更大,則這些判斷條件能夠更細(xì)地劃分特征空間,從而越來(lái)越逼近那個(gè)圓形的決策邊界。
因此,如果決策邊界是非線(xiàn)性的,而且能夠通過(guò)矩形來(lái)劃分特征空間,那么決策樹(shù)就是優(yōu)于LR的模型。
最后,看一下SVM的工作模式,SVM通過(guò)核函數(shù)把特征空間映射到其他維度,從而使得樣本數(shù)據(jù)線(xiàn)性可分,換個(gè)說(shuō)法,SVM通過(guò)添加新的維度的特征從而使得樣本線(xiàn)性可分。從下圖可以看到,當(dāng)把特征映射到另一個(gè)空間,那么一個(gè)決策面可以把數(shù)據(jù)區(qū)分開(kāi),換言之,如果把這個(gè)決策面映射到初始特征空間,我們就相當(dāng)于得到了一個(gè)非線(xiàn)性的決策邊界。
在原始的2-D的特征基礎(chǔ)上添加一個(gè)新的特征,我們就可以通過(guò)一個(gè)平面,使得這個(gè)3-D的樣本數(shù)據(jù)線(xiàn)性可分了(使用n-1維的超平面把n維的樣本分開(kāi)),如果把這個(gè)分類(lèi)面投射到原始的2-D空間,那么其實(shí)我們會(huì)得到一個(gè)圓哦,雖然這個(gè)分類(lèi)邊界并不會(huì)像下圖這樣理想,但是也是能夠逼近這個(gè)圓的。
到這里我們大致明白了3個(gè)模型的工作原理,但是一開(kāi)始提出的問(wèn)題并沒(méi)有解決,it depends on what? 什么情況下使用什么模型,優(yōu)勢(shì)是什么,劣勢(shì)又是什么?我們下面來(lái)探討這個(gè)問(wèn)題~
LR,DT,SVM都有自身的特性,首先來(lái)看一下LR,工業(yè)界最受青睞的機(jī)器學(xué)習(xí)算法,訓(xùn)練、預(yù)測(cè)的高效性能以及算法容易實(shí)現(xiàn)使其能輕松適應(yīng)工業(yè)界的需求。LR還有個(gè)非常方便實(shí)用的額外功能就是它并不會(huì)給出離散的分類(lèi)結(jié)果,而是給出該樣本屬于各個(gè)類(lèi)別的概率(多分類(lèi)的LR就是softmax),可以嘗試不同的截?cái)喾绞絹?lái)在評(píng)測(cè)指標(biāo)上進(jìn)行同一模型的性能評(píng)估,從而得到最好的截?cái)喾謹(jǐn)?shù)。LR不管是實(shí)現(xiàn)還是訓(xùn)練或者預(yù)測(cè)都非常高效,很輕松的handle大規(guī)模數(shù)據(jù)的問(wèn)題(同時(shí)LR也很適合online learning)。此外,LR對(duì)于樣本噪聲是robust的,對(duì)于“mild”的多重共線(xiàn)性問(wèn)題也不會(huì)受到太大影響,在特征的多重共線(xiàn)性很強(qiáng)的情況下,LR也可以通過(guò)L2正則化來(lái)應(yīng)對(duì)該問(wèn)題,雖然在有些情況下(想要稀疏特征)L2正則化并不太適用。
但是,當(dāng)我們有大量的特征以及部分丟失數(shù)據(jù)時(shí),LR就開(kāi)始費(fèi)勁了。太多的分類(lèi)變量(變量值是定性的,表現(xiàn)為互不相容的類(lèi)別或?qū)傩?,例如性別,年齡段(1,2,3,4,5)等)也會(huì)導(dǎo)致LR的性能較差(這個(gè)時(shí)候可以考慮做離散化,其實(shí)肯定是要做離散化的)。還有一種論調(diào)是LR使用所有的樣本數(shù)據(jù)用于訓(xùn)練,這引發(fā)了一個(gè)爭(zhēng)論:明顯是正例或者負(fù)例的樣本(這種樣本離分類(lèi)邊界較遠(yuǎn),不大會(huì)影響分類(lèi)的curve)不太應(yīng)該被考慮太多,模型理想情況是由分類(lèi)邊界的樣本決定的(類(lèi)似SVM的思想),如下圖。還有一個(gè)情況就是當(dāng)特征是非線(xiàn)性時(shí),需要做特征變換,這可能會(huì)導(dǎo)致特征維度急劇上升。下面是我認(rèn)為的LR的一些利弊:
LR的優(yōu)勢(shì):
對(duì)觀(guān)測(cè)樣本的概率值輸出
實(shí)現(xiàn)簡(jiǎn)單高效
多重共線(xiàn)性的問(wèn)題可以通過(guò)L2正則化來(lái)應(yīng)對(duì)
大量的工業(yè)界解決方案
支持online learning(個(gè)人補(bǔ)充)
LR的劣勢(shì)
特征空間太大時(shí)表現(xiàn)不太好
對(duì)于大量的分類(lèi)變量無(wú)能為力
依賴(lài)所有的樣本數(shù)據(jù)(作者認(rèn)為這其實(shí)不是啥問(wèn)題。。)
決策樹(shù)對(duì)于單調(diào)的特征變換是”indifferent”的,也就是說(shuō)特征的單調(diào)變換對(duì)于決策樹(shù)來(lái)說(shuō)不會(huì)產(chǎn)生任何影響(我本人最早使用決策樹(shù)時(shí)沒(méi)有理解內(nèi)部的機(jī)制,當(dāng)時(shí)還做了特征歸一化等工作,發(fā)現(xiàn)效果沒(méi)有任何變化),因?yàn)?a href='/map/jueceshu/' style='color:#000;font-size:inherit;'>決策樹(shù)是通過(guò)簡(jiǎn)單的使用矩形切分特征空間的,單調(diào)的特征變換只是做了特征空間的縮放而已。由于決策樹(shù)是的分支生成是使用離散的區(qū)間或類(lèi)別值的,所以對(duì)于不管多少分類(lèi)變量都能夠輕松適應(yīng),而且通過(guò)決策樹(shù)生成出來(lái)的模型很直觀(guān)而且容易解釋?zhuān)S著決策樹(shù)的分支解釋即可),而且決策樹(shù)也可以通過(guò)計(jì)算落到該葉子類(lèi)目的標(biāo)簽平均值獲得最終類(lèi)別的概率輸出。但是這就引發(fā)了決策樹(shù)的最大問(wèn)題:非常容易過(guò)擬合,我們很容易就會(huì)生成一個(gè)完美擬合訓(xùn)練集的模型,但是該模型在測(cè)試集合上的表現(xiàn)卻很poor,所以這個(gè)時(shí)候就需要剪枝以及交叉驗(yàn)證來(lái)保證模型不要過(guò)擬合了。
過(guò)擬合的問(wèn)題還可以通過(guò)使用隨機(jī)森林的方式來(lái)解決,隨機(jī)森林是對(duì)決策樹(shù)的一個(gè)很smart的擴(kuò)展,即使用不同的特征集合和樣本集合生成多棵決策樹(shù),讓它們來(lái)vote預(yù)測(cè)樣本的標(biāo)簽值。但是隨機(jī)森林并沒(méi)有像單純決策樹(shù)一樣的解釋能力。
Also by decision trees have forced interactions between variables , which makes them rather inefficient if most of your variables have no or very weak interactions. On the other hand this design also makes them rather less susceptible to multicollinearity.
這段是在說(shuō)決策樹(shù)也不會(huì)受到多重共線(xiàn)性的影響,但是我本人不是很理解
DT的優(yōu)勢(shì):
直觀(guān)的決策過(guò)程
能夠處理非線(xiàn)性特征
考慮了特征相關(guān)性
DT的劣勢(shì)
極易過(guò)擬合(使用RF可以一定程度防止過(guò)擬合,但是只要是模型就會(huì)過(guò)擬合!
無(wú)法輸出score,只能給出直接的分類(lèi)結(jié)果
最后談一下支持向量機(jī)SVM,SVM最大的好處就是它只依賴(lài)于處于分類(lèi)邊界的樣本來(lái)構(gòu)建分類(lèi)面,可以處理非線(xiàn)性的特征,同時(shí),只依賴(lài)于決策邊界的樣本還可以讓他們能夠應(yīng)對(duì)”obvious”樣本缺失的問(wèn)題。由于SVM能夠輕松搞定大規(guī)模的特征空間所以在文本分析等特征維度較高的領(lǐng)域是比較好的選擇。SVM的可解釋性并不像決策樹(shù)一樣直觀(guān),如果使用非線(xiàn)性核函數(shù),SVM的計(jì)算代價(jià)會(huì)高很多。
SVM的優(yōu)勢(shì):
可以處理高維特征
使用核函數(shù)輕松應(yīng)對(duì)非線(xiàn)的性特征空間
分類(lèi)面不依賴(lài)于所有數(shù)據(jù)
SVM的劣勢(shì)
對(duì)于大量的觀(guān)測(cè)樣本,效率會(huì)很低找到一個(gè)“合適”的核函數(shù)還是很tricky的
我總結(jié)出了一個(gè)工作流程來(lái)讓大家參考如何決定使用哪個(gè)模型:
1. 使用LR試一把總歸不會(huì)錯(cuò)的,至少是個(gè)baseline
2. 看看決策樹(shù)相關(guān)模型例如隨機(jī)森林,GBDT有沒(méi)有帶來(lái)顯著的效果提升,即使最終沒(méi)有用這個(gè)模型,也可以用隨機(jī)森林的結(jié)果來(lái)去除噪聲特征
3. 如果你的特征空間和觀(guān)測(cè)樣本都很大,有足夠的計(jì)算資源和時(shí)間,試試SVM吧,
最后是這位老司機(jī)的一點(diǎn)人生經(jīng)驗(yàn):好的數(shù)據(jù)遠(yuǎn)比模型本身重要,記住一定要使用你在對(duì)應(yīng)領(lǐng)域的知識(shí)來(lái)進(jìn)行完備的特征工程的工作;然后還有一個(gè)有效途徑就是多使用ensembles,就是多個(gè)模型混合,給出結(jié)果。
個(gè)人想法:
本文加粗或者斜體字都是我自己的觀(guān)點(diǎn)和補(bǔ)充。本文提到了多重共線(xiàn)性和正則化,如果不知道這個(gè)的話(huà),是無(wú)法很好的理解這些內(nèi)容的,我后面會(huì)寫(xiě)文章總結(jié)介紹一下多重共線(xiàn)性以及正則化相關(guān)的內(nèi)容~
數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼
若不方便掃碼,搜微信號(hào):CDAshujufenxi
LSTM 模型輸入長(zhǎng)度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長(zhǎng)序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報(bào)考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計(jì)的實(shí)用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶(hù) ...
2025-07-11尊敬的考生: 您好! 我們誠(chéng)摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實(shí)施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價(jià)值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡(jiǎn)稱(chēng) BI)深度融合的時(shí)代,BI ...
2025-07-10SQL 在預(yù)測(cè)分析中的應(yīng)用:從數(shù)據(jù)查詢(xún)到趨勢(shì)預(yù)判? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代,預(yù)測(cè)分析作為挖掘數(shù)據(jù)潛在價(jià)值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢(xún)結(jié)束后:分析師的收尾工作與價(jià)值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢(xún)結(jié)束)并非工作的終點(diǎn),而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報(bào)考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭(zhēng)搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢(shì)性檢驗(yàn):捕捉數(shù)據(jù)背后的時(shí)間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢(shì)性檢驗(yàn)如同一位耐心的偵探,專(zhuān)注于從單 ...
2025-07-09year_month數(shù)據(jù)類(lèi)型:時(shí)間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時(shí)間是最不可或缺的維度之一,而year_month數(shù)據(jù)類(lèi)型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實(shí)戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗(yàn):數(shù)據(jù)趨勢(shì)與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢(shì)變化以及識(shí)別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國(guó)內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對(duì)策略? 長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門(mén)控機(jī)制,在 ...
2025-07-07統(tǒng)計(jì)學(xué)方法在市場(chǎng)調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場(chǎng)調(diào)研是企業(yè)洞察市場(chǎng)動(dòng)態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計(jì)學(xué)方法則是市場(chǎng)調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書(shū)考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動(dòng)力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專(zhuān)業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動(dòng)力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開(kāi)啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價(jià)值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03