機器學習(04)——經常使用專業術語

對於機器學習的經常使用專業術語,咱們在開始學習以前,最好大概的看一兩次,簡單瞭解一些常識和術語,有了基本瞭解後,對於後續學習會有很大的幫助。node

原文連接:https://developers.google.com/machine-learning/glossarygit

A算法

A/B 測試 (A/B testing)編程

一種統計方法,用於將兩種或多種技術進行比較,一般是將當前採用的技術與新技術進行比較。A/B 測試不只旨在肯定哪一種技術的效果更好,並且還有助於瞭解相應差別是否具備顯著的統計意義。A/B 測試一般是採用一種衡量方式對兩種技術進行比較,但也適用於任意有限數量的技術和衡量方式。數組

準確率(accuracy)緩存

分類模型預測準確的比例。在多類別分類中,準確率定義以下:服務器

在二分類中,準確率定義爲:網絡

請參閱【正例 (TP, true positive)】和【負例 (TN, true negative)】。session

激活函數 (activation function)數據結構

一種函數(例如 ReLU 或 S 型函數),用於對上一層的全部輸入求加權和,而後生成一個輸出值(一般爲非線性值),並將其傳遞給下一層。

AdaGrad

一種先進的梯度降低法,用於從新調整每一個參數的梯度,以便有效地爲每一個參數指定獨立的學習速率。如需查看完整的解釋,請參閱這篇論文。

http://www.jmlr.org/papers/volume12/duchi11a/duchi11a.pdf

ROC 曲線下面積 (AUC, Area under the ROC Curve)

一種會考慮全部可能分類閾值的評估指標。

ROC 曲線下面積是,對於隨機選擇的正類別樣本確實爲正類別,以及隨機選擇的負類別樣本爲正類別,分類器更確信前者的機率。

B

反向傳播算法 (backpropagation)

在神經網絡上執行梯度降低法的主要算法。該算法會先按前向傳播方式計算(並緩存)每一個節點的輸出值,而後再按反向傳播遍歷圖的方式計算損失函數值相對於每一個參數的偏導數。

基準 (baseline)

一種簡單的模型或啓發法,用做比較模型效果時的參考點。基準有助於模型開發者針對特定問題量化最低預期效果。

批次 (batch)

模型訓練的一次迭代(即一次梯度更新)中使用的樣本集。

另請參閱批次大小。

批次大小 (batch size)

一個批次中的樣本數。例如,SGD 的批次大小爲 1,而小批次的大小一般介於 10 到 1000 之間。批次大小在訓練和推斷期間一般是固定的;不過,TensorFlow 容許使用動態批次大小。

誤差 (bias)

距離原點的截距或偏移。誤差(也稱爲誤差項)在機器學習模型中用 b 或 w0 表示。例如,在下面的公式中,誤差爲 b:

請勿與預測誤差混淆。

二元分類 (binary classification)

一種分類任務,可輸出兩種互斥類別之一。例如,對電子郵件進行評估並輸出「垃圾郵件」或「非垃圾郵件」的機器學習模型就是一個二元分類器。

分箱 (binning)

請參閱分桶。

分桶 (bucketing)

將一個特徵(一般是連續特徵)轉換成多個二元特徵(稱爲桶或箱),一般根據值區間進行轉換。例如,您能夠將溫度區間分割爲離散分箱,而不是將溫度表示成單個連續的浮點特徵。假設溫度數據可精確到小數點後一位,則能夠將介於 0.0 到 15.0 度之間的全部溫度都納入一個分箱,將介於 15.1 到 30.0 度之間的全部溫度納入第二個分箱,並將介於 30.1 到 50.0 度之間的全部溫度納入第三個分箱。

C

校準層 (calibration layer)

一種預測後調整,一般是爲了下降預測誤差的影響。調整後的預測和機率應與觀察到的標籤集的分佈一致。

候選採樣 (candidate sampling)

一種訓練時進行的優化,會使用某種函數(例如 softmax)針對全部正類別標籤計算機率,但對於負類別標籤,則僅針對其隨機樣本計算機率。例如,若是某個樣本的標籤爲「小獵犬」和「狗」,則候選採樣將針對「小獵犬」和「狗」類別輸出以及其餘類別(貓、棒棒糖、柵欄)的隨機子集計算預測機率和相應的損失項。這種採樣基於的想法是,只要正類別始終獲得適當的正加強,負類別就能夠從頻率較低的負加強中進行學習,這確實是在實際中觀察到的狀況。候選採樣的目的是,經過不針對全部負類別計算預測結果來提升計算效率。

分類數據 (categorical data)

一種特徵,擁有一組離散的可能值。以某個名爲 house style 的分類特徵爲例,該特徵擁有一組離散的可能值(共三個),即 Tudor, ranch, colonial。經過將 house style 表示成分類數據,相應模型能夠學習 Tudor、ranch 和 colonial 分別對房價的影響。

有時,離散集中的值是互斥的,只能將其中一個值應用於指定樣本。例如,car maker 分類特徵可能只容許一個樣本有一個值 (Toyota)。在其餘狀況下,則能夠應用多個值。一輛車可能會被噴塗多種不一樣的顏色,所以,car color 分類特徵可能會容許單個樣本具備多個值(例如 red 和 white)。

分類特徵有時稱爲離散特徵。

與數值數據相對。

形心 (centroid)

聚類的中心,由 k-means 或 k-median 算法決定。例如,若是 k 爲 3,則 k-means 或 k-median 算法會找出 3 個形心。

檢查點 (checkpoint)

一種數據,用於捕獲模型變量在特定時間的狀態。藉助檢查點,能夠導出模型權重,跨多個會話執行訓練,以及使訓練在發生錯誤以後得以繼續(例如做業搶佔)。請注意,圖自己不包含在檢查點中。

類別 (class)

爲標籤枚舉的一組目標值中的一個。例如,在檢測垃圾郵件的二元分類模型中,兩種類別分別是「垃圾郵件」和「非垃圾郵件」。在識別狗品種的多類別分類模型中,類別能夠是「貴賓犬」、「小獵犬」、「哈巴犬」等等。

分類不平衡的數據集 (class-imbalanced data set)

一種二元分類問題,在此類問題中,兩種類別的標籤在出現頻率方面具備很大的差距。例如,在某個疾病數據集中,0.0001 的樣本具備正類別標籤,0.9999 的樣本具備負類別標籤,這就屬於分類不平衡問題;但在某個足球比賽預測器中,0.51 的樣本的標籤爲其中一個球隊贏,0.49 的樣本的標籤爲另外一個球隊贏,這就不屬於分類不平衡問題。

分類模型 (classification model)

一種機器學習模型,用於區分兩種或多種離散類別。例如,某個天然語言處理分類模型能夠肯定輸入的句子是法語、西班牙語仍是意大利語。請與迴歸模型進行比較。

分類閾值 (classification threshold)

一種標量值條件,應用於模型預測的得分,旨在將正類別與負類別區分開。將邏輯迴歸結果映射到二元分類時使用。以某個邏輯迴歸模型爲例,該模型用於肯定指定電子郵件是垃圾郵件的機率。若是分類閾值爲 0.9,那麼邏輯迴歸值高於 0.9 的電子郵件將被歸類爲「垃圾郵件」,低於 0.9 的則被歸類爲「非垃圾郵件」。

聚類 (clustering)

將關聯的樣本分紅一組,通常用於非監督式學習。在全部樣本均分組完畢後,相關人員即可選擇性地爲每一個聚類賦予含義。

聚類算法有不少。例如,k-means 算法會基於樣本與形心的接近程度聚類樣本,以下圖所示:

以後,研究人員即可查看這些聚類並進行其餘操做,例如,將聚類 1 標記爲「矮型樹」,將聚類 2 標記爲「全尺寸樹」。

再舉一個例子,例如基於樣本與中心點距離的聚類算法,以下所示:

協同過濾 (collaborative filtering)

