2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 匈牙利算法实现(sklearn 实现与 scipy实现测试)

匈牙利算法实现(sklearn 实现与 scipy实现测试)

时间:2022-08-19 00:41:07

相关推荐

匈牙利算法实现(sklearn 实现与 scipy实现测试)

sklearn里的linear_assignment()函数以及scipy里的linear_sum_assignment()函数都实现了匈牙利算法,两者的返回值的形式不同:

新增更改(/9/6),谢评论区网友指正:sklearn.utils.linear_assignment_.linear_assignment已被丢弃。

import numpy as npfrom sklearn.utils.linear_assignment_ import linear_assignmentfrom scipy.optimize import linear_sum_assignmentconst_matrix = np.array([[15, 40, 45], [20, 60, 35], [20, 40, 25]])matches = linear_assignment(cost_matrix)print("matches: ", matches)matches2 = linear_sum_assignment(cost_matrix)print("matches2: ", matches2)

output:

matches: [[0 1]

[1 0]

[2 2]]

matches2: (array([0, 1, 2]), array([1, 0, 2]))

从上面可以看出:

sklearn实现的匈牙利返回值与scipy实现的匈牙利返回值为互转置关系。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。