人工智慧-機器學習簡介

mac小搭檔發表於2020-08-23

簡介

機器學習是一門為了預測某個值而對系統應用演算法來學習資料中模式的科學。利用足夠的資料,在所有輸入變數與待預測值之間建立關係。在給定其他輸入變數的情況下,系統更容易預測一個新的值。這種方法不同於傳統程式設計,在傳統程式設計中,應用程式是基於先前設定的規則開發的。雖然機器學習的基本概念已經存在了一段時間,但這一領域最近才迅猛發展,這要歸功於先進的處理器和豐富的可用資料,這兩者都是實現精確預測的關鍵。因為介紹機器學習歷史的內容很多,所以本文不再贅述。我們在這裡為您提供了一種實用的方法來理解必要的概念,幫助您入門。

本文解釋了以下概念:

  • 機器學習基礎知識
  • 有監督學習與無監督學習的比較
  • 構建模型
  • 機器學習中的管道

機器學習基礎知識

在本節中,我們將討論在處理機器學習專案時使用的一些基本術語。

線性代數

線性代數是數學中處理變數之間相關性的一個領域。之所以稱為線性,是因為輸出變數可以用冪(指數)不大於 1 的輸入變數來表示。瞭解線性代數的基礎知識,對理解機器學習的一些基礎知識大有幫助。在本節中,我們定義了一些經常使用的關鍵術語。

什麼是張量?

我們先從 標量講起。標量基本上是任何數字,如 1、5、23.5 或 42。如果將多個標量組合在一起,最後就會得到一個 向量。例如,(1, 5, 23, 2) 就是一個長度為 4 的向量。在向量中,所有元素都應該屬於相同的資料型別,而在 元組中,可以混用型別。 矩陣是大小相等的向量的列表。在矩陣中,行數可以不同於列數,但每個元素必須具有相同的型別。具有  m 行和  n 列的矩陣稱為  m x n 矩陣。

張量是在多維空間中表示的資料。張量是表示上述內容的通稱。例如,零維張量就是標量,一維張量是向量,二維張量則是矩陣。下圖顯示了一個三維張量的例子,它基本上是一個矩陣的擴充套件,但卻是三維的。

tensor.png

張量在某些方面使用起來很方便,比如影像處理。可以用一個維度表示高度,一個維度表示寬度,一個維度表示顏色。

高維向量空間

理解高維向量空間有助於為理解機器學習的工作原理打下堅實的基礎。下圖顯示了一個包含三列的資料集。這些列被稱為“維度”或“特徵”。該表也稱為三維資料集。在一個三維空間中繪製這些點時,我們觀察到三個點雲。

classification2.png

是在二維空間中對點的基本分割。在前面的影像中,您看到了分割線,這標誌著三維空間中點的分割。三維空間中的這條線稱為 平面。如果從三維變為四維或者更高維,平面就變成了超平面。

classification2.png

識別這些分割非常關鍵,因為在進行分割之後,預測新資料只不過是識別資料點位於分割的哪個部分。

有監督機器學習與無監督機器學習的比較

有監督機器學習

有監督機器學習是指資料集中的每條記錄都包含一個標籤或標誌的一類問題。

data_label.png

以下表為例,其中包含有關最高溫度、最低溫度和最大振動的資訊。

table.png

最後一列的 asperity(粗糙度)就是標籤。在給定溫度和振動資料的情況下,我們想要預測粗糙度。這是一個有標籤的資料集。

使用這個包含標籤的資料集,我們可以訓練一個演算法,為無標籤的資料預測值。您可以將它放入演算法中,演算法現在就可以預測該資料的標籤。這被稱為有監督學習。有監督學習有兩種型別: 迴歸分類

迴歸

必須預測連續值的用例型別稱為迴歸。例如,如果我們向演算法傳遞值 35、35 和 12,它預測的粗糙度值為 0.32。

regression.png

分類

輸出是二進位制值或至少是離散值(而不是連續值)的用例型別稱為分類。也就是說,該演算法不會預測一個數字,而是預測一個類變數。

table2.png

例如,如果我們向演算法傳遞值 35、35 和 12,它會預測值 0 表示被破壞。

classification.png

如果只有兩個類,則稱為二元分類。如果有兩個以上的類,則稱為多類分類。

無監督學習

無監督機器學習是指資料集中的記錄都不包含任何標籤或標誌的一類問題。 聚類是一種無監督機器學習。

data2.png

聚類

在前面顯示的三維圖中,請注意 3 個資料簇或資料雲。透過繪製表格,我們就可以看到資料以三個簇為中心。這個過程被稱為聚類。

clustering.png

構建模型

機器學習 模型是指使用先前看到的資料建立的一種數學結構,為按照先前計算的一定精度來預測新資料而設定。

要從頭開始構建模型,就需要按以下順序來迭代執行步驟。

  • 資料探索
  • 資料預處理
  • 拆分資料以用於訓練和測試
  • 準備一個分類模型
  • 使用管道組裝所有這些步驟
  • 訓練模型
  • 對模型執行預測
  • 評估模型效能並使之視覺化


管道

在機器學習流程中設計資料處理時,管道是一個非常方便的過程。資料預處理是一個單調乏味的步驟,無論應用何種演算法,在每次開始訓練之前都必須對資料進行預處理。下圖顯示了每次開始資料建模之前應用的一系列典型的預處理步驟。

pipelines-1.png

當使用管道時,您可以保留預處理,只切換不同的建模演算法或建模演算法的不同引數集。總體思路是,您可以將完整的資料處理流程融入單一管道中,而這個管道可以在下游使用。

pipelines-2.png

與機器學習演算法類似,管道具有“擬合”、“評估”和“評分”這些方法。基本上,“擬合”用於開始訓練,“評分”則返回預測值。

pipelines-3.png

使用管道的最大優勢之一就是 交叉驗證。它指的是使用同一個管道改變或調整幾個超引數的過程,這可以加速演算法的最佳化。可以調整幾個超引數來改善模型的效能。有關這些主題的詳細資訊將在以後的文章中加以介紹。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69981015/viewspace-2713943/,如需轉載,請註明出處,否則將追究法律責任。

相關文章