即使套不平衡,套之间的距离也是如此?

时间:2011-08-11 10:09:08

标签: algorithm distance set

我需要找到一个最佳距离方程来找到两组之间的距离。

距离方程式就像欧几里得,曼哈坦或任何......我必须找到两个实体之间的最佳最小距离。实体是具有元素的集合(浮点值)。集合可以是等数个元素,也可以是不同的。

代表

s1={2.1,3.5,2.7,4.9}, 
s2={4.2,3.1,2.3}

如何找到两种这样的集合之间的距离?

在我的例子中,每个元素被索引到一个位置...例如:s1 = {w,x,y,z},s2 = {w,y,z} ..在上面的第二个集合中,x值不见了。即使是这样的场景,我也必须找到距离。

但欧几里德或我知道的任何距离方程都不会解决这个问题。我是否缺少适合我的问题的任何距离方程式,或者我是否必须以某种方式对集合进行标准化?有没有找到这些集之间距离的最佳方法。如果可能的话,请告诉我最好的距离方程式。


修改

感谢您的宝贵反馈......基于距离,我想得出两个实体是否相似的结论。例如,如果两个人被标记了他们的上下文信息(传感器信息),得出一些结论我应该说它们都是上下文不同或彼此接近。上下文信息可以是矢量或集合或任何数组。因此,我必须使用最佳距离方程来找到两个人之间的上下文距离,这对于评估它们的相似性也是有用的。我需要编写一些标准,以便它只选择最佳的上下文信息来找到距离方程。对于前者, 上下文信息可以给出=(压力,温度,强度,湿度......)人c1上下文信息(1.2,3.5,2.7,9.2)和人c2上下文信息(2.1,3.5,4.6)[有时候丢失一些传感器值的可能性] ..我的挑战是找到两个人之间的最佳距离[他们有多相似] ...... 谢谢@all

1 个答案:

答案 0 :(得分:2)

您需要提供有关此距离的更多详细信息......

查看wikipedia article on distancenorms

要定义距离,您只需定义一个验证以下属性的函数:

Symetry: enter image description here

Spearation: enter image description here

三角不等式: enter image description here

例如:

如果x和y是2组:

d1(x,y)= abs(max(x)-max(y))不是距离(没有分离)

d2(x,y)= cardinal(symetricaldifference(x,y))(对称差异是x union y减去x inter y)是距离

证明:

d2(x,y) = d(y,x) ok
d2(x,y) = 0 => x=y ok
d2(x,z) > d2(x,y) + d2(y,z) ok just draw it  and you will see it works

取决于你想要做什么距离你可以找到更多相互作用的..

又一个例子:

你可以选择:

X = {A1 ...一个} Y = {B1 ... BM}

then d3(x,y)=min(Sum(abs(ai-bj))) + d2(x,y)

//第一个元素编写得不好,但意味着最小化所有元素元素差异的绝对值之和(当集合的大小不同时,它们将是一些单个元素) 和d2在这里,如果你有2集:{a1 ... an}和{a1 ... an,0}所以距离不是0(分离)

这是一段距离,我认为这与比较集相关。