堆叠稀疏矩阵

时间:2019-03-09 20:37:53

标签: python numpy matrix scipy sparse-matrix

我已经有了具有以下功能的密集数组的现有代码,并且也希望支持稀疏矩阵。

特别是,我有一个形状为tensor的三维(k, k, n, n),像这样,我将其部分扁平化为形状为matrix的{​​{1}}。

(k * n, k * n)

在稀疏设置中,我有一个# Roll the third dimension to the second position to get a tensor # with shape (k, n, k, n) rolled = np.rollaxis(tensor, 2, 1) # Extract the dimensions k, n = rolled.shape[:2] # Reshape to partially flatten the array matrix = rolled.reshape((k * n, k * n)) by k列表列表,其中每个元素都是k by n稀疏矩阵。不能选择使用n,因为某些维稀疏而有些维密。关于如何实现相同行为的任何想法,使我最终得到形状为np.rollaxis的稀疏矩阵?

一种选择是使用coordinate format并分别设置(k * n, k * n)的每个元素,但这似乎很麻烦且容易出错。

0 个答案:

没有答案