機器學習詞彙表

這個詞彙解釋定義一般機器學習詞彙,以及 TensorFlow 專有的字詞。

A

綁架

評估功能或元件重要性的技術,可從模型暫時移除該功能或元件。接著,您可以在沒有該特徵或元件的情況下重新訓練模型,如果重新訓練模型的效能明顯較差,就表示移除的特徵或元件可能很重要。

舉例來說,假設您對 10 個特徵訓練了分類模型,並在測試集中達到 88% 的精確度。如要查看第一個特徵的重要性,您只能使用另外九個特徵重新訓練模型。如果重新訓練的模型執行成效明顯較差 (例如精確度為 55%),那麼已移除的特徵就非常重要。反之,如果重新訓練的模型執行得都一樣好,那特徵可能就不是那麼重要。

抽象化有助於判斷:

  • 大型元件,例如更大型機器學習系統的整個子系統
  • 處理程序或技術,例如資料預先處理步驟

不論是哪一種情況,您都會觀察到移除元件後,系統的效能變化 (或本身沒有變化)。

A/B 測試

比較兩個 (或多個) 技術的統計方法:比較「A」與「B」。一般來說,「A」是現有的技巧,「B」則是新技術。A/B 測試不只會判斷哪種技術的成效較佳,還有差異是否具有統計顯著性。

A/B 測試通常會針對兩種技術比較單一指標。舉例來說,針對兩項技術,模型的準確率有何差異?不過,A/B 測試也可以比較任何有限數量的指標。

加速器晶片

#GoogleCloud

特殊硬體元件類別,用於執行深度學習演算法所需的關鍵運算。

相較於一般用途的 CPU,加速器晶片 (簡稱「加速器」) 可大幅提高訓練和推論工作的速度與效率。非常適合用於訓練類神經網路和類似的運算密集型工作。

加速器晶片範例包括:

  • 搭載深度學習專用硬體的 Google Tensor Processing Unit (TPU)。
  • NVIDIA 的 GPU 最初專為圖形處理設計,但專為平行處理而設計,可大幅提高處理速度。

精確度

#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 則是真陰性 (正確的預測結果) 的數量。
  • FP 是偽陽性數量 (預測結果不正確) 的數量。
  • FN 則是偽陰性 (預測結果不正確) 的數量。

比較準確率與精確度喚回度

動作

#rl

在「強化學習中,代理程式環境「狀態」之間轉換的機制。代理程式會使用政策選擇動作。

活化函數

#fundamentals

這個函式可讓類神經網路學習非線性特徵及特徵之間的複雜標籤關係。

常見的活化函式包括:

活化函式的圖形並非只有一條直線。舉例來說,ReLU 活化函式的圖包含兩條直線:

有兩條線的笛卡兒圖。第一行的常數 y 值為 0,沿著 X 軸由 -infinity 和 0、-0 排列。第二行從 0,0 開始。這條線的斜率為 +1,因此範圍介於 0,0 到 +infinity 和+infinity 之間。

S 函數活化函數圖如下所示:

有 x 值的二維曲線圖,y 值橫跨網域 -infinity 和 + 負數,y 值則涵蓋將近 0 至近 1。當 x 為 0 時,y 為 0.5。曲線的斜率一律為正數,最高斜率為 0,0.5,並在 x 絕對值增加時逐漸減少斜率。

主動學習

「訓練」方法:演算法會「選擇」要從中學習的部分資料。如果已加上標籤的範例稀有或昂貴,那麼主動學習顯然格外重要。主動學習演算法會選擇性地尋找學習所需的特定樣本,而非盲目搜尋各種有標籤的範例。

AdaGrad

精密的梯度下降法演算法可重新調整每個參數的梯度,有效讓每個參數擁有獨立的學習率。如需完整說明,請參閱這份 AdaGrad 文件

服務專員

#rl

強化學習中,使用政策的實體將環境狀態之間轉換所能獲得的預期報酬

通常來說,代理程式是指能自動規劃並執行一系列動作以實現目標的軟體,同時能夠因應環境的變化進行調整。例如,LLM 為基礎的代理程式可能會使用 LLM 產生方案,而非套用增強學習政策。

聚合式分群法

#clustering

請參閱階層分群相關說明。

異常偵測

識別離群值的程序。舉例來說,如果特定功能的平均值為 100,標準差為 10,則異常偵測應將值 200 標記為可疑。

AR

獨立實境的縮寫。

PR 曲線下方顯示的區域

請參閱「PR AUC (PR Curve 下面積)」。

ROC 曲線下面積

請參閱 AUC (ROC 曲線下面積)

人工智慧

非人為機制,示範解決問題、建立創意和適應能力的廣泛範圍。舉例來說,展示人工智慧的程式可以翻譯文字、撰寫符號,「並且」優異於尚未發明的遊戲。

也就是

#fundamentals

非人類程式或model,可處理複雜工作。舉例來說,翻譯文字的程式或模型,或是能辨識放射性圖片中疾病的程式或模型,都具備人工智慧。

基本上,機器學習是人工智慧的子領域。不過近年來,部分機構已開始交替使用「人工智慧」和「機器學習」這兩個詞彙。

注意力

#language

「類神經網路」中使用的機制,表示特定字詞或部分字詞的重要性。注意力會壓縮模型在預測下一個符記/字詞所需的資訊量。一般注意力機制可能包含一組輸入的「加權總和」,其中每個輸入內容的「權重」會由類神經網路的其他部分計算。

另請參閱自註意力機制多頭自我注意力,兩者是 Transformer 的建構區塊。

屬性

#fairness

feature 的同義詞。

在機器學習的公平性中,屬性通常會指與個人相關的特性。

屬性取樣

#df

訓練決策樹的策略。在學習條件時,每個決策樹只會隨機考量一組可能的特徵一般來說,系統會針對每個節點取樣不同的特徵子集。相對地,若在沒有屬性取樣的情況下訓練決策樹,每個節點都會考慮所有可能的特徵。

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。

多數模型通常在兩個極端之間。舉例來說,下列模型會將正數與負數區分開來,因此有一個介於 0.5 和 1.0 之間的 AUC:

含有 6 個正樣本和 6 個負例的數行。示例中的順序為負、負面、負面、負面、正、負面、正向、負面、正面、正向、正數。

AUC 會忽略您為分類門檻設定的任何值。而是會考慮「所有」可能的分類門檻。

擴增實境

#image

將電腦產生的圖片疊加在使用者現實世界的視角,藉此提供複合檢視。

自動編碼器

#language
#image

學習從輸入中擷取最重要的資訊的系統。自動編碼器是由編碼器解碼器構成。自動編碼器仰賴下列兩個步驟:

  1. 編碼器會將輸入對應至 (通常) 有損低維 (中間) 格式。
  2. 解碼器會將較低維度格式對應至原始較高維度輸入格式,藉此建構原始輸入的有損版本。

自動編碼器接受端對端訓練,解碼器會盡可能嘗試從編碼器中繼格式重建原始輸入內容。由於中間格式比原始格式小 (較低維度),因此自動編碼器必須學習輸入的哪些資訊為重要,而且輸出結果不一定會與輸入內容完全相同。

例如:

  • 如果輸入資料是圖形,則非完全相同的副本會與原始圖片類似,但會稍有修改。非精確的文案可能會移除原始圖像中的雜訊,或填滿某些缺少的像素。
  • 如果輸入資料是文字,自動編碼器會產生新文字,以模仿 (但不會與) 原始文字完全相同。

另請參閱變化自動編碼器

自動化偏誤

#fairness

即使自動化決策系統出錯,決策者仍偏好自動化決策系統做出的推薦,而不是沒有自動化功能提供的資訊。

AutoML

用來建構機器學習 模型的任何自動化程序。AutoML 可自動執行以下工作:

  • 搜尋最合適的模型。
  • 調整超參數
  • 準備資料 (包括執行特徵工程)。
  • 部署產生的模型。

AutoML 十分適合數據資料學家,因為它能節省開發機器學習管道的時間和心力,並提高預測準確率。對非專家來說,也能方便他們更輕鬆地存取複雜的機器學習工作。

自動迴歸模型

#language
#image
#生成式 AI

根據先前的預測結果推測預測結果的model。例如,自動迴歸語言模型會根據先前預測的符記預測下一個「權杖」。所有以 Transformer 為基礎的大型語言模型都是自動迴歸。

相反地,GAN 的圖片模型通常不是自動迴歸,因為這些模型是以單一向向傳送 (而非步驟) 產生圖片。不過,某些圖片產生模型「是」自動迴歸,因為模型可逐步產生圖片。

輔助損失

這個損失函式會與類神經網路 模型的主要損失函式搭配使用,有助於在提前疊代期間,在權重隨機初始化時加快訓練的速度。

輔助損失函式可將有效的梯度推送到先前的。這樣做可解決去除梯度問題,從而在「訓練」期間促進「收斂」

平均精確度

用於匯總結果排序成效的指標。平均精確度的計算方式是取得每個相關結果的「精確度」值平均值 (每個結果在排名清單中,喚回度相對於先前結果的增幅)。

另請參閱「PR 曲線下面積」一文。

軸對齊條件

#df

決策樹狀圖中,這是僅包含單一功能條件。舉例來說,如果區域是地圖項目,則以下為軸對齊的條件:

area > 200

義務條件對比。

B

反向傳播

#fundamentals

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

訓練類神經網路涉及以下兩道循環的許多「疊代」

  1. 向前傳遞期間,系統會處理範例批次來產生預測結果。系統會將各項預測與每個 label 值進行比較。以該範例來說,預測與標籤值之間的差異在於損失。系統會匯總所有範例的損失,計算目前批次的總損失。
  2. 反向傳遞 (反向傳播) 期間,系統會調整所有隱藏層中所有神經元的權重,藉此減少損失。

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

「學習率」是一個調節係數,可控制每次向後傳遞的增加或減少每個權重的程度。高學習率會為每個權重增加或減少,而不是單一學習率。

在微積分方面,反向傳播會實作來自微積分的鏈結規則。也就是說,反向傳播會計算每個參數的錯誤部分導數

多年前,機器學習從業人員必須撰寫程式碼才能實作反向傳播。TensorFlow 等現代化機器學習 API 現已為您實作反向傳播。呼!

行李

#df

訓練 模型的方法,讓每個組成元素的模型隨機子集訓練範例使用替換項目取樣。舉例來說,「隨機樹系」是一組經過包裝訓練的決策樹

「baging」一詞是「bootstrap agg」的英文縮寫。

字包

#language

詞組或段落中字詞的表示法,無論順序為何。舉例來說,字詞包代表下列三個詞組完全相同:

  • 狗跳躍
  • 跳起來
  • 狗跳起來

每個字詞都會對應至「稀疏向量」中的索引,而向量會有詞彙中每個字詞的索引。例如,「the doghops」詞組對應到一個特徵向量,在三個索引對應的三個索引中,thedogjumps 字詞對應了非零的值。非零值可以是下列任一值:

  • 1 表示字詞是否存在。
  • 特定字詞在包袋中出現的次數。例如,如果這個詞組為「maroon dog is a dog with maroon furs」,則「maroon」和「dog」都會以 2 表示,其他字詞則以 1 表示。
  • 其他值,例如一個字詞在包袋中出現次數的對數。

基準

model做為參考點,用於比較其他模型 (通常是更複雜的模型) 的成效。舉例來說,邏輯迴歸模型可做為深度模型的基準。

以特定問題來說,基準線可協助模型開發人員量化新模型為讓新模型發揮效用所需的最低預期效能。

Batch

#fundamentals

一項訓練「疊代」中使用的「範例」組合。「批次大小」會決定批次中的樣本數量。

如要瞭解批次與訓練週期之間的關係,請參閱「訓練週期」。

批次推論

#TensorFlow
#GoogleCloud

對多個未加上標籤的範例進行「推論」預測的程序,並分為較小的子集 (「批次」)。

批次推論功能可以使用加速器晶片的平行處理功能。也就是說,多個加速器可以同時針對不同批次的無標籤範例進行預測,從而大幅增加每秒的推論數量。

批次正規化

隱藏層活化函式的輸入或輸出內容正規化批次正規化具有下列優點:

批量

#fundamentals

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

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

  • Stochastic Gradient Descent (SGD),其中批量為 1。
  • 完整批次,其中批量是整個訓練集中的範例數量。舉例來說,如果訓練集含有百萬個樣本,批次大小就會是百萬個範例。完整批次通常是效率不佳的策略。
  • 迷你批次,通常批次大小通常介於 10 至 1000 之間。迷你批次通常是最有效率的策略。

貝氏類神經網路

機率類神經網路,表示權重和輸出的不確定性。舉例來說,標準類神經網路迴歸模型通常會「預測」純量值;舉例來說,標準模型預測的房屋價格為 853,000。相反地,貝葉斯類神經網路會預測值的分佈情形;例如,貝葉斯模型預測房屋價格為 853,000,而標準差為 67,200。

貝葉斯神經網路仰賴 貝葉定理來計算權重和預測的不確定性。如需量化不確定性 (例如製藥相關模型),貝氏類神經網路相當實用。貝氏類神經網路也可協助防止過度配適

貝式最佳化

機率迴歸模型技術可將運算成本高昂的目標函式最佳化,做法是改用使用貝氏學習技巧來量化不確定性的代理值來量化不確定性。由於貝葉斯最佳化作業本身所費不貲,因此通常用來最佳化具有少量參數、且評估僅有少量參數的工作,例如選取超參數

貝曼方程式

#rl

在增強學習中,最佳 Q-function 代表滿足下列身分:

\[Q(s, a) = r(s, a) + \gamma \mathbb{E}_{s'|s,a} \max_{a'} Q(s', a')\]

強化學習演算法會使用此身分,透過以下更新規則建立 Q-learning

\[Q(s,a) \gets Q(s,a) + \alpha \left[r(s,a) + \gamma \displaystyle\max_{\substack{a_1}} Q(s',a') - Q(s,a) \right] \]

除了強化學習外,貝爾曼方程式也具備動態程式設計應用。請參閱 貝曼方程式的 Wikipedia 項目

BERT (基於 Transformer 的雙向編碼器表示法)

#language

文字表示法的模型架構。經過訓練的 BERT 模型可做為大型模型的一部分,用於文字分類或其他機器學習工作。

BERT 具備下列特性:

BERT 的變體包括:

如需 BERT 的簡介,請參閱「Open Sourcing BERT:Natural Language Pre-train for Natural Language Processing」。

偏誤 (倫理/公平性)

#fairness
#fundamentals

1. 對某些事物、人或群體發出刻板、偏見或好感。這些偏誤會影響資料的收集和解讀、系統設計,以及使用者與系統互動的方式。這類偏誤類型包括:

2. 取樣或回報程序造成的系統錯誤。這類偏誤類型包括:

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

偏誤 (數學) 或偏誤字詞

#fundamentals

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

  • b

舉例來說,自訂調整是下列公式中的 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。

偏誤不會與道德倫理和公平性的偏見預測偏誤混淆。

雙向

#language

這個字詞是用來描述系統評估文字「之後」和「之後」目標部分文字的系統。相對地,「單向」系統僅會評估文字目標區段「之前」的文字。

舉例來說,假設「遮蓋語言模型必須判定以下問題中代表底線的字詞機率機率:

您覺得 _____?

單向語言模型只能根據「What」、「is」和「the」字詞提供的背景資訊來決定機率。相較之下,雙向語言模型也可從「和」取得背景資訊,協助模型產生更準確的預測結果。

雙向語言模型

#language

「語言模型」:根據前面後面的文字,判斷指定符記在特定位置中的機率。

Bigram

#seq
#language

N=2 的 N-gram

二元分類

#fundamentals

一種預測兩種互斥類別的「分類」工作類型:

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

  • 判斷電子郵件是「垃圾郵件」 (正類) 還是「非垃圾郵件」 (負面類別) 的模型。
  • 可評估醫療症狀的模型,以判斷患者是否患有特定疾病 (正類) 或缺乏疾病 (陰性類別)。

多元分類之間的對比。

另請參閱邏輯迴歸分類門檻相關說明。

二進位條件

#df

決策樹狀圖中,這個條件只有兩個可能的結果,通常為「yes」或「no」。例如,以下是二元條件:

temperature >= 100

非二元條件之間的對比。

特徵分塊

值區分類的同義詞。

BLEU (雙語評估研究)

#language

介於 0.0 到 1.0 (含) 之間的分數,表示兩種人類語言的翻譯品質 (例如英文和俄文之間的翻譯品質)。BLEU 分數為 1.0 表示是完美的翻譯;BLEU 分數為 0.0 則代表很糟糕的翻譯。

增強中

這種機器學習技術會反覆將一組簡單且不準確的分類器 (稱為「弱」分類器) 合併成準確率高 (「高」分類器) 的分類器,也就是對模型目前分類錯誤的範例加權

定界框

#image

在圖片中,矩形圍繞著特定區域的 (xy) 座標,如下圖中的犬隻。

相片:小狗坐在沙發上。綠色定界框
 左上方座標為 (275, 1271),右下方座標為 (2954, 2761),代表犬隻的身體

廣播

將矩陣數學運算中的運算元形狀延伸為與該運算相容的維度。例如,線性代數要求矩陣加法中的兩個運算元必須具有相同的維度。因此,您無法將形狀 (m, n) 的矩陣加入長度為 n 的向量中。廣播可透過將相同的值複製到各欄上,以虛擬方式將長度 n 的向量展開成形狀 (m, n) 矩陣。

舉例來說,基於下列定義,線性代數會禁止 A+B,因為 A 和 B 的維度不同:

A = [[7, 10, 4],
     [13, 5, 9]]
B = [2]

不過,廣播功能可讓 A+B 作業,虛擬將 B 擴展到以下位置:

 [[2, 2, 2],
  [2, 2, 2]]

因此,A+B 現已成為有效作業:

[[7, 10, 4],  +  [[2, 2, 2],  =  [[ 9, 12, 6],
 [13, 5, 9]]      [2, 2, 2]]      [15, 7, 11]]

詳情請參閱以下有關 NumPy 中的廣播的說明。

分組

#fundamentals

將單一功能轉換為多個稱為「值區」或「特徵分塊」的二進位特徵,通常以值範圍為依據。所選功能通常是連續功能

舉例來說,您可以將溫度範圍選擇為獨立的值區,而非將溫度顯示為單一連續浮點特徵,例如:

  • 攝氏 10 度以上就會是「冷」值區。
  • 攝氏 11 到 24 度即為「溫度」區間。
  • 攝氏 25 度以上就會是「暖爐」值區。

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

C

校正層

預測後的調整,通常用於考量預測偏誤。調整後的預測和機率應符合觀察到標籤集的分佈。

候選產生

#recsystems

建議系統選擇的初始建議集。舉例來說,假設有一個書店提供 100,000 本書籍。候選產生階段會為特定使用者建立較少的適用書籍清單,例如 500 本。然而,即便是 500 本書,還是太多無法供使用者推薦。後續、費用更高、價格更高的推薦系統 (例如評分重新排名) 將 500 個階段減少為更小、更實用的建議組合。

候選抽樣

訓練時間最佳化,使用 softmax 等隨機排除標籤,計算所有「陽性」標籤的機率。舉例來說,假設有一個標示為 beagledog 的範例,候選抽樣會計算下列預測機率和對應的損失字詞:

  • 米格魯
  • 其他負值類別的隨機子集 (例如 catlollipopfence)。

這種做法的概念是,只要正類能一律獲得適當的正向強化,負類別就能從不常見的負面強化中學習,而這確實是觀察到的。

與計算「所有」負類別預測結果的訓練演算法相比,候選取樣的運算效率更高,尤其是在負類別數量非常大的情況下。

類別資料

#fundamentals

具有一組可能值的特徵。例如,請考慮名為 traffic-light-state 的類別特徵,且該類別特徵只能有以下三個可能值之一:

  • red
  • yellow
  • green

traffic-light-state 表示為類別特徵,即可學習 redgreenyellow 對驅動程式行為的差異。

類別特徵有時稱為「離散特徵

數值資料之間的對比。

因果語言模型

#language

單向語言模型的同義詞。

請參閱雙向語言模型,瞭解語言模型中對比不同的方向方法。

群集中心

#clustering

k-meansk-median 演算法判定的叢集中心。舉例來說,如果 k 是 3,則 k-means 或 k-median 演算法會尋找 3 個中心數。

群集型分群法

#clustering

這是一種分群法演算法,能將資料整理成非階層式叢集。k-means 是最廣泛使用的群子型分群演算法。

階層分群演算法相比。

思維鏈提示

#language
#生成式 AI

「提示工程」技術,鼓勵大型語言模型 (LLM) 逐步說明其原因。舉例來說,請考慮下列提示,請特別留意第二句:

車內駕駛在 7 秒內每小時 0 至 60 英里的 g 彈力是多少?在答案中顯示所有相關計算結果。

LLM 的回應可能會:

  • 顯示一系列物理公式,將值 0、60 和 7 插入適當的位置。
  • 說明選用這些公式的原因,以及各種變數代表的意義。

思維鏈提示會強制 LLM 執行所有計算,這或許能產生更正確的答案。此外,思維鏈提示可讓使用者檢查 LLM 的步驟,判斷答案是否合理。

對話

#language
#生成式 AI

與機器學習系統來回對話的內容,通常是大型語言模型。對話中的過往互動 (您輸入的內容與大型語言模型的回應方式) 會成為聊天後續部分的背景資訊。

「聊天機器人」是大型語言模型的應用程式。

檢查站

可在特定訓練疊代中擷取模型參數狀態的資料。查核點可讓您匯出模型「權重」,或跨多個工作階段執行「訓練」。查核點也能讓訓練繼續通過先前錯誤 (例如工作先佔)。

微調調整時,「訓練」「模型」預先訓練模型的特定查核點。

類別

#fundamentals

標籤所屬的類別。 例如:

  • 在偵測到垃圾內容的「二進位分類」模型中,這兩個類別可能是「垃圾內容」,而不是「垃圾內容」
  • 在可識別犬種的多元分類模型中,類別可能是 poodlebeaglepug 等。

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

分類模型

#fundamentals

預測結果是model模型model。舉例來說,以下是所有分類模型:

  • 可預測輸入語句語言的模型 (法文?西班牙文? 義大利文?)。
  • 可預測樹種的模型 (楓樹?橡木?阿嘉?)。
  • 模型可預測特定醫療狀況的正面或負面類別。

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

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

分類門檻

#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 個標籤與「purple」類別的標籤
  • 350 個標籤搭配「橘色」類別

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

裁剪

#fundamentals

處理「離群值」的技術,可執行下列其中一項操作,或同時執行兩者:

  • 將大於最高門檻的 feature 值降至該上限。
  • 調高低於最低門檻的特徵值,直到達到該最低門檻。

舉例來說,假設特定特徵的值不到 0.5%,落在 40 到 60 的範圍內。在此情況下,您可以執行以下操作:

  • 將超過 60 (最高閾值) 的所有值剪輯成 60 分。
  • 將低於 40 (最低閾值) 的值一律裁剪為 40。

離群值可能會損壞模型,有時會導致訓練期間的權重溢位。部分離群值也可能會大幅降低準確率等指標。裁剪是一種減少損害的常見技術。

漸層裁剪會在訓練期間強制指定範圍內的梯度值。

Cloud TPU

#TensorFlow
#GoogleCloud

專門用於加快 Google Cloud 機器學習工作負載的硬體加速器

分群法

#clustering

將相關範例分組,特別是在非監督式學習期間。將所有範例分組後,人類可以選擇為每個叢集提供意義。

有許多分群演算法存在。以 k-means 演算法叢集為例,這些叢集範例將其與 centroid 的距離相近,如下圖所示:

一張二維圖表,X 軸代表樹狀結構寬度,Y 軸代表樹狀結構高度。圖表包含兩個群集和數十個資料點。系統會依據資料點的鄰近程度分類資料點。也就是說,最接近一個群集中心的資料點會歸類為叢集 1,最靠近其他群集中心的資料點則歸類為叢集 2。

接著,真人研究人員可以審查叢集,將叢集 1 標示為「矮樹」,叢集 2 則設為「原尺寸樹木」。

再舉一個例子,根據範例與中心點的距離建立叢集演算法,如下所示:

數十個資料點都放在同心圓中,幾乎像是飛盤中央的小洞。資料點最內層的環狀分類為叢集 1,中間環則歸類為叢集 2,最外環為叢集 3。

共同調整

神經元透過幾乎完全依賴其他神經元的輸出內容來預測訓練資料的模式,而不是完全依賴網路的整體行為。如果驗證資料中沒有造成共適應的模式,則共調整會導致過度配適。推送正規化可減少共通性,因為捨棄作業可確保神經元無法完全依賴特定神經元。

協同過濾

#recsystems

根據其他使用者的興趣,對某個使用者的興趣進行預測。協同篩選通常用於推薦系統

概念偏移

特徵與標籤之間的關係變更。概念偏移會逐漸降低模型品質。

在訓練期間,模型會學習訓練集中特徵及其標籤之間的關係。如果訓練集內的標籤是符合現實生活需求的 Proxy,則模型能做出良好的實際預測。然而,由於概念偏離,模型的預測結果往往會隨著時間逐漸降低。

