Skip to content
DeepForgeby svx
All problems
MediumML Fundamentalsml-328

Effective Number Class Weights

Problem

Compute class-balanced weights from the effective number of samples: raw weight (1 - beta) / (1 - beta^count) per class, then divide every raw weight by the smallest one. Return a dict mapping str(label) to weight; empty input returns {}. Assume 0 <= beta < 1.

Hint

The effective number saturates as a class grows, so rare classes keep a larger weight.

Test cases

case 1
in: [["a","a","a","b","b","c"],0.9]
expected: {"a":1,"b":1.4263157894736842,"c":2.7099999999999995}
case 2
in: [[0,0,1,1,1,1],0]
expected: {"0":1,"1":1}
case 3
in: [["x"],0.5]
expected: {"x":1}
case 4
in: [[],0.9]
expected: {}
Starter codePython
def effective_number_weights(labels, beta):
    # Your code here
    pass

4 test cases · run your code against them in the editor