Python中的近邻矩阵

1 投票
1 回答
1480 浏览
提问于 2025-04-16 13:58

计算非常大且稀疏的向量之间的距离或接近度矩阵,最好的方法是什么呢?

举个例子,你有一个设计矩阵,每一行都是一个68771维的稀疏向量。

这个设计矩阵看起来是这样的: <5830x68771 的稀疏矩阵,类型为 '' 在压缩稀疏行格式中存储了1229041个元素>

1 个回答

1

你有没有试过用 scipy.spatial.distance 里的功能呢?

http://docs.scipy.org/doc/scipy/reference/spatial.distance.html

如果这样做让你必须使用一种更密集的表示方式,那根据非零元素的数量,你可能自己写一个会更好。你可以把零值去掉,同时保留一个新旧索引之间的对应关系,然后计算剩下的非零元素之间的距离,最后再用这个索引把结果映射回去。

撰写回答