我有一组形状不同的矩阵M = (M_1, M_2, ... M_K)
。为了提高效率,我可以将所有M
存储到一个大小为K x max(M_k.shape[0]) x max(M_k.shape[1])
的张量中。这适用于批处理矩阵乘法和元素添加等操作。但是,如果我想要忽略零元素的元素划分呢?
我想出的最佳版本是:
import numpy as np
import tensorflow as tf
M = tf.constant(np.array([[1.,2.,0],[3.,4.,5.],[6.,0,0]]), tf.float32)
Minv = tf.select(tf.equal(M, 0), tf.zeros_like(M), tf.inv(M))
这是最快的方式吗? tf.select
还能通过GPU加速吗?