常見的機器學習算法,你知道幾個?

2020-12-11 天極網

誕生於1956年的人工智慧,由於受到智能算法、計算速度、存儲水平等因素的影響,在六十多年的發展過程中經歷了多次高潮和低谷。最近幾年,得益於數據量的上漲、運算力的提升,特別是機器學習新算法的出現,人工智慧迎來了大爆發的時代。

提到機器學習這個詞時,有些人首先想到的可能是科幻電影裡的機器人。事實上,機器學習是一門多領域交叉學科,涉及概率論、統計學、算法複雜度理論等多門學科。專門研究計算機如何模擬或實現人類的學習行為,利用數據或以往的經驗,以此優化電腦程式的性能標準。

根據學習任務的不同,我們可以將機器學習分為監督學習、非監督學習、強化學習三種類型,而每種類型又對應著一些算法。

各種算法以及對應的任務類型

接下來就簡單介紹幾種常用的機器學習算法及其應用場景,通過本篇文章大家可以對機器學習的常用算法有個常識性的認識。

 一、監督學習

(1)支持向量機(Support Vector Machine,SVM):是一類按監督學習方式對數據進行二元分類的廣義線性分類器,其決策邊界是對學習樣本求解的最大邊距超平面。例如,在紙上有兩類線性可分的點,支持向量機會尋找一條直線將這兩類點區分開來,並且與這些點的距離都儘可能遠。

優點:泛化錯誤率低,結果易解釋。

缺點:對大規模訓練樣本難以實施,解決多分類問題存在困難,對參數調節和核函數的選擇敏感。

應用場景:文本分類、人像識別、醫學診斷等。

(2)決策樹(Decision Tree):是一個預測模型,代表的是對象屬性與對象值之間的一種映射關係。下圖是如何在決策樹中建模的簡單示例:

優點:易於理解和解釋,可以可視化分析,容易提取出規則;能夠處理不相關的特徵。

缺點:對缺失數據處理比較困難。

應用場景:在決策過程應用較多。