舉例來說,假設採用二元分類模型,以預測特定車款是否「省電」。也就是說,這些功能可以是:

  • 車重
  • 引擎壓縮
  • 傳輸類型

,且標籤為:

  • 燃油效率
  • 缺乏燃油效率

然而,「省油車」的概念不斷改變,若是在 1994 年標示為「燃油效率」的車款,幾乎在 2024 年會加上「無法燃油效率」。隨著時間推移而出現概念偏離的模型,會逐漸降低實用性和實用性。

請比較 nonstationarity

狀況

#df

決策樹狀圖中,評估運算式的任何節點。例如,以下決策樹狀圖的以下部分包含兩個條件:

包含兩個條件的決策樹狀圖:(x > 0) 和 (y > 0)。

條件也稱為分割或測試。

使用樹葉的對比條件。

另請參閱:

衝突

#language

hallucination 的同義詞。

「集會」一詞的技術精確度可能高於幻覺。但幻覺已成為流行。

設定

指派用於訓練模型的初始屬性值的程序,包括:

在機器學習專案中,可透過特殊的設定檔或使用類似下列的程式庫進行設定:

確認偏誤

#fairness

搜尋、解讀、偏好和喚回資訊,並能證明資訊早已既定的想法或假設。機器學習開發人員可能會在無意間收集資料或為其加上標籤,以影響結果支持其現有理念。確認偏誤是一種隱含偏見

「實驗者偏誤」是一種確認偏誤,會讓實驗者持續訓練模型,直到確認現有的假設為止。

混淆矩陣

#fundamentals

NxN 資料表,概略說明分類模型做出的正確和不正確預測數量。舉例來說,請考慮以下為二元分類模型的混淆矩陣:

腫瘤 (預測) 非腫瘤 (預測)
腫瘤 (真值) 18 (密碼) 1 (FN)
非腫瘤 (真值) 6 (FP) 452 (田納西州)

上述混淆矩陣顯示以下內容:

  • 真值為 Tumor 的 19 個預測中,模型正確地將 18 分類,而誤將 1 分類。
  • 在 458 個真值預測中,模型正確地將 452 分類,誤將 6 分類。

多元分類問題的混淆矩陣可協助您找出錯誤的模式。舉例來說,假設有下列三類多元分類模型的混淆矩陣,該模型將三種不同的鳶尾花類型 (維吉尼亞州、Versicolor 和 Setosa) 加以分類。當真值是維吉尼亞州時,混淆矩陣顯示模型比 Setosa 更可能誤預測 Versicolor:

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

再舉一個例子,混淆矩陣可能就顯示經過訓練辨識手寫數字的模型,往往會誤預測 9,而非 4,或誤將 1 誤預測為 1 而非 7。

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

組成資料剖析

#language

將句子分割為較小的文法結構 (「組成人」)。 機器學習系統的較後部分 (例如自然語言理解模型) 比原始語句更容易剖析組成成員。例如,請思考以下語句:

我的朋友採用了兩隻貓。

組成剖析器可將這個語句分成以下兩個組成部分:

  • 我的朋友是名詞片語,
  • 擁抱兩個貓」是動詞片語。

這些組成可進一步細分為較小的組成項目。 舉例來說

收養兩隻貓

可進一步細分為:

  • adopted 為動詞。
  • 「two cats」是另一個名詞片語。

內容比對語言嵌入

#language
#生成式 AI

一個接近「理解」字詞和詞組的嵌入,供母語人士使用。關聯語言嵌入能夠理解複雜的語法、語意和上下文。

例如,考慮嵌入「牛」這個英文字詞。較舊的嵌入 (例如 word2vec) 可代表英文字詞,因此嵌入空間「火箭」的距離與從「ewe」(女性) (女綿) 到 (男性羊) 到「男性」的距離相近。將特定內容嵌入式語言嵌入能夠更進一步,因為必須瞭解英文使用者有時會使用 cow 一詞來意指牛或公牛。

背景視窗

#language
#生成式 AI

模型可在指定提示中處理的「權杖」數量。背景視窗越大,模型就能運用更多資訊為提示提供一致且一致的回應。

連續功能

#fundamentals

具有無限可能值範圍 (例如溫度或體重) 的浮點功能

離散功能之間的對比。

便利取樣

使用非科學收集的資料集以執行快速實驗。之後,請務必切換至具有科學根據的收集資料集。

收斂

#fundamentals

每次疊代loss 值極少或完全沒有變更時達到的狀態。舉例來說,下列損失曲線建議在大約 700 次疊代時收斂:

笛卡兒圖。X 軸損失。Y 軸是訓練疊代次數。在最初幾次的疊代中,損失非常高,但驟降的情況會急遽下降。大約 100 次疊代後,損失仍在遞減,但愈來愈久。大約 700 次疊代後,損失會持平。

當其他訓練無法改善模型時,模型「融合」

深度學習中,損失值有時會在許多疊代作業中保持不變或接近,最後再遞減。在較長的持續損失值期間,您可能會暫時收到假的收斂感。

另請參閱提前停止

凸函數

在函式圖表上方的區域為「凸組」。原型凸顯函式的形狀如字母 U,例如,以下是所有 convex 函式:

U 形曲線,每個曲線都有一個最小點。

相反地,下列函式並非凸函數。請注意,圖表上方的區域並非百匯設定:

包含兩個不同當地最小點的 W 形曲線。

嚴格凸顯函式只有一個本機最小值,也是全域的最短點。傳統的 U 形函式是高度凸函數。但部分凸面函式 (例如直線) 並非 U 形形狀。

凸面最佳化

使用數學技巧 (例如梯度下降法) 找出凸函數的最小程序。我們對機器學習的大量研究,著重於找出各種問題,就好比定性最佳化問題,以及更有效率地解決這些問題。

詳情請參閱 Boyd 和 Vandenberghe 的 Convex 最佳化

凸集合

部分歐幾里德空間,使得子集中任兩個點之間繪製的線條完全保留在子集內。舉例來說,下列兩種形狀為凸層組合:

一張矩形插圖。另一個插圖是橢圓形。

相反地,以下兩個形狀並非凸層組合:

一張插圖,描繪缺少切片的圓餅圖。另一個插圖:野生不規則的多邊形。

卷積

#image

在數學類遊戲中,是將兩項功能混合在一起的。在機器學習中,卷積混合使用「卷積篩選器」和輸入矩陣來訓練權重

機器學習中的「卷積」一詞通常是用來指稱卷積運算卷積層的簡單方法。

如果沒有捲積,機器學習演算法就必須學習大型張量中每個儲存格的權重。例如,對 2K x 2K 圖片進行機器學習演算法訓練時,必須找出 400 萬個獨立的權重。得益於卷積,機器學習演算法只需要找出卷積篩選器中每個儲存格的權重,即可大幅減少訓練模型所需的記憶體。套用卷積篩選器時,會直接跨儲存格複製,讓每個儲存格都與篩選器相乘。

卷積濾波器

#image

我們是卷積運算中的兩個演員之一。(另一個發動者是輸入矩陣的切片)。卷積篩選器是一種矩陣,與輸入矩陣的「排名」相同,但形狀較小。舉例來說,假設有一個 28x28 輸入矩陣,篩選器可以是小於 28x28 的任何 2D 矩陣。

在光學操控中,卷積篩選器中的所有儲存格通常會設為 1 和 0 的常數模式。在機器學習中,卷積篩選器通常會以隨機數字植入,然後是網路「訓練」是最理想的值。

卷積層

#image

深層類神經網路層,卷積篩選器會沿著輸入矩陣傳遞。舉例來說,請考慮使用下列 3x3 的「卷積篩選器」

具備下列值的 3x3 矩陣:[[0,1,0], [1,0,1], [0,1,0]]

以下動畫顯示卷積層,由 9 個卷積運算組成,涉及 5x5 輸入矩陣。請注意,每項卷積運算都會在輸入矩陣中的 3x3 切片中運作。產生的 3x3 矩陣 (右側) 由 9 個卷積運算結果組成:

