【发布时间】:2026-02-04 01:45:01
【问题描述】:
def sigmoid(z):
# complete the code
z = np.asarray(z)
if z.ndim == 0:
return(1/(1+np.exp(-z)))
else:
d = np.array([])
for item in z:
d= np.append(d,1/(1+np.exp(-item)))
return d
打印(sigmoid([(1,3), (4,30)]))
为什么返回[ 0.73105858 0.95257413 0.98201379 1. ]
因为函数从 0 绑定到 1
例如[q= 1/1+np.exp(-30)][1] 返回 1.0000000000000935
为什么会发生这种情况以及如何纠正它? 例如image of a weird looking output
【问题讨论】:
-
仅供参考:逻辑 Sigmoid 函数在 SciPy 中实现为
scipy.special.expit。
标签: python numpy machine-learning floating-point logistic-regression