哪个 SciPy 稀疏矩阵类最适合计算距离矩阵



>我有一个相对较大的NumPy数组(近300k行和20+列,尽管大多数值为0(,我需要使用scikit-learn的pairwise_distances函数计算距离矩阵。

不幸的是,除非我将输入数组转换为稀疏矩阵,否则此过程会遇到内存错误。SciPy 提供了许多稀疏矩阵类,我不知道哪一个最适合这种特殊情况。

我找到了一个有利于CSR或CSC的SO答案,但我不清楚哪一个最适合计算距离矩阵。欢迎任何建议!

CSR 按行排序,CSC 按列排序。因此,使用 CSR 访问行会更快,使用 CSC 访问列会更快。由于sklearn.metrics.pairwise.pairwise_distances使用X作为输入,其中行是实例,列是属性,因此它将访问稀疏矩阵中的行。因此,使用 CSR 可能更有效。

相关内容

  • 没有找到相关文章