根據不少其餘用戶的興趣來預測某位用戶的興趣。協同過濾一般用在推薦系統中。

混淆矩陣 (confusion matrix)

一種 NxN 表格,用於總結分類模型的預測效果;即標籤和模型預測的分類之間的關聯。在混淆矩陣中,一個軸表示模型預測的標籤,另外一個軸表示實際標籤。N 表示類別個數。在二元分類問題中,N=2。例如,下面顯示了一個二元分類問題的混淆矩陣示例:

  腫瘤(預測的標籤) 非腫瘤(預測的標籤)
腫瘤(實際標籤) 18 1
非腫瘤(實際標籤) 6 452

上面的混淆矩陣顯示,在 19 個實際有腫瘤的樣本中,該模型正確地將 18 個歸類爲有腫瘤(18 個正例),錯誤地將 1 個歸類爲沒有腫瘤(1 個假負例)。一樣,在 458 個實際沒有腫瘤的樣本中,模型歸類正確的有 452 個(452 個負例),歸類錯誤的有 6 個(6 個假正例)。

多類別分類問題的混淆矩陣有助於肯定出錯模式。例如,某個混淆矩陣能夠揭示,某個通過訓練以識別手寫數字的模型每每會將 4 錯誤地預測爲 9,將 7 錯誤地預測爲 1。

混淆矩陣包含計算各類效果指標(包括精確率和召回率)所需的充足信息。

連續特徵 (continuous feature)

一種浮點特徵,可能值的區間不受限制。與離散特徵相對。

收斂 (convergence)

通俗來講,收斂一般是指在訓練期間達到的一種狀態,即通過必定次數的迭代以後,訓練損失和驗證損失在每次迭代中的變化都很是小或根本沒有變化。也就是說,若是採用當前數據進行額外的訓練將沒法改進模型,模型即達到收斂狀態。在深度學習中,損失值有時會在最終降低以前的屢次迭代中保持不變或幾乎保持不變,暫時造成收斂的假象。

另請參閱早停法。

另請參閱 Boyd 和 Vandenberghe 合著的 Convex Optimization(《凸優化》)。

凸函數 (convex function)

一種函數,函數圖像以上的區域爲凸集。典型凸函數的形狀相似於字母 U。例如,如下都是凸函數:

典型凸函數的形狀相似於字母 U。

相反,如下函數則不是凸函數。請注意圖像上方的區域如何不是凸集:

嚴格凸函數只有一個局部最低點,該點也是全局最低點。經典的 U 形函數都是嚴格凸函數。不過,有些凸函數(例如直線)則不是這樣。

不少常見的損失函數(包括下列函數)都是凸函數:

  • L2 損失函數
  • 對數損失函數
  • L1 正則化
  • L2 正則化 梯度降低法的不少變體都必定能找到一個接近嚴格凸函數最小值的點。一樣,隨機梯度降低法的不少變體都有很高的可能性可以找到接近嚴格凸函數最小值的點(但並不是必定能找到)。

兩個凸函數的和(例如 L2 損失函數 + L1 正則化)也是凸函數。

深度模型毫不會是凸函數。值得注意的是,專門針對凸優化設計的算法每每總能在深度網絡上找到很是好的解決方案,雖然這些解決方案並不必定對應於全局最小值。

凸優化 (convex optimization)

使用數學方法(例如梯度降低法)尋找凸函數最小值的過程。機器學習方面的大量研究都是專一於如何經過公式將各類問題表示成凸優化問題,以及如何更高效地解決這些問題。

如需完整的詳細信息,請參閱 Boyd 和 Vandenberghe 合著的 Convex Optimization(《凸優化》)。

凸集 (convex set)

歐幾里得空間的一個子集,其中任意兩點之間的連線仍徹底落在該子集內。例如,下面的兩個圖形都是凸集:

矩形和半橢圓形都是凸集。

相反,下面的兩個圖形都不是凸集:

缺乏一塊的餅圖以及煙花圖都是非凸集。

卷積 (convolution)

簡單來講,卷積在數學中指兩個函數的組合。在機器學習中,卷積結合使用卷積過濾器和輸入矩陣來訓練權重。

機器學習中的「卷積」一詞一般是卷積運算或卷積層的簡稱。

若是沒有卷積,機器學習算法就須要學習大張量中每一個單元格各自的權重。例如,用 2K x 2K 圖像訓練的機器學習算法將被迫找出 400 萬個單獨的權重。而使用卷積,機器學習算法只需在卷積過濾器中找出每一個單元格的權重,大大減小了訓練模型所需的內存。在應用卷積過濾器後,它只需跨單元格進行復制,每一個單元格都會與過濾器相乘。

卷積過濾器 (convolutional filter)

卷積運算中的兩個參與方之一。(另外一個參與方是輸入矩陣切片。)卷積過濾器是一種矩陣,其等級與輸入矩陣相同,但形狀小一些。以 28×28 的輸入矩陣爲例,過濾器能夠是小於 28×28 的任何二維矩陣。

在圖形操做中,卷積過濾器中的全部單元格一般按照固定模式設置爲 1 和 0。在機器學習中,卷積過濾器一般先選擇隨機數字,而後由網絡訓練出理想值。

卷積層 (convolutional layer)

深度神經網絡的一個層,卷積過濾器會在其中傳遞輸入矩陣。如下面的 3x3 卷積過濾器爲例:

下面的動畫顯示了一個由 9 個卷積運算(涉及 5x5 輸入矩陣)組成的卷積層。請注意,每一個卷積運算都涉及一個不一樣的 3x3 輸入矩陣切片。由此產生的 3×3 矩陣(右側)就包含 9 個卷積運算的結果:

卷積神經網絡 (convolutional neural network)

一種神經網絡,其中至少有一層爲卷積層。典型的卷積神經網絡包含如下幾層的組合:

  • 卷積層
  • 池化層
  • 密集層

卷積神經網絡在解決某些類型的問題(如圖像識別)上取得了巨大成功。

卷積運算 (convolutional operation)

以下所示的兩步數學運算:

對卷積過濾器和輸入矩陣切片執行元素級乘法。(輸入矩陣切片與卷積過濾器具備相同的等級和大小。) 對生成的積矩陣中的全部值求和。 如下面的 5x5 輸入矩陣爲例:

如今,如下面這個 2x2 卷積過濾器爲例:

每一個卷積運算都涉及一個 2x2 輸入矩陣切片。例如,假設咱們使用輸入矩陣左上角的 2x2 切片。這樣一來,對此切片進行卷積運算將以下所示:

卷積層由一系列卷積運算組成,每一個卷積運算都針對不一樣的輸入矩陣切片。

成本 (cost)

與損失的含義相同。

交叉熵 (cross-entropy)

對數損失函數向多類別分類問題的一種泛化。交叉熵能夠量化兩種機率分佈之間的差別。另請參閱困惑度。

自定義 Estimator (custom Estimator)

您按照這些說明自行編寫的 Estimator。

與預建立的 Estimator 相對。

D

數據分析 (data analysis)

根據樣本、測量結果和可視化內容來理解數據。數據分析在首次收到數據集、構建第一個模型以前特別有用。此外,數據分析在理解實驗和調試系統問題方面也相當重要。

DataFrame 一種熱門的數據類型,用於表示 Pandas 中的數據集。DataFrame 相似於表格。DataFrame 的每一列都有一個名稱(標題),每一行都由一個數字標識。

數據集 (data set)

一組樣本的集合。

Dataset API (tf.data)

一種高級別的 TensorFlow API,用於讀取數據並將其轉換爲機器學習算法所需的格式。tf.data.Dataset 對象表示一系列元素,其中每一個元素都包含一個或多個張量。tf.data.Iterator 對象可獲取 Dataset 中的元素。

如需詳細瞭解 Dataset API,請參閱《TensorFlow 編程人員指南》中的導入數據。

決策邊界 (decision boundary)

