What is the best way to modify the soft-max function to give highest probability on the smallest value in a list?

Viewed 204

I tried to first scale and multiply the values in the list by -1 that coverts the minimum to a maximum. In the code revsoftMax(data_) function returns the maximum probability for the minimum value. However, exponential functions are less sensitive in the negative region. Thus, I am looking for more effective solutions.

def revsoftMax(data_):
    data = [-x/max(data_) for x in data_]
    return softMax(data)

def softMax(data):
    exp_data = [math.exp(x) for x in data]
    probability = [x/sum(exp_data) for x in exp_data]
    return np.array(probability)
1 Answers
Related