數(shù)據(jù)挖掘機器學習總結(jié)
1 決策樹算法
機器學習中,決策樹是一個預測模型;它代表的是對象屬性值與對象值之間的一種映射關(guān)系。樹中每個節(jié)點表示某個對象,每個分叉路徑則代表的某個可能的屬性值,而每個葉結(jié)點則對應(yīng)具有上述屬性值的子對象。決策樹僅有單一輸出;若需要多個輸出,可以建立獨立的決策樹以處理不同輸出。
從數(shù)據(jù)產(chǎn)生決策樹的機器學習技術(shù)叫做決策樹學習, 通俗說就是決策樹。
決策樹學習也是數(shù)據(jù)挖掘中一個普通的方法。在這里,每個決策樹都表述了一種樹型結(jié)構(gòu),它由它的分支來對該類型的對象依靠屬性進行分類。每個決策樹可以依靠對源數(shù)據(jù)庫的分割進行數(shù)據(jù)測試。這個過程可以遞歸式的對樹進行修剪。當不能再進行分割或一個單獨的類可以被應(yīng)用于某一分支時,遞歸過程就完成了。另外,隨機森林分類器將許多決策樹結(jié)合起來以提升分類的正確率。 決策樹同時也可以依靠計算條件概率來構(gòu)造。決策樹如果依靠數(shù)學的計算方法可以取得更加理想的效果。
1.1 決策樹的工作原理
決策樹一般都是自上而下的來生成的。
選擇分割的方法有多種,但是目的都是一致的,即對目標類嘗試進行最佳的分割。
從根節(jié)點到葉子節(jié)點都有一條路徑,這條路徑就是一條“規(guī)則”。
決策樹可以是二叉的,也可以是多叉的。
對每個節(jié)點的衡量:
1) 通過該節(jié)點的記錄數(shù);
2) 如果是葉子節(jié)點的話,分類的路徑;
3) 對葉子節(jié)點正確分類的比例。
有些規(guī)則的效果可以比其他的一些規(guī)則要好。
1.2 ID3算法
1.2.1 概念提取算法CLS
1) 初始化參數(shù)C={E},E包括所有的例子,為根;
2) 如果C中的任一元素e同屬于同一個決策類則創(chuàng)建一個葉子節(jié)點YES終止;否則依啟發(fā)式標準,選擇特征Fi={V1, V2, V3,……, Vn}并創(chuàng)建判定節(jié)點,劃分C為互不相交的N個集合C1,C2,C3,……,Cn;
3) 對任一個Ci遞歸。
1.2.2 ID3算法
1) 隨機選擇C的一個子集W (窗口);
2) 調(diào)用CLS生成W的分類樹DT(強調(diào)的啟發(fā)式標準在后);
3) 順序掃描C搜集DT的意外(即由DT無法確定的例子);
4) 組合W與已發(fā)現(xiàn)的意外,形成新的W;
5) 重復2)到4),直到無例外為止。
啟發(fā)式標準:
只跟本身與其子樹有關(guān),采取信息理論用熵來量度。
熵是選擇事件時選擇自由度的量度,其計算方法為:P=freq(Cj,S)/|S|;INFO(S)=-SUM(P*LOG(P));SUM()函數(shù)是求j從1到n的和。Gain(X)=Info(X)-Infox(X);Infox(X)=SUM( (|Ti|/|T|)*Info(X);
為保證生成的決策樹最小,ID3算法在生成子樹時,選取使生成的子樹的熵(即Gain(S))最小的特征來生成子樹。
ID3算法對數(shù)據(jù)的要求:
1) 所有屬性必須為離散量;
2) 所有的訓練例的所有屬性必須有一個明確的值;
3) 相同的因素必須得到相同的結(jié)論且訓練例必須唯一。
1.3 C4.5算法
由于ID3算法在實際應(yīng)用中存在一些問題,于是Quilan提出了C4.5算法,嚴格上說C4.5只能是ID3的一個改進算法。
C4.5算法繼承了ID3算法的優(yōu)點,并在以下幾方面對ID3算法進行了改進:
1) 用信息增益率來選擇屬性,克服了用信息增益選擇屬性時偏向選擇取值多的屬性的`不足;
2) 在樹構(gòu)造過程中進行剪枝;
3) 能夠完成對連續(xù)屬性的離散化處理;
4) 能夠?qū)Σ煌暾麛?shù)據(jù)進行處理。
C4.5算法有如下優(yōu)點:
產(chǎn)生的分類規(guī)則易于理解,準確率較高。
C4.5算法有如下缺點:
在構(gòu)造樹的過程中,需要對數(shù)據(jù)集進行多次的順序掃描和排序,因而導致算法的低效。此外,C4.5只適合于能夠駐留于內(nèi)存的數(shù)據(jù)集,當訓練集大得無法在內(nèi)存容納時程序無法運行。
分類決策樹算法:
C4.5算法是機器學習算法中的一種分類決策樹算法,其核心算法是ID3算法。
分類決策樹算法是從大量事例中進行提取分類規(guī)則的自上而下的決策樹。
決策樹的各部分是:
根:學習的事例集;
枝:分類的判定條件;
葉:分好的各個類。
1.3.1 C4.5對ID3算法的改進
1) 熵的改進,加上了子樹的信息。
Split_Infox(X)= -SUM( (|T|/|Ti|)*LOG(|Ti|/|T|));
Gain ratio(X)= Gain(X)/Split_Infox(X);
2) 在輸入數(shù)據(jù)上的改進
、 因素屬性的值可以是連續(xù)量,C4.5對其排序并分成不同的集合后按照ID3算法當作離散量進行處理,但結(jié)論屬性的值必須是離散值。
② 訓練例的因素屬性值可以是不確定的,以?表示,但結(jié)論必須是確定的。
3) 對已生成的決策樹進行裁剪,減小生成樹的規(guī)模。
2 The k-means algorithm(k平均算法)
k-means algorithm是一個聚類算法,把n個對象根據(jù)它們的屬性分為k個分割,k < n。它與處理混合正態(tài)分布的最大期望算法很相似,因為他們都試圖找到數(shù)據(jù)中自然聚類的中心。它假設(shè)對象屬性來自于空間向量,并且目標是使各個群組內(nèi)部的均方誤差總和最小。
假設(shè)有k個群組Si, i=1,2,...,k。μi是群組Si內(nèi)所有元素xj的重心,或叫中心點。
k平均聚類發(fā)明于1956年,該算法最常見的形式是采用被稱為勞埃德算法(Lloyd algorithm)的迭代式改進探索法。勞埃德算法首先把輸入點分成k個初始化分組,可以是隨機的或者使用一些啟發(fā)式數(shù)據(jù)。然后計算每組的中心點,根據(jù)中心點的位臵把對象分到離它最近的中心,重新確定分組。繼續(xù)重復不斷地計算中心并重新分組,直到收斂,即對象不再改變分組(中心點位臵不再改變)。
勞埃德算法和k平均通常是緊密聯(lián)系的,但是在實際應(yīng)用中,勞埃德算法是解決k平均問題的啟發(fā)式法則,對于某些起始點和重心的組合,勞埃德算法可能實際上收斂于錯誤的結(jié)果。(上面函數(shù)中存在的不同的最優(yōu)解)
雖然存在變異,但是勞埃德算法仍舊保持流行,因為它在實際中收斂非?臁嶋H上,觀察發(fā)現(xiàn)迭代次數(shù)遠遠少于點的數(shù)量。然而最近,David Arthur和Sergei Vassilvitskii提出存在特定的點集使得k平均算法花費超多項式時間達到收斂。
近似的k平均算法已經(jīng)被設(shè)計用于原始數(shù)據(jù)子集的計算。
從算法的表現(xiàn)上來說,它并不保證一定得到全局最優(yōu)解,最終解的質(zhì)量很大程度上取決于初始化的分組。由于該算法的速度很快,因此常用的一種方法是多次運行k平均算法,選擇最優(yōu)解。
k平均算法的一個缺點是,分組的數(shù)目k是一個輸入?yún)?shù),不合適的k可能返回較差的結(jié)果。另外,算法還假設(shè)均方誤差是計算群組分散度的最佳參數(shù)。
3 SVM(支持向量機)
支持向量機,英文為Support Vector Machine,簡稱SV機(論文中一般簡稱SVM)。它是一種監(jiān)督式學習的方法,它廣泛的應(yīng)用于統(tǒng)計分類以及回歸分析中。
支持向量機屬于一般化線性分類器。它們也可以被認為是提克洛夫規(guī)范化(Tikhonov Regularization)方法的一個特例。這種分類器的特點是他們能夠同時最小化經(jīng)驗誤差與最大化幾何邊緣區(qū)。因此支持向量機也被稱為最大邊緣區(qū)分類器。
在統(tǒng)計計算中,最大期望(EM)算法是在概率(probabilistic)模型中尋找參數(shù)最大似然估計的算法,其中概率模型依賴于無法觀測的隱藏變量(Latent Variable)。最大期望經(jīng)常用在機器學習和計算機視覺的數(shù)據(jù)集聚(Data Clustering)領(lǐng)域。最大期望算法經(jīng)過兩個步驟交替進行計算,第一步是計算期望(E),也就是將隱藏變量像能夠觀測到的一樣包含在內(nèi)從而計算最大似然的期望值;另外一步是最大化(M),也就是最大化在 E 步上找到的最大似然的期望值從而計算參數(shù)的最大似然估計。M 步上找到的參數(shù)然后用于另外一個 E 步計算,這個過程不斷交替進行。
Vapnik等人在多年研究統(tǒng)計學習理論基礎(chǔ)上對線性分類器提出了另一種設(shè)計最佳準則。其原理也從線性可分說起,然后擴展到線性不可分的情況。甚至擴展到使用非線性函數(shù)中去,這種分類器被稱為支持向量機(Support Vector Machine,簡稱SVM)。支持向量機的提出有很深的理論背景。支持向量機方法是在近年來提出的一種新方法,但是進展很快,已經(jīng)被廣泛應(yīng)用在各個領(lǐng)域之中。
SVM的主要思想可以概括為兩點:(1) 它是針對線性可分情況進行分析,對于線性不可分的情況,通過使用非線性映射算法將低維輸入空間線性不可分的樣本轉(zhuǎn)化為高維特征空間使其線性可分,從而使得高維特征空間采用線性算法對樣本的非線性特征進行線性分析成為可能;(2) 它基于結(jié)構(gòu)風險最小化理論之上在特征空間中建構(gòu)最優(yōu)分割超平面,使得學習器得到全局最優(yōu)化,并且在整個樣本空間的期望風險以某個概率滿足一定上界。
在學習這種方法時,首先要弄清楚這種方法考慮問題的特點,這就要從線性可分的最簡單情況討論起,在沒有弄懂其原理之前,不要急于學習線性不可分等較復雜的情況,支持向量機在設(shè)計時,需要用到條件極值問題的求解,因此需用拉格朗日乘子理論,但對多數(shù)人來說,以前學到的或常用的是約束條件為等式表示的方式,但在此要用到以不等式作為必須滿足的條件,此時只要了解拉格朗日理論的有關(guān)結(jié)論就行。
支持向量機將向量映射到一個更高維的空間里,在這個空間里建立有一個最大間隔超平面。在分開數(shù)據(jù)的超平面的兩邊建有兩個互相平行的超平面。分隔超平面使兩個平行超平面的距離最大化。假定平行超平面間的距離或差距越大,分類器的總誤差越小。一個極好的指南是C.J.C Burges的《模式識別支持向量機指南》。van der Walt 和 Barnard 將支持向量機和其他分類器進行了比較。
有很多個分類器(超平面)可以把數(shù)據(jù)分開,但是只有一個能夠達到最大分割。
我們通常希望分類的過程是一個機器學習的過程。這些數(shù)據(jù)點并不需要是中的點,而可以是任意(統(tǒng)計學符號)中或者 (計算機科學符號) 的點。我們希望能夠把這些點通過一個n-1維的超平面分開,通常這個被稱為線性分類器。有很多分類器都符合這個要求,但是我們還希望找到分類最佳的平面,即使得屬于兩個不同類的數(shù)據(jù)點間隔最大的那個面,該面亦稱為最大間隔超平面。如果我們能夠找到這個面,那么這個分類器就稱為最大間隔分類器。
設(shè)樣本屬于兩個類,用該樣本訓練SVM得到的最大間隔超平面。在超平面上的樣本點也稱為支持向量。
【數(shù)據(jù)挖掘機器學習總結(jié)】相關(guān)文章:
挖掘買賣合同01-15
有關(guān)寫大學學習總結(jié)-學習總結(jié)12-21
外出參觀學習總結(jié)3篇-學習總結(jié)12-21
挖掘機租賃合同(15篇)01-28
學習部部門學習總結(jié)08-23
學年學習總結(jié)12-21
盾構(gòu)學習總結(jié)11-26
學習的總結(jié)08-18