我正在尝试实现形状上下文匹配算法
我现在处于第3步,我不知道如何计算对数距离比例
示例:
如果我们的坐标形状为:
0.2000 0.5000
0.4000 0.5000
0.3000 0.4000
0.1500 0.3000
0.3000 0.2000
0.4500 0.3000
步骤(1):从每个点到所有其他点的欧几里德距离:
0 0.2000 0.1414 0.2062 0.3162 0.3202
0.2000 0 0.1414 0.3202 0.3162 0.2062
0.1414 0.1414 0 0.1803 0.2000 0.1803
0.2062 0.3202 0.1803 0 0.1803 0.3000
0.3162 0.3162 0.2000 0.1803 0 0.1803
0.3202 0.2062 0.1803 0.3000 0.1803 0
步骤(2):每个点之间的标准化距离:
0 1.0623 0.7511 1.0949 1.6796 1.7004
1.0623 0 0.7511 1.7004 1.6796 1.0949
0.7511 0.75110 0.9575 1.0623 0.9575
1.0949 1.7004 0.9575 0 0.9575 1.5934
1.6796 1.6796 1.0623 0.9575 0 0.9575
1.7004 1.0949 0.9575 1.5934 0.9575 0
我不知道如何创建日志距离比例
标准化距离的对数距离标度(更近=更多区分):
0.1250 0.2500 0.5000 1.0000 2.0000
有人帮我吗?
答案 0 :(得分:0)
我没有形状背景的背景,这是我的想法:
教师希望以符合形状背景的需要来测量距离。为实现这一目标,
(步骤3)首先建立一个尺度(又称尺子)。该量表有5个区间,即0~0.1250
,0.1250~0.2500
,0.2500~0.5000
,0.5000~1.0000
,1.0000~2.0000
。最大范围应涵盖归一化距离数据中的最大值(此处为1.7004
)。这个量表以对数方式增加(我的意思是"指数级")。我仍然不知道"更近=更多的歧视"。
(步骤4)使用比例将每个数据值抛出到不同的箱子中。老师使用迭代方法,有效;但基本上你只需要找到一些方法来对值进行分类。
我认为你也可以通过这种方式实现它:
>> x = rand(1,10)*2;ceil(log2(ceil(x/.125)))+1,x
ans =
2 1 5 5 5 3 5 4 1 4
x =
0.1517 0.1079 1.0616 1.5583 1.8680 0.2598 1.1376 0.9388 0.0238 0.6742
所以你发现距离的对数为0.125 。