機器學習詞彙表

本詞彙表定義了機器學習相關術語。

A

消融

一種評估特徵或元件的重要性的方法,方法是暫時移除模型。接著,您可以在沒有該特徵或元件的情況下重新訓練模型,如果重新訓練的模型成效大幅下滑,則表示移除的特徵或元件可能很重要。

舉例來說,假設您以 10 項特徵訓練分類模型,並在測試集上獲得 88% 的精確度。如要檢查第一個特徵的重要性,您可以只使用其他九個特徵重新訓練模型。如果經過重新訓練的模型成效大幅下滑 (例如精確度為 55%),則移除的特徵可能很重要。反之,如果重新訓練的模型成效同樣良好,那麼該特徵可能就不是那麼重要。

消除法也能協助您判斷下列項目的重要性:

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

無論是哪種情況,您都會在移除元件後,觀察系統效能是否有所變動 (或不變動)。

A/B 測試

統計方法,用於比較兩種 (或多種) 技術:AB。一般來說,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}}$$

其中:

比較並對照準確率、查準率查全率

如需更多資訊,請參閱機器學習速成課程中的「分類:準確度、喚回率、精確度和相關指標」一文。

動作

#rl

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

激活函式

#fundamentals

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

常見的啟用函式包括:

激活函式的圖表絕不會是單一直線。舉例來說,ReLU 活化函式的圖表由兩條直線組成:

兩條線的笛卡爾圖表。第一行具有 0 的常數 y 值,沿著 x 軸從 -infinity,0 到 0,-0 執行。第二行則從 0,0 開始。此線條的斜率為 +1,因此會從 0,0 到 +infinity,+infinity。

以下是對數函數的活化函數圖表:

這張兩維曲線圖的 x 值範圍從 -infinity 到 +positive,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 曲線下的面積)」一文。

ROC 曲線下面積

請參閱「AUC (ROC 曲線下面積)」一文。

通用人工智慧

非人類機制,可展現多樣的解決問題、創造力和適應力。舉例來說,展示人工通用智慧的程式可以翻譯文字、編寫交響曲,並擅長尚未發明的遊戲。

人工智慧

#fundamentals

可以解決複雜任務的非人類程式或模型。舉例來說,翻譯文字的程式或模型,以及從放射影像中識別疾病的程式或模型,都屬於人工智慧。

正式來說,機器學習是人工智慧的子領域。不過,近年來,部分機構已開始將「人工智慧」和「機器學習」這兩個詞互換使用。

注意力

#language

神經網路中使用的機制,用於指出特定字詞或字詞的某個部分的重要性。注意力機制會壓縮模型預測下一個符記/字詞所需的資訊量。典型的注意力機制可能包含一組輸入值的加權總和,其中每個輸入值的權重是由神經網路的另一個部分計算而得。

請參閱自我注意力多頭自我注意力,這兩者是 Transformer 的構建元件。

如要進一步瞭解自我注意力,請參閱機器學習速成課程中的「LLM:大型語言模型是什麼?」一文。

屬性

#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。

大多數模型介於這兩種極端之間。舉例來說,下列模型可將正面和負面結果分開,因此 AUC 值介於 0.5 和 1.0 之間:

數軸上有 6 個正例和 6 個負例。示例的順序為負面、負面、負面、負面、正面、負面、正面、正面、負面、正面、正面、正面。

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

詳情請參閱機器學習速成課程中的「分類:ROC 和 AUC」一文。

擴增實境

#image

這項技術會在使用者看到的實境畫面上疊加電腦產生的圖像,進而提供合成畫面。

自動編碼器

#language
#image

系統會學習從輸入內容中擷取最重要的資訊。自動編碼器是編碼器解碼器的組合。自動編碼器會採用下列兩步驟程序:

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

自動編碼器會透過解碼器嘗試盡可能從編碼器的中間格式,重建原始輸入內容,進行端對端訓練。由於中間格式比原始格式小 (維度較低),因此自動編碼器會強制學習輸入內容中哪些資訊是必要的,且輸出內容不會與輸入內容完全相同。

例如:

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

另請參閱變分自動編碼器

自動評估

#language
#generativeAI

使用軟體判斷模型輸出內容的品質。

如果模型輸出內容相對簡單,指令碼或程式可以將模型輸出內容與黃金回應進行比較。這類自動評估有時也稱為程式評估ROUGEBLEU 等指標通常可用於程式評估。

如果模型輸出內容複雜,或沒有單一正確答案,系統有時會使用稱為自動評分器的獨立機器學習程式自動評估。

請參閱人工評估

自動化偏誤

#fairness

當人工決策者偏好自動化決策系統的最佳化建議,而非非自動化系統提供的資訊,即使自動化決策系統有誤,也一樣如此。

詳情請參閱機器學習速成課程中的「公平性:偏見類型」一文。

AutoML

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

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

AutoML 對數據資料學家來說非常實用,因為這項服務可節省他們在開發機器學習管道時的時間和精力,並提高預測準確度。這對非專家也相當實用,因為他們可以更輕鬆地執行複雜的機器學習工作。

如需更多資訊,請參閱機器學習速成課程中的「自動化機器學習 (AutoML)」一文。

自動產生器評估

#language
#generativeAI
混合機制,結合人工評估自動評估,用於評估生成式 AI 模型輸出的品質。自動撰寫器是一種機器學習模型,會根據人工評估所建立的資料進行訓練。理想情況下,自動評分工具會學習模仿人類評估人員。

您可以使用預先建構的自動回覆器,但最佳的自動回覆器會根據您要評估的工作進行精細調整。

自動迴歸模型

#language
#image
#generativeAI

模型:根據先前的預測結果推斷預測結果。舉例來說,自動迴歸語言模型會根據先前預測的符記,預測下一個符記。所有以 Transformer 為基礎的大型語言模型都是自動迴歸模型。

相較之下,以 GAN 為基礎的圖像模型通常不是自動迴歸模型,因為它們會在單一前向傳遞中產生圖像,而不是在步驟中逐漸產生圖像。不過,某些圖像產生模型自動迴歸模型,因為它們會分步驟產生圖像。

輔助損失

損失函式:與神經網路 模型的主要損失函式搭配使用,有助於在權重隨機初始化的早期迭代期間,加速訓練

輔助損失函式會將有效的漸層推送至較早的圖層。這有助於在訓練期間收斂,因為它可對抗梯度消失問題

k 的平均精確度

#language

這項指標用於總結模型在單一提示 (產生排名結果,例如書籍推薦書的編號清單) 上的成效。k 的平均精確度是每個相關結果的精確度在 k 處值的平均值。因此,k 的平均精確度計算公式為:

\[{\text{average precision at k}} = \frac{1}{n} \sum_{i=1}^n {\text{precision at k for each relevant item} } \]

其中:

  • \(n\) 是清單中的相關項目數量。

請比較recall at k

對齊軸的條件

#df

決策樹中,只涉及單一功能條件。舉例來說,如果 area 是功能,則下列為軸對齊條件:

area > 200

斜線條件形成對比。

B

反向傳播

#fundamentals

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

訓練類神經網路時,需要多次iterations以下兩次循環:

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

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

學習率是調節係數,可控制每次反向傳播時,增加或減少各權重值的程度。較高的學習率會比較低的學習率,更大幅地增加或減少各個權重。

在微積分術語中,反向傳播會實作微積分中的鏈式法則。也就是說,反向傳播會計算錯誤相對於每個參數的偏微分

多年前,機器學習研究人員必須編寫程式碼來實作反向傳播。現今的機器學習 API (例如 Keras) 會為您實作回傳。呼!

如需詳細資訊,請參閱機器學習速成課程中的「類神經網路」一文。

bagging

#df

這是一種訓練集成的方法,其中每個組成部分模型會針對取樣並替換的隨機訓練示例子集進行訓練。舉例來說,隨機森林是使用袋裝法訓練的決策樹集合。

「bagging」一詞是「bootstrap aggregating」的縮寫,指的是「bootstrap aggregating」的縮寫。

詳情請參閱「決策樹」課程中的「隨機森林」一節。

字詞袋

#language

表示詞組或段落中字詞的形式,不論順序為何。舉例來說,字詞袋可用來表示下列三個詞組:

  • 狗跳躍
  • 跳躍的狗
  • 狗跳躍

每個字詞都會對應至稀疏向量中的索引,其中向量會為詞彙中的每個字詞提供索引。舉例來說,字詞「the dog jumps」會對應至特徵向量,其中三個索引的值皆不為零,分別對應至「the」、「dog」和「jumps」。非零值可以是下列任一項目:

  • 1 代表字詞存在。
  • 字詞在袋子中出現的次數。舉例來說,如果詞組是「the maroon dog is a dog with maroon fur」,則「maroon」和「dog」會分別以 2 和 1 代表,其他字則以 1 代表。
  • 其他值,例如字詞在袋子中出現次數的對數。

基準

模型:用於比較另一個模型 (通常是較複雜的模型) 效能優劣的參考點。舉例來說,邏輯迴歸模型可能會成為深度模型的良好基準。

針對特定問題,基準可協助模型開發人員量化新模型必須達到的最低預期成效,以便新模型發揮效用。

Batch

#fundamentals

在單一訓練疊代中使用的範例集。批次大小會決定批次中的樣本數量。

如要瞭解批次與 epoch 的關聯方式,請參閱「epoch」。

詳情請參閱機器學習速成課程中的「線性迴歸:超參數」一文。

批次推論

#TensorFlow
#GoogleCloud

針對多個未標示的範例進行預測,並將其分割成較小的子集 (「批次」),然後推論預測結果的程序。

批次推論可運用加速器晶片的平行處理功能。也就是說,多個加速器可以同時針對不同批次的未標註範例進行預測推論,大幅提高每秒推論次數。

如需更多資訊,請參閱機器學習速成課程中的「正式版 ML 系統:靜態與動態推論」。

批次正規化

正規化啟用函式隱藏層中的輸入或輸出內容。批次正規化可提供下列優點:

批量

#fundamentals

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

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

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

詳情請參閱下列說明文章:

貝氏神經網路

一種概率 神經網路,可計算權重和輸出的不確定性。標準神經網路迴歸模型通常會預測單一值;例如標準模型預測房價為 853,000 美元。相較之下,貝氏神經網路會預測值的分配情形。舉例來說,貝氏模型會預測房價為 853,000 元,標準差為 67,200 元。

貝葉斯神經網路會利用 貝葉斯定理計算權重和預測的不確定性。在需要量化不確定性的情況下,例如在與藥品相關的模型中,貝葉斯神經網路就非常實用。貝葉斯神經網路也能協助避免過度擬合

貝式最佳化

機率迴歸模型:一種用來最佳化計算成本高昂的目標函式的技術,方法是改為最佳化使用貝氏學習技術量化不確定性的替代值。由於貝氏最佳化本身成本高昂,因此通常用於最佳化評估成本高昂且參數數量不多的工作,例如選取超參數

Bellman 方程式

#rl

在強化學習中,最佳 Q 函式 會滿足下列等式:

\[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] \]

除了強化學習之外,Bellman 方程式也適用於動態規劃。請參閱 維基百科的 Bellman 方程式條目

BERT (基於變換器的雙向編碼器表示技術)

#language

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

BERT 具有下列特性:

BERT 的變化版本包括:

  • ALBERT 是「A」「L」「BERT」的縮寫。
  • LaBSE

如需 BERT 的總覽資訊,請參閱「開放原始碼 BERT:自然語言處理最先進的預先訓練技術」。

偏見 (道德/公平性)

#fairness
#fundamentals

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

2. 系統性錯誤:這類偏誤的形式包括:

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

詳情請參閱機器學習速成課程中的「公平性:偏見類型」一文。

偏差 (數學) 或偏差項

#fundamentals

從原點的截距或偏移量。偏差是機器學習模型中的參數,可用下列任一符號表示:

  • b
  • w0

例如,偏差是以下公式中的 b

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

在簡單的二維線條中,偏差就是「y 軸截距」。例如,下圖中線條的偏差為 2。

斜率為 0.5、偏差 (y 截距) 為 2 的線圖。

偏差的存在是因為並非所有模型都從原點 (0,0) 開始。舉例來說,假設遊樂園的入園費為 2 歐元,每小時額外收取 0.5 歐元,因此,映射總費用的模型偏差為 2,因為最低費用為 2 歐元。

偏誤與倫理和公平性偏誤預測偏誤不同。

詳情請參閱機器學習速成課程中的「線性迴歸」一文。

雙向

#language

用來描述系統評估文字時,會同時評估目標文字區塊前後的文字。相反地,單向系統只會評估目標文字段落前面的文字。

舉例來說,請考慮以下問題中,遮罩語言模型必須判斷代表下列問題中底線的字詞或字串的機率:

你有什麼 _____ 嗎?

單向語言模型必須根據「What」、「is」和「the」等字詞提供的背景資訊,計算機率。相較之下,雙向語言模型也可以從「with」和「you」取得上下文,這可能有助於模型產生更準確的預測結果。

雙向語言模型

#language

語言模型:根據前面後面的文字,判斷在文字摘錄中指定符號出現在指定位置的可能性。

bigram

#seq
#language

N=2 的 N-gram

二元分類

#fundamentals

一種分類任務,可預測兩個互斥類別中的一個:

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

  • 這個模型會判斷電子郵件是否為垃圾郵件 (正類) 或非垃圾郵件 (負類)。
  • 評估醫療症狀的模型,用於判斷某人是否患有特定疾病 (正類別),或沒有該疾病 (負類別)。

請參閱多元分類

另請參閱邏輯迴歸分類閾值

詳情請參閱機器學習速成課程中的「分類」一文。

二元條件

#df

決策樹中,只有兩種可能結果的條件,通常是「是」或「否」。例如,以下是二元條件:

temperature >= 100

請參閱非二元條件

詳情請參閱決策樹課程中的「條件類型」。

特徵分塊

與「分桶」同義。

BLEU (雙語評估研究)

#language

評估機器翻譯 (例如從西班牙文翻譯成日文) 的 0.0 到 1.0 之間指標。

為了計算分數,BLEU 通常會將 ML 模型的翻譯內容 (產生的文字) 與人工專家翻譯內容 (參考文字) 進行比較。產生文字和參考文字中 N-grams 相符的程度,決定了 BLEU 分數。

這個指標的原始論文為「BLEU:一種自動評估機器翻譯的方法」

另請參閱 BLEURT

BLEURT (Transformer 的雙語評估研究)

#language

評估機器翻譯的指標,特別是從一種語言翻譯成另一種語言的翻譯結果,尤其是從英文翻譯成英文。

對於從英文翻譯成英文的翻譯,BLEURT 比 BLEU 更能與人類評分一致。與 BLEU 不同,BLEURT 強調語意相似性,並可容納改寫內容。

BLEURT 會使用預先訓練的大型語言模型 (具體來說是 BERT),然後根據人類翻譯的文字進行微調

這項指標的原始論文為 BLEURT:Learning Robust Metrics for Text Generation

增強

一種機器學習技術,會透過加重模型目前誤分類的範例,將一組簡單且準確度不高的分類器 (稱為「弱」分類器) 逐一結合成準確度較高的分類器 (稱為「強」分類器)。

詳情請參閱決策樹課程中的「梯度提升決策樹」。

定界框

#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]

不過,廣播功能會透過虛擬方式擴充 B,讓 A+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 等函式,為所有正面標籤計算機率,但只針對隨機的負面標籤樣本。舉例來說,如果有標示為「beagle」和「dog」的示例,候選取樣會計算下列項目的預測機率和對應的損失項:

  • beagle
  • dog
  • 剩餘負類別的隨機子集 (例如 棒棒糖柵欄)。

這項做法的概念是,只要正類一律獲得適當的正向強化,負類就能從較少的負向強化學習,這點確實在實證研究中觀察到。

候選項目取樣比起訓練演算法,更能有效地計算「所有」負面類別的預測值,尤其是當負面類別數量非常龐大時。

類別型資料

#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
#generativeAI

提示工程技巧,可讓大型語言模型 (LLM) 逐步說明其推理方式。舉例來說,請參考下列提示,並特別留意第二句:

如果車輛在 7 秒內從 0 加速到每小時 60 英里,駕駛者會感受到多少 g 力?在答案中顯示所有相關計算。

LLM 的回應可能會:

  • 顯示一連串物理公式,並在適當位置插入 0、60 和 7 的值。
  • 說明為何選擇這些公式,以及各種變數的含義。

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

對話

#language
#generativeAI

與機器學習系統 (通常是大型語言模型) 進行一來一往對話的內容。聊天中的先前互動內容 (您輸入的內容和大型語言模型的回應方式) 會成為後續聊天內容的脈絡。

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

檢查站

在訓練期間或訓練完成後,用於擷取模型參數狀態的資料。舉例來說,在訓練期間,您可以:

  1. 停止訓練,可能是刻意為之,也可能是某些錯誤的結果。
  2. 擷取查核點。
  3. 稍後重新載入檢查點,可能會在其他硬體上執行。
  4. 重新展開訓練。

類別

#fundamentals

標籤可屬於的類別。例如:

  • 在用於偵測垃圾郵件的二元分類模型中,這兩個類別可能是「垃圾郵件」和「非垃圾郵件」
  • 在用於識別狗種的多元分類模型中,類別可能包括貴賓犬比利時獵狐梗巴哥犬等。

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

詳情請參閱機器學習速成課程中的「分類」一文。

分類模型

#fundamentals

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

  • 預測輸入句子的語言 (法文?西班牙文?義大利文?)。
  • 預測樹種的模型 (楓樹?Oak?猴麵包樹?)。
  • 預測特定醫療狀況的正類或負類模型。

相較之下,迴歸模型會預測數字,而非類別。

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

分類門檻

#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 個標籤,類別為「green」
  • 200 個屬於「purple」類別的標籤
  • 350 個標籤,類別為「orange」

另請參閱多數類別少數類別

剪輯

#fundamentals

處理離群值的一種技巧,可執行下列任一或兩項操作:

  • 將大於上限值的特徵值降至上限值。
  • 將低於最低閾值的特徵值提高至該閾值。

舉例來說,假設特定特徵的值有 0.5% 落在 40 到 60 以外的範圍,在這種情況下,您可以採取以下行動:

  • 將所有超過 60 的值 (最大值門檻) 裁減為 60。
  • 將所有低於 40 (最低門檻) 的值裁剪為 40。

異常值可能會損壞模型,有時會導致權重在訓練期間溢位。某些異常值也會大幅影響準確度等指標。裁剪是限制損害的常見技巧。

梯度裁剪會在訓練期間將梯度值強制設為指定範圍。

詳情請參閱機器學習速成課程中的「數值資料:正規化」一文。

Cloud TPU

#TensorFlow
#GoogleCloud

專門的硬體加速器,旨在加快 Google Cloud 上的機器學習工作負載。

分群

#clustering

將相關的示例分組,尤其是在非監督式學習期間。所有範例都已分組後,您可以選擇為每個叢集提供意義。

目前有許多分群演算法。舉例來說,k-means 演算法會根據示例與群集中心的距離,將示例分組,如下圖所示:

這張二維圖表的 x 軸標示為樹寬,y 軸標示為樹高。圖表包含兩個中位點和數十個資料點。系統會根據資料點的距離將其分類。也就是說,最接近一個中心點的資料點會歸類為叢集 1,而最接近另一個中心點的資料點則歸類為叢集 2。

然後由人類研究人員檢查這些叢集,例如將叢集 1 標示為「矮樹」,叢集 2 標示為「全尺寸樹木」。

舉另一個例子來說,請考慮根據範例與中心點的距離,使用叢集演算法,如下所示:

數十個資料點以同心圓排列,幾乎就像是圍繞著飛鏢板中心的洞一樣。最內層的資料點環形會歸類為叢集 1,中間環形歸類為叢集 2,最外層環形則歸類為叢集 3。

詳情請參閱分群課程

共同調整

神經元幾乎完全依賴其他特定神經元的輸出內容,而非整體網路行為,來預測訓練資料中的模式時。如果驗證資料中沒有造成共適應的模式,共適應就會導致過度擬合。Dropout 規則化可減少共適應,因為 Dropout 可確保神經元無法單獨依賴其他特定神經元。

協同過濾

#recsystems

根據許多其他使用者的興趣,預測某位使用者的興趣。協同過濾通常用於推薦系統

詳情請參閱推薦系統課程中的「協同篩選」一節。

概念偏移

特徵與標籤之間的關係發生變化。隨著時間推移,概念漂移會降低模型品質。

在訓練期間,模型會學習訓練集內特徵與標籤之間的關係。如果訓練集的標籤是真實世界的良好替代值,模型「應」做出良好的實際預測。不過,由於概念漂移,模型的預測結果往往會隨著時間而劣化。

舉例來說,假設您有一個二元分類模型,用來預測某款車是否「省油」。也就是說,這些功能可以是:

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

而標籤為下列任一情況:

  • 省油
  • 不省油

不過,「省油車」的概念一直在改變。1994 年被標示為「省油」的車款,在 2024 年幾乎肯定會被標示為「不省油」。概念漂移的模型,隨著時間推移,預測的準確度會越來越低。

請參閱非平穩性

狀況

#df

決策樹中,任何評估表式的節點。舉例來說,決策樹的以下部分包含兩個條件:

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

條件也稱為「測試」或「分割」。

leaf 比較的條件。

另請參閱:

詳情請參閱決策樹課程中的「條件類型」。

虛構

#language

幻覺的同義詞。

與其說是幻覺,不如說是編造比較準確。不過,幻覺一開始就很受歡迎。

設定

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

在機器學習專案中,您可以透過特殊設定檔或使用設定程式庫 (例如下列程式庫) 進行設定:

確認偏誤

#fairness

傾向以符合自己先前信念或假設的方式搜尋、解讀、偏好及回想資訊。機器學習開發人員可能會無意中以影響結果的方式收集或標記資料,以符合他們現有的想法。確認偏誤是隱性偏誤的一種形式。

實驗者偏誤是一種確認偏誤,實驗者會持續訓練模型,直到先前假設得到證實為止。

混淆矩陣

#fundamentals

這張 N x N 的表格會匯總分類模型的正確和錯誤預測數量。舉例來說,請參考下列 二元分類模型的混淆矩陣:

腫瘤 (預測) 非腫瘤 (預測)
腫瘤 (真值) 18 (TP) 1 (FN)
非腫瘤 (真值) 6 (FP) 452 (TN)

