我对使用用户定义的Sigmoid函数(逻辑)存有疑问。我尝试将numpy.exp和math.exp用于S型公式(1 / 1+ e^-x)
。
1 / (1 + numpy.exp(-x))
1 / (1 + math.exp(-x))
两种方法都给出x值= -80.96151181531121的值6.900207837141513e-36。 但是,我们期望一个介于0和1之间的值。 我想念什么吗?
我对使用用户定义的Sigmoid函数(逻辑)存有疑问。我尝试将numpy.exp和math.exp用于S型公式(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
,>>> 6.900207837141513e-36 > 0
True
,
请注意e-36
末尾的6.900207837141513e-36
。这等效于scientific notation 6.900207837141513 * 10^-36
。换句话说,它是一个很小的值,基本上为零。