機器學習 (一)------分類
機器學習 (一)------分類
機器學習分類
機器學習分為監督學習和無監督學習兩類。
監督學習是指在有標記的樣本上建立機器學習的模型(這類演算法知道預測什麼,即目標變數的分類資訊)。
無監督學習恰恰相反,是指沒有標記的資料上建立學習模型。
主要任務:
分類:主要任務是將例項資料劃分到合適的分類中。
迴歸:例如資料擬合曲線(根據給定資料點的最優擬合曲線),主要用於預測數值型資料。
如何選擇合適的演算法:
從上表中選擇實際可用的演算法,要考慮以下兩個方面的問題:
1、使用機器學習演算法的目的,想要演算法完成何種任務;
2、需要分析和收集的資料是什麼;
主要了解資料的以下特徵:特徵值是離散型變數還是連續型變數,特徵值是否存在缺失值,何種原因造成的缺失,資料中是否存在異常值,某個特徵發生的頻率如何等。
使用演算法建立應用程式的步驟:
(1)收集資料(網路爬蟲抽取、從RRS反饋或者API中得到,裝置傳送的實測資料);
(2)準備輸入資料(確保資料格式符合要求);
(3)分析輸入資料(人工分析以前得到的資料);
(4)訓練演算法(將前面得到的格式化資料輸入到演算法,從中抽取知識或資訊;無監督學習沒有這一步);
(5)測試演算法(使用上一部機器學習得到的知識資訊);
(6)使用演算法(將機器學習演算法轉換為應用程式)。
一、K-近鄰演算法
1、演算法概述
簡單地說,k-近鄰演算法採用測量不同特徵值之間的距離方法進行分類。
2、演算法優缺點
優點:精度高,對異常值不敏感、無資料輸入設定;
缺點:計算複雜度高、空間複雜度高;
使用資料範圍:數值型和標稱型。
3、演算法工作原理
存在一個樣本資料集合,也稱作訓練樣本集,並且樣本集中每個資料都存在標籤,即我們知道樣本集中每一個數據與所屬分類的對應關係。輸入沒有標籤的新資料後,將新資料的每個特徵與樣本集中資料對應的特徵進行比較,然後演算法提取樣本集中特徵最相似資料(最近鄰)的分類標籤。一般來說,我們只選擇樣本資料集中前k個最相似的資料,這就是k-近鄰演算法中K的出處,通常k是不大於20的整數。最後,選擇k個最相似資料中出現次數最多的分類,作為新資料的分類。
二、決策樹
1、演算法概述
決策樹是一種樹形結構,其中每個內部節點表示一個屬性上的測試,每個分支代表一個測試輸出,每個葉節點代表一種類別。決策樹演算法能夠讀取資料集合,他的一個重要任務是為了理解資料中所蘊含的知識資訊,因此決策樹可以使用不熟悉的資料集合,並從中提取出一系列規則,這些機器根據資料集建立規則的過程,就是機器學習的過程。
2、演算法優缺點
優點:計算複雜度不高,輸出結果易於理解,對中間值的缺失不敏感,可以處理不相關特徵資料;
缺點:可能會產生過渡匹配問題;
適用資料型別:數值型和標稱型。
3、決策樹的構造
首先,討論數學上如何適用資訊理論劃分資料集;
然後,編寫程式碼將理論應用到具體的資料集上;
最後,編寫程式碼構建決策樹。
4、資訊增益
劃分資料的大原則是:將無序的資料變得更加有序。
方法:使用資訊理論量化度量資訊的內容。
資訊增益:指在劃分資料集之前之後資訊發生的變化。
熵:指資訊的期望值。
5、劃分資料集
度量劃分資料集的熵,以便判斷按照哪個特徵劃分資料集。對每個特徵劃分資料集的結果計算一次資訊熵,然後判斷哪個特徵劃分資料集是最好的劃分方式。
6、遞迴構建決策樹
從資料集構造決策樹演算法所需要的子功能模組,其工作原理如下:得到原始資料集,然後基於最好的屬性值劃分資料集,由於特徵值可能多於兩個,一次可能存在大於兩個分支的資料集劃分。第一次劃分之後,資料將被向下傳遞到樹分支的下一個節點,在這個節點上,我們再次劃分資料。
遞迴結束的條件是:程式遍歷完所有的劃分資料集的屬性,或者每個分支下的所有例項都具有相同的分類。如果所有的例項具有相同的分類,則得到一個葉子結點或者終止塊。任何到達葉子結點的資料必然屬於葉子結點的分類。
三、基於概率論的分類方法:樸素貝葉斯
1、概念
簡單的概率分類器開始,‘樸素’是因為整個形式化過程只做最原始、最簡單的假設。
樸素貝葉斯分類器的兩個假設:獨立性假設;每個特徵同等重要。
2、演算法優缺點
優點:在資料較少的情況下仍然有效,可以處理多類別問題;
缺點:對於輸入資料的準備方式較為敏感;
適用資料型別:標稱型資料。
3、條件概率
某一事件發生的條件下另外的事件發生的概率。
4、使用條件概率進行分類
滿足條件一類,不滿足條件一類。
5、使用樸素貝葉斯進行文件分類
觀察文件中出現的詞,並把沒歌詞的出現或者不出現作為一個特徵,是用於文件分類的常用演算法。
總結
對於分類而言,使用概率有時要比使用硬規則更為有效。貝葉斯概率及貝葉斯準則提供了一種利用已知值來估計位置概率的有效方法。