上方的混淆矩陣顯示以下資訊:

  • 在 19 個預測中,基準真相為腫瘤的預測結果中,模型正確分類 18 個,錯誤分類 1 個。
  • 在基準真相為非腫瘤的 458 個預測結果中,模型正確分類 452 個,錯誤分類 6 個。

多類別分類問題的混淆矩陣可協助您找出錯誤模式。舉例來說,請參考下列 3 類多類型分類模型的混淆矩陣,該模型將三種不同的鳶尾花類型 (Virginica、Versicolor 和 Setosa) 分類。當真值為 Virginica 時,混淆矩陣顯示模型比起 Setosa 更有可能誤判為 Versicolor:

  Setosa (預測) Versicolor (預測) Virginica (預測)
Setosa (真值) 88 12 0
Versicolor (真值) 6 141 7
Virginica (真值) 2 27 109

舉另一個例子來說,混淆矩陣可能會顯示訓練辨識手寫數字的模型,傾向於誤判為 9 而非 4,或誤判為 1 而非 7。

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

選區剖析

#language

將句子分割成較小的文法結構 (「成分」)。相較於原始句子,機器學習系統的後續部分 (例如自然語言理解模型) 更容易剖析構成要素。例如,請考慮下列句子:

我的朋友收養了兩隻貓咪。

詞組解析器可將這句話分為下列兩個詞組:

  • 「My friend」是名詞片語。
  • 「adopted two cats」是動詞片語。

這些元素可進一步細分為更小的元素。例如動詞片語

收養了兩隻貓

可進一步細分為:

  • 「adopted」是動詞。
  • 兩隻貓是另一個名詞片語。

依情境設定的語言嵌入

#language
#generativeAI

嵌入,可讓系統以類似於母語人士的方式「理解」字詞和詞組。情境化語言嵌入可理解複雜的語法、語意和情境。

舉例來說,請考慮英文單字「cow」的嵌入。較舊的嵌入資料 (例如 word2vec) 可以代表英文單字,以便在嵌入資料空間中,從母牛公牛的距離與從母羊公羊或從女性男性的距離相似。在這種情況下,如果使用者輸入「cow」一詞,系統會知道這是指「牛」或「牛市」,進而進一步瞭解這項資訊。

上下文視窗

#language
#generativeAI

模型可在特定提示中處理的符記數量。脈絡窗口越大,模型就能使用越多資訊,為提示提供連貫一致的回覆。

連續性特徵

#fundamentals

浮點 特徵,可能的值範圍無限,例如溫度或重量。

請參閱「離散特徵」一節。

便利取樣

使用非科學方式收集的資料集,以便快速進行實驗。之後,請務必切換至以科學方式收集的資料集。

收斂

#fundamentals

在每個疊代中,損失值幾乎沒有變動或完全沒有變動時,就會達到這個狀態。舉例來說,下列損失曲線顯示,在約 700 次迭代後會達到收斂:

笛卡爾圖表。X 軸是損失。Y 軸是訓練疊代次數。在前幾次迭代期間,損失非常高,但之後會大幅下降。大約 100 次迭代後,損失仍在下降,但速度會緩慢許多。經過約 700 次疊代後,損失值會維持不變。

如果額外訓練無法改善模型,則模型會收斂

深度學習中,損失值有時會在多次疊代後維持不變或幾乎不變,最後才開始下降。在長期的常數損失值期間,您可能會暫時產生錯誤的收斂感。

另請參閱提早中止訓練

如需更多資訊,請參閱機器學習速成課程中的「模型收斂和損失曲線」。

凸函數

函式中圖表上方的區域是凸集。原型凸函式的形狀類似字母 U。舉例來說,下列函式皆為凸函式:

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

相反地,下列函式並非凸函式。請注意,圖表上方的區域並非凸集:

具有兩個不同局部最小值點的 W 型曲線。

嚴格凸函式只有一個局部最小值點,也是全域最小值點。傳統的 U 形函式是嚴格凸函式。不過,某些凸函數 (例如直線) 並非 U 形。

如需更多資訊,請參閱機器學習速成課程中的「收斂和凸函式」。

凸函數最佳化

使用梯度下降等數學技巧找出凸函數的最小值的過程。許多機器學習研究都著重於將各種問題定義為凸最佳化問題,並更有效率地解決這些問題。

如需完整詳細資料,請參閱 Boyd 和 Vandenberghe 的「Convex Optimization」一文。

凸集合

歐幾里得空間的子集,其中子集內任兩點之間的線條都會完全位於子集內。舉例來說,下列兩個形狀是凸集:

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

相反地,下列兩個形狀並非凸集:

一張圓餅圖插圖,其中缺少一個扇形。另一個不規則多邊形的插圖。

卷積

#image

在數學中,指的是兩個函式的混合。在機器學習中,卷積會將卷積篩選器和輸入矩陣混合,以便訓練權重

在機器學習中,「卷積」一詞通常是指卷積運算卷積層的簡稱。

如果沒有卷積運算,機器學習演算法就必須為大型張量中的每個單元格學習個別權重。舉例來說,如果機器學習演算法訓練 2K x 2K 圖片,就會被迫尋找 4M 個個別權重。有了卷積運算,機器學習演算法只需為卷積濾鏡中的每個單元格找出權重,大幅減少訓練模型所需的記憶體。套用卷積篩選器時,只需在各個單元格中複製該篩選器,讓每個單元格都乘以該篩選器。

詳情請參閱圖像分類課程中的「卷積式神經網路簡介」。

卷積濾波器

#image

卷積運算中的兩個角色之一。(另一個演算子是輸入矩陣的切片)。卷積濾鏡是與輸入矩陣具有相同的矩陣,但形狀較小。舉例來說,如果有 28x28 的輸入矩陣,篩選器可以是任何小於 28x28 的 2D 矩陣。

在相片處理作業中,卷積式濾鏡中的所有單元格通常會設為一和零的常數模式。在機器學習中,卷積濾鏡通常會使用隨機數值進行播種,然後網路會訓練理想值。

詳情請參閱圖像分類課程中的「卷積」

卷積層

#image

深度神經網路的層,其中卷積篩選器會沿著輸入矩陣傳遞。舉例來說,請考慮下列 3x3 卷積式濾鏡

3x3 矩陣,其中包含以下值:[[0,1,0], [1,0,1], [0,1,0]]

以下動畫顯示卷積層,其中包含 5x5 輸入矩陣的 9 個卷積運算。請注意,每個卷積運算作業都會處理輸入矩陣的不同 3x3 切片。產生的 3x3 矩陣 (在右側) 包含 9 個卷積運算的結果:

動畫:顯示兩個矩陣。第一個矩陣是 5x5 矩陣:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]]。第二個矩陣是 3x3 矩陣:
          [[181,303,618], [115,338,605], [169,351,560]].
          計算第二個矩陣時,會在 5x5 矩陣的不同 3x3 子集上套用卷積篩選器 [[0, 1, 0], [1, 0, 1], [0, 1, 0]]。

詳情請參閱圖像分類課程中的「全連結層」。

卷積類神經網路

#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,100,192,177]].

請想像以下 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 的「Combining Labeled and Unlabeled Data with Co-Training」

反事實公平性

#fairness

公平性指標:檢查分類器是否會為某位使用者產生與另一位使用者相同的結果,前提是兩位使用者在某些敏感屬性方面相同。評估分類器的反事實公平性,是一種找出模型中潛在偏差來源的方法。

如需更多資訊,請參閱下列任一資源:

涵蓋偏誤

#fairness

請參閱選擇偏誤

當機圖示

#language

含義不明確的句子或詞組。崩潰綻放是自然語言理解中的重要問題。舉例來說,「Red Tape Holds Up Skyscraper」是個失敗的花招,因為 NLU 模型可能會以字面或比喻的方式解讀標題。

評論家

#rl

Deep Q-Network 同義。

交叉熵

對數損失推廣至多重分類問題。交叉熵可量化兩個機率分佈之間的差異。另請參閱困惑

交叉驗證

一種機制,可透過測試模型與訓練集中未使用的一或多個不重疊資料子集,評估模型可將新資料推廣至何種程度。

累積分佈函式 (CDF)

這個函式會定義樣本頻率小於或等於目標值的頻率。舉例來說,請考慮連續值的常態分佈。CDF 會告訴您,約 50% 的樣本值應小於或等於平均值,而約 84% 的樣本值應小於或等於平均值以上一個標準差。

D

資料分析

透過樣本、測量和視覺化資料,瞭解資料。在首次收到資料集時,在建構第一個模型之前,資料分析就特別實用。這也是瞭解實驗和偵測系統問題的關鍵。

資料擴增

#image

透過轉換現有的範例來建立其他範例,藉此人為地提升訓練範例的範圍和數量。舉例來說,假設圖片是您的特徵之一,但資料集未包含足夠的圖片範例,模型就無法學習到實用的關聯。理想情況下,您應在資料集中加入足夠的已標示圖片,讓模型能夠正確訓練。如果無法做到這點,資料增強功能可以旋轉、拉伸和反射每張圖片,產生原始圖片的許多變化版本,進而產生足夠的標記資料,以利進行優質訓練。

DataFrame

#fundamentals

熱門的 pandas 資料類型,用於在記憶體中表示資料集

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

DataFrame 中的每個資料欄結構都類似 2D 陣列,但每個資料欄都可以指派自己的資料類型。

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

資料平行處理

一種擴大訓練推論的方式,會將整個模型複製到多部裝置上,然後將部分輸入資料傳遞給每部裝置。資料平行處理可讓您針對非常大的批次大小進行訓練和推論;不過,資料平行處理要求模型必須足夠小,才能在所有裝置上運作。

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

另請參閱模型平行處理

Dataset API (tf.data)

#TensorFlow

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

資料集

#fundamentals

一組原始資料,通常 (但不限於) 以下列格式排序:

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

決策邊界

模型二元類別多元分類問題中學到的類別之間的分隔符。舉例來說,在下列代表二元分類問題的圖片中,決策邊界是橘色類別和藍色類別之間的邊界:

類別之間的明確界線。

決策森林

#df

由多個決策樹建立的模型。決策樹叢集會匯總決策樹的預測結果,藉此做出預測。熱門的決策樹類型包括 隨機森林梯度提升樹狀圖

詳情請參閱「決策樹」課程中的「決策樹」一節。

決策門檻

與「分類門檻」同義。

決策樹狀圖

#df

監督式學習模型由一組條件葉子組成,並以階層方式排列。例如,以下是決策樹:

決策樹包含四個條件,以階層方式排列,並導向五個葉節點。

解碼器

#language

一般來說,任何從經過處理、密集或內部表示法轉換為較原始、稀疏或外部表示法的 ML 系統。

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

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

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

如需更多資訊,請參閱機器學習速成課程中的「大型語言模型」一文。

深度模型

#fundamentals

包含多個隱藏層神經網路

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

寬廣模型形成對比。

便相當熱門的

與「深度模型」同義。

深度 Q 網路 (DQN)

#rl

Q 鍵學習 中,深度 神經網路可預測 Q 函式

Critic 是 Deep Q-Network 的同義詞。

客層均等

#fairness

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

舉例來說,如果小人和巨人皆申請入學 Glubbdubdrib 大學,只要小人和巨人錄取的百分比相同,就算是達成客層平衡,無論兩者平均資格是否有差異皆然。

均等機率機會均等相比,這項原則允許分類結果的總和取決於機密屬性,但不允許特定指定真相標籤的分類結果取決於機密屬性。請參閱「以更智慧的機器學習對抗歧視」一文,瞭解如何在最佳化客層平衡時權衡取捨。

如需更多資訊,請參閱機器學習速成課程中的「公平性:人口統計資料平衡」

去雜訊

#language

自監督式學習的常見方法:

  1. 雜訊是人為加入資料集的。
  2. 模型會嘗試移除雜訊。

去噪處理可讓模型從未標示的範例學習。原始資料集可做為目標或標記,雜訊資料則可做為輸入內容。

部分掩碼語言模型會使用以下去雜訊方法:

  1. 系統會透過遮蓋部分符記,在未標記的句子中人為加入雜訊。
  2. 模型會嘗試預測原始符記。

稠密特徵

#fundamentals

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

8 3 7 5 2 4 0 4 9 6

請參閱「稀疏特徵」一文,瞭解這兩者有何不同。

稠密層

與「全連接層」同義。

深度

#fundamentals

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

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

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

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

#image

卷積類神經網路架構,以Inception 為基礎,但 Inception 模組會替換為深度可分離卷積。又稱為 Xception。

深度可分離卷積 (亦稱為可分離卷積) 會將標準 3D 卷積分解為兩個運算效率更高的卷積運算:第一個是深度為 1 (n ✕ n ✕ 1) 的深度卷積,第二個是深度和寬度皆為 1 (1 ✕ 1 ✕ n) 的點卷積。

如需瞭解詳情,請參閱「Xception:使用深度可分離卷積運算進行深度學習」。

衍生標籤

與「代理標籤」同義。

裝置

#TensorFlow
#GoogleCloud

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

  1. 可執行 TensorFlow 工作階段的硬體類別,包括 CPU、GPU 和 TPU
  2. 加速器晶片 (GPU 或 TPU) 上訓練機器學習模型時,系統會實際操作張量嵌入。裝置會使用加速器晶片運作。相較之下,主機通常會在 CPU 上執行。

差異化隱私

在機器學習中,匿名化方法可保護模型訓練集中包含的任何敏感資料 (例如個人資訊),避免資料外洩。這麼做可確保模型不會學習或記住太多特定使用者相關資訊。這項功能會在模型訓練期間進行取樣並加入雜訊,以便模糊處理個別資料點,降低機密訓練資料外洩的風險。

差異化隱私也用於機器學習以外的領域。舉例來說,當資料科學家計算不同客層的產品使用統計資料時,有時會使用差異化隱私技術來保護個人隱私。

降低維度

減少用於在特徵向量中表示特定特徵的維度數量,通常是透過轉換為嵌入向量來達成。

維度

超載的字詞具有下列任一定義:

  • Tensor中的座標層級數量。例如:

    • 純量沒有維度,例如 ["Hello"]
    • 向量具有一個維度,例如 [3, 5, 7, 11]
    • 矩陣有兩個維度,例如 [[2, 4, 18], [5, 7, 14]]。您可以使用一個座標,在單維向量中唯一指定特定儲存格;如果要唯一指定二維矩陣中的特定儲存格,則需要兩個座標。
  • 特徵向量中的項目數量。

  • 嵌入層中的元素數量。

直接提示

#language
#generativeAI

與「零樣本提示」同義。

離散特徵

#fundamentals

特徵,包含有限的可能值。舉例來說,如果特徵的值只能是「動物」、「蔬菜」或「礦物」,就是離散 (或類別) 特徵。

請參閱連續性特徵

判別式模型

模型:可從一或多個特徵預測標籤。更正式地說,判別式模型會根據特徵和權重,定義輸出的條件機率,也就是:

p(output | features, weights)

舉例來說,如果模型是根據特徵和權重預測電子郵件是否為垃圾郵件,就是判別式模型。

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

請參閱生成式模型

鑑別器

系統會判斷示例是否為真實內容。

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

詳情請參閱 GAN 課程中的「判別器」一節。

不平等影響

#fairness

對人做出不成比例影響不同人口子群的決策。這通常是指演算法決策程序對某些子群體的影響,比對其他子群體更為負面或正面。

舉例來說,假設有個演算法可判斷 Lilliputian 是否符合申請微型住宅貸款的資格,如果對方的郵寄地址包含特定郵遞區號,演算法就比較有可能將他們歸類為「不符合資格」。如果大端序的利普塔尼亞人比小端序的利普塔尼亞人更有可能擁有使用這個郵遞區號的郵寄地址,那麼這個演算法就可能造成不公平的影響。

差別待遇相反,後者著重於當子群組特徵是演算法決策程序的明確輸入值時,所導致的差異。

差別待遇

#fairness

將受試者的敏感屬性納入演算法決策程序,以便對不同族群採取不同的處理方式。

舉例來說,假設有個演算法會根據貸款申請者在申請表中提供的資料,判斷他們是否符合申請小型住宅貸款的資格。如果演算法使用 Lilliputian 的隸屬關係做為大端序或小端序的輸入內容,就會根據該維度採取不同的處理方式。

差異影響不同,後者著重於演算法決策對子群體的社會影響差異,無論這些子群體是否為模型的輸入內容。

蒸餾

#generativeAI

將一個模型 (稱為教師) 縮減為較小的模型 (稱為學生) 的過程,以盡可能模擬原始模型的預測結果。精餾法十分實用,因為較小的模型相較於大型模型 (教師) 有兩項主要優點:

  • 縮短推論時間
  • 減少記憶體和能源用量

不過,學生的預測結果通常不如老師的預測結果準確。

精煉會訓練學生模型,根據學生模型和老師模型預測輸出的差異,盡可能減少損失函式

比較並對照蒸餾和下列術語:

如需更多資訊,請參閱機器學習速成課程中的「LLM:微調、提煉和提示設計」一文。

發布

特定特徵標籤的不同值頻率和範圍。分布圖可顯示特定值的機率。

下圖顯示兩種不同分布的直方圖:

  • 左側為財富的冪律分布情形,右側為擁有該財富的人數。
  • 右側顯示身高分布情形,以及擁有該身高的人的數量。

兩個直方圖。一張直方圖顯示冪律分布,其中 X 軸代表財富,Y 軸代表擁有該財富的人數。大多數人財富不多,只有少數人擁有大量財富。另一個直方圖顯示正常分布,其中 x 軸代表身高,y 軸代表有此身高的人的數量。大多數人的分數都落在平均值附近。

瞭解每個特徵和標籤的分配情形,有助於您判斷如何正規化值,以及偵測異常值

「out of distribution」一詞是指資料集未出現或非常罕見的值。舉例來說,如果資料集包含貓咪圖片,土星圖片就會被視為不符合分布情形。

分裂式分群

#clustering

請參閱階層分群

向下取樣

#image

這個詞彙可指下列任一項:

  • 減少特徵中的資訊量,以便更有效率地訓練模型。舉例來說,在訓練圖像辨識模型前,請將高解析度圖片降採樣為低解析度格式。
  • 針對過度代表的類別樣本 (比例偏低) 進行訓練,以改善模型在代表性不足的類別上訓練的效果。舉例來說,在類別不平衡的資料集中,模型傾向於大量學習多數類別,而無法充分學習少數類別。下採樣有助於平衡主要和次要類別的訓練量。

如需更多資訊,請參閱機器學習速成課程中的「資料集:不平衡的資料集」

DQN

#rl

深度 Q 網路的縮寫。

丟棄正則化

一種正則化形式,可用於訓練類神經網路。在單一梯度步驟中,Dropout 規則會隨機移除網路層中固定數量的單位。掉落的單元越多,規則化程度就越高。這類似於訓練網路模擬較小網路的指數級大型集合。如需完整詳細資料,請參閱「Dropout:簡單防止神經網路過度擬合的方法」。

動態

#fundamentals

經常或持續執行的動作。「動態」和「線上」在機器學習中是同義詞。以下是機器學習中常見的動態線上用途:

  • 動態模型 (或稱線上模型) 是指經常或持續重新訓練的模型。
  • 動態訓練 (或稱線上訓練) 是指經常或持續訓練的過程。
  • 動態推論 (或稱線上推論) 是指按需產生預測結果的程序。

動態模型

#fundamentals

經常 (甚至持續) 重新訓練的模型。動態模型是一種「終身學習者」,會持續調整以因應不斷變化的資料。動態模型也稱為線上模型

請參閱靜態模型

E

急切執行

#TensorFlow

在這個 TensorFlow 程式設計環境中,運算會立即執行。相反地,在圖執行中呼叫的作業必須經過明確評估後才會執行。急就執行是一種指示式介面,類似於大多數程式設計語言中的程式碼。一般來說,急切執行程式比圖表執行程式更容易偵錯。

提早中止訓練

#fundamentals

正規化方法,涉及在訓練損失完成下降前訓練結束。在提早中止訓練功能中,您會在驗證資料集的損失開始增加時,刻意停止訓練模型,也就是一般化效能惡化時。

地球移動距離 (EMD)

衡量兩個分布的相對相似度。地球移轉距離越低,分布就越相似。

編輯距離

#language

用於評估兩個字串的相似程度。在機器學習中,編輯距離有以下用途:

  • 編輯距離很容易計算。
  • 編輯距離可比較兩個已知相似的字串。
  • 編輯距離可判斷不同字串與特定字串的相似程度。

編輯距離有幾種定義,每種定義都使用不同的字串運算。請參閱Levenshtein 距離,瞭解相關範例。

Einsum 符號

用於描述兩個張量如何結合的有效符號。將張量合併的方式是將一個張量的元素乘以另一個張量的元素,然後將乘積相加。Einsum 符號會使用符號來識別每個張量的軸,並重新排列這些相同的符號,以指定新產生的張量形狀。

NumPy 提供常見的 Einsum 實作項目。

嵌入層

#language
#fundamentals

特殊的隱藏層,可針對高維度類別特徵進行訓練,逐步學習較低維度的嵌入向量。嵌入層可讓類神經網路以更有效率的方式進行訓練,而非只訓練高維類別特徵。

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

陣列包含 73,000 個元素。前 6,232 個元素會保留 0 的值。下一個元素則會保留 1 的值。最後的 66,767 個元素會保留零值。

73,000 個元素的陣列非常長。如果您未在模型中加入嵌入層,由於要乘以 72,999 個零,訓練作業會非常耗時。假設您選擇的嵌入層包含 12 個維度,因此,嵌入層會逐漸學習每種樹木的新嵌入向量。

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

詳情請參閱機器學習速成課程中的「嵌入」一節。

嵌入空間

#language

從高維向量空間對應的 d 維向量空間。嵌入空間會接受訓練,以便擷取對指定應用程式有意義的結構。

兩個嵌入資料的內積是衡量相似度的指標。

嵌入向量

#language

一般來說,這個陣列是從任何 隱藏層取得的浮點數陣列,用於描述該隱藏層的輸入內容。通常,嵌入向量是訓練在嵌入層中的浮點數陣列。舉例來說,假設嵌入層必須為地球上 73,000 種樹木學習嵌入向量。以下陣列可能是猴麵包樹的嵌入向量:

陣列包含 12 個元素,每個元素都會保留介於 0.0 和 1.0 之間的浮點數。

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

從數學角度來看,嵌入向量最值得注意的部分是,相似項目具有相似的浮點數組。舉例來說,相似的樹種浮點數組合會比不相似的樹種更相似。紅木和巨杉是相關的樹種,因此它們會比紅木和椰子樹擁有更相似的浮點數組。每次重新訓練模型時,嵌入向量中的數字都會變更,即使您使用相同的輸入內容重新訓練模型也是如此。

