資料轉換

資料轉換用來:

  • 準備資料以進行模型定型
  • 以 TensorFlow 或 ONNX 格式套用匯入的模型
  • 在資料傳遞過模型之後進行後續處理

本指南中的轉換會傳回能實作 IEstimator 介面的類別。 資料轉換可以鏈結在一起。 每個轉換都會預期和產生特定類型及格式的資料,其已詳述於連結的參考文件中。

某些資料轉換需要定型資料以計算其參數。 例如:NormalizeMeanVariance 轉換器會在 Fit() 作業期間計算定型資料的平均數和變異數,並將那些參數用於 Transform() 作業。

其他資料轉換並不需要定型資料。 例如:ConvertToGrayscale 轉換可以在無須於 Fit() 作業期間查看任何定型資料的情況下執行 Transform() 作業。

資料行對應及群組

轉換 定義 ONNX 可匯出
Concatenate 將一或多個輸入資料行串連成新的輸出資料行 Yes
CopyColumns 複製並重新命名一或多個輸入資料行 Yes
DropColumns 卸除一或多個輸入資料行 Yes
SelectColumns 選取一或多個資料行以將其自輸入資料中排除 Yes

標準化和調整

轉換 定義 ONNX 可匯出
NormalizeMeanVariance 減去 (定型資料的) 平均數並除以 (定型資料的) 變異數 Yes
NormalizeLogMeanVariance 依定型資料的對數進行標準化 Yes
NormalizeLpNorm 依據輸入向量的 lp-norm 來對它進行調整,其中 p 為 1、2 或無限。 預設為 l2 (歐幾里得距離) 範數 Yes
NormalizeGlobalContrast 透過減去資料列資料的平均數並除以標準差或 (資料列資料的) l2 範數,並乘以可設定的比例因素 (預設為 2),來調整資料列中的每個值 Yes
NormalizeBinning 將輸入值指派至 bin 目錄並除以 bin 的數目,以產生介於 0 與 1 的浮點值。 系統會以能將定型資料平均分散到所有 bin 上的方式計算 bin 界線 Yes
NormalizeSupervisedBinning 根據 bin 與標籤資料行的關聯性將輸入值指派至該 bin Yes
NormalizeMinMax 依定型資料中最小及最大值之間的差異來調整輸入 Yes
NormalizeRobustScaling 使用可靠的極端值統計資料來調整每個值,這些極端值會將資料集中在 0 附近,並根據分位數範圍調整資料。 Yes

資料類型之間的轉換

轉換 定義 ONNX 可匯出
ConvertType 將某個輸入資料行的類型轉換成新的類型 Yes
MapValue 根據所提供的對應字典將值對應至索引鍵 (類別) No
MapValueToKey 透過從輸入資料建立對應來將值對應至索引鍵 (類別) Yes
MapKeyToValue 將索引鍵轉換為其原始值 Yes
MapKeyToVector 將索引鍵轉換為原始值的向量 Yes
MapKeyToBinaryVector 將索引鍵轉換為原始值的二進位向量 No
Hash 對輸入資料行中的值進行雜湊處理 Yes

文字轉換

轉換 定義 ONNX 可匯出
FeaturizeText 將文字資料行轉換為標準化 ngram 和 char-gram 計數的浮動陣列 No
TokenizeIntoWords 將一或多個文字資料行分割為個別字詞 Yes
TokenizeIntoCharactersAsKeys 將一或多個文字資料行分割為於一組主題上的個別字元浮點數 Yes
NormalizeText 變更大小寫,移除變音符號、標點符號及數字 Yes
ProduceNgrams 將文字資料行轉換為一袋 ngram 計數 (連續字詞的序列) Yes
ProduceWordBags 將文字資料行轉換為一袋 ngram 向量計數 Yes
ProduceHashedNgrams 將文字資料行轉換為雜湊 ngram 計數的向量 No
ProduceHashedWordBags 將文字資料行轉換為一袋雜湊 ngram 計數 Yes
RemoveDefaultStopWords 從輸入資料行針對指定語言移除預設停用字詞 Yes
RemoveStopWords 從輸入資料行移除指定停用字詞 Yes
LatentDirichletAllocation 將文件 (以浮點數向量表示) 轉換為一組主題上的浮點數向量 Yes
ApplyWordEmbedding 使用預先定型的模型將文字權杖的向量轉換成句子向量 Yes

影像轉換

