SdcaMaximumEntropyMulticlassTrainer クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
最大エントロピ多クラス分類子を使用してターゲットを予測する IEstimator<TTransformer> 。 トレーニング済みのモデル MaximumEntropyModelParameters では、クラスの確率が生成されます。
public sealed class SdcaMaximumEntropyMulticlassTrainer : Microsoft.ML.Trainers.SdcaMulticlassTrainerBase<Microsoft.ML.Trainers.MaximumEntropyModelParameters>
type SdcaMaximumEntropyMulticlassTrainer = class
inherit SdcaMulticlassTrainerBase<MaximumEntropyModelParameters>
Public NotInheritable Class SdcaMaximumEntropyMulticlassTrainer
Inherits SdcaMulticlassTrainerBase(Of MaximumEntropyModelParameters)
- 継承
-
SdcaTrainerBase<SdcaMulticlassTrainerBase<TModel>.MulticlassOptions,MulticlassPredictionTransformer<TModel>,TModel>SdcaMaximumEntropyMulticlassTrainer
注釈
このトレーナーを作成するには、 SdcaMaximumEntropy または SdcaMaximumEntropy(Options)を使用します。
入力列と出力列
入力ラベル列のデータは キー 型である必要があり、特徴列は Singleの既知のサイズのベクターである必要があります。
このトレーナーは、次の列を出力します。
| [出力列の名前] | 列の種類 | 説明 |
|---|---|---|
Score |
Single のベクトル | すべてのクラスのスコア。 値が大きいほど、関連するクラスに分類される確率が高いことを意味します。 i 番目の要素の値が最も大きい場合、予測されるラベル インデックスは i になります。 i は 0 から始まるインデックスであることに注意してください。 |
PredictedLabel |
キーの種類 | 予測ラベルのインデックス。 値が i の場合、実際のラベルは、キー値入力ラベル型の i 番目のカテゴリになります。 |
トレーナーの特性
| 機械学習タスク | 多クラス分類 |
| 正規化は必要ですか? | Yes |
| キャッシュは必要ですか? | No |
| Microsoft.ML に加えて必要な NuGet | なし |
| ONNX にエクスポート可能 | Yes |
スコアリング関数
これにより、多クラス分類の問題を解決するための線形モデルがトレーニングされます。 クラスの数が $m$ であり、特徴の数が $n$ であるとします。 $c$-th クラスに係数ベクトル $\textbf{w}_c \in {\mathbb R}^n$ とバイアス $b_c \in {\mathbb R}$ を割り当てます($c=1,\dots,m$)。 機能ベクトル $\textbf{x} \in {\mathbb R}^n$ を指定すると、$c$番目のクラスのスコアは $\tilde{P}(c | \textbf{x}) = \frac{ e^{\hat{y}^c} }{ \sum_{c' = 1}^m e^{\hat{y}^{c'}}}$, where $\hat{y}^c = \textbf{w}_c^T \textbf{x} + b_c$ です。 $\tilde{P}(c | \textbf{x})$ は、特徴ベクトルが $\textbf{x}$ の場合にクラス $c$ を観測する確率であることに注意してください。
トレーニング アルゴリズムの詳細
SdcaMulticlassTrainerBase のドキュメントを参照してください。
使用例へのリンクについては、「関連項目」セクションを参照してください。
フィールド
| 名前 | 説明 |
|---|---|
| FeatureColumn |
トレーナーが期待する特徴列。 (継承元 TrainerEstimatorBase<TTransformer,TModel>) |
| LabelColumn |
トレーナーが期待するラベル列。
|
| WeightColumn |
トレーナーが期待する重み列。
|
プロパティ
| 名前 | 説明 |
|---|---|
| Info |
最大エントロピ多クラス分類子を使用してターゲットを予測する IEstimator<TTransformer> 。 トレーニング済みのモデル MaximumEntropyModelParameters では、クラスの確率が生成されます。 (継承元 StochasticTrainerBase<TTransformer,TModel>) |
メソッド
| 名前 | 説明 |
|---|---|
| Fit(IDataView) |
ITransformerをトレーニングして返します。 (継承元 TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
最大エントロピ多クラス分類子を使用してターゲットを予測する IEstimator<TTransformer> 。 トレーニング済みのモデル MaximumEntropyModelParameters では、クラスの確率が生成されます。 (継承元 TrainerEstimatorBase<TTransformer,TModel>) |
拡張メソッド
| 名前 | 説明 |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
推定チェーンに "キャッシュ チェックポイント" を追加します。 これにより、ダウンストリーム推定器がキャッシュされたデータに対してトレーニングされるようになります。 複数のデータを受け取るトレーナーの前にキャッシュ チェックポイントを設定すると便利です。 |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
推定器が指定された場合は、 Fit(IDataView) が呼び出されるとデリゲートを呼び出すラップ オブジェクトを返します。 多くの場合、推定器が適合した内容に関する情報を返すことが重要です。そのため、 Fit(IDataView) メソッドは一般的な ITransformerではなく、明示的に型指定されたオブジェクトを返します。 ただし、同時に、 IEstimator<TTransformer> は多くのオブジェクトを含むパイプラインに形成されることが多いため、トランスフォーマーを取得する推定器がこのチェーンのどこかに埋もれている EstimatorChain<TLastTransformer> を使用して、推定器のチェーンを構築する必要がある場合があります。 このシナリオでは、このメソッドを使用して、fit が呼び出されると呼び出されるデリゲートをアタッチできます。 |
適用対象
こちらもご覧ください
- SdcaMaximumEntropyMulticlassTrainer.Options
- SdcaMaximumEntropy(MulticlassClassificationCatalog+MulticlassClassificationTrainers, SdcaMaximumEntropyMulticlassTrainer+Options)
- SdcaMaximumEntropy(MulticlassClassificationCatalog+MulticlassClassificationTrainers, String, String, String, Nullable<Single>, Nullable<Single>, Nullable<Int32>)