【发布时间】:2018-10-16 04:49:29
【问题描述】:
我正在使用 Eigen 处理稀疏向量,我需要找到一种有效的方法来计算最大系数(或第 n 个最大系数)的索引。
我的初始方法使用 Eigen::SparseVector::InnerIterator,但是在向量只包含零和负值的情况下它不会计算正确的值,因为 InnerIterator 只迭代非零值。
如何实现它以考虑零值?
【问题讨论】:
-
所以如果你所有的条目都是负数,你想要第一个空元素的索引吗?
-
顺便说一句,非零的平均数量与向量大小的关系是多少?如果该比率高于 20%,那么我建议切换到具有显式零的密集存储。您将获得更高的性能和更简单的性能。
-
是的,ggael,就是这样。但我不知道最有效的方法是什么。
标签: c++ max sparse-matrix eigen