GamRegressionTrainer 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
, IEstimator<TTransformer> 用於使用一般化加法模型來定型回歸模型, (GAM) 。
public sealed class GamRegressionTrainer : Microsoft.ML.Trainers.FastTree.GamTrainerBase<Microsoft.ML.Trainers.FastTree.GamRegressionTrainer.Options,Microsoft.ML.Data.RegressionPredictionTransformer<Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>,Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>
type GamRegressionTrainer = class
inherit GamTrainerBase<GamRegressionTrainer.Options, RegressionPredictionTransformer<GamRegressionModelParameters>, GamRegressionModelParameters>
Public NotInheritable Class GamRegressionTrainer
Inherits GamTrainerBase(Of GamRegressionTrainer.Options, RegressionPredictionTransformer(Of GamRegressionModelParameters), GamRegressionModelParameters)
- 繼承
-
TrainerEstimatorBase<TTransformer,TPredictor>GamTrainerBase<GamRegressionTrainer.Options,RegressionPredictionTransformer<GamRegressionModelParameters>,GamRegressionModelParameters>GamRegressionTrainer
備註
若要建立此定型器,請使用 Gam 或 Gam (Options) 。
輸入和輸出資料行
輸入標籤資料行資料必須是 Single。 輸入特徵資料行資料必須是 的已知大小向量 Single 。
此定型器會輸出下列資料行:
輸出資料行名稱 | 資料行類型 | 描述 |
---|---|---|
Score |
Single | 模型所預測的未系結分數。 |
定型器特性
機器學習工作 | 迴歸 |
是否需要正規化? | 否 |
是否需要快取? | 否 |
除了 Microsoft.ML 之外,還需要 NuGet | Microsoft.ML.FastTree |
可匯出至 ONNX | 否 |
定型演算法詳細資料
一般化加法模型或 GAM 會將資料模型模型化為與線性模型類似的一組線性獨立特徵。 針對每個功能,GAM 定型器會學習稱為「圖形函式」的非線性函式,其會將回應計算為特徵值的函式。 (相反地,線性模型符合線性回應 (,例如每個功能的線條) 。) 為了評分輸入,會加總所有圖形函式的輸出,而分數是總值。
此 GAM 定型器是使用淺層漸層提升樹狀結構來實作 (,例如樹狀結構 stumps) 來學習非參數圖形函式,並以 Lou、Caruana 和 Gehrke 中所述的方法為基礎。 「適用于分類和回歸的 Intelligible 模型」。 KDD'12, China, China. 2012. 定型之後,會新增攔截來代表定型集的平均預測,而圖形函式會正規化以代表平均預測的偏差。 這會導致只要檢查攔截和圖形函式即可輕鬆解譯的模型。 如需如何定型 GAM 模型並檢查和解譯結果的範例,請參閱下列範例。
如需使用方式範例的連結,請參閱另請參閱一節。
欄位
FeatureColumn |
定型器預期的功能資料行。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
定型器預期的標籤資料行。 可以是 |
WeightColumn |
定型器預期的加權資料行。 可以是 |
屬性
Info |
, IEstimator<TTransformer> 用於使用一般化加法模型來定型回歸模型, (GAM) 。 (繼承來源 GamTrainerBase<TOptions,TTransformer,TPredictor>) |
方法
Fit(IDataView, IDataView) |
GamRegressionTrainer使用定型和驗證資料來定型 , 會 RegressionPredictionTransformer<TModel> 傳回 。 |
Fit(IDataView) |
定型並傳 ITransformer 回 。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
, IEstimator<TTransformer> 用於使用一般化加法模型來定型回歸模型, (GAM) 。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
擴充方法
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
將「快取檢查點」附加至估算器鏈結。 這可確保下游估算器會針對快取的資料定型。 在接受多個資料通過的定型器之前,先有快取檢查點會很有説明。 |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
指定估算器時,傳回包裝物件,一旦 Fit(IDataView) 呼叫委派即可。 估算器通常務必傳回符合專案的相關資訊,這就是 Fit(IDataView) 方法傳回特定型別物件的原因,而不是只傳回一般 ITransformer 。 不過,同時, IEstimator<TTransformer> 通常會形成具有許多物件的管線,因此我們可能需要透過建置估算器的鏈結,而我們想要取得轉換器的估算器 EstimatorChain<TLastTransformer> 會在此鏈結的某處放置。 在該案例中,我們可以透過這個方法附加呼叫一次會呼叫的委派。 |