Я получаю эту ошибку для сигмоидальной функции
RuntimeWarning: overflow encountered in exp
return 1 / (1 + np.exp(-s))
def sigmoid(s):
return 1 / (1 + np.exp(-s))
Я пытался исправить ее следующим образом, вдохновленный этим ответом:
def sigmoid(s):
s = s.astype(np.float128)
min_value = np.finfo(s.dtype).min
max_value = np.finfo(s.dtype).max
s[s == np.NINF] = min_value
s[s == np.inf] = max_value
return 1 / (1 + np.exp(-s))
Но это не эффект, и я все еще получаю ту же ошибку, почему это так? Спасибо