在二元分類或多類別分類問題中,模型學到的類別之間的分界線。例如,在如下表示某個二元分類問題的圖片中,決策邊界是橙色類別和藍色類別之間的分界線:

兩種類別之間明肯定義的邊界。

密集層 (dense layer)

與全鏈接層的含義相同。

深度模型 (deep model)

一種神經網絡,其中包含多個隱藏層。深度模型依賴於可訓練的非線性關係。

與寬度模型相對。

密集特徵 (dense feature)

一種大部分值是非零值的特徵,一般是浮點值張量。與稀疏特徵相對。

設備 (device)

一類可運行 TensorFlow 會話的硬件,包括 CPU、GPU 和 TPU。

離散特徵 (discrete feature)

一種特徵,包含有限個可能值。例如,某個值只能是「動物」、「蔬菜」或「礦物」的特徵即是一個離散特徵(或分類特徵)。與連續特徵相對。

丟棄正則化 (dropout regularization)

正則化的一種形式,在訓練神經網絡方面很是有用。丟棄正則化的運做機制是,在一個梯度步長中移除從神經網絡層中隨機選擇的固定數量的單元。丟棄的單元越多,正則化效果就越強。這相似於訓練神經網絡以模擬較小網絡的指數級規模集成學習。如需完整的詳細信息,請參閱 Dropout: A Simple Way to Prevent Neural Networks from Overfitting(《丟棄:一種防止神經網絡過擬合的簡單方法》)。

動態模型 (dynamic model)

一種模型,以持續更新的方式在線接受訓練。也就是說,數據會源源不斷地進入這種模型。

E

早停法 (early stopping)

一種正則化方法,是指在訓練損失仍能夠繼續下降以前結束模型訓練。使用早停法時,您會在驗證數據集的損失開始增大(也就是泛化效果變差)時結束模型訓練。

嵌套 (embeddings)

一種分類特徵,以連續值特徵表示。一般,嵌套是指將高維度向量映射到低維度的空間。例如,您能夠採用如下兩種方式之一來表示英文句子中的單詞:

表示成包含百萬個元素(高維度)的稀疏向量,其中全部元素都是整數。向量中的每一個單元格都表示一個單獨的英文單詞,單元格中的值表示相應單詞在句子中出現的次數。因爲單個英文句子包含的單詞不太可能超過 50 個,所以向量中幾乎每一個單元格都包含 0。少數非 0 的單元格中將包含一個很是小的整數(一般爲 1),該整數表示相應單詞在句子中出現的次數。 表示成包含數百個元素(低維度)的密集向量,其中每一個元素都存儲一個介於 0 到 1 之間的浮點值。這就是一種嵌套。 在 TensorFlow 中,會按反向傳播損失訓練嵌套,和訓練神經網絡中的任何其餘參數同樣。

經驗風險最小化 (ERM, empirical risk minimization) 用於選擇能夠將基於訓練集的損失降至最低的函數。與結構風險最小化相對。

集成學習 (ensemble)

多個模型的預測結果的並集。您能夠經過如下一項或多項來建立集成學習:

  • 不一樣的初始化
  • 不一樣的超參數
  • 不一樣的總體結構

深度模型和寬度模型屬於一種集成學習。

週期 (epoch)

在訓練時,整個數據集的一次完整遍歷,以便不漏掉任何一個樣本。所以,一個週期表示(N/批次大小)次訓練迭代,其中 N 是樣本總數。

Estimator tf.Estimator 類的一個實例,用於封裝負責構建 TensorFlow 圖並運行 TensorFlow 會話的邏輯。您能夠建立自定義 Estimator(如需相關介紹,請點擊此處),也能夠實例化其餘人預建立的 Estimator。

樣本 (example)

數據集的一行。一個樣本包含一個或多個特徵,此外還可能包含一個標籤。另請參閱有標籤樣本和無標籤樣本。

F

假負例 (FN, false negative)

被模型錯誤地預測爲負類別的樣本。例如,模型推斷出某封電子郵件不是垃圾郵件(負類別),但該電子郵件實際上是垃圾郵件。

假正例 (FP, false positive)

被模型錯誤地預測爲正類別的樣本。例如,模型推斷出某封電子郵件是垃圾郵件(正類別),但該電子郵件其實不是垃圾郵件。

假正例率(false positive rate, 簡稱 FP 率)

ROC 曲線中的 x 軸。FP 率的定義以下:

特徵 (feature)

在進行預測時使用的輸入變量。

特徵列 (tf.feature_column)

指定模型應該如何解讀特定特徵的一種函數。此類函數的輸出結果是全部 Estimators 構造函數的必需參數。

藉助 tf.feature_column 函數,模型可對輸入特徵的不一樣表示法輕鬆進行實驗。有關詳情,請參閱《TensorFlow 編程人員指南》中的特徵列一章。

「特徵列」是 Google 專用的術語。特徵列在 Yahoo/Microsoft 使用的 VW 系統中稱爲「命名空間」,也稱爲場。

特徵組合 (feature cross)

經過將單獨的特徵進行組合(求笛卡爾積)而造成的合成特徵。特徵組合有助於表達非線性關係。

特徵工程 (feature engineering)

指如下過程:肯定哪些特徵可能在訓練模型方面很是有用,而後將日誌文件及其餘來源的原始數據轉換爲所需的特徵。在 TensorFlow 中,特徵工程一般是指將原始日誌文件條目轉換爲 tf.Example 協議緩衝區。另請參閱 tf.Transform。

特徵工程有時稱爲特徵提取。

特徵集 (feature set)

訓練機器學習模型時採用的一組特徵。例如,對於某個用於預測房價的模型,郵政編碼、房屋面積以及房屋情況能夠組成一個簡單的特徵集。

特徵規範 (feature spec)

用於描述如何從 tf.Example 協議緩衝區提取特徵數據。因爲 tf.Example 協議緩衝區只是一個數據容器,所以您必須指定如下內容:

  • 要提取的數據(即特徵的鍵)
  • 數據類型(例如 float 或 int)
  • 長度(固定或可變)

Estimator API 提供了一些可用來根據給定 FeatureColumns 列表生成特徵規範的工具。

少許樣本學習 (few-shot learning)

一種機器學習方法(一般用於對象分類),旨在僅經過少許訓練樣本學習有效的分類器。

另請參閱單樣本學習。

完整 softmax (full softmax)

請參閱 softmax。與候選採樣相對。

全鏈接層 (fully connected layer)

一種隱藏層,其中的每一個節點均與下一個隱藏層中的每一個節點相連。

全鏈接層又稱爲密集層。

G

泛化 (generalization)

指的是模型依據訓練時採用的數據,針對之前未見過的新數據作出正確預測的能力。

廣義線性模型 (generalized linear model)

最小二乘迴歸模型(基於高斯噪聲)向其餘類型的模型(基於其餘類型的噪聲,例如泊松噪聲或分類噪聲)進行的一種泛化。廣義線性模型的示例包括:

  • 邏輯迴歸
  • 多類別迴歸
  • 最小二乘迴歸

能夠經過凸優化找到廣義線性模型的參數。

廣義線性模型具備如下特性:

  • 最優的最小二乘迴歸模型的平均預測結果等於訓練數據的平均標籤。
  • 最優的邏輯迴歸模型預測的平均機率等於訓練數據的平均標籤。

廣義線性模型的功能受其特徵的限制。與深度模型不一樣,廣義線性模型沒法「學習新特徵」。

梯度 (gradient)

偏導數相對於全部自變量的向量。在機器學習中,梯度是模型函數偏導數的向量。梯度指向最高速上升的方向。

梯度裁剪 (gradient clipping)

在應用梯度值以前先設置其上限。梯度裁剪有助於確保數值穩定性以及防止梯度爆炸。

梯度降低法 (gradient descent)

