Algorithm 查找最接近的匹配项
我有一个具有一组参数的对象,如:Algorithm 查找最接近的匹配项,algorithm,similarity,pattern-recognition,classification,Algorithm,Similarity,Pattern Recognition,Classification,我有一个具有一组参数的对象,如: var obj = new {Param1 = 100; Param2 = 212; Param3 = 311; param4 = 11; Param5 = 290;} 另一方面,我有一个对象列表: var obj1 = new {Param1 = 1221 ; Param2 = 212 ; Param3 = 311 ; param4 = 11 ; Param5 = 290 ; } var obj3 = new {Param1 = 35 ; Para
var obj = new {Param1 = 100; Param2 = 212; Param3 = 311; param4 = 11; Param5 = 290;}
另一方面,我有一个对象列表:
var obj1 = new {Param1 = 1221 ; Param2 = 212 ; Param3 = 311 ; param4 = 11 ; Param5 = 290 ; }
var obj3 = new {Param1 = 35 ; Param2 = 11 ; Param3 = 319 ; param4 = 211 ; Param5 = 790 ; }
var obj4 = new {Param1 = 126 ; Param2 = 218 ; Param3 = 2 ; param4 = 6 ; Param5 = 190 ; }
var obj5 = new {Param1 = 213 ; Param2 = 121 ; Param3 = 61 ; param4 = 11 ; Param5 = 29 ; }
var obj7 = new {Param1 = 161 ; Param2 = 21 ; Param3 = 71 ; param4 = 51 ; Param5 = 232 ; }
var obj9 = new {Param1 = 891 ; Param2 = 58 ; Param3 = 311 ; param4 = 21 ; Param5 = 590 ; }
var obj11 = new {Param1 = 61 ; Param2 = 212 ; Param3 = 843 ; param4 = 89 ; Param5 = 210 ; }
为列出的对象中的第一个obj查找最接近匹配项的最佳(最简单)算法是什么?您必须先定义术语最接近匹配项,然后才能尝试查找
1-许多人使用的一种方式是(或):
Abs(obj.Param1-obj1.Param1) + Abs(obj.Param2-obj1.Param2) + ..... // for obj1
Abs(obj.Param1-obj2.Param1) + Abs(obj.Param2-obj2.Param2) + ..... // for obj2
计算所有对象的均方误差:
Sqr(obj.Param1-obj1.Param1) + Sqr(obj.Param2-obj1.Param2) + ..... // for obj1
Sqr(obj.Param1-obj2.Param1) + Sqr(obj.Param2-obj2.Param2) + ..... // for obj2
然后选择一个最小值的
2-您也可以使用最小绝对误差:
Abs(obj.Param1-obj1.Param1) + Abs(obj.Param2-obj1.Param2) + ..... // for obj1
Abs(obj.Param1-obj2.Param1) + Abs(obj.Param2-obj2.Param2) + ..... // for obj2
然后选择一个最小值的
3-您也可以使用上面选择的任何标准申请
这一切都取决于这些参数的属性 更多阅读请参考
您也可以使用
基本上,你假设每个物体都是5维空间中的一个点,然后寻找距离最近的点(即距离最短的点)。我想这取决于具体情况。我想到了几种可能性:
- SAD:计算每对参数(你测试的参数和每个候选参数)的绝对差值,并将它们相加。最低的数字是最接近的
- L2范数:计算每对参数的差值,求平方,求和,取平方根
- 余弦:将每个参数与另一个参数相乘,求和。将结果除以两个对象的长度乘积(L2范数)
当然,还有上千种可能性,因此你必须具体说明,你到底想要什么 如何定义最接近的匹配?最小平方误差?最小误差?精确参数匹配的最大数量(具有可选的连接断路器规则)?相关:相关: