機器學習是如何工作的——一個簡單的指南

已發表: 2019-07-31

Netflix 和亞馬遜在他們的遊戲中做得非常好——他們似乎總是知道你想看/購買什麼內容或產品。 您不只是喜歡看到已經根據您的口味和喜好精心策劃的一切嗎?

雖然我們大多數人都知道 Netflix 和亞馬遜漂亮的推薦引擎背後的秘密(當然是機器學習!),但我們中有多少人熟悉機器學習的內部機制?

直截了當地說——機器學習是如何工作的

本質上,機器學習是一種數據分析技術(人工智能的一個子集),旨在從經驗中“學習”並使機器能夠執行需要智能的任務。 機器學習算法應用計算方法來提取信息並直接從數據中學習,而無需對其進行顯式編程(不必依賴於預定方程)。

機器學習系統剖析

所有機器學習系統都可以分解為三個部分:

  • 模型——處理識別的組件,即預測。
  • 參數——指模型用於做出決策(預測)的因素。
  • 學習者——通過考慮與實際結果相比的預測差異來調整參數(以及作為一個整體,模型)的組件。

機器學習的類型

現在您已經熟悉了 ML 系統的核心組件,是時候看看它們“學習”的不同方式了。

監督學習

在監督學習中,模型被明確地訓練如何將輸入映射到輸出。 監督學習算法採用一組已識別的輸入數據以及對該數據的已知響應(輸出),並訓練模型以生成合理的預測以響應新的輸入數據。

監督學習使用兩種方法來開發預測模型——

  • 分類——顧名思義,這種技術通過標記輸入數據將它們分類為不同的類別。 它用於預測離散反應(例如,癌細胞是良性還是惡性)。 醫學成像、語音識別和信用評分是分類的三個流行用例。
  • 回歸——該技術用於通過識別輸入數據中的模式來預測連續響應。 例如,溫度或天氣的波動。 回歸用於預測天氣、電力負荷和算法交易。

無監督學習

無監督學習方法使用未標記的數據並試圖解開其中的隱藏模式。 因此,該技術從由沒有標記響應的輸入數據組成的數據集中進行推斷。

  • 聚類——最常見的無監督學習方法之一,聚類是一種探索性數據分析技術,可將數據分類為“集群”,而無需任何關於集群憑據的已知信息。 對象識別和基因序列分析是聚類的兩個例子。
  • 降維– 降維清除所有冗餘信息的輸入數據並僅保留基本部分。 因此,數據不僅變得乾淨,而且還減小了大小,從而佔用更少的存儲空間。
機器學習是如何工作的

強化學習

強化學習旨在建立可以通過反複試驗學習和改進的自我維持和自我學習模型。 在學習(訓練)過程中,如果算法能夠成功執行特定動作,就會觸發獎勵信號。 獎勵信號的作用就像算法的指路燈。 有兩個獎勵信號:

  • 觸發積極信號以鼓勵和繼續特定的行動序列。
  • 負面信號是對特定錯誤行為的懲罰。 它要求在進一步進行培訓之前糾正錯誤。

強化學習廣泛用於視頻遊戲。 這也是自動駕駛汽車背後的機制。

在 ML 算法的“學習”功能中

在機器學習算法的功能以及它們如何通過經驗學習的背後,有三個共同的原則。

學習函數

學習過程的第一步是 ML 算法學習目標函數 (f),該目標函數 (f) 最好地將輸入變量 (X) 映射到輸出變量 (Y)。 所以,

Y = f(X)。

在這裡,目標函數 (f) 的形式是未知的,因此是預測建模。

在這個一般學習階段,ML 算法學習如何根據新的輸入變量 (X) 進行未來預測 (Y)。 自然,該過程並非沒有錯誤。 這裡錯誤 (e) 的存在與輸入數據 (X) 無關。 所以,

Y = f(X) + e

由於誤差 (e) 可能沒有足夠的屬性來表徵從 X 到 Y 的最佳映射場景,因此它被稱為不可約誤差——無論算法在估計目標函數 (f) 方面有多好,您都無法減少誤差 ( e)。

做出預測並學習如何改進它們

在前面的一點中,我們了解了 ML 算法如何學習目標函數 (f)。 而且我們已經知道,我們唯一且唯一的目標是找到從 X 映射 Y 的最佳方法。換句話說,我們需要找到將輸入映射到輸出的最準確方法。

會有錯誤(e),是的,但是算法必須不斷嘗試了解它與所需輸出(Y)的距離以及如何達到它。 在此過程中,它將不斷調整參數或輸入值 (X) 以最佳匹配輸出 (Y)。 這將一直持續到它與所需的輸出模型達到高度的相似性和準確性。

如何學習機器學習——一步一步

“梯度下降”學習方法

我們可能確實成功地創造了“智能”機器,但它們的學習速度不同——機器往往會放慢速度。 他們相信“梯度下降”的學習過程——你不會一下子邁出一大步,而是邁出一小步,從山頂慢慢下降(這裡的比喻是爬山)。

下山時,不要跳、跑、摔倒; 相反,您會採取測量和計算的步驟來安全地到達底部並避免意外。

ML 算法使用這種方法——它們不斷調整自己以適應不斷變化的參數(再次描繪一座山的崎嶇和未開發的地形)以最終獲得預期的結果。

總結…

所有機器學習算法的基本目標是開發一個最能泛化到特定輸入數據的預測模型。 由於 ML 算法和系統通過不同類型的輸入/變量/參數來訓練自己,因此必須擁有龐大的數據池。 這是為了允許 ML 算法與不同類型的數據進行交互,以了解它們的行為並產生所需的結果。

我們希望通過這篇文章,我們可以為您揭開機器學習的神秘面紗!

適合所有人的機器學習‎

構建應用程序並實施人工智能和機器學習來解決現實世界的問題。 從 upGrad 獲得機器學習和 AI 的 PG 文憑。
現在註冊@升級