經驗累積分佈函式 (eCDF 或 EDF)

根據實際資料集的經驗測量值,建立累積分配函式。函式在 x 軸上任一點的值,是資料集中小於或等於指定值的觀測值比例。

經驗風險最小化 (ERM)

選擇可在訓練集上將損失降到最低的函式。請比較結構風險最小化

編碼器

#language

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

編碼器通常是較大模型的元件,經常與解碼器配對。有些Transformers 會將編碼器與解碼器配對,但其他 Transformers 只會使用編碼器或解碼器。

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

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

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

詳情請參閱機器學習速成課程中的「LLM:什麼是大型語言模型」。

集成

一組模型,這些模型是獨立訓練,且預測結果會平均或匯總。在許多情況下,集成模型的預測結果會比單一模型更準確。舉例來說,隨機森林是從多個決策樹建立的集成。請注意,並非所有決策樹都是集成。

詳情請參閱機器學習速成課程中的「隨機森林」一文。

#df

資訊理論中,熵是用來描述機率分布的不可預測性。此外,熵也定義為每個示例所含的資訊量。當隨機變數的所有值都具有同等的可能性時,分布就會具有最高可能的熵。

熵的值集包含兩個可能的值「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 通常是 log2。在本例中,熵單位為位元。

舉例來說,假設以下情況:

  • 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」) 每個示例的熵為 1.0 位元。隨著集合變得愈來愈不平衡,熵值會趨近 0.0。

決策樹中,熵可協助建立資訊增益,以利分割器在分類決策樹成長的過程中選取條件

熵與下列項目的比較:

熵經常稱為「Shannon 熵」

詳情請參閱決策樹課程中的「使用數值特徵進行二元分類的確切分割器」。

環境

#rl

在強化學習中,世界包含代理程式,並允許代理程式觀察該世界狀態。舉例來說,所呈現的世界可以是象棋等遊戲,或是迷宮等實體世界。當代理程式將動作套用至環境時,環境就會在狀態之間轉換。

劇集

#rl

在強化學習中,代理程式會重複嘗試學習環境

Epoch 紀元時間

#fundamentals

完整的訓練會遍歷整個訓練集,因此每個範例都會處理一次。

一個 epoch 代表 N/批次大小 訓練疊代,其中 N 是樣本總數。

舉例來說,假設以下情況:

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

因此,單一 epoch 需要 20 次迭代:

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

詳情請參閱機器學習速成課程中的「線性迴歸:超參數」一文。

ϵ 貪婪政策

#rl

在強化學習中,政策會依據以小數值機率為準的隨機政策,或依據貪婪政策。舉例來說,如果 epsilon 為 0.9,則政策會在 90% 的時間內遵循隨機政策,在 10% 的時間內遵循貪婪政策。

在連續的劇集中,演算法會降低 epsilon 的值,從遵循隨機政策轉為遵循貪婪政策。透過轉移政策,代理程式會先隨機探索環境,然後貪婪地利用隨機探索的結果。

機會均等

#fairness

公平性指標,用於評估模型是否能針對敏感屬性的所有值,同樣準確地預測理想結果。換句話說,如果模型的理想結果是正類,目標就是讓所有群組的真陽性率相同。

機會均等與均等機率相關,這項要求是真陽性率和偽陽性率都必須在所有群組中一致。

假設 Glubbdubdrib 大學同時招收來自小人國和巨人國的學生,讓他們就讀嚴謹的數學課程。小人國的中學提供完善的數學課程,絕大多數學生都能就讀大學。布羅迪龐人高中完全沒有開設數學課程,因此學生的合格率遠低於其他國家。若符合資格的學生,無論是小人國人或布羅卜丁人,都同樣有機會獲得錄取,則在國籍 (小人國人或布羅卜丁人) 方面,就會符合機會均等原則,而「錄取」這個偏好標籤也符合機會均等原則。

舉例來說,假設 100 位小人和 100 位巨人申請入學 Glubbdubdrib 大學,而招生決定如下:

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

  晉級 不合格
已錄取 45 3
已遭拒 45 7
總計 90 10
錄取資格學生百分比:45/90 = 50%
遭拒的資格不符學生百分比:7/10 = 70%
錄取的利立浦丹學生總百分比:(45+3)/100 = 48%

 

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

  晉級 不合格
已錄取 5 9
已遭拒 5 81
總計 10 90
錄取資格學生百分比:5/10 = 50%
遭拒絕的非資格學生百分比:81/90 = 90%
錄取的 Brobdingnagian 學生總百分比:(5+9)/100 = 14%

上述範例符合錄取資格學生的機會均等原則,因為符合資格的利立浦坦人和布魯托尼安人都有 50% 的錄取機率。

雖然機會均等已滿足,但下列兩項公平性指標未滿足:

  • 群體均等:小人和巨人錄取大學的機率不同;錄取小人的學生有 48%,錄取巨人的學生只有 14%。
  • 機會均等:雖然符合資格的利立浦丹和布魯托尼亞學生都有相同的錄取機率,但未符合「不符合資格的利立浦丹和布魯托尼亞學生都有相同的拒絕機率」這項額外限制。不合格的 Lilliputians 拒絕率為 70%,而 Brobdingnagians 為 90%。

詳情請參閱機器學習速成課程中的「公平性:機會均等」一文。

均等賠率

#fairness

公平性指標,用於評估模型是否能針對敏感屬性的所有值,針對正類別負類別預測出同樣準確的結果,而非只針對其中一個類別。換句話說,所有群組的真陽性率偽陰性率都應相同。

均等機率與機會均等相關,後者只著重於單一類別 (正面或負面) 的錯誤率。

舉例來說,假設 Glubbdubdrib 大學同時招收了小人和巨人,讓他們參加嚴格的數學課程。小人國的高中提供完善的數學課程,絕大多數學生都能順利進入大學。布羅迪尼亞的高中完全沒有開設數學課程,因此學生的數學能力遠低於標準。只要符合下列條件,就符合「機會均等」原則:無論申請人身高是 Lilliputian 還是 Brobdingnagian,只要符合資格,就同樣有機會獲得錄取,如果不符合資格,就同樣有機會遭到拒絕。

假設 100 位小人和 100 位巨人申請入學 Glubbdubdrib 大學,而招生決定如下:

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

  晉級 不合格
已錄取 45 2
已遭拒 45 8
總計 90 10
錄取資格學生百分比:45/90 = 50%
遭拒的資格不符學生百分比:8/10 = 80%
錄取的利立浦丹學生總百分比:(45+2)/100 = 47%

 

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

  晉級 不合格
已錄取 5 18
已遭拒 5 72
總計 10 90
錄取資格學生的百分比:5/10 = 50%
遭拒的資格不符學生百分比:72/90 = 80%
錄取的 Brobdingnagian 學生總百分比:(5+18)/100 = 23%

符合「均等機會」原則,因為合格的 Lilliputian 和 Brobdingnagian 學生都有 50% 的錄取機率,而不合格的 Lilliputian 和 Brobdingnagian 學生則有 80% 的機率遭到拒絕。

在「監督式學習中的機會均等性」中,我們正式定義了「均等機率」一詞,如下所示:「如果 Ŷ 和 A 在 Y 的條件下為獨立,則預測器 Ŷ 就會滿足保護屬性 A 和結果 Y 的均等機率。」

Estimator

#TensorFlow

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

evals

#language
#generativeAI

主要用於縮寫大型語言模型評估。更廣義來說,evals 是任何形式的評估的縮寫。

評估版

#language
#generativeAI

評估模型品質或比較不同模型的程序。

如要評估監督式機器學習模型,通常會根據驗證集測試集來評估。評估 LLM 通常會涉及更廣泛的品質和安全評估。

範例

#fundamentals

一列特徵的值,以及可能的標籤監督式學習的範例可分為兩大類:

  • 標記示例包含一或多個特徵和標籤。在訓練期間使用標記範例。
  • 未標示的示例包含一或多個特徵,但沒有標籤。系統會在推論期間使用未標籤的示例。

舉例來說,假設您要訓練模型,以判斷天氣狀況對學生考試成績的影響。以下是三個標記的示例:

功能 標籤
溫度 溼度 氣壓 測試分數
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}}$$

真實性

#generativeAI

在機器學習領域中,這個屬性可用來描述輸出內容以現實為依據的模型。事實性是一種概念,而非指標。舉例來說,假設您向大型語言模型傳送以下提示

食鹽的化學式為何?

經過最佳化處理的模型會回覆:

NaCl

我們很容易假設所有模型都應以事實為依據。不過,某些提示 (例如以下提示) 應可讓生成式 AI 模型著重於創造力,而非事實性

請說一首關於太空人和毛毛蟲的回文詩。

因此,產生的回文不太可能以現實為依據。

groundedness形成對比。

公平性限制

#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 軸。

詳情請參閱機器學習速成課程中的「分類:ROC 和 AUC」一文。

功能

#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 通訊協定緩衝區中擷取特徵資料所需的資訊。由於 tf.Example 通訊協定緩衝區只是資料容器,因此您必須指定下列項目:

  • 要擷取的資料 (也就是功能的鍵)
  • 資料類型 (例如 float 或 int)
  • 長度 (固定或可變)

特徵向量

#fundamentals

feature 值陣列,包含示例。特徵向量會在訓練推論期間輸入。舉例來說,如果模型有兩個離散特徵,其特徵向量可能會是:

[0.92, 0.56]

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

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

[0.73, 0.49]

特徵工程可決定如何在特徵向量中表示特徵。舉例來說,如果有五個可能值的二元類別特徵,可能會以one-hot 編碼表示。在這種情況下,特定示例的特徵向量部分將包含四個零,以及第三個位置的單一 1.0,如下所示:

[0.0, 0.0, 1.0, 0.0, 0.0]

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

  • 二進位類別特徵,包含個可能值,以 one-hot 編碼表示,例如:[0.0, 1.0, 0.0, 0.0, 0.0]
  • 另一個二元類別特徵,其中個可能值以 one-hot 編碼表示,例如:[0.0, 0.0, 1.0]
  • 浮點功能,例如:8.3

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

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

如需更多資訊,請參閱機器學習速成課程中的「數值資料:模型如何使用特徵向量擷取資料」。

特徵化

從輸入來源 (例如文件或影片) 中擷取特徵,並將這些特徵對應至特徵向量的程序。

部分機器學習專家將特徵化視為特徵工程特徵擷取的同義詞。

聯合學習

分散式的機器學習做法,會使用智慧型手機等裝置上的去中心化示例訓練機器學習模型。在聯合學習中,部分裝置會從中央協調伺服器下載目前的模型。裝置會使用儲存在裝置上的範例來改善模型。接著,裝置會將模型改善項目 (但不是訓練範例) 上傳至協調伺服器,並與其他更新項目匯總,產生改善後的全球模型。匯總完成後,裝置計算的模型更新就不再需要,可以捨棄。

由於訓練範例不會上傳,因此聯合學習會遵循「專注收集資料」和「資料最小化」的隱私權原則。

如要進一步瞭解聯合學習,請參閱這份教學課程

意見回饋循環

#fundamentals

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

詳情請參閱機器學習速成課程中的「正式環境 ML 系統:應問的問題」。

前饋類神經網路 (FFN)

不含循環或遞迴連結的神經網路。舉例來說,傳統的深層類神經網路就是前饋類神經網路。與循環類神經網路 (循環) 形成對比。

少量樣本學習

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

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

少量樣本提示

#language
#generativeAI

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

提示的部分 附註
指定國家/地區的官方貨幣為何? 要讓 LLM 回答的問題。
法國:歐元 舉例來說。
英國:英鎊 另一個例子。
印度: 實際查詢。

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

少量樣本提示是一種少量樣本學習,可套用至以提示為基礎的學習

如需詳細資訊,請參閱機器學習速成課程中的「提示工程」一節。

小提琴

#language

以 Python 為優先的設定程式庫,可設定函式和類別的值,且不會影響程式碼或基礎架構。就 Pax 和其他 ML 程式碼集而言,這些函式和類別代表模型訓練 超參數

Fiddle 會假設機器學習程式碼集通常分為以下類別:

  • 定義層和最佳化器的程式庫程式碼。
  • 資料集「黏著劑」程式碼,會呼叫程式庫並將所有項目連接在一起。

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

微調

#language
#image
#generativeAI

預先訓練的模型上執行第二次專門針對工作訓練,以便針對特定用途微調參數。舉例來說,部分大型語言模型的完整訓練序列如下:

  1. 預先訓練:使用大量一般資料集 (例如所有英文版 Wikipedia 網頁) 訓練大型語言模型。
  2. 微調:訓練預先訓練模型,以執行特定任務,例如回應醫療查詢。精細調整通常會使用數百或數千個專注於特定任務的範例。

舉另一個例子來說,大型圖片模型的完整訓練序列如下:

  1. 預先訓練:使用大量一般圖片資料集 (例如 Wikimedia Commons 中的所有圖片) 訓練大型圖片模型。
  2. 微調:訓練預先訓練模型,以執行特定任務,例如產生虎鯨圖片。

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

  • 修改預先訓練模型的所有參數。這也稱為「完整微調」
  • 只修改預先訓練模型的部分現有參數 (通常是離 輸出層 最近的層),其他現有參數則保持不變 (通常是離 輸入層 最近的層)。請參閱高效參數調整
  • 新增更多圖層,通常是在最靠近輸出圖層的現有圖層上方。

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

請比較並對照精細調整與下列術語:

詳情請參閱機器學習速成課程中的「微調」一文。

亞麻色

#language

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

Flaxformer

#language

開放原始碼 Transformer 程式庫,建構於 Flax 之上,主要設計用於自然語言處理和多模態研究。

忘記門

#seq

長期短期記憶 單元格中用於調控資訊流的部分。忘記閘會決定要從儲存格狀態中捨棄哪些資訊,以便維持內容。

成功次數分數

#generativeAI

用於評估機器學習模型產生的文字的指標。成功的比率是「成功」產生的文字輸出次數,除以產生的文字輸出總數。舉例來說,如果大型語言模型產生 10 個程式碼區塊,其中 5 個成功,則成功率為 50%。

雖然成功率在所有統計資料中都很實用,但在 ML 中,這項指標主要用於評估可驗證的作業,例如程式碼產生或數學問題。

完整 softmax

softmax 的同義詞。

請參閱候選抽樣

如需更多資訊,請參閱機器學習速成課程中的「類神經網路:多類別分類」一文。

全連接層

隱藏層,其中每個節點都連結至後續隱藏層中的每個節點。

全連接層也稱為密集層

函式轉換

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

G

GAN

生成對抗網路的縮寫。

Gemini

#language
#image
#generativeAI

這個生態系統包含 Google 最先進的 AI 技術。這個生態系統的元素包括:

Gemini 模型

#language
#image
#generativeAI

Google 最先進的Transformer多模態模型。Gemini 模型專門用於整合代理程式

使用者可以透過多種方式與 Gemini 模型互動,包括透過互動式對話介面和 SDK。

一般化

#fundamentals

模型對先前未知的新資料做出正確預測的能力。可推廣的模型與過度配適的模型相反。

詳情請參閱機器學習速成課程中的「泛化」一節。

泛化曲線

#fundamentals

這張圖表顯示訓練損失驗證損失的函式,以迭代次數為變數。

一般來說,一般化曲線可協助您偵測可能的過度擬合。舉例來說,下列泛化曲線顯示過度擬合,因為驗證損失最終會大幅高於訓練損失。

此為笛卡兒平面圖,其中 Y 軸標示為 loss,X 軸標示為迭代次數。畫面上會顯示兩個區塊。一張圖表顯示訓練損失,另一張則顯示驗證損失。兩個圖表的起始點相似,但訓練損失最終會降至遠低於驗證損失的程度。

詳情請參閱機器學習速成課程中的「泛化」一節。

廣義線性模型

最小二乘迴歸模型 (以 高斯雜訊為基礎) 推廣至其他類型的模型,這些模型以其他類型的雜訊為基礎,例如Poisson 雜訊或分類雜訊。廣義線性模型的範例包括:

您可以透過凸最佳化,找出廣義線性模型的參數。

廣義線性模型具備下列屬性:

  • 最佳最小二乘迴歸模型的平均預測值,等於訓練資料的平均標籤。
  • 最佳邏輯迴歸模型預測的平均機率等於訓練資料的平均標籤。

廣義線性模型的效能受限於其特徵。與深度模型不同,一般化線性模型無法「學習新特徵」。

系統生成的文字

#language
#generativeAI

一般來說,機器學習模型輸出的文字。評估大型語言模型時,部分指標會將產生的文字與參考文字進行比較。舉例來說,假設您想判斷機器學習模型從法文翻譯成荷蘭文的效率。在這種情況下:

  • 「產生的文字」是機器學習模型輸出的荷蘭文翻譯。
  • 「參考文字」是指人工翻譯 (或軟體) 所建立的荷蘭文翻譯。

請注意,部分評估策略不含參照文字。

生成對抗網路 (GAN)

系統會建立新資料,其中產生器會建立資料,而鑑別器會判斷所建立的資料是否有效。

詳情請參閱生成式對抗式網路課程

生成式 AI

#language
#image
#generativeAI

這項新興的轉型領域尚未有正式定義。不過,大多數專家都認為,生成式 AI 模型可以創建 (「生成」) 下列所有內容:

  • 複雜
  • 一致
  • 原始圖片

舉例來說,生成式 AI 模型可以產生精緻的文章或圖像。

有些早期的技術,包括 LSTMRNN,也能產生原創且連貫的內容。有些專家認為這些早期技術就是生成式 AI,但其他專家則認為,真正的生成式 AI 需要比這些早期技術更複雜的輸出內容。

請參閱預測機器學習

生成式模型

實務上,模型會執行下列任一操作:

  • 從訓練資料集建立 (產生) 新示例。舉例來說,生成式模型可在以詩歌資料集訓練後,產生詩歌。生成對抗網路generator 部分就屬於這個類別。
  • 判斷新示例來自訓練集的機率,或透過建立訓練集的相同機制建立的機率。舉例來說,在以英文句子組成的資料集上完成訓練後,生成式模型就能判斷新輸入內容是否為有效的英文句子。

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

p(examples)

非監督式學習模型是生成式模型。

請參閱判別式模型

產生器

生成式對抗網路 中的子系統,用於建立新的示例

請參閱判別式模型

吉尼不純度

#df

類似於的指標。分隔器會使用從基尼不純度或熵衍生而來的值,組合條件,用於分類決策樹資訊增益是從熵衍生而來。目前沒有普遍接受的等同於吉尼不純度指標的術語,但這個未命名的指標與資訊增益一樣重要。

吉尼不純度也稱為「吉尼係數」,或簡稱「吉尼」

黃金資料集

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

部分黃金資料集會擷取實際資料的不同子網域。舉例來說,圖片分類的黃金資料集可能會擷取光線條件和圖片解析度。

金色回應

#language
#generativeAI

已知的正確答案。例如,請參考以下提示

2 + 2

理想的回覆內容應為:

4

GPT (生成式預先訓練轉換器)

#language

OpenAI 開發的一系列Transformer大型語言模型

GPT 變體可套用於多種模態,包括:

  • 圖像生成 (例如 ImageGPT)
  • 文字轉圖像生成功能 (例如 DALL-E)。

gradient

相對於所有獨立變數的偏微分向量。在機器學習中,梯度是模型函式偏導數的向量。梯度會指向最陡峭的上升方向。

梯度累積

反向傳播技巧,只會在每個迴圈結束時更新參數,而非在每個迭代中更新一次。處理每個迷你批次後,梯度累積功能只會更新梯度的總計。接著,在處理 epoch 中的最後一個迷你批次後,系統會根據所有梯度變更的總和,最終更新參數。

如果批次大小與訓練可用的記憶體數量相比相當龐大,梯度累積功能就相當實用。記憶體不足時,自然會傾向減少批次大小。不過,在正常反向傳播中縮減批次大小會增加參數更新次數。梯度累積可讓模型避免記憶體問題,同時仍能有效訓練。

