
作者 | 盧譽聲
大部分的機器學習算法主要用來解決兩類問題——分類問題和回歸問題。在本文當中,我們介紹一些簡單但經典實用的傳統機器學習算法,讓大家對機器學習算法有一個基本的感性認識。
有的人說機器學習入門并不難,有的人會覺得機器學習難以理解。那么該如何去學習機器學習這種技術與方法呢?在本文當中,我們將介紹掌握機器領域知識的學習曲線、技術棧以及常用框架。
1. 分類算法
這是一種監督學習方法。有很多算法幫助我們解決分類問題,比如K近鄰、決策樹、樸素貝葉斯、貝葉斯網絡、邏輯回歸、SVM等算法。人工神經網絡和深度學習也往往用來解決分類問題。這些都是常見和常用的分類算法,只不過不同的算法都有其優劣,會應用在不同的場景下。
我們舉一個例子。假設我們知道某個鳥的各個特征,現在要根據這些特征確定這只鳥屬于哪種鳥類,這就是所謂的分類問題。
首先,我們要收集能收集到的所有的鳥類信息,包括鳥的各種特征以及鳥的種類,其中顏色、體重、翅膀等屬性都屬于特征,而種類則是鳥的標簽。
其次,我們建立的機器學習的目的就是讓用戶輸入一個鳥的特征,然后輸出這個鳥的種類,也就是對應的標簽。這個過程就是一個根據鳥的屬性分類的過程,只不過是由計算機自動完成的。
2. 回歸算法
回歸算法也是一種有監督學習方法。回歸算法來自于回歸分析,回歸分析是研究自變量和因變量之間關系的一種預測模型技術。這些技術應用于預測,時間序列模型和找到變量之間的關系。
舉個簡單例子,我們可以通過計算得出在某些情況下服務器接收請求數量與服務器CPU、內存占用壓力之間的關系。
最簡單的回歸算法就是線性回歸,相信大家都對線性回歸有所了解。雖然線性回歸比較簡單,但是越簡單粗暴的算法在面對有些實際問題的時候就越實用。深度學習也可以用于解決回歸問題。
3. 聚類算法
聚類算法是一類無監督學習算法。聚類是研究(樣品或指標)分類問題的一種統計分析方法,同時也是數據挖掘的一個重要算法。
聚類分析以相似性為基礎,在一個聚類中的模式比不在同一聚類中的模式具有更多的相似性,這是聚類分析的最基本原理。聚類分析的算法可以分成很多類方法,比如劃分法、層次法、基于密度的方法、基于網絡的方法和基于模型的方法。
最有名的聚類算法就是K-Means(K-均值)算法,是最為經典的、基于劃分的聚類方法。該算法的主要思路是以空間中k個點為形心進行聚類,將最靠近它們的對象歸類。通過迭代的方法,逐次更新各簇的形心的值,直至得到最好的聚類結果。(形心可以是實際的點,也可以是虛擬點)。
通過該算法我們可以將特征相似的數據聚合稱為一個數據群組,而將特征相差較大的數據分開。
4. 關聯分析算法
關聯分析是除了聚類以外的一種常用無監督學習方法。用于發現存在于大量數據集中的關聯性或相關性,從而描述了一個事物中某些屬性同時出現的規律和模式。
關聯分析最典型的應用就是購物車分析。我們可以從用戶的訂單中尋找經常被一起購買的商品,并挖掘這些商品之間的潛在關系,這樣有助于線上、線下商家指定購買與銷售策略。
最著名的關聯分析算法就是Apriori算法和FP-growth算法。Apriori算法就是根據有關頻繁項集特性的先驗知識而命名的。它使用一種稱作逐層搜索的迭代方法。而FP-growth是針對Apriori算法的改進算法,通過兩次掃描事務數據庫,把每個事務所包含的頻繁項目按其支持度降序壓縮存儲到FP-tree中。
在以后發現頻繁模式的過程中,不需要再掃描事務數據庫,而僅在FP-tree中進行查找即可,并通過遞歸調用FP-growth的方法來直接產生頻繁模式,因此在整個發現過程中也不需產生候選模式。該算法克服了Apriori算法中存在的問題,在執行效率上也明顯好于Apriori算法,同時能生成有向關系,比Apriori更為泛用。
5. 集成算法
前面幾節介紹了常見的機器學習算法,但是我們會發現每個單獨的機器學習算法往往只能解決特定場景下的特定問題,如果問題會變得更為復雜,就難以使用一個學習器達到目標。這時候我們就需要集成多個學習器,協同完成機器學習任務。
所謂集成學習就是使用一系列學習器進行學習,并使用某種規則把各個學習結果進行整合,從而獲得比使用單個學習器更好的學習效果的一種機器學習方法。一般情況下,集成學習中的多個學習器都是同質的“弱學習器”。
集成學習的主要思路是先通過一定的規則生成多個學習器,再采用某種集成策略進行組合,然后綜合判斷輸出最終結果。
一般而言,通常所說的集成學習中的多個學習器都是同質的“弱學習器”?;谠摗叭鯇W習器”,通過樣本集擾動、輸入特征擾動、輸出表示擾動、算法參數擾動等方式生成多個學習器,進行集成后獲得一個精度較好的“強學習器”。
最著名的集成算法就是Boosting類算法,包括AdaBoosting等常用算法。這類算法需要同時訓練多個模式,基本思路就是根據訓練時的正確率和錯誤率調整不同學習器的權重,最終預測時使用帶權重的投票法產生最終結果。
還有一類集成算法為Bagging類算法,主要思路是分別訓練幾個不同的模型,然后用模型平均的方法做出最終決策。
最著名的Bagging類算法就是隨機森林,該算法還融入了隨機子空間方法,是以決策樹為基礎分類器的一個集成學習模型,它包含多個由Bagging集成學習技術訓練得到的決策樹,當輸入待分類的樣本時,最終的分類結果由單個決策樹的輸出結果投票決定。
6. 強化算法
強化學習(reinforcement learning)和我們在前面提到的算法不太一樣,其主要用于訓練一個可以感知環境的自制感知器,通過學習選擇能達到其目標的最優動作。這個很具有普遍性的問題應用于學習控制移動機器人,在工廠中學習最優操作工序以及學習棋類對弈等。
當某個智能體在其環境中做出每個動作時,施教者會提供獎勵或懲罰信息,以表示結果狀態的正確與否。該智能體的任務就是從這個非直接的,有延遲的回報中學習,以便后續的動作產生最大的累積效應。
——引用自米歇爾(Mitchell T.M.)《機器學習》
最著名的增強學習算法就是Q-Learning算法。由于增強學習算法不在本文討論范疇,并由于其本身的復雜性,我們在這里只做簡單的介紹但不做深入討論。
1. 學習曲線
首先,我們必須清楚機器學習是計算機科學中的一個領域,所以要能夠掌握機器學習,真正通過計算機把機器學習應用起來是需要以計算機科學為基礎的。比如要了解基礎的程序設計語言,至少是Python或者MATLAB,要知道基本的數據結構,要知道基本的數據處理技術,要知道基本的數據存儲查詢技術等。
其次,機器學習算法一般都有比較嚴密完善的數學原理,如果不能從數學的角度去理解機器學習,我們是無法理解其中一些本質核心的東西的,那就永遠只能從使用模型的角度對這個領域淺嘗輒止了。
另外機器學習也是一個依靠經驗的領域,許多參數和方法都需要依靠日常的經驗積累出來,從而形成一種解決問題的思維和感覺,這樣在利用機器學習技術解決現有問題時會更快、更有效,往往能找到合適的解決方案。
所以機器學習是有學習曲線的,也許更像一個無限循環的S形學習曲線,一開始學習基本的機器學習算法,做簡單的實驗非常容易入手。根據經驗,進一步學習更多的機器學習算法后可能會逐漸迷失在各種機器學習模型之中,學習難度陡然上升。
當你將大多數經典模型融會貫通之后,你又會覺得各種類型的機器學習算法變化無非幾類,于是學習難度曲線又會變得平滑。但當你開始解決實際問題時,就又會陷入陡峭的學習曲線中,在攀爬式的學習中不斷積累經驗。
總而言之,機器學習是一個需要不斷進行理論和經驗積累的技術,每過一個階段都會遇到相應的瓶頸。這不是一成不變的,而是一個需要不斷學習實踐的技術。只有在不斷遇到問題并解決問題后才能不斷前行。
2. 技術棧
我們把深度學習的技術棧分為3個類別。第1類是基礎數學工具,第2類是機器學習基礎理論方法,第3類是機器學習的實踐工具與框架。我們在這里對這幾類內容做一個概述,如果讀者在學習過程當中發現有不甚了解的基礎概念或知識時,可以翻看本文尋找你需要的工具和技術并進行了解,循環往復、溫故而知新。
基礎數學工具包括高等數學、線性代數、概率論與數理統計、離散數學、矩陣理論、隨機過程、最優化方法和復變函數等。沒錯,基礎數學工具在機器學習領域乃至其工程領域必不可少,望讀者能夠對這些知識有一個較為全面的掌握。
機器學習基礎理論方法包括決策樹、支持向量機、貝葉斯、人工神經網絡、遺傳算法、概率圖模型、規則學習、分析學習、增強學習,等等。
機器學習的實踐工具與框架類目就比較繁雜了,包括基礎語言與工具、工程框架、數據存儲工具和數據處理工具。
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
解碼數據基因:從數字敏感度到邏輯思維 每當看到超市貨架上商品的排列變化,你是否會聯想到背后的銷售數據波動?三年前在零售行 ...
2025-05-23在本文中,我們將探討 AI 為何能夠加速數據分析、如何在每個步驟中實現數據分析自動化以及使用哪些工具。 數據分析中的AI是什么 ...
2025-05-20當數據遇見人生:我的第一個分析項目 記得三年前接手第一個數據分析項目時,我面對Excel里密密麻麻的銷售數據手足無措。那些跳動 ...
2025-05-20在數字化運營的時代,企業每天都在產生海量數據:用戶點擊行為、商品銷售記錄、廣告投放反饋…… 這些數據就像散落的拼圖,而相 ...
2025-05-19在當今數字化營銷時代,小紅書作為國內領先的社交電商平臺,其銷售數據蘊含著巨大的商業價值。通過對小紅書銷售數據的深入分析, ...
2025-05-16Excel作為最常用的數據分析工具,有沒有什么工具可以幫助我們快速地使用excel表格,只要輕松幾步甚至輸入幾項指令就能搞定呢? ...
2025-05-15數據,如同無形的燃料,驅動著現代社會的運轉。從全球互聯網用戶每天產生的2.5億TB數據,到制造業的傳感器、金融交易 ...
2025-05-15大數據是什么_數據分析師培訓 其實,現在的大數據指的并不僅僅是海量數據,更準確而言是對大數據分析的方法。傳統的數 ...
2025-05-14CDA持證人簡介: 萬木,CDA L1持證人,某電商中廠BI工程師 ,5年數據經驗1年BI內訓師,高級數據分析師,擁有豐富的行業經驗。 ...
2025-05-13CDA持證人簡介: 王明月 ,CDA 數據分析師二級持證人,2年數據產品工作經驗,管理學博士在讀。 學習入口:https://edu.cda.cn/g ...
2025-05-12CDA持證人簡介: 楊貞璽 ,CDA一級持證人,鄭州大學情報學碩士研究生,某上市公司數據分析師。 學習入口:https://edu.cda.cn/g ...
2025-05-09CDA持證人簡介 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度、美團、阿里等 ...
2025-05-07相信很多做數據分析的小伙伴,都接到過一些高階的數據分析需求,實現的過程需要用到一些數據獲取,數據清洗轉換,建模方法等,這 ...
2025-05-06以下的文章內容來源于劉靜老師的專欄,如果您想閱讀專欄《10大業務分析模型突破業務瓶頸》,點擊下方鏈接 https://edu.cda.cn/g ...
2025-04-30CDA持證人簡介: 邱立峰 CDA 數據分析師二級持證人,數字化轉型專家,數據治理專家,高級數據分析師,擁有豐富的行業經驗。 ...
2025-04-29CDA持證人簡介: 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度,美團,阿里等 ...
2025-04-28CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-27數據分析在當今信息時代發揮著重要作用。單因素方差分析(One-Way ANOVA)是一種關鍵的統計方法,用于比較三個或更多獨立樣本組 ...
2025-04-25CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-25在當今數字化時代,數據分析師的重要性與日俱增。但許多人在踏上這條職業道路時,往往充滿疑惑: 如何成為一名數據分析師?成為 ...
2025-04-24