上一篇: 數(shù)據(jù)挖掘:理論與算法筆記1-走進(jìn)數(shù)據(jù)科學(xué)
下一篇: [數(shù)據(jù)挖掘:理論與算法筆記3-從貝葉斯到?jīng)Q策樹]
(http://www.reibang.com/p/61e5ea13dfc8)
2. 數(shù)據(jù)預(yù)處理: 抽絲剝繭,去偽存真
2.1 數(shù)據(jù)清洗
數(shù)據(jù)缺失有以下幾種類型
a. Missing completely at random: 缺失的概率是隨機(jī)的寝凌,比如門店的計(jì)數(shù)器因?yàn)閿嚯姅嗑W(wǎng)等原因在某個(gè)時(shí)段數(shù)據(jù)為空柒傻。
b. Missing conditionally at random: 數(shù)據(jù)是否缺失取決于另外一個(gè)屬性,比如一些女生不愿意填寫自己的體重较木。
c. Not missing at random: 數(shù)據(jù)缺失與自身的值有關(guān)红符,比如高收入的人可能不愿意填寫收入。
處理的辦法也有幾種類型
a. 刪數(shù)據(jù)伐债,如果缺失數(shù)據(jù)的記錄占比比較小预侯,直接把這些記錄刪掉完事。
b. 手工填補(bǔ)泳赋,或者重新收集數(shù)據(jù)雌桑,或者根據(jù)domain knowledge來補(bǔ)數(shù)據(jù)喇喉。
c. 自動(dòng)填補(bǔ)祖今,簡(jiǎn)單的就是均值填充,或者再加一個(gè)概率分布看起來更真實(shí)些,也可以結(jié)合實(shí)際情況通過公式計(jì)算千诬,比如門店計(jì)數(shù)缺失耍目,我們就是參考過往的客流數(shù)據(jù),轉(zhuǎn)化數(shù)據(jù)徐绑,缺失時(shí)段的銷售額邪驮,用一個(gè)簡(jiǎn)單公式自動(dòng)計(jì)算回補(bǔ)。
Outlier(離群點(diǎn))
Outlier在數(shù)據(jù)挖掘中是一件很麻煩的事情傲茄,比如我們收集了一堆身高數(shù)據(jù)毅访,其中有一個(gè)人是姚明,他的身高值就會(huì)顯得特別突兀盘榨。這對(duì)某些算法影響很大喻粹,比如最小二乘,
2.2 異常值與重復(fù)數(shù)據(jù)監(jiān)測(cè)
局部離群點(diǎn)因子(Local Outlier Factor, LOF)
對(duì)比某一點(diǎn)的局部密度和臨近區(qū)域的密度, A點(diǎn)的局部密度遠(yuǎn)低于其臨近區(qū)域的密度草巡,所以A就是一個(gè)離群點(diǎn)LOF算法邏輯如下:
a. 計(jì)算k-distance of A:點(diǎn)A的第k距離守呜,也就距離A第k遠(yuǎn)的點(diǎn)的距離,不包括A, 記為k-distance(p)
b. 計(jì)算k-distance neighborhood of A:點(diǎn)A的第k距離鄰域山憨,就是A的第k距離以內(nèi)的所有點(diǎn)查乒,包括第k距離, 記為Nk(A) [k為下角標(biāo)]
c. 計(jì)算reachability-distance:可達(dá)距離,若小于第k距離郁竟,則可達(dá)距離為第k距離玛迄,若大于第k距離,則可達(dá)距離為真實(shí)距離
d. 計(jì)算local reachability density:局部可達(dá)密度, 密度越高則可達(dá)距離之和越小枪孩,而LRD越大
e. 計(jì)算local outlier factor: 局部離群因子
Duplicate Records
如果高度疑似的樣本是挨著的蔑舞,就可以用滑動(dòng)窗口對(duì)比拒担,為了讓相似記錄相鄰,可以每條記錄生成一個(gè)hash key, 根據(jù)key去排序攻询。
2.3 類型轉(zhuǎn)換與采樣
經(jīng)過了缺失填充和去重从撼,有了error free的數(shù)據(jù)集之后還需要做一些轉(zhuǎn)換工作,比如說類型钧栖。數(shù)據(jù)類型有Continues低零,Discrete,Ordinal(比如優(yōu)良中差), Nominal(比如職業(yè)), Nominal比較特殊拯杠,我們用one-hot encoding就好了掏婶。
采樣
為了解決數(shù)據(jù)庫IO瓶頸,可以通過對(duì)數(shù)據(jù)采樣來降低時(shí)間復(fù)雜度潭陪,Aggregation也是減少數(shù)據(jù)量的一種方式雄妥。
大多數(shù)機(jī)器學(xué)習(xí)算法假設(shè)數(shù)據(jù)是均勻分布的最蕾,實(shí)際上經(jīng)常會(huì)遇到不平衡數(shù)據(jù)集,老厌,此時(shí)多數(shù)類主導(dǎo)少數(shù)類瘟则,分類器更偏向于多數(shù)類。當(dāng)數(shù)據(jù)量足夠大的時(shí)候應(yīng)當(dāng)考慮減少多數(shù)類的大小來平衡數(shù)據(jù)集枝秤,這叫欠采樣醋拧,當(dāng)數(shù)據(jù)量不足時(shí)應(yīng)該嘗試增加稀有樣本數(shù)量來平衡數(shù)據(jù)集,這叫過采樣淀弹。如果少數(shù)類樣本實(shí)在采集不到了丹壕,考慮通過隨機(jī)過采樣算法合成少數(shù)類,比如SMOTE(Synthetic Minority Oversampling Technique)
整體準(zhǔn)確率不適用與不平衡數(shù)據(jù)集薇溃,需要引入新的度量模式比如G-mean, 它會(huì)看正類上的準(zhǔn)確率雀费,再看負(fù)類上的準(zhǔn)確率,然后兩者相乘痊焊。
另一種度量模式是F-measure, 常見于衡量推薦算法盏袄。F-Measure是Precision和Recall加權(quán)調(diào)和平均:
2.4 數(shù)據(jù)描述與可視化
正則化
因?yàn)閿?shù)據(jù)的衡量單位不一,可以用Normalization把數(shù)據(jù)映射到[0.1]區(qū)間薄啥,常見的有min-max normalization和z-score normalization.
均值度量
數(shù)據(jù)的一般性描述有mean, median, mode, variance.
mean是均值辕羽,median取數(shù)據(jù)排序后在中間位置的值,避免因?yàn)闃O端離群點(diǎn)影響客觀評(píng)價(jià), mode是出現(xiàn)頻率最高的元素垄惧,其實(shí)用的比較少刁愿,variance則是衡量數(shù)據(jù)集與其均值的偏離。
數(shù)據(jù)相關(guān)性
統(tǒng)計(jì)學(xué)之父Pearson有兩個(gè)相關(guān)系數(shù)公式
Pearson correlation coefficient如下:
r是一個(gè)-1到1之間的值到逊,r>0則正相關(guān)铣口,r<0則負(fù)相關(guān), 注意r=0嚴(yán)格意義也不能說不相關(guān),只能說非線性相關(guān)觉壶。
Pearson chi-square公式如下:
這兩公式都是計(jì)算相關(guān)性的脑题,顯然前者適用與有metric data的情況,后者適用于分類統(tǒng)計(jì)的情況铜靶。
可視化
一維數(shù)據(jù)圓餅圖叔遂,柱狀圖;二維數(shù)據(jù)散點(diǎn)圖争剿;三維數(shù)據(jù)用三維坐標(biāo)呈現(xiàn)已艰;高維數(shù)據(jù)需要先做轉(zhuǎn)換或映射,比如用matlab的Box Plots蚕苇,也可以用平行坐標(biāo)呈現(xiàn)哩掺。最后介紹了兩個(gè)軟件
CiteSpace(呈現(xiàn)文章引用情況), Gephi可以把元素之間關(guān)系用網(wǎng)絡(luò)形式展現(xiàn)(如社交關(guān)系),下圖為Gephi生成:
要對(duì)Gephi了解更多可以看底部reference中知乎的一篇文章涩笤。
2.5 特征選擇
這節(jié)開始介紹Feature Selection和Feature Extraction兩個(gè)核心算法
當(dāng)我們做特定分析的時(shí)候嚼吞,可能屬性非常多幔嫂,但有些屬性是不相關(guān)的,有些屬性是重復(fù)的誊薄,所以我們需要用Feature Selection挑選出來最相關(guān)的屬性降低問題難度。
熵增益(Entropy Information Gain)
假設(shè)我們遇到的特定問題是要猜測(cè)某個(gè)人的性別锰茉,男女比例的概率各一半呢蔫,如果沒有任何額外信息我們隨機(jī)猜測(cè)的結(jié)果只能是五五分。再假設(shè)有60%的人不抽煙飒筑,40%的人是煙民片吊,而且抽煙的人95%是男人,5%是女人协屡,不抽煙的人當(dāng)中80%是女人俏脊,20%是男人。知道一個(gè)是否抽煙以后再判斷他/她的性別就有把握多了肤晓。
此處引入熵(Entropy)的概率來衡量系統(tǒng)的不確定性爷贫,下圖第一行是計(jì)算熵的公式,如果不知道是否抽煙的信息补憾,則熵值為1漫萄,即不確定性最高。然后分別計(jì)算出不抽煙人群的熵值為0.7219盈匾,抽煙人群的熵值為0.2864腾务,整體熵值為0.5477, 1-0.5477=0.4523, 這個(gè)數(shù)字就是信息增量(Information Gain)
Branch and Bound(分支定界)
如果我們想從n個(gè)屬性中挑選出m個(gè)最優(yōu)屬性削饵,需要注意算法復(fù)雜度會(huì)隨n的增長(zhǎng)呈現(xiàn)指數(shù)級(jí)爆炸增長(zhǎng)岩瘦,計(jì)算量會(huì)變得非常大,為了降低復(fù)雜度這里引入了分支定界的剪枝算法窿撬。比如我們要從5個(gè)屬性中挑選出兩個(gè)相關(guān)性最強(qiáng)的屬性启昧,可以先畫一個(gè)top-down的搜索樹,每當(dāng)往下推一層就減少一個(gè)屬性劈伴,根據(jù)屬性的單調(diào)性假設(shè)箫津,屬性越少效能越低,所以如果發(fā)現(xiàn)節(jié)點(diǎn)(1,3,4,5)小于左邊某個(gè)只有兩個(gè)屬性的節(jié)點(diǎn)(2,3)的效能宰啦,則可以忽略節(jié)點(diǎn)(1,3,4,5)下面的計(jì)算苏遥,把這一整支都直接刪除,從而減少計(jì)算量赡模。特征選擇還有sequential forward, sequential backward, simulated annealing(模擬退火), tabu search(競(jìng)技搜索), genetic algorithms(遺傳算法)等方式去優(yōu)化田炭。
2.6 主成分分析
這一節(jié)講Feature Extraction, 圖像深度識(shí)別提取edge就屬于Feature Extraction.
Principal Component Analysis(主成分分析)
PCA又是Pearson最早提出的胎食,主要目的是降維策泣,分析主成分提取最大的個(gè)體差異變量,削減回歸分析和聚類分析中變量的數(shù)目,方式是通過正交變換將一系列可能線性相關(guān)的變量轉(zhuǎn)換為一組線性不相關(guān)的新變量杠人。
我們先看一個(gè)二維圖像的例子,左邊是原始數(shù)據(jù)徒欣,橫軸和縱軸可以當(dāng)作高和寬炼杖,經(jīng)過轉(zhuǎn)換,實(shí)際是把坐標(biāo)順時(shí)針轉(zhuǎn)動(dòng)了45度景用,這樣一來縱軸的差異就很小了, 這需要一點(diǎn)線性代數(shù)知識(shí)來生成轉(zhuǎn)置矩陣涵叮。經(jīng)過PCA轉(zhuǎn)換后會(huì)發(fā)現(xiàn)北愛爾蘭是個(gè)離群點(diǎn)
看回前面的表確實(shí)北愛爾蘭人吃更多fresh patatoes, 但是少消耗很多fresh fruits, cheese, fish and alcoholic drinks 想像一下,不管多少維空間喊积,我們可以用一根投影軸線插進(jìn)去烹困,讓空間中的每個(gè)點(diǎn)與這個(gè)線上某個(gè)點(diǎn)的距離的平方和最小,線上的這個(gè)點(diǎn)就是高維空間的投影了乾吻。
2.7 線性判別分析
PCA屬于非監(jiān)督學(xué)習(xí)髓梅,不考慮class information, 如果是有標(biāo)簽的數(shù)據(jù)我們就要用LDA了, 它能夠保留區(qū)分信息拟蜻。
Linear Discriminant Analysis
LDA的原理是,將帶上標(biāo)簽的數(shù)據(jù)(點(diǎn))枯饿,通過投影的方法酝锅,投影到維度更低的空間中,使得投影后的點(diǎn)奢方,會(huì)形成按類別區(qū)分搔扁,一簇一簇的情況,相同類別的點(diǎn)袱巨,將會(huì)在投影后的空間中更接近。雖然也是降維碳抄,但好的LDA算法對(duì)不同類別是有明顯的區(qū)分度的愉老。
具體的推導(dǎo)我就偷懶省去了,有興趣的可以看底部reference中的鏈接爷光。
上一篇: 數(shù)據(jù)挖掘:理論與算法筆記1-走進(jìn)數(shù)據(jù)科學(xué)
下一篇: [數(shù)據(jù)挖掘:理論與算法筆記3-從貝葉斯到?jīng)Q策樹]
(http://www.reibang.com/p/61e5ea13dfc8)
references:
機(jī)器學(xué)習(xí)-異常檢測(cè)算法(二):Local Outlier Factor
局部異常因子算法-LOF
Local outlier factor
Fast Branch & Bound Algorithm in Feature Selection
Principal Component AnalysisExplained Visually
降維算法二:LDA(Linear Discriminant Analysis)
介紹用Gephi進(jìn)行數(shù)據(jù)可視化