一種經過計算而且減少梯度將損失降至最低的技術,它以訓練數據爲條件,來計算損失相對於模型參數的梯度。通俗來講,梯度降低法以迭代方式調整參數,逐漸找到權重和誤差的最佳組合,從而將損失降至最低。

圖 (graph)

TensorFlow 中的一種計算規範。圖中的節點表示操做。邊緣具備方向,表示將某項操做的結果(一個張量)做爲一個操做數傳遞給另外一項操做。可使用 TensorBoard 直觀呈現圖。

H

啓發法 (heuristic)

一種非最優但實用的問題解決方案,足以用於進行改進或從中學習。

隱藏層 (hidden layer)

神經網絡中的合成層,介於輸入層(即特徵)和輸出層(即預測)之間。神經網絡包含一個或多個隱藏層。

合頁損失函數 (hinge loss)

一系列用於分類的損失函數,旨在找到距離每一個訓練樣本都儘量遠的決策邊界,從而使樣本和邊界之間的裕度最大化。 KSVM 使用合頁損失函數(或相關函數,例如平方合頁損失函數)。對於二元分類,合頁損失函數的定義以下:

其中「y'」表示分類器模型的原始輸出:

「y」表示真標籤,值爲 -1 或 +1。

所以,合頁損失與 (y * y') 的關係圖以下所示:

維持數據 (holdout data)

訓練期間故意不使用(「維持」)的樣本。驗證數據集和測試數據集都屬於維持數據。維持數據有助於評估模型向訓練時所用數據以外的數據進行泛化的能力。與基於訓練數據集的損失相比,基於維持數據集的損失有助於更好地估算基於未見過的數據集的損失。

超參數 (hyperparameter)

在模型訓練的連續過程當中,您調節的「旋鈕」。例如,學習速率就是一種超參數。

與參數相對。

超平面 (hyperplane)

將一個空間劃分爲兩個子空間的邊界。例如,在二維空間中,直線就是一個超平面,在三維空間中,平面則是一個超平面。在機器學習中更典型的是:超平面是分隔高維度空間的邊界。核支持向量機利用超平面將正類別和負類別區分開來(一般是在極高維度空間中)。

I

獨立同等分佈 (i.i.d, independently and identically distributed)

從不會改變的分佈中提取的數據,其中提取的每一個值都不依賴於以前提取的值。i.i.d. 是機器學習的理想氣體 - 一種實用的數學結構,但在現實世界中幾乎從未發現過。例如,某個網頁的訪問者在短期內的分佈可能爲 i.i.d.,即分佈在該短期內沒有變化,且一位用戶的訪問行爲一般與另外一位用戶的訪問行爲無關。不過,若是將時間窗口擴大,網頁訪問者的分佈可能呈現出季節性變化。

推斷 (inference)

在機器學習中,推斷一般指如下過程:經過將訓練過的模型應用於無標籤樣原本作出預測。在統計學中,推斷是指在某些觀測數據條件下擬合分佈參數的過程。(請參閱維基百科中有關統計學推斷的文章。)

輸入函數 (input function)

在 TensorFlow 中,用於將輸入數據返回到 Estimator 的訓練、評估或預測方法的函數。例如,訓練輸入函數會返回訓練集中的一批特徵和標籤。

輸入層 (input layer)

神經網絡中的第一層(接收輸入數據的層)。

實例 (instance)

與樣本的含義相同。

可解釋性 (interpretability)

模型的預測可解釋的難易程度。深度模型一般不可解釋,也就是說,很難對深度模型的不一樣層進行解釋。相比之下,線性迴歸模型和寬度模型的可解釋性一般要好得多。

評分者間一致性信度 (inter-rater agreement)

一種衡量指標,用於衡量在執行某項任務時評分者達成一致的頻率。若是評分者未達成一致,則可能須要改進任務說明。有時也稱爲註釋者間一致性信度或評分者間可靠性信度。另請參閱 Cohen's kappa(最熱門的評分者間一致性信度衡量指標之一)。

迭代 (iteration)

模型的權重在訓練期間的一次更新。迭代包含計算參數在單批次數據上的梯度損失。

K

k-means

一種熱門的聚類算法,用於對非監督式學習中的樣本進行分組。k-means 算法基本上會執行如下操做:

  • 以迭代方式肯定最佳的 k 中心點(稱爲形心)。
  • 將每一個樣本分配到最近的形心。與同一個形心距離最近的樣本屬於同一個組。

k-means 算法會挑選形心位置,以最大限度地減少每一個樣本與其最接近形心之間的距離的累積平方。

如下面的小狗高度與小狗寬度的關係圖爲例:

若是 k=3,則 k-means 算法會肯定三個形心。每一個樣本都被分配到與其最接近的形心,最終產生三個組:

假設製造商想要肯定小、中和大號狗毛衣的理想尺寸。在該聚類中,三個形心用於標識每隻狗的平均高度和平均寬度。所以,製造商可能應該根據這三個形心肯定毛衣尺寸。請注意,聚類的形心一般不是聚類中的樣本。

上圖顯示了 k-means 應用於僅具備兩個特徵(高度和寬度)的樣本。請注意,k-means 能夠跨多個特徵爲樣本分組。

k-median

與 k-means 緊密相關的聚類算法。二者的實際區別以下:

  • 對於 k-means,肯定形心的方法是,最大限度地減少候選形心與它的每一個樣本之間的距離平方和。
  • 對於 k-median,肯定形心的方法是,最大限度地減少候選形心與它的每一個樣本之間的距離總和。

請注意,距離的定義也有所不一樣:

  • k-means 採用從形心到樣本的歐幾里得距離。(在二維空間中,歐幾里得距離即便用勾股定理來計算斜邊。)例如,(2,2) 與 (5,-2) 之間的 k-means 距離爲:

  • k-median 採用從形心到樣本的曼哈頓距離。這個距離是每一個維度中絕對差別值的總和。例如,(2,2) 與 (5,-2) 之間的 k-median 距離爲:

Keras

一種熱門的 Python 機器學習 API。Keras 可以在多種深度學習框架上運行,其中包括 TensorFlow(在該框架上,Keras 做爲 tf.keras 提供)。

核支持向量機 (KSVM, Kernel Support Vector Machines)

一種分類算法,旨在經過將輸入數據向量映射到更高維度的空間,來最大化正類別和負類別之間的裕度。以某個輸入數據集包含一百個特徵的分類問題爲例。爲了最大化正類別和負類別之間的裕度,KSVM 能夠在內部將這些特徵映射到百萬維度的空間。KSVM 使用合頁損失函數。

L

L1 損失函數 (L₁ loss)

一種損失函數,基於模型預測的值與標籤的實際值之差的絕對值。與 L2 損失函數相比,L1 損失函數對離羣值的敏感性弱一些。

L1 正則化 (L₁ regularization)

一種正則化,根據權重的絕對值的總和來懲罰權重。在依賴稀疏特徵的模型中,L1 正則化有助於使不相關或幾乎不相關的特徵的權重正好爲 0,從而將這些特徵從模型中移除。與 L2 正則化相對。

L2 損失函數 (L₂ loss)

請參閱平方損失函數。

L2 正則化 (L₂ regularization)

一種正則化,根據權重的平方和來懲罰權重。L2 正則化有助於使離羣值(具備較大正值或較小負值)權重接近於 0,但又不正好爲 0。(與 L1 正則化相對。)在線性模型中,L2 正則化始終能夠改進泛化。

標籤 (label)

在監督式學習中,標籤指樣本的「答案」或「結果」部分。有標籤數據集中的每一個樣本都包含一個或多個特徵以及一個標籤。例如,在房屋數據集中,特徵可能包括臥室數、衛生間數以及房齡,而標籤則多是房價。在垃圾郵件檢測數據集中,特徵可能包括主題行、發件人以及電子郵件自己,而標籤則多是「垃圾郵件」或「非垃圾郵件」。

有標籤樣本 (labeled example)

包含特徵和標籤的樣本。在監督式訓練中,模型從有標籤樣本中學習規律。

lambda

與正則化率的含義相同。

(多含義術語,咱們在此關注的是該術語在正則化中的定義。)

層 (layer)

神經網絡中的一組神經元,負責處理一組輸入特徵,或一組神經元的輸出。

此外還指 TensorFlow 中的抽象層。層是 Python 函數,以張量和配置選項做爲輸入,而後生成其餘張量做爲輸出。當必要的張量組合起來後,用戶即可以經過模型函數將結果轉換爲 Estimator。

Layers API (tf.layers)

一種 TensorFlow API,用於以層組合的方式構建深度神經網絡。經過 Layers API,您能夠構建不一樣類型的層,例如:

  • 經過 tf.layers.Dense 構建全鏈接層。
  • 經過 tf.layers.Conv2D 構建卷積層。

在編寫自定義 Estimator 時,您能夠編寫「層」對象來定義全部隱藏層的特徵。

Layers API 遵循 Keras layers API 規範。也就是說,除了前綴不一樣之外,Layers API 中的全部函數均與 Keras layers API 中的對應函數具備相同的名稱和簽名。

學習速率 (learning rate)

在訓練模型時用於梯度降低的一個標量。在每次迭代期間,梯度降低法都會將學習速率與梯度相乘。得出的乘積稱爲梯度步長。

學習速率是一個重要的超參數。

最小二乘迴歸 (least squares regression)

一種經過最小化 L2 損失訓練出的線性迴歸模型。

線性迴歸 (linear regression)

一種迴歸模型,經過將輸入特徵進行線性組合輸出連續值。

邏輯迴歸 (logistic regression)

一種模型,經過將 S 型函數應用於線性預測,生成分類問題中每一個可能的離散標籤值的機率。雖然邏輯迴歸常常用於二元分類問題,但也可用於多類別分類問題(其叫法變爲多類別邏輯迴歸或多項迴歸)。

對數 (logits)

分類模型生成的原始(非標準化)預測向量,一般會傳遞給標準化函數。若是模型要解決多類別分類問題,則對數一般變成 softmax 函數的輸入。以後,softmax 函數會生成一個(標準化)機率向量,對應於每一個可能的類別。

此外,對數有時也稱爲 S 型函數的元素級反函數。如需瞭解詳細信息,請參閱 tf.nn.sigmoid_cross_entropy_with_logits。

對數損失函數 (Log Loss)

二元邏輯迴歸中使用的損失函數。

對數概率 (log-odds)

某個事件概率的對數。

若是事件涉及二元機率,則概率指的是成功機率 (p) 與失敗機率 (1-p) 之比。例如,假設某個給定事件的成功機率爲 90%,失敗機率爲 10%。在這種狀況下,概率的計算公式以下:

簡單來講,對數概率即概率的對數。按照慣例,「對數」指天然對數,但對數的基數其實能夠是任何大於 1 的數。若遵循慣例,上述示例的對數概率應爲:

對數概率是 S 型函數的反函數。

損失 (Loss)

一種衡量指標,用於衡量模型的預測偏離其標籤的程度。或者更悲觀地說是衡量模型有多差。要肯定此值,模型必須定義損失函數。例如,線性迴歸模型一般將均方偏差用做損失函數,而邏輯迴歸模型則使用對數損失函數。

M

機器學習 (machine learning)

一種程序或系統,用於根據輸入數據構建(訓練)預測模型。這種系統會利用學到的模型根據從分佈(訓練該模型時使用的同一分佈)中提取的新數據(之前從未見過的數據)進行實用的預測。機器學習還指與這些程序或系統相關的研究領域。

均方偏差 (MSE, Mean Squared Error)

每一個樣本的平均平方損失。MSE 的計算方法是平方損失除以樣本數。TensorFlow Playground 顯示的「訓練損失」值和「測試損失」值都是 MSE。

指標 (metric)

您關心的一個數值。可能能夠也可能不能夠直接在機器學習系統中獲得優化。您的系統嘗試優化的指標稱爲目標。

Metrics API (tf.metrics)

一種用於評估模型的 TensorFlow API。例如,tf.metrics.accuracy 用於肯定模型的預測與標籤匹配的頻率。在編寫自定義 Estimator 時,您能夠調用 Metrics API 函數來指定應如何評估您的模型。

小批次 (mini-batch)

從整批樣本內隨機選擇並在訓練或推斷過程的一次迭代中一塊兒運行的一小部分樣本。小批次的批次大小一般介於 10 到 1000 之間。與基於完整的訓練數據計算損失相比,基於小批次數據計算損失要高效得多。

小批次隨機梯度降低法 (SGD, mini-batch stochastic gradient descent)

一種採用小批次樣本的梯度降低法。也就是說,小批次 SGD 會根據一小部分訓練數據來估算梯度。Vanilla SGD 使用的小批次的大小爲 1。

ML

機器學習的縮寫。

模型 (model)

機器學習系統從訓練數據學到的內容的表示形式。多含義術語,能夠理解爲下列兩種相關含義之一:

  • 一種 TensorFlow 圖,用於表示預測的計算結構。
  • 該 TensorFlow 圖的特定權重和誤差,經過訓練決定。

模型函數 (model function)

Estimator 中的函數,用於實現機器學習訓練、評估和推斷。例如,模型函數的訓練部分能夠處理如下任務:定義深度神經網絡的拓撲並肯定其優化器函數。若是使用預建立的 Estimator,則有人已爲您編寫了模型函數。若是使用自定義 Estimator,則必須自行編寫模型函數。

有關編寫模型函數的詳細信息,請參閱建立自定義 Estimator。

模型訓練 (model training)

肯定最佳模型的過程。

動量 (Momentum)

一種先進的梯度降低法,其中學習步長不只取決於當前步長的導數,還取決於以前一步或多步的步長的導數。動量涉及計算梯度隨時間而變化的指數級加權移動平均值,與物理學中的動量相似。動量有時能夠防止學習過程被卡在局部最小的狀況。

多類別分類 (multi-class classification)

區分兩種以上類別的分類問題。例如,楓樹大約有 128 種,所以,肯定楓樹種類的模型就屬於多類別模型。反之,僅將電子郵件分爲兩類(「垃圾郵件」和「非垃圾郵件」)的模型屬於二元分類模型。

多項分類 (multinomial classification)

與多類別分類的含義相同。

N

NaN 陷阱 (NaN trap)

模型中的一個數字在訓練期間變成 NaN,這會致使模型中的不少或全部其餘數字最終也會變成 NaN。

NaN 是「非數字」的縮寫。

負類別 (negative class)

在二元分類中,一種類別稱爲正類別,另外一種類別稱爲負類別。正類別是咱們要尋找的類別,負類別則是另外一種可能性。例如,在醫學檢查中,負類別能夠是「非腫瘤」。在電子郵件分類器中,負類別能夠是「非垃圾郵件」。另請參閱正類別。

神經網絡 (neural network)

一種模型,靈感來源於腦部結構,由多個層構成(至少有一個是隱藏層),每一個層都包含簡單相連的單元或神經元(具備非線性關係)。

神經元 (neuron)

神經網絡中的節點,一般會接收多個輸入值並生成一個輸出值。神經元經過將激活函數(非線性轉換)應用於輸入值的加權和來計算輸出值。

節點 (node)

多含義術語,能夠理解爲下列兩種含義之一:

  • 隱藏層中的神經元。
  • TensorFlow 圖中的操做。

標準化 (normalization)

將實際的值區間轉換爲標準的值區間(一般爲 -1 到 +1 或 0 到 1)的過程。例如,假設某個特徵的天然區間是 800 到 6000。經過減法和除法運算,您能夠將這些值標準化爲位於 -1 到 +1 區間內。

另請參閱縮放。

數值數據 (numerical data)

用整數或實數表示的特徵。例如,在房地產模型中,您可能會用數值數據表示房子大小(以平方英尺或平方米爲單位)。若是用數值數據表示特徵,則能夠代表特徵的值相互之間具備數學關係,而且與標籤可能也有數學關係。例如,若是用數值數據表示房子大小,則能夠代表面積爲 200 平方米的房子是面積爲 100 平方米的房子的兩倍。此外,房子面積的平方米數可能與房價存在必定的數學關係。

並不是全部整數數據都應表示成數值數據。例如,世界上某些地區的郵政編碼是整數,但在模型中,不該將整數郵政編碼表示成數值數據。這是由於郵政編碼 20000 在效力上並非郵政編碼 10000 的兩倍(或一半)。此外,雖然不一樣的郵政編碼確實與不一樣的房地產價值有關,但咱們也不能假設郵政編碼爲 20000 的房地產在價值上是郵政編碼爲 10000 的房地產的兩倍。郵政編碼應表示成分類數據。

數值特徵有時稱爲連續特徵。

Numpy

一個開放源代碼數學庫,在 Python 中提供高效的數組操做。Pandas 創建在 Numpy 之上。

O

目標 (objective)

算法嘗試優化的指標。

離線推斷 (offline inference)

生成一組預測,存儲這些預測,而後根據需求檢索這些預測。與在線推斷相對。

獨熱編碼 (one-hot encoding)

一種稀疏向量,其中:

  • 一個元素設爲 1。
  • 全部其餘元素均設爲 0。

獨熱編碼經常使用於表示擁有有限個可能值的字符串或標識符。例如,假設某個指定的植物學數據集記錄了 15000 個不一樣的物種,其中每一個物種都用獨一無二的字符串標識符來表示。在特徵工程過程當中,您可能須要將這些字符串標識符編碼爲獨熱向量,向量的大小爲 15000。

單樣本學習(one-shot learning,一般用於對象分類)

一種機器學習方法,一般用於對象分類,旨在經過單個訓練樣本學習有效的分類器。

另請參閱少許樣本學習。

一對多 (one-vs.-all)

假設某個分類問題有 N 種可能的解決方案,一對多解決方案將包含 N 個單獨的二元分類器 - 一個二元分類器對應一種可能的結果。例如,假設某個模型用於區分樣本屬於動物、蔬菜仍是礦物,一對多解決方案將提供下列三個單獨的二元分類器:

  • 動物和非動物
  • 蔬菜和非蔬菜
  • 礦物和非礦物

在線推斷 (online inference)

根據需求生成預測。與離線推斷相對。

操做 (op, Operation)

TensorFlow 圖中的節點。在 TensorFlow 中,任何建立、操縱或銷燬張量的過程都屬於操做。例如,矩陣相乘就是一種操做,該操做以兩個張量做爲輸入,並生成一個張量做爲輸出。

優化器 (optimizer)

梯度降低法的一種具體實現。TensorFlow 的優化器基類是 tf.train.Optimizer。不一樣的優化器可能會利用如下一個或多個概念來加強梯度降低法在指定訓練集中的效果:

  • 動量 (Momentum)
  • 更新頻率(AdaGrad = ADAptive GRADient descent;Adam = ADAptive with Momentum;RMSProp)
  • 稀疏性/正則化 (Ftrl)
  • 更復雜的數學方法(Proximal,等等)

甚至還包括 NN 驅動的優化器。

離羣值 (outlier)

與大多數其餘值差異很大的值。在機器學習中,下列全部值都是離羣值。

  • 絕對值很高的權重。
  • 與實際值相差很大的預測值。
  • 值比平均值高大約 3 個標準誤差的輸入數據。

離羣值經常會致使模型訓練出現問題。

輸出層 (output layer)

神經網絡的「最後」一層,也是包含答案的層。

過擬合 (overfitting)

建立的模型與訓練數據過於匹配,以至於模型沒法根據新數據作出正確的預測。

P

Pandas

面向列的數據分析 API。不少機器學習框架(包括 TensorFlow)都支持將 Pandas 數據結構做爲輸入。請參閱 Pandas 文檔。

參數 (parameter)

機器學習系統自行訓練的模型的變量。例如,權重就是一種參數,它們的值是機器學習系統經過連續的訓練迭代逐漸學習到的。與超參數相對。

參數服務器 (PS, Parameter Server)

一種做業,負責在分佈式設置中跟蹤模型參數。

參數更新 (parameter update)

在訓練期間(一般是在梯度降低法的單次迭代中)調整模型參數的操做。

偏導數 (partial derivative)

一種導數,除一個變量以外的全部變量都被視爲常量。例如,f(x, y) 對 x 的偏導數就是 f(x) 的導數(即,使 y 保持恆定)。f 對 x 的偏導數僅關注 x 如何變化,而忽略公式中的全部其餘變量。

劃分策略 (partitioning strategy)

在參數服務器間分割變量的算法。

性能 (performance)

多含義術語,具備如下含義:

  • 在軟件工程中的傳統含義。即:相應軟件的運行速度有多快(或有多高效)?
  • 在機器學習中的含義。在機器學習領域,性能旨在回答如下問題:相應模型的準確度有多高?即模型在預測方面的表現有多好?

困惑度 (perplexity)

一種衡量指標,用於衡量模型可以多好地完成任務。例如,假設任務是讀取用戶使用智能手機鍵盤輸入字詞時輸入的前幾個字母,而後列出一組可能的完整字詞。此任務的困惑度 (P) 是:爲了使列出的字詞中包含用戶嘗試輸入的實際字詞,您須要提供的猜想項的個數。

困惑度與交叉熵的關係以下:

流水線 (pipeline)

機器學習算法的基礎架構。流水線包括收集數據、將數據放入訓練數據文件、訓練一個或多個模型,以及將模型導出到生產環境。

池化 (pooling)

將一個或多個由前趨的卷積層建立的矩陣壓縮爲較小的矩陣。池化一般是取整個池化區域的最大值或平均值。如下面的 3x3 矩陣爲例:

池化運算與卷積運算相似:將矩陣分割爲多個切片,而後按步長逐個運行卷積運算。例如,假設池化運算按 1x1 步長將卷積矩陣分割爲 2x2 個切片。以下圖所示,進行了四個池化運算。假設每一個池化運算都選擇該切片中四個值的最大值:

池化有助於在輸入矩陣中實現平移不變性。

對於視覺應用來講,池化的更正式名稱爲空間池化。時間序列應用一般將池化稱爲時序池化。按照不太正式的說法,池化一般稱爲下采樣或降採樣。

正類別 (positive class)

在二元分類中,兩種可能的類別分別被標記爲正類別和負類別。正類別結果是咱們要測試的對象。(不能否認的是,咱們會同時測試這兩種結果,但只關注正類別結果。)例如,在醫學檢查中,正類別能夠是「腫瘤」。在電子郵件分類器中,正類別能夠是「垃圾郵件」。

與負類別相對。

精確率 (precision)

一種分類模型指標。精確率指模型正確預測正類別的頻率,即:

預測 (prediction)

模型在收到輸入樣本後的輸出。

預測誤差 (prediction bias)

一種值,用於代表預測平均值與數據集中標籤的平均值相差有多大。

預建立的 Estimator (pre-made Estimator)

其餘人已建好的 Estimator。TensorFlow 提供了一些預建立的 Estimator,包括 DNNClassifier、DNNRegressor 和 LinearClassifier。您能夠按照這些說明構建本身預建立的 Estimator。

預訓練模型 (pre-trained model)

已通過訓練的模型或模型組件(例如嵌套)。有時,您須要將預訓練的嵌套饋送到神經網絡。在其餘時候,您的模型將自行訓練嵌套,而不依賴於預訓練的嵌套。

先驗信念 (prior belief)

在開始採用相應數據進行訓練以前,您對這些數據抱有的信念。例如,L2 正則化依賴的先驗信念是權重應該很小且應以 0 爲中心呈正態分佈。

Q

隊列 (queue)

一種 TensorFlow 操做,用於實現隊列數據結構。一般用於 I/O 中。

R

等級 (rank)

機器學習中的一個多含義術語,能夠理解爲下列含義之一:

  • 張量中的維數。例如,標量等級爲 0,向量等級爲 1,矩陣等級爲 2。
  • 在將類別從最高到最低進行排序的機器學習問題中,類別的順序位置。例如,行爲排序系統能夠將狗狗的獎勵從最高(牛排)到最低(枯萎的羽衣甘藍)進行排序。

評分者 (rater)

爲樣本提供標籤的人。有時稱爲「註釋者」。

召回率 (recall)

一種分類模型指標,用於回答如下問題:在全部可能的正類別標籤中,模型正確地識別出了多少個?即:

修正線性單元 (ReLU, Rectified Linear Unit)

一種激活函數,其規則以下:

  • 若是輸入爲負數或 0,則輸出 0。
  • 若是輸入爲正數,則輸出等於輸入。

迴歸模型 (regression model)

一種模型,可以輸出連續的值(一般爲浮點值)。請與分類模型進行比較,分類模型會輸出離散值,例如「黃花菜」或「虎皮百合」。

正則化 (regularization)

對模型複雜度的懲罰。正則化有助於防止出現過擬合,包含如下類型:

  • L1 正則化
  • L2 正則化
  • 丟棄正則化
  • 早停法(這不是正式的正則化方法,但能夠有效限制過擬合)

正則化率 (regularization rate)

一種標量值,以 lambda 表示,用於指定正則化函數的相對重要性。從下面簡化的損失公式中能夠看出正則化率的影響:

提升正則化率能夠減小過擬合,但可能會使模型的準確率下降。

表示法 (representation)

將數據映射到實用特徵的過程。

受試者工做特徵曲線(receiver operating characteristic,簡稱 ROC 曲線)

不一樣分類閾值下的正例率和假正例率構成的曲線。另請參閱曲線下面積。

根目錄 (root directory)

您指定的目錄,用於託管多個模型的 TensorFlow 檢查點和事件文件的子目錄。

均方根偏差 (RMSE, Root Mean Squared Error)

均方偏差的平方根。

旋轉不變性 (rotational invariance)

在圖像分類問題中,即便圖像的方向發生變化,算法也能成功地對圖像進行分類。例如,不管網球拍朝上、側向仍是朝下放置,該算法仍然能夠識別它。請注意,並不是老是但願旋轉不變;例如,倒置的「9」不該分類爲「9」。

另請參閱平移不變性和大小不變性。

S

SavedModel

保存和恢復 TensorFlow 模型時建議使用的格式。SavedModel 是一種獨立於語言且可恢復的序列化格式,使較高級別的系統和工具能夠建立、使用和轉換 TensorFlow 模型。

如需完整的詳細信息,請參閱《TensorFlow 編程人員指南》中的保存和恢復。

Saver

一種 TensorFlow 對象,負責保存模型檢查點。

縮放 (scaling)

特徵工程中的一種經常使用作法,是指對某個特徵的值區間進行調整,使之與數據集中其餘特徵的值區間一致。例如,假設您但願數據集中全部浮點特徵的值都位於 0 到 1 區間內,若是某個特徵的值位於 0 到 500 區間內,您就能夠經過將每一個值除以 500 來縮放該特徵。

另請參閱標準化。

scikit-learn

一個熱門的開放源代碼機器學習平臺。請訪問 www.scikit-learn.org。

半監督式學習 (semi-supervised learning)

訓練模型時採用的數據中,某些訓練樣本有標籤,而其餘樣本則沒有標籤。半監督式學習採用的一種技術是推斷無標籤樣本的標籤,而後使用推斷出的標籤進行訓練,以建立新模型。若是得到有標籤樣本須要高昂的成本,而無標籤樣本則有不少,那麼半監督式學習將很是有用。

序列模型 (sequence model)

一種模型,其輸入具備序列依賴性。例如,根據以前觀看過的一系列視頻對觀看的下一個視頻進行預測。

會話 (tf.session)

封裝了 TensorFlow 運行時狀態的對象,用於運行所有或部分圖。在使用底層 TensorFlow API 時,您能夠直接建立並管理一個或多個 tf.session 對象。在使用 Estimator API 時,Estimator 會爲您建立會話對象。

S 型函數 (sigmoid function)

一種函數,可將邏輯迴歸輸出或多項迴歸輸出(對數概率)映射到機率,以返回介於 0 到 1 之間的值。S 型函數的公式以下:

在邏輯迴歸問題中, 很是簡單:

換句話說,S 型函數可將 轉換爲介於 0 到 1 之間的機率。

在某些神經網絡中,S 型函數可做爲激活函數使用。

大小不變性 (size invariance)

在圖像分類問題中,即便圖像的大小發生變化,算法也能成功地對圖像進行分類。例如,不管一隻貓以 200 萬像素仍是 20 萬像素呈現,該算法仍然能夠識別它。請注意,即便是最好的圖像分類算法,在大小不變性方面仍然會存在切實的限制。例如,對於僅以 20 像素呈現的貓圖像,算法(或人)不可能正確對其進行分類。

另請參閱平移不變性和旋轉不變性。

softmax

一種函數,可提供多類別分類模型中每一個可能類別的機率。這些機率的總和正好爲 1.0。例如,softmax 可能會得出某個圖像是狗、貓和馬的機率分別是 0.九、0.08 和 0.02。(也稱爲完整 softmax。)

與候選採樣相對。

稀疏特徵 (sparse feature)

一種特徵向量,其中的大多數值都爲 0 或爲空。例如,某個向量包含一個爲 1 的值和一百萬個爲 0 的值,則該向量就屬於稀疏向量。再舉一個例子,搜索查詢中的單詞也可能屬於稀疏特徵 - 在某種指定語言中有不少可能的單詞,但在某個指定的查詢中僅包含其中幾個。

與密集特徵相對。

稀疏表示法 (sparse representation)

一種張量表示法,僅存儲非零元素。

例如,英語中包含約一百萬個單詞。表示一個英語句子中所用單詞的數量,考慮如下兩種方式:

  • 要採用密集表示法來表示此句子,則必須爲全部一百萬個單元格設置一個整數,而後在大部分單元格中放入 0,在少數單元格中放入一個很是小的整數。
  • 要採用稀疏表示法來表示此句子,則僅存儲象徵句子中實際存在的單詞的單元格。所以,若是句子只包含 20 個獨一無二的單詞,那麼該句子的稀疏表示法將僅在 20 個單元格中存儲一個整數。

例如,假設以兩種方式來表示句子「Dogs wag tails.」。以下表所示,密集表示法將使用約一百萬個單元格;稀疏表示法則只使用 3 個單元格:

稀疏性 (sparsity)

向量或矩陣中設置爲 0(或空)的元素數除以該向量或矩陣中的條目總數。以一個 10x10 矩陣(其中 98 個單元格都包含 0)爲例。稀疏性的計算方法以下:

特徵稀疏性是指特徵向量的稀疏性;模型稀疏性是指模型權重的稀疏性。

空間池化 (spatial pooling)

請參閱池化。

平方合頁損失函數 (squared hinge loss)

合頁損失函數的平方。與常規合頁損失函數相比,平方合頁損失函數對離羣值的懲罰更嚴厲。

平方損失函數 (squared loss)

在線性迴歸中使用的損失函數(也稱爲 L2 損失函數)。該函數可計算模型爲有標籤樣本預測的值和標籤的實際值之差的平方。因爲取平方值,所以該損失函數會放大不佳預測的影響。也就是說,與 L1 損失函數相比,平方損失函數對離羣值的反應更強烈。

靜態模型 (static model)

離線訓練的一種模型。

平穩性 (stationarity)

數據集中數據的一種屬性,表示數據分佈在一個或多個維度保持不變。這種維度最多見的是時間,即代表平穩性的數據不隨時間而變化。例如,從 9 月到 12 月,代表平穩性的數據沒有發生變化。

步 (step)

對一個批次的向前和向後評估。

步長 (step size)

與學習速率的含義相同。

隨機梯度降低法 (SGD, stochastic gradient descent)

批次大小爲 1 的一種梯度降低法。換句話說,SGD 依賴於從數據集中隨機均勻選擇的單個樣原本計算每步的梯度估算值。

結構風險最小化 (SRM, structural risk minimization)

一種算法,用於平衡如下兩個目標:

  • 指望構建最具預測性的模型(例如損失最低)。
  • 指望使模型儘量簡單(例如強大的正則化)。

例如,旨在將基於訓練集的損失和正則化降至最低的函數就是一種結構風險最小化算法。

如需更多信息,請參閱 http://www.svms.org/srm/。

與經驗風險最小化相對。

步長 (stride)

在卷積運算或池化中,下一個系列的輸入切片的每一個維度中的增量。例如,下面的動畫演示了卷積運算過程當中的一個 (1,1) 步長。所以,下一個輸入切片是從上一個輸入切片向右移動一個步長的位置開始。當運算到達右側邊緣時,下一個切片將回到最左邊,可是下移一個位置。

前面的示例演示了一個二維步長。若是輸入矩陣爲三維,那麼步長也將是三維。

下采樣 (subsampling)

請參閱池化。

總結 (summary)

在 TensorFlow 中的某一步計算出的一個值或一組值,一般用於在訓練期間跟蹤模型指標。

監督式機器學習 (supervised machine learning)

根據輸入數據及其對應的標籤來訓練模型。監督式機器學習相似於學生經過研究一系列問題及其對應的答案來學習某個主題。在掌握了問題和答案之間的對應關係後,學生即可以回答關於同一主題的新問題(之前從未見過的問題)。請與非監督式機器學習進行比較。

合成特徵 (synthetic feature)

一種特徵,不在輸入特徵之列,而是從一個或多個輸入特徵衍生而來。合成特徵包括如下類型:

  • 對連續特徵進行分桶,以分爲多個區間分箱。
  • 將一個特徵值與其餘特徵值或其自己相乘(或相除)。
  • 建立一個特徵組合。

僅經過標準化或縮放建立的特徵不屬於合成特徵。

T

目標 (target)

與標籤的含義相同。

時態數據 (temporal data)

在不一樣時間點記錄的數據。例如,記錄的一年中每一天的冬外套銷量就屬於時態數據。

張量 (Tensor)

TensorFlow 程序中的主要數據結構。張量是 N 維(其中 N 可能很是大)數據結構,最多見的是標量、向量或矩陣。張量的元素能夠包含整數值、浮點值或字符串值。

張量處理單元 (TPU, Tensor Processing Unit)

一種 ASIC(應用專用集成電路),用於優化 TensorFlow 程序的性能。

張量等級 (Tensor rank)

請參閱等級。

張量形狀 (Tensor shape)

張量在各類維度中包含的元素數。例如,張量 [5, 10] 在一個維度中的形狀爲 5,在另外一個維度中的形狀爲 10。

張量大小 (Tensor size)

張量包含的標量總數。例如,張量 [5, 10] 的大小爲 50。

TensorBoard

一個信息中心,用於顯示在執行一個或多個 TensorFlow 程序期間保存的摘要信息。

TensorFlow

一個大型的分佈式機器學習平臺。該術語還指 TensorFlow 堆棧中的基本 API 層,該層支持對數據流圖進行通常計算。

雖然 TensorFlow 主要應用於機器學習領域,但也可用於須要使用數據流圖進行數值計算的非機器學習任務。

TensorFlow Playground

一款用於直觀呈現不一樣的超參數對模型(主要是神經網絡)訓練的影響的程序。要試用 TensorFlow Playground,請前往 http://playground.tensorflow.org。

TensorFlow Serving

一個平臺,用於將訓練過的模型部署到生產環境。

測試集 (test set)

數據集的子集,用於在模型經由驗證集的初步驗證以後測試模型。

與訓練集和驗證集相對。

tf.Example

一種標準協議緩衝區,旨在描述用於機器學習模型訓練或推斷的輸入數據。

時間序列分析 (time series analysis)

機器學習和統計學的一個子領域,旨在分析時態數據。不少類型的機器學習問題都須要時間序列分析,其中包括分類、聚類、預測和異常檢測。例如,您能夠利用時間序列分析根據歷史銷量數據預測將來每個月的冬外套銷量。

訓練 (training)

肯定構成模型的理想參數的過程。

訓練集 (training set)

數據集的子集,用於訓練模型。

與驗證集和測試集相對。

遷移學習 (transfer learning)

將信息從一個機器學習任務遷移到另外一個機器學習任務。例如,在多任務學習中,一個模型能夠完成多項任務,例如針對不一樣任務具備不一樣輸出節點的深度模型。遷移學習可能涉及將知識從較簡單任務的解決方案遷移到較複雜的任務,或者將知識從數據較多的任務遷移到數據較少的任務。

大多數機器學習系統都只能完成一項任務。遷移學習是邁向人工智能的一小步;在人工智能中,單個程序能夠完成多項任務。

平移不變性 (translational invariance)

在圖像分類問題中,即便圖像中對象的位置發生變化,算法也能成功對圖像進行分類。例如,不管一隻狗位於畫面正中央仍是畫面左側,該算法仍然能夠識別它。

另請參閱大小不變性和旋轉不變性。

負例 (TN, true negative)

被模型正確地預測爲負類別的樣本。例如,模型推斷出某封電子郵件不是垃圾郵件,而該電子郵件確實不是垃圾郵件。

正例 (TP, true positive)

被模型正確地預測爲正類別的樣本。例如,模型推斷出某封電子郵件是垃圾郵件,而該電子郵件確實是垃圾郵件。

正例率(true positive rate, 簡稱 TP 率)

與召回率的含義相同,即:

正例率是 ROC 曲線的 y 軸。

U

無標籤樣本 (unlabeled example)

包含特徵但沒有標籤的樣本。無標籤樣本是用於進行推斷的輸入內容。在半監督式和非監督式學習中,在訓練期間會使用無標籤樣本。

非監督式機器學習 (unsupervised machine learning)

訓練模型,以找出數據集(一般是無標籤數據集)中的規律。

非監督式機器學習最多見的用途是將數據分爲不一樣的聚類,使類似的樣本位於同一組中。例如,非監督式機器學習算法能夠根據音樂的各類屬性將歌曲分爲不一樣的聚類。所得聚類能夠做爲其餘機器學習算法(例如音樂推薦服務)的輸入。在很難獲取真標籤的領域,聚類可能會很是有用。例如,在反濫用和反欺詐等領域,聚類有助於人們更好地瞭解相關數據。

非監督式機器學習的另外一個例子是主成分分析 (PCA)。例如,經過對包含數百萬購物車中物品的數據集進行主成分分析,可能會發現有檸檬的購物車中每每也有抗酸藥。

請與監督式機器學習進行比較。

V

驗證集 (validation set)

數據集的一個子集,從訓練集分離而來,用於調整超參數。

與訓練集和測試集相對。

W

權重 (weight)

線性模型中特徵的係數,或深度網絡中的邊。訓練線性模型的目標是肯定每一個特徵的理想權重。若是權重爲 0,則相應的特徵對模型來講沒有任何貢獻。

寬度模型 (wide model)

一種線性模型,一般有不少稀疏輸入特徵。咱們之因此稱之爲「寬度模型」,是由於這是一種特殊類型的神經網絡,其大量輸入均直接與輸出節點相連。與深度模型相比,寬度模型一般更易於調試和檢查。雖然寬度模型沒法經過隱藏層來表示非線性關係,但能夠利用特徵組合、分桶等轉換以不一樣的方式爲非線性關係建模。

與深度模型相對。

相關文章
相關標籤/搜索