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) $ 是 铰链损失的非零部分。

请注意,此计算中使用的标签为 -1 和 1,这与 Log Loss 不同,其中使用的标签为 0 和 1。 与 对数损失不同,$\hat{y}$ 是原始预测分数,而不是预测概率 (通过将 sigmoid 函数 应用于预测分数) 计算得出的。

然后,平滑铰链损失函数定义为:

$ 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 平滑版本,通常用于分类任务。

适用于