Tensorflow 批量稀疏乘法

Lei*_*alk 5 sparse-matrix tensorflow

我想将稀疏张量乘以稠密张量,但要在批处理中进行。

例如,我有一个稀疏张量,其对应的密集形状为 (20,65536,65536),其中 20 是批量大小。我想将批次中的每个 (65536,65536) 与具有密集表示的张量形状 (20,65536) 中的相应 (65536x1) 相乘。tf.sparse_tensor_dense_matmul只接受 2 级稀疏张量。有没有办法批量执行此操作?

如果可能,由于内存限制,我想避免将稀疏矩阵转换为密集矩阵。

小智 0

答案很简单 - 首先重塑稀疏张量,然后将其乘以稠密矩阵。像这样的事情会起作用:

sparse_tensor_rank2 = tf.sparse_reshape(sparse_tensor, [-1, 65536])
Run Code Online (Sandbox Code Playgroud)