機器學習詞彙表:機器學習基礎知識

本頁面提供機器學習基礎知識詞彙表。如要查看所有詞彙詞彙,請按這裡

A

準確率

#fundamentals

正確分類「預測」的數量除以預測總數。也就是:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

舉例來說,只要模型將 40 次正確預測為 10 次,系統預測的準確率將會越高:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

二進位檔分類可提供不同類別的正確預測不正確的預測類別的名稱。因此,二元分類的準確率公式如下:

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

其中:

  • TP 是真陽性 (正確預測) 的數量。
  • TN 是 true 負數 (正確預測值) 的數目。
  • FP 是「偽陽性 (不正確的預測結果) 數量。
  • FN 是偽陰性 (預測不正確) 的數目。

使用精確度喚回度來比較及對比準確率。

啟用函式

#fundamentals

這個函式可讓類神經網路瞭解特徵與標籤之間的非線性 (複雜) 關係。

常見的啟用函式包括:

啟用函式的圖例不得為單行。 例如,ReLU 啟用函式的圖是由兩條直線組成:

兩行圖的笛卡兒情節。第一行的常數 y 值為 0,沿著 -infinity,0 到 0,-0 的 x 軸執行。
第二行從 0,0 開始。這一行的坡度為 +1,因此介於 0,0 至 +finity + infinity 之間。

Sigmoid 啟用函式的圖表如下:

兩個維度的曲線圖,其中 x 值涵蓋網域 -infinity 到 +正數,y 值的範圍則近 0 至近 1。x 為 0 時,y 為 0.5。曲線的坡度一律為正數,最高的斜率為 0.0.5,而 x 的絕對值會隨 x 絕對值而逐漸下降。

人工智慧

#fundamentals

可協助解決複雜工作的非人程式或模型。舉例來說,可翻譯文字的程式或模型,或是能從無線電影像中識別疾病的程式或模型,都屬於人工智慧。

機器學習」在正式語言中是人工智慧的子欄位。不過,近年來有些機構開始採用人工智慧機器學習等詞彙。

AUC (ROC 曲線下的區域)

#fundamentals

介於 0.0 至 1.0 之間的數字,代表二元分類模型' 將正面類別排除類別分離的能力。AUC 越接近 1.0,則模型比較各個類別彼此的能力越佳。

例如,下圖顯示將分類類別 (紫色矩形) 獨立於負面類別 (紫色矩形) 的分類器模型。這個不切實際的模型採用 AUC 為 1.0:

數字線,其中一側有 8 個正例子,另一側有 9 個負面例子。

相反地,下圖顯示產生隨機結果的分類器模型結果。這個模型的 AUC 為 0.5:

包含 6 個正向和 6 個負數的數字行。
          範例序列為正數、負數、正數、負數、正值、正數、負數、正負數、正值和負數。

是的,上述模型的 AUC 為 0.5,而非 0.0。

大多數模型介於兩個極端之間。舉例來說,下列模型會將正值與負數分開,因此 AUC 介於 0.5 到 1.0 之間:

包含 6 個正向和 6 個負數的數字行。
          範例序列為負值、負值、負值、負、正、負數、正、負、負、正、正值。

AUC 會忽略您為分類門檻設定的任何值。相反,AUC 會考量所有可能的分類門檻。

B

反向傳播

#fundamentals

類神經網路中實作梯度下降的演算法

訓練類神經網路涉及下列兩個傳遞週期的許多「疊代」

  1. 轉寄票證中,系統會處理範例批次以產生預測。系統會將每項預測與每個標籤值進行比較。在這個範例中,預測和標籤值之間的差異是「誤差」。系統會匯總所有範例的損失,以計算目前批次的損失損失。
  2. 反向傳遞 (反向傳播) 中,系統會透過調整所有隱藏圖層的所有神經元權重。

類神經網路通常包含多個隱藏層中的神經網路。每個類神經元都會造成不同的整體損失。 反向傳播決定是否要增加或減少套用至特定神經元的權重。

「學習率」是一個調節係數,可控制每個反向票證的權重。學習率越大,每次學習時間的權重就會越小。

在微積分方面,反向傳播會實作 calculus'鏈結規則。也就是說,反向傳播會計算每個參數的部分衍生變數,分別遵循每個參數。詳情請參閱機器學習密集課程的教學課程

多年前,機器學習從業人員必須編寫程式碼來導入反向傳播功能。TensorFlow 等現代化的機器學習 API 現已為您導入反向傳播功能。哇!

Batch

#fundamentals

在單次訓練疊代作業中使用的一組範例批次大小會決定批次中的範例數量。

請參閱 epoch 一文,瞭解批次與 Epoch 紀元關係之間的關係。

批次大小

#fundamentals

批次中的範例數量。舉例來說,如果批次大小為 100,則模型每次疊代都會處理 100 個樣本。

以下是常見的批次大小策略:

  • 隨機梯度下降 (SGD),批次大小為 1。
  • 完整批次,其中批次大小是整個訓練集中的範例數量。舉例來說,如果訓練集包含一百萬個範例,則批次大小就會是一百萬個範例。批次處理通常效率不彰。
  • mini-batch:批次大小通常介於 10 至 1000 之間。迷你批次通常是最有效率的策略。

偏誤 (道德/公平)

#fairness
#fundamentals

1. 對某些事物、人物或團體的刻板印象、偏見或偏愛。這些偏誤可能會影響資料收集和解讀作業、系統設計,以及使用者與系統互動的方式。這類偏誤的形式包括:

2. 取樣或回報程序產生的系統錯誤。這類偏誤的形式包括:

請勿與機器學習模型中的偏誤字詞預測偏誤混淆。

偏誤 (數學) 或偏誤字詞

#fundamentals

從源位置攔截或偏移。Bias 是機器學習模型中的參數,以下列任一方式表示:

  • B
  • w0

舉例來說,偏誤是以下公式中的 b

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

簡單簡單的 2D 線代表偏誤,亦即「y 攔截」。 例如,下圖中線條的偏誤為 2。

斜率為 0.5 且偏誤 (y 截距) 為 2 的線圖。

由於存在所有模型是從起點 (0,0) 開始,因此存在偏誤。舉例來說,假設遊樂園進入 2 歐元,並於客戶留下的每小時增加 0.5 歐元。因此,對應費用總費用的偏誤為 2,因為最低費用為 2 歐元。

偏誤請勿與倫理和公平原則的偏誤預測偏誤混淆。

二元分類

#fundamentals

一種「分類工作,用於預測兩個互斥的類別之一:

例如,下列兩個機器學習模型會執行二元分類:

  • 決定電子郵件是垃圾郵件 (正類) 還是非垃圾郵件 (負面類別) 的模型。
  • 評估醫療症狀的模型,以判斷某個人是否患有特定疾病 (陽性類別) 或者是否患有疾病。

多類別分類形成對比。

另請參閱邏輯迴歸分類門檻

特徵分塊

#fundamentals

將單一功能轉換為多個二進位功能 (稱為「值區」或「二進位檔」),通常以值範圍為依據。切割功能通常是連續功能

例如,您可以將溫度範圍分成多個獨立的值區,而不是將單一溫度範圍當做單一連續浮點功能。

  • <= 攝氏 10 度是「冷的」值區。
  • 攝氏 11 到 24 度之間會成為「溫和的水槽」。
  • >= 攝氏 25 度是「溫和的」值區。

模型會以相同方式處理同一個值區中的所有值。例如,值 1322 都位於臨時溫度值區中,因此模型會以同樣方式處理這兩個值。