梯度提升 (決策) 樹狀圖 (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 之間的值,稱為「收縮」,類似於梯度下降法中的學習率
  • $f_{i}$ 是經過訓練的弱模型,可預測 $F_{i}$ 的損失梯度。

現代梯度提升的變化版本也會在運算中納入損失的二次微分 (Hessian)。

決策樹通常用於梯度提升法中的弱模型。請參閱梯度提升 (決策) 樹

梯度限幅

#seq

這是一種常用的機制,可在使用梯度下降法訓練模型時,人為地限制 (截斷) 梯度的最大值,藉此緩解梯度爆炸問題

梯度下降法

#fundamentals

一種用於盡量減少損失的數學技巧。梯度下降會逐次調整權重偏差,逐步找出最佳組合來盡量減少損失。

梯度下降法比機器學習更早出現,而且歷史悠久。

詳情請參閱機器學習速成課程中的「線性迴歸:梯度下降」一文。

圖表

#TensorFlow

在 TensorFlow 中,為運算規格。圖中的節點代表作業。邊緣是指向的,代表將運算結果 (Tensor) 做為運算元傳遞至其他運算。使用 TensorBoard 將圖表視覺化。

圖表執行

#TensorFlow

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

請參閱提前執行

貪婪政策

#rl

在強化學習中,政策一律會選擇預期報酬率最高的動作。

接地

模型的屬性,其輸出內容是根據特定來源素材建立 (即「以」)。舉例來說,假設您將整本物理學教科書當作輸入內容 (「背景資訊」) 提供給大型語言模型。接著,您向大型語言模型提問物理問題。如果模型的回應反映出該教科書中的資訊,則該模型就根植於該教科書。

請注意,基於事實的模型不一定是事實模型。舉例來說,輸入的物理學教科書可能含有錯誤。

真值

#fundamentals

現實。

實際發生的情況。

舉例來說,假設有一個二元分類模型,可預測大一學生是否會在六年內畢業。這個模型的真值是學生是否在六年內畢業。

團體歸因偏誤

#fairness

假設對某個人而言是正確的,對該群組中的每個人也同樣正確。如果您使用便利性取樣來收集資料,群組歸因偏誤的影響可能會更加嚴重。在非代表性樣本中,歸因可能不符合實際情況。

另請參閱外團體同質性偏誤內團體偏誤。如需更多資訊,請參閱機器學習速成課程中的「公平性:偏見類型」。

H

幻覺

#language

生成式 AI 模型聲稱要對真實世界做出斷言,但實際上產生看似合理但事實上錯誤的輸出內容。舉例來說,如果生成式 AI 模型聲稱 Barack Obama 於 1865 年去世,就是錯誤擷取資訊

雜湊

在機器學習中,這是一種用於將類別資料分割成桶的機制,特別是在類別數量龐大,但資料集中實際出現的類別數量相對較少的情況下。

舉例來說,地球上約有 73,000 種樹木。您可以將 73,000 種樹木分別納入 73,000 個分類桶中。或者,如果資料集中只有 200 種樹木,您可以使用雜湊法將樹木種類劃分為 500 個值區。

單一分類可包含多種樹種。舉例來說,雜湊運算可能會將 猴麵包樹紅楓這兩種遺傳上不相似的物種放入同一個值區。無論如何,對大量分類集合進行對應至所選數量的分層也是不錯的方法。雜湊處理會以確定的方式將值分組,將具有大量可能值的分類特徵轉換為數量較少的值。

詳情請參閱機器學習速成課程中的「分類資料:字彙和 one-hot 編碼」。

經驗法則

解決問題的簡單快速解決方案。例如:「使用啟發式法則,我們達到 86% 的準確率。當我們改用深度神經網路時,準確率提高到 98%。」

隱藏層

#fundamentals

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

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

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

如需更多資訊,請參閱機器學習速成課程中的「類神經網路:節點和隱藏層」。

階層分群法

#clustering

一種集群分析演算法類別,可建立叢集樹狀結構。階層叢集非常適合階層式資料,例如植物分類法。階層分群演算法分為兩種:

  • 聚合分群會先將每個示例指派至各自的叢集,然後以迴圈方式合併最相近的叢集,以建立階層樹狀圖。
  • Divisive Clustering 會先將所有範例分組為一個叢集,然後以迴圈方式將叢集分割為階層樹狀結構。

請參閱以中心點為依據的群組化

如需進一步瞭解,請參閱分群課程中的「分群演算法」一節。

爬坡

這個演算法會逐步改善 (「上坡」) 機器學習模型,直到模型無法再改善 (「到達山頂」) 為止。演算法的一般形式如下:

  1. 建立起始模型。
  2. 您可以微調訓練微調的方式,建立新的候選模型。這可能需要使用略有不同的訓練集或不同的超參數。
  3. 評估新候選模型,並採取下列其中一種行動:
    • 如果候選模型的表現優於起始模型,則該候選模型會成為新的起始模型。在這種情況下,請重複執行步驟 1、2 和 3。
    • 如果沒有任何模型的效能優於起始模型,表示您已達到頂峰,應停止迭代。

如需超參數調整的相關指南,請參閱深度學習調整操作手冊。如需特徵工程相關指引,請參閱機器學習速成課程的「資料」模組。

轉折損失

一系列用於分類損失函式,旨在找出與每個訓練範例盡可能遠的決策邊界,藉此盡可能擴大範例與邊界之間的邊界。KSVM 會使用 hinge loss (或相關函式,例如平方 hinge loss)。對於二元分類,邊界損失函式定義如下:

$$\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 的申請人,更有可能出現貸款違約情形,那麼模型可能會學習到歷史偏差,導致模型不太可能核准社群 A 的貸款,即使造成該社群違約率較高的原因已不再適用,也一樣。

詳情請參閱機器學習速成課程中的「公平性:偏見類型」一文。

保留資料

範例:在訓練期間刻意未使用 (「保留」)。驗證資料集測試資料集就是保留資料的例子。保留資料有助於評估模型能否推論訓練資料以外的資料。與訓練集的損失相比,保留集的損失可更準確地估算未知資料集的損失。

主機

#TensorFlow
#GoogleCloud

加速器晶片 (GPU 或 TPU) 上訓練 ML 模型時,系統會控制下列兩者:

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

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

人工評估

#language
#generativeAI

人類判斷機器學習模型輸出內容的品質,例如由雙語人士判斷機器學習翻譯模型的品質。人工評估特別適合評估沒有正確答案的模型。

請比較自動評估AutoRater 評估

人機迴圈 (HITL)

#generativeAI

這是一個定義較為鬆散的慣用語,可能代表下列任一項:

  • 政策規定要以批判或懷疑的態度看待生成式 AI 輸出內容。舉例來說,撰寫這份 ML 詞彙表的人員對大型語言模型的功能感到驚奇,但也留意到大型語言模型會出錯。
  • 一種策略或系統,可確保使用者協助塑造、評估及改善模型的行為。讓人類參與 AI 開發過程,可讓 AI 同時運用機器智慧和人類智慧。舉例來說,如果系統是 AI 產生程式碼,再由軟體工程師審查,就是人機協作系統。

超參數

#fundamentals

您或超參數調整服務舉例來說,學習率就是超參數。您可以在訓練課程前將學習率設為 0.01。如果您判斷 0.01 太高,可以將下一個訓練階段的學習率設為 0.003。

相較之下,參數是模型在訓練期間學習的各種權重偏差

詳情請參閱機器學習速成課程中的「線性迴歸:超參數」一文。

超平面

將空間分隔為兩個子空間的邊界。舉例來說,線條是二維超平面,平面則是三維超平面。在機器學習中,超平面通常是分隔高維空間的邊界。核方法支持向量機會使用超平面將正類和負類分開,通常是在非常高維度的空間中。

I

獨立同分布

獨立同分布的縮寫。

圖片辨識

#image

這個程序可將圖片中的物件、模式或概念分類。圖像辨識也稱為「圖像分類」

詳情請參閱ML 實習:圖像分類

詳情請參閱ML 實習:圖像分類課程

不平衡資料集

與「不平衡資料集」同義。

隱性偏誤

#fairness

根據自己的心智模型和記憶,自動建立關聯或做出假設。隱性偏見可能會影響下列項目:

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

舉例來說,在建構用於辨識婚禮相片的分類器時,工程師可能會將相片中是否有白色洋裝做為特徵。不過,白色洋裝只有在特定時代和文化中才是常見的服裝。

另請參閱確認偏誤

插補

值推論的簡寫形式。

公平性指標互相衝突

#fairness

某些公平性概念互相衝突,無法同時滿足。因此,沒有單一通用的指標可用於量化公平性,並套用至所有機器學習問題。

雖然這可能令人灰心,但公平性指標不相容,並不代表公平性努力沒有成效。相反地,這項研究建議,我們必須根據特定機器學習問題的發生情境來定義公平性,以免造成特定用途的傷害。

如要進一步瞭解這個主題,請參閱「On the (im)possibility of fairness」

情境學習

#language
#generativeAI

與「少量樣本提示」同義。

獨立同分布 (i.i.d)

#fundamentals

從不會變更的分布圖中擷取的資料,且每個擷取的值都不依賴先前擷取的值。機器學習的 i.i.d. 是理想氣體,雖然是實用的數學結構,但在現實世界中幾乎不存在。舉例來說,網頁訪客的分布可能在短時間內保持不變,也就是說,分布在短時間內不會改變,且某人造訪網頁與其他人造訪網頁通常是獨立的。不過,如果您擴大時間範圍,網頁訪客可能會出現季節性差異。

另請參閱非平穩性

個人公平性

#fairness

公平性指標,用於檢查類似的個人是否獲得類似的分類結果。舉例來說,Brobdingnagian Academy 可能會希望確保兩位成績和標準化考試分數相同的學生,都有同等機會入學,以符合個人公平性。

請注意,個別公平性完全取決於您如何定義「相似性」(在本例中為成績和考試成績),如果相似性指標遺漏重要資訊 (例如學生課程的嚴謹程度),就可能導致新的公平性問題。

如要進一步瞭解個別公平性,請參閱「公平性與意識」一文。

推論

#fundamentals

在機器學習中,將訓練好的模型套用至未標示的範例,以進行預測的過程。

在統計學中,推論的意思稍有不同。詳情請參閱 維基百科上有關統計推論的文章

請參閱機器學習概論課程中的「監督式學習」,瞭解推論在監督式學習系統中的角色。

推論路徑

#df

決策樹中,在推論期間,特定示例會從根節點轉移至其他條件,並以葉節點結束。舉例來說,在下列決策樹狀圖中,較粗的箭頭會顯示具有下列特徵值的示例推論路徑:

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

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

決策樹包含四個條件和五個葉節點。根條件為 (x > 0)。由於答案為「是」,推論路徑會從根節點前往下一個條件 (y > 0)。由於答案為「是」,推論路徑會轉往下一個條件 (z > 0)。由於答案為「否」,推論路徑會前往終端節點,也就是葉節點 (Zeta)。

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

詳情請參閱決策樹叢書中的「決策樹」一節。

資訊增益

#df

決策樹中,節點的 與其子節點熵的加權 (以範例數量為依據) 之間的差異。節點的熵是該節點中樣本的熵。

舉例來說,請考量下列熵值:

  • 父節點的熵 = 0.6
  • 熵值為 0.2,其中一個子節點有 16 個相關示例
  • 另一個子節點的熵值 (有 24 個相關範例) = 0.1

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

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

因此,資訊增益為:

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

大多數的分割器都會建立條件,以便盡可能提高資訊增益。

內團體偏誤

#fairness

偏袒自己的群體或特徵。如果測試人員或評分人員是機器學習開發人員的朋友、家人或同事,內部偏誤可能會導致產品測試或資料集無效。

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

詳情請參閱機器學習速成課程中的「公平性:偏見類型」一文。

輸入產生器

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

輸入產生器可視為負責將原始資料處理成張量的元件,這些張量會重複產生,以便進行訓練、評估和推論。

輸入層

#fundamentals

神經網路,可儲存特徵向量。也就是說,輸入層會提供示例,用於訓練推論。例如,下列神經網路中的輸入層包含兩個特徵:

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

在集合內的條件

#df

決策樹中,用於測試一組項目中是否包含某個項目的條件。舉例來說,以下是「in-set」條件:

  house-style in [tudor, colonial, cape]

在推論期間,如果房屋樣式的特徵值為 tudorcolonialcape,則這個條件會評估為 Yes。如果房屋類型地圖項目的值為其他項目 (例如 ranch),則這個條件會評估為 No。

相較於測試 one-hot 編碼 特徵的條件,集合條件通常會產生更有效率的決策樹。

執行個體

example 的同義詞。

調整指示

#generativeAI

一種微調形式,可改善生成式 AI 模型遵循指示的能力。指令微調涉及針對一系列指令提示訓練模型,通常涵蓋各種任務。產生的經過調整指令的模型,通常會針對各種任務產生實用的零示例提示回應。

比較及對比:

可解釋性

#fundamentals

以人類可理解的方式,解釋或呈現機器學習模型的推理結果。

舉例來說,大多數線性迴歸模型都非常容易解讀。(您只需查看每個特徵的訓練權重)。決策樹也非常容易解讀。不過,部分模型需要轉繪成複雜的圖表,才具有可解釋性。

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

資料標註一致性

這項指標可評估資料標註人員在執行任務時,意見一致的頻率。如果評估人員意見不一致,您可能需要改善工作說明。有時也稱為「標註者間一致性」或「評分者間可靠度」。另請參閱 Cohen's kappa,這是最常見的評分者間一致性評估指標之一。

詳情請參閱機器學習速成課程中的「分類資料:常見問題」一節。

交併比 (IoU)

#image

兩個集合的交集除以兩個集合的並集。在機器學習圖像偵測任務中,Iou 用於評估模型預測的定界框真值定界框的準確度。在這種情況下,兩個方塊的交併比是重疊區域與總面積的比率,其值範圍為 0 (預測定界框和實際資料定界框沒有重疊) 到 1 (預測定界框和實際資料定界框有相同的座標)。

例如,在下圖中:

  • 預測的邊界框 (模型預測畫作中夜間桌子所在位置的座標) 以紫色標示。
  • 實際資料邊界框 (即繪畫中夜間桌子的實際位置座標) 以綠色標示。

梵谷的畫作《文森在亞爾的臥室》,床邊的床頭櫃有兩個不同的邊界框。真值定界框 (以綠色表示) 完美環繞夜間桌。預測的邊界框 (以紫色表示) 會向下偏移 50%,並偏向真實邊界框的右側,因此會包含夜間桌子的右下方四分之一,但會遺漏桌子的其餘部分。

在此範例中,預測和實際資料定界框的交集 (左下方) 為 1,而預測和實際資料定界框的並集 (右下方) 為 7,因此交併比為 \(\frac{1}{7}\)。

與上方相同的圖片,但每個定界框會分為四個象限。由於真值定界框的右下方象限區和預測定界框的左上方象限區重疊,因此總共有七個象限區。這個重疊區域 (以綠色標示) 代表交集,面積為 1。 與上方相同的圖片,但每個定界框會分為四個象限。由於真值定界框的右下方象限區和預測定界框的左上方象限區重疊,因此總共有七個象限區。兩個定界框 (以綠色醒目顯示) 所包圍的整個內部代表聯集,其面積為 7。

IoU

交併比的縮寫。

項目矩陣

#recsystems

推薦系統中,由矩陣分解產生的嵌入向量矩陣,可保留有關每個項目的潛在信號。項目矩陣的每個資料列都會保留所有項目的單一潛在特徵值。舉例來說,假設您有一個電影推薦系統,項目矩陣中的每個欄都代表一部電影。潛在信號可能代表類型,也可能是難以解讀的信號,涉及類型、明星、電影年齡或其他因素的複雜互動。

項目矩陣的欄數與要因式化的目標矩陣相同。舉例來說,如果電影推薦系統評估 10,000 部電影名稱,項目矩陣就會有 10,000 個欄。

項目

#recsystems

推薦系統中,系統推薦的實體。舉例來說,影片是影片商店推薦的商品,而書籍則是書店推薦的商品。

疊代

#fundamentals

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

訓練類神經網路時,單一迭代會涉及以下兩個階段:

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

J

JAX

這個陣列運算程式庫結合了 XLA (加速線性代數) 和自動微分,可用於高效能數值運算。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 中,Keras 會以 tf.keras 的形式提供。

核方法支持向量機 (KSVM)

分類演算法,可將輸入資料向量對應至較高維度的空間,藉此盡可能擴大正面負面類別之間的邊界。舉例來說,假設分類問題的輸入資料集有上百個特徵,為了盡可能擴大正類和負類之間的邊界,KSVM 會在內部將這些特徵對應至百萬維度的空間。KSVM 會使用稱為「hinge loss」的損失函式。

重點

#image

圖片中特定地圖項目的座標。舉例來說,如果圖像辨識模型用於區分花朵種類,關鍵點可能會是每片花瓣的中心、莖、雄蕊等等。

k 折交叉驗證

用於預測模型推論新資料的能力的演算法。k-fold 中的 k 是指將資料集的示例分成幾個相等群組,也就是訓練及測試模型的次數。每輪訓練和測試,都會將不同的群組設為測試集,而所有剩餘的群組則成為訓練集。經過 k 輪訓練和測試後,您可以計算所選測試指標的平均值和標準差。

舉例來說,假設您的資料集包含 120 個範例,再假設您決定將 k 設為 4。因此,在洗牌後,您將資料集分成四個相等的 30 個例項群組,並進行四輪訓練和測試:

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

舉例來說,均方誤差 (MSE) 可能是線性迴歸模型最有意義的指標。因此,您會在四輪測試中找到 MSE 的平均值和標準差。

k-means

#clustering

這是一種常見的分群演算法,可在非監督式學習中將範例分組。k-means 演算法基本上會執行以下操作:

  • 會以迭代方式判斷最佳 k 個中心點 (稱為 centroids)。
  • 將每個示例指派給最近的群集中心。最接近同一中心點的示例屬於同一個群組。

k-means 演算法會挑選群集中心位置,盡量減少每個範例與最近群集中心之間距離的累積平方

舉例來說,請考量下列狗狗身高與狗狗身寬的圖表:

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

如果 k=3,k-means 演算法會判斷三個中位點。每個示例都會指派至最近的群集中心,產生三個群組:

與前一個插圖相同的笛卡兒圖表,但新增了三個重心。前述資料點已分成三個獨立的群組,每個群組代表最接近特定中心點的資料點。

假設製造商想決定小型、中型和大型狗狗毛衣的理想尺寸。這三個重心代表該叢集中每隻狗的平均身高和平均寬度。因此,製造商應該根據這三個重心來決定毛衣尺寸。請注意,叢集的中心點通常不是叢集中的示例。

上述圖示顯示 k 均值的範例,其中只有兩個特徵 (高度和寬度)。請注意,k 均值可將多個特徵的範例分組。

k-median

#clustering

k-means 密切相關的分群演算法。這兩者之間的實際差異如下:

  • 在 k 均值中,系統會將候選質心與各個示例之間的距離平方和最小化,藉此決定質心。
  • 在 k 中位法中,系統會將候選質心與各個示例之間的距離總和降到最低,藉此決定質心。

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

  • k-means 會使用從群集中心到範例的歐氏距離。(在二維空間中,歐幾里得距離是指使用畢氏定理來計算對角線。)舉例來說,(2,2) 和 (5,-2) 之間的 k-means 距離為:
$$ {\text{Euclidean distance}} = {\sqrt {(2-5)^2 + (2--2)^2}} = 5 $$
  • k-median 會使用從群集中心到範例的 曼哈頓距離。這個距離是各維度中絕對差異值的總和。舉例來說,(2,2) 和 (5,-2) 之間的 k 中位數距離為:
$$ {\text{Manhattan distance}} = \lvert 2-5 \rvert + \lvert 2--2 \rvert = 7 $$

L

L0 正則化

#fundamentals

一種正則化,會對模型中非零權重總數進行處罰。舉例來說,如果模型有 11 個非零權重,會比有 10 個非零權重的類似模型受到更嚴重的懲罰。

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

L1 損失

#fundamentals

損失函式:計算實際 標籤值與 模型預測的值之間差異的絕對值。舉例來說,以下是五個範例批次計算 L1 損失:

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

相較於 L2 損失,L1 損失對離群值的敏感度較低。

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

L1 正則化

#fundamentals

一種正則化,會根據權重絕對值的總和,按比例處罰權重。L1 正則化可將不相關或幾乎不相關的特徵權重設為 確切 0。權重為 0 的特徵會從模型中有效移除。

請比較L2 正則化

L2 損失

#fundamentals

損失函式:計算實際標籤值與模型預測的值之間差異的平方。舉例來說,以下是五個範例批次計算 L2 損失:

範例的實際值 模型的預測值 差異平方
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = L2 損失

由於平方運算,L2 損失會放大異常值的影響。也就是說,L2 損失函式對錯誤預測的反應比 L1 損失函式更為強烈。舉例來說,前述批次的 L1 損失為 8,而非 16。請注意,單一異常值就占了 16 個變數中的 9 個。

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

均方誤差是每個範例的平均 L2 損失。平方損失是 L2 損失的另一個名稱。

L2 正則化

#fundamentals

一種正則化,會根據權重平方的總和,按比例加權權重。L2 正則化可讓異常值的權重 (高正值或低負值) 更接近 0,但不會完全等於 0。值非常接近 0 的特徵會保留在模型中,但不會對模型的預測結果造成太大影響。

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

請比較 L1 正則化

標籤

#fundamentals

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

每個標記範例都包含一或多個特徵和標記。舉例來說,在垃圾內容偵測資料集中,標籤可能會是「垃圾內容」或「非垃圾內容」。在降雨資料集中,標籤可能是某個期間內降雨量。

有標籤的範例

#fundamentals

範例包含一或多個特徵標籤。舉例來說,下表顯示房屋估價模型的三個已標註範例,每個範例都有三個特徵和一個標籤:

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

監督式機器學習中,模型會使用已加上標籤的範例進行訓練,並針對未標示的範例做出預測。

比較有標籤和無標籤的示例。

標籤外洩

模型設計錯誤,其中特徵標籤的代理程式。舉例來說,假設您有一個二元分類模型,用來預測潛在客戶是否會購買特定產品。假設模型的其中一個特徵是名為 SpokeToCustomerAgent 的布林值。此外,假設客戶服務專員只會在潛在客戶實際購買產品才指派給他們。在訓練期間,模型會快速學習 SpokeToCustomerAgent 和標籤之間的關聯。

lambda

#fundamentals

與「正規化率」同義。

Lambda 是過載的字詞。我們在這裡著重於 規則化一詞的定義。

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

#language

由 Google 開發的Transformer 技術為基礎的大型語言模型,可產生逼真的對話回覆,並已訓練完成,可從大量對話資料集擷取資訊。

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

地標

#image

關鍵點的同義詞。

語言模型

#language

模型:可估算符記或符記序列在較長的符記序列中出現的機率。

大型語言模型

#language

至少有一個語言模型,其參數數量非常高。更非正式的說法是,任何以 Transformer 為基礎的語言模型,例如 GeminiGPT

潛在空間

#language

嵌入空間的同義詞。

圖層

#fundamentals

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

舉例來說,下圖顯示的神經網路有一個輸入層、兩個隱藏層和一個輸出層:

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

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

Layers API (tf.layers)

#TensorFlow

這個 TensorFlow API 可用於建構深度神經網路,並將其做為層的組合。您可以使用 Layers API 建構不同類型的圖層,例如:

  • tf.layers.Dense 適用於全連接層
  • tf.layers.Conv2D 代表卷積層。

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

葉子

#df

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

例如,下列決策樹包含三個葉節:

決策樹狀圖包含兩個條件,導致三個葉節。

學習技術可解釋性工具 (LIT)

這項工具可視覺化呈現互動式模型,並提供資料視覺化功能。

您可以使用開放原始碼 LIT解讀模型,或將文字、圖像和表格資料視覺化。

學習率

#fundamentals

浮點數,可告知梯度下降演算法,如何調整每個迭代的權重和偏差。舉例來說,學習率為 0.3 的調整權重和偏差的強度,是學習率為 0.1 的三倍。

學習率是重要的超參數。如果您將學習率設得太低,訓練時間就會過長。如果設定的學習率過高,梯度下降通常會難以達到收斂

最小平方法迴歸

透過盡量降低 L2 損失,訓練線性迴歸模型。

Levenshtein 距離

#language
#metric

編輯距離指標,可計算從一個字詞變更為另一個字詞所需的最少刪除、插入和替換作業次數。舉例來說,「heart」和「darts」之間的 Levenshtein 距離為 3,因為下列三個編輯步驟是將一個字轉換為另一個字時所需的最少變更次數:

  1. heart → deart (將「h」替換為「d」)
  2. deart → dart (刪除「e」)
  3. dart → darts (插入「s」)

請注意,上述順序並非三次編輯的唯一路徑。

線性

#fundamentals

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

線性關係的圖表為直線。

非線性相反。

線性模型

#fundamentals

模型會為每個特徵指派一個權重,以進行預測。(線性模型也會納入偏差)。相反地,在深度模型中,特徵與預測的關係通常是非線性

線性模型通常比深度模型更容易訓練,且更容易解讀。不過,深度模型可以學習特徵之間的複雜關係。

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

線性迴歸

#fundamentals

一種機器學習模型,符合下列兩個條件:

  • 該模型為線性模型
  • 預測值為浮點值。(這是線性迴歸迴歸部分)。

比較線性迴歸和邏輯迴歸。此外,請比較迴歸與分類

LIT

學習可解釋性工具 (LIT) 的縮寫,舊稱為語言可解釋性工具。

LLM

#language
#generativeAI

大型語言模型的縮寫。

大型語言模型評估 (evals)

#language
#generativeAI

一組用於評估大型語言模型 (LLM) 成效的指標和基準。大致來說,LLM 評估有以下功能:

  • 協助研究人員找出 LLM 需要改善之處。
  • 可用於比較不同的 LLM,並找出特定任務的最佳 LLM。
  • 確保 LLM 的使用方式安全且符合道德。

邏輯迴歸

#fundamentals

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

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

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

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

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

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

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

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

logits

分類模型產生的原始 (未正規化) 預測向量,通常會傳遞至正規化函式。如果模型要解決多類別分類問題,則 logit 通常會成為 softmax 函式的輸入內容。接著,softmax 函式會產生 (標準化) 機率向量,其中每個可能類別都有一個值。

對數損失

#fundamentals

在二元邏輯迴歸中使用的損失函式

對數勝算比

#fundamentals

某個事件的對數機率。

長短期記憶 (LSTM)

#seq

迴圈神經網路中的一種單元格,用於處理應用程式中的資料序列,例如手寫辨識、機器翻譯和圖片說明文字。LSTM 會根據 RNN 中先前儲存格的新輸入和背景資訊,在內部記憶體狀態中保留記錄,藉此解決訓練 RNN 時因長資料序列而發生的梯度消失問題

LoRA

#language
#generativeAI

低秩適應性的縮寫。

損失

#fundamentals

監督式模型訓練期間,可衡量模型的預測結果標籤之間的差距。

損失函式會計算損失。

損失集結網站

一種機器學習演算法,可透過結合多個模型的預測,並使用這些預測結果做出單一預測,進而提升模型效能。因此,損失匯總器可以降低預測的變異度,並提高預測的準確度

損失曲線

#fundamentals

損失與訓練疊代次數的關係圖。下圖顯示典型的損失曲線:

損失與訓練疊代作業的笛卡爾圖表,顯示初始疊代損失快速下降,接著逐漸下降,最後在疊代作業期間保持平坦。

損失曲線可協助您判斷模型何時收斂過度擬合

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

另請參閱泛化曲線

損失函數

#fundamentals

訓練或測試期間,數學函式會計算批次樣本的損失。損失函式會針對預測正確的模型傳回較低的損失,而非預測不正確的模型。

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

損失函數的類型有很多種,請針對您要建構的模型類型,選擇合適的損失函式。例如:

損失曲面

體重與減重圖表。梯度下降的目標是找出損失值曲面處於局部最小值的權重。

低秩調整 (LoRA)

#language
#generativeAI

參數效率高微調技巧,可「凍結」模型的預先訓練權重 (以便不再修改),然後在模型中插入一小組可訓練的權重。這組可訓練的權重 (也稱為「更新矩陣」) 比基本模型小得多,因此訓練速度也快得多。

LoRA 具備下列優點:

  • 改善模型在精細調整所用領域的預測品質。
  • 比起需要微調所有模型參數的技術,這項技術可更快速地進行微調。
  • 允許同時服務共用相同基礎模型的多個專門模型,藉此降低推論的運算成本。

LSTM

#seq

長短期記憶的縮寫。

M

機器學習

#fundamentals

指的是會根據輸入資料訓練模型的程式或系統。訓練好的模型能根據全新或未知資料進行實用預測,這些資料的發布方式與用於訓練模型的資料相同。

機器學習也指與這些程式或系統相關的研究領域。

機器翻譯

#generativeAI

使用軟體 (通常是機器學習模型) 將文字從一種人類語言轉換為另一種人類語言,例如從英文轉換為日文。

多數類

#fundamentals

不平衡資料集中較常見的標籤。舉例來說,如果資料集包含 99% 的負面標籤和 1% 的正面標籤,則負面標籤是多數類別。

請參閱「少數類別」一節。

馬可夫決策程序 (MDP)

#rl

這張圖表代表決策模型,在該模型中,系統會在假設馬可夫屬性成立的情況下,透過決策 (或動作) 導覽一連串狀態。在強化學習中,狀態之間的這些轉換會傳回數值獎勵

馬可夫定律

#rl

特定 環境的屬性,其中狀態轉換完全由目前狀態中隱含的資訊和代理程式的動作決定。

掩碼語言模型

#language

語言模型:預測候選符記填入序列空白的機率。舉例來說,經過遮罩的語言模型可計算候選字詞的機率,以便取代下列句子中的底線:

帽子裡的 ____ 回來了。

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

帽子上的「MASK」字樣又出現了。

大多數的現代遮罩語言模型都是雙向

matplotlib

開放原始碼 Python 2D 繪圖程式庫。matplotlib 可協助您將機器學習的不同面向以圖形呈現。

矩陣分解

#recsystems

在數學中,一種用來找出點積近似於目標矩陣的矩陣機制。

推薦系統中,目標矩陣通常會儲存使用者對項目的評分。舉例來說,電影推薦系統的目標矩陣可能會如下所示,其中正整數為使用者評分,0 則表示使用者未對電影評分:

  卡薩布蘭加 The Philadelphia Story 黑豹 神力女超人 黑色追緝令
使用者 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 是否會喜歡「黑豹」

建議系統的一種方法是使用矩陣分解來產生下列兩個矩陣:

舉例來說,如果對三位使用者和五項商品使用矩陣分解,就會產生下列使用者矩陣和商品矩陣:

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」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 loss 時,每個範例的平均損失。計算平均絕對誤差的方式如下:

  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

比較平均絕對誤差與均方誤差均方根誤差

k 的平均精確度 (mAP@k)

#language
#generativeAI

在驗證資料集中,所有平均精確度 (k) 分數的統計平均值。在 k 處計算平均精確度有一個用途,就是判斷推薦系統產生的推薦內容品質。

雖然「平均平均值」這個詞組聽起來很冗長,但指標名稱是適當的。畢竟,這項指標會找出多個 average precision at k 值的平均值。

均方誤差 (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 會使用 Mean Squared Error 計算損失值。

網格

#TensorFlow
#GoogleCloud

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

Mesh 是個超載的術語,可指下列任一項:

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

無論是哪種情況,都會將網格指定為 shape

元學習

#language

機器學習的子集,用於發現或改善學習演算法。元學習系統也可以訓練模型,讓模型從少量資料或先前任務的經驗中,快速學習新任務。元學習演算法通常會嘗試達成以下目標:

  • 改善或學習手動設計的功能 (例如初始化器或最佳化工具)。
  • 提高資料和運算效率。
  • 改善泛化功能。

元學習與少量樣本學習相關。

指標

#TensorFlow

您重視的統計資料。

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

Metrics API (tf.metrics)

用於評估模型的 TensorFlow API。例如,tf.metrics.accuracy 會決定模型預測結果與標籤相符的頻率。

小批

#fundamentals

在一個迭代中處理的批次隨機選取的子集。迷你批次的批次大小通常介於 10 到 1,000 個示例之間。

舉例來說,假設整個訓練集 (完整批次) 包含 1,000 個範例。再假設您將每個迷你批次的批次大小設為 20。因此,每次迭代都會在 1,000 個隨機示例中判斷損失,然後據此調整權重偏差

計算迷你批次的損失比計算完整批次中所有範例的損失更有效率。

小批隨機梯度下降法

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

最小最大化損失

生成式對抗網路的損失函式,根據產生資料和實際資料之間的交叉熵分布。

第一篇論文中使用了 Minimax 損失函式來說明生成式對抗網路。

少數族群

#fundamentals

類別不平衡資料集中較不常見的標籤。舉例來說,如果資料集包含 99% 的負面標籤和 1% 的正面標籤,則正面標籤屬於少數類別。

請參閱「多數類別」一節。

專家組合

#language
#generativeAI

這項方法只使用神經網路的參數子集 (稱為專家) 來處理特定輸入 符記示例,藉此提高效率。篩選網路會將每個輸入符記或範例導向適當的專家。

詳情請參閱下列任一論文:

ML

機器學習的縮寫。

MMIT

#language
#image
#generativeAI

多模態指令調整的縮寫。

MNIST

#image

由 LeCun、Cortes 和 Burges 編製的公共領域資料集,包含 60,000 張圖片,每張圖片都顯示人類如何手動書寫 0 到 9 之間的特定數字。每張圖片都會儲存為 28x28 的整數陣列,其中每個整數都是介於 0 和 255 之間的灰階值 (含首尾)。

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

模態

#language

高層級資料類別。舉例來說,數字、文字、圖片、影片和音訊是五種不同的模式。

模型

#fundamentals

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

  • 線性迴歸模型由一組權重偏差組成。
  • 類神經網路模型包含:
    • 一組隱藏層,每個層都包含一或多個神經元
    • 與每個神經元相關的權重和偏差。
  • 決策樹模型包含以下項目:
    • 樹狀圖的形狀,也就是條件和葉節點連結的模式。
    • 條件和葉子。

您可以儲存、還原或複製模型。

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

模型容量

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

模型層疊

#generativeAI

系統會為特定推論查詢挑選理想的模型

想像一組模型,從非常大型 (大量參數) 到非常小型 (參數少得多) 都有。相較於小型模型,超大型模型在推論時會消耗更多運算資源。不過,相較於小型模型,大型模型通常可以推斷更複雜的要求。模型層疊功能會判斷推論查詢的複雜度,然後挑選適當的模型來執行推論。建立模型層級的主要動機,是為了減少推論成本,一般來說,您應該選擇較小的模型,並只在複雜查詢時選擇較大的模型。

假設小型模型在手機上執行,而較大型的模型則在遠端伺服器上執行。良好的模型層級轉移可讓較小的模型處理簡單要求,並只呼叫遠端模型處理複雜要求,進而降低成本和延遲時間。

另請參閱模型路由器

模型平行處理

#language

一種擴大訓練或推論的方法,可將一個模型的不同部分放置在不同的裝置上。模型平行處理可讓過大的模型適合在單一裝置上執行。

系統通常會執行下列操作,實作模型並行功能:

  1. 將模型分割成較小的部分。
  2. 將這些較小的部分訓練工作分散到多個處理器。每個處理器都會訓練模型的一部分。
  3. 將結果合併,建立單一模型。

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

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

模型路由器

#generativeAI

這個演算法可決定在模型層疊中,推論的理想模型。模型路由器本身通常是一種機器學習模型,可逐漸學習如何為特定輸入內容挑選最佳模型。不過,模型路由器有時可能是較簡單的非機器學習演算法。

模型訓練

決定最佳模型的程序。

MOE

#language
#image
#generativeAI

混合專家的縮寫。

累積熱度

這是一種複雜的梯度下降演算法,其中學習步驟不僅取決於目前步驟的導數,還取決於緊鄰前一個步驟的導數。Momentum 會計算梯度的指數加權移動平均值,類似於物理學中的動量。動量有時可避免學習過程卡在局部極小值。

MT

#generativeAI

機器翻譯的縮寫。

多元分類

#fundamentals

在監督式學習中,分類問題,資料集包含兩個以上 類別標籤。舉例來說,Iris 資料集中的標籤必須是下列三個類別之一:

  • Iris setosa
  • Iris virginica
  • Iris versicolor

以 Iris 資料集訓練的模型,可在新的範例中預測 Iris 類型,這就是多元分類。

相反地,分類問題如果只區分兩個類別,就是二元分類模型。舉例來說,預測電子郵件是否為「垃圾郵件」或「非垃圾郵件」的模型就是二元分類模型。

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

多重類別邏輯迴歸

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

多頭自注意力

#language

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

Transformers 引入了多頭自注意力。

多模態指令調整

#language

指令調整模型,可處理文字以外的輸入內容,例如圖片、影片和音訊。

多模態模型

#language

模型的輸入和/或輸出包含多個模態。舉例來說,假設模型同時將圖片和文字說明 (兩種模式) 做為特徵,並輸出分數,指出文字說明與圖片的適配度。因此,這個模型的輸入內容是多模態,輸出內容則是單模態。

多元分類

與「多元分類」同義。

多元迴歸

多重類別邏輯迴歸同義。

多工處理

一種機器學習技術,訓練單一模型執行多項工作

多工作模型的建立方式,是針對每項不同任務適合的資料進行訓練。這可讓模型學習如何在各項工作之間分享資訊,進而提升學習效率。

經過多工訓練的模型通常具有更佳的泛化能力,且可更妥善地處理不同類型的資料。

NaN 陷阱

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

NaN 是「不是」數字的縮寫。

自然語言處理

#language
教導電腦如何使用語言規則處理使用者所說或輸入的內容。幾乎所有現代自然語言處理都仰賴機器學習。

自然語言理解

#language

自然語言處理的子集,用於判斷所說或所打內容的意圖。自然語言理解技術可超越自然語言處理,考量語言的複雜面向,例如脈絡、嘲諷和情緒。

負類

#fundamentals

二元分類中,一個類別稱為「正面」,另一個則稱為「負面」。正類是模型要測試的事物或事件,而負類則是其他可能性。例如:

  • 醫學檢驗中的負向類別可能是「沒有腫瘤」。
  • 電子郵件分類器中的負面類別可能是「非垃圾郵件」。

正類形成對比。

負面取樣

與「候選抽樣」同義。

神經架構搜尋 (NAS)

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

NAS 通常會使用:

  • 搜尋空間,也就是一組可能的架構。
  • 健全函式,用於評估特定架構在特定工作中的效能。

NAS 演算法通常會從一小組可能的架構開始,並隨著演算法進一步瞭解有效架構,逐漸擴大搜尋空間。適應度函式通常會根據架構在訓練集上的效能,而演算法通常會使用強化學習技巧進行訓練。

NAS 演算法已證明,可有效為各種工作找到高效能架構,包括圖片分類、文字分類和機器翻譯

輸出內容

#fundamentals

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

神經網路包含輸入層、兩個隱藏層和輸出層。

類神經網路中的每個神經元都會連結至下一層的所有節點。舉例來說,在前述圖表中,請注意第一個隱藏層中的三個神經元各自連結至第二個隱藏層中的兩個神經元。

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

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

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

神經元

#fundamentals

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

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

第一個隱藏層中的神經元會接受來自輸入層的特徵值輸入。第一個隱藏層以外的任何隱藏層中的神經元,都會接受來自前一隱藏層神經元的輸入內容。舉例來說,第二個隱藏層中的神經元會接受第一個隱藏層中神經元的輸入內容。

下圖標示出兩個神經元及其輸入內容。

神經網路包含輸入層、兩個隱藏層和輸出層。兩個神經元皆已醒目顯示:一個位於第一個隱藏層,另一個位於第二個隱藏層。第一個隱藏層中醒目的神經元會接收輸入層中兩個特徵的輸入內容。第二個隱藏層中醒目的神經元會接收第一個隱藏層中三個神經元中的每個神經元輸入內容。

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

N 元語法

#seq
#language

由 N 個字組成的有序序列。例如「truly madly」就是一個 2 元組。由於順序相關,madly trulytruly madly 的 2 元組不同。

這類 N-gram 的名稱 範例
2 大元音節或 2 元音節 to go, go to, eat lunch, eat dinner
3 三元組或 3 元組 ate too much, three blind mice, the bell tolls
4 4 個字元 在公園散步,風中飄揚的灰塵,男孩吃了扁豆

許多自然語言理解模型都會使用 N-gram 預測使用者輸入或說出的下一個字詞。舉例來說,假設使用者輸入「three blind」。以三元組為基礎的 NLU 模型可能會預測使用者接下來會輸入「mice」

請比較 N-gram 與詞袋,後者是未排序的字詞集合。

自然語言處理

#language

自然語言處理的縮寫。

自然語言理解

#language

自然語言理解的縮寫。

節點 (決策樹)

#df

決策樹中,任何條件葉節點

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

節點 (神經網路)

#fundamentals

隱藏層中的神經元

節點 (TensorFlow 圖形)

#TensorFlow

TensorFlow 圖形中的運算。

噪音

廣義來說,任何會模糊資料集信號的因素都算是雜訊。資料中可能會出現各種雜訊,例如:

  • 人工評分者在標註時會出錯。
  • 人類和儀器誤記或遺漏特徵值。

非二元條件

#df

條件包含兩個以上的可能結果。舉例來說,下列非二元條件包含三種可能的結果:

一個可導致三種可能結果的條件 (number_of_legs = ?)。一個結果 (number_of_legs = 8) 會產生名為 spider 的葉子。第二個結果 (number_of_legs = 4) 會導向名為 dog 的分葉。第三個結果 (number_of_legs = 2) 會導向名為 penguin 的葉片。

非線性

#fundamentals

兩個或多個變數之間的關係,無法單靠加法和乘法表示。線性關係可用線條表示;非線性關係則無法用線條表示。舉例來說,假設有兩個模型,每個模型都將單一功能與單一標籤建立關聯。左側的模型為線性,右側的模型為非線性:

兩個區塊。其中一個圖表是直線,因此這是線性關係。另一個圖表是曲線,因此這是非線性關係。

無回應偏誤

#fairness

請參閱選擇偏誤

非穩定性

#fundamentals

特徵的值會隨著一或多個維度 (通常是時間) 而變動。舉例來說,請看以下非平穩的例子:

  • 特定商店販售的泳衣數量會因季節而異。
  • 某個地區收成的特定水果數量在大部分時間為零,但在短暫期間內會大量收成。
  • 由於氣候變遷,每年的平均溫度也隨之改變。

平穩性形成對比。

沒有唯一正確答案 (NORA)

#language
#generativeAI

提示有多個適當的回覆選項。舉例來說,下列提示沒有正確答案:

講個關於大象的笑話。

評估「沒有正確答案」提示可能會很困難。

NORA

#language
#generativeAI

沒有正確答案的縮寫。

正規化

#fundamentals

廣義來說,這個程序是將變數的實際值範圍轉換為標準值範圍,例如:

  • -1 到 +1
  • 0 至 1
  • Z 分數 (大約 -3 到 +3)

舉例來說,假設某個特徵的實際值範圍為 800 到 2,400,您可以透過特徵工程,將實際值正規化為標準範圍,例如 -1 到 +1。

標準化是特徵工程中常見的工作。如果特徵向量中的每個數值特徵大致相同,模型通常會訓練得更快 (並產生更準確的預測結果)。

詳情請參閱機器學習速成課程的「使用數值資料」單元。另請參閱Z 分數正規化

新穎性偵測

判斷新 (新穎) 示例是否來自與訓練集相同的機率分布情形。換句話說,在訓練訓練集後,新穎度偵測功能會判斷樣本 (在推論或額外訓練期間) 是否為異常值

請參閱離群值偵測

數值資料

#fundamentals

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

並非所有整數資料都應以數值資料呈現。舉例來說,部分國家/地區的郵遞區號為整數,但整數郵遞區號不應在模型中以數值資料表示。這是因為郵遞區號 20000 的權重並非郵遞區號 10000 的兩倍 (或一半)。此外,雖然不同郵遞區號確實與不同的房地產價值相關聯,但我們無法假設郵遞區號 20000 的房地產價值是郵遞區號 10000 的兩倍。郵遞區號應改為以分類資料呈現。

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

NumPy

開放原始碼數學程式庫,可在 Python 中提供高效的陣列運算。pandas 是建立在 NumPy 上的程式庫。

O

目標

演算法嘗試最佳化的指標。

目標函數

模型旨在最佳化的數學公式或指標。舉例來說,線性迴歸的目標函式通常是均方誤差。因此,在訓練線性迴歸模型時,訓練目標是盡量降低均方誤差。

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

另請參閱「損失」。

斜線條件

#df

決策樹中,涉及一個以上特徵條件。舉例來說,如果高度和寬度都是特徵,則下列為斜向條件:

  height > width

請參閱「軸對齊條件」一節。

離線

#fundamentals

static 同義。

離線推論

#fundamentals

模型產生一批預測結果,然後將這些預測結果快取 (儲存) 的程序。應用程式就能從快取中存取推論預測結果,而非重新執行模型。

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

離線推論也稱為「靜態推論」

請參閱線上推論

one-hot 編碼

#fundamentals

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

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

一對一編碼通常用於表示具有有限可能值集合的字串或 ID。舉例來說,假設名為 Scandinavia 的某個類別特徵有五個可能值:

  • 「Denmark」
  • 「Sweden」
  • 「Norway」
  • 「芬蘭」
  • 「冰島」

單熱編碼可代表下列五個值:

country 向量
「Denmark」 1 0 0 0 0
「Sweden」 0 1 0 0 0
「Norway」 0 0 1 0 0
「芬蘭」 0 0 0 1 0
「冰島」 0 0 0 0 1

由於採用單熱編碼,模型可以根據五個國家/地區學習不同的連結。

將特徵以 數值資料表示,是 one-hot 編碼的替代方案。很抱歉,以數字表示斯堪地那維亞國家/地區並不是一個好選擇。舉例來說,請參考以下數值表示法:

  • 「Denmark」為 0
  • 「Sweden」為 1
  • 「Norway」為 2
  • 「芬蘭」是 3
  • 「冰島」是 4

使用數值編碼時,模型會以數學方式解讀原始數字,並嘗試以這些數字進行訓練。不過,冰島的人口並非挪威的兩倍 (或一半),因此模型會得出一些奇怪的結論。

單樣本學習

一種機器學習方法,通常用於物件分類,旨在從單一訓練範例中學習有效的分類器。

另請參閱少量樣本學習零樣本學習

單樣本提示

#language
#generativeAI

提示,其中包含一個示例,說明大型語言模型應如何回應。舉例來說,以下提示包含一個範例,說明大型語言模型應如何回答查詢。

提示的部分 附註
指定國家/地區的官方貨幣為何? 要讓 LLM 回答的問題。
法國:歐元 舉例來說。
印度: 實際查詢。

請比較一次性提示與下列術語:

one-vs.-all

#fundamentals

假設分類問題有 N 個類別,解決方案則包含 N 個獨立的二元分類器,每個可能結果對應一個二元分類器。舉例來說,假設模型將示例分類為動物、蔬菜或礦物,一對多解決方案會提供下列三個獨立的二元分類器:

  • 動物與非動物
  • 蔬菜與非蔬菜
  • 礦物與非礦物

線上

#fundamentals

dynamic 同義。

線上推論

#fundamentals

依需求產生預測。舉例來說,假設應用程式將輸入內容傳遞至模型,並發出預測要求。使用線上推論的系統會執行模型 (並將預測結果傳回給應用程式),以回應要求。

請參閱離線推論

作業 (op)

#TensorFlow

在 TensorFlow 中,任何建立、操控或銷毀 Tensor 的程序。舉例來說,矩陣相乘是一種作業,會將兩個張量做為輸入,並產生一個張量做為輸出。

Optax

適用於 JAX 的漸層處理和最佳化程式庫。Optax 提供可透過自訂方式重新組合的構成元素,協助研究人員調整參數模型 (例如深層類神經網路)。其他目標包括:

  • 提供可讀、經過充分測試且效率高的核心元件實作項目。
  • 將低階元素整合至自訂最佳化工具 (或其他漸層處理元件),藉此提升工作效率。
  • 讓任何人都能輕鬆提供意見,加快新想法的採用速度。

最佳化器

梯度下降演算法的特定實作。常見的最佳化器包括:

  • AdaGrad,代表「自適應梯度下降法」。
  • Adam 代表「ADAptive with Momentum」(動能適應)。

外團體同質性偏誤

#fairness

在比較態度、價值觀、個性特徵和其他特徵時,傾向將外團體成員視為比同團體成員更相似。「內群」是指經常與您互動的使用者;「外群」是指不常與您互動的使用者。如果您要求參與者提供外群屬性,建立資料集時,這些屬性可能會比參與者列出的內群屬性,更缺乏細微差異,也更容易受到刻板印象影響。

舉例來說,小人可能會詳細描述其他小人的房子,並指出建築風格、窗戶、門和大小的細微差異。不過,同樣的小人也許會宣稱布羅卜丁人全都住在相同的房子裡。

外團體同質性偏誤是一種團體歸因偏誤

另請參閱內團體偏誤

離群值偵測

訓練集中找出離群值的程序。

請參閱新奇偵測

成效突出的影片

與其他值相差甚遠的值。在機器學習中,下列任何一項都是異常值:

  • 輸入值與平均值相差超過 3 個標準差的資料。
  • 權重的絕對值偏高。
  • 預測值與實際值相差甚遠。

舉例來說,假設 widget-price 是某個模型的功能。假設平均值 widget-price 為 7 歐元,標準差為 1 歐元。因此,含有 widget-price 為 12 歐元或 2 歐元的範例會被視為異常值,因為這些價格都比平均值高出五個標準差。

異常值通常是因為拼寫錯誤或其他輸入錯誤所致。在其他情況下,異常值並非錯誤,畢竟離平均值五個標準差的值雖然罕見,但並非不可能。

異常值經常會導致模型訓練出現問題。裁剪是管理異常值的方法之一。

袋外評估 (OOB 評估)

#df

評估決策森林品質的機制,可測試每個決策樹示例 (用於該決策樹的訓練) 進行比較。舉例來說,在下圖中,您會發現系統會針對約三分之二的範例訓練每個決策樹,然後根據剩餘的三分之一範例進行評估。

決策森林包含三個決策樹。一個決策樹會針對三分之二的範例進行訓練,然後使用剩下的三分之一進行 OOB 評估。第二個決策樹會針對與先前決策樹不同的三分之二示例進行訓練,然後使用與先前決策樹不同的三分之一進行 OOB 評估。

袋外評估是交叉驗證機制的一種計算效率高且保守的近似值。在交叉驗證中,每個交叉驗證輪次都會訓練一個模型 (例如,在 10 倍交叉驗證中訓練 10 個模型)。使用 OOB 評估時,系統會訓練單一模型。由於袋外樣本在訓練期間會保留每個樹的部分資料,因此 OOB 評估可以使用這些資料來近似交叉驗證。

輸出層

#fundamentals

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

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

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

過度配適

#fundamentals

建立的模型訓練資料過於相符,導致模型無法針對新資料做出正確預測。

正則化可減少過度擬合。使用大量且多元的訓練資料集進行訓練,也可以減少過度配適的情形。

過度取樣

不平衡類別資料集中重複使用少數類別示例,以便建立更平衡的訓練集

舉例來說,假設有一個二元分類問題,其中多數類別與少數類別的比例為 5,000:1。如果資料集包含一百萬個範例,則資料集只包含約 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
#generativeAI

一組技巧,可微調大型預先訓練語言模型 (PLM),比完整微調更有效率。相較於完整微調,參數效率調整通常會微調的參數會少得多,但通常會產生與完整微調所建立的大型語言模型一樣 (或幾乎一樣) 優異的大型語言模型

比較具參數運用效率的調整機制與下列項目:

高效參數微調也稱為高效參數微調

參數伺服器 (PS)

#TensorFlow

這項工作會在分散式設定中追蹤模型的參數

參數更新

在訓練期間調整模型的參數的作業,通常是在 梯度下降 的單一迭代中進行。

偏導數

在這個導數中,除了一個變數外,所有變數都視為常數。舉例來說,f(x, y) 相對於 x 的偏微分是 f 的偏微分,而 f 視為 x 的函數 (也就是將 y 保持不變)。f 相對於 x 的偏微分只會著重於 x 的變化方式,並忽略方程式中的所有其他變數。

參與偏誤

#fairness

與無反應偏誤同義。請參閱選擇偏誤

分割策略

用於在參數伺服器中劃分變數的演算法。

在 k 處傳回 (pass@k)

用來判斷大型語言模型產生的程式碼 (例如 Python) 品質的指標。具體來說,pass at k 會指出,在 k 產生的程式碼區塊中,至少有一個產生的程式碼區塊會通過所有單元測試的可能性。

大型語言模型通常很難為複雜的程式設計問題產生良好的程式碼。軟體工程師會針對這項問題,要求大型語言模型為同一個問題產生多個 (k) 解決方案。接著,軟體工程師會針對單元測試測試每個解決方案。在 k 計算通過的結果取決於單元測試的結果:

  • 如果一或多個解決方案通過單元測試,則 LLM 會通過該程式碼產生挑戰。
  • 如果沒有任何解決方案通過單元測試,則 LLM 會失敗該程式碼產生挑戰。

k 處傳遞的公式如下:

$$\text{pass at k} = \frac{\text{total number of passes}} {\text{total number of challenges}}$$

一般來說,k 值越高,通過 k 分數的機率就越高;不過,k 值越高,就需要越多大型語言模型和單元測試資源。

Pax

程式設計架構,專門用於訓練大型神經網路 模型,這些模型的規模龐大,橫跨多個 TPU 加速器晶片 切片Pod

Pax 是以 Flax 為基礎建構,而 Flax 則是以 JAX 為基礎建構。

圖表顯示 Pax 在軟體堆疊中的位階。Pax 是以 JAX 為基礎打造的程式庫。Pax 本身包含三個層級。底層包含 TensorStore 和 Flax。中間層包含 Optax 和 Flaxformer。頂層包含 Praxis 模擬程式庫。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 個輸入值,並分別乘以不同的權重。感知器會輸出單一值。

感知器是類神經網路中的神經元

performance

超載的字詞,含有下列意義:

  • 在軟體工程中,這個詞彙的標準含義是也就是說,這款軟體的執行速度 (或效率) 如何?
  • 在機器學習中代表的意思。這裡的效能是指以下問題的答案:這個模型的準確度如何?也就是說,模型的預測結果有多準確?

排序變數重要性

#df

一種變數重要性,用於評估模型在變換特徵值後,預測錯誤率的增幅情形。排序變數重要性是與模型無關的指標。

困惑度

用來評估模型完成任務的程度。舉例來說,假設您的工作是讀取使用者在手機鍵盤上輸入的字詞的前幾個字母,並提供可能的完成字詞清單。此任務的困惑度 (P) 大約是您需要提供的猜測次數,才能讓清單包含使用者嘗試輸入的實際字詞。

困惑度與交叉熵相關,如下所示:

$$P= 2^{-\text{cross entropy}}$$

管道

圍繞機器學習演算法的基礎架構。管道包括收集資料、將資料放入訓練資料檔案、訓練一或多個模型,以及將模型匯出至實際環境。

管線

#language

一種模型並行處理形式,其中模型的處理作業會分成連續階段,且每個階段會在不同的裝置上執行。當一個階段處理一個批次時,前一個階段可以處理下一個批次。

另請參閱分階段訓練

pjit

JAX 函式,可將程式碼分割成多個加速器晶片執行。使用者會將函式傳遞至 pjit,而 pjit 會傳回具有相同語意但編譯為 XLA 運算的函式,可在多個裝置 (例如 GPU 或 TPU 核心) 上執行。

使用者可透過 SPMD 分割器,使用 pjit 分割運算,而無須重新編寫運算。

自 2023 年 3 月起,pjit 已與 jit 合併。詳情請參閱「分散陣列和自動並行化」。

PLM

#language
#generativeAI

預先訓練語言模型的縮寫。

pmap

JAX 函式,可在多個底層硬體裝置 (CPU、GPU 或 TPU) 上執行輸入函式的副本,並使用不同的輸入值。pmap 會依賴 SPMD

政策

#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

在模型運行「後」調整模型輸出內容。您可以使用後置處理功能強制執行公平性限制,而無須修改模型本身。

舉例來說,您可以為二元分類器套用後置處理,方法是設定分類閾值,以便針對某些屬性維持機會均等,方法是檢查該屬性的所有值的真實正確率是否相同。

訓練後模型

#language
#image
#generativeAI

這項術語定義較為寬鬆,通常是指經過某些後置處理程序的預先訓練模型,例如下列一或多項:

PR AUC (PR 曲線下的面積)

經過插補的精確度和喚回度曲線下面的面積,可透過繪製分類門檻的不同值 (喚回度、精確度) 點來取得。

Praxis

Pax 的核心高效能機器學習程式庫。Praxis 通常稱為「圖層庫」。

Praxis 不僅包含 Layer 類別的定義,還包含大部分的支援元件,包括:

Praxis 會提供 Model 類別的定義。

精確性

分類模型的指標,可用來回答下列問題:

當模型預測正類時,預測結果正確的百分比為何?

公式如下:

$$\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$$

請比較準確率喚回率

詳情請參閱「分類:準確度、喚回率、精確度和相關指標」。

k 的精確度 (precision@k)

#language

用於評估排名 (排序) 項目清單的指標。k 的精確度可指出清單中前 k 個項目的「相關性」比率。也就是:

\[\text{precision at k} = \frac{\text{relevant items in first k items of the list}} {\text{k}}\]

k 的值必須小於或等於傳回清單的長度。請注意,傳回清單的長度並非計算的一部分。

關聯性通常是主觀判斷,即使是專業的人類評估員,也經常對哪些項目具有關聯性有不同意見。

比較時段:

精確度與喚回度曲線

在不同分類門檻下,精確度喚回率的曲線。

預測

#fundamentals

模型的輸出內容。例如:

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

預測偏誤

這個值表示預測值的平均值與資料集中標籤的平均值之間的差距。

請勿與機器學習模型中的偏誤術語倫理和公平性偏誤混淆。

預測機器學習

任何標準 (「傳統」) 機器學習系統。

「預測性機器學習」一詞並沒有正式定義。相反地,這個詞彙用來區分一類「非」生成式 AI 為基礎的 ML 系統。

預測對等

#fairness

公平性指標:檢查特定分類器的精確度率,是否在考量的子群體中一致。

舉例來說,如果預測大學錄取率的模型精確度率對利利浦坦人和布魯托尼安人相同,就符合預測國籍的一致性。

預測比率平價有時也稱為「預測比率平價」

如需進一步瞭解預測相等性,請參閱「公平性定義說明」(第 3.2.1 節)。

預測費率平價

#fairness

預測相符性的另一個名稱。

預先處理

#fairness
在使用資料訓練模型前先行處理。預先處理作業可能很簡單,例如從英文文字庫中移除不在英文字典中出現的字詞,也可能很複雜,例如以重新表示資料點的方式,盡可能移除與敏感屬性相關聯的屬性。預先處理可協助滿足公平性限制

預先訓練模型

#language
#image
#generativeAI

通常是指已訓練的模型。這個詞也可以指先前訓練的嵌入向量

「預先訓練的語言模型」一詞通常是指已訓練的大型語言模型

預先訓練

#language
#image
#generativeAI

在大型資料集上初步訓練模型。部分預先訓練模型是笨重的巨人,通常必須透過額外訓練才能精進。舉例來說,機器學習專家可能會在大量文字資料集 (例如 Wikipedia 中的所有英文頁面) 上預先訓練大型語言模型。預先訓練完成後,您可以使用下列任一技術進一步精進產生的模型:

先驗信念

開始訓練資料之前,您對資料的認知。舉例來說,L2 正則化會依據先前的假設,認為權重應為小值,並以 0 為中心呈現常態分布。

機率迴歸模型

迴歸模型:除了使用每個特徵權重,還會使用這些權重的不確定性。機率迴歸模型會產生預測結果和該預測結果的不確定性。舉例來說,機率迴歸模型可能會產生 325 的預測值,標準差為 12。如要進一步瞭解機率回歸模型,請參閱 TensorFlow.org 上的 Colab

機率密度函式

這個函式可找出資料樣本「確切」具有特定值的頻率。如果資料集的值是連續浮點數字,則幾乎不會出現完全相符的情況。不過,整合從值 x 到值 y 的機率密度函式,可產生 xy 之間資料集的預期頻率。

舉例來說,假設常態分布的平均值為 200,標準差為 30。如要判斷資料樣本落在 211.4 到 218.7 範圍內的預期頻率,您可以從 211.4 到 218.7 整合常態分佈的機率密度函式。

提示

#language
#generativeAI

任何輸入至大型語言模型的文字,可讓模型以特定方式運作。提示可以是短短一句話,也可以是任意長度 (例如小說的完整內容)。提示可分為多個類別,包括下表所列:

提示類別 範例 附註
問題 鴿子飛得多快?
操作說明 寫一首關於套利的有趣詩。 提示,要求大型語言模型執行某項操作。
範例 將 Markdown 程式碼轉換為 HTML。例如:
Markdown:* 清單項目
HTML:<ul> <li>清單項目</li> </ul>
這個提示範例的第一句話是指示。提示的其餘部分則是範例。
角色 向物理學博士解釋為何在機器學習訓練中使用梯度下降法。 句子的前半部是指示,而「物理學博士」是角色部分。
模型可補完的部分輸入內容 英國首相住在 部分輸入提示訊息可以突然結束 (如本範例所示),也可以以底線結尾。

生成式 AI 模型可根據提示回應文字、程式碼、圖片、嵌入內容和影片等內容。

以提示為基礎的學習

#language
#generativeAI

特定模型的功能,可讓模型根據任意文字輸入內容 (提示) 調整行為。在典型的提示式學習模式中,大型語言模型會透過產生文字來回應提示。舉例來說,假設使用者輸入以下提示:

概述牛頓第三運動定律。

具備提示式學習功能的模型並未特別訓練來回答先前的提示。相反地,模型「知道」許多物理學事實、許多一般語言規則,以及許多構成一般實用答案的內容。這項知識足以提供 (希望是) 實用的答案。額外的人為回饋 (「這個答案太複雜了」或「有什麼反應?」) 可讓部分以提示為基礎的學習系統逐步改善答案的實用性。

提示設計

#language
#generativeAI

提示工程的同義詞。

提示工程

#language
#generativeAI

創造提示的技巧,可從大型語言模型取得所需回應。人類會執行提示工程。撰寫結構良好的提示,是確保大型語言模型提供實用回應的重要環節。提示工程取決於多項因素,包括:

  • 用於預先訓練 (可能會微調) 大型語言模型的資料集。
  • 模型用來產生回應的溫度和其他解碼參數。

如要進一步瞭解如何撰寫實用的提示,請參閱「提示設計簡介」。

提示設計是提示工程的同義詞。

提示調整

#language
#generativeAI

參數效率調整機制,可學習系統在實際提示前端加上的「前置字串」。

提示調整的一種變化版本 (有時稱為「前置字串調整」) 是在每個層級前面加上前置字串。相較之下,大部分的提示調整作業只會在輸入層中加入前置字串。

代理程式 (敏感屬性)

#fairness
用於取代敏感屬性的屬性。舉例來說,個人郵遞區號可能會用來代表其收入、種族或族裔。

代理標籤

#fundamentals

用於估算資料集中未直接提供的標籤資料。

舉例來說,假設您必須訓練模型來預測員工的壓力程度,您的資料集包含許多預測特徵,但不含名為「stress level」的標籤。您可以選擇「工作場所意外」做為壓力等級的代理標籤。畢竟,相較於心平氣和的員工,處於高壓環境的員工發生意外的機率更高。還是說也許工作場所意外的發生率確實會因多種因素而上升或下降。

舉第二個例子來說,假設您希望「是否下雨?」做為資料集的布林值標籤,但資料集不含雨量資料。如果有相片,您可以將人物手持雨傘的相片設為「是否下雨?」的代理標籤。這是個好的代理標籤嗎?有可能,但某些文化的人可能會更常攜帶雨傘來防曬,而不是防雨。

代理標籤通常不夠完美。盡可能選擇實際標籤,而非代理標籤。不過,如果沒有實際標籤,請務必謹慎選擇代理標籤,選擇最不錯的代理標籤候選項。

純函式

函式輸出內容只會根據輸入內容,且不會產生任何副作用。具體來說,純函式不會使用或變更任何全域狀態,例如檔案內容或函式外變數的值。

純函式可用於建立執行緒安全的程式碼,這在跨多個加速器晶片分割模型程式碼時相當實用。

JAX 函式轉換方法要求輸入函式為純函式。

Q

Q 函式

#rl

強化學習中,這個函式會預測在狀態中採取動作,然後遵循指定的政策,並預測預期的回報

Q 函式也稱為狀態-動作值函式

Q 學習

#rl

強化學習中,這個演算法可讓代理程式透過套用貝爾曼方程式,學習馬可夫決策程序的最佳Q 函式。馬可夫決策程序會模擬環境

分位數

百分位值分割中的每個值區。

分位數桶化

將特徵值分配到值區,以便每個值區包含相同 (或幾乎相同) 的示例數量。例如,下圖將 44 個點分成 4 個值區,每個值區包含 11 個點。為了讓圖表中的每個值區包含相同數量的點,部分值區會跨越不同的 x 值寬度。

44 個資料點分成 4 個桶,每個桶包含 11 個資料點。雖然每個區塊都包含相同數量的資料點,但某些區塊包含的特徵值範圍比其他區塊更廣。

量化

可透過下列任一方式使用的超載字詞:

  • 針對特定特徵實作分位數區化
  • 將資料轉換為零和一,以便加快儲存、訓練和推論的速度。相較於其他格式,布林資料對雜訊和錯誤的耐受度較高,因此量化可改善模型的正確性。量化技巧包括捨入、截斷和分組
  • 減少用於儲存模型參數的位元數。舉例來說,假設模型的參數是以 32 位元浮點數儲存。量化會將這些參數從 32 位元轉換為 4、8 或 16 位元。量化可減少以下項目:

    • 運算、記憶體、磁碟和網路用量
    • 推論預測值的時間
    • 耗電量

    不過,量化有時會降低模型預測的準確度。

佇列

#TensorFlow

實作佇列資料結構的 TensorFlow 運算。通常用於 I/O。

R

RAG

#fundamentals

檢索增強生成的簡稱。

隨機森林

#df

決策樹集成,其中每個決策樹都會使用特定隨機雜訊進行訓練,例如袋子採樣

隨機樹系是一種決策樹系

隨機政策

#rl

強化學習中,指的是隨機選擇動作政策

排名 (序數)

在機器學習問題中,類別的序數位置,會將類別分類為由高至低。舉例來說,行為排名系統可以將狗狗的獎勵依重要性排序,從最高 (牛排) 到最低 (枯萎的羽衣甘藍)。

秩 (張量)

#TensorFlow

Tensor中的維度數量。舉例來說,標量具有 0 個秩,向量具有 1 個秩,矩陣則具有 2 個秩。

請勿與排名 (序數)混淆。

排名

一種監督式學習,其目標是排序項目清單。

評分人員

#fundamentals

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

召回

分類模型的指標,可用來回答下列問題:

基準真相正類時,模型正確識別為正類的預測結果有多少百分比?

公式如下:

\[\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 \]

詳情請參閱「分類:準確度、喚回率、精確度和相關指標」。

k 時的喚回率 (recall@k)

#language

評估系統輸出排名 (排序) 項目清單的指標。在 k 的回憶率,是指在該清單中,前 k 個項目中,與傳回的相關項目總數相比,相關項目所占的比例。

\[\text{recall at k} = \frac{\text{relevant items in first k items of the list}} {\text{total number of relevant items in the list}}\]

精確度為 k 形成對比。

推薦系統

#recsystems

系統會從大量語料庫中,為每位使用者選取一組相對較小的理想項目。舉例來說,影片推薦系統可能會從 100,000 部影片的語料庫中推薦兩部影片,為一位使用者選出 CasablancaThe Philadelphia Story,為另一位使用者選出 Wonder WomanBlack Panther。影片推薦系統可能會根據下列因素提供推薦內容:

  • 類似使用者評分或觀看的電影。
  • 類型、導演、演員、目標客層...

線性整流函數 (ReLU)

#fundamentals

啟用函式,其行為如下:

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

例如:

  • 如果輸入值為 -3,則輸出值為 0。
  • 如果輸入值為 +3,則輸出值為 3.0。

以下是 ReLU 的圖表:

兩條線的笛卡爾圖表。第一行具有 0 的常數 y 值,沿著 x 軸從 -infinity,0 到 0,-0 執行。第二行則從 0,0 開始。此線條的斜率為 +1,因此會從 0,0 到 +infinity,+infinity。

ReLU 是相當熱門的活化函式。雖然 ReLU 的運作方式很簡單,但仍可讓類神經網路學習非線性關係,也就是 特徵標籤之間的關係。

循環類神經網路

#seq

神經網路:有意執行多次的網路,其中每個執行作業的部分會饋送至下一個執行作業。具體來說,上次執行作業的隱藏層會為下次執行作業提供相同隱藏層的部分輸入內容。循環類神經網路特別適合用於評估序列,這樣隱藏層就能從前次執行類神經網路時,在序列早期部分學習到的內容。

舉例來說,下圖顯示執行四次的循環神經網路。請注意,在第一次執行時,隱藏層學習到的值會成為第二次執行時相同隱藏層的輸入值。同樣地,在第二次執行時隱藏層學習到的值,會成為第三次執行時相同隱藏層的輸入值。如此一來,迴圈神經網路就能逐步訓練並預測整個序列的含義,而非只預測個別字詞的含義。

執行四次的 RNN,以便處理四個輸入字詞。

參考文字

#language
#generativeAI

專家對提示的回應。例如,請參考下列提示:

將問題「What is your name?」從英文翻譯成法文。

專家的回覆可能如下:

Comment vous appelez-vous?

各種指標 (例如 ROUGE) 可評估參考文字與 ML 模型產生的文字的相似程度。

迴歸模型

#fundamentals

非正式定義:產生數值預測結果的模型。(相較之下,分類模型會產生類別預測結果)。舉例來說,以下都是迴歸模型:

  • 預測某棟房屋價值的模型,例如 423,000 歐元。
  • 預測某棵樹的壽命 (以年為單位) 的模型,例如 23.2 年。
  • 模型會預測特定城市在未來六小時內的降雨量 (以英寸為單位),例如 0.18。

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

  • 線性迴歸:找出最適合特徵的標籤值線。
  • 邏輯迴歸:產生介於 0.0 和 1.0 之間的機率,系統通常會將該機率對應至類別預測結果。

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

正則化

#fundamentals

任何可減少過度擬合的機制。常見的正則化類型包括:

規則化也可以定義為對模型複雜度施加的懲罰。

正規化率

#fundamentals

這個數字會指定在訓練期間,正則化的相對重要性。提高正規化率可減少過度擬合,但可能會降低模型的預測能力。相反地,減少或省略正則化率會導致過度擬合。

強化學習 (RL)

#rl

一系列演算法,可學習最佳政策,其目標是在與環境互動時,盡量提高回報。舉例來說,大多數遊戲的最終獎勵都是勝利。強化學習系統可評估先前遊戲的動作序列,找出最終導致勝利和失敗的序列,進而成為複雜遊戲的專家。

人類回饋增強學習 (RLHF)

#generativeAI
#rl

使用人工評分員的意見回饋,改善模型回覆的品質。舉例來說,RLHF 機制可以要求使用者使用 👍? 或 👎? 表情符號評分模型回應的品質。系統就能根據這些意見回饋調整日後的回應。

ReLU

#fundamentals

線性整流函數的縮寫。

重播緩衝區

#rl

DQN 類似演算法中,代理程式會使用記憶體儲存狀態轉換,以便在經驗重播中使用。

備份

訓練集模型的副本,通常位於其他機器上。舉例來說,系統可以使用下列策略來實作資料平行處理

  1. 將現有模型的副本放置在多部機器上。
  2. 將訓練集的不同子集傳送至每個複本。
  3. 匯總 參數更新。

回報偏誤

#fairness

事實上,使用者撰寫動作、結果或屬性的頻率,並不能反映實際頻率,也無法反映屬性與某類個人特徵的關聯程度。報表偏差可能會影響機器學習系統學習的資料組成。

舉例來說,在書籍中,「笑」一詞比「呼吸」更常見。機器學習模型會根據書籍叢集中的笑聲和呼吸聲,估算笑聲和呼吸聲的相對頻率,並判斷笑聲比呼吸聲更常見。

兩者的向量表示法

將資料對應至實用的功能的程序。

重新排名

#recsystems

推薦系統的最後階段,在此階段中,系統會根據其他 (通常為非機器學習) 演算法重新評分已評分的項目。重新排名會評估評分階段產生的項目清單,並採取以下動作:

  • 刪除使用者已購買的項目。
  • 提高較新商品的評分。

檢索增強生成 (RAG)

#fundamentals

一種技術,可透過與模型訓練後擷取的知識來源建立關聯,改善大型語言模型 (LLM) 輸出的品質。RAG 會為已訓練的 LLM 提供存取權,讓系統從可信賴的知識庫或文件中擷取資訊,進而提升 LLM 回覆的準確度。

使用檢索增強生成技術的常見動機包括:

  • 提高模型產生回覆的事實準確度。
  • 讓模型存取未經訓練的知識。
  • 變更模型使用的知識。
  • 啟用模型引用來源。

舉例來說,假設化學應用程式使用 PaLM API 產生與使用者查詢相關的摘要。當應用程式後端收到查詢時,後端會執行以下操作:

  1. 搜尋 (「擷取」) 與使用者查詢內容相關的資料。
  2. 將相關化學資料附加至使用者的查詢 (「擴充」)。
  3. 指示 LLM 根據附加的資料建立摘要。

回攻

#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 正則化 同義。ridge 正規化一詞通常用於純統計學情境,而 L2 正規化則常用於機器學習。

RNN

#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
#generativeAI

提示的選用部分,用於識別生成式 AI 模型回應的目標對象。如果沒有角色提示,大型語言模型提供的答案可能對提問者有用,也可能沒有用。有了角色提示,大型語言模型就能以更適當且更有助於特定目標對象的方式回答問題。例如,下列提示的角色提示部分以粗體顯示:

  • 將這篇文章摘要成經濟學博士論文
  • 十歲兒童為例,說明潮汐的運作方式。
  • 解釋 2008 年金融危機。說話時,就像對年幼兒童或金毛尋回犬說話一樣。

#df

決策樹中的起始節點 (第一個條件)。依照慣例,圖表會將根放在決策樹的頂端。例如:

決策樹包含兩個條件和三個葉節點。起始條件 (x > 2) 是根節點。

根目錄

#TensorFlow

您指定用於代管多個模型的 TensorFlow 暫停點和事件檔案子目錄的目錄。

均方根誤差 (RMSE)

#fundamentals

均方誤差的平方根。

旋轉不變性

#image

在圖片分類問題中,演算法即使在圖片方向變更的情況下,也能成功分類圖片。舉例來說,無論網球拍是朝上、側向或向下,演算法仍可辨識。請注意,旋轉不變性不一定是理想的做法;舉例來說,倒過的 9 不應歸類為 9。

另請參閱平移不變性縮放不變性

ROUGE (喚回度導向的摘要評估研究)

#language

一組用於評估自動摘要和機器翻譯模型的指標。ROUGE 指標可判斷參考文字與機器學習模型產生的文字的相似程度。ROUGE 系列的每個成員都會以不同的方式測量重疊。ROUGE 分數越高,表示參考文字和產生文字的相似度越高。

每個 ROUGE 成員通常會產生下列指標:

  • 精確度
  • 喚回度
  • F1

如需詳細資訊和範例,請參閱:

ROUGE-L

#language

ROUGE 家族成員,專注於參考文字生成文字最長的共同子序列長度。以下公式可計算 ROUGE-L 的召回率和精確度:

$$\text{ROUGE-L recall} = \frac{\text{longest common sequence}} {\text{number of words in the reference text} }$$
$$\text{ROUGE-L precision} = \frac{\text{longest common sequence}} {\text{number of words in the generated text} }$$

接著,您可以使用 F1 將 ROUGE-L 喚回率和 ROUGE-L 精確度匯總為單一指標:

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

ROUGE-L 會忽略參照文字和產生文字中的任何換行符號,因此最長的共同子序列可能會跨越多個句子。如果參考文字和產生的文字包含多個句子,則通常會使用 ROUGE-L 的變化版本 ROUGE-Lsum 做為指標。ROUGE-Lsum 會判斷段落中每個句子的最長共同子序列,然後計算這些最長共同子序列的平均值。

ROUGE-N

#language

ROUGE 系列中的一組指標,用於比較參考文字產生文字中特定大小的共用 N-gram。例如:

  • ROUGE-1 會評估參考文字和產生文字中共用的符記數量。
  • ROUGE-2 會評估參考文字和產生文字中共用的 二元語法 (2-grams) 數量。
  • ROUGE-3 會評估參考文字和產生文字中共用的 三元語法 (3-grams) 數量。

您可以使用下列公式,計算 ROUGE-N 系列的任何成員的 ROUGE-N 回溯率和 ROUGE-N 精確度:

$$\text{ROUGE-N recall} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the reference text} }$$
$$\text{ROUGE-N precision} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the generated text} }$$

