我知道我可以通过幂函数表示模糊最大值(我需要它在神经网络中),即
def max(p:Double)(a:Double,b:Double)= pow(pow(a,p)+ pow(b,p),1 / p) //假设a> = 0且b> = 0
当p - >时,它变得最大。 p = 1时的无穷大和总和
不确定如何正确实现模糊最小值。
答案 0 :(得分:1)
如果你愿意用p = 1的情况用“谐波和”代替“和”,你可以使用
1 /(pow(pow(a,-p)+ pow(b,-p),1 / p))
当p变为无穷大时,这会收敛到min(a,b)。
对于p = 1,它是1 /(1 / a + 1 / b),这与调和平均值相关但没有因子2.就像在原始公式中一样,a + b与算术平均值相关但没有因子2。
然而,请注意,对于a和b更接近的情况,当p变为无穷大时,这两个公式(你和我的)会更慢地收敛到极限。