機器學習是研究人類的學習活動,獲取知識和技能的理論和方法,改善系統性能的學科。
1.歸納學習:從大量的經驗數據中歸納抽取出一般判定規則和模式,是從特殊情況推導出一般規則的學習方法。歸納學習可劃分為單概念學習和多概念學習。概念指用某種描述語言表的謂詞,當應用于負實例時為假。對于單概念的學習,學習的目的是從概念空間中尋找某個與實例空間一致的概念,對于多概念的學習任務,是從概念空間中尋找若干概念描述,對于每一個概念的描述,實例空間中均有相應的空間與之對應。
2.變型空間學習法:在變型空間方法中,根據概念之間的特殊性和一般性,可將變型空間表示成偏序集的形式,變型空間方法以包含整個概念的規則空間為初始的假設規則集合H,它是迄今為止所得到的所有訓練實例相一致的概念集合。根據示教例子中的信息,對H進行范化和特殊化處理,逐步縮小集合H,最后使H收斂為只含有要求的規則。
候選項刪除算法:http://hi.baidu.com/lvzhnan/blog/item/79edfc12957faa24dd5401f5.html
3.決策樹的歸納學習方法:
決策樹的構造算法CLS:
1) 初始化參數C={E},E包括所有的例子,為根;
2) 如果C中的任一元素e同屬于同一個決策類則創建一個葉子節點YES終止;否則依啟發式標準,選擇特征Fi={V1, V2, V3,……, Vn}并創建判定節點,劃分C為互不相交的N個集合C1,C2,C3,……,Cn;
3) 對任一個Ci遞歸。
基本的決策樹學習算法:
基本的決策樹學習算法ID3是通過自頂向下構造決策樹來進行學習。構造過程從一個“哪一個屬性將在樹的根節點被測試?”這個問題開始的。為了回答這個問題,使用統計測試來確定每一個實例屬性單獨分類訓練樣例的能力,分類能力最好的熟悉被選作樹的根節點的測試。然后為根節點的屬性每個可能的值產生一個分支,并把訓練樣例排列到適當的分支之下。然后重復整個過程,用每個分支節點的關聯訓練樣例來選取在該點被測試的最佳屬性。這形成了對合格決策樹的貪婪搜索。
基本的ID3算法為:
1) 隨機選擇C的一個子集W (窗口);
2) 調用CLS生成W的分類樹DT(強調的啟發式標準在后);
3) 順序掃描C搜集DT的意外(即由DT無法確定的例子);
4) 組合W與已發現的意外,形成新的W;
5) 重復2)到4),直到無例外為止。
啟發式標準:
只跟本身與其子樹有關,采取信息理論用熵來量度。
熵是選擇事件時選擇自由度的量度,其計算方法為:P=freq(Cj,S)/|S|;INFO(S)=-SUM(P*LOG(P));SUM()函數是求j從1到n的和。Gain(X)=Info(X)-Infox(X);Infox(X)=SUM( (|Ti|/|T|)*Info(X);
為保證生成的決策樹最小,ID3算法在生成子樹時,選取使生成的子樹的熵(即Gain(S))最小的特征來生成子樹。
ID3算法對數據的要求:
1) 所有屬性必須為離散量;
2) 所有的訓練例的所有屬性必須有一個明確的值;
3) 相同的因素必須得到相同的結論且訓練例必須唯一。
4.類比學習
1)類比標示:指出源問題實例和新問題之間的相似性;
2)確定映射函數:選擇源問題實例的相關部分,確定映射函數;
3)應用映射函數:使用映射函數,將新問題從給定的領域轉換到目標領域;
4)有效性:采用證明或仿真的過程檢驗新得到方案的有效性;
5)學習:如果新方案是有效的,則可以對新的知識進行編碼和保存。
5.基于范例的學習:
基于范式推理(Case Based Reasoning,CBR)。人工智能領域中一種重要的基于知識問題求解和學習的方法。