(3)樸素貝葉斯分類(Naive Bayesian classification):對於給出的待分類項,求解此項出現的條件下各個類別出現的概率,哪個最大,就認為此待分類屬於哪個類別。貝葉斯公式為:p(A|B)= p(B|A)*p(A/p(B),其中P(A|B)表示後驗概率,P(B|A)是似然值,P(A)是類別的先驗概率,P(B)代表預測器的先驗概率。

優點:在數據較少的情況下仍然有效,可以處理多類別問題。

缺點:對輸入數據的準備方式較為敏感。

應用場景:文本分類、人臉識別、欺詐檢測。

(4)k-近鄰算法(K-Nearest Neighbor,KNN):是一種基於實例的學習,採用測量不同特徵值之間的距離方法進行分類。其基本思路是:給定一個訓練樣本集,然後輸入沒有標籤的新數據,將新數據的每個特徵與樣本集中數據對應的特徵進行比較,找到最鄰近的k個(通常是不大於20的整數)實例,這k個實例的多數屬於某個類,就把該輸入實例分類到這個類中。

優點:簡單、易於理解、易於實現,無需估計參數。此外,與樸素貝葉斯之類的算法比,無數據輸入假定、準確度高、對異常數據值不敏感。

缺點:對於訓練數據依賴程度比較大,並且缺少訓練階段,無法應對多樣本。

應用場景:字符識別、文本分類、圖像識別等領域。

 二、非監督學習

(1)主成分分析(Principal Component Analysis,PCA):是一種統計方法。其主要思想是將n維特徵映射到k維上,這k維是全新的正交特徵也被稱為主成分,是在原有n維特徵的基礎上重新構造出來的k維特徵。

優點:降低數據的複雜性,識別最重要的多個特徵。

缺點:主成分各個特徵維度的含義具有一定的模糊性,不如原始樣本特徵的解釋性強;有可能損失有用的信息。

應用場景:語音、圖像、通信的分析處理。

(2)奇異值分解(Singular Value Decomposition,SVD):可以將一個比較複雜的矩陣用更小更簡單的幾個子矩陣的相乘來表示,這些小矩陣描述的是矩陣的重要的特性。

優點:簡化數據,去除噪聲點,提高算法的結果。

缺點:數據的轉換可能難以理解。

應用場景:推薦系統、圖片壓縮等。

(3)K-均值聚類(K-Means):是一種迭代求解的聚類分析算法,採用距離作為相似性指標。其工作流程是隨機確定K個對象作為初始的聚類中心,然後計算每個對象與各個種子聚類中心之間的距離,把每個對象分配給距離它最近的聚類中心。

優點:算法簡單容易實現。

缺點:可能收斂到局部最小值,在大規模數據集上收斂較慢。

應用場景:圖像處理、數據分析以及市場研究等。

三、強化學習

Q-learning:是一個基於值的強化學習算法,它根據動作值函數評估應該選擇哪個動作,這個函數決定了處於某一個特定狀態以及在該狀態下採取特定動作的獎勵期望值。

優點:可以接收更廣的數據範圍。

缺點:缺乏通用性。

應用場景:遊戲開發。

以上就是文章的全部內容,相信大家對常用的機器學習算法應該有了大致的了解。

現如今,我們越來越多地看到機器學習算法為人類帶來的實際價值,如它們提供了關鍵的洞察力和信息來報告戰略決策。可以肯定的是,隨著機器學習越來越流行,未來還將出現越來越多能很好地處理任務的算法。

相關焦點

  • 機器學習常見算法分類匯總
    機器
  • 圖解機器學習的常見算法
    確實,機器學習的各種套路確實不少,但是如果掌握了正確的路徑和方法,其實還是有跡可循的,這裡我推薦SAS的Li Hui的這篇博客,講述了如何選擇機器學習的各種方法。另外,Scikit-learn 也提供了一幅清晰的路線圖給大家選擇:其實機器學習的基本算法都很簡單,下面我們就利用二維數據和交互圖形來看看機器學習中的一些基本算法以及它們的原理。
  • 10大機器學習算法及應用,你知道幾個?
    來源:kdnuggets作者:James Le翻譯:序媛本文導讀:本文將為大家盤點,機器學習領域都有哪些常用的算法。毫無疑問,在過去兩年中,機器學習和人工智慧的普及度都得到了大幅提升。機器學習算法可分為三個大類:有監督學習、無監督學習和強化學習。
  • 14種機器學習常見算法分類匯總!
    很多人在平時的工作中都或多或少會用到機器學習的算法。這裡總結一下常見的機器學習算法,以供您在工作和學習中參考。機器學習的算法很多。很多時候困惑人們都是,很多算法是一類算法,而有些算法又是從其他算法中延伸出來的。這裡,我們從兩個方面來給大家介紹,第一個方面是學習的方式,第二個方面是算法的類似性。根據數據類型的不同,對一個問題的建模有不同的方式。
  • 想了解機器學習?你需要知道的十個基礎算法
    ,你需要知道的十個基礎算法毫無疑問,作為人工智慧的子領域—機器學習在過去的幾年中越來越受歡迎。由於大數據是目前科技行業最熱門的趨勢,基於大量的數據機器學習在提前預測和做出建議方面有巨大的潛力。一些有關機器學習常見的例子有:Netflix基於你以前看過的電影再給你做出影片的推薦,或者亞馬遜根據你以前買過的書籍再給你進行圖書推薦。如果想了解更多有關機器學習的知識,要從哪裡開始呢?作者第一次入門是在哥本哈根海外交流時選了一門有關人工智慧的課程。
  • 大數據之機器學習常見算法分類匯總
    機器學習無疑是當前數據分析領域的一個熱點內容。很多人在平時的工作中都或多或少會用到機器學習的算法。這裡IT經理網為您總結一下常見的機器學習算法,以供您在工作和學習中參考。機器學習的算法很多。很多時候困惑人們都是,很多算法是一類算法,而有些算法又是從其他算法中延伸出來的。這裡,我們從兩個方面來給大家介紹,第一個方面是學習的方式,第二個方面是算法的類似性。學習方式根據數據類型的不同,對一個問題的建模有不同的方式。在機器學習或者人工智慧領域,人們首先會考慮算法的學習方式。
  • 機器學習算法一覽
    愧疚的是,工作雜事多,加之懶癌嚴重,導致這個系列一直沒有更新,向關注該系列的同學們道個歉。尷尬的是,按理說,機器學習介紹與算法一覽應該放在最前面寫,詳細的應用建議應該在講完機器學習常用算法之後寫,突然莫名奇妙在中間插播這麼一篇,好像有點打亂主線。 老話說『亡羊補牢,為時未晚』,前面開頭忘講的東西,咱在這塊兒補上。我們先帶著大家過一遍傳統機器學習算法,基本思想和用途。
  • 8種常見機器學習算法比較
    簡介機器學習算法太多了,分類、回歸、聚類、推薦、圖像識別領域等等,要想找到一個合適算法真的不容易,所以在實際應用中,我們一般都是採用啟發式學習方式來實驗。通常最開始我們都會選擇大家普遍認同的算法,諸如SVM,GBDT,Adaboost,現在深度學習很火熱,神經網絡也是一個不錯的選擇。
  • Python入門5大機器學習算法(附代碼),你知道哪幾個?
    下面我們看下Python的5個機器學習算法(附代碼)1、線性回歸線性回歸通常用於根據連續變量估計實際數值(房價、呼叫次數、總銷售額等)。我們通過擬合最佳直線來建立自變量和因變量的關係。這條最佳直線叫做回歸線,並且用 Y= a *X + b 這條線性等式來表示。
  • 【機器學習終極盤點】你不知道的機器學習算法優缺點(匯總篇)
    但是如果你只是在尋找一個「足夠好」的算法來解決你的問題,或者這裡有些技巧可以參考,下面來分析下各個算法的優缺點,基於算法的優缺點,更易於我們去選擇它。1.天下沒有免費的午餐在機器學習領域,一個基本的定理就是「沒有免費的午餐」。
  • 17個機器學習的常用算法!
    在機器學習或者人工智慧領域,人們首先會考慮算法的學習方式。在機器學習領域,有幾種主要的學習方式。將算法按照學習方式分類是一個不錯的想法,這樣可以讓人們在建模和算法選擇的時候考慮能根據輸入數據來選擇最合適的算法來獲得最好的結果。1. 監督式學習:
  • 新手必看的十種機器學習算法
    機器學習領域有一條「沒有免費的午餐」定理。簡單解釋下的話,它是說沒有任何一種算法能夠適用於所有問題,特別是在監督學習中。例如,你不能說神經網絡就一定比決策樹好,反之亦然。要判斷算法優劣,數據集的大小和結構等眾多因素都至關重要。所以,你應該針對你的問題嘗試不同的算法。然後使用保留的測試集對性能進行評估,選出較好的算法。
  • 算法應用|機器學習python應用,初識機器學習是怎樣滴感受?
    其中有些算法適合多種問題,有些只適合解決一種問題,下面列出一些常見的一些機器學習算法。1.4 學習機器學習的原則和技巧學習機器學習是一段旅程。需要知道自己具備的技能、目前所掌握的知識,以及明確要達到的目標。要實現自己的目標需要付出時間和辛勤的工作 ,但是在目標的實現過程中 ,有很多工具可以幫助你快速達成目標。
  • 三張圖讀懂機器學習:基本概念、五大流派與九種常見算法
    機器學習正在進步,我們似乎正在不斷接近我們心中的人工智慧目標。語音識別、圖像檢測、機器翻譯、風格遷移等技術已經在我們的實際生活中開始得到了應用,但機器學習的發展仍還在繼續,甚至被認為有可能徹底改變人類文明的發展方向乃至人類自身。但你了解現在正在發生的這場變革嗎?
  • 機器學習算法之有監督學習和無監督學習的區別
    在生活中,我們應用的很多東西其實都使用的是機器學習算法,例如我們使用的好多APP,包括AI助手、web搜索、手機翻譯等,現在你手機社交媒體新聞的推薦由機器學習算法提供支持,你在視頻網站上推薦的視頻、影視劇也是機器學習模型的結果,你現在聽歌軟體的每日歌曲推薦也是利用機器學習算法的強大功能來創建推薦你喜歡的歌曲列表等等,但是機器學習有許多不同的風格的應用。
  • 想了解機器學習?這 3 種算法你必須要知道
    點擊上方「CSDN」,選擇「置頂公眾號」關鍵時刻,第一時間送達!
  • 【機器學習】監督式和非監督式機器學習算法
  • 機器學習中常用優化算法介紹
    想要學習更多的機器學習知識,歡迎大家點擊上方藍字關注我們的公眾號:磐創AI。在機器學習的世界中,通常我們會發現有很多問題並沒有最優的解,或是要計算出最優的解要花費很大的計算量,面對這類問題一般的做法是利用迭代的思想儘可能的逼近問題的最優解。
  • 終極算法:機器學習裡的「牛頓三定律」
    序你也許不知道,但機器學習就在你身邊。你為即將到來的行程查找到一個航班,但決定推遲購買機票,因為必應旅行(Bing Travel)預測票價很快會下降。也許你沒有意識到以上這些,要不是機器學習幫助你,你可能要馬不停蹄地親自做很多事情。你在休息時間查看自己的共同基金,大部分基金利用學習算法來選股,其中的某些基金完全由學習系統運作。午餐時間到了,你走在大街上,想找個吃飯的地方,這時候用手機上的Yelp點評應用程式來幫助你。
  • 十大機器學習算法之旅已啟程
    因此,你應該為你的問題嘗試許多不同的算法,同時使用數據的「測試集」來評估性能並選擇勝出者。  當然,你嘗試的算法必須適合你的問題,這就是選擇正確的機器學習任務的地方。打一個比方,如果你需要清理你的房子,你可以使用真空吸塵器、掃帚或拖把,但是你不會用一個鏟子來挖掘。