我在使用用户定义的Sigmoid函数(Logistic)时有一个疑问。我尝试使用numpy.exp和math.exp来计算Sigmoid公式(1 / 1+ e^-x)
。
1 / (1 + numpy.exp(-x))1 / (1 + math.exp(-x))
这两种方法在x = -80.96151181531121时都得到了值6.900207837141513e-36。但是,我们期望得到一个在0到1之间的值。我是不是遗漏了什么?
回答:
6.900207837141513e-36是科学记数法表示的0.00…06900207837141513(我省略了13个零)
你可以将其读作“6.900…除以10的36次方”。在这种情况下,你可能可以将这个值视为0。
参见 https://en.wikipedia.org/wiki/Scientific_notation#E_notation