“機器智能是人類永遠需要的一項發明。”— Nick Bostrom.
如果您可以回顧幾年前的AI並將其與現在的AI進行比較,您會驚訝地發現AI的發展速度隨着時間的增長呈指數級增長。
它已擴展到各種領域,例如ML,Expert Systems,NLP等數十個領域。
儘管AI的思路是構建可以自行思考和執行的更智能的系統,但仍然需要對其進行訓練。
AI的ML領域是爲實現非常精確的目標而創建的,它引入了多種算法,從而可以更順暢地進行數據處理和決策。
什麼是機器學習算法?
機器學習算法是任何模型背後的大腦,可讓機器學習並使其更智能。
這些算法的工作方式是,爲它們提供第一批數據,並且隨着時間的流逝和算法的準確性的提高,額外的數據也被引入到算法中。
定期將算法應用於新數據和新經驗的過程可提高機器學習的整體效率。
機器學習算法對於與分類,預測建模和數據分析相關的各種任務至關重要。
“機器學習方面的突破將價值十個微軟。”- Bill Gates
機器學習算法的類型
在本節中,我們將重點介紹現有的各種ML算法。 ML算法的三個主要範例是:
監督學習
顧名思義,監督算法通過定義一組輸入數據和預期結果來工作。 通過在訓練數據上迭代執行功能並讓用戶輸入控制參數來改進模型。 如果發現其映射的預測正確,則認爲該算法是成功的。
無監督學習
在監督算法在用戶標記的數據上進行輸出預測時,將這些訓練結果在沒有用戶干預的情況下來訓練未標記數據。
這個算法可以對數據進行分類和分組,以識別一些隱藏或未發現的類別,通常用作監督學習的初步步驟。
強化學習
強化學習算法旨在在探索和開發之間找到完美的平衡,而無需標記數據或用戶干預。
這些算法通過選擇一個動作並觀察結果來工作,在此基礎上,它瞭解結果的準確程度。 反覆重複此過程,直到算法選擇正確的策略爲止。
流行的機器學習算法
在熟悉了幾種類型的ML算法之後,我們繼續演示一些流行的算法。
1.線性迴歸
線性迴歸是一種監督型ML算法,可幫助找到點集合的近似線性擬合。
線性迴歸的核心是識別兩個變量之間關係的線性方法,其中兩個值之一是從屬值,另一個是獨立的。
其背後的原理是要理解一個變量的變化如何影響另一個變量,從而導致正或負的相關關係。
該線稱爲迴歸線,由線性方程Y = a * X + b表示。
在此等式中:
- Y —因變量
- a —坡度
- X-自變量
- b-截距
該算法適用於預測輸出是連續的並且具有恆定斜率的情況,例如:
- 估算銷售額
- 評估風險
- 天氣數據分析
- 預測分析
- 客戶調查結果分析
- 優化產品價格
- Logistic迴歸
Logistic迴歸算法通常用於二進制分類問題,在這些情況下,事件通常會導致通過或失敗,正確或錯誤這兩個值中的任何一個。
最適合需要預測因變量將屬於兩類之一的概率的情況。
該算法的常見用例是確定給定的筆跡是否與所討論的人匹配,或未來幾個月的油價是否會上漲。
通常,迴歸可用於實際應用中,例如:
- 信用評分
- 癌症檢測
- 地理圖像處理
- 手寫識別
- 圖像分割與分類
- 衡量營銷活動的成功率
- 預測某種產品的收入
- 特定日子會發生地震嗎?
- 決策樹
決策樹算法屬於監督型機器學習,用於解決迴歸和分類問題。 目的是使用決策樹從觀察並處理每個級別的結果。
決策樹是一種自上而下的方法,其中從訓練數據中選擇最合適的屬性作爲根,並對每個分支重複該過程。 決策樹通常用於:
- 建立知識管理平臺
- 選擇要旅行的航班
- 預測酒店的入住高峯日期
- 向客戶建議要買什麼車
- 預測預測並確定各個領域的可能性
- Apriori機器學習算法
它是幾種在線平臺上經常推薦的算法。
它通過在數據集中搜索通用的數據進行操作,然後在它們之間建立關聯。
它通常用於數據挖掘和從關係數據庫學習關聯規則。
該算法背後的思想是保持相關項目儘可能擴展到更大的集合,以創建更有用的關聯。
該算法的應用包括突出顯示市場中的購買趨勢。
此外,它更易於實現,並且可以用於大型數據集。
- 樸素貝葉斯
樸素貝葉斯分類器被歸類爲高效的監督ML算法,並且是最簡單的貝葉斯網絡模型之一。
它通過對數據應用貝葉斯定理,並假設給定變量的值的情況下,每對特徵之間都具有條件獨立性。
簡而言之,考慮到事件B已經發生,用它來找到事件A發生的可能性。 樸素貝葉斯最適合-
- 過濾垃圾郵件
- 推薦系統,例如Netflix
- 對有關技術,政治或體育的新聞文章進行分類
- 社交媒體上的情感分析
- 面部識別軟件
- 人工神經網絡
仿照人腦建模的人工神經網絡實現了神經元的巨大迷宮,或者說簡化並模擬了節點之間相互傳遞信息的過程。
這些相互連接的節點通過邊緣將數據瞬時傳遞給其他節點,以進行快速處理,從而使學習更加順暢。
人工神經網絡從數據集中學習,而不是通過一組特定的規則進行編程。 能夠對非線性過程進行建模,它們可以在以下領域中實施:
- 模式識別
- 網絡安全
- 數據挖掘
- 檢測患者的癌症種類
- K-Means聚類
k-均值聚類是一種迭代的無監督學習算法,可將n個觀察值劃分爲k個簇,每個觀察值均屬於最近的簇均值。
簡而言之,該算法基於數據點的相似性來聚合數據點的集合。 它的應用範圍包括在Python,SciPy,Sci-Kit Learn和data mining等編程語言和庫中聚集相似和相關的網絡搜索結果。
K均值聚類的實際應用-
-
識別假新聞
-
垃圾郵件檢測和過濾
-
按類型對書籍或電影進行分類
-
規劃城市時的熱門交通路線
-
支持向量機
支持向量機被歸類爲監督機器學習算法,主要用於分類和迴歸分析。
該算法通過建立一個可以將新示例和新數據分配給一個類別的模型來工作,每個類別間可以容易地區別開來。
在維數大於樣本數的情況下,SVM非常有效,並且存儲效率極高。
SVM應用程序可以在以下領域找到:
- 人臉檢測
- 影像分類
- 文本和超文本分類
- 手寫識別
- 藥物療法的發現
- 生物信息學-蛋白質,基因,生物學或癌症分類。
- K近鄰算法
K近鄰是一種用於迴歸和分類問題的監督ML算法。
通常用於模式識別,該算法首先存儲並使用距離函數識別數據中所有輸入之間的距離,選擇最接近中心點的k個指定輸入並輸出:
- 最經常出現的標籤(用於分類)
- k個最近鄰居的平均值(用於迴歸)
該算法的實際應用包括:
- 指紋檢測
- 信用評級
- 預測股市
- 分析洗錢
- 銀行破產
- 匯率
- 降維算法
降維算法通過使用兩種主要方法(特徵選擇或特徵提取)之一減少數據集中的維度空間或隨機變量的數量來工作。
此算法通常用於預處理數據集並刪除冗餘特徵,從而使算法更容易訓練模型。
此算法還具有一些不錯的好處,例如:
- 內儲需求低
- 所需的計算能力更少
- 精度更高
- 降低噪音
一些著名的降維算法是:
- 主成分分析
- 線性判別分析
- 局部線性嵌入
- 多維縮放
- 主成分分析
主成分分析是ML的無監督算法之一,主要用於通過使用特徵消除或特徵提取來縮小特徵空間的維數。
它也是探索性數據分析和建立預測模型的工具。 需要標準化的數據,PCA可以作爲幫助:
- 圖像處理
- 電影推薦系統
- 計算數據協方差矩陣
- 對協方差矩陣執行特徵值分解
- 優化多個通信通道中的功率分配
PCA旨在減少數據集中的冗餘,使其更簡單而又不影響準確性。 它通常部署在圖像處理和風險管理領域。
- 隨機森林
隨機森林通過實現決策樹使用多種算法來解決分類,迴歸和其他類似問題。
它的工作方式是,創建帶有隨機數據集的決策樹堆,並在其上反覆訓練模型以獲得接近準確的結果。
最後,將來自這些決策樹的所有結果組合在一起,以識別出最常出現在輸出中的最合適的結果。
可以在以下領域找到“隨機森林”應用程序:
-
銀行賬戶,信用卡欺詐檢測
-
檢測並預測藥物的藥物敏感性
-
通過分析患者的病歷來識別患者的疾病
-
預測購買特定股票時的估計損失或利潤
-
梯度增強和Ada增強
增強是一種用於集成ML算法的技術,可將弱學習者轉換爲強學習者。 當數據豐富時,需要使用增強算法,並且我們試圖減少監督學習中的偏差和方差。 以下是兩種流行的增強算法。
- 梯度增強
通常以迭代方式(例如決策樹)構建預測模型,將梯度增強算法用於分類和迴歸問題。 通過對強者的錯誤進行培訓,從而提高了弱者的學習能力,從而獲得了一個比較準確的學習者。
- Ada增強
AdaBoost是Adaptive Boosting的縮寫,當弱學習者失敗時,它會改進模型。 它通過修改附加到樣本中實例的權重以將精力更多地集中在困難實例上來實現,然後,弱學習者的輸出將被合併以形成加權總和,並被視爲最終的提升後的輸出。
結論:
機器學習算法對於數據科學家來說至關重要,因爲它們在現實世界中的應用日益廣泛。 使用上述各種算法,您可以找到最適合解決問題的算法。 儘管這些算法有有監督也有無監督,但它們可以處理各種任務,並且能夠與其他算法同步工作。
作者:Claire D.
deephub翻譯組:孟翔傑