hi, i have a semi - multi label problem
my specific problem is a bit different from a classic multi-label problem
i  want  to minimize my loss when the prediction is correct in only one class (or more)
i  have a costume loss for my problem:
def new_loss_function(p, y, b):
    eps = 0.000000000000000000000000001
    losses = 0
    k = len(y[0])
    ones = torch.ones(1, 1).expand(b, k).cuda()
    loss1 = -((ones-y)*(((ones-p)+(eps)).log())).sum(dim=1)
    prod = (ones-y)*k - y*((p+ eps).log())
    loss2 = torch.min(prod, dim=1)[0]
    losses = (loss1 + loss2).sum()
    return losses / b

it means, if the model was right in one class:
label = [1,1,0,0,1]
predication = [1,0,0,0,0]
in my case this is a success
im not sure how to calculate the accuracy of the model in that case