C

類別資料

#fundamentals

具有特定可能值的一組功能。例如,假設名為 traffic-light-state 的特徵功能,只能有下列其中一個可能的值:

  • red
  • yellow
  • green

traffic-light-state 表示為類別特徵,模型可以瞭解 redgreenyellow 對驅動程式行為的影響。

類別功能有時也稱為「離散功能

對比數值資料

類別

#fundamentals

標籤所屬的類別。例如:

  • 在偵測垃圾內容的二元分類模型中,這兩個類別可能是垃圾內容和非垃圾內容
  • 在用於識別狗狗品種的多類別分類模型中,類別可能為貴賓犬信標等。

「分類模型」會預測類別。相反地,「迴歸模型」會預測的數字,而非類別。

分類模型

#fundamentals

「預測」類別。舉例來說,以下是所有分類模型:

  • 這個模型可預測輸入的語句 (法文?西班牙文? 義大利文?)。
  • 可預測樹種的模型 (Maple?橡木色?Baobab?)。
  • 可預測特定健康狀況的正面或負面類別的模型。

相反地,迴歸模型會預測數字,而非類別。

兩種常見的分類類型如下:

分類門檻

#fundamentals

二元分類中,介於 0 和 1 之間的數字,可將邏輯迴歸模型的原始輸出轉換成正面類別排除類別的預測。請注意,分類門檻是由使用者選擇的值,而非模型訓練選擇的值。

邏輯迴歸模型會輸出 0 到 1 之間的原始值。接著:

  • 如果此原始值大於分類門檻,則系統會預測正類。
  • 如果此原始值小於分類門檻,系統會預測負類別。

例如,假設分類門檻為 0.8。如果原始值為 0.9,則模型會預測正類。如果原始值為 0.7,模型就會預測負類別。

選擇分類門檻會影響到偽陽性偽陰性的數量。

類別不平衡資料集

#fundamentals

分類問題的資料集,其中每個類別的「標籤」總數不同。例如,假設二元分類資料集有兩個標籤,如下所示:

  • 1,000,000 個排除標籤
  • 10 個正面標籤

負數與正數的比率為 100,000 至 1,因此這是類別未平衡的資料集

相反地,以下資料集「不會」為類別不平衡,因為排除標籤的正數比率相對接近 1:

  • 517 個排除標籤
  • 483 個正面標籤

多類別資料集也可以有類別不平衡。舉例來說,下列多類別分類資料集也屬於類別不平衡,因為一個標籤比其他兩個標籤來得更多:

  • 1,000,000 個帶有「綠色」類別的標籤
  • 200 個帶有「紫色」類別的標籤
  • 350 個類別為「橘色」的標籤

另請參閱主要類別次要類別

剪輯

#fundamentals

透過下列其中一種方式或兩者執行處理離群值的技術:

  • 降低大於最大門檻的 feature 值。
  • 增加小於最小門檻的功能值,直到達到最低門檻為止。

例如,假設特定特徵的值小於 0.5% 在 40–60 範圍內。在此情況下,您可以執行以下操作:

  • 請將所有超過 60 (上限門檻) 的值都設為正好 60。
  • 將所有低於 40 (最低門檻) 的值裁剪為 40。

離群值可能會破壞模型,有時會導致權重在訓練期間溢位。有些離群值也可能會大幅破壞濺出的指標,例如準確率。切割是限制損壞的常見技術。

漸層剪輯可在訓練期間強制在指定範圍的漸層值內。

混淆矩陣

#fundamentals

NxN 資料表,用於總結分類模型產生的正確和不正確的預測數量。舉例來說,假設有以下二元分類模型的混淆矩陣:

陰性 (預測) 非陰性 (預測)
家教 (真值) 18 (TP) 1 (FP)
非轉換量 (真值) 6 (FN) 452 (TN)

上述混淆矩陣如下所示:

  • 在 19 份「真值」的論述中,模型會將 18 分歸為 18 分,並誤歸類為 1。
  • 在 458 次預測中,真值為「非 Tumor」的模型中,模型誤將 452 這個分類錯誤並正確分類為 6。

多類別分類」問題的混淆矩陣可協助您找出錯誤模式。舉例來說,假設某個 3 類別多類別分類模型分類了三種不同的鳶尾體類型 (Virginica、Versicolor 和 Setosa),請思考以下混淆矩陣。真值是維吉尼亞州時,混淆矩陣顯示模型遠比 Setosa 錯誤地預測 Versicolor:

  組件 (預測) Versicolor (預測) 維吉尼亞州 (預測)
黃昏 (真值) 88 12 0
Versicolor (真值) 6 141 7
維吉尼亞州 (真值) 2 27 109

再舉一個例子,混淆矩陣可以顯示。

混淆矩陣包含充足資訊,用來計算各種成效指標,包括精確度喚回度

連續功能

#fundamentals

具有無限可能值的浮點功能,例如溫度或權重。

對比離散功能

融合

#fundamentals

遺失值很少或完全沒有疊代時達到的狀態。舉例來說,下列遺失曲線建議在 700 次疊代時融合:

笛卡兒的情節。X 軸失去損失。Y 軸是訓練疊代次數。經過多次疊代後,損失值會非常高,但用量會大幅下降。大約 100 次疊代後,損失仍然下降,但會更慢。經過大約 700 次疊代後,損失損失將會維持不變。

其他訓練無法改善模型時,模型就會融合

「深度學習」中,損失值有時會保持穩定或接近一段時間,直到多次下降為止。在長時間的數值遺失時,您可能會暫時得到錯誤的融合感。

另請參閱提前停止一節。

D

DataFrame

#fundamentals

代表在記憶體中表示資料集的熱門 pandas 資料類型。

DataFrame 類似於資料表或試算表。DataFrame 中的每個資料欄都有名稱 (標頭),每個資料列由一組專屬號碼標識。

DataFrame 中的每個資料欄結構都與 2D 陣列類似,只不過每個資料欄可以指派自身的資料類型。

另請參閱官方 pandas.DataFrame 參考資料頁面

資料集或資料集

#fundamentals

原始資料集合,通常 (但不是單獨) 以下列其中一種格式整理:

  • 試算表
  • CSV (逗號分隔值) 格式的檔案

深度模型

#fundamentals

包含多個隱藏層類神經網路

深度模型也稱為「深層類神經網路」

廣模型形成對比。

密集功能

#fundamentals

這個地圖項目,其中大部分或所有值皆為非零值,通常是浮點值的 Tensor。舉例來說,下列 10 個元素的 Tensor 很密集,因為其 9 個值不是零:

8 3 7 5 2 4 0 4 9 6

稀疏特徵形成對比。

depth

#fundamentals

類神經網路中下列項目的總和:

舉例來說,具有五個隱藏層和一個輸出層的類神經網路的深度為 6。

請注意,輸入層不會影響深度。

離散功能

#fundamentals

有限的功能。例如,值可能只有動物蔬菜礦物質的功能是獨立 (或類別) 特徵。

持續功能形成對比。

動態

#fundamentals

經常或持續進行某項操作。 「動態」和「線上」一詞是指機器學習的同義詞。 機器學習的動態線上常見用途如下:

  • 「動態模型」(或「線上模型」) 是經過重新訓練或持續重新訓練的模型。
  • 動態訓練 (或線上訓練) 是頻繁或持續進行訓練的程序。
  • 動態推論 (或線上推論) 是隨選產生的程序。

動態模型

