1. 程式人生 > >機器學習常見演算法優缺點總結

機器學習常見演算法優缺點總結

K近鄰:演算法採用測量不同特徵值之間的距離的方法進行分類。
優點:
1.簡單好用,容易理解,精度高,理論成熟,既可以用來做分類也可以用來做迴歸;
2.可用於數值型資料和離散型資料;
3.訓練時間複雜度為O(n);無資料輸入假定;
4.對異常值不敏感
缺點:
1.計算複雜性高;空間複雜性高;
2.樣本不平衡問題(即有些類別的樣本數量很多,而其它樣本的數量很少);
3.一般數值很大的時候不用這個,計算量太大。但是單個樣本又不能太少 否則容易發生誤分。
4.最大的缺點是無法給出資料的內在含義。

樸素貝葉斯
優點:
1.生成式模型,通過計算概率來進行分類,可以用來處理多分類問題,
2.對小規模的資料表現很好,適合多分類任務,適合增量式訓練,演算法也比較簡單。
缺點:


1.對輸入資料的表達形式很敏感,
2.由於樸素貝葉斯的“樸素”特點,所以會帶來一些準確率上的損失。
3.需要計算先驗概率,分類決策存在錯誤率。

決策樹
優點:
1.概念簡單,計算複雜度不高,可解釋性強,輸出結果易於理解;
2.資料的準備工作簡單, 能夠同時處理資料型和常規型屬性,其他的技術往往要求資料屬性的單一。
3.對中間值得確實不敏感,比較適合處理有缺失屬性值的樣本,能夠處理不相關的特徵;
4.應用範圍廣,可以對很多屬性的資料集構造決策樹,可擴充套件性強。決策樹可以用於不熟悉的資料集合,並從中提取出一些列規則 這一點強於KNN。
缺點:
1.容易出現過擬合;
2.對於那些各類別樣本數量不一致的資料,在決策樹當中,資訊增益的結果偏向於那些具有更多數值的特徵。
3. 資訊缺失時處理起來比較困難。 忽略資料集中屬性之間的相關性。

Svm
優點:
1.可用於線性/非線性分類,也可以用於迴歸,泛化錯誤率低,計算開銷不大,結果容易解釋;
2.可以解決小樣本情況下的機器學習問題,可以解決高維問題 可以避免神經網路結構選擇和區域性極小點問題。
3.SVM是最好的現成的分類器,現成是指不加修改可直接使用。並且能夠得到較低的錯誤率,SVM可以對訓練集之外的資料點做很好的分類決策。
缺點:對引數調節和和函式的選擇敏感,原始分類器不加修改僅適用於處理二分類問題。

Logistic迴歸:根據現有資料對分類邊界線建立迴歸公式,依次進行分類。
優點:實現簡單,易於理解和實現;計算代價不高,速度很快,儲存資源低;
缺點:容易欠擬合,分類精度可能不高

EM 期望最大化演算法-上帝演算法
只要有一些訓練資料,再定義一個最大化函式,採用EM演算法,利用計算機經過若干次迭代,就可以得到所需的模型。EM演算法是自收斂的分類演算法,既不需要事先設定類別也不需要資料見的兩兩比較合併等操作。缺點是當所要優化的函式不是凸函式時,EM演算法容易給出區域性最佳解,而不是最優解。

相關推薦

機器學習常見演算法優缺點總結

K近鄰:演算法採用測量不同特徵值之間的距離的方法進行分類。 優點: 1.簡單好用,容易理解,精度高,理論成熟,既可以用來做分類也可以用來做迴歸; 2.可用於數值型資料和離散型資料; 3.訓練時間

機器學習 —— 各類演算法優缺點總結

在我們日常生活中所用到的推薦系統、智慧圖片美化應用和聊天機器人等應用中,各種各樣的機器學習和資料處理演算法正盡職盡責地發揮著自己的功效。本文篩選並簡單介紹了一些最常見演算法類別,還為每一個類別列出了一些實際的演算法並簡單介紹了它們的優缺點。目錄正則化演算法(Regularization Algorithms)

機器學習常見演算法分類,演算法優缺點彙總

  機器學習無疑是當前資料分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的演算法。本文為您總結一下常見的機器學習演算法,以供您在工作和學習中參考。        機器學習的演算法很多。很多時候困惑人們都是,很多演算

機器學習常見演算法及原理總結(乾貨)

樸素貝葉斯 參考[1] 事件A和B同時發生的概率為在A發生的情況下發生B或者在B發生的情況下發生A P(A∩B)=P(A)∗P(B|A)=P(B)∗P(A|B) 所以有: P(A|B)=P(B|A)∗P(A)P(B) 對於給出的待分類項,求解在此項出現的條件下各個目標類別出

機器學習常見演算法總結(二)

5. Adaboost adaboost演算法通俗地講,就是在一個數據集上的隨機資料使用一個分類訓練多次,每次對分類正確的資料賦權值較小,同時增大分類錯誤的資料的權重,如此反覆迭代,直到達到所需的要求。Adaboost演算法步驟如下: 步驟1. 首先初

機器學習常見演算法總結+ 面試題

