Сигмовидная шкала и обратный с настраиваемым диапазоном - PullRequest
0 голосов
/ 24 октября 2018

У меня есть мозговой блок, который выясняет, как масштабировать переменную в пределах настраиваемого диапазона с помощью Sigmoid, а затем инвертировать это масштабирование.

Например, приведенный ниже скрипт Python масштабирует переменную x между 0 и top, а затем инвертирует это масштабирование.

import math

# apply Sigmoid to x on scale between 0 and top:
def sigmoid(x, top):
    y = top / (1 + math.exp(-x))
    return y

# and to inverse:
def invSigmoid(y, top):
    x = np.log(y/(top-y))
    return x

То, что я хотел бы сделать, это также установить нижнюю часть так, чтобы x масштабировался между нижней верхней частью, например (10-100).Тогда также, чтобы получить обратное.

1 Ответ

0 голосов
/ 24 октября 2018

мне кажется, что вы хотите, чтобы быть:

y = bottom + (top - bottom) / (1 + math.exp(-x))

и

x = np.log((y - bottom) / (top - y))
...