接著,您可以使用 F1 將 ROUGE-N 喚回率和 ROUGE-N 精確度匯總為單一指標:

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

ROUGE-S

#language

這是 ROUGE-N 的寬容形式,可啟用skip-gram 比對。也就是說,ROUGE-N 只會計算與完全相符N-gram,但 ROUGE-S 也會計算以一或多個字詞分隔的 N-gram。舉例來說,您可以嘗試:

計算 ROUGE-N 時,2 元組「白雲」不符合「白色雲朵」。不過,在計算 ROUGE-S 時,「白雲」與「白色捲雲」相符。

R 平方

迴歸指標,用於指出標籤的變化程度,以及變化程度是因個別特徵或特徵組合而起。R 平方值介於 0 和 1 之間,您可以按照下列方式解讀:

  • R 平方值為 0 表示標籤的變化並非由特徵集所造成。
  • R 平方值為 1 表示標籤的所有變化皆是因為特徵組合。
  • 介於 0 和 1 之間的 R 平方值,表示可從特定特徵或特徵集預測標籤變化的程度。舉例來說,R 平方值為 0.10 表示標籤中 10% 的變異是因為特徵組合,R 平方值為 0.20 表示 20% 是因為特徵組合,以此類推。

R 平方是模型預測值與真值之間的 皮爾森相關係數平方。