顯示兩個矩陣的動畫。第一個矩陣是 5x5 矩陣:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182]、[33,28,92,195,179]、[131、28、92、195、179]。第二個矩陣是 3x3 矩陣:[[181,303,618], [115,338,605], [169,351,560]。第二個矩陣的計算方式是將卷積濾波器 [[0, 1, 0], [1, 0, 1], [0, 1, 0]] 套用到 5x5 矩陣的不同 3x3 個子集。

卷積類神經網路

#image

類神經網路,其中至少一層是「卷積層」。典型的捲積類神經網路包含下列幾層的組合:

卷積類神經網路在處理影像辨識等特定問題方面取得成功。

卷積運算

#image

下列兩步驟數學運算:

  1. 卷積篩選器的元素優先乘法,以及輸入矩陣的切片。(輸入矩陣配量的排名和大小與卷積篩選器相同)。
  2. 產生的產品矩陣所有值的總和。

例如,請思考以下 5x5 輸入矩陣:

5x5 矩陣:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182]、[33,28,92,195,179]、[31,40,210

現在請想像以下 2x2 卷積濾波器:

2x2 矩陣:[[1, 0], [0, 1]]

每個卷積運算都包含輸入矩陣的單一 2x2 配量。舉例來說,假設我們在輸入矩陣左上角使用 2x2 的切片。因此,這個配量上的捲積運算如下:

將卷積濾鏡 [[1, 0], [0, 1]] 套用到輸入矩陣左上角 2x2 區段 ([[128,97], [35,22])。卷積濾波器會完整保留 128 和 22,但 97 和 35 會保持零。因此,卷積運算會產生值 150 (128+22)。

「卷積層」包含一系列卷積運算,每個運算層都會對輸入矩陣的不同配量。

費用

loss 的同義詞。

共同訓練

半監督式學習方法特別適用於滿足下列所有條件的情況:

共同訓練基本上可將獨立信號擴大至更強大的信號。舉例來說,假設有一個分類模型能夠將個別二手車分類為「佳」或「不佳」,其中一組預測功能可能著重於匯總特徵,例如汽車年份、廠牌和型號;另一組預測功能則可能著重於前車主的駕駛記錄和車輛維護記錄。

共同訓練的重點論是 Blum 和 Mitchell 的「結合已加上標籤和未加上標籤的資料」

反事實公平

#fairness

一個「公平性指標」,可檢查分類器是否會為某一個人和第一個完全相同的每個人產生同樣的結果,但除了一或多個敏感屬性以外。在模型中呈現潛在偏誤來源的一種方法,就是評估分類器是否符合反事實公平性。

如需對反事實公平性的相關詳細討論,請參閱「When Worlds Collide: Ingrating Counterfactual 假設 s in Fairness」(在公平性中整合不同假設) 一文。

涵蓋率偏誤

#fairness

請參閱選取偏誤

墜落

#language

意思不明確的句子或詞組。 當機的現象在自然語言理解方面是一項重大問題。舉例來說,「Red Tape Holds Up Skyscraper」標題就是當機事件,因為 NLU 模型可能會以字面或實際方式解讀標題。

批評

#rl

Deep Q-Network 的同義詞。

交叉熵

「Log Loss」(記錄損失) 的一般化為多類別分類問題。交叉熵量化兩個機率分佈之間的差異。另請參閱複雜度

跨驗證

評估model對新資料一般化程度的機制,方法是針對model中保留的一或多個非重疊資料子集進行測試。

累積分佈函式 (CDF)

定義樣本頻率小於或等於目標值的函式。例如,考慮連續值的常態分佈。CDF 表示大約 50% 的樣本應小於或等於平均值,且大約 84% 的樣本應小於或等於平均值上方的一個標準差。

D

資料分析

考慮樣本、測量結果和視覺化資料,瞭解資料的概念。如果在建構第一個model前收到資料集,資料分析功能會特別實用。瞭解實驗及對系統問題偵錯也至關重要。

資料增強

#image

轉換現有範例來建立更多範例,以手動方式提升訓練範例的範圍和數量。例如,提供圖片是您的其中一個功能,但資料集內的圖片範例不足,導致模型無法學習有用的關聯。在理想情況下,您應將足夠的已加上標籤圖片新增至資料集,才能讓模型正確訓練。如果不可行,資料擴增功能可能會旋轉、延展及反映每張圖片,產生許多原始圖片變化版本,可能產生足夠的加上標籤資料,以利進行卓越訓練。

DataFrame

#fundamentals

一種熱門的 pandas 資料類型,用於代表記憶體中的資料集

DataFrame 就如同資料表或試算表。DataFrame 的每個資料欄都有名稱 (標頭),每個資料列都是透過一組不重複的數字識別。

DataFrame 中的每個資料欄的結構都與 2D 陣列類似,但各欄皆可為各欄指派專屬的資料類型。

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

資料平行處理

調度「訓練」或「推論」的方式,可將整個模型複製到多部裝置,然後將一部分輸入資料傳遞至每部裝置。資料平行處理可針對非常大型的批次大小進行訓練和推論,但資料平行處理需要的模型必須足以容納所有裝置。

資料平行處理通常能加快訓練和推論速度,

另請參閱「模型平行處理」一文。

資料集或資料集

#fundamentals

原始資料集合,通常 (但非完全) 採用下列其中一種格式:

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

Dataset API (tf.data)

#TensorFlow

用於讀取資料,並將其轉換成機器學習演算法所需格式的高階 TensorFlow API。tf.data.Dataset 物件代表一系列的元素,其中每個元素都包含一或多個 Tensortf.data.Iterator 物件可讓您存取 Dataset 的元素。

如要進一步瞭解 Dataset API,請參閱 TensorFlow 程式設計師指南中的 tf.data:建構 TensorFlow 輸入管線

決策邊界

二元類別多類別分類問題中透過模型學習的類別之間的分隔符。例如,在下圖中代表一個二元分類問題的情況下,決策界線是橘色類別和藍色類別之間的最前線:

一個類別之間的明確界限。

決策森林

#df

依據多個決策樹狀圖建立的模型。 決策樹會匯總決策樹的預測結果來進行預測。常見的決策樹類型包括隨機森林梯度強化樹

決定門檻

分類門檻的同義詞。

決策樹狀圖

#df

監督式學習模型是由一組按階層分類的conditionsconditions組成。舉例來說,以下是決策樹狀圖:

由四個條件式排列的決策樹狀圖,可分成五葉。

解碼器

#language

一般來說,任何從已處理、稠密或內部表示法轉換成更原始、稀疏或外部表示法的機器學習系統。

解碼器通常是大型模型的元件,經常與編碼器配對。

在「序列至序列任務中,解碼器會以編碼器產生的內部狀態開始預測下一個序列。

如要瞭解 Transformer 架構中的解碼器定義,請參閱 Transformer

深度模型

#fundamentals

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

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

寬模型之間的對比。

便相當熱門的

深度模型的同義詞。

深 Q-Network (DQN)

#rl

Q-learning 中,這是可預測 Q 函式的深層類神經網路

「Critic」是 Deep Q-Network 的同義詞。

客層一致

#fairness

如果模型分類的結果不依賴特定敏感屬性,則符合的公平性指標

例如,如果自由度

等效機率機會平等性不同。前者可讓匯總結果依附於敏感屬性,但不允許特定指定的「實際資料」標籤使用機密屬性的分類結果。如要以視覺化方式瞭解進行客層一致性的優缺點,請參閱「運用更聰明的機器學習攻擊歧視」一文。

雜訊去除

#language

自我監督式學習的常見做法如下:

  1. 人為在資料集中新增雜訊
  2. model會嘗試移除雜訊。

雜訊去除功能可讓您從未加上標籤的範例中學習。原始資料集可做為目標或標籤,用來做為輸入。

部分遮蓋的語言模型使用雜訊去除功能,如下所示:

  1. 藉由遮蓋部分符記,人工為未加上標籤的句子加入雜訊。
  2. 模型會嘗試預測原始符記。

稠密特徵

#fundamentals

大多數或所有值都是非零的特徵,通常是浮點值的 Tensor。舉例來說,下列 10 個元素的 Tensor 具有密集型,因為其中 9 個值不是零:

8 3 7 5 2 4 0 4 9 6

對比稀疏功能

稠密層

完整連結層的同義詞。

深度

#fundamentals

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

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

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

深度可分離卷積類神經網路 (sepCNN)

#image

Inception 為基礎的卷積類神經網路架構,但 Inception 模組會替換為深度可分割的捲積。也稱為 Xception。

深度可分卷的捲積 (也稱為可分離的捲積) 會將標準 3D 卷積組成兩個提升運算效率的獨立卷積運算:第一是深度卷積,深度為 1 (n × × × 1),寬度,十度 (1 × × × 以)。

詳情請參閱「Xception: Deep Learning with Depthwise Separable Reolutions」(Xception:深度可相散卷法的深度學習)。

衍生標籤

Proxy 標籤的同義詞。

裝置

#TensorFlow
#GoogleCloud

超載字詞,可能的定義有兩種:

  1. 可執行 TensorFlow 工作階段的硬體類別,包括 CPU、GPU 和 TPU
  2. 加速器晶片 (GPU 或 TPU) 上訓練機器學習模型時,系統是系統實際操控張量嵌入的系統部分。裝置搭載加速器晶片。相反地,host 通常是在 CPU 上執行。

差異化隱私

在機器學習中,匿名方法可保護模型「訓練集」中包含的任何機密資料 (例如個人的個人資訊),以免洩露。這種做法可確保model不會瞭解或記住特定個人的資訊。方法是在模型訓練期間進行取樣和加入雜訊,以遮住個別資料點,進而降低公開機密訓練資料的風險。

此外,我們也將差異化隱私用於機器學習以外的地方。舉例來說,在計算不同客層的產品使用統計資料時,數據資料學家有時會利用差異化隱私來保護個人隱私。

維度縮減

如要減少特徵向量中特定地圖項目使用的維度數量,通常是轉換為嵌入向量

維度

超載字詞定義如下:

  • Tensor 中的座標層級。舉例來說:

    • 純量的維度為零,例如 ["Hello"]
    • 向量包含一個維度,例如 [3, 5, 7, 11]
    • 矩陣有兩個維度,例如 [[2, 4, 18], [5, 7, 14]]

    您可以在使用單一座標的一維向量中專門指定特定儲存格。您需要兩個座標,才能在二維矩陣中明確指定特定儲存格。

  • 地圖項目向量中的項目數量。

  • 嵌入層中的元素數量。

直接提示

#language
#生成式 AI

零樣本提示的同義詞。

離散功能

#fundamentals

具有一組可能值的地圖項目。例如,值可能僅為「動物」、「蔬菜」或「礦產」的特徵是離散 (或類別) 的特徵。

對比連續功能

判別式模型

這個model會從一組以上的「特徵」model預測「標籤」model判別式模型更正式地定義了輸出的條件式機率,前提是該模型有特徵和權重,如下所示:

p(output | features, weights)

例如,用來預測電子郵件是否來自特徵,權重的模型就是判別式模型。

絕大多數的監督式機器學習模型 (包括分類和迴歸模型) 都是判別式模型。

這是與生成式模型之間的對比。

鑑別器

判斷示例是真實還是假的系統。

或者,生成對抗網路中的子系統,可判斷產生器所建立的範例是真實還是假的。

不同影響

#fairness

對會影響不同群體的群體的人做決定這通常是指演算法決策程序對某些子族群造成的傷害或利益。

舉例來說,假設演算法判斷 Lilliputian 符合微型房屋貸款資格的演算法,如果其郵寄地址含有特定郵遞區號,則較有可能將他們歸類為「不符資格」。如果 Big-Endian Lilliputians 使用此郵遞區號地址的地址較 Little-Endian Lilliputians 更容易,則這個演算法可能會產生差異影響。

不同的處理方式相反,後者著重於分析時,如果子群組特徵是明確輸入演算法的決策過程,就會造成差異。

不同治療

#fairness

將主體的「敏感屬性」納入演算法的決策過程,藉此以不同方式處理不同子群組的人。

例如,假設有一個演算法,根據莉莉普達人在貸款申請中提供的資料,判斷該人是否符合迷你房屋貸款的資格。如果演算法使用 Lilliputian 的聯盟關係做為 Big-Endian 或 Little-Endian 的輸入內容,就會針對該維度形成不同的治療。

相較之下,差異性影響則著重於演算法決策對子群組造成的社會影響差異,無論這些子群組是否為模型的輸入內容都一樣。

萃取

#生成式 AI

將一個「模型」model (稱為「老師」model) 的大小縮減為較小的模型 (稱為「學生」model),以盡可能忠實地模擬原始模型的預測結果。精煉法很有用,因為與大型模型 (老師) 相比,小型模型有兩項主要優勢:

  • 推論時間較快
  • 降低記憶體和能源用量

但是,學生的預測結果通常比老師的預測還差。

精煉作業會訓練學生模型,根據學生和教師模型預測結果之間的差異,將損失函式降至最低。

請對照以下字詞,比較並對照取景方式:

發布

特定功能標籤不同值的頻率和範圍。分佈情形會擷取特定值的可能性。

下圖顯示兩種分佈情形的直方圖:

  • 左邊是財富法的分佈,以及擁有該財富的人數。
  • 畫面右側顯示高度的常態分佈與持有該高度的人數比例。

兩張直方圖。一張直方圖顯示出權法分佈在 x 軸上具有財富,在 Y 軸上則有大量人口數。多數人的財富不多,少數人則擁有龐大財富。另一個直方圖顯示高度在 X 軸上的常態分佈,代表擁有該高度的人數在 Y 軸上。大多數人都聚集在距離平均值的附近,

瞭解每個特徵和標籤的分佈情形,有助於您決定如何「正規化」值及偵測離群值

「out ofDistribution」詞組是指資料集中沒有或極少出現的值。舉例來說,在含有貓圖片的資料集中,星球的圖片會被視為分散於分佈圖中。

多樣化分群法

#clustering

請參閱階層分群相關說明。

降低取樣

#image

超載字詞可能代表以下任一種情況:

  • 減少功能中的資訊量,更有效率地訓練模型。例如,在訓練圖片辨識模型之前,先將高解析度的圖片縮減為較低解析度的格式。
  • 使用比例極低的類別範例進行訓練,以改善代表比例不足類別的模型訓練。舉例來說,在類別不平衡的資料集中,模型往往會學到更多關於主要類別的資訊,但不太有關少數類別。降低取樣有助於平衡多數和少數類別的訓練量。

DQN

#rl

Deep Q-Network 的縮寫。

丟棄正則化

一種正則化形式,適用於訓練類神經網路。放置正規化功能會在單一漸層步驟中隨機選取網路層中固定數量的單位。捨棄的單位越多,正則化越強。這類似於訓練網路來模擬較小網路的指數。詳情請參閱「Dropout:避免類神經網路過度配適」一文。

動態

#fundamentals

經常或持續完成。 「動態」和「線上」這兩個詞彙在機器學習中的同義詞。以下是「動態」和「線上」在機器學習中的常見用途:

  • 動態模型 (或稱「線上模型」) 是指會經常或持續重新訓練的模型。
  • 動態訓練 (或「線上訓練」) 是指頻繁或持續的訓練程序。
  • 「動態推論」 (或「線上推論」) 是指按需求產生預測的程序。

動態模型

#fundamentals

頻繁 (甚至持續) 重新訓練的model。動態模型是一種「終身學習」,可持續適應不斷演變的資料。動態模型又稱為「線上模型」

這是與靜態模型之間的對比。

E

Eager Execution

#TensorFlow

TensorFlow 程式設計環境會立即執行operations。相較之下,圖表執行作業中呼叫的作業要等到明確評估完成才會執行。Eager 執行是命令式介面,與大多數程式設計語言中的程式碼非常類似。一般來說,Eager 執行程式的偵錯方式比圖形執行程式容易許多。

提早中止訓練

#fundamentals

用於正則化的方法,也就是在訓練損失完成減少「之前」結束「訓練」。在早期中止時,當驗證資料集的損失開始增加時 (也就是一般化效能降低時),您刻意停止訓練模型。

地球移動者的距離 (EMD)

測量兩個分佈的相對相似度。地球移動者的距離越低,分佈越相似。

編輯距離

#language

比較兩個文字字串彼此間的相似程度。在機器學習中,編輯距離很實用,因為它的計算簡單而且有效地比較兩個已知的相似字串,或尋找與指定字串相似的字串。

「編輯距離」有多種定義,每個都使用不同的字串運算。舉例來說, Levenshtein 距離所考慮的刪除、插入和替代運算次數最少。

例如,「heart」和「darts」這兩個字詞之間的 Levenshtein 距離是 3,因為接下來的 3 項編輯是將一個字轉成另一個字的最少變化:

  1. 心形 → deart (以「h」取代「h」)
  2. deart → dart (刪除「e」)
  3. dart → darts (插入「s」)

Einsum 標記法

一個有效率的標記,用於描述兩個張量如何組合。將一個張量的元素乘以其他張量的元素,然後加總乘積,是將一個張量的元素相乘。Einsum 標記法會使用符號來識別每個張量的軸,而這些符號會重新安排,以指定新產生的張量的形狀。

NumPy 提供常見的 Einsum 實作。

嵌入層

#language
#fundamentals

一種特殊的「隱藏層」,可在高維度的類別地圖項目上進行訓練,以便逐步學習較低維度嵌入向量。嵌入層可讓類神經網路的訓練更有效率,遠比僅針對高維度類別特徵進行訓練。

舉例來說,Google 地球目前支援約 73,000 棵樹種。假設樹種是模型中的一個特徵,因此模型的輸入層會包含一個長 73,000 個元素的單熱向量。例如,baobab 就能以以下方式表示:

由 73,000 個元素的陣列。前 6,232 個元素的值為 0。下一個元素包含的值 1。最後一個 66,767 元素的值為 0。

73,000 個元素陣列過長。如果沒有為模型新增嵌入層,由於 72, 999 個零乘以 72,999,因此訓練作業會非常耗時。也許您挑選嵌入層包含 12 個維度因此,嵌入層會逐漸學習每個樹種的新嵌入向量。

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

嵌入空間

#language

系統會對應至較高維度空間特徵的 D 維度向量空間。在理想情況下,嵌入空間內含能產生有意義的數學結果的結構;舉例來說,在理想的嵌入空間中,嵌入的加減法則可解決文字類比工作。

兩個嵌入的內積可測量兩者相似度。

嵌入向量

#language

大致來說,這是從任何隱藏層中擷取的浮點數陣列,用於描述隱藏層的輸入內容。嵌入向量通常是在嵌入層中訓練的浮點數陣列。舉例來說,假設嵌入層必須學習為地球上 73,000 種樹木分別學習一個嵌入向量。也許下列陣列是 Baobab 樹的嵌入向量:

12 個元素的陣列,每個元素都有介於 0.0 和 1.0 之間的浮點數。

嵌入向量不是一堆隨機數字。嵌入層會透過訓練決定這些值,這類似於類神經網路在訓練期間學習其他權重的方式。陣列的每一個元素都是沿著樹種的特徵評分。哪一個元素代表了什麼樹種的特徵?這很難由人類判斷

嵌入向量在數學上具有數學運算能力的部分,是類似項目具有相似的浮點數組合。例如,類似的樹種擁有比不相似的樹種擁有更多類似的浮點數。紅木和紅杉則是相關的樹種,因此與紅木和椰子手掌相比,兩者的浮點數會更相似。每次重新訓練模型時,嵌入向量中的數字就會改變,即使使用相同的輸入重新訓練模型也一樣。

模型累積分佈函式 (eCDF 或 EDF)

以實際資料集的樣本測量資料為基礎的累計分佈函式。函式在 x 軸上任何一點的函式值是資料集中小於或等於指定值的觀察比例。

經驗風險最小化 (ERM)

選擇能盡量減少訓練集損失的函式。這與結構風險最小化相反。

編碼器

#language

一般而言,任何從原始、稀疏或外部表示法轉換為較高處理、較密集或更內部表示法的機器學習系統。

編碼器通常是大型模型的元件,經常與解碼器配對。部分Transformers 配對編碼器與解碼器會配對,但其他轉換器只會使用編碼器或解碼器。

部分系統會使用編碼器的輸出內容,做為分類或迴歸網路的輸入內容。

在「序列至序列任務中,編碼器會接收輸入序列,並傳回內部狀態 (向量)。接著,解碼器會使用該內部狀態來預測下一個序列。

如要瞭解 Transformer 架構中的編碼器定義,請參閱 Transformer

集成

一組獨立訓練的模型,其預測結果是平均值或匯總。在許多情況下,複合型會產生比單一模型更好的預測結果。舉例來說,「隨機樹系」是由多個決策樹建構而成的稠密型,請注意,並非所有決策樹都是組成。

#df

資訊理論中,說明無法預測的機率分佈情形。此外,熵的定義是每個 example 中包含的資訊量。當隨機變數的所有值都相等時,分佈具有最高的熵。

組合具有兩個可能值「0」和「1」(例如二進位分類問題中的標籤) 的熵含有以下公式:

  H = -p log p - q log q = -p log p - (1-p) * log (1-p)

其中:

  • H 是熵。
  • p 是「1」範例的分數。
  • q 是「0」範例的分數。請注意,q = (1 - p)
  • log 通常是記錄2。在這個例子中,熵單位有點

舉例來說,假設:

  • 100 份範例含有值「1」
  • 共有 300 個範例包含值「0」

因此,熵值如下:

  • p = 0.25
  • q = 0.75
  • H = (-0.25)log2(0.25) - (0.75)log2(0.75) = 每例 0.81 位元

如果是完美平衡的集合 (例如 200 "0" 和 200 "1"s),則每個範例的熵為 1.0 位元。隨著集合變得更加不平衡,熵就會朝 0.0 移動。

決策樹狀圖中,熵有助於構思資訊獲得,協助分割在分類決策樹成長期間選取條件

比較熵與

熵通常稱為香農的熵。

環境

#rl

在增強學習中,這個世界含有「代理程式」,可讓代理程式觀察這個世界的狀態。舉例來說,代表的世界可以是西洋棋之類的遊戲,也可以是迷宮之類的實體世界。當代理程式對環境套用「動作」,環境就會轉換狀態。

單集節目

#rl

在增強學習中,代理程式會不斷嘗試學習某個環境

Epoch 紀元時間

#fundamentals

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

週期代表 N/批次大小訓練的「疊代」,其中 N 是樣本總數。

例如,假設:

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

因此,一個訓練週期需要 20 次疊代:

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

Epsilon 貪婪政策

#rl

在強化學習中,一種政策遵循 隨機政策,採用 Epsilon 機率,也可能是貪婪政策。舉例來說,如果 epsilon 是 0.9,那麼政策 90% 的時間會遵循隨機政策,所有時間都遵循貪婪政策。

相對地,演算法會減少 epsilon 的值,從而從隨機政策轉變為遵循貪婪政策。透過變更政策,代理程式會先隨機探索環境,然後嚴謹地利用隨機探索的結果。

機會平等

#fairness

這個「公平性指標」可用於評估模型是否同樣針對敏感屬性的所有值,均能同時預測預期結果。換句話說,如果模型的理想結果是「陽性類別」,目標就會是所有群組的「真陽率」均相同。

機會平等與等於的可能性有關,這需要「同時」所有群組的真陽率和偽陽率必須相同。

假設格盧布杜比得布大學 (Glubbdubdrib University) 承認利利普特人和布洛丁納吉人加入嚴格的數學計畫。利利浦大學的中學提供完善的數學課程,且絕大多數學生皆符合大學計畫的入學資格。身心障礙學生的中學根本 根本不提供數學課程如果合格學生同樣有可能接受國籍 (利利波特人或布洛金納吉),只要符合國籍 (Lilliputian 或 Brobdingnagian) 偏好的「已獲準」標籤,即符合平等機會的平等性。

舉例來說,假設 Glubbdubdrib 大學有 100 名 Lilliputians 和 100 名布魯金納加工分,而入學決策如下:

表 1. Lilliputian 申請者 (90% 符合資格)

  晉級 不合格
已獲準 45 3
已拒絕 45 7
總計 90 10
認可的合格學生百分比:45/90 = 50%
遭拒的合格學生百分比:7/10 = 70%
認識的 Lilliputian 學生總百分比:(45+3)/100 = 48%

 

表 2. Brobdingnagian 申請者 (10% 符合資格):

  晉級 不合格
已獲準 5 9
已拒絕 5 81
總計 10 90
認可的合格學生百分比:5/10 = 50%
遭拒的不合格學生百分比:81/90 = 90%
參賽學生比例:(5+9)/100 = 14%

上述範例滿足了合格學生的平等機會,因為合格的 Lilliputians 和 Brobdingnagians 都有 50% 的接受機會。

儘管滿足機會的平等性,但以下兩項公平性指標並未滿足:

  • 客層一致:利利波特幅員和布羅丁納吉人以不同的費率入學,48% 的立場學生獲得參賽資格,但只有 14% 的允許學生獲得入選資格。
  • 均等機率:雖然合格的 Lilliputian 和 Brobdingnagian 學生也有同樣入場的機會,但若不合格的利利波特和布洛丁納吉夫,同樣會遭到拒絕。不合格的 Lilliputians 的拒絕率達 70%,而不合格的布魯克丁納犬則拒絕率達 90%。

如需進一步探討機會平等的相關討論,請參閱「監督式學習中的機會的平等」。另請參閱「以更聰明的機器學習攻擊歧視」一文,以視覺化方式瞭解在最佳化機會品質時權衡利弊。

等值相等

#fairness

這個公平性指標可評估模型對於敏感屬性所有值的預測結果是否平等,且同時適用於正類別負類別,而不只是單一類別,還是其他類別。也就是說,所有群組的「真陽率」「偽陰性率」應相同。

均等機率與「機會平等相關,後者僅聚焦於單一類別 (陽性或負數) 的錯誤率。

例如,假設格盧布杜比得布大學 (Glubbdubdrib University) 不僅承認利爾帕特人和布布丁納加大學,在嚴格的數學計畫中。利比高中的中學提供完善的數學課程,且絕大多數學生皆符合大學計畫的入學資格。Brobdingnagians 的中學完全沒有提供數學課程,因此,其合格學生人數大幅減少。所謂均等機率,前提是申請者無論申請者是 Lilliputian 或 Braobdingnagian,只要符合資格,則參與計畫的機會也同樣等同於獲準加入計畫的機會;若不符資格,則可能遭拒絕。

假設 Glubbdubdrib 大學有 100 名 Lilliputians 和 100 名布魯金納加工人,而入學決策程序如下:

表 3. Lilliputian 申請者 (90% 符合資格)

  晉級 不合格
已獲準 45 2
已拒絕 45 8
總計 90 10
認可的合格學生百分比:45/90 = 50%
遭拒的合格學生百分比:8/10 = 80%
認識的 Lilliputian 學生總百分比:(45+2)/100 = 47%

 

表 4. Brobdingnagian 申請者 (10% 符合資格):

  晉級 不合格
已獲準 5 18
已拒絕 5 72
總計 10 90
認可的合格學生百分比:5/10 = 50%
遭拒的不合格學生百分比:72/90 = 80%
參賽學生比例:(5+18)/100 = 23%

合格的 Lilliputian 和 Brobdingnagian 學生都有 50% 的接受機會,而不合格的利利普特人和布洛丁納吉人則有 80% 的機率會遭到拒絕。

均等機率通常在「監督式學習中的機會平等」一節中定義,定義如下:「predictor Ú satisatisatisial t with Protected attribute A and when tatt and A」,則在 Y 上有條件式的 A 結果。」

Estimator

#TensorFlow

已淘汰的 TensorFlow API。使用 tf.keras 而非 Estimator。

評估版

評估機器學習模型預測品質的程序。開發模型時,您不僅會對訓練集套用評估指標,也要針對驗證集測試集套用評估指標。您也可以使用評估指標來比較不同的模型。

例子

#fundamentals

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

舉例來說,假設您正在訓練模型,藉此判斷天氣條件對學生測驗分數的影響。以下提供三個加上標籤的範例:

功能 唱片公司
隨機性參數 濕度 氣壓 測試分數
15 47 998 不錯
19 34 1020 極佳
18 92 1012 不佳

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

隨機性參數 濕度 氣壓  
12 62 1014  
21 47 1017  
19 41 1021  

資料集的資料列通常是範例的原始來源。這表示範例通常是由資料集中的部分資料欄組成。此外,範例中的功能也可以包含合成特徵 (例如交錯功能)。

體驗重播

#rl

在增強學習中,一種 DQN 技術可用於減少訓練資料中的時間相關性。代理程式會將狀態轉換作業儲存在「重播緩衝區」中,然後取樣從重播緩衝區轉換內容,藉此建立訓練資料。

實驗者偏誤

#fairness

請參閱「確認偏誤一節。

爆炸漸層問題

#seq

深層類神經網路 (尤其是循環類神經網路) 中的漸層傾向出現令人意外 (高)。陡降梯度通常會對深層類神經網路中每個節點權重進行大量更新。

因爆炸梯度問題而受到影響的模型會變得難以訓練,或無法訓練。漸層裁剪可緩解這個問題。

去除梯度問題相比。

F

F1

採用精確度喚回度兩者的「綜覽」二元分類指標。公式如下:

$$F{_1} = \frac{\text{2 * precision * recall}} {\text{precision + recall}}$$

以下列內容為例:

  • 精確度 = 0.6
  • 喚回度 = 0.4
$$F{_1} = \frac{\text{2 * 0.6 * 0.4}} {\text{0.6 + 0.4}} = 0.48$$

如果精確度和喚回度相似 (如上述範例所示),F1 與平均值相似。如果精確度和喚回度明顯不同,F1 就會接近較低的值。例如:

  • 精確度 = 0.9
  • 喚回度 = 0.1
$$F{_1} = \frac{\text{2 * 0.9 * 0.1}} {\text{0.9 + 0.1}} = 0.18$$

公平性限制

#fairness
將限制套用至演算法,確保滿足一或多個公平的定義。公平性限制的例子包括:

公平性指標

#fairness

可評估的「公平性」數學定義。一些常用的公平性指標包括:

許多公平性指標彼此互斥;請參閱公平性指標的相容性

偽陰性 (FN)

#fundamentals

此範例中有模型錯誤預測負類。舉例來說,模型預測特定電子郵件「不是垃圾郵件」(負類別),但電子郵件實際上是垃圾郵件

偽陰性率

實際正向樣本誤預測負類結果的比例。下列公式計算偽陰性率:

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

偽陽性 (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

label 之間的對比。

交錯組合特徵

#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 個值區。

基本上,十字符是一種笛卡兒乘積

交錯組合大多搭配線性模型使用,很少搭配類神經網路使用。

特徵工程

#fundamentals
#TensorFlow

包含以下步驟的程序:

  1. 判斷哪些特徵在訓練模型時可能較有用。
  2. 將資料集的原始資料轉換成這些特徵的高效率版本。

舉例來說,您可能會判斷 temperature 可能是實用的功能。接著進行特徵分塊,讓模型可從不同的 temperature 範圍中學習。

特徵工程有時也稱為「特徵擷取或「相依性」。

特徵擷取

超載字詞定義如下:

特徵重要性

#df

變數重要性的同義詞。

功能集

#fundamentals

用來訓練機器學習模型的一組特徵。例如,郵遞區號、屬性大小和屬性條件可能會為預測房價的模型提供一個簡單的特徵集。

特徵規格

#TensorFlow

說明從 tf.Example 通訊協定緩衝區擷取 features 資料所需的資訊。由於 tf.Example 通訊協定緩衝區只是資料的容器,因此您必須指定下列項目:

  • 要擷取的資料 (亦即特徵的鍵)
  • 資料類型 (例如 float 或 int)
  • 長度 (固定或可變動)

特徵向量

#fundamentals

包含範例feature 值陣列。特徵向量是在「訓練」期間和推論期間輸入。例如,如果模型包含兩個獨立特徵,特徵向量可能是:

[0.92, 0.56]

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

每個範例會為特徵向量提供不同的值,因此下一個範例的特徵向量可能如下:

[0.73, 0.49]

特徵工程可決定特徵向量中的地圖項目如何表示。舉例來說,具有五個可能值的二進位類別特徵可能會以 one-hot 編碼表示。在這種情況下,特定範例的特徵向量部分會包含第三個位置的 4 個零和一個 1.0,如下所示:

[0.0, 0.0, 1.0, 0.0, 0.0]

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

  • 一個二進位類別特徵,有 五個可能的值,以 one-hot 編碼表示;例如:[0.0, 1.0, 0.0, 0.0, 0.0]
  • 另一個二進位類別特徵,有 3 個可能的值,以 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

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

前饋類神經網路 (FFN)

沒有循環或遞迴連線的類神經網路。例如,傳統的深層類神經網路就是前饋類神經網路。這與循環的循環類神經網路相反。

少量樣本學習

一種機器學習方法,通常用於物件分類,旨在僅從少量訓練樣本訓練有效的分類器。

另請參閱單樣本學習零樣本學習

少量樣本提示

#language
#生成式 AI

提示包含多個 (一個「少量」) 的範例,示範大型語言模型應如何回應。舉例來說,以下冗長的提示包含兩個範例,說明大型語言模型如何回答查詢。

單一提示組成部分 附註
指定國家/地區的官方貨幣為何? 您希望 LLM 回答的問題。
法國:歐元 其中一個例子。
英國:GBP 另一個例子
印度: 實際查詢。

相較於「零樣本提示」「單樣本提示」,少量樣本提示通常能產生更理想的結果。不過,少量樣本提示需要較長的提示

少量樣本提示是少量樣本學習的一種形式,適用於提示式學習

小提琴

#language

以 Python 優先的設定程式庫,可在沒有侵入式程式碼或基礎架構的情況下設定函式和類別的值。以 Pax 和其他機器學習程式碼集來說,這些函式和類別代表模型訓練 超參數

Fiddle 假設機器學習程式碼集通常分為:

  • 可定義圖層和最佳化工具的程式庫程式碼。
  • 資料集「黏合」程式碼會呼叫程式庫,並將所有資訊連接在一起。

Fiddle 以未評估且可變動的形式擷取膠合程式碼的呼叫結構。

微調

#language
#image
#生成式 AI

第二項任務專屬訓練通過對預先訓練模型,修正特定用途的參數。例如,某些大型語言模型的完整訓練順序如下:

  1. 預先訓練:使用大量的「一般」資料集 (例如所有英文的 Wikipedia 頁面) 訓練大型語言模型。
  2. 微調:訓練預先訓練模型來執行「特定」工作,例如回應醫療查詢。微調通常需要數百或數千個範例來著重於特定工作。

再舉一個例子,大型圖片模型的完整訓練順序如下:

  1. 預先訓練:使用大量「一般」圖片資料集訓練大型圖片模型,例如 Wikimedia 通用圖片中的所有圖片。
  2. 微調:訓練預先訓練模型來執行「特定」工作,例如產生 Orcas 的圖片。

微調可採用下列策略的任意組合:

  • 修改預先訓練模型的現有所有參數。這種做法有時也稱為「完全微調」
  • 如果您只修改「部分」預先訓練模型的現有參數 (通常是最靠近輸出層的層),其他現有參數則保持不變 (通常是離輸入層的圖層)。請參閱符合參數效率的調整方法相關說明。
  • 新增更多圖層,通常位於最接近輸出層的現有層之上。

微調是一種遷移學習。 因此,微調可能使用與訓練預先訓練模型不同的損失函式或模型類型。舉例來說,您可以微調預先訓練的大型圖片模型,以產生可在輸入圖片中傳回鳥類數量的迴歸模型。

使用下列字詞比較並對照微調:

亞麻色

#language

JAX 為基礎建構的高效能開放原始碼 程式庫,用於深度學習。Flax 提供「訓練」類神經網路,以及評估其效能的方法。

亞麻色

#language

這是以 Flax 建構的開放原始碼 Transformer 程式庫,主要用於自然語言處理和多模態研究。

忘記大門

#seq

長短期記憶體儲存格中用於控制儲存格資訊流動的部分。捨棄大門,就能決定要從儲存格狀態中捨棄哪些資訊,藉此保有背景資訊。

完整 softmax

softmax 的同義詞。

候選抽樣的差異。

全連接層

隱藏層:在這個情況下,每個節點都會連線至後續隱藏層中的「每個」節點。

完全連接的資料層又稱為「密集層」

函式轉換

這個函式會將函式做為輸入,並傳回轉換後的函式做為輸出內容。JAX 使用函式轉換。

G

GAN

生成對抗網路的縮寫。

一般化

#fundamentals

「模型」對之前未曾看過的新資料進行正確預測的能力。可一般化的模型與過度配適的模型相反。

一般化曲線

#fundamentals

「訓練損失」和「驗證損失」的圖表,以「疊代」的數量呈現。

一般化曲線有助於偵測可能的過度配適。舉例來說,以下一般化曲線建議過度配適,因為驗證損失最終遠高於訓練損失。

笛卡兒圖表中,Y 軸標示為損失,X 軸標示為疊代。畫面上會出現兩個圖。其中一個圖表顯示訓練損失,另一則顯示驗證損失。這兩圖的起始點類似,但訓練損失最終遠低於驗證損失。

一般化線性模型

最小平方迴歸模型一般化,也就是以高斯雜訊為基礎,而根據其他類型的雜訊 (例如星球雜訊或類別雜訊) 其他類型的模型。一般化線性模型範例包括:

如需一般線性模型的參數,請參閱對話最佳化

一般化線性模型具有下列屬性:

  • 最佳最小平方迴歸模型的平均預測結果與訓練資料的平均標籤相等。
  • 最佳邏輯迴歸模型預測的平均機率與訓練資料上的平均標籤相等。

一般化線性模型的功效受到其特徵限制。與深度模型不同的是,通用線性模型無法「學習新特徵」。

生成對抗網路 (GAN)

用來建立新資料的系統,由產生器建立資料,鑑別器則能判斷建立的資料是否有效。

生成式 AI

#language
#image
#生成式 AI

新興的轉換欄位,沒有正式的定義。儘管如此,大多數專家都認為生成式 AI 模型可以建立 (「產生」) 的內容如下:

  • 複雜
  • 一致
  • 原始圖片

舉例來說,生成式 AI 模型可以生成複雜的論文或圖片

部分較舊的技術 (包括 LSTMRNN) 也可以產生原創且連貫的內容。有些專家認為這些早期技術就是 生成式 AI,有些則認為

相對於預測機器學習

生成式模型

具體而言,這個模型可執行下列任一操作:

  • 從訓練資料集建立 (產生) 新範例。舉例來說,生成式模型可以對詩詞資料集進行訓練 進而建立詩詞。生成對抗網路中的產生器屬於這個類別。
  • 決定新範例來自訓練集或從建立訓練集的相同機制建立的機率。舉例來說,在包含英文語句的資料集上進行訓練後,生成式模型就能判斷新輸入內容為有效英文語句的機率。

生成式模型可以在理論上辨識資料集範例或特定特徵的分佈情形。也就是:

p(examples)

非監督式學習模型屬於生成式 AI。

判別模型之間的對比。

產生器

生成對抗網路中的子系統,可建立新的範例

判別式模型之間的對比。

Gini 心靈純粹

#df

類似的指標。分割器會使用衍生自 Gini 虛設或熵的值,組合用於分類決策樹狀圖條件。「資訊利益衍生自熵。 針對由 gini 錯誤衍生的指標,並沒有普遍接受的對等字詞;然而,這個未命名的指標就和資訊增益一樣重要。

吉尼定向也稱為「gini 索引」或直接稱為 gini

Golden 資料集

一組手動收錄的資料,用於擷取實際資料。團隊可以使用一或多個黃金資料集來評估模型的品質。

一些黃金資料集可擷取不同的基本資料子網域,例如,用於圖片分類的黃金資料集可能會擷取照明條件和圖片解析度。

GPT (生成式預先訓練的 Transformer)

#language

OpenAI 開發的一系列以 Transformer 為基礎的大型語言模型

GPT 變化版本可套用到多種模式,包括:

  • 產生圖片 (例如 ImageGPT)
  • 產生文字轉圖片 (例如 DALL-E)。

gradient

所有自變數的部分導數向量。在機器學習中,梯度是模型函數部分導數的向量。漸層點的方向為最陡峭的方向。

梯度累計

一種「反向傳播」技術,可「每個週期」更新參數「每個週期一次」,而非每次疊代一次。處理每個迷你批次後,梯度累計功能只會更新漸層的總和。接著,處理訓練週期中的最後一個小批次後,系統會最後根據所有漸層變更的總數更新參數。

如果批次大小與用於訓練的可用記憶體容量差異非常大,梯度累計就相當實用。記憶體有問題時,自然傾向減少批次大小。不過,減少一般反向傳播中的批次大小會增加參數更新的數量。梯度累計可讓模型避免記憶體問題,同時提升訓練效率。

增強 (決策) 樹 (GBT)

#df

一種決策樹,其中:

梯度強化

#df

訓練演算法時,系統會將低強度模型經過訓練,以反覆的方式改善高強度模型的品質 (減少損失)。舉例來說,弱模型可以是線性或小型決策樹模型。成效良好的模型會成為先前訓練過的所有弱模型總和。

在最簡單的梯度增強形式中,每次疊代時,系統都會訓練低強度模型來預測強大模型的損失梯度。接著,透過減去預測的梯度 (類似梯度下降法),更新高強度模型的輸出內容。

$$F_{0} = 0$$ $$F_{i+1} = F_i - \xi f_i $$

其中:

  • $F_{0}$ 是啟動的強效模式。
  • $F_{i+1}$ 是下一個強大的模型。
  • $F_{i}$ 是目前運作強的模型。
  • $\xi$ 是介於 0.0 和 1.0 之間的值,稱為「shrinkage,與梯度下降法中的學習率相似。
  • $f_{i}$ 是經過訓練且預測 $F_{i}$ 損失梯度的弱模型。

現代的梯度增強變化也包括運算損失的第二個衍生詞 (黑森語)。

決策樹狀圖 在梯度提升中最常用來當做弱勢模型。請參閱梯度強化 (決策) 樹狀結構

漸層裁剪

#seq

這個常用機制可在使用梯度下降法訓練模型時,透過人為方式限制 (裁剪) 漸層最大值,藉此減緩爆炸漸層問題

梯度下降法

#fundamentals

盡可能減少損失的數學技巧。梯度下降法會疊代調整權重偏誤,並逐步找出最佳組合,盡可能減少損失。

梯度下降法比機器學習更古老,更年紀更大。

圖表

#TensorFlow

TensorFlow 的運算規格圖表中的節點代表作業。邊緣會引導方向,代表將運算結果 (Tensor) 做為運算元傳遞至另一項作業。使用 TensorBoard 以圖表呈現圖表。

Graph Execution

#TensorFlow

TensorFlow 程式設計環境,程式會先建構圖形,然後執行該圖表的所有或部分。圖表執行是 TensorFlow 1.x 的預設執行模式。

此為與eager Execution 的對比。

貪婪政策

#rl

在增強學習中,應一律選擇預期「報酬」最高的動作的政策

基準真相

#fundamentals

Reality (實境秀)。

實際上發生的情況。

舉例來說,假設有二元分類模型,以預測進大學第一年的學生會在六年內畢業。此模型的真值在於學生是否在六年內實際畢業。

團體歸因偏誤

#fairness

假設個人的正確性,對該群組中的每個人也會如此。如果使用方便取樣收集資料,群組歸因偏誤會造成的影響可能會加劇。在非代表性的樣本中,作者可能會無法反映真實情況。

另請參閱「外群組同質性偏誤」「群組內偏誤」

H

幻覺

#language

透過生成式 AI 模型產生看似合理,但事實卻不正確的輸出內容,但用意是假裝對真實世界的斷言。舉例來說,生成式 AI 模型宣稱巴拉克歐巴馬在 1865 年已死亡

雜湊

在機器學習中,一種用於分類類別資料的機制,尤其是在類別數量龐大的情況下,但資料集內實際出現的類別數量相對較小。

舉例來說,地球裡有大約 73,000 種樹木。您可以在 73,000 個不同的類別值區中分別代表 73,000 種樹種。或者,如果資料集中實際只出現 200 種這類樹種,您可以使用雜湊將樹種分割為 500 個值區。

單一值區中可包含多個樹種。舉例來說,雜湊可以將「baobab」和「紅色 maple」(兩個基因不相似的資料) 放在同一個值區內。無論如何,雜湊處理仍是將大型類別集對應至所選值區數量的好方法。雜湊會以確定的方式將值分組,將具有大量可能值的類別特徵轉換成少量值。

經驗法則

輕鬆迅速地實作解決方案。例如:「透過經驗法則,我們的準確率達到 86%。當我們改用深層類神經網路時 準確率最高可達 98%」

隱藏層

#fundamentals

位於輸入層 (特徵) 和「輸出層」 (預測) 之間的類神經網路層。每個隱藏層包含一或多個「神經元」。舉例來說,以下類神經網路包含兩個隱藏層,第一個有三個神經元,第二個有兩個神經元:

四層第一層是包含兩個地圖項目的輸入層。第二層是隱藏層,含有三個神經元第三層是包含兩個神經元的隱藏層。第四層是輸出層每個地圖項目都有三個邊緣,每個邊緣分別指向第二層的不同神經元。第二層中的每個神經元都包含兩條邊緣,每個邊緣會指向第三層中的不同神經元。第三層中的每個神經元都包含一個邊緣,每個神經元都指向輸出層。

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

階層分群

#clustering

建立叢集樹狀結構的「分群」演算法類別。階層分群非常適合用於階層資料,例如植物分類。階層分群演算法有兩種:

  • 匯總分群會先將每個範例指派給自己的叢集,然後反覆地合併最近的叢集來建立階層樹狀結構。
  • 多元化分群會先將所有範例分為一個叢集,然後再逐步將叢集分為階層式樹狀結構。

這是與以群集為基礎的分群法之間的對比。

轉軸損失

這個 loss 函式系列用於分類,可在每個訓練範例中以最遠處找出決策界線,因此會盡可能提高範例和界線之間的邊界。KSVM 會使用轉軸損失 (或相關函式,例如方形轉軸損失)。針對二元分類,轉軸損失函式的定義如下:

$$\text{loss} = \text{max}(0, 1 - (y * y'))$$

其中 y 是真實標籤 (-1 或 +1),y' 是分類器模型的原始輸出內容:

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

因此,轉軸損失與 (y * y) 的比較圖如下:

由兩個相連線段組成的笛卡兒圖。第一線段的開始時間為 (-3, 4),結束於 (1, 0)。第二行區段從 (1, 0) 開始,並以 0 的斜率無限期持續下去。

歷史偏誤

#fairness

已經存在於世界中的一種「偏誤」,並已進入資料集。這些偏見往往會反映現有的文化刻板印象、客層不等性,以及對特定社會群體的偏見。

舉例來說,假設有一個分類模型能預測貸款申請者是否預設會借貸,此模型是根據兩個不同社區中 1980 年代當地銀行提供的歷來貸款預設資料訓練而成。如果過往社群 A 申請者的貸款金額,比社群 B 申請者的可能性高出 6 倍,此模型可能會學習歷來偏誤,進而降低模型核准社群 A 貸款的可能性,即使造成該社區預設利率較高的歷史條件已失去相關性亦然。

保留資料

訓練期間未刻意使用 (「留出」) 的例子驗證資料集測試資料集是保留資料的例子。保留資料可協助評估模型對資料一般化能力 (用於訓練時使用的資料除外) 的能力。保留集的損失將比訓練集的損失更準確地估計在隱形資料集上的損失。

主辦方

#TensorFlow
#GoogleCloud

加速器晶片 (GPU 或 TPU) 上訓練機器學習模型時,系統是控制以下兩者的系統部分:

  • 程式碼的整體流程。
  • 輸入管道的擷取和轉換。

主機通常在 CPU 上執行,而非加速晶片;裝置會操控加速器晶片上的「張量」

超參數

#fundamentals

您或超參數調整服務的變數,會在連續執行模型訓練模型期間進行調整。舉例來說,學習率是一種超參數。在一個訓練課程開始前,您可以將學習率設為 0.01。如果您認為 0.01 過高,可以將下一個訓練課程的學習率設為 0.003。

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

超平面

分隔空格至兩個子空間的界線。舉例來說,線條是 2 個維度的超平面,而平面是三個維度的超平面。更常見的做法是以機器學習來區隔高維度空間的邊界。核心支援向量機器會使用超棒,將正類別與負類別分開,通常在非常高的空間中。

I

例如

獨立且相同分佈的縮寫。

圖片辨識

#image

用於分類圖片中物件、模式或概念的程序。圖片辨識也稱為「圖片分類」

詳情請參閱 ML Practicum:圖片分類一文。

不平衡的資料集

類別不平衡資料集的同義詞。

隱性偏誤

#fairness

根據自己的思想模型和記憶,自動建立關聯或假設。隱性偏誤會影響下列項目:

  • 資料的收集和分類方式。
  • 機器學習系統的設計及開發方式。

舉例來說,在建構用於識別婚禮相片的分類器時,工程師可能會使用相片中呈現白色洋裝的特徵。然而,白色洋裝只在特定時代和某些文化中定向。

另請參閱「確認偏誤

插補

值計算的簡短格式。

公平性指標的相容性

#fairness

某些公平性的概念彼此互不相容,無法同時滿足。因此,沒有任何一個通用指標可量化公平性,可適用於所有機器學習問題。

儘管這可能不是人所樂見,但公平性指標並不代表一切都十分順利。相反地,它表示必須針對特定機器學習問題,以情境方式定義公平性,目標是防止對其用途造成特定傷害。

如需關於此主題的詳細討論,請參閱「有關公平性」的說明。

情境學習

#language
#生成式 AI

少量樣本提示的同義詞。

獨立且相同分佈 (i.d)

#fundamentals

取自不會變更的分佈資料,且每個繪製值都不是依據先前已繪製的值計算。i.i.d. 是機器學習的理想氣體,這是一種實用的數學結構,但幾乎從未在現實世界中找到。舉例來說,網頁的訪客在短時間內的分佈情形可能是 i.i.d。也就是說,訪客在短暫的時間範圍內不會改變,使用者造訪通常也無關緊要。但是,如果您延長這段時間,網頁訪客就會看到季節性差異。

另請參閱 nonstationarity

個人公平性

#fairness

可檢查類似人士是否以類似方式分類的公平性指標。例如,Brobdingnagian Academy 會希望確保兩名成績相同與標準化測驗分數的學生都相等,能夠滿足個人的公平性。

請注意,個人公平性完全取決於您對「相似性」的定義 (在此例中為成績及測驗分數),如果相似度指標缺少重要資訊 (例如學生課程的嚴謹),您就會面臨新的公平性問題。

如要進一步探討個人公平性,請參閱「透過品牌認知公平性」一文。

推論

#fundamentals

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

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

推論路徑

#df

決策樹狀圖中,在推論期間,特定範例通往其他條件,就會終止分葉舉例來說,在下列決策樹狀圖中,較深的箭頭顯示具有以下特徵值的範例的推論路徑:

  • x = 7
  • y = 12
  • z = -3

下圖中的推論路徑會經過三個條件,然後到達樹葉 (Zeta)。

包含四個條件和五個葉子的決策樹狀圖。根條件為 (x > 0)。由於答案是「是」,推論路徑會從根目錄到下一個條件 (y > 0)。由於答案是「是」,推論路徑接下來會進入下一個條件 (z > 0)。由於答案是否,推論路徑會前往其端子節點,也就是葉子 (Zeta)。

三個粗箭頭代表推論路徑。

資訊增加

#df

「決策樹」中,節點的與其子項節點的熵總和之間的差距。節點的熵是該節點範例的熵

舉例來說,請考慮使用以下熵值:

  • 父項節點的熵 = 0.6
  • 16 個相關範例 = 1 個子項節點的熵 = 0.2
  • 另一個子項節點的熵含有 24 個相關範例 = 0.1

因此 40% 的範例位於一個子節點,60% 則位於另一個子節點。因此:

  • 子項節點的加權熵總和 = (0.4 * 0.2) + (0.6 * 0.1) = 0.14

因此,這些資訊可提升:

  • 資訊增益 = 父項節點的熵 - 子項節點的加權熵總和
  • 資訊增益 = 0.6 - 0.14 = 0.46

大多數「分割器」都會尋求建立能最大化資訊增益的條件

團體內偏誤

#fairness

向自身群體或自身特徵展現部分特徵。如果測試人員或評分者包含機器學習開發人員的朋友、家人或同事,則群組內偏誤可能會使產品測試或資料集失效。

群組內偏誤是一種群組歸因偏誤。另請參閱「外團體同質性偏誤」。

輸入產生器

將資料載入類神經網路的機制。

輸入產生器可視為負責處理原始資料的元件,再反覆疊代以產生用於訓練、評估和推論的批次。

輸入層

#fundamentals

保存特徵向量「類神經網路」。也就是說,輸入層提供 「訓練」或「推論」範例。例如,下列類神經網路中的輸入層包含兩個特徵:

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

設定條件

#df

決策樹狀圖中,此條件會測試一組項目是否包含某個項目。舉例來說,以下是內插條件:

  house-style in [tudor, colonial, cape]

在推論期間,如果房屋樣式 feature 的值為 tudorcolonialcape,則此條件評估為是。如果房屋樣式地圖項目的值是其他值 (例如 ranch),則這項條件評估結果為「否」。

與測試 one-hot 編碼功能的條件相比,配置條件通常會帶來更有效率的決策樹狀圖。

執行個體

example 的同義詞。

調整教學

#生成式 AI

微調的一種形式,可改善生成式 AI 模型遵循操作說明的能力。調整指示時,需要用一系列指令提示訓練模型,內容通常涵蓋各種任務。接著,經過訓練後的模型通常會針對各種任務產生實用的「零樣本提示」回應。

對照比較:

可解釋性

#fundamentals

以淺顯易懂的術語解釋或呈現機器學習「模型」的理由。

例如,大部分的線性迴歸模型都是容易解讀的。(您只需查看每個特徵的訓練權重)。決策樹也非常容易理解。但部分模型需要精密的視覺化功能才能解釋。

您可以使用學習可解釋性工具 (LIT) 來解讀機器學習模型。

跨評分者協議

評估評估人員在執行工作時同意的頻率。如果評估人員不同意,可能需要調整工作操作說明。有時也稱為「跨註解者協議」或「跨評分者可靠性」。另請參閱 Cohen 的 Kaappa,這是最常見的跨評分器協議測量方法之一。

交集 (IoU)

#image

兩個集合的交集除以聯集。在機器學習圖片偵測工作中,IoU 是用來測量模型與實際資料定界框相關的預測定界框準確度。在此情況下,兩個方塊的 IoU 是指重疊區域與總區域之間的比率,而且其值介於 0 (預測定界框與真值定界框之間) 到 1 (預測定界框與真值定界框的座標完全相同) 之間。

如下圖所示:

  • 預測的定界框 (此座標代表了模型預測繪畫中夜間表位置的座標) 會以紫色顯示。
  • 真值定界框 (用來限制畫作中夜桌的實際位置的座標) 會以綠色外框描繪。

梵谷正在為阿里斯的文森臥室繪畫,床邊的夜桌周圍有兩個不同的定界框。真值定界框 (綠色) 完全環繞著夜晚桌子。預測出的定界框 (紫色) 會向下偏移 50%,位於真值定界框的右側;包住夜間資料表的右下方四分之一,但遺漏了表格的其餘部分。

在本例中,用於預測和真值的定界框交集 (左下方) 為 1,預測的定界框聯集 (右下方) 為 7,因此 IoU 為 \(\frac{1}{7}\)。

與上述圖片相同,但每個定界框分成四個象限。總共有七個象限,因為真值定界框的右下方象限,以及預測定界框的左上方象限彼此重疊。這個重疊部分 (以綠色醒目顯示) 代表交集,且面積為 1。 與上述圖片相同,但每個定界框分成四個象限。這裡總共有七個象限,因為真值定界框的右下方象限,以及預測定界框的左上方象限彼此重疊。內部定界框 (以綠色醒目顯示) 包住的整個內部,代表聯集,面積為 7。

IoU

聯集交集的縮寫,

項目矩陣

#recsystems

推薦系統中,由矩陣分解產生的嵌入向量矩陣,其中包含每個項目的潛在信號。項目矩陣的每一列都包含所有項目的單一潛在特徵值。以電影推薦系統為例,項目矩陣中的每個欄都代表一部電影。潛在信號可能代表類型,或較難以理解涉及類型、星星、電影年齡或其他因素的複雜互動信號。

項目矩陣的欄數與正在因式分解的目標矩陣相同。舉例來說,假設某個電影推薦系統可評估 10,000 個電影標題,項目矩陣會有 10,000 個欄。

items

#recsystems

「建議系統」中,系統建議的實體。舉例來說,影片是影片商店推薦的項目,書籍則是書店推薦的項目。

疊代

#fundamentals

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

訓練類神經網路時,單一疊代涉及以下兩項傳遞:

  1. 評估單一批次損失的正向通道。
  2. 反向傳遞 (反向傳播),根據損失和學習率調整模型參數。

J

JAX

陣列運算程式庫,結合了 XLA (Accelerated Linear Algebra) 及自動差異化,以進行高效能數值運算。JAX 提供簡單強大的 API,可透過可組合轉換編寫加速數值程式碼。JAX 提供以下功能:

  • grad (自動微分)
  • jit (及時編譯)
  • vmap (自動向量或批次處理)
  • pmap (平行處理)

JAX 是一種語言,用於向 Python 的 NumPy 程式庫表示及組合數字代碼 (類似但範圍更大) 的轉換。(事實上,JAX 下的 .numpy 程式庫功能相等,但完全重寫版本的 Python NumPy 程式庫)。

JAX 特別適合用來加快許多機器學習工作,方法是將模型和資料轉換為可用於跨 GPU 和 TPU 加速器晶片的平行處理格式。

FlaxOptaxPax 和其他許多程式庫是以 JAX 基礎架構建構而成。

K

Keras

熱門的 Python 機器學習 API。 Keras 執行於數個深度學習架構,包括 TensorFlow,在 TensorFlow 中以 tf.keras 形式提供。

核心支援向量機 (KSVM)

這個分類演算法會將輸入資料向量對應至更維度的空間,藉此盡可能提高「負向」「負類」之間的邊界。例如,假設有一個分類問題,輸入資料集具有數百個特徵。為了盡可能最大化正負類別之間的邊界,KSVM 可在內部將這些特徵對應至百萬維度空間。KSVM 使用稱為「轉軸損失」的損失函式。

關鍵點

#image

圖片中特定地圖項目的座標。舉例來說,對於區分花朵品種的圖片辨識模型,關鍵點可能是每個寵物、莖、葉子等的中心。

k-fold 交叉驗證

這個演算法用於預測模型對新資料「一般化」的能力。在 k 折疊位置中,k 是指將資料集範例劃分為多少個相同的群組數量,也就是訓練及測試模型 k 次。在每個循環訓練和測試中,測試集都是不同的群組,其餘的所有群組都會成為訓練集。經過 K 回合的訓練和測試作業後,您可以計算所選測試指標的平均值和標準差。

舉例來說,假設您的資料集包含 120 個範例。接著假設您決定將 k 設為 4。因此,在隨機排列範例後,您將資料集分成 4 個相等的 30 個範例群組,然後進行四個訓練/測試回合:

將資料集分成四組相同的範例。在第 1 輪中,前三個群組用於訓練,最後一個群組則用於測試。在第 2 輪中,前兩個群組和最後一個群組用於訓練,第三個群組用於測試。在第 3 輪中,第一個群組和最後兩個群組用於訓練,第二個群組用於測試。在第 4 輪中,第一個群組用於測試,最後三個群組用於訓練。

例如,平均平方誤差 (MSE) 是對線性迴歸模型而言最有意義的指標。因此,您會在四個回合中得到 MSE 的平均值和標準差。

k-means

#clustering

熱門的「分群法」演算法,將非監督式學習中的範例分組。k-means 演算法基本上會執行以下作業:

  • 疊代判斷最佳的 k 中心點 (又稱為「質心」)。
  • 將每個範例指派給最近的中心集。最靠近相同群集中心的範例屬於同一群組。

k-means 演算法會挑選群集中心位置,盡量減少從每個樣本到其最近群集的累積平方

舉例來說,假設下圖顯示犬隻高度到狗的寬度:

包含幾十個資料點的笛卡兒圖。

如果 k=3,k-means 演算法就會判斷三個質量。每個範例都會指派至最接近的中心點,進而產生三個群組:

與上例相同的笛卡兒圖,但新增了三個質心。先前的資料點會分成三個不同的群組,每個群組都代表最接近特定群集的資料點。

假設製造商想判斷適用於狗的理想尺寸,例如中小、中、大毛衣。三個中心點可識別該叢集中每隻狗狗的平均高度和平均寬度。所以製造商應該使用這 3 個中心基調來生產毛衣請注意,叢集的質心通常「不是」叢集中的範例。

上圖顯示只有兩個地圖項目 (高度和寬度) 的範例 k-means。請注意,k-means 可將許多特徵中的範例分組。

k 中位數

#clustering

叢集演算法與 k-means 密切相關,兩者的實際差異如下:

  • 在 k-means 中,群集中心是透過盡量降低質心候選項目與每個範例之間距離的「平方」總和。
  • 在 k-median 中,中心會透過盡量減少質心候選候選項目與每個樣本之間的距離總和來決定。

請注意,距離的定義也不同:

  • k-means 的計算依據是從質心到範例的歐幾里德距離。(在兩個維度中,歐幾裡度距離是指使用畢氏定理來計算斜邊)。例如,(2,2) 和 (5,-2) 之間的 k-means 距離會是:
$$ {\text{Euclidean distance}} = {\sqrt {(2-5)^2 + (2--2)^2}} = 5 $$
  • k-median 的評估依據是來自中心點的 Manhattan 距離。這個距離是各維度絕對差異值的總和。例如,(2,2) 和 (5,-2) 之間的 k-中位數距離為:
$$ {\text{Manhattan distance}} = \lvert 2-5 \rvert + \lvert 2--2 \rvert = 7 $$

L

L0 正則化

#fundamentals

正規化類型,可對模型中非零權重總數進行處分。舉例來說,相較於具有 10 個非零權重的類似模型,模型在權重為 11 的情況下會遭到懲罰。

L0 正則化有時也稱為 L0-norm 正則化

L1 損失

#fundamentals

這個「損失函式」會計算實際 label 值與「模型」預測值之間的差異絕對值。例如,以下計算了五個範例批次的 L1 損失:

範例的實際值 模型的預測值 差異遷移的絕對值
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 正則化之間的對比。

L2 損失

#fundamentals

這個損失函式:計算實際 label 值與模型預測值之間的差異平方值。例如,以下計算了五個範例批次的 L2 損失:

範例的實際值 模型的預測值 差異平方
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。「平方損失」是 L2 損失的另一個名稱。

L2 正則化

#fundamentals

一種正則化,會根據權重的平方總和,按比例降低權重L2 正則化有助於將離群值權重 (高正或負值的權重) 提高至更接近 0,但不完全等於 0。值非常接近 0 的特徵會保留在模型中,但對模型的預測結果幾乎沒有影響。

L2 正則化一律會改善線性模型中的一般化功能。

L1 正則化之間的對比。

標籤

#fundamentals

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

每個「已加上標籤的範例都包含一或多個「功能」和一個標籤。例如,在垃圾內容偵測資料集中,標籤可能是「垃圾內容」或「非垃圾內容」。在降雨資料集中,標籤可能是特定時段的降雨量。

有標籤樣本

#fundamentals

包含一或多個「地圖項目」和一個標籤的範例。例如,下表顯示房屋評估模型的三個已加上標籤的範例,每個樣本都有 3 個特徵和一個標籤:

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

監督式機器學習中,模型會以有標籤的樣本進行訓練,並根據未加上標籤的範例進行預測。

與有標籤的範例對比未加標籤的範例。

標籤外洩

模型設計瑕疵,其中「功能」「標籤」的 Proxy。舉例來說,假設採用「二元分類」模型,以預測潛在客戶是否會購買特定產品。假設模型的其中一個特徵是名為 SpokeToCustomerAgent 的布林值。另外,假設只有在潛在客戶實際購買產品「之後」,才指派客戶服務專員。在訓練期間,模型會快速瞭解 SpokeToCustomerAgent 與標籤之間的關聯。

lambda

#fundamentals

正規化率的同義詞。

Lambda 是一種超載現象。以下將著重說明字詞的定義在正規化中的定義。

LaMDA (對話應用程式的語言模型)

#language

Transformer 為基礎的大型語言模型,由 Google 開發,以大型對話資料集訓練而成,可產生逼真的對話回應。

LaMDA:我們的突破性對話技術提供總覽。

地標

#image

鍵點的同義詞。

語言模型

#language

這個model會估算「權杖」model或一系列符記序列中發生的符記的機率。

大型語言模型

#language

沒有嚴格定義的非正式字詞,通常是指含有大量參數語言模型。部分大型語言模型包含超過 1,000 億個參數。

潛在空間

#language

嵌入空間的同義詞。

圖層

#fundamentals

「類神經網路」中的一組「神經元」。以下為三種常見的圖層類型:

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

類神經網路,有一個輸入層、兩個隱藏層和一個輸出層。輸入層包含兩個地圖項目。第一個隱藏層包含三個神經元,第二個隱藏層包含兩個神經元。輸出層由單一節點組成。

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

Layers API (tf.layers)

#TensorFlow

使用 TensorFlow API 以圖層組合的形式建構深層類神經網路。Layers API 可讓您建構不同類型的圖層,例如:

  • tf.layers.Dense 適用於完整連結層
  • tf.layers.Conv2D 代表卷積層。

Layers API 遵循 Keras 層 API 慣例。也就是說,除了不同的前置字串,Layers API 中的所有函式都會與 Keras 層 API 中對應的名稱和簽章相同。

葉子

#df

決策樹狀結構中的任何端點。與條件不同,分葉不會執行測試。樹葉是可能的預測結果。葉子也是推論路徑的終端機節點

舉例來說,以下決策樹狀圖含有三個葉子:

包含兩個條件導致三個葉子的決策樹。

學習可解釋性工具 (LIT)

視覺化的互動式模型理解能力和資料視覺化工具。

您可以使用開放原始碼的 LIT解讀模型,或是以視覺化方式呈現文字、圖片和資料表資料。

學習率

#fundamentals

這個浮點數會指示梯度下降法演算法在每次疊代時調整權重和偏誤的強度。舉例來說,學習率為 0.3 時,調整權重和偏誤的效果比學習率 0.1 高出三倍。

學習率是一項關鍵超參數,如果設定的學習率過低,訓練時間就會過長。如果您將學習率設為過高,梯度下降法通常會無法達到收斂

最小平方迴歸

透過盡量減少 L2 損失進行訓練的線性迴歸模型。

線性

#fundamentals

兩個以上變數之間的關聯,可透過加法和乘法表示。

線性關係圖為一條線。

對比非線性

線性模型

#fundamentals

這個model會為每個model指派一個model,以便進行model。(線性模型也包含偏誤)。相對地,特徵與深度模型中的預測關係通常為「非線性」

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

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

線性迴歸

#fundamentals

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

  • 模型為「線性模型
  • 預測為浮點值。(此為線性迴歸迴歸部分)。

使用邏輯迴歸對線性迴歸的對比。此外,迴歸與分類的差別在於

精簡

學習可解釋性工具 (LIT) 的縮寫,這項工具先前稱為「語言可解釋性工具」。

LLM

#language

大型語言模型的縮寫。

邏輯迴歸

#fundamentals

一種預測機率的迴歸模型。 邏輯迴歸模型具有以下特性:

  • 標籤為類別。邏輯迴歸一詞通常是指「二元邏輯迴歸」,也就是為具有兩個可能值的標籤計算機率的模型。較不常見的變體「多項式邏輯迴歸」會計算具有超過兩個可能值的標籤機率。
  • 訓練期間的損失函式為 Log Loss (記錄損失)。(如果標籤具有超過兩個可能的值,則可同時放置多個記錄損失單位)。
  • 此模型採用線性架構,而非深層類神經網路。 不過,此定義的其餘部分也適用於預測類別標籤機率的深度模型

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

  • 電子郵件被歸類為垃圾郵件的機率為 72%。
  • 電子郵件遭非垃圾郵件的機率為 28%。

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

  1. 模型透過套用輸入特徵的線性函式來產生原始預測 (y)。
  2. 模型會使用原始預測結果做為「S 函數」的輸入,將原始預測結果轉換為介於 0 至 1 之間的值 (不含 0 和 1)。

如同任何迴歸模型,邏輯迴歸模型也會預測數字。不過,這個數字通常會成為二元分類模型的一部分,如下所示:

  • 如果預測數字「大於」分類門檻,二元分類模型會預測正類。
  • 如果預測數字「少於」分類門檻,二元分類模型會預測負類。

Logits

分類模型產生的原始 (非正規化) 預測向量,通常接著會傳遞至正規化函式。如果模型可以解決多類別分類問題,Logits 通常會成為 softmax 函式的輸入內容。接著,softmax 函式會產生 (正規化) 機率的向量,並為每個可能的類別產生一個值。

對數損失

#fundamentals

用於二元邏輯迴歸損失函式

對數勝數

#fundamentals

某些事件發生機率的對數。

長短期記憶 (LSTM)

#seq

循環類神經網路中的一種儲存格類型,用於處理應用程式中的一系列資料,例如手寫辨識、機器翻譯和圖片說明文字。LSTM 會根據 RNN 中前一個儲存格的新輸入內容和背景資訊,在內部記憶體狀態中保留記錄,藉此解決訓練 RNN 造成的消除梯度問題

LoRA

#language
#生成式 AI

低排名的適應性」的縮寫。

損失

#fundamentals

受監督模型「訓練」期間,用於測量模型預測結果與其標籤之間的距離。

損失函式會計算損失。

損失集結網站

一種機器學習演算法,可結合多個模型的預測結果,並使用這些預測進行單一預測,以改善模型成效。因此,損失匯總器可以減少預測結果的變異數,並提高預測的準確度

損失曲線

#fundamentals

損失圖,做為訓練「疊代」數量的函式。下圖顯示典型的損失曲線:

笛卡兒的損失與訓練疊代圖,顯示初始疊代的損失快速下滑,接著是逐漸下降,最終疊代期間則平緩下降。

損失曲線可協助您判斷模型處於融合過度配適的時機。

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

另請參閱一般化曲線

損失函式

#fundamentals

「訓練」或測試期間,這是根據批次計算損失的數學函式。相較於製作錯誤預測的模型,損失函式會傳回對模型具有良好預測的損失。

訓練的目標通常是盡量減少損失函式傳回的損失。

現在有許多不同類型的損失函式。請針對要建構的模型種類挑選適當的損失函式。例如:

損失表面

權重與損失的比較圖。梯度下降:用於找出損失表面達到當地最小值的權重。

低排名適應性 (LoRA)

#language
#生成式 AI

用於執行參數效率調整的演算法,僅微調大型語言模型參數的一部分。LoRA 具有以下優點:

  • 比起需要微調模型「所有」參數的技術,微調的速度更快。
  • 降低經過微調的模型中的推論運算成本。

使用 LoRA 調整的模型會維持或改善預測品質。

LoRA 支援模型的多個特殊版本。

LSTM

#seq

長短期記憶的縮寫,

M

機器學習

#fundamentals

從輸入資料中「訓練」模型的程式或系統。已訓練模型,可利用與訓練模型相同的分佈資料 (擷取前未曾見過的) 資料進行有用的預測。

機器學習是指研究相關計畫 或系統的相關研究領域

多數類別

#fundamentals

class-imbalanced 資料集中較常見的標籤。舉例來說,假設資料集中包含 99% 的負數標籤和 1% 正面標籤,負數標籤即為主要類別。

對比次要類別

馬可夫決策流程 (MDP)

#rl

這張圖表代表決策模型,其中決策 (或「動作」) 曾假設有馬可夫屬性保留的一系列狀態。在強化學習中,這些狀態之間的轉換會傳回數值獎勵

馬可夫屬性

#rl

某些環境的屬性,狀態轉換完全取決於目前狀態中隱含的資訊以及代理程式的動作

遮蓋的語言模型

#language

一種語言模型,可預測候選符記在序列中填入空白的可能性。舉例來說,遮蓋的語言模型可以計算候選字詞的機率,藉此取代以下語句中的底線:

帽子的 ____ 回來了。

這類文獻通常會使用「MASK」字串,而非底線。例如:

帽子的「MASK」回來了。

大多數新型遮蓋語言模型為「雙向」

matplotlib

開放原始碼 Python 2D 繪圖程式庫。matpaintlib 能以視覺化方式呈現機器學習的不同面向。

矩陣分解

#recsystems

在數學中,一種尋找矩陣的機制,其點積值與目標矩陣差不多。

推薦系統中,目標矩陣經常會保留使用者的項目評分。例如,電影推薦系統的目標矩陣可能如下所示,其中正整數代表使用者評分,0 代表使用者未對電影評分:

  卡薩布蘭加 費城的故事 黑豹 神力女超人 閃爍小說
使用者 1 5.0 3.0 0.0 2.0 0.0
使用者 2 4.0 0.0 0.0 1.0 5.0
使用者 3 3.0 1.0 4.0 5.0 0.0

電影推薦系統旨在預測未分級電影的使用者評分。例如,使用者 1 是否會像「Black Panther」一樣?

推薦系統的一種做法是使用矩陣分解來產生以下兩個矩陣:

例如,對三位使用者使用矩陣分解,這五個項目可能產生下列使用者矩陣和項目矩陣:

User Matrix                 Item Matrix

1.1   2.3           0.9   0.2   1.4    2.0   1.2
0.6   2.0           1.7   1.2   1.2   -0.1   2.1
2.5   0.5

使用者矩陣與項目矩陣的內積可產生推薦矩陣,此矩陣不僅包含原始使用者評分,還會針對每位使用者未看過的電影預測結果。舉例來說,假設使用者 1 的《Casablanca》評分是 5.0。與推薦矩陣中該儲存格對應的點積點應該約為 5.0 左右,如下所示:

(1.1 * 0.9) + (2.3 * 1.7) = 4.9

更重要的是,使用者 1 是否會像「Black Panther」?如果取得與第一列對應的內積,第三欄則會產生 4.3 的預測評分:

(1.1 * 1.4) + (2.3 * 1.2) = 4.3

矩陣分解通常會產生使用者矩陣與項目矩陣,而兩者相加,比目標矩陣更精簡。

平均絕對誤差 (MAE)

使用 L1 損失時的每個示例的平均損失。計算平均絕對誤差的方式如下:

  1. 計算批次的 L1 損失。
  2. 將 L1 損失除以批次中的樣本數。

舉例來說,假設計算下列五個範例的 L1 損失:

範例的實際值 模型的預測值 損失 (實際和預測之間的差異)
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 損失

因此,L1 損失為 8,樣本數為 5。因此,平均絕對誤差如下:

Mean Absolute Error = L1 loss / Number of Examples
Mean Absolute Error = 8/5 = 1.6

對比平均絕對誤差與均方平方錯誤均方根誤差的對比。

均方誤差 (MSE)

使用 L2 損失時的每個示例的平均損失。計算均方誤差如下:

  1. 計算批次的 L2 損失。
  2. 將 L2 損失除以批次中的樣本數。

舉例來說,請試想下列五個範例的損失:

實際值 模型的預測 損失 平方損失
7 6 1 1
5 4 1 1
8 11 3 9
4 6 2 4
9 8 1 1
16 = L2 損失

因此,均方誤差為:

Mean Squared Error = L2 loss / Number of Examples
Mean Squared Error = 16/5 = 3.2

平均平方誤差是熱門的訓練最佳化工具,尤其是針對線性迴歸

對比均方誤差與平均絕對誤差均方根誤差的對比。

TensorFlow Playground 會使用均方誤差計算損失值。

網格

#TensorFlow
#GoogleCloud

在機器學習平行程式設計中,一個字詞與將資料和模型指派給 TPU 晶片,並定義這些值的資料分割或複製方式。

網格是一種超載字詞,可能代表以下任一種情況:

  • TPU 晶片的實體版面配置。
  • 用於將資料和模型對應至 TPU 晶片的抽象邏輯結構。

不論是哪一種情況,網格都會指定為形狀

中繼學習

#language

這是一種機器學習組合,能夠探索或改善學習演算法。中繼學習系統也可以著重在訓練模型,藉由少量資料或先前工作所獲得的經驗,快速學習新工作。中繼學習演算法通常會嘗試達成下列目標:

  • 改善或學習手動工程的功能 (例如初始化器或最佳化器)。
  • 提高資料成本效益和運算效率。
  • 改善一般化功能。

中繼學習與少量樣本學習有關。

指標

#TensorFlow

您關心的統計資料。

目標是機器學習系統嘗試進行最佳化的指標。

Metrics API (tf.metrics)

用來評估模型的 TensorFlow API。舉例來說,tf.metrics.accuracy 會決定模型預測比對標籤的頻率。

小批

#fundamentals

隨機選取一小部分批次中處理的批次部分。小批次的「批次大小」通常介於 10 至 1,000 個範例之間。

舉例來說,假設整個訓練集 (完整批次) 含有 1,000 個範例。另假設您將每個迷你批次的「批次大小」設為 20。因此,每次疊代判斷從 1,000 個樣本中隨機 20 個樣本得出的損失,並據此調整權重偏誤

計算小批次損失的損失,會比整批次中所有範例的損失更有效率。

小批次隨機梯度下降法

使用迷你批次梯度下降法演算法。換句話說,小批次隨機梯度下降法會根據訓練資料的一小部分來估算梯度。一般隨機梯度下降法會使用大小為 1 的迷你批次。

最大損失

生成對抗網路的損失函式,以產生資料與實際資料之間的交叉熵為基礎。

將最小損失值用於第一份論文來描述生成對抗網路。

少數類別

#fundamentals

class-imbalanced 資料集中較不常見的標籤。舉例來說,假設資料集中包含 99% 的負數標籤和 1% 正向標籤,陽性標籤就是少數類別。

對比主要類別

機器學習

機器學習的縮寫,

MNIST

#image

由 LeCun、Cortes 和 Burge 編譯的公開網域資料集,內含 60,000 張圖片,每張圖片都顯示人類如何從 0 到 9 手動撰寫特定數字。每張圖片都會儲存為 28x28 的整數陣列,其中每個整數都是 0 到 255 (含) 之間的灰階值。

MNIST 是機器學習的標準資料集,通常用於測試新的機器學習技術。詳情請參閱 MNIST 手寫數字資料庫

形態

#language

高階資料類別。例如數字、文字、圖片、影片和音訊有五種不同的形式

model

#fundamentals

一般來說,處理輸入資料並傳回輸出內容的任何數學結構。詞組不同,模型是指系統進行預測所需的參數和結構組合。在監督式機器學習中,模型會以範例做為輸入,並推論出預測結果做為輸出內容。在監督式機器學習中,模型會略有不同例如:

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

非監督式機器學習也會產生模型,通常是函式可將輸入範例對應至最合適的叢集

模型容量

模型可以學習的問題複雜度。模型可學習的問題越複雜,模型的容量就越高。模型的容量通常會隨著模型參數的數量增加。如需分類器容量的正式定義,請參閱「VC 維度」。

模型階層式

#生成式 AI

系統會為特定推論查詢選擇理想model

想像一組從非常大 (許多參數) 到更小 (參數更少) 的模型。與小型模型相比,非常大型的模型在推論時耗用更多運算資源。不過,相較於小型模型,非常大型的模型通常推斷出較複雜的要求。模型階層式會決定推論查詢的複雜程度,然後選用適當的模型來執行推論。模型串聯的主要目的是透過一般選取較小的模型來降低推論成本,並且只針對較複雜的查詢選取較大的模型。

假設有一個小型模型在手機上執行,而較大型的模型是在遠端伺服器上運作。良好的模型階層式模型可讓較小的模型處理簡單的要求,並且只呼叫遠端模型來處理複雜的要求,藉此降低成本和延遲時間。

另請參閱「型號路由器」。

模型平行處理

#language

縮放訓練或推論的方式,將不同部分組成不同model的某個model。模型平行處理功能可啟用過大的模型,無法在單一裝置上運作。

如要實作模型平行處理,系統通常會執行下列作業:

  1. 將模型分割 (分割) 為較小的部分。
  2. 將這些小型部分的訓練作業分派至多個處理器。每個處理器都會訓練自己的模型部分。
  3. 合併結果來建立單一模型。

模型平行處理會減慢訓練速度。

另請參閱「資料平行處理」一文。

型號路由器

#生成式 AI

演算法,用於決定modelmodel的理想model。模型路由器本身通常是機器學習模型,能逐步學習如何為指定的輸入內容選擇最佳模型。然而,模型路由器有時可能是較簡單的非機器學習演算法

訓練模型

決定最佳model的程序。

累積熱度

精密的梯度下降法演算法,其中學習步驟不僅取決於目前步驟的導數,還取決於步驟前步驟的導數。動量涉及計算一段時間內梯度的加權移動平均值,類似於物理中的動量。有時氣勢會阻礙 當地小米才能學習

多元分類

#fundamentals

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

  • 伊里斯 (Setosa)
  • 艾里斯 (Iris virginica)
  • 虹彩

以 Iris 資料集訓練而成的模型 (以新樣本預測 Iris 類型),正在執行多類別分類。

相反地,用於區分剛兩個類別的分類問題則是「二進位分類模型。例如,可預測「垃圾郵件」或「非垃圾郵件」的電子郵件模型就是一種二元分類模型。

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

多類別邏輯迴歸

多類別分類問題中使用邏輯迴歸

多頭式自我注意力

#language

自我注意力的擴充功能,會在輸入序列中的每個位置多次套用自我注意力機制。

變形金引進了多頭自我注意力機制。

多模態模型

#language

此模型的輸入和/或輸出包含多個「形態」。舉例來說,假設某個模型同時採用圖片和文字說明文字 (兩個模數) 做為特徵,然後輸出分數,指出文字說明文字適合圖片的程度。因此,這個模型的輸入內容為多模態,輸出結果則為單模態。

多式分類

多元分類的同義詞。

多重式迴歸

多類別邏輯迴歸的同義詞。

多工處理

一種機器學習技術,也就是經過訓練的單一model來執行多項model

多工模型是依據不同工作適用的資料訓練建立而成。這可讓模型學習跨工作共用資訊,協助模型更有效地學習。

針對多項任務訓練的模型通常能夠改善一般化能力,在處理不同類型的資料時也更可靠。

N

NaN 陷阱

當模型中的其中一個數字在訓練期間成為 NaN 時,導致模型中的許多或所有其他數字最終會成為 NaN。

小奈是「南特區」的縮寫。

自然語言理解

#language

根據使用者輸入或說話的內容判斷使用者的意圖。例如,搜尋引擎會根據使用者輸入或說話的內容,使用自然語言理解來判定使用者搜尋的內容。

負類

#fundamentals

在「二元分類中,其中一個類別會標示為「陽性」,另一個類別則為「負數」。正類別代表模型正在測試的事物或事件,而負類別是另一種可能性。例如:

  • 醫療檢測中的負類作用可能是「不是腫瘤」。
  • 電子郵件分類器中的負面類別可能是「非垃圾郵件」。

正類別對比。

負取樣

候選人取樣的同義詞。

神經架構搜尋 (NAS)

自動設計類神經網路架構的技術。NAS 演算法可減少訓練類神經網路所需的時間和資源。

NAS 通常會使用:

  • 搜尋空間,是一組可能的架構。
  • 健身功能,可測量特定架構在特定工作上的執行成效。

NAS 演算法通常會從少數可能的架構開始,並在演算法進一步瞭解哪些架構有效時,逐步擴充搜尋空間。健身功能通常以訓練集的架構效能為基礎,演算法通常會使用強化學習技術進行訓練。

經證實,NAS 演算法可有效找出適用於各種工作 (包括圖片分類、文字分類和機器翻譯) 的高效能架構。

輸出內容

#fundamentals

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

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

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

在電腦上實作的類神經網路有時稱為「人工智慧網路」,以便與大腦和其他神經系統中的類神經網路有所區別。

部分類神經網路可模仿不同特徵和標籤之間的極為複雜的非線性關係。

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

神經元

#fundamentals

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

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

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

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

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

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

N 公克

#seq
#language

已排序的 N 個字詞序列。例如「truly madly」是 2 公克。由於順序相關,因此「真的」與「真的生機」是不同的 2 元語法。

N 這類 N-gram 的名稱 示例
2 Biram 或 2 克 外帶、外出、吃午餐、吃晚餐
3 3 公克
4 4 公克

許多自然語言理解模型都使用 N 克來預測使用者會輸入或說出的下一個字詞。例如,假設使用者輸入了三條百葉窗。以三元為基礎的 NLU 模型可能會預測使用者接下來會輸入「mice」

比較 N 克與「詞袋」(未排序的字詞組合)。

自然語言理解

#language

自然語言理解的縮寫。

節點 (決策樹狀圖)

#df

「決策樹狀圖」中,任何條件分葉

包含兩個條件和三個葉子的決策樹。

節點 (類神經網路)

#fundamentals

隱藏層中的神經元

節點 (TensorFlow 圖表)

#TensorFlow

TensorFlow graph 中的運算。

雜訊

大致來說,任何會遮住資料集信號的項目。雜訊可透過多種方式導入資料中。例如:

  • 人工評估人員在加上標籤時出錯,
  • 人類和樂器的記錄錯誤,或是遺漏特徵值。

非二元條件

#df

包含超過兩個可能結果的 條件。例如,以下非二元條件包含三個可能的結果:

觸發三種可能結果的條件 (number_of_legs = ?)。一個結果 (number_of_legs = 8) 會導向名為「蜘蛛」的分葉。第二個結果 (number_of_legs = 4) 會導向名為狗的葉子。第三個結果 (number_of_legs = 2) 會導向名為企鵝的葉子。

非線性

#fundamentals

兩個以上變數之間的關係,且這些變數無法僅透過加法和乘法表示。線性關係可以以線條表示;非線性關係無法以線條表示。舉例來說,假設有兩個模型 每個模型都與單一特徵相關左邊的模型是線性 而右邊模型則是非線性模型

兩個圖。其中一個圖表為線條,因此這是線性關係。另一個圖形為曲線,因此是非線性關係。

無回應偏誤

#fairness

請參閱選取偏誤

非車站

#fundamentals

一項或多個維度的值都會改變的特徵,通常是時間。舉例來說,請考慮以下非車站示例:

  • 特定商店的泳裝數量因季節而異。
  • 在特定地區所採收的特定水果量在一年內大部分都是 0,但有很短的時間。
  • 由於氣候變遷,每年平均溫度正在改變。

stationarity

正規化

#fundamentals

大致來說,將變數的實際值範圍轉換為標準值範圍的過程,例如:

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

舉例來說,假設特定特徵的實際值範圍是 800 至 2,400。在特徵工程過程中,您可以將實際值正規化為標準範圍 (例如 -1 到 +1)。

正規化是「特徵工程」中的常見工作。如果特徵向量中的每個數值特徵大致相同,模型的訓練速度通常都會加快,並產生更準確的預測結果。

新奇偵測

判斷新 (創新) 範例的程序是否來自「訓練集」。換句話說,在訓練集訓練之後,新奇的偵測機制會判斷「新的」範例 (在推論期間或額外訓練期間) 是否為離群值

離群值偵測之間的對比。

數值資料

#fundamentals

特徵:以整數或實值表示。 例如,房屋評估模型可能將房屋的大小 (以平方公尺或平方公尺為單位) 表示為數值資料。以數值資料表示特徵,代表該地圖項目的值與標籤具有數學關係。也就是說,房屋的平方公尺可能與房屋的價值有某種數學關係。

並非所有整數資料都應以數值資料表示。舉例來說,世界上某些地區的郵遞區號是整數,但模型中的整數郵遞區號不應以數值資料表示。這是因為 20000 的郵遞區號不是 10000 的兩倍 (或一半)。此外,雖然不同的郵遞區號確實與不同的房地產值相關,但我們無法假設郵遞區號 20000 的房地產值比郵遞區號 10000 的房地產價值高出兩倍。郵遞區號應改以類別資料表示。

數值特徵有時稱為「連續特徵

NumPy

開放原始碼數學程式庫,讓 Python 使用者能夠有效率地進行陣列作業。pandas 是以 NumPy 為基礎建構而成。

O

目標

演算法要進行最佳化的指標。

目標函式

模型旨在最佳化的數學公式或指標。 例如,線性迴歸的客觀函式通常是平均平方損失。因此,在訓練線性迴歸模型時,訓練旨在盡量減少平均平方損失。

在某些情況下,目標函式是最大化目標函式。舉例來說,如果目標函式是準確率,目標就是盡可能提高準確率。

另請參閱損失

斜率條件

#df

決策樹狀圖中,這個條件包含多項「功能」舉例來說,如果高度和寬度是兩個地圖項目,則以下為斜率條件:

  height > width

該對比與軸對齊的條件

離線

#fundamentals

static 的同義詞。

離線推論

#fundamentals

模型產生一批預測結果,然後快取 (儲存) 這些預測的程序。然後,應用程式可以從快取存取推測的預測結果,而不必重新執行模型。

例如,假設模型每四小時會產生一次本地天氣預報 (預測)。每次執行模型後,系統會快取所有當地天氣預報。天氣應用程式會從快取擷取天氣預報

離線推論也稱為靜態推論

這是與線上推論之間的對比。

one-hot 編碼

#fundamentals

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

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

one-hot 編碼常用來代表具有一組有限可能值的字串或 ID。舉例來說,假設名為 Scandinavia 的特定類別特徵有五個可能的值:

  • 「丹麥」
  • 「瑞典」
  • 「挪威」
  • 「芬蘭」
  • 「冰島」

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

country 向量
「丹麥」 1 0 0 0 0
「瑞典」 0 1 0 0 0
「挪威」 0 0 1 0 0
「芬蘭」 0 0 0 1 0
「冰島」 0 0 0 0 1

借助 one-hot 編碼,模型可根據五個國家/地區學習不同的連線。

數值資料表示特徵是 one-hot 編碼的替代方法。遺憾的是,以數字形式呈現斯堪地那維亞國家/地區並不是理想選擇。例如,請參考以下數字表示法:

  • 「丹麥」為 0
  • 「瑞典」為 1
  • 「挪威」為 2
  • 「芬蘭」問世 3
  • 「冰島」為 4 歲

若為數字編碼,模型會以數學方式解讀原始數字,並試著根據這些數字進行訓練。然而,冰島實際上並不像挪威的兩倍 (或一半),因此模型會做出出奇怪的結論。

單樣本學習

一種機器學習方法,通常用於物件分類,旨在透過單一訓練範例學習有效的分類器。

另請參閱少量樣本學習零樣本學習

單樣本提示

#language
#生成式 AI

提示包含一個範例,示範大型語言模型應如何回應。例如,以下提示含有一個範例,顯示大型語言模型應如何回答查詢。

單一提示組成部分 附註
指定國家/地區的官方貨幣為何? 您希望 LLM 回答的問題。
法國:歐元 其中一個例子。
印度: 實際查詢。

比較並對照下列字詞:單樣本提示

一對多

#fundamentals

如果遇到 N 類別的分類問題,這個解決方案包含 N 個單獨的「二進位檔分類器」,也就是一個二進位檔分類器,用於每個可能的結果。舉例來說,假設某個模型將範例分類為動物、蔬菜或礦物,一對一解決方案會提供下列三個不同的二進位分類器:

  • 動物還是非動物
  • 蔬菜與不吃菜的比較
  • 礦產而非礦石

線上

#fundamentals

動態的同義詞。

線上推論

#fundamentals

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

離線推論相比。

運算 (操作)

#TensorFlow

在 TensorFlow 中,建立、操作或刪除 Tensor 的任何程序都會遭到刪除。例如,矩陣乘法是指取兩個 Tensor 做為輸入,並產生一個 Tensor 做為輸出的運算。

Optax

JAX 的漸層處理和最佳化程式庫。Optax 提供可透過自訂方式重新組合的構成元素,用於最佳化深層類神經網路等參數模型,進而促進研究。其他目標包括:

  • 提供可讀、經完善測試且高效率的核心元件實作。
  • 透過結合低階食材成為自訂最佳化工具 (或其他漸層處理元件),可提升工作效率。
  • 讓任何人都能輕鬆貢獻內容,加速採用新想法。

最佳化器

梯度下降法演算法的特定實作方式。常見的最佳化工具包括:

  • AdaGrad,代表 ADAptive GRADient descent。
  • Adam 代表 ADAptive with Momentum。

外團體同質偏誤

#fairness

在比較態度、值、人格特質和其他特性時,對外群組成員的特徵比群組成員更重要。「群組內」指的是您經常互動的使用者;「out-group」是您不常互動的使用者。建立資料集時,請要求使用者提供與群組外的相關屬性,這些屬性的細微度可能較不精細,且較刻板印象則比參與者向群組成員列出的屬性更緊密。

例如,Lilputians 可能會詳細描述其他 Lilliputians 的房屋,引用了架構風格、窗戶、門和大小的細微差異。然而,相同的 Lilliputians 可能會直接宣告,布魯克丁納犬均位於相同的房屋中。

外群組同質偏誤是一種群組歸因偏誤

另請參閱群組內偏誤

離群值偵測

訓練集中找出離群值的程序。

創新偵測機制的差異。

成效突出的影片

值與多數其他值相距不遠。在機器學習中,以下任一種都是離群值:

  • 輸入資料,其值與平均值相差約 3 個標準差。
  • 絕對值的權重
  • 預測值與實際值相較遠。

例如,假設 widget-price 是特定模型的特徵。假設平均值 widget-price 為 7 歐元,標準差為 1 歐元。由於 widget-price 為 12 歐元或 2 歐元,所以這些價格都與平均值有五個標準差,因此系統會將其視為離群值。

離群值通常是錯字或其他輸入錯誤所致。在其他情況下,離群值並不是錯誤;畢竟,值與平均值相差的五個標準差極少,但很難執行。

離群值常會導致模型訓練發生問題。剪輯是管理離群值的方法之一。

包包外評估 (OOB 評估)

#df

評估決策樹品質的機制,方法是測試每個決策樹與決策樹狀結構訓練期間使用的範例例如,在下圖中,請注意,系統會用大約三分之二的範例來訓練每個決策樹,然後依據其餘範例的三分之一進行評估。

由三棵決策樹組成的決策樹。其中一個決策樹會根據其中三分之二的樣本進行訓練,接著使用另外三分之一進行 OOB 評估。第二種決策樹狀圖使用前三分之二的樣本來訓練,再用三分之一的 OOB 評估與先前的決策樹狀圖。

包量評估是一種運算效率且保守的交叉驗證機制的運算效率。在交叉驗證中,系統會針對每個交叉驗證回合訓練一個模型 (例如,10 個模型是以 10 個折疊的交叉驗證方式進行訓練)。完成 OOB 評估後,系統會訓練單一模型。由於封裝會在訓練期間保留每個樹狀結構的部分資料,因此 OOB 評估功能可以使用該資料來估算交叉驗證。

輸出層

#fundamentals

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

下圖顯示一個擁有輸入層、兩個隱藏層和輸出層的小型深層類神經網路:

類神經網路,有一個輸入層、兩個隱藏層和一個輸出層。輸入層包含兩個地圖項目。第一個隱藏層包含三個神經元,第二個隱藏層包含兩個神經元。輸出層由單一節點組成。

過度配適

#fundamentals

建立與「訓練資料」model相符的model,密切確保模型無法依據新資料正確預測。

正規化可以減少過度配適。大規模且多元的訓練集也可以減少過度配適。

過度取樣

類別不平衡的資料集中重複使用次要類別範例,以建立更平衡的 訓練集

舉例來說,假設有二元分類問題,主要類別與少數類別之間的比率是 5,000:1。如果資料集包含 100 萬個範例,則該資料集只包含大約 200 個少數類別的範例,用於有效訓練的樣本可能過少。為了克服這種缺陷,您可能會多次過度取樣 (重複使用) 200 個範例,這樣可能會產生足夠的範例,可用於進行有用的訓練。

超取樣時,請務必留意過度配適的情況。

低取樣之間的對比。

P

封裝的資料

更有效率地儲存資料的方法。

封裝的資料儲存庫會使用壓縮格式儲存資料,或以其他方式提高資料存取效率。封裝的資料會盡可能減少存取資料所需的記憶體和運算量,藉此加快訓練速度並加快模型推論速度。

封裝的資料通常會與其他技術搭配使用,例如資料擴增正則化,以進一步改善模型的效能。

pandas

#fundamentals

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

參數

#fundamentals

模型在「訓練」期間學習的「權重」和「偏誤」。舉例來說,在線性迴歸模型中,參數會包含偏誤 (b) 和所有權重 (w1w2 等),以此類推:

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

相反地,「超參數」則是「您」 (或超參數轉動服務) 提供給模型的值。舉例來說,學習率是一種超參數。

具參數運用效率的調整作業

#language
#生成式 AI

使用一套技巧「微調」大型預先訓練模型 (PLM),比完整的微調更有效率。有效率地調整參數的參數通常比完整微調要少得多,但通常會產生大型語言模型,此模型也能執行良好 (或幾乎) 微調建構的大型語言模型。

比較及對照具參數運用效率的調整工具:

「高效參數調整」也稱為「參數效率微調」

參數伺服器 (PS)

#TensorFlow

在分散式設定中追蹤模型參數的工作。

參數更新

在訓練期間調整模型參數的作業,通常是在梯度下降法的單一疊代內。

偏導數

這個導數,除了其中一個變數以外,全都視為常數。例如,f(x, y)x 的部分導數是 f 的衍生,會視為單獨的 x 函式 (也就是保留 y 常數)。就 x 而言,f 的部分導數只會著重於 x 變化的方式,並忽略方程式中的所有其他變數。

參與偏見

#fairness

非回應偏誤的同義詞。請參閱選取偏誤

分區策略

變數分配給各參數伺服器的演算法。

帕克斯

專為訓練大規模類神經網路 模型的程式設計架構,可橫跨多個 TPU 加速器晶片 配量Pod

Pax 以 JAX 為基礎建構的 Flax

這張圖表顯示 Pax 在軟體堆疊中的位置。Pax 是以 JAX 為基礎建構而成,Pax 本身包含三個層底層包含 TensorStore 和 Flax。中間層包含 Optax 和 Flaxformer。頂層包含 Praxis Modeling 程式庫。Fiddle 是以 Pax 為建構基礎。

感知

接收一或多個輸入值的系統 (硬體或軟體),會對輸入的加權總和執行函式,然後計算單一輸出值。在機器學習中,函式通常是非線性,例如 ReLUsigmoidtanh。例如,下列感知函式依賴 S 函數處理三個輸入值:

$$f(x_1, x_2, x_3) = \text{sigmoid}(w_1 x_1 + w_2 x_2 + w_3 x_3)$$

在以下插圖中,感知器接受三個輸入內容,每個輸入內容在輸入感知器前是由權重自行修改:

含有 3 個輸入內容的感知孔,會乘以個別權重。感知器會輸出單一值。

感知是類神經網路中的神經元

公演

超載字詞的定義如下:

  • 軟體工程的標準定義。Namely:這套軟體 執行的速度 (或效率) 如何?
  • 機器學習的概念就效能而言,效能可回答下列問題:這個model的正確程度為何?也就是說,模型的預測結果是否良好?

排列變數重要性

#df

一種變數重要性,用於評估在排列地圖項目值「之後」,模型預測錯誤增加的情況。排列變數重要性是與模型無關的指標。

疑惑

一個衡量「模型」model如何達成目標的一種指標。 舉例來說,假設您的工作是讀取使用者在手機鍵盤上輸入的字詞的前幾個字母,並提供可能的完成字詞清單。這項工作的複雜度為 P,大約需要猜測次數,清單才能包含使用者嘗試輸入的實際字詞。

複雜性與交叉熵相關,如下所示:

$$P= 2^{-\text{cross entropy}}$$

管道

機器學習演算法周圍的基礎架構。管線包括收集資料、將資料放入訓練資料檔案、訓練一或多個模型,以及將模型匯出至實際工作環境。

管道

#language

一種「模型平行處理」的一種形式,模型的處理會分成連續階段,而每個階段會在不同的裝置上執行。在階段處理一個批次時,之前的階段則可以處理下一個批次。

另請參閱階段式訓練

傑特

JAX 函式可分割程式碼,並在多個加速器方塊中執行。使用者將函式傳遞至 pjit。這個函式會傳回具有相等語意的函式,但會編譯為在多部裝置上執行 (例如 GPU 或 TPU 核心) 的 XLA 運算。

pjit 可讓使用者使用 SPMD 分區器,在不重寫運算的情況下分割運算。

自 2023 年 3 月起,pjit 已與 jit 合併。詳情請參閱「分散式陣列和自動平行處理」一文。

波蘭茲羅提

#language
#生成式 AI

預先訓練的語言模型的縮寫,

點陣圖

JAX 函式可在具有不同輸入值的多個基礎硬體裝置 (CPU、GPU 或 TPU) 上執行輸入函式副本。pmap 依賴 SPMD

policy

#rl

在增強學習中,「代理程式」的機率對應從「狀態」到「動作」

彙整

#image

將先前卷積層建立的矩陣 (或矩陣) 縮減為較小的矩陣。 集區通常牽涉到整個集區區域的最大值或平均值。舉例來說,假設有以下 3x3 矩陣:

3x3 矩陣 [[5,3,1], [8,2,5], [9,4,3]]。

集區運算就像卷積運算一樣,會將矩陣分割為配量,然後依據「跨步」滑動卷積運算。舉例來說,假設池化運算以 1x1 的步伐將卷積矩陣分割為 2x2 的配量。如下圖所示,執行四種集區作業。 假設每個集區運算都會選取該片段中的四個最大值:

輸入矩陣為 3x3,且值為:[[5,3,1], [8,2,5], [9,4,3]。輸入矩陣左上角 2x2 的子矩陣為 [[5,3], [8,2]],因此左上方的集區運算會產生值 8 (上限為 5、3、8 和 2)。輸入矩陣的右上方 2x2 子矩陣為 [[3,1], [2,5]],因此右上方的集區運算會產生值 5。輸入矩陣左下角 2x2 的子矩陣為 [[8,2], [9,4]],因此左下角的池運算運算會產生值 9。輸入矩陣右下角的 2x2 子矩陣為 [[2,5], [4,3]],因此右下角的集區運算會產生值 5。總而言之,池化運算會產生 2x2 矩陣 [[8,5], [9,5]]。

集區可協助您在輸入矩陣中強制執行「平移變異數」

視覺應用程式集區稱為「空間集區」。時間序列應用程式通常將集區稱為「臨時集區」。在其他情況下,集區通常稱為「向下取樣」或「降低取樣」

位置編碼

#language

將符記的「位置」相關資訊加入權杖嵌入的技巧。Transformer 模型會使用位置編碼進一步瞭解序列不同部分之間的關係。

位置編碼的常見實作方式會使用正弦函式。 (具體來說,正弦函式的頻率和振幅取決於序列中符記的位置)。這項技巧可讓 Transformer 模型根據位置來學習序列的不同部分。

正類

#fundamentals

您要測試的類別。

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

排除類別之間的對比。

後續處理

#fairness
#fundamentals

調整模型執行「之後」,調整模型的輸出內容。 後續處理可用於強制執行公平性限制,而不必自行修改模型。

舉例來說,其中之一可能會透過設定分類門檻,為某些屬性維持機會的平等率,藉此對二元分類器套用後續處理作業,方法是檢查該屬性所有值的真陽率是否相同。

PR AUC (PR 曲線下的區域)

內插精確度和喚回度曲線下的面積,只要針對分類門檻的不同值,繪製 (喚回度、精確度) 點即可取得。視計算方式而定,PR AUC 可能與模型的平均精確度相等。

指標軸

Pax 的高效能核心機器學習程式庫。Praxis 經常稱為「圖層程式庫」。

Praxis 不僅包含圖層類別的定義,還提供了大部分支援元件,包括:

Praxis 提供 Model 類別的定義。

precision

可回答下列問題的「分類模型」指標:

當模型預測出「陽性類別」時,預測結果的正確百分比是多少?

公式如下:

$$\text{Precision} = \frac{\text{true positives}} {\text{true positives} + \text{false positives}}$$

其中:

  • 真陽性表示模型「正確」預測了正類。
  • 偽陽性表示模型「誤用」預測為正類。

舉例來說,假設模型已進行 200 個陽性預測。在下列 200 個陽性預測中:

  • 150 個真陽性
  • 50 為偽陽性

在這種情況下:

$$\text{Precision} = \frac{\text{150}} {\text{150} + \text{50}} = 0.75$$

相對於準確率喚回度

精確度與喚回度曲線

在不同分類門檻上呈現精確度喚回度曲線。

預測

#fundamentals

模型的輸出內容例如:

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

預測偏誤

這個值代表預測平均值與資料集內標籤平均值的距離。

請勿與機器學習模型中的偏誤詞彙道德倫理偏誤混淆。

預測性機器學習

任何標準 (「傳統版」) 機器學習系統。

「預測性機器學習」一詞沒有正式的定義。而是區分機器學習系統的類別,「並非」生成式 AI 為基礎。

預測一致性

#fairness

這個公平性指標可檢查特定分類器的「精確度」比率是否等同於考慮考慮的子群組。

舉例來說,如果預測大學接受率的模型,只要該模型對利利波特斯和布洛丁納加的精確度相同,就能滿足國籍的預測一致性。

預測一致性有時也稱為「預測率一致性」

如要進一步瞭解預測一致性,請參閱「公平性定義說明」 (第 3.2.1 節)。

預測率一致性

#fairness

預測一致性的另一個名稱。

預先處理

#fairness
我們會先處理資料再用於訓練模型。預先處理相當簡單,例如從英文字典中出現的英文文字語料庫中移除字詞,或是以重新表示資料點的方式複雜化,藉此排除大量與敏感屬性相關的屬性。預先處理功能可協助滿足公平性限制

預先訓練模型

#language
#image
#生成式 AI

已經訓練的模型或模型元件 (例如嵌入向量)。有時候,您會將預先訓練的嵌入向量饋送至「類神經網路」中。有時,您的模型會自行訓練嵌入向量,而不是依賴預先訓練的嵌入。

「預先訓練模型」一詞是指在通過預先訓練大型語言模型

預先訓練

#language
#image
#生成式 AI

在大型資料集中訓練模型的初始訓練。有些預先訓練模型是無害的巨人,通常得透過額外訓練加以修正。舉例來說,機器學習專家可能會對大型文字資料集 (例如維基百科中的所有英文頁面) 預先訓練大型語言模型。在預先訓練之後,產生的模型可以透過下列任一技巧進一步微調:

先驗信念

在開始訓練前,您對資料的看法。舉例來說,L2 正則化需要先相信權重應較小,且通常以零為基準分佈。

機率迴歸模型

「迴歸模型」:不僅使用每個「特徵」權重,還使用這些權重的不確定性。機率迴歸模型會產生預測和該預測的不確定性。舉例來說,機率迴歸模型可能會產生標準差為 12 的預測結果為 325。如要進一步瞭解機率迴歸模型,請參閱這個 tensorflow.org 上的 Colab 影片。

機率密度函式

這個函式可識別資料樣本頻率「完全」特定值。如果資料集的值是連續的浮點數,則幾乎不會發生完全比對。但是,將機率密度函式「整合」integrating從值 x 到值 y 後,就會產生 xy 之間的預期頻率資料樣本。

舉例來說,假設常態分佈的平均值為 200,標準差為 30。如要判斷資料樣本落在範圍介於 211.4 到 218.7 之間的預期頻率,您可以整合 211.4 至 218.7 的常態分佈機率密度函式。

提示

#language
#生成式 AI

將任何輸入為大型語言模型輸入的文字,規範模型以特定方式表現的條件。提示可以很短,可以是詞組比對或任意長度 (例如小說的整段文字)。提示分為多個類別,包括下表所示:

提示類別 範例 附註
問題 鴿子的飛行速度有多快?
指示 撰寫關於套利的有趣詩詞。 要求大型語言模型「做」特定操作的提示。
範例 將 Markdown 程式碼轉譯為 HTML。例如:
Markdown:* 清單項目
HTML:<ul> <li>清單項目</li> </ul>
此範例提示中的第一個句子是指令。提示的其餘部分為範例。
角色 說明為何在機器學習訓練中採用梯度下降法,而在物理學系中採用梯度下降法。 句子的第一部分是指令,「to a PhD in Physics」用語則是指角色部分。
模型待完成的部分輸入內容 英國首相 部分輸入提示可能會突然結束 (與這個範例相同),或是以底線結尾。

生成式 AI 模型可透過文字、程式碼、圖片、嵌入、影片等幾乎任何條件來回應提示。

以提示為基礎的學習

#language
#生成式 AI

特定模型的功能,可讓模型根據任意文字輸入內容調整行為 (提示)。在一般以提示為基礎的學習範例中,大型語言模型會產生文字來回應提示。舉例來說,假設使用者輸入下列提示:

總結牛頓第三運動定律。

能夠以提示為基礎的學習的模型並未經過特別訓練,因此無法回答先前的提示內容。相反地,模型「知道」許多有關物理的知識、大量有關一般語言規則,以及對於一般實用答案的眾多要素。該知識足以提供 (希望) 有用的答案。而額外的人為意見回饋 (「這個答案太過複雜」或「什麼是反應?」) 可讓一些以提示為主的學習系統,逐步提高答案的實用性。

提示設計

#language
#生成式 AI

提示工程的同義詞。

提示工程

#language
#生成式 AI

建立提示,從大型語言模型中取得所需回應的秘訣。人類執行提示工程編寫結構完善的提示,是確保大型語言模型實用回應的重要環節。提示工程取決於許多因素,包括:

  • 用於「預先訓練」,並可能「微調」大型語言模型的資料集。
  • 溫度和其他模型用來產生回應的解碼參數。

如要進一步瞭解如何編寫實用提示,請參閱提示設計簡介

「提示設計」是「提示工程」的同義詞。

提示調整

#language
#生成式 AI

一種參數效率調整機制,可學習系統在實際提示前加上的「前置字串」。

提示調整的其中一種變化版本 (有時稱為「前置字串調整」) 是在「每一個圖層」前面加上前置字串。相對地,大多數提示調整隻會在輸入層加上前置字串。

Proxy 標籤

#fundamentals

用於近似標籤的資料,無法直接在資料集中取得。

舉例來說,假設您必須訓練模型來預測員工壓力等級,您的資料集包含許多預測特徵,但沒有名為「壓力等級」的標籤。您毫不猶豫地選擇「工作場所事故」做為壓力等級的代理標籤,畢竟,處於高壓力的員工會遭受比平靜的員工更多的意外事故。還是他們?職場事故實際上可能會因為多種原因而起伏

再舉一個例子,假設您希望值下雨?設為資料集的布林標籤,但資料集並未包含雨資料。如果有相片,您可以製作拍攝遮陽傘的人物相片,做為「在下雨嗎?」的替代標籤。這個 Proxy 標籤很合適嗎?可能,但某些文化的人比雨中更可能帶傘。

Proxy 標籤通常無法完美無缺。如有可能,請選擇實際標籤,而非 Proxy 標籤。也就是說,當缺少實際標籤時,請謹慎挑選 Proxy 標籤,並選擇最糟糕的 Proxy 標籤。

Proxy (敏感屬性)

#fairness
用來做為敏感屬性獨立項目的屬性。例如,個人的郵遞區號可能會用來代表其收入、種族或族裔。

純函式

這種函式僅根據其輸入產生輸出,沒有副作用。具體來說,純函式不會使用或變更任何全域狀態,例如檔案內容或函式外的變數值。

純函式可用來建立確保執行緒安全的程式碼,這對於在多個model之間資料分割「模型」model程式碼時很實用。

JAX 函式轉換方法需要輸入函式是純函式。

Q

Q 函式

#rl

在「強化學習中,這個函式會預測對狀態執行「動作」,再依特定政策提出的預期值。

Q 函式又稱為「狀態動作值函式」

問與答

#rl

在「強化學習中,這個演算法可讓代理程式透過套用Bellman 方程式,學習馬可夫決策程序的最佳 Q 函數。馬可夫決策程序會模擬「環境」

分位數

分位數值區中的每個值區。

分位數值區

將特徵的值分成「值區」,讓每個值區包含相同 (或幾乎相同) 的樣本數量。例如,下圖將 44 個點分成 4 個值區,每個值區各有 11 個點。為了在圖中每個區塊都包含相同的點數,有些範圍的 x 值寬度會不同。

將 44 個資料點分成 4 個值區,每個資料點各 11 個點。
雖然每個值區中的資料點數量都相同,但有些值區的特徵值範圍比其他值區大。

量化

超載字詞可在下列任一情況下使用:

  • 針對特定功能實作分位數特徵分塊
  • 將資料轉換為零和零,以便快速儲存、訓練及推論。相較於其他格式,布林資料在雜訊和錯誤方面較為穩健,因此量化可以提高模型的正確性。量化技術包括四捨五入、截斷和特徵。
  • 減少用於儲存模型參數的位元數。舉例來說,假設模型的參數儲存成 32 位元浮點數。量化會將這些參數從 32 位元轉換成 4、8 或 16 位元。量化可以減少下列項目:

    • 運算、記憶體、磁碟和網路用量
    • 推斷預測的時間
    • 耗電量

    不過,量化有時會降低模型預測結果的正確性。

待播清單

#TensorFlow

實作佇列資料結構的 TensorFlow Operation。通常用於 I/O。

R

RAG

#fundamentals

擷取產生的新增結果的縮寫,

隨機森林

#df

決策樹組成的聚合樹,每個決策樹都會以特定隨機雜訊訓練,例如「包裝」

隨機森林是一種決策樹

隨機政策

#rl

強化學習中,即隨機選擇「動作」政策

排名

一種監督式學習,其目標為排序項目清單。

排名 (絕對性)

在機器學習問題中,類別的序數位置,從最高到最低將類別進行分類。例如,行為排名系統可能會將狗狗獎勵由最高 (牛排) 排到最低 (毛衣)。

排名 (Tensor)

#TensorFlow

Tensor 中的維度數量。例如,純量的排名是 0,向量的排名是 1,矩陣的排名是 2。

請勿與排名 (絕對性) 混淆。

評分者

#fundamentals

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

召回

可回答下列問題的「分類模型」指標:

真值正類時,模型能正確將多少百分比的預測結果正確識別為正類別?

公式如下:

\[\text{Recall} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}} \]

其中:

  • 真陽性表示模型「正確」預測了正類。
  • 偽陰性表示模型「未正確」預測排除類別

舉例來說,假設模型對真值屬於正類別的範例 200 次預測,在下列 200 項預測中:

  • 180 個真陽性。
  • 20 為偽陰性

在這種情況下:

\[\text{Recall} = \frac{\text{180}} {\text{180} + \text{20}} = 0.9 \]

推薦系統

#recsystems

這個系統會從大型語料庫中,為每位使用者選擇一組相對較少的理想項目。舉例來說,影片推薦系統可能會推薦 100,000 部影片的語料庫中的 2 部影片,為一位使用者選取「Casablanca」和「The Philadelphia Story」,另一個則選取「Wonder Woman」和「Black Panther」。影片推薦系統可能會根據下列因素提供推薦內容:

  • 類似使用者已評分或觀看的電影。
  • 類型、導演、演員、指定客層...

線性整流單位 (ReLU)

#fundamentals

具有下列行為的啟用函式

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

例如:

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

以下是 ReLU 的圖表:

有兩條線的笛卡兒圖。第一行的常數 y 值為 0,沿著 X 軸由 -infinity 和 0、-0 排列。第二行從 0,0 開始。這條線的斜率為 +1,因此範圍介於 0,0 到 +infinity 和+infinity 之間。

ReLU 是相當熱門的活化功能。雖然 ReLU 擁有簡單的行為,但仍可讓類神經網路學習特徵標籤之間的非線性關係。

循環類神經網路

#seq

刻意執行多次的「類神經網路」,其中每個部分的內容都會饋送至下一次執行。具體來說,先前執行結果的隱藏層,可在下次執行時將部分輸入提供給同一個隱藏層。循環類神經網路在評估序列時特別實用,因此隱藏層能夠從序列較早的部分執行類神經網路,並從中學習。

例如,下圖顯示執行四次的循環類神經網路。請注意,在首次執行時,在隱藏層中學到的值,會成為第二次執行時相同隱藏層的輸入的一部分。同樣地,在第二次執行時,隱藏層中學到的值,會成為第三次執行中相同隱藏層的輸入內容。如此一來,循環類神經網路會逐漸訓練並預測整個序列的含意,而不只是個別字詞的含義。

一個 RNN,執行四次來處理四個輸入字詞。

迴歸模型

#fundamentals

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

  • 預測特定房屋價值的模型,例如 423,000 歐元。
  • 預測特定樹木壽命的模型,例如 23.2 年。
  • 此模型可預測未來六小時內特定城市的降雨量,例如 0.18 吋。

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

  • 線性迴歸:尋找最符合標籤值與特徵的線條。
  • 邏輯迴歸:產生 0.0 到 1.0 之間的機率,系統通常會將其對應至類別預測結果。

並非所有輸出數值預測的模型都是迴歸模型。在某些情況下,數字預測其實只是一個含有數字類別名稱的分類模型。例如,用來預測數字郵遞區號的模型是分類模型,而不是迴歸模型。

正則化

#fundamentals

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

正規化也可定義為複雜模型複雜程度的懲罰。

正規化率

#fundamentals

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

強化學習 (RL)

#rl

這套演算法會學習最佳政策,其目標是在與環境互動時盡可能提高報酬。舉例來說,大多數遊戲的最終獎勵都能贏得勝利。 強化學習系統可以評估先前遊戲過程的一系列順序,最終結果最終導致輸贏,進而成為處理複雜遊戲的專家。

人類回饋增強學習 (RLHF)

#生成式 AI
#rl

使用評估人員的意見回饋,提高模型回覆的品質。舉例來說,RLHF 機制可要求使用者透過 👍? 或 👎? 表情符號,為模型的回應品質評分。之後系統就能根據這些回饋調整未來的回應。

ReLU

#fundamentals

Rectified Linear Unit 的縮寫。

重播緩衝區

#rl

在類似 DQN 的演算法中,代理程式會使用記憶體儲存狀態轉換,以便用於體驗重播

備用資源

訓練集模型的副本,通常在其他機器上。舉例來說,系統可能會使用以下策略實作資料平行處理策略:

  1. 將現有模型的備用資源放置於多部機器。
  2. 將不同子集的訓練集傳送至各個備用資源。
  3. 匯總參數更新。

報表偏誤

#fairness

使用者針對動作、結果或屬性撰寫頻率的頻率,不代表了自身在現實生活中的頻率,也不代表資源屬於個人類別的特性。報表偏誤會影響機器學習系統 從中學習的資料組成

例如,書籍中的「laughed」一詞會比「breathed」更常見。某機器學習模型預估書籍語料庫產生的笑話和呼吸頻率,可能會判斷出笑比呼吸更為常見。

兩者的向量表示法

將資料對應至實用功能的程序。

重新排名

#recsystems

「建議系統」的最後階段,是指在哪些計分項目可能會根據其他 (通常是非機器學習) 演算法重新評分。重新排名功能會評估「評分」階段產生的項目清單,並採取以下幾種動作:

  • 排除使用者已購買的商品。
  • 提高新鮮道具的得分。

擷取產生的生成世代 (RAG)

#fundamentals

改善大型語言模型 (LLM) 輸出內容品質的技巧,是以模型訓練後擷取的知識來源做為依據。RAG 為經過訓練的 LLM 提供從信任的知識庫或文件擷取的資訊,可提高 LLM 回應的準確度。

使用擷取生成世代的常見動機包括:

  • 提高模型產生回覆的事實準確率。
  • 授予模型未用於訓練的知識。
  • 變更模型使用的知識。
  • 讓模型能引用來源。

舉例來說,假設化學應用程式使用 PaLM API 產生與使用者查詢相關的摘要,當應用程式的後端收到查詢時,後端:

  1. 搜尋與使用者查詢相關的 (「擷取」) 資料。
  2. 將相關化學資料附加至使用者查詢 (「產品」)。
  3. 指示 LLM 根據附加的資料建立摘要。

return

#rl

在強化學習中,針對特定政策和特定狀態,系統會傳回代理程式預期從狀態開始至劇集結束的政策預期會收到的所有獎勵總和。服務專員會根據獲得獎勵所需的狀態轉換來提供獎勵,藉此顧及預期獎勵的延遲性質。

因此,如果折扣係數為 \(\gamma\),而 \(r_0, \ldots, r_{N}\)表示獎勵直到劇集結束為止,則退貨計算方式如下:

$$\text{Return} = r_0 + \gamma r_1 + \gamma^2 r_2 + \ldots + \gamma^{N-1} r_{N-1}$$

獎勵

#rl

在強化學習中,根據環境定義,在狀態中採取動作後的數值結果。

山脊正規化

L2 正則化的同義詞。在純統計資料情境中,「磁鐵正則化」一詞最常用到,而 L2 正則化則是在機器學習中更常使用。

循環類神經網路

#seq

循環類神經網路的縮寫,

ROC (接收方操作特徵) 曲線

#fundamentals

以二進位檔分類中不同分類臨界值呈現的真陽率偽陽率圖表。

ROC 曲線形狀表示二元分類模型能夠將正向類別與負類別區分開來。例如,假設二元分類模型將所有負類別與所有正類別完美分開:

數字行,右側是 8 個正樣本,左側為 7 個負例。

上述模型的 ROC 曲線如下:

ROC 曲線。X 軸是「偽陽率」,y 軸則是「真陽率」。曲線的 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 軸則是「真陽率」。ROC 曲線會模擬從西方到北方穿越指南針點的搖晃弧形。

ROC 曲線上的點最接近 (0.0,1.0) 的理論上可以識別理想分類門檻。不過,還有一些實際狀況會影響選擇理想分類門檻的因素。例如,偽陰性可能會導致疼痛程度遠比偽陽性高出許多。

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

角色提示

#language
#生成式 AI

這是提示的選用部分,用於識別生成式 AI 模型回應的目標對象。沒有角色提示,大型語言模型會提供答案,不一定對提問者有幫助。大型語言模型「加入」角色提示後,就能以更適當且更適用於特定目標對象的方式回答。舉例來說,以下提示中的角色提示部分會以粗體顯示:

  • 請概述經濟學博士的說明文章。
  • 說明一歲的人將如何降雨。
  • 解釋 2008 年的財務危機。你可能會和小孩子或黃金獵犬說話。

根號

#df

起始節點 (第一個條件) (位於決策樹狀結構中)。按照慣例,圖表會將根層級置於決策樹的頂端。例如:

包含兩個條件和三個葉子的決策樹。起始條件 (x > 2) 為根層級。

根目錄

#TensorFlow

您指定的目錄,用於託管 TensorFlow 檢查點的子目錄和多個模型的事件檔案。

均方根誤差 (RMSE)

#fundamentals

均方誤差的平方根。

旋轉不變

#image

處理圖片分類問題時,演算法仍能成功分類圖片,即使圖片方向改變也一樣。舉例來說,演算法仍可識別網球拍 (朝上、側面或向下的方向)。請注意,不一定適合旋轉變異數;例如,顛倒的 9 不應歸類為 9。

另請參閱「平移變異數」「大小變異數」

R 平方

迴歸指標代表標籤中因個別功能或特徵集而產生差異的幅度。R 平方值介於 0 到 1 之間,您可以解讀以下值:

  • R 平方值為 0,表示標籤沒有任何變化,是因為功能集所致。
  • R 平方值為 1,表示標籤的所有變化版本都是因功能集所致。
  • 介於 0 到 1 之間的 R 平方表示可以從特定功能或功能集預測標籤變異的程度。例如,R 平方值為 0.10 表示標籤中 10% 的變異數是由於特徵集所致,R 平方值為 0.20,表示 20% 是功能集,依此類推。

R 平方是模型預測值與「真值」之間的皮爾森相關係數平方。

取樣偏誤

#fairness

請參閱選取偏誤

取樣和替代品

#df

從一組候選項目中挑選項目的方法,可以多次選取相同的項目。「需替換」詞組代表每次選取後,系統都會將所選項目傳回候選項目集區。反之,取樣且不含替換項目,表示每個候選項目只能挑選一次。

以下列水果組為例:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

假設系統隨機選擇 fig 做為第一個項目。如果使用取樣和取代功能,系統會從以下組合中選取第二個項目:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

是,這與之前相同,因此系統可能會再次選擇 fig

如果使用取樣時未替換,則選取後就無法再次選擇樣本。舉例來說,如果系統隨機選擇 fig 做為第一個樣本,則無法再次選擇 fig。因此,系統會從下列 (經過簡化) 組合中選取第二個樣本:

fruit = {kiwi, apple, pear, cherry, lime, mango}

SavedModel

#TensorFlow

儲存及復原 TensorFlow 模型的建議格式。DML 是語言中立且可復原的序列化格式,可讓較高層級的系統和工具產生、使用及轉換 TensorFlow 模型。

如需完整詳細資料,請參閱 TensorFlow 程式設計師指南中的儲存及還原章節

平價

#TensorFlow

負責儲存模型查核點的 TensorFlow 物件

純量

rank 0 的張量表示的單一數字或單一字串。舉例來說,下列幾行程式碼會在 TensorFlow 中建立一個純量:

breed = tf.Variable("poodle", tf.string)
temperature = tf.Variable(27, tf.int16)
precision = tf.Variable(0.982375101275, tf.float64)

資源調度

可轉移標籤和/或特徵值範圍的任何數學轉換或技術。部分資源調度方式對於正規化等轉換作業非常有用。

適合機器學習的常見資源調度方式包括:

  • 線性資源調度,通常會使用減法和除法的組合,將原始值替換為介於 -1 與 +1 之間的數字,或介於 0 至 1 之間的數字。
  • 對數縮放:將原始值替換為對數。
  • Z 分數正規化:將原始值替換為浮點值,代表與該特徵平均值相較的標準差數量。

scikit-learn

熱門的開放原始碼機器學習平台。請參閱 scikit-learn.org

計分

#recsystems

推薦系統的一部分,可為候選產生階段產生的每個項目提供值或排名。

選擇偏誤

#fairness

由於選取程序導致取樣資料中的錯誤,這些錯誤會在資料中觀察到的樣本與未觀察到的樣本之間產生系統差異。以下形式的選取偏誤形式如下:

  • 涵蓋率偏誤:資料集中顯示的人口與機器學習模型預測相關的母體不符。
  • 取樣偏誤:系統不會從目標群組隨機收集資料。
  • 非回應偏誤 (也稱為「參與偏誤」):特定群組的使用者會選擇停止參與問卷調查,頻率會與其他群組的使用者不同。

舉例來說,假設您要建立能預測人們對電影的喜好的機器學習模型。為了收集訓練資料,您需要將一份問卷調查傳送給放映電影的院線所有人。但這聽起來似乎是收集資料集的合理方式;但是,這種資料收集形式可能會引入下列形式的選擇偏誤:

  • 涵蓋率偏誤:藉由從選擇觀看某部電影的人口取樣,模型預測結果可能無法提供給尚未表達對電影感興趣的人。
  • 取樣偏誤:您並非從預期母體 (電影的所有人物) 隨機取樣,而是僅取樣前排的人口。可能位於前排的民眾對電影的感興趣,可能較其他列的觀眾對這部電影更感興趣。
  • 非回應偏誤:一般來說,擁有強烈意見的人,較常對選擇性問卷調查的回覆頻率較高。由於電影問卷調查為選填項目,因此回應較一般 (鈴鐺形狀) 分佈情形更可能形成雙模分佈

自我注意力 (也稱為自我注意力層)

#language

這個類神經網路層可將一連串的嵌入 (例如符記嵌入) 轉換成另一種嵌入。輸出序列中的每個嵌入都是透過「注意力」機制整合輸入序列元素的資訊。

自我部分的「自註意」是指自行出席的序列,而非其他情境。自我注意力是Transformers 的主要建構模塊之一,會使用字典查詢術語,例如「query」、「key」和「value」。

自我注意力層從一系列的輸入表示法開始,每個字詞一個表示法。字詞的輸入表示法可以是簡單的嵌入。對於輸入序列中的每個字詞,網路會針對整個字詞序列中每個字詞的關聯性評分。關聯性分數會決定字詞最終表示法與其他字詞表示法的大致程度。

例如,請思考以下語句:

動物的疲累,因此沒有穿越街道。

下方的插圖 (來自Transformer:語言理解的新型類神經網路架構) 顯示人稱代名詞 的自我注意力層注意力模式,而每條線的暗色代表每個字詞對代表的影響程度:

以下句子出現兩次:由於動物疲倦,因此沒有穿越街道。這行可將人稱代名詞從一個句子中連結至另一個語句中的五個符記 (即動物、街道、句號和句號)。人稱代名詞與動物文字之間的線段最強。

自註意層會醒目顯示與「it」有關的字詞。在本例中,注意力層已學習醒目顯示「該」可能參照的字詞,並將最高權重指派給「animal」

在一系列「n」n符記中,自我注意力功能會在序列中的每個位置一次轉換一連串嵌入「n」n次。

另請參閱注意力多頭人自我注意力相關文章。

自我監督式學習

提供一系列技巧,可將非監督式機器學習問題轉換成監督式機器學習問題,方法是從未加上標籤的範例中建立代理標籤

部分 Transformer 型模型 (例如 BERT) 會使用自我監督式學習。

自我監督訓練是一種半監督式學習方法,

自我訓練

這是自監督學習的變化版本,在符合下列所有條件時尤其實用:

自我訓練的運作方式是疊代以下兩個步驟,直到模型不再改善為止:

  1. 使用監督式機器學習,以加上標籤的樣本訓練模型。
  2. 使用步驟 1 中建立的模型,對未加上標籤的樣本產生預測 (標籤),並將高可信度的項目移到含有預測標籤的已加上標籤樣本中。

請注意,步驟 2 的每次疊代都會為步驟 1 新增更多加上標籤的範例,以進行訓練。

半監督式學習

使用某些訓練範例有標籤,但其他沒有標籤的資料訓練模型。半監督式學習的一種技術是為無標籤的樣本推論標籤,然後對推測的標籤進行訓練,以建立新模型。如果標籤在取得標籤的費用很高,但未加上標籤的樣本很多,則半監督式學習會是很實用的做法。

「自主訓練」是半監督式學習的一種技術。

機密屬性

#fairness
人類屬性可能會因為法律、倫理、社會或個人因素而特別列入考量

情緒分析

#language

使用統計或機器學習演算法來判斷群組對服務、產品、組織或主題的整體態度 (正面或負面)。舉例來說,利用自然語言理解,演算法就能針對大學課程的文字意見回饋執行情緒分析,判斷學生普遍喜歡或不喜歡這門課程的程度。

序列模型

#seq

包含輸入具有序列依附性的模型。例如,從先前看過的影片序列預測接下來看過的影片。

序列至序列工作

#language

將「權杖的輸入序列轉換為權杖輸出序列的工作。例如,序列至序列工作有兩種常見的 類型:

  • 譯者:
    • 輸入序列範例:「我愛你。」
    • 輸出序列範例:「Je t'aime。」
  • 回答問題:
    • 輸入序列範例:「我在紐約市需要我的車嗎?」
    • 輸出序列範例:「否,請將車放在家中。」

人份

透過線上推論離線推論提供訓練後模型,以提供預測的程序。

形狀 (Tensor)

張量中每個維度的元素數量。形狀是以整數清單表示。舉例來說,以下二維張量的形狀為 [3,4]:

[[5, 7, 6, 4],
 [2, 9, 4, 8],
 [3, 6, 5, 1]]

TensorFlow 使用列主要 (C 樣式) 格式來表示維度順序,因此 TensorFlow 中的形狀是 [3,4],而不是 [4,3]。換句話說,在二維 TensorFlow Tensor 中,形狀是[「列數」、「欄數」]

資料分割

#TensorFlow
#GoogleCloud

訓練集模型的邏輯劃分。一般而言,部分程序會透過將範例參數分成 (通常) 大小相同的區塊來建立資料分割。然後將每個資料分割指派給不同的機器。

資料分割模型稱為「模型平行處理;資料分割稱為「資料平行處理」

收縮

#df

控制過度配適梯度強化中的超參數。梯度提升中的縮小與梯度下降法中的學習率相似。縮小是介於 0.0 和 1.0 之間的小數值。縮減值會降低過度配適程度,過度縮減大小。

S 函數

#fundamentals

這個數學函式可將輸入值「將」輸入受限範圍,通常為 0 至 1 或 -1 至 +1。也就是說,您可以將任何數字 (2,000 萬、負十億等等) 傳遞至 S 函數,且輸出內容仍位於受限範圍內。S 函數活化函數圖如下所示:

有 x 值的二維曲線圖,y 值橫跨網域 -infinity 和 + 負數,y 值則涵蓋將近 0 至近 1。當 x 為 0 時,y 為 0.5。曲線的斜率一律為正數,最高斜率為 0,0.5,並在 x 絕對值增加時逐漸減少斜率。

S 函數在機器學習中有許多用途,包括:

相似度度量

#clustering

在「分群演算法中,用來判斷兩個範例是否相似 (程度) 的指標。

單一計畫 / 多個資料 (SPMD)

平行處理技術:在不同的輸入資料上平行執行相同的運算。SPMD 的目標是更快取得結果。是平行程式設計最常見的樣式。

尺寸不變

#image

發生圖片分類問題時,演算法仍能成功分類圖片,即使圖片大小改變也一樣。舉例來說,演算法仍可識別取用 200 萬像素或 20 萬像素的貓。請注意,即使是最好的圖片分類演算法,在大小差異方面仍設有嚴格的限制。比方說,演算法 (或人類) 可能無法將僅使用 20 像素的貓咪圖片正確分類。

另請參閱「平移變異數」「旋轉變異數」

素描

#clustering

非監督式機器學習中,這是對範例執行初步相似度分析的演算法類別。草圖演算法使用 區域敏感雜湊函式找出可能相似的點,然後將這些點分組為值區。

草圖會降低大型資料集相似度計算所需的運算。我們只會計算每個值區中每組資料點的相似性,而不會計算資料集中每組範例的相似性。

跳過格

#language

n-gram 可能會從原始情境中省略 (或「略過」) 字詞,這代表 N 字詞原本未置於相鄰位置。更明確地說,「k-skip-n-gram」是一個 n-gram,其中最多可能略過 k 個字詞。

舉例來說,「快速棕色狐狸」有以下可能的 2 公克:

  • 「快一點」
  • 「快棕色」
  • 「棕色狐狸」

「1-skip-2-gram」是兩個字詞間最多只能有 1 個字詞的一組字詞。因此,「快速棕色狐狸」有以下 1 度 2 公克:

  • 「棕色」
  • 「快速狐狸」

此外,所有 2 公克也「也」是 1 至 2 公克,因為系統可能會略過一個字詞。

如果想進一步瞭解字詞前後的上下文內容,不妨使用「略過圖表」功能。 在此範例中,「fox」與 1-skip-2 公克組合中的「快速」相關聯,但不在 2 公克的組合中。

略過克數有助於訓練字詞嵌入模型。

softmax

#fundamentals

這個函式會決定多類別分類模型中每個可能類別的機率。機率總和等於 1.0。例如,下表顯示 softmax 如何分配各種可能性:

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

Softmax 也稱為 full softmax

候選抽樣的差異。

軟提示調整

#language
#生成式 AI

一種技巧,可針對特定工作調整大型語言模型,無須耗用大量資源微調調整。這種提示不會重新訓練模型中的所有權重,而是會自動調整「提示」來達成相同目標。

收到文字提示後,軟提示調整通常會將額外的符記嵌入附加至提示,並使用反向傳播來最佳化輸入。

「硬」提示包含實際符記,而非符記嵌入。

稀疏特徵

#language
#fundamentals

一個功能,其值主要是零或空白。例如,一個包含單一 1 值和一百萬個 0 值的特徵是稀疏度。相對地,密集特徵的值主要並非零或空白。

在機器學習中,有許多出乎意料的特徵是稀疏的。類別特徵通常是稀疏的特徵。舉例來說,森林中有 300 種可能的樹種,一個例子或許只會辨識一顆楓樹。或者,影片庫中有數百萬部可能的影片 一個例子可以只識別「Casablanca」

在模型中,您通常會以 one-hot 編碼表示稀疏特徵。如果 one-hot 編碼較大,則可在 one-hot 編碼上方放置嵌入層,以提高效率。

稀疏表示法

#language
#fundamentals

稀疏功能中只儲存非零元素的位置

舉例來說,假設有一個名為 species 的類別地圖項目能識別特定森林中的 36 棵樹種。再假設每個範例都只能識別一個物種。

您可以使用 one-hot 向量來表示每個示例中的樹種。一個熱向量會包含單一 1 (在此範例中代表特定樹種) 和 35 個 0 (代表該範例中「不」的 35 種樹種)。因此,maple 的 one-hot 表示法可能會如下所示:

位置 0 到 23 的向量會保留值 0,位置 24 代表值 1,位置 25 至 35 則代表值 0。

或者,稀疏表示法只會識別特定物種的位置。如果 maple 位於位置 24,則 maple 的稀疏表示法為:

24

請注意,稀疏表示法比 one-hot 表示法更精簡。

稀疏向量

#fundamentals

值大多為零的向量。另請參閱「稀疏功能」「稀疏度」

稀疏度

在向量或矩陣中設為零 (或空值) 的元素數量,除以該向量或矩陣中的項目總數。例如,假設有 100 個元素的矩陣,其中 98 個儲存格含有零。稀疏度的計算方式如下:

$$ {\text{sparsity}} = \frac{\text{98}} {\text{100}} = {\text{0.98}} $$

「特徵稀疏度」是指特徵向量的稀疏度;「模型稀疏度」是指模型權重的稀疏度。

空間集區

#image

請參閱「集區

分割

#df

「決策樹狀圖」中,另一個條件的名稱。

分割器

#df

訓練決策樹狀圖時,負責在每個節點中找出最佳條件的常規 (和演算法)。

SPMD

單一計畫 / 多個資料的縮寫。

平方轉軸損失

轉軸損失的平方。方形轉軸損失的懲罰程度比一般轉軸損失更明顯。

平方損失

#fundamentals

L2 損失的同義詞。

階段式訓練

#language

按照離散階段順序訓練模型的策略。目標是加快訓練程序或改善模型品質。

下方為漸進式堆疊方法的插圖:

  • 第 1 階段包含 3 個隱藏圖層,階段 2 包含 6 個隱藏圖層,階段 3 則包含 12 個隱藏圖層。
  • 第 2 階段以第 1 階段的 3 隱藏層中學到的權重開始訓練。第 3 階段透過第 2 階段 6 隱藏層學到的權重開始訓練。

三個階段,分別標示為第 1 階段、第 2 階段和第 3 階段。每個階段都包含不同圖層:第 1 階段包含 3 個圖層,第 2 階段包含 6 個圖層,第 3 階段則包含 12 個圖層。第 1 階段的 3 個圖層會成為第 2 階段的前 3 個層。同樣地,第 2 階段的 6 層會成為第 3 階段的前 6 層。

另請參閱管道相關說明。

state

#rl

在增強學習中,用於描述環境目前設定的參數值,代理程式會使用這個值選擇一項動作

狀態動作值函式

#rl

Q-function 的同義詞。

靜態

#fundamentals

只完成一次,而非連續完成。「Static」和「Offline」這兩個字詞屬於同義詞。以下是機器學習中靜態離線的常見用途:

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

對比動態

靜態推論

#fundamentals

離線推論的同義詞。

靜止

#fundamentals

某個地圖項目的值通常在一或多個維度中不會改變,通常是時間。例如,在 2021 年和 2023 年顯示相同的特徵,其值看起來都相同。

在現實世界中,很少有特色存在的特色。就連穩定性 (例如海平面) 的同義性功能也會隨著時間改變。

nonstationarity 進行比較。

點選 [下一步]

一個批次的向前傳遞和反向傳遞。

如要進一步瞭解向前和向後傳遞,請參閱反向傳播

步距

學習率的同義詞。

隨機梯度下降 (SGD)

#fundamentals

梯度下降法演算法,其中批次大小為一種。也就是說,SGD 會從「訓練集」中隨機選擇的單一範例進行訓練。

跨距

#image

在卷積運算或集區中,下一個一系列輸入配量中每個維度的差異。例如,以下動畫示範在卷積運算期間的步伐 (1,1)。因此,下一個輸入片段會從上一個輸入片段的右側開始一個位置。當作業到達右側邊緣時,下一個片段會一直往左方,但下一個位置。

輸入 5x5 矩陣與 3x3 卷積濾波器。由於步狀為 (1,1),因此系統會套用卷積濾波器 9 次。第一個卷積配量會評估輸入矩陣左上角 3x3 的子矩陣,第二個配量會評估中間的 3x3 子矩陣。第三個卷積配量會評估右上角 3x3 子矩陣。第四個切片會評估中間的 3x3 子矩陣。第五個配量會評估中間的 3x3 子矩陣。第六個切片會評估中間的 3x3 子矩陣。第七切片會評估左下方 3x3 的子矩陣。第八個切片會評估底部中間 3x3 的子矩陣。第 9 個切片會評估右下角的 3x3 子矩陣。

上例示範了二維步。如果輸入矩陣是 3D,依序也是 3D。

結構風險最小化 (SRM)

平衡兩個目標的演算法:

  • 建立最預測模型的需求 (例如最低損失)。
  • 模型必須盡可能簡單 (例如,強式正規化)。

舉例來說,可將訓練集的損失和正規化降至最低的函式是一種結構風險最小化演算法。

經驗風險最小化的差異。

向下取樣

#image

請參閱「集區

子字詞權杖

#language

在「語言模型中,符記是字詞的子字串,可能是整個字詞。

例如,「itemize」這樣的字詞可能會分成「item」(根字詞) 和「ize」(後置字串) 部分,且每個元素分別以各自的符記表示。將不常見的字詞分成這類片段,稱為「子字詞」,可讓語言模型針對字詞中較常見的組成部分 (例如前置字串和後置字串) 執行運算。

反之,「going」(持續中) 等常見字詞可能不會經過細分,且可能以單一符記表示。

摘要

#TensorFlow

在 TensorFlow 中,依據特定步驟計算出的值或一組值,通常用於在訓練期間追蹤模型指標。

監督式機器學習

#fundamentals

特徵model及其對應的model訓練model。監督式機器學習類似學習科目的 研究一組問題及其對應的答案掌握問題和答案之間的對應關係後,學生就能針對同一主題提出新問題 (前從未見) 的答案。

非監督式機器學習比較。

合成特徵

#fundamentals

由一或多個輸入特徵組合而成的功能。建立合成功能的方法包括:

  • 將連續功能「特徵分塊」為範圍特徵分塊。
  • 建立交錯組合特徵
  • 將某個特徵值與其他特徵值或本身相乘 (或除以)。例如,如果 ab 是輸入特徵,則合成特徵的範例如下:
    • ab
    • a2
  • 將暫時函式套用至特徵值。舉例來說,如果 c 是輸入特徵,則合成特徵的範例如下:
    • sin(c)
    • ln(c)

只透過正規化資源調度建立的功能,不視為合成功能。

T

T5

#language

Google AI 在 2020 年導入的文字轉文字遷移學習 模型。T5 是編碼器-解碼器模型,以 Transformer 架構為基礎,並以極大型的資料集進行訓練。這項功能適用於多種自然語言處理工作,例如產生文字、翻譯語言,以及以對話方式回答問題。

T5 會從「Text-to-Text Transfer Transformer」(文字轉文字轉換器) 中的五個 T 取得名稱。

超過 5 倍

#language

開放原始碼的機器學習架構,旨在建構及訓練大規模自然語言處理 (NLP) 模型。T5 是在 T5X 程式碼集上實作 (以 JAXFlax 建構)。

表格式問與答

#rl

增強學習中,實作Q-learning:使用資料表儲存所有狀態動作組合的 Q-functions

目標

label 的同義詞。

目標網路

#rl

深度學習中,類神經網路是主要類神經網路的穩定估算結果,其中主要類神經網路會實作 Q-function政策。接著,您就可以使用目標網路預測的 Q/值訓練主要網路。因此,您可以防止主要網路自行預測 Q/值時發生的意見回饋循環。藉由避免使用這類意見回饋,訓練穩定性會隨之提升。

任務

可利用機器學習技術解決的問題,例如:

溫度

#language
#image
#生成式 AI

控制模型輸出隨機程度的超參數。隨機性參數越高,隨機輸出的內容越多,而低溫則會產生較少的隨機輸出內容。

視特定應用程式及模型輸出偏好的屬性而定,選擇最佳溫度的做法會有不同。舉例來說,假設您在建立可產生廣告素材輸出內容的應用程式時,可能會提高溫度。相反地,在建構可將圖片或文字分類的模型時,為了提高模型的準確率和一致性,您可能會降低溫度。

溫度通常會與 softmax 搭配使用。

時序資料

在不同的時間點記錄資料。舉例來說,該年度每天記錄的冬季大衣銷售資料就是時間資料。

Tensor

#TensorFlow

TensorFlow 程式的主要資料結構。張量是 N 維的資料結構 (N 可能非常龐大) 資料結構,最常見的是純量、向量或矩陣。Tensor 的元素可包含整數、浮點或字串值。

TensorBoard

#TensorFlow

這個資訊主頁會顯示一或多個 TensorFlow 程式執行期間儲存的摘要。

TensorFlow

#TensorFlow

大規模的分散式機器學習平台。這個詞彙是指 TensorFlow 堆疊中的基本 API 層,支援 Dataflow 圖表的一般計算。

雖然 TensorFlow 主要用於機器學習,但您也能將 TensorFlow 用於需要透過 Dataflow 圖形進行數值計算的非機器學習工作。

TensorFlow Playground

#TensorFlow

以視覺化方式呈現不同超參數如何影響模型 (主要類神經網路) 訓練的程式。前往 http://playground.tensorflow.org 以使用 TensorFlow Playground 進行實驗。

TensorFlow serve

#TensorFlow

在實際工作環境中部署已訓練模型的平台。

Tensor Processing Unit (TPU)

#TensorFlow
#GoogleCloud

應用程式專用的整合式電路 (ASIC),可將機器學習工作負載的效能最佳化。這些 ASIC 會在 TPU 裝置上部署為多個 TPU 晶片

張量排名

#TensorFlow

請參閱排名 (Tensor)

張量的形狀

#TensorFlow

Tensor 包含的各種維度元素數量。舉例來說,[5, 10] Tensor 的形狀是 5,另一個維度為 10。

張量大小

#TensorFlow

Tensor 所含的純量總數。例如,[5, 10] Tensor 的大小為 50。

TensorStore

可有效率地讀取及寫入大型多維度陣列的程式庫

終止條件

#rl

強化學習中,決定劇集結束時間的條件,例如代理程式達到特定狀態,或超過狀態轉換門檻值。舉例來說,在井字遊戲 (又稱為「小甜甜圈」和「十字形」) 中,當玩家標記三個連續空格或所有空格都標記時,劇集就會終止。

test

#df

「決策樹狀圖」中,另一個條件的名稱。

測試損失

#fundamentals

一個指標,代表模型與測試集之間的損失。建構「模型」model時,通常會嘗試盡量減少測試損失。這是因為測試損失偏低,比訓練損失驗證損失偏低等信號的品質信號更有效。

測試損失和訓練損失或驗證遺失之間的差距極大,有時候表示您需要提高正規化率

測試集

保留給已訓練模型資料集子集。

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

資料集中的每個範例只應屬於上述其中一個子集。舉例來說,單一範例不應同時屬於訓練集和測試集。

訓練集和驗證集都與訓練模型密切相關。由於測試集只與訓練間接相關聯,因此「測試損失」比較偏誤,因此品質指標會比「訓練損失」或「驗證損失來得高。

文字時距

#language

與文字字串中特定子區段相關聯的陣列索引時距。例如,Python 字串 s="Be good now" 中的 good 字詞會擷取從 3 到 6 的文字時距。

tf.Example

#TensorFlow

用於說明機器學習模型訓練或推論輸入資料的標準 通訊協定緩衝區

tf.keras

#TensorFlow

已整合至 TensorFlow 中的 Keras 實作。

門檻 (適用於決策樹狀圖)

#df

軸對齊條件中,用來比較特徵的值。舉例來說,75 是下列條件中的門檻值:

grade >= 75

時間序列分析

#clustering

分析臨時資料的機器學習和統計資料子欄位。許多類型的機器學習問題都需要時間序列分析,包括分類、分群、預測和異常偵測。舉例來說,您可以使用時間序列分析,根據歷來銷售資料,預測每個月的冬季外套的未來銷售量。

時間步

#seq

循環類神經網路中的一個「無捲動」儲存格。例如,下圖顯示三個時間步驟 (標有下標 t-1、t 和 t+1):

在循環類神經網路中執行三個時間步驟。第一個時間步的輸出內容會成為第二個時間步的輸入內容。第二個時間步的輸出內容會成為第三個時間步的輸入內容。

權杖

#language

在「語言模型」中,這是指模型訓練用於訓練和進行預測的原子單位。符記通常是下列其中一種:

  • 舉例來說,「狗等貓」這個詞組包含三個字詞符記:「dogs」、「like」和「cats」。
  • 字元,例如「bike fish」這個詞組包含 9 個字元的符記(請注意,空格會計為其中一個符記)。
  • 子字詞,意即單一字詞可以是單一符記或多個符記。子字詞是由根字詞、前置字元或後置字元所構成。例如,以子字詞做為符記的語言模型可能會將「dogs」一詞視為兩個符記 (根字詞「dog」和複數後置字串「s」)。這種語言模型可能會將一個「taller」這個單字視為兩個子字詞 (根字詞「tall」和後置字串「er」)。

在語言模型以外的網域中,符記可以代表其他類型的原子單位。舉例來說,在電腦視覺中,符記可能是圖片的子集。

深層類神經網路本身是深層類神經網路的元件。在某些情況下,每個更新塔都會讀取獨立資料來源,且這些塔在最終層的輸出內容合併之前,都會保持獨立。在其他情況下 (例如編碼器解碼器堆疊/塔樓包含許多Transformers 堆疊/塔),塔之間會彼此交叉連線。

TPU

#TensorFlow
#GoogleCloud

Tensor Processing Unit 的縮寫。

TPU 晶片

#TensorFlow
#GoogleCloud

可程式線性代數加速器搭配晶片高頻寬記憶體,最適合機器學習工作負載。多個 TPU 晶片部署在 TPU 裝置上。

TPU 裝置

#TensorFlow
#GoogleCloud

一台列印電路板 (PCB),具備多個 TPU 晶片、高頻寬網路介面和系統冷氣硬體。

TPU 主要執行個體

#TensorFlow
#GoogleCloud

在主機上執行的中央協調程序,可傳送和接收資料、結果、計畫、效能和系統健康狀態資訊給 TPU 工作站。TPU 主要執行個體也會管理 TPU 裝置的設定和關閉作業。

TPU 節點

#TensorFlow
#GoogleCloud

Google Cloud 中採用特定 TPU 類型的 TPU 資源。TPU 節點會從對等互連虛擬私有雲網路連線至虛擬私有雲網路。TPU 節點是 Cloud TPU API 中定義的資源。

TPU Pod

#TensorFlow
#GoogleCloud

Google 資料中心內的 TPU 裝置特定設定。TPU Pod 中的所有裝置都會透過專屬的高速網路相互連線。TPU Pod 是適用於特定 TPU 版本的 TPU 裝置最大的配置。

TPU 資源

#TensorFlow
#GoogleCloud

您在 Google Cloud 上建立、管理或使用的 TPU 實體。舉例來說,TPU 節點TPU 類型即為 TPU 資源。

TPU 配量

#TensorFlow
#GoogleCloud

TPU 配量是 TPU PodTPU 裝置的一小部分。TPU 配量中的所有裝置都是透過專屬的高速網路相互連線。

TPU 類型

#TensorFlow
#GoogleCloud

採用特定 TPU 硬體版本的一或多個 TPU 裝置設定。在 Google Cloud 中建立 TPU 節點時,您需要選取 TPU 類型。舉例來說,v2-8 TPU 類型就是具有 8 個核心的單一 TPU v2 裝置。一個 v3-2048 TPU 類型有 256 部連網 TPU v3 裝置,總共有 2,048 個核心。TPU 類型是在 Cloud TPU API 中定義的資源。

TPU 工作站

#TensorFlow
#GoogleCloud

在主體機器上執行的程序,在 TPU 裝置上執行機器學習程式。

訓練

#fundamentals

判斷組成模型適當參數 (權重和偏誤) 的程序。訓練期間,系統會讀取範例內容,並逐步調整參數。訓練會使用各個範例,從幾次到數十億次都有可能。

訓練損失

#fundamentals

這個指標代表模型在特定訓練疊代期間的損失。舉例來說,假設損失函式為平均平方錯誤,也許第 10 次疊代的訓練損失 (平均平方誤差) 為 2.2,而第 100 次疊代的訓練損失為 1.9。

損失曲線:繪製訓練損失和疊代次數的比較。損失曲線提供以下有關訓練的提示:

  • 下降斜率表示模型正在改善。
  • 向上斜坡表示模型的表現越來越差。
  • 平緩表示模型已達到「收斂」

舉例來說,以下是一些理想的損失曲線

  • 在初始疊代期間,呈陡峭的斜坡,代表模型改善率高。
  • 在接近訓練結束時逐漸平坦 (但仍然下降) 的斜坡,意味著在初始疊代期間,模型能以略低的速度持續改善。
  • 在訓練結束時有平緩的斜坡表示收斂。

訓練損失與疊代的圖。這種損失曲線從陡降的斜坡開始。會逐漸平穩,直到斜坡變成零。

雖然訓練損失很重要,但請參閱一般化一節。

訓練/應用偏差

#fundamentals

模型在「訓練」期間的成效與同一模型在提供期間的效能差異。

訓練集

#fundamentals

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

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

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

軌跡

#rl

強化學習中,一組元組代表代理程式的一系列狀態轉換,每個元組分別對應至狀態、動作獎勵及特定狀態轉換的下一個狀態。

遷移學習

將資訊從一項機器學習工作轉移至另一項。舉例來說,在多工學習中,單一模型可以解決多項工作,例如處理不同任務的不同輸出節點的「深度模型」。遷移學習可能涉及將知識從較複雜的工作解決方案轉移至較複雜的工作,或涉及將知識從工作轉移到較少資料的工作。

大部分的機器學習系統可解決「單一」任務。遷移學習是人工智慧的一步,在這個程式中,單一程式可以解決多項工作。

Transformer

#language

在 Google 開發的「類神經網路」架構,以自註意機制為基礎,可將多個輸入嵌入轉換為一系列的輸出嵌入,而不需要依賴卷積循環類神經網路Transformer 可以視為自我注意力層的堆疊。

Transformer 可包含下列任一項目:

編碼器會將一系列的嵌入轉換為相同長度的新序列。編碼器包含 N 個相同的層,每個圖層包含兩個子層。這兩個子層會在輸入嵌入序列的每個位置套用,將序列的每個元素轉換成新的嵌入。第一個編碼器子層會匯總整個輸入序列的資訊。第二個編碼器子層會將匯總資訊轉換為輸出嵌入。

解碼器會將一系列的輸入嵌入轉換為一系列輸出嵌入 (長度可能不同的)。解碼器也包含 N 相同的層,其中有三個子層,其中兩個與編碼器子層類似。第三個解碼器子層會接收編碼器的輸出內容,並套用「自註意」機制從中擷取資訊。

網誌文章「Transformer:語言理解的全新類神經網路架構」一文提供 Transformer 的充分簡介。

翻譯不變

#image

發生圖片分類問題時,即使圖片中的物件位置有所變更,演算法仍能成功分類圖片。舉例來說,演算法仍然可以辨識狗,無論狗狗位於影格的中心或影格的左側都一樣。

另請參閱「大小變異數」「旋轉變異數」

三元語法

#seq
#language

N=3 的 N-gram

真陰性 (TN)

#fundamentals

此範例可讓模型「正確」預測負類。例如,模型會推論特定電子郵件「不是垃圾郵件」,且該電子郵件確實「不是垃圾郵件」

真陽性 (TP)

#fundamentals

此範例可讓模型「正確」預測正面類別。舉例來說,模型會推論特定電子郵件是垃圾郵件,而該電子郵件確實是垃圾郵件。

真陽率 (TPR)

#fundamentals

召回的同義詞。也就是:

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

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

U

不認識 (敏感屬性)

#fairness

存在敏感屬性,但未包含在訓練資料中的情況。由於敏感屬性通常與某項資料的其他屬性相關聯,因此在不瞭解機密屬性的情況下,接受訓練的模型仍可能具有該屬性的差異影響,或者違反其他公平性限制

配適

#fundamentals

產生預測能力不佳的model,因為模型並未完整擷取訓練資料中的複雜度。很多問題可能會導致缺乏配適,包括:

低取樣

類別不平衡的資料集中,移除主要類別中的範例,以建立更平衡的 訓練集

舉例來說,假設有一個資料集,主要類別與次要類別的比率是 20:1。如要克服這個類別不平衡的情形,您可以建立包含「所有」少數少數類別範例的訓練集,但只有大多數類別範例的「十位」,這會建立 2:1 的訓練集類別比率。多虧了取樣,此訓練集越平衡,模型可能產生更好的模型。或者,這個較平衡的訓練集可能包含不足以訓練有效模型的範例。

過度取樣之間的對比。

單向

#language

只評估文字「早於」目標文字的系統。相反地,雙向系統會一併評估「後方」和「追蹤」目標文字部分的文字。詳情請參閱「雙向」。

單向語言模型

#language

一種語言模型,會根據目標符記「之前」(而非目標符記「之後」) 的權杖來決定其機率。與雙向語言模型之間的對比。

未加上標籤的範例

#fundamentals

包含 features 但不含 label 的範例。例如,下表顯示了三個房屋評估模型中未加上標籤的範例,每個樣本都有三個特徵,但沒有房子值:

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

監督式機器學習中,模型會以有標籤的樣本進行訓練,並根據未加上標籤的範例進行預測。

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

與未加上標籤的範例對比已加上標籤的範例

非監督式機器學習

#clustering
#fundamentals

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

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

對比監督式機器學習技術

升幅模擬

一種行銷領域常用的模擬技術,會模擬「實驗組」對「個人」的「因果影響」(又稱「成效增幅」) 的「因果影響」。請看以下兩個範例:

  • 醫師可以使用升幅模型,根據病患 (個人) 的年齡和病史來預測醫療程序 (療法) 的死亡率下降 (因果影響)。
  • 行銷人可使用升幅模擬,預測因向個人 (個人) 投放廣告而提高的購買機率 (因果影響)。

成效升幅模型與分類迴歸不同,其中部分標籤 (例如二元處理中的一半標籤) 在升幅模擬中一律不會出現。例如,患者可以接受或不接受治療;因此,我們只能觀察患者是否只有在兩種情況下 (但並非兩種情況都接受) 就能治癒疾病。升幅模型的主要優點在於,可以針對未觀察的情況 (反事實) 產生預測結果,並用於計算因果影響。

增重

將權重套用至 downsampled 類別,該類別等於您向下取樣的因數。

使用者矩陣

#recsystems

推薦系統中,由矩陣分解產生的嵌入向量,保存了使用者偏好設定的相關潛在信號。使用者矩陣的每一列都包含關於單一使用者各種潛在信號的相對強度資訊。以電影推薦系統為例。在這個系統中,使用者矩陣中的潛在信號可能代表每位使用者對特定類型的興趣,或可能更難以解讀涉及複雜互動的信號。

使用者矩陣將每個潛在特徵各有一欄,分別代表不同的使用者。也就是說,使用者矩陣的資料列數與正在因式分解的目標矩陣相同。例如,假設有一個適用於 1,000,000 位使用者的電影推薦系統,使用者矩陣會有 1,000,000 列。

V

validation

#fundamentals

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

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

您可以考慮根據驗證集評估模型,做為第一輪測試,並根據「測試集」評估模型,做為第二輪測試。

驗證損失

#fundamentals

這個指標代表模型在特定疊代期間的驗證集「損失」。

另請參閱一般化曲線

驗證集

#fundamentals

資料集的一部分,用來根據訓練的模型執行初始評估。一般而言,您會先針對驗證集評估已訓練的模型,然後再根據測試集評估模型。

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

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

價值主張

以可接受的替代值取代遺漏值的程序。缺少值時,您可以捨棄整個範例,也可以使用值計算來保留範例。

例如,假設資料集包含每小時產生的 temperature 特徵,但是無法提供特定的小時溫度讀數以下是資料集的一部分:

時間戳記 隨機性參數
1680561000 10
1680564600 12
1680568200 missing
1680571800 20
1680575400 21
1680579000 21

系統可能會根據計算演算法,將缺少的樣本刪除,或將遺漏的溫度隱含為 12、16、18 或 20。

消失梯度問題

#seq

某些深層類神經網路早期隱藏層的漸層傾向出現出乎意料的平坦 (低)。逐漸降低的梯度會導致對深層類神經網路中節點的權重變化越來越小,導致不太容易學習。因逐漸消失梯度問題的模型,會難以訓練或無法訓練。長短期記憶儲存格可解決這個問題。

爆炸性漸層問題比較。

變數重要性

#df

一組分數,指出每個功能與模型的相對重要性。

舉例來說,假設使用決策樹狀圖來估算房屋價格。假設這個決策樹狀圖使用三種特徵:尺寸、年齡和樣式。如果將三個地圖項目的變數重要性組合計算為 {size=5.8, age=2.5, style=4.7},那麼大小在決策樹狀圖中的重要性就不是年齡或樣式。

存在不同的變數重要性指標,可讓機器學習專家瞭解模型的不同層面。

變分自動編碼器 (VAE)

#language

一種自動編碼器,利用輸入和輸出之間的差距,產生修改的輸入版本。變分自動編碼器適用於生成式 AI

VAE 是以變異推論為基礎,這是一種估算機率模型參數的技巧。

向量

超載字詞,意義會因數學和科學欄位而異。在機器學習中,向量有兩種屬性:

  • 資料類型:機器學習中的向量通常包含浮點數。
  • 元素數量:向量的長度或維度

舉例來說,假設特徵向量包含八個浮點數,這個地圖項目向量的長度或維度為八。請注意,機器學習向量通常有多種維度。

您可以用一個向量來表示多種不同的資訊。例如:

  • 地球表面的任何位置都可以表示 2D 向量,其中一個維度是緯度,另一個是經度。
  • 500 支股票的目前價格,可透過 500 維向量表示。
  • 有限數量類別的機率分佈能以向量表示。舉例來說,如果多重類別分類系統可預測三種輸出顏色 (紅、綠或黃色) 的其中之一,就可能輸出向量 (0.3, 0.2, 0.5) 以表示 P[red]=0.3, P[green]=0.2, P[yellow]=0.5

向量可以串連;因此,各種不同媒體都能以單一向量表示。部分模型會直接對許多 one-hot 編碼 的串連作業。

特殊處理器 (例如 TPU) 經過最佳化處理,可對向量執行數學運算。

向量是排名 1 的張量

Wasserstein 損失

生成對抗網路中常用的損失函式之一,主要依據為產生資料與實際資料分佈之間的地球移動者距離

重量

#fundamentals

模型乘以另一個值的值。 「訓練」是判斷模型理想權重的過程;「推論」是指使用這些已知權重進行預測的程序。

加權交替最小平方 (WALS)

#recsystems

用來在推薦系統矩陣分解期間盡量減少目標函式的演算法,可降低遺漏範例的權重。WALS 會在修正資料列因式分解和資料欄因式分解之間交錯,藉此將原始矩陣與重新建構之間的加權平方誤差降至最低。每項最佳化作業都能透過最小的凸面最佳化解決。詳情請參閱推薦系統課程

加權總和

#fundamentals

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

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

因此加權總和為:

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

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

寬模型

線性模型,通常具有許多「稀疏輸入特徵」。我們將這個模型稱為「寬版」,因為這類模型是特殊類型的類神經網路,其中包含大量輸入,且這些模型直接連接至輸出節點。寬模型的偵錯及檢查作業通常比深度模型簡單。雖然寬模型無法以隱藏層表示非線性,但寬版模型可以使用交錯特徵組合特徵分塊等轉換,以不同方式建立非線性模型。

對比深度模型

寬度

類神經網路中特定「神經元」數量。

群眾的智慧

#df

將一大群人 (即「人群」) 的意見或預估值平均產生出令人意想不到的結果。舉例來說,假設遊戲玩家猜測出裝入大型罐子中的果凍豆數量。雖然大多數人的猜測都不正確,但所有猜測的平均值都明顯地接近罐子裡的實際含糖豆數量,出奇地想不到。

Ensembles 是群眾智慧的軟體類比,即使個別模型的預測可能不準確,但將許多模型的預測結果平均會產生意料之外的預測結果。舉例來說,雖然個別決策樹狀圖的預測品質不佳,但決策樹通常都能做出非常良好的預測。

字詞嵌入

#language

「代表」嵌入向量內字詞集內的各個字詞,也就是將每個字詞表示為介於 0.0 和 1.0 之間的浮點值向量。與含不同含意的字詞相比,有含意涵義的字詞所呈現的意義更為相似。舉例來說,「carrots」、「celery」和「小黃瓜」的表示法都相當類似,因此與「飛機」、「太陽眼鏡」和「牙膏」的表示法截然不同。

X

XLA (加速線性代數)

適用於 GPU、CPU 和機器學習加速器的開放原始碼機器學習編譯器。

XLA 編譯器會從 PyTorchTensorFlowJAX 等熱門的機器學習架構取得模型,並經過最佳化調整,以便在 GPU、CPU 和機器學習加速器等不同硬體平台上發揮最佳效能。

Z

零樣本學習

一種機器學習「訓練」模型會針對尚未特別訓練的工作推斷「預測」。換句話說,模型會提供零作業專屬的訓練範例,但要求針對該工作執行推論

零樣本提示

#language
#生成式 AI

提示「未」提供您想要大型語言模型回應方式的範例。例如:

單一提示組成部分 附註
指定國家/地區的官方貨幣為何? 您希望 LLM 回答的問題。
印度: 實際查詢。

大型語言模型可能會以下列任一內容回應:

  • 盧比符號
  • INR
  • 印度盧比
  • 魯蛇
  • 印度盧比

所有答案都正確,但您可能想要使用特定格式。

比較並對照下列字詞:零樣本提示

Z 分數正規化

#fundamentals

「縮放」技巧,以浮點值取代原始功能值,代表相對於該特徵平均值的標準差次數。例如,假設某個特徵的平均值為 800,且標準差為 100,下表顯示 Z 分數正規化如何將原始值對應至其 Z 分數:

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

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