剛接觸機器學習框架 TensorFlow 的新手們,這篇由 Google 官方出品的常用術(shù)語詞匯表,一定是你必不可少的入門資料!
本術(shù)語表列出了基本的機器學習術(shù)語和 TensorFlow 專用術(shù)語的定義,希望能幫助您快速熟悉 TensorFlow 入門內(nèi)容,輕松打開機器學習世界的大門。
A
A/B 測試 (A/B testing)
一種統(tǒng)計方法,用于將兩種或多種技術(shù)進行比較,通常是將當前采用的技術(shù)與新技術(shù)進行比較。A/B 測試不僅旨在確定哪種技術(shù)的效果更好,而且還有助于了解相應差異是否具有顯著的統(tǒng)計意義。A/B 測試通常是采用一種衡量方式對兩種技術(shù)進行比較,但也適用于任意有限數(shù)量的技術(shù)和衡量方式。
準確率 (accuracy)
分類模型的正確預測所占的比例。在多類別分類中,準確率的定義如下:
在二元分類中,準確率的定義如下:
請參閱正例和負例。
激活函數(shù) (activation function)
一種函數(shù)(例如ReLU或S 型函數(shù)),用于對上一層的所有輸入求加權(quán)和,然后生成一個輸出值(通常為非線性值),并將其傳遞給下一層。
AdaGrad
一種先進的梯度下降法,用于重新調(diào)整每個參數(shù)的梯度,以便有效地為每個參數(shù)指定獨立的學習速率。如需查看完整的解釋,請參閱這篇論文。
ROC 曲線下面積 (AUC, Area under the ROC Curve)
一種會考慮所有可能分類閾值的評估指標。
ROC 曲線下面積是,對于隨機選擇的正類別樣本確實為正類別,以及隨機選擇的負類別樣本為正類別,分類器更確信前者的概率。
B
反向傳播算法 (backpropagation)
在神經(jīng)網(wǎng)絡上執(zhí)行梯度下降法的主要算法。該算法會先按前向傳播方式計算(并緩存)每個節(jié)點的輸出值,然后再按反向傳播遍歷圖的方式計算損失函數(shù)值相對于每個參數(shù)的偏導數(shù)。
基準 (baseline)
一種簡單的模型或啟發(fā)法,用作比較模型效果時的參考點。基準有助于模型開發(fā)者針對特定問題量化最低預期效果。
批次 (batch)
模型訓練的一次迭代(即一次梯度更新)中使用的樣本集。
另請參閱批次大小。
批次大小 (batch size)
一個批次中的樣本數(shù)。例如,SGD的批次大小為 1,而小批次的大小通常介于 10 到 1000 之間。批次大小在訓練和推斷期間通常是固定的;不過,TensorFlow 允許使用動態(tài)批次大小。
偏差 (bias)
距離原點的截距或偏移。偏差(也稱為偏差項)在機器學習模型中用或表示。例如,在下面的公式中,偏差為:
請勿與預測偏差混淆。
二元分類 (binary classification)
一種分類任務,可輸出兩種互斥類別之一。例如,對電子郵件進行評估并輸出“垃圾郵件”或“非垃圾郵件”的機器學習模型就是一個二元分類器。
分箱 (binning)
請參閱分桶。
分桶 (bucketing)
將一個特征(通常是連續(xù)特征)轉(zhuǎn)換成多個二元特征(稱為桶或箱),通常根據(jù)值區(qū)間進行轉(zhuǎn)換。例如,您可以將溫度區(qū)間分割為離散分箱,而不是將溫度表示成單個連續(xù)的浮點特征。假設溫度數(shù)據(jù)可精確到小數(shù)點后一位,則可以將介于 0.0 到 15.0 度之間的所有溫度都歸入一個分箱,將介于 15.1 到 30.0 度之間的所有溫度歸入第二個分箱,并將介于 30.1 到 50.0 度之間的所有溫度歸入第三個分箱。
C
校準層 (calibration layer)
一種預測后調(diào)整,通常是為了降低預測偏差的影響。調(diào)整后的預測和概率應與觀察到的標簽集的分布一致。
候選采樣 (candidate sampling)
一種訓練時進行的優(yōu)化,會使用某種函數(shù)(例如 softmax)針對所有正類別標簽計算概率,但對于負類別標簽,則僅針對其隨機樣本計算概率。例如,如果某個樣本的標簽為“小獵犬”和“狗”,則候選采樣將針對“小獵犬”和“狗”類別輸出以及其他類別(貓、棒棒糖、柵欄)的隨機子集計算預測概率和相應的損失項。這種采樣基于的想法是,只要正類別始終得到適當?shù)恼鰪?,負類別就可以從頻率較低的負增強中進行學習,這確實是在實際中觀察到的情況。候選采樣的目的是,通過不針對所有負類別計算預測結(jié)果來提高計算效率。
分類數(shù)據(jù) (categorical data)
一種特征,擁有一組離散的可能值。以某個名為house style的分類特征為例,該特征擁有一組離散的可能值(共三個),即Tudor, ranch, colonial。通過將house style表示成分類數(shù)據(jù),相應模型可以學習Tudor、ranch和colonial分別對房價的影響。
有時,離散集中的值是互斥的,只能將其中一個值應用于指定樣本。例如,car maker分類特征可能只允許一個樣本有一個值 (Toyota)。在其他情況下,則可以應用多個值。一輛車可能會被噴涂多種不同的顏色,因此,car color分類特征可能會允許單個樣本具有多個值(例如red和white)。
分類特征有時稱為離散特征。
與數(shù)值數(shù)據(jù)相對。
形心 (centroid)
聚類的中心,由k-means或k-median算法決定。例如,如果 k 為 3,則 k-means 或 k-median 算法會找出 3 個形心。
檢查點 (checkpoint)
一種數(shù)據(jù),用于捕獲模型變量在特定時間的狀態(tài)。借助檢查點,可以導出模型權(quán)重,跨多個會話執(zhí)行訓練,以及使訓練在發(fā)生錯誤之后得以繼續(xù)(例如作業(yè)搶占)。請注意,圖本身不包含在檢查點中。
類別 (class)
為標簽枚舉的一組目標值中的一個。例如,在檢測垃圾郵件的二元分類模型中,兩種類別分別是“垃圾郵件”和“非垃圾郵件”。在識別狗品種的多類別分類模型中,類別可以是“貴賓犬”、“小獵犬”、“哈巴犬”等等。
分類不平衡的數(shù)據(jù)集 (class-imbalanced data set)
一種二元分類問題,在此類問題中,兩種類別的標簽在出現(xiàn)頻率方面具有很大的差距。例如,在某個疾病數(shù)據(jù)集中,0.0001 的樣本具有正類別標簽,0.9999 的樣本具有負類別標簽,這就屬于分類不平衡問題;但在某個足球比賽預測器中,0.51 的樣本的標簽為其中一個球隊贏,0.49 的樣本的標簽為另一個球隊贏,這就不屬于分類不平衡問題。
分類模型 (classification model)
一種機器學習模型,用于區(qū)分兩種或多種離散類別。例如,某個自然語言處理分類模型可以確定輸入的句子是法語、西班牙語還是意大利語。請與回歸模型進行比較。
分類閾值 (classification threshold)
一種標量值條件,應用于模型預測的得分,旨在將正類別與負類別區(qū)分開。將邏輯回歸結(jié)果映射到二元分類時使用。以某個邏輯回歸模型為例,該模型用于確定指定電子郵件是垃圾郵件的概率。如果分類閾值為 0.9,那么邏輯回歸值高于 0.9 的電子郵件將被歸類為“垃圾郵件”,低于 0.9 的則被歸類為“非垃圾郵件”。
聚類 (clustering)
將關聯(lián)的樣本分成一組,一般用于非監(jiān)督式學習。在所有樣本均分組完畢后,相關人員便可選擇性地為每個聚類賦予含義。
聚類算法有很多。例如,k-means 算法會基于樣本與形心的接近程度聚類樣本,如下圖所示:
之后,研究人員便可查看這些聚類并進行其他操作,例如,將聚類 1 標記為“矮型樹”,將聚類 2 標記為“全尺寸樹”。
再舉一個例子,例如基于樣本與中心點距離的聚類算法,如下所示:
協(xié)同過濾 (collaborative filtering)
根據(jù)很多其他用戶的興趣來預測某位用戶的興趣。協(xié)同過濾通常用在推薦系統(tǒng)中。
混淆矩陣 (confusion matrix)
一種 NxN 表格,用于總結(jié)分類模型的預測效果;即標簽和模型預測的分類之間的關聯(lián)。在混淆矩陣中,一個軸表示模型預測的標簽,另一個軸表示實際標簽。N 表示類別個數(shù)。在二元分類問題中,N=2。例如,下面顯示了一個二元分類問題的混淆矩陣示例:
上面的混淆矩陣顯示,在 19 個實際有腫瘤的樣本中,該模型正確地將 18 個歸類為有腫瘤(18 個正例),錯誤地將 1 個歸類為沒有腫瘤(1 個假負例)。同樣,在 458 個實際沒有腫瘤的樣本中,模型歸類正確的有 452 個(452 個負例),歸類錯誤的有 6 個(6 個假正例)。
多類別分類問題的混淆矩陣有助于確定出錯模式。例如,某個混淆矩陣可以揭示,某個經(jīng)過訓練以識別手寫數(shù)字的模型往往會將 4 錯誤地預測為 9,將 7 錯誤地預測為 1。
混淆矩陣包含計算各種效果指標(包括精確率和召回率)所需的充足信息。
連續(xù)特征 (continuous feature)
一種浮點特征,可能值的區(qū)間不受限制。與離散特征相對。
收斂 (convergence)
通俗來說,收斂通常是指在訓練期間達到的一種狀態(tài),即經(jīng)過一定次數(shù)的迭代之后,訓練損失和驗證損失在每次迭代中的變化都非常小或根本沒有變化。也就是說,如果采用當前數(shù)據(jù)進行額外的訓練將無法改進模型,模型即達到收斂狀態(tài)。在深度學習中,損失值有時會在最終下降之前的多次迭代中保持不變或幾乎保持不變,暫時形成收斂的假象。
另請參閱早停法。
另請參閱 Boyd 和 Vandenberghe 合著的 Convex Optimization(《凸優(yōu)化》)。
凸函數(shù) (convex function)
一種函數(shù),函數(shù)圖像以上的區(qū)域為凸集。典型凸函數(shù)的形狀類似于字母U。例如,以下都是凸函數(shù):
相反,以下函數(shù)則不是凸函數(shù)。請注意圖像上方的區(qū)域如何不是凸集:
嚴格凸函數(shù)只有一個局部最低點,該點也是全局最低點。經(jīng)典的 U 形函數(shù)都是嚴格凸函數(shù)。不過,有些凸函數(shù)(例如直線)則不是這樣。
很多常見的損失函數(shù)(包括下列函數(shù))都是凸函數(shù):
L2 損失函數(shù)
對數(shù)損失函數(shù)
L1 正則化
L2 正則化
梯度下降法的很多變體都一定能找到一個接近嚴格凸函數(shù)最小值的點。同樣,隨機梯度下降法的很多變體都有很高的可能性能夠找到接近嚴格凸函數(shù)最小值的點(但并非一定能找到)。
兩個凸函數(shù)的和(例如 L2 損失函數(shù) + L1 正則化)也是凸函數(shù)。
深度模型絕不會是凸函數(shù)。值得注意的是,專門針對凸優(yōu)化設計的算法往往總能在深度網(wǎng)絡上找到非常好的解決方案,雖然這些解決方案并不一定對應于全局最小值。
凸優(yōu)化 (convex optimization)
使用數(shù)學方法(例如梯度下降法)尋找凸函數(shù)最小值的過程。機器學習方面的大量研究都是專注于如何通過公式將各種問題表示成凸優(yōu)化問題,以及如何更高效地解決這些問題。
如需完整的詳細信息,請參閱 Boyd 和 Vandenberghe 合著的 Convex Optimization(《凸優(yōu)化》)。
凸集 (convex set)
歐幾里得空間的一個子集,其中任意兩點之間的連線仍完全落在該子集內(nèi)。例如,下面的兩個圖形都是凸集:
相反,下面的兩個圖形都不是凸集:
卷積 (convolution)
簡單來說,卷積在數(shù)學中指兩個函數(shù)的組合。在機器學習中,卷積結(jié)合使用卷積過濾器和輸入矩陣來訓練權(quán)重。
機器學習中的“卷積”一詞通常是卷積運算或卷積層的簡稱。
如果沒有卷積,機器學習算法就需要學習大張量中每個單元格各自的權(quán)重。例如,用 2K x 2K 圖像訓練的機器學習算法將被迫找出 400 萬個單獨的權(quán)重。而使用卷積,機器學習算法只需在卷積過濾器中找出每個單元格的權(quán)重,大大減少了訓練模型所需的內(nèi)存。在應用卷積過濾器后,它只需跨單元格進行復制,每個單元格都會與過濾器相乘。
卷積過濾器 (convolutional filter)
卷積運算中的兩個參與方之一。(另一個參與方是輸入矩陣切片。)卷積過濾器是一種矩陣,其等級與輸入矩陣相同,但形狀小一些。以 28×28 的輸入矩陣為例,過濾器可以是小于 28×28 的任何二維矩陣。
在圖形操作中,卷積過濾器中的所有單元格通常按照固定模式設置為 1 和 0。在機器學習中,卷積過濾器通常先選擇隨機數(shù)字,然后由網(wǎng)絡訓練出理想值。
卷積層 (convolutional layer)
深度神經(jīng)網(wǎng)絡的一個層,卷積過濾器會在其中傳遞輸入矩陣。以下面的 3x3卷積過濾器為例:
下面的動畫顯示了一個由 9 個卷積運算(涉及 5x5 輸入矩陣)組成的卷積層。請注意,每個卷積運算都涉及一個不同的 3x3 輸入矩陣切片。由此產(chǎn)生的 3×3 矩陣(右側(cè))就包含 9 個卷積運算的結(jié)果:
卷積神經(jīng)網(wǎng)絡 (convolutional neural network)
一種神經(jīng)網(wǎng)絡,其中至少有一層為卷積層。典型的卷積神經(jīng)網(wǎng)絡包含以下幾層的組合:
卷積層
池化層
密集層
卷積神經(jīng)網(wǎng)絡在解決某些類型的問題(如圖像識別)上取得了巨大成功。
卷積運算 (convolutional operation)
如下所示的兩步數(shù)學運算:
對卷積過濾器和輸入矩陣切片執(zhí)行元素級乘法。(輸入矩陣切片與卷積過濾器具有相同的等級和大小。)
對生成的積矩陣中的所有值求和。
以下面的 5x5 輸入矩陣為例:
現(xiàn)在,以下面這個 2x2 卷積過濾器為例:
每個卷積運算都涉及一個 2x2 輸入矩陣切片。例如,假設我們使用輸入矩陣左上角的 2x2 切片。這樣一來,對此切片進行卷積運算將如下所示:
卷積層由一系列卷積運算組成,每個卷積運算都針對不同的輸入矩陣切片。
成本 (cost)
與損失的含義相同。
交叉熵 (cross-entropy)
對數(shù)損失函數(shù)向多類別分類問題的一種泛化。交叉熵可以量化兩種概率分布之間的差異。另請參閱困惑度。
自定義 Estimator (custom Estimator)
您按照這些說明自行編寫的 Estimator。
與預創(chuàng)建的 Estimator 相對。
D
數(shù)據(jù)分析 (data analysis)
根據(jù)樣本、測量結(jié)果和可視化內(nèi)容來理解數(shù)據(jù)。數(shù)據(jù)分析在首次收到數(shù)據(jù)集、構(gòu)建第一個模型之前特別有用。此外,數(shù)據(jù)分析在理解實驗和調(diào)試系統(tǒng)問題方面也至關重要。
DataFrame
一種熱門的數(shù)據(jù)類型,用于表示 Pandas 中的數(shù)據(jù)集。DataFrame 類似于表格。DataFrame 的每一列都有一個名稱(標題),每一行都由一個數(shù)字標識。
數(shù)據(jù)集 (data set)
一組樣本的集合。
一種高級別的 TensorFlow API,用于讀取數(shù)據(jù)并將其轉(zhuǎn)換為機器學習算法所需的格式。tf.data.Dataset對象表示一系列元素,其中每個元素都包含一個或多個張量。tf.data.Iterator對象可獲取Dataset中的元素。
如需詳細了解 Dataset API,請參閱《TensorFlow 編程人員指南》中的導入數(shù)據(jù)。
決策邊界 (decision boundary)
在二元分類或多類別分類問題中,模型學到的類別之間的分界線。例如,在以下表示某個二元分類問題的圖片中,決策邊界是橙色類別和藍色類別之間的分界線:
密集層 (dense layer)
與全連接層的含義相同。
深度模型 (deep model)
一種神經(jīng)網(wǎng)絡,其中包含多個隱藏層。深度模型依賴于可訓練的非線性關系。
與寬度模型相對。
密集特征 (dense feature)
一種大部分值是非零值的特征,通常是浮點值張量。與稀疏特征相對。
設備 (device)
一類可運行 TensorFlow 會話的硬件,包括 CPU、GPU 和 TPU。
離散特征 (discrete feature)
一種特征,包含有限個可能值。例如,某個值只能是“動物”、“蔬菜”或“礦物”的特征便是一個離散特征(或分類特征)。與連續(xù)特征相對。
丟棄正則化 (dropout regularization)
正則化的一種形式,在訓練神經(jīng)網(wǎng)絡方面非常有用。丟棄正則化的運作機制是,在一個梯度步長中移除從神經(jīng)網(wǎng)絡層中隨機選擇的固定數(shù)量的單元。丟棄的單元越多,正則化效果就越強。這類似于訓練神經(jīng)網(wǎng)絡以模擬較小網(wǎng)絡的指數(shù)級規(guī)模集成學習。如需完整的詳細信息,請參閱Dropout: A Simple Way to Prevent Neural Networks from Overfitting(《丟棄:一種防止神經(jīng)網(wǎng)絡過擬合的簡單方法》)。
動態(tài)模型 (dynamic model)
一種模型,以持續(xù)更新的方式在線接受訓練。也就是說,數(shù)據(jù)會源源不斷地進入這種模型。
E
早停法 (early stopping)
一種正則化方法,是指在訓練損失仍可以繼續(xù)降低之前結(jié)束模型訓練。使用早停法時,您會在驗證數(shù)據(jù)集的損失開始增大(也就是泛化效果變差)時結(jié)束模型訓練。
嵌套 (embeddings)
一種分類特征,以連續(xù)值特征表示。通常,嵌套是指將高維度向量映射到低維度的空間。例如,您可以采用以下兩種方式之一來表示英文句子中的單詞:
表示成包含百萬個元素(高維度)的稀疏向量,其中所有元素都是整數(shù)。向量中的每個單元格都表示一個單獨的英文單詞,單元格中的值表示相應單詞在句子中出現(xiàn)的次數(shù)。由于單個英文句子包含的單詞不太可能超過 50 個,因此向量中幾乎每個單元格都包含 0。少數(shù)非 0 的單元格中將包含一個非常小的整數(shù)(通常為 1),該整數(shù)表示相應單詞在句子中出現(xiàn)的次數(shù)。
表示成包含數(shù)百個元素(低維度)的密集向量,其中每個元素都存儲一個介于 0 到 1 之間的浮點值。這就是一種嵌套。
在 TensorFlow 中,會按反向傳播損失訓練嵌套,和訓練神經(jīng)網(wǎng)絡中的任何其他參數(shù)一樣。
經(jīng)驗風險最小化 (ERM, empirical risk minimization)
用于選擇可以將基于訓練集的損失降至最低的函數(shù)。與結(jié)構(gòu)風險最小化相對。
集成學習 (ensemble)
多個模型的預測結(jié)果的并集。您可以通過以下一項或多項來創(chuàng)建集成學習:
不同的初始化
不同的超參數(shù)
不同的整體結(jié)構(gòu)
深度模型和寬度模型屬于一種集成學習。
周期 (epoch)
在訓練時,整個數(shù)據(jù)集的一次完整遍歷,以便不漏掉任何一個樣本。因此,一個周期表示(N/批次大?。┐斡柧毜?,其中N是樣本總數(shù)。
Estimator
tf.Estimator類的一個實例,用于封裝負責構(gòu)建 TensorFlow 圖并運行 TensorFlow 會話的邏輯。您可以創(chuàng)建自定義 Estimator(如需相關介紹,請點擊此處),也可以實例化其他人預創(chuàng)建的 Estimator。
樣本 (example)
數(shù)據(jù)集的一行。一個樣本包含一個或多個特征,此外還可能包含一個標簽。另請參閱有標簽樣本和無標簽樣本。
F
假負例 (FN, false negative)
被模型錯誤地預測為負類別的樣本。例如,模型推斷出某封電子郵件不是垃圾郵件(負類別),但該電子郵件其實是垃圾郵件。
假正例 (FP, false positive)
被模型錯誤地預測為正類別的樣本。例如,模型推斷出某封電子郵件是垃圾郵件(正類別),但該電子郵件其實不是垃圾郵件。
假正例率(false positive rate, 簡稱 FP 率)
ROC 曲線中的 x 軸。FP 率的定義如下:
特征 (feature)
在進行預測時使用的輸入變量。
特征列 (tf.feature_column)
指定模型應該如何解讀特定特征的一種函數(shù)。此類函數(shù)的輸出結(jié)果是所有 Estimators 構(gòu)造函數(shù)的必需參數(shù)。
借助tf.feature_column函數(shù),模型可對輸入特征的不同表示法輕松進行實驗。有關詳情,請參閱《TensorFlow 編程人員指南》中的特征列一章。
“特征列”是 Google 專用的術(shù)語。特征列在 Yahoo/Microsoft 使用的 VW 系統(tǒng)中稱為“命名空間”,也稱為場。
特征組合 (feature cross)
通過將單獨的特征進行組合(求笛卡爾積)而形成的合成特征。特征組合有助于表達非線性關系。
特征工程 (feature engineering)
指以下過程:確定哪些特征可能在訓練模型方面非常有用,然后將日志文件及其他來源的原始數(shù)據(jù)轉(zhuǎn)換為所需的特征。在 TensorFlow 中,特征工程通常是指將原始日志文件條目轉(zhuǎn)換為 tf.Example 協(xié)議緩沖區(qū)。另請參閱 tf.Transform。
特征工程有時稱為特征提取。
特征集 (feature set)
訓練機器學習模型時采用的一組特征。例如,對于某個用于預測房價的模型,郵政編碼、房屋面積以及房屋狀況可以組成一個簡單的特征集。
特征規(guī)范 (feature spec)
用于描述如何從 tf.Example 協(xié)議緩沖區(qū)提取特征數(shù)據(jù)。由于 tf.Example 協(xié)議緩沖區(qū)只是一個數(shù)據(jù)容器,因此您必須指定以下內(nèi)容:
要提取的數(shù)據(jù)(即特征的鍵)
數(shù)據(jù)類型(例如 float 或 int)
長度(固定或可變)
Estimator API 提供了一些可用來根據(jù)給定 FeatureColumns 列表生成特征規(guī)范的工具。
少量樣本學習 (few-shot learning)
一種機器學習方法(通常用于對象分類),旨在僅通過少量訓練樣本學習有效的分類器。
另請參閱單樣本學習。
完整 softmax (full softmax)
請參閱 softmax。與候選采樣相對。
全連接層 (fully connected layer)
一種隱藏層,其中的每個節(jié)點均與下一個隱藏層中的每個節(jié)點相連。
全連接層又稱為密集層。
G
泛化 (generalization)
指的是模型依據(jù)訓練時采用的數(shù)據(jù),針對以前未見過的新數(shù)據(jù)做出正確預測的能力。
廣義線性模型 (generalized linear model)
最小二乘回歸模型(基于高斯噪聲)向其他類型的模型(基于其他類型的噪聲,例如泊松噪聲或分類噪聲)進行的一種泛化。廣義線性模型的示例包括:
邏輯回歸
多類別回歸
最小二乘回歸
可以通過凸優(yōu)化找到廣義線性模型的參數(shù)。
廣義線性模型具有以下特性:
最優(yōu)的最小二乘回歸模型的平均預測結(jié)果等于訓練數(shù)據(jù)的平均標簽。
最優(yōu)的邏輯回歸模型預測的平均概率等于訓練數(shù)據(jù)的平均標簽。
廣義線性模型的功能受其特征的限制。與深度模型不同,廣義線性模型無法“學習新特征”。
梯度 (gradient)
偏導數(shù)相對于所有自變量的向量。在機器學習中,梯度是模型函數(shù)偏導數(shù)的向量。梯度指向最高速上升的方向。
梯度裁剪 (gradient clipping)
在應用梯度值之前先設置其上限。梯度裁剪有助于確保數(shù)值穩(wěn)定性以及防止梯度爆炸。
梯度下降法 (gradient descent)
一種通過計算并且減小梯度將損失降至最低的技術(shù),它以訓練數(shù)據(jù)為條件,來計算損失相對于模型參數(shù)的梯度。通俗來說,梯度下降法以迭代方式調(diào)整參數(shù),逐漸找到權(quán)重和偏差的最佳組合,從而將損失降至最低。
圖 (graph)
TensorFlow 中的一種計算規(guī)范。圖中的節(jié)點表示操作。邊緣具有方向,表示將某項操作的結(jié)果(一個張量)作為一個操作數(shù)傳遞給另一項操作??梢允褂?TensorBoard 直觀呈現(xiàn)圖。
H
啟發(fā)法 (heuristic)
一種非最優(yōu)但實用的問題解決方案,足以用于進行改進或從中學習。
隱藏層 (hidden layer)
神經(jīng)網(wǎng)絡中的合成層,介于輸入層(即特征)和輸出層(即預測)之間。神經(jīng)網(wǎng)絡包含一個或多個隱藏層。
合頁損失函數(shù) (hinge loss)
一系列用于分類的損失函數(shù),旨在找到距離每個訓練樣本都盡可能遠的決策邊界,從而使樣本和邊界之間的裕度最大化。KSVM 使用合頁損失函數(shù)(或相關函數(shù),例如平方合頁損失函數(shù))。對于二元分類,合頁損失函數(shù)的定義如下:
其中“y'”表示分類器模型的原始輸出:
“y”表示真標簽,值為 -1 或 +1。
因此,合頁損失與 (y * y') 的關系圖如下所示:
維持數(shù)據(jù) (holdout data)
訓練期間故意不使用(“維持”)的樣本。驗證數(shù)據(jù)集和測試數(shù)據(jù)集都屬于維持數(shù)據(jù)。維持數(shù)據(jù)有助于評估模型向訓練時所用數(shù)據(jù)之外的數(shù)據(jù)進行泛化的能力。與基于訓練數(shù)據(jù)集的損失相比,基于維持數(shù)據(jù)集的損失有助于更好地估算基于未見過的數(shù)據(jù)集的損失。
超參數(shù) (hyperparameter)
在模型訓練的連續(xù)過程中,您調(diào)節(jié)的“旋鈕”。例如,學習速率就是一種超參數(shù)。
與參數(shù)相對。
超平面 (hyperplane)
將一個空間劃分為兩個子空間的邊界。例如,在二維空間中,直線就是一個超平面,在三維空間中,平面則是一個超平面。在機器學習中更典型的是:超平面是分隔高維度空間的邊界。核支持向量機利用超平面將正類別和負類別區(qū)分開來(通常是在極高維度空間中)。
I
獨立同等分布 (i.i.d, independently and identically distributed)
從不會改變的分布中提取的數(shù)據(jù),其中提取的每個值都不依賴于之前提取的值。i.i.d. 是機器學習的理想氣體 - 一種實用的數(shù)學結(jié)構(gòu),但在現(xiàn)實世界中幾乎從未發(fā)現(xiàn)過。例如,某個網(wǎng)頁的訪問者在短時間內(nèi)的分布可能為 i.i.d.,即分布在該短時間內(nèi)沒有變化,且一位用戶的訪問行為通常與另一位用戶的訪問行為無關。不過,如果將時間窗口擴大,網(wǎng)頁訪問者的分布可能呈現(xiàn)出季節(jié)性變化。
推斷 (inference)
在機器學習中,推斷通常指以下過程:通過將訓練過的模型應用于無標簽樣本來做出預測。在統(tǒng)計學中,推斷是指在某些觀測數(shù)據(jù)條件下擬合分布參數(shù)的過程。(請參閱維基百科中有關統(tǒng)計學推斷的文章。)
輸入函數(shù) (input function)
在 TensorFlow 中,用于將輸入數(shù)據(jù)返回到 Estimator 的訓練、評估或預測方法的函數(shù)。例如,訓練輸入函數(shù)會返回訓練集中的一批特征和標簽。
輸入層 (input layer)
神經(jīng)網(wǎng)絡中的第一層(接收輸入數(shù)據(jù)的層)。
實例 (instance)
與樣本的含義相同。
可解釋性 (interpretability)
模型的預測可解釋的難易程度。深度模型通常不可解釋,也就是說,很難對深度模型的不同層進行解釋。相比之下,線性回歸模型和寬度模型的可解釋性通常要好得多。
評分者間一致性信度 (inter-rater agreement)
一種衡量指標,用于衡量在執(zhí)行某項任務時評分者達成一致的頻率。如果評分者未達成一致,則可能需要改進任務說明。有時也稱為注釋者間一致性信度或評分者間可靠性信度。另請參閱 Cohen's kappa(最熱門的評分者間一致性信度衡量指標之一)。
迭代 (iteration)
模型的權(quán)重在訓練期間的一次更新。迭代包含計算參數(shù)在單批次數(shù)據(jù)上的梯度損失。
K
k-means
一種熱門的聚類算法,用于對非監(jiān)督式學習中的樣本進行分組。k-means 算法基本上會執(zhí)行以下操作:
以迭代方式確定最佳的 k 中心點(稱為形心)。
將每個樣本分配到最近的形心。與同一個形心距離最近的樣本屬于同一個組。
k-means 算法會挑選形心位置,以最大限度地減小每個樣本與其最接近形心之間的距離的累積平方。
以下面的小狗高度與小狗寬度的關系圖為例:
如果 k=3,則 k-means 算法會確定三個形心。每個樣本都被分配到與其最接近的形心,最終產(chǎn)生三個組:
假設制造商想要確定小、中和大號狗毛衣的理想尺寸。在該聚類中,三個形心用于標識每只狗的平均高度和平均寬度。因此,制造商可能應該根據(jù)這三個形心確定毛衣尺寸。請注意,聚類的形心通常不是聚類中的樣本。
上圖顯示了 k-means 應用于僅具有兩個特征(高度和寬度)的樣本。請注意,k-means 可以跨多個特征為樣本分組。
k-median
與 k-means 緊密相關的聚類算法。兩者的實際區(qū)別如下:
對于 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)
一種分類算法,旨在通過將輸入數(shù)據(jù)向量映射到更高維度的空間,來最大化正類別和負類別之間的裕度。以某個輸入數(shù)據(jù)集包含一百個特征的分類問題為例。為了最大化正類別和負類別之間的裕度,KSVM 可以在內(nèi)部將這些特征映射到百萬維度的空間。KSVM 使用合頁損失函數(shù)。
L
L1 損失函數(shù) (L? loss)
一種損失函數(shù),基于模型預測的值與標簽的實際值之差的絕對值。與 L2 損失函數(shù)相比,L1 損失函數(shù)對離群值的敏感性弱一些。
L1 正則化 (L? regularization)
一種正則化,根據(jù)權(quán)重的絕對值的總和來懲罰權(quán)重。在依賴稀疏特征的模型中,L1 正則化有助于使不相關或幾乎不相關的特征的權(quán)重正好為 0,從而將這些特征從模型中移除。與 L2 正則化相對。
L2 損失函數(shù) (L? loss)
請參閱平方損失函數(shù)。
L2 正則化 (L? regularization)
一種正則化,根據(jù)權(quán)重的平方和來懲罰權(quán)重。L2 正則化有助于使離群值(具有較大正值或較小負值)權(quán)重接近于 0,但又不正好為 0。(與 L1 正則化相對。)在線性模型中,L2 正則化始終可以改進泛化。
標簽 (label)
在監(jiān)督式學習中,標簽指樣本的“答案”或“結(jié)果”部分。有標簽數(shù)據(jù)集中的每個樣本都包含一個或多個特征以及一個標簽。例如,在房屋數(shù)據(jù)集中,特征可能包括臥室數(shù)、衛(wèi)生間數(shù)以及房齡,而標簽則可能是房價。在垃圾郵件檢測數(shù)據(jù)集中,特征可能包括主題行、發(fā)件人以及電子郵件本身,而標簽則可能是“垃圾郵件”或“非垃圾郵件”。
有標簽樣本 (labeled example)
包含特征和標簽的樣本。在監(jiān)督式訓練中,模型從有標簽樣本中學習規(guī)律。
lambda
與正則化率的含義相同。
(多含義術(shù)語,我們在此關注的是該術(shù)語在正則化中的定義。)
層 (layer)
神經(jīng)網(wǎng)絡中的一組神經(jīng)元,負責處理一組輸入特征,或一組神經(jīng)元的輸出。
此外還指 TensorFlow 中的抽象層。層是 Python 函數(shù),以張量和配置選項作為輸入,然后生成其他張量作為輸出。當必要的張量組合起來后,用戶便可以通過模型函數(shù)將結(jié)果轉(zhuǎn)換為 Estimator。
Layers API (tf.layers)
一種 TensorFlow API,用于以層組合的方式構(gòu)建深度神經(jīng)網(wǎng)絡。通過 Layers API,您可以構(gòu)建不同類型的層,例如:
通過tf.layers.Dense構(gòu)建全連接層。
通過tf.layers.Conv2D構(gòu)建卷積層。
在編寫自定義 Estimator 時,您可以編寫“層”對象來定義所有隱藏層的特征。
Layers API 遵循 Keras layers API 規(guī)范。也就是說,除了前綴不同以外,Layers API 中的所有函數(shù)均與 Keras layers API 中的對應函數(shù)具有相同的名稱和簽名。
學習速率 (learning rate)
在訓練模型時用于梯度下降的一個標量。在每次迭代期間,梯度下降法都會將學習速率與梯度相乘。得出的乘積稱為梯度步長。
學習速率是一個重要的超參數(shù)。
最小二乘回歸 (least squares regression)
一種通過最小化 L2 損失訓練出的線性回歸模型。
線性回歸 (linear regression)
一種回歸模型,通過將輸入特征進行線性組合輸出連續(xù)值。
邏輯回歸 (logistic regression)
一種模型,通過將 S 型函數(shù)應用于線性預測,生成分類問題中每個可能的離散標簽值的概率。雖然邏輯回歸經(jīng)常用于二元分類問題,但也可用于多類別分類問題(其叫法變?yōu)槎囝悇e邏輯回歸或多項回歸)。
對數(shù) (logits)
分類模型生成的原始(非標準化)預測向量,通常會傳遞給標準化函數(shù)。如果模型要解決多類別分類問題,則對數(shù)通常變成 softmax 函數(shù)的輸入。之后,softmax 函數(shù)會生成一個(標準化)概率向量,對應于每個可能的類別。
此外,對數(shù)有時也稱為 S 型函數(shù)的元素級反函數(shù)。如需了解詳細信息,請參閱 tf.nn.sigmoid_cross_entropy_with_logits。
對數(shù)損失函數(shù) (Log Loss)
二元邏輯回歸中使用的損失函數(shù)。
對數(shù)幾率 (log-odds)
某個事件幾率的對數(shù)。
如果事件涉及二元概率,則幾率指的是成功概率 (p) 與失敗概率 (1-p) 之比。例如,假設某個給定事件的成功概率為 90%,失敗概率為 10%。在這種情況下,幾率的計算公式如下:
簡單來說,對數(shù)幾率即幾率的對數(shù)。按照慣例,“對數(shù)”指自然對數(shù),但對數(shù)的基數(shù)其實可以是任何大于 1 的數(shù)。若遵循慣例,上述示例的對數(shù)幾率應為:
對數(shù)幾率是S 型函數(shù)的反函數(shù)。
損失 (Loss)
一種衡量指標,用于衡量模型的預測偏離其標簽的程度?;蛘吒^地說是衡量模型有多差。要確定此值,模型必須定義損失函數(shù)。例如,線性回歸模型通常將均方誤差用作損失函數(shù),而邏輯回歸模型則使用對數(shù)損失函數(shù)。
M
機器學習 (machine learning)
一種程序或系統(tǒng),用于根據(jù)輸入數(shù)據(jù)構(gòu)建(訓練)預測模型。這種系統(tǒng)會利用學到的模型根據(jù)從分布(訓練該模型時使用的同一分布)中提取的新數(shù)據(jù)(以前從未見過的數(shù)據(jù))進行實用的預測。機器學習還指與這些程序或系統(tǒng)相關的研究領域。
均方誤差 (MSE, Mean Squared Error)
每個樣本的平均平方損失。MSE 的計算方法是平方損失除以樣本數(shù)。TensorFlow Playground 顯示的“訓練損失”值和“測試損失”值都是 MSE。
指標 (metric)
您關心的一個數(shù)值??赡芸梢砸部赡懿豢梢灾苯釉跈C器學習系統(tǒng)中得到優(yōu)化。您的系統(tǒng)嘗試優(yōu)化的指標稱為目標。
Metrics API (tf.metrics)
一種用于評估模型的 TensorFlow API。例如,tf.metrics.accuracy用于確定模型的預測與標簽匹配的頻率。在編寫自定義 Estimator 時,您可以調(diào)用 Metrics API 函數(shù)來指定應如何評估您的模型。
小批次 (mini-batch)
從整批樣本內(nèi)隨機選擇并在訓練或推斷過程的一次迭代中一起運行的一小部分樣本。小批次的批次大小通常介于 10 到 1000 之間。與基于完整的訓練數(shù)據(jù)計算損失相比,基于小批次數(shù)據(jù)計算損失要高效得多。
小批次隨機梯度下降法 (SGD, mini-batch stochastic gradient descent)
一種采用小批次樣本的梯度下降法。也就是說,小批次 SGD 會根據(jù)一小部分訓練數(shù)據(jù)來估算梯度。Vanilla SGD 使用的小批次的大小為 1。
ML
機器學習的縮寫。
模型 (model)
機器學習系統(tǒng)從訓練數(shù)據(jù)學到的內(nèi)容的表示形式。多含義術(shù)語,可以理解為下列兩種相關含義之一:
一種 TensorFlow 圖,用于表示預測的計算結(jié)構(gòu)。
該 TensorFlow 圖的特定權(quán)重和偏差,通過訓練決定。
模型函數(shù) (model function)
Estimator 中的函數(shù),用于實現(xiàn)機器學習訓練、評估和推斷。例如,模型函數(shù)的訓練部分可以處理以下任務:定義深度神經(jīng)網(wǎng)絡的拓撲并確定其優(yōu)化器函數(shù)。如果使用預創(chuàng)建的 Estimator,則有人已為您編寫了模型函數(shù)。如果使用自定義 Estimator,則必須自行編寫模型函數(shù)。
有關編寫模型函數(shù)的詳細信息,請參閱創(chuàng)建自定義 Estimator。
模型訓練 (model training)
確定最佳模型的過程。
動量 (Momentum)
一種先進的梯度下降法,其中學習步長不僅取決于當前步長的導數(shù),還取決于之前一步或多步的步長的導數(shù)。動量涉及計算梯度隨時間而變化的指數(shù)級加權(quán)移動平均值,與物理學中的動量類似。動量有時可以防止學習過程被卡在局部最小的情況。
多類別分類 (multi-class classification)
區(qū)分兩種以上類別的分類問題。例如,楓樹大約有 128 種,因此,確定楓樹種類的模型就屬于多類別模型。反之,僅將電子郵件分為兩類(“垃圾郵件”和“非垃圾郵件”)的模型屬于二元分類模型。
多項分類 (multinomial classification)
與多類別分類的含義相同。
N
NaN 陷阱 (NaN trap)
模型中的一個數(shù)字在訓練期間變成 NaN,這會導致模型中的很多或所有其他數(shù)字最終也會變成 NaN。
NaN 是“非數(shù)字”的縮寫。
負類別 (negative class)
在二元分類中,一種類別稱為正類別,另一種類別稱為負類別。正類別是我們要尋找的類別,負類別則是另一種可能性。例如,在醫(yī)學檢查中,負類別可以是“非腫瘤”。在電子郵件分類器中,負類別可以是“非垃圾郵件”。另請參閱正類別。
神經(jīng)網(wǎng)絡 (neural network)
一種模型,靈感來源于腦部結(jié)構(gòu),由多個層構(gòu)成(至少有一個是隱藏層),每個層都包含簡單相連的單元或神經(jīng)元(具有非線性關系)。
神經(jīng)元 (neuron)
神經(jīng)網(wǎng)絡中的節(jié)點,通常會接收多個輸入值并生成一個輸出值。神經(jīng)元通過將激活函數(shù)(非線性轉(zhuǎn)換)應用于輸入值的加權(quán)和來計算輸出值。
節(jié)點 (node)
多含義術(shù)語,可以理解為下列兩種含義之一:
隱藏層中的神經(jīng)元。
TensorFlow 圖中的操作。
標準化 (normalization)
將實際的值區(qū)間轉(zhuǎn)換為標準的值區(qū)間(通常為 -1 到 +1 或 0 到 1)的過程。例如,假設某個特征的自然區(qū)間是 800 到 6000。通過減法和除法運算,您可以將這些值標準化為位于 -1 到 +1 區(qū)間內(nèi)。
另請參閱縮放。
數(shù)值數(shù)據(jù) (numerical data)
用整數(shù)或?qū)崝?shù)表示的特征。例如,在房地產(chǎn)模型中,您可能會用數(shù)值數(shù)據(jù)表示房子大?。ㄒ云椒接⒊呋蚱椒矫诪閱挝唬?。如果用數(shù)值數(shù)據(jù)表示特征,則可以表明特征的值相互之間具有數(shù)學關系,并且與標簽可能也有數(shù)學關系。例如,如果用數(shù)值數(shù)據(jù)表示房子大小,則可以表明面積為 200 平方米的房子是面積為 100 平方米的房子的兩倍。此外,房子面積的平方米數(shù)可能與房價存在一定的數(shù)學關系。
并非所有整數(shù)數(shù)據(jù)都應表示成數(shù)值數(shù)據(jù)。例如,世界上某些地區(qū)的郵政編碼是整數(shù),但在模型中,不應將整數(shù)郵政編碼表示成數(shù)值數(shù)據(jù)。這是因為郵政編碼20000在效力上并不是郵政編碼 10000 的兩倍(或一半)。此外,雖然不同的郵政編碼確實與不同的房地產(chǎn)價值有關,但我們也不能假設郵政編碼為 20000 的房地產(chǎn)在價值上是郵政編碼為 10000 的房地產(chǎn)的兩倍。郵政編碼應表示成分類數(shù)據(jù)。
數(shù)值特征有時稱為連續(xù)特征。
Numpy
一個開放源代碼數(shù)學庫,在 Python 中提供高效的數(shù)組操作。Pandas 建立在 Numpy 之上。
O
目標 (objective)
算法嘗試優(yōu)化的指標。
離線推斷 (offline inference)
生成一組預測,存儲這些預測,然后根據(jù)需求檢索這些預測。與在線推斷相對。
獨熱編碼 (one-hot encoding)
一種稀疏向量,其中:
一個元素設為 1。
所有其他元素均設為 0。
獨熱編碼常用于表示擁有有限個可能值的字符串或標識符。例如,假設某個指定的植物學數(shù)據(jù)集記錄了 15000 個不同的物種,其中每個物種都用獨一無二的字符串標識符來表示。在特征工程過程中,您可能需要將這些字符串標識符編碼為獨熱向量,向量的大小為 15000。
單樣本學習(one-shot learning,通常用于對象分類)
一種機器學習方法,通常用于對象分類,旨在通過單個訓練樣本學習有效的分類器。
另請參閱少量樣本學習。
一對多 (one-vs.-all)
假設某個分類問題有 N 種可能的解決方案,一對多解決方案將包含 N 個單獨的二元分類器 - 一個二元分類器對應一種可能的結(jié)果。例如,假設某個模型用于區(qū)分樣本屬于動物、蔬菜還是礦物,一對多解決方案將提供下列三個單獨的二元分類器:
動物和非動物
蔬菜和非蔬菜
礦物和非礦物
在線推斷 (online inference)
根據(jù)需求生成預測。與離線推斷相對。
操作 (op, Operation)
TensorFlow 圖中的節(jié)點。在 TensorFlow 中,任何創(chuàng)建、操縱或銷毀張量的過程都屬于操作。例如,矩陣相乘就是一種操作,該操作以兩個張量作為輸入,并生成一個張量作為輸出。
優(yōu)化器 (optimizer)
梯度下降法的一種具體實現(xiàn)。TensorFlow 的優(yōu)化器基類是 tf.train.Optimizer。不同的優(yōu)化器可能會利用以下一個或多個概念來增強梯度下降法在指定訓練集中的效果:
動量 (Momentum)
更新頻率(AdaGrad = ADAptive GRADient descent;Adam = ADAptive with Momentum;RMSProp)
稀疏性/正則化 (Ftrl)
更復雜的數(shù)學方法(Proximal,等等)
甚至還包括 NN 驅(qū)動的優(yōu)化器。
離群值 (outlier)
與大多數(shù)其他值差別很大的值。在機器學習中,下列所有值都是離群值。
絕對值很高的權(quán)重。
與實際值相差很大的預測值。
值比平均值高大約 3 個標準偏差的輸入數(shù)據(jù)。
離群值常常會導致模型訓練出現(xiàn)問題。
輸出層 (output layer)
神經(jīng)網(wǎng)絡的“最后”一層,也是包含答案的層。
過擬合 (overfitting)
創(chuàng)建的模型與訓練數(shù)據(jù)過于匹配,以致于模型無法根據(jù)新數(shù)據(jù)做出正確的預測。
P
Pandas
面向列的數(shù)據(jù)分析 API。很多機器學習框架(包括 TensorFlow)都支持將 Pandas 數(shù)據(jù)結(jié)構(gòu)作為輸入。請參閱 Pandas 文檔。
參數(shù) (parameter)
機器學習系統(tǒng)自行訓練的模型的變量。例如,權(quán)重就是一種參數(shù),它們的值是機器學習系統(tǒng)通過連續(xù)的訓練迭代逐漸學習到的。與超參數(shù)相對。
參數(shù)服務器 (PS, Parameter Server)
一種作業(yè),負責在分布式設置中跟蹤模型參數(shù)。
參數(shù)更新 (parameter update)
在訓練期間(通常是在梯度下降法的單次迭代中)調(diào)整模型參數(shù)的操作。
偏導數(shù) (partial derivative)
一種導數(shù),除一個變量之外的所有變量都被視為常量。例如,f(x, y) 對 x 的偏導數(shù)就是 f(x) 的導數(shù)(即,使 y 保持恒定)。f 對 x 的偏導數(shù)僅關注 x 如何變化,而忽略公式中的所有其他變量。
劃分策略 (partitioning strategy)
在參數(shù)服務器間分割變量的算法。
性能 (performance)
多含義術(shù)語,具有以下含義:
在軟件工程中的傳統(tǒng)含義。即:相應軟件的運行速度有多快(或有多高效)?
在機器學習中的含義。在機器學習領域,性能旨在回答以下問題:相應模型的準確度有多高?即模型在預測方面的表現(xiàn)有多好?
困惑度 (perplexity)
一種衡量指標,用于衡量模型能夠多好地完成任務。例如,假設任務是讀取用戶使用智能手機鍵盤輸入字詞時輸入的前幾個字母,然后列出一組可能的完整字詞。此任務的困惑度 (P) 是:為了使列出的字詞中包含用戶嘗試輸入的實際字詞,您需要提供的猜測項的個數(shù)。
困惑度與交叉熵的關系如下:
流水線 (pipeline)
機器學習算法的基礎架構(gòu)。流水線包括收集數(shù)據(jù)、將數(shù)據(jù)放入訓練數(shù)據(jù)文件、訓練一個或多個模型,以及將模型導出到生產(chǎn)環(huán)境。
池化 (pooling)
將一個或多個由前趨的**卷積層**創(chuàng)建的矩陣壓縮為較小的矩陣。池化通常是取整個池化區(qū)域的最大值或平均值。以下面的 3x3 矩陣為例:
池化運算與卷積運算類似:將矩陣分割為多個切片,然后按步長逐個運行卷積運算。例如,假設池化運算按 1x1 步長將卷積矩陣分割為 2x2 個切片。如下圖所示,進行了四個池化運算。假設每個池化運算都選擇該切片中四個值的最大值:
池化有助于在輸入矩陣中實現(xiàn)平移不變性。
對于視覺應用來說,池化的更正式名稱為空間池化。時間序列應用通常將池化稱為時序池化。按照不太正式的說法,池化通常稱為下采樣或降采樣。
正類別 (positive class)
在二元分類中,兩種可能的類別分別被標記為正類別和負類別。正類別結(jié)果是我們要測試的對象。(不可否認的是,我們會同時測試這兩種結(jié)果,但只關注正類別結(jié)果。)例如,在醫(yī)學檢查中,正類別可以是“腫瘤”。在電子郵件分類器中,正類別可以是“垃圾郵件”。
與負類別相對。
精確率 (precision)
一種分類模型指標。精確率指模型正確預測正類別的頻率,即:
精確率正例數(shù)正例數(shù)假正例數(shù)
預測 (prediction)
模型在收到輸入樣本后的輸出。
預測偏差 (prediction bias)
一種值,用于表明預測平均值與數(shù)據(jù)集中標簽的平均值相差有多大。
預創(chuàng)建的 Estimator (pre-made Estimator)
其他人已建好的 Estimator。TensorFlow 提供了一些預創(chuàng)建的 Estimator,包括DNNClassifier、DNNRegressor和LinearClassifier。您可以按照這些說明構(gòu)建自己預創(chuàng)建的 Estimator。
預訓練模型 (pre-trained model)
已經(jīng)過訓練的模型或模型組件(例如嵌套)。有時,您需要將預訓練的嵌套饋送到神經(jīng)網(wǎng)絡。在其他時候,您的模型將自行訓練嵌套,而不依賴于預訓練的嵌套。
先驗信念 (prior belief)
在開始采用相應數(shù)據(jù)進行訓練之前,您對這些數(shù)據(jù)抱有的信念。例如,L2 正則化依賴的先驗信念是權(quán)重應該很小且應以 0 為中心呈正態(tài)分布。
Q
隊列 (queue)
一種 TensorFlow 操作,用于實現(xiàn)隊列數(shù)據(jù)結(jié)構(gòu)。通常用于 I/O 中。
R
等級 (rank)
機器學習中的一個多含義術(shù)語,可以理解為下列含義之一:
張量中的維數(shù)。例如,標量等級為 0,向量等級為 1,矩陣等級為 2。
在將類別從最高到最低進行排序的機器學習問題中,類別的順序位置。例如,行為排序系統(tǒng)可以將狗狗的獎勵從最高(牛排)到最低(枯萎的羽衣甘藍)進行排序。
評分者 (rater)
為樣本提供標簽的人。有時稱為“注釋者”。
召回率 (recall)
一種分類模型指標,用于回答以下問題:在所有可能的正類別標簽中,模型正確地識別出了多少個?即:
修正線性單元 (ReLU, Rectified Linear Unit)
一種激活函數(shù),其規(guī)則如下:
如果輸入為負數(shù)或 0,則輸出 0。
如果輸入為正數(shù),則輸出等于輸入。
回歸模型 (regression model)
一種模型,能夠輸出連續(xù)的值(通常為浮點值)。請與分類模型進行比較,分類模型會輸出離散值,例如“黃花菜”或“虎皮百合”。
正則化 (regularization)
對模型復雜度的懲罰。正則化有助于防止出現(xiàn)過擬合,包含以下類型:
L1 正則化
L2 正則化
丟棄正則化
早停法(這不是正式的正則化方法,但可以有效限制過擬合)
正則化率 (regularization rate)
一種標量值,以 lambda 表示,用于指定正則化函數(shù)的相對重要性。從下面簡化的損失公式中可以看出正則化率的影響:
最小化損失方程正則化方程
提高正則化率可以減少過擬合,但可能會使模型的準確率降低。
表示法 (representation)
將數(shù)據(jù)映射到實用特征的過程。
受試者工作特征曲線(receiver operating characteristic,簡稱 ROC 曲線)
不同分類閾值下的正例率和假正例率構(gòu)成的曲線。另請參閱曲線下面積。
根目錄 (root directory)
您指定的目錄,用于托管多個模型的 TensorFlow 檢查點和事件文件的子目錄。
均方根誤差 (RMSE, Root Mean Squared Error)
均方誤差的平方根。
旋轉(zhuǎn)不變性 (rotational invariance)
在圖像分類問題中,即使圖像的方向發(fā)生變化,算法也能成功地對圖像進行分類。例如,無論網(wǎng)球拍朝上、側(cè)向還是朝下放置,該算法仍然可以識別它。請注意,并非總是希望旋轉(zhuǎn)不變;例如,倒置的“9”不應分類為“9”。
另請參閱平移不變性和大小不變性。
S
SavedModel
保存和恢復 TensorFlow 模型時建議使用的格式。SavedModel 是一種獨立于語言且可恢復的序列化格式,使較高級別的系統(tǒng)和工具可以創(chuàng)建、使用和轉(zhuǎn)換 TensorFlow 模型。
如需完整的詳細信息,請參閱《TensorFlow 編程人員指南》中的保存和恢復。
Saver
一種 TensorFlow 對象,負責保存模型檢查點。
縮放 (scaling)
特征工程中的一種常用做法,是指對某個特征的值區(qū)間進行調(diào)整,使之與數(shù)據(jù)集中其他特征的值區(qū)間一致。例如,假設您希望數(shù)據(jù)集中所有浮點特征的值都位于 0 到 1 區(qū)間內(nèi),如果某個特征的值位于 0 到 500 區(qū)間內(nèi),您就可以通過將每個值除以 500 來縮放該特征。
另請參閱標準化。
scikit-learn
一個熱門的開放源代碼機器學習平臺。請訪問 www.scikit-learn.org。
半監(jiān)督式學習 (semi-supervised learning)
訓練模型時采用的數(shù)據(jù)中,某些訓練樣本有標簽,而其他樣本則沒有標簽。半監(jiān)督式學習采用的一種技術(shù)是推斷無標簽樣本的標簽,然后使用推斷出的標簽進行訓練,以創(chuàng)建新模型。如果獲得有標簽樣本需要高昂的成本,而無標簽樣本則有很多,那么半監(jiān)督式學習將非常有用。
序列模型 (sequence model)
一種模型,其輸入具有序列依賴性。例如,根據(jù)之前觀看過的一系列視頻對觀看的下一個視頻進行預測。
會話 (tf.session)
封裝了 TensorFlow 運行時狀態(tài)的對象,用于運行全部或部分**圖**。在使用底層 TensorFlow API 時,您可以直接創(chuàng)建并管理一個或多個tf.session對象。在使用 Estimator API 時,Estimator 會為您創(chuàng)建會話對象。
S 型函數(shù) (sigmoid function)
一種函數(shù),可將邏輯回歸輸出或多項回歸輸出(對數(shù)幾率)映射到概率,以返回介于 0 到 1 之間的值。S 型函數(shù)的公式如下:
在邏輯回歸問題中, 非常簡單:
換句話說,S 型函數(shù)可將轉(zhuǎn)換為介于 0 到 1 之間的概率。
在某些神經(jīng)網(wǎng)絡中,S 型函數(shù)可作為激活函數(shù)使用。
大小不變性 (size invariance)
在圖像分類問題中,即使圖像的大小發(fā)生變化,算法也能成功地對圖像進行分類。例如,無論一只貓以 200 萬像素還是 20 萬像素呈現(xiàn),該算法仍然可以識別它。請注意,即使是最好的圖像分類算法,在大小不變性方面仍然會存在切實的限制。例如,對于僅以 20 像素呈現(xiàn)的貓圖像,算法(或人)不可能正確對其進行分類。
另請參閱平移不變性和旋轉(zhuǎn)不變性。
softmax
一種函數(shù),可提供多類別分類模型中每個可能類別的概率。這些概率的總和正好為 1.0。例如,softmax 可能會得出某個圖像是狗、貓和馬的概率分別是 0.9、0.08 和 0.02。(也稱為完整 softmax。)
與候選采樣相對。
稀疏特征 (sparse feature)
一種特征向量,其中的大多數(shù)值都為 0 或為空。例如,某個向量包含一個為 1 的值和一百萬個為 0 的值,則該向量就屬于稀疏向量。再舉一個例子,搜索查詢中的單詞也可能屬于稀疏特征 - 在某種指定語言中有很多可能的單詞,但在某個指定的查詢中僅包含其中幾個。
與密集特征相對。
稀疏表示法 (sparse representation)
一種張量表示法,僅存儲非零元素。
例如,英語中包含約一百萬個單詞。表示一個英語句子中所用單詞的數(shù)量,考慮以下兩種方式:
要采用密集表示法來表示此句子,則必須為所有一百萬個單元格設置一個整數(shù),然后在大部分單元格中放入 0,在少數(shù)單元格中放入一個非常小的整數(shù)。
要采用稀疏表示法來表示此句子,則僅存儲象征句子中實際存在的單詞的單元格。因此,如果句子只包含 20 個獨一無二的單詞,那么該句子的稀疏表示法將僅在 20 個單元格中存儲一個整數(shù)。
例如,假設以兩種方式來表示句子“Dogs wag tails.”。如下表所示,密集表示法將使用約一百萬個單元格;稀疏表示法則只使用 3 個單元格:
稀疏性 (sparsity)
向量或矩陣中設置為 0(或空)的元素數(shù)除以該向量或矩陣中的條目總數(shù)。以一個 10x10 矩陣(其中 98 個單元格都包含 0)為例。稀疏性的計算方法如下:
特征稀疏性是指特征向量的稀疏性;模型稀疏性是指模型權(quán)重的稀疏性。
空間池化 (spatial pooling)
請參閱池化。
平方合頁損失函數(shù) (squared hinge loss)
合頁損失函數(shù)的平方。與常規(guī)合頁損失函數(shù)相比,平方合頁損失函數(shù)對離群值的懲罰更嚴厲。
平方損失函數(shù) (squared loss)
在線性回歸中使用的損失函數(shù)(也稱為 L2 損失函數(shù))。該函數(shù)可計算模型為有標簽樣本預測的值和標簽的實際值之差的平方。由于取平方值,因此該損失函數(shù)會放大不佳預測的影響。也就是說,與 L1 損失函數(shù)相比,平方損失函數(shù)對離群值的反應更強烈。
靜態(tài)模型 (static model)
離線訓練的一種模型。
平穩(wěn)性 (stationarity)
數(shù)據(jù)集中數(shù)據(jù)的一種屬性,表示數(shù)據(jù)分布在一個或多個維度保持不變。這種維度最常見的是時間,即表明平穩(wěn)性的數(shù)據(jù)不隨時間而變化。例如,從 9 月到 12 月,表明平穩(wěn)性的數(shù)據(jù)沒有發(fā)生變化。
步 (step)
對一個批次的向前和向后評估。
步長 (step size)
與學習速率的含義相同。
隨機梯度下降法 (SGD, stochastic gradient descent)
批次大小為 1 的一種梯度下降法。換句話說,SGD 依賴于從數(shù)據(jù)集中隨機均勻選擇的單個樣本來計算每步的梯度估算值。
結(jié)構(gòu)風險最小化 (SRM, structural risk minimization)
一種算法,用于平衡以下兩個目標:
期望構(gòu)建最具預測性的模型(例如損失最低)。
期望使模型盡可能簡單(例如強大的正則化)。
例如,旨在將基于訓練集的損失和正則化降至最低的函數(shù)就是一種結(jié)構(gòu)風險最小化算法。
如需更多信息,請參閱 http://www.svms.org/srm/。
與經(jīng)驗風險最小化相對。
步長 (stride)
在卷積運算或池化中,下一個系列的輸入切片的每個維度中的增量。例如,下面的動畫演示了卷積運算過程中的一個 (1,1) 步長。因此,下一個輸入切片是從上一個輸入切片向右移動一個步長的位置開始。當運算到達右側(cè)邊緣時,下一個切片將回到最左邊,但是下移一個位置。
前面的示例演示了一個二維步長。如果輸入矩陣為三維,那么步長也將是三維。
下采樣 (subsampling)
請參閱池化。
總結(jié) (summary)
在 TensorFlow 中的某一步計算出的一個值或一組值,通常用于在訓練期間跟蹤模型指標。
監(jiān)督式機器學習 (supervised machine learning)
根據(jù)輸入數(shù)據(jù)及其對應的標簽來訓練模型。監(jiān)督式機器學習類似于學生通過研究一系列問題及其對應的答案來學習某個主題。在掌握了問題和答案之間的對應關系后,學生便可以回答關于同一主題的新問題(以前從未見過的問題)。請與非監(jiān)督式機器學習進行比較。
合成特征 (synthetic feature)
一種特征,不在輸入特征之列,而是從一個或多個輸入特征衍生而來。合成特征包括以下類型:
對連續(xù)特征進行分桶,以分為多個區(qū)間分箱。
將一個特征值與其他特征值或其本身相乘(或相除)。
創(chuàng)建一個特征組合。
僅通過標準化或縮放創(chuàng)建的特征不屬于合成特征。
T
目標 (target)
與標簽的含義相同。
時態(tài)數(shù)據(jù) (temporal data)
在不同時間點記錄的數(shù)據(jù)。例如,記錄的一年中每一天的冬外套銷量就屬于時態(tài)數(shù)據(jù)。
張量 (Tensor)
TensorFlow 程序中的主要數(shù)據(jù)結(jié)構(gòu)。張量是 N 維(其中 N 可能非常大)數(shù)據(jù)結(jié)構(gòu),最常見的是標量、向量或矩陣。張量的元素可以包含整數(shù)值、浮點值或字符串值。
張量處理單元 (TPU, Tensor Processing Unit)
一種 ASIC(應用專用集成電路),用于優(yōu)化 TensorFlow 程序的性能。
張量等級 (Tensor rank)
請參閱等級。
張量形狀 (Tensor shape)
張量在各種維度中包含的元素數(shù)。例如,張量 [5, 10] 在一個維度中的形狀為 5,在另一個維度中的形狀為 10。
張量大小 (Tensor size)
張量包含的標量總數(shù)。例如,張量 [5, 10] 的大小為 50。
TensorBoard
一個信息中心,用于顯示在執(zhí)行一個或多個 TensorFlow 程序期間保存的摘要信息。
TensorFlow
一個大型的分布式機器學習平臺。該術(shù)語還指 TensorFlow 堆棧中的基本 API 層,該層支持對數(shù)據(jù)流圖進行一般計算。
雖然 TensorFlow 主要應用于機器學習領域,但也可用于需要使用數(shù)據(jù)流圖進行數(shù)值計算的非機器學習任務。
TensorFlow Playground
一款用于直觀呈現(xiàn)不同的超參數(shù)對模型(主要是神經(jīng)網(wǎng)絡)訓練的影響的程序。要試用 TensorFlow Playground,請前往 http://playground.tensorflow.org。
TensorFlow Serving
一個平臺,用于將訓練過的模型部署到生產(chǎn)環(huán)境。
測試集 (test set)
數(shù)據(jù)集的子集,用于在模型經(jīng)由驗證集的初步驗證之后測試模型。
與訓練集和驗證集相對。
tf.Example
一種標準協(xié)議緩沖區(qū),旨在描述用于機器學習模型訓練或推斷的輸入數(shù)據(jù)。
時間序列分析 (time series analysis)
機器學習和統(tǒng)計學的一個子領域,旨在分析時態(tài)數(shù)據(jù)。很多類型的機器學習問題都需要時間序列分析,其中包括分類、聚類、預測和異常檢測。例如,您可以利用時間序列分析根據(jù)歷史銷量數(shù)據(jù)預測未來每月的冬外套銷量。
訓練 (training)
確定構(gòu)成模型的理想?yún)?shù)的過程。
訓練集 (training set)
數(shù)據(jù)集的子集,用于訓練模型。
與驗證集和測試集相對。
遷移學習 (transfer learning)
將信息從一個機器學習任務遷移到另一個機器學習任務。例如,在多任務學習中,一個模型可以完成多項任務,例如針對不同任務具有不同輸出節(jié)點的深度模型。遷移學習可能涉及將知識從較簡單任務的解決方案遷移到較復雜的任務,或者將知識從數(shù)據(jù)較多的任務遷移到數(shù)據(jù)較少的任務。
大多數(shù)機器學習系統(tǒng)都只能完成一項任務。遷移學習是邁向人工智能的一小步;在人工智能中,單個程序可以完成多項任務。
平移不變性 (translational invariance)
在圖像分類問題中,即使圖像中對象的位置發(fā)生變化,算法也能成功對圖像進行分類。例如,無論一只狗位于畫面正中央還是畫面左側(cè),該算法仍然可以識別它。
另請參閱大小不變性和旋轉(zhuǎn)不變性。
負例 (TN, true negative)
被模型正確地預測為負類別的樣本。例如,模型推斷出某封電子郵件不是垃圾郵件,而該電子郵件確實不是垃圾郵件。
正例 (TP, true positive)
被模型正確地預測為正類別的樣本。例如,模型推斷出某封電子郵件是垃圾郵件,而該電子郵件確實是垃圾郵件。
正例率(true positive rate, 簡稱 TP 率)
與召回率的含義相同,即:
正例率正例數(shù)正例數(shù)假負例數(shù)
正例率是 ROC 曲線的 y 軸。
U
無標簽樣本 (unlabeled example)
包含特征但沒有標簽的樣本。無標簽樣本是用于進行推斷的輸入內(nèi)容。在半監(jiān)督式和非監(jiān)督式學習中,在訓練期間會使用無標簽樣本。
非監(jiān)督式機器學習 (unsupervised machine learning)
訓練模型,以找出數(shù)據(jù)集(通常是無標簽數(shù)據(jù)集)中的規(guī)律。
非監(jiān)督式機器學習最常見的用途是將數(shù)據(jù)分為不同的聚類,使相似的樣本位于同一組中。例如,非監(jiān)督式機器學習算法可以根據(jù)音樂的各種屬性將歌曲分為不同的聚類。
所得聚類可以作為其他機器學習算法(例如音樂推薦服務)的輸入。在很難獲取真標簽的領域,聚類可能會非常有用。例如,在反濫用和反欺詐等領域,聚類有助于人們更好地了解相關數(shù)據(jù)。
非監(jiān)督式機器學習的另一個例子是主成分分析 (PCA)。例如,通過對包含數(shù)百萬購物車中物品的數(shù)據(jù)集進行主成分分析,可能會發(fā)現(xiàn)有檸檬的購物車中往往也有抗酸藥。
請與監(jiān)督式機器學習進行比較。
V
驗證集 (validation set)
數(shù)據(jù)集的一個子集,從訓練集分離而來,用于調(diào)整超參數(shù)。
與訓練集和測試集相對。
W
權(quán)重 (weight)
線性模型中特征的系數(shù),或深度網(wǎng)絡中的邊。訓練線性模型的目標是確定每個特征的理想權(quán)重。如果權(quán)重為 0,則相應的特征對模型來說沒有任何貢獻。
寬度模型 (wide model)
一種線性模型,通常有很多稀疏輸入特征。我們之所以稱之為“寬度模型”,是因為這是一種特殊類型的神經(jīng)網(wǎng)絡,其大量輸入均直接與輸出節(jié)點相連。與深度模型相比,寬度模型通常更易于調(diào)試和檢查。雖然寬度模型無法通過隱藏層來表示非線性關系,但可以利用特征組合、分桶等轉(zhuǎn)換以不同的方式為非線性關系建模。
與深度模型相對。
審核編輯 :李倩
-
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4772瀏覽量
100845 -
函數(shù)
+關注
關注
3文章
4333瀏覽量
62696 -
機器學習
+關注
關注
66文章
8422瀏覽量
132723 -
數(shù)據(jù)集
+關注
關注
4文章
1208瀏覽量
24725
原文標題:機器學習常用術(shù)語匯總,中英對照!
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論