python - 稀疏矩阵的高效最近邻搜索

标签 python scipy scikit-learn nearest-neighbor

我有大量数据(文本)语料库,我已将其转换为稀疏术语文档矩阵(我正在使用 scipy.sparse.csr.csr_matrix 来存储稀疏矩阵)。我想为每个文档找到前 n 个最近的邻居匹配项。我希望 Python scikit-learn 库中的 NearestNeighbor 例程(准确地说是 sklearn.neighbors.NearestNeighbor)可以解决我的问题,但效率很高使用空间分区数据结构(例如 KD 树Ball 树)的算法不适用于稀疏矩阵。只有蛮力算法适用于稀疏矩阵(这在我的情况下是不可行的,因为我正在处理大型语料库)。

稀疏矩阵的最近邻搜索是否有任何有效的实现(在 Python 或任何其他语言中)?

谢谢。

最佳答案

迟到的答案:看看Locality-Sensitive-Hashing

已提议支持 scikit-learn herehere .

关于python - 稀疏矩阵的高效最近邻搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18164348/

相关文章:

python - Python 中的多元线性回归?

python - scipy odeint 结果取决于输入时间数组

python - 寻找具有最大函数值的列表的最佳组合

Scikit-Learn 自定义决策树叶子类型

javascript - 使用 django 和 ajax 重新加载页面而不刷新

python - 没有返回值的多处理池?

python - 使用来自 (x,y,value) 三元组的数据创建 Numpy 二维数组

python - 将列添加到稀疏矩阵

python - 导入错误 : cannot import name murmurhash3_32

python - Sklearn线性回归拟合输入顺序?外生变量先行吗?