1.http://kubicode.me/2015/08/16/Machine%20Learning/Algorithm-Summary-for-Interview/ 2.http://kubicode.me/2015/08/16/Machine%20Learning/Co

機器學習常見演算法總結(面試用)

樸素貝葉斯 參考[1] 事件A和B同時發生的概率為在A發生的情況下發生B或者在B發生的情況下發生A P(A∩B)=P(A)∗P(B|A)=P(B)∗P(A|B) 所以有: P(A|B)=P(B|A)∗P(A)P(B) 對於給出的待分

機器學習機器學習常見演算法分類彙總

轉自http://www.ctocio.com/hotnews/15919.html,尊重原創 機器學習無疑是當前資料分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的演算法。這裡IT經理網為您總結一下常見的機器學習演算法,以供您在工作和學習中參

[Machine Learning] 機器學習常見演算法分類彙總

  宣告:本篇博文根據http://www.ctocio.com/hotnews/15919.html整理,原作者張萌,尊重原創。   機器學習無疑是當前資料分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的演算法。本文為您總結一下常見的機器學習演算法,以供您在工作和學習中參考。

【整理自用】統計學習機器學習常見演算法(整理更新)

K近鄰法 詳見《統計學習》P53頁。 程式碼收藏90Zeng的部落格Kd樹的c++實現。 在利用kd樹搜尋最鄰近點的時候有一句話: 當前最近點一定存在於該結點一個子結點對應的區域,檢查子結點的父結點的另一子結點對應的區域是否有更近的點。具體做法是,

機器學習常見演算法分類彙總

  機器學習無疑是當前資料分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的演算法。這裡 IT 經理網為您總結一下常見的機器學習演算法,以供您在工作和學習中參考。   機器學習的演算法很多。很多時候困惑人們都是,很多演算法是一類演算法,而有些演算

常見機器學習演算法優缺點總結

一、樸素貝葉斯 1.1主要優點: 1)樸素貝葉斯模型發源於古典數學理論,有穩定的分類效率。 2)對小規模的資料表現很好,能個處理多分類任務,適合增量式訓練,尤其是資料量超出記憶體時,我們可以一批批的去增量訓練。 3)對缺失資料不太敏感,演算法也比較簡單,常用於文字分類

KNN演算法優缺點總結,以及機器學習流程的總結

KNN演算法作為一個最簡單,也是一個很實用的機器學習的演算法,日常的使用中也能處理很多問題,這裡做一下總結記錄 優點 1、KNN可以處理分類問題,同時天然可以處理多分類問題,比如鳶尾花的分類 2、簡單,易懂,同時也很強大,對於手寫數字的識別,鳶尾花這一類問題來說,準確率

機器學習常用演算法優缺點總結

決策樹 一、  決策樹優點 1、決策樹易於理解和解釋,可以視覺化分析,容易提取出規則。 2、可以同時處理標稱型和數值型資料。 3、測試資料集時,執行速度比較快。 4、決策樹可以很好的擴充套件到大型資料庫中,同時它的大小獨立於資料庫大小。 二、決策樹缺點 1、對缺

主流機器學習演算法優缺點總結

1. 決策樹:判別模型,多分類與迴歸,正則化的極大似然估計 特點: 適用於小資料集 優點: 計算量簡單,可解釋性強,比較適合處理有缺失屬性值的樣本,能夠處理不相關的特徵; 缺點: 容易過擬合(後續出現了隨機森林,減小了過擬合現象),使用剪枝來避免過擬合; 適用

機器學習經典演算法總結 一.線性迴歸

一.基本形式 hθ(x)=θ0+θ1x1+θ2x2+....+θnxn=θTxh_θ(x)=θ_0+θ_1x_1+θ_2x_2+....+θ_nx_n=θ^Txhθ​(x)=θ0​+θ1​x1​+θ2​x2​+....+θn​xn​=θTx 二.損失函式 最常用

機器學習整合演算法總結

一.Voting 思想:選取多個分類器,少數服從多數 二.Bagging 特點: 放回抽樣 方法: 1.放回抽樣訓練集 2.Outofbagging:放回抽樣中總有一部分資料沒被抽到,可將這部分作為驗證集 3.隨機取樣特徵 4.隨機取樣特徵+隨機取樣訓練集,如隨機森林 隨機森林 優點 可

機器學習基本演算法總結4

機器學習基本演算法總結 ☞其他工具 程式碼在這,基於python3(原書程式碼是python2) 這裡只是一個總結,原書已經講解很清楚了,不清楚的直接看程式碼 目錄 ========================== 一、預測數

資料探勘與機器學習基本演算法總結

在這種學習模式下,輸入資料作為對模型的反饋,不像監督模型那樣,輸入資料僅僅是作為一個檢查模型對錯的方式,在強化學習下,輸入資料直接反饋到模型,模型必須對此立刻作出調整。常見的應用場景包括動態系統以及機器人控制等。常見演算法包括Q-Learning以及時間差學習(Temporal difference le

機器學習常用演算法總結

機器學習無疑是當前資料分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的演算法。本文總結一下常見的機器學習演算法,以供參考。機器學習的演算法很多,很多演算法是一類演算法,而有些演算法又是從其他演算法中延伸出來的。這裡從兩個方面進行總結,第一個方面是學習的