S

取樣偏誤

#fairness

請參閱選擇偏誤

有取代值的抽樣

#df

從一組候選項目中挑選項目的方法,其中可重複選取相同項目。「with replacement」一詞代表每次選取後,系統會將所選項目傳回候選項目集區。反向方法「不替換取樣」,表示候選項目只能選取一次。

舉例來說,請考量下列水果組合:

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 模型的建議格式。SavedModel 是一種語言中立且可復原的序列化格式,可讓高階系統和工具產生、使用及轉換 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

神經網路層,可將一系列嵌入資料 (例如 符記嵌入資料) 轉換為另一個嵌入資料序列。輸出序列中的每個嵌入項目,都是透過注意力機制,整合輸入序列元素的資訊而建構而成。

自注意的「自」部分是指序列會關注自身,而非其他內容。自我注意力是 Transformer 的主要構建區塊之一,並使用字典查詢術語,例如「查詢」、「鍵」和「值」。

自注意層會從一連串輸入表示法開始,每個字詞一個。字詞的輸入表示法可以是簡單的嵌入。對於輸入序列中的每個字詞,這個網路會為該字詞與整個字詞序列中每個元素的關聯性評分。相關性分數會決定字詞的最終表示法整合其他字詞的表示法程度。

舉例來說,請看以下句子:

