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