0

我遇到了一个暹罗网络的代码,其中欧几里得距离计算为:

def euclidean_distance(vects):
  x, y = vects
  sum_square = K.sum(K.square(x - y), axis=1, keepdims=True)
  return K.sqrt(K.maximum(sum_square, K.epsilon()))

在这段代码中,为什么我们取 sum_square 和 epsilon 的最大值?

4

1 回答 1

-1

“Epsilon 是一个很小的值(TensorFlow Core v2.2.0 中的 1e-07),它对分母的值几乎没有影响,但确保它不完全等于零。”

简单的解释,就是为了保证结果值可以在接下来的计算中使用,没有错误。

于 2021-12-24T18:35:05.817 回答