由于
logfor
x=0为负无穷大,因此我只需要检查输入值是否为零并返回您想要的值即可:
def safe_ln(x): if x <= 0: return 0 return math.log(x)
编辑 :小编辑:您应该检查所有小于或等于0的值。
编辑2 :
np.log当然是在numpy数组上计算的函数,对于单个值,您应该使用
math.log。这是上面的函数与numpy的外观:
def safe_ln(x, minval=0.0000000001): return np.log(x.clip(min=minval))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)