動物太累了,因此沒有過馬路。

下圖 (取自「Transformer:語言理解的全新類神經網路架構」) 顯示了自注意層針對代名詞「it」的注意力模式,每個線條的深淺代表每個字詞對表示方式的貢獻程度:

以下句子出現兩次:The animal didn&#39;t cross the street because it was too tired. 線條連結一個句子中的代名詞「it」與另一個句子中的五個符記 (The、animal、street、it 和 period)。代名詞「it」和「animal」之間的連結最強。

自注意層會標出與「it」相關的字詞。在這種情況下,注意力層會學習突顯「它」可能指涉的字詞,並將最高權重指派給「動物」

對於 n符記的序列,自注意力會將嵌入序列轉換 n 次,在序列的每個位置各轉換一次。

另請參閱注意力多頭自我注意力

自我監督式學習

一組技術,可透過從未標示範例建立替代標籤,將非監督式機器學習問題轉換為監督式機器學習問題。

部分 Transformer 模型 (例如 BERT) 會使用自我監督式學習。

自主監督訓練是一種半監督式學習方法。

自我訓練

自監督式學習的變體,在下列所有條件皆成立時特別實用:

自訓練的運作方式是重複執行下列兩個步驟,直到模型無法再改善為止:

  1. 使用監督式機器學習,根據標註的範例訓練模型。
  2. 使用在步驟 1 中建立的模型,針對未標示的範例產生預測結果 (標籤),並將可信度較高的範例移至標示範例,並加上預測標籤。

請注意,步驟 2 的每次疊代都會為步驟 1 新增更多標記示例,以便進行訓練。

半監督式學習

使用部分訓練樣本帶有標籤,其他則沒有標籤的資料訓練模型。半監督式學習的一種技巧,是針對未標註的範例推斷標籤,然後根據推斷標籤進行訓練,以建立新模型。如果標籤取得成本高昂,但未標記範例很多,半監督式學習就很實用。

自訓練是半監督式學習的一種技巧。

敏感屬性

#fairness
指可能因法律、道德、社會或個人因素而受到特別考量的使用者屬性。

情緒分析

#language

使用統計或機器學習演算法,判斷群組對某項服務、產品、機構或主題的整體態度為正面或負面。舉例來說,演算法可使用自然語言理解技術,對大學課程的文字回饋執行情緒分析,進而判斷學生普遍喜歡或不喜歡該課程的程度。

序列模型

#seq

輸入內容具有序列依賴性的模型。例如,從先前觀看的影片序列中預測下一個要觀看的影片。

序列對序列工作

#language

這項任務會將 符記的輸入序列轉換為符記輸出序列。舉例來說,兩種常見的序列對序列任務如下:

  • 翻譯人員:
    • 輸入序列範例:「我愛你」。
    • 輸出內容示例:"Je t'aime."
  • 回答問題:
    • 輸入範例:"我需要在紐約市使用車輛嗎?"
    • 輸出序列範例:「否。請將車輛停在家中。」

人份

讓訓練完成的模型透過線上推論離線推論提供預測結果的程序。

shape (張量)

張量的每個維度中的元素數量。形狀以整數清單表示。例如,以下二維張量形狀為 [3,4]:

[[5, 7, 6, 4],
 [2, 9, 4, 8],
 [3, 6, 5, 1]]

TensorFlow 使用行優先 (C 樣式) 格式來表示維度的順序,因此 TensorFlow 中的形狀為 [3,4],而非 [4,3]。換句話說,在二維 TensorFlow 張量中,形狀為 [列數欄數]

靜態形狀是指在編譯期間已知的張量形狀。

動態形狀在編譯時為未知,因此取決於執行階段資料。在 TensorFlow 中,這個張量可能會以預留位置維度表示,如 [3, ?] 所示。

資料分割

#TensorFlow
#GoogleCloud

訓練集模型的邏輯區隔。通常,某些程序會透過將示例參數劃分為 (通常) 大小相等的區塊,來建立分片。然後將每個分割區指派給不同的機器。

分割模型稱為「模型平行處理」;分割資料則稱為「資料平行處理」。

收縮

#df

梯度提升中的超參數,用於控制過度擬合。梯度提升中的收縮功能,類似於梯度下降中的學習率。縮減值是介於 0.0 和 1.0 之間的小數值。較低的收縮值比較高的收縮值更能減少過度擬合。

sigmoid 函數

#fundamentals

這個數學函式會將輸入值「擠壓」至受限的範圍,通常是 0 到 1 或 -1 到 +1。也就是說,您可以將任何數字 (兩、百萬、負十億等) 傳遞至 S 函數,輸出結果仍會在受限範圍內。以下是對數函數的活化函數圖表:

這張兩維曲線圖的 x 值範圍從 -infinity 到 +positive,y 值範圍則從 0 到 1。當 x 為 0 時,y 為 0.5。曲線的斜率一律為正值,最高斜率為 0.0.5,且隨著 x 的絕對值增加,斜率會逐漸降低。

在機器學習中,S 函數有幾種用途,包括:

相似度評估

#clustering

分群演算法中,用來判斷任何兩個範例的相似度 (相似程度) 的指標。

單一程式 / 多個資料 (SPMD)

平行處理技術,可在不同裝置上同時針對不同的輸入資料執行相同的運算。SPMD 的目標是更快取得結果。這是最常見的並行程式設計風格。

縮放不變性

#image

在圖像分類問題中,即使圖片大小有所變動,演算法仍能成功分類圖片。舉例來說,無論使用 200 萬像素還是 20 萬像素,演算法仍可辨識貓咪。請注意,即使是最佳的圖像分類演算法,在尺寸不變的情況下,仍有實際限制。舉例來說,演算法 (或人類) 不太可能正確分類只使用 20 個像素的貓咪圖片。

另請參閱平移不變性旋轉不變性

素描

#clustering

非監督式機器學習中,有一種演算法類別會對範例執行初步相似度分析。草圖繪製演算法會使用 區域敏感雜湊函式來找出可能相似的點,然後將這些點分組。

草圖可減少在大型資料集上進行相似度計算時所需的運算作業。我們不會為資料集中的每組示例計算相似度,而是只計算每個值區中的每組點的相似度。

skip-gram

#language

n-gram 可能會省略 (或「略過」) 原始上下文中的字詞,也就是說,N 個字詞可能並非原先相鄰。更精確地說,「k 個跳過 n 元語法」是指最多跳過 k 個字詞的 n 元語法。

舉例來說,「the quick brown fox」可能有以下 2 音節:

  • 「the quick」
  • 「quick brown」
  • 「brown fox」

「1-skip-2-gram」是指兩個字詞之間最多相隔 1 個字詞。因此,「the quick brown fox」有以下 1 跳 2 元組:

  • 「the brown」
  • 「quick fox」

此外,所有 2-gram 也同時是 1-skip-2-gram,因為可能會略過少於一個字。

跳躍式迴歸模型可協助我們進一步瞭解字詞的周遭上下文。在這個範例中,「fox」與「quick」在 1-skip-2-grams 集合中直接相關,但在 2-grams 集合中則不相關。

跳躍式字串有助於訓練字詞嵌入模型。

softmax

#fundamentals

這個函式可決定多元分類模型中每個可能類別的機率。這些機率相加後的總和必須精確為 1.0。舉例來說,下表顯示 softmax 如何分配各種機率:

圖片為 機率
.85
cat .13
.02

Softmax 也稱為「完整 Softmax」

請參閱候選抽樣

軟提示調整

#language
#generativeAI

一種針對特定工作調整大型語言模型的技術,無需耗用大量資源進行微調。軟式提示調整功能不會重新訓練模型中的所有權重,而是會自動調整提示,以達到相同目標。

在收到文字提示時,軟性提示調整功能通常會在提示中附加額外的符記嵌入,並使用反向傳播來最佳化輸入內容。

「硬式」提示包含實際的符記,而非符記嵌入。

稀疏特徵

#language
#fundamentals

特徵的值大多為零或空白。舉例來說,如果特徵包含單一 1 值和百萬個 0 值,就屬於稀疏特徵。相反地,密集特徵的值通常不會是零或空白。

在機器學習中,有許多特徵是稀疏特徵。類別特徵通常是稀疏特徵。舉例來說,在森林中可能有 300 種樹木,但單一示例可能只會識別出楓樹。或者,在影片庫中,有數百萬部影片可供選擇,但單一示例可能只會標示「Casablanca」。

在模型中,您通常會使用one-hot 編碼來表示稀疏特徵。如果 one-hot 編碼很大,您可以將嵌入層置於 one-hot 編碼之上,以提高效率。

稀疏表示法

#language
#fundamentals

在稀疏特徵中,只儲存非零元素的位置

舉例來說,假設名為 species 的類別特徵會識別特定森林中的 36 種樹木。再假設每個示例只識別單一物種。

您可以使用一維向量來代表每個示例中的樹種。單熱向量會包含單一 1 (代表該例中的特定樹種) 和 35 個 0 (代表該例中「不是」的 35 種樹木)。因此,maple 的 one-hot 表示法可能會像以下這樣:

向量中,位置 0 到 23 的值為 0,位置 24 的值為 1,位置 25 到 35 的值為 0。

或者,稀疏表示法只會指出特定物種的位置。如果 maple 位於第 24 個位置,maple 的稀疏表示法就會變成:

24

請注意,稀疏表示法比一熱表示法精簡許多。

稀疏向量

#fundamentals

值大多為 0 的向量。另請參閱「稀疏功能」和「稀疏」。

稀疏度

向量或矩陣中設為零 (或空值) 的元素數量,除以該向量或矩陣中的項目總數。舉例來說,假設有一個 100 個元素的矩陣,其中 98 個儲存格含有零。稀疏度的計算方式如下:

$$ {\text{sparsity}} = \frac{\text{98}} {\text{100}} = {\text{0.98}} $$

「特徵稀疏度」是指特徵向量的稀疏度;「模型稀疏度」是指模型權重的稀疏度。

空間資料彙整

#image

請參閱共用

split

#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 個層。

另請參閱管道處理

#rl

在強化學習中,參數值會描述環境的目前設定,代理程式會使用這些設定來選擇動作

狀態-動作值函式

#rl

Q 函式 同義。

靜態

#fundamentals

一次性動作,而非持續性動作。「靜態」和「離線」是同義詞。以下是機器學習中常見的靜態離線用途:

  • 靜態模型 (或稱離線模型) 是指訓練一次後,就會持續使用的模型。
  • 靜態訓練 (或稱離線訓練) 是訓練靜態模型的過程。
  • 靜態推論 (或離線推論) 是指模型一次產生一批預測結果的程序。

請參閱「動態」一節。

靜態推論

#fundamentals

與「離線推論」同義。

穩定性

#fundamentals

在一個或多個維度 (通常是時間) 中,值不會變更的特徵。舉例來說,如果特徵在 2021 年和 2023 年的值大致相同,就表示該特徵具有平穩性。

在現實世界中,很少有特徵會呈現平穩性。就算是穩定的環境 (例如海平面),也會隨時間變化。

請參閱「非平穩性」一節。

點選 [下一步]

一個 batch 的前向傳遞和反向傳遞。

如要進一步瞭解前向傳遞和反向傳遞,請參閱反向傳播

步距

與「學習率」同義。

隨機梯度下降 (SGD)

#fundamentals

梯度下降演算法,其中批次大小為 1。換句話說,SGD 會在訓練集中隨機選取單一示例進行訓練。

跨距

#image

在卷積運算或池化作業中,下一個系列輸入切片的每個維度的差異。例如,下列動畫示範卷積運算期間的 (1,1) 步距。因此,下一個輸入切片會從上一個輸入切片的右側開始。當運算達到右邊緣時,下一個切片會向左移動一個位置。

