語言

SdcaNonCalibratedMulticlassTrainer 類別

定義

用IEstimator<TTransformer> 線性多類別分類器來預測目標。 訓練好的模型 LinearMulticlassModelParameters 產生類別的機率。

public sealed class SdcaNonCalibratedMulticlassTrainer : Microsoft.ML.Trainers.SdcaMulticlassTrainerBase<Microsoft.ML.Trainers.LinearMulticlassModelParameters>
type SdcaNonCalibratedMulticlassTrainer = class
    inherit SdcaMulticlassTrainerBase<LinearMulticlassModelParameters>
Public NotInheritable Class SdcaNonCalibratedMulticlassTrainer
Inherits SdcaMulticlassTrainerBase(Of LinearMulticlassModelParameters)
繼承

備註

要建立這個訓練器,請使用 SdcaMaximumEntropy 或 SdcaMaximumEntropy(Options)。

輸入與輸出欄位

輸入標籤欄位資料必須是 鍵 型別,特徵欄位必須是已知大小的 Single向量。

此訓練器會輸出下列欄位:

輸出數據行名稱 欄類型 Description
Score Single 向量 所有班級的分數。 較高的值表示較高的機率會落入相關聯的類別。 若第 i 個元素值最大,預測標籤索引為 i。 請注意,i 是以零為基礎的指標。
PredictedLabel 金鑰 類型 預測標籤的索引。 若其值為 i,實際標籤將是鍵值輸入標籤類型中的第 i 個類別。

訓練師特性

機器學習任務 多類別分類
需要正規化嗎? Yes
快取是必須的嗎? No
除了 Microsoft.ML 之外,必須使用 NuGet None
可匯出至 ONNX Yes

計分功能

此方法訓練線性模型以解決多類別分類問題。 假設類別數量為$m$,特徵數量為$n$。 它為第 $c$ 類分配係數向量 $\textbf{w}_c \in {\mathbb R}^n$ 以及偏向 $b_c \in {\mathbb R}$,當 $c=1,\dots,m$。 給定特徵向量 $\textbf{x} \in {\mathbb R}^n$,$c$ 第 級的分數為 $\hat{y}^c = \textbf{w}_c^T \textbf{x} + b_c$。 請注意,輸出分數欄中的第 $c$ 值僅為 $\hat{y}^c$。

訓練演算法細節

請參閱 SdcaMulticlassTrainerBase 的文件。

請參考「參見」區塊,裡面有使用範例的連結。

欄位

名稱 Description
FeatureColumn

訓練師期待的特色欄。

(繼承來源 TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

訓練師期望的標籤欄。 可以是 null,表示該標籤不用於訓練。

(繼承來源 TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

訓練師預期的體重欄。 可以是 null,表示訓練時不使用重量。

(繼承來源 TrainerEstimatorBase<TTransformer,TModel>)

屬性

名稱 Description
Info

用IEstimator<TTransformer> 線性多類別分類器來預測目標。 訓練好的模型 LinearMulticlassModelParameters 產生類別的機率。

(繼承來源 StochasticTrainerBase<TTransformer,TModel>)

方法

名稱 Description
Fit(IDataView)

訓練並返回 ITransformer。

(繼承來源 TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

用IEstimator<TTransformer> 線性多類別分類器來預測目標。 訓練好的模型 LinearMulticlassModelParameters 產生類別的機率。

(繼承來源 TrainerEstimatorBase<TTransformer,TModel>)

擴充方法

名稱 Description
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

在估計鏈中附加一個「快取檢查點」。 這將確保下游估計器能針對快取資料進行訓練。 在訓練師接受多次資料通行前設置快取檢查點會很有幫助。

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

給定一個估計器,回傳一個包裹物件,該物件會呼叫一次 Fit(IDataView) 代理。 估計器通常回傳擬合的資訊很重要,因此該 Fit(IDataView) 方法回傳一個特定型別的物件,而非一般 ITransformer的 。 然而,同時, IEstimator<TTransformer> 通常會被組成包含許多物件的管線,因此我們可能需要建立一條估計鏈,將 EstimatorChain<TLastTransformer> 我們想要取得變壓器的估計器埋藏在這條鏈的某處。 在這種情況下,我們可以透過此方法附加一個代理,當 fit 被呼叫時會被呼叫。

適用於

另請參閱