标签:sparse-matrix

  • 将大型稀疏矩阵与其转置相乘的最佳方法是什么? - python

    时间:2020-9-3

    我目前想将大型稀疏矩阵(〜1M x 200k)与其转置相乘。所得矩阵的值将为浮点型。 我尝试将矩阵加载到scipy的稀疏矩阵中,并将第一矩阵的每一行与第二矩阵相乘。乘法大约需要2个小时才能完成。 实现这种乘法的有效方法是什么?因为我在计算中看到了一种模式。 矩阵又大又稀疏。 矩阵与其转置的乘法。因此,所得矩阵将是对称的。 我想知道哪些库可以更快地实现计算。它 […]

  • Numpy svd和Scipy.sparse svds - python

    时间:2020-9-1

    我正在为Python中的稀疏未定系统实现一个求解器(讨论了here),并且尝试使用scipy在SciPy cookbook中重建使用标准numpy svd函数(numpy.linalg.svd)的nullspace函数。 svd(scipy.sparse.linalg.svds)的稀疏版本,但对于我运行的示例,它输出不同的左右奇异矢量-包括矩阵: [[1,1 […]

  • 从numpy python中的稀疏矩阵生成密集矩阵 - python

    时间:2020-8-25

    我有一个Sqlite数据库,其中包含以下类型的架构: termcount(doc_num, term , count) 该表包含术语及其在文档中的各自计数。喜欢 (doc1 , term1 ,12) (doc1, term 22, 2) . . (docn,term1 , 10) 该矩阵可以被视为稀疏矩阵,因为每个文档都包含很少的具有非零值的项。 我如何使用 […]

  • (稀疏)2D numpy数组每行/列的快速非零索引 - python

    时间:2020-8-14

    我正在寻找最快的方法来获取每行和每列2D数组的非零索引列表。以下是一段有效的代码: preds = [matrix[:,v].nonzero()[0] for v in range(matrix.shape[1])] descs = [matrix[v].nonzero()[0] for v in range(matrix.shape[0])] 输入示例: […]

  • 用Python计算稀疏矩阵的Cholesky分解 - python

    时间:2020-7-28

    我正在尝试实现Reinsch's Algorithm(pp 4)。由于工作矩阵是稀疏的,所以我使用的是scipy.sparse模块,但是正如您所看到的,Reinsch的算法需要稀疏矩阵的Cholesky分解(我们称其为my_matrix)才能求解某些系统,但是我不能找到与此有关的任何东西。当然,在同一算法中,我可以使用scipy.sparse.li […]

  • 访问csr_matrix的所有非零条目 - python

    时间:2020-7-24

    我有一个稀疏矩阵: from scipy.sparse import csr_matrix M=csr_matrix((5,5)) M[2,3]=4 我想迭代所有非零条目,例如: for x,y,v in M.non_zero_entries: do_something() 我尝试理解M.data,M.indices和M.indptr的值 现在,在上面的示例 […]

  • 使用scipy的各种稀疏矩阵产品的性能 - python

    时间:2020-7-20

    我有一个术语文档矩阵作为稀疏矩阵(csr或coo矩阵),还有一个特征向量,我想对其进行相似度比较。我想尝试以下方法: 1.)使用doc矩阵作为csr矩阵,将其转换为ndarray,然后在行上进行迭代,并使用scikit进行余弦模拟,以了解ndarray之间的余弦相似度。 2)将doc矩阵作为csr矩阵,将其转换为ndarray,然后将该矩阵与向量进行乘积运算 […]

  • Scipy稀疏矩阵在余弦相似度方面的存储效率不高 - python

    时间:2020-7-20

    我正在尝试使用scipy稀疏矩阵实现余弦相似度,因为我在使用普通矩阵(非稀疏)时遇到内存错误。但是,我注意到稀疏和非稀疏矩阵的余弦相似度的内存大小(以字节为单位)在输入矩阵(观测值)的大小较大时几乎相同。我是在做错什么,还是有办法解决?这是输入的代码,其中5%为1,95%为0。 import numpy as np from sklearn.metrics. […]

  • Sklearn决策树-同时使用稀疏矩阵和其他特征 - python

    时间:2020-7-20

    我正在使用Sklearn决策树进行一些分类,并且我有两种类型的数据:分类数据和连续数据。我使用pd.get_dummies作为分类值,最终得到90多个功能。当然,这很多。关键是我然后遍历max_features参数以获得模型的最佳分数,而拥有20多个功能太费时了。因此,我认为Sklearn可以将稀疏矩阵用于我的分类特征,而不是使用70个具有0和1的列。 问题 […]

  • 优化Python字典访问代码 - python

    时间:2020-7-17

    题: 我已经将我的Python程序剖析为死亡,并且有一个函数正在减慢一切。它大量使用Python字典,因此我可能没有以最佳方式使用它们。如果无法使其更快地运行,我将不得不用C ++重新编写它,那么有人可以帮助我在Python中对其进行优化吗? 我希望我给出了正确的解释,希望您可以理解我的代码!在此先感谢您的帮助。 我的代码: 这是令人讨厌的功能,使用line […]