#fundamentals

經常 (甚至是持續) 重新訓練的模型。動態模型是一種「終身學習者」,其做法會隨著不斷改變的資料而調整。動態模型又稱為「線上模型」

靜態模型形成對比。

E

提早停止

#fundamentals

正規化」方法,涉及在訓練遺失前「結束」訓練。在早期停止時,當您的驗證資料集損失增加時,您會刻意停止訓練模型,也就是說,一般化效能下降時。

嵌入圖層

#language
#fundamentals

特殊隱藏層可訓練於高維度的類別功能,逐步學習較低維度的嵌入向量。嵌入層可讓類神經網路在訓練時更有效率,比僅使用高維度類別特徵進行訓練更大。

舉例來說,Google 地球目前支援約 73,000 種樹木。假設樹狀結構種類是模型中的「特徵」,因此模型的輸入層包含 73,000 個元素的單熱向量。例如,baobab 可能代表如下:

由 73,000 個元素組成的陣列。前 6,232 個元素的值為 0。下一個元素會保留 1 這個值。最後 66,767 個元素則會保留零值。

73,000 個元素的陣列很長。如果您未在模型中新增嵌入層,訓練作業會乘以 72,999 個零,因此耗費大量時間。這可能是因為您選擇了 12 個維度的嵌入層。因此,嵌入層會逐漸為每個樹狀物種學習新的嵌入向量。

在某些情況下,「雜湊」是嵌入層的合理替代方案。

Epoch 紀元時間

#fundamentals

完整的訓練通過整個訓練集,因此每個範例都須處理一次。

Epoch 代表 N/批次大小訓練 疊代作業,其中 N 是範例的總數。

例如,假設:

  • 資料集內含 1,000 個範例。
  • 批次大小為 50 個範例。

因此,一個 epoch 需要 20 次疊代:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

例如

#fundamentals

一列 features 的值,以及可能的標籤監督式學習中的範例可分為兩種一般類別:

  • 已加上標籤的範例包含一或多項功能和標籤。系統會在訓練期間使用加上標籤的範例。
  • 未加上標籤的範例包含一或多項功能,但沒有標籤。系統會在推論期間使用未加上標籤的範例。

舉例來說,假設您正在訓練模型,以判斷天氣狀況對學生測驗分數的影響。以下是三個已加上標籤的範例:

功能與特色 標籤
溫度 溼度 氣壓 測試分數
15 47 998 不錯
19 34 1020 極佳
18 92 1012 不佳

以下是三個未加上標籤的範例:

溫度 溼度 氣壓  
12 62 1014  
21 47 1017  
19 41 1021  

資料集的資料列通常是範例的原始來源。也就是說,範例通常由資料集中的資料欄所組成。此外,範例中的功能也可能包含合成功能,例如功能交叉

F 鍵

偽陰性 (FN)

#fundamentals

模型誤認為排除類別的範例。例如,模型會預測特定電子郵件不是垃圾郵件 (排除類別),但該電子郵件實際上是垃圾郵件

偽陽性 (FP)

#fundamentals

在這個模型中,模型錯誤地預測 正類。舉例來說,模型會預測特定電子郵件是垃圾郵件 (正類),但該電子郵件實際上並非垃圾郵件

偽陽率 (FPR)

#fundamentals

模型錯誤預測正類的實際實際範例比例。以下公式計算偽陽率:

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

偽陽率是 ROC 曲線中的 X 軸。

功能

#fundamentals

機器學習模型的輸入變數。內含一或多個特徵的「範例」。舉例來說,假設您正在訓練模型,以判斷天氣狀況對學生測驗分數的影響。下表列出三個範例,每個範例都包含三個功能和一個標籤:

功能與特色 標籤
溫度 溼度 氣壓 測試分數
15 47 998 92
19 34 1020 84
18 92 1012 87

對比標籤

功能交叉

#fundamentals

由「交叉比對」、分類分類功能所建立的「合成特徵」

舉例來說,假設有一個「預測預測結果」模型,代表其中一個四個值區的其中一個溫度:

  • freezing
  • chilly
  • temperate
  • warm

並且代表下列三個值區中的風速:

  • still
  • light
  • windy

如果沒有功能交叉,線性模型會在前七個不同的值區上個別進行訓練。因此,模型會透過例如freezing以外的方式進行訓練,例如windy

或者,您也可以建立特徵溫度和風速的變化特徵。這項合成功能將有下列 12 個可能的值:

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

有了功能交替,模型可以學習 freezing-windy 天和 freezing-still 天之間的情境差異。

如果您從兩項特徵建立合成特徵,且每個功能各有不同的不同的值區,最終產生的跨元素將會具有大量的可能組合。例如,如果一個特徵有 1,000 個值區,另一個功能有 2,000 個值區,則產生的特徵交叉會有 2,000,000 個值區。

交叉形式是 Cartesian 產品

特徵十字功能大多與線性模型搭配使用,且通常與類神經網路搭配使用。

特徵工程

#fundamentals
#TensorFlow

包含下列步驟的程序:

  1. 確定哪些功能對於訓練模型可能有所幫助。
  2. 將資料集中的原始資料轉換為這些功能的高效版本。

例如,您可能認為 temperature 是有用的功能。然後,您可以嘗試特徵分塊,最佳化模型從不同 temperature 範圍學到的內容。

特徵工程有時也稱為「功能擷取」

功能集

#fundamentals

機器學習模型特徵群組。例如,郵遞區號、屬性大小和屬性條件可能包括用於預測房價模型的簡單特徵集。

特徵向量

#fundamentals

包含範例feature 值陣列。系統會在訓練推論期間輸入特徵向量。例如,具有兩個獨立特徵的模型模型可能如下:

[0.92, 0.56]

四個層:輸入層、兩個隱藏層和一個輸出層。輸入層包含兩個節點,一個含有值 0.92,另一個包含值 0.56。

每個範例都會為功能向量提供不同的值,因此下一個範例的功能向量看起來可能會像這樣:

[0.73, 0.49]

特徵工程決定了在特徵向量中代表特徵的方式。舉例來說,包含五個可能值的二進位類別特徵可以使用 hot-hot 編碼表示。在這種情況下,特定範例的功能向量部分將由四個零,以及第三個位置的單一 1.0 組成,如下所示:

[0.0, 0.0, 1.0, 0.0, 0.0]

再舉一個例子,假設您的模型包含三個特徵:

  • 具有二元組值的二進位類別功能,其中有 5 個可能的值是以一次性 ID 表示;例如:[0.0, 1.0, 0.0, 0.0, 0.0]
  • 其他二進位類別特徵,其中有三個可能的值是以 one-hot 編碼表示;例如:[0.0, 0.0, 1.0]
  • 浮點功能,例如 8.3

在這種情況下,每個範例的功能向量都會以的值表示。根據上述清單的範例值,特徵向量如下:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

意見回饋循環

#fundamentals

在機器學習中,模型的預測會影響相同模型或其他模型的訓練資料。例如,推薦電影的模型會影響使用者看到的電影,進而影響後續的電影推薦模型。

G

一般化

#fundamentals

「模型」能針對先前未顯示的新資料進行正確預測。一般化模型與過度配適的模型不同。

一般曲線

#fundamentals

「訓練損失」和「驗證損失的圖表顯示疊代次數的函式。

一般化曲線可協助您偵測可能的過度配適。舉例來說,以下一般化曲線建議採用過度貼合措施,因為驗證損失最終會大幅高於訓練損失。

