在學(xué)習(xí)機(jī)器學(xué)習(xí)中,看過(guò)挺多案例,看到很多人在處理數(shù)據(jù)的時(shí)候,經(jīng)常把連續(xù)性特征離散化。為此挺好奇,為什么要這么做,什么情況下才要做呢。
一、離散化原因
數(shù)據(jù)離散化是指將連續(xù)的數(shù)據(jù)進(jìn)行分段,使其變?yōu)橐欢味坞x散化的區(qū)間。分段的原則有基于等距離、等頻率或優(yōu)化的方法。數(shù)據(jù)離散化的原因主要有以下幾點(diǎn):
1、算法需要
比如決策樹(shù)、樸素貝葉斯等算法,都是基于離散型的數(shù)據(jù)展開(kāi)的。如果要使用該類(lèi)算法,必須將離散型的數(shù)據(jù)進(jìn)行。有效的離散化能減小算法的時(shí)間和空間開(kāi)銷(xiāo),提高系統(tǒng)對(duì)樣本的分類(lèi)聚類(lèi)能力和抗噪聲能力。
2、離散化的特征相對(duì)于連續(xù)型特征更易理解,更接近知識(shí)層面的表達(dá)
比如工資收入,月薪2000和月薪20000,從連續(xù)型特征來(lái)看高低薪的差異還要通過(guò)數(shù)值層面才能理解,但將其轉(zhuǎn)換為離散型數(shù)據(jù)(底薪、高薪),則可以更加直觀的表達(dá)出了我們心中所想的高薪和底薪。
3、可以有效的克服數(shù)據(jù)中隱藏的缺陷,使模型結(jié)果更加穩(wěn)定
二、離散化的優(yōu)勢(shì)
在工業(yè)界,很少直接將連續(xù)值作為邏輯回歸模型的特征輸入,而是將連續(xù)特征離散化為一系列0、1特征交給邏輯回歸模型,這樣做的優(yōu)勢(shì)有以下幾點(diǎn):
1. 離散特征的增加和減少都很容易,易于模型的快速迭代;
2. 稀疏向量?jī)?nèi)積乘法運(yùn)算速度快,計(jì)算結(jié)果方便存儲(chǔ),容易擴(kuò)展;
3. 離散化后的特征對(duì)異常數(shù)據(jù)有很強(qiáng)的魯棒性:比如一個(gè)特征是年齡>30是1,否則0。如果特征沒(méi)有離散化,一個(gè)異常數(shù)據(jù)“年齡300歲”會(huì)給模型造成很大的干擾;
4. 邏輯回歸屬于廣義線性模型,表達(dá)能力受限;單變量離散化為N個(gè)后,每個(gè)變量有單獨(dú)的權(quán)重,相當(dāng)于為模型引入了非線性,能夠提升模型表達(dá)能力,加大擬合;
5. 離散化后可以進(jìn)行特征交叉,由M+N個(gè)變量變?yōu)镸*N個(gè)變量,進(jìn)一步引入非線性,提升表達(dá)能力;
6. 特征離散化后,模型會(huì)更穩(wěn)定,比如如果對(duì)用戶(hù)年齡離散化,20-30作為一個(gè)區(qū)間,不會(huì)因?yàn)橐粋€(gè)用戶(hù)年齡長(zhǎng)了一歲就變成一個(gè)完全不同的人。當(dāng)然處于區(qū)間相鄰處的樣本會(huì)剛好相反,所以怎么劃分區(qū)間是門(mén)學(xué)問(wèn);
7. 特征離散化以后,起到了簡(jiǎn)化了邏輯回歸模型的作用,降低了模型過(guò)擬合的風(fēng)險(xiǎn)。
三、離散化的方法
1、無(wú)監(jiān)督學(xué)習(xí)方法
等寬法
等寬法即是將屬性值分為具有相同寬度的區(qū)間,區(qū)間的個(gè)數(shù)k根據(jù)實(shí)際情況來(lái)決定。比如屬性值在[0,60]之間,最小值為0,最大值為60,我們要將其分為3等分,則區(qū)間被劃分為[0,20] 、[21,40] 、[41,60],每個(gè)屬性值對(duì)應(yīng)屬于它的那個(gè)區(qū)間
等頻法
等寬法即是將屬性值分為具有相同寬度的區(qū)間,區(qū)間的個(gè)數(shù)k根據(jù)實(shí)際情況來(lái)決定。比如有60個(gè)樣本,我們要將其分為k=3部分,則每部分的長(zhǎng)度為20個(gè)樣本。
基于聚類(lèi)的方法
基于聚類(lèi)的方法分為兩個(gè)步驟,即:
選定聚類(lèi)算法將其進(jìn)行聚類(lèi)
將在同一個(gè)簇內(nèi)的屬性值做為統(tǒng)一標(biāo)記。
注:基于聚類(lèi)的方法,簇的個(gè)數(shù)要根據(jù)聚類(lèi)算法的實(shí)際情況來(lái)決定,比如對(duì)于k-means算法,簇的個(gè)數(shù)可以自己決定,但對(duì)于DBSCAN,則是算法找尋簇的個(gè)數(shù)。
2、有監(jiān)督學(xué)習(xí)方法:
1R方法
基于信息熵的方法
基于卡方的方法
四、總結(jié)
模型是使用離散特征還是連續(xù)特征,其實(shí)是一個(gè)“海量離散特征+簡(jiǎn)單模型” 同 “少量連續(xù)特征+復(fù)雜模型”的權(quán)衡。既可以離散化用線性模型,也可以用連續(xù)特征加深度學(xué)習(xí)。就看是喜歡折騰特征還是折騰模型了。通常來(lái)說(shuō),前者容易,而且可以n個(gè)人一起并行做,有成功經(jīng)驗(yàn);后者目前看很贊,能走多遠(yuǎn)還須拭目以待。
-
模型
+關(guān)注
關(guān)注
1文章
3279瀏覽量
48974 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8428瀏覽量
132840
原文標(biāo)題:機(jī)器學(xué)習(xí)模型為什么要將特征離散化?
文章出處:【微信號(hào):Imgtec,微信公眾號(hào):Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論