1、引言
數(shù)據(jù)預處理的主要任務如下:
(1)數(shù)據(jù)清理:填寫空缺值撬呢,平滑噪聲數(shù)據(jù),識別妆兑,刪除孤立點魂拦,解決不一致性
(2)數(shù)據(jù)集成:集成多個數(shù)據(jù)庫,數(shù)據(jù)立方體搁嗓,文件
(3)數(shù)據(jù)變換:規(guī)范化(消除冗余屬性)和聚集(數(shù)據(jù)匯總)芯勘,將數(shù)據(jù)從一個較大的子空間投影到一個較小的子空間
(4)數(shù)據(jù)歸約:得到數(shù)據(jù)集的壓縮表示,量小腺逛,但可以得到相近或相同的結(jié)果
(5)數(shù)據(jù)離散化:數(shù)據(jù)規(guī)約的一部分荷愕,通過概念分層和數(shù)據(jù)的離散化來規(guī)約數(shù)據(jù),對數(shù)字型數(shù)據(jù)比較重要棍矛。
2安疗、數(shù)據(jù)清理
2.1 處理空缺值
處理空缺值的方法主要有:
忽略該記錄;
去掉屬性够委;
手工填寫空缺值荐类;
使用默認值;
使用屬性平均值茁帽;
使用同類樣本平均值玉罐;
預測最可能的值。
2.2 處理噪聲數(shù)據(jù)
處理噪聲數(shù)據(jù)的方法主要有:分箱潘拨;聚類吊输;計算機和人工檢查結(jié)合;回歸战秋。
分箱
首先來說一下分箱璧亚,大家可能對這個過程比較陌生,分箱方法是一種簡單常用的預處理方法脂信,通過考察相鄰數(shù)據(jù)來確定最終值癣蟋。所謂“分箱”,實際上就是按照屬性值劃分的子區(qū)間狰闪,如果一個屬性值處于某個子區(qū)間范圍內(nèi)疯搅,就稱把該屬性值放進這個子區(qū)間所代表的“箱子”內(nèi)。把待處理的數(shù)據(jù)(某列屬性值)按照一定的規(guī)則放進一些箱子中埋泵,考察每一個箱子中的數(shù)據(jù)幔欧,采用某種方法分別對各個箱子中的數(shù)據(jù)進行處理罪治。在采用分箱技術(shù)時,需要確定的兩個主要問題就是:如何分箱以及如何對每個箱子中的數(shù)據(jù)進行平滑處理礁蔗。
分箱的方法:有4種:等深分箱法觉义、等寬分箱法、最小熵法和用戶自定義區(qū)間法浴井。
統(tǒng)一權(quán)重晒骇,也成等深分箱法,將數(shù)據(jù)集按記錄行數(shù)分箱磺浙,每箱具有相同的記錄數(shù)洪囤,每箱記錄數(shù)稱為箱子的深度。這是最簡單的一種分箱方法撕氧。
統(tǒng)一區(qū)間瘤缩,也稱等寬分箱法,使數(shù)據(jù)集在整個屬性值的區(qū)間上平均分布伦泥,即每個箱的區(qū)間范圍是一個常量剥啤,稱為箱子寬度。
用戶自定義區(qū)間奄喂,用戶可以根據(jù)需要自定義區(qū)間铐殃,當用戶明確希望觀察某些區(qū)間范圍內(nèi)的數(shù)據(jù)分布時,使用這種方法可以方便地幫助用戶達到目的跨新。
例:客戶收入屬性income排序后的值(人民幣元):800 1000 1200 1500 1500 1800 2000 2300 2500 2800 3000 3500 4000 4500 4800 5000富腊,分箱的結(jié)果如下。
統(tǒng)一權(quán)重:設定權(quán)重(箱子深度)為4域帐,分箱后
箱1:800 1000 1200 1500
箱2:1500 1800 2000 2300
箱3:2500 2800 3000 3500
箱4:4000 4500 4800 5000
統(tǒng)一區(qū)間:設定區(qū)間范圍(箱子寬度)為1000元人民幣赘被,分箱后
箱1:800 1000 1200 1500 1500 1800
箱2:2000 2300 2500 2800 3000
箱3:3500 4000 4500
箱4:4800 5000
用戶自定義:如將客戶收入劃分為1000元以下、10002000肖揣、20003000民假、3000~4000和4000元以上幾組,分箱后
箱1:800
箱2:1000 1200 1500 1500 1800 2000
箱3:2300 2500 2800 3000
箱4:3500 4000
箱5:4500 4800 5000
分箱之后的數(shù)據(jù)平滑方法主要有:按平均值平滑龙优、按邊界值平滑和按中值平滑羊异。
⑴按平均值平滑
對同一箱值中的數(shù)據(jù)求平均值,用平均值替代該箱子中的所有數(shù)據(jù)彤断。
⑵按邊界值平滑
用距離較小的邊界值替代箱中每一數(shù)據(jù)野舶。
⑶按中值平滑
取箱子的中值,用來替代箱子中的所有數(shù)據(jù)宰衙。
聚類
將物理的或抽象對象的集合分組為由類似的對象組成的多個類平道。找出并清除那些落在簇之外的值(孤立點),這些孤立點被視為噪聲供炼。
回歸
試圖發(fā)現(xiàn)兩個相關(guān)的變量之間的變化模式一屋,通過使數(shù)據(jù)適合一個函數(shù)來平滑數(shù)據(jù)窘疮,即通過建立數(shù)學模型來預測下一個數(shù)值,包括線性回歸和非線性回歸冀墨。
計算機和人工檢查結(jié)合
計算機檢測可疑數(shù)據(jù)闸衫,然后對他們進行人工判斷
3、數(shù)據(jù)集成
將多文件或者多數(shù)據(jù)庫中的異構(gòu)數(shù)據(jù)進行合并轧苫,然后存放在一個一致的數(shù)據(jù)存儲中楚堤。考慮以下幾個問題:
1.模式匹配
2.數(shù)據(jù)冗余
3.數(shù)據(jù)值沖突
3.1 模式匹配
來自多個數(shù)據(jù)集合的數(shù)據(jù)由于在命名上存在差異導致等價的實體具有不同的名稱含懊,這給數(shù)據(jù)集成帶來了挑戰(zhàn)。怎樣才能更好地對來源不同的多個實體進行匹配是擺在數(shù)據(jù)集成面前的第一個問題衅胀,涉及到實體識別問題岔乔,主要利用元數(shù)據(jù)來進行區(qū)分。
3.2 數(shù)據(jù)冗余
集成多個數(shù)據(jù)庫時出現(xiàn)冗余數(shù)據(jù)的主要原因:同一屬性在不同的數(shù)據(jù)庫中會有不同的字段名滚躯;一個屬性可以由另外一個表導出雏门。
有些冗余可以被相關(guān)分析檢測到:檢測各個屬性之間的相關(guān)性。
事先根據(jù)其元數(shù)據(jù)或相關(guān)性分析對數(shù)據(jù)進行預處理掸掏,就能夠減少或避免結(jié)果數(shù)據(jù)中的冗余與不一致性茁影,提高數(shù)據(jù)挖掘的質(zhì)量。
3.3 數(shù)據(jù)值沖突
數(shù)據(jù)值沖突問題主要表現(xiàn)為來源不同的統(tǒng)一實體具有不同的數(shù)據(jù)值丧凤。
4募闲、數(shù)據(jù)變換
數(shù)據(jù)變換涉及以下幾個問題:
1.平滑
2.聚集
3.數(shù)據(jù)概化
4.規(guī)范化
4.1 平滑
去掉數(shù)據(jù)中的噪聲,主要有分箱愿待、回歸和聚類等方法浩螺;
4.2 聚集
數(shù)據(jù)匯總,數(shù)據(jù)立方體的構(gòu)建仍侥,數(shù)據(jù)立方體的計算/物化(一個數(shù)據(jù)立方體在方體的最底層叫基本方體要出,基本方體就是已知存在的數(shù)據(jù),對現(xiàn)有的數(shù)據(jù)按照不同維度進行匯總就可以得到不同層次的方體农渊,所有的方體聯(lián)合起來叫做一個方體的格患蹂,也叫數(shù)據(jù)立方體。數(shù)據(jù)立方體中所涉及到的計算就是匯總)
4.3 數(shù)據(jù)概化
使用概念分層的方式砸紊,利用高層的概念來替換低層或原始數(shù)據(jù)传于;
4.4 規(guī)范化
將數(shù)據(jù)按比例縮放,使這些數(shù)據(jù)落入到一個較小的特定的區(qū)間之內(nèi)批糟。規(guī)范化的三種常用的方式有最大-最小規(guī)范化格了, z分數(shù)(z-score)規(guī)范化(或零均值規(guī)范化)和小數(shù)定標規(guī)范化。
最大-最小規(guī)范化
最小—最大規(guī)范化對原始數(shù)據(jù)進行線性變換徽鼎。假設和分別為屬性A的最大值maxA和最小值minA盛末。最小—最大規(guī)范化通過計算:
把A的值映射到區(qū)間[new_minA,new_maxA]中弹惦。
最小—最大規(guī)范化保持原始數(shù)據(jù)值之間的聯(lián)系,但是如果今后的輸入實例落在A的原數(shù)據(jù)值域之外悄但,則該方法將面臨“越界”錯誤棠隐。
z分數(shù)規(guī)范化
z分數(shù)規(guī)范化基于A的均值和標準差對屬性值進行規(guī)范化:
當屬性A的實際最小值和最大值未知,或者離群點左右了最小—最大規(guī)范化時檐嚣,該方法是有效的助泽。
小數(shù)定標規(guī)范化
小數(shù)定標規(guī)范化通過移動屬性A的值的小數(shù)點位置進行規(guī)范化。小數(shù)點的移動位數(shù)依賴于A的最大絕對值:
5嚎京、數(shù)據(jù)歸約
數(shù)據(jù)歸約可以用來得到數(shù)據(jù)集的歸約表示嗡贺,它小得多,但可以產(chǎn)生相同(或幾乎相同的)分析結(jié)果鞍帝。
常見的數(shù)據(jù)歸約策略有:數(shù)據(jù)立方體聚集诫睬、維歸約、數(shù)據(jù)壓縮帕涌、數(shù)值歸約摄凡。
5.1 數(shù)據(jù)立方體聚集
數(shù)據(jù)立方體是根據(jù)不同的維度對數(shù)據(jù)進行匯總,立方體的越頂層蚓曼,其匯總程度就越高亲澡,數(shù)據(jù)量就越少。對數(shù)據(jù)的表示就越概化纫版。最底層的方體對應于基本方體床绪,基本方體對應于感興趣的實體。在數(shù)據(jù)立方體中存在著不同級別的匯總捎琐,數(shù)據(jù)立方體可以看做方體的格会涎,每一個較高層次的抽象將進一步減少結(jié)果數(shù)據(jù)集。數(shù)據(jù)立方體提供了對預計算的匯總數(shù)據(jù)的快速訪問瑞凑,原則是使用與給定任務相關(guān)的最小方體末秃,并且在可能的情況下,對于匯總數(shù)據(jù)的查詢應當使用數(shù)據(jù)立方體籽御。
5.2 維歸約
用來檢測或刪除不相關(guān)的或基本不相關(guān)的屬性或冗余屬性或維练慕,來減少數(shù)據(jù)量。常用的方法:
逐步向前選擇
從空屬性集開始技掏,每次選擇都選擇當前屬性集中最符合的目標铃将,最好的屬性,加到當前的屬性集中哑梳,這樣逐步的向前選擇劲阎,把有用的屬性一個一個的添加進來。
逐步向后刪除
從屬性全集開始鸠真,每次刪除還在當前屬性集中的最不適合的那個屬性悯仙,最壞的屬性龄毡,這樣一個一個的刪除,最后留下來的就是相關(guān)的屬性锡垄。
向前選擇和向后刪除相結(jié)合
每次選擇一個最好的屬性沦零,并且刪除一個最壞的屬性。
判定歸納樹
5.3 數(shù)據(jù)壓縮
數(shù)據(jù)壓縮主要通過使用一些編碼機制來壓縮數(shù)據(jù)集货岭。分為無損壓縮(可以根據(jù)壓縮之后的數(shù)據(jù)完整的構(gòu)造出壓縮之前的數(shù)據(jù)wrar. zip等路操,如字符串壓縮)和有損壓縮(無法通過壓縮之后的數(shù)據(jù)來完整的構(gòu)造出壓縮之前的數(shù)據(jù),如音頻/視頻壓縮千贯,有時可以在不解壓縮整體數(shù)據(jù)的情況下屯仗,重構(gòu)某個片段,主要應用于流媒體傳輸)搔谴。
兩種有損數(shù)據(jù)壓縮的方法:小波變換和主要成分分析
主成分分析
將原數(shù)據(jù)投影到一個新的空間祭钉,通常投影到一個更小的空間(維度減少),而且投影的時候己沛,著力體驗更重要的成分。
小波變換
參考:http://book.2cto.com/201210/5892.html
5.4 數(shù)值歸約
使用較小的距境,替代的數(shù)據(jù)來估計申尼,替換,表示原數(shù)據(jù)(用參數(shù)模型):通過選擇替代的垫桂,較小的數(shù)據(jù)表示形式來減少數(shù)據(jù)量师幕。
方法主要有:
有參方法
使用一個參數(shù)模型來估計數(shù)據(jù),最后只要存儲參數(shù)即可诬滩,有線性回歸方法霹粥,多元回歸,對數(shù)線性模型(近似離散的多維數(shù)據(jù)概率分布)
無參方法
直方圖(將某屬性的數(shù)據(jù)劃分為不相交的子集或桶疼鸟,桶中放置該值的出現(xiàn)頻率后控,其中桶和屬性值的劃分規(guī)則有:等深,等寬空镜,V-最優(yōu)浩淘,MaxDiff)
聚類
將數(shù)據(jù)集劃分為聚類,然后通過聚類來表示數(shù)據(jù)集吴攒,如果數(shù)據(jù)可以組成各種不同的聚類张抄,則該技術(shù)非常有效,反之如果數(shù)據(jù)界線模糊洼怔,則該方法無效署惯。數(shù)據(jù)可以分層聚類,并被存儲在多層索引樹中)
選樣
允許用數(shù)據(jù)的較小隨機樣本(子集)表示大的數(shù)據(jù)集镣隶。對數(shù)據(jù)集D的樣本選擇方法有:簡單隨機選擇n個樣本极谊,不放回(由D的N個元組中抽取n個樣本)诡右,簡單隨機選擇n個樣本,回放(由D的N個元組中抽取n個樣本怀酷,元組被抽取后將被回放稻爬,同一元組可能再次被抽取到),
聚類選樣
聚類分析和簡單隨機選樣的結(jié)合蜕依,D中元組被分入到M個互不相交的聚類中桅锄,可以在其中的m個聚類上進行簡單隨機選樣,m<M),分層選樣(D被劃分為互不相交的層样眠,則可通過對每一層的簡單隨機選樣得到D的分層選樣)
6友瘤、數(shù)據(jù)離散
我們在跑模型的過程中都離不開特征離散的環(huán)節(jié),特別是一些連續(xù)值范圍絕大的特征檐束,不做離散化處理很容易過擬合辫秧,在數(shù)據(jù)特征處理過程中離散可以很好的解決這些問題,包括常知道的分箱處理等頻等距被丧。
從數(shù)據(jù)集的特征按照其取值可以分為連續(xù)特征和離散特征盟戏。連續(xù)特征也稱為定量特征,例如人的身高160190cm甥桂,年齡1860周歲等等柿究。 離散特征也稱定性特征,如性別(男/女)黄选、學歷(大專/本/碩/博)蝇摸, 城市(北上廣) 等, 此類特征的值域只限定于較少的取值办陷。連續(xù)特征的取值允許被排序貌夕,可進行算術(shù)運算;離散特征的取值有時允許被排序民镜, 但是其不能進行算術(shù)運算啡专。
在我們平時做分類預測問題過程中存在著大量的連續(xù)特征,基本的年齡殃恒、收入植旧、購買頻次/登陸次數(shù)/消費金額等等。 將連續(xù)特征離散化离唐,再將離散化的結(jié)果應 用于算法有很多好處病附。
1 離散化結(jié)果將會減少給定連續(xù)特征值的個數(shù),減小系統(tǒng)對存儲空間的實際需求亥鬓。
2 離散特征相對于連續(xù)特征來說更接近于知識層面的表示完沪。
3 通過離散化,數(shù)據(jù)被規(guī)約和簡化,對于使用者和專家來說覆积,離散化的數(shù)據(jù)都更易于理解听皿,使用和解釋。
4 離散化處理使得算法的學習更為準確和迅速宽档。
5 一系列算法只能應用于離散型數(shù)據(jù)尉姨, 使得離散化處理成為必要,而離散化又使很多算法的應用范圍擴展了吗冤。
但最優(yōu)離散化問題已經(jīng)被證明是一個NP-hard問題又厉。 離散化的方法有很多,在這里重點介紹離散化過程和不同的方法論椎瘟。
6.1 離散化步驟
對連續(xù)特征進行離散化處理覆致,一般經(jīng)過以下步驟:
1 對此特征進行排序。特別是對于大數(shù)據(jù)集肺蔚,排序算法的選擇要有助于節(jié)省時間煌妈,提高效率,減少離散化的整個過程的時間開支及復雜度宣羊。
2 選擇某個點作為候選斷點璧诵,用所選取的具體的離散化方法的尺度進行衡量此候選斷點是否滿足要求。
3 若候選斷點滿足離散化的衡量尺度, 則對數(shù)據(jù)集進行分裂或合并,再選擇下一個候選斷點胆胰,重復步驟(2)(3)味悄。
4 當離散算法存在停止準則時,如果滿足停止準則坪创,則不再進行離散化過程炕婶,從而得到最終的離散結(jié)果。
關(guān)于離散結(jié)果的好壞莱预,還是要看模型的效果柠掂。
6.2 離散化方法
(1)分箱 binning:分箱技術(shù)遞歸的用于結(jié)果劃分,可以產(chǎn)生概念分層依沮。
(2)直方圖分析 histogram:直方圖分析方法遞歸的應用于每一部分涯贞,可以自動產(chǎn)生多級概念分層。
(3)聚類分析:將數(shù)據(jù)劃分成簇危喉,每個簇形成同一概念層上的一個節(jié)點宋渔,每個簇可再分成多個子簇,形成子節(jié)點辜限。
(4)基于熵的離散化(基于統(tǒng)計學的)
(5)通過自然劃分分段:將數(shù)值區(qū)域劃分為相對一致的皇拣,易于閱讀的,看上去更直觀或自然的區(qū)間。
參考:http://blog.csdn.net/lizhengnanhua/article/details/8982968
http://www.cnblogs.com/zhizhan/p/4676085.html
http://blog.163.com/jw_67/blog/static/13619925620103942348990/
http://www.cnblogs.com/zpfzb2013/p/3936079.html
http://blog.csdn.net/meoop/article/details/40931731
https://zhuanlan.zhihu.com/p/24810288