一個 Cartesian 圖表,其中 Y 軸已加上「#39;loss&#39」標籤;X 軸則標示為「#39;iterations&#39;」。系統隨即會顯示兩個圖表。一個圖表顯示訓練損失,另一個則顯示驗證損失。兩張圖表的內容都差不多,但訓練損失最終低至驗證損失。

梯度下降

#fundamentals

盡可能減少損失的數學技巧。梯度遞減疊代調整權重偏誤,逐漸找出最佳組合,以盡量減少損失。

梯度下降幅度比機器學習還舊。

真值

#fundamentals

實境秀。

實際發生的情況。

舉例來說,您可以使用二元分類模型來預測大專院校第一年學生是否會在六年內畢業。這個模型的真值在於學生是否在六年內完成畢業。

H

隱藏圖層

#fundamentals

輸入層 (特徵) 和輸出層 (預測) 之間的類神經網路中的層。每個隱藏層由一或多個神經元組成。例如,以下類神經網路包含兩個隱藏層,第一個包含三個神經元,第二個具有兩個類神經:

四層。第一個圖層是包含兩項特徵的輸入層。第二層是隱藏層,其中包含三個神經元。第三層是含有兩個神經元的隱藏層。第四層是輸出層。每個特徵都含有三個邊緣,每個邊緣都指向第二層的不同神經元。第二個圖層中的每個神經元都包含兩個邊緣,每個邊緣都指向第三層的不同神經元。第三個層中的每個神經元都包含一個邊緣,每個邊緣都指向輸出層。

深層類神經網路包含多個隱藏層。舉例來說,上圖為深層類神經網路,因為模型包含兩個隱藏層。

超參數

#fundamentals

您或超參數調整服務會在連續訓練模型期間調整。舉例來說,「學習率」是超參數。您可以在一個訓練工作階段之前,將學習率設為 0.01。如果您認為 0.01 過高,您可以將下一個訓練工作階段的學習率設為 0.003。

相反地,參數是模型在訓練期間學習的各種權重偏誤

I

