GamRegressionTrainer クラス

定義

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)
継承

注釈

このトレーナーを作成するには、 Gam または Gam(Options)を使用します

入力列と出力列

入力ラベル列データは Single にする必要があります。 入力特徴列データは、既知のサイズの Singleベクターである必要があります。

このトレーナーからは、以下の列が出力されます。

出力列の名前 列の型 説明
Score Single モデルによって予測された無制限のスコア。

トレーナーの特性

機械学習タスク 回帰
正規化は必要ですか? いいえ
キャッシュは必要ですか? いいえ
Microsoft.ML に加えて必要な NuGet Microsoft.ML.FastTree
ONNX にエクスポート可能 いいえ

トレーニング アルゴリズムの詳細

一般化された加法モデル (GAM) は、線形モデルと同様に、線形に独立した特徴のセットとしてデータをモデル化します。 GAM トレーナーは、特徴ごとに、特徴の値の関数として応答を計算する、"図形関数" と呼ばれる非線形関数を学習します。 (これに対し、線形モデルは、各フィーチャに線形応答 (線など) を適合します)。 入力をスコア付けするために、すべての図形関数の出力が合計され、スコアが合計値になります。

この GAM トレーナーは、浅い勾配ブースティング ツリー (木の切り株など) を使用してノンパラメーターシェイプ関数を学習するために実装され、ルー、カルアナ、および Gehrke で説明されている方法に基づいています。 "分類と回帰の理解可能なモデル" KDD'12、北京、中国。 2012. トレーニング後、トレーニング セットの平均予測を表すインターセプトが追加され、図形関数は平均予測からの偏差を表すために正規化されます。 これにより、インターセプトと図形関数を検査するだけで簡単に解釈できるモデルが得られます。 GAM モデルをトレーニングし、結果を検査して解釈する方法の例については、以下のサンプルを参照してください。

使用法の例へのリンクについては、「関連項目」セクションを参照してください。

フィールド

FeatureColumn

トレーナーが期待する特徴列。

(継承元 TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

トレーナーが期待するラベル列。 を指定できます null。これは、ラベルがトレーニングに使用されていないことを示します。

(継承元 TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

トレーナーが期待する重み列。 は null、トレーニングに重みが使用されていないことを示します。

(継承元 TrainerEstimatorBase<TTransformer,TModel>)

プロパティ

Info

IEstimator<TTransformer>一般化加法モデル (GAM) を使用して回帰モデルをトレーニングするためのものです。

(継承元 GamTrainerBase<TOptions,TTransformer,TPredictor>)

メソッド

Fit(IDataView)

をトレーニングして返します ITransformer

(継承元 TrainerEstimatorBase<TTransformer,TModel>)
Fit(IDataView, IDataView)

トレーニングデータと検証データの GamRegressionTrainer 両方を使用してトレーニングを行い、 RegressionPredictionTransformer<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> 、推定器のチェーンを構築する必要がある場合があります。 このシナリオでは、このメソッドを使用して、fit が呼び出されると呼び出されるデリゲートをアタッチできます。

適用対象

こちらもご覧ください