小编use*_*772的帖子

Python H2O 内存管理

此处R 中的这个问题类似,我在 H2O 中使用网格搜索运行循环时出现内存不足问题。在 R 中,在每个循环中执行 gc() 确实有帮助。这里建议的解决方案是什么?

python memory-management h2o

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

在 numpy 中使用 exp 和最小正 float128 避免下溢

我正在尝试计算以下比率: 使用指数递减函数更新w(i) / (sum(w(j))其中,即作为正参数。所有数字都是非负数。然后将该比率用于公式(乘以一个常数并添加另一个常数)。正如预期的那样,我很快就遇到了下溢问题。ww(i) = w(i) * exp(-k)k

我想这种情况经常发生,但是有人可以给我一些关于如何处理这个问题的参考吗?我没有找到合适的转换,所以我尝试做的一件事是将一些最小正数设置为安全阈值,但我没有设法找到哪个是最小正浮点数(我代表 中的数字numpy.float128)。我怎样才能在我的机器上真正获得这样的最小数?代码如下所示:

w = np.ones(n, dtype='float128')
lt = np.ones(n)
for t in range(T):
    p = (1-k) * w / w.sum() + (k/n)
    # Process a subset of the n elements, call it set I, j is some range()
    for i in I: 
        s = p[list(j[i])].sum()
        lt /= s
        w[s] *= np.exp(-k * lt)
Run Code Online (Sandbox Code Playgroud)

其中 k 是 (0,1) 中的某个常数,n 是数组的长度

python numpy underflow numerical-analysis numerical-methods

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