轉換 定義 ONNX 可匯出
ConvertToGrayscale 將影像轉換為灰階 No
ConvertToImage 將像素的向量轉換為 ImageDataViewType No
ExtractPixels 將來自輸入影像的像素轉換為數字向量 No
LoadImages 從資料夾將影像載入記憶體 No
LoadRawImageBytes 將原始位元組的影像載入新資料行中。 No
ResizeImages 調整影像大小 No
DnnFeaturizeImage 套用預先定型的深度神經網路 (DNN) 模型,將輸入影像轉換成特徵向量 No

類別資料轉換

轉換 定義 ONNX 可匯出
OneHotEncoding 將一或多個文字資料行轉換為 one-hot \(英文\) 編碼向量 Yes
OneHotHashEncoding 將一或多個文字資料行轉換為以雜湊為基礎的 one-hot 編碼向量 No

時間序列資料轉換

轉換 定義 ONNX 可匯出
DetectAnomalyBySrCnn 使用光譜殘留 (SR) 演算法偵測輸入時間序列資料中的異常 No
DetectChangePointBySsa 使用單一頻譜分析 (SSA) 偵測時間序列資料中的變更點 No
DetectIidChangePoint 使用彈性核心密度估計和鞅分數,偵測獨立和相同分散式 (IID) 時間序列資料中的變更點 No
ForecastBySsa 使用單一頻譜分析 (SSA) 預測時間序列資料 No
DetectSpikeBySsa 使用單一頻譜分析 (SSA) 偵測時間序列資料中的尖峰 No
DetectIidSpike 使用彈性核心密度估計和鞅分數,偵測獨立和相同分散式 (IID) 時間序列資料中的尖峰 No
DetectEntireAnomalyBySrCnn 使用 SRCNN 演算法偵測整個輸入資料的異常。 No
DetectSeasonality 使用傅立葉分析來偵測季節性。 No
LocalizeRootCause 使用決策樹演算法,從時間序列輸入中找出根本原因。 No
LocalizeRootCauses 從時間序列輸入中找出根本原因。 No

遺漏值

轉換 定義 ONNX 可匯出
IndicateMissingValues 建立新的布林值輸出資料行,其值在輸入資料行中的值遺失時為 true Yes
ReplaceMissingValues 建立新的輸出資料行,其值在輸入資料行中的值遺失時會被設為預設值,否則則會為輸入值 Yes

特徵選取

轉換 定義 ONNX 可匯出
SelectFeaturesBasedOnCount 選取其非預設值大於某個閾值的特徵 Yes
SelectFeaturesBasedOnMutualInformation 選取其標籤資料行中的資料最具相依性的特徵 Yes

功能轉換

轉換 定義 ONNX 可匯出
ApproximatedKernelMap 將每個輸入向量對應至較低維度的功能空間,其中內部產品會近似核心函式,以便可以將功能當作線性演算法的輸入使用 No
ProjectToPrincipalComponents 套用主體元件分析演算法,以減少輸入特徵向量的維度

可解釋性轉換

轉換 定義 ONNX 可匯出
CalculateFeatureContribution 為特徵向量的每個元素計算貢獻分數 No

校正轉換

轉換 定義 ONNX 可匯出
Platt(String, String, String) 使用羅吉斯回歸搭配使用定型資料估計的參數,將二元分類器原始分數轉換成類別機率 Yes
Platt(Double, Double, String) 使用羅吉斯回歸搭配固定參數,將二元分類器原始分數轉換成類別機率 Yes
Naive 藉由將分數指派給 Bin,並根據各 Bin 間的分佈計算機率,將二元分類器原始分數轉換成類別機率 Yes
Isotonic 藉由將分數指派給 Bin 來將二元分類器原始分數轉換成類別機率,其中會使用定型資料來估計界限的位置和 Bin 的大小 No

深度學習轉換

轉換 定義 ONNX 可匯出
ApplyOnnxModel 使用匯入的 ONNX 模型轉換輸入資料 No
LoadTensorFlowModel 使用匯入的 TensorFlow 模型轉換輸入資料 No

自訂轉換

轉換 定義 ONNX 可匯出
FilterByCustomPredicate 捨棄指定的述詞傳回 true 的資料列。 No
FilterByStatefulCustomPredicate 捨棄指定的述詞傳回 true 的資料列,但允許指定的狀態。 No
CustomMapping 搭配使用者定義的對應將現有資料行轉換為新的資料行 No
Expression 套用運算式以將資料行轉換成新的 No