loss: Weighted loss functions

Description Usage Arguments Details

View source: R/loss.R

Description

Weighted loss functions

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
loss(name = c("l1", "l2", "huber", "threshold", "insensitive", "percentile"),
  ...)

l1loss()

l2loss()

huberloss(epsilon)

thresholdloss(epsilon = sqrt(.Machine$double.eps))

insensitiveloss(epsilon)

percloss(alpha)

Arguments

epsilon

threshold parameter.

x

vector of target values.

y

vector of predictions.

w

optional weight parameter.

Details

The loss functions in this package are defined as following:

threshold L0 loss

L0 = |x-y| <= ε

L1 loss

L1 = |x-y|

L2 loss

L2 = (x-y)^2

ε-insensitive loss

Lε = [if |x-y| <= ε: ] 0 [else:] |x-y| - ε

Huber loss

Lδ = [if |x-y| <= δ: ] 1/2 * (x-y)^2 [else:] δ*(|x-y| - δ/2)

Percentile loss

Lα = α * (x-y) * I(x-y ≥ 0) - (1-α) * (x-y) * I(x-y < 0)

The whole-data weighted loss functions are defined in terms of x and y vectors, as sum(loss(x, y) * w).


twolodzko/twextras documentation built on May 3, 2019, 1:52 p.m.