gpt4 book ai didi

algorithm - 寻找最接近的匹配

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:55:16 26 4
gpt4 key购买 nike

我有一个带有一组参数的对象,例如:

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 ; }

为所列对象中的第一个对象找到最接近匹配的最佳(最简单)算法是什么?

最佳答案

在尝试查找之前,您必须定义术语最接近的匹配!!



1- 许多人使用的一种方式是 Mean Squared Error (或 Euclidean Distance):

计算所有对象的均方误差:

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-您也可以申请k-nearest neighbour使用您在上面选择的任何标准



这完全取决于这些参数的属性......

如需更多阅读,您可以查看 List of Classification algorithms

关于algorithm - 寻找最接近的匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3007790/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com