相关疑难解决方法(0)

'double_scalars'警告中遇到的无效值,可能是numpy

当我运行我的代码时,我会偶尔以四个为一组获得这些警告.我试图通过在某些语句之前和之后放置调试消息来定位源,以确定其原点.

Warning: invalid value encountered in double_scalars
Warning: invalid value encountered in double_scalars
Warning: invalid value encountered in double_scalars
Warning: invalid value encountered in double_scalars
Run Code Online (Sandbox Code Playgroud)

这是一个Numpy警告,什么是双标量?

从Numpy我用

min(), argmin(), mean() and random.randn()
Run Code Online (Sandbox Code Playgroud)

我也使用Matplotlib

python warnings numpy matplotlib

60
推荐指数
4
解决办法
15万
查看次数

double_scalars 中遇到的溢出除了被零除还有哪些原因?

我读过双标量,但只是部分理解。根据我的理解,这是Numpy可以计算的范围。这就是为什么这里的大多数问题都集中在除以零上(这是一个错误,因为答案将超出范围(无穷大))。

但我不确定我的理解是否正确。另外,我看不到有关RuntimeWarning:overflow在 double_scalars 中遇到的其他原因。什么会导致双标量中遇到溢出?

python numpy

14
推荐指数
2
解决办法
7万
查看次数

如何避免 numpy.exp() 中的溢出

我在堆栈溢出上读了很多,但我仍然不明白如何避免溢出错误。我正在构建一个使用sigmoid 函数的神经网络。但如果不进行转换或找到这些错误的解决方法,我就无法继续下去。

def activation(x):
    return  1/(1+np.exp(-x))

  def dactivation(x):
    return  activation(x)*(1-activation(x))


  def propagateb(self, target, lrate=8.1, momentum=0.1):
        deltas = []
        error = target - self.layers[-1]
        delta = error*dactivation(self.layers[-1])
        deltas.append(delta)
        for i in range(len(self.shape)-2,0,-1):
            delta =np.dot(deltas[0],self.weights[i].T)*dactivation(self.layers[i])
            deltas.insert(0,delta)
        for i in range(len(self.weights)):
            layer = np.atleast_2d(self.layers[i])
            delta = np.atleast_2d(deltas[i])
            dw = np.dot(layer.T,delta)
            self.weights[i] += lrate*dw + momentum*self.dw[i]
            self.dw[i] = dw

        # Return error
        return (error**2).sum()
Run Code Online (Sandbox Code Playgroud)

增加

ann.py:5: RuntimeWarning: overflow encountered in exp
  return  1/(1+np.exp(-x))
Run Code Online (Sandbox Code Playgroud)

python numpy exp

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

numpy ×3

python ×3

exp ×1

matplotlib ×1

warnings ×1