29

我目前正在用java编写一个模糊逻辑库。我找到了所有标准函数的方程——坡度、逆坡度、三角形、梯形、高斯。但是,我找不到 sigmoid/逻辑函数的倒数。

我编写逻辑函数的方式是java:

//f(x) = 1/(1+e(-x))
public double logistic(double x){

   return (1/(1+(Math.exp(-x)));

}

但是我无法在任何地方解决或找到逆。我的代数/微积分能力相当有限,因此我无法计算出函数的倒数。

任何提示或指示都会有很大帮助。

谢谢

4

2 回答 2

47

如果

y = 1/(1+exp(-x))

然后

x = ln(y/(1-y))
于 2012-04-10T23:40:49.580 回答
6

只需完成以下步骤:

y = 1/(1 + exp(-x))

1 + exp(-x) = 1/y

exp(-x) = 1/y - 1

exp(-x) = 1/y - y/y

exp(-x) = (1 - y)/y

ln(exp(-x)) = ln((1 - y)/y)

-x = ln((1 - y)/y)

x = -ln((1 - y)/y)

x = ln(y/(1 - y))
于 2021-06-22T16:09:04.020 回答