基于范例的推理:
1) 檢索算法:近鄰法,歸納法,以及模板檢索
近鄰法:采用特征間的加權匹配來估計范例之間的相似度;
歸納法:可以確定那個特征用于分規范時最好,此方法能生成一棵決策樹,它可以有效的組織范例。
模板檢索:與SQL查詢類似,模板檢索能返回一定參數值范圍內的所有范例。
調整:
在舊解中增加新的內容,或從舊解中刪去某些內容,或對舊解中的某些內容進行替換,或舊解中的某些部分進行重新交換。
辯護:
除了尋找新舊范例間的相似之處,辯護過程還有對它們之間的不同點進行仔細的考慮以確定過去的情況是否適應現在的情況。
6.解釋學習:
基于解釋的學習是分析學習的主要方式,基于解釋的學習(簡稱EBL)是將大量的成果匯集在一個統一、簡單的框架內,通過分析為什么實例是某個目標概念的一個具體的例子,EBL對分析過程加以推廣,剔去與具體例子相關的成分,從而產生目標概念的一個描述。通過一個實例學習,抽象目標概念被具體化,變得易操作與理解,從而為相似問題的求解提供有效的經驗。
EBL的框架一般是一個四元組<DT,TC,E,C>來表示,分別表示領域理論,目標概念,訓練實例和可操作準則。
基于解釋學習的過程:
1) 分析階段:使用領域理論建立一個證明訓練例子滿足目標的概念定義的解釋結構,該結構可表示為一棵證明樹,又稱為解釋樹,他用于解釋為什么實例是目標概念的一個實例,起每個分枝的葉節點上的表達式都必須滿足可操作性的準則。
2) 基于解釋的泛化(Explanation-Based Generzalion,EBG)階段:通過將實例證明樹中的常量用變量進行替換,從而完成解釋的泛化,并使用滿足操作的準則,形成一棵基于解釋的泛化樹,得到目標概念的一個充分條件。
7.支持向量機(Support Vector Machine,SVM):是從線性可分情況下的最優分類面發展而來的,采用的是保持經驗風險值固定而最小化置信范圍的策略。
支持向量機屬于一般化線性分類器。它們也可以被認為是提克洛夫規范化(Tikhonov Regularization)方法的一個特例。這種分類器的特點是他們能夠同時最小化經驗誤差與最大化幾何邊緣區。因此支持向量機也被稱為最大邊緣區分類器。
在統計計算中,最大期望(EM)算法是在概率(probabilistic)模型中尋找參數最大似然估計的算法,其中概率模型依賴于無法觀測的隱藏變量(Latent Variable)。最大期望經常用在機器學習和計算機視覺的數據集聚(Data Clustering)領域。最大期望算法經過兩個步驟交替進行計算,第一步是計算期望(E),也就是將隱藏變量像能夠觀測到的一樣包含在內從而計算最大似然的期望值;另外一步是最大化(M),也就是最大化在 E 步上找到的最大似然的期望值從而計算參數的最大似然估計。M 步上找到的參數然后用于另外一個 E 步計算,這個過程不斷交替進行。
Vapnik等人在多年研究統計學習理論基礎上對線性分類器提出了另一種設計最佳準則。其原理也從線性可分說起,然后擴展到線性不可分的情況。甚至擴展到使用非線性函數中去,這種分類器被稱為支持向量機(Support Vector Machine,簡稱SVM)。支持向量機的提出有很深的理論背景。支持向量機方法是在近年來提出的一種新方法,但是進展很快,已經被廣泛應用在各個領域之中。
SVM的主要思想可以概括為兩點:
(1) 它是針對線性可分情況進行分析,對于線性不可分的情況,通過使用非線性映射算法將低維輸入空間線性不可分的樣本轉化為高維特征空間使其線性可分,從而使得高維特征空間采用線性算法對樣本的非線性特征進行線性分析成為可能;
(2) 它基于結構風險最小化理論之上在特征空間中建構最優分割超平面,使得學習器得到全局最優化,并且在整個樣本空間的期望風險以某個概率滿足一定上界。
在學習這種方法時,首先要弄清楚這種方法考慮問題的特點,這就要從線性可分的最簡單情況討論起,在沒有弄懂其原理之前,不要急于學習線性不可分等較復雜的情況,支持向量機在設計時,需要用到條件極值問題的求解,因此需用拉格朗日乘子理論,但對多數人來說,以前學到的或常用的是約束條件為等式表示的方式,但在此要用到以不等式作為必須滿足的條件,此時只要了解拉格朗日理論的有關結論就行。
支持向量機將向量映射到一個更高維的空間里,在這個空間里建立有一個最大間隔超平面。在分開數據的超平面的兩邊建有兩個互相平行的超平面。分隔超平面使兩個平行超平面的距離最大化。假定平行超平面間的距離或差距越大,分類器的總誤差越小。一個極好的指南是C.J.C Burges的《模式識別支持向量機指南》。van der Walt 和 Barnard 將支持向量機和其他分類器進行了比較。
有很多個分類器(超平面)可以把數據分開,但是只有一個能夠達到最大分割。
我們通常希望分類的過程是一個機器學習的過程。這些數據點并不需要是 中的點,而可以是任意 (統計學符號)中或者 (計算機科學符號) 的點。我們希望能夠把這些點通過一個n-1維的超平面分開,通常這個被稱為線性分類器。有很多分類器都符合這個要求,但是我們還希望找到分類最佳的平面,即使得屬于兩個不同類的數據點間隔最大的那個面,該面亦稱為最大間隔超平面。如果我們能夠找到這個面,那么這個分類器就稱為最大間隔分類器。
設樣本屬于兩個類,用該樣本訓練SVM得到的最大間隔超平面。在超平面上的樣本點也稱為支持向量。
SVM的優勢:
由于支持向量機方法是建立在統計學習理論的VC維理論和結構風險最小原理基礎上的,根據有限的樣本信息在模型的復雜性(即對特定訓練樣本的學習精度,Accuracy)和學習能力(即無錯誤地識別任意樣本的能力)之間尋求最佳折衷,以期獲得最好的推廣能力(Generalizatin Ability)。支持向量機方法的幾個主要優點是:
l 可以解決小樣本情況下的機器學習問題;
l 可以提高泛化性能;
l 可以解決高維問題;
l 可以解決非線性問題;
l 可以避免神經網絡結構選擇和局部極小點問題。