哪种算法最适合推导出数据集中两个人之间的最佳匹配?

数据挖掘 机器学习 预测建模 算法
2022-02-17 21:04:30

假设我有一个包含以下数据的大型数据集;

username,age,sex,music_genre,sports_genre,art_genre,rating
DanTheMan,25,male,rock,football,cubsim,50
LoopyLucy,23,female,pop,null,popart,76
MadDog,33,null,pop,football,cubsim,57

我想遍历整个数据集,并根据 ̶t̶a̶s̶t̶e̶s̶
类型和评分匹配两个用户,这些用户与其他用户相似或更接近,例如最佳匹配。不需要考虑性别,获得此结果的最佳算法是什么?有相同数量的用户,每个人都会得到匹配。

我已经研究了稳定的婚姻算法(Gale-Shapley),但是我会感谢其他人的建议和意见。

谢谢!

1个回答

给定您的数据样本,除非您有一种更微妙的方法来测量给定类型的不同值之间的相似性(例如,一些其他资源表明足球更接近篮球而不是网球),似乎您唯一可以测量的相似度可以使用的是计算两个用户有多少共同点。

相似度分数只能是 0、1、2 或 3,所以我认为你真的不需要聚类。您可以简单地构建一个地图,其中键是 3 个“流派”列的串联,值是具有这些品味的用户集。一些用户可能没有完全匹配(3 个相同的流派),因此您执行相同的过程,但只针对 2 个共同的流派,然后只针对一个。