问题标签 [sparse-matrix]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - sparse_vector 模板类:如何清理它?
我不确定这是否是一个好问题——如果不是,请关闭它。
我开始编写(使用boost::coordinate_vector
作为起点)一个sparse_vector
模板类,它有效地实现了一个类似向量的接口,但它是稀疏的。它实现了所有常见的向量操作和一个快速的稀疏迭代器,用于迭代集合元素。它还有一个快速版本的rotate
. 我需要这个类,因为我有一个一次写入多次读取的用例,并且我使用了其中的许多sparse_vectors
.
我没有编写模板类的经验,所以我知道有些事情我可以做得更好。我怎样才能提高这门课?
sorting - 在进行 PCG 求解器时,是否必须对稀疏矩阵的行进行排序?
我正在开发一些可以进行稀疏矩阵向量相乘的软件。矩阵以坐标格式存储(每个非零的行和列索引)。
他们正在执行排序操作,按该行的顺序对列索引进行排序(这是因为此 FEM 问题的某些边界条件)。这是否有必要发生?
r - R中具有稀疏特征矩阵的大规模回归
我想在 R 中使用许多(例如 100k)特征进行大规模回归(线性/逻辑),其中每个示例在特征空间中相对稀疏——例如,每个示例约 1k 个非零特征。
看起来SparseM包slm
应该这样做,但我很难从sparseMatrix
格式转换为slm
友好的格式。
我有一个标签的数字向量y
和一个sparseMatrix
特征X
\in {0,1}。当我尝试
我收到以下错误:
大概是因为slm
想要一个SparseM
对象而不是一个sparseMatrix
.
是否有一种简单的方法可以a)SparseM
直接填充对象或b)将a转换sparseMatrix
为SparseM
对象?或者也许有更好/更简单的方法来做到这一点?
X
(我想我可以使用and明确地编写线性回归的解决方案y
,但如果能slm
工作就好了。)
matrix - 在非常大的稀疏矩阵上聚类?
我正在尝试在一个非常大的矩阵上进行一些(k-means)聚类。
该矩阵大约有 500000 行 x 4000 列,但非常稀疏(每行只有几个“1”值)。我想获得大约 2000 个集群。
我有两个问题: - 有人可以推荐一个开源平台或工具来做到这一点(也许使用 k-means,也许有更好的东西)?- 我怎样才能最好地估计算法需要完成的时间?我尝试过一次 weka,但几天后就放弃了这项工作,因为我不知道需要多少时间。
谢谢!
python - 在稀疏矩阵中找到 n 个最大数
我使用稀疏矩阵作为压缩数据的一种手段,当然有损失,我所做的是从所有大于指定阈值的值创建一个稀疏字典。我希望我的压缩数据大小成为我的用户可以选择的变量。
我的问题是,我有一个具有很多接近零值的稀疏矩阵,我必须做的是选择一个阈值,以便我的稀疏字典具有特定大小(或最终重建误差具有特定速率)这是我如何创建我的字典(我认为取自 stackoverflow >.< ):
如何找到阈值,使其等于我的数组(smat)的第 n 个最大值?
python - python中的稀疏矩阵svd
有谁知道如何在 python 中对稀疏矩阵执行 svd 操作?scipy.sparse.linalg 中似乎没有提供这样的功能。
python - 如何将 scipy.sparse 矩阵元素乘以广播的密集一维数组?
假设我有一个二维稀疏数组。在我的真实用例中,行数和列数都大得多(比如 20000 和 50000),因此当使用密集表示时它无法放入内存:
现在假设我有一个密集的一维数组,其中包含大小为 3 的所有非零分量(或在我的现实生活中为 50000):
我想使用 numpy 的通常广播语义来计算 a 和 d 的元素乘法。但是,scipy 中的稀疏矩阵属于 np.matrix:“*”运算符被重载以使其表现得像矩阵乘法而不是元素乘法:
一种解决方案是将“a”切换到“*”运算符的数组语义,这将给出预期的结果:
但我不能这样做,因为对 toarray() 的调用会实现不适合内存的“a”的密集版本(结果也会很密集):
知道如何在只保留稀疏数据结构并且不必在“a”的列上执行低效的 python 循环的情况下构建它吗?
matlab - 稀疏与正常数组 Matlab
在 Matlab 中,如果我仍然需要对其进行大量计算,并且大约 25% 的数组是非零的,那么稀疏数组在什么时候比普通数组更好?
sparse-matrix - 在 C# 中实现存储稀疏数据的表的最有效方法是什么
我有一个存储非常稀疏数据的 DataTable,例如:
行数和列数可能超过 10^8。
如何以更有效的方式存储这些数据?
c++ - 标准::向量> 用于稀疏矩阵结构还是其他?
我正在以压缩行格式实现稀疏矩阵类。这意味着我有固定数量的行,每行由许多元素组成(这个数字对于不同的行可能不同,但在矩阵初始化后不会改变。
是否适合通过向量向量来实现这一点,还是会以某种方式分割内存?
我应该如何实现这个分配,所以我将拥有一大块内存?
感谢您分享您的智慧!短剑