具有给定属性的相似函数

机器算法验证 距离函数 相似之处
2022-04-12 15:25:50

我想在两个值之间找到一个相似度函数(每个值都是连续的并且以为界),它具有以下属性:f[0,1]

f(1,1)=0.5

f(0.5,0.5)=0.25

f(1,0)=1

f(0,1)=1

f(0,0)=0

数学中有这样的函数吗?如果不是我怎么设计它?

1个回答

功能

f:[0,1]×[0,1][0,1],(x,y)14x+14y+34(xy)2

做你想做的事。另外,它是正的、对称的和确定的(意味着)。xyf(x,y)>0

) ,它和它的根都不像范数派生的距离函数那样是线性齐次的- 但鉴于您的要求。f(λx,λy)λf(x,y)

透视图

我通过根据您的输入数据估计一个线性模型找到了它,协变量xy(xy)2

foo <- data.frame(a=c(1,.5,1,0,0),b=c(1,.5,0,1,0),y=c(.5,.25,1,1,0))
model <- lm(y~a*b+I((a-b)^2),foo)

xx <- yy <- seq(0,1,.01)
persp(x=xx,y=yy,z=outer(xx,yy,function(xx,yy)xx/4+yy/4+0.75*(xx-yy)^2))