次の方法で共有


SmoothedHingeLoss クラス

定義

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

public sealed class SmoothedHingeLoss : Microsoft.ML.Trainers.ILossFunction<float,float>, Microsoft.ML.Trainers.ISupportSdcaClassificationLoss
type SmoothedHingeLoss = class
    interface ISupportSdcaClassificationLoss
    interface ISupportSdcaLoss
    interface IScalarLoss
    interface ILossFunction<single, single>
    interface IClassificationLoss
Public NotInheritable Class SmoothedHingeLoss
Implements ILossFunction(Of Single, Single), ISupportSdcaClassificationLoss
継承
SmoothedHingeLoss
実装

注釈

$f(\hat{y}, y) = 1 - y\hat{y}$ にします。ここで、$\hat{y}$ は予測スコア、$y \{-1, 1\}$ は真のラベルです。 $f(\hat{y}, y)$ は ヒンジ損失のゼロ以外の部分です。

この計算で使用されるラベルは、使用されるラベルが 0 と 1 である Log Loss とは異なり、-1 と 1 であることに注意してください。 また、 ログ損失とは異なり、$\hat{y}$ は未加工の予測スコアであり、予測された確率ではありません (予測されたスコアに シグモイド関数 を適用することによって計算されます)。

次に、Smoothed Hinge Loss 関数は次のように定義されます。

$ L(f(\hat{y}, y)) = \begin{cases} 0 & \text{if } f(\hat{y}, y) < 0 \\ \frac{(f(\hat{y}, y))^2}{2\alpha} & \text{if } f(\hat{y}, y) < \alpha \\f(\hat{y}, y) - \frac{\alpha}{2} & \text{otherwise} \end{cases} $

ここで、$\alpha$ は既定で 1 に設定されたスムージング パラメーターです。

コンストラクター

SmoothedHingeLoss(Single)

滑らかにされたヒンジの損失のコンストラクター。

メソッド

ComputeDualUpdateInvariant(Single)

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

Derivative(Single, Single)

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

DualLoss(Single, Single)

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

DualUpdate(Single, Single, Single, Single, Int32)

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

Loss(Single, Single)

分類タスクでよく使用される、スムーズなバージョン HingeLoss の関数。

適用対象