Функция активации сигмоиды: тип данных ValueError не является неточным / RuntimeWarning: переполнение обнаружено в exp - PullRequest
1 голос
/ 03 апреля 2019

Я столкнулся с "RuntimeWarning: переполнение обнаружено в exp" при реализации Sigmoid в моем коде.

Я попытался решить эту проблему с помощью этого решения sigmoid RuntimeWarning: переполнение, обнаруженное в exp .Тем не менее, теперь возникает новая ошибка в условии if.

Вот код, который я пробовал:

class Sigmoid:
    @staticmethod
    def activation(x):
        if -x > np.log(np.finfo(type(x)).max):
            return 0.0
        a = np.exp(-x)
        return 1.0 / (1.0 + a)

Так возникает эта ошибка:

File "/MyPathCode/", line 14 in activation
   if -x > np.log(np.finfo(type(x)).max):
File "/home/UserName/.local/lib/python3.6/site-packages/numpy/core/getlimits.py", line 381, in __new__
    raise ValueError("data type %r not inexact" % (dtype))
ValueError: data type <class 'numpy.object_'> not inexact
...