單獨發布並完整發布 (i.

#fundamentals

分佈於未變更的分佈中的資料,以及每個繪製的值都不會影響之前繪製的值。i.i.d. 是機器學習的理想氣體。這是一種實用的數學建構,但實際上在真實世界中幾乎不存在。例如,對網頁訪客的分佈情形可能在短時間內改變,例如,在短時間內,分佈內容不會發生任何變動,也就是說,分佈狀況在短暫的時間內不會發生變化,而某位人的造訪通常與另一名訪客無關。不過,如果您延長了該時間範圍,可能會發現網頁訪客的季節性差異。

另請參閱停靠站

推論

#fundamentals

在機器學習中,將經過訓練的模型套用到未加上標籤的範例,藉此執行預測程序。

推論在統計資料中的意義不盡相同。詳情請參閱維基百科上的統計推論文章

輸入層

#fundamentals

包含向量向量類神經網路。也就是說,輸入層會提供訓練推論範例。舉例來說,下列類神經網路中的輸入層包含兩項特徵:

四個層:輸入層、兩個隱藏層和輸出層。

可解釋性

#fundamentals

可向人類說明或說明機器學習模型的理解原因。

舉例來說,大部分線性迴歸模型都具有高度互通性。(您只需要查看各項特徵的訓練權重)。Decision Forest 也具有充分的可解釋性。不過,部分模型需要複雜的視覺化圖表才能具有可解釋性。

疊代

#fundamentals

訓練期間,更新模型's參數 (模型和權重偏誤) 的單一更新。「批次大小」會決定模型在單一疊代中處理的樣本數。舉例來說,如果批次大小為 20,則模型會在調整參數之前處理 20 個範例。

訓練類神經網路時,單一疊代作業會涉及以下兩種傳遞方式:

  1. 用於評估單一批次損失的轉寄票證。
  2. 反向傳遞 (反向傳播),可根據損失和學習率調整模型參數。

L

L0 正規化

#fundamentals

這種「正規化」類型會影響模型中非零權重總數。例如,有 11 個非零權重的模型,會比建立類似 10 個非零權重的模型這會懲處。

很少使用 L0 正規化功能。

損失 1

#fundamentals

損失函式:用於計算實際標籤值與模型預測值之間的差異的絕對值。

範例的實際值 模型的預測值 差異值的絕對值
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 損失

L1 損失對 離群值而言較敏感,而非 L2 損失

平均絕對錯誤是每個範例的平均 L1 損失。

L1 正規化

#fundamentals

一種正規化方式,會根據權重的絕對值總和權重進行懲處。L1 正規化有助於將不相關的或幾乎不相關的特徵的權重降至剛好 0。您可以從模型中有效移除權重為 0 的功能

相較於 L2 正規化

損失 2

#fundamentals

損失函式:用於計算實際標籤值與模型預測值之間的差異的平方。

範例的實際值 模型的預測值 差異值正方形
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = L2 減重

因為缺乏壓縮,L2 損失會放大離群值的影響。也就是說,與 L1 的損失相比,L2 損失的反應更明顯。例如,上述批次的 L1 損失應為 8,而非 16。請注意,單一離群值佔 16 之 9。

迴歸模型通常會使用 L2 損失做為損失函式。

「平均正方形錯誤」是每個範例的平均 L2 損失。Squad Loss 是損失 2 的另一個名稱。

L2 正規化

#fundamentals

這是一種正規化方式,會根據權重正方形的總和值進行權重。L2 正規化有助於提高離群值 (權重為高或低的權重) 接近 0 但未達 0 的權重。特徵值非常接近 0 時仍會保留在模型中,但不會對模型的預測結果產生極大影響。

L2 正規化一律改善線性模型的一般化作業。

相較於 L1 正規化

標籤

#fundamentals

「監督式機器學習」中,範例的「答案」或「結果」部分。

每個已加上標籤的範例都是由一或多個功能和標籤組成。舉例來說,在垃圾內容偵測資料集中,標籤可能是「垃圾內容」或「非垃圾內容」。在降雨量資料集中,標籤可能是在特定時間範圍內降雨的量。

已加上標籤的範例

#fundamentals

包含一或多個功能標籤的範例。例如,下表顯示了房屋估價模型的三個已加上標籤的範例,每個範例都具有三個特徵和一個標籤:

臥室數量 浴室數量 房屋年齡 房價 (標籤)
3 2 15 $345,000 美元
2 1 72 $179,000 美元
4 2 34 $392,000 美元

「受監督的機器學習」中,模型會針對已加上標籤的範例進行訓練,並對未加上標籤的範例進行預測。

已加上標籤的範例對比無標籤範例。

lambda

#fundamentals

正規化率的同義詞。

Lambda 是超載期限,此處我們著重在正規化內的字詞定義

圖層

#fundamentals

類神經網路中的一組神經元。三種常見的圖層如下:

例如,下圖顯示了具有一個輸入層、兩個隱藏層和一個輸出層的類神經網路:

具有一個輸入層、兩個隱藏層和一個輸出層的類神經網路。輸入層由兩個特徵組成。第一個隱藏層包含三個神經元,第二個隱藏層包含兩個神經元。輸出層由單一節點組成。

TensorFlow 中,也是 Python 函式,會將 Tensors 和設定選項設為輸入內容,並產生其他張量做為輸出內容。

學習率

#fundamentals

用來表示梯度下降演算法的浮點數,代表每次疊代的權重和偏誤程度。舉例來說,0.3 的學習率會調整權重,而偏誤是 0.1 的學習率的 3 倍。

學習率是關鍵超參數。如果學習率太低,訓練作業所需時間就會過長。如果學習率過高,梯度下降通常會難以達到融合

線性模式

#fundamentals

這個「模型」會為每個功能指派一個權重,以產生預測。(線性模式也包含偏誤)。相反地,在「深度模型」中,特徵與預測之間的關係通常為非線性

與一般模型相比,線性模型通常較容易訓練,且可解釋。不過,深度學習模型可以學習「功能」之間的複雜關係。

線性迴歸邏輯迴歸是兩種線性模型。

線性

#fundamentals

兩個或更多變數之間的關係,只能透過新增和乘法來表示。

線形關係的線條和線條。

非線性形成對比。

線性迴歸

#fundamentals

這種機器學習模型符合下列兩項條件:

  • 模式為線性模式
  • 預測結果是浮點值。(這是線性迴歸迴歸部分)。

使用邏輯迴歸來比較線性迴歸。此外,請使用分類對比迴歸。

邏輯迴歸

#fundamentals

用於預測機率的迴歸模型。邏輯迴歸模型具有下列特性:

  • 這個標籤是類別。「邏輯邏輯迴歸」通常是指「二元邏輯迴歸」,也就是為具有兩個可能值的標籤計算可能性的模型。較不常見的變數是多邏輯邏輯迴歸,會計算含有超過兩個可能值的標籤可能性。
  • 訓練期間的損失函式為 Log Loss。(如果標籤有兩個以上的可能值,則可平行放置多個記錄檔遺失單元)。
  • 模型具有線性架構,而不是深層類神經網路。不過,本定義的其餘部分也適用於預測類別標籤機率的深度學習模型

舉例來說,計算邏輯迴歸模型可以計算輸入電子郵件的垃圾郵件是否為垃圾郵件。在推論期間,假設模型預測的值為 0.72。因此,這個模型正在估算:

  • 72% 的機率是垃圾郵件。
  • 28% 的電子郵件可能不是垃圾郵件。

邏輯迴歸模型使用以下兩個步驟架構:

  1. 模型會套用輸入特徵的線性函式,產生原始預測 (y')。
  2. 這個模型會使用該原始預測做為 sigmoid 函式的輸入值,用於將原始預測資料轉換為 0 至 1 之間的值 (不含 0 和 1)。

就像任何迴歸模型,邏輯邏輯迴歸模型會預測數字。但這個數值通常會成為二進位分類模型的一部分,如下所示:

  • 如果預測數據大於分類門檻,則二元分類模型會預測正類。
  • 如果預測數字低於分類門檻,則二元分類模型會預測負類別。

對數損失

#fundamentals

用於二進位邏輯迴歸遺失函式

記錄機率

#fundamentals

事件發生機率的對數。

損失

#fundamentals

受監督的模型訓練中,測量模型和#39 模型的標籤標籤之間的距離。

損失函式可計算損失。

損失曲線

#fundamentals

損失做為訓練數量的圖 疊代下圖顯示一般損失曲線:

笛卡兒的損失與訓練疊代圖表,顯示初始疊代的快速下降,接著逐漸降低,然後在最終疊代時呈現平坡。

遺失曲線可協助您判斷模型轉換過度配適的時間。

損失曲線可繪製以下所有類型的損失:

另請參閱一般曲線

損失函式

#fundamentals

「訓練」或測試期間,用於計算範例「批次」損失的數學函式。相較於建立無效預測的模型,損失函式會傳回的預測結果較少。

訓練目標通常是盡可能將損失函式回傳的損失。

造成的損失函式有許多種。針對您建構的模型類型選擇適當的損失函式。例如:

M

機器學習

#fundamentals

用來從輸入資料訓練模型的程式或系統。訓練過的模型可從與訓練模型的分佈位置相同的新 (前不見) 資料中,產生實用的預測結果。

機器學習還涉及與這些計畫或系統相關的研究領域。

大部分課程

#fundamentals

類別平衡資料集中較常見的標籤。例如,假設資料集包含 99% 的排除標籤和 1% 的正面標籤,則排除標籤是多數類別。

次要類別形成對比。

迷你批次

#fundamentals

在單一疊代作業中處理的一系列隨機批次子集。批次。迷你批次的批次大小通常為 10 至 1,000 個範例。

例如,假設整個訓練集 (完整批次) 包含 1,000 個範例。此外,假設您將每個迷你批次的批次大小設為 20。因此,每項疊代作業都會判斷 1,000 個範例中隨機 20 次的損失,然後據此調整權重偏誤

計算小批次批次損失的損失,遠大於完整批次中所有範例的損失。

未成年人課程

#fundamentals

類別平衡資料集中較不常見的標籤。舉例來說,假設某個資料集包含 99% 的排除標籤和 1% 的正面標籤,則正性標籤為少數類別。

對比主要類別

模式

#fundamentals

一般而言,任何處理輸入資料並傳回輸出的數學結構,換句話說,模型是系統進行預測所需的參數和結構組合。在監督式機器學習中,模型會將一個範例做為輸入內容,並推斷將一個預測做為輸出內容。在監督式機器學習中,模型會稍有不同。例如:

您可以儲存、還原或建立模型副本。

未監督的機器學習還會產生模型,通常是一種函式,可將輸入範例對應至最適當的叢集

多類別分類

#fundamentals

在監督式學習中,「類別」問題,其中資料集包含超過兩個類別標籤。例如,Iris 資料集中的標籤必須是以下三個類別的其中一個:

  • 鳶尾花
  • 鳶尾花
  • 鳶尾紋

在 Iris 資料集上訓練的模型會預測新範例的 Iris 類型,正在執行多類別分類。

相對地,區分兩個類別之間的分類問題為「二進位分類模型」。舉例來說,預測為「垃圾郵件」或「非垃圾郵件」的電子郵件模型就是二元分類模型。

在叢集問題中,多類別分類是指兩個以上的叢集。

排除類別

#fundamentals

二進位分類中,其中一個類別稱為正面類別,另一個類別則稱為負值。正類是模型測試的物件或事件,而排除類別則是另一個可能性。例如:

  • 醫療檢測中的陰性類別可能為「非陰性」。
  • 電子郵件分類器中的排除類別可能是「非垃圾郵件」。

正面類別形成對比。

類神經網路

#fundamentals

包含至少一個隱藏層模型深層類神經網路是一種類神經網路,內含多個隱藏層。例如,下圖顯示包含兩個隱藏層的深層類神經網路。

具有輸入層、兩個隱藏層和輸出層的類神經網路。

類神經網路中的每個神經元都會連線至下一層中的所有節點。例如,在上圖中,請注意第一個隱藏層中的三個神經元中的兩個神經元分別連結至了第二個隱藏層中的兩個神經元。

在電腦上實作的類神經網路有時也稱為「人工類神經網路」,以便區分腦部和其他神經系統中的類神經網路。

部分類神經網路可以模仿不同功能和標籤之間的複雜非線性關係。

另請參閱卷積類神經網路循環類神經網路

神經元

#fundamentals

在機器學習中,隱藏層 類神經網路內的不同單位。每個神經元都會執行下列兩個步驟:

  1. 計算輸入值的加權總和乘以對應的權重。
  2. 將加權後的總值做為輸入傳遞至啟用函式

第一個隱藏層中的神經元會接受「輸入層」中特徵值的輸入。第一個隱藏層以外的任何神經元接受了先前隱藏層中的神經元的輸入內容。例如,第二個隱藏層中的神經元接受在第一個隱藏層中的神經元輸入內容。

下圖醒目顯示兩個神經元及其輸入內容。

具有輸入層、兩個隱藏層和輸出層的類神經網路。系統會醒目顯示兩個神經元:一個在第一個隱藏層,另一個在第二個隱藏層。第一個隱藏層中的醒目顯示神經元會接收輸入層中兩個特徵的輸入內容。第二個隱藏層中的醒目顯示神經元會接收第一個隱藏層中的三個神經元中的每個輸入內容。

類神經網路中的神經元會模仿大腦和神經系統其他部分的神經元行為。

節點 (類神經網路)

#fundamentals

隱藏圖層neuron

非線性

#fundamentals

兩個或更多變數之間的關係,無法透過新增和乘法來表示。「線性」關係可呈現為線條;「非線性」關係則可以線條表示。舉例來說,假設兩個模型分別與單一標籤相關。左側的模型為線性,右側模型為非線性:

兩個情節。一個情節代表線條,因此屬於線性關係。
          另一個曲線是曲線,因此屬於非線性關係。

非固定式

#fundamentals

特徵在一或多個維度上的值通常會變更。以下列例子來看,上述模式不是停滯狀態:

  • 在特定商店中販售的泳裝數量因季節而異。
  • 在一年中,在特定地區收採的特定水果數量為零,但短時間內較大。
  • 由於氣候變遷,年平均氣溫正在改變。

固定性相比。

正規化

#fundamentals

一般來說,將變數實際值範圍轉換為標準值的範圍,例如:

  • -1 至 +1
  • 0 至 1
  • 常態分佈

例如,假設某項特徵的實際值範圍是 800 到 2,400。在功能工程中,您可以將實際值正規化為標準範圍,例如 -1 至 +1。

正規化是功能工程的常見工作。當特徵向量中的每個數值特徵都大致相同範圍時,模型的訓練速度通常更快 (並產生更好的預測值)。

數值資料

#fundamentals

以整數或實數數字表示的特徵。舉例來說,房屋估價模型可能會將房屋的大小 (以平方英尺或平方公尺) 表示為數值資料。將特徵表示為數字資料後,表示特徵的值與標籤具有數學關係。也就是說,房子的平方公尺數可以和房子的數學關係。

並非所有整數資料均應以數值資料表示。舉例來說,世界某些地方的郵遞區號是整數,但整數郵遞區號在模型中不應表示為數值資料。因為 20000 的郵遞區號不是郵遞區號的 10,000,並不是前者的兩倍 (或一半),此外,雖然不同郵遞區號「不」與不同的房地產價值相關,但我們還是無法假設郵遞區號 20000 的房地產價值是郵遞區號 10000 的兩倍。郵遞區號應改為類別資料

數值功能有時稱為「連續功能」

O

離線

#fundamentals

static 的同義詞。

離線推論

#fundamentals

模型產生一批預測,然後快取 (儲存) 這些預測。這樣一來,應用程式就能從快取存取所需的預測,而不必重新執行模型。

舉例來說,假設某個模型每四小時會產生一次天氣預報 (預測)。每次執行模型後,系統會快取所有本機天氣預報。天氣應用程式會從快取擷取預測資料。

離線推薦功能也稱為「靜態推論」

對比線上推論

one-hot 編碼

#fundamentals

將類別資料表示為向量,其中:

  • 1 個元素設定為 1。
  • 所有其他元素都會設為 0。

One-hot 編碼通常用於表示具有有限可能值的字串或 ID。例如,假設名為 Scandinavia 的特定類別特徵有五個可能的值:

  • "丹麥
  • "瑞典
  • &quotor 挪威
  • &"芬蘭"&&tt;
  • "冰島"

one-hot 編碼可代表這五個值中的每一個,如下所示:

country 向量
"丹麥 1 0 0 0 0
"瑞典 0 1 0 0 0
&quotor 挪威 0 0 1 0 0
&"芬蘭"&&tt; 0 0 0 1 0
"冰島" 0 0 0 0 1

有了 One-hot 編碼,模型就能根據五個國家/地區個別學習不同的連線。

將特徵表示為數字資料是替代方案之一。但很遺憾地,在斯堪地那維亞當做國家代表,也不是合適的選擇。以下列數值表示:

  • "丹麥> (0)
  • "Sweden](瑞典) 為 1
  • 「挪威」等於 2
  • & "芬蘭"" 是 3
  • "冰島文

使用數字編碼時,模型將解讀數學值,並嘗試訓練這些數字。不過,冰島的東西數量其實不比挪威的兩倍 (或一半以上),所以這個模型會得出奇怪的結論。

單人對戰

#fundamentals

假設 N 類別有分類問題,則解決方案包含 N 個獨立的二元分類器,也就是每個可能結果的二進位分類器。舉例來說,假設某個模型將範例分類為動物、蔬菜或礦物質,則單人類解決方案會提供下列三個獨立的二元分類器:

  • 動物與動物
  • 蔬菜與蔬菜比較
  • 礦物與礦物質

線上

#fundamentals

用於動態的同義詞。

線上推論

#fundamentals

視需求產生預測。例如,假設應用程式會將輸入傳送至模型,並發出預測要求。使用線上推論的系統會透過執行模型 (並將預測結果傳回應用程式) 回應要求。

離線推論形成對比。

輸出層

#fundamentals

「類神經網路」的「最終」層,輸出層包含預測值。

下圖顯示小型輸入類神經網路,其中包含輸入層、兩個隱藏層和輸出層:

具有一個輸入層、兩個隱藏層和一個輸出層的類神經網路。輸入層由兩個特徵組成。第一個隱藏層包含三個神經元,第二個隱藏層包含兩個神經元。輸出層由單一節點組成。

過度配適

#fundamentals

建立與訓練資料相符的模型,讓模型無法對新資料做出正確預測。

正則化有助於減少過度配適。訓練規模龐大且多元的訓練集也能減少過度配適。

P

pandas

#fundamentals

以資料欄為基礎的資料分析 API,以 numpy 為基礎。許多機器學習架構 (包括 TensorFlow) 都支援 pandas 資料結構做為輸入內容。詳情請參閱 pandas 說明文件

參數

#fundamentals

模型在訓練期間學習的權重偏誤。舉例來說,在線性迴歸模型中,參數是由以下公式的偏誤 (b) 和所有權重 (w1w2 等) 組成:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

相反地,超參數是指 (或超參數啟動服務) 為模型提供的值。舉例來說,學習率是超參數。

正類

#fundamentals

您要測試的類別。

舉例來說,癌症模型中的正類可能是「受傷」。 電子郵件分類器中的正類可能是「垃圾郵件」。

排除類別形成對比。

後續處理

#fairness
#fundamentals

在模型執行「之後」調整模型的輸出內容。後續處理作業可用於強制執行公平性限制,而無需修改模型本身。

例如,您可以設定分類門檻,藉此將後續處理後的結果套用至二進位分類器,確保該屬性的所有值都符合真陽率商機平等性

預測

#fundamentals

模型的輸出內容。例如:

  • 二元分類模型的預測可以是正類或負類。
  • 多類別分類模型的預測為一個類別。
  • 線性迴歸模型的預測結果為數字。

Proxy 標籤

#fundamentals

用於概略呈現資料集中未提供標籤的資料。

舉例來說,假設您必須訓練模型來預測員工壓力等級。您的資料集包含大量預測功能,但不包含名為「壓力等級」的標籤。您很難做出,是選擇「工作事故」做為壓力等級的 Proxy 標籤。畢竟,高壓力的員工比平靜的員工更加容易發生意外。還是?也許因為工作場所的意外事故會因為各種原因而下滑

第二個例子是,假設您想將降雨嗎設為資料集的布林值標籤,但您的資料集不含雨水資料。如果有相片可供瀏覽,您可能會將正在帶雨傘的圖片當成 在某些情況下會下雨嗎?這樣是理想的 Proxy 標籤嗎?有可能,但在某些文化中,人更有可能攜帶陽傘來防雨。

Proxy 標籤常會有瑕疵,請盡可能選擇透過 Proxy 標籤實際的標籤。儘管如此,沒有實際的標籤時,請謹慎選擇 Proxy 標籤,然後選擇最小的可有害 Proxy 標籤。

R

評分者

#fundamentals

提供範例標籤人。「註解者」是評分者的另一個名稱。

修正後的線性單位 (ReLU)

#fundamentals

具有下列行為的啟用函式

  • 如果輸入內容為負值或零,則輸出內容為 0。
  • 如果輸入內容為正數,則輸出內容等於輸入值。

例如:

  • 如果輸入為 -3,則輸出內容為 0。
  • 如果輸入是 +3,則輸出結果為 3.0。

以下是 ReLU 情節:

兩行圖的笛卡兒情節。第一行的常數 y 值為 0,沿著 -infinity,0 到 0,-0 的 x 軸執行。
第二行從 0,0 開始。這一行的坡度為 +1,因此介於 0,0 至 +finity + infinity 之間。

ReLU 是非常受歡迎的啟用函式,儘管有簡單的行為,ReLU 仍讓類神經網路學習設施標籤之間的非線性關係。

迴歸模型

#fundamentals

非數值的模型會產生模型預測。相反地,分類模型會產生類別預測。舉例來說,以下是所有迴歸模型:

  • 預測特定房屋價值的模型,例如 423,000 歐元。
  • 這個模型可預測特定樹的壽命,例如 23.2 年。
  • 這個模型可預測未來六小時內特定城市可能會下雨的降雨量 (例如 0.18 英寸)。

迴歸模型的兩種常見類型如下:

  • 線性迴歸:找到最適合用於特徵標籤的行。
  • 邏輯迴歸:這會產生介於 0.0 和 1.0 之間的機率。系統通常會對應至類別預測。

並非所有輸出數字預測的模型都是迴歸模型。在某些情況下,數值預測實際上只是屬於數字類別名稱的分類模型。舉例來說,預測數值郵遞區號的模型是分類模型,而非迴歸模型。

正規化

#fundamentals

任何可減少過度配適的機制。常見的正規化類型包括:

正規化也可以定義模型的複雜程度。

正規化率

#fundamentals

數字,用來指定訓練期間正規化的相對重要性。提高正規化率會降低過度配適,但可能會降低模型的預測能力。反之,減少或省略正規化率會增加過度配適。

邏輯驗證

#fundamentals

矩形線性單位的縮寫。

ROC (接收器運作特性) 曲線

#fundamentals

二元分類中不同分類門檻真陽率偽陽率的圖表。

ROC 曲線的形狀表示二進位檔分類模型' 能夠將正面類別與負面類別分隔開來。例如,一個二元分類模型會將所有排除類別與所有正類完全分開:

數字線,右側有 8 個正範例,左側是 7 個負面範例。

先前模型的 ROC 曲線如下:

ROC 曲線。X 軸代表偽陽率,y 軸則是 True 正面率。曲線的反轉 L 型會反轉。曲線從 (0.0,0.0) 開始,一直到 (0.0,1.0) 。再從曲線 (0.0,1.0) 到 (1.0,1.0)。

相較之下,下圖顯示了可產生模型的原始邏輯迴歸值,這些模型完全無法判斷可能與負面類別分開的排除類別:

以正數例子和負類別完全表示的數值行。

這個模型的 ROC 曲線如下:

ROC 曲線,實際上是從 (0.0,0.0) 到 (1.0,1.0) 的直線。

另一方面,在現實世界中,大部分二元分類模型會將一定的正負類區隔開來,但通常並非完美。因此,典型的 ROC 曲線位於兩個極端之間:

ROC 曲線。X 軸代表偽陽率,y 軸則是 True 正面率。ROC 曲線會近似不透明的弧形弧形,橫跨西北到指南針點。

最接近 (0.0,1.0) 的 ROC 曲線上的點理論上是理想的分類分類門檻。不過,有些其他實際問題會影響選擇理想的分類門檻。例如,偽陰性可能造成的偽陽性高於偽陽性。

名為 AUC 的數值指標會將 ROC 曲線匯總為單一浮點值。

根平均平方錯誤 (RMSE)

#fundamentals

平均平方錯誤的平方根。

S

Sigmoid 函式

#fundamentals

「拼」」的數學函式;輸入值限制在限制範圍內,通常介於 0 到 1 或 -1 到 +1 之間。也就是說,您可以將任意數字 (2、1 百萬、負十億) 傳遞至 sigmoid,且輸出內容仍會在受限範圍內。Sigmoid 啟用函式的圖表如下:

兩個維度的曲線圖,其中 x 值涵蓋網域 -infinity 到 +正數,y 值的範圍則近 0 至近 1。x 為 0 時,y 為 0.5。曲線的坡度一律為正數,最高的斜率為 0.0.5,而 x 的絕對值會隨 x 絕對值而逐漸下降。

sigmoid 函式有幾種用於機器學習的用途,包括:

Softmax

#fundamentals

這個函式用於判斷 多類別分類模型 中每個可能的類別的機率。機率相加為 1.0。例如,下表顯示 softmax 如何分配各種可能性:

圖片是... 機率
0.85
cat 0.13
0.02

Softmax 也稱為 full softmax

對比候選取樣

稀疏特徵

#language
#fundamentals

這個功能的值主要是零或空白。舉例來說,包含單一 1 值和數百萬 0 值的特徵是稀疏的功能。相較之下,密集功能的值通常為零或空白。

在機器學習中,令人驚嘆的功能數量是一項稀疏特徵。類別特徵通常是稀疏的功能。舉例來說,樹中 300 種可能的樹種中,單一範例可能只能識別楓樹。或者,在影片庫中的數百萬部影片中,單一例子可能正好視為「Casablanca」。

在模型中,您通常會使用單一熱編碼來代表稀疏特徵。如果 One-hot 編碼較大,您可以將嵌入層放在 One-hot 編碼上方,藉此提高效率。

稀疏表示法

#language
#fundamentals

僅儲存在非稀疏元素的位置

舉例來說,假設名為 species 的類別特徵識別了特定森林中的 36 種樹木。並進一步假設每個範例都只能識別一個物種。

您可以使用單一熱向量來代表每個範例中的樹木物種。單一熱向量將包含單一 1 (代表本範例中的特定樹木) 和 35 0 (代表該示例中的 35 種樹木)。因此,maple 的一次性表示方式如下所示:

其中第 0 至 23 位置的向量保留值 0,位置 24 保留值 1,位置 25 至 35 保留值 0。

或者,稀疏表示法能夠直接識別特定物種的位置。如果 maple 在位置 24,則 maple 的稀疏表示就是:

24

請注意,稀疏表示法比單例表示法更精簡。

稀疏向量

#fundamentals

數值大部分為零的向量。另請參閱剖析功能一致性的相關說明。

平方損失

#fundamentals

L2 損失的同義詞。

靜態

#fundamentals

只做一次,而非連續執行。 「靜態」和「離線」一詞指的是同義詞。機器學習中靜態離線常見的用途如下:

  • 「靜態模型」 (或「離線模型」) 是經過訓練的模型,然後使用一段時間。
  • 「靜態訓練」(或「離線訓練」) 是訓練靜態模型的程序。
  • 「靜態推論」 (或「離線推論」) 是模型一次產生一批預測的程序。

對比動態

靜態推論

#fundamentals

離線推論的同義詞。

文具

#fundamentals

一個特徵值在一或多個維度上並沒有變更,通常為時間。例如,在 2020 年和 2022 年,其值差不多的功能。

在現實世界中,只有極少數的特色會顯示文具。甚至具有隨著穩定性變化 (例如海平面) 隨著時間改變的功能。

nonstationsity 不同。

隨機梯度下降 (SGD)

#fundamentals

梯度下降演算法,其中批次大小為一個。換句話說,SGD 會透過訓練集隨機隨機選擇單一範例來訓練。

監督式機器學習

#fundamentals

透過功能及其對應的標籤訓練模型。監督式機器學習與一組問題及其對應的答案相似,可讓您學習主題。精通問題與答案之間的對應後,學生就能針對相同主題提供新世代 (從未見過) 問題的答案。

無監督的機器學習進行比較。

綜合功能

#fundamentals

輸入特徵中不存在功能,但是由一或多項功能組合而成。建立合成功能的方法包括:

  • 將連續特徵分塊分區至範圍二進位資料。
  • 建立跨功能功能
  • 將一個特徵值乘以其他特徵值,或將其自身相乘。舉例來說,如果 ab 是輸入特徵,那麼以下是合成特徵的範例:
    • ab
    • 2
  • 將超越函式套用至特徵值。舉例來說,如果 c 是輸入特徵,那麼以下是合成特徵的範例:
    • Sin(c)
    • ln(c)

僅由正規化縮放功能建立的功能不算是合成功能。

T

測試損失

#fundamentals

代表模型的指標測試集。建構模型時,通常通常會嘗試盡量減少測試損失。這是因為低測試測試的準確率信號低於訓練損失驗證損失偏低。

測試損失和訓練損失或驗證損失之間的差距,有時會建議提高正規化率

訓練

#fundamentals

決定包含模型的理想參數 (權重和偏誤) 的程序。在訓練期間,系統會讀取範例,並逐漸調整參數。訓練會使用每個範例數次,甚至是數十億次。

訓練損失

#fundamentals

代表特定訓練疊代作業中的模型損失。舉例來說,假設損失函式為 Mean Squared Error。第 10 次疊代的訓練損失 (平均正方形錯誤) 可能是 2.2,而第 100 次疊代的訓練損失為 1.9。

損失曲線:用於繪製訓練與疊代次數的比較。損失曲線提供下列訓練提示:

  • 向下斜坡表示模型正在改善。
  • 向上傾斜角度代表模型越來越糟。
  • 斜坡表示模型已到達融合

例如,下面是一些理想的損失曲線

  • 初始疊代期間呈現陡峭的坡度,表示模型快速改善。
  • 漸進式扁平 (但仍然向下) 的坡度,直到接近訓練結束時,這表示在初始疊代期間,模型的持續成長速度會略慢。
  • 訓練結束的平坦坡度,表示融合。

訓練損失和疊代圖。此損耗曲線以陡坡向下延伸。斜坡會逐漸平直,直到坡度變成零。

雖然訓練損失很重要,但也需參閱一般化

訓練/應用偏差

#fundamentals

模型在訓練期間與服務執行期間的成效差異差異。

訓練集

#fundamentals

用來訓練模型資料集子集。

一般來說,資料集中的範例可分為以下三個不同的子集:

在理想情況下,資料集中的每個範例都只能屬於其中一個前面子集。舉例來說,單一範例不應同時屬於訓練集和驗證集。

真陰性 (TN)

#fundamentals

模型「正確」預測排除類別的範例。例如,模型推斷特定電子郵件是「非垃圾郵件」,而該電子郵件其實是非垃圾郵件

真陽性 (TP)

#fundamentals

模型「正確」預測正面類別的範例。例如,模型會推論特定電子郵件是垃圾郵件,且該電子郵件確實是垃圾郵件。

真陽率 (TPR)

#fundamentals

喚回度的同義詞。也就是:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

真陽率是 ROC 曲線中的 Y 軸。

U

弱身

#fundamentals

建立具有預測能力不佳的模型,因為模型並未完整擷取訓練資料的複雜度。許多問題都可能導致這種情況,包括:

未加上標籤的範例

#fundamentals

包含設施但不含標籤的範例。 例如,下表顯示了房屋評估模型的三個無標籤範例,每個範例都具有三個特徵,但不含房屋價值:

臥室數量 浴室數量 房屋年齡
3 2 15
2 1 72
4 2 34

「受監督的機器學習」中,模型會針對已加上標籤的範例進行訓練,並對未加上標籤的範例進行預測。

半受監督未受監督的學習期間,訓練期間會使用未加上標籤的範例。

無標籤範例與已加上標籤的範例

未受監督的機器學習技術

#clustering
#fundamentals

訓練模型以找出資料集中的模式 (通常是未加上標籤的資料集)。

未受監督的機器學習最常見的用途,就是將叢集資料整理成一組相似的範例。舉例來說,無監督的機器學習演算法可根據音樂的各種屬性將歌曲分群。產生的叢集可以成為其他機器學習演算法的輸入內容 (例如音樂推薦服務)。當實用的標籤稀少或不存在時,分群法能派上用場。舉例來說,在反濫用和詐欺等領域中,叢集可協助使用者進一步瞭解資料。

監督式機器學習形成對比。

V

validation

#fundamentals

初步評估模型品質。驗證功能會依據驗證集來檢查模型的預測品質。

由於驗證集與訓練集不同,驗證有助於防範過度配適

您可以考慮將模型與驗證集來評估做為第一輪的測試集,並針對測試集評估模型做為第二輪的測試。

驗證損失

#fundamentals

「指標」代表模型在特定的訓練疊代損失

另請參閱一般曲線

驗證集

#fundamentals

部分資料集用於訓練經過訓練的模型的初始評估結果。一般而言,我們會經過驗證集數次評估經過訓練的模型數次,然後根據測試集評估模型。

傳統上,您可以將資料集中的範例分為以下三個不同子集:

在理想情況下,資料集中的每個範例都只能屬於其中一個前面子集。舉例來說,單一範例不應同時屬於訓練集和驗證集。

W

weight

#fundamentals

模型乘以其他值的值。「訓練」是判斷模型理想權重的程序;推論是使用這些已學習的權重進行預測的程序。

加權總和

#fundamentals

所有相關輸入值的總和乘以對應的權重。舉例來說,假設相關的輸入內容包括:

輸入值 輸入權重
2 -0.8
-1 0.6
3 0.4

加權總和:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

加權總和就是啟用函式的輸入引數。

Z

Z 分數正規化

#fundamentals

縮放技巧:將原始 feature 值替換為浮點值,以該特徵代表的標準偏差數目表示。#39; 例如,假設意義為 800 且標準偏差為 100 的功能。下表顯示 Z 分數正規化如何將原始值對應至 Z 分數:

原始值 Z 分數
800 0
950 +0.8
575 -2.25

然後,機器學習模型會使用該特徵的 Z 分數進行訓練,而非原始值。