Weka數據預處理(一)
對於數據挖掘而言,我們往往僅關注實質性的挖掘算法,如分類、聚類、關聯規則等,而忽視待挖掘數據的質量,但是高質量的數據才能產生高質量的挖掘結果,否則只有"Garbage in garbage out"了。保證待數據數據質量的重要一步就是數據預處理(Data Pre-Processing),在實際操作中,數據准備階段往往能占用整個挖掘過程6~8成的時間。本文就weka工具中的數據預處理方法作一下介紹。
Weka 主要支持一種ARFF格式的數據,含有很多數據過濾方法。關於ARFF格式文件,可以在此處了解詳情。
Weka的數據預處理又叫數據過濾,他們可以在weka.filters中找到。根據過濾算法的性質,可以分為有監督的(SupervisedFilter)和無監督的(UnsupervisedFilter)。對於前者,過濾器需要設置一個類屬性,要考慮數據集中類的屬性及其分布,以確定最佳的容器的數量和規模;而后者類的屬性可以不存在。同時,這些過濾算法又可歸結為基於屬性的(attribute)和基於實例的(instance)。基於屬性的方法主要是用於處理列,例如,添加或刪除列;而基於實例的方法主要是用於處理行,例如,添加或刪除行。
數據過濾主要解決以下問題(老生常談的):
數據的缺失值處理、標准化、規范化和離散化處理。
數據的缺失值處理:weka.filters.unsupervised.attribute.ReplaceMissingValues。對於數值屬性,用平均值代替缺失值,對於nominal屬性,用它的mode(出現最多的值)來代替缺失值。
標准化(standardize):類weka.filters.unsupervised.attribute.Standardize。標准化給定數據集中所有數值屬性的值到一個0均值和單位方差的正態分布。
規范化(Nomalize):類weka.filters.unsupervised.attribute.Normalize。規范化給定數據集中的所有數值屬性值,類屬性除外。結果值默認在區間[0,1],但是利用縮放和平移參數,我們能將數值屬性值規范到任何區間。如:但scale=2.0,translation=-1.0時,你能將屬性值規范到區間[-1,+1]。
離散化(discretize):類weka.filters.supervised.attribute.Discretize和weka.filters.unsupervised.attribute.Discretize。分別進行監督和無監督的數值屬性的離散化,用來離散數據集中的一些數值屬性到分類屬性。
下文將詳細介紹一下Weka數據過濾類。
Weka數據預處理(二)
首先來看一下,有關屬性—有監督過濾器。
AddClassification
該過濾器使用給定的分類器對原始數據添加分類標簽,並給出類的分布以及關於原始數據集的錯誤分類標記。
其實就是利用分類算法對原始數據集進行預分類,其結果與在classify階段得到的結果基本一致,同樣包括分類的正確率等信息。
AttributeSelection
該過濾器,用於進行屬性選擇。根據給定的挖掘任務,利用合適的評估器,選擇最有利於當前挖掘任務的屬性。
ClassOrder
該過濾器用於改變的數據對象順序,適用於binary對象和nominal對象。
Discretize
離散化過濾器,用於將連續屬性離散化。使用頻率非常高的一個過濾器,在實際應用當中,離散化也是很常見的數據預處理步驟。
NorminalToBinary
標稱值轉化為二分值。舉個例子吧,看官請看下圖,一目了然。
Nominal value
Binary value
下面談到的是實例—有監督過濾器
Resample
讓人又愛又恨的抽樣過濾器。利用放回或者不放回方法抽取特定大小的隨機樣本。
抽樣方法有很多種,基於水庫的、鏈式抽樣、分層抽樣等等。
SMOTE
同樣是抽樣過濾器,叫綜合少數過采樣技術。他要求被采樣的原始數據集必須全部存儲在內存中。詳細內容可以參考Synthetic Minority Over-sampling Technique。
SpreadSubsamp
該分類器需要得知類標是屬性中的哪一個.當獲得了類標之后,他會計算出類標屬性的分布,同時,按照參數M,指定類標分布的最大差距,比如當給出參數W時,調整數據實例的權重。
注意,M參數設定值為l時,那么就認為是均勻分布,當設定為0的時候,那么不進行類標分布的拓展(SPread);如果設定大於l,那么這個值就表示了分布最大的類標屬性(類標屬性最為常見的值)和分布最小的屬性(類標屬性最為稀少的值)的分布的比例。
StratfiedRemoveFold
該過濾器簡單的使用n重交叉驗證的方法,將數據集進行分割,並返回按照參數指定的子集。
關於無監督方法的過濾器,可以參考:http://www.cnblogs.com/htynkn/archive/2012/04/02/weka_3.html
參考: