在非常高的层次上,这类似于最近邻搜索问题。
来自维基:“给定空间 M 中的一组点 S 和一个查询点 q ∈ M,找到 S 中离 q 最近的点”。
但有些显着差异。规格:
- 每个点由 k 个变量描述。
- 变量并不都是数字的。混合数据类型:字符串、整数等。
- 所有变量的所有可能值都不知道——但它们来自相当小的集合。
- 在要搜索的数据集中,对于所有 k 个变量,将有多个具有相同值的点。
- 另一种看待这个的方式是会有很多重复的点。
- 对于每个点,我们将重复的数量称为频率。
- 给定一个查询点 q 需要找到最近的邻居 p 使得 p 的频率至少为 15
似乎有各种各样的算法围绕 NNS 和统计分类以及最佳 bin 匹配。
我对所有的变化都有点迷失了。是否已经有我可以使用的标准算法。还是我需要修改一个?