Skip to contents

J = -(1/m) sum_i sum_k y_ik log p_ik, evaluated from shifted logits so the log is never taken of an underflowed probability. Y is either a vector of 0-based class labels or an (m, K) matrix of row distributions.

Usage

morie_geron_cross_entropy_cost(X, Y, theta)

Arguments

X

(m, d) design.

Y

Labels or (m, K) targets.

theta

(d, K) coefficients.

Value

List with cost, probabilities, log_probabilities, per_sample_cost, scores, accuracy, chance_cost, n_classes, estimate, n.

Examples

morie_geron_cross_entropy_cost(X = 5L, Y = 5L, theta = c(1, 2, 3, 4, 5, 6, 7, 8))
#> $cost
#> [1] 10.00676
#> 
#> $probabilities
#>              [,1]         [,2]         [,3]         [,4]         [,5]
#> [1,] 6.262633e-16 9.294572e-14 1.379437e-11 2.047266e-09 3.038412e-07
#>              [,6]        [,7]      [,8]
#> [1,] 4.509403e-05 0.006692547 0.9932621
#> 
#> $log_probabilities
#>           [,1]      [,2]      [,3]      [,4]      [,5]      [,6]      [,7]
#> [1,] -35.00676 -30.00676 -25.00676 -20.00676 -15.00676 -10.00676 -5.006761
#>              [,8]
#> [1,] -0.006760749
#> 
#> $per_sample_cost
#> [1] 10.00676
#> 
#> $scores
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    5   10   15   20   25   30   35   40
#> 
#> $accuracy
#> [1] 0
#> 
#> $chance_cost
#> [1] 2.079442
#> 
#> $n_classes
#> [1] 8
#> 
#> $estimate
#> [1] 10.00676
#> 
#> $n
#> [1] 1
#> 
#> $method
#> [1] "softmax cross-entropy J = -(1/m) sum_i sum_k y_ik log p_ik"
#>