輸入 5x5 矩陣和 3x3 卷積濾波器。由於步幅為 (1,1),因此會套用 9 次卷積濾鏡。第一個卷積切片會評估輸入矩陣的左上方 3x3 子矩陣。第二個切片會評估頂端中間的 3x3 子矩陣。第三個卷積運算區塊會評估右上方的 3x3 子矩陣。第四個切片會評估左中間的 3x3 子矩陣。第五個切片會評估中間 3x3 子矩陣。第六個切片會評估右中間的 3x3 子矩陣。第七個切片會評估左下方 3x3 子矩陣。第八個切片會評估底部中間的 3x3 子矩陣。第九個切片會評估右下方 3 x 3 子矩陣。

上述範例說明瞭二維步幅。如果輸入矩陣是三維,步幅也會是三維。

結構風險最小化 (SRM)

演算法可平衡兩個目標:

  • 需要建立最具預測力的模型 (例如損失最少)。
  • 需要盡可能簡化模型 (例如強烈規則化)。

舉例來說,在訓練集上將損失 + 正則化降到最低的函式,就是結構風險最小化演算法。

請參閱經驗風險最小化

向下取樣

#image

請參閱共用

子字詞符記

#language

語言模型中,符記是字詞的子字串,可能為整個字詞。

舉例來說,「itemize」這個字詞可能會分成「item」(字根) 和「ize」(字尾) 兩個部分,每個部分都會以專屬的符記表示。將不常見的字詞拆成這類片段 (稱為子字詞),可讓語言模型針對字詞更常見的組成部分 (例如前置詞和後置詞) 運作。

相反地,像「going」這樣的常用字詞可能不會分開,而是以單一符號表示。

摘要

#TensorFlow

在 TensorFlow 中,在特定步驟計算的值或值集,通常用於在訓練期間追蹤模型指標。

監督式機器學習

#fundamentals

根據特徵和相應的標籤訓練模型。監督式機器學習就像是透過研究一組問題及其對應答案來學習某個主題。學生熟悉問題和答案之間的對應關係後,就能針對相同主題的新問題 (從未見過的) 提供答案。

請參閱非監督式機器學習

合成特徵

#fundamentals

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

  • 將連續特徵區隔至值範圍值區。
  • 建立特徵交叉
  • 將一個特徵值乘以其他特徵值或自身。舉例來說,如果 ab 是輸入特徵,則下列為合成特徵的範例:
    • ab
    • a2
  • 將超越函式套用至地圖項目值。舉例來說,如果 c 是輸入特徵,則下列為合成特徵的範例:
    • sin(c)
    • ln(c)

僅透過正規化縮放建立的特徵,不視為合成特徵。

T

T5

#language

Google AI 在 2020 年推出的文字轉文字轉移學習 模型。T5 是一種編碼器-解碼器模型,以 Transformer 架構為基礎,並在極大量資料集上進行訓練。這項技術可有效處理各種自然語言處理工作,例如生成文字、翻譯語言,以及以對話方式回答問題。

T5 的名稱源自於「Text-to-Text Transfer Transformer」中的五個 T。

T5X

#language

這個開放原始碼機器學習架構專為建構及訓練大規模自然語言處理 (NLP) 模型而設計。T5 是在 T5X 程式碼集上實作 (該程式碼集是以 JAXFlax 建構而成)。

表格式 Q 學習

#rl

強化學習中,針對每個 狀態動作 組合,使用資料表儲存Q 函式,藉此實作Q-learning

目標

label 同義。

目標聯播網

#rl

Deep Q-learning 中,類神經網路是主類神經網路的穩定近似值,主類神經網路會實作 Q 函式政策。接著,您可以根據目標網路預測的 Q 值訓練主要網路。因此,您可以避免主網路在訓練自身預測的 Q 值時發生的回饋迴圈。避免這類回饋,可提高訓練穩定性。

任務

可透過機器學習技術解決的問題,例如:

溫度

#language
#image
#generativeAI

超參數,用於控制模型輸出內容的隨機程度。溫度越高,輸出的內容就越隨機,溫度越低,輸出的內容就越不隨機。

選擇最佳溫度時,請考量特定應用程式和模型輸出的偏好屬性。舉例來說,如果您要建立可產生創意輸出的應用程式,可能會提高溫度。反之,如果您要建構分類圖片或文字的模型,則可能會降低溫度,以提高模型的準確度和一致性。

溫度通常會與 softmax 搭配使用。

時序資料

在不同時間點記錄的資料。舉例來說,針對每年的每一天記錄的冬季大衣銷售資料,就是時間序列資料。

Tensor

#TensorFlow

TensorFlow 程式中的主要資料結構。張量是 N 維 (N 可能非常大) 的資料結構,最常見的張量是標量、向量或矩陣。張量的元素可儲存整數、浮點或字串值。

TensorBoard

#TensorFlow

資訊主頁會顯示在執行一或多個 TensorFlow 程式期間儲存的摘要。

TensorFlow

#TensorFlow

大型分散式機器學習平台。這個詞也指 TensorFlow 堆疊中的基礎 API 層,可支援資料流圖上的一般運算。

雖然 TensorFlow 主要用於機器學習,但您也可以使用 TensorFlow 處理需要使用資料流圖進行數值運算的非機器學習工作。

TensorFlow Playground

#TensorFlow

這項程式可視覺化顯示不同的超參數如何影響模型 (主要是神經網路) 訓練。前往 http://playground.tensorflow.org 試用 TensorFlow Playground。

TensorFlow Serving

#TensorFlow

在實際工作環境中部署經過訓練的模型。

Tensor Processing Unit (TPU)

#TensorFlow
#GoogleCloud

特殊應用積體電路 (ASIC),可最佳化機器學習工作負載的效能。這些 ASIC 會部署為 TPU 裝置上的多個 TPU 晶片

張量的秩

#TensorFlow

請參閱秩 (張量)

張量形狀

#TensorFlow

Tensor在不同維度中包含的元素數量。舉例來說,[5, 10] 張量的形狀是一維 5,另一維是 10。

張量大小

#TensorFlow

Tensor包含的標量總數。例如,[5, 10] 張量的大小為 50。

TensorStore

程式庫:可有效率地讀取及寫入大型多維陣列。

終止條件

#rl

強化學習中,決定情節結束的條件,例如當代理程式達到特定狀態或超過狀態轉換的閾值數量時。舉例來說,在連連看 (又稱為「井字棋」) 中,如果玩家連續標記三個格子,或所有格子都已標記,則該回合就會結束。

test

#df

決策樹中,條件的另一個名稱。

測試損失

#fundamentals

指標:代表模型與測試集損失。建構模型時,您通常會盡量減少測試損失。這是因為低測試損失比低訓練損失或低驗證損失更能顯示品質信號。

測試損失與訓練損失或驗證損失之間的差距很大,有時表示您需要提高正規化率

測試集

資料集的子集,用於測試已訓練的模型

傳統上,您會將資料集中的範例分成下列三個不同的子集:

資料集中的每個範例都應只屬於上述子集之一。舉例來說,單一範例不應同時屬於訓練集和測試集。

訓練集和驗證集都與模型訓練密切相關。由於測試集與訓練集僅間接相關,因此測試損失訓練損失驗證損失更公正,品質也更高。

文字區間

#language

與文字字串的特定子區段相關聯的陣列索引區間。舉例來說,Python 字串 s="Be good now" 中的 good 字詞會佔用 3 到 6 的文字範圍。

tf.Example

#TensorFlow

標準 通訊協定緩衝區,用於描述機器學習模型訓練或推論的輸入資料。

tf.keras

#TensorFlow

已整合至 TensorFlowKeras 實作項目。

閾值 (適用於決策樹)

#df

軸對齊條件中,地圖項目會與哪個值進行比較。舉例來說,75 是下列條件中的閾值:

grade >= 75

時間序列分析

#clustering

機器學習和統計學的子領域,用於分析時間序列資料。許多類型的機器學習問題都需要進行時間序列分析,包括分類、分群、預測和異常偵測。舉例來說,您可以使用時間序列分析,根據歷來銷售資料,按月份預測未來的冬季大衣銷售量。

時間間隔

#seq

循環類神經網路中一個「未展開」的單元格。例如,下圖顯示三個時間步 (以 t-1、t 和 t+1 為下標標示):

循環類神經網路中的三個時間步驟。第一個時間步長的輸出內容會成為第二個時間步長的輸入內容。第二個時間步的輸出內容會成為第三個時間步的輸入內容。

token

#language

語言模型中,模型訓練和預測的基礎單位。權杖通常是下列其中一種:

  • 字詞:例如「dogs like cats」這個詞組由三個字詞符記組成:「dogs」、「like」和「cats」。
  • 字元,例如「bike fish」這個詞組由九個字元符記組成。(請注意,空格也算作一個符記)。
  • 子字詞:單字詞可以是單一符記或多個符記。子字詞由字根、前置字串或後置字串組成。舉例來說,使用子字詞做為符記的語言模型可能會將「dogs」視為兩個符記 (根字詞「dog」和複數字尾「s」)。同樣的語言模型可能會將單字「taller」視為兩個子字 (根字「tall」和後置詞「er」)。

在語言模型以外的網域中,符記可代表其他類型的原子單位。舉例來說,在電腦視覺中,符記可能是圖片的子集。

前 K 項準確度

#language

「目標標籤」出現在產生清單前 k 個位置的百分比。清單可以是個人化推薦內容,或是由 softmax 排序的項目清單。

Top-k 準確度也稱為 k 點準確度

深層類神經網路的元件,本身也是深層類神經網路。在某些情況下,每個塔會從獨立的資料來源讀取資料,且這些塔會保持獨立,直到最終層結合其輸出內容為止。在其他情況下 (例如,在許多 Transformersencoderdecoder 塔中),塔之間會互相連結。

毒性

#language

內容辱罵、威脅或冒犯的程度。許多機器學習模型都能識別及評估有害內容。這些模型大多會根據多個參數 (例如辱罵性言論和威脅性言論的程度) 來識別有害內容。

TPU

#TensorFlow
#GoogleCloud

Tensor Processing Unit 的縮寫。

TPU 晶片

#TensorFlow
#GoogleCloud

可程式設計的線性代數加速器,內建高頻寬記憶體,可針對機器學習工作負載進行最佳化。多個 TPU 晶片會部署在 TPU 裝置上。

TPU 裝置

#TensorFlow
#GoogleCloud

印刷電路板 (PCB),內含多個 TPU 晶片、高頻寬網路介面和系統散熱硬體。

TPU 主機

#TensorFlow
#GoogleCloud

在主機上執行的中央協調程序,可將資料、結果、程式、效能和系統健康狀況資訊傳送至 TPU worker。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 類型是單一 TPU v2 裝置,具有 8 個核心。v3-2048 TPU 類型有 256 個網路連線 TPU v3 裝置,總共 2048 個核心。TPU 類型是 Cloud TPU API 中定義的資源。

TPU 工作站

#TensorFlow
#GoogleCloud

在主機上執行的程序,並在 TPU 裝置上執行機器學習程式。

訓練

#fundamentals

決定模型的理想參數 (權重和偏差) 的程序。在訓練期間,系統會讀取示例,並逐步調整參數。訓練會使用每個範例幾次到數十億次不等。

訓練損失

#fundamentals

指標:代表模型在特定訓練疊代期間的損失。舉例來說,假設損失函式為「Mean Squared Error」。也許第 10 次疊代的訓練損失 (均方誤差) 為 2.2,而第 100 次疊代的訓練損失為 1.9。

損失曲線會將訓練損失與疊代次數繪製成圖。損失曲線會提供下列訓練相關提示:

  • 向下傾斜表示模型正在改善。
  • 向上傾斜的斜率表示模型的品質會越來越差。
  • 平坦的斜率表示模型已達到收斂

舉例來說,下列略為理想化的損失曲線顯示:

  • 在初始反覆執行階段中,呈現陡峭的向下斜坡,表示模型快速改善。
  • 曲線會逐漸變平 (但仍向下),直到訓練接近尾聲,這表示模型會以比初始反覆執行階段稍慢的速度持續改善。
  • 訓練結束時的斜率平坦,表示已收斂。

訓練損失與疊代次數的圖表。這個損失曲線一開始會以陡峭的斜率向下傾斜。斜率會逐漸變平,直到斜率變為零為止。

雖然訓練損失很重要,但也請參閱泛化

訓練/應用偏差

#fundamentals

模型在訓練期間和提供期間的效能差異。

訓練集

#fundamentals

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

傳統上,資料集中的示例會分為下列三個不同的子集:

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

軌跡

#rl

強化學習中,一系列元組代表一系列狀態轉換的代理程式,其中每個元組對應到狀態、動作獎勵和特定狀態轉換的下一個狀態。

遷移學習

將資訊從一個機器學習工作轉移至另一個機器學習工作。舉例來說,在多工作學習中,單一模型可解決多項工作,例如深度模型,可為不同工作提供不同的輸出節點。遷移學習可能涉及從較簡單任務的解決方案,將知識轉移至較複雜的任務,或是從資料較多的任務,將知識轉移至資料較少的任務。

大多數的機器學習系統都會解決單一任務。遷移學習是邁向人工智慧的初步,單一程式可解決多項工作。

Transformer

#language

這是 Google 開發的神經網路架構,可利用自注意力機制,將輸入嵌入資料序列轉換為輸出嵌入資料序列,不必仰賴卷積迴歸神經網路。Transformer 可視為一組自注意層。

轉換器可包含下列任一項目:

編碼器會將嵌入序列轉換為相同長度的新序列。編碼器包含 N 個相同的層,每個層都包含兩個子層。這兩個子層會套用至輸入嵌入序列的每個位置,將序列的每個元素轉換為新的嵌入。第一個編碼器子層會匯總輸入序列中的資訊。第二個編碼器子層會將匯總資訊轉換為輸出嵌入資料。

解碼器會將輸入嵌入資料序列轉換為輸出嵌入資料序列,長度可能不同。解碼器也包含 N 個相同的層,其中包含三個子層,其中兩個與編碼器子層相似。第三個解碼器子層會採用編碼器的輸出內容,並套用自注意機制,從中收集資訊。

網誌文章「Transformer:語言理解的全新類神經網路架構」提供了 Transformer 的簡介。

平移不變性

#image

在圖片分類問題中,即使圖片中物件的方位有所變動,演算法仍能成功分類圖片。舉例來說,無論狗在影格中央還是左側,演算法仍可辨識狗。

另請參閱縮放不變性旋轉不變性

三元組

#seq
#language

N=3 的 N-gram

真陰性 (TN)

#fundamentals

以下範例說明模型正確預測負類。舉例來說,模型推斷某封電子郵件「不是垃圾郵件」,而該郵件確實「不是垃圾郵件」

真陽性 (TP)

#fundamentals

以下是模型正確預測正類的範例。舉例來說,模型推斷特定電子郵件為垃圾郵件,而該郵件確實是垃圾郵件。

真陽率 (TPR)

#fundamentals

recall 的同義詞。也就是:

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

真陽率是 ROC 曲線的 y 軸。

U

不瞭解 (敏感屬性)

#fairness

敏感屬性存在,但未納入訓練資料的情況。由於敏感屬性通常與使用者資料的其他屬性相關,因此在訓練模型時若未察覺敏感屬性,仍可能會對該屬性產生不公平影響,或違反其他公平性限制

欠佳

#fundamentals

產生預測能力不佳的模型,因為模型未能完全掌握訓練資料的複雜度。許多問題都可能導致模型欠佳,包括:

欠取樣

類別不平衡資料集多數類別中移除範例,以便建立更平衡的訓練集

舉例來說,假設資料集的多數類別與少數類別的比率為 20:1,為克服這種類別不平衡問題,您可以建立訓練集,其中包含所有少數類別範例,但只有十分之一的多數類別範例,這樣訓練集類別比率就會是 2:1。由於採用了欠取樣,這個更平衡的訓練集可能會產生更優質的模型。或者,這個更平衡的訓練集可能包含不足的示例,無法訓練有效的模型。

請比較過度取樣

單向

#language

系統只會評估目標文字區塊「前面」的文字。相反地,雙向系統會評估目標文字區段「前面」和「後面」的文字。詳情請參閱「雙向」一節。

單向語言模型

#language

語言模型:只根據符記(出現在前面,而非後面) 計算機率,而非目標符記。請參閱雙向語言模型

無標籤示例

#fundamentals

範例包含特徵,但沒有標籤。舉例來說,下表顯示房屋估價模型中三個未標記的範例,每個範例都有三個特徵,但沒有房屋價值:

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

監督式機器學習中,模型會使用已加上標籤的範例進行訓練,並針對未標示的範例做出預測。

半監督式非監督式學習中,訓練期間會使用未標記的範例。

比較無標籤樣本與有標籤樣本

非監督式機器學習

#clustering
#fundamentals

訓練模型,以便在資料集中 (通常是未標記的資料集) 找出模式。

非監督式機器學習最常見的用途,就是將群組資料分組為類似的範例。舉例來說,無監督機器學習演算法可根據音樂的各種屬性,將歌曲分為不同的群組。產生的叢集可做為其他機器學習演算法 (例如音樂推薦服務) 的輸入內容。當有用的標籤很少或不存在時,分群法就很有幫助。舉例來說,在反濫用和防詐騙等領域,叢集可協助人類更瞭解資料。

請參閱監督式機器學習

升幅模型

這是一種常用於行銷的模擬技術,用於模擬「個體」對「處理」的「因果效應」(也稱為「增量影響」)。我們來看看下面兩個範例:

  • 醫師可能會根據病患 (個體) 的年齡和病歷,使用升幅模擬法預測醫療程序 (治療) 的死亡率降低情形 (因果效應)。
  • 行銷人可以使用升幅模擬法,預測廣告 (處理) 對使用者 (個人) 產生的購買機率升幅 (因果效應)。

升幅模型與分類迴歸的差異在於,升幅模型中永遠缺少某些標籤 (例如二進位處理方式中一半的標籤)。舉例來說,病患可以接受或不接受治療;因此,我們只能在上述兩種情況中觀察病患是否會康復 (但不能同時觀察兩種情況)。升幅模型的主要優點是,它可以針對未觀察到的情況 (反事實) 產生預測結果,並用於計算因果效應。

加權

將權重套用至 downsampled 類別,並與下採樣係數相等。

使用者矩陣

#recsystems

推薦系統中,由矩陣分解產生的嵌入向量,可保留有關使用者偏好的潛在信號。使用者矩陣的每個資料列都會保存單一使用者各種潛在信號的相對強度相關資訊。舉例來說,假設您有一個電影推薦系統,在這個系統中,使用者矩陣中的潛在信號可能代表每位使用者對特定類型的興趣,也可能是涉及多種因素的複雜互動,難以解讀。

使用者矩陣會為每個潛在特徵建立一欄,並為每位使用者建立一列。也就是說,使用者矩陣的列數與因式化的目標矩陣相同。舉例來說,如果電影推薦系統有 1,000,000 位使用者,使用者矩陣就會有 1,000,000 列。

V

驗證

#fundamentals

初步評估模型品質。驗證功能會根據驗證集,檢查模型預測結果的品質。

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

您可以將針對驗證集評估模型視為第一輪測試,而針對測試集評估模型視為第二輪測試。

驗證損失

#fundamentals

指標:代表模型在特定疊代��訓練期間,在驗證集上顯示的損失

另請參閱泛化曲線

驗證集

#fundamentals

針對已訓練的模型進行初始評估的資料集子集。通常,您會先針對驗證集評估經過訓練的模型,然後再針對測試集評估模型。

傳統上,您會將資料集中的範例分成下列三個不同的子集:

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

值插補

將缺少的值替換為可接受的替代值的程序。如果缺少值,您可以捨棄整個範例,也可以使用值推定來復原範例。

舉例來說,假設資料集包含 temperature 特徵,且該特徵應每小時記錄一次。不過,在特定時段內無法取得溫度讀數。以下是資料集的一部分:

時間戳記 溫度
1680561000 10
1680564600 12
1680568200 遺漏
1680571800 20
1680575400 21
1680579000 21

系統可以刪除缺少的示例,或是根據推斷演算法將缺少的溫度推斷為 12、16、18 或 20。

梯度消失問題

#seq

某些深度神經網路的早期隱藏層梯度,有變得異常平坦 (低) 的趨勢。梯度越來越低,導致深層類神經網路中節點的權重變化越來越小,導致學習效果不佳或完全沒有學習。發生梯度消失問題的模型很難或無法訓練。長短期記憶單元可解決這個問題。

請比較爆炸漸層問題

變數重要性

#df

一組分數,用來表示每項特徵對模型的相對重要性。

舉例來說,假設您要建立一個用於估算房價的決策樹,假設這個決策樹使用三個特徵:尺寸、年齡和風格。如果計算出這三項特徵的變數重要性組合為 {size=5.8, age=2.5, style=4.7},則 size 對決策樹的重要性高於 age 或 style。

有不同的變數重要性指標,可讓機器學習專家瞭解模型的不同面向。

變分自動編碼器 (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。

W

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 之間的浮點值向量。相較於意思不同的字詞,意思相近的字詞會有更多相似的表示法。舉例來說,胡蘿蔔芹菜小黃瓜的表示法相似,但與飛機太陽眼鏡牙膏的表示法截然不同。

X

XLA (加速線性代數)

適用於 GPU、CPU 和 ML 加速器的開放原始碼機器學習編譯器。

XLA 編譯器會從熱門的機器學習架構 (例如 PyTorchTensorFlowJAX) 取得模型,並對模型進行最佳化,以便在 GPU、CPU 和機器學習加速器等不同硬體平台上執行高效能運算。

Z

零樣本學習

一種機器學習訓練模型會針對未經過專門訓練的工作,推斷預測。換句話說,模型沒有任何專屬任務的訓練示例,但會被要求針對該任務進行推論

零樣本提示

#language
#generativeAI

提示「未」提供您希望大型語言模型回應的範例。例如:

提示的部分 附註
指定國家/地區的官方貨幣為何? 要讓 LLM 回答的問題。
印度: 實際查詢。

大型語言模型可能會回覆下列任一內容:

  • 盧比符號
  • INR
  • 印度盧比
  • 盧比
  • 印度盧比

所有答案皆正確,但您可能會偏好特定格式。

請比較零示意提示與下列術語:

標準分數正規化

#fundamentals

縮放技巧,可將原始 特徵值替換為浮點值,代表該特徵與平均值之間的標準差數。舉例來說,假設某特徵的平均值為 800,標準差為 100。下表說明 Z 分數規格化會如何將原始值對應至 Z 分數:

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

接著,機器學習模型會根據該特徵